From 7acdec2735b2004d3be14dc09f6805f8dec648a0 Mon Sep 17 00:00:00 2001 From: linonetwo Date: Thu, 5 Sep 2024 19:34:50 +0800 Subject: [PATCH] chore: upgrade plugins --- tiddlers/TCTSystem/plugins/Gk0Wk/CPL-Repo.json | 2 +- .../TCTSystem/plugins/Gk0Wk/CPL-Repo.json.meta | 4 ++-- .../plugins/Gk0Wk/notionpage-covericon/body.tid | 4 ++-- tiddlers/TCTSystem/plugins/flibbles/relink.json | 4 ++-- .../TCTSystem/plugins/flibbles/relink.json.meta | 2 +- tiddlers/TCTSystem/plugins/kookma/commander.json | 2 +- .../TCTSystem/plugins/kookma/commander.json.meta | 2 +- tiddlers/TCTSystem/plugins/kookma/shiraz.json | 2 +- .../TCTSystem/plugins/kookma/shiraz.json.meta | 5 +++-- tiddlers/TCTSystem/plugins/kookma/tamasha.json | 2 +- .../TCTSystem/plugins/kookma/tamasha.json.meta | 2 +- tiddlers/TCTSystem/plugins/kookma/toc.json | 1 + tiddlers/TCTSystem/plugins/kookma/toc.json.meta | 12 ++++++++++++ tiddlers/TCTSystem/plugins/kookma/utility.json | 2 +- .../TCTSystem/plugins/kookma/utility.json.meta | 5 +++-- .../plugins/linonetwo/autocomplete.json | 16 ++++++++++++++++ .../plugins/linonetwo/commandpalette.json | 15 ++++++++------- .../TCTSystem/plugins/linonetwo/itonnote.json | 12 ++++++------ .../plugins/linonetwo/opened-tiddlers-bar.json | 8 ++++---- .../TCTSystem/themes/linonetwo/itonnote.json | 10 +++++----- 20 files changed, 72 insertions(+), 40 deletions(-) create mode 100644 tiddlers/TCTSystem/plugins/kookma/toc.json create mode 100644 tiddlers/TCTSystem/plugins/kookma/toc.json.meta create mode 100644 tiddlers/TCTSystem/plugins/linonetwo/autocomplete.json diff --git a/tiddlers/TCTSystem/plugins/Gk0Wk/CPL-Repo.json b/tiddlers/TCTSystem/plugins/Gk0Wk/CPL-Repo.json index 21c982c5..966a9e82 100644 --- a/tiddlers/TCTSystem/plugins/Gk0Wk/CPL-Repo.json +++ b/tiddlers/TCTSystem/plugins/Gk0Wk/CPL-Repo.json @@ -1 +1 @@ -{"tiddlers":{"$:/config/TiddlyWiki-CPL/GitHub":{"title":"$:/config/TiddlyWiki-CPL/GitHub","caption":"<$list filter=\"[[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]]\" variable=\"lang\"><$list filter=\"[search:title[zh]]\">太微中文社区插件源(~GitHub版)<$list filter=\"[!search:title[zh]]\">TiddlyWiki CPL(~GitHub Host)","tags":["$:/tags/PluginLibrary","$:/tags/PluginLibrary/CPL"],"type":"text/vnd.tiddlywiki","url":"https://tiddly-gittly.github.io/TiddlyWiki-CPL/library/index.html","text":"\n<$list filter=\"[[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]]\" variable=\"lang\">\n<$list filter=\"[search:title[zh]]\" variable=\"lang\">\n\n欢迎使用''【太微中文社区插件源】''!\n\n本插件源是由[[太微(TiddlyWiki)中文社区|https://github.com/tiddly-gittly]]维护的、致力于搜集网络上所有与 ~TiddlyWiki5 有关插件的、希望为中国以及全世界的太微用户提供一键安装、更新插件体验的公开插件源。\n\n如果还不了解该如何使用太微和本插件源,欢迎阅读[[中文社区共建的太微(TiddlyWiki)教程|https://tw-cn.netlify.app]]里插件相关的部分。如上提到的插件源和教程皆为开源项目,你可以在 [[GitHub|https://github.com/tiddly-gittly]] 中找到并参与贡献!如果乐意,可以通过QQ群等方式加入我们,详情请见如上提到的中文教程。\n\n要添加这个插件库到你的 Wiki 中,只需鼠标拖动这个链接到你的 Wiki 里即可:<$link to=<>>{{!!caption}}\n\n注意:本插件源版本为 ~GitHub Page 的版本,更新更快,但是可能需要科学上网手段。如果你在国内,而且不清楚什么是“科学上网”,请选用另一个经过 netlify.app 加速的[[版本|$:/config/TiddlyWiki-CPL/Netlify]],虽然更新有一定的延迟,但对国内用户更加友好。\n\n@@color:red;''安装任何插件前,请记得备份你的Wiki,本插件源无法为插件造成的个人损失负责!''@@\n\n\n\n<$list filter=\"[!search:title[zh]]\" variable=\"lang\">\n\nWelcome to the ''[TiddlyWiki Chinese Community Plugin Source]''!\n\nThis plugin source is maintained by the [[TiddlyWiki Chinese Community]] and is dedicated to collecting all TiddlyWiki5 related plugins on the web, hoping to provide a one-click installation and update plugin experience for TiddlyWiki users in China and around the world.\n\nIf you don't know how to use TiddlyWiki and this source, you are welcome to read the plugins related section in the [[TiddlyWiki Tutorials for Chinese Communities|https://tw-cn.netlify.app]]. As mentioned above, both the plugin source and the tutorial are open source projects, you can find them in [[GitHub|https://github.com/tiddly-gittly]] and participate in contributing! If you like, you can join us through QQ groups and other means, see the Chinese tutorials mentioned above for details.\n\nTo add this plugin library to your Wiki, just drag this link with your mouse into your Wiki: <$link to=<>>{{!!caption}}\n\nNote: The source version of this plugin is the ~GitHub Page version, which is faster to update, but may require scientific Internet access. If you are in China and are not sure what GFW is, please use another [[version|$:/config/TiddlyWiki-CPL/Netlify]] that is accelerated by netlify.app, although there is a certain delay in updating, but it is more friendly to domestic users more friendly.\n\n@@color:red;''Please remember to back up your Wiki before installing any plugins, this plugin source cannot be held responsible for personal losses caused by plugins!''@@\n\n\n\n"},"$:/config/TiddlyWiki-CPL/Netlify":{"title":"$:/config/TiddlyWiki-CPL/Netlify","caption":"<$list filter=\"[[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]]\" variable=\"lang\"><$list filter=\"[search:title[zh]]\">太微中文社区插件源(大陆加速版)<$list filter=\"[!search:title[zh]]\">TiddlyWiki CPL(Netlify Host)","tags":["$:/tags/PluginLibrary","$:/tags/PluginLibrary/CPL"],"type":"text/vnd.tiddlywiki","url":"https://tw-cpl.netlify.app/library/index.html","text":"\n<$list filter=\"[[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]]\" variable=\"lang\">\n<$list filter=\"[search:title[zh]]\" variable=\"lang\">\n\n欢迎使用''【太微中文社区插件源】''!\n\n本插件源是由[[太微(TiddlyWiki)中文社区|https://github.com/tiddly-gittly]]维护的、致力于搜集网络上所有与 ~TiddlyWiki5 有关插件的、希望为中国以及全世界的太微用户提供一键安装、更新插件体验的公开插件源。\n\n如果还不了解该如何使用太微和本插件源,欢迎阅读[[中文社区共建的太微(TiddlyWiki)教程|https://tw-cn.netlify.app]]里插件相关的部分。如上提到的插件源和教程皆为开源项目,你可以在 [[GitHub|https://github.com/tiddly-gittly]] 中找到并参与贡献!如果乐意,可以通过QQ群等方式加入我们,详情请见如上提到的中文教程。\n\n要添加这个插件库到你的 Wiki 中,只需鼠标拖动这个链接到你的 Wiki 里即可:<$link to=<>>{{!!caption}}\n\n注意:本插件源版本为经过 netlify.app 加速的版本,对国内用户更加友好,但是更新有一定的延迟。还提供另一版本,是直接使用 ~GitHub Page 服务器的版本,更新更快,但是可能需要科学上网手段。\n\n@@color:red;''安装任何插件前,请记得备份你的Wiki,本插件源无法为插件造成的个人损失负责!''@@\n\n\n\n<$list filter=\"[!search:title[zh]]\" variable=\"lang\">\n\nWelcome to the ''[TiddlyWiki Chinese Community Plugin Source]''!\n\nThis plugin source is maintained by the [[TiddlyWiki Chinese Community]] and is dedicated to collecting all TiddlyWiki5 related plugins on the web, hoping to provide a one-click installation and update plugin experience for TiddlyWiki users in China and around the world.\n\nIf you don't know how to use TiddlyWiki and this source, you are welcome to read the plugins related section in the [[TiddlyWiki Tutorials for Chinese Communities|https://tw-cn.netlify.app]]. As mentioned above, both the plugin source and the tutorial are open source projects, you can find them in [[GitHub|https://github.com/tiddly-gittly]] and participate in contributing! If you like, you can join us through QQ groups and other means, see the Chinese tutorials mentioned above for details.\n\nTo add this plugin library to your Wiki, just drag this link with your mouse into your Wiki: <$link to=<>>{{!!caption}}\n\nNote: The source version of this plugin is a version accelerated by netlify.app, which is more friendly to China mainland users, but there is a delay in updating. There is also another version that uses the GitHub Page server directly, which is faster to update, but may require technology to overturn the GFW.\n\n@@color:red;''Please remember to back up your Wiki before installing any plugins, this plugin source cannot be held responsible for personal losses caused by plugins!''@@\n\n\n\n"},"$:/plugins/Gk0Wk/CPL-Repo/about-banner":{"title":"$:/plugins/Gk0Wk/CPL-Repo/about-banner","tags":[],"type":"text/vnd.tiddlywiki","text":"<$list filter=\"[[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[yes]else[no]]\" variable=\"chinese\">\n
\n
<$text text={{{ [match[yes]then[加入我们, 共建设社区生态!]else[Join us in building a community ecology!]] }}}/>
\n\n
<$text text={{{ [match[yes]then[欢迎任何人在CPL仓库贡献更多插件!]else[Anyone is welcome to contribute more plugins to the CPL repository!]] }}}/>
\n
\n\n"},"$:/plugins/Gk0Wk/CPL-Repo/category-gallery":{"title":"$:/plugins/Gk0Wk/CPL-Repo/category-gallery","caption":"<$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[分类]else[Categories]] }}} />","tags":[],"type":"text/vnd.tiddlywiki","text":"<$macrocall\n\t$name=\"tabs\"\n\tstate=\"$:/temp/CPL-Repo/category-gallery-tab-state\"\n\ttabsList=\"[{$:/temp/CPL-Repo/categories}jsonindexes[]]\"\n\tdefault={{{ [{$:/temp/CPL-Repo/categories}jsonindexes[]first[]] }}}\n\ttemplate=\"$:/plugins/Gk0Wk/CPL-Repo/category-tab-container-template\"\n\tbuttonTemplate=\"$:/plugins/Gk0Wk/CPL-Repo/category-tab-button-template\"\n/>"},"$:/plugins/Gk0Wk/CPL-Repo/category-tab-button-template":{"title":"$:/plugins/Gk0Wk/CPL-Repo/category-tab-button-template","code-body":"yes","tags":[],"type":"text/vnd.tiddlywiki","text":"<$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]] :then[addprefix[$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/]get[text]else[?]] :else[else[Unknown]else[?]] }}} />"},"$:/plugins/Gk0Wk/CPL-Repo/category-tab-container-template":{"title":"$:/plugins/Gk0Wk/CPL-Repo/category-tab-container-template","code-body":"yes","tags":[],"type":"text/vnd.tiddlywiki","text":"\\import $:/plugins/Gk0Wk/CPL-Repo/plugin-list-item\n\\import $:/plugins/Gk0Wk/CPL-Repo/plugin-size\n\\import $:/plugins/Gk0Wk/CPL-Repo/paged-plugin-list\n\n<]\" field:\"category-gallery\" class1:\"cpl-plugin-info-box\" class2:\"cpl-paged-plugin-list-control\">>\n"},"$:/plugins/Gk0Wk/CPL-Repo/config/current-repo":{"title":"$:/plugins/Gk0Wk/CPL-Repo/config/current-repo","text":"https://tw-cpl.netlify.app/repo"},"$:/plugins/Gk0Wk/CPL-Repo/config/popup-readme-at-startup-threshold":{"title":"$:/plugins/Gk0Wk/CPL-Repo/config/popup-readme-at-startup-threshold","text":"1"},"$:/plugins/Gk0Wk/CPL-Repo/config/repos":{"title":"$:/plugins/Gk0Wk/CPL-Repo/config/repos","text":"https://tw-cpl.netlify.app/repo https://tiddly-gittly.github.io/TiddlyWiki-CPL/repo"},"$:/plugins/Gk0Wk/CPL-Repo/config/update-filter":{"title":"$:/plugins/Gk0Wk/CPL-Repo/config/update-filter","text":"[has[plugin-type]] -[prefix[$:/plugins/tiddlywiki/]] -[prefix[$:/themes/tiddlywiki/]] -[prefix[$:/languages/]] -[prefix[$:/temp/]] -[[$:/core]]"},"$:/plugins/Gk0Wk/CPL-Repo/core.js":{"title":"$:/plugins/Gk0Wk/CPL-Repo/core.js","text":"(function () {\n\"use strict\";\n\nexports.name = \"cpl-repo-init\";\nexports.platforms = [\"browser\"];\nexports.after = [\"render\"];\nexports.synchronous = true;\n\n/**\n * CPL通信接口,往返,异步\n * const result = await globalThis.__tiddlywiki_cpl__('类型', { ... });\n */\nvar messagerPromise;\nvar previousEntry;\nvar cpl = function (type, payload) {\n\tvar entry = $tw.wiki.getTiddlerText('$:/plugins/Gk0Wk/CPL-Repo/config/current-repo', 'https://tiddly-gittly.github.io/TiddlyWiki-CPL/repo');\n\tif (previousEntry !== entry && globalThis.__tiddlywiki_cpl__reset__ !== undefined) globalThis.__tiddlywiki_cpl__reset__();\n\tpreviousEntry = entry;\n if (messagerPromise === undefined) messagerPromise = new Promise(function (rrr) {\n var counter = 0;\n var callbackMap = new Map();\n var iframe = $tw.utils.domMaker(\"iframe\", {\n document,\n attributes: { src: entry },\n style: { display: \"none\" },\n });\n function ccc(e) {\n //console.log('<=', e.data);\n if (iframe.contentWindow === null || e.source !== iframe.contentWindow)\n return;\n if (e.data.target !== \"tiddlywiki-cpl\" || e.data.token === undefined)\n return;\n switch (e.data.type) {\n case \"Ready\": {\n if (counter === 0) {\n counter++;\n rrr(function (type, payload) {\n return new Promise(function (resolve, reject) {\n var token = counter++;\n callbackMap.set(token, [resolve, reject]);\n //console.log('=>', { type, token, target: \"tiddlywiki-cpl\", ...payload });\n iframe.contentWindow.postMessage(\n Object.assign({}, payload, {\n type: type,\n token: token,\n target: \"tiddlywiki-cpl\",\n }),\n \"*\"\n );\n });\n });\n }\n break;\n }\n default: {\n var r = callbackMap.get(e.data.token);\n if (r !== undefined) {\n callbackMap.delete(e.data.token);\n r[e.data.success ? 0 : 1](e.data.payload);\n }\n break;\n }\n }\n }\n window.addEventListener(\"message\", ccc);\n document.body.appendChild(iframe);\n globalThis.__tiddlywiki_cpl__reset__ = function () {\n delete globalThis.__tiddlywiki_cpl__reset__;\n messagerPromise = undefined;\n window.removeEventListener(\"message\", ccc);\n iframe.parentNode.removeChild(iframe);\n callbackMap.forEach((r) => {\n r[1]();\n });\n };\n });\n return messagerPromise.then(function (r) { return r(type, payload) });\n};\n\nfunction getAutoUpdateTime() {\n\treturn parseInt($tw.wiki.getTiddlerText('$:/plugins/Gk0Wk/CPL-Repo/config/auto-update-intervals-minutes', '-1')) || -1;\n}\n\n// 自动更新服务、各种消息通信\nexports.startup = function () {\n globalThis.__tiddlywiki_cpl__ = cpl;\n\t// 检测更新\n\tvar lastUpdateTime = -1;\n var updateLock = false;\n\tfunction update(notify) {\n try {\n if (updateLock) return;\n updateLock = true;\n lastUpdateTime = Date.now();\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/updaing', text: 'yes' });\n // filter 和 网络请求并发一下\n var updateP = cpl('Update');\n // 根据条件筛选插件\n var plugins = $tw.wiki.filterTiddlers($tw.wiki.getTiddlerText('$:/plugins/Gk0Wk/CPL-Repo/config/update-filter'));\n var t = [];\n updateP.then(function (text) {\n // 统计需要更新的插件\n var updatePlugins = JSON.parse(text);\n for (var title of plugins) {\n var lastestVersion = updatePlugins[title]; // [version, coreVersion]\n if (lastestVersion === undefined) continue; // 不存在该插件\n if (lastestVersion[1] && $tw.utils.compareVersions($tw.version, lastestVersion[1].trim()) < 0) continue; // 插件兼容性检查\n var version = $tw.wiki.getTiddler(title).fields.version;\n if (version && lastestVersion[0] && $tw.utils.compareVersions(version.trim(), lastestVersion[0].trim()) >= 0) continue; // 插件是否更新\n t.push(title);\n }\n if (t.length > 0) {\n // 写入临时信息\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/update-plugins', type: 'application/json', text: JSON.stringify(t) });\n if (notify !== false) {\n // 暂时修改通知停留时间为 10s\n var tt = $tw.config.preferences.notificationDuration;\n $tw.config.preferences.notificationDuration = 10_000;\n // 弹出通知框\n $tw.notifier.display(\"$:/plugins/Gk0Wk/CPL-Repo/update-notify-template\", {\n variables: { updateCount: t.length },\n });\n $tw.config.preferences.notificationDuration = tt;\n }\n }\n $tw.wiki.deleteTiddler('$:/temp/CPL-Repo/updaing');\n updateLock = false;\n }).catch(function (err) {\n console.error(err);\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/updaing', text: String(err) });\n updateLock = false;\n });\n } catch (err) {\n console.error(err);\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/updaing', text: String(err) });\n updateLock = false;\n }\n\t}\n\n\t// 监听自动更新策略的更改,调整更新间隔或者开关自动更新\n\tvar autoUpdateInterval;\n\tvar autoTimeout;\n\t$tw.wiki.addEventListener(\"change\", function (changes) {\n\t\tif($tw.utils.hop(changes, '$:/plugins/Gk0Wk/CPL-Repo/config/auto-update-intervals-minutes')) {\n var time = getAutoUpdateTime();\n\t\t\tif (autoUpdateInterval !== undefined) clearInterval(autoUpdateInterval);\n\t\t\tif (autoTimeout !== undefined) clearTimeout(autoTimeout);\n\t\t\tautoUpdateInterval = undefined;\n\t\t\tautoTimeout = undefined;\n\t\t\tif (time > 0) {\n\t\t\t\tautoTimeout = setTimeout(function () {\n\t\t\t\t\tupdate();\n\t\t\t\t\tautoUpdateInterval = setInterval(function () {\n\t\t\t\t\t\tupdate();\n\t\t\t\t\t}, time * 60_000);\n\t\t\t\t}, lastUpdateTime === -1 ? 0 : time * 60_000 + lastUpdateTime - Date.now());\n\t\t\t}\n\t\t}\n if($tw.titleWidgetNode.refresh(changes, $tw.titleContainer, null)) {\n document.title = $tw.titleContainer.textContent;\n }\n\t});\n\t// 最初启用\n\tautoTimeout = setTimeout(function () {\n var time = getAutoUpdateTime();\n\t\tif (time > 0) {\n update();\n autoUpdateInterval = setInterval(function () {\n update();\n }, time * 60_000);\n }\n\t}, 3_000);\n\n // 消息监听\n $tw.rootWidget.addEventListener(\"cpl-update-check\", function () {\n update();\n });\n var installRequestLock = false;\n $tw.rootWidget.addEventListener(\"cpl-install-plugin-request\", function (event) {\n try {\n if (installRequestLock) return;\n var paramObject = event.paramObject || {};\n var title = paramObject.title;\n var version = paramObject.version || \"latest\";\n if (!title) return;\n installRequestLock = true;\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/instal-plugin-requesting', text: 'yes', 'plugin-title': title });\n $tw.notifier.display('$:/plugins/Gk0Wk/CPL-Repo/install-plugin-query-notify', { variables: {} });\n var existingTitle = new Set(); // 避免环\n var versionsMap = {};\n var versionsMapLatest = {};\n var sizesMap = {};\n // 递归检查依赖\n var title_ = title;\n function recursiveInstallCheck(title) {\n return new Promise(function (resolve, reject) {\n cpl('Query', { plugin: title }).then(function (text) {\n var data = JSON.parse(text);\n existingTitle.add(title);\n if (title === title_ && data.versions.indexOf(version) < 0) version = data.latest;\n versionsMap[title] = data.versions;\n versionsMapLatest[title] = data.latest;\n sizesMap[title] = data['versions-size'] || {};\n var t = new Set();\n var promisese = [];\n var subtree = {};\n\n // for没有局部作用域,var不是迭代局部的\n function fuckUpVar(ti) {\n t.add(ti);\n if (existingTitle.has(ti)) {\n subtree[ti] = {};\n } else {\n promisese.push(recursiveInstallCheck(ti).then(\n function (tt) { subtree[ti] = tt; },\n function (tt) { reject(tt); },\n ));\n }\n }\n if (data['parent-plugin']) {\n fuckUpVar(data['parent-plugin']);\n }\n for (var ti of $tw.utils.parseStringArray(data.dependents || '')) {\n if (t.has(ti)) continue;\n fuckUpVar(ti);\n }\n Promise.all(promisese).then(function () {\n resolve(subtree);\n });\n }).catch(function (err) {\n if (err.startsWith('404')) err = '[404] Cannot find plugin '+ title;\n reject(err);\n });\n });\n }\n\n recursiveInstallCheck(title).then(function (tree) {\n var f = {};\n for (var ti of existingTitle) {\n if (ti === title) continue;\n f['cpl-plugin#version#' + ti] = versionsMapLatest[ti];\n f['cpl-plugin#install#' + ti] = $tw.wiki.tiddlerExists(ti) ? \"no\" : \"yes\";\n }\n f['cpl-plugin#version#' + title] = version;\n $tw.wiki.addTiddler({\n title: '$:/temp/CPL-Repo/instal-plugin-request-tree/' + title,\n type: 'application/json',\n text: JSON.stringify({ title: title, versions: versionsMap, sizes: sizesMap, tree: tree }),\n ...f,\n });\n $tw.wiki.deleteTiddler('$:/temp/CPL-Repo/instal-plugin-requesting');\n $tw.modal.display('$:/plugins/Gk0Wk/CPL-Repo/install-plugin-request-model-template', {\n variables: {\n requestTiddler: '$:/temp/CPL-Repo/instal-plugin-request-tree/' + title,\n },\n event: event,\n });\n }).catch(function (err) {\n console.error(err);\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/instal-plugin-requesting', text: err, 'plugin-title': title });\n }).finally(function () {\n installRequestLock = false;\n });\n } catch (err) {\n console.error(err);\n installRequestLock = false;\n }\n });\n var installLock = false;\n $tw.rootWidget.addEventListener(\"cpl-install-plugin\", function (event) {\n try {\n if (installLock) return;\n var paramObject = event.paramObject || {};\n var response = paramObject.response;\n if (!$tw.wiki.tiddlerExists(response)) return;\n var responseTiddler = $tw.wiki.getTiddler(response).fields;\n $tw.wiki.deleteTiddler(response);\n var data = JSON.parse(responseTiddler.text);\n var rootPlugin = data.title;\n var plugins = [[rootPlugin, responseTiddler['cpl-plugin#version#'+rootPlugin]]];\n for (var plugin in data.versions) {\n if (responseTiddler['cpl-plugin#install#'+plugin] === 'yes' && responseTiddler['cpl-plugin#version#'+plugin]) {\n plugins.push([plugin, responseTiddler['cpl-plugin#version#'+plugin]]);\n }\n }\n var total = plugins.length;\n var count = 0;\n installLock=true;\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/installing-plugin', text: 'yes', 'plugin-title': rootPlugin });\n Promise.all(plugins.map(function (t) {\n return cpl('Install', { plugin: t[0], version: t[1] }).then(function (text) {\n $tw.notifier.display('$:/plugins/Gk0Wk/CPL-Repo/downloading-notify', {\n variables: { plugin: t[0], count: ++count, total: total },\n });\n return new $tw.Tiddler($tw.utils.parseJSONSafe(text));\n });\n })).then(function (tiddlers) {\n $tw.wiki.deleteTiddler('$:/temp/CPL-Repo/installing-plugin');\n for (var tiddler of tiddlers) {\n $tw.wiki.addTiddler(tiddler);\n }\n $tw.notifier.display('$:/plugins/Gk0Wk/CPL-Repo/downloading-complete-notify', { variables: {} });\n }).catch(function (err) {\n console.error(err);\n $tw.notifier.display('$:/plugins/Gk0Wk/CPL-Repo/downloading-fail-notify', {\n variables: { message: err },\n });\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/installing-plugin', text: err, 'plugin-title': rootPlugin });\n }).finally(function () {\n installLock = false;\n });\n } catch (e) {\n console.error(e);\n installLock = false;\n }\n });\n var tmpIndex;\n var tmpAllPlugins;\n var tmpCategories;\n var getPluginsIndexLock = false;\n $tw.rootWidget.addEventListener(\"cpl-get-plugins-index\", function () {\n try {\n if (getPluginsIndexLock) return;\n getPluginsIndexLock = true;\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/getting-plugins-index', text: 'yes' });\n cpl('Index').then(function (text) {\n var data = JSON.parse(text);\n var pluginMap = {};\n var categories = {};\n var authors = {};\n var allPlugins = [];\n var allTags = new Set();\n for (var p of data) {\n pluginMap[p.title] = p;\n allPlugins.push(p.title);\n if (p.category && p.category !== 'Unknown') {\n if (categories[p.category] === undefined) categories[p.category] = [];\n categories[p.category].push(p.title);\n }\n if (p.author) {\n if (authors[p.author] === undefined) authors[p.author] = [];\n authors[p.author].push(p.title);\n }\n if (!p.title.startsWith('$:/languages') && p.title.split('/').length === 4) {\n var a = p.title.split('/')[2];\n if (a !== p.author) {\n if (authors[a] === undefined) authors[a] = [];\n authors[a].push(p.title);\n }\n }\n if (p.tags) {\n for (var tag of $tw.utils.parseStringArray(p.tags)) {\n allTags.add(tag);\n }\n }\n }\n tmpIndex = data;\n tmpAllPlugins = allPlugins;\n tmpCategories = categories;\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/plugins-index', text: JSON.stringify(pluginMap), type: 'application/json' });\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/categories', text: JSON.stringify(categories), type: 'application/json' });\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/authors', text: JSON.stringify(authors), type: 'application/json' });\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/tags', text: JSON.stringify(Array.from(allTags)), type: 'application/json' });\n $tw.wiki.deleteTiddler('$:/temp/CPL-Repo/getting-plugins-index');\n }).catch(function (err) {\n console.error(err);\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/getting-plugins-index', text: err });\n }).finally(function () {\n getPluginsIndexLock = false;\n });\n } catch (err) {\n console.error(err);\n getPluginsIndexLock = false;\n }\n });\n var queryPluginLocks = new Set();\n $tw.rootWidget.addEventListener(\"cpl-query-plugin\", function (event) {\n try {\n var paramObject = event.paramObject || {};\n var title = paramObject.title;\n if (queryPluginLocks.has(title)) return;\n if (!title) return;\n queryPluginLocks.add(title);\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/querying-plugin/' + title, text: 'yes' });\n cpl('Query', { plugin: title }).then(function (text) {\n var data = JSON.parse(text);\n // 计算作者\n if (!data.author) {\n if (!data.title.startsWith('$:/languages') && data.title.split('/').length === 4) {\n data.author = data.title.split('/')[2];\n }\n }\n // 相似推荐\n var suggestions = [];\n if (tmpIndex && data.category !== 'Language') {\n // 基于标签距离进行推荐\n if (data.tags) {\n var tags = new Set($tw.utils.parseStringArray(data.tags).map(function (t) { return t.toLowerCase(); }));\n for (var plugin of tmpIndex) {\n if (!plugin.tags || plugin.title === title) continue;\n var weight = 0;\n for (var t of $tw.utils.parseStringArray(data.tags)) {\n if (tags.has(t.toLowerCase())) weight++;\n }\n if (weight === 0) continue;\n suggestions.push([plugin.title, weight]);\n }\n }\n // 按照权重排序\n suggestions.sort(function (a, b) { return b[1] - a[1]; });\n suggestions = suggestions.slice(0, 20).map(function (t) { return t[0] });\n // 如果数量不够,用同category\n if (suggestions.length < 20 && data.category !== '' && data.category !== 'Unknown') {\n var tset = new Set(suggestions);\n for (var p of (tmpCategories[data.category] ?? [])) {\n if (tset.has(p) || p === title) continue;\n suggestions.push(p);\n if (suggestions.length >= 20) break;\n }\n }\n }\n data.suggestions = $tw.utils.stringifyList(suggestions);\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/plugin-info/' + title, text: JSON.stringify(data), type: 'application/json' });\n $tw.wiki.deleteTiddler('$:/temp/CPL-Repo/querying-plugin/' + title);\n }).catch(function (err) {\n console.error(err);\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/querying-plugin/' + title, text: err });\n }).finally(function () {\n queryPluginLocks.delete(title);\n });\n } catch (err) {\n console.error(err);\n if (event.paramObject && event.paramObject.title) queryPluginLocks.delete(event.paramObject.title);\n }\n });\n // 插件查询\n var searchPluginsLock = false;\n $tw.rootWidget.addEventListener(\"cpl-search-plugins\", function (event) {\n try {\n if (searchPluginsLock) return;\n if (tmpAllPlugins === undefined) return;\n var paramObject = event.paramObject || {};\n var mode = paramObject.mode ?? '';\n var text = paramObject.text ?? '';\n var saveTo = paramObject.saveTo ?? '';\n if (!saveTo) return;\n searchPluginsLock = true;\n switch (mode) {\n case \"mix\": {\n if (text.length < 3) {\n // 字太少,匹配量爆炸,直接返回所有\n $tw.wiki.addTiddler({\n title: saveTo,\n text: JSON.stringify(tmpAllPlugins),\n type: 'application/json'\n });\n } else {\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/searching-plugin', text: 'yes' });\n var patterns = new Set(text.split(/\\s+/).map(function (t) { return t.toLowerCase(); }));\n patterns = new Set(Array.from(patterns).slice(0, 10)); // 再多性能撑不住了\n var suggestions = [];\n for (var plugin of tmpIndex) {\n var weight = 0;\n // 标题、作者、名称的搜索 10 权重\n for (var f of ['title', 'author', 'name']) {\n if (plugin[f]) {\n var t = plugin[f].toLowerCase();\n for (var pattern of patterns) {\n if (t.indexOf(pattern) >= 0) weight += 10;\n }\n }\n }\n // tag 的搜索 5 权重\n if (plugin.tags) {\n for (var t of $tw.utils.parseStringArray(plugin.tags)) {\n if (patterns.has(t.toLowerCase())) weight += 5;\n }\n }\n // description 搜索 2 权重\n if (plugin.description) {\n var t = plugin.description.toLowerCase();\n for (var pattern of patterns) {\n if (t.indexOf(pattern) >= 0) weight += 2;\n }\n }\n // readme 搜索 1 权重\n if (plugin.description) {\n var t = plugin.description;\n for (var pattern of patterns) {\n if (t.indexOf(pattern) >= 0) weight += 1;\n }\n }\n if (weight === 0) continue;\n suggestions.push([plugin.title, weight]);\n }\n // 按照权重排序\n suggestions.sort(function (a, b) { return b[1] - a[1]; });\n suggestions = suggestions.map(function (t) { return t[0] });\n $tw.wiki.addTiddler({\n title: saveTo,\n text: JSON.stringify(suggestions),\n type: 'application/json'\n });\n $tw.wiki.deleteTiddler('$:/temp/CPL-Repo/searching-plugin');\n }\n break;\n }\n case \"tags\": {\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/searching-plugin', text: 'yes' });\n var tags = new Set($tw.utils.parseStringArray(text).map(function (t) { return t.toLowerCase(); }));\n var result = [];\n for (var plugin of tmpIndex) {\n if (!plugin.tags) continue;\n var matched = true;\n for (var t of $tw.utils.parseStringArray(plugin.tags)) {\n if (tags.has(t.toLowerCase())) continue;\n matched = false;\n break;\n }\n if (matched) result.push(plugin.title);\n }\n $tw.wiki.addTiddler({\n title: saveTo,\n text: JSON.stringify(result),\n type: 'application/json'\n });\n $tw.wiki.deleteTiddler('$:/temp/CPL-Repo/searching-plugin');\n break;\n }\n default: {\n return;\n }\n }\n searchPluginsLock = false;\n } catch (err) {\n console.error(err);\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/searching-plugin', text: String(err) });\n searchPluginsLock = false;\n }\n });\n};\n\n/*\n安装插件\n<$action-sendmessage $message=\"cpl-install-plugin\" title=\"xxx\" version=\"latest\"/>\n$:/temp/CPL-Repo/installing-plugin 如果为 yes 说明正在安装,请勿进行其他操作 如果不是yes,如果非空说明是错误信息 plugin-title字段是正在安装的插件\n\n获取所有插件的索引\n<$action-sendmessage $message=\"cpl-get-plugins-index\"/>\n$:/temp/CPL-Repo/plugins-index 所有信息\n$:/temp/CPL-Repo/getting-plugins-index 同上\n\n查询某个插件的信息\n<$action-sendmessage $message=\"cpl-query-plugin\" title=\"xxx\"/>\n$:/temp/CPL-Repo/plugin-info/<插件title> 插件的相关信息\n$:/temp/CPL-Repo/querying-plugin/<插件title> 同上\n*/\n})();\n","module-type":"startup","tags":[],"type":"application/javascript"},"$:/plugins/Gk0Wk/CPL-Repo/downloading-complete-notify":{"title":"$:/plugins/Gk0Wk/CPL-Repo/downloading-complete-notify","code-body":"yes","tags":[],"type":"text/vnd.tiddlywiki","text":"!! <$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[安装完成]else[Installation completed]] }}} />"},"$:/plugins/Gk0Wk/CPL-Repo/downloading-fail-notify":{"title":"$:/plugins/Gk0Wk/CPL-Repo/downloading-fail-notify","code-body":"yes","tags":[],"type":"text/vnd.tiddlywiki","text":"!! <$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[安装失败]else[Installation failed]] }}} />\n\n<>"},"$:/plugins/Gk0Wk/CPL-Repo/downloading-notify":{"title":"$:/plugins/Gk0Wk/CPL-Repo/downloading-notify","code-body":"yes","tags":[],"type":"text/vnd.tiddlywiki","text":"<$list filter=\"[[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[yes]else[no]]\" variable=\"chinese\">\n\n<$list filter=\"[match[yes]]\" variable=\"t\">\n\n!! 请稍候...\n\n正在下载第 <> 个插件(共 <> 个): <>\n\n\n\n<$list filter=\"[!match[yes]]\" variable=\"t\">\n\n!! Please wait...\n\nDownloading the <> of plugins (total <>): <>\n\n\n\n"},"$:/plugins/Gk0Wk/CPL-Repo/home-gallery":{"title":"$:/plugins/Gk0Wk/CPL-Repo/home-gallery","caption":"<$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[首页]else[Home]] }}} />","tags":[],"type":"text/vnd.tiddlywiki","text":"\\import $:/plugins/Gk0Wk/CPL-Repo/plugin-list-item\n\\import $:/plugins/Gk0Wk/CPL-Repo/plugin-size\n\\import $:/plugins/Gk0Wk/CPL-Repo/paged-plugin-list\n\\define go-search()\n<$action-sendmessage\n $message=\"cpl-search-plugins\"\n mode=\"mix\"\n text={{$:/temp/CPL-Repo/searchplugin-home/input}}\n saveTo=\"$:/temp/CPL-Repo/searchplugin-home/result\"\n/>\n\\end\n\n
\n
\n<$macrocall\n $name=\"keyboard-driven-input\"\n tiddler=\"$:/temp/CPL-Repo/searchplugin-home/input\"\n tag=\"input\"\n class=\"tc-edit-texteditor tc-popup-handle\"\n focus=\"true\"\n filterMinLength=\"2\"\n placeholder={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[搜索插件...]else[Search for plugin...]] }}}\n inputAcceptActions=<>\n class=\"tc-titlebar tc-edit-texteditor\"\n/>\n
\n<$button class=\"tc-primary-btn tc-btn-big-green cpl-plugin-search-go\" disabled={{$:/temp/CPL-Repo/searching-plugin}}>\n <$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]] :then[{$:/temp/CPL-Repo/searching-plugin}match[yes]then[搜索中...]else[搜索]] :else[{$:/temp/CPL-Repo/searching-plugin}match[yes]then[Searching...]else[Search]] }}} />\n <>\n\n
\n<$list filter=\"[[$:/temp/CPL-Repo/searching-plugin]is[tiddler]!field:text[yes]]\">\n
\n\t<$text text={{{ [match[yes]then[出现了一些问题]else[Some errors occured]] }}}/>: <$text text={{!!text}}/>\n
\n\n<$list filter=\"[[$:/temp/CPL-Repo/searchplugin-home/result]is[tiddler]then[yes]else[no]]\" variable=\"go\">\n\n<$list filter=\"[match[yes]]\" variable=\"t\">\n<>\n\n\n<$list filter=\"[match[no]]\" variable=\"t\">\n<>\n\n\n"},"$:/plugins/Gk0Wk/CPL-Repo/install-plugin-query-notify":{"title":"$:/plugins/Gk0Wk/CPL-Repo/install-plugin-query-notify","code-body":"yes","tags":[],"type":"text/vnd.tiddlywiki","text":"<$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[获取安装信息中,请稍候]else[Getting installation information, please wait]] }}} />"},"$:/plugins/Gk0Wk/CPL-Repo/install-plugin-request-model-template":{"title":"$:/plugins/Gk0Wk/CPL-Repo/install-plugin-request-model-template","code-body":"yes","subtitle":"<$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[请确认安装]else[Please Confirm to Install]] }}} />","tags":[],"type":"text/vnd.tiddlywiki","text":"\\import $:/plugins/Gk0Wk/CPL-Repo/plugin-size\n\n\\define dependents-tree(json,checked-title,versions,sizes)\n<$list filter=\"[<__json__>jsonindexes[]]\" variable=\"plugin\">\n
\n <$let install-field={{{ [[cpl-plugin#install#]addsuffix] }}} version-field={{{ [[cpl-plugin#version#]addsuffix] }}}>\n
\n \n ''<$text text=<>/>'' \n <$let v={{{ [<__checked-title__>get] }}}>\n <$macrocall $name=\"plugin-size\" size={{{ [<__sizes__>jsonget,else[0]] }}} />\n \n \n \n <$checkbox tiddler=<<__checked-title__>> field=<> checked=\"yes\" unchecked=\"no\" default=\"no\">\n <$text text={{{ [<__checked-title__>getmatch[yes]] :then[match[yes]then[即将安装:]else[Will be installed:]] :else[match[yes]then[不会安装]else[Will not be installed]] }}} />\n \n <$list filter=\"[<__checked-title__>getmatch[yes]]\" variable=\"t\">\n  \n <$select tiddler=<<__checked-title__>> field=<>>\n <$list filter=\"[<__versions__>jsonget]\" variable=\"version\">\n \n \n \n \n \n
\n <$macrocall $name=\"dependents-tree\" json={{{ [<__json__>jsonextract] }}} checked-title=<<__checked-title__>> versions=<<__versions__>> sizes=<<__sizes__>> />\n \n
\n\n\\end\n\n<$list filter=\"[[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[yes]else[no]]\" variable=\"chinese\">\n<$let json={{{ [get[text]] }}}>\n\n<<<\n<$let title={{{ [jsonget[title]] }}} version-field={{{ [[cpl-plugin#version#]addsuffix] }}}>\n''<$text text={{{ [<chinese>match[yes]then[即将安装:]else[To be installed:]] }}}/>''\n<$text text=<<title>>/>   \n''<$text text={{{ [<chinese>match[yes]then[选择版本:]else[Select version:]] }}}/>''\n<$select tiddler=<<requestTiddler>> field=<<version-field>>>\n<$list filter=\"[<json>jsonget[versions],<title>]\" variable=\"version\">\n<option value=<<version>>><$text text=<<version>>/></option>\n</$list>\n</$select>\n \n<$let v={{{ [<requestTiddler>get<version-field>] }}}>\n<$macrocall $name=\"plugin-size\" size={{{ [<json>jsonget[sizes],<title>,<v>else[0]] }}} />\n</$let>\n</$let>\n<<<\n\n<!-- 依赖树 -->\n<$list filter=\"[<json>jsonextract[tree]jsonindexes[]count[]compare:integer:gt[0]]\" variable=\"t\">\n<$list filter=\"[<chinese>match[yes]]\" variable=\"t\">\n\n这个插件有一些依赖项,在安装插件之前,将会递归地安装这些插件,如果这些插件没有被成功安装,将会回滚所有安装动作。\n\n你可以自行选择安装哪些插件并选择其版本。插件依赖树如下:\n\n</$list>\n<$list filter=\"[<chinese>!match[yes]]\" variable=\"t\">\n\nThis plugin has some dependencies that will be installed recursively before installing the plugin, and if these plugins are not installed successfully, all installation actions will be rolled back.\n\nIt is up to you to choose which plugins to install and select their versions. The plugin dependency tree is as follows:\n\n</$list>\n</$list>\n<div style=\"margin-left:-1em;margin-right:6px;\">\n <$macrocall\n $name=\"dependents-tree\"\n json={{{ [<json>jsonextract[tree]] }}}\n checked-title=<<requestTiddler>>\n versions={{{ [<json>jsonextract[versions]] }}}\n sizes={{{ [<json>jsonextract[sizes]] }}}\n />\n</div>\n<hr/>\n\n<$list filter=\"[<chinese>match[yes]]\" variable=\"t\">\n\n注意:虽然 CPL 对安装失败有一定的回滚措施,但是无法避免因插件自身以及插件间相互作用所产生的潜在风险,包括但不限于\n\n* 浏览器崩溃;\n* Wiki 系统受损或数据丢失;\n* 插件内含恶意脚本的执行造成隐私泄露或系统损坏;\n\nCPL [[接受恶意插件举报|https://github.com/tiddly-gittly/TiddlyWiki-CPL/issues]]并将下架这类插件,但 CPL 不能保证其中收录的所有插件均安全可用。如您在安装后出现任何问题造成损失,CPL 无法负责。\n\n@@background:#e91e3db0;color:white;padding:4px;''因此,在安装任何插件前,请备份您的Wiki!''@@\n\n即便如此,您依然要安装吗?\n\n</$list>\n\n<$list filter=\"[<chinese>!match[yes]]\" variable=\"t\">\n\nNote: Although the CPL has some rollback measures for failed installations, it is not immune to the potential risks arising from the plugins themselves and from interactions between plugins, including but not limited to\n\n* Browser crashes;\n* Damage to the Wiki system or loss of data;\n* Privacy leakage or system damage caused by the execution of malicious scripts contained in the plugin;\n\nCPL [[accepts reports of malicious plugins|https://github.com/tiddly-gittly/TiddlyWiki-CPL/issues]] and will take down such plugins, but CPL cannot guarantee that all plugins included are safe and available. However, CPL cannot guarantee that all plugins are safe and available. CPL cannot be held responsible for any damage caused by any problem that occurs after you have installed the plugin.\n\n@@background:#e91e3db0;color:white;width:100%;padding:4px;''Therefore, please back up your wiki before installing any plugins!''@@\n\nEven so, do you still want to install it?\n\n</$list>\n\n<$button class=\"tc-btn-big-green tc-primary-btn\" message=\"tm-close-tiddler\">\n<$action-sendmessage $message=\"cpl-install-plugin\" response=<<requestTiddler>> />\n{{$:/core/images/done-button}}\n \n<$text text={{{ [<chinese>match[yes]then[确认安装]else[Confirm to Install]] }}} />\n</$button>\n\n</$let>\n</$list>\n"},"$:/plugins/Gk0Wk/CPL-Repo/paged-plugin-list":{"title":"$:/plugins/Gk0Wk/CPL-Repo/paged-plugin-list","code-body":"yes","tags":[],"type":"text/vnd.tiddlywiki","text":"\\define paged-plugin-list-control(class2:\"\")\n\\whitespace trim\n<$list filter=\"[<pageMin>!match<pageMax>]\">\n<div class=\"$class2$\">\n <div>\n <$list filter=\"[<page>!match<lastPage>]\">\n <$button setTitle=<<pageState>> setTo=<<lastPage>>>{{$:/core/images/left-arrow}}</$button>\n </$list>\n </div>\n <span><$text text={{{ [<page>add[1]] }}}/> / <$text text={{{ [<pageMax>add[1]] }}}/></span>\n <div>\n <$list filter=\"[<page>!match<nextPage>]\">\n <$button setTitle=<<pageState>> setTo=<<nextPage>>>{{$:/core/images/right-arrow}}</$button>\n </$list>\n </div>\n</div>\n</$list>\n\\end\n\\define paged-plugin-list(filter,field,pageSize:\"10\",indexTitle:\"$:/temp/CPL-Repo/plugins-index\",class1:\"\",class2:\"\")\n\\whitespace trim\n<$let pageSize={{{ [<__pageSize__>min[1]] }}} indexTitle=<<__indexTitle__>> pageState=<<qualify \"$:/temp/CPL-Repo/paged-plugin-list-page\">> pluginCount={{{ $filter$ +[count[]] }}}>\n<$let pageMin=\"0\" pageMax={{{ [<pluginCount>divide<__pageSize__>ceil[]subtract[1]max[0]] }}}>\n<$let page={{{ [<pageState>get[text]else<pageMin>] +[max<pageMin>min<pageMax>] }}}>\n<$let firstIndex={{{ [<page>multiply<__pageSize__>] }}} nextPage={{{ [<page>add[1]min<pageMax>] }}} lastPage={{{ [<page>subtract[1]max<pageMin>] }}}>\n<<paged-plugin-list-control \"$class2$\">>\n<div class=\"$class1$\">\n <$list filter=\"$filter$ +[rest<firstIndex>first<__pageSize__>]\" variable=\"plugin\">\n <$macrocall\n $name=\"plugin-list-item\"\n json={{{ [{$:/temp/CPL-Repo/plugins-index}jsonextract<plugin>] }}}\n field=\"$field$\"\n class=\"cpl-plugin-info-box\"\n />\n </$list>\n</div>\n<<paged-plugin-list-control \"$class2$\">>\n</$let>\n</$let>\n</$let>\n</$let>\n\\end\n"},"$:/plugins/Gk0Wk/CPL-Repo/panel":{"title":"$:/plugins/Gk0Wk/CPL-Repo/panel","caption":"CPL","list-after":"$:/core/ui/ControlPanel/Plugins","tags":["$:/tags/MoreSideBar","$:/tags/ControlPanel"],"type":"text/vnd.tiddlywiki","text":"<!-- 在侧栏不显示 -->\n<$list filter=\"[<listItem>!match[$:/core/ui/SideBarSegments/tabs]]\">\n{{$:/plugins/Gk0Wk/CPL-Repo/about-banner}}\n</$list>\n\n<$macrocall\n\t$name=\"tabs\"\n\tstate=\"$:/temp/CPL-Repo/panel-tab-state\"\n\ttabsList=\"plugin-database uninstall-manager settings +[addprefix[$:/plugins/Gk0Wk/CPL-Repo/]]\"\n\tdefault=\"$:/plugins/Gk0Wk/CPL-Repo/plugin-database\"\n/>\n"},"$:/plugins/Gk0Wk/CPL-Repo/plugin-database":{"title":"$:/plugins/Gk0Wk/CPL-Repo/plugin-database","caption":"<$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[插件数据库]else[Plugin Database]] }}} />","tags":[],"type":"text/vnd.tiddlywiki","text":"<$list filter=\"[[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[yes]else[no]]\" variable=\"chinese\">\n\n<$button disabled={{{ [{$:/temp/CPL-Repo/getting-plugins-index}match[yes]else[no]] }}} class=\"tc-btn-big-green tc-primary-btn\">\n<$action-sendmessage $message=\"cpl-get-plugins-index\" />\n{{$:/core/images/download-button}}\n \n<$text text={{{ [[$:/temp/CPL-Repo/plugins-index]is[tiddler]] :then[<chinese>match[yes]then[刷新数据库]else[Refresh Database]] :else[<chinese>match[yes]then[加载数据库]else[Load Database]] }}} />\n</$button>\n\n<span style=\"opacity:0.5;\"><$text text={{{ [<chinese>match[yes]then[当前镜像]else[Current mirror]] }}}/>: <$text text={{{ [{$:/plugins/Gk0Wk/CPL-Repo/config/current-repo}!is[blank]else[https://tiddly-gittly.github.io/TiddlyWiki-CPL/library/all]] }}} /></span>\n\n<!-- 错误提示 -->\n<$list filter=\"[[$:/temp/CPL-Repo/getting-plugins-index]is[tiddler]!field:text[yes]]\">\n<div style=\"background:#e91e3db0;color:white;padding:2px 6px;margin:3px 0;border-radius:2px;backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;\">\n\t<$text text={{{ [<chinese>match[yes]then[出现了一些问题]else[Some errors occured]] }}}/>: <$text text={{!!text}}/>\n\t<$text text={{{ [<chinese>match[yes]then[请尝试刷新]else[Please try refreshing]] }}}/>\n</div>\n</$list>\n\n<!-- 加载中提示 -->\n<$list filter=\"[[$:/temp/CPL-Repo/getting-plugins-index]is[tiddler]field:text[yes]]\">\n<div style=\"background:#0005;color:#aaa;padding:2px 6px;margin:3px 0;border-radius:2px;backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;\">\n\t<$text text={{{ [<chinese>match[yes]then[加载中...]else[Loading...]] }}}/>\n</div>\n</$list>\n\n<$list filter=\"[[$:/temp/CPL-Repo/plugins-index]is[tiddler]]\" variable=\"ready\">\n<$macrocall\n\t$name=\"tabs\"\n\tstate=\"$:/temp/CPL-Repo/plugin-database-tab-state\"\n\ttabsList=\"home-gallery category-gallery tags-gallery update-manager +[addprefix[$:/plugins/Gk0Wk/CPL-Repo/]]\"\n\tdefault=\"$:/plugins/Gk0Wk/CPL-Repo/home-gallery\"\n/>\n</$list>\n\n</$list>\n"},"$:/plugins/Gk0Wk/CPL-Repo/plugin-list-item":{"title":"$:/plugins/Gk0Wk/CPL-Repo/plugin-list-item","code-body":"yes","tags":[],"type":"text/vnd.tiddlywiki","text":"\\define tag-plain(text:\"\",icon:\"\",color:\"\",bg:\"\")\n\\whitespace trim\n<span class=\"tc-tag-label\" style=\"background-color:$bg$;color:$color$;fill:$color$;user-select:none;margin-right:6px;\">\n\t{{$icon$}}$text$\n</span>\n\\end\n\n<!-- 安装插件的按钮 -->\n\\define install-plugin-button(plugin,libraryVersion,installedVersion)\n\\whitespace trim\n<div>\n <$let libraryVersion=<<__libraryVersion__>> installedVersion=<<__installedVersion__>> plugin=<<__plugin__>>>\n <$set name=\"reinstall-type\" value={{{ [<libraryVersion>compare:version:eq<installedVersion>then[tc-reinstall]] [<libraryVersion>compare:version:gt<installedVersion>then[tc-reinstall-upgrade]] [<libraryVersion>compare:version:lt<installedVersion>then[tc-reinstall-downgrade]] }}}>\n <$button class={{{ [<installedVersion>!is[blank]then<reinstall-type>] tc-btn-invisible tc-install-plugin +[join[ ]] }}} disabled={{{ [[$:/temp/CPL-Repo/instal-plugin-requesting]field:text[yes]else[]] [[$:/temp/CPL-Repo/installing-plugin]field:text[yes]else[]] +[unique[]match[yes]limit[1]else[no]] }}}>\n <$action-sendmessage $message=\"cpl-install-plugin-request\" title=<<plugin>> version=<<libraryVersion>>/>\n <$list filter=\"[[$:/temp/CPL-Repo/instal-plugin-requesting]field:plugin-title<plugin>]\">{{$:/core/images/timestamp-on}}</$list>\n <$list filter=\"[[$:/temp/CPL-Repo/instal-plugin-requesting]!field:plugin-title<plugin>]\">\n {{$:/core/images/download-button}}\n \n <!-- 根据版本判断安装/升级/降级/重装 -->\n <$list filter=\"[<installedVersion>is[blank]]\">{{$:/language/ControlPanel/Plugins/Install/Caption}}</$list>\n <$list filter=\"[<installedVersion>!is[blank]]\">\n <$list filter=\"[<libraryVersion>compare:version:gt<installedVersion>]\">{{$:/language/ControlPanel/Plugins/Update/Caption}}</$list>\n <$list filter=\"[<libraryVersion>compare:version:lt<installedVersion>]\">{{$:/language/ControlPanel/Plugins/Downgrade/Caption}}</$list>\n <$list filter=\"[<libraryVersion>compare:version:eq<installedVersion>]\">{{$:/language/ControlPanel/Plugins/Reinstall/Caption}}</$list>\n </$list>\n </$list>\n </$button>\n </$set>\n </$let>\n</div>\n\\end\n\n\\define plugin-list-item(json,field,show-suggestion:\"yes\",class:\"\")\n\\whitespace trim\n\\import $:/plugins/Gk0Wk/CPL-Repo/plugin-size\n<$list filter=\"[[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[yes]else[no]]\" variable=\"chinese\">\n<div class=\"$class$\">\n<$let json=<<__json__>>>\n<$let\n title={{{ [<json>jsonget[title]] }}}\n tags={{{ [<json>jsonget[tags]] }}}\n icon={{{ [<json>jsonget[icon]trim[]] }}}\n type={{{ [<json>jsonget[type]else[plugin]] }}}\n name={{{ [<json>jsonget[name]] ~[<json>jsonget[title]split[/]last[1]] }}}\n description={{{ [<json>jsonget[description]] }}}\n version={{{ [<json>jsonget[version]] }}}\n category={{{ [<json>jsonget[category]!is[blank]else[Unknown]] }}}\n installedVersion={{{ [<json>jsonget[title]get[version]] }}}\n detailJsonTitle={{{ $:/temp/CPL-Repo/plugin-info [<json>jsonget[title]] +[join[/]] }}}\n detailJsonStateTitle={{{ $:/temp/CPL-Repo/querying-plugin [<json>jsonget[title]] +[join[/]] }}}\n>\n<$let popup-state={{{ $:/temp/CPL-Repo/popup-state [<__field__>] [<title>] +[join[/]] }}}>\n<!-- 插件简介 -->\n<div class=\"tc-plugin-info\">\n <!-- 展开/收起按钮 -->\n <div class=\"tc-plugin-info-chunk tc-plugin-info-toggle\">\n <$reveal type=\"nomatch\" state=<<popup-state>> text=\"yes\">\n <$button class=\"tc-btn-invisible tc-btn-dropdown\" set=<<popup-state>> setTo=\"yes\">\n <$action-sendmessage $message=\"cpl-query-plugin\" title=<<title>>/>\n {{$:/core/images/chevron-right}}\n </$button>\n </$reveal>\n <$reveal type=\"match\" state=<<popup-state>> text=\"yes\">\n <$button class=\"tc-btn-invisible tc-btn-dropdown\" set=<<popup-state>> setTo=\"no\">\n {{$:/core/images/chevron-down}}\n </$button>\n </$reveal>\n </div>\n <!-- 插件图标 -->\n <div class=\"tc-plugin-info-chunk tc-plugin-info-icon\">\n <$list filter=\"[<icon>!is[blank]]\">\n <img src=<<icon>>/>\n </$list>\n <$list filter=\"[<icon>is[blank]]\">\n <$transclude tiddler={{{ [[$:/core/images/plugin-generic-]addsuffix<type>] }}}/>\n </$list>\n </div>\n <!-- 标题,简介,版本,是否安装,标签分类 -->\n <div class=\"tc-plugin-info-chunk tc-plugin-info-description\">\n <h1><strong><$text text=<<name>>/></strong>: <$text text=<<description>>/></h1>\n <h2><$text text=<<title>>/></h2>\n <div><em><$text text=<<version>>/></em></div>\n <div style=\"padding-top:4px;\">\n <$macrocall $name=\"tag-plain\" text={{{ [<chinese>match[yes]] :then[<category>addprefix[$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/]get[text]else[未分类]] :else[<category>] }}} icon=\"$:/core/images/folder\" bg=\"#3f51b5\" color=\"#fff\" />\n <$let bg={{{ [{$:/palette}getindex[tag-background]] }}} color={{{ [{$:/palette}getindex[foreground]] }}}>\n <$list filter=\"[enlist<tags>]\" variable=\"tag\">\n <$macrocall $name=\"tag-plain\" text=<<tag>> icon=\"$:/core/images/tag-button\" bg=<<bg>> color=<<color>> />\n </$list>\n </$let>\n </div>\n <$list filter=\"[<installedVersion>!is[blank]]\" variable=\"t\">\n <div><em>{{$:/language/ControlPanel/Plugins/AlreadyInstalled/Hint}}</em></div>\n </$list>\n <$list filter=\"[[$:/temp/CPL-Repo/instal-plugin-requesting]is[tiddler]field:plugin-title<plugin>]\">\n <$list filter=\"[{$:/temp/CPL-Repo/instal-plugin-requesting}match[yes]]\">\n <span style=\"color:#3ed044;font-weight:800;\"><$text text={{{ [<chinese>match[yes]then[安装准备中...]else[Preparing installation...]] }}}/></span>\n </$list>\n <$list filter=\"[{$:/temp/CPL-Repo/instal-plugin-requesting}!match[yes]]\">\n <span style=\"color:#fd160e;font-weight:800;\"><$text text={{{ [<chinese>match[yes]then[出错: ]else[Error: ]addsuffix{$:/temp/CPL-Repo/instal-plugin-requesting}] }}}/></span>\n </$list>\n </$list>\n <$list filter=\"[[$:/temp/CPL-Repo/installing-plugin]is[tiddler]field:plugin-title<plugin>]\">\n <$list filter=\"[{$:/temp/CPL-Repo/installing-plugin}match[yes]]\">\n <span style=\"color:#3ed044;font-weight:800;\"><$text text={{{ [<chinese>match[yes]then[安装中...]else[Installing...]] }}}/></span>\n </$list>\n <$list filter=\"[{$:/temp/CPL-Repo/installing-plugin}!match[yes]]\">\n <span style=\"color:#fd160e;font-weight:800;\"><$text text={{{ [<chinese>match[yes]then[出错: ]else[Error: ]addsuffix{$:/temp/CPL-Repo/installing-plugin}] }}}/></span>\n </$list>\n </$list>\n </div>\n <!-- 安装按钮 -->\n <div class=\"tc-plugin-info-chunk tc-plugin-info-buttons\">\n <$macrocall $name=\"install-plugin-button\" plugin=<<title>> libraryVersion=<<version>> installedVersion=<<installedVersion>> />\n </div>\n</div>\n<!-- 详情 -->\n<$list filter=\"[<popup-state>field:text[yes]]\">\n<div class=\"tc-plugin-info-dropdown\">\n <!-- 错误提示 -->\n <$list filter=\"[<detailJsonStateTitle>is[tiddler]!field:text[yes]]\">\n <div style=\"background:#e91e3db0;color:white;padding:2px 6px;margin:3px 0;border-radius:2px;backdrop-filter:blur(4px);min-height:100px;display:flex;align-items:center;justify-content:center;\">\n <$text text={{{ [<chinese>match[yes]then[出现了一些问题]else[Some errors occured]] }}}/>: <$text text={{!!text}}/>\n <$text text={{{ [<chinese>match[yes]then[请尝试刷新]else[Please try refreshing]] }}}/>\n </div>\n </$list>\n <!-- 加载中提示 -->\n <$list filter=\"[<detailJsonStateTitle>is[tiddler]field:text[yes]]\">\n <div style=\"background:#0005;color:#aaa;padding:2px 6px;margin:3px 0;border-radius:2px;backdrop-filter:blur(4px);min-height:100px;display:flex;align-items:center;justify-content:center;\">\n <$text text={{{ [<chinese>match[yes]then[加载中...]else[Loading...]] }}}/>\n </div>\n </$list>\n <!-- 插件详情 -->\n <$list filter=\"[<detailJsonStateTitle>!is[tiddler]]\" veriable=\"t\">\n <$let json={{{ [<detailJsonTitle>get[text]] }}}>\n <$let\n title={{{ [<json>jsonget[title]] }}}\n readme={{{ [<json>jsonget[readme]] }}}\n parent-plugin={{{ [<json>jsonget[parent-plugin]] }}}\n dependents={{{ [<json>jsonget[dependents]] }}}\n latest={{{ [<json>jsonget[latest]] }}}\n author={{{ [<json>jsonget[author]] }}}\n suggestions={{{ [<json>jsonget[suggestions]] }}}\n >\n <!-- 依赖 -->\n <$list filter=\"[<title>!is[tiddler]]\" variable=\"ignore\">\n <div style=\"background:#e91e3db0;color:white;padding:6px;\" class=\"cpl-plugin-dependencies\">\n {{$:/language/ControlPanel/Plugins/NotInstalled/Hint}} \n <$list filter=\"[enlist<dependents>] [<parent-plugin>] +[unique[]!is[blank]!is[tiddler]limit[1]]\" variable=\"ignore\">\n <div>\n {{$:/language/ControlPanel/Plugins/AlsoRequires}} \n <$list filter=\"[enlist<dependents>] [<parent-plugin>] +[unique[]!is[blank]!is[tiddler]sort[name]]\" variable=\"dependency\">\n <span style=\"border-radius:12px;padding:3px 8px;background:#1c3b40c2;font-size:12px;line-height:24px\"><$text text=<<dependency>>/></span> \n </$list>\n </div>\n </$list>\n </div>\n </$list>\n <!-- 历史版本 -->\n <$list filter=\"[<json>jsonget[versions]count[]compare:integer:gt[1]]\" variable=\"t\">\n <details class=\"more-versions-details\">\n <summary style=\"background:#246b84;padding:4px 10px;cursor:pointer;user-select:none;\">\n <$text text={{{ [<chinese>match[yes]then[浏览其他历史版本]else[Browse older versions]] }}}/>\n </summary>\n <$list filter=\"[<json>jsonget[versions]reverse[]]\" variable=\"version\">\n <div style=\"background:#1a4655;padding:4px 12px;display:flex;flex-direction:row;align-items:center;justify-content:space-between;border-top:1px solid #15333c;\">\n <span>\n <span style=\"color: white;\"><<version>></span>\n <span style=\"opacity: 0.8;\"> (<$macrocall $name=\"plugin-size\" size={{{ [<json>jsonget[versions-size],<version>else[0]] }}} />)</span>\n <$list filter=\"[<latest>compare:version:eq<version>]\"> <span class=\"cpl-latest-version-icon\">{{$:/core/images/star-filled}}</span></$list>\n <$list filter=\"[<installedVersion>compare:version:eq<version>]\"> <span class=\"cpl-installed-version-icon\">{{$:/core/images/done-button}}</span></$list>\n </span>\n <div style=\"font-size:0.8em;line-height:1.2;\"><$macrocall $name=\"install-plugin-button\" plugin=<<title>> libraryVersion=<<version>> installedVersion=<<installedVersion>> /></div>\n </div>\n </$list>\n </details>\n </$list>\n <!-- 正文 -->\n <div class=\"tc-plugin-info-dropdown-body\">\n <$wikify name=\"rendered\" text=<<readme>> output=\"html\"><<rendered>></$wikify>\n </div>\n <!-- 推荐 -->\n <$list filter=\"[<__show-suggestion__>match[yes]]\" variable=\"t\">\n <div style=\"padding:10px 20px;backdrop-filter:contrast(1.1);\">\n <!-- 作者的其他插件 -->\n <$list filter=\"[{$:/temp/CPL-Repo/authors}jsonget<author>count[]compare:integer:gt[1]]\" variable=\"t\">\n <details>\n <summary style=\"padding:10px 0;\">\n <$text text={{{ [<chinese>match[yes]then[作者的其他插件]else[Other plugins of Author]] }}} />\n </summary>\n <div style=\"padding:6px;display:flex;flex-direction:column;\">\n <$list filter=\"[{$:/temp/CPL-Repo/authors}jsonget<author>] -[<title>]\" variable=\"plugin\">\n <$macrocall\n $name=\"plugin-list-item\"\n json={{{ [{$:/temp/CPL-Repo/plugins-index}jsonextract<plugin>] }}}\n field=\"$field$-author-suggestion\"\n show-suggestion=\"no\"\n class=\"cpl-plugin-info-box\"\n />\n </$list>\n </div>\n </details>\n </$list>\n <!-- 插件推荐 -->\n <$list filter=\"[enlist<suggestions>count[]compare:integer:gt[1]]\" variable=\"t\">\n <details>\n <summary style=\"padding:10px 0;\">\n <$text text={{{ [<chinese>match[yes]then[你可能感兴趣的插件]else[Plugins you may be interested in]] }}} />\n </summary>\n <div style=\"padding:6px;display:flex;flex-direction:column;\">\n <$list filter=\"[enlist<suggestions>]\" variable=\"plugin\">\n <$macrocall\n $name=\"plugin-list-item\"\n json={{{ [{$:/temp/CPL-Repo/plugins-index}jsonextract<plugin>] }}}\n field=\"$field$-author-suggestion\"\n show-suggestion=\"no\"\n class=\"cpl-plugin-info-box\"\n />\n </$list>\n </div>\n </details>\n </$list>\n </div>\n </$list>\n </$let>\n </$let>\n </$list>\n</div>\n</$list>\n</$let>\n</$let>\n</$let>\n</div>\n</$list>\n\\end\n"},"$:/plugins/Gk0Wk/CPL-Repo/plugin-size":{"title":"$:/plugins/Gk0Wk/CPL-Repo/plugin-size","code-body":"yes","tags":[],"type":"text/vnd.tiddlywiki","text":"\\define plugin-size(size:\"0\")\n<$list filter=\"[<__size__>compare:integer:gt[0]]\" variable=\"size\" emptyMessage=\"?\">\n<$let unit-step={{{ [<size>compare:integer:gteq[1048576]] :then[<size>compare:integer:gteq[1073741824]then[GiB#1073741824]else[MiB#1048576]] :else[<size>compare:integer:gteq[1024]then[KiB#1024]else[B#1]] }}}>\n<$let unit={{{ [<unit-step>split[#]first[]] }}} step={{{ [<unit-step>split[#]last[]] }}}>\n<$text text={{{ [<size>divide<step>fixed[2]] [<unit>] +[join[ ]] }}}/>\n</$let>\n</$let>\n</$list>\n\\end"},"$:/plugins/Gk0Wk/CPL-Repo/plugin-uninstall-plugins-item":{"title":"$:/plugins/Gk0Wk/CPL-Repo/plugin-uninstall-plugins-item","code-body":"yes","tags":[],"type":"text/vnd.tiddlywiki","text":"\\whitespace trim\n<$list filter=\"[!has[draft.of]plugin-type<currentTab>sort[name]]\" emptyMessage={{$:/language/ControlPanel/Plugins/Empty/Hint}}>\n<div style=\"display:flex;margin:-0.5em 0;\">\n\t<div style=\"flex-grow:1;\">{{||$:/core/ui/PluginListItemTemplate}}</div>\n\t<$button style=\"backdrop-filter:contrast(0.65);margin:0.5em 0;padding:4px 16px !important;cursor:pointer;background-color:#d7074ebd !important;border:none !important;\">\n\t\t{{$:/core/images/delete-button}}\n\t\t<$action-sendmessage $message=\"tm-modal\" $param=\"$:/plugins/Gk0Wk/CPL-Repo/uninstall-plugin-model-template\" plugin=<<currentTiddler>>/>\n\t</$button>\n</div>\n</$list>\n"},"$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/Beautify":{"title":"$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/Beautify","text":"美化"},"$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/Developing":{"title":"$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/Developing","text":"开发工具"},"$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/Fun":{"title":"$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/Fun","text":"趣味"},"$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/Functional":{"title":"$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/Functional","text":"功能性"},"$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/Language":{"title":"$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/Language","text":"多语言"},"$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/Showcase":{"title":"$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/Showcase","text":"演示"},"$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/Unknown":{"title":"$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/Unknown","text":"未分类"},"$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/Visualization":{"title":"$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/Visualization","text":"可视化"},"$:/plugins/Gk0Wk/CPL-Repo/popup-readme":{"title":"$:/plugins/Gk0Wk/CPL-Repo/popup-readme","subtitle":"<$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[CPL 使用须知]else[Note to use CPL]] }}}/>","tags":[],"type":"text/vnd.tiddlywiki","text":"<$list filter=\"[[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[yes]else[no]]\" variable=\"chinese\">\n\n<$checkbox\n tiddler=\"$:/plugins/Gk0Wk/CPL-Repo/config/popup-readme-at-startup\"\n field=\"text\"\n checked={{$:/plugins/Gk0Wk/CPL-Repo/config/popup-readme-at-startup-threshold}}\n unchecked=\"0\"\n default=\"0\">\n <$text text={{{ [<chinese>match[yes]then[不再弹出该消息]else[No longer pops up this message]] }}}/>\n</$checkbox>\n\n{{$:/plugins/Gk0Wk/CPL-Repo/readme}}\n\n<$list filter=\"[<chinese>match[yes]]\">\n\nCPL 的各项功能需要连接互联网、从插件数据库的静态资源网站下载 JSON 文件来实现。CPL 只会从网站上下载数据,不会将你的数据上传。\n\n未来 CPL 可能添加插件投票和下载量统计功能,如添加这些功能,会先征得你的同意。你将来可以随时关闭这类功能。\n\n你可以在这里查看 CPL 插件的逻辑代码: [[$:/plugins/Gk0Wk/CPL-Repo/core.js]]\n\nCPL 当前尚未开启自动更新检测功能,如需开启,请手动前往设置页面启动:<$button>设置<$action-sendmessage $message=\"tm-modal\" $param=\"$:/plugins/Gk0Wk/CPL-Repo/settings\" /></$button>\n\n</$list>\n\n<$list filter=\"[<chinese>match[no]]\">\n\nThe functions of the CPL require an Internet connection to download JSON files from the plug-in database's static resource site for implementation. The CPL will only download data from the site, it will not upload your data.\n\nIn the future, CPL may add plugin polling and download statistics, and will ask for your permission to add these features. You can disable these features at any time in the future.\n\nYou can view the logic code of the CPL plugin here: [[$:/plugins/Gk0Wk/CPL-Repo/core.js]]\n\nCPL has not yet enabled the automatic update detection function, if you want to enable it, please go to the settings page manually to start it: <$button>Settings<$action-sendmessage $message=\"tm-modal\" $param=\"$:/plugins/Gk0Wk/CPL-Repo/settings\" /></$button>\n\n</$list>\n\n</$list>\n"},"$:/plugins/Gk0Wk/CPL-Repo/popup-readme-at-startup":{"title":"$:/plugins/Gk0Wk/CPL-Repo/popup-readme-at-startup","code-body":"yes","tags":["$:/tags/StartupAction/PostRender"],"type":"text/vnd.tiddlywiki","text":"<$list filter=\"[{$:/plugins/Gk0Wk/CPL-Repo/config/popup-readme-at-startup}!is[blank]else[0]compare:integer:lt{$:/plugins/Gk0Wk/CPL-Repo/config/popup-readme-at-startup-threshold}]\">\n<$action-sendmessage $message=\"tm-modal\" $param=\"$:/plugins/Gk0Wk/CPL-Repo/popup-readme\" />\n</$list>"},"$:/plugins/Gk0Wk/CPL-Repo/readme":{"title":"$:/plugins/Gk0Wk/CPL-Repo/readme","tags":[],"type":"text/vnd.tiddlywiki","text":"<div style=\"display:flex;justify-content:center;\">\n{{$:/plugins/Gk0Wk/CPL-Repo/about-banner}}\n</div>\n\n<$list filter=\"[[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[yes]else[no]]\" variable=\"chinese\">\n\n<$list filter=\"[<chinese>match[yes]]\">\n\n> 好用到哭,装就完了!\n\n!! 欢迎使用 CPL!\n\n使用 TW 这么久,你还在为四处寻觅好用的插件而发愁吗?还在为管理一大堆插件的更新、处理插件的依赖而苦恼吗?你还在为查找插件的用法而翻遍全网吗?你是否希望安装一个插件的某个历史版本,而非最新版本?\n\n如果你是插件的作者,你是否还在苦恼如何推广自己的插件,如何让用户及时获得最新的版本呢?\n\n你是否希望 TW 能像其他现代笔记软件一样,能够一键管理所有插件,能够更傻瓜化地查找和安装插件,甚至主动为你推广插件。是否希望 TW 能够帮助你自动保持插件的最新?\n\n这一切,在 CPL 得以实现!\n\n---\n\nCPL 是由[[太微(TiddlyWiki)中文社区|https://github.com/tiddly-gittly]]维护的、致力于搜集网络上所有与 <$text text={{{ TiddlyWiki5 }}}/> 有关插件的、希望为中国以及全世界的太微用户提供一键安装、更新插件体验的插件聚合中心。\n\n本插件有如下特点:\n\n* 聚合各种 TW 插件并保持最新当前 500+;\n* 在你的 Wiki 中搜索各种插件,提供关键词、分类和标签搜索;\n* 自动检查插件更新;\n* 安装插件时可自动递归安装依赖,并可以指定所有插件的安装版本;\n\n</$list>\n\n<$list filter=\"[<chinese>match[no]]\">\n\n> Just install it! I think you need it.\n\n!! Welcome to CPL!\n\nAfter using TW for so long, are you still worried about looking around for good plugins? Are you still struggling to manage a bunch of plugin updates and deal with plugin dependencies? Are you still searching the web to find out how to use a plugin? Do you want to install some historical version of a plugin instead of the latest version?\n\nIf you are a plugin author, do you still struggle with how to promote your plugin and how to keep users up to date with the latest version?\n\nDo you wish TW could manage all your plugins with one click like other modern note-taking software, make it more foolproof to find and install plugins, and even proactively promote plugins for you? Do you want TW to help you keep your plugins up-to-date automatically?\n\nIt's all here at CPL!\n\n---\n\nThis plugin source is maintained by the [[TiddlyWiki Chinese Community|https://github.com/tiddly-gittly]] and is dedicated to collecting all <$text text={{{ TiddlyWiki5 }}}/> related plugins on the web, hoping to provide a one-click installation and update plugin experience for TW users all around the world.\n\nThis plugin has the following features:\n\n* Aggregate various TW plugins and keep them up-to-date with the current 500+;.\n* Search for various plugins in your Wiki, providing keyword, category and tag search;.\n* Check for plugin updates automatically;\n* Install plugins with automatic recursive installation of dependencies, and you can specify the installed version of all plugins;\n\n</$list>\n\n</$list>"},"$:/plugins/Gk0Wk/CPL-Repo/settings":{"title":"$:/plugins/Gk0Wk/CPL-Repo/settings","caption":"<$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[设置]else[Settings]] }}}/>","subtitle":"<$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[CPL 设置]else[CPL Settings]] }}}/>","tags":[],"type":"text/vnd.tiddlywiki","text":"<$list filter=\"[[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[yes]else[no]]\" variable=\"chinese\">\n\n<$list filter=\"[<chinese>match[yes]]\">\n\n在该页面内您可以对 CPL 插件的行为进行设定。\n\n; CPL 数据库镜像入口 <$select tiddler=\"$:/plugins/Gk0Wk/CPL-Repo/config/current-repo\" field=\"text\">\n<$list filter=\"[{$:/plugins/Gk0Wk/CPL-Repo/config/repos}enlist-input[]]\" variable=\"repo\">\n<option value=<<repo>>><$text text=<<repo>>/></option>\n</$list>\n</$select>\n\n<<<\n当 CPL 获取数据经常失败时,你可以尝试切换到其他镜像,目前国内推荐使用 netlify 镜像,\n\n欢迎各位大佬部署国内镜像,详情请咨询QQ交流群或在[[GitHub Issue|https://github.com/tiddly-gittly/TiddlyWiki-CPL/issues]]提问\n\n你可以手动更改数据库镜像入口:[[$:/plugins/Gk0Wk/CPL-Repo/config/current-repo]]\n<<<\n\n; 自动更新检查间隔 <$edit-text tiddler=\"$:/plugins/Gk0Wk/CPL-Repo/config/auto-update-intervals-minutes\" tag=\"input\" default=\"-1\" /> (分钟/次)\n\n<<<\n自动更新检查会在 Wiki 刚打开时进行,并每隔指定间隔进行一次检查\n\n显然自动检查需要联网,每次所消耗的流量很小,大概10KB。如果发现有插件可以更新会在右上角弹窗提醒。\n\n当值小于等于0,则关闭自动更新,也包括刚打开 Wiki 的那一次。\n\n关闭后可以手动在 [[$:/ControlPanel]] 的 [CPL] 中进行检查。\n<<<\n\n; 插件更新筛选器 <$edit-text tiddler=\"$:/plugins/Gk0Wk/CPL-Repo/config/update-filter\" tag=\"input\" default=\"\" />\n\n<<<\n插件更新是有选择的,你可以通过修改筛选器来排除一些插件。\n<<<\n\n</$list>\n\n<$list filter=\"[<chinese>match[no]]\">\n\nIn this page you can set the behavior of the CPL plugin.\n\n; CPL Database Mirror Entry <$select tiddler=\"$:/plugins/Gk0Wk/CPL-Repo/config/current-repo\" field=\"text\">\n<$list filter=\"[{$:/plugins/Gk0Wk/CPL-Repo/config/repos}enlist-input[]]\" variable=\"repo\">\n<option value=<<repo>>><$text text=<<repo>>/></option>\n</$list>\n</$select>\n\n<<<\nWhen the CPL fails to fetch the data often, you can try to switch to another mirror.\n\nIf you'd like to deploy your own mirrors, feel free to ask questions in the [[GitHub Issue|https://github.com/tiddly-gittly/TiddlyWiki-CPL/issues]]!\n\nYou can manually change the database mirror entry: [[$:/plugins/Gk0Wk/CPL-Repo/config/current-repo]]\n<<<\n\n; Automatic update of check intervals <$edit-text tiddler=\"$:/plugins/Gk0Wk/CPL-Repo/config/auto-update-intervals-minutes\" tag=\"input\" default=\"-1\" /> (minute(s) per time)\n\n<<<\nThe automatic update check is performed when the Wiki is first opened, and at specified intervals\n\nObviously auto-checking requires an internet connection and consumes very little traffic each time, about 10KB. If a plugin is found to be updatable, a pop-up window will alert you in the upper right corner.\n\nWhen the value is less than or equal to 0, auto-update is turned off, also when the Wiki is just opened.\n\nAfter closing it can be checked manually in [CPL] of [[$:/ControlPanel]].\n<<<\n\n; Plugin Update Filter <$edit-text tiddler=\"$:/plugins/Gk0Wk/CPL-Repo/config/update-filter\" tag=\"input\" default=\"\" />\n\n<<<\nPlugin updates are selective and you can exclude some plugins by modifying the filter.\n<<<\n\n</$list>\n\n</$list>\n"},"$:/plugins/Gk0Wk/CPL-Repo/style.css":{"title":"$:/plugins/Gk0Wk/CPL-Repo/style.css","tags":["$:/tags/Stylesheet"],"type":"text/vnd.tiddlywiki","text":".cpl-normal-button {\n color: <<colour foreground>>;\n fill: color: <<colour foreground>>;\n}\n\n.cpl-plugin-info-box {\n overflow: hidden;\n border: 1px solid <<colour tiddler-info-border>>;\n background-color: <<colour tiddler-info-background>>;\n}\n.cpl-plugin-dependencies {\n border-left: 0.8px solid <<colour tiddler-info-border>>;\n border-right: 0.8px solid <<colour tiddler-info-border>>;\n}\n\n.cpl-plugin-info-box > .tc-plugin-info {\n margin: 0 !important;\n border: none !important;\n}\n\n.cpl-plugin-info-box > .tc-plugin-info-dropdown {\n margin-top: 0 !important;\n border: none !important;\n}\n\n.cpl-plugin-info-box > .tc-plugin-info-dropdown,\n.cpl-plugin-info-box > .tc-plugin-info-dropdown > .tc-plugin-info-dropdown-message,\n.cpl-plugin-info-box > .tc-plugin-info-dropdown > .tc-plugin-info-dropdown-body {\n background: transparent !important;\n background-color: transparent !important;\n}\n\n.cpl-plugin-info-box > .tc-plugin-info-dropdown > .tc-plugin-info-dropdown-body {\n box-shadow: inset 0 12px 12px -12px rgba(0, 0, 0, 0.3);\n}\n\n.cpl-latest-version-icon > svg, .cpl-installed-version-icon > svg {\n height: 1em;\n width: 1em;\n}\n\n.cpl-latest-version-icon > svg {\n color: #FFC107;\n fill: #FFC107;\n}\n\n.cpl-installed-version-icon > svg {\n color: #3ccb0f;\n fill: #3ccb0f;\n}\n\n.cpl-plugin-install-request-dependents-tree {\n border-left:2px dotted <<colour very-muted-foreground>>;\n background: #0002;\n}\n\n.cpl-plugin-search {\n flex-grow: 1;\n width: 0;\n}\n\n.cpl-plugin-search span {\n display: inline-block;\n width: 100%;\n}\n\n.cpl-plugin-search span input {\n margin: 0 !important;\n width: 100%;\n}\n\n.cpl-plugin-search-go {\n border-radius: 0 !important;\n margin: 0 !important;\n padding: 10px 20px !important;\n word-break: keep-all;\n}\n\n.cpl-paged-plugin-list-control {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 40px;\n border: 2px solid <<colour tiddler-info-border>>;\n background-color: <<colour tiddler-info-background>>;\n}\n\n.cpl-paged-plugin-list-control > div {\n flex-grow: 1;\n width: 0;\n height: 100%;\n}\n\n.cpl-paged-plugin-list-control > div > button {\n width: 100%;\n height: 100%;\n border: none !important;\n background: transparent !important;\n cursor: pointer !important;\n}\n\n.cpl-paged-plugin-list-control > div > button:hover {\n backdrop-filter: contrast(0.75);\n}\n\n.cpl-paged-plugin-list-control > span {\n padding: 0 10px;\n height: 100%;\n display: flex;\n align-items: center;\n user-select: none;\n}\n\n.cpl-banner-button-group svg {\n height: 1em;\n width: 1em;\n}\n"},"$:/plugins/Gk0Wk/CPL-Repo/tags-gallery":{"title":"$:/plugins/Gk0Wk/CPL-Repo/tags-gallery","caption":"<$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[标签]else[Tags]] }}} />","tags":[],"type":"text/vnd.tiddlywiki","text":"\\import $:/plugins/Gk0Wk/CPL-Repo/plugin-list-item\n\\import $:/plugins/Gk0Wk/CPL-Repo/plugin-size\n\\import $:/plugins/Gk0Wk/CPL-Repo/paged-plugin-list\n\n\\define tag-plain(text:\"\",icon:\"\",color:\"\",bg:\"\")\n\\whitespace trim\n<span class=\"tc-tag-label\" style=\"background-color:$bg$;color:$color$;fill:$color$;user-select:none;margin-right:6px;\">\n\t{{$icon$}}$text$\n</span>\n\\end\n\n\\define tag-plain-removable(saveTiddler,saveField:\"tags\",text:\"\",icon:\"\",color:\"\",bg:\"\")\n\\whitespace trim\n<span class=\"tc-tag-label\" style=\"background-color:$bg$;color:$color$;fill:$color$;user-select:none;margin:4px 6px 2px 0;padding:4px 10px;\">\n\t{{$icon$}}$text$\n\t<$button class=\"tc-btn-invisible tc-remove-tag-button\" style=\"background-color:$bg$;color:$color$;fill:$color$;\">\n\t\t<$action-listops $tiddler=<<__saveTiddler__>> $field=<<__saveField__>> $subfilter=\"-[<__text__>]\"/>{{$:/core/images/close-button}}\n\t</$button>\n</span>\n\\end\n\n<$let bg={{{ [{$:/palette}getindex[tag-background]] }}} color={{{ [{$:/palette}getindex[foreground]] }}} saveTiddler=\"$:/temp/CPL-Repo/search-tag-input\">\n<!-- 展示待检索的标签,以及搜索按钮 -->\n<div style=\"width:100%;display:flex;backdrop-filter:contrast(1.3);\">\n <div class=\"cpl-search-tags\" style=\"flex-grow:1;width:0;display:flex;align-items:center;padding:4px 8px;flex-wrap:wrap;\">\n <!-- 已有的标签,可删除 -->\n <$list filter=\"[<saveTiddler>get[text]enlist-input[]]\" variable=\"tag\">\n <$macrocall $name=\"tag-plain-removable\" text=<<tag>> icon=\"$:/core/images/tag-button\" bg=<<bg>> color=<<color>> saveTiddler=<<saveTiddler>> saveField=\"text\" />\n </$list>\n <div class=\"cpl-search-tags-input\">\n <!-- 输入 -->\n <$macrocall\n $name=\"keyboard-driven-input\"\n tiddler=\"$:/temp/CPL-Repo/add-search-tag-input\"\n tag=\"input\"\n placeholder={{$:/language/EditTemplate/Tags/Add/Placeholder}}\n focusPopup=\"$:/temp/CPL-Repo/add-search-tag-popup\"\n class=\"tc-edit-texteditor tc-popup-handle\"\n tabindex=<<tabIndex>>\n focus=\"yes\"\n filterMinLength=\"2\"\n configTiddlerFilter=\"[[$:/core/macros/tag-picker]]\"\n />\n <!-- 弹出 -->\n <$reveal state=\"$:/temp/CPL-Repo/add-search-tag-popup\" type=\"nomatch\" text=\"\" default=\"\">\n <div class=\"tc-block-dropdown tc-block-tags-dropdown\">\n <$list filter=\"[{$:/temp/CPL-Repo/tags}jsonget[]search{$:/temp/CPL-Repo/add-search-tag-input}]\" variable=\"tag\">\n <$button class=\"tc-btn-invisible\" tag=\"a\" tooltip={{$:/language/EditTemplate/Tags/Add/Button/Hint}}>\n <$macrocall $name=\"tag-plain\" text=<<tag>> icon=\"$:/core/images/tag-button\" bg=<<bg>> color=<<color>> />\n <$action-listops $tiddler=<<saveTiddler>> $field=\"text\" $subfilter=\"[<tag>]\"/>\n </$button>\n </$list>\n </div>\n </$reveal>\n </div>\n </div>\n <!-- 搜索按钮 -->\n <$button class=\"tc-primary-btn tc-btn-big-green cpl-plugin-search-go\" disabled={{$:/temp/CPL-Repo/searching-plugin}}>\n <$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]] :then[{$:/temp/CPL-Repo/searching-plugin}match[yes]then[搜索中...]else[搜索]] :else[{$:/temp/CPL-Repo/searching-plugin}match[yes]then[Searching...]else[Search]] }}} />\n <$action-sendmessage\n $message=\"cpl-search-plugins\"\n mode=\"tags\"\n text={{{ [<saveTiddler>get[text]] }}}\n saveTo=\"$:/temp/CPL-Repo/searchplugin-tags/result\"\n />\n </$button>\n</div>\n<$list filter=\"[[$:/temp/CPL-Repo/searching-plugin]is[tiddler]!field:text[yes]]\">\n<div style=\"background:#e91e3db0;color:white;padding:2px 6px;margin:3px 0;backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;\">\n\t<$text text={{{ [<chinese>match[yes]then[出现了一些问题]else[Some errors occured]] }}}/>: <$text text={{!!text}}/>\n</div>\n</$list>\n<$list filter=\"[[$:/temp/CPL-Repo/searchplugin-tags/result]is[tiddler]then[yes]else[no]]\" variable=\"go\">\n<!-- 有搜索结果 -->\n<$list filter=\"[<go>match[yes]]\" variable=\"t\">\n<<paged-plugin-list filter:\"[{$:/temp/CPL-Repo/searchplugin-tags/result}jsonget[]]\" field:\"tag-gallery\" class1:\"cpl-plugin-info-box\" class2:\"cpl-paged-plugin-list-control\">>\n</$list>\n<!-- 没有搜索结果,展示全部 -->\n<$list filter=\"[<go>match[no]]\" variable=\"t\">\n<<paged-plugin-list filter:\"[{$:/temp/CPL-Repo/plugins-index}jsonindexes[]!prefix[$:/language]]\" field:\"tag-gallery\" class1:\"cpl-plugin-info-box\" class2:\"cpl-paged-plugin-list-control\">>\n</$list>\n</$list>\n</$let>\n"},"$:/plugins/Gk0Wk/CPL-Repo/uninstall-manager":{"title":"$:/plugins/Gk0Wk/CPL-Repo/uninstall-manager","code-body":"yes","tags":[],"caption":"<$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[卸载]else[Uninstall]] }}} />","type":"text/vnd.tiddlywiki","text":"<$macrocall\n\t$name=\"tabs\"\n\tstate=\"$:/temp/CPL-Repo/plugin-uninstall-manager-tab-state\"\n\ttabsList=\"plugin theme language\"\n\tdefault=\"plugin\"\n\ttemplate=\"$:/plugins/Gk0Wk/CPL-Repo/plugin-uninstall-plugins-item\"\n/>\n"},"$:/plugins/Gk0Wk/CPL-Repo/uninstall-plugin-model-template":{"title":"$:/plugins/Gk0Wk/CPL-Repo/uninstall-plugin-model-template","code-body":"yes","subtitle":"<$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[请确认卸载]else[Please Confirm to Uninstall]] }}} />","tags":[],"type":"text/vnd.tiddlywiki","text":"\\define checkShadow() <$action-listops $tiddler=<<tiddler>> $field=<<field>> $subfilter=\"[<shadow>]\"/>\n\\define uncheckShadow() <$action-listops $tiddler=<<tiddler>> $field=<<field>> $subfilter=\"-[<shadow>]\"/>\n\n<$let chinese={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[yes]else[no]] }}}>\n\n<$list filter=\"[<chinese>match[yes]]\">\n\n> 即将卸载 <<plugin>>\n\n<$list filter=\"[!field:plugin-type[]search:parent-plugin<plugin>] [!field:plugin-type[]search:dependent<plugin>] +[limit[1]]\" variable=\"t\">\n\n---\n\n!! 注意:插件被依赖\n\n该插件仍然被如下插件依赖,是否继续卸载?\n\n<$list filter=\"[!field:plugin-type[]search:parent-plugin<plugin>] [!field:plugin-type[]search:dependent<plugin>] +[unique[]sort[title]]\" variable=\"other-plugin\">\n\n: <<other-plugin>>\n\n</$list>\n</$list>\n\n---\n\n!! 注意:残留条目\n\n该插件中,有一些条目已不是默认值(有一个同名的非影子条目),因此这些条目在删除插件后仍将保留。这可能会为你的 Wiki 增添一些额外的垃圾条目,或者为下一次安装插件或升级插件带来困扰。所以在删除插件时,是否该同时清理这些条目?请选择要删除或者保留的条目,或者点击其标题来产看它的内容来决定。\n\n在决定之后,点击下方的按钮,卸载插件并同时删除勾选的条目。\n\n</$list>\n<$list filter=\"[<chinese>match[no]]\">\n\n> To uninstall <<plugin>>\n\n<$list filter=\"[!field:plugin-type[]search:parent-plugin<plugin>] [!field:plugin-type[]search:dependent<plugin>] +[limit[1]]\" variable=\"t\">\n\n---\n\n!! Note: Plugin is Dependent\n\nThe plugin is still dependent on the following plugins, do you continue to uninstall?\n\n<$list filter=\"[!field:plugin-type[]search:parent-plugin<plugin>] [!field:plugin-type[]search:dependent<plugin>] +[unique[]sort[title]]\" variable=\"other-plugin\">\n\n: <<other-plugin>>\n\n</$list>\n</$list>\n\n---\n\n!! Note: Left tiddlers\n\nThe plugin has some entries that are no longer default (there is a non-shadow entry with the same name), so these entries will remain after removing the plugin. This may add some extra junk entries to your Wiki, or cause problems for the next time you install the plugin or upgrade it. So when deleting a plugin, should you clean up these entries at the same time? Please select the entry you want to delete or keep, or click on its title to see what it says to decide.\n\nAfter deciding, click the button below to uninstall the plugin and remove the checked entries at the same time.\n</$list>\n\n<$button class=\"tc-btn-big-green tc-primary-btn\" message=\"tm-close-tiddler\">\n{{$:/core/images/delete-button}}\n \n<$text text={{{ [<chinese>match[yes]then[确认卸载]else[Confirm to Uninstall]] }}} />\n<$action-deletetiddler $filter=\"[<tiddler>get[text]enlist-input[]] [<plugin>]\" />\n</$button>\n\n<$let keep={{{ [<chinese>match[yes]then[保留]else[Keep]] }}} nokeep={{{ [<chinese>match[yes]then[删除]else[Delete]] }}}>\n<$let tiddler=<<qualify \"$:/temp/CPL-Repo/deleting-plugin-shadows\">> field=\"text\">\n\n<div style=\"display:flex;flex-direction:column;\">\n<$list filter=\"[<plugin>get[text]jsonindexes[tiddlers]is[tiddler]]\" variable=\"shadow\" emptyMessage=\"<$text text={{{ [<chinese>match[yes]then[无]else[]] }}} />\">\n<$let is-keep={{{ [<tiddler>get[text]enlist-input[]match<shadow>limit[1]then[no]else[yes]] }}}>\n<div style={{{ [[background:]] [<is-keep>match[yes]then[#00ff2d1d]else[#fd004748]] [[;display:flex;justify-content:space-between;padding:4px 6px;border:1px solid #7774]] +[join[]] }}}>\n<span><<shadow>></span>\n<span>\n<$checkbox filter=\"[<tiddler>get[text]enlist-input[]]\" checked=<<shadow>> checkactions=<<checkShadow>> uncheckactions=<<uncheckShadow>>> ''<$text text={{{ [<is-keep>match[yes]then<keep>else<nokeep>] }}}/>''</$checkbox>\n</span>\n</div>\n</$let>\n</$list>\n</div>\n\n</$let>\n</$let>\n"},"$:/plugins/Gk0Wk/CPL-Repo/update-body":{"title":"$:/plugins/Gk0Wk/CPL-Repo/update-body","subtitle":"<$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[更新列表]else[Update List]] }}}/>","tags":[],"type":"text/vnd.tiddlywiki","text":"\\import $:/plugins/Gk0Wk/CPL-Repo/plugin-list-item\n\\import $:/plugins/Gk0Wk/CPL-Repo/plugin-size\n\\import $:/plugins/Gk0Wk/CPL-Repo/paged-plugin-list\n\n<$list filter=\"[[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[yes]else[no]]\" variable=\"chinese\">\n<$list filter=\"[[$:/temp/CPL-Repo/update-plugins]is[tiddler]] [[$:/temp/CPL-Repo/plugins-index]is[tiddler]] +[count[]compare:integer:eq[2]then[yes]else[no]]\" variable=\"ready\">\n\n<$list filter=\"[<ready>match[yes]]\">\n<<paged-plugin-list filter:\"[{$:/temp/CPL-Repo/update-plugins}jsonget[]]\" field:\"update-list\" class1:\"cpl-plugin-info-box\" class2:\"cpl-paged-plugin-list-control\">>\n</$list>\n\n<$list filter=\"[<ready>match[no]]\">\n<!-- 错误提示 -->\n<$list filter=\"[[$:/temp/CPL-Repo/getting-plugins-index]is[tiddler]!field:text[yes]]\">\n<div style=\"background:#e91e3db0;color:white;padding:2px 6px;margin:3px 0;border-radius:2px;backdrop-filter:blur(4px);min-height:100px;display:flex;align-items:center;justify-content:center;\">\n\t<$text text={{{ [<chinese>match[yes]then[出现了一些问题]else[Some errors occured]] }}}/>: <$text text={{!!text}}/>\n\t<$text text={{{ [<chinese>match[yes]then[请尝试刷新]else[Please try refreshing]] }}}/>\n</div>\n</$list>\n<!-- 错误提示 -->\n<$list filter=\"[[$:/temp/CPL-Repo/updaing]is[tiddler]!field:text[yes]]\">\n<div style=\"background:#e91e3db0;color:white;padding:2px 6px;margin:3px 0;border-radius:2px;backdrop-filter:blur(4px);min-height:100px;display:flex;align-items:center;justify-content:center;\">\n\t<$text text={{{ [<chinese>match[yes]then[出现了一些问题]else[Some errors occured]] }}}/>: <$text text={{!!text}}/>\n\t<$text text={{{ [<chinese>match[yes]then[请尝试刷新]else[Please try refreshing]] }}}/>\n</div>\n</$list>\n<!-- 加载中提示 -->\n<$list filter=\"[[$:/temp/CPL-Repo/getting-plugins-index]is[tiddler]field:text[yes]] [[$:/temp/CPL-Repo/updaing]is[tiddler]field:text[yes]] +[limit[1]]\">\n<div style=\"background:#0005;color:#aaa;padding:2px 6px;margin:3px 0;border-radius:2px;backdrop-filter:blur(4px);min-height:100px;display:flex;align-items:center;justify-content:center;\">\n\t<$text text={{{ [<chinese>match[yes]then[加载中...]else[Loading...]] }}}/>\n</div>\n</$list>\n<$list filter=\"[[$:/temp/CPL-Repo/getting-plugins-index]is[tiddler]field:text[yes]] [[$:/temp/CPL-Repo/updaing]is[tiddler]field:text[yes]] +[limit[1]]\">\n<div style=\"background:#0005;color:#aaa;padding:2px 6px;margin:3px 0;border-radius:2px;backdrop-filter:blur(4px);min-height:100px;display:flex;align-items:center;justify-content:center;\">\n\t<$text text={{{ [<chinese>match[yes]then[加载中...]else[Loading...]] }}}/>\n</div>\n</$list>\n</$list>\n\n</$list>\n</$list>\n"},"$:/plugins/Gk0Wk/CPL-Repo/update-manager":{"title":"$:/plugins/Gk0Wk/CPL-Repo/update-manager","caption":"<$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[更新]else[Updates]] }}} />","tags":[],"type":"text/vnd.tiddlywiki","text":"<$list filter=\"[[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[yes]else[no]]\" variable=\"chinese\">\n<$button disabled={{{ [{$:/temp/CPL-Repo/getting-plugins-index}match[yes]else[no]] }}} class=\"tc-btn-big-green tc-primary-btn\">\n<$action-sendmessage $message=\"cpl-update-check\" />\n{{$:/core/images/refresh-button}}\n \n<$text text={{{ [[$:/temp/CPL-Repo/update-plugins]is[tiddler]] :then[<chinese>match[yes]then[重新获取更新]else[Refetch CPL]] :else[<chinese>match[yes]then[获取更新]else[Fetch update]] }}} />\n</$button>\n</$list>\n\n{{$:/plugins/Gk0Wk/CPL-Repo/update-body}}"},"$:/plugins/Gk0Wk/CPL-Repo/update-notify-template":{"title":"$:/plugins/Gk0Wk/CPL-Repo/update-notify-template","type":"text/vnd.tiddlywiki","text":"<$list filter=\"[[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[yes]else[no]]\" variable=\"chinese\">\n\n<$list filter=\"[<chinese>match[yes]]\">\n\n!! CPL 更新提醒\n\n您的 Wiki 中有 <<updateCount>> 款插件在 CPL 中有更新版本, 快来更新吧!\n\n<$button class=\"cpl-normal-button\">\n 更新\n <$action-sendmessage $message=\"cpl-get-plugins-index\" />\n <$action-sendmessage $message=\"tm-modal\" $param=\"$:/plugins/Gk0Wk/CPL-Repo/update-body\" />\n</$button>\n<$button class=\"cpl-normal-button\">\n 设置\n <$action-sendmessage $message=\"tm-modal\" $param=\"$:/plugins/Gk0Wk/CPL-Repo/settings\" />\n</$button>\n\n</$list>\n\n<$list filter=\"[<chinese>!match[yes]]\">\n\n!! CPL Update Alert\n\nThere are <<updateCount>> plugins in your Wiki that have newer versions in CPL, so update them now!\n\n<$button class=\"cpl-normal-button\">\n Update\n <$action-sendmessage $message=\"cpl-get-plugins-index\" />\n <$action-sendmessage $message=\"tm-modal\" $param=\"$:/plugins/Gk0Wk/CPL-Repo/update-body\" />\n</$button>\n<$button class=\"cpl-normal-button\">\n Settings\n <$action-sendmessage $message=\"tm-modal\" $param=\"$:/plugins/Gk0Wk/CPL-Repo/settings\" />\n</$button>\n\n</$list>\n\n</$list>\n"}}} \ No newline at end of file +{"tiddlers":{"$:/plugins/Gk0Wk/CPL-Repo/about-banner":{"title":"$:/plugins/Gk0Wk/CPL-Repo/about-banner","tags":[],"type":"text/vnd.tiddlywiki","text":"<$list filter=\"[[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[yes]else[no]]\" variable=\"chinese\">\n<div class=\"cpl-banner-container\">\n<div style=\"\n font-size: 24px;\n line-height: 1em;\n font-weight: 750;\n user-select: none;\n color: white;\n\"><$text text={{{ [<chinese>match[yes]then[加入我们, 共建设社区生态!]else[Join us in building a community ecology!]] }}}/></div>\n<div class=\"cpl-banner-button-group\" style=\"\n margin-top: 14px;\n display: flex;\n align-items: center;\n justify-content: flex-start;\n flex-wrap: wrap;\n\">\n<a href=\"https://tw-cpl.netlify.app\" target=\"_blank\" style=\"\n text-decoration: none;\n color: white;\n fill: white;\n background: #4CAF50;\n padding: 6px 10px;\n border-radius: 6px;\n background-image: linear-gradient(45deg, #4CAF50, #009688);\n border: 1px solid #93c955;\n font-weight: 600;\n user-select: none;\n display: flex;\n align-items: center;\n\">{{$:/core/images/link}} <$text text={{{ [<chinese>match[yes]then[CPL 官网]else[CPL website]] }}}/></a>\n<a href=\"https://github.com/tiddly-gittly/TiddlyWiki-CPL\" target=\"_blank\" style=\"\n text-decoration: none;\n color: white;\n fill: white;\n background: #673AB7;\n padding: 6px 10px;\n border-radius: 6px;\n background-image: linear-gradient(145deg, #673AB7, #3F51B5);\n border: 1px solid #5020a6;\n font-weight: 600;\n user-select: none;\n display: flex;\n align-items: center;\n margin-left: 4px;\n\">{{$:/core/images/github}} <$text text={{{ [<chinese>match[yes]then[CPL 仓库源码]else[CPL repository]] }}}/></a>\n<$list filter=\"[<chinese>match[yes]]\">\n<span style=\"\n text-decoration: none;\n color: white;\n fill: white;\n background: #805f54;\n padding: 6px 10px;\n border-radius: 6px;\n background-image: linear-gradient(145deg, #6c8a99, #5288a1);\n border: 1px solid #26414d;\n font-weight: 600;\n display: flex;\n align-items: center;\n margin-left: 4px;\n\">{{$:/core/images/plugin-generic-language}} QQ交流群: 946052860</span>\n<a href=\"https://tw-cn.netlify.app\" target=\"_blank\" style=\"\n text-decoration: none;\n color: white;\n fill: white;\n background: #E91E63;\n padding: 6px 10px;\n border-radius: 6px;\n background-image: linear-gradient(300deg, #E91E63, #f45b2a);\n border: 1px solid #c4b67f;\n font-weight: 600;\n user-select: none;\n display: flex;\n align-items: center;\n margin-left: 4px;\n\">{{$:/core/images/home-button}} 更多精彩,尽在太微中文</a>\n</$list>\n</div>\n<div style=\"margin-top: 10px;font-weight: 700;user-select: none; color: whire; opacity: 0.85;\"><$text text={{{ [<chinese>match[yes]then[欢迎任何人在CPL仓库贡献更多插件!]else[Anyone is welcome to contribute more plugins to the CPL repository!]] }}}/></div>\n</div>\n</$list>\n"},"$:/plugins/Gk0Wk/CPL-Repo/category-gallery":{"title":"$:/plugins/Gk0Wk/CPL-Repo/category-gallery","caption":"<$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[分类]else[Categories]] }}} />","tags":[],"type":"text/vnd.tiddlywiki","text":"<$macrocall\n\t$name=\"tabs\"\n\tstate=\"$:/temp/CPL-Repo/category-gallery-tab-state\"\n\ttabsList=\"[{$:/temp/CPL-Repo/categories}jsonindexes[]]\"\n\tdefault={{{ [{$:/temp/CPL-Repo/categories}jsonindexes[]first[]] }}}\n\ttemplate=\"$:/plugins/Gk0Wk/CPL-Repo/category-tab-container-template\"\n\tbuttonTemplate=\"$:/plugins/Gk0Wk/CPL-Repo/category-tab-button-template\"\n/>"},"$:/plugins/Gk0Wk/CPL-Repo/category-tab-button-template":{"title":"$:/plugins/Gk0Wk/CPL-Repo/category-tab-button-template","code-body":"yes","tags":[],"type":"text/vnd.tiddlywiki","text":"<$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]] :then[<currentTab>addprefix[$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/]get[text]else[?]] :else[<currentTab>else[Unknown]else[?]] }}} />"},"$:/plugins/Gk0Wk/CPL-Repo/category-tab-container-template":{"title":"$:/plugins/Gk0Wk/CPL-Repo/category-tab-container-template","code-body":"yes","tags":[],"type":"text/vnd.tiddlywiki","text":"\\import $:/plugins/Gk0Wk/CPL-Repo/plugin-list-item\n\\import $:/plugins/Gk0Wk/CPL-Repo/plugin-size\n\\import $:/plugins/Gk0Wk/CPL-Repo/paged-plugin-list\n\n<<paged-plugin-list filter:\"[{$:/temp/CPL-Repo/categories}jsonget<currentTab>]\" field:\"category-gallery\" class1:\"cpl-plugin-info-box\" class2:\"cpl-paged-plugin-list-control\">>\n"},"$:/plugins/Gk0Wk/CPL-Repo/config/current-repo":{"title":"$:/plugins/Gk0Wk/CPL-Repo/config/current-repo","text":"https://tw-cpl.netlify.app/repo"},"$:/plugins/Gk0Wk/CPL-Repo/config/popup-readme-at-startup-threshold":{"title":"$:/plugins/Gk0Wk/CPL-Repo/config/popup-readme-at-startup-threshold","text":"1"},"$:/plugins/Gk0Wk/CPL-Repo/config/repos":{"title":"$:/plugins/Gk0Wk/CPL-Repo/config/repos","text":"https://tw-cpl.netlify.app/repo https://tiddly-gittly.github.io/TiddlyWiki-CPL/repo"},"$:/plugins/Gk0Wk/CPL-Repo/config/update-filter":{"title":"$:/plugins/Gk0Wk/CPL-Repo/config/update-filter","text":"[has[plugin-type]] -[prefix[$:/plugins/tiddlywiki/]] -[prefix[$:/themes/tiddlywiki/]] -[prefix[$:/languages/]] -[prefix[$:/temp/]] -[[$:/core]]"},"$:/plugins/Gk0Wk/CPL-Repo/core.js":{"title":"$:/plugins/Gk0Wk/CPL-Repo/core.js","text":"(function () {\n\"use strict\";\n\nexports.name = \"cpl-repo-init\";\nexports.platforms = [\"browser\"];\nexports.after = [\"render\"];\nexports.synchronous = true;\n\n/**\n * CPL通信接口,往返,异步\n * const result = await globalThis.__tiddlywiki_cpl__('类型', { ... });\n */\nvar messagerPromise;\nvar previousEntry;\nvar cpl = function (type, payload) {\n\tvar entry = $tw.wiki.getTiddlerText('$:/plugins/Gk0Wk/CPL-Repo/config/current-repo', 'https://tiddly-gittly.github.io/TiddlyWiki-CPL/repo');\n\tif (previousEntry !== entry && globalThis.__tiddlywiki_cpl__reset__ !== undefined) globalThis.__tiddlywiki_cpl__reset__();\n\tpreviousEntry = entry;\n if (messagerPromise === undefined) messagerPromise = new Promise(function (rrr) {\n var counter = 0;\n var callbackMap = new Map();\n var iframe = $tw.utils.domMaker(\"iframe\", {\n document,\n attributes: { src: entry },\n style: { display: \"none\" },\n });\n function ccc(e) {\n //console.log('<=', e.data);\n if (iframe.contentWindow === null || e.source !== iframe.contentWindow)\n return;\n if (e.data.target !== \"tiddlywiki-cpl\" || e.data.token === undefined)\n return;\n switch (e.data.type) {\n case \"Ready\": {\n if (counter === 0) {\n counter++;\n rrr(function (type, payload) {\n return new Promise(function (resolve, reject) {\n var token = counter++;\n callbackMap.set(token, [resolve, reject]);\n //console.log('=>', { type, token, target: \"tiddlywiki-cpl\", ...payload });\n iframe.contentWindow.postMessage(\n Object.assign({}, payload, {\n type: type,\n token: token,\n target: \"tiddlywiki-cpl\",\n }),\n \"*\"\n );\n });\n });\n }\n break;\n }\n default: {\n var r = callbackMap.get(e.data.token);\n if (r !== undefined) {\n callbackMap.delete(e.data.token);\n r[e.data.success ? 0 : 1](e.data.payload);\n }\n break;\n }\n }\n }\n window.addEventListener(\"message\", ccc);\n document.body.appendChild(iframe);\n globalThis.__tiddlywiki_cpl__reset__ = function () {\n delete globalThis.__tiddlywiki_cpl__reset__;\n messagerPromise = undefined;\n window.removeEventListener(\"message\", ccc);\n iframe.parentNode.removeChild(iframe);\n callbackMap.forEach((r) => {\n r[1]();\n });\n };\n });\n return messagerPromise.then(function (r) { return r(type, payload) });\n};\n\nfunction getAutoUpdateTime() {\n\treturn parseInt($tw.wiki.getTiddlerText('$:/plugins/Gk0Wk/CPL-Repo/config/auto-update-intervals-minutes', '-1')) || -1;\n}\n\n// 自动更新服务、各种消息通信\nexports.startup = function () {\n globalThis.__tiddlywiki_cpl__ = cpl;\n\t// 检测更新\n\tvar lastUpdateTime = -1;\n var updateLock = false;\n\tfunction update(notify) {\n try {\n if (updateLock) return;\n updateLock = true;\n lastUpdateTime = Date.now();\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/updaing', text: 'yes' });\n // filter 和 网络请求并发一下\n var updateP = cpl('Update');\n // 根据条件筛选插件\n var plugins = $tw.wiki.filterTiddlers($tw.wiki.getTiddlerText('$:/plugins/Gk0Wk/CPL-Repo/config/update-filter'));\n var t = [];\n updateP.then(function (text) {\n // 统计需要更新的插件\n var updatePlugins = JSON.parse(text);\n for (var title of plugins) {\n var lastestVersion = updatePlugins[title]; // [version, coreVersion]\n if (lastestVersion === undefined) continue; // 不存在该插件\n if (lastestVersion[1] && $tw.utils.compareVersions($tw.version, lastestVersion[1].trim()) < 0) continue; // 插件兼容性检查\n var version = $tw.wiki.getTiddler(title).fields.version;\n if (version && lastestVersion[0] && $tw.utils.compareVersions(version.trim(), lastestVersion[0].trim()) >= 0) continue; // 插件是否更新\n t.push(title);\n }\n if (t.length > 0) {\n // 写入临时信息\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/update-plugins', type: 'application/json', text: JSON.stringify(t) });\n if (notify !== false) {\n // 暂时修改通知停留时间为 10s\n var tt = $tw.config.preferences.notificationDuration;\n $tw.config.preferences.notificationDuration = 10_000;\n // 弹出通知框\n $tw.notifier.display(\"$:/plugins/Gk0Wk/CPL-Repo/update-notify-template\", {\n variables: { updateCount: t.length },\n });\n $tw.config.preferences.notificationDuration = tt;\n }\n }\n $tw.wiki.deleteTiddler('$:/temp/CPL-Repo/updaing');\n updateLock = false;\n }).catch(function (err) {\n console.error(err);\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/updaing', text: String(err) });\n updateLock = false;\n });\n } catch (err) {\n console.error(err);\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/updaing', text: String(err) });\n updateLock = false;\n }\n\t}\n\n\t// 监听自动更新策略的更改,调整更新间隔或者开关自动更新\n\tvar autoUpdateInterval;\n\tvar autoTimeout;\n\t$tw.wiki.addEventListener(\"change\", function (changes) {\n\t\tif($tw.utils.hop(changes, '$:/plugins/Gk0Wk/CPL-Repo/config/auto-update-intervals-minutes')) {\n var time = getAutoUpdateTime();\n\t\t\tif (autoUpdateInterval !== undefined) clearInterval(autoUpdateInterval);\n\t\t\tif (autoTimeout !== undefined) clearTimeout(autoTimeout);\n\t\t\tautoUpdateInterval = undefined;\n\t\t\tautoTimeout = undefined;\n\t\t\tif (time > 0) {\n\t\t\t\tautoTimeout = setTimeout(function () {\n\t\t\t\t\tupdate();\n\t\t\t\t\tautoUpdateInterval = setInterval(function () {\n\t\t\t\t\t\tupdate();\n\t\t\t\t\t}, time * 60_000);\n\t\t\t\t}, lastUpdateTime === -1 ? 0 : time * 60_000 + lastUpdateTime - Date.now());\n\t\t\t}\n\t\t}\n if($tw.titleWidgetNode.refresh(changes, $tw.titleContainer, null)) {\n document.title = $tw.titleContainer.textContent;\n }\n\t});\n\t// 最初启用\n\tautoTimeout = setTimeout(function () {\n var time = getAutoUpdateTime();\n\t\tif (time > 0) {\n update();\n autoUpdateInterval = setInterval(function () {\n update();\n }, time * 60_000);\n }\n\t}, 3_000);\n\n // 消息监听\n $tw.rootWidget.addEventListener(\"cpl-update-check\", function () {\n update();\n });\n var installRequestLock = false;\n $tw.rootWidget.addEventListener(\"cpl-install-plugin-request\", function (event) {\n try {\n if (installRequestLock) return;\n var paramObject = event.paramObject || {};\n var title = paramObject.title;\n var version = paramObject.version || \"latest\";\n if (!title) return;\n installRequestLock = true;\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/instal-plugin-requesting', text: 'yes', 'plugin-title': title });\n $tw.notifier.display('$:/plugins/Gk0Wk/CPL-Repo/install-plugin-query-notify', { variables: {} });\n var existingTitle = new Set(); // 避免环\n var versionsMap = {};\n var versionsMapLatest = {};\n var sizesMap = {};\n // 递归检查依赖\n var title_ = title;\n function recursiveInstallCheck(title) {\n return new Promise(function (resolve, reject) {\n cpl('Query', { plugin: title }).then(function (text) {\n var data = JSON.parse(text);\n existingTitle.add(title);\n if (title === title_ && data.versions.indexOf(version) < 0) version = data.latest;\n versionsMap[title] = data.versions;\n versionsMapLatest[title] = data.latest;\n sizesMap[title] = data['versions-size'] || {};\n var t = new Set();\n var promisese = [];\n var subtree = {};\n\n // for没有局部作用域,var不是迭代局部的\n function fuckUpVar(ti) {\n t.add(ti);\n if (existingTitle.has(ti)) {\n subtree[ti] = {};\n } else {\n promisese.push(recursiveInstallCheck(ti).then(\n function (tt) { subtree[ti] = tt; },\n function (tt) { reject(tt); },\n ));\n }\n }\n if (data['parent-plugin']) {\n fuckUpVar(data['parent-plugin']);\n }\n for (var ti of $tw.utils.parseStringArray(data.dependents || '')) {\n if (t.has(ti)) continue;\n fuckUpVar(ti);\n }\n Promise.all(promisese).then(function () {\n resolve(subtree);\n });\n }).catch(function (err) {\n if (err.startsWith('404')) err = '[404] Cannot find plugin '+ title;\n reject(err);\n });\n });\n }\n\n recursiveInstallCheck(title).then(function (tree) {\n var f = {};\n for (var ti of existingTitle) {\n if (ti === title) continue;\n f['cpl-plugin#version#' + ti] = versionsMapLatest[ti];\n f['cpl-plugin#install#' + ti] = $tw.wiki.tiddlerExists(ti) ? \"no\" : \"yes\";\n }\n f['cpl-plugin#version#' + title] = version;\n $tw.wiki.addTiddler({\n title: '$:/temp/CPL-Repo/instal-plugin-request-tree/' + title,\n type: 'application/json',\n text: JSON.stringify({ title: title, versions: versionsMap, sizes: sizesMap, tree: tree }),\n ...f,\n });\n $tw.wiki.deleteTiddler('$:/temp/CPL-Repo/instal-plugin-requesting');\n $tw.modal.display('$:/plugins/Gk0Wk/CPL-Repo/install-plugin-request-model-template', {\n variables: {\n requestTiddler: '$:/temp/CPL-Repo/instal-plugin-request-tree/' + title,\n },\n event: event,\n });\n }).catch(function (err) {\n console.error(err);\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/instal-plugin-requesting', text: err, 'plugin-title': title });\n }).finally(function () {\n installRequestLock = false;\n });\n } catch (err) {\n console.error(err);\n installRequestLock = false;\n }\n });\n var installLock = false;\n $tw.rootWidget.addEventListener(\"cpl-install-plugin\", function (event) {\n try {\n if (installLock) return;\n var paramObject = event.paramObject || {};\n var response = paramObject.response;\n if (!$tw.wiki.tiddlerExists(response)) return;\n var responseTiddler = $tw.wiki.getTiddler(response).fields;\n $tw.wiki.deleteTiddler(response);\n var data = JSON.parse(responseTiddler.text);\n var rootPlugin = data.title;\n var plugins = [[rootPlugin, responseTiddler['cpl-plugin#version#'+rootPlugin]]];\n for (var plugin in data.versions) {\n if (responseTiddler['cpl-plugin#install#'+plugin] === 'yes' && responseTiddler['cpl-plugin#version#'+plugin]) {\n plugins.push([plugin, responseTiddler['cpl-plugin#version#'+plugin]]);\n }\n }\n var total = plugins.length;\n var count = 0;\n installLock=true;\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/installing-plugin', text: 'yes', 'plugin-title': rootPlugin });\n Promise.all(plugins.map(function (t) {\n return cpl('Install', { plugin: t[0], version: t[1] }).then(function (text) {\n $tw.notifier.display('$:/plugins/Gk0Wk/CPL-Repo/downloading-notify', {\n variables: { plugin: t[0], count: ++count, total: total },\n });\n return new $tw.Tiddler($tw.utils.parseJSONSafe(text));\n });\n })).then(function (tiddlers) {\n $tw.wiki.deleteTiddler('$:/temp/CPL-Repo/installing-plugin');\n for (var tiddler of tiddlers) {\n $tw.wiki.addTiddler(tiddler);\n }\n $tw.notifier.display('$:/plugins/Gk0Wk/CPL-Repo/downloading-complete-notify', { variables: {} });\n }).catch(function (err) {\n console.error(err);\n $tw.notifier.display('$:/plugins/Gk0Wk/CPL-Repo/downloading-fail-notify', {\n variables: { message: err },\n });\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/installing-plugin', text: err, 'plugin-title': rootPlugin });\n }).finally(function () {\n installLock = false;\n });\n } catch (e) {\n console.error(e);\n installLock = false;\n }\n });\n var tmpIndex;\n var tmpAllPlugins;\n var tmpCategories;\n var getPluginsIndexLock = false;\n $tw.rootWidget.addEventListener(\"cpl-get-plugins-index\", function () {\n try {\n if (getPluginsIndexLock) return;\n getPluginsIndexLock = true;\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/getting-plugins-index', text: 'yes' });\n cpl('Index').then(function (text) {\n var data = JSON.parse(text);\n var pluginMap = {};\n var categories = {};\n var authors = {};\n var allPlugins = [];\n var allTags = new Set();\n for (var p of data) {\n pluginMap[p.title] = p;\n allPlugins.push(p.title);\n if (p.category && p.category !== 'Unknown') {\n if (categories[p.category] === undefined) categories[p.category] = [];\n categories[p.category].push(p.title);\n }\n if (p.author) {\n if (authors[p.author] === undefined) authors[p.author] = [];\n authors[p.author].push(p.title);\n }\n if (!p.title.startsWith('$:/languages') && p.title.split('/').length === 4) {\n var a = p.title.split('/')[2];\n if (a !== p.author) {\n if (authors[a] === undefined) authors[a] = [];\n authors[a].push(p.title);\n }\n }\n if (p.tags) {\n for (var tag of $tw.utils.parseStringArray(p.tags)) {\n allTags.add(tag);\n }\n }\n }\n tmpIndex = data;\n tmpAllPlugins = allPlugins;\n tmpCategories = categories;\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/plugins-index', text: JSON.stringify(pluginMap), type: 'application/json' });\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/categories', text: JSON.stringify(categories), type: 'application/json' });\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/authors', text: JSON.stringify(authors), type: 'application/json' });\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/tags', text: JSON.stringify(Array.from(allTags)), type: 'application/json' });\n $tw.wiki.deleteTiddler('$:/temp/CPL-Repo/getting-plugins-index');\n }).catch(function (err) {\n console.error(err);\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/getting-plugins-index', text: err });\n }).finally(function () {\n getPluginsIndexLock = false;\n });\n } catch (err) {\n console.error(err);\n getPluginsIndexLock = false;\n }\n });\n var queryPluginLocks = new Set();\n $tw.rootWidget.addEventListener(\"cpl-query-plugin\", function (event) {\n try {\n var paramObject = event.paramObject || {};\n var title = paramObject.title;\n if (queryPluginLocks.has(title)) return;\n if (!title) return;\n queryPluginLocks.add(title);\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/querying-plugin/' + title, text: 'yes' });\n cpl('Query', { plugin: title }).then(function (text) {\n var data = JSON.parse(text);\n // 计算作者\n if (!data.author) {\n if (!data.title.startsWith('$:/languages') && data.title.split('/').length === 4) {\n data.author = data.title.split('/')[2];\n }\n }\n // 相似推荐\n var suggestions = [];\n if (tmpIndex && data.category !== 'Language') {\n // 基于标签距离进行推荐\n if (data.tags) {\n var tags = new Set($tw.utils.parseStringArray(data.tags).map(function (t) { return t.toLowerCase(); }));\n for (var plugin of tmpIndex) {\n if (!plugin.tags || plugin.title === title) continue;\n var weight = 0;\n for (var t of $tw.utils.parseStringArray(data.tags)) {\n if (tags.has(t.toLowerCase())) weight++;\n }\n if (weight === 0) continue;\n suggestions.push([plugin.title, weight]);\n }\n }\n // 按照权重排序\n suggestions.sort(function (a, b) { return b[1] - a[1]; });\n suggestions = suggestions.slice(0, 20).map(function (t) { return t[0] });\n // 如果数量不够,用同category\n if (suggestions.length < 20 && data.category !== '' && data.category !== 'Unknown') {\n var tset = new Set(suggestions);\n for (var p of (tmpCategories[data.category] ?? [])) {\n if (tset.has(p) || p === title) continue;\n suggestions.push(p);\n if (suggestions.length >= 20) break;\n }\n }\n }\n data.suggestions = $tw.utils.stringifyList(suggestions);\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/plugin-info/' + title, text: JSON.stringify(data), type: 'application/json' });\n $tw.wiki.deleteTiddler('$:/temp/CPL-Repo/querying-plugin/' + title);\n }).catch(function (err) {\n console.error(err);\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/querying-plugin/' + title, text: err });\n }).finally(function () {\n queryPluginLocks.delete(title);\n });\n } catch (err) {\n console.error(err);\n if (event.paramObject && event.paramObject.title) queryPluginLocks.delete(event.paramObject.title);\n }\n });\n // 插件查询\n var searchPluginsLock = false;\n $tw.rootWidget.addEventListener(\"cpl-search-plugins\", function (event) {\n try {\n if (searchPluginsLock) return;\n if (tmpAllPlugins === undefined) return;\n var paramObject = event.paramObject || {};\n var mode = paramObject.mode ?? '';\n var text = paramObject.text ?? '';\n var saveTo = paramObject.saveTo ?? '';\n if (!saveTo) return;\n searchPluginsLock = true;\n switch (mode) {\n case \"mix\": {\n if (text.length < 3) {\n // 字太少,匹配量爆炸,直接返回所有\n $tw.wiki.addTiddler({\n title: saveTo,\n text: JSON.stringify(tmpAllPlugins),\n type: 'application/json'\n });\n } else {\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/searching-plugin', text: 'yes' });\n var patterns = new Set(text.split(/\\s+/).map(function (t) { return t.toLowerCase(); }));\n patterns = new Set(Array.from(patterns).slice(0, 10)); // 再多性能撑不住了\n var suggestions = [];\n for (var plugin of tmpIndex) {\n var weight = 0;\n // 标题、作者、名称的搜索 10 权重\n for (var f of ['title', 'author', 'name']) {\n if (plugin[f]) {\n var t = plugin[f].toLowerCase();\n for (var pattern of patterns) {\n if (t.indexOf(pattern) >= 0) weight += 10;\n }\n }\n }\n // tag 的搜索 5 权重\n if (plugin.tags) {\n for (var t of $tw.utils.parseStringArray(plugin.tags)) {\n if (patterns.has(t.toLowerCase())) weight += 5;\n }\n }\n // description 搜索 2 权重\n if (plugin.description) {\n var t = plugin.description.toLowerCase();\n for (var pattern of patterns) {\n if (t.indexOf(pattern) >= 0) weight += 2;\n }\n }\n // readme 搜索 1 权重\n if (plugin.description) {\n var t = plugin.description;\n for (var pattern of patterns) {\n if (t.indexOf(pattern) >= 0) weight += 1;\n }\n }\n if (weight === 0) continue;\n suggestions.push([plugin.title, weight]);\n }\n // 按照权重排序\n suggestions.sort(function (a, b) { return b[1] - a[1]; });\n suggestions = suggestions.map(function (t) { return t[0] });\n $tw.wiki.addTiddler({\n title: saveTo,\n text: JSON.stringify(suggestions),\n type: 'application/json'\n });\n $tw.wiki.deleteTiddler('$:/temp/CPL-Repo/searching-plugin');\n }\n break;\n }\n case \"tags\": {\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/searching-plugin', text: 'yes' });\n var tags = new Set($tw.utils.parseStringArray(text).map(function (t) { return t.toLowerCase(); }));\n var result = [];\n for (var plugin of tmpIndex) {\n if (!plugin.tags) continue;\n var matched = true;\n for (var t of $tw.utils.parseStringArray(plugin.tags)) {\n if (tags.has(t.toLowerCase())) continue;\n matched = false;\n break;\n }\n if (matched) result.push(plugin.title);\n }\n $tw.wiki.addTiddler({\n title: saveTo,\n text: JSON.stringify(result),\n type: 'application/json'\n });\n $tw.wiki.deleteTiddler('$:/temp/CPL-Repo/searching-plugin');\n break;\n }\n default: {\n return;\n }\n }\n searchPluginsLock = false;\n } catch (err) {\n console.error(err);\n $tw.wiki.addTiddler({ title: '$:/temp/CPL-Repo/searching-plugin', text: String(err) });\n searchPluginsLock = false;\n }\n });\n};\n\n/*\n安装插件\n<$action-sendmessage $message=\"cpl-install-plugin\" title=\"xxx\" version=\"latest\"/>\n$:/temp/CPL-Repo/installing-plugin 如果为 yes 说明正在安装,请勿进行其他操作 如果不是yes,如果非空说明是错误信息 plugin-title字段是正在安装的插件\n\n获取所有插件的索引\n<$action-sendmessage $message=\"cpl-get-plugins-index\"/>\n$:/temp/CPL-Repo/plugins-index 所有信息\n$:/temp/CPL-Repo/getting-plugins-index 同上\n\n查询某个插件的信息\n<$action-sendmessage $message=\"cpl-query-plugin\" title=\"xxx\"/>\n$:/temp/CPL-Repo/plugin-info/<插件title> 插件的相关信息\n$:/temp/CPL-Repo/querying-plugin/<插件title> 同上\n*/\n})();\n","module-type":"startup","tags":[],"type":"application/javascript"},"$:/plugins/Gk0Wk/CPL-Repo/downloading-complete-notify":{"title":"$:/plugins/Gk0Wk/CPL-Repo/downloading-complete-notify","code-body":"yes","tags":[],"type":"text/vnd.tiddlywiki","text":"!! <$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[安装完成]else[Installation completed]] }}} />"},"$:/plugins/Gk0Wk/CPL-Repo/downloading-fail-notify":{"title":"$:/plugins/Gk0Wk/CPL-Repo/downloading-fail-notify","code-body":"yes","tags":[],"type":"text/vnd.tiddlywiki","text":"!! <$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[安装失败]else[Installation failed]] }}} />\n\n<<message>>"},"$:/plugins/Gk0Wk/CPL-Repo/downloading-notify":{"title":"$:/plugins/Gk0Wk/CPL-Repo/downloading-notify","code-body":"yes","tags":[],"type":"text/vnd.tiddlywiki","text":"<$list filter=\"[[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[yes]else[no]]\" variable=\"chinese\">\n\n<$list filter=\"[<chinese>match[yes]]\" variable=\"t\">\n\n!! 请稍候...\n\n正在下载第 <<count>> 个插件(共 <<total>> 个): <<plugin>>\n\n</$list>\n\n<$list filter=\"[<chinese>!match[yes]]\" variable=\"t\">\n\n!! Please wait...\n\nDownloading the <<count>> of plugins (total <<total>>): <<plugin>>\n\n</$list>\n\n</$list>"},"$:/plugins/Gk0Wk/CPL-Repo/home-gallery":{"title":"$:/plugins/Gk0Wk/CPL-Repo/home-gallery","caption":"<$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[首页]else[Home]] }}} />","tags":[],"type":"text/vnd.tiddlywiki","text":"\\import $:/plugins/Gk0Wk/CPL-Repo/plugin-list-item\n\\import $:/plugins/Gk0Wk/CPL-Repo/plugin-size\n\\import $:/plugins/Gk0Wk/CPL-Repo/paged-plugin-list\n\\define go-search()\n<$action-sendmessage\n $message=\"cpl-search-plugins\"\n mode=\"mix\"\n text={{$:/temp/CPL-Repo/searchplugin-home/input}}\n saveTo=\"$:/temp/CPL-Repo/searchplugin-home/result\"\n/>\n\\end\n\n<div style=\"width:100%;display:flex\">\n<div class=\"cpl-plugin-search\">\n<$macrocall\n $name=\"keyboard-driven-input\"\n tiddler=\"$:/temp/CPL-Repo/searchplugin-home/input\"\n tag=\"input\"\n class=\"tc-edit-texteditor tc-popup-handle\"\n focus=\"true\"\n filterMinLength=\"2\"\n placeholder={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[搜索插件...]else[Search for plugin...]] }}}\n inputAcceptActions=<<go-search>>\n class=\"tc-titlebar tc-edit-texteditor\"\n/>\n</div>\n<$button class=\"tc-primary-btn tc-btn-big-green cpl-plugin-search-go\" disabled={{$:/temp/CPL-Repo/searching-plugin}}>\n <$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]] :then[{$:/temp/CPL-Repo/searching-plugin}match[yes]then[搜索中...]else[搜索]] :else[{$:/temp/CPL-Repo/searching-plugin}match[yes]then[Searching...]else[Search]] }}} />\n <<go-search>>\n</$button>\n</div>\n<$list filter=\"[[$:/temp/CPL-Repo/searching-plugin]is[tiddler]!field:text[yes]]\">\n<div style=\"background:#e91e3db0;color:white;padding:2px 6px;margin:3px 0;backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;\">\n\t<$text text={{{ [<chinese>match[yes]then[出现了一些问题]else[Some errors occured]] }}}/>: <$text text={{!!text}}/>\n</div>\n</$list>\n<$list filter=\"[[$:/temp/CPL-Repo/searchplugin-home/result]is[tiddler]then[yes]else[no]]\" variable=\"go\">\n<!-- 有搜索结果 -->\n<$list filter=\"[<go>match[yes]]\" variable=\"t\">\n<<paged-plugin-list filter:\"[{$:/temp/CPL-Repo/searchplugin-home/result}jsonget[]]\" field:\"home-gallery\" class1:\"cpl-plugin-info-box\" class2:\"cpl-paged-plugin-list-control\">>\n</$list>\n<!-- 没有搜索结果,展示全部 -->\n<$list filter=\"[<go>match[no]]\" variable=\"t\">\n<<paged-plugin-list filter:\"[{$:/temp/CPL-Repo/plugins-index}jsonindexes[]!prefix[$:/language]]\" field:\"home-gallery\" class1:\"cpl-plugin-info-box\" class2:\"cpl-paged-plugin-list-control\">>\n</$list>\n</$list>\n"},"$:/plugins/Gk0Wk/CPL-Repo/install-plugin-query-notify":{"title":"$:/plugins/Gk0Wk/CPL-Repo/install-plugin-query-notify","code-body":"yes","tags":[],"type":"text/vnd.tiddlywiki","text":"<$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[获取安装信息中,请稍候]else[Getting installation information, please wait]] }}} />"},"$:/plugins/Gk0Wk/CPL-Repo/install-plugin-request-model-template":{"title":"$:/plugins/Gk0Wk/CPL-Repo/install-plugin-request-model-template","code-body":"yes","subtitle":"<$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[请确认安装]else[Please Confirm to Install]] }}} />","tags":[],"type":"text/vnd.tiddlywiki","text":"\\import $:/plugins/Gk0Wk/CPL-Repo/plugin-size\n\n\\define dependents-tree(json,checked-title,versions,sizes)\n<$list filter=\"[<__json__>jsonindexes[]]\" variable=\"plugin\">\n<div style=\"margin-left:1.25em;\" class=\"cpl-plugin-install-request-dependents-tree\">\n <$let install-field={{{ [[cpl-plugin#install#]addsuffix<plugin>] }}} version-field={{{ [[cpl-plugin#version#]addsuffix<plugin>] }}}>\n <div style=\"padding:6px 8px 6px 0;display:flex;align-items:center;justify-content:space-between;\">\n <span style=\"flex-grow:1;padding-left:1em\">\n ''<$text text=<<plugin>>/>'' \n <$let v={{{ [<__checked-title__>get<version-field>] }}}>\n <$macrocall $name=\"plugin-size\" size={{{ [<__sizes__>jsonget<plugin>,<v>else[0]] }}} />\n </$let>\n </span>\n <span>\n <$checkbox tiddler=<<__checked-title__>> field=<<install-field>> checked=\"yes\" unchecked=\"no\" default=\"no\">\n <$text text={{{ [<__checked-title__>get<install-field>match[yes]] :then[<chinese>match[yes]then[即将安装:]else[Will be installed:]] :else[<chinese>match[yes]then[不会安装]else[Will not be installed]] }}} />\n </$checkbox>\n <$list filter=\"[<__checked-title__>get<install-field>match[yes]]\" variable=\"t\">\n  \n <$select tiddler=<<__checked-title__>> field=<<version-field>>>\n <$list filter=\"[<__versions__>jsonget<plugin>]\" variable=\"version\">\n <option value=<<version>>><$text text=<<version>>/></option>\n </$list>\n </$select>\n </$list>\n </span>\n </div>\n <$macrocall $name=\"dependents-tree\" json={{{ [<__json__>jsonextract<plugin>] }}} checked-title=<<__checked-title__>> versions=<<__versions__>> sizes=<<__sizes__>> />\n </$let>\n</div>\n</$list>\n\\end\n\n<$list filter=\"[[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[yes]else[no]]\" variable=\"chinese\">\n<$let json={{{ [<requestTiddler>get[text]] }}}>\n\n<<<\n<$let title={{{ [<json>jsonget[title]] }}} version-field={{{ [[cpl-plugin#version#]addsuffix<title>] }}}>\n''<$text text={{{ [<chinese>match[yes]then[即将安装:]else[To be installed:]] }}}/>''\n<$text text=<<title>>/>   \n''<$text text={{{ [<chinese>match[yes]then[选择版本:]else[Select version:]] }}}/>''\n<$select tiddler=<<requestTiddler>> field=<<version-field>>>\n<$list filter=\"[<json>jsonget[versions],<title>]\" variable=\"version\">\n<option value=<<version>>><$text text=<<version>>/></option>\n</$list>\n</$select>\n \n<$let v={{{ [<requestTiddler>get<version-field>] }}}>\n<$macrocall $name=\"plugin-size\" size={{{ [<json>jsonget[sizes],<title>,<v>else[0]] }}} />\n</$let>\n</$let>\n<<<\n\n<!-- 依赖树 -->\n<$list filter=\"[<json>jsonextract[tree]jsonindexes[]count[]compare:integer:gt[0]]\" variable=\"t\">\n<$list filter=\"[<chinese>match[yes]]\" variable=\"t\">\n\n这个插件有一些依赖项,在安装插件之前,将会递归地安装这些插件,如果这些插件没有被成功安装,将会回滚所有安装动作。\n\n你可以自行选择安装哪些插件并选择其版本。插件依赖树如下:\n\n</$list>\n<$list filter=\"[<chinese>!match[yes]]\" variable=\"t\">\n\nThis plugin has some dependencies that will be installed recursively before installing the plugin, and if these plugins are not installed successfully, all installation actions will be rolled back.\n\nIt is up to you to choose which plugins to install and select their versions. The plugin dependency tree is as follows:\n\n</$list>\n</$list>\n<div style=\"margin-left:-1em;margin-right:6px;\">\n <$macrocall\n $name=\"dependents-tree\"\n json={{{ [<json>jsonextract[tree]] }}}\n checked-title=<<requestTiddler>>\n versions={{{ [<json>jsonextract[versions]] }}}\n sizes={{{ [<json>jsonextract[sizes]] }}}\n />\n</div>\n<hr/>\n\n<$list filter=\"[<chinese>match[yes]]\" variable=\"t\">\n\n注意:虽然 CPL 对安装失败有一定的回滚措施,但是无法避免因插件自身以及插件间相互作用所产生的潜在风险,包括但不限于\n\n* 浏览器崩溃;\n* Wiki 系统受损或数据丢失;\n* 插件内含恶意脚本的执行造成隐私泄露或系统损坏;\n\nCPL [[接受恶意插件举报|https://github.com/tiddly-gittly/TiddlyWiki-CPL/issues]]并将下架这类插件,但 CPL 不能保证其中收录的所有插件均安全可用。如您在安装后出现任何问题造成损失,CPL 无法负责。\n\n@@background:#e91e3db0;color:white;padding:4px;''因此,在安装任何插件前,请备份您的Wiki!''@@\n\n即便如此,您依然要安装吗?\n\n</$list>\n\n<$list filter=\"[<chinese>!match[yes]]\" variable=\"t\">\n\nNote: Although the CPL has some rollback measures for failed installations, it is not immune to the potential risks arising from the plugins themselves and from interactions between plugins, including but not limited to\n\n* Browser crashes;\n* Damage to the Wiki system or loss of data;\n* Privacy leakage or system damage caused by the execution of malicious scripts contained in the plugin;\n\nCPL [[accepts reports of malicious plugins|https://github.com/tiddly-gittly/TiddlyWiki-CPL/issues]] and will take down such plugins, but CPL cannot guarantee that all plugins included are safe and available. However, CPL cannot guarantee that all plugins are safe and available. CPL cannot be held responsible for any damage caused by any problem that occurs after you have installed the plugin.\n\n@@background:#e91e3db0;color:white;width:100%;padding:4px;''Therefore, please back up your wiki before installing any plugins!''@@\n\nEven so, do you still want to install it?\n\n</$list>\n\n<$button class=\"tc-btn-big-green tc-primary-btn\" message=\"tm-close-tiddler\">\n<$action-sendmessage $message=\"cpl-install-plugin\" response=<<requestTiddler>> />\n{{$:/core/images/done-button}}\n \n<$text text={{{ [<chinese>match[yes]then[确认安装]else[Confirm to Install]] }}} />\n</$button>\n\n</$let>\n</$list>\n"},"$:/plugins/Gk0Wk/CPL-Repo/layout":{"title":"$:/plugins/Gk0Wk/CPL-Repo/layout","name":"CPL","icon":"$:/core/images/plugin-generic-plugin","description":"<$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[太微插件聚合中心]else[TW5 Central Plugin Library]] }}} />","tags":["$:/tags/Layout"],"text":"\\whitespace trim\n\\import [subfilter{$:/core/config/GlobalImportFilter}]\n\\define containerClasses()\ntc-page-container tc-language-$(languageTitle)$ cpl-layout-container\n\\end\n\\procedure tv-config-toolbar-icons() yes\n\\procedure tv-config-toolbar-text() yes\n\\procedure redirected-navigate-actions()\n <$action-setfield $tiddler=\"$:/layout\" text=\"\" />\n <$action-navigate $to=<<event-navigateTo>> />\n\\end\n\n<$navigator story=\"$:/StoryList\" history=\"$:/HistoryList\" openLinkFromInsideRiver={{$:/config/Navigation/openLinkFromInsideRiver}} openLinkFromOutsideRiver={{$:/config/Navigation/openLinkFromOutsideRiver}} relinkOnRename={{$:/config/RelinkOnRename}}>\n\t<$messagecatcher $tm-navigate=<<redirected-navigate-actions>>>\n\t\t<div class=<<containerClasses>>>\n\n\t\t\t{{$:/core/ui/PageTemplate/pluginreloadwarning}}\n\n\t\t\t<$transclude $tiddler=\"$:/core/ui/CommandPaletteTemplate\" $mode=\"inline\" />\n\n\t\t\t<$button to=<<currentTiddler>> class=\"cpl-layout-back-button cpl-normal-button\">\n\t\t\t\t<$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[返回标准布局]else[Back to Standard layout]] }}} />\n\t\t\t\t{{$:/core/images/default-layout}}\n\t\t\t\t<$action-setfield $tiddler=\"$:/layout\" text=\"\" />\n\t\t\t</$button>\n\n\t\t\t{{$:/plugins/Gk0Wk/CPL-Repo/panel}}\n\n\t\t</div>\n\t</$messagecatcher>\n</$navigator>"},"$:/plugins/Gk0Wk/CPL-Repo/paged-plugin-list":{"title":"$:/plugins/Gk0Wk/CPL-Repo/paged-plugin-list","code-body":"yes","tags":[],"type":"text/vnd.tiddlywiki","text":"\\define paged-plugin-list-control(class2:\"\")\n\\whitespace trim\n<$list filter=\"[<pageMin>!match<pageMax>]\">\n<div class=\"$class2$\">\n <div>\n <$list filter=\"[<page>!match<lastPage>]\">\n <$button setTitle=<<pageState>> setTo=<<lastPage>>>{{$:/core/images/left-arrow}}</$button>\n </$list>\n </div>\n <span><$text text={{{ [<page>add[1]] }}}/> / <$text text={{{ [<pageMax>add[1]] }}}/></span>\n <div>\n <$list filter=\"[<page>!match<nextPage>]\">\n <$button setTitle=<<pageState>> setTo=<<nextPage>>>{{$:/core/images/right-arrow}}</$button>\n </$list>\n </div>\n</div>\n</$list>\n\\end\n\\define paged-plugin-list(filter,field,pageSize:\"10\",indexTitle:\"$:/temp/CPL-Repo/plugins-index\",class1:\"\",class2:\"\")\n\\whitespace trim\n<$let pageSize={{{ [<__pageSize__>min[1]] }}} indexTitle=<<__indexTitle__>> pageState=<<qualify \"$:/temp/CPL-Repo/paged-plugin-list-page\">> pluginCount={{{ $filter$ +[count[]] }}}>\n<$let pageMin=\"0\" pageMax={{{ [<pluginCount>divide<__pageSize__>ceil[]subtract[1]max[0]] }}}>\n<$let page={{{ [<pageState>get[text]else<pageMin>] +[max<pageMin>min<pageMax>] }}}>\n<$let firstIndex={{{ [<page>multiply<__pageSize__>] }}} nextPage={{{ [<page>add[1]min<pageMax>] }}} lastPage={{{ [<page>subtract[1]max<pageMin>] }}}>\n<<paged-plugin-list-control \"$class2$\">>\n<div class=\"$class1$\">\n <$list filter=\"$filter$ +[rest<firstIndex>first<__pageSize__>]\" variable=\"plugin\">\n <$macrocall\n $name=\"plugin-list-item\"\n json={{{ [{$:/temp/CPL-Repo/plugins-index}jsonextract<plugin>] }}}\n field=\"$field$\"\n class=\"cpl-plugin-info-box\"\n />\n </$list>\n</div>\n<<paged-plugin-list-control \"$class2$\">>\n</$let>\n</$let>\n</$let>\n</$let>\n\\end\n"},"$:/plugins/Gk0Wk/CPL-Repo/panel":{"title":"$:/plugins/Gk0Wk/CPL-Repo/panel","caption":"CPL","list-after":"$:/core/ui/ControlPanel/Plugins","tags":["$:/tags/MoreSideBar","$:/tags/ControlPanel"],"type":"text/vnd.tiddlywiki","text":"<!-- 在侧栏不显示 -->\n<$list filter=\"[<listItem>!match[$:/core/ui/SideBarSegments/tabs]]\">\n{{$:/plugins/Gk0Wk/CPL-Repo/about-banner}}\n</$list>\n\n<$macrocall\n\t$name=\"tabs\"\n\tstate=\"$:/temp/CPL-Repo/panel-tab-state\"\n\ttabsList=\"plugin-database uninstall-manager settings +[addprefix[$:/plugins/Gk0Wk/CPL-Repo/]]\"\n\tdefault=\"$:/plugins/Gk0Wk/CPL-Repo/plugin-database\"\n/>\n"},"$:/plugins/Gk0Wk/CPL-Repo/plugin-database":{"title":"$:/plugins/Gk0Wk/CPL-Repo/plugin-database","caption":"<$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[插件数据库]else[Plugin Database]] }}} />","tags":[],"type":"text/vnd.tiddlywiki","text":"<$list filter=\"[[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[yes]else[no]]\" variable=\"chinese\">\n\n<$button disabled={{{ [{$:/temp/CPL-Repo/getting-plugins-index}match[yes]else[no]] }}} class=\"tc-btn-big-green tc-primary-btn\">\n<$action-sendmessage $message=\"cpl-get-plugins-index\" />\n{{$:/core/images/download-button}}\n \n<$text text={{{ [[$:/temp/CPL-Repo/plugins-index]is[tiddler]] :then[<chinese>match[yes]then[刷新数据库]else[Refresh Database]] :else[<chinese>match[yes]then[加载数据库]else[Load Database]] }}} />\n</$button>\n\n<span style=\"opacity:0.5;\"><$text text={{{ [<chinese>match[yes]then[当前镜像]else[Current mirror]] }}}/>: <$text text={{{ [{$:/plugins/Gk0Wk/CPL-Repo/config/current-repo}!is[blank]else[https://tiddly-gittly.github.io/TiddlyWiki-CPL/library/all]] }}} /></span>\n\n<!-- 错误提示 -->\n<$list filter=\"[[$:/temp/CPL-Repo/getting-plugins-index]is[tiddler]!field:text[yes]]\">\n<div style=\"background:#e91e3db0;color:white;padding:2px 6px;margin:3px 0;border-radius:2px;backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;\">\n\t<$text text={{{ [<chinese>match[yes]then[出现了一些问题]else[Some errors occured]] }}}/>: <$text text={{!!text}}/>\n\t<$text text={{{ [<chinese>match[yes]then[请尝试刷新]else[Please try refreshing]] }}}/>\n</div>\n</$list>\n\n<!-- 加载中提示 -->\n<$list filter=\"[[$:/temp/CPL-Repo/getting-plugins-index]is[tiddler]field:text[yes]]\">\n<div style=\"background:#0005;color:#aaa;padding:2px 6px;margin:3px 0;border-radius:2px;backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;\">\n\t<$text text={{{ [<chinese>match[yes]then[加载中...]else[Loading...]] }}}/>\n</div>\n</$list>\n\n<$list filter=\"[[$:/temp/CPL-Repo/plugins-index]is[tiddler]]\" variable=\"ready\">\n<$macrocall\n\t$name=\"tabs\"\n\tstate=\"$:/temp/CPL-Repo/plugin-database-tab-state\"\n\ttabsList=\"home-gallery category-gallery tags-gallery update-manager +[addprefix[$:/plugins/Gk0Wk/CPL-Repo/]]\"\n\tdefault=\"$:/plugins/Gk0Wk/CPL-Repo/home-gallery\"\n/>\n</$list>\n\n</$list>\n"},"$:/plugins/Gk0Wk/CPL-Repo/plugin-list-item":{"title":"$:/plugins/Gk0Wk/CPL-Repo/plugin-list-item","code-body":"yes","tags":[],"type":"text/vnd.tiddlywiki","text":"\\define tag-plain(text:\"\",icon:\"\",color:\"\",bg:\"\")\n\\whitespace trim\n<span class=\"tc-tag-label\" style=\"background-color:$bg$;color:$color$;fill:$color$;user-select:none;margin-right:6px;\">\n\t{{$icon$}}$text$\n</span>\n\\end\n\n<!-- 安装插件的按钮 -->\n\\define install-plugin-button(plugin,libraryVersion,installedVersion)\n\\whitespace trim\n<div>\n <$let libraryVersion=<<__libraryVersion__>> installedVersion=<<__installedVersion__>> plugin=<<__plugin__>>>\n <$set name=\"reinstall-type\" value={{{ [<libraryVersion>compare:version:eq<installedVersion>then[tc-reinstall]] [<libraryVersion>compare:version:gt<installedVersion>then[tc-reinstall-upgrade]] [<libraryVersion>compare:version:lt<installedVersion>then[tc-reinstall-downgrade]] }}}>\n <$button class={{{ [<installedVersion>!is[blank]then<reinstall-type>] tc-btn-invisible tc-install-plugin +[join[ ]] }}} disabled={{{ [[$:/temp/CPL-Repo/instal-plugin-requesting]field:text[yes]else[]] [[$:/temp/CPL-Repo/installing-plugin]field:text[yes]else[]] +[unique[]match[yes]limit[1]else[no]] }}}>\n <$action-sendmessage $message=\"cpl-install-plugin-request\" title=<<plugin>> version=<<libraryVersion>>/>\n <$list filter=\"[[$:/temp/CPL-Repo/instal-plugin-requesting]field:plugin-title<plugin>]\">{{$:/core/images/timestamp-on}}</$list>\n <$list filter=\"[[$:/temp/CPL-Repo/instal-plugin-requesting]!field:plugin-title<plugin>]\">\n {{$:/core/images/download-button}}\n \n <!-- 根据版本判断安装/升级/降级/重装 -->\n <$list filter=\"[<installedVersion>is[blank]]\">{{$:/language/ControlPanel/Plugins/Install/Caption}}</$list>\n <$list filter=\"[<installedVersion>!is[blank]]\">\n <$list filter=\"[<libraryVersion>compare:version:gt<installedVersion>]\">{{$:/language/ControlPanel/Plugins/Update/Caption}}</$list>\n <$list filter=\"[<libraryVersion>compare:version:lt<installedVersion>]\">{{$:/language/ControlPanel/Plugins/Downgrade/Caption}}</$list>\n <$list filter=\"[<libraryVersion>compare:version:eq<installedVersion>]\">{{$:/language/ControlPanel/Plugins/Reinstall/Caption}}</$list>\n </$list>\n </$list>\n </$button>\n </$set>\n </$let>\n</div>\n\\end\n\n\\define plugin-list-item(json,field,show-suggestion:\"yes\",class:\"\")\n\\whitespace trim\n\\import $:/plugins/Gk0Wk/CPL-Repo/plugin-size\n<$list filter=\"[[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[yes]else[no]]\" variable=\"chinese\">\n<div class=\"$class$\">\n<$let json=<<__json__>>>\n<$let\n title={{{ [<json>jsonget[title]] }}}\n tags={{{ [<json>jsonget[tags]] }}}\n icon={{{ [<json>jsonget[icon]trim[]] }}}\n type={{{ [<json>jsonget[type]else[plugin]] }}}\n name={{{ [<json>jsonget[name]] ~[<json>jsonget[title]split[/]last[1]] }}}\n description={{{ [<json>jsonget[description]] }}}\n version={{{ [<json>jsonget[version]] }}}\n category={{{ [<json>jsonget[category]!is[blank]else[Unknown]] }}}\n installedVersion={{{ [<json>jsonget[title]get[version]] }}}\n detailJsonTitle={{{ $:/temp/CPL-Repo/plugin-info [<json>jsonget[title]] +[join[/]] }}}\n detailJsonStateTitle={{{ $:/temp/CPL-Repo/querying-plugin [<json>jsonget[title]] +[join[/]] }}}\n>\n<$let popup-state={{{ $:/temp/CPL-Repo/popup-state [<__field__>] [<title>] +[join[/]] }}}>\n<!-- 插件简介 -->\n<div class=\"tc-plugin-info\">\n <!-- 展开/收起按钮 -->\n <div class=\"tc-plugin-info-chunk tc-plugin-info-toggle\">\n <$reveal type=\"nomatch\" state=<<popup-state>> text=\"yes\">\n <$button class=\"tc-btn-invisible tc-btn-dropdown\" set=<<popup-state>> setTo=\"yes\">\n <$action-sendmessage $message=\"cpl-query-plugin\" title=<<title>>/>\n {{$:/core/images/chevron-right}}\n </$button>\n </$reveal>\n <$reveal type=\"match\" state=<<popup-state>> text=\"yes\">\n <$button class=\"tc-btn-invisible tc-btn-dropdown\" set=<<popup-state>> setTo=\"no\">\n {{$:/core/images/chevron-down}}\n </$button>\n </$reveal>\n </div>\n <!-- 插件图标 -->\n <div class=\"tc-plugin-info-chunk tc-plugin-info-icon\">\n <$list filter=\"[<icon>!is[blank]]\">\n <img src=<<icon>>/>\n </$list>\n <$list filter=\"[<icon>is[blank]]\">\n <$transclude tiddler={{{ [[$:/core/images/plugin-generic-]addsuffix<type>] }}}/>\n </$list>\n </div>\n <!-- 标题,简介,版本,是否安装,标签分类 -->\n <div class=\"tc-plugin-info-chunk tc-plugin-info-description\">\n <h1><strong><$text text=<<name>>/></strong>: <$text text=<<description>>/></h1>\n <h2><$text text=<<title>>/></h2>\n <div><em><$text text=<<version>>/></em></div>\n <div style=\"padding-top:4px;\">\n <$macrocall $name=\"tag-plain\" text={{{ [<chinese>match[yes]] :then[<category>addprefix[$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/]get[text]else[未分类]] :else[<category>] }}} icon=\"$:/core/images/folder\" bg=\"#3f51b5\" color=\"#fff\" />\n <$let bg={{{ [{$:/palette}getindex[tag-background]] }}} color={{{ [{$:/palette}getindex[foreground]] }}}>\n <$list filter=\"[enlist<tags>]\" variable=\"tag\">\n <$macrocall $name=\"tag-plain\" text=<<tag>> icon=\"$:/core/images/tag-button\" bg=<<bg>> color=<<color>> />\n </$list>\n </$let>\n </div>\n <$list filter=\"[<installedVersion>!is[blank]]\" variable=\"t\">\n <div><em>{{$:/language/ControlPanel/Plugins/AlreadyInstalled/Hint}}</em></div>\n </$list>\n <$list filter=\"[[$:/temp/CPL-Repo/instal-plugin-requesting]is[tiddler]field:plugin-title<plugin>]\">\n <$list filter=\"[{$:/temp/CPL-Repo/instal-plugin-requesting}match[yes]]\">\n <span style=\"color:#3ed044;font-weight:800;\"><$text text={{{ [<chinese>match[yes]then[安装准备中...]else[Preparing installation...]] }}}/></span>\n </$list>\n <$list filter=\"[{$:/temp/CPL-Repo/instal-plugin-requesting}!match[yes]]\">\n <span style=\"color:#fd160e;font-weight:800;\"><$text text={{{ [<chinese>match[yes]then[出错: ]else[Error: ]addsuffix{$:/temp/CPL-Repo/instal-plugin-requesting}] }}}/></span>\n </$list>\n </$list>\n <$list filter=\"[[$:/temp/CPL-Repo/installing-plugin]is[tiddler]field:plugin-title<plugin>]\">\n <$list filter=\"[{$:/temp/CPL-Repo/installing-plugin}match[yes]]\">\n <span style=\"color:#3ed044;font-weight:800;\"><$text text={{{ [<chinese>match[yes]then[安装中...]else[Installing...]] }}}/></span>\n </$list>\n <$list filter=\"[{$:/temp/CPL-Repo/installing-plugin}!match[yes]]\">\n <span style=\"color:#fd160e;font-weight:800;\"><$text text={{{ [<chinese>match[yes]then[出错: ]else[Error: ]addsuffix{$:/temp/CPL-Repo/installing-plugin}] }}}/></span>\n </$list>\n </$list>\n </div>\n <!-- 安装按钮 -->\n <div class=\"tc-plugin-info-chunk tc-plugin-info-buttons\">\n <$macrocall $name=\"install-plugin-button\" plugin=<<title>> libraryVersion=<<version>> installedVersion=<<installedVersion>> />\n </div>\n</div>\n<!-- 详情 -->\n<$list filter=\"[<popup-state>field:text[yes]]\">\n<div class=\"tc-plugin-info-dropdown\">\n <!-- 错误提示 -->\n <$list filter=\"[<detailJsonStateTitle>is[tiddler]!field:text[yes]]\">\n <div style=\"background:#e91e3db0;color:white;padding:2px 6px;margin:3px 0;border-radius:2px;backdrop-filter:blur(4px);min-height:100px;display:flex;align-items:center;justify-content:center;\">\n <$text text={{{ [<chinese>match[yes]then[出现了一些问题]else[Some errors occured]] }}}/>: <$text text={{!!text}}/>\n <$text text={{{ [<chinese>match[yes]then[请尝试刷新]else[Please try refreshing]] }}}/>\n </div>\n </$list>\n <!-- 加载中提示 -->\n <$list filter=\"[<detailJsonStateTitle>is[tiddler]field:text[yes]]\">\n <div style=\"background:#0005;color:#aaa;padding:2px 6px;margin:3px 0;border-radius:2px;backdrop-filter:blur(4px);min-height:100px;display:flex;align-items:center;justify-content:center;\">\n <$text text={{{ [<chinese>match[yes]then[加载中...]else[Loading...]] }}}/>\n </div>\n </$list>\n <!-- 插件详情 -->\n <$list filter=\"[<detailJsonStateTitle>!is[tiddler]]\" veriable=\"t\">\n <$let json={{{ [<detailJsonTitle>get[text]] }}}>\n <$let\n title={{{ [<json>jsonget[title]] }}}\n readme={{{ [<json>jsonget[readme]] }}}\n parent-plugin={{{ [<json>jsonget[parent-plugin]] }}}\n dependents={{{ [<json>jsonget[dependents]] }}}\n latest={{{ [<json>jsonget[latest]] }}}\n author={{{ [<json>jsonget[author]] }}}\n suggestions={{{ [<json>jsonget[suggestions]] }}}\n >\n <!-- 依赖 -->\n <$list filter=\"[<title>!is[tiddler]]\" variable=\"ignore\">\n <div style=\"background:#e91e3db0;color:white;padding:6px;\" class=\"cpl-plugin-dependencies\">\n {{$:/language/ControlPanel/Plugins/NotInstalled/Hint}} \n <$list filter=\"[enlist<dependents>] [<parent-plugin>] +[unique[]!is[blank]!is[tiddler]limit[1]]\" variable=\"ignore\">\n <div>\n {{$:/language/ControlPanel/Plugins/AlsoRequires}} \n <$list filter=\"[enlist<dependents>] [<parent-plugin>] +[unique[]!is[blank]!is[tiddler]sort[name]]\" variable=\"dependency\">\n <span style=\"border-radius:12px;padding:3px 8px;background:#1c3b40c2;font-size:12px;line-height:24px\"><$text text=<<dependency>>/></span> \n </$list>\n </div>\n </$list>\n </div>\n </$list>\n <!-- 历史版本 -->\n <$list filter=\"[<json>jsonget[versions]count[]compare:integer:gt[1]]\" variable=\"t\">\n <details class=\"more-versions-details\">\n <summary style=\"background:#246b84;padding:4px 10px;cursor:pointer;user-select:none;\">\n <$text text={{{ [<chinese>match[yes]then[浏览其他历史版本]else[Browse older versions]] }}}/>\n </summary>\n <$list filter=\"[<json>jsonget[versions]reverse[]]\" variable=\"version\">\n <div style=\"background:#1a4655;padding:4px 12px;display:flex;flex-direction:row;align-items:center;justify-content:space-between;border-top:1px solid #15333c;\">\n <span>\n <span style=\"color: white;\"><<version>></span>\n <span style=\"opacity: 0.8;\"> (<$macrocall $name=\"plugin-size\" size={{{ [<json>jsonget[versions-size],<version>else[0]] }}} />)</span>\n <$list filter=\"[<latest>compare:version:eq<version>]\"> <span class=\"cpl-latest-version-icon\">{{$:/core/images/star-filled}}</span></$list>\n <$list filter=\"[<installedVersion>compare:version:eq<version>]\"> <span class=\"cpl-installed-version-icon\">{{$:/core/images/done-button}}</span></$list>\n </span>\n <div style=\"font-size:0.8em;line-height:1.2;\"><$macrocall $name=\"install-plugin-button\" plugin=<<title>> libraryVersion=<<version>> installedVersion=<<installedVersion>> /></div>\n </div>\n </$list>\n </details>\n </$list>\n <!-- 正文 -->\n <div class=\"tc-plugin-info-dropdown-body\">\n <$wikify name=\"rendered\" text=<<readme>> output=\"html\"><<rendered>></$wikify>\n </div>\n <!-- 推荐 -->\n <$list filter=\"[<__show-suggestion__>match[yes]]\" variable=\"t\">\n <div style=\"padding:10px 20px;backdrop-filter:contrast(1.1);\">\n <!-- 作者的其他插件 -->\n <$list filter=\"[{$:/temp/CPL-Repo/authors}jsonget<author>count[]compare:integer:gt[1]]\" variable=\"t\">\n <details>\n <summary style=\"padding:10px 0;\">\n <$text text={{{ [<chinese>match[yes]then[作者的其他插件]else[Other plugins of Author]] }}} />\n </summary>\n <div style=\"padding:6px;display:flex;flex-direction:column;\">\n <$list filter=\"[{$:/temp/CPL-Repo/authors}jsonget<author>] -[<title>]\" variable=\"plugin\">\n <$macrocall\n $name=\"plugin-list-item\"\n json={{{ [{$:/temp/CPL-Repo/plugins-index}jsonextract<plugin>] }}}\n field=\"$field$-author-suggestion\"\n show-suggestion=\"no\"\n class=\"cpl-plugin-info-box\"\n />\n </$list>\n </div>\n </details>\n </$list>\n <!-- 插件推荐 -->\n <$list filter=\"[enlist<suggestions>count[]compare:integer:gt[1]]\" variable=\"t\">\n <details>\n <summary style=\"padding:10px 0;\">\n <$text text={{{ [<chinese>match[yes]then[你可能感兴趣的插件]else[Plugins you may be interested in]] }}} />\n </summary>\n <div style=\"padding:6px;display:flex;flex-direction:column;\">\n <$list filter=\"[enlist<suggestions>]\" variable=\"plugin\">\n <$macrocall\n $name=\"plugin-list-item\"\n json={{{ [{$:/temp/CPL-Repo/plugins-index}jsonextract<plugin>] }}}\n field=\"$field$-author-suggestion\"\n show-suggestion=\"no\"\n class=\"cpl-plugin-info-box\"\n />\n </$list>\n </div>\n </details>\n </$list>\n </div>\n </$list>\n </$let>\n </$let>\n </$list>\n</div>\n</$list>\n</$let>\n</$let>\n</$let>\n</div>\n</$list>\n\\end\n"},"$:/plugins/Gk0Wk/CPL-Repo/plugin-size":{"title":"$:/plugins/Gk0Wk/CPL-Repo/plugin-size","code-body":"yes","tags":[],"type":"text/vnd.tiddlywiki","text":"\\define plugin-size(size:\"0\")\n<$list filter=\"[<__size__>compare:integer:gt[0]]\" variable=\"size\" emptyMessage=\"?\">\n<$let unit-step={{{ [<size>compare:integer:gteq[1048576]] :then[<size>compare:integer:gteq[1073741824]then[GiB#1073741824]else[MiB#1048576]] :else[<size>compare:integer:gteq[1024]then[KiB#1024]else[B#1]] }}}>\n<$let unit={{{ [<unit-step>split[#]first[]] }}} step={{{ [<unit-step>split[#]last[]] }}}>\n<$text text={{{ [<size>divide<step>fixed[2]] [<unit>] +[join[ ]] }}}/>\n</$let>\n</$let>\n</$list>\n\\end"},"$:/plugins/Gk0Wk/CPL-Repo/plugin-uninstall-plugins-item":{"title":"$:/plugins/Gk0Wk/CPL-Repo/plugin-uninstall-plugins-item","code-body":"yes","tags":[],"type":"text/vnd.tiddlywiki","text":"\\whitespace trim\n<$list filter=\"[!has[draft.of]plugin-type<currentTab>sort[name]]\" emptyMessage={{$:/language/ControlPanel/Plugins/Empty/Hint}}>\n<div style=\"display:flex;margin:-0.5em 0;\">\n\t<div style=\"flex-grow:1;\">{{||$:/core/ui/PluginListItemTemplate}}</div>\n\t<$button style=\"backdrop-filter:contrast(0.65);margin:0.5em 0;padding:4px 16px !important;cursor:pointer;background-color:#d7074ebd !important;border:none !important;\">\n\t\t{{$:/core/images/delete-button}}\n\t\t<$action-sendmessage $message=\"tm-modal\" $param=\"$:/plugins/Gk0Wk/CPL-Repo/uninstall-plugin-model-template\" plugin=<<currentTiddler>>/>\n\t</$button>\n</div>\n</$list>\n"},"$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/Beautify":{"title":"$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/Beautify","text":"美化"},"$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/Developing":{"title":"$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/Developing","text":"开发工具"},"$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/Fun":{"title":"$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/Fun","text":"趣味"},"$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/Functional":{"title":"$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/Functional","text":"功能性"},"$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/Language":{"title":"$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/Language","text":"多语言"},"$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/Showcase":{"title":"$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/Showcase","text":"演示"},"$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/Unknown":{"title":"$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/Unknown","text":"未分类"},"$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/Visualization":{"title":"$:/plugins/Gk0Wk/CPL-Repo/PluginCategory/Visualization","text":"可视化"},"$:/plugins/Gk0Wk/CPL-Repo/PluginLibraryUI":{"title":"$:/plugins/Gk0Wk/CPL-Repo/PluginLibraryUI","caption":"CPL","tags":["$:/tags/PluginLibrary","$:/tags/PluginLibrary/CPL"],"enabled":"no","text":"{{$:/plugins/Gk0Wk/CPL-Repo/panel}}\n"},"$:/plugins/Gk0Wk/CPL-Repo/popup-readme":{"title":"$:/plugins/Gk0Wk/CPL-Repo/popup-readme","subtitle":"<$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[CPL 使用须知]else[Note to use CPL]] }}}/>","tags":[],"type":"text/vnd.tiddlywiki","text":"<$list filter=\"[[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[yes]else[no]]\" variable=\"chinese\">\n\n<$checkbox\n tiddler=\"$:/plugins/Gk0Wk/CPL-Repo/config/popup-readme-at-startup\"\n field=\"text\"\n checked={{$:/plugins/Gk0Wk/CPL-Repo/config/popup-readme-at-startup-threshold}}\n unchecked=\"0\"\n default=\"0\">\n <$text text={{{ [<chinese>match[yes]then[不再弹出该消息]else[No longer pops up this message]] }}}/>\n</$checkbox>\n\n{{$:/plugins/Gk0Wk/CPL-Repo/readme}}\n\n<$list filter=\"[<chinese>match[yes]]\">\n\nCPL 的各项功能需要连接互联网、从插件数据库的静态资源网站下载 JSON 文件来实现。CPL 只会从网站上下载数据,不会将你的数据上传。\n\n未来 CPL 可能添加插件投票和下载量统计功能,如添加这些功能,会先征得你的同意。你将来可以随时关闭这类功能。\n\n你可以在这里查看 CPL 插件的逻辑代码: [[$:/plugins/Gk0Wk/CPL-Repo/core.js]]\n\nCPL 当前尚未开启自动更新检测功能,如需开启,请手动前往设置页面启动:<$button>设置<$action-sendmessage $message=\"tm-modal\" $param=\"$:/plugins/Gk0Wk/CPL-Repo/settings\" /></$button>\n\n</$list>\n\n<$list filter=\"[<chinese>match[no]]\">\n\nThe functions of the CPL require an Internet connection to download JSON files from the plug-in database's static resource site for implementation. The CPL will only download data from the site, it will not upload your data.\n\nIn the future, CPL may add plugin polling and download statistics, and will ask for your permission to add these features. You can disable these features at any time in the future.\n\nYou can view the logic code of the CPL plugin here: [[$:/plugins/Gk0Wk/CPL-Repo/core.js]]\n\nCPL has not yet enabled the automatic update detection function, if you want to enable it, please go to the settings page manually to start it: <$button>Settings<$action-sendmessage $message=\"tm-modal\" $param=\"$:/plugins/Gk0Wk/CPL-Repo/settings\" /></$button>\n\n</$list>\n\n</$list>\n"},"$:/plugins/Gk0Wk/CPL-Repo/popup-readme-at-startup":{"title":"$:/plugins/Gk0Wk/CPL-Repo/popup-readme-at-startup","code-body":"yes","tags":["$:/tags/StartupAction/PostRender"],"type":"text/vnd.tiddlywiki","text":"<$list filter=\"[{$:/plugins/Gk0Wk/CPL-Repo/config/popup-readme-at-startup}!is[blank]else[0]compare:integer:lt{$:/plugins/Gk0Wk/CPL-Repo/config/popup-readme-at-startup-threshold}]\">\n<$action-sendmessage $message=\"tm-modal\" $param=\"$:/plugins/Gk0Wk/CPL-Repo/popup-readme\" />\n</$list>"},"$:/plugins/Gk0Wk/CPL-Repo/readme":{"title":"$:/plugins/Gk0Wk/CPL-Repo/readme","tags":[],"type":"text/vnd.tiddlywiki","text":"<div style=\"display:flex;justify-content:center;\">\n{{$:/plugins/Gk0Wk/CPL-Repo/about-banner}}\n</div>\n\n<$list filter=\"[[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[yes]else[no]]\" variable=\"chinese\">\n\n<$list filter=\"[<chinese>match[yes]]\">\n\n> 好用到哭,装就完了!\n\n!! 欢迎使用 CPL!\n\n使用 TW 这么久,你还在为四处寻觅好用的插件而发愁吗?还在为管理一大堆插件的更新、处理插件的依赖而苦恼吗?你还在为查找插件的用法而翻遍全网吗?你是否希望安装一个插件的某个历史版本,而非最新版本?\n\n如果你是插件的作者,你是否还在苦恼如何推广自己的插件,如何让用户及时获得最新的版本呢?\n\n你是否希望 TW 能像其他现代笔记软件一样,能够一键管理所有插件,能够更傻瓜化地查找和安装插件,甚至主动为你推广插件。是否希望 TW 能够帮助你自动保持插件的最新?\n\n这一切,在 CPL 得以实现!\n\n---\n\nCPL 是由[[太微(TiddlyWiki)中文社区|https://github.com/tiddly-gittly]]维护的、致力于搜集网络上所有与 <$text text={{{ TiddlyWiki5 }}}/> 有关插件的、希望为中国以及全世界的太微用户提供一键安装、更新插件体验的插件聚合中心。\n\n本插件有如下特点:\n\n* 聚合各种 TW 插件并保持最新当前 500+;\n* 在你的 Wiki 中搜索各种插件,提供关键词、分类和标签搜索;\n* 自动检查插件更新;\n* 安装插件时可自动递归安装依赖,并可以指定所有插件的安装版本;\n\n</$list>\n\n<$list filter=\"[<chinese>match[no]]\">\n\n> Just install it! I think you need it.\n\n!! Welcome to CPL!\n\nAfter using TW for so long, are you still worried about looking around for good plugins? Are you still struggling to manage a bunch of plugin updates and deal with plugin dependencies? Are you still searching the web to find out how to use a plugin? Do you want to install some historical version of a plugin instead of the latest version?\n\nIf you are a plugin author, do you still struggle with how to promote your plugin and how to keep users up to date with the latest version?\n\nDo you wish TW could manage all your plugins with one click like other modern note-taking software, make it more foolproof to find and install plugins, and even proactively promote plugins for you? Do you want TW to help you keep your plugins up-to-date automatically?\n\nIt's all here at CPL!\n\n---\n\nThis plugin source is maintained by the [[TiddlyWiki Chinese Community|https://github.com/tiddly-gittly]] and is dedicated to collecting all <$text text={{{ TiddlyWiki5 }}}/> related plugins on the web, hoping to provide a one-click installation and update plugin experience for TW users all around the world.\n\nThis plugin has the following features:\n\n* Aggregate various TW plugins and keep them up-to-date with the current 500+;.\n* Search for various plugins in your Wiki, providing keyword, category and tag search;.\n* Check for plugin updates automatically;\n* Install plugins with automatic recursive installation of dependencies, and you can specify the installed version of all plugins;\n\n</$list>\n\n</$list>"},"$:/plugins/Gk0Wk/CPL-Repo/settings":{"title":"$:/plugins/Gk0Wk/CPL-Repo/settings","caption":"<$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[设置]else[Settings]] }}}/>","subtitle":"<$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[CPL 设置]else[CPL Settings]] }}}/>","tags":[],"type":"text/vnd.tiddlywiki","text":"<$list filter=\"[[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[yes]else[no]]\" variable=\"chinese\">\n\n<$list filter=\"[<chinese>match[yes]]\">\n\n在该页面内您可以对 CPL 插件的行为进行设定。\n\n; CPL 数据库镜像入口 <$select tiddler=\"$:/plugins/Gk0Wk/CPL-Repo/config/current-repo\" field=\"text\">\n<$list filter=\"[{$:/plugins/Gk0Wk/CPL-Repo/config/repos}enlist-input[]]\" variable=\"repo\">\n<option value=<<repo>>><$text text=<<repo>>/></option>\n</$list>\n</$select>\n\n<<<\n当 CPL 获取数据经常失败时,你可以尝试切换到其他镜像,目前国内推荐使用 netlify 镜像,\n\n欢迎各位大佬部署国内镜像,详情请咨询QQ交流群或在[[GitHub Issue|https://github.com/tiddly-gittly/TiddlyWiki-CPL/issues]]提问\n\n你可以手动更改数据库镜像入口:[[$:/plugins/Gk0Wk/CPL-Repo/config/current-repo]]\n<<<\n\n; 自动更新检查间隔 <$edit-text tiddler=\"$:/plugins/Gk0Wk/CPL-Repo/config/auto-update-intervals-minutes\" tag=\"input\" default=\"-1\" /> (分钟/次)\n\n<<<\n自动更新检查会在 Wiki 刚打开时进行,并每隔指定间隔进行一次检查\n\n显然自动检查需要联网,每次所消耗的流量很小,大概10KB。如果发现有插件可以更新会在右上角弹窗提醒。\n\n当值小于等于0,则关闭自动更新,也包括刚打开 Wiki 的那一次。\n\n关闭后可以手动在 [[$:/ControlPanel]] 的 [CPL] 中进行检查。\n<<<\n\n; 插件更新筛选器 <$edit-text tiddler=\"$:/plugins/Gk0Wk/CPL-Repo/config/update-filter\" tag=\"input\" default=\"\" />\n\n<<<\n插件更新是有选择的,你可以通过修改筛选器来排除一些插件。\n<<<\n\n</$list>\n\n<$list filter=\"[<chinese>match[no]]\">\n\nIn this page you can set the behavior of the CPL plugin.\n\n; CPL Database Mirror Entry <$select tiddler=\"$:/plugins/Gk0Wk/CPL-Repo/config/current-repo\" field=\"text\">\n<$list filter=\"[{$:/plugins/Gk0Wk/CPL-Repo/config/repos}enlist-input[]]\" variable=\"repo\">\n<option value=<<repo>>><$text text=<<repo>>/></option>\n</$list>\n</$select>\n\n<<<\nWhen the CPL fails to fetch the data often, you can try to switch to another mirror.\n\nIf you'd like to deploy your own mirrors, feel free to ask questions in the [[GitHub Issue|https://github.com/tiddly-gittly/TiddlyWiki-CPL/issues]]!\n\nYou can manually change the database mirror entry: [[$:/plugins/Gk0Wk/CPL-Repo/config/current-repo]]\n<<<\n\n; Automatic update of check intervals <$edit-text tiddler=\"$:/plugins/Gk0Wk/CPL-Repo/config/auto-update-intervals-minutes\" tag=\"input\" default=\"-1\" /> (minute(s) per time)\n\n<<<\nThe automatic update check is performed when the Wiki is first opened, and at specified intervals\n\nObviously auto-checking requires an internet connection and consumes very little traffic each time, about 10KB. If a plugin is found to be updatable, a pop-up window will alert you in the upper right corner.\n\nWhen the value is less than or equal to 0, auto-update is turned off, also when the Wiki is just opened.\n\nAfter closing it can be checked manually in [CPL] of [[$:/ControlPanel]].\n<<<\n\n; Plugin Update Filter <$edit-text tiddler=\"$:/plugins/Gk0Wk/CPL-Repo/config/update-filter\" tag=\"input\" default=\"\" />\n\n<<<\nPlugin updates are selective and you can exclude some plugins by modifying the filter.\n<<<\n\n</$list>\n\n</$list>\n"},"$:/plugins/Gk0Wk/CPL-Repo/style.css":{"title":"$:/plugins/Gk0Wk/CPL-Repo/style.css","tags":["$:/tags/Stylesheet"],"type":"text/vnd.tiddlywiki","text":".cpl-normal-button {\n color: <<colour foreground>>;\n fill: color: <<colour foreground>>;\n}\n\n.cpl-plugin-info-box {\n overflow: hidden;\n border: 1px solid <<colour tiddler-info-border>>;\n background-color: <<colour tiddler-info-background>>;\n}\n.cpl-plugin-dependencies {\n border-left: 0.8px solid <<colour tiddler-info-border>>;\n border-right: 0.8px solid <<colour tiddler-info-border>>;\n}\n\n.cpl-plugin-info-box > .tc-plugin-info {\n margin: 0 !important;\n border: none !important;\n}\n\n.cpl-plugin-info-box > .tc-plugin-info-dropdown {\n margin-top: 0 !important;\n border: none !important;\n}\n\n.cpl-plugin-info-box > .tc-plugin-info-dropdown,\n.cpl-plugin-info-box > .tc-plugin-info-dropdown > .tc-plugin-info-dropdown-message,\n.cpl-plugin-info-box > .tc-plugin-info-dropdown > .tc-plugin-info-dropdown-body {\n background: transparent !important;\n background-color: transparent !important;\n}\n\n.cpl-plugin-info-box > .tc-plugin-info-dropdown > .tc-plugin-info-dropdown-body {\n box-shadow: inset 0 12px 12px -12px rgba(0, 0, 0, 0.3);\n}\n\n.cpl-latest-version-icon > svg, .cpl-installed-version-icon > svg {\n height: 1em;\n width: 1em;\n}\n\n.cpl-latest-version-icon > svg {\n color: #FFC107;\n fill: #FFC107;\n}\n\n.cpl-installed-version-icon > svg {\n color: #3ccb0f;\n fill: #3ccb0f;\n}\n\n.cpl-plugin-install-request-dependents-tree {\n border-left:2px dotted <<colour very-muted-foreground>>;\n background: #0002;\n}\n\n.cpl-plugin-search {\n flex-grow: 1;\n width: 0;\n}\n\n.cpl-plugin-search span {\n display: inline-block;\n width: 100%;\n}\n\n.cpl-plugin-search span input {\n margin: 0 !important;\n width: 100%;\n}\n\n.cpl-plugin-search-go {\n border-radius: 0 !important;\n margin: 0 !important;\n padding: 10px 20px !important;\n word-break: keep-all;\n}\n\n.cpl-paged-plugin-list-control {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 40px;\n border: 2px solid <<colour tiddler-info-border>>;\n background-color: <<colour tiddler-info-background>>;\n}\n\n.cpl-paged-plugin-list-control > div {\n flex-grow: 1;\n width: 0;\n height: 100%;\n}\n\n.cpl-paged-plugin-list-control > div > button {\n width: 100%;\n height: 100%;\n border: none !important;\n background: transparent !important;\n cursor: pointer !important;\n}\n\n.cpl-paged-plugin-list-control > div > button:hover {\n backdrop-filter: contrast(0.75);\n}\n\n.cpl-paged-plugin-list-control > span {\n padding: 0 10px;\n height: 100%;\n display: flex;\n align-items: center;\n user-select: none;\n}\n\n.cpl-banner-container {\n padding: 26px 16px;\n background: #1f5ea3;\n border-left: 5px solid #acc8d4;\n display:inline-block;\n background-image: linear-gradient(45deg, #1f5ea3, #1f71a3);\n width: 100%;\n}\n.cpl-banner-button-group svg {\n height: 1em;\n width: 1em;\n}\n\n.cpl-layout-container {\n display: flex;\n flex-direction: column;\n align-items: stretch;\n height: 100%;\n width: 100%;\n padding: 0.5em;\n}\n.cpl-layout-back-button {\n padding: 0.5em;\n}"},"$:/plugins/Gk0Wk/CPL-Repo/tags-gallery":{"title":"$:/plugins/Gk0Wk/CPL-Repo/tags-gallery","caption":"<$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[标签]else[Tags]] }}} />","tags":[],"type":"text/vnd.tiddlywiki","text":"\\import $:/plugins/Gk0Wk/CPL-Repo/plugin-list-item\n\\import $:/plugins/Gk0Wk/CPL-Repo/plugin-size\n\\import $:/plugins/Gk0Wk/CPL-Repo/paged-plugin-list\n\n\\define tag-plain(text:\"\",icon:\"\",color:\"\",bg:\"\")\n\\whitespace trim\n<span class=\"tc-tag-label\" style=\"background-color:$bg$;color:$color$;fill:$color$;user-select:none;margin-right:6px;\">\n\t{{$icon$}}$text$\n</span>\n\\end\n\n\\define tag-plain-removable(saveTiddler,saveField:\"tags\",text:\"\",icon:\"\",color:\"\",bg:\"\")\n\\whitespace trim\n<span class=\"tc-tag-label\" style=\"background-color:$bg$;color:$color$;fill:$color$;user-select:none;margin:4px 6px 2px 0;padding:4px 10px;\">\n\t{{$icon$}}$text$\n\t<$button class=\"tc-btn-invisible tc-remove-tag-button\" style=\"background-color:$bg$;color:$color$;fill:$color$;\">\n\t\t<$action-listops $tiddler=<<__saveTiddler__>> $field=<<__saveField__>> $subfilter=\"-[<__text__>]\"/>{{$:/core/images/close-button}}\n\t</$button>\n</span>\n\\end\n\n<$let bg={{{ [{$:/palette}getindex[tag-background]] }}} color={{{ [{$:/palette}getindex[foreground]] }}} saveTiddler=\"$:/temp/CPL-Repo/search-tag-input\">\n<!-- 展示待检索的标签,以及搜索按钮 -->\n<div style=\"width:100%;display:flex;backdrop-filter:contrast(1.3);\">\n <div class=\"cpl-search-tags\" style=\"flex-grow:1;width:0;display:flex;align-items:center;padding:4px 8px;flex-wrap:wrap;\">\n <!-- 已有的标签,可删除 -->\n <$list filter=\"[<saveTiddler>get[text]enlist-input[]]\" variable=\"tag\">\n <$macrocall $name=\"tag-plain-removable\" text=<<tag>> icon=\"$:/core/images/tag-button\" bg=<<bg>> color=<<color>> saveTiddler=<<saveTiddler>> saveField=\"text\" />\n </$list>\n <div class=\"cpl-search-tags-input\">\n <!-- 输入 -->\n <$macrocall\n $name=\"keyboard-driven-input\"\n tiddler=\"$:/temp/CPL-Repo/add-search-tag-input\"\n tag=\"input\"\n placeholder={{$:/language/EditTemplate/Tags/Add/Placeholder}}\n focusPopup=\"$:/temp/CPL-Repo/add-search-tag-popup\"\n class=\"tc-edit-texteditor tc-popup-handle\"\n tabindex=<<tabIndex>>\n focus=\"yes\"\n filterMinLength=\"2\"\n configTiddlerFilter=\"[[$:/core/macros/tag-picker]]\"\n />\n <!-- 弹出 -->\n <$reveal state=\"$:/temp/CPL-Repo/add-search-tag-popup\" type=\"nomatch\" text=\"\" default=\"\">\n <div class=\"tc-block-dropdown tc-block-tags-dropdown\">\n <$list filter=\"[{$:/temp/CPL-Repo/tags}jsonget[]search{$:/temp/CPL-Repo/add-search-tag-input}]\" variable=\"tag\">\n <$button class=\"tc-btn-invisible\" tag=\"a\" tooltip={{$:/language/EditTemplate/Tags/Add/Button/Hint}}>\n <$macrocall $name=\"tag-plain\" text=<<tag>> icon=\"$:/core/images/tag-button\" bg=<<bg>> color=<<color>> />\n <$action-listops $tiddler=<<saveTiddler>> $field=\"text\" $subfilter=\"[<tag>]\"/>\n </$button>\n </$list>\n </div>\n </$reveal>\n </div>\n </div>\n <!-- 搜索按钮 -->\n <$button class=\"tc-primary-btn tc-btn-big-green cpl-plugin-search-go\" disabled={{$:/temp/CPL-Repo/searching-plugin}}>\n <$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]] :then[{$:/temp/CPL-Repo/searching-plugin}match[yes]then[搜索中...]else[搜索]] :else[{$:/temp/CPL-Repo/searching-plugin}match[yes]then[Searching...]else[Search]] }}} />\n <$action-sendmessage\n $message=\"cpl-search-plugins\"\n mode=\"tags\"\n text={{{ [<saveTiddler>get[text]] }}}\n saveTo=\"$:/temp/CPL-Repo/searchplugin-tags/result\"\n />\n </$button>\n</div>\n<$list filter=\"[[$:/temp/CPL-Repo/searching-plugin]is[tiddler]!field:text[yes]]\">\n<div style=\"background:#e91e3db0;color:white;padding:2px 6px;margin:3px 0;backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;\">\n\t<$text text={{{ [<chinese>match[yes]then[出现了一些问题]else[Some errors occured]] }}}/>: <$text text={{!!text}}/>\n</div>\n</$list>\n<$list filter=\"[[$:/temp/CPL-Repo/searchplugin-tags/result]is[tiddler]then[yes]else[no]]\" variable=\"go\">\n<!-- 有搜索结果 -->\n<$list filter=\"[<go>match[yes]]\" variable=\"t\">\n<<paged-plugin-list filter:\"[{$:/temp/CPL-Repo/searchplugin-tags/result}jsonget[]]\" field:\"tag-gallery\" class1:\"cpl-plugin-info-box\" class2:\"cpl-paged-plugin-list-control\">>\n</$list>\n<!-- 没有搜索结果,展示全部 -->\n<$list filter=\"[<go>match[no]]\" variable=\"t\">\n<<paged-plugin-list filter:\"[{$:/temp/CPL-Repo/plugins-index}jsonindexes[]!prefix[$:/language]]\" field:\"tag-gallery\" class1:\"cpl-plugin-info-box\" class2:\"cpl-paged-plugin-list-control\">>\n</$list>\n</$list>\n</$let>\n"},"$:/plugins/Gk0Wk/CPL-Repo/tree":{"title":"$:/plugins/Gk0Wk/CPL-Repo/tree","type":"text/vnd.tiddlywiki","text":"<<tree prefix:\"$:/plugins/Gk0Wk/CPL-Repo/\">>"},"$:/plugins/Gk0Wk/CPL-Repo/uninstall-manager":{"title":"$:/plugins/Gk0Wk/CPL-Repo/uninstall-manager","code-body":"yes","tags":[],"caption":"<$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[卸载]else[Uninstall]] }}} />","type":"text/vnd.tiddlywiki","text":"<$macrocall\n\t$name=\"tabs\"\n\tstate=\"$:/temp/CPL-Repo/plugin-uninstall-manager-tab-state\"\n\ttabsList=\"plugin theme language\"\n\tdefault=\"plugin\"\n\ttemplate=\"$:/plugins/Gk0Wk/CPL-Repo/plugin-uninstall-plugins-item\"\n/>\n"},"$:/plugins/Gk0Wk/CPL-Repo/uninstall-plugin-model-template":{"title":"$:/plugins/Gk0Wk/CPL-Repo/uninstall-plugin-model-template","code-body":"yes","subtitle":"<$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[请确认卸载]else[Please Confirm to Uninstall]] }}} />","tags":[],"type":"text/vnd.tiddlywiki","text":"\\define checkShadow() <$action-listops $tiddler=<<tiddler>> $field=<<field>> $subfilter=\"[<shadow>]\"/>\n\\define uncheckShadow() <$action-listops $tiddler=<<tiddler>> $field=<<field>> $subfilter=\"-[<shadow>]\"/>\n\n<$let chinese={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[yes]else[no]] }}}>\n\n<$list filter=\"[<chinese>match[yes]]\">\n\n> 即将卸载 <<plugin>>\n\n<$list filter=\"[!field:plugin-type[]search:parent-plugin<plugin>] [!field:plugin-type[]search:dependent<plugin>] +[limit[1]]\" variable=\"t\">\n\n---\n\n!! 注意:插件被依赖\n\n该插件仍然被如下插件依赖,是否继续卸载?\n\n<$list filter=\"[!field:plugin-type[]search:parent-plugin<plugin>] [!field:plugin-type[]search:dependent<plugin>] +[unique[]sort[title]]\" variable=\"other-plugin\">\n\n: <<other-plugin>>\n\n</$list>\n</$list>\n\n---\n\n!! 注意:残留条目\n\n该插件中,有一些条目已不是默认值(有一个同名的非影子条目),因此这些条目在删除插件后仍将保留。这可能会为你的 Wiki 增添一些额外的垃圾条目,或者为下一次安装插件或升级插件带来困扰。所以在删除插件时,是否该同时清理这些条目?请选择要删除或者保留的条目,或者点击其标题来产看它的内容来决定。\n\n在决定之后,点击下方的按钮,卸载插件并同时删除勾选的条目。\n\n</$list>\n<$list filter=\"[<chinese>match[no]]\">\n\n> To uninstall <<plugin>>\n\n<$list filter=\"[!field:plugin-type[]search:parent-plugin<plugin>] [!field:plugin-type[]search:dependent<plugin>] +[limit[1]]\" variable=\"t\">\n\n---\n\n!! Note: Plugin is Dependent\n\nThe plugin is still dependent on the following plugins, do you continue to uninstall?\n\n<$list filter=\"[!field:plugin-type[]search:parent-plugin<plugin>] [!field:plugin-type[]search:dependent<plugin>] +[unique[]sort[title]]\" variable=\"other-plugin\">\n\n: <<other-plugin>>\n\n</$list>\n</$list>\n\n---\n\n!! Note: Left tiddlers\n\nThe plugin has some entries that are no longer default (there is a non-shadow entry with the same name), so these entries will remain after removing the plugin. This may add some extra junk entries to your Wiki, or cause problems for the next time you install the plugin or upgrade it. So when deleting a plugin, should you clean up these entries at the same time? Please select the entry you want to delete or keep, or click on its title to see what it says to decide.\n\nAfter deciding, click the button below to uninstall the plugin and remove the checked entries at the same time.\n</$list>\n\n<$button class=\"tc-btn-big-green tc-primary-btn\" message=\"tm-close-tiddler\">\n{{$:/core/images/delete-button}}\n \n<$text text={{{ [<chinese>match[yes]then[确认卸载]else[Confirm to Uninstall]] }}} />\n<$action-deletetiddler $filter=\"[<tiddler>get[text]enlist-input[]] [<plugin>]\" />\n</$button>\n\n<$let keep={{{ [<chinese>match[yes]then[保留]else[Keep]] }}} nokeep={{{ [<chinese>match[yes]then[删除]else[Delete]] }}}>\n<$let tiddler=<<qualify \"$:/temp/CPL-Repo/deleting-plugin-shadows\">> field=\"text\">\n\n<div style=\"display:flex;flex-direction:column;\">\n<$list filter=\"[<plugin>get[text]jsonindexes[tiddlers]is[tiddler]]\" variable=\"shadow\" emptyMessage=\"<$text text={{{ [<chinese>match[yes]then[无]else[]] }}} />\">\n<$let is-keep={{{ [<tiddler>get[text]enlist-input[]match<shadow>limit[1]then[no]else[yes]] }}}>\n<div style={{{ [[background:]] [<is-keep>match[yes]then[#00ff2d1d]else[#fd004748]] [[;display:flex;justify-content:space-between;padding:4px 6px;border:1px solid #7774]] +[join[]] }}}>\n<span><<shadow>></span>\n<span>\n<$checkbox filter=\"[<tiddler>get[text]enlist-input[]]\" checked=<<shadow>> checkactions=<<checkShadow>> uncheckactions=<<uncheckShadow>>> ''<$text text={{{ [<is-keep>match[yes]then<keep>else<nokeep>] }}}/>''</$checkbox>\n</span>\n</div>\n</$let>\n</$list>\n</div>\n\n</$let>\n</$let>\n"},"$:/plugins/Gk0Wk/CPL-Repo/update-body":{"title":"$:/plugins/Gk0Wk/CPL-Repo/update-body","subtitle":"<$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[更新列表]else[Update List]] }}}/>","tags":[],"type":"text/vnd.tiddlywiki","text":"\\import $:/plugins/Gk0Wk/CPL-Repo/plugin-list-item\n\\import $:/plugins/Gk0Wk/CPL-Repo/plugin-size\n\\import $:/plugins/Gk0Wk/CPL-Repo/paged-plugin-list\n\n<$list filter=\"[[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[yes]else[no]]\" variable=\"chinese\">\n<$list filter=\"[[$:/temp/CPL-Repo/update-plugins]is[tiddler]] [[$:/temp/CPL-Repo/plugins-index]is[tiddler]] +[count[]compare:integer:eq[2]then[yes]else[no]]\" variable=\"ready\">\n\n<$list filter=\"[<ready>match[yes]]\">\n<<paged-plugin-list filter:\"[{$:/temp/CPL-Repo/update-plugins}jsonget[]]\" field:\"update-list\" class1:\"cpl-plugin-info-box\" class2:\"cpl-paged-plugin-list-control\">>\n</$list>\n\n<$list filter=\"[<ready>match[no]]\">\n<!-- 错误提示 -->\n<$list filter=\"[[$:/temp/CPL-Repo/getting-plugins-index]is[tiddler]!field:text[yes]]\">\n<div style=\"background:#e91e3db0;color:white;padding:2px 6px;margin:3px 0;border-radius:2px;backdrop-filter:blur(4px);min-height:100px;display:flex;align-items:center;justify-content:center;\">\n\t<$text text={{{ [<chinese>match[yes]then[出现了一些问题]else[Some errors occured]] }}}/>: <$text text={{!!text}}/>\n\t<$text text={{{ [<chinese>match[yes]then[请尝试刷新]else[Please try refreshing]] }}}/>\n</div>\n</$list>\n<!-- 错误提示 -->\n<$list filter=\"[[$:/temp/CPL-Repo/updaing]is[tiddler]!field:text[yes]]\">\n<div style=\"background:#e91e3db0;color:white;padding:2px 6px;margin:3px 0;border-radius:2px;backdrop-filter:blur(4px);min-height:100px;display:flex;align-items:center;justify-content:center;\">\n\t<$text text={{{ [<chinese>match[yes]then[出现了一些问题]else[Some errors occured]] }}}/>: <$text text={{!!text}}/>\n\t<$text text={{{ [<chinese>match[yes]then[请尝试刷新]else[Please try refreshing]] }}}/>\n</div>\n</$list>\n<!-- 加载中提示 -->\n<$list filter=\"[[$:/temp/CPL-Repo/getting-plugins-index]is[tiddler]field:text[yes]] [[$:/temp/CPL-Repo/updaing]is[tiddler]field:text[yes]] +[limit[1]]\">\n<div style=\"background:#0005;color:#aaa;padding:2px 6px;margin:3px 0;border-radius:2px;backdrop-filter:blur(4px);min-height:100px;display:flex;align-items:center;justify-content:center;\">\n\t<$text text={{{ [<chinese>match[yes]then[加载中...]else[Loading...]] }}}/>\n</div>\n</$list>\n<$list filter=\"[[$:/temp/CPL-Repo/getting-plugins-index]is[tiddler]field:text[yes]] [[$:/temp/CPL-Repo/updaing]is[tiddler]field:text[yes]] +[limit[1]]\">\n<div style=\"background:#0005;color:#aaa;padding:2px 6px;margin:3px 0;border-radius:2px;backdrop-filter:blur(4px);min-height:100px;display:flex;align-items:center;justify-content:center;\">\n\t<$text text={{{ [<chinese>match[yes]then[加载中...]else[Loading...]] }}}/>\n</div>\n</$list>\n</$list>\n\n</$list>\n</$list>\n"},"$:/plugins/Gk0Wk/CPL-Repo/update-manager":{"title":"$:/plugins/Gk0Wk/CPL-Repo/update-manager","caption":"<$text text={{{ [[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[更新]else[Updates]] }}} />","tags":[],"type":"text/vnd.tiddlywiki","text":"<$list filter=\"[[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[yes]else[no]]\" variable=\"chinese\">\n<$button disabled={{{ [{$:/temp/CPL-Repo/getting-plugins-index}match[yes]else[no]] }}} class=\"tc-btn-big-green tc-primary-btn\">\n<$action-sendmessage $message=\"cpl-update-check\" />\n{{$:/core/images/refresh-button}}\n \n<$text text={{{ [[$:/temp/CPL-Repo/update-plugins]is[tiddler]] :then[<chinese>match[yes]then[重新获取更新]else[Refetch CPL]] :else[<chinese>match[yes]then[获取更新]else[Fetch update]] }}} />\n</$button>\n</$list>\n\n{{$:/plugins/Gk0Wk/CPL-Repo/update-body}}"},"$:/plugins/Gk0Wk/CPL-Repo/update-notify-template":{"title":"$:/plugins/Gk0Wk/CPL-Repo/update-notify-template","type":"text/vnd.tiddlywiki","text":"<$list filter=\"[[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]search[zh]then[yes]else[no]]\" variable=\"chinese\">\n\n<$list filter=\"[<chinese>match[yes]]\">\n\n!! CPL 更新提醒\n\n您的 Wiki 中有 <<updateCount>> 款插件在 CPL 中有更新版本, 快来更新吧!\n\n<$button class=\"cpl-normal-button\">\n 更新\n <$action-sendmessage $message=\"cpl-get-plugins-index\" />\n <$action-sendmessage $message=\"tm-modal\" $param=\"$:/plugins/Gk0Wk/CPL-Repo/update-body\" />\n</$button>\n<$button class=\"cpl-normal-button\">\n 设置\n <$action-sendmessage $message=\"tm-modal\" $param=\"$:/plugins/Gk0Wk/CPL-Repo/settings\" />\n</$button>\n\n</$list>\n\n<$list filter=\"[<chinese>!match[yes]]\">\n\n!! CPL Update Alert\n\nThere are <<updateCount>> plugins in your Wiki that have newer versions in CPL, so update them now!\n\n<$button class=\"cpl-normal-button\">\n Update\n <$action-sendmessage $message=\"cpl-get-plugins-index\" />\n <$action-sendmessage $message=\"tm-modal\" $param=\"$:/plugins/Gk0Wk/CPL-Repo/update-body\" />\n</$button>\n<$button class=\"cpl-normal-button\">\n Settings\n <$action-sendmessage $message=\"tm-modal\" $param=\"$:/plugins/Gk0Wk/CPL-Repo/settings\" />\n</$button>\n\n</$list>\n\n</$list>\n"}}} \ No newline at end of file diff --git a/tiddlers/TCTSystem/plugins/Gk0Wk/CPL-Repo.json.meta b/tiddlers/TCTSystem/plugins/Gk0Wk/CPL-Repo.json.meta index 245b6ae7..ccc6fdcd 100644 --- a/tiddlers/TCTSystem/plugins/Gk0Wk/CPL-Repo.json.meta +++ b/tiddlers/TCTSystem/plugins/Gk0Wk/CPL-Repo.json.meta @@ -1,8 +1,8 @@ author: Gk0Wk description: Essential and powerful plugin manager and library -list: readme +list: readme tree name: CPL Repo plugin-type: plugin title: $:/plugins/Gk0Wk/CPL-Repo type: application/json -version: 2023.12.9 \ No newline at end of file +version: 2024.5.22 \ No newline at end of file diff --git a/tiddlers/TCTSystem/plugins/Gk0Wk/notionpage-covericon/body.tid b/tiddlers/TCTSystem/plugins/Gk0Wk/notionpage-covericon/body.tid index 0c8f2c0b..58a408be 100644 --- a/tiddlers/TCTSystem/plugins/Gk0Wk/notionpage-covericon/body.tid +++ b/tiddlers/TCTSystem/plugins/Gk0Wk/notionpage-covericon/body.tid @@ -1,6 +1,6 @@ -created: 20240327061730309 +created: 20240905112134056 list-before: $:/core/ui/ViewTemplate/title -modified: 20240327061730309 +modified: 20240905112134056 overwrite: yes tags: $:/tags/ViewTemplate title: $:/plugins/Gk0Wk/notionpage-covericon/body diff --git a/tiddlers/TCTSystem/plugins/flibbles/relink.json b/tiddlers/TCTSystem/plugins/flibbles/relink.json index d2412e6a..5ace9dba 100644 --- a/tiddlers/TCTSystem/plugins/flibbles/relink.json +++ b/tiddlers/TCTSystem/plugins/flibbles/relink.json @@ -85,7 +85,7 @@ "module-type": "relinkfilteroperator" }, "$:/plugins/flibbles/relink/js/filteroperators/wouldchange.js": { - "text": "/*\\\nmodule-type: relinkfilteroperator\n\nwouldchange: Generator.\n\nGiven each input title, it returns all the tiddlers that would be changed if the currentTiddler were to be renamed to the operand.\n\nimpossible: filters all source titles for ones that encounter errors on failure.\n\nTHESE ARE INTERNAL FILTER OPERATOR AND ARE NOT INTENDED TO BE USED BY USERS.\n\n\\*/\n\nvar language = require(\"$:/plugins/flibbles/relink/js/language.js\");\nvar utils = require(\"$:/plugins/flibbles/relink/js/utils.js\");\n\nexports.wouldchange = function(source,operator,options) {\n\tvar from = options.widget && options.widget.getVariable(\"currentTiddler\"),\n\t\tto = operator.operand,\n\t\tindexer = utils.getIndexer(options.wiki);\n\tif (from !== to) {\n\t\tvar records = indexer.relinkLookup(from, to, options);\n\t\treturn Object.keys(records);\n\t} else {\n\t\treturn [];\n\t}\n};\n\nexports.impossible = function(source,operator,options) {\n\tvar from = options.widget && options.widget.getVariable(\"currentTiddler\"),\n\t\tto = operator.operand,\n\t\tresults = [];\n\tif (from !== to) {\n\t\tvar indexer = utils.getIndexer(options.wiki),\n\t\t\trecords = indexer.relinkLookup(from, to, options);\n\t\tsource(function(tiddler, title) {\n\t\t\tvar fields = records[title];\n\t\t\tif (fields) {\n\t\t\t\tfor (var field in fields) {\n\t\t\t\t\tif (fields[field].impossible) {\n\t\t\t\t\t\tresults.push(title);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n", + "text": "/*\\\nmodule-type: relinkfilteroperator\n\nwouldchange: Generator.\n\nGiven each input title, it returns all the tiddlers that would be changed if the currentTiddler were to be renamed to the operand.\n\nimpossible: filters all source titles for ones that encounter errors on failure.\n\nTHESE ARE INTERNAL FILTER OPERATOR AND ARE NOT INTENDED TO BE USED BY USERS.\n\n\\*/\n\nvar language = require(\"$:/plugins/flibbles/relink/js/language.js\");\nvar utils = require(\"$:/plugins/flibbles/relink/js/utils.js\");\n\nexports.wouldchange = function(source,operator,options) {\n\tvar from = options.widget && options.widget.getVariable(\"currentTiddler\"),\n\t\tto = operator.operand,\n\t\tindexer = utils.getIndexer(options.wiki);\n\tif (from !== to) {\n\t\tvar records = indexer.relinkLookup(from, to, options);\n\t\treturn Object.keys(records);\n\t} else {\n\t\treturn [];\n\t}\n};\n\nexports.impossible = function(source,operator,options) {\n\tvar from = options.widget && options.widget.getVariable(\"currentTiddler\"),\n\t\tto = operator.operand,\n\t\tresults = [];\n\tif (to && from !== to) {\n\t\tvar indexer = utils.getIndexer(options.wiki),\n\t\t\trecords = indexer.relinkLookup(from, to, options);\n\t\tsource(function(tiddler, title) {\n\t\t\tvar fields = records[title];\n\t\t\tif (fields) {\n\t\t\t\tfor (var field in fields) {\n\t\t\t\t\tif (fields[field].impossible) {\n\t\t\t\t\t\tresults.push(title);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n", "module-type": "relinkfilteroperator", "title": "$:/plugins/flibbles/relink/js/filteroperators/wouldchange.js", "type": "application/javascript" @@ -296,7 +296,7 @@ "type": "application/javascript" }, "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/prettylink.js": { - "text": "/*\\\nmodule-type: relinkwikitextrule\n\nHandles replacement in wiki text inline rules, like,\n\n[[Introduction]]\n\n[[link description|TiddlerTitle]]\n\n\\*/\n\nvar utils = require(\"./utils.js\");\n\nexports.name = \"prettylink\";\n\nexports.report = function(text, callback, options) {\n\tvar text = this.match[1],\n\t\tlink = this.match[2] || text;\n\tif (!$tw.utils.isLinkExternal(link)) {\n\t\tcallback(link, '[[' + text + ']]');\n\t}\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n};\n\nexports.relink = function(text, fromTitle, toTitle, options) {\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tvar caption, m = this.match;\n\tif (m[2] === fromTitle) {\n\t\t// format is [[caption|MyTiddler]]\n\t\tcaption = m[1];\n\t} else if (m[2] !== undefined || m[1] !== fromTitle) {\n\t\t// format is [[MyTiddler]], and it doesn't match\n\t\treturn undefined;\n\t}\n\tvar entry = { output: utils.makePrettylink(this.parser, toTitle, caption) };\n\tif (entry.output === undefined) {\n\t\tentry.impossible = true;\n\t}\n\treturn entry;\n};\n", + "text": "/*\\\nmodule-type: relinkwikitextrule\n\nHandles replacement in wiki text inline rules, like,\n\n[[Introduction]]\n\n[[link description|TiddlerTitle]]\n\n\\*/\n\nvar utils = require(\"./utils.js\");\nvar relinkUtils = require('$:/plugins/flibbles/relink/js/utils.js');\n\nexports.name = \"prettylink\";\n\nexports.report = function(text, callback, options) {\n\tvar text = this.match[1],\n\t\tlink = this.match[2] || text;\n\tif (!$tw.utils.isLinkExternal(link)) {\n\t\tvar type = relinkUtils.getType('title');\n\t\ttype.report(link, function(title) {\n\t\t\tcallback(title, '[[' + text + ']]');\n\t\t}, options);\n\t}\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n};\n\nexports.relink = function(text, fromTitle, toTitle, options) {\n\tvar type = relinkUtils.getType('title'),\n\t\tcaption = this.match[1],\n\t\tlink = this.match[2] || caption,\n\t\tentry = type.relink(link, fromTitle, toTitle, options);\n\tif (entry && !entry.impossible) {\n\t\tentry.output = utils.makePrettylink(this.parser, entry.output, this.match[2] && caption);\n\t\tif (entry.output === undefined) {\n\t\t\tentry.impossible = true;\n\t\t}\n\t}\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\treturn entry;\n};\n", "module-type": "relinkwikitextrule", "title": "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/prettylink.js", "type": "application/javascript" diff --git a/tiddlers/TCTSystem/plugins/flibbles/relink.json.meta b/tiddlers/TCTSystem/plugins/flibbles/relink.json.meta index a55ba6ae..40927a50 100644 --- a/tiddlers/TCTSystem/plugins/flibbles/relink.json.meta +++ b/tiddlers/TCTSystem/plugins/flibbles/relink.json.meta @@ -9,4 +9,4 @@ plugin-type: plugin source: https://github.com/flibbles/tw5-relink title: $:/plugins/flibbles/relink type: application/json -version: 2.4.2 \ No newline at end of file +version: 2.4.3 \ No newline at end of file diff --git a/tiddlers/TCTSystem/plugins/kookma/commander.json b/tiddlers/TCTSystem/plugins/kookma/commander.json index 9ed72d2e..27c40e92 100644 --- a/tiddlers/TCTSystem/plugins/kookma/commander.json +++ b/tiddlers/TCTSystem/plugins/kookma/commander.json @@ -1 +1 @@ -{"tiddlers":{"$:/plugins/kookma/commander/buttons/pagecontrol":{"title":"$:/plugins/kookma/commander/buttons/pagecontrol","caption":"{{$:/plugins/kookma/commander/images/commander.svg}} {{$:/language/Buttons/Commander/Caption}}","description":"Open tiddler commander","list-after":"$:/core/ui/Buttons/advanced-search","tags":"$:/tags/PageControls","type":"text/vnd.tiddlywiki","text":"\\whitespace trim\n\n\\define commander-button(class)\n\\whitespace trim\n<$button to=\"$:/Commander\" tooltip={{$:/language/Buttons/Commander/Hint}} aria-label={{$:/language/Buttons/Commander/Caption}} class=\"\"\"$(tv-config-toolbar-class)$ $class$\"\"\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/plugins/kookma/commander/images/commander.svg}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Commander/Caption}}/></span>\n</$list>\n</$button>\n\\end\n\n<$list filter=\"[list[$:/StoryList]] +[field:title[$:/Commander]]\" emptyMessage=<<commander-button>>>\n<<commander-button \"tc-selected\">>\n</$list>\n"},"$:/Commander":{"title":"$:/Commander","icon":"$:/plugins/kookma/commander/images/commander.svg","type":"text/vnd.tiddlywiki","text":"\\import [all[shadows+tiddlers]tag[$:/tags/Commander/Macro]]\n{{$:/plugins/kookma/commander/search/ui}}\n<!-- Create the search filter based on searchbox and selective operation (if active) -->\n<$vars searchTerms={{{ [<searchboxTid>get[text]minlength{$:/plugins/kookma/commander/config/minlength}]~[[$:/errorCode:-23500]] }}} pattern=\"^\\[\"><!-- this part checks the combo search and selective ops-->\n<$set name=\"filtertext\" filter=\"[<searchTerms>regexp<pattern>]\" value=\"[subfilter<searchTerms>]\" emptyValue=\"[!is[system]search<searchTerms>]\">\n<$set name=\"searchfilter\" filter=\"[<selectiveOpsTid>get[text]match[yes]]\" \n value= \"[subfilter<filtertext>!prefix[$:/temp/commander]!prefix[$:/state/commander]]+[tag<workingTag>]\"\n emptyValue=\"[subfilter<filtertext>!prefix[$:/temp/commander]!prefix[$:/state/commander]]\" >\n<small style=\"margin-left:17ch;\"><i><$count filter=\"[subfilter<filtertext>!prefix[$:/temp/commander]!prefix[$:/state/commander]!is[missing]]\" /> matches </i></small>\n\n<!-- Display search results and let selective operation -->\n<<commander-slider title:\"$:/plugins/kookma/commander/search/selection\" default:\"open\">>\n\n<!-- Display operation UIs-->\n<<tabs \"[all[shadows+tiddlers]tag[$:/tags/Commander]!has[draft.of]]\" default:\"$:/plugins/kookma/commander/tiddler/ui\">>\n\n</$set>\n</$set>\n<$vars>\n\n---\n\n<<commander-slider title:\"$:/plugins/kookma/commander/log/ui\">>\n"},"$:/plugins/kookma/commander/config/AutoFocus":{"title":"$:/plugins/kookma/commander/config/AutoFocus","tags":"","type":"text/vnd.tiddlywiki","text":"yes"},"$:/plugins/kookma/commander/config/commonfields":{"title":"$:/plugins/kookma/commander/config/commonfields","tags":"","type":"text/vnd.tiddlywiki","text":"created creator modified modifier revision bag"},"$:/plugins/kookma/commander/config/minlength":{"title":"$:/plugins/kookma/commander/config/minlength","tags":"","type":"text/vnd.tiddlywiki","text":"3"},"$:/plugins/kookma/commander/config/relink":{"title":"$:/plugins/kookma/commander/config/relink","tags":"","type":"text/vnd.tiddlywiki","text":"\\define relink-plugin-notExisted() Update title in //tags// and //list// fields of other tiddlers\n<$checkbox tiddler=\"$:/config/RelinkOnRename\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"no\">\n<$list filter=\"[[$:/plugins/flibbles/relink]] +[has[title]]\" emptyMessage=<<relink-plugin-notExisted>> >\nUse //Relink// to update title across all other tiddlers\n</$list>\n</$checkbox>"},"$:/plugins/kookma/commander/config/systemfields":{"title":"$:/plugins/kookma/commander/config/systemfields","tags":"","type":"text/vnd.tiddlywiki","text":"title text tags \ncreated modified craetor modifier \ntype bag revision\nlist caption"},"$:/plugins/kookma/commander/field/macros/add":{"title":"$:/plugins/kookma/commander/field/macros/add","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define add-new-field-bulk(datafieldsTid:\"\")\n<$list filter=\"[subfilter<searchfilter>!is[missing]limit[1]]\" variable=ignore><!--check if filter is empty -->\n<<create-log-tiddler \"add-new-field-bulk\">>\n<$vars datafieldsTid=<<__datafieldsTid__>> >\n<$list filter=\"[subfilter<searchfilter>]\" variable=\"newTitle\">\n<<add-bulk-fields>>\n<$wikify name=newFields text=<<getFieldsname>> >\n<$macrocall $name=\"log-add-single-operation\" msg={{{[<newFields>addprefix[new fields:]addsuffix[added]]}}} tidItem=<<newTitle>> />\n</$wikify>\n</$list>\n</$vars>\n</$list>\n\\end\n<!-- from TiddlyWiki 5.2.0, field name with mixed case is allowed -->\n\\define getFieldsname()\n<$list filter=\"[<__datafieldsTid__>indexes[]prefix[fldn]]\" variable=item>\n{{{ [<__datafieldsTid__>getindex<item>trim[]] }}} \n</$list>\n\\end"},"$:/plugins/kookma/commander/field/macros/bulkfields":{"title":"$:/plugins/kookma/commander/field/macros/bulkfields","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define numfilter() [range[1,$(flt)$]]\n\\define id_fldName() fldn$(cnt)$\n\\define id_fldValue() fldv$(cnt)$\n\n<!-- from TiddlyWiki 5.2.0, field name with mixed case is allowed -->\n\\define add-bulk-fields()\n<$set name=\"flt\" tiddler=<<datafieldsTid>> field=\"counter\" emptyValue=\"1\"><!-- when the datafieldsTid is not exist, there is at least one field row -->\n<$list filter=<<numfilter>> variable=\"cnt\">\n<$list filter=\"[<datafieldsTid>getindex<id_fldName>]\" variable=\"newField\">\n<$action-setfield $tiddler=<<newTitle>> \n $field={{{ [<newField>trim[]] }}}\n $value={{{ [<datafieldsTid>getindex<id_fldValue>] }}} />\n</$list>\n</$list>\n</$set>\n\\end\n\n\\define getInputs()\n<$edit-text tiddler=<<datafieldsTid>> index=<<id_fldName>> tag=input default=\"\" placeholder=\"field name\" />\n<$edit-text tiddler=<<datafieldsTid>> index=<<id_fldValue>> tag=input default=\"\" placeholder=\"field value\"/>\n\\end\n\n\\define add-reset()\n<$button>insert\n<$action-setfield $tiddler=<<datafieldsTid>> counter={{{[<datafieldsTid>get[counter]add[1]]~[[2]]}}}/>\n</$button>\n<$button>reset\n<$action-setfield $tiddler=<<datafieldsTid>> counter=\"1\"/>\n<$action-setfield $tiddler=<<datafieldsTid>> text=\"\"/>\n</$button>\n\\end\n\n\\define create-field-inputbox()\n<$wikify name=flt text={{{ [<datafieldsTid>get[counter]]~[[1]] }}} >\n<$list filter=<<numfilter>> variable=cnt>\n\n<<getInputs>>\n</$list>\n</$wikify>\n\\end\n\n\\define add-more-fields-ui(datafieldsTid:\"\")\n<$vars datafieldsTid=<<__datafieldsTid__>> >\n<<add-reset>>\n<<create-field-inputbox>>\n</$vars>\n\\end\n\n\\define add-more-fields-selective-ui(datafieldsTid:\"\", stateTiddler:\"$:/state/commander/tiddler-addfields-status\")\n<$checkbox \n tiddler=<<__stateTiddler__>>\n field=\"text\" \n checked=\"addfields\" unchecked=\"nofields\"\n default=\"nofields\" > \n Add fields\n</$checkbox>\n<$reveal type=\"match\" state=<<__stateTiddler__>> text=\"addfields\" default=\"nofields\" >\n<$vars datafieldsTid=<<__datafieldsTid__>> >\n<<add-reset>>\n<div style=\"padding-left:88px;\">\n<<create-field-inputbox>>\n</div>\n</$vars>\n</$reveal>\n\\end"},"$:/plugins/kookma/commander/field/macros/remove":{"title":"$:/plugins/kookma/commander/field/macros/remove","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define remove-old-field-bulk(oldField:\"\")\n<$list filter=\"[subfilter<searchfilter>!is[missing]limit[1]]\" variable=ignore><!--check if filter is empty -->\n<$list filter=\"[<__oldField__>!is[blank]]\">\n<<create-log-tiddler \"remove-old-field-bulk\">>\n<$list filter=\"[subfilter<searchfilter>]+[!is[missing]]+[has:field[$oldField$]]\">\n<$fieldmangler>\n<$action-sendmessage $message=\"tm-remove-field\" $param=<<__oldField__>> />\n</$fieldmangler>\n<$macrocall $name=\"log-add-single-operation\" msg=\"\"\"old field `$oldField$` removed\"\"\" tidItem=<<currentTiddler>> />\n</$list>\n</$list>\n</$list>\n\\end\n\n\\define set-field-value-bulk(fieldName:\"Empty\", fieldValue:\"Empty\")\n<$list filter=\"[subfilter<searchfilter>!is[missing]limit[1]]\" variable=ignore><!--check if filter is empty -->\n<$list filter=\"[<__fieldName__>!is[blank]]\" variable=null>\n<$list filter=\"[<__fieldValue__>!is[blank]]\" variable=null>\n<<create-log-tiddler \"set-field-value-create-bulk\">>\n<$list filter=\"[subfilter<searchfilter>]-[$fieldName$[$fieldValue$]]\">\n<$list filter=\"[<currentTiddler>has:field[$fieldName$]]\" variable=ignore \nemptyMessage=\"\"\"<$macrocall $name=\"log-add-single-operation\" msg=\"//has not `$fieldName$` field. Operation ignored//\" tidItem=<<currentTiddler>> />\"\"\" >\n<$action-setfield $field=<<__fieldName__>> $value=<<__fieldValue__>> />\n<$macrocall $name=\"log-add-single-operation\" msg=\"\"\"field `$fieldName$` got a value\"\"\" tidItem=<<currentTiddler>> />\n</$list>\n</$list>\n</$list>\n</$list>\n</$list>\n\\end\n\n"},"$:/plugins/kookma/commander/field/macros/rename":{"title":"$:/plugins/kookma/commander/field/macros/rename","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define rename-field-bulk(oldField:\"\", newField:\"\")\n<$list filter=\"[subfilter<searchfilter>!is[missing]limit[1]]\" variable=ignore>\n<$list filter=\"[<__oldField__>!is[blank]]\" variable=null>\n<$list filter=\"[<__newField__>!is[blank]]\" variable=null>\n<<create-log-tiddler \"rename-field-bulk\">>\n<$list filter=\"[subfilter<searchfilter>]\">\n<$list filter=\"[<currentTiddler>has:field[$oldField$]]\" variable=ignore\n emptyMessage=\"\"\"<$macrocall $name=\"log-add-single-operation\" msg=\"//has not field `$oldField$`. Operation ignored.//\" tidItem=<<currentTiddler>> /> \"\"\">\n<$set name=oldValue tiddler=<<currentTiddler>> field=<<__oldField__>> >\t\n<$action-setfield $tiddler=<<currentTiddler>> $field=<<__newField__>> $value=<<oldValue>>/>\n</$set>\n<$action-deletefield $tiddler=<<currentTiddler>> $field=<<__oldField__>> />\n<$macrocall $name=\"log-add-single-operation\" msg=\"\"\"field `$oldField$` renamed to `$newField$`\"\"\" tidItem=<<currentTiddler>> />\n</$list>\n</$list>\n</$list>\n</$list>\n</$list>\n\\end\n"},"$:/plugins/kookma/commander/field/macros/set":{"title":"$:/plugins/kookma/commander/field/macros/set","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define set-field-value-bulk(fieldName:\"\", fieldValue:\"\")\n<$list filter=\"[subfilter<searchfilter>!is[missing]limit[1]]\" variable=ignore><!--check if filter is empty -->\n<$list filter=\"[<__fieldName__>!is[blank]]\" variable=null>\n<$list filter=\"[<__fieldValue__>!is[blank]]\" variable=null>\n<<create-log-tiddler \"set-field-value-create-bulk\">>\n<$list filter=\"[subfilter<searchfilter>]-[$fieldName$[$fieldValue$]]\">\n<$list filter=\"[<currentTiddler>has:field[$fieldName$]]\" variable=ignore \nemptyMessage=\"\"\"<$macrocall $name=\"log-add-single-operation\" msg=\"//has not `$fieldName$` field. Operation ignored//\" tidItem=<<currentTiddler>> />\"\"\" >\n<$action-setfield $field=<<__fieldName__>> $value=<<__fieldValue__>> />\n<$macrocall $name=\"log-add-single-operation\" msg=\"\"\"field `$fieldName$` got a value\"\"\" tidItem=<<currentTiddler>> />\n</$list>\n</$list>\n</$list>\n</$list>\n</$list>\n\\end\n\n"},"$:/plugins/kookma/commander/field/ui":{"title":"$:/plugins/kookma/commander/field/ui","caption":"Field","list-after":"$:/plugins/kookma/commander/tag/ui","tags":"$:/tags/Commander","type":"text/vnd.tiddlywiki","text":"<<tabs \ntabsList:\"[all[shadows+tiddlers]tag[$:/tags/Commander/FieldOps]!has[draft.of]]\"\ndefault:\"$:/plugins/kookma/commander/field/uicomp/add-fields\" \nclass:\"tc-vertical cmd-tab-colorful cmd-tab-wd\"\n>>\n\n"},"$:/plugins/kookma/commander/field/uicomp/add-fields":{"title":"$:/plugins/kookma/commander/field/uicomp/add-fields","caption":"Add fields","tags":"$:/tags/Commander/FieldOps","type":"text/vnd.tiddlywiki","text":"<!-- create the interface-->\n<$macrocall $name=\"add-more-fields-ui\" datafieldsTid=\"$:/temp/commander/tiddler/datafields/addfield\" />\n\n\n<!-- call action macro -->\n<$button class=\"cmd-btn cmd-btn-wd\"> Add new fields\n<$macrocall $name=\"add-new-field-bulk\" \n datafieldsTid=\"$:/temp/commander/tiddler/datafields/addfield\" />\n</$button><br>\n,,Note: This will overwrite the existing fileds!,,"},"$:/plugins/kookma/commander/field/uicomp/remove-fields":{"title":"$:/plugins/kookma/commander/field/uicomp/remove-fields","caption":"Remove fields","list-after":"$:/plugins/kookma/commander/field/uicomp/add-fields","tags":"$:/tags/Commander/FieldOps","type":"text/vnd.tiddlywiki","text":"<label class=\"kk-cmd-label\">Old field</label><$select class=\"cmd-select-wd\" tiddler=\"$:/temp/commander/field-remove\" default=\"\">\n<$list filter=\"[subfilter<searchfilter>fields[]sort[]] -title -tags\" >\n<option><$view field=\"title\"/></option>\n</$list>\n</$select>\n<$button class=\"cmd-btn cmd-btn-wd\"> Remove old field\n<$macrocall $name=\"remove-old-field-bulk\" oldField={{$:/temp/commander/field-remove}} />\n</$button>"},"$:/plugins/kookma/commander/field/uicomp/rename-fields":{"title":"$:/plugins/kookma/commander/field/uicomp/rename-fields","caption":"Rename fields","list-after":"$:/plugins/kookma/commander/field/uicomp/remove-fields","tags":"$:/tags/Commander/FieldOps","type":"text/vnd.tiddlywiki","text":"<label class=\"kk-cmd-label\">Old field</label><$select class=\"cmd-select-wd\" \n tiddler=\"$:/temp/commander/rename-field/old\" default=\"\" >\n<$list filter=\"[subfilter<searchfilter>fields[]sort[]] -[<systemFieldsTid>get[text]split[ ]]\" > \n<option><$view field=\"title\"/></option>\n</$list>\n</$select>\n\n<label class=\"kk-cmd-label\">New field</label><$edit-text\ntiddler=\"$:/temp/commander/rename-field/new\"\ntag=\"input\"\ndefault=\"\"\nclass=\"cmd-txt-area\"\nplaceholder=\" new field name\"\n/>\n<$button class=\"cmd-btn cmd-btn-wd\"> Rename field\n<$macrocall $name=\"rename-field-bulk\" \noldField={{$:/temp/commander/rename-field/old}} \nnewField={{{ [[$:/temp/commander/rename-field/new]get[text]trim[]] }}} />\n</$button>\n\n<!--\nFrom TW 5.2.0 field name can have mixed case and space, so all restrictions are released.\n-->"},"$:/plugins/kookma/commander/field/uicomp/set-field-value":{"title":"$:/plugins/kookma/commander/field/uicomp/set-field-value","caption":"Set field value","list-after":"$:/plugins/kookma/commander/field/uicomp/rename-fields","tags":"$:/tags/Commander/FieldOps","type":"text/vnd.tiddlywiki","text":"<label class=\"kk-cmd-label\">Field name</label><$select class=\"cmd-select-wd\" \n tiddler=\"$:/temp/commander/field-name\" default=\"\" >\n<$list filter=\"[subfilter<searchfilter>fields[]sort[]] -[<systemFieldsTid>get[text]split[ ]]\" >\n<option><$view field=\"title\"/></option>\n</$list>\n</$select>\n\n<label class=\"kk-cmd-label\">Field value</label><$edit-text\ntiddler=\"$:/temp/commander/field-value\"\ntag=\"input\" default=\"\"\nclass=\"cmd-txt-area\" placeholder=\" field value\"/>\n<$button class=\"cmd-btn cmd-btn-wd\"> Set field value\n<$macrocall \n $name=\"set-field-value-bulk\" \n fieldName={{$:/temp/commander/field-name}} \n fieldValue={{$:/temp/commander/field-value}} \n/>\n</$button>"},"$:/plugins/kookma/commander/filters/Drafts":{"title":"$:/plugins/kookma/commander/filters/Drafts","description":"{{$:/language/Filters/Drafts}}","filter":"[has[draft.of]sort[title]]","tags":"$:/tags/Commander/Filter","type":"text/vnd.tiddlywiki"},"$:/plugins/kookma/commander/filters/geneal":{"title":"$:/plugins/kookma/commander/filters/geneal","description":"General filter","filter":"[all[shadows+tiddlers]search[your keywrods]]","tags":"$:/tags/Commander/Filter","type":"text/vnd.tiddlywiki"},"$:/plugins/kookma/commander/filters/Missing":{"title":"$:/plugins/kookma/commander/filters/Missing","description":"{{$:/language/Filters/Missing}}","filter":"[all[missing]sort[title]]","tags":"$:/tags/Commander/Filter","type":"text/vnd.tiddlywiki"},"$:/plugins/kookma/commander/filters/Orphans":{"title":"$:/plugins/kookma/commander/filters/Orphans","description":"{{$:/language/Filters/Orphans}}","filter":"[all[orphans]sort[title]]","tags":"$:/tags/Commander/Filter","type":"text/vnd.tiddlywiki"},"$:/plugins/kookma/commander/filters/RecentSystemTiddlers":{"title":"$:/plugins/kookma/commander/filters/RecentSystemTiddlers","description":"{{$:/language/Filters/RecentSystemTiddlers}}","filter":"[has[modified]!sort[modified]limit[50]]","tags":"$:/tags/Commander/Filter","type":"text/vnd.tiddlywiki"},"$:/plugins/kookma/commander/filters/RecentTiddlers":{"title":"$:/plugins/kookma/commander/filters/RecentTiddlers","description":"{{$:/language/Filters/RecentTiddlers}}","filter":"[!is[system]has[modified]!sort[modified]limit[50]]","tags":"$:/tags/Commander/Filter","type":"text/vnd.tiddlywiki"},"$:/plugins/kookma/commander/filters/SessionTiddlers":{"title":"$:/plugins/kookma/commander/filters/SessionTiddlers","description":"Tiddlers modified since the wiki was loaded","filter":"[haschanged[]]","tags":"$:/tags/Commander/Filter","type":"text/vnd.tiddlywiki"},"$:/plugins/kookma/commander/filters/StoryList":{"title":"$:/plugins/kookma/commander/filters/StoryList","description":"{{$:/language/Filters/StoryList}}","filter":"[list[$:/StoryList]] -$:/AdvancedSearch","tags":"$:/tags/Commander/Filter","type":"text/vnd.tiddlywiki"},"$:/plugins/kookma/commander/filters/temp-and-state":{"title":"$:/plugins/kookma/commander/filters/temp-and-state","description":"Temporary and state tiddlers","filter":"[prefix[$:/temp]] [prefix[$:/state]]","tags":"$:/tags/Commander/Filter","type":"text/vnd.tiddlywiki"},"$:/plugins/kookma/commander/help/ui":{"title":"$:/plugins/kookma/commander/help/ui","caption":"Help","icon":"$:/core/images/help","list-after":"$:/plugins/kookma/commander/setting/ui","tags":"$:/tags/Commander","type":"text/vnd.tiddlywiki","text":"<<tabs \ntabsList:\"[all[shadows+tiddlers]tag[$:/tags/Commander/Help]!has[draft.of]]\" \ndefault:\"$:/plugins/kookma/commander/help/uicomp/quick-tutorial\"\nclass:\"tc-vertical cmd-tab-colorful cmd-tab-wd\">>\n\n\n"},"$:/plugins/kookma/commander/help/uicomp/quick-tutorial":{"title":"$:/plugins/kookma/commander/help/uicomp/quick-tutorial","caption":"Quick tutorial","tags":"$:/tags/Commander/Help","type":"text/vnd.tiddlywiki","text":"# Use ''Combo search'' to list possible tiddlers\n#* example: `concept` performs a standard search and find all matches in title, text, and tags\n#* example: `[tag[xx]]` finds all tiddlers tagged with //xx//\n#* example: `[prefix[tt]` finds all tiddlers have title started with //tt//\n#* example: `[has[draft.of]sort[title]]` finds all draft tiddlers\n\n# Use ''Select tiddlers'' for the resulting list to identify which specific tiddlers to do a batch operation on\n#* this step lets you to do a batch operation on selected tiddlers NOT all items by ''Combo search''!\n#* it is possible to select/deselect all tiddlers from ''Combo search'' result at once! Note that, by default all tiddlers are considered for bulk operation until selective operation is activated!\n# From ''Batch operations tabs'' select the batch operation you wish to perform on selected tiddlers\n#* example: title, tag, and field operations\n#* example: Snr operation\n#* Inspect tab can be used to inspect tiddlers before or after performing operations\n\n* Notes:\n** Multiple batch operations can be done on the same set (unless you change something in the search criteria)\n** Sometimes it is useful to use an intermediate batch to help, like tag tiddlers with a \"working\" tag, using multiple searches, then then use the \"working\" tag to apply a batch operation to\n\n<div class=\"commander-alert\">''Note'': For good operation a tiddler width of 800px is recommended. You can also use //Sidebar layout// as `Fluid story`.</div>\n\n\nFor detailed docummention go to [[Demo page|https://kookma.github.io/TW-Commander/]]\n\n!!! Footenote\n# [[Use filter expression|https://tiddlywiki.com/prerelease/#Filters:Filters%20%5B%5BFilter%20Expression%5D%5D%20%5B%5BFilter%20Syntax%5D%5D%20%5B%5BFilter%20Operators%5D%5D%20%5B%5BFilter%20Parameter%5D%5D%20%5B%5BFilter%20Run%5D%5D%20%5B%5BFilter%20Step%5D%5D%20%5B%5BFilter%20Whitespace%5D%5D]]"},"$:/plugins/kookma/commander/help/uicomp/regular-expression":{"title":"$:/plugins/kookma/commander/help/uicomp/regular-expression","caption":"Regular expressions","list-after":"$:/plugins/kookma/commander/help/uicomp/snr","tags":"$:/tags/Commander/Help","type":"text/vnd.tiddlywiki","text":"!! Regular Expressions Quick Reference\n\n|FLAGS |<|<|h\n| i |ignore case|case insensitive matching|\n| |whole words|match strings of a-z, 0-9 and _|\n| g |global|field start=^, field end=$, all matches|\n| m |multi-line|line start=^, line end=$, first match|\n| |first match|field start=^, field end=$, first match|\n|MATCH |<|<|h\n|''Anchors''|<|<|\n| ^ |start of scope|see Flags, match is zero length|\n| $ |end of scope|see Flags, match is zero length|\n| \\b |word boundary|anchor to edge of word, zero length|\n| \\B |not word boundary|anchor inside word, zero length|\n|''Character Classes''|<|<|\n| [c] |class of characters|any one matches, e.g. [abc123]|\n| [^c] |negated class of characters|any one doesn't match, e.g. [^abc123]|\n|''Shorthand Character Classes'' |<|<|\n| . |any character except newline|same as [^\\n]|\n| \\d |decimal|same as [0-9]|\n| \\D |not decimal|same as [^0-9]|\n| \\s |white-space|same as [\\ \\t\\n]|\n| \\S |not white-space|same as [^\\ \\t\\n]|\n| \\t |tab|same as [\\t]|\n| \\n |newline|same as [\\n]|\n| \\w |word character|same as [a-zA-Z0-9_]|\n| \\W |not word character|same as [^a-zA-Z0-9_]|\n|''Capturing Groups''|<|<|\n| (match) |match placed in variable $x|can be used in Replace|\n| (\\x) |repeats match pattern of $x|can be used in Replace|\n|''Quantifiers''|<|<|\n| ? |single match|match 0 or 1 time|\n| * |greedy match 0+|match 0 or as many times as possible|\n| *? |lazy match 0+|match 0 or as few times as possible|\n| + |greedy match 1+|match 1 or as many times as possible|\n| +? |lazy match 1+|match 1 or as few times as possible|\n| {x} |match x times|match x times|\n| {x,y} |match x to y times|match x times to exactly y times|\n| {x,} |match x or more times|match x times or as many as possible|\n|''Escapes''|<|<|\n| \\ |escape special characters|add to \\ [ ] ( ) { } ^ $ . ? * + for literals|\n|REPLACE |<|<|h\n| $& |return the full match|<|\n| $x |return $x where x is the numeric index of a Capturing Group|<|\n|NOTE |<|<|h\n|This Reference supports most ordinary uses of regular expressions.<br> For advanced options: [[MDN Reference|https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions#Using_simple_patterns]]; examples: [[regular-expressions.info|https://www.regular-expressions.info/tutorial.html]].|<|<|\n\n"},"$:/plugins/kookma/commander/help/uicomp/relink":{"title":"$:/plugins/kookma/commander/help/uicomp/relink","caption":"Relink on rename","list-after":"$:/plugins/kookma/commander/help/uicomp/regular-expression","tags":"$:/tags/Commander/Help","type":"text/vnd.tiddlywiki","text":"!! Relink on rename\nWhen Tiddler Commander is used to rename bulk tiddlers in operation like\n\n* Title operation\n** add/remove prefix\n** add/remove suffix\n** remove chars from the begining or end of title\n* ~SnR\n** Search and replace in tiddlers title\n\nIt is possible to update all links to title. This includes //tags// and //list//. If [[Relink|https://flibbles.github.io/tw5-relink/]] plugin is installed, then not only title will be updated in //tags// and //list// field, but also in all filters, transclusions, text field and evrywhere.\n\n<div class=\"commander-alert\"> ''Note'': Relink does not update all forms of title e.g those created from different segments, but it will update any occurances</div>\n\n\n!! How to integrate with Relink?\n\nSimply install the [[Relink|https://flibbles.github.io/tw5-relink/]] plugin and it will be appeared as an option when Tiddler Commander title operations including ~SnR are performed!\n"},"$:/plugins/kookma/commander/help/uicomp/snr":{"title":"$:/plugins/kookma/commander/help/uicomp/snr","caption":"Search-n-Replace","list-after":"$:/plugins/kookma/commander/help/uicomp/quick-tutorial","tags":"$:/tags/Commander/Help","type":"text/vnd.tiddlywiki","text":"!! Search and replace using Snr\nSnr stands for search and replace, is a powerful tool uses regular expression for searching all fields and lets replace chars, words, phrases with new values.\n\n!! How to use\n* Enter a search filter or keywords in ''Combo search'' box like `[tag[myTag]]` or `concept`\n* Use ''Select tiddlers'' for the resulting list to identify which specific tiddlers to do a Snr operation on\n** If selective operation is unchecked, all tiddlers from step one will be included in Snr operation.\n* From ''Tiddler title'' drop down menu select a tiddler\n* From ''Field name'' drop down menu select a tiddler field like `text`\n** all fileds even `title` can be selected\n* In the ''Search text'' type the search term for example `this`\n* In the ''Replace with'' type the term you want to replace with like `that`\n* Check the ''Differences'' and if you are satisfied with the result, press the `Replace?` button\n* You can press `Replace all?` if you want to search and replace in all selected tiddlers\n\n;Remarks\n: The `Replace all?` lets you to search and replace in all selected tiddlers at once! It is possible to search and replace even in `title` field!\n\n<$list filter=\"[[snr.png]is[tiddler]]\"><<image-pretty img:\"snr.png\" width:\"60%\" align:\"center\" caption:\"Fig 1. Search and replace using regular expression\">></$list>\n\n!! Special characters\n<<<\nAs `SNR` uses ''regexp'' pattern to make search and replace, when special characters are used in the ''Search text'' box, they shall be escaped among them are `*`, `+`, `[]`, `?` ...\nTo use these characters do like below\n\n```\n\\[ \\] \\( \\) \\{ \\} \\. \\* \\+ \\? \\^ \\$ \\\\ \\|\n```\n<<<\n\n!! Warning\n<<<\n* SNR replace the contents of tiddlers.<br> ''//The action can not be undone//''. So always make a backup before performing any replace action\n<<<"},"$:/plugins/kookma/commander/help/uicomp/warning":{"title":"$:/plugins/kookma/commander/help/uicomp/warning","caption":"Warning","list-after":"$:/plugins/kookma/commander/help/uicomp/relink","tags":"$:/tags/Commander/Help","type":"text/vnd.tiddlywiki","text":";Note i\n:Tiddler Commander is a very powerful tool, it can change any field in any tiddler.// Make sure what you are doing//!\n\n;Note ii\n:Tiddler Commander uses two steps tiddler selection. It uses a combo search box to screen (using standard or filter search) possible tiddlers and then uses a selective list of tiddlers from first step for batch operation!\n:# If selective operation is unchecked, then all tiddlers from step one are used for batch operation\n:# If selective operation is checked, then user has to manually select among tiddlers, and the selected ones are used for batch operation \n\n;Note iii\n://Commander do not perform operation on shadow tiddlers//, unless they are overriden. Because shadow tiddlers aren’t stored as ''real'' tiddlers. They are intentionally excluded from most operations by default so that they don’t clutter filters made by users unless explicitly required. \n\n<div class=\"commander-alert\">''Warning''\nBefore using Tiddler commander for bulk operation on your own valuable, irreplaceable data, ''backup them''.\n</div>"},"$:/plugins/kookma/commander/history":{"title":"$:/plugins/kookma/commander/history","tags":"","type":"text/vnd.tiddlywiki","text":"Full change log https://kookma.github.io/TW-Commander/#ChangeLog\n\n* ''2.1.5'' -- 2023.02.14 -- updated to Tiddlywiki 5.2.5\n* ''2.1.3'' -- 2021.10.24 -- commander icon fixed\n* ''2.1.2'' -- 2021.01.02 -- Saq Imtiaz release\n* ''2.1.0'' -- 2020.03.25 -- stable release\n* ''0.1.0'' -- 2019.02.12 -- mature public release\n"},"$:/plugins/kookma/commander/images/commander.svg":{"title":"$:/plugins/kookma/commander/images/commander.svg","caption":"file-alt (Regular)","type":"text/vnd.tiddlywiki","text":"<svg class=\"tc-image-file-alt tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 384 512\"><path d=\"M288 248v28c0 6.6-5.4 12-12 12H108c-6.6 0-12-5.4-12-12v-28c0-6.6 5.4-12 12-12h168c6.6 0 12 5.4 12 12zm-12 72H108c-6.6 0-12 5.4-12 12v28c0 6.6 5.4 12 12 12h168c6.6 0 12-5.4 12-12v-28c0-6.6-5.4-12-12-12zm108-188.1V464c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V48C0 21.5 21.5 0 48 0h204.1C264.8 0 277 5.1 286 14.1L369.9 98c9 8.9 14.1 21.2 14.1 33.9zm-128-80V128h76.1L256 51.9zM336 464V176H232c-13.3 0-24-10.7-24-24V48H48v416h288z\"/></svg>"},"$:/plugins/kookma/commander/inspect/comp/edit-fileds":{"title":"$:/plugins/kookma/commander/inspect/comp/edit-fileds","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define lingo-base() $:/language/EditTemplate/\n\\define config-title()\n$:/config/EditTemplateFields/Visibility/$(currentField)$\n\\end\n\n\\define config-filter()\n[[hide]] -[title{$(config-title)$}] \n\\end\n\n\\define new-field()\n<$vars name={{$:/temp/newfieldname}}>\n<$reveal type=\"nomatch\" text=\"\" default=<<name>>>\n<$button class=\"cmd-btn\">\n<$action-sendmessage $message=\"tm-add-field\"\n$name=<<name>>\n$value={{$:/temp/newfieldvalue}}/>\n<$action-deletetiddler $tiddler=\"$:/temp/newfieldname\"/>\n<$action-deletetiddler $tiddler=\"$:/temp/newfieldvalue\"/>\n<<lingo Fields/Add/Button>>\n</$button>\n</$reveal>\n<$reveal type=\"match\" text=\"\" default=<<name>>>\n<$button class=\"cmd-btn\">\n<<lingo Fields/Add/Button>>\n</$button>\n</$reveal>\n</$vars>\n\\end\n\n\\define compInspect-edit-fileds(commonFields:\"\")\n\n<div class=\"tc-edit-fields\">\n<table class=\"tc-edit-fields\">\n<tbody>\n<$list filter=\"[all[current]fields[]] +[sort[title]]\" variable=\"currentField\">\n<$list filter=<<config-filter>> variable=\"temp\">\n<tr class=\"tc-edit-field\">\n<td class=\"tc-edit-field-name\">\n<$text text=<<currentField>>/>:</td>\n<td class=\"tc-edit-field-value\">\n<$edit-text tiddler=<<currentTiddler>> field=<<currentField>> placeholder={{$:/language/EditTemplate/Fields/Add/Value/Placeholder}}/>\n</td>\n<td class=\"tc-edit-field-remove\">\n<$button class=\"tc-btn-invisible\" tooltip={{$:/language/EditTemplate/Field/Remove/Hint}} aria-label={{$:/language/EditTemplate/Field/Remove/Caption}}>\n<$action-deletefield $field=<<currentField>>/>\n{{$:/core/images/delete-button}}\n</$button>\n</td>\n</tr>\n</$list>\n</$list>\n\n\n<$list filter=\"created creator modified modifier -[enlist<__commonFields__>]\" variable=\"currentField\">\n<tr class=\"tc-edit-field\">\n<td class=\"tc-edit-field-name\">\n<$text text=<<currentField>>/>:</td>\n<td class=\"tc-edit-field-value\">\n<$edit-text tiddler=<<currentTiddler>> field=<<currentField>> placeholder={{$:/language/EditTemplate/Fields/Add/Value/Placeholder}}/>\n</td>\n<td class=\"tc-edit-field-remove\">\n<$button class=\"tc-btn-invisible\" tooltip={{$:/language/EditTemplate/Field/Remove/Hint}} aria-label={{$:/language/EditTemplate/Field/Remove/Caption}}>\n<$action-deletefield $field=<<currentField>>/>\n{{$:/core/images/delete-button}}\n</$button>\n</td>\n</tr>\n</$list>\n\n\n\n\n</tbody>\n</table>\n</div>\n\n<$fieldmangler>\n<div class=\"tc-edit-field-add\">\n<em class=\"tc-edit\">\n<<lingo Fields/Add/Prompt>>\n</em>\n<span class=\"tc-edit-field-add-name\">\n<$edit-text tiddler=\"$:/temp/newfieldname\" tag=\"input\" default=\"\" placeholder={{$:/language/EditTemplate/Fields/Add/Name/Placeholder}} focusPopup=<<qualify \"$:/state/popup/field-dropdown\">> class=\"tc-edit-texteditor tc-popup-handle\"/>\n</span>\n<$button popup=<<qualify \"$:/state/popup/field-dropdown\">> class=\"tc-btn-invisible tc-btn-dropdown\" tooltip={{$:/language/EditTemplate/Field/Dropdown/Hint}} aria-label={{$:/language/EditTemplate/Field/Dropdown/Caption}}>{{$:/core/images/down-arrow}}</$button>\n<$reveal state=<<qualify \"$:/state/popup/field-dropdown\">> type=\"nomatch\" text=\"\" default=\"\">\n<div class=\"tc-block-dropdown tc-edit-type-dropdown\">\n<$linkcatcher to=\"$:/temp/newfieldname\">\n<div class=\"tc-dropdown-item\">\n<<lingo Fields/Add/Dropdown/User>>\n</div>\n<$list filter=\"[!is[shadow]!is[system]fields[]search:title{$:/temp/newfieldname}sort[]] -created -creator -draft.of -draft.title -modified -modifier -tags -text -title -type\" variable=\"currentField\">\n<$link to=<<currentField>>>\n<<currentField>>\n</$link>\n</$list>\n<div class=\"tc-dropdown-item\">\n<<lingo Fields/Add/Dropdown/System>>\n</div>\n<$list filter=\"[fields[]search:title{$:/temp/newfieldname}sort[]] -[!is[shadow]!is[system]fields[]]\" variable=\"currentField\">\n<$link to=<<currentField>>>\n<<currentField>>\n</$link>\n</$list>\n</$linkcatcher>\n</div>\n</$reveal>\n<span class=\"tc-edit-field-add-value\">\n<$edit-text tiddler=\"$:/temp/newfieldvalue\" tag=\"input\" default=\"\" placeholder={{$:/language/EditTemplate/Fields/Add/Value/Placeholder}} class=\"tc-edit-texteditor\"/>\n</span>\n<span class=\"tc-edit-field-add-button\">\n<$macrocall $name=\"new-field\"/>\n</span>\n</div>\n</$fieldmangler>\n\\end"},"$:/plugins/kookma/commander/inspect/comp/edit-preview":{"title":"$:/plugins/kookma/commander/inspect/comp/edit-preview","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define compInspect-edit-preview(tiddler, commonFields:\"\")\n<div class=\"tc-edit-fields\">\n<table class=\"tc-edit-fields\">\n<tbody>\n<tr class=\"tc-edit-field\"><td class=\"tc-edit-field-name\">title:</td>\n<td class=\"tc-edit-field-value\"><$link to=<<__tiddler__>> ><$text text=<<__tiddler__>> /></$link></td>\n</tr>\n<tr class=\"tc-edit-field\"><td class=\"tc-edit-field-name\">tags:</td>\n<td class=\"tc-edit-field-value\">{{$tiddler$||$:/core/ui/EditTemplate/tags}}</td>\n</tr>\n<tr class=\"tc-edit-field\"><td class=\"tc-edit-field-name\">text:</td>\n<td class=\"tc-edit-field-value\"><$macrocall $name=compInspect-get-field tiddler=<<__tiddler__>> field=\"text\" tag=\"textarea\" /></td>\n</tr>\n</tbody>\n</table>\n</div>\n\n<$tiddler tiddler=<<__tiddler__>> >\n<$macrocall $name=\"compInspect-edit-fileds\" commonFields=<<__commonFields__>> />\n</$tiddler>\n\\end\n\n\\define compInspect-get-field(tiddler, field, tag:\"input\") \n<$edit-text class=\"tc-edit-texteditor\" tiddler=<<__tiddler__>> field=<<__field__>> tag=<<__tag__>> default=\"\" placeholder={{$:/language/EditTemplate/Body/Placeholder}}/>\n\\end"},"$:/plugins/kookma/commander/inspect/comp/main":{"title":"$:/plugins/kookma/commander/inspect/comp/main","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define compInspect(filter, stateTiddler:\"thisTiddler\")\n<$set name=\"state\" \n value={{{ [[$:/state/compInspect/]addsuffix<__stateTiddler__>] }}} >\n<$vars\n slStateTid={{{ [<state>addsuffix[/]addsuffix[selectState-tiddler]] }}}\n rvStateTid={{{ [<state>addsuffix[/]addsuffix[revealState-tiddler]] }}}\n chStateTid={{{ [<state>addsuffix[/]addsuffix[checkboxState-tiddler]] }}} >\n\nSelect tiddler  <$macrocall $name=compSelect filter=<<__filter__>> stateTiddler=<<slStateTid>> />\n  \n<$macrocall $name=\"check-common-fields\" stateTiddler=<<chStateTid>> />\n  \n<$reveal stateTitle=<<rvStateTid>> type=\"nomatch\" text=\"edit\">\n<$button class=\"tc-btn-invisible\" setTitle=<<rvStateTid>> setTo=\"edit\" tooltip=\"edit tiddler\">{{$:/core/images/edit-button}}</$button>\n<$macrocall $name=compInspect-show-preview tiddler={{{ [<slStateTid>get[text]]+[subfilter<__filter__>] }}} commonFields={{{ [<chStateTid>get[text]] }}}/>\n</$reveal>\n<$reveal stateTitle=<<rvStateTid>> type=\"match\" text=\"edit\">\n<$button class=\"tc-btn-invisible\" setTitle=<<rvStateTid>> setTo=\"\" tooltip=\"confirm changes\">{{$:/core/images/done-button}}</$button>\n<$macrocall $name=compInspect-edit-preview tiddler={{{ [<slStateTid>get[text]]+[subfilter<__filter__>] }}} commonFields={{{ [<chStateTid>get[text]] }}}/>\n</$reveal>\n\n</$vars>\n</$set>\n\\end\n\n\\define check-common-fields(stateTiddler)\n<$vars commonFields={{{[<commonFieldsTid>get[text]]}}}>\n<$checkbox \n tiddler=<<__stateTiddler__>>\n field=\"text\" \n checked=<<commonFields>>\n unchecked=\"\"\n default=\"\"\n> Exclude common fields?</$checkbox>\n</$vars>\n\\end"},"$:/plugins/kookma/commander/inspect/comp/select":{"title":"$:/plugins/kookma/commander/inspect/comp/select","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define compSelect(filter:\"\", stateTiddler:\"\", default:\"\", class:\"\", showButtons:\"show\")\n<$select tiddler=<<__stateTiddler__>> default=<<__default__>> class=<<__class__>> >\n<option value=\"\">None</option>\n<$list filter=<<__filter__>> variable=item>\n<option value=<<item>>><$text text=<<item>> /></option>\n</$list>\n</$select>\n<$reveal type=\"match\" text=\"show\" default=<<__showButtons__>> >\n<$vars myfilter=<<__filter__>> mystateTiddler=<<__stateTiddler__>> myitem={{{ [<__stateTiddler__>get[text]] }}} >\n<$button actions=<<cs-prev-item>> class=\"cmd-btn\"> prev </$button>\n<$button actions=<<cs-next-item>> class=\"cmd-btn\"> next </$button>\n</$vars>\n</$reveal>\n\\end\n\n\\define cs-prev-item()\n<$list filter=\"[subfilter<myfilter>] +[before<myitem>]\" variable=\"prev-item\" >\n<$action-setfield $tiddler=<<mystateTiddler>> text=<<prev-item>> />\n</$list>\n\\end\n\n\\define cs-next-item()\n<$list filter=\"[subfilter<myfilter>] +[after<myitem>]\" variable=\"next-item\" >\n<$action-setfield $tiddler=<<mystateTiddler>> text=<<next-item>> />\n</$list>\n\\end\n\n<!-- used by\n - $:/plugins/kookma/commander/compInspect/main\n-->"},"$:/plugins/kookma/commander/inspect/comp/show-preview":{"title":"$:/plugins/kookma/commander/inspect/comp/show-preview","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define compInspect-show-preview(tiddler, commonFields:\"\")\n<$vars mainFields=\"title tags text\">\n<table class=\"cmd-ci-table\">\n<tr><td class=\"leftcol\">title</td>\n<td class=\"rightcol\"><$link to=<<__tiddler__>> ><$text text=<<__tiddler__>> /></$link></td>\n</tr>\n\n<tr><td class=\"leftcol\">tags</td>\n<td style=\"padding:3px;\"><$macrocall $name=showTags tiddler=<<__tiddler__>> /></td>\n</tr>\n<tr><td class=\"leftcol\">text</td>\n<td><$transclude tiddler=<<__tiddler__>> field=\"text\" mode=\"block\"/></td>\n</tr>\n<$list filter=\"[<__tiddler__>fields[]] -[enlist<mainFields>] -[enlist<__commonFields__>]\" variable=\"otherFld\">\n<tr><td class=\"leftcol\"><<otherFld>></td>\n<td class=\"rightcol\"><$transclude tiddler=<<__tiddler__>> field=<<otherFld>> mode=\"inline\"/></td>\n</tr>\n</$list>\n</table>\n</$vars>\n\\end\n\n\\define showTags(tiddler)\n<$list filter=\"[<__tiddler__>tags[]]\" variable=tagItem >\n<$macrocall $name=tag tag=<<tagItem>> />\n</$list>\n\\end\n"},"$:/plugins/kookma/commander/inspect/ui":{"title":"$:/plugins/kookma/commander/inspect/ui","caption":"Inspect","list-after":"$:/plugins/kookma/commander/field/ui","tags":"$:/tags/Commander","type":"text/vnd.tiddlywiki","text":"<<tabs \ntabsList:\"[all[shadows+tiddlers]tag[$:/tags/Commander/InspectOps]!has[draft.of]]\" \ndefault:\"$:/plugins/kookma/commander/inspect/uicomp/Inspection\"\nclass:\"tc-vertical cmd-tab-wd\">>\n"},"$:/plugins/kookma/commander/inspect/uicomp/Inspection":{"title":"$:/plugins/kookma/commander/inspect/uicomp/Inspection","caption":"Inspect","tags":"$:/tags/Commander/InspectOps","type":"text/vnd.tiddlywiki","text":"<$macrocall \n $name=compInspect\n filter=<<searchfilter>>\n stateTiddler=\"commander\"\n/>"},"$:/language/Buttons/Commander/Caption":{"title":"$:/language/Buttons/Commander/Caption","tags":"","type":"text/vnd.tiddlywiki","text":"commander"},"$:/language/Buttons/Commander/Hint":{"title":"$:/language/Buttons/Commander/Hint","tags":"","type":"text/vnd.tiddlywiki","text":"Tiddler Commander"},"$:/plugins/kookma/commander/license":{"title":"$:/plugins/kookma/commander/license","tags":"","type":"text/vnd.tiddlywiki","text":"Distributed under an MIT license.\n\nCopyright (c) 2018-2020 [[Mohammad Rahmani|https://github.com/kookma]]\n\n<<<\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n<<<"},"$:/plugins/kookma/commander/log/ui":{"title":"$:/plugins/kookma/commander/log/ui","caption":"Log status","tags":"","type":"text/vnd.tiddlywiki","text":"<div class=\"commander-alert\" style=\"padding:5px;font-size:0.90em;\">\n<$button class=\"tc-btn-invisible tc-tiddlylink\" actions=<<delete-all-log-tiddlers>>>Clear log</$button>\n<$set name=\"resultCount\" value=\"\"\"<$count filter=\"[tag[$:/tags/Commander/LogOps]]\" />\"\"\">\n<div class=\"tc-search-results\">\n<span class=\"kk-commander-log-note\">Recent number of operations: <<resultCount>></span><br>\n<$list filter=\"[tag[$:/tags/Commander/LogOps]] +[!sort[created]]\" variable=\"logTid\">\n<b><$view tiddler=<<logTid>> field=\"created\" format=\"date\" template=\"YYYY-0MM-0DD 0hh:0mm:0ss\"/> \n<$view tiddler=<<logTid>> field=\"caption\">\n <$view tiddler=<<logTid>> field=\"title\"></$view>\n</$view>\n</b>\n<ol><$list filter=\"[<logTid>indexes[]]\" variable=\"item\">\n<li><$link to=<<item>>><<item>></$link>\n<$set name=\"myItem\" tiddler=<<logTid>> index=<<item>> >\n<$list filter=\"[<myItem>!search[existed]]\" variable=\"ignore\" \n emptyMessage=\"\"\"<span style=\"color:red;\"><<myItem>></span>\"\"\" >\n<span class=\"kk-commander-log-item\"><<myItem>></span>\n</$list>\n</$set>\n</li>\n</$list></ol>\n</$list>\n</div>\n</$set>\n</div>"},"$:/plugins/kookma/commander/macros/compConfirmAction":{"title":"$:/plugins/kookma/commander/macros/compConfirmAction","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define compConfirmAction(\nbtnLabel:\"Delete these tiddlers\", \nconfirmMessage:\"Are you sure you wish to delete\", \nstateTiddler:\"\"\ncountFilter:\"\", \nactionMacro:\"\")\n<$set name=resultCount value={{{ [subfilter<__countFilter__>count[]] }}} >\n<$reveal type=\"gt\" text=\"0\" default=<<resultCount>> >\n<$button popup=<<qualify \"\"\"$stateTiddler$\"\"\">> class=\"cmd-btn\">$btnLabel$</$button>\n</$reveal>\n<$reveal state=<<qualify \"\"\"$stateTiddler$\"\"\">> type=\"popup\" position=\"belowleft\" animate=\"yes\">\n<div class=\"tc-block-dropdown-wrapper\">\n<div class=\"tc-block-dropdown tc-edit-type-dropdown\">\n<div class=\"tc-dropdown-item-plain\">\n$confirmMessage$ <<resultCount>> tiddler(s)?\n</div>\n<div class=\"tc-dropdown-item-plain\">\n<$button class=\"cmd-btn\"> $btnLabel$\n<$macrocall $name=<<__actionMacro__>> />\n</$button>\n</div>\n</div>\n</div>\n</$reveal>\n</$set>\n\\end"},"$:/plugins/kookma/commander/macros/definition":{"title":"$:/plugins/kookma/commander/macros/definition","description":"some macro are not used REMOVE THEM","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define tempPath() $:/temp/commander\n\n\\define searchboxTid() $(tempPath)$/search-box\n\\define selectiveOpsTid() $(tempPath)$/selective-operation\n\n\n\\define workingTag() $:/tags/Commander/Working\n\\define exportTagTid() $:/temp/commander/exportTag\n\\define systemFieldsTid() $:/plugins/kookma/commander/config/systemfields\n\\define commonFieldsTid() $:/plugins/kookma/commander/config/commonfields"},"$:/plugins/kookma/commander/macros/logging":{"title":"$:/plugins/kookma/commander/macros/logging","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define set-title() $:/temp/commander/logs/tid-{{{[tag[$:/tags/Commander/LogOps]count[]add[1]]}}}\n\n\\define create-log-tiddler(msg)\n<$wikify name=\"myTitle\" text=\"\"\"<<set-title>>\"\"\">\n<$wikify name=\"myCaption\" text=\"\"\"<$macrocall $name=\"set-caption\" msg=<<__msg__>> />\"\"\">\n<$action-createtiddler $basetitle=<<myTitle>>\n$savetitle=\"$:/state/commander/log-tiddler\"\ntags=\"$:/tags/Commander/LogOps\"\ntype=\"application/json\"\ncaption=<<__msg__>>\n/>\n</$wikify>\n</$wikify>\n\\end\n\n\\define log-add-single-operation(msg:\"commander operation\", tidItem:\"no item\")\n<$action-setfield $tiddler={{$:/state/commander/log-tiddler}} $index=<<__tidItem__>> $value=<<__msg__>> />\n\\end\n\n\n\\define delete-all-log-tiddlers()\n<$action-deletetiddler $filter=\"[tag[$:/tags/Commander/LogOps]]\" />\n\\end"},"$:/plugins/kookma/commander/macros/remove-workingtag":{"title":"$:/plugins/kookma/commander/macros/remove-workingtag","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define remove-working-tag(oldTag)\n<$list filter=\"[all[shadows+tiddlers]tag<workingTag>limit[1]]\" variable=ignore>\n<<create-log-tiddler \"remove-workingTag\">>\n<$list filter=\"[all[shadows+tiddlers]tag<workingTag>]\">\n<$fieldmangler>\n<$action-sendmessage $message=\"tm-remove-tag\" $param=<<__oldTag__>> />\n</$fieldmangler>\n<$macrocall $name=\"log-add-single-operation\" msg=\"\"\"working tag `$oldTag$` removed\"\"\" tidItem=<<currentTiddler>> />\n</$list>\n</$list>\n\\end\n\n\n"},"$:/plugins/kookma/commander/macros/slider":{"title":"$:/plugins/kookma/commander/macros/slider","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define commander-slider(title, default:\"closed\")\n<$set name=\"revealState\" value=<<qualify \"$:/state/commander/reveal/$title$\">>>\n<h3>\n <$reveal type=\"nomatch\" state=<<revealState>> text=\"open\" default=\"$default$\">\n <$button class=\"tc-btn-invisible tc-tiddlylink\" set=<<revealState>> setTo=\"open\">\n {{$:/core/images/right-arrow}}\n </$button>\n </$reveal>\n <$reveal type=\"match\" state=<<revealState>> text=\"open\" default=\"$default$\">\n <$button class=\"tc-btn-invisible tc-tiddlylink\" set=<<revealState>> setTo=\"closed\">\n {{$:/core/images/down-arrow}}\n </$button>\n </$reveal>\n <$view tiddler=\"$title$\" field=\"caption\">\n <$view tiddler=\"$title$\" field=\"title\"></$view>\n </$view>\n</h3>\n\n<$reveal type=\"match\" state=<<revealState>> text=\"open\" default=\"$default$\">\n<$transclude tiddler=\"$title$\" mode=\"block\" />\n</$reveal>\n</$set>\n\\end"},"$:/plugins/kookma/commander/macros/utility":{"title":"$:/plugins/kookma/commander/macros/utility","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define display(label,text)\n<$set name=\"stateTid\" value=\"$:/temp/commander/display/popup/$label$\" >\n<$button popup=<<stateTid>> class=\"tc-btn-invisible\"><span style=\"text-decoration: underline\">$label$</span></$button>\n<$reveal type=\"nomatch\" text=\"\" default=\"\" state=<<stateTid>> animate=\"yes\">\n<span style=\"color:blue;\"><$text text=<<__text__>> /></span></$reveal>\n</$set>\n\\end\n\n\\define is-filterSeearch-newer-than-selectedTitles(TidA, TidB)\n<$set name=\"tidAMod\" value={{{ [[$TidA$]get[modified]] }}}>\n<$set name=\"tidBMod\" value={{{ [[$TidB$]get[modified]] }}}>\n<$set name=\"tidAText\" value={{{ [[$TidA$]get[text]] }}}>\n<$set name=\"tidBText\" value={{{ [[$TidB$]get[text]] }}}>\n<$list filter=\"[<__TidB__>get[text]minlength[1]]\" variable=ignore>\n<$reveal type=\"nomatch\" default=<<tidAText>> text=<<tidBText>>>\n<$list filter=\"[<tidAMod>] [<tidBMod>] +[nsort[]last[1]removesuffix<tidBMod>]\">\nA new filter search has been detected, click on the search button to apply it.\n</$list>\n</$reveal>\n</$list>\n</$set>\n</$set>\n</$set>\n</$set>\n\\end\n\n!!Remarks\n;is-filterSeearch-newer-than-selectedTitles\n* Checks `TidA` and `TidB` for modified date and text\n* If They are not empty, then\n** checks if the text of two are equal, if not\n** checks to see if `TidB` is newer or not\n** if newer shows a message, to apply the new search filter\n* Note\n** `TidA=\"$:/temp/commander\"`\n** `TidB=\"$:/temp/commander/search-box\"`\n* is-filterSeearch-newer-than-selectedTitles is called from $:/plugins/kookma/commander/search/ui\n\n;display\n* gets a label and a text\n* create an inline label\n* on click label, the text is displayed as temporary popup\n* losing focus, the text goes hidden\n* this macro is used in customized compSelective to show the active filter"},"$:/plugins/kookma/commander/readme":{"title":"$:/plugins/kookma/commander/readme","tags":"","type":"text/vnd.tiddlywiki","text":"; Tiddler Commander\nTiddler Commander, in short ''Commander'' is a unique tool for batch operations on tiddlers. Commander has the below features\n\n* Bulk tiddler creation/deletion\n* Combo search to filter and select tiddlers\n* Title operation: add, remove prefixes and suffixes, also remove cahras form begining and end of title (on renaming tiddlers, [[relink|$:/plugins/kookma/commander/help/uicomp/relink]] can be used to update title in other tiddlers)\n* Tag operation: add, remove, replace\n* Field operation: add, remove, rename, and set field value\n* SNR, search and replace in all fields including text, tags, //title//, and common fields\n* Inspect, to review and inspect tiddlers in one place, scroll among them and edit all fields (including common fields), tags, text (title is an exception!)\n* Log, create logs of all operations\n* Search, //save and load// any combination of filter search\n\n; Start Commander\n* Normally Commander adds its icon: <span class=\"cmd-doc\">{{$:/plugins/kookma/commander/images/commander.svg}}</span> to page controls.\n* Open the right sidebar and click on the <span class=\"cmd-doc\">{{$:/plugins/kookma/commander/images/commander.svg}}</span> Commander is started\n* In standard Tiddlywiki, control buttons are shown on the right sidebar under site title.\n\n; Code and demo\nFor learning plugin features, syntax, tutorial and examples see the plugin demo and code pages\n\n* Demo: https://kookma.github.io/TW-Commander/\n* Code: https://github.com/kookma/TW-Commander\n\n<style>\n.cmd-doc svg{\nwidth: 1.2em;\nheight: 1.2em;\nvertical-align: middle;}\n</style>"},"$:/plugins/kookma/commander/search/filter-button/clear":{"title":"$:/plugins/kookma/commander/search/filter-button/clear","list-after":"$:/plugins/kookma/commander/search/filter-button/search","tags":"$:/tags/Commander/Search/FilterButton","type":"text/vnd.tiddlywiki","text":"\\import $:/plugins/kookma/commander/macros/definition\n\n<$reveal type=\"nomatch\" stateTitle=<<searchboxTid>> stateField=\"text\" text=\"\">\n<$button class=\"tc-btn-invisible\" tooltip=\"clear search box and selected tiddlers\">\n<$action-setfield $tiddler=<<searchboxTid>> $field=\"text\" $value=\"\"/>\n<$action-setfield $tiddler=\"$:/temp/commander\" $field=\"text\" $value=\"\"/>\n<$action-setfield $tiddler=\"$:/state/commander/snr/select-tiddler\" $field=\"text\" $value=\"\"/><!-- SNR selection -->\n<$action-setfield $tiddler=\"$:/state/compInspect/temp/commander/selectState-tiddler\" $field=\"text\" $value=\"\"/> <!-- Inspect selection -->\n{{$:/core/images/close-button}}\n</$button>\n</$reveal>\n\n<!--\nthere is extra action should be removed\n-->"},"$:/plugins/kookma/commander/search/filter-button/dropdown":{"title":"$:/plugins/kookma/commander/search/filter-button/dropdown","tags":"$:/tags/Commander/Search/FilterButton","type":"text/vnd.tiddlywiki","text":"\\import $:/plugins/kookma/commander/macros/definition\n\\whitespace trim\n\n<span class=\"tc-popup-keep\">\n<$button popup=<<qualify \"$:/state/commander/filterDropdown\">> class=\"tc-btn-invisible\" tooltip=\"select a search filter\">\n{{$:/core/images/down-arrow}}\n</$button>\n</span>\n\n<$reveal state=<<qualify \"$:/state/commander/filterDropdown\">> type=\"popup\" position=\"belowleft\" animate=\"yes\">\n<$set name=\"tv-show-missing-links\" value=\"yes\">\n<$linkcatcher to=<<searchboxTid>> >\n<div class=\"tc-block-dropdown-wrapper\">\n<div class=\"tc-block-dropdown tc-edit-type-dropdown\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Commander/Filter]!is[draft]]\">\n<$link to={{!!filter}}><$let tv-wikilinks=\"no\"><$transclude field=\"description\"/></$let></$link>\n</$list>\n</div>\n</div>\n</$linkcatcher>\n</$set>\n</$reveal>"},"$:/plugins/kookma/commander/search/filter-button/save":{"title":"$:/plugins/kookma/commander/search/filter-button/save","list-after":"$:/plugins/kookma/commander/search/filter-button/clear","tags":"$:/tags/Commander/Search/FilterButton","type":"text/vnd.tiddlywiki","text":"\\import $:/plugins/kookma/commander/macros/definition\n\n<$reveal type=\"nomatch\" stateTitle=<<searchboxTid>> stateField=\"text\" text=\"\">\n<$button class=\"tc-btn-invisible\" tooltip=\"save current search\" popup=<<qualify \"$:/state/commander/SaveDropdown\">> >\n{{$:/core/images/file}}\n</$button>\n</$reveal>\n\n<$reveal state=<<qualify \"$:/state/commander/SaveDropdown\">> type=\"popup\" class=\"tc-popup-keep\" position=\"belowleft\" animate=\"yes\">\n<div class=\"tc-block-dropdown-wrapper\">\n<div class=\"tc-block-dropdown tc-edit-type-dropdown\">\n<div class=\"tc-dropdown-item-plain\">\nSave new search filter<br><br>\n<$edit-text\ntiddler=\"$:/temp/commander/save-new-filter\"\ntag=\"input\"\ndefault=\"\"\nclass=\"cmd-txt-area\"\nplaceholder=\"description for new filter\"\n/> <br><br>\n\n<$button class=\"tc-btn\"> Save new filter\n<$macrocall $name=\"create-new-filter\" \n description={{$:/temp/commander/save-new-filter}} \n\tbasetitle=\"$:/plugins/kookma/commander/filters/yourFilter\" \n\tfilter={{{[<searchboxTid>get[text]]}}} \t/>\n<$action-deletetiddler $tiddler=\"$:/temp/commander/save-new-filter\"/>\n<$action-deletetiddler $tiddler=<<qualify \"$:/state/commander/SaveDropdown\">> />\n</$button>\n</div>\n</div>\n</div>\n</$reveal>\n\n<!-- ToDO\ncorrect classes for textbox\n-->"},"$:/plugins/kookma/commander/search/macros/create-new-filter":{"title":"$:/plugins/kookma/commander/search/macros/create-new-filter","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define create-new-filter(description:\"\", basetitle:\"\", filter:\"\")\n<$list filter=\"[<__description__>!is[blank]]\" variable=\"ignore\">\n<$action-createtiddler \n $basetitle=\"\"\"$basetitle$\"\"\"\n tags=\"$:/tags/Commander/Filter\"\n description=<<__description__>>\n filter=\"\"\"$filter$\"\"\"\n /> \n</$list>\n\\end\n"},"$:/plugins/kookma/commander/search/macros/select-deselect":{"title":"$:/plugins/kookma/commander/search/macros/select-deselect","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define select-all()\n<$list filter=\"[subfilter<filtertext>!is[missing]!tag<workingTag>]\">\n<$fieldmangler>\n<$action-sendmessage $message=\"tm-add-tag\" $param=<<workingTag>> />\n</$fieldmangler>\n\\end\n\n\\define deselect-all()\n<$list filter=\"[tag<workingTag>]\">\n<$fieldmangler>\n<$action-sendmessage $message=\"tm-remove-tag\" $param=<<workingTag>> />\n</$fieldmangler>\n\\end"},"$:/plugins/kookma/commander/search/macros/warning":{"title":"$:/plugins/kookma/commander/search/macros/warning","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define warn-for-selectedTids-from-previous-operation()\n<$list filter=\"[tag<workingTag>]-[subfilter<filtertext>]+[count[]!match[0]] \">\n<span style=\"color:red;font-size:0.85em\">There are remained selected tiddlers from previous search! Remove them by pressing ''deselect all''!</span>\n</$list>\n\\end"},"$:/plugins/kookma/commander/search/selection":{"title":"$:/plugins/kookma/commander/search/selection","caption":"Select tiddlers","type":"text/vnd.tiddlywiki","text":"\\import $:/plugins/kookma/commander/macros/definition\n<$checkbox tiddler=<<selectiveOpsTid>> field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"no\" uncheckactions=<<deselect-all>> > Selective operation?</$checkbox>\n\n<$reveal type=\"nomatch\" stateTitle=<<selectiveOpsTid>> stateField=\"text\" text=\"yes\" tag=\"div\" class=\"kk-commander-tiddler-list kk-commander-columns3\">\n<$list filter=\"[subfilter<filtertext>!prefix[$:/temp/commander]!is[missing]]\"><$link/><br></$list>\n</$reveal>\n<$reveal type=\"match\" stateTitle=<<selectiveOpsTid>> stateField=\"text\" text=\"yes\" tag=\"div\">\n<$button actions=<<select-all>> > Select all</$button> <$button actions=<<deselect-all>> > Deselect all</$button>\n<small style=\"margin-left:10px;\">Number of tiddlers selected: <$count filter=\"[tag<workingTag>]\" /></small><br>\n<<warn-for-selectedTids-from-previous-operation>>\n</$reveal>\n\n\n<$reveal type=\"match\" stateTitle=<<selectiveOpsTid>> stateField=\"text\" text=\"yes\" tag=\"div\" class=\"kk-commander-tiddler-list kk-commander-columns3\">\n<$list filter=\"[subfilter<filtertext>!prefix[$:/temp/commander]!is[missing]]\">\n<$checkbox tag=<<workingTag>>> <$link/></$checkbox><br>\n</$list>\n</$reveal>\n\n<!-- Description\nThis tiddler implement interface to selectivly add tiddlers for commander operations.\nEach selected tiddler gets a working tag\n-->"},"$:/plugins/kookma/commander/search/ui":{"title":"$:/plugins/kookma/commander/search/ui","caption":"Commander filter search","code-body":"yes","type":"text/vnd.tiddlywiki","text":"<div class=\"tc-search tc-advanced-search\" style=\"margin-bottom:-12px;\"><!-- negative margin for displaying matches -->\nCombo search  <$edit-text tiddler=<<searchboxTid>> type=\"search\" tag=\"input\" default=\"\" placeholder=\"enter keywords or make a filter search e.g. [tag[myTag]]\" focus={{$:/plugins/kookma/commander/config/AutoFocus}}/>\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Commander/Search/FilterButton]!has[draft.of]]\"><$transclude/></$list>\n</div>"},"$:/plugins/kookma/commander/setting/ui":{"title":"$:/plugins/kookma/commander/setting/ui","caption":"Setting","icon":"$:/core/images/options-button","list-after":"$:/plugins/kookma/commander/inspect/ui","tags":"$:/tags/Commander","type":"text/vnd.tiddlywiki","text":"<<tabs \ntabsList:\"[all[shadows+tiddlers]tag[$:/tags/Commander/Setting]!has[draft.of]]\" \ndefault:\"$:/plugins/kookma/commander/setting/uicomp/snr\"\nclass:\"tc-vertical cmd-tab-colorful cmd-tab-wd\">>\n"},"$:/plugins/kookma/commander/setting/uicomp/delete-all-temp-tiddlers":{"title":"$:/plugins/kookma/commander/setting/uicomp/delete-all-temp-tiddlers","caption":"Temporary tiddlers","list-after":"$:/plugins/kookma/commander/setting/uicomp/relink","tags":"$:/tags/Commander/Setting","type":"text/vnd.tiddlywiki","text":"\\define delete-all-temps()\n<$action-deletetiddler $filter=\"[search:title[$:/temp/commander/]]\" />\n\\end\n\n<$set name=numTids value={{{ [search:title[$:/temp/commander/]count[]] }}}>\n<$reveal type=\"match\" text=\"0\" default=<<numTids>> >\nNo temporary tiddlers is existed to delete!\n</$reveal>\n<$reveal type=\"gt\" text=\"0\" default=<<numTids>> >\nNumber of temporary tiddlers (including log tiddlers): <<numTids>><br>\n</$reveal>\n</$set>\n\n<$macrocall $name=\"compConfirmAction\"\nbtnLabel=\"Delete temp tiddlers\" \nconfirmMessage=\"Are you sure you wish to delete\"\nstateTiddler=\"$:/state/commander/setting/delete-temps\"\ncountFilter=\"[search:title[$:/temp/commander/]]\"\nactionMacro=\"delete-all-temps\"/>"},"$:/plugins/kookma/commander/setting/uicomp/minlength":{"title":"$:/plugins/kookma/commander/setting/uicomp/minlength","caption":"Search minimum length","tags":"$:/tags/Commander/Setting","type":"text/vnd.tiddlywiki","text":"Controls the minimum length of a search string before results are displayed.\n\n<label class=\"kk-cmd-label\">Minlength</label><$edit-text tiddler=\"$:/plugins/kookma/commander/config/minlength\" field=text default=3 placeholder=\"enter a number\" tag=input/>"},"$:/plugins/kookma/commander/setting/uicomp/search-filters":{"title":"$:/plugins/kookma/commander/setting/uicomp/search-filters","caption":"Search filter","tags":"$:/tags/Commander/Setting","type":"text/vnd.tiddlywiki","text":"The below list shows the Commander search filter. To edit click on the link and edit tiddler for filter syntax or description\n\n<details>\n<summary>Commander saved filter search</summary>\n<dl>\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/Commander/Filter]]\" >\n<dt><$link/></dt>\n<dd><span style=\"display:inline-block;font-weight:700;width:100px\">Description:</span><$view field=\"description\"/></dd>\n<dd><span style=\"display:inline-block;font-weight:700;width:100px\">Filter:</span><$view field=\"filter\"/></dd>\n</$list>\n</dl>\n</details>"},"$:/plugins/kookma/commander/setting/uicomp/snr":{"title":"$:/plugins/kookma/commander/setting/uicomp/snr","caption":"Snr setting","tags":"$:/tags/Commander/Setting","type":"text/vnd.tiddlywiki","text":"<<snr-difftext-cleanup>>\n<div style=\"padding-left:25px;font-size:0.9em\">\n\nThe cleanup attribute determines which optional post-processing should be applied to the diffs:\n\n* none: no cleanup is performed\n* semantic (default): rewrites the diffs for human readability\n* efficient: rewrites the diffs to minimise the number of operations for subsequent processing\n</div>"},"$:/plugins/kookma/commander/snr/macros/actions":{"title":"$:/plugins/kookma/commander/snr/macros/actions","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define regexp-flags()\n{{$:/config/commander/snr/gm}}{{$:/config/commander/snr/case-sensitive}}{{$:/config/commander/snr/unicode}}\n\\end\n\n\\define snr-ui-show-diffs()\n<form class=\"cmd-snr-form\" style=\"width:100%;\">\n <fieldset>\n <legend style=\"color:#FF0000;\">Differences</legend>\nTiddler: <$link to={{$:/state/commander/snr/select-tiddler}}><$text text={{$:/state/commander/snr/select-tiddler}}/></$link>\n\n<$wikify name=flags text=<<regexp-flags>> >\n\n<$macrocall $name=\"replace-text-diff\" \n tiddler={{$:/state/commander/snr/select-tiddler}} \n field={{$:/state/commander/snr/select-tiddler/field}} \n replace={{$:/state/commander/snr/replace-text}} \n replaceWith={{$:/state/commander/snr/replace-text-with}} \n flags=<<flags>> \n wholeWords={{$:/config/commander/snr/whole-words}}\n/>\n\n</$wikify>\n</fieldset>\n</form>\n\\end\n\n\\define snr-check-diffs(tiddler:\"\", field:\"\")\n\\whitespace trim\n<$wikify name=flags text=<<regexp-flags>> >\n<$wikify name=\"result\" text=\"\"\"\n<$macrocall $name=\"replace-text\" \n tiddler=<<__tiddler__>>\n field=<<__field__>>\n replace={{$:/state/commander/snr/replace-text}} \n replaceWith={{$:/state/commander/snr/replace-text-with}} \n flags=<<flags>> \n wholeWords={{$:/config/commander/snr/whole-words}}\n/>\"\"\">\n<$reveal type=\"match\" text={{{ [<__tiddler__>get<__field__>] }}} default=<<result>> >\nsame\n</$reveal>\n<$reveal type=\"nomatch\" text={{{ [<__tiddler__>get<__field__>] }}} default=<<result>> >\ndifferent\n</$reveal>\n</$wikify>\n</$wikify>\n\\end\n\n\\define search-replace-in-tiddler-field(tiddler:\"\",field:\"\",replace:\"\",replaceWith:\"\")\n<$wikify name=ss text=<<snr-check-diffs \"\"\"$tiddler$\"\"\" \"\"\"$field$\"\"\">> >\n<$list filter=\"[<ss>] -same\" variable=ignore>\n<$list filter=\"[<__tiddler__>has[title]]\" variable=\"ignore\">\n<$wikify name=flags text=<<regexp-flags>> >\n<$macrocall $name=\"replace-text-button\" \n tiddler=<<__tiddler__>> \n field=<<__field__>>\n replace=<<__replace__>>\n replaceWith=<<__replaceWith__>> \n flags=<<flags>> \n wholeWords={{$:/config/commander/snr/whole-words}}\n/>\n<$macrocall $name=\"log-add-single-operation\" msg=\"\"\"`$field$` field has been changed\"\"\" tidItem=<<__tiddler__>> />\n<$macrocall $name=\"clear-select-tiddler-if-field-is-title\" tiddler=<<__tiddler__>> field=<<__field__>> />\n</$wikify>\n</$list>\n</$list>\n</$wikify>\n\\end\n\n\\define clear-select-tiddler-if-field-is-title(tiddler, field)\n<$list filter=\"[<__field__>] +[search[title]]\" variable=\"ignore\">\n<$action-setfield $tiddler=\"$:/state/commander/snr/select-tiddler\" text=\"\"/>\n<$action-setfield $tiddler=\"$:/temp/commander/selected-titles\" $index=<<__tiddler__>> />\n</$list>\n\\end\n\n\\define search-replace-in-field-bulk()\n<$list filter=\"[subfilter<searchfilter>!is[missing]limit[1]]\" variable=ignore><!--check if filter is empty -->\n<<create-log-tiddler \"SNR operation\">>\n<$list filter=\"[subfilter<searchfilter>!is[missing]]\" >\n <$macrocall \n $name=\"search-replace-in-tiddler-field\"\n tiddler=<<currentTiddler>> \n field={{$:/state/commander/snr/select-tiddler/field}} \n replace={{$:/state/commander/snr/replace-text}} \n replaceWith={{$:/state/commander/snr/replace-text-with}} \n />\n</$list>\n</$list>\n\\end\n\n\\define search-replace-in-field-single-tiddler()\n<<create-log-tiddler \"SNR operation\">>\n <$macrocall \n $name=\"search-replace-in-tiddler-field\"\n tiddler={{$:/state/commander/snr/select-tiddler}}\n field={{$:/state/commander/snr/select-tiddler/field}} \n replace={{$:/state/commander/snr/replace-text}} \n replaceWith={{$:/state/commander/snr/replace-text-with}} \n />\n\\end\n\n\\define snr-actions()\n<$button actions=<<search-replace-in-field-single-tiddler>> tooltip=\"search and replace in a single tiddler\" class=\"cmd-btn\">\nReplace?\n</$button> \n<!-- replace in bulk tiddler with confirmation -->\n<$macrocall $name=\"compConfirmAction\"\ncountFilter=<<searchfilter>>\nactionMacro=\"search-replace-in-field-bulk\"\nstateTiddler=\"$:/state/commander/SelectiveReplaceAllDropdown\"\nconfirmMessage=\"Are you sure you wish to replace text in\" \nbtnLabel=\"Replace all?\"/>\n\\end"},"$:/plugins/kookma/commander/snr/macros/inputs":{"title":"$:/plugins/kookma/commander/snr/macros/inputs","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define snr-ui-inputs()\n<form class=\"cmd-snr-form\">\n <fieldset>\n <legend>Search and Replace</legend>\n\n<div class=\"item\">\n<label>Tiddler title</label>\n<$select tiddler=\"$:/state/commander/snr/select-tiddler\" default=\"\" class=\"cmd-snr-textbox\">\n<option value=\"\">None</option>\n<$list filter=\"[subfilter<searchfilter>]\" >\n<option value=<<currentTiddler>>><$text text=<<currentTiddler>>/></option>\n</$list>\n</$select>\n</div>\n\n<div class=\"item\">\n<label>Field name</label>\n<$select tiddler=\"$:/state/commander/snr/select-tiddler/field\" default=\"text\">\n<$list filter=\"[subfilter<searchfilter>fields[]]\">\n<option value=<<currentTiddler>>><$text text=<<currentTiddler>>/></option>\n</$list>\n</$select>\n</div>\n\n<div class=\"item\">\n<label>Search text</label>\n<$edit-text \n tiddler=\"$:/state/commander/snr/replace-text\" \n tag=\"input\" \n default=\"\" \n placeholder=\" text to replace\"\n class=\"cmd-snr-textbox\"/>\n</div>\n\n<div class=\"item\">\n<label>Replace with </label>\n<$edit-text \n tiddler=\"$:/state/commander/snr/replace-text-with\" \n tag=\"input\" \n default=\"\" \n placeholder=\" new text\"\n class=\"cmd-snr-textbox\"/>\n</div>\n<!-- Use relink to update titles -->\n<$list filter=\"[[$:/state/commander/snr/select-tiddler/field]get[text]match[title]]\" variable=ignore>\n<div class=\"item-relink\">{{$:/plugins/kookma/commander/config/relink}}</div>\n</$list>\n</fieldset>\n</form>\n\n\n\\end"},"$:/plugins/kookma/commander/snr/macros/regexp-flags":{"title":"$:/plugins/kookma/commander/snr/macros/regexp-flags","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define snr-regexp-flags()\n\n<form class=\"cmd-snr-form\">\n<fieldset>\n<legend>Search flags</legend>\n\n<$checkbox \n tiddler=\"$:/config/commander/snr/case-sensitive\" \n field=\"text\" \n checked=\"i\" \n unchecked=\"\"\n/>  ignore case<br>\n\n<$checkbox \n tiddler=\"$:/config/commander/snr/whole-words\" \n field=\"text\" \n checked=\"words\" \n unchecked=\"characters\"\n/>  whole words<br>\n\n<$checkbox \n tiddler=\"$:/config/commander/snr/unicode\" \n field=\"text\" \n checked=\"u\" \n unchecked=\"\"\n/>  unicode<br>\n\n<br>\n\n<$radio\n tiddler=\"$:/config/commander/snr/gm\" \n field=\"text\" \n value=\"\">  first match \n</$radio><br>\n\n<$radio\n tiddler=\"$:/config/commander/snr/gm\" \n field=\"text\" \n value=\"g\">  global match\n</$radio><br>\n\n<$radio\n tiddler=\"$:/config/commander/snr/gm\" \n field=\"text\" \n value=\"m\">  multiline mode\n</$radio><br>\n\n<$radio\n tiddler=\"$:/config/commander/snr/gm\" \n field=\"text\" \n value=\"mg\">  global multiline mode\n</$radio>\n\n</fieldset>\n</form>\n\\end"},"$:/plugins/kookma/commander/snr/macros/regexpsub.js":{"title":"$:/plugins/kookma/commander/snr/macros/regexpsub.js","text":"/*\\\ncreated: 20190214160253135\ntype: application/javascript\ntitle: $:/plugins/kookma/commander/snr/macros/regexpsub.js\nmodified: 20200307092210323\nmodule-type: macro\n\nMake regular expression substitutions\nDeveloped by Mark S\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n\"use strict\";\n\nexports.name = \"regexpsub\";\n\nexports.params = [\n\t{name: \"searchValue\"},\n\t{name: \"replaceValue\"},\n\t{name: \"sourceText\"},\n\t{name: \"flags\"},\n {name: \"wholeWords\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(searchValue, replaceValue, sourceText, flags = \"gi\", wholeWords = \"characters\") {\n \n try {\n \n\tvar searchText;\n if(wholeWords.toLowerCase() === 'words'){\n searchText = \"\\\\b\" + searchValue + \"\\\\b\";\n } else{\n searchText = searchValue;\n }\n\t\t\n searchText = new RegExp(searchText, flags);\n return sourceText.replace(searchText,replaceValue);\n\n } \n catch(err) { \n return \"ERROR IN REG EXPRESSION. YOU MAY NEED TO ESCAPE VALUES\"; \n }\n \n };\n\n})();\n","created":"20190214160253135","type":"application/javascript","modified":"20200307092210323","module-type":"macro"},"$:/plugins/kookma/commander/snr/macros/replace-text":{"title":"$:/plugins/kookma/commander/snr/macros/replace-text","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define nothing-to-replace(tiddler, field:\"text\") \n<$diff-text source={{{ [<__tiddler__>get<__field__>] }}} dest={{{ [<__tiddler__>get<__field__>] }}} />\n\\end\n\n\\define replace-text(tiddler:\"\",field:\"text\",replace:\"\",replaceWith:\"\",flags:\"\", wholeWords:\"\")\n\\whitespace trim\n<$wikify name=\"source\" text=\"\"\"<$view tiddler=<<__tiddler__>> field=<<__field__>> mode=\"block\" format=\"text\"/>\"\"\">\n<$wikify name=\"result\" \n text=\"\"\"<$macrocall $name=\"regexpsub\" $type=\"text/plain\" \n sourceText=<<source>> \n searchValue=<<__replace__>> \n replaceValue=<<__replaceWith__>> \n flags=<<__flags__>> \n wholeWords=<<__wholeWords__>> />\"\"\" \n >\n<$text text=<<result>>/>\n</$wikify>\n</$wikify>\n\\end\n\n\\define replace-text-diff(tiddler:\"\", field:\"text\", replace, replaceWith, flags:\"\", wholeWords:\"\")\n<$list filter=\"[<__tiddler__>get<__field__>minlength[1]]\" variable=null emptyMessage=\"No tiddler is selected, or tiddler is empty.\">\n<$list filter=\"[<__replace__>minlength[1]]\" variable=null emptyMessage=<<nothing-to-replace \"\"\"$tiddler$\"\"\" \"\"\"$field$\"\"\">> >\n\n<$wikify name=\"result\" \n text=\"\"\"<$macrocall $name=\"replace-text\" \n tiddler=<<__tiddler__>> field=<<__field__>> \n replace=<<__replace__>> \n replaceWith=<<__replaceWith__>> \n flags=<<__flags__>>\n wholeWords=<<__wholeWords__>> />\"\"\"\n >\n<$diff-text source={{{ [<__tiddler__>get<__field__>] }}} dest=<<result>> cleanup={{$:/state/commander/snr/setting/cleanup}}/>\n</$wikify>\n\n</$list>\n</$list>\n\\end\n\n\\define replace-text-button(tiddler:\"\", field:\"text\", replace:\"\", replaceWith:\"\", flags:\"\", wholeWords:\"\")\n\\whitespace trim\n<$list filter=\"[<__tiddler__>get<__field__>minlength[1]]\" variable=null>\n<$list filter=\"[<__replace__>minlength[1]]\" variable=null>\n<$wikify name=\"result\" \n text=\"\"\"<$macrocall $name=\"replace-text\" \n tiddler=<<__tiddler__>> \n field=<<__field__>> \n replace=<<__replace__>> \n replaceWith=<<__replaceWith__>> \n flags=<<__flags__>>\n wholeWords=<<__wholeWords__>> />\"\"\"\n >\n<$reveal type=\"nomatch\" default=\"title\" text=<<__field__>> >\n <$action-setfield $tiddler=<<__tiddler__>> $field=<<__field__>> $value=<<result>>/>\n</$reveal>\n<$reveal type=\"match\" default=\"title\" text=<<__field__>> >\n <$action-sendmessage $message=\"tm-rename-tiddler\" from=<<__tiddler__>> to=<<result>> />\n</$reveal>\n</$wikify>\n</$list>\n</$list>\n\\end\n"},"$:/plugins/kookma/commander/snr/ui":{"title":"$:/plugins/kookma/commander/snr/ui","caption":"Snr","icon":"$:/core/images/gitter","list-after":"$:/plugins/kookma/commander/inspect/ui","tags":"$:/tags/Commander","type":"text/vnd.tiddlywiki","text":"Search and replcae in tiddler fields!\n\n<<tabs \ntabsList:\"[all[shadows+tiddlers]tag[$:/tags/Commander/SnrOps]!has[draft.of]]\" \ndefault:\"$:/plugins/kookma/commander/snr/uicomp/replace-text\"\nclass:\"tc-vertical cmd-tab-colorful cmd-tab-wd\">>\n\n"},"$:/plugins/kookma/commander/snr/uicomp/replace-text":{"title":"$:/plugins/kookma/commander/snr/uicomp/replace-text","caption":"Search and replace","icon":"$:/core/images/gitter","tags":"$:/tags/Commander/SnrOps","type":"text/vnd.tiddlywiki","text":"<div class=\"cmd-snr-row\">\n<div class=\"cmd-snr-double-column\">\n<<snr-ui-inputs>>\n</div>\n<div class=\"cmd-snr-column\">\n<<snr-regexp-flags>> \n</div>\n</div>\n<<snr-ui-show-diffs>>\n<<snr-actions>>"},"$:/plugins/kookma/commander/styles/buttons":{"title":"$:/plugins/kookma/commander/styles/buttons","text":"/*\n.cmd-btn{\n\tfont-size:0.85em;\n\tfont-size:300;\n\tcolor: #666666;\n\tbackground-color: #d8d8d8;\n\tpadding: 3px 8px 3px 8px;\n\tborder: 1px solid #a1a1a1;\n}\n*/\n\n.cmd-btn-wd{\n\twidth:20ch;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/commander/styles/compInspect/table":{"title":"$:/plugins/kookma/commander/styles/compInspect/table","text":"/*compInspect table*/\n.cmd-ci-table{\n\tborder-collapse: collapse;\n}\n\n.cmd-ci-table .leftcol{\n\twidth:20%;\n\tvertical-align: top;\n\ttext-align: right;\n\tbackground-color:#f0f0f0;\n}\n.cmd-ci-table .rightcol{\n\twidth:650px;\n}\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/commander/styles/log":{"title":"$:/plugins/kookma/commander/styles/log","tags":"$:/tags/Stylesheet","type":"text/vnd.tiddlywiki","text":".commander-alert {\n\tpadding: 0.75rem 1.25rem;\n\tmargin-bottom: 1rem;\n\t/*border: 1px dotted gray;*/\n\tborder-radius: 0.25rem;\n\t\n\tcolor: <<colour message-foreground>>; /*#0c5460;*/\n\tbackground-color:<<colour message-background>>; /*#d1ecf1;*/\n\tborder-color: <<colour message-border>>; /*#bee5eb;*/\n}\n\n.kk-commander-log-note{\n\tfont-style:italic; font-size:small;\n}\n.kk-commander-log-item {\n\t/*color:green;*/\n}"},"$:/plugins/kookma/commander/styles/other":{"title":"$:/plugins/kookma/commander/styles/other","text":"\n/* This is missing and I added it */\n.cmd-txt-area{\n\tmin-width:25ch;\n}\n\n.cmd-txt-area2{\n\tmin-width:50ch;\n}\n\n/* Correct this later*/\n.kk-cmd-label{\n\tdisplay:inline-block;\n\twidth:85px;\n}\n\n.kk-cmd-label2{\n\tdisplay:inline-block;\n\twidth:120px;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/commander/styles/select-width":{"title":"$:/plugins/kookma/commander/styles/select-width","text":".cmd-sl{\n width:8ch;\n}\n\n.cmd-select-wd{\n min-width:25ch;\n}\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/commander/styles/snr/flexbox":{"title":"$:/plugins/kookma/commander/styles/snr/flexbox","text":".cmd-snr-row {\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n width: 100%;\n}\n.cmd-snr-column {\n display: flex;\n flex-direction: column;\n flex-basis: 100%;\n flex: 1\n}\n\n.cmd-snr-double-column {\n display: flex;\n flex-direction: column;\n flex-basis: 100%;\n flex: 2\n}\n\n@media screen and (min-width: 800px) {\n .cmd-snr-column {\n flex: 1\n }\n\n .cmd-snr-double-column {\n flex: 2\n }\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/commander/styles/snr/form":{"title":"$:/plugins/kookma/commander/styles/snr/form","text":".cmd-snr-form{\n width:100%;\n}\n\n.cmd-snr-textbox {\n width:100%;\n box-sizing: border-box;\n max-width:40ch;\n }\n\n.cmd-snr-form select, .cmd-snr-form input{\n margin: 0.2rem;\n}\n.cmd-snr-form legend{\n background: #f5f5f5;\n padding: 3px 6px;\n}\n\n.cmd-snr-form { padding:20px; }\n.cmd-snr-form .item { padding: 2px; margin:2px; }\n.cmd-snr-form .item label { display:inline-block; width:100px; margin-left:5px; }\n.cmd-snr-form .item input { display:inline-block; }\n.cmd-snr-form .item select { display:inline-block; }\n\n/* only for relink checkbox on renaming tiddler */\n.cmd-snr-form .item-relink { padding: 2px; margin:2px; }\n\n ","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/commander/styles/tiddler-list":{"title":"$:/plugins/kookma/commander/styles/tiddler-list","text":".kk-commander-tiddler-list {\n\tfont-size:small; \n\tborder-left:0.5px dotted grey;\n\tpadding-left:10px;\n\toverflow-y:auto;\n\tmax-width:100%;\n/*\tmax-height:$(height)$; */\n}\n\n.kk-commander-columns1 { display:block; column-count:1; column-gap:1em; }\n.kk-commander-columns2 { display:block; column-count:2; column-gap:1em; }\n.kk-commander-columns3 { display:block; column-count:3; column-gap:1em; }\n.kk-commander-columns4 { display:block; column-count:4; column-gap:1em; }\n.kk-commander-columns5 { display:block; column-count:5; column-gap:1em; }","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/commander/tag/macros/add-remove-replace":{"title":"$:/plugins/kookma/commander/tag/macros/add-remove-replace","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define add-new-tag-bulk(newTag:\"\")\n<$list filter=\"[subfilter<searchfilter>!is[missing]limit[1]]\" variable=ignore><!--check if filter is empty -->\n<$list filter=\"[<__newTag__>!is[blank]]\" variable=null>\n<<create-log-tiddler \"add-new-tag-bulk\">>\n<$list filter=\"[subfilter<searchfilter>!tag<__newTag__>]\">\n<$fieldmangler>\n<$action-sendmessage $message=\"tm-add-tag\" $param=<<__newTag__>> />\n</$fieldmangler>\n<$macrocall $name=\"log-add-single-operation\" msg=\"\"\"new tag `$newTag$` added\"\"\" tidItem=<<currentTiddler>> />\n</$list>\n</$list>\n</$list>\n\\end\n\n\\define remove-old-tag-bulk(oldTag:\"\")\n<$list filter=\"[subfilter<searchfilter>!is[missing]limit[1]]\" variable=ignore>\n<$list filter=\"[<__oldTag__>!is[blank]]\" variable=null>\n<<create-log-tiddler \"remove-old-tag-bulk\">>\n<$list filter=\"[subfilter<searchfilter>tag<__oldTag__>]\">\n<$fieldmangler>\n<$action-sendmessage $message=\"tm-remove-tag\" $param=<<__oldTag__>> />\n</$fieldmangler>\n<$macrocall $name=\"log-add-single-operation\" msg=\"\"\"old tag `$oldTag$` removed\"\"\" tidItem=<<currentTiddler>> />\n</$list>\n</$list>\n</$list>\n\\end\n\n\n\\define replace-tag-bulk(oldTag:\"\", newTag:\"\")\n<$list filter=\"[subfilter<searchfilter>!is[missing]limit[1]]\" variable=ignore>\n<$list filter=\"[<__oldTag__>!is[blank]]\" variable=null>\n<$list filter=\"[<__newTag__>!is[blank]]\" variable=null>\n<<create-log-tiddler \"replace-tag-bulk\">>\n<$list filter=\"[subfilter<searchfilter>]\">\n<$list filter=\"[<currentTiddler>tag<__oldTag__>]\" variable=ignore\n emptyMessage=\"\"\"<$macrocall $name=\"log-add-single-operation\" msg=\"//has not tag `$oldTag$`. Operation ignored.//\" tidItem=<<currentTiddler>> /> \"\"\">\n<$fieldmangler>\n<$action-sendmessage $message=\"tm-add-tag\" $param=<<__newTag__>> />\n<$action-sendmessage $message=\"tm-remove-tag\" $param=<<__oldTag__>> />\n</$fieldmangler>\n<$macrocall $name=\"log-add-single-operation\" msg=\"\"\"tag `$oldTag$` replaced with `$newTag$`\"\"\" tidItem=<<currentTiddler>> />\n</$list>\n</$list>\n</$list>\n</$list>\n</$list>\n\\end\n\n"},"$:/plugins/kookma/commander/tag/ui":{"title":"$:/plugins/kookma/commander/tag/ui","caption":"Tag","list-after":"$:/plugins/kookma/commander/title/ui","tags":"$:/tags/Commander","type":"text/vnd.tiddlywiki","text":"<<tabs \ntabsList:\"[all[shadows+tiddlers]tag[$:/tags/Commander/TagOps]!has[draft.of]]\" default:\"$:/plugins/kookma/commander/tag/uicomp/add-remove-tags\" \nclass:\"tc-vertical cmd-tab-wd\">>\n\n"},"$:/plugins/kookma/commander/tag/uicomp/add-remove-tags":{"title":"$:/plugins/kookma/commander/tag/uicomp/add-remove-tags","caption":"Add remove tags","tags":"$:/tags/Commander/TagOps","type":"text/vnd.tiddlywiki","text":"<label class=\"kk-cmd-label\">New tag</label><$edit-text\ntiddler=\"$:/temp/commander/tag-add-remove/new\"\ntag=\"input\"\ndefault=\"\"\nclass=\"cmd-txt-area\"\nplaceholder=\" new tag\"/>\n<$button class=\"cmd-btn cmd-btn-wd\"> Add new tag\n<$macrocall $name=\"add-new-tag-bulk\" newTag={{$:/temp/commander/tag-add-remove/new}} />\n</$button>\n\n<label class=\"kk-cmd-label\">Old tag</label><$select class=\"cmd-select-wd\" tiddler=\"$:/temp/commander/tag-add-remove/old\" default=\"\" >\n<$list filter=\"[subfilter<searchfilter>!is[missing]tags[]sort[]]-[<workingTag>]\" >\n<option><$view field=\"title\"/></option>\n</$list>\n</$select>\n<$button class=\"cmd-btn cmd-btn-wd\"> Remove old tag\n<$macrocall $name=\"remove-old-tag-bulk\" oldTag={{$:/temp/commander/tag-add-remove/old}} />\n</$button>\n\n"},"$:/plugins/kookma/commander/tag/uicomp/replace-tags":{"title":"$:/plugins/kookma/commander/tag/uicomp/replace-tags","caption":"Replace tags","list-after":"$:/plugins/kookma/commander/tag/uicomp/add-remove-tags","tags":"$:/tags/Commander/TagOps","type":"text/vnd.tiddlywiki","text":"<label class=\"kk-cmd-label\">Old tag</label><$select class=\"cmd-select-wd\" tiddler=\"$:/temp/commander/replace-tags/old\" default=\"\">\n<$list filter=\"[subfilter<searchfilter>!is[missing]tags[]sort[]]-[<workingTag>]\" >\n<option><$view field=\"title\"/></option>\n</$list>\n</$select>\n\n<label class=\"kk-cmd-label\">New tag</label><$edit-text\ntiddler=\"$:/temp/commander/replace-tags/new\"\ntag=\"input\"\ndefault=\"\"\nclass=\"cmd-txt-area\"\nplaceholder=\" new tag\"\n/>\n<$button class=\"cmd-btn cmd-btn-wd\"> Replace tag\n<$macrocall $name=\"replace-tag-bulk\" \noldTag={{$:/temp/commander/replace-tags/old}} \nnewTag={{$:/temp/commander/replace-tags/new}} />\n</$button>\n\n"},"$:/plugins/kookma/commander/template/base":{"title":"$:/plugins/kookma/commander/template/base","caption":"base","tags":"$:/tags/Commander/Template","type":"text/vnd.tiddlywiki","text":"This is a simple one!"},"$:/plugins/kookma/commander/template/doc":{"title":"$:/plugins/kookma/commander/template/doc","caption":"documentation","tags":"$:/tags/Commander/Template","type":"text/vnd.tiddlywiki","version":"beta","text":"!! Introduction\n<<<\nshort introduction\n<<<\n\n!! Content and parameters\n<<<\nThe content, attributes and parameters\n\n|!Parameter |!Description |\n|par1 |description |\n|par2 |description |\n<<<\n\n!! Example i\n<<<\nexample here\n<<<\n\n!! Example ii\n<<<\nanother example here\n<<<\n\n!! References\n<<<\n# one\n# Two\n<<<"},"$:/plugins/kookma/commander/template/simple":{"title":"$:/plugins/kookma/commander/template/simple","caption":"simple","tags":"$:/tags/Commander/Template","type":"text/vnd.tiddlywiki","version":"beta","text":"! Heading one\nThis is sunsection i\n\n!! Heading two\nThis is subsection ii.\n\n* one\n* two\n* three\n\n!!! Heading three\nThis is subsction iii\n\n```\nA sample code\n```\n\n!! Sample table\n|Table 1. This is caption|c\n|Heading one|Heading Two|Heading Three|h\n|r1|100|200|\n|r2|02|03|\n|r3|-1|-2|\n"},"$:/plugins/kookma/commander/tiddler/macros/create":{"title":"$:/plugins/kookma/commander/tiddler/macros/create","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define log-create(msg:\"Tiddler existed, operation ignored\")\n<$action-setfield $tiddler={{$:/state/commander/log-tiddler}} $index=\"$(newTitle)$\" $value=\"$msg$\" />\n\\end\n\n\\define bulk-tiddler-creator(baseTitle, baseTags, datafieldsTid, numberTiddler:\"1\")\n<$list filter=\"[<__baseTitle__>!is[blank]]\" variable=ignore>\n<<create-log-tiddler \"bulk-tiddler-creator\">>\n<$list filter=\"[range[9]addprefix[00]] [range[10,99]addprefix[0]] [range[100,500]] +[limit<__numberTiddler__>]\" variable=\"L1\">\n<$list filter=\"[<__baseTitle__>addsuffix<L1>]\" variable=\"newTitle\">\n<$list filter=\"[<newTitle>] -[has[title]]\" variable=\"ignore\" emptyMessage=<<log-create>> >\n<$action-createtiddler $basetitle=<<newTitle>> tags=<<__baseTags__>> /> \n<$vars datafieldsTid=<<__datafieldsTid__>> >\n<<add-bulk-fields>>\n</$vars>\n<<log-create \"Tiddler created\">>\n</$list>\n</$list>\n</$list>\n</$list>\n\\end\n\n\\define oneTid-with-template()\n<$tiddler tiddler=<<newTitle>> >\n <$action-setfield $tiddler=<<myTemplate>> title=<<currentTiddler>> /> \n <$fieldmangler>\n <$list filter=\"[enlist<myTags>]\" variable=newTag>\n <$action-sendmessage $message=\"tm-add-tag\" $param=<<newTag>> />\n </$list><!--next remove extra tag used by template from new created tiddler-->\n <$action-sendmessage $message=\"tm-remove-tag\" $param=\"$:/tags/Commander/Template\" />\n</$fieldmangler>\n</$tiddler>\n\\end\n\n\n\\define bulk-tiddler-with-template-creator(baseTitle, baseTags, datafieldsTid, numberTiddler:\"1\", template:\"\")\n<$list filter=\"[<__baseTitle__>!is[blank]]\" variable=ignore>\n<<create-log-tiddler \"bulk-tiddler-creator with template\">>\n<$vars datafieldsTid=<<__datafieldsTid__>>\n myTags=<<__baseTags__>> \n myTemplate=<<__template__>> >\n<$list filter=\"[range[9]addprefix[00]] [range[10,99]addprefix[0]] [range[100,500]] +[limit<__numberTiddler__>]\" variable=\"L1\">\n<$list filter=\"[<__baseTitle__>addsuffix<L1>]\" variable=\"newTitle\">\n<$list filter=\"[<newTitle>!has[title]]\" variable=\"ignore\" emptyMessage=<<log-create>> >\n <<oneTid-with-template>>\n <<add-bulk-fields>>\n <<log-create \"Tiddler created\">>\n</$list>\n</$list>\n</$list>\n</$vars>\n</$list>\n\\end\n\n"},"$:/plugins/kookma/commander/tiddler/macros/delete":{"title":"$:/plugins/kookma/commander/tiddler/macros/delete","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define log-delete-selectively(item, msg:\"Tiddler deleted\")\n<$action-setfield $tiddler={{$:/state/commander/log-tiddler}} $index=<<__item__>> $value=\"$msg$\" />\n\\end\n\n\\define delete-tiddlers-selective-bulk()\n<$list filter=\"[subfilter<searchfilter>limit[1]]\" variable=\"ignore\"><!-- at least searchfilter shall return one tiddler-->\n<<create-log-tiddler \"delete-tiddler-selectively\">>\n<$list filter=\"[subfilter<searchfilter>]\" variable=\"Item\">\n<$action-deletetiddler $tiddler=<<Item>> />\n<$macrocall $name=\"log-delete-selectively\" item=<<Item>> />\n</$list>\n</$list>\n\\end"},"$:/plugins/kookma/commander/tiddler/macros/export":{"title":"$:/plugins/kookma/commander/tiddler/macros/export","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define add-export-tag()\n<$list filter=<<searchfilter>> >\n<$fieldmangler>\n<$list filter=\"[enlist{$(exportTagTid)$}]~[[exported]]\" variable=\"exportTag\" ><!-- add all export tags-->\n<$action-sendmessage $message=\"tm-add-tag\" $param=<<exportTag>> />\n</$list>\n<$action-sendmessage $message=\"tm-remove-tag\" $param=<<workingTag>> />\n</$fieldmangler>\n</$list>\n\\end\n\n\\define remove-export-tag()\n<$list filter=<<searchfilter>> >\n<$fieldmangler>\n<$list filter=\"[<selectiveOpsTid>get[text]match[yes]]\" variable=ignore>\n<$action-sendmessage $message=\"tm-add-tag\" $param=<<workingTag>> />\n</$list>\n<$list filter=\"[enlist{$(exportTagTid)$}]~[[exported]]\" variable=\"exportTag\" ><!-- remove all export tags-->\n<$action-sendmessage $message=\"tm-remove-tag\" $param=<<exportTag>> />\n</$list>\n</$fieldmangler>\n</$list>\n\\end\n\n\\define log-export-selectively(msg:\"Tiddler exported\")\n<$list filter=\"[subfilter<searchfilter>]\" variable=\"item\">\n<$action-setfield $tiddler={{$:/state/commander/log-tiddler}} $index=<<item>> $value=\"$msg$\" />\n</$list>\n\\end\n\n\n\\define commander-exportButton(exportFilter:\"[!is[system]sort[title]]\",lingoBase,baseFilename:\"tiddlers\")\n<span class=\"tc-popup-keep\"><$button popup=<<qualify \"$:/state/popup/export\">> tooltip={{$lingoBase$Hint}} aria-label={{$lingoBase$Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/export-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$lingoBase$Caption}}/></span>\n</$list>\n</$button></span><$reveal state=<<qualify \"$:/state/popup/export\">> type=\"popup\" position=\"below\" animate=\"yes\">\n<div class=\"tc-drop-down\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Exporter]]\">\n<$set name=\"extension\" value={{!!extension}}>\n<$button class=\"tc-btn-invisible\">\n<<create-log-tiddler \"exportButton: bulk tiddlers exported\">>\n<$macrocall $name=\"log-export-selectively\"/><!--log any tiddler exported-->\n<<add-export-tag>><!-- by Mohammad-->\n<$action-sendmessage $message=\"tm-download-file\" $param=<<currentTiddler>> exportFilter=\"\"\"$exportFilter$\"\"\" filename=<<exportButtonFilename \"\"\"$baseFilename$\"\"\">>/>\n<$action-deletetiddler $tiddler=<<qualify \"$:/state/popup/export\">>/>\n<$transclude field=\"description\"/>\n<<remove-export-tag>><!-- by Mohammad-->\n</$button>\n</$set>\n</$list>\n</div>\n</$reveal>\n\\end"},"$:/plugins/kookma/commander/tiddler/ui":{"title":"$:/plugins/kookma/commander/tiddler/ui","caption":"Tiddler","list-before":"$:/plugins/kookma/commander/title/ui","tags":"$:/tags/Commander","type":"text/vnd.tiddlywiki","text":"<<tabs \ntabsList:\"[all[shadows+tiddlers]tag[$:/tags/Commander/TiddlerOps]!has[draft.of]]\"\ndefault:\"$:/plugins/kookma/commander/tiddler/uicomp/create-tiddlers\"\nclass:\"tc-vertical cmd-tab-colorful cmd-tab-wd\">>\n"},"$:/plugins/kookma/commander/tiddler/uicomp/create-tiddlers":{"title":"$:/plugins/kookma/commander/tiddler/uicomp/create-tiddlers","caption":"Create tiddlers","tags":"$:/tags/Commander/TiddlerOps","type":"text/vnd.tiddlywiki","text":"<label class=\"kk-cmd-label\">Base title</label>\n<$edit-text \n tiddler=\"$:/temp/commander/tiddler-base-title\" \n tag=\"input\" default=\"\"\n placeholder=\" base title\" \n class=\"cmd-txt-area\"/><br>\n\n<label class=\"kk-cmd-label\">Tags</label>\n<$edit-text \n tiddler=\"$:/temp/commander/tiddler-base-tags\" \n tag=\"input\" default=\"\"\n placeholder=\" tags\" \n class=\"cmd-txt-area\"\n/> \n\n<!-- add interface for adding fields -->\n<$macrocall $name=\"add-more-fields-selective-ui\"\n datafieldsTid=\"$:/temp/commander/tiddler/datafields/createTiddler\"\n stateTiddler=\"$:/state/commander/tiddler-addfields-status\" />\n\n\n<$checkbox \n tiddler=\"$:/state/commander/tiddler-template-status\" \n field=\"text\" \n checked=\"use-template\" unchecked=\"no-template\"\n default=\"no-template\"> \n Use template?\n</$checkbox>\n\n<$reveal type=\"match\" state=\"$:/state/commander/tiddler-template-status\" text=\"use-template\" default=\"no-template\" >\nTemplate\n<$select tiddler=\"$:/temp/commander/template-newtiddler\" \n default=\"$:/plugins/kookma/commander/template/base\">\n<$list filter='[all[shadows+tiddlers]tag[$:/tags/Commander/Template]]'>\n<option value=<<currentTiddler>> >\n<$view field=\"caption\"><$view field=\"title\"/></$view>\n</option>\n</$list>\n</$select>\n<$button class=\"tc-btn-invisible\"> {{$:/core/images/edit-button}}\n <$action-sendmessage $message=\"tm-edit-tiddler\" \n $param={{{ [[$:/temp/commander/template-newtiddler]get[text]]~[[$:/plugins/kookma/commander/template/base]] }}} />\n</$button>\n\n</$reveal>\n\nNumber of tiddlers  \n<$select tiddler=\"$:/temp/commander/tiddler-base-number\" default='1'>\n<$list filter='[range[1,19, 1]] [range[20,50, 5]] [range[60,100,10]] [range[200,500,100]]'>\n<option value=<<currentTiddler>>><$view field='title'/></option>\n</$list>\n</$select>\n\n<!-- call macros for create tiddlers -->\n<$reveal type=\"nomatch\" state=\"$:/state/commander/tiddler-template-status\" text=\"use-template\" default=\"no-template\">\n <$button class=\"cmd-btn cmd-btn-wd\"> Create tiddlers\n <$macrocall $name=\"bulk-tiddler-creator\"\n baseTitle={{$:/temp/commander/tiddler-base-title}}\n baseTags={{$:/temp/commander/tiddler-base-tags}}\n datafieldsTid=\"$:/temp/commander/tiddler/datafields/createTiddler\"\n numberTiddler={{$:/temp/commander/tiddler-base-number}} />\n </$button>\n</$reveal>\n<$reveal type=\"match\" state=\"$:/state/commander/tiddler-template-status\" text=\"use-template\" default=\"no-template\">\n <$button class=\"cmd-btn cmd-btn-wd\"> Create tiddlers\n <$macrocall $name=\"bulk-tiddler-with-template-creator\"\n baseTitle={{$:/temp/commander/tiddler-base-title}}\n baseTags={{$:/temp/commander/tiddler-base-tags}}\n datafieldsTid=\"$:/temp/commander/tiddler/datafields/createTiddler\"\n numberTiddler={{$:/temp/commander/tiddler-base-number}}\n template={{$:/temp/commander/template-newtiddler}}/>\n </$button>\n</$reveal>\n"},"$:/plugins/kookma/commander/tiddler/uicomp/delete-tiddlers":{"title":"$:/plugins/kookma/commander/tiddler/uicomp/delete-tiddlers","caption":"Delete tiddlers","list-after":"$:/plugins/kookma/commander/tiddler/uicomp/create-tiddlers","tags":"$:/tags/Commander/TiddlerOps","type":"text/vnd.tiddlywiki","text":"<$set name=numTids value={{{[subfilter<searchfilter>!is[missing]count[]] }}}>\n<$reveal type=\"match\" text=\"0\" default=<<numTids>> >\nNo tiddlers is selected for deleteion!\n</$reveal>\n<$reveal type=\"gt\" text=\"0\" default=<<numTids>> >\n\nNumber of tiddlers selected for deletion: <<numTids>><br>\nNote that, the delete operation cannot be undone!!\n<br>\n\n<$macrocall $name=\"compConfirmAction\"\ncountFilter=\"[subfilter<searchfilter>]\"\nactionMacro=\"delete-tiddlers-selective-bulk\"\nstateTiddler=\"$:/state/commander/SelectiveDeleteDropdown\"\n/>\n\n</$reveal>\n</$set>\n\n\n"},"$:/plugins/kookma/commander/tiddler/uicomp/export-tiddlers":{"title":"$:/plugins/kookma/commander/tiddler/uicomp/export-tiddlers","caption":"Export tiddlers","list-after":"$:/plugins/kookma/commander/tiddler/uicomp/delete-tiddlers","tags":"$:/tags/Commander/TiddlerOps","type":"text/vnd.tiddlywiki","text":"\\define export-tiddler-ui(baseFilename)\n<$set name=\"exportList\" filter=<<searchfilter>> ><!-- without this $SetWidget the exportButton does not work -->\n<$vars tv-config-toolbar-text=\"yes\" tv-config-toolbar-class=\"tc-button tt-button\">\n<$macrocall $name=\"commander-exportButton\" exportFilter=<<exportList>> lingoBase=\"$:/language/Buttons/ExportTiddlers/\" baseFilename=\"\"\"$baseFilename$\"\"\"/>\n</$vars>\n</$set>\n\\end\n\n\\define exportFileName-and-Tags-ui() \n<label class=\"kk-cmd-label2\">Export filename</label><$edit-text tiddler=\"$:/temp/commander/exportFilename\" tag=input default=\"tiddlers\" placeholder=\"tiddlers\" class=\"cmd-txt-area\"/>\n<br>\n\n<label class=\"kk-cmd-label2\">Export tags</label><$edit-text tiddler=\"$:/temp/commander/exportTag\" tag=input default=\"exported\" placeholder=\"exported\" class=\"cmd-txt-area\"/><br>\n\\end\n\n<$set name=numTids value={{{[subfilter<searchfilter>!is[missing]count[]] }}}>\n<$reveal type=\"match\" text=\"0\" default=<<numTids>> >\nNo tiddlers is selected for export!\n</$reveal>\n\n<$reveal type=\"gt\" text=\"0\" default=<<numTids>> >\n\nNumber of tiddlers selected for export: <<numTids>><br>\n\n<<exportFileName-and-Tags-ui>>\n<$macrocall $name=\"export-tiddler-ui\" baseFilename={{{[[$:/temp/commander/exportFilename]get[text]]~[[tiddlers]]}}} />\n</$reveal>\n</$set>\n\n"},"$:/plugins/kookma/commander/title/macros/prefix":{"title":"$:/plugins/kookma/commander/title/macros/prefix","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define log-changePrefix(message, oldTitle, newTitle)\n<$macrocall $name=\"log-add-single-operation\" msg=\"\"\"$message$. New title [[$newTitle$]]\"\"\" tidItem=<<__oldTitle__>> />\n\\end\n\n\\define addPrefix-to-tiltle-bulk(prefix:\"\")\n<$list filter=\"[subfilter<searchfilter>!is[missing]limit[1]]\" variable=ignore><!--check if filter is empty -->\n<$list filter=\"[<__prefix__>!is[blank]]\" variable=null>\n<<create-log-tiddler \"addPrefix-to-tiltle-bulk\">>\n<$list filter=\"[subfilter<searchfilter>]\">\n<$list filter=\"\"\"[<currentTiddler>addprefix[$prefix$]] -[<currentTiddler>]\"\"\" variable=\"newTitle\">\n<$list filter=\"[<newTitle>] -[has[title]]\" variable=\"ignore\">\n <$action-sendmessage $message=\"tm-rename-tiddler\" from=<<currentTiddler>> to=<<newTitle>> />\n <$macrocall $name=log-changePrefix message=\"title prefix: `$prefix$` added\" oldTitle=<<currentTiddler>> newTitle=<<newTitle>> />\n</$list>\n</$list>\n</$list>\n</$list>\n</$list>\n\\end\n\n\\define removePrefix-from-tiltle-bulk(prefix:\"\")\n<$list filter=\"[subfilter<searchfilter>!is[missing]limit[1]]\" variable=ignore><!--check if filter is empty -->\n<$list filter=\"[<__prefix__>!is[blank]]\" variable=null>\n<<create-log-tiddler \"removePrefix-from-tiltle-bulk\">>\n<$list filter=\"[subfilter<searchfilter>]\">\n<$list filter=\"\"\"[<currentTiddler>removeprefix[$prefix$]] -[<currentTiddler>]\"\"\" variable=\"newTitle\">\n<$list filter=\"[<newTitle>] -[has[title]]\" variable=\"ignore\">\n <$action-sendmessage $message=\"tm-rename-tiddler\" from=<<currentTiddler>> to=<<newTitle>> />\n <$macrocall $name=log-changePrefix message=\"title prefix: `$prefix$` removed\" oldTitle=<<currentTiddler>> newTitle=<<newTitle>> />\n</$list> \n</$list>\n</$list>\n</$list>\n</$list>\n\\end\n"},"$:/plugins/kookma/commander/title/macros/remove-cahrs-end":{"title":"$:/plugins/kookma/commander/title/macros/remove-cahrs-end","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define suffix-actions2()\n<$list filter=\"[subfilter<searchfilter>]+[prefix<sfx>]\" variable=\"item\">\n <$action-sendmessage $message=\"tm-rename-tiddler\" from=<<item>> to=<<sfx>> />\n <$macrocall $name=\"log-add-single-operation\" msg=\"\"\"characters removed from end. New title [[$(sfx)$]]\"\"\" tidItem=<<item>> />\n</$list>\n\\end\n\n\n\\define makelink2() [[$(newTitle)$]]\n\n\\define generate-suffixes2(n:\"0\")\n<$list filter=\"[<__n__>] -0\" variable=null>\n<$list filter=\"[subfilter<searchfilter>]\" variable=\"item\">\n<$list filter=\"\"\"[<item>split[]butlast[$n$]join[]trim[]]\"\"\" variable=\"newTitle\">\n<$text text=<<makelink2>>/>\n</$list>\n</$list>\n</$list>\n\\end\n\n\\define remove-chars-from-end-tiltle-bulk(num:\"0\")\n<$list filter=\"[subfilter<searchfilter>!is[missing]limit[1]]\" variable=ignore><!--check if filter is empty -->\n<$list filter=\"[<__num__>] -0\" variable=null>\n<<create-log-tiddler \"remove-chars-from-end-tiltle-bulk\">>\n<$vars n=<<__num__>> >\n<$wikify text=\"\"\"<<generate-suffixes2 n:\"$num$\">>\"\"\" name=\"outputs\">\n <$list filter=\"[subfilter<outputs>]\" variable=\"sfx\">\n<$list filter=\"[subfilter<searchfilter>]+[prefix<sfx>limit[2]count[]regexp[2]]\" emptyMessage=<<suffix-actions2>> variable=\"cnt\">\n</$list>\n</$list>\n</$wikify>\n</$vars>\n</$list>\n</$list>\n\\end\n"},"$:/plugins/kookma/commander/title/macros/remove-cahrs-start":{"title":"$:/plugins/kookma/commander/title/macros/remove-cahrs-start","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define suffix-actions()\n<$list filter=\"[subfilter<searchfilter>]+[suffix<sfx>]\" variable=\"item\">\n <$action-sendmessage $message=\"tm-rename-tiddler\" from=<<item>> to=<<sfx>> />\n <$macrocall $name=\"log-add-single-operation\" msg=\"\"\"characters removed from start. New title [[$(sfx)$]]\"\"\" tidItem=<<item>> />\n</$list>\n\\end\n\n\n\\define makelink() [[$(newTitle)$]]\n\n\\define generate-suffixes(n:\"0\")\n<$list filter=\"[<__n__>] -0\" variable=null>\n<$list filter=\"[subfilter<searchfilter>has[title]]\" variable=\"item\">\n<$list filter=\"\"\"[<item>split[]rest[$n$]join[]trim[]]\"\"\" variable=\"newTitle\">\n<$text text=<<makelink>>/>\n</$list>\n</$list>\n</$list>\n\\end\n\n\\define remove-chars-from-begining-tiltle-bulk(num:\"0\")\n<$list filter=\"[subfilter<searchfilter>!is[missing]limit[1]]\" variable=ignore><!--check if filter is empty -->\n<$list filter=\"[<__num__>] -0\" variable=null>\n<<create-log-tiddler \"remove-chars-from-begining-tiltle-bulk\">>\n<$vars n=<<__num__>> >\n<$wikify text=\"\"\"<<generate-suffixes n:\"$num$\">>\"\"\" name=\"outputs\">\n <$list filter=\"[subfilter<outputs>]\" variable=\"sfx\">\n <$list filter=\"[subfilter<searchfilter>]+[suffix<sfx>limit[2]count[]regexp[2]]\" \n emptyMessage=<<suffix-actions>> variable=\"cnt\">\n </$list>\n </$list>\n</$wikify>\n</$vars>\n</$list>\n</$list>\n\\end\n"},"$:/plugins/kookma/commander/title/macros/suffix":{"title":"$:/plugins/kookma/commander/title/macros/suffix","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define log-changeSuffix(message, oldTitle, newTitle)\n<$macrocall $name=\"log-add-single-operation\" msg=\"\"\"$message$. New title [[$newTitle$]]\"\"\" tidItem=<<__oldTitle__>> />\n\\end\n\n\\define addSuffix-to-tiltle-bulk(suffix:\"\")\n<$list filter=\"[<__suffix__>!is[blank]]\" variable=null>\n<$list filter=\"[subfilter<searchfilter>limit[1]]\" variable=ignore><!--check if filter is empty -->\n<<create-log-tiddler \"addSufffix-to-tiltle-bulk\">>\n<$list filter=\"[subfilter<searchfilter>]\">\n<$list filter=\"\"\"[<currentTiddler>addsuffix[$suffix$]] -[<currentTiddler>]\"\"\" variable=\"newTitle\">\n<$list filter=\"[<newTitle>] -[has[title]]\" variable=\"ignore\">\n <$action-sendmessage $message=\"tm-rename-tiddler\" from=<<currentTiddler>> to=<<newTitle>> />\n <$macrocall $name=log-changeSuffix message=\"title suffix: `$suffix$` added\" oldTitle=<<currentTiddler>> newTitle=<<newTitle>> />\n</$list>\n</$list>\n</$list>\n</$list>\n</$list>\n\\end\n\n\\define removeSuffix-from-tiltle-bulk(suffix:\"\")\n<$list filter=\"[<__suffix__>!is[blank]]\" variable=null>\n<$list filter=\"[subfilter<searchfilter>!is[missing]limit[1]]\" variable=ignore><!--check if filter is empty -->\n<<create-log-tiddler \"removeSuffix-from-tiltle-bulk\">>\n<$list filter=\"[subfilter<searchfilter>]\">\n<$list filter=\"\"\"[<currentTiddler>removesuffix[$suffix$]] -[<currentTiddler>]\"\"\" variable=\"newTitle\">\n<$list filter=\"[<newTitle>] -[has[title]]\" variable=\"ignore\">\n <$action-sendmessage $message=\"tm-rename-tiddler\" from=<<currentTiddler>> to=<<newTitle>> />\n <$macrocall $name=log-changeSuffix message=\"title suffix: `$suffix$` removed\" oldTitle=<<currentTiddler>> newTitle=<<newTitle>> />\n</$list>\n</$list>\n</$list>\n</$list>\n</$list>\n\\end\n"},"$:/plugins/kookma/commander/title/ui":{"title":"$:/plugins/kookma/commander/title/ui","caption":"Title","list-after":"$:/plugins/kookma/commander/tiddler/ui","tags":"$:/tags/Commander","type":"text/vnd.tiddlywiki","text":"<<tabs \ntabsList:\"[all[shadows+tiddlers]tag[$:/tags/Commander/TitleOps]!has[draft.of]]\" \ndefault:\"$:/plugins/kookma/commander/title/uicomp/add-remove-prefix\"\nclass:\"tc-vertical cmd-tab-colorful cmd-tab-wd\">>\n\n<!-- relink checkbox for renaming title -->\n{{$:/plugins/kookma/commander/config/relink}}"},"$:/plugins/kookma/commander/title/uicomp/add-remove-chars":{"title":"$:/plugins/kookma/commander/title/uicomp/add-remove-chars","caption":"Remove chars","list-after":"$:/plugins/kookma/commander/title/uicomp/add-remove-suffix","tags":"$:/tags/Commander/TitleOps","type":"text/vnd.tiddlywiki","text":"\\define rngcat() [range[0,$(minchars)$]] -0 \n\n<label style=\"width:30ch;\">Number of chars</label>\n<$select tiddler=\"$:/temp/commander/title-remove-chars\" default=\"0\" class=\"cmd-sl\">\n<$list filter=\"[subfilter<searchfilter>length[]minall[]subtract[1]] -Infinity\" variable=\"minchars\">\n<$list filter=<<rngcat>> >\n<option value=<<currentTiddler>>><$view field='title'/></option>\n</$list>\n</$list>\n</$select><br>\n\n<$button class=\"cmd-btn cmd-btn-wd\"> First n characters\n<$macrocall \n $name=\"remove-chars-from-begining-tiltle-bulk\" \n num={{$:/temp/commander/title-remove-chars}} />\n</$button>\n\n<$button class=\"cmd-btn cmd-btn-wd\"> Last n characters\n<$macrocall \n $name=\"remove-chars-from-end-tiltle-bulk\" \n num={{$:/temp/commander/title-remove-chars}} />\n</$button>\n\n\n"},"$:/plugins/kookma/commander/title/uicomp/add-remove-prefix":{"title":"$:/plugins/kookma/commander/title/uicomp/add-remove-prefix","caption":"Add remove prefix","tags":"$:/tags/Commander/TitleOps","type":"text/vnd.tiddlywiki","text":"<$edit-text\ntiddler=\"$:/temp/commander/title-prefix\"\ntag=\"input\"\ndefault=\"\"\nclass=\"cmd-txt-area\"\nplaceholder=\" prefix\"\n/> <br>\n\n<$button class=\"cmd-btn cmd-btn-wd\"> Add prefix\n<$macrocall \n $name=\"addPrefix-to-tiltle-bulk\" \n prefix={{$:/temp/commander/title-prefix}} \n/>\n</$button>\n\n<$button class=\"cmd-btn cmd-btn-wd\"> Remove prefix\n<$macrocall \n $name=\"removePrefix-from-tiltle-bulk\" \n prefix={{$:/temp/commander/title-prefix}} \n/>\n</$button>\n\n"},"$:/plugins/kookma/commander/title/uicomp/add-remove-suffix":{"title":"$:/plugins/kookma/commander/title/uicomp/add-remove-suffix","caption":"Add remove suffix","list-after":"$:/plugins/kookma/commander/title/uicomp/add-remove-prefix","tags":"$:/tags/Commander/TitleOps","type":"text/vnd.tiddlywiki","text":"<$edit-text\ntiddler=\"$:/temp/commander/title-suffix\"\ntag=\"input\" default=\"\"\nclass=\"cmd-txt-area\" placeholder=\" suffix\" /><br>\n\n<$button class=\"cmd-btn cmd-btn-wd\"> Add suffix\n<$macrocall \n $name=\"addSuffix-to-tiltle-bulk\" \n suffix={{$:/temp/commander/title-suffix}} />\n</$button>\n\n<$button class=\"cmd-btn cmd-btn-wd\"> Remove suffix\n<$macrocall \n $name=\"removeSuffix-from-tiltle-bulk\" \n suffix={{$:/temp/commander/title-suffix}} \n/>\n</$button>\n\n"},"$:/plugins/kookma/commander/viewtemplate/import":{"title":"$:/plugins/kookma/commander/viewtemplate/import","tags":"$:/tags/ViewTemplate","type":"text/vnd.tiddlywiki","text":"<$list filter=\"[all[current]match[$:/Import]status[complete]]\" variable=\"null\">\n<$button actions=\"\"\"<$action-setfield $tiddler=\"$:/temp/commander/search-box\" text=\"[[$:/Import]links[]]\"/><$action-navigate $to=\"$:/Commander\"/>\"\"\">\n{{$:/plugins/kookma/commander/images/commander.svg}} Batch edit\n</$button>\n</$list>"}}} \ No newline at end of file +{"tiddlers":{"$:/plugins/kookma/commander/buttons/pagecontrol":{"title":"$:/plugins/kookma/commander/buttons/pagecontrol","caption":"{{$:/plugins/kookma/commander/images/commander.svg}} {{$:/language/Buttons/Commander/Caption}}","description":"Open tiddler commander","list-after":"$:/core/ui/Buttons/advanced-search","tags":"$:/tags/PageControls","type":"text/vnd.tiddlywiki","text":"\\whitespace trim\n\n\\define commander-button(class)\n\\whitespace trim\n<$button to=\"$:/Commander\" tooltip={{$:/language/Buttons/Commander/Hint}} aria-label={{$:/language/Buttons/Commander/Caption}} class=\"\"\"$(tv-config-toolbar-class)$ $class$\"\"\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/plugins/kookma/commander/images/commander.svg}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Commander/Caption}}/></span>\n</$list>\n</$button>\n\\end\n\n<$list filter=\"[list[$:/StoryList]] +[field:title[$:/Commander]]\" emptyMessage=<<commander-button>>>\n<<commander-button \"tc-selected\">>\n</$list>\n"},"$:/Commander":{"title":"$:/Commander","icon":"$:/plugins/kookma/commander/images/commander.svg","type":"text/vnd.tiddlywiki","text":"\\import [all[shadows+tiddlers]tag[$:/tags/Commander/Macro]]\n{{$:/plugins/kookma/commander/search/ui}}\n<!-- Create the search filter based on searchbox and selective operation (if active) -->\n<$vars searchTerms={{{ [<searchboxTid>get[text]minlength{$:/plugins/kookma/commander/config/minlength}]~[[$:/errorCode:-23500]] }}} pattern=\"^\\[\"><!-- this part checks the combo search and selective ops-->\n<$set name=\"filtertext\" filter=\"[<searchTerms>regexp<pattern>]\" value=\"[subfilter<searchTerms>]\" emptyValue=\"[!is[system]search<searchTerms>]\">\n<$set name=\"searchfilter\" filter=\"[<selectiveOpsTid>get[text]match[yes]]\" \n value= \"[subfilter<filtertext>!prefix[$:/temp/commander]!prefix[$:/state/commander]]+[tag<workingTag>]\"\n emptyValue=\"[subfilter<filtertext>!prefix[$:/temp/commander]!prefix[$:/state/commander]]\" >\n<small style=\"margin-left:17ch;\"><i><$count filter=\"[subfilter<filtertext>!prefix[$:/temp/commander]!prefix[$:/state/commander]!is[missing]]\" /> matches </i></small>\n\n<!-- Display search results and let selective operation -->\n<<commander-slider title:\"$:/plugins/kookma/commander/search/selection\" default:\"open\">>\n\n<!-- Display operation UIs-->\n<<tabs \"[all[shadows+tiddlers]tag[$:/tags/Commander]!has[draft.of]]\" default:\"$:/plugins/kookma/commander/tiddler/ui\">>\n\n</$set>\n</$set>\n<$vars>\n\n---\n\n<<commander-slider title:\"$:/plugins/kookma/commander/log/ui\">>\n"},"$:/plugins/kookma/commander/config/AutoFocus":{"title":"$:/plugins/kookma/commander/config/AutoFocus","tags":"","type":"text/vnd.tiddlywiki","text":"yes"},"$:/plugins/kookma/commander/config/commonfields":{"title":"$:/plugins/kookma/commander/config/commonfields","tags":"","type":"text/vnd.tiddlywiki","text":"created creator modified modifier revision bag"},"$:/plugins/kookma/commander/config/minlength":{"title":"$:/plugins/kookma/commander/config/minlength","tags":"","type":"text/vnd.tiddlywiki","text":"3"},"$:/plugins/kookma/commander/config/relink":{"title":"$:/plugins/kookma/commander/config/relink","tags":"","type":"text/vnd.tiddlywiki","text":"\\define relink-plugin-notExisted() Update title in //tags// and //list// fields of other tiddlers\n<$checkbox tiddler=\"$:/config/RelinkOnRename\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"no\">\n<$list filter=\"[[$:/plugins/flibbles/relink]] +[has[title]]\" emptyMessage=<<relink-plugin-notExisted>> >\nUse //Relink// to update title across all other tiddlers\n</$list>\n</$checkbox>"},"$:/plugins/kookma/commander/config/systemfields":{"title":"$:/plugins/kookma/commander/config/systemfields","tags":"","type":"text/vnd.tiddlywiki","text":"title text tags \ncreated modified creator modifier \ntype bag revision\nlist caption"},"$:/plugins/kookma/commander/field/macros/add":{"title":"$:/plugins/kookma/commander/field/macros/add","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define add-new-field-bulk(datafieldsTid:\"\")\n<$list filter=\"[subfilter<searchfilter>!is[missing]limit[1]]\" variable=ignore><!--check if filter is empty -->\n<<create-log-tiddler \"add-new-field-bulk\">>\n<$vars datafieldsTid=<<__datafieldsTid__>> >\n<$list filter=\"[subfilter<searchfilter>]\" variable=\"newTitle\">\n<<add-bulk-fields>>\n<$wikify name=newFields text=<<getFieldsname>> >\n<$macrocall $name=\"log-add-single-operation\" msg={{{[<newFields>addprefix[new fields:]addsuffix[added]]}}} tidItem=<<newTitle>> />\n</$wikify>\n</$list>\n</$vars>\n</$list>\n\\end\n<!-- from TiddlyWiki 5.2.0, field name with mixed case is allowed -->\n\\define getFieldsname()\n<$list filter=\"[<__datafieldsTid__>indexes[]prefix[fldn]]\" variable=item>\n{{{ [<__datafieldsTid__>getindex<item>trim[]] }}} \n</$list>\n\\end"},"$:/plugins/kookma/commander/field/macros/bulkfields":{"title":"$:/plugins/kookma/commander/field/macros/bulkfields","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define numfilter() [range[1,$(flt)$]]\n\\define id_fldName() fldn$(cnt)$\n\\define id_fldValue() fldv$(cnt)$\n\n<!-- from TiddlyWiki 5.2.0, field name with mixed case is allowed -->\n\\define add-bulk-fields()\n<$set name=\"flt\" tiddler=<<datafieldsTid>> field=\"counter\" emptyValue=\"1\"><!-- when the datafieldsTid is not exist, there is at least one field row -->\n<$list filter=<<numfilter>> variable=\"cnt\">\n<$list filter=\"[<datafieldsTid>getindex<id_fldName>]\" variable=\"newField\">\n<$action-setfield $tiddler=<<newTitle>> \n $field={{{ [<newField>trim[]] }}}\n $value={{{ [<datafieldsTid>getindex<id_fldValue>] }}} />\n</$list>\n</$list>\n</$set>\n\\end\n\n\\define getInputs()\n<$edit-text tiddler=<<datafieldsTid>> index=<<id_fldName>> tag=input default=\"\" placeholder=\"field name\" />\n<$edit-text tiddler=<<datafieldsTid>> index=<<id_fldValue>> tag=input default=\"\" placeholder=\"field value\"/>\n\\end\n\n\\define add-reset()\n<$button>insert\n<$action-setfield $tiddler=<<datafieldsTid>> counter={{{[<datafieldsTid>get[counter]add[1]]~[[2]]}}}/>\n</$button>\n<$button>reset\n<$action-setfield $tiddler=<<datafieldsTid>> counter=\"1\"/>\n<$action-setfield $tiddler=<<datafieldsTid>> text=\"\"/>\n</$button>\n\\end\n\n\\define create-field-inputbox()\n<$wikify name=flt text={{{ [<datafieldsTid>get[counter]]~[[1]] }}} >\n<$list filter=<<numfilter>> variable=cnt>\n\n<<getInputs>>\n</$list>\n</$wikify>\n\\end\n\n\\define add-more-fields-ui(datafieldsTid:\"\")\n<$vars datafieldsTid=<<__datafieldsTid__>> >\n<<add-reset>>\n<<create-field-inputbox>>\n</$vars>\n\\end\n\n\\define add-more-fields-selective-ui(datafieldsTid:\"\", stateTiddler:\"$:/state/commander/tiddler-addfields-status\")\n<$checkbox \n tiddler=<<__stateTiddler__>>\n field=\"text\" \n checked=\"addfields\" unchecked=\"nofields\"\n default=\"nofields\" > \n Add fields\n</$checkbox>\n<$reveal type=\"match\" state=<<__stateTiddler__>> text=\"addfields\" default=\"nofields\" >\n<$vars datafieldsTid=<<__datafieldsTid__>> >\n<<add-reset>>\n<div style=\"padding-left:88px;\">\n<<create-field-inputbox>>\n</div>\n</$vars>\n</$reveal>\n\\end"},"$:/plugins/kookma/commander/field/macros/remove":{"title":"$:/plugins/kookma/commander/field/macros/remove","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define remove-old-field-bulk(oldField:\"\")\n<$list filter=\"[subfilter<searchfilter>!is[missing]limit[1]]\" variable=ignore><!--check if filter is empty -->\n<$list filter=\"[<__oldField__>!is[blank]]\">\n<<create-log-tiddler \"remove-old-field-bulk\">>\n<$list filter=\"[subfilter<searchfilter>]+[!is[missing]]+[has:field[$oldField$]]\">\n<$fieldmangler>\n<$action-sendmessage $message=\"tm-remove-field\" $param=<<__oldField__>> />\n</$fieldmangler>\n<$macrocall $name=\"log-add-single-operation\" msg=\"\"\"old field `$oldField$` removed\"\"\" tidItem=<<currentTiddler>> />\n</$list>\n</$list>\n</$list>\n\\end\n\n\\define set-field-value-bulk(fieldName:\"Empty\", fieldValue:\"Empty\")\n<$list filter=\"[subfilter<searchfilter>!is[missing]limit[1]]\" variable=ignore><!--check if filter is empty -->\n<$list filter=\"[<__fieldName__>!is[blank]]\" variable=null>\n<$list filter=\"[<__fieldValue__>!is[blank]]\" variable=null>\n<<create-log-tiddler \"set-field-value-create-bulk\">>\n<$list filter=\"[subfilter<searchfilter>]-[$fieldName$[$fieldValue$]]\">\n<$list filter=\"[<currentTiddler>has:field[$fieldName$]]\" variable=ignore \nemptyMessage=\"\"\"<$macrocall $name=\"log-add-single-operation\" msg=\"//has not `$fieldName$` field. Operation ignored//\" tidItem=<<currentTiddler>> />\"\"\" >\n<$action-setfield $field=<<__fieldName__>> $value=<<__fieldValue__>> />\n<$macrocall $name=\"log-add-single-operation\" msg=\"\"\"field `$fieldName$` got a value\"\"\" tidItem=<<currentTiddler>> />\n</$list>\n</$list>\n</$list>\n</$list>\n</$list>\n\\end\n\n"},"$:/plugins/kookma/commander/field/macros/rename":{"title":"$:/plugins/kookma/commander/field/macros/rename","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define rename-field-bulk(oldField:\"\", newField:\"\")\n<$list filter=\"[subfilter<searchfilter>!is[missing]limit[1]]\" variable=ignore>\n<$list filter=\"[<__oldField__>!is[blank]]\" variable=null>\n<$list filter=\"[<__newField__>!is[blank]]\" variable=null>\n<<create-log-tiddler \"rename-field-bulk\">>\n<$list filter=\"[subfilter<searchfilter>]\">\n<$list filter=\"[<currentTiddler>has:field[$oldField$]]\" variable=ignore\n emptyMessage=\"\"\"<$macrocall $name=\"log-add-single-operation\" msg=\"//has not field `$oldField$`. Operation ignored.//\" tidItem=<<currentTiddler>> /> \"\"\">\n<$set name=oldValue tiddler=<<currentTiddler>> field=<<__oldField__>> >\t\n<$action-setfield $tiddler=<<currentTiddler>> $field=<<__newField__>> $value=<<oldValue>>/>\n</$set>\n<$action-deletefield $tiddler=<<currentTiddler>> $field=<<__oldField__>> />\n<$macrocall $name=\"log-add-single-operation\" msg=\"\"\"field `$oldField$` renamed to `$newField$`\"\"\" tidItem=<<currentTiddler>> />\n</$list>\n</$list>\n</$list>\n</$list>\n</$list>\n\\end\n"},"$:/plugins/kookma/commander/field/macros/set":{"title":"$:/plugins/kookma/commander/field/macros/set","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define set-field-value-bulk(fieldName:\"\", fieldValue:\"\")\n<$list filter=\"[subfilter<searchfilter>!is[missing]limit[1]]\" variable=ignore><!--check if filter is empty -->\n<$list filter=\"[<__fieldName__>!is[blank]]\" variable=null>\n<$list filter=\"[<__fieldValue__>!is[blank]]\" variable=null>\n<<create-log-tiddler \"set-field-value-create-bulk\">>\n<$list filter=\"[subfilter<searchfilter>]-[$fieldName$[$fieldValue$]]\">\n<$list filter=\"[<currentTiddler>has:field[$fieldName$]]\" variable=ignore \nemptyMessage=\"\"\"<$macrocall $name=\"log-add-single-operation\" msg=\"//has not `$fieldName$` field. Operation ignored//\" tidItem=<<currentTiddler>> />\"\"\" >\n<$action-setfield $field=<<__fieldName__>> $value=<<__fieldValue__>> />\n<$macrocall $name=\"log-add-single-operation\" msg=\"\"\"field `$fieldName$` got a value\"\"\" tidItem=<<currentTiddler>> />\n</$list>\n</$list>\n</$list>\n</$list>\n</$list>\n\\end\n\n"},"$:/plugins/kookma/commander/field/ui":{"title":"$:/plugins/kookma/commander/field/ui","caption":"Field","list-after":"$:/plugins/kookma/commander/tag/ui","tags":"$:/tags/Commander","type":"text/vnd.tiddlywiki","text":"<<tabs \ntabsList:\"[all[shadows+tiddlers]tag[$:/tags/Commander/FieldOps]!has[draft.of]]\"\ndefault:\"$:/plugins/kookma/commander/field/uicomp/add-fields\" \nclass:\"tc-vertical cmd-tab-colorful cmd-tab-wd\"\n>>\n\n"},"$:/plugins/kookma/commander/field/uicomp/add-fields":{"title":"$:/plugins/kookma/commander/field/uicomp/add-fields","caption":"Add fields","tags":"$:/tags/Commander/FieldOps","type":"text/vnd.tiddlywiki","text":"<!-- create the interface-->\n<$macrocall $name=\"add-more-fields-ui\" datafieldsTid=\"$:/temp/commander/tiddler/datafields/addfield\" />\n\n\n<!-- call action macro -->\n<$button class=\"cmd-btn cmd-btn-wd\"> Add new fields\n<$macrocall $name=\"add-new-field-bulk\" \n datafieldsTid=\"$:/temp/commander/tiddler/datafields/addfield\" />\n</$button><br>\n,,Note: This will overwrite the existing fileds!,,"},"$:/plugins/kookma/commander/field/uicomp/remove-fields":{"title":"$:/plugins/kookma/commander/field/uicomp/remove-fields","caption":"Remove fields","list-after":"$:/plugins/kookma/commander/field/uicomp/add-fields","tags":"$:/tags/Commander/FieldOps","type":"text/vnd.tiddlywiki","text":"<label class=\"kk-cmd-label\">Old field</label><$select class=\"cmd-select-wd\" tiddler=\"$:/temp/commander/field-remove\" default=\"\">\n<$list filter=\"[subfilter<searchfilter>fields[]sort[]] -title -tags\" >\n<option><$view field=\"title\"/></option>\n</$list>\n</$select>\n<$button class=\"cmd-btn cmd-btn-wd\"> Remove old field\n<$macrocall $name=\"remove-old-field-bulk\" oldField={{$:/temp/commander/field-remove}} />\n</$button>"},"$:/plugins/kookma/commander/field/uicomp/rename-fields":{"title":"$:/plugins/kookma/commander/field/uicomp/rename-fields","caption":"Rename fields","list-after":"$:/plugins/kookma/commander/field/uicomp/remove-fields","tags":"$:/tags/Commander/FieldOps","type":"text/vnd.tiddlywiki","text":"<label class=\"kk-cmd-label\">Old field</label><$select class=\"cmd-select-wd\" \n tiddler=\"$:/temp/commander/rename-field/old\" default=\"\" >\n<$list filter=\"[subfilter<searchfilter>fields[]sort[]] -[<systemFieldsTid>get[text]split[ ]]\" > \n<option><$view field=\"title\"/></option>\n</$list>\n</$select>\n\n<label class=\"kk-cmd-label\">New field</label><$edit-text\ntiddler=\"$:/temp/commander/rename-field/new\"\ntag=\"input\"\ndefault=\"\"\nclass=\"cmd-txt-area\"\nplaceholder=\" new field name\"\n/>\n<$button class=\"cmd-btn cmd-btn-wd\"> Rename field\n<$macrocall $name=\"rename-field-bulk\" \noldField={{$:/temp/commander/rename-field/old}} \nnewField={{{ [[$:/temp/commander/rename-field/new]get[text]trim[]] }}} />\n</$button>\n\n<!--\nFrom TW 5.2.0 field name can have mixed case and space, so all restrictions are released.\n-->"},"$:/plugins/kookma/commander/field/uicomp/set-field-value":{"title":"$:/plugins/kookma/commander/field/uicomp/set-field-value","caption":"Set field value","list-after":"$:/plugins/kookma/commander/field/uicomp/rename-fields","tags":"$:/tags/Commander/FieldOps","type":"text/vnd.tiddlywiki","text":"<label class=\"kk-cmd-label\">Field name</label><$select class=\"cmd-select-wd\" \n tiddler=\"$:/temp/commander/field-name\" default=\"\" >\n<$list filter=\"[subfilter<searchfilter>fields[]sort[]] -[<systemFieldsTid>get[text]split[ ]]\" >\n<option><$view field=\"title\"/></option>\n</$list>\n</$select>\n\n<label class=\"kk-cmd-label\">Field value</label><$edit-text\ntiddler=\"$:/temp/commander/field-value\"\ntag=\"input\" default=\"\"\nclass=\"cmd-txt-area\" placeholder=\" field value\"/>\n<$button class=\"cmd-btn cmd-btn-wd\"> Set field value\n<$macrocall \n $name=\"set-field-value-bulk\" \n fieldName={{$:/temp/commander/field-name}} \n fieldValue={{$:/temp/commander/field-value}} \n/>\n</$button>"},"$:/plugins/kookma/commander/filters/Drafts":{"title":"$:/plugins/kookma/commander/filters/Drafts","description":"{{$:/language/Filters/Drafts}}","filter":"[has[draft.of]sort[title]]","tags":"$:/tags/Commander/Filter","type":"text/vnd.tiddlywiki"},"$:/plugins/kookma/commander/filters/geneal":{"title":"$:/plugins/kookma/commander/filters/geneal","description":"General filter","filter":"[all[shadows+tiddlers]search[your keywrods]]","tags":"$:/tags/Commander/Filter","type":"text/vnd.tiddlywiki"},"$:/plugins/kookma/commander/filters/Missing":{"title":"$:/plugins/kookma/commander/filters/Missing","description":"{{$:/language/Filters/Missing}}","filter":"[all[missing]sort[title]]","tags":"$:/tags/Commander/Filter","type":"text/vnd.tiddlywiki"},"$:/plugins/kookma/commander/filters/Orphans":{"title":"$:/plugins/kookma/commander/filters/Orphans","description":"{{$:/language/Filters/Orphans}}","filter":"[all[orphans]sort[title]]","tags":"$:/tags/Commander/Filter","type":"text/vnd.tiddlywiki"},"$:/plugins/kookma/commander/filters/RecentSystemTiddlers":{"title":"$:/plugins/kookma/commander/filters/RecentSystemTiddlers","description":"{{$:/language/Filters/RecentSystemTiddlers}}","filter":"[has[modified]!sort[modified]limit[50]]","tags":"$:/tags/Commander/Filter","type":"text/vnd.tiddlywiki"},"$:/plugins/kookma/commander/filters/RecentTiddlers":{"title":"$:/plugins/kookma/commander/filters/RecentTiddlers","description":"{{$:/language/Filters/RecentTiddlers}}","filter":"[!is[system]has[modified]!sort[modified]limit[50]]","tags":"$:/tags/Commander/Filter","type":"text/vnd.tiddlywiki"},"$:/plugins/kookma/commander/filters/SessionTiddlers":{"title":"$:/plugins/kookma/commander/filters/SessionTiddlers","description":"Tiddlers modified since the wiki was loaded","filter":"[haschanged[]]","tags":"$:/tags/Commander/Filter","type":"text/vnd.tiddlywiki"},"$:/plugins/kookma/commander/filters/StoryList":{"title":"$:/plugins/kookma/commander/filters/StoryList","description":"{{$:/language/Filters/StoryList}}","filter":"[list[$:/StoryList]] -$:/AdvancedSearch","tags":"$:/tags/Commander/Filter","type":"text/vnd.tiddlywiki"},"$:/plugins/kookma/commander/filters/temp-and-state":{"title":"$:/plugins/kookma/commander/filters/temp-and-state","description":"Temporary and state tiddlers","filter":"[prefix[$:/temp]] [prefix[$:/state]]","tags":"$:/tags/Commander/Filter","type":"text/vnd.tiddlywiki"},"$:/plugins/kookma/commander/help/ui":{"title":"$:/plugins/kookma/commander/help/ui","caption":"Help","icon":"$:/core/images/help","list-after":"$:/plugins/kookma/commander/setting/ui","tags":"$:/tags/Commander","type":"text/vnd.tiddlywiki","text":"<<tabs \ntabsList:\"[all[shadows+tiddlers]tag[$:/tags/Commander/Help]!has[draft.of]]\" \ndefault:\"$:/plugins/kookma/commander/help/uicomp/quick-tutorial\"\nclass:\"tc-vertical cmd-tab-colorful cmd-tab-wd\">>\n\n\n"},"$:/plugins/kookma/commander/help/uicomp/quick-tutorial":{"title":"$:/plugins/kookma/commander/help/uicomp/quick-tutorial","caption":"Quick tutorial","tags":"$:/tags/Commander/Help","type":"text/vnd.tiddlywiki","text":"# Use ''Combo search'' to list possible tiddlers\n#* example: `concept` performs a standard search and find all matches in title, text, and tags\n#* example: `[tag[xx]]` finds all tiddlers tagged with //xx//\n#* example: `[prefix[tt]` finds all tiddlers have title started with //tt//\n#* example: `[has[draft.of]sort[title]]` finds all draft tiddlers\n\n# Use ''Select tiddlers'' for the resulting list to identify which specific tiddlers to do a batch operation on\n#* this step lets you to do a batch operation on selected tiddlers NOT all items by ''Combo search''!\n#* it is possible to select/deselect all tiddlers from ''Combo search'' result at once! Note that, by default all tiddlers are considered for bulk operation until selective operation is activated!\n# From ''Batch operations tabs'' select the batch operation you wish to perform on selected tiddlers\n#* example: title, tag, and field operations\n#* example: Snr operation\n#* Inspect tab can be used to inspect tiddlers before or after performing operations\n\n* Notes:\n** Multiple batch operations can be done on the same set (unless you change something in the search criteria)\n** Sometimes it is useful to use an intermediate batch to help, like tag tiddlers with a \"working\" tag, using multiple searches, then then use the \"working\" tag to apply a batch operation to\n\n<div class=\"commander-alert\">''Note'': For good operation a tiddler width of 800px is recommended. You can also use //Sidebar layout// as `Fluid story`.</div>\n\n\nFor detailed docummention go to [[Demo page|https://kookma.github.io/TW-Commander/]]\n\n!!! Footenote\n# [[Use filter expression|https://tiddlywiki.com/prerelease/#Filters:Filters%20%5B%5BFilter%20Expression%5D%5D%20%5B%5BFilter%20Syntax%5D%5D%20%5B%5BFilter%20Operators%5D%5D%20%5B%5BFilter%20Parameter%5D%5D%20%5B%5BFilter%20Run%5D%5D%20%5B%5BFilter%20Step%5D%5D%20%5B%5BFilter%20Whitespace%5D%5D]]"},"$:/plugins/kookma/commander/help/uicomp/regular-expression":{"title":"$:/plugins/kookma/commander/help/uicomp/regular-expression","caption":"Regular expressions","list-after":"$:/plugins/kookma/commander/help/uicomp/snr","tags":"$:/tags/Commander/Help","type":"text/vnd.tiddlywiki","text":"!! Regular Expressions Quick Reference\n\n|FLAGS |<|<|h\n| i |ignore case|case insensitive matching|\n| |whole words|match strings of a-z, 0-9 and _|\n| g |global|field start=^, field end=$, all matches|\n| m |multi-line|line start=^, line end=$, first match|\n| |first match|field start=^, field end=$, first match|\n|MATCH |<|<|h\n|''Anchors''|<|<|\n| ^ |start of scope|see Flags, match is zero length|\n| $ |end of scope|see Flags, match is zero length|\n| \\b |word boundary|anchor to edge of word, zero length|\n| \\B |not word boundary|anchor inside word, zero length|\n|''Character Classes''|<|<|\n| [c] |class of characters|any one matches, e.g. [abc123]|\n| [^c] |negated class of characters|any one doesn't match, e.g. [^abc123]|\n|''Shorthand Character Classes'' |<|<|\n| . |any character except newline|same as [^\\n]|\n| \\d |decimal|same as [0-9]|\n| \\D |not decimal|same as [^0-9]|\n| \\s |white-space|same as [\\ \\t\\n]|\n| \\S |not white-space|same as [^\\ \\t\\n]|\n| \\t |tab|same as [\\t]|\n| \\n |newline|same as [\\n]|\n| \\w |word character|same as [a-zA-Z0-9_]|\n| \\W |not word character|same as [^a-zA-Z0-9_]|\n|''Capturing Groups''|<|<|\n| (match) |match placed in variable $x|can be used in Replace|\n| (\\x) |repeats match pattern of $x|can be used in Replace|\n|''Quantifiers''|<|<|\n| ? |single match|match 0 or 1 time|\n| * |greedy match 0+|match 0 or as many times as possible|\n| *? |lazy match 0+|match 0 or as few times as possible|\n| + |greedy match 1+|match 1 or as many times as possible|\n| +? |lazy match 1+|match 1 or as few times as possible|\n| {x} |match x times|match x times|\n| {x,y} |match x to y times|match x times to exactly y times|\n| {x,} |match x or more times|match x times or as many as possible|\n|''Escapes''|<|<|\n| \\ |escape special characters|add to \\ [ ] ( ) { } ^ $ . ? * + for literals|\n|REPLACE |<|<|h\n| $& |return the full match|<|\n| $x |return $x where x is the numeric index of a Capturing Group|<|\n|NOTE |<|<|h\n|This Reference supports most ordinary uses of regular expressions.<br> For advanced options: [[MDN Reference|https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions#Using_simple_patterns]]; examples: [[regular-expressions.info|https://www.regular-expressions.info/tutorial.html]].|<|<|\n\n"},"$:/plugins/kookma/commander/help/uicomp/relink":{"title":"$:/plugins/kookma/commander/help/uicomp/relink","caption":"Relink on rename","list-after":"$:/plugins/kookma/commander/help/uicomp/regular-expression","tags":"$:/tags/Commander/Help","type":"text/vnd.tiddlywiki","text":"!! Relink on rename\nWhen Tiddler Commander is used to rename bulk tiddlers in operation like\n\n* Title operation\n** add/remove prefix\n** add/remove suffix\n** remove chars from the begining or end of title\n* ~SnR\n** Search and replace in tiddlers title\n\nIt is possible to update all links to title. This includes //tags// and //list//. If [[Relink|https://flibbles.github.io/tw5-relink/]] plugin is installed, then not only title will be updated in //tags// and //list// field, but also in all filters, transclusions, text field and evrywhere.\n\n<div class=\"commander-alert\"> ''Note'': Relink does not update all forms of title e.g those created from different segments, but it will update any occurances</div>\n\n\n!! How to integrate with Relink?\n\nSimply install the [[Relink|https://flibbles.github.io/tw5-relink/]] plugin and it will be appeared as an option when Tiddler Commander title operations including ~SnR are performed!\n"},"$:/plugins/kookma/commander/help/uicomp/snr":{"title":"$:/plugins/kookma/commander/help/uicomp/snr","caption":"Search-n-Replace","list-after":"$:/plugins/kookma/commander/help/uicomp/quick-tutorial","tags":"$:/tags/Commander/Help","type":"text/vnd.tiddlywiki","text":"!! Search and replace using Snr\nSnr stands for search and replace, is a powerful tool uses regular expression for searching all fields and lets replace chars, words, phrases with new values.\n\n!! How to use\n* Enter a search filter or keywords in ''Combo search'' box like `[tag[myTag]]` or `concept`\n* Use ''Select tiddlers'' for the resulting list to identify which specific tiddlers to do a Snr operation on\n** If selective operation is unchecked, all tiddlers from step one will be included in Snr operation.\n* From ''Tiddler title'' drop down menu select a tiddler\n* From ''Field name'' drop down menu select a tiddler field like `text`\n** all fileds even `title` can be selected\n* In the ''Search text'' type the search term for example `this`\n* In the ''Replace with'' type the term you want to replace with like `that`\n* Check the ''Differences'' and if you are satisfied with the result, press the `Replace?` button\n* You can press `Replace all?` if you want to search and replace in all selected tiddlers\n\n;Remarks\n: The `Replace all?` lets you to search and replace in all selected tiddlers at once! It is possible to search and replace even in `title` field!\n\n<$list filter=\"[[snr.png]is[tiddler]]\"><<image-pretty img:\"snr.png\" width:\"60%\" align:\"center\" caption:\"Fig 1. Search and replace using regular expression\">></$list>\n\n!! Special characters\n<<<\nAs `SNR` uses ''regexp'' pattern to make search and replace, when special characters are used in the ''Search text'' box, they shall be escaped among them are `*`, `+`, `[]`, `?` ...\nTo use these characters do like below\n\n```\n\\[ \\] \\( \\) \\{ \\} \\. \\* \\+ \\? \\^ \\$ \\\\ \\|\n```\n<<<\n\n!! Warning\n<<<\n* SNR replace the contents of tiddlers.<br> ''//The action can not be undone//''. So always make a backup before performing any replace action\n<<<"},"$:/plugins/kookma/commander/help/uicomp/warning":{"title":"$:/plugins/kookma/commander/help/uicomp/warning","caption":"Warning","list-after":"$:/plugins/kookma/commander/help/uicomp/relink","tags":"$:/tags/Commander/Help","type":"text/vnd.tiddlywiki","text":";Note i\n:Tiddler Commander is a very powerful tool, it can change any field in any tiddler.// Make sure what you are doing//!\n\n;Note ii\n:Tiddler Commander uses two steps tiddler selection. It uses a combo search box to screen (using standard or filter search) possible tiddlers and then uses a selective list of tiddlers from first step for batch operation!\n:# If selective operation is unchecked, then all tiddlers from step one are used for batch operation\n:# If selective operation is checked, then user has to manually select among tiddlers, and the selected ones are used for batch operation \n\n;Note iii\n://Commander do not perform operation on shadow tiddlers//, unless they are overriden. Because shadow tiddlers aren’t stored as ''real'' tiddlers. They are intentionally excluded from most operations by default so that they don’t clutter filters made by users unless explicitly required. \n\n<div class=\"commander-alert\">''Warning''\nBefore using Tiddler commander for bulk operation on your own valuable, irreplaceable data, ''backup them''.\n</div>"},"$:/plugins/kookma/commander/history":{"title":"$:/plugins/kookma/commander/history","tags":"","type":"text/vnd.tiddlywiki","text":"Full change log https://kookma.github.io/TW-Commander/#ChangeLog\n\n* ''2.1.8'' -- 2024.06.13 -- updated to support Tiddlywiki 5.3.3\n* ''2.1.5'' -- 2023.02.14 -- updated to support Tiddlywiki 5.2.5\n* ''2.1.3'' -- 2021.10.24 -- commander icon fixed\n* ''2.1.2'' -- 2021.01.02 -- Saq Imtiaz release\n* ''2.1.0'' -- 2020.03.25 -- stable release\n* ''0.1.0'' -- 2019.02.12 -- mature public release\n"},"$:/plugins/kookma/commander/images/commander.svg":{"title":"$:/plugins/kookma/commander/images/commander.svg","caption":"file-alt (Regular)","type":"text/vnd.tiddlywiki","text":"<svg class=\"tc-image-file-alt tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 384 512\"><path d=\"M288 248v28c0 6.6-5.4 12-12 12H108c-6.6 0-12-5.4-12-12v-28c0-6.6 5.4-12 12-12h168c6.6 0 12 5.4 12 12zm-12 72H108c-6.6 0-12 5.4-12 12v28c0 6.6 5.4 12 12 12h168c6.6 0 12-5.4 12-12v-28c0-6.6-5.4-12-12-12zm108-188.1V464c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V48C0 21.5 21.5 0 48 0h204.1C264.8 0 277 5.1 286 14.1L369.9 98c9 8.9 14.1 21.2 14.1 33.9zm-128-80V128h76.1L256 51.9zM336 464V176H232c-13.3 0-24-10.7-24-24V48H48v416h288z\"/></svg>"},"$:/plugins/kookma/commander/inspect/comp/edit-fileds":{"title":"$:/plugins/kookma/commander/inspect/comp/edit-fileds","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define lingo-base() $:/language/EditTemplate/\n\\define config-title()\n$:/config/EditTemplateFields/Visibility/$(currentField)$\n\\end\n\n\\define config-filter()\n[[hide]] -[title{$(config-title)$}] \n\\end\n\n\\define new-field()\n<$vars name={{$:/temp/newfieldname}}>\n<$reveal type=\"nomatch\" text=\"\" default=<<name>>>\n<$button class=\"cmd-btn\">\n<$action-sendmessage $message=\"tm-add-field\"\n$name=<<name>>\n$value={{$:/temp/newfieldvalue}}/>\n<$action-deletetiddler $tiddler=\"$:/temp/newfieldname\"/>\n<$action-deletetiddler $tiddler=\"$:/temp/newfieldvalue\"/>\n<<lingo Fields/Add/Button>>\n</$button>\n</$reveal>\n<$reveal type=\"match\" text=\"\" default=<<name>>>\n<$button class=\"cmd-btn\">\n<<lingo Fields/Add/Button>>\n</$button>\n</$reveal>\n</$vars>\n\\end\n\n\\define compInspect-edit-fileds(commonFields:\"\")\n\n<div class=\"tc-edit-fields\">\n<table class=\"tc-edit-fields\">\n<tbody>\n<$list filter=\"[all[current]fields[]] +[sort[title]]\" variable=\"currentField\">\n<$list filter=<<config-filter>> variable=\"temp\">\n<tr class=\"tc-edit-field\">\n<td class=\"tc-edit-field-name\">\n<$text text=<<currentField>>/>:</td>\n<td class=\"tc-edit-field-value\">\n<$edit-text tiddler=<<currentTiddler>> field=<<currentField>> placeholder={{$:/language/EditTemplate/Fields/Add/Value/Placeholder}}/>\n</td>\n<td class=\"tc-edit-field-remove\">\n<$button class=\"tc-btn-invisible\" tooltip={{$:/language/EditTemplate/Field/Remove/Hint}} aria-label={{$:/language/EditTemplate/Field/Remove/Caption}}>\n<$action-deletefield $field=<<currentField>>/>\n{{$:/core/images/delete-button}}\n</$button>\n</td>\n</tr>\n</$list>\n</$list>\n\n\n<$list filter=\"created creator modified modifier -[enlist<__commonFields__>]\" variable=\"currentField\">\n<tr class=\"tc-edit-field\">\n<td class=\"tc-edit-field-name\">\n<$text text=<<currentField>>/>:</td>\n<td class=\"tc-edit-field-value\">\n<$edit-text tiddler=<<currentTiddler>> field=<<currentField>> placeholder={{$:/language/EditTemplate/Fields/Add/Value/Placeholder}}/>\n</td>\n<td class=\"tc-edit-field-remove\">\n<$button class=\"tc-btn-invisible\" tooltip={{$:/language/EditTemplate/Field/Remove/Hint}} aria-label={{$:/language/EditTemplate/Field/Remove/Caption}}>\n<$action-deletefield $field=<<currentField>>/>\n{{$:/core/images/delete-button}}\n</$button>\n</td>\n</tr>\n</$list>\n\n\n\n\n</tbody>\n</table>\n</div>\n\n<$fieldmangler>\n<div class=\"tc-edit-field-add\">\n<em class=\"tc-edit\">\n<<lingo Fields/Add/Prompt>>\n</em>\n<span class=\"tc-edit-field-add-name\">\n<$edit-text tiddler=\"$:/temp/newfieldname\" tag=\"input\" default=\"\" placeholder={{$:/language/EditTemplate/Fields/Add/Name/Placeholder}} focusPopup=<<qualify \"$:/state/popup/field-dropdown\">> class=\"tc-edit-texteditor tc-popup-handle\"/>\n</span>\n<$button popup=<<qualify \"$:/state/popup/field-dropdown\">> class=\"tc-btn-invisible tc-btn-dropdown\" tooltip={{$:/language/EditTemplate/Field/Dropdown/Hint}} aria-label={{$:/language/EditTemplate/Field/Dropdown/Caption}}>{{$:/core/images/down-arrow}}</$button>\n<$reveal state=<<qualify \"$:/state/popup/field-dropdown\">> type=\"nomatch\" text=\"\" default=\"\">\n<div class=\"tc-block-dropdown tc-edit-type-dropdown\">\n<$linkcatcher to=\"$:/temp/newfieldname\">\n<div class=\"tc-dropdown-item\">\n<<lingo Fields/Add/Dropdown/User>>\n</div>\n<$list filter=\"[!is[shadow]!is[system]fields[]search:title{$:/temp/newfieldname}sort[]] -created -creator -draft.of -draft.title -modified -modifier -tags -text -title -type\" variable=\"currentField\">\n<$link to=<<currentField>>>\n<<currentField>>\n</$link>\n</$list>\n<div class=\"tc-dropdown-item\">\n<<lingo Fields/Add/Dropdown/System>>\n</div>\n<$list filter=\"[fields[]search:title{$:/temp/newfieldname}sort[]] -[!is[shadow]!is[system]fields[]]\" variable=\"currentField\">\n<$link to=<<currentField>>>\n<<currentField>>\n</$link>\n</$list>\n</$linkcatcher>\n</div>\n</$reveal>\n<span class=\"tc-edit-field-add-value\">\n<$edit-text tiddler=\"$:/temp/newfieldvalue\" tag=\"input\" default=\"\" placeholder={{$:/language/EditTemplate/Fields/Add/Value/Placeholder}} class=\"tc-edit-texteditor\"/>\n</span>\n<span class=\"tc-edit-field-add-button\">\n<$macrocall $name=\"new-field\"/>\n</span>\n</div>\n</$fieldmangler>\n\\end"},"$:/plugins/kookma/commander/inspect/comp/edit-preview":{"title":"$:/plugins/kookma/commander/inspect/comp/edit-preview","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define compInspect-edit-preview(tiddler, commonFields:\"\")\n<div class=\"tc-edit-fields\">\n<table class=\"tc-edit-fields\">\n<tbody>\n<tr class=\"tc-edit-field\"><td class=\"tc-edit-field-name\">title:</td>\n<td class=\"tc-edit-field-value\"><$link to=<<__tiddler__>> ><$text text=<<__tiddler__>> /></$link></td>\n</tr>\n<tr class=\"tc-edit-field\"><td class=\"tc-edit-field-name\">tags:</td>\n<td class=\"tc-edit-field-value\">{{$tiddler$||$:/core/ui/EditTemplate/tags}}</td>\n</tr>\n<tr class=\"tc-edit-field\"><td class=\"tc-edit-field-name\">text:</td>\n<td class=\"tc-edit-field-value\"><$macrocall $name=compInspect-get-field tiddler=<<__tiddler__>> field=\"text\" tag=\"textarea\" /></td>\n</tr>\n</tbody>\n</table>\n</div>\n\n<$tiddler tiddler=<<__tiddler__>> >\n<$macrocall $name=\"compInspect-edit-fileds\" commonFields=<<__commonFields__>> />\n</$tiddler>\n\\end\n\n\\define compInspect-get-field(tiddler, field, tag:\"input\") \n<$edit-text class=\"tc-edit-texteditor\" tiddler=<<__tiddler__>> field=<<__field__>> tag=<<__tag__>> default=\"\" placeholder={{$:/language/EditTemplate/Body/Placeholder}}/>\n\\end"},"$:/plugins/kookma/commander/inspect/comp/main":{"title":"$:/plugins/kookma/commander/inspect/comp/main","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define compInspect(filter, stateTiddler:\"thisTiddler\")\n<$set name=\"state\" \n value={{{ [[$:/state/compInspect/]addsuffix<__stateTiddler__>] }}} >\n<$vars\n slStateTid={{{ [<state>addsuffix[/]addsuffix[selectState-tiddler]] }}}\n rvStateTid={{{ [<state>addsuffix[/]addsuffix[revealState-tiddler]] }}}\n chStateTid={{{ [<state>addsuffix[/]addsuffix[checkboxState-tiddler]] }}} >\n\nSelect tiddler  <$macrocall $name=compSelect filter=<<__filter__>> stateTiddler=<<slStateTid>> />\n  \n<$macrocall $name=\"check-common-fields\" stateTiddler=<<chStateTid>> />\n  \n<$reveal stateTitle=<<rvStateTid>> type=\"nomatch\" text=\"edit\">\n<$button class=\"tc-btn-invisible\" setTitle=<<rvStateTid>> setTo=\"edit\" tooltip=\"edit tiddler\">{{$:/core/images/edit-button}}</$button>\n<$macrocall $name=compInspect-show-preview tiddler={{{ [<slStateTid>get[text]]+[subfilter<__filter__>] }}} commonFields={{{ [<chStateTid>get[text]] }}}/>\n</$reveal>\n<$reveal stateTitle=<<rvStateTid>> type=\"match\" text=\"edit\">\n<$button class=\"tc-btn-invisible\" setTitle=<<rvStateTid>> setTo=\"\" tooltip=\"confirm changes\">{{$:/core/images/done-button}}</$button>\n<$macrocall $name=compInspect-edit-preview tiddler={{{ [<slStateTid>get[text]]+[subfilter<__filter__>] }}} commonFields={{{ [<chStateTid>get[text]] }}}/>\n</$reveal>\n\n</$vars>\n</$set>\n\\end\n\n\\define check-common-fields(stateTiddler)\n<$vars commonFields={{{[<commonFieldsTid>get[text]]}}}>\n<$checkbox \n tiddler=<<__stateTiddler__>>\n field=\"text\" \n checked=<<commonFields>>\n unchecked=\"\"\n default=\"\"\n> Exclude common fields?</$checkbox>\n</$vars>\n\\end"},"$:/plugins/kookma/commander/inspect/comp/select":{"title":"$:/plugins/kookma/commander/inspect/comp/select","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define compSelect(filter:\"\", stateTiddler:\"\", default:\"\", class:\"\", showButtons:\"show\")\n<$select tiddler=<<__stateTiddler__>> default=<<__default__>> class=<<__class__>> >\n<option value=\"\">None</option>\n<$list filter=<<__filter__>> variable=item>\n<option value=<<item>>><$text text=<<item>> /></option>\n</$list>\n</$select>\n<$reveal type=\"match\" text=\"show\" default=<<__showButtons__>> >\n<$vars myfilter=<<__filter__>> mystateTiddler=<<__stateTiddler__>> myitem={{{ [<__stateTiddler__>get[text]] }}} >\n<$button actions=<<cs-prev-item>> class=\"cmd-btn\"> prev </$button>\n<$button actions=<<cs-next-item>> class=\"cmd-btn\"> next </$button>\n</$vars>\n</$reveal>\n\\end\n\n\\define cs-prev-item()\n<$list filter=\"[subfilter<myfilter>] +[before<myitem>]\" variable=\"prev-item\" >\n<$action-setfield $tiddler=<<mystateTiddler>> text=<<prev-item>> />\n</$list>\n\\end\n\n\\define cs-next-item()\n<$list filter=\"[subfilter<myfilter>] +[after<myitem>]\" variable=\"next-item\" >\n<$action-setfield $tiddler=<<mystateTiddler>> text=<<next-item>> />\n</$list>\n\\end\n\n<!-- used by\n - $:/plugins/kookma/commander/compInspect/main\n-->"},"$:/plugins/kookma/commander/inspect/comp/show-preview":{"title":"$:/plugins/kookma/commander/inspect/comp/show-preview","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define compInspect-show-preview(tiddler, commonFields:\"\")\n<$vars mainFields=\"title tags text\">\n<table class=\"cmd-ci-table\">\n<tr><td class=\"leftcol\">title</td>\n<td class=\"rightcol\"><$link to=<<__tiddler__>> ><$text text=<<__tiddler__>> /></$link></td>\n</tr>\n\n<tr><td class=\"leftcol\">tags</td>\n<td style=\"padding:3px;\"><$macrocall $name=showTags tiddler=<<__tiddler__>> /></td>\n</tr>\n<tr><td class=\"leftcol\">text</td>\n<td><$transclude tiddler=<<__tiddler__>> field=\"text\" mode=\"block\"/></td>\n</tr>\n<$list filter=\"[<__tiddler__>fields[]] -[enlist<mainFields>] -[enlist<__commonFields__>]\" variable=\"otherFld\">\n<tr><td class=\"leftcol\"><<otherFld>></td>\n<td class=\"rightcol\"><$transclude tiddler=<<__tiddler__>> field=<<otherFld>> mode=\"inline\"/></td>\n</tr>\n</$list>\n</table>\n</$vars>\n\\end\n\n\\define showTags(tiddler)\n<$list filter=\"[<__tiddler__>tags[]]\" variable=tagItem >\n<$macrocall $name=tag tag=<<tagItem>> />\n</$list>\n\\end\n"},"$:/plugins/kookma/commander/inspect/ui":{"title":"$:/plugins/kookma/commander/inspect/ui","caption":"Inspect","list-after":"$:/plugins/kookma/commander/field/ui","tags":"$:/tags/Commander","type":"text/vnd.tiddlywiki","text":"<<tabs \ntabsList:\"[all[shadows+tiddlers]tag[$:/tags/Commander/InspectOps]!has[draft.of]]\" \ndefault:\"$:/plugins/kookma/commander/inspect/uicomp/Inspection\"\nclass:\"tc-vertical cmd-tab-wd\">>\n"},"$:/plugins/kookma/commander/inspect/uicomp/Inspection":{"title":"$:/plugins/kookma/commander/inspect/uicomp/Inspection","caption":"Inspect","tags":"$:/tags/Commander/InspectOps","type":"text/vnd.tiddlywiki","text":"<$macrocall \n $name=compInspect\n filter=<<searchfilter>>\n stateTiddler=\"commander\"\n/>"},"$:/language/Buttons/Commander/Caption":{"title":"$:/language/Buttons/Commander/Caption","tags":"","type":"text/vnd.tiddlywiki","text":"commander"},"$:/language/Buttons/Commander/Hint":{"title":"$:/language/Buttons/Commander/Hint","tags":"","type":"text/vnd.tiddlywiki","text":"Tiddler Commander"},"$:/plugins/kookma/commander/license":{"title":"$:/plugins/kookma/commander/license","tags":"","type":"text/vnd.tiddlywiki","text":"Distributed under an MIT license.\n\nCopyright (c) 2018-2020 [[Mohammad Rahmani|https://github.com/kookma]]\n\n<<<\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n<<<"},"$:/plugins/kookma/commander/log/ui":{"title":"$:/plugins/kookma/commander/log/ui","caption":"Log status","tags":"","type":"text/vnd.tiddlywiki","text":"<div class=\"commander-alert\" style=\"padding:5px;font-size:0.90em;\">\n<$button class=\"tc-btn-invisible tc-tiddlylink\" actions=<<delete-all-log-tiddlers>>>Clear log</$button>\n<$set name=\"resultCount\" value=\"\"\"<$count filter=\"[tag[$:/tags/Commander/LogOps]]\" />\"\"\">\n<div class=\"tc-search-results\">\n<span class=\"kk-commander-log-note\">Recent number of operations: <<resultCount>></span><br>\n<$list filter=\"[tag[$:/tags/Commander/LogOps]] +[!sort[created]]\" variable=\"logTid\">\n<b><$view tiddler=<<logTid>> field=\"created\" format=\"date\" template=\"YYYY-0MM-0DD 0hh:0mm:0ss\"/> \n<$view tiddler=<<logTid>> field=\"caption\">\n <$view tiddler=<<logTid>> field=\"title\"></$view>\n</$view>\n</b>\n<ol><$list filter=\"[<logTid>indexes[]]\" variable=\"item\">\n<li><$link to=<<item>>><<item>></$link>\n<$set name=\"myItem\" tiddler=<<logTid>> index=<<item>> >\n<$list filter=\"[<myItem>!search[existed]]\" variable=\"ignore\" \n emptyMessage=\"\"\"<span style=\"color:red;\"><<myItem>></span>\"\"\" >\n<span class=\"kk-commander-log-item\"><<myItem>></span>\n</$list>\n</$set>\n</li>\n</$list></ol>\n</$list>\n</div>\n</$set>\n</div>"},"$:/plugins/kookma/commander/macros/compConfirmAction":{"title":"$:/plugins/kookma/commander/macros/compConfirmAction","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define compConfirmAction(\nbtnLabel:\"Delete these tiddlers\", \nconfirmMessage:\"Are you sure you wish to delete\", \nstateTiddler:\"\"\ncountFilter:\"\", \nactionMacro:\"\")\n<$set name=resultCount value={{{ [subfilter<__countFilter__>count[]] }}} >\n<$reveal type=\"gt\" text=\"0\" default=<<resultCount>> >\n<$button popup=<<qualify \"\"\"$stateTiddler$\"\"\">> class=\"cmd-btn\">$btnLabel$</$button>\n</$reveal>\n<$reveal state=<<qualify \"\"\"$stateTiddler$\"\"\">> type=\"popup\" position=\"belowleft\" animate=\"yes\">\n<div class=\"tc-block-dropdown-wrapper\">\n<div class=\"tc-block-dropdown tc-edit-type-dropdown\">\n<div class=\"tc-dropdown-item-plain\">\n$confirmMessage$ <<resultCount>> tiddler(s)?\n</div>\n<div class=\"tc-dropdown-item-plain\">\n<$button class=\"cmd-btn\"> $btnLabel$\n<$macrocall $name=<<__actionMacro__>> />\n</$button>\n</div>\n</div>\n</div>\n</$reveal>\n</$set>\n\\end"},"$:/plugins/kookma/commander/macros/definition":{"title":"$:/plugins/kookma/commander/macros/definition","description":"some macro are not used REMOVE THEM","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define tempPath() $:/temp/commander\n\n\\define searchboxTid() $(tempPath)$/search-box\n\\define selectiveOpsTid() $(tempPath)$/selective-operation\n\n\n\\define workingTag() $:/tags/Commander/Working\n\\define exportTagTid() $:/temp/commander/exportTag\n\\define systemFieldsTid() $:/plugins/kookma/commander/config/systemfields\n\\define commonFieldsTid() $:/plugins/kookma/commander/config/commonfields"},"$:/plugins/kookma/commander/macros/logging":{"title":"$:/plugins/kookma/commander/macros/logging","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define set-title() $:/temp/commander/logs/tid-{{{[tag[$:/tags/Commander/LogOps]count[]add[1]]}}}\n\n\\define create-log-tiddler(msg)\n<$wikify name=\"myTitle\" text=\"\"\"<<set-title>>\"\"\">\n<$wikify name=\"myCaption\" text=\"\"\"<$macrocall $name=\"set-caption\" msg=<<__msg__>> />\"\"\">\n<$action-createtiddler $basetitle=<<myTitle>>\n$savetitle=\"$:/state/commander/log-tiddler\"\ntags=\"$:/tags/Commander/LogOps\"\ntype=\"application/json\"\ncaption=<<__msg__>>\n/>\n</$wikify>\n</$wikify>\n\\end\n\n\\define log-add-single-operation(msg:\"commander operation\", tidItem:\"no item\")\n<$action-setfield $tiddler={{$:/state/commander/log-tiddler}} $index=<<__tidItem__>> $value=<<__msg__>> />\n\\end\n\n\n\\define delete-all-log-tiddlers()\n<$action-deletetiddler $filter=\"[tag[$:/tags/Commander/LogOps]]\" />\n\\end"},"$:/plugins/kookma/commander/macros/remove-workingtag":{"title":"$:/plugins/kookma/commander/macros/remove-workingtag","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define remove-working-tag(oldTag)\n<$list filter=\"[all[shadows+tiddlers]tag<workingTag>limit[1]]\" variable=ignore>\n<<create-log-tiddler \"remove-workingTag\">>\n<$list filter=\"[all[shadows+tiddlers]tag<workingTag>]\">\n<$fieldmangler>\n<$action-sendmessage $message=\"tm-remove-tag\" $param=<<__oldTag__>> />\n</$fieldmangler>\n<$macrocall $name=\"log-add-single-operation\" msg=\"\"\"working tag `$oldTag$` removed\"\"\" tidItem=<<currentTiddler>> />\n</$list>\n</$list>\n\\end\n\n\n"},"$:/plugins/kookma/commander/macros/slider":{"title":"$:/plugins/kookma/commander/macros/slider","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define commander-slider(title, default:\"closed\")\n<$set name=\"revealState\" value=<<qualify \"$:/state/commander/reveal/$title$\">>>\n<h3>\n <$reveal type=\"nomatch\" state=<<revealState>> text=\"open\" default=\"$default$\">\n <$button class=\"tc-btn-invisible tc-tiddlylink\" set=<<revealState>> setTo=\"open\">\n {{$:/core/images/right-arrow}}\n </$button>\n </$reveal>\n <$reveal type=\"match\" state=<<revealState>> text=\"open\" default=\"$default$\">\n <$button class=\"tc-btn-invisible tc-tiddlylink\" set=<<revealState>> setTo=\"closed\">\n {{$:/core/images/down-arrow}}\n </$button>\n </$reveal>\n <$view tiddler=\"$title$\" field=\"caption\">\n <$view tiddler=\"$title$\" field=\"title\"></$view>\n </$view>\n</h3>\n\n<$reveal type=\"match\" state=<<revealState>> text=\"open\" default=\"$default$\">\n<$transclude tiddler=\"$title$\" mode=\"block\" />\n</$reveal>\n</$set>\n\\end"},"$:/plugins/kookma/commander/macros/utility":{"title":"$:/plugins/kookma/commander/macros/utility","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define display(label,text)\n<$set name=\"stateTid\" value=\"$:/temp/commander/display/popup/$label$\" >\n<$button popup=<<stateTid>> class=\"tc-btn-invisible\"><span style=\"text-decoration: underline\">$label$</span></$button>\n<$reveal type=\"nomatch\" text=\"\" default=\"\" state=<<stateTid>> animate=\"yes\">\n<span style=\"color:blue;\"><$text text=<<__text__>> /></span></$reveal>\n</$set>\n\\end\n\n\\define is-filterSeearch-newer-than-selectedTitles(TidA, TidB)\n<$set name=\"tidAMod\" value={{{ [[$TidA$]get[modified]] }}}>\n<$set name=\"tidBMod\" value={{{ [[$TidB$]get[modified]] }}}>\n<$set name=\"tidAText\" value={{{ [[$TidA$]get[text]] }}}>\n<$set name=\"tidBText\" value={{{ [[$TidB$]get[text]] }}}>\n<$list filter=\"[<__TidB__>get[text]minlength[1]]\" variable=ignore>\n<$reveal type=\"nomatch\" default=<<tidAText>> text=<<tidBText>>>\n<$list filter=\"[<tidAMod>] [<tidBMod>] +[nsort[]last[1]removesuffix<tidBMod>]\">\nA new filter search has been detected, click on the search button to apply it.\n</$list>\n</$reveal>\n</$list>\n</$set>\n</$set>\n</$set>\n</$set>\n\\end\n\n!!Remarks\n;is-filterSeearch-newer-than-selectedTitles\n* Checks `TidA` and `TidB` for modified date and text\n* If They are not empty, then\n** checks if the text of two are equal, if not\n** checks to see if `TidB` is newer or not\n** if newer shows a message, to apply the new search filter\n* Note\n** `TidA=\"$:/temp/commander\"`\n** `TidB=\"$:/temp/commander/search-box\"`\n* is-filterSeearch-newer-than-selectedTitles is called from $:/plugins/kookma/commander/search/ui\n\n;display\n* gets a label and a text\n* create an inline label\n* on click label, the text is displayed as temporary popup\n* losing focus, the text goes hidden\n* this macro is used in customized compSelective to show the active filter"},"$:/plugins/kookma/commander/readme":{"title":"$:/plugins/kookma/commander/readme","tags":"","type":"text/vnd.tiddlywiki","text":"; Tiddler Commander\nTiddler Commander, in short ''Commander'' is a unique tool for batch operations on tiddlers. Commander has the below features\n\n* Bulk tiddler creation/deletion\n* Combo search to filter and select tiddlers\n* Title operation: add, remove prefixes and suffixes, also remove cahras form begining and end of title (on renaming tiddlers, [[relink|$:/plugins/kookma/commander/help/uicomp/relink]] can be used to update title in other tiddlers)\n* Tag operation: add, remove, replace\n* Field operation: add, remove, rename, and set field value\n* SNR, search and replace in all fields including text, tags, //title//, and common fields\n* Inspect, to review and inspect tiddlers in one place, scroll among them and edit all fields (including common fields), tags, text (title is an exception!)\n* Log, create logs of all operations\n* Search, //save and load// any combination of filter search\n\n; Start Commander\n* Normally Commander adds its icon: <span class=\"cmd-doc\">{{$:/plugins/kookma/commander/images/commander.svg}}</span> to page controls.\n* Open the right sidebar and click on the <span class=\"cmd-doc\">{{$:/plugins/kookma/commander/images/commander.svg}}</span> Commander is started\n* In standard Tiddlywiki, control buttons are shown on the right sidebar under site title.\n\n; Code and demo\nFor learning plugin features, syntax, tutorial and examples see the plugin demo and code pages\n\n* Demo: https://kookma.github.io/TW-Commander/\n* Code: https://github.com/kookma/TW-Commander\n\n<style>\n.cmd-doc svg{\nwidth: 1.2em;\nheight: 1.2em;\nvertical-align: middle;}\n</style>"},"$:/plugins/kookma/commander/search/filter-button/clear":{"title":"$:/plugins/kookma/commander/search/filter-button/clear","list-after":"$:/plugins/kookma/commander/search/filter-button/search","tags":"$:/tags/Commander/Search/FilterButton","type":"text/vnd.tiddlywiki","text":"\\import $:/plugins/kookma/commander/macros/definition\n\n<$reveal type=\"nomatch\" stateTitle=<<searchboxTid>> stateField=\"text\" text=\"\">\n<$button class=\"tc-btn-invisible\" tooltip=\"clear search box and selected tiddlers\">\n<$action-setfield $tiddler=<<searchboxTid>> $field=\"text\" $value=\"\"/>\n<$action-setfield $tiddler=\"$:/temp/commander\" $field=\"text\" $value=\"\"/>\n<$action-setfield $tiddler=\"$:/state/commander/snr/select-tiddler\" $field=\"text\" $value=\"\"/><!-- SNR selection -->\n<$action-setfield $tiddler=\"$:/state/compInspect/temp/commander/selectState-tiddler\" $field=\"text\" $value=\"\"/> <!-- Inspect selection -->\n{{$:/core/images/close-button}}\n</$button>\n</$reveal>\n\n<!--\nthere is extra action should be removed\n-->"},"$:/plugins/kookma/commander/search/filter-button/dropdown":{"title":"$:/plugins/kookma/commander/search/filter-button/dropdown","tags":"$:/tags/Commander/Search/FilterButton","type":"text/vnd.tiddlywiki","text":"\\import $:/plugins/kookma/commander/macros/definition\n\\whitespace trim\n\n<span class=\"tc-popup-keep\">\n<$button popup=<<qualify \"$:/state/commander/filterDropdown\">> class=\"tc-btn-invisible\" tooltip=\"select a search filter\">\n{{$:/core/images/down-arrow}}\n</$button>\n</span>\n\n<$reveal state=<<qualify \"$:/state/commander/filterDropdown\">> type=\"popup\" position=\"belowleft\" animate=\"yes\">\n<$set name=\"tv-show-missing-links\" value=\"yes\">\n<$linkcatcher to=<<searchboxTid>> >\n<div class=\"tc-block-dropdown-wrapper\">\n<div class=\"tc-block-dropdown tc-edit-type-dropdown\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Commander/Filter]!is[draft]]\">\n<$link to={{!!filter}}><$let tv-wikilinks=\"no\"><$transclude field=\"description\"/></$let></$link>\n</$list>\n</div>\n</div>\n</$linkcatcher>\n</$set>\n</$reveal>"},"$:/plugins/kookma/commander/search/filter-button/save":{"title":"$:/plugins/kookma/commander/search/filter-button/save","list-after":"$:/plugins/kookma/commander/search/filter-button/clear","tags":"$:/tags/Commander/Search/FilterButton","type":"text/vnd.tiddlywiki","text":"\\import $:/plugins/kookma/commander/macros/definition\n\n<$reveal type=\"nomatch\" stateTitle=<<searchboxTid>> stateField=\"text\" text=\"\">\n<$button class=\"tc-btn-invisible\" tooltip=\"save current search\" popup=<<qualify \"$:/state/commander/SaveDropdown\">> >\n{{$:/core/images/file}}\n</$button>\n</$reveal>\n\n<$reveal state=<<qualify \"$:/state/commander/SaveDropdown\">> type=\"popup\" class=\"tc-popup-keep\" position=\"belowleft\" animate=\"yes\">\n<div class=\"tc-block-dropdown-wrapper\">\n<div class=\"tc-block-dropdown tc-edit-type-dropdown\">\n<div class=\"tc-dropdown-item-plain\">\nSave new search filter<br><br>\n<$edit-text\ntiddler=\"$:/temp/commander/save-new-filter\"\ntag=\"input\"\ndefault=\"\"\nclass=\"cmd-txt-area\"\nplaceholder=\"description for new filter\"\n/> <br><br>\n\n<$button class=\"tc-btn\"> Save new filter\n<$macrocall $name=\"create-new-filter\" \n description={{$:/temp/commander/save-new-filter}} \n\tbasetitle=\"$:/plugins/kookma/commander/filters/yourFilter\" \n\tfilter={{{[<searchboxTid>get[text]]}}} \t/>\n<$action-deletetiddler $tiddler=\"$:/temp/commander/save-new-filter\"/>\n<$action-deletetiddler $tiddler=<<qualify \"$:/state/commander/SaveDropdown\">> />\n</$button>\n</div>\n</div>\n</div>\n</$reveal>\n\n<!-- ToDO\ncorrect classes for textbox\n-->"},"$:/plugins/kookma/commander/search/macros/create-new-filter":{"title":"$:/plugins/kookma/commander/search/macros/create-new-filter","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define create-new-filter(description:\"\", basetitle:\"\", filter:\"\")\n<$list filter=\"[<__description__>!is[blank]]\" variable=\"ignore\">\n<$action-createtiddler \n $basetitle=\"\"\"$basetitle$\"\"\"\n tags=\"$:/tags/Commander/Filter\"\n description=<<__description__>>\n filter=\"\"\"$filter$\"\"\"\n /> \n</$list>\n\\end\n"},"$:/plugins/kookma/commander/search/macros/select-deselect":{"title":"$:/plugins/kookma/commander/search/macros/select-deselect","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define select-all()\n<$list filter=\"[subfilter<filtertext>!is[missing]!tag<workingTag>]\">\n<$fieldmangler>\n<$action-sendmessage $message=\"tm-add-tag\" $param=<<workingTag>> />\n</$fieldmangler>\n\\end\n\n\\define deselect-all()\n<$list filter=\"[tag<workingTag>]\">\n<$fieldmangler>\n<$action-sendmessage $message=\"tm-remove-tag\" $param=<<workingTag>> />\n</$fieldmangler>\n\\end"},"$:/plugins/kookma/commander/search/macros/warning":{"title":"$:/plugins/kookma/commander/search/macros/warning","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define warn-for-selectedTids-from-previous-operation()\n<$list filter=\"[tag<workingTag>]-[subfilter<filtertext>]+[count[]!match[0]] \">\n<span style=\"color:red;font-size:0.85em\">There are remained selected tiddlers from previous search! Remove them by pressing ''deselect all''!</span>\n</$list>\n\\end"},"$:/plugins/kookma/commander/search/selection":{"title":"$:/plugins/kookma/commander/search/selection","caption":"Select tiddlers","type":"text/vnd.tiddlywiki","text":"\\import $:/plugins/kookma/commander/macros/definition\n<$checkbox tiddler=<<selectiveOpsTid>> field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"no\" uncheckactions=<<deselect-all>> > Selective operation?</$checkbox>\n\n<$reveal type=\"nomatch\" stateTitle=<<selectiveOpsTid>> stateField=\"text\" text=\"yes\" tag=\"div\" class=\"kk-commander-tiddler-list kk-commander-columns3\">\n<$list filter=\"[subfilter<filtertext>!prefix[$:/temp/commander]!is[missing]]\"><$link/><br></$list>\n</$reveal>\n<$reveal type=\"match\" stateTitle=<<selectiveOpsTid>> stateField=\"text\" text=\"yes\" tag=\"div\">\n<$button actions=<<select-all>> > Select all</$button> <$button actions=<<deselect-all>> > Deselect all</$button>\n<small style=\"margin-left:10px;\">Number of tiddlers selected: <$count filter=\"[tag<workingTag>]\" /></small><br>\n<<warn-for-selectedTids-from-previous-operation>>\n</$reveal>\n\n\n<$reveal type=\"match\" stateTitle=<<selectiveOpsTid>> stateField=\"text\" text=\"yes\" tag=\"div\" class=\"kk-commander-tiddler-list kk-commander-columns3\">\n<$list filter=\"[subfilter<filtertext>!prefix[$:/temp/commander]!is[missing]]\">\n<$checkbox tag=<<workingTag>>> <$link/></$checkbox><br>\n</$list>\n</$reveal>\n\n<!-- Description\nThis tiddler implement interface to selectivly add tiddlers for commander operations.\nEach selected tiddler gets a working tag\n-->"},"$:/plugins/kookma/commander/search/ui":{"title":"$:/plugins/kookma/commander/search/ui","caption":"Commander filter search","code-body":"yes","type":"text/vnd.tiddlywiki","text":"<div class=\"tc-search tc-advanced-search\" style=\"margin-bottom:-12px;\"><!-- negative margin for displaying matches -->\nCombo search  <$edit-text tiddler=<<searchboxTid>> type=\"search\" tag=\"input\" default=\"\" placeholder=\"enter keywords or make a filter search e.g. [tag[myTag]]\" focus={{$:/plugins/kookma/commander/config/AutoFocus}}/>\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Commander/Search/FilterButton]!has[draft.of]]\"><$transclude/></$list>\n</div>"},"$:/plugins/kookma/commander/setting/ui":{"title":"$:/plugins/kookma/commander/setting/ui","caption":"Setting","icon":"$:/core/images/options-button","list-after":"$:/plugins/kookma/commander/inspect/ui","tags":"$:/tags/Commander","type":"text/vnd.tiddlywiki","text":"<<tabs \ntabsList:\"[all[shadows+tiddlers]tag[$:/tags/Commander/Setting]!has[draft.of]]\" \ndefault:\"$:/plugins/kookma/commander/setting/uicomp/snr\"\nclass:\"tc-vertical cmd-tab-colorful cmd-tab-wd\">>\n"},"$:/plugins/kookma/commander/setting/uicomp/delete-all-temp-tiddlers":{"title":"$:/plugins/kookma/commander/setting/uicomp/delete-all-temp-tiddlers","caption":"Temporary tiddlers","list-after":"$:/plugins/kookma/commander/setting/uicomp/relink","tags":"$:/tags/Commander/Setting","type":"text/vnd.tiddlywiki","text":"\\define delete-all-temps()\n<$action-deletetiddler $filter=\"[search:title[$:/temp/commander/]]\" />\n\\end\n\n<$set name=numTids value={{{ [search:title[$:/temp/commander/]count[]] }}}>\n<$reveal type=\"match\" text=\"0\" default=<<numTids>> >\nNo temporary tiddlers is existed to delete!\n</$reveal>\n<$reveal type=\"gt\" text=\"0\" default=<<numTids>> >\nNumber of temporary tiddlers (including log tiddlers): <<numTids>><br>\n</$reveal>\n</$set>\n\n<$macrocall $name=\"compConfirmAction\"\nbtnLabel=\"Delete temp tiddlers\" \nconfirmMessage=\"Are you sure you wish to delete\"\nstateTiddler=\"$:/state/commander/setting/delete-temps\"\ncountFilter=\"[search:title[$:/temp/commander/]]\"\nactionMacro=\"delete-all-temps\"/>"},"$:/plugins/kookma/commander/setting/uicomp/minlength":{"title":"$:/plugins/kookma/commander/setting/uicomp/minlength","caption":"Search minimum length","tags":"$:/tags/Commander/Setting","type":"text/vnd.tiddlywiki","text":"Controls the minimum length of a search string before results are displayed.\n\n<label class=\"kk-cmd-label\">Minlength</label><$edit-text tiddler=\"$:/plugins/kookma/commander/config/minlength\" field=text default=3 placeholder=\"enter a number\" tag=input/>"},"$:/plugins/kookma/commander/setting/uicomp/search-filters":{"title":"$:/plugins/kookma/commander/setting/uicomp/search-filters","caption":"Search filter","tags":"$:/tags/Commander/Setting","type":"text/vnd.tiddlywiki","text":"The below list shows the Commander search filter. To edit click on the link and edit tiddler for filter syntax or description\n\n<details>\n<summary>Commander saved filter search</summary>\n<dl>\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/Commander/Filter]]\" >\n<dt><$link/></dt>\n<dd><span style=\"display:inline-block;font-weight:700;width:100px\">Description:</span><$view field=\"description\"/></dd>\n<dd><span style=\"display:inline-block;font-weight:700;width:100px\">Filter:</span><$view field=\"filter\"/></dd>\n</$list>\n</dl>\n</details>"},"$:/plugins/kookma/commander/setting/uicomp/snr":{"title":"$:/plugins/kookma/commander/setting/uicomp/snr","caption":"Snr setting","tags":"$:/tags/Commander/Setting","type":"text/vnd.tiddlywiki","text":"<<snr-difftext-cleanup>>\n<div style=\"padding-left:25px;font-size:0.9em\">\n\nThe cleanup attribute determines which optional post-processing should be applied to the diffs:\n\n* none: no cleanup is performed\n* semantic (default): rewrites the diffs for human readability\n* efficient: rewrites the diffs to minimise the number of operations for subsequent processing\n</div>"},"$:/plugins/kookma/commander/snr/macros/actions":{"title":"$:/plugins/kookma/commander/snr/macros/actions","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define regexp-flags()\n{{$:/config/commander/snr/gm}}{{$:/config/commander/snr/case-sensitive}}{{$:/config/commander/snr/unicode}}\n\\end\n\n\\define snr-ui-show-diffs()\n<form class=\"cmd-snr-form\" style=\"width:100%;\">\n <fieldset>\n <legend style=\"color:#FF0000;\">Differences</legend>\nTiddler: <$link to={{$:/state/commander/snr/select-tiddler}}><$text text={{$:/state/commander/snr/select-tiddler}}/></$link>\n\n<$wikify name=flags text=<<regexp-flags>> >\n\n<$macrocall $name=\"replace-text-diff\" \n tiddler={{$:/state/commander/snr/select-tiddler}} \n field={{$:/state/commander/snr/select-tiddler/field}} \n replace={{$:/state/commander/snr/replace-text}} \n replaceWith={{$:/state/commander/snr/replace-text-with}} \n flags=<<flags>> \n wholeWords={{$:/config/commander/snr/whole-words}}\n/>\n\n</$wikify>\n</fieldset>\n</form>\n\\end\n\n\\define snr-check-diffs(tiddler:\"\", field:\"\")\n\\whitespace trim\n<$wikify name=flags text=<<regexp-flags>> >\n<$wikify name=\"result\" text=\"\"\"\n<$macrocall $name=\"replace-text\" \n tiddler=<<__tiddler__>>\n field=<<__field__>>\n replace={{$:/state/commander/snr/replace-text}} \n replaceWith={{$:/state/commander/snr/replace-text-with}} \n flags=<<flags>> \n wholeWords={{$:/config/commander/snr/whole-words}}\n/>\"\"\">\n<$reveal type=\"match\" text={{{ [<__tiddler__>get<__field__>] }}} default=<<result>> >\nsame\n</$reveal>\n<$reveal type=\"nomatch\" text={{{ [<__tiddler__>get<__field__>] }}} default=<<result>> >\ndifferent\n</$reveal>\n</$wikify>\n</$wikify>\n\\end\n\n\\define search-replace-in-tiddler-field(tiddler:\"\",field:\"\",replace:\"\",replaceWith:\"\")\n<$wikify name=ss text=<<snr-check-diffs \"\"\"$tiddler$\"\"\" \"\"\"$field$\"\"\">> >\n<$list filter=\"[<ss>] -same\" variable=ignore>\n<$list filter=\"[<__tiddler__>has[title]]\" variable=\"ignore\">\n<$wikify name=flags text=<<regexp-flags>> >\n<$macrocall $name=\"replace-text-button\" \n tiddler=<<__tiddler__>> \n field=<<__field__>>\n replace=<<__replace__>>\n replaceWith=<<__replaceWith__>> \n flags=<<flags>> \n wholeWords={{$:/config/commander/snr/whole-words}}\n/>\n<$macrocall $name=\"log-add-single-operation\" msg=\"\"\"`$field$` field has been changed\"\"\" tidItem=<<__tiddler__>> />\n<$macrocall $name=\"clear-select-tiddler-if-field-is-title\" tiddler=<<__tiddler__>> field=<<__field__>> />\n</$wikify>\n</$list>\n</$list>\n</$wikify>\n\\end\n\n\\define clear-select-tiddler-if-field-is-title(tiddler, field)\n<$list filter=\"[<__field__>] +[search[title]]\" variable=\"ignore\">\n<$action-setfield $tiddler=\"$:/state/commander/snr/select-tiddler\" text=\"\"/>\n<$action-setfield $tiddler=\"$:/temp/commander/selected-titles\" $index=<<__tiddler__>> />\n</$list>\n\\end\n\n\\define search-replace-in-field-bulk()\n<$list filter=\"[subfilter<searchfilter>!is[missing]limit[1]]\" variable=ignore><!--check if filter is empty -->\n<<create-log-tiddler \"SNR operation\">>\n<$list filter=\"[subfilter<searchfilter>!is[missing]]\" >\n <$macrocall \n $name=\"search-replace-in-tiddler-field\"\n tiddler=<<currentTiddler>> \n field={{$:/state/commander/snr/select-tiddler/field}} \n replace={{$:/state/commander/snr/replace-text}} \n replaceWith={{$:/state/commander/snr/replace-text-with}} \n />\n</$list>\n</$list>\n\\end\n\n\\define search-replace-in-field-single-tiddler()\n<<create-log-tiddler \"SNR operation\">>\n <$macrocall \n $name=\"search-replace-in-tiddler-field\"\n tiddler={{$:/state/commander/snr/select-tiddler}}\n field={{$:/state/commander/snr/select-tiddler/field}} \n replace={{$:/state/commander/snr/replace-text}} \n replaceWith={{$:/state/commander/snr/replace-text-with}} \n />\n\\end\n\n\\define snr-actions()\n<$button actions=<<search-replace-in-field-single-tiddler>> tooltip=\"search and replace in a single tiddler\" class=\"cmd-btn\">\nReplace?\n</$button> \n<!-- replace in bulk tiddler with confirmation -->\n<$macrocall $name=\"compConfirmAction\"\ncountFilter=<<searchfilter>>\nactionMacro=\"search-replace-in-field-bulk\"\nstateTiddler=\"$:/state/commander/SelectiveReplaceAllDropdown\"\nconfirmMessage=\"Are you sure you wish to replace text in\" \nbtnLabel=\"Replace all?\"/>\n\\end"},"$:/plugins/kookma/commander/snr/macros/inputs":{"title":"$:/plugins/kookma/commander/snr/macros/inputs","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define snr-ui-inputs()\n<form class=\"cmd-snr-form\">\n <fieldset>\n <legend>Search and Replace</legend>\n\n<div class=\"item\">\n<label>Tiddler title</label>\n<$select tiddler=\"$:/state/commander/snr/select-tiddler\" default=\"\" class=\"cmd-snr-textbox\">\n<option value=\"\">None</option>\n<$list filter=\"[subfilter<searchfilter>]\" >\n<option value=<<currentTiddler>>><$text text=<<currentTiddler>>/></option>\n</$list>\n</$select>\n</div>\n\n<div class=\"item\">\n<label>Field name</label>\n<$select tiddler=\"$:/state/commander/snr/select-tiddler/field\" default=\"text\">\n<$list filter=\"[subfilter<searchfilter>fields[]]\">\n<option value=<<currentTiddler>>><$text text=<<currentTiddler>>/></option>\n</$list>\n</$select>\n</div>\n\n<div class=\"item\">\n<label>Search text</label>\n<$edit-text \n tiddler=\"$:/state/commander/snr/replace-text\" \n tag=\"input\" \n default=\"\" \n placeholder=\" text to replace\"\n class=\"cmd-snr-textbox\"/>\n</div>\n\n<div class=\"item\">\n<label>Replace with </label>\n<$edit-text \n tiddler=\"$:/state/commander/snr/replace-text-with\" \n tag=\"input\" \n default=\"\" \n placeholder=\" new text\"\n class=\"cmd-snr-textbox\"/>\n</div>\n<!-- Use relink to update titles -->\n<$list filter=\"[[$:/state/commander/snr/select-tiddler/field]get[text]match[title]]\" variable=ignore>\n<div class=\"item-relink\">{{$:/plugins/kookma/commander/config/relink}}</div>\n</$list>\n</fieldset>\n</form>\n\n\n\\end"},"$:/plugins/kookma/commander/snr/macros/regexp-flags":{"title":"$:/plugins/kookma/commander/snr/macros/regexp-flags","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define snr-regexp-flags()\n\n<form class=\"cmd-snr-form\">\n<fieldset>\n<legend>Search flags</legend>\n\n<$checkbox \n tiddler=\"$:/config/commander/snr/case-sensitive\" \n field=\"text\" \n checked=\"i\" \n unchecked=\"\"\n/>  ignore case<br>\n\n<$checkbox \n tiddler=\"$:/config/commander/snr/whole-words\" \n field=\"text\" \n checked=\"words\" \n unchecked=\"characters\"\n/>  whole words<br>\n\n<$checkbox \n tiddler=\"$:/config/commander/snr/unicode\" \n field=\"text\" \n checked=\"u\" \n unchecked=\"\"\n/>  unicode<br>\n\n<br>\n\n<$radio\n tiddler=\"$:/config/commander/snr/gm\" \n field=\"text\" \n value=\"\">  first match \n</$radio><br>\n\n<$radio\n tiddler=\"$:/config/commander/snr/gm\" \n field=\"text\" \n value=\"g\">  global match\n</$radio><br>\n\n<$radio\n tiddler=\"$:/config/commander/snr/gm\" \n field=\"text\" \n value=\"m\">  multiline mode\n</$radio><br>\n\n<$radio\n tiddler=\"$:/config/commander/snr/gm\" \n field=\"text\" \n value=\"mg\">  global multiline mode\n</$radio>\n\n</fieldset>\n</form>\n\\end"},"$:/plugins/kookma/commander/snr/macros/regexpsub.js":{"title":"$:/plugins/kookma/commander/snr/macros/regexpsub.js","text":"/*\\\ncreated: 20190214160253135\ntype: application/javascript\ntitle: $:/plugins/kookma/commander/snr/macros/regexpsub.js\nmodified: 20200307092210323\nmodule-type: macro\n\nMake regular expression substitutions\nDeveloped by Mark S\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n\"use strict\";\n\nexports.name = \"regexpsub\";\n\nexports.params = [\n\t{name: \"searchValue\"},\n\t{name: \"replaceValue\"},\n\t{name: \"sourceText\"},\n\t{name: \"flags\"},\n {name: \"wholeWords\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(searchValue, replaceValue, sourceText, flags = \"gi\", wholeWords = \"characters\") {\n \n try {\n \n\tvar searchText;\n if(wholeWords.toLowerCase() === 'words'){\n searchText = \"\\\\b\" + searchValue + \"\\\\b\";\n } else{\n searchText = searchValue;\n }\n\t\t\n searchText = new RegExp(searchText, flags);\n return sourceText.replace(searchText,replaceValue);\n\n } \n catch(err) { \n return \"ERROR IN REG EXPRESSION. YOU MAY NEED TO ESCAPE VALUES\"; \n }\n \n };\n\n})();\n","created":"20190214160253135","type":"application/javascript","modified":"20200307092210323","module-type":"macro"},"$:/plugins/kookma/commander/snr/macros/replace-text":{"title":"$:/plugins/kookma/commander/snr/macros/replace-text","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define nothing-to-replace(tiddler, field:\"text\") \n<$diff-text source={{{ [<__tiddler__>get<__field__>] }}} dest={{{ [<__tiddler__>get<__field__>] }}} />\n\\end\n\n\\define replace-text(tiddler:\"\",field:\"text\",replace:\"\",replaceWith:\"\",flags:\"\", wholeWords:\"\")\n\\whitespace trim\n<$wikify name=\"source\" text=\"\"\"<$view tiddler=<<__tiddler__>> field=<<__field__>> mode=\"block\" format=\"text\"/>\"\"\">\n<$wikify name=\"result\" \n text=\"\"\"<$macrocall $name=\"regexpsub\" $type=\"text/plain\" \n sourceText=<<source>> \n searchValue=<<__replace__>> \n replaceValue=<<__replaceWith__>> \n flags=<<__flags__>> \n wholeWords=<<__wholeWords__>> />\"\"\" \n >\n<$text text=<<result>>/>\n</$wikify>\n</$wikify>\n\\end\n\n\\define replace-text-diff(tiddler:\"\", field:\"text\", replace, replaceWith, flags:\"\", wholeWords:\"\")\n<$list filter=\"[<__tiddler__>get<__field__>minlength[1]]\" variable=null emptyMessage=\"No tiddler is selected, or tiddler is empty.\">\n<$list filter=\"[<__replace__>minlength[1]]\" variable=null emptyMessage=<<nothing-to-replace \"\"\"$tiddler$\"\"\" \"\"\"$field$\"\"\">> >\n\n<$wikify name=\"result\" \n text=\"\"\"<$macrocall $name=\"replace-text\" \n tiddler=<<__tiddler__>> field=<<__field__>> \n replace=<<__replace__>> \n replaceWith=<<__replaceWith__>> \n flags=<<__flags__>>\n wholeWords=<<__wholeWords__>> />\"\"\"\n >\n<$diff-text source={{{ [<__tiddler__>get<__field__>] }}} dest=<<result>> cleanup={{$:/state/commander/snr/setting/cleanup}}/>\n</$wikify>\n\n</$list>\n</$list>\n\\end\n\n\\define replace-text-button(tiddler:\"\", field:\"text\", replace:\"\", replaceWith:\"\", flags:\"\", wholeWords:\"\")\n\\whitespace trim\n<$list filter=\"[<__tiddler__>get<__field__>minlength[1]]\" variable=null>\n<$list filter=\"[<__replace__>minlength[1]]\" variable=null>\n<$wikify name=\"result\" \n text=\"\"\"<$macrocall $name=\"replace-text\" \n tiddler=<<__tiddler__>> \n field=<<__field__>> \n replace=<<__replace__>> \n replaceWith=<<__replaceWith__>> \n flags=<<__flags__>>\n wholeWords=<<__wholeWords__>> />\"\"\"\n >\n<$reveal type=\"nomatch\" default=\"title\" text=<<__field__>> >\n <$action-setfield $tiddler=<<__tiddler__>> $field=<<__field__>> $value=<<result>>/>\n</$reveal>\n<$reveal type=\"match\" default=\"title\" text=<<__field__>> >\n <$action-sendmessage $message=\"tm-rename-tiddler\" from=<<__tiddler__>> to=<<result>> />\n</$reveal>\n</$wikify>\n</$list>\n</$list>\n\\end\n"},"$:/plugins/kookma/commander/snr/ui":{"title":"$:/plugins/kookma/commander/snr/ui","caption":"Snr","icon":"$:/core/images/gitter","list-after":"$:/plugins/kookma/commander/inspect/ui","tags":"$:/tags/Commander","type":"text/vnd.tiddlywiki","text":"Search and replcae in tiddler fields!\n\n<<tabs \ntabsList:\"[all[shadows+tiddlers]tag[$:/tags/Commander/SnrOps]!has[draft.of]]\" \ndefault:\"$:/plugins/kookma/commander/snr/uicomp/replace-text\"\nclass:\"tc-vertical cmd-tab-colorful cmd-tab-wd\">>\n\n"},"$:/plugins/kookma/commander/snr/uicomp/replace-text":{"title":"$:/plugins/kookma/commander/snr/uicomp/replace-text","caption":"Search and replace","icon":"$:/core/images/gitter","tags":"$:/tags/Commander/SnrOps","type":"text/vnd.tiddlywiki","text":"<div class=\"cmd-snr-row\">\n<div class=\"cmd-snr-double-column\">\n<<snr-ui-inputs>>\n</div>\n<div class=\"cmd-snr-column\">\n<<snr-regexp-flags>> \n</div>\n</div>\n<<snr-ui-show-diffs>>\n<<snr-actions>>"},"$:/plugins/kookma/commander/styles/buttons":{"title":"$:/plugins/kookma/commander/styles/buttons","text":"/*\n.cmd-btn{\n\tfont-size:0.85em;\n\tfont-size:300;\n\tcolor: #666666;\n\tbackground-color: #d8d8d8;\n\tpadding: 3px 8px 3px 8px;\n\tborder: 1px solid #a1a1a1;\n}\n*/\n\n.cmd-btn-wd{\n\twidth:20ch;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/commander/styles/compInspect/table":{"title":"$:/plugins/kookma/commander/styles/compInspect/table","text":"/*compInspect table*/\n.cmd-ci-table{\n\tborder-collapse: collapse;\n}\n\n.cmd-ci-table .leftcol{\n\twidth:20%;\n\tvertical-align: top;\n\ttext-align: right;\n\tbackground-color:#f0f0f0;\n}\n.cmd-ci-table .rightcol{\n\twidth:650px;\n}\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/commander/styles/log":{"title":"$:/plugins/kookma/commander/styles/log","tags":"$:/tags/Stylesheet","type":"text/vnd.tiddlywiki","text":".commander-alert {\n\tpadding: 0.75rem 1.25rem;\n\tmargin-bottom: 1rem;\n\t/*border: 1px dotted gray;*/\n\tborder-radius: 0.25rem;\n\t\n\tcolor: <<colour message-foreground>>; /*#0c5460;*/\n\tbackground-color:<<colour message-background>>; /*#d1ecf1;*/\n\tborder-color: <<colour message-border>>; /*#bee5eb;*/\n}\n\n.kk-commander-log-note{\n\tfont-style:italic; font-size:small;\n}\n.kk-commander-log-item {\n\t/*color:green;*/\n}"},"$:/plugins/kookma/commander/styles/other":{"title":"$:/plugins/kookma/commander/styles/other","text":"\n/* This is missing and I added it */\n.cmd-txt-area{\n\tmin-width:25ch;\n}\n\n.cmd-txt-area2{\n\tmin-width:50ch;\n}\n\n/* Correct this later*/\n.kk-cmd-label{\n\tdisplay:inline-block;\n\twidth:85px;\n}\n\n.kk-cmd-label2{\n\tdisplay:inline-block;\n\twidth:120px;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/commander/styles/select-width":{"title":"$:/plugins/kookma/commander/styles/select-width","text":".cmd-sl{\n width:8ch;\n}\n\n.cmd-select-wd{\n min-width:25ch;\n}\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/commander/styles/snr/flexbox":{"title":"$:/plugins/kookma/commander/styles/snr/flexbox","text":".cmd-snr-row {\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n width: 100%;\n}\n.cmd-snr-column {\n display: flex;\n flex-direction: column;\n flex-basis: 100%;\n flex: 1\n}\n\n.cmd-snr-double-column {\n display: flex;\n flex-direction: column;\n flex-basis: 100%;\n flex: 2\n}\n\n@media screen and (min-width: 800px) {\n .cmd-snr-column {\n flex: 1\n }\n\n .cmd-snr-double-column {\n flex: 2\n }\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/commander/styles/snr/form":{"title":"$:/plugins/kookma/commander/styles/snr/form","text":".cmd-snr-form{\n width:100%;\n}\n\n.cmd-snr-textbox {\n width:100%;\n box-sizing: border-box;\n max-width:40ch;\n }\n\n.cmd-snr-form select, .cmd-snr-form input{\n margin: 0.2rem;\n}\n.cmd-snr-form legend{\n background: #f5f5f5;\n padding: 3px 6px;\n}\n\n.cmd-snr-form { padding:20px; }\n.cmd-snr-form .item { padding: 2px; margin:2px; }\n.cmd-snr-form .item label { display:inline-block; width:100px; margin-left:5px; }\n.cmd-snr-form .item input { display:inline-block; }\n.cmd-snr-form .item select { display:inline-block; }\n\n/* only for relink checkbox on renaming tiddler */\n.cmd-snr-form .item-relink { padding: 2px; margin:2px; }\n\n ","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/commander/styles/tiddler-list":{"title":"$:/plugins/kookma/commander/styles/tiddler-list","text":".kk-commander-tiddler-list {\n\tfont-size:small; \n\tborder-left:0.5px dotted grey;\n\tpadding-left:10px;\n\toverflow-y:auto;\n\tmax-width:100%;\n/*\tmax-height:$(height)$; */\n}\n\n.kk-commander-columns1 { display:block; column-count:1; column-gap:1em; }\n.kk-commander-columns2 { display:block; column-count:2; column-gap:1em; }\n.kk-commander-columns3 { display:block; column-count:3; column-gap:1em; }\n.kk-commander-columns4 { display:block; column-count:4; column-gap:1em; }\n.kk-commander-columns5 { display:block; column-count:5; column-gap:1em; }","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/commander/tag/macros/add-remove-replace":{"title":"$:/plugins/kookma/commander/tag/macros/add-remove-replace","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define add-new-tag-bulk(newTag:\"\")\n<$list filter=\"[subfilter<searchfilter>!is[missing]limit[1]]\" variable=ignore><!--check if filter is empty -->\n<$list filter=\"[<__newTag__>!is[blank]]\" variable=null>\n<<create-log-tiddler \"add-new-tag-bulk\">>\n<$list filter=\"[subfilter<searchfilter>!tag<__newTag__>]\">\n<$fieldmangler>\n<$action-sendmessage $message=\"tm-add-tag\" $param=<<__newTag__>> />\n</$fieldmangler>\n<$macrocall $name=\"log-add-single-operation\" msg=\"\"\"new tag `$newTag$` added\"\"\" tidItem=<<currentTiddler>> />\n</$list>\n</$list>\n</$list>\n\\end\n\n\\define remove-old-tag-bulk(oldTag:\"\")\n<$list filter=\"[subfilter<searchfilter>!is[missing]limit[1]]\" variable=ignore>\n<$list filter=\"[<__oldTag__>!is[blank]]\" variable=null>\n<<create-log-tiddler \"remove-old-tag-bulk\">>\n<$list filter=\"[subfilter<searchfilter>tag<__oldTag__>]\">\n<$fieldmangler>\n<$action-sendmessage $message=\"tm-remove-tag\" $param=<<__oldTag__>> />\n</$fieldmangler>\n<$macrocall $name=\"log-add-single-operation\" msg=\"\"\"old tag `$oldTag$` removed\"\"\" tidItem=<<currentTiddler>> />\n</$list>\n</$list>\n</$list>\n\\end\n\n\n\\define replace-tag-bulk(oldTag:\"\", newTag:\"\")\n<$list filter=\"[subfilter<searchfilter>!is[missing]limit[1]]\" variable=ignore>\n<$list filter=\"[<__oldTag__>!is[blank]]\" variable=null>\n<$list filter=\"[<__newTag__>!is[blank]]\" variable=null>\n<<create-log-tiddler \"replace-tag-bulk\">>\n<$list filter=\"[subfilter<searchfilter>]\">\n<$list filter=\"[<currentTiddler>tag<__oldTag__>]\" variable=ignore\n emptyMessage=\"\"\"<$macrocall $name=\"log-add-single-operation\" msg=\"//has not tag `$oldTag$`. Operation ignored.//\" tidItem=<<currentTiddler>> /> \"\"\">\n<$fieldmangler>\n<$action-sendmessage $message=\"tm-add-tag\" $param=<<__newTag__>> />\n<$action-sendmessage $message=\"tm-remove-tag\" $param=<<__oldTag__>> />\n</$fieldmangler>\n<$macrocall $name=\"log-add-single-operation\" msg=\"\"\"tag `$oldTag$` replaced with `$newTag$`\"\"\" tidItem=<<currentTiddler>> />\n</$list>\n</$list>\n</$list>\n</$list>\n</$list>\n\\end\n\n"},"$:/plugins/kookma/commander/tag/ui":{"title":"$:/plugins/kookma/commander/tag/ui","caption":"Tag","list-after":"$:/plugins/kookma/commander/title/ui","tags":"$:/tags/Commander","type":"text/vnd.tiddlywiki","text":"<<tabs \ntabsList:\"[all[shadows+tiddlers]tag[$:/tags/Commander/TagOps]!has[draft.of]]\" default:\"$:/plugins/kookma/commander/tag/uicomp/add-remove-tags\" \nclass:\"tc-vertical cmd-tab-wd\">>\n\n"},"$:/plugins/kookma/commander/tag/uicomp/add-remove-tags":{"title":"$:/plugins/kookma/commander/tag/uicomp/add-remove-tags","caption":"Add remove tags","tags":"$:/tags/Commander/TagOps","type":"text/vnd.tiddlywiki","text":"<label class=\"kk-cmd-label\">New tag</label><$edit-text\ntiddler=\"$:/temp/commander/tag-add-remove/new\"\ntag=\"input\"\ndefault=\"\"\nclass=\"cmd-txt-area\"\nplaceholder=\" new tag\"/>\n<$button class=\"cmd-btn cmd-btn-wd\"> Add new tag\n<$macrocall $name=\"add-new-tag-bulk\" newTag={{$:/temp/commander/tag-add-remove/new}} />\n</$button>\n\n<label class=\"kk-cmd-label\">Old tag</label><$select class=\"cmd-select-wd\" tiddler=\"$:/temp/commander/tag-add-remove/old\" default=\"\" >\n<$list filter=\"[subfilter<searchfilter>!is[missing]tags[]sort[]]-[<workingTag>]\" >\n<option><$view field=\"title\"/></option>\n</$list>\n</$select>\n<$button class=\"cmd-btn cmd-btn-wd\"> Remove old tag\n<$macrocall $name=\"remove-old-tag-bulk\" oldTag={{$:/temp/commander/tag-add-remove/old}} />\n</$button>\n\n"},"$:/plugins/kookma/commander/tag/uicomp/replace-tags":{"title":"$:/plugins/kookma/commander/tag/uicomp/replace-tags","caption":"Replace tags","list-after":"$:/plugins/kookma/commander/tag/uicomp/add-remove-tags","tags":"$:/tags/Commander/TagOps","type":"text/vnd.tiddlywiki","text":"<label class=\"kk-cmd-label\">Old tag</label><$select class=\"cmd-select-wd\" tiddler=\"$:/temp/commander/replace-tags/old\" default=\"\">\n<$list filter=\"[subfilter<searchfilter>!is[missing]tags[]sort[]]-[<workingTag>]\" >\n<option><$view field=\"title\"/></option>\n</$list>\n</$select>\n\n<label class=\"kk-cmd-label\">New tag</label><$edit-text\ntiddler=\"$:/temp/commander/replace-tags/new\"\ntag=\"input\"\ndefault=\"\"\nclass=\"cmd-txt-area\"\nplaceholder=\" new tag\"\n/>\n<$button class=\"cmd-btn cmd-btn-wd\"> Replace tag\n<$macrocall $name=\"replace-tag-bulk\" \noldTag={{$:/temp/commander/replace-tags/old}} \nnewTag={{$:/temp/commander/replace-tags/new}} />\n</$button>\n\n"},"$:/plugins/kookma/commander/template/base":{"title":"$:/plugins/kookma/commander/template/base","caption":"base","tags":"$:/tags/Commander/Template","type":"text/vnd.tiddlywiki","text":"This is a simple one!"},"$:/plugins/kookma/commander/template/doc":{"title":"$:/plugins/kookma/commander/template/doc","caption":"documentation","tags":"$:/tags/Commander/Template","type":"text/vnd.tiddlywiki","version":"beta","text":"!! Introduction\n<<<\nshort introduction\n<<<\n\n!! Content and parameters\n<<<\nThe content, attributes and parameters\n\n|!Parameter |!Description |\n|par1 |description |\n|par2 |description |\n<<<\n\n!! Example i\n<<<\nexample here\n<<<\n\n!! Example ii\n<<<\nanother example here\n<<<\n\n!! References\n<<<\n# one\n# Two\n<<<"},"$:/plugins/kookma/commander/template/simple":{"title":"$:/plugins/kookma/commander/template/simple","caption":"simple","tags":"$:/tags/Commander/Template","type":"text/vnd.tiddlywiki","version":"beta","text":"! Heading one\nThis is sunsection i\n\n!! Heading two\nThis is subsection ii.\n\n* one\n* two\n* three\n\n!!! Heading three\nThis is subsction iii\n\n```\nA sample code\n```\n\n!! Sample table\n|Table 1. This is caption|c\n|Heading one|Heading Two|Heading Three|h\n|r1|100|200|\n|r2|02|03|\n|r3|-1|-2|\n"},"$:/plugins/kookma/commander/tiddler/macros/create":{"title":"$:/plugins/kookma/commander/tiddler/macros/create","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define log-create(msg:\"Tiddler existed, operation ignored\")\n<$action-setfield $tiddler={{$:/state/commander/log-tiddler}} $index=\"$(newTitle)$\" $value=\"$msg$\" />\n\\end\n\n\\define bulk-tiddler-creator(baseTitle, baseTags, datafieldsTid, numberTiddler:\"1\")\n<$list filter=\"[<__baseTitle__>!is[blank]]\" variable=ignore>\n<<create-log-tiddler \"bulk-tiddler-creator\">>\n<$list filter=\"[range[9]addprefix[00]] [range[10,99]addprefix[0]] [range[100,500]] +[limit<__numberTiddler__>]\" variable=\"L1\">\n<$list filter=\"[<__baseTitle__>addsuffix<L1>]\" variable=\"newTitle\">\n<$list filter=\"[<newTitle>] -[has[title]]\" variable=\"ignore\" emptyMessage=<<log-create>> >\n<$action-createtiddler $basetitle=<<newTitle>> tags=<<__baseTags__>> /> \n<$vars datafieldsTid=<<__datafieldsTid__>> >\n<<add-bulk-fields>>\n</$vars>\n<<log-create \"Tiddler created\">>\n</$list>\n</$list>\n</$list>\n</$list>\n\\end\n\n\\define oneTid-with-template()\n<$tiddler tiddler=<<newTitle>> >\n <$action-setfield $tiddler=<<myTemplate>> title=<<currentTiddler>> /> \n <$fieldmangler>\n <$list filter=\"[enlist<myTags>]\" variable=newTag>\n <$action-sendmessage $message=\"tm-add-tag\" $param=<<newTag>> />\n </$list><!--next remove extra tag used by template from new created tiddler-->\n <$action-sendmessage $message=\"tm-remove-tag\" $param=\"$:/tags/Commander/Template\" />\n</$fieldmangler>\n</$tiddler>\n\\end\n\n\n\\define bulk-tiddler-with-template-creator(baseTitle, baseTags, datafieldsTid, numberTiddler:\"1\", template:\"\")\n<$list filter=\"[<__baseTitle__>!is[blank]]\" variable=ignore>\n<<create-log-tiddler \"bulk-tiddler-creator with template\">>\n<$vars datafieldsTid=<<__datafieldsTid__>>\n myTags=<<__baseTags__>> \n myTemplate=<<__template__>> >\n<$list filter=\"[range[9]addprefix[00]] [range[10,99]addprefix[0]] [range[100,500]] +[limit<__numberTiddler__>]\" variable=\"L1\">\n<$list filter=\"[<__baseTitle__>addsuffix<L1>]\" variable=\"newTitle\">\n<$list filter=\"[<newTitle>!has[title]]\" variable=\"ignore\" emptyMessage=<<log-create>> >\n <<oneTid-with-template>>\n <<add-bulk-fields>>\n <<log-create \"Tiddler created\">>\n</$list>\n</$list>\n</$list>\n</$vars>\n</$list>\n\\end\n\n"},"$:/plugins/kookma/commander/tiddler/macros/delete":{"title":"$:/plugins/kookma/commander/tiddler/macros/delete","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define log-delete-selectively(item, msg:\"Tiddler deleted\")\n<$action-setfield $tiddler={{$:/state/commander/log-tiddler}} $index=<<__item__>> $value=\"$msg$\" />\n\\end\n\n\\define delete-tiddlers-selective-bulk()\n<$list filter=\"[subfilter<searchfilter>limit[1]]\" variable=\"ignore\"><!-- at least searchfilter shall return one tiddler-->\n<<create-log-tiddler \"delete-tiddler-selectively\">>\n<$list filter=\"[subfilter<searchfilter>]\" variable=\"Item\">\n<$action-deletetiddler $tiddler=<<Item>> />\n<$macrocall $name=\"log-delete-selectively\" item=<<Item>> />\n</$list>\n</$list>\n\\end"},"$:/plugins/kookma/commander/tiddler/macros/export":{"title":"$:/plugins/kookma/commander/tiddler/macros/export","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define add-export-tag()\n<$list filter=<<searchfilter>> >\n<$fieldmangler>\n<$list filter=\"[enlist{$(exportTagTid)$}]~[[exported]]\" variable=\"exportTag\" ><!-- add all export tags-->\n<$action-sendmessage $message=\"tm-add-tag\" $param=<<exportTag>> />\n</$list>\n<$action-sendmessage $message=\"tm-remove-tag\" $param=<<workingTag>> />\n</$fieldmangler>\n</$list>\n\\end\n\n\\define remove-export-tag()\n<$list filter=<<searchfilter>> >\n<$fieldmangler>\n<$list filter=\"[<selectiveOpsTid>get[text]match[yes]]\" variable=ignore>\n<$action-sendmessage $message=\"tm-add-tag\" $param=<<workingTag>> />\n</$list>\n<$list filter=\"[enlist{$(exportTagTid)$}]~[[exported]]\" variable=\"exportTag\" ><!-- remove all export tags-->\n<$action-sendmessage $message=\"tm-remove-tag\" $param=<<exportTag>> />\n</$list>\n</$fieldmangler>\n</$list>\n\\end\n\n\\define log-export-selectively(msg:\"Tiddler exported\")\n<$list filter=\"[subfilter<searchfilter>]\" variable=\"item\">\n<$action-setfield $tiddler={{$:/state/commander/log-tiddler}} $index=<<item>> $value=\"$msg$\" />\n</$list>\n\\end\n\n\n\\define commander-exportButton(exportFilter:\"[!is[system]sort[title]]\",lingoBase,baseFilename:\"tiddlers\")\n<span class=\"tc-popup-keep\"><$button popup=<<qualify \"$:/state/popup/export\">> tooltip={{$lingoBase$Hint}} aria-label={{$lingoBase$Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/export-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$lingoBase$Caption}}/></span>\n</$list>\n</$button></span><$reveal state=<<qualify \"$:/state/popup/export\">> type=\"popup\" position=\"below\" animate=\"yes\">\n<div class=\"tc-drop-down\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Exporter]]\">\n<$set name=\"extension\" value={{!!extension}}>\n<$button class=\"tc-btn-invisible\">\n<<create-log-tiddler \"exportButton: bulk tiddlers exported\">>\n<$macrocall $name=\"log-export-selectively\"/><!--log any tiddler exported-->\n<<add-export-tag>><!-- by Mohammad-->\n<$action-sendmessage $message=\"tm-download-file\" $param=<<currentTiddler>> exportFilter=\"\"\"$exportFilter$\"\"\" filename=<<exportButtonFilename \"\"\"$baseFilename$\"\"\">>/>\n<$action-deletetiddler $tiddler=<<qualify \"$:/state/popup/export\">>/>\n<$transclude field=\"description\"/>\n<<remove-export-tag>><!-- by Mohammad-->\n</$button>\n</$set>\n</$list>\n</div>\n</$reveal>\n\\end"},"$:/plugins/kookma/commander/tiddler/ui":{"title":"$:/plugins/kookma/commander/tiddler/ui","caption":"Tiddler","list-before":"$:/plugins/kookma/commander/title/ui","tags":"$:/tags/Commander","type":"text/vnd.tiddlywiki","text":"<<tabs \ntabsList:\"[all[shadows+tiddlers]tag[$:/tags/Commander/TiddlerOps]!has[draft.of]]\"\ndefault:\"$:/plugins/kookma/commander/tiddler/uicomp/create-tiddlers\"\nclass:\"tc-vertical cmd-tab-colorful cmd-tab-wd\">>\n"},"$:/plugins/kookma/commander/tiddler/uicomp/create-tiddlers":{"title":"$:/plugins/kookma/commander/tiddler/uicomp/create-tiddlers","caption":"Create tiddlers","tags":"$:/tags/Commander/TiddlerOps","type":"text/vnd.tiddlywiki","text":"<label class=\"kk-cmd-label\">Base title</label>\n<$edit-text \n tiddler=\"$:/temp/commander/tiddler-base-title\" \n tag=\"input\" default=\"\"\n placeholder=\" base title\" \n class=\"cmd-txt-area\"/><br>\n\n<label class=\"kk-cmd-label\">Tags</label>\n<$edit-text \n tiddler=\"$:/temp/commander/tiddler-base-tags\" \n tag=\"input\" default=\"\"\n placeholder=\" tags\" \n class=\"cmd-txt-area\"\n/> \n\n<!-- add interface for adding fields -->\n<$macrocall $name=\"add-more-fields-selective-ui\"\n datafieldsTid=\"$:/temp/commander/tiddler/datafields/createTiddler\"\n stateTiddler=\"$:/state/commander/tiddler-addfields-status\" />\n\n\n<$checkbox \n tiddler=\"$:/state/commander/tiddler-template-status\" \n field=\"text\" \n checked=\"use-template\" unchecked=\"no-template\"\n default=\"no-template\"> \n Use template?\n</$checkbox>\n\n<$reveal type=\"match\" state=\"$:/state/commander/tiddler-template-status\" text=\"use-template\" default=\"no-template\" >\nTemplate\n<$select tiddler=\"$:/temp/commander/template-newtiddler\" \n default=\"$:/plugins/kookma/commander/template/base\">\n<$list filter='[all[shadows+tiddlers]tag[$:/tags/Commander/Template]]'>\n<option value=<<currentTiddler>> >\n<$view field=\"caption\"><$view field=\"title\"/></$view>\n</option>\n</$list>\n</$select>\n<$button class=\"tc-btn-invisible\"> {{$:/core/images/edit-button}}\n <$action-sendmessage $message=\"tm-edit-tiddler\" \n $param={{{ [[$:/temp/commander/template-newtiddler]get[text]]~[[$:/plugins/kookma/commander/template/base]] }}} />\n</$button>\n\n</$reveal>\n\nNumber of tiddlers  \n<$select tiddler=\"$:/temp/commander/tiddler-base-number\" default='1'>\n<$list filter='[range[1,19, 1]] [range[20,50, 5]] [range[60,100,10]] [range[200,500,100]]'>\n<option value=<<currentTiddler>>><$view field='title'/></option>\n</$list>\n</$select>\n\n<!-- call macros for create tiddlers -->\n<$reveal type=\"nomatch\" state=\"$:/state/commander/tiddler-template-status\" text=\"use-template\" default=\"no-template\">\n <$button class=\"cmd-btn cmd-btn-wd\"> Create tiddlers\n <$macrocall $name=\"bulk-tiddler-creator\"\n baseTitle={{$:/temp/commander/tiddler-base-title}}\n baseTags={{$:/temp/commander/tiddler-base-tags}}\n datafieldsTid=\"$:/temp/commander/tiddler/datafields/createTiddler\"\n numberTiddler={{$:/temp/commander/tiddler-base-number}} />\n </$button>\n</$reveal>\n<$reveal type=\"match\" state=\"$:/state/commander/tiddler-template-status\" text=\"use-template\" default=\"no-template\">\n <$button class=\"cmd-btn cmd-btn-wd\"> Create tiddlers\n <$macrocall $name=\"bulk-tiddler-with-template-creator\"\n baseTitle={{$:/temp/commander/tiddler-base-title}}\n baseTags={{$:/temp/commander/tiddler-base-tags}}\n datafieldsTid=\"$:/temp/commander/tiddler/datafields/createTiddler\"\n numberTiddler={{$:/temp/commander/tiddler-base-number}}\n template={{$:/temp/commander/template-newtiddler}}/>\n </$button>\n</$reveal>\n"},"$:/plugins/kookma/commander/tiddler/uicomp/delete-tiddlers":{"title":"$:/plugins/kookma/commander/tiddler/uicomp/delete-tiddlers","caption":"Delete tiddlers","list-after":"$:/plugins/kookma/commander/tiddler/uicomp/create-tiddlers","tags":"$:/tags/Commander/TiddlerOps","type":"text/vnd.tiddlywiki","text":"<$set name=numTids value={{{[subfilter<searchfilter>!is[missing]count[]] }}}>\n<$reveal type=\"match\" text=\"0\" default=<<numTids>> >\nNo tiddlers is selected for deleteion!\n</$reveal>\n<$reveal type=\"gt\" text=\"0\" default=<<numTids>> >\n\nNumber of tiddlers selected for deletion: <<numTids>><br>\nNote that, the delete operation cannot be undone!!\n<br>\n\n<$macrocall $name=\"compConfirmAction\"\ncountFilter=\"[subfilter<searchfilter>]\"\nactionMacro=\"delete-tiddlers-selective-bulk\"\nstateTiddler=\"$:/state/commander/SelectiveDeleteDropdown\"\n/>\n\n</$reveal>\n</$set>\n\n\n"},"$:/plugins/kookma/commander/tiddler/uicomp/export-tiddlers":{"title":"$:/plugins/kookma/commander/tiddler/uicomp/export-tiddlers","caption":"Export tiddlers","list-after":"$:/plugins/kookma/commander/tiddler/uicomp/delete-tiddlers","tags":"$:/tags/Commander/TiddlerOps","type":"text/vnd.tiddlywiki","text":"\\define export-tiddler-ui(baseFilename)\n<$set name=\"exportList\" filter=<<searchfilter>> ><!-- without this $SetWidget the exportButton does not work -->\n<$vars tv-config-toolbar-text=\"yes\" tv-config-toolbar-class=\"tc-button tt-button\">\n<$macrocall $name=\"commander-exportButton\" exportFilter=<<exportList>> lingoBase=\"$:/language/Buttons/ExportTiddlers/\" baseFilename=\"\"\"$baseFilename$\"\"\"/>\n</$vars>\n</$set>\n\\end\n\n\\define exportFileName-and-Tags-ui() \n<label class=\"kk-cmd-label2\">Export filename</label><$edit-text tiddler=\"$:/temp/commander/exportFilename\" tag=input default=\"tiddlers\" placeholder=\"tiddlers\" class=\"cmd-txt-area\"/>\n<br>\n\n<label class=\"kk-cmd-label2\">Export tags</label><$edit-text tiddler=\"$:/temp/commander/exportTag\" tag=input default=\"exported\" placeholder=\"exported\" class=\"cmd-txt-area\"/><br>\n\\end\n\n<$set name=numTids value={{{[subfilter<searchfilter>!is[missing]count[]] }}}>\n<$reveal type=\"match\" text=\"0\" default=<<numTids>> >\nNo tiddlers is selected for export!\n</$reveal>\n\n<$reveal type=\"gt\" text=\"0\" default=<<numTids>> >\n\nNumber of tiddlers selected for export: <<numTids>><br>\n\n<<exportFileName-and-Tags-ui>>\n<$macrocall $name=\"export-tiddler-ui\" baseFilename={{{[[$:/temp/commander/exportFilename]get[text]]~[[tiddlers]]}}} />\n</$reveal>\n</$set>\n\n"},"$:/plugins/kookma/commander/title/macros/prefix":{"title":"$:/plugins/kookma/commander/title/macros/prefix","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define log-changePrefix(message, oldTitle, newTitle)\n<$macrocall $name=\"log-add-single-operation\" msg=\"\"\"$message$. New title [[$newTitle$]]\"\"\" tidItem=<<__oldTitle__>> />\n\\end\n\n\\define addPrefix-to-tiltle-bulk(prefix:\"\")\n<$list filter=\"[subfilter<searchfilter>!is[missing]limit[1]]\" variable=ignore><!--check if filter is empty -->\n<$list filter=\"[<__prefix__>!is[blank]]\" variable=null>\n<<create-log-tiddler \"addPrefix-to-tiltle-bulk\">>\n<$list filter=\"[subfilter<searchfilter>]\">\n<$list filter=\"\"\"[<currentTiddler>addprefix[$prefix$]] -[<currentTiddler>]\"\"\" variable=\"newTitle\">\n<$list filter=\"[<newTitle>] -[has[title]]\" variable=\"ignore\">\n <$action-sendmessage $message=\"tm-rename-tiddler\" from=<<currentTiddler>> to=<<newTitle>> />\n <$macrocall $name=log-changePrefix message=\"title prefix: `$prefix$` added\" oldTitle=<<currentTiddler>> newTitle=<<newTitle>> />\n</$list>\n</$list>\n</$list>\n</$list>\n</$list>\n\\end\n\n\\define removePrefix-from-tiltle-bulk(prefix:\"\")\n<$list filter=\"[subfilter<searchfilter>!is[missing]limit[1]]\" variable=ignore><!--check if filter is empty -->\n<$list filter=\"[<__prefix__>!is[blank]]\" variable=null>\n<<create-log-tiddler \"removePrefix-from-tiltle-bulk\">>\n<$list filter=\"[subfilter<searchfilter>]\">\n<$list filter=\"\"\"[<currentTiddler>removeprefix[$prefix$]] -[<currentTiddler>]\"\"\" variable=\"newTitle\">\n<$list filter=\"[<newTitle>] -[has[title]]\" variable=\"ignore\">\n <$action-sendmessage $message=\"tm-rename-tiddler\" from=<<currentTiddler>> to=<<newTitle>> />\n <$macrocall $name=log-changePrefix message=\"title prefix: `$prefix$` removed\" oldTitle=<<currentTiddler>> newTitle=<<newTitle>> />\n</$list> \n</$list>\n</$list>\n</$list>\n</$list>\n\\end\n"},"$:/plugins/kookma/commander/title/macros/remove-cahrs-end":{"title":"$:/plugins/kookma/commander/title/macros/remove-cahrs-end","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define suffix-actions2()\n<$list filter=\"[subfilter<searchfilter>]+[prefix<sfx>]\" variable=\"item\">\n <$action-sendmessage $message=\"tm-rename-tiddler\" from=<<item>> to=<<sfx>> />\n <$macrocall $name=\"log-add-single-operation\" msg=\"\"\"characters removed from end. New title [[$(sfx)$]]\"\"\" tidItem=<<item>> />\n</$list>\n\\end\n\n\n\\define makelink2() [[$(newTitle)$]]\n\n\\define generate-suffixes2(n:\"0\")\n<$list filter=\"[<__n__>] -0\" variable=null>\n<$list filter=\"[subfilter<searchfilter>]\" variable=\"item\">\n<$list filter=\"\"\"[<item>split[]butlast[$n$]join[]trim[]]\"\"\" variable=\"newTitle\">\n<$text text=<<makelink2>>/>\n</$list>\n</$list>\n</$list>\n\\end\n\n\\define remove-chars-from-end-tiltle-bulk(num:\"0\")\n<$list filter=\"[subfilter<searchfilter>!is[missing]limit[1]]\" variable=ignore><!--check if filter is empty -->\n<$list filter=\"[<__num__>] -0\" variable=null>\n<<create-log-tiddler \"remove-chars-from-end-tiltle-bulk\">>\n<$vars n=<<__num__>> >\n<$wikify text=\"\"\"<<generate-suffixes2 n:\"$num$\">>\"\"\" name=\"outputs\">\n <$list filter=\"[subfilter<outputs>]\" variable=\"sfx\">\n<$list filter=\"[subfilter<searchfilter>]+[prefix<sfx>limit[2]count[]regexp[2]]\" emptyMessage=<<suffix-actions2>> variable=\"cnt\">\n</$list>\n</$list>\n</$wikify>\n</$vars>\n</$list>\n</$list>\n\\end\n"},"$:/plugins/kookma/commander/title/macros/remove-cahrs-start":{"title":"$:/plugins/kookma/commander/title/macros/remove-cahrs-start","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define suffix-actions()\n<$list filter=\"[subfilter<searchfilter>]+[suffix<sfx>]\" variable=\"item\">\n <$action-sendmessage $message=\"tm-rename-tiddler\" from=<<item>> to=<<sfx>> />\n <$macrocall $name=\"log-add-single-operation\" msg=\"\"\"characters removed from start. New title [[$(sfx)$]]\"\"\" tidItem=<<item>> />\n</$list>\n\\end\n\n\n\\define makelink() [[$(newTitle)$]]\n\n\\define generate-suffixes(n:\"0\")\n<$list filter=\"[<__n__>] -0\" variable=null>\n<$list filter=\"[subfilter<searchfilter>has[title]]\" variable=\"item\">\n<$list filter=\"\"\"[<item>split[]rest[$n$]join[]trim[]]\"\"\" variable=\"newTitle\">\n<$text text=<<makelink>>/>\n</$list>\n</$list>\n</$list>\n\\end\n\n\\define remove-chars-from-begining-tiltle-bulk(num:\"0\")\n<$list filter=\"[subfilter<searchfilter>!is[missing]limit[1]]\" variable=ignore><!--check if filter is empty -->\n<$list filter=\"[<__num__>] -0\" variable=null>\n<<create-log-tiddler \"remove-chars-from-begining-tiltle-bulk\">>\n<$vars n=<<__num__>> >\n<$wikify text=\"\"\"<<generate-suffixes n:\"$num$\">>\"\"\" name=\"outputs\">\n <$list filter=\"[subfilter<outputs>]\" variable=\"sfx\">\n <$list filter=\"[subfilter<searchfilter>]+[suffix<sfx>limit[2]count[]regexp[2]]\" \n emptyMessage=<<suffix-actions>> variable=\"cnt\">\n </$list>\n </$list>\n</$wikify>\n</$vars>\n</$list>\n</$list>\n\\end\n"},"$:/plugins/kookma/commander/title/macros/suffix":{"title":"$:/plugins/kookma/commander/title/macros/suffix","tags":"$:/tags/Commander/Macro","type":"text/vnd.tiddlywiki","text":"\\define log-changeSuffix(message, oldTitle, newTitle)\n<$macrocall $name=\"log-add-single-operation\" msg=\"\"\"$message$. New title [[$newTitle$]]\"\"\" tidItem=<<__oldTitle__>> />\n\\end\n\n\\define addSuffix-to-tiltle-bulk(suffix:\"\")\n<$list filter=\"[<__suffix__>!is[blank]]\" variable=null>\n<$list filter=\"[subfilter<searchfilter>limit[1]]\" variable=ignore><!--check if filter is empty -->\n<<create-log-tiddler \"addSufffix-to-tiltle-bulk\">>\n<$list filter=\"[subfilter<searchfilter>]\">\n<$list filter=\"\"\"[<currentTiddler>addsuffix[$suffix$]] -[<currentTiddler>]\"\"\" variable=\"newTitle\">\n<$list filter=\"[<newTitle>] -[has[title]]\" variable=\"ignore\">\n <$action-sendmessage $message=\"tm-rename-tiddler\" from=<<currentTiddler>> to=<<newTitle>> />\n <$macrocall $name=log-changeSuffix message=\"title suffix: `$suffix$` added\" oldTitle=<<currentTiddler>> newTitle=<<newTitle>> />\n</$list>\n</$list>\n</$list>\n</$list>\n</$list>\n\\end\n\n\\define removeSuffix-from-tiltle-bulk(suffix:\"\")\n<$list filter=\"[<__suffix__>!is[blank]]\" variable=null>\n<$list filter=\"[subfilter<searchfilter>!is[missing]limit[1]]\" variable=ignore><!--check if filter is empty -->\n<<create-log-tiddler \"removeSuffix-from-tiltle-bulk\">>\n<$list filter=\"[subfilter<searchfilter>]\">\n<$list filter=\"\"\"[<currentTiddler>removesuffix[$suffix$]] -[<currentTiddler>]\"\"\" variable=\"newTitle\">\n<$list filter=\"[<newTitle>] -[has[title]]\" variable=\"ignore\">\n <$action-sendmessage $message=\"tm-rename-tiddler\" from=<<currentTiddler>> to=<<newTitle>> />\n <$macrocall $name=log-changeSuffix message=\"title suffix: `$suffix$` removed\" oldTitle=<<currentTiddler>> newTitle=<<newTitle>> />\n</$list>\n</$list>\n</$list>\n</$list>\n</$list>\n\\end\n"},"$:/plugins/kookma/commander/title/ui":{"title":"$:/plugins/kookma/commander/title/ui","caption":"Title","list-after":"$:/plugins/kookma/commander/tiddler/ui","tags":"$:/tags/Commander","type":"text/vnd.tiddlywiki","text":"<<tabs \ntabsList:\"[all[shadows+tiddlers]tag[$:/tags/Commander/TitleOps]!has[draft.of]]\" \ndefault:\"$:/plugins/kookma/commander/title/uicomp/add-remove-prefix\"\nclass:\"tc-vertical cmd-tab-colorful cmd-tab-wd\">>\n\n<!-- relink checkbox for renaming title -->\n{{$:/plugins/kookma/commander/config/relink}}"},"$:/plugins/kookma/commander/title/uicomp/add-remove-chars":{"title":"$:/plugins/kookma/commander/title/uicomp/add-remove-chars","caption":"Remove chars","list-after":"$:/plugins/kookma/commander/title/uicomp/add-remove-suffix","tags":"$:/tags/Commander/TitleOps","type":"text/vnd.tiddlywiki","text":"\\define rngcat() [range[0,$(minchars)$]] -0 \n\n<label style=\"width:30ch;\">Number of chars</label>\n<$select tiddler=\"$:/temp/commander/title-remove-chars\" default=\"0\" class=\"cmd-sl\">\n<$list filter=\"[subfilter<searchfilter>length[]minall[]subtract[1]] -Infinity\" variable=\"minchars\">\n<$list filter=<<rngcat>> >\n<option value=<<currentTiddler>>><$view field='title'/></option>\n</$list>\n</$list>\n</$select><br>\n\n<$button class=\"cmd-btn cmd-btn-wd\"> First n characters\n<$macrocall \n $name=\"remove-chars-from-begining-tiltle-bulk\" \n num={{$:/temp/commander/title-remove-chars}} />\n</$button>\n\n<$button class=\"cmd-btn cmd-btn-wd\"> Last n characters\n<$macrocall \n $name=\"remove-chars-from-end-tiltle-bulk\" \n num={{$:/temp/commander/title-remove-chars}} />\n</$button>\n\n\n"},"$:/plugins/kookma/commander/title/uicomp/add-remove-prefix":{"title":"$:/plugins/kookma/commander/title/uicomp/add-remove-prefix","caption":"Add remove prefix","tags":"$:/tags/Commander/TitleOps","type":"text/vnd.tiddlywiki","text":"<$edit-text\ntiddler=\"$:/temp/commander/title-prefix\"\ntag=\"input\"\ndefault=\"\"\nclass=\"cmd-txt-area\"\nplaceholder=\" prefix\"\n/> <br>\n\n<$button class=\"cmd-btn cmd-btn-wd\"> Add prefix\n<$macrocall \n $name=\"addPrefix-to-tiltle-bulk\" \n prefix={{$:/temp/commander/title-prefix}} \n/>\n</$button>\n\n<$button class=\"cmd-btn cmd-btn-wd\"> Remove prefix\n<$macrocall \n $name=\"removePrefix-from-tiltle-bulk\" \n prefix={{$:/temp/commander/title-prefix}} \n/>\n</$button>\n\n"},"$:/plugins/kookma/commander/title/uicomp/add-remove-suffix":{"title":"$:/plugins/kookma/commander/title/uicomp/add-remove-suffix","caption":"Add remove suffix","list-after":"$:/plugins/kookma/commander/title/uicomp/add-remove-prefix","tags":"$:/tags/Commander/TitleOps","type":"text/vnd.tiddlywiki","text":"<$edit-text\ntiddler=\"$:/temp/commander/title-suffix\"\ntag=\"input\" default=\"\"\nclass=\"cmd-txt-area\" placeholder=\" suffix\" /><br>\n\n<$button class=\"cmd-btn cmd-btn-wd\"> Add suffix\n<$macrocall \n $name=\"addSuffix-to-tiltle-bulk\" \n suffix={{$:/temp/commander/title-suffix}} />\n</$button>\n\n<$button class=\"cmd-btn cmd-btn-wd\"> Remove suffix\n<$macrocall \n $name=\"removeSuffix-from-tiltle-bulk\" \n suffix={{$:/temp/commander/title-suffix}} \n/>\n</$button>\n\n"},"$:/plugins/kookma/commander/viewtemplate/import":{"title":"$:/plugins/kookma/commander/viewtemplate/import","tags":"$:/tags/ViewTemplate","type":"text/vnd.tiddlywiki","text":"<$list filter=\"[all[current]match[$:/Import]status[complete]]\" variable=\"null\">\n<$button actions=\"\"\"<$action-setfield $tiddler=\"$:/temp/commander/search-box\" text=\"[[$:/Import]links[]]\"/><$action-navigate $to=\"$:/Commander\"/>\"\"\">\n{{$:/plugins/kookma/commander/images/commander.svg}} Batch edit\n</$button>\n</$list>"}}} \ No newline at end of file diff --git a/tiddlers/TCTSystem/plugins/kookma/commander.json.meta b/tiddlers/TCTSystem/plugins/kookma/commander.json.meta index 39342d72..99a7f0f2 100644 --- a/tiddlers/TCTSystem/plugins/kookma/commander.json.meta +++ b/tiddlers/TCTSystem/plugins/kookma/commander.json.meta @@ -9,4 +9,4 @@ plugin-type: plugin source: https://github.com/kookma/TW-Commander title: $:/plugins/kookma/commander type: application/json -version: 2.1.7 \ No newline at end of file +version: 2.1.8 \ No newline at end of file diff --git a/tiddlers/TCTSystem/plugins/kookma/shiraz.json b/tiddlers/TCTSystem/plugins/kookma/shiraz.json index 5f3eb156..51408eb3 100644 --- a/tiddlers/TCTSystem/plugins/kookma/shiraz.json +++ b/tiddlers/TCTSystem/plugins/kookma/shiraz.json @@ -1 +1 @@ -{"tiddlers":{"$:/plugins/kookma/shiraz/history":{"title":"$:/plugins/kookma/shiraz/history","tags":"","type":"text/vnd.tiddlywiki","text":"Full change log: [[https://kookma.github.io/TW-Shiraz/#ChangeLog]]\n\n* ''2.7.1'' -- 2022.12.17 -- update to Tiddlywiki 5.2.4, few bug fixes\n* ''2.6.9'' -- 2022.10.17 -- improved Node Explorer, and task Explorer\n* ''2.6.1'' -- 2022.09.27 -- new subplug Formatter, better task manager\n* ''2.5.0'' -- 2022.08.02 -- new data block, updated to Tiddlywiki 5.2.3\n* ''2.4.4'' -- 2021.09.19 -- added css class for tbl-expand customization\n* ''2.4.2'' -- 2021.09.10 -- quick table with bunch of column formatting\n* ''2.3.3'' -- 2021.05.20 -- small bug fixes in switch palette\n* ''2.3.1'' -- 2021.05.19 -- tbl-linktype template to be used for generating node-explorer\n* ''2.3.0'' -- 2021.05.10 -- switch palette for dim/dark and light palette selection\n* ''2.2.2'' -- 2021.04.22 -- several issues fixed for pagination, notebook and image classes\n* ''2.2.0'' -- 2021.02.26 -- updated to TW 5.1.23 and pagination added to dynamic tables\n* ''2.1.1'' -- 2020.03.25 -- slider macro with initial status\n* ''2.1.0'' -- 2020.03.23 -- stable release on TW-5.1.22pre\n* ''1.0.0'' -- 2018.10.05 -- first public release\n"},"$:/plugins/kookma/shiraz/images/palette-switch":{"title":"$:/plugins/kookma/shiraz/images/palette-switch","tags":"","type":"text/vnd.tiddlywiki","text":"<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-palette-button tc-image-button\" viewBox=\"0 0 16 16\"><path d=\"M8 15A7 7 0 1 0 8 1v14zm0 1A8 8 0 1 1 8 0a8 8 0 0 1 0 16z\"/></svg>"},"$:/language/Buttons/Shiraz/Caption":{"title":"$:/language/Buttons/Shiraz/Caption","tags":"","type":"text/vnd.tiddlywiki","text":"Switch dark/light color palette"},"$:/language/Buttons/Shiraz/Hint":{"title":"$:/language/Buttons/Shiraz/Hint","tags":"","type":"text/vnd.tiddlywiki","text":"Switch dark/light color palette"},"$:/plugins/kookma/shiraz/license":{"title":"$:/plugins/kookma/shiraz/license","tags":"","type":"text/vnd.tiddlywiki","text":"Distributed under an MIT license.\n\nCopyright (c) 2018-2022 [[Mohammad Rahmani|https://github.com/kookma]]\n\n<<<\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n<<<"},"$:/plugins/kookma/shiraz/macros/alerts":{"title":"$:/plugins/kookma/shiraz/macros/alerts","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define alert(type:\"primary\" src:\"\", width:\"100%\", class:\"\")\n<div class=\"alert alert-$type$ $class$\" style=\"width:$width$;\">\n$src$\n</div>\n\\end\n\n\\define alert-leftbar(type:\"primary\" src:\"\", width:\"100%\", class:\"\")\n<div class=\"alert alert-$type$ bg-transparent leftbar border-$type$ $class$\" style=\"width:$width$;\">\n$src$\n</div>\n\\end\n"},"$:/plugins/kookma/shiraz/macros/badge":{"title":"$:/plugins/kookma/shiraz/macros/badge","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define badge(type:\"primary\" src:\"\")\n<span class=\"badge badge-$type$\">$src$</span>\n\\end\n\n\\define badge-pill(type:\"primary\" src:\"\")\n<span class=\"badge badge-pill badge-$type$\">$src$</span>\n\\end\n"},"$:/plugins/kookma/shiraz/macros/card":{"title":"$:/plugins/kookma/shiraz/macros/card","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define card(header:\"Empty\", title:\"Empty\" subtitle:\"Empty\" text:\"Empty\",footer:\"Empty\", width:\"100%\" class:\"\")\n<div class=\"card mb-3 $class$\" style=\"width:$width$;\">\n<$reveal tag=\"div\" type=\"nomatch\" default=\"Empty\" text=<<__header__>> >\n <div class=\"card-header\">$header$</div>\n</$reveal>\n<div class=\"card-body\">\n <$reveal tag=\"div\" type=\"nomatch\" default=\"Empty\" text=<<__title__>> >\n <div class=\"h5 card-title\">$title$</div>\n </$reveal>\n <$reveal tag=\"div\" type=\"nomatch\" default=\"Empty\" text=<<__subtitle__>> >\n <div class=\"h6 card-subtitle mb-2 text-muted\">$subtitle$</div>\n </$reveal>\n <$reveal tag=\"div\" type=\"nomatch\" default=\"Empty\" text=<<__text__>> >\n <div class=\"card-text\"><<__text__>></div>\n </$reveal>\n</div>\n<$reveal tag=\"div\" type=\"nomatch\" default=\"Empty\" text=<<__footer__>> >\n <div class=\"card-footer text-muted\">$footer$</div>\n</$reveal>\n</div>\n\\end"},"$:/plugins/kookma/shiraz/macros/csvtables/apps":{"title":"$:/plugins/kookma/shiraz/macros/csvtables/apps","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define nomenclature(id:nomenclature)\n<<table-csv id:\"$id$\" format:\"katex-inline transclude pu\" class:\"table-borderless\" header:no>>\n\\end\n\n\\define mathbox(id:\"\", format:\"\", delimiter:\",\")\n<<table-csv id:\"$id$\" format:\"transclude katex $format$\" class:\"table-borderless table-mathbox\" header:no delimiter:\"\"\"$delimiter$\"\"\">>\n\\end\n\n\n<!-- \n- these macros uses the table-csv to display nice looking outputs\n- apps means application\n-->"},"$:/plugins/kookma/shiraz/macros/csvtables/formats-basic":{"title":"$:/plugins/kookma/shiraz/macros/csvtables/formats-basic","tags":"","type":"text/vnd.tiddlywiki","text":"\\define text() <$text text=<<entry>> />\n\\define code() <code><<text>></code>\n\\define transclude() <$transclude tiddler=<<entry>> field=title/>\n\n\n<!-- these macro are used by table-csv to display entries -->"},"$:/plugins/kookma/shiraz/macros/csvtables/formats-date":{"title":"$:/plugins/kookma/shiraz/macros/csvtables/formats-date","tags":"","type":"text/vnd.tiddlywiki","text":"\\define date() <$view field=title tiddler={{{[<entry>splitregexp[\\D+]!is[blank]join[]]}}} format=date template=\"YYYY-0MM-0DD\"/>\n\\define shortdate() <$view field=title tiddler={{{[<entry>splitregexp[\\D+]!is[blank]join[]]}}} format=date template=\"mmm DDth, YYYY\"/>\n\\define longdate() <$view field=title tiddler={{{[<entry>splitregexp[\\D+]!is[blank]join[]]}}} format=date template=\"DDD, MMM 0DD, YYYY\"/>\n\n<!-- these macro are used by table-csv to display entries -->"},"$:/plugins/kookma/shiraz/macros/csvtables/formats-math":{"title":"$:/plugins/kookma/shiraz/macros/csvtables/formats-math","tags":"","type":"text/vnd.tiddlywiki","text":"\\define katex() <span class=\"falign\"><$latex text=<<entry>> displayMode=\"true\"></$latex></span>\n\\define katex-inline() <$latex text=<<entry>> displayMode=\"false\"></$latex>\n\\define pu() <$latex text={{{ [<entry>addprefix[\\pu{]addsuffix[}]] }}} displayMode=\"false\"></$latex>\n\\define equation() <$latex text={{{ [<entry>addprefix[\\begin{equation}]addsuffix[\\end{equation}]] }}} displayMode=\"true\"></$latex>\n\n<!-- \n- these macros are used by table-csv to display entries KaTeX\n- pu stands for physical uints\n- the math formating require the official KaTeX plugin is installed!\n- see $:/plugins/kookma/shiraz/styles/csvtable-katex\n-->"},"$:/plugins/kookma/shiraz/macros/csvtables/formats-misc":{"title":"$:/plugins/kookma/shiraz/macros/csvtables/formats-misc","tags":"","type":"text/vnd.tiddlywiki","text":"\\define email() <a class=\"tc-tiddlylink-external\" href=\"mailto:$(entry)$\" rel=\"noopener noreferrer\" target=\"_blank\"><<text>></a>\n\n\\define rate()\n<$list filter=\"[<entry>split[]match[*]]\" variable=ignore>\n<span class=\"shiraz-star\"><$transclude tiddler=\"$:/core/images/star-filled\" /></span>\n</$list>\n\\end\n\n<!-- these macro are used by table-csv to display entries -->"},"$:/plugins/kookma/shiraz/macros/csvtables/formats-task":{"title":"$:/plugins/kookma/shiraz/macros/csvtables/formats-task","tags":"","type":"text/vnd.tiddlywiki","text":"\\define checkbox()\n<!-- show done item -->\n<$list filter=\"[<entry>trim[]match[x]]\" variable=ignore><input type=checkbox checked disabled/></$list>\n<!-- show task item -->\n<$list filter=\"[<entry>trim[]match[-]]\" variable=ignore><input type=checkbox disabled/></$list>\n\\end\n\n\n\\define todo-action(param)\n<!-- toggle a line done (x) / undone (-) . the lbr is used to prevent replace \"x, Hi\" with \"x, Hi Jeremy\"-->\n<$vars lbr=\"\n\">\n <$vars in={{{ [<row>addsuffix<lbr>] }}} out={{{[<row>splitregexp<delimiter>rest[]join[,]addprefix[$param$,]addsuffix<lbr>]}}} >\n <$action-setfield $tiddler=<<src>> text={{{ [<src>get[text]search-replace:g:<in>,<out>] }}}/>\n </$vars>\n</$vars>\t\n\\end\n\n\\define todo()\n<!-- show task item -->\n<$list filter=\"[<entry>trim[]match[-]]\" variable=ignore>\n<$button class=\"tc-btn-invisible\" actions=<<todo-action \"x\">>><input type=checkbox/></$button>\n</$list>\n<!-- show done item -->\n<$list filter=\"[<entry>trim[]match[x]]\" variable=ignore>\n<$button class=\"tc-btn-invisible\" actions=<<todo-action \"-\">>><input type=checkbox checked/></$button>\n</$list>\n\n\\end\n\n<!-- these macro are used by table-csv to display entries -->"},"$:/plugins/kookma/shiraz/macros/csvtables/table-csv-utility":{"title":"$:/plugins/kookma/shiraz/macros/csvtables/table-csv-utility","tags":"","type":"text/vnd.tiddlywiki","text":"\\whitespace trim\n\n\\define mainFilter() [subfilter<allRows>butfirst<header_row>] :sort:$(sortType)$:$(sortNegate)$[split<delimiter>!is[blank]trim[]nth<sortPos>]\n\\define tempTableSort() $:/state/tablecsv/$(currentTiddler)$/$(stateTiddler)$\n\n\n\\define column-header-template()\n<$reveal type=\"nomatch\" stateTitle=<<tempTableSort>> stateIndex=\"sortIndex\" text=<<currentColumn>> tag=\"th\">\n<$button setTitle=<<tempTableSort>> setIndex=\"sortIndex\" setTo=<<currentColumn>> class=\"tc-btn-invisible tc-tiddlylink\" >\n<$action-setfield $tiddler=<<tempTableSort>> $index=\"hasnegate\" $value=\"false\"/>\n<$action-setfield $tiddler=<<tempTableSort>> $index=\"negate\" $value=\"\"/>\n<span style=\"text-transform: capitalize;\"><$text text=<<currentColumn>>/></span>\n</$button>\n</$reveal>\n<$reveal type=\"match\" stateTitle=<<tempTableSort>> stateIndex=\"sortIndex\" text=<<currentColumn>> tag=\"th\">\n<$list filter=\"[<tempTableSort>getindex[hasnegate]match[false]]\" variable=ignore><!--set negate for sort-->\n<$button setTitle=<<tempTableSort>> setIndex=\"hasnegate\" setTo=\"true\" class=\"tbl-sort-svg tc-btn-invisible tc-tiddlylink\" >\n<$action-setfield $tiddler=<<tempTableSort>> $index=\"negate\" $value=\"reverse\"/>\n<span style=\"text-transform: capitalize;\"><$text text=<<currentColumn>>/></span> {{$:/core/images/down-arrow}}\n</$button>\n</$list>\n<$list filter=\"[<tempTableSort>getindex[hasnegate]match[true]]\" variable=ignore><!--remove negate for sort-->\n<$button setTitle=<<tempTableSort>> setIndex=\"hasnegate\" setTo=\"false\" class=\"tbl-sort-svg tc-btn-invisible tc-tiddlylink\" >\n<$action-setfield $tiddler=<<tempTableSort>> $index=\"negate\" $value=\"\"/>\n<span style=\"text-transform: capitalize;\"><$text text=<<currentColumn>>/></span> {{$:/core/images/up-arrow}}\n</$button>\n</$list>\n</$reveal>\n\\end\n\n<!-- these macro are used by table-csv to display entries -->"},"$:/plugins/kookma/shiraz/macros/csvtables/table-csv":{"title":"$:/plugins/kookma/shiraz/macros/csvtables/table-csv","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define table-csv(tiddler:\"\", delimiter:\",\", sortType:\"alphanumeric\", format:\"\", caption:\"\", class:\"\", header:\"yes\", stateTiddler:\"\", id:\"\", dclass:\"dblock\" )\n\\whitespace trim\n\\import [[$:/plugins/kookma/shiraz/macros/csvtables/table-csv-utility]]\n\\import [all[tiddlers+shadows]prefix[$:/plugins/kookma/shiraz/macros/csvtables/formats]]\n\n<$vars src = {{{ [<__tiddler__>is[tiddler]then<__tiddler__>else<currentTiddler>] }}} \n stateTiddler = {{{ [<__stateTiddler__>!is[blank]then<__stateTiddler__>else[01]] }}} >\n<$vars sortCol = {{{ [<tempTableSort>getindex[sortIndex]] }}} \n sortNegate = {{{ [<tempTableSort>getindex[negate]] }}} \n delimiter = {{{ [<__delimiter__>match[\\t]then[°≡°]else<__delimiter__>] }}}\n dataBlockStartDelimiter ={{{ [<__id__>is[blank]then[@@.$dclass$]] ~[[@.$dclass$.]addsuffix<__id__>] }}}\n dataBlockEndDelimiter = \"@@\" >\n\n<!-- extract the data block -->\n<$let dblock0 = {{{ [<src>get[text]splitregexp<dataBlockStartDelimiter>butfirst[1]] }}}\n dblock1 = {{{ [<dblock0>splitregexp<dataBlockEndDelimiter>butlast[1]] }}}\n dblock = {{{ [<delimiter>!match[°≡°]then<dblock1>] :else[<dblock1>search-replace:g:regexp[\\t],[°≡°]] }}} >\n\n<!-- create table -->\n<table class=\"$class$\">\n<$list filter=\"[<__caption__>!is[blank]]\" variable=ignorw><caption>$caption$</caption></$list>\n<!--check if there is a header row-->\n<$list filter=\"[<__header__>match[yes]then[1]else[0]]\" variable=header_row>\n<!-- process all extracted rows-->\n<$vars allRows=\"[<dblock>splitregexp[\\n]!is[blank]]\">\n<!--create table header-->\n<$list filter=\"[subfilter<allRows>first<header_row>]\" variable=row >\n<tr><$list filter=\"[<row>splitregexp<delimiter>!is[blank]trim[]]\" variable=currentColumn><<column-header-template>></$list></tr>\n</$list>\n<!--create table body-->\n<$vars sortPos = {{{ [subfilter<allRows>first<header_row>splitregexp<delimiter>!is[blank]trim[]] +[allbefore:include<sortCol>count[]] }}} >\n<$vars sortType = {{{ [enlist:raw<__sortType__>nth<sortPos>else[alphanumeric]] }}} >\n<$list filter=<<mainFilter>> variable=row><!-- parse all other rows -->\n<tr><$list filter=\"[<row>splitregexp<delimiter>!is[blank]trim[]]\" variable=entry counter=pos>\n<td><$macrocall $name={{{ [enlist:raw<__format__>nth<pos>else[text]] }}} /></td>\n</$list></tr>\n</$list><!-- end of parse all other rows -->\n</$vars>\n</$vars><!-- sorPs-->\n</$vars> <!-- end of process all extracted rows-->\n</$list><!-- end of check header -->\n</table>\n\n</$let><!-- dblock0-->\n</$vars><!-- sortCol-->\n</$vars>\n\\end\n\n<!--\n- the default format is text, if format is not set for any column\n- the default sort type is alphanumeric, if the sort type is not sent \n- tab delimited data cannot be processed as enlist list them as sparate title on tab and do not keep them as a single row, so befor processing the \\tab is replaced with a rarely used combination like `°≡°`\n- leading and trailing blanks (spaces) are always trimmed\n- when use column header, you cannot have two column with the same header, this causes problem with sort routine\n-->"},"$:/plugins/kookma/shiraz/macros/dbadge":{"title":"$:/plugins/kookma/shiraz/macros/dbadge","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define dbadge(subject,status, type:\"primary\")\n<div class=\"dbadge\"><span class=\"dbadge-subject\">$subject$</span><span class=\"dbadge-status dbadge-$type$ \">$status$</span></div>\n\\end\n"},"$:/plugins/kookma/shiraz/macros/details":{"title":"$:/plugins/kookma/shiraz/macros/details","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define details(label:\"\", src:\"source\", status:\"\", labelClass:\"\", srcClass:\"\")\n<$vars source = {{{ [<__src__>get[text]else<__src__>] }}} >\n<details class=\"kk-shiraz-details\" $status$>\n <$let tv-wikilinks=\"no\">\n <summary class=\"$labelClass$\">$label$</summary>\n </$let>\n <div class=\"$srcClass$\">\n <$transclude tiddler=<<source>> field=title mode=block/>\n </div>\n</details>\n</$vars>\n\\end"},"$:/plugins/kookma/shiraz/macros/dtables/confirm-delete":{"title":"$:/plugins/kookma/shiraz/macros/dtables/confirm-delete","tags":"$:/tags/Table/Macro","type":"text/vnd.tiddlywiki","text":"\\define confirm-delete()\n<!-- reveals deletion confirmation -->\n<$list filter=\"[subfilter<inputFilter>limit[1]]\" variable=ignore>\n<$reveal class=\"tbl-delete-confirm\" type=\"match\" stateTitle=\"$:/temp/tables/delete-all\" stateField=\"text\" text=<<currentTable>> tag=\"tr\">\n<th colspan=<<ncols>> >\n<$list filter=\"[[$:/temp/tables/delete-all]get[confirm]match[yes]]\" \n variable=ignore emptyMessage=<<ask-for-delete>> >\n <<perform-delete>>\n</$list>\n</th>\n</$reveal>\n</$list>\n\\end\n\n\\define ask-for-delete()\n<$set name=ntids filter=\"[subfilter<inputFilter>count[]]\">\n Delete all <<ntids>> records?\n\t<$button class=\"tc-btn-invisible\">\n <$action-setfield $tiddler=\"$:/temp/tables/delete-all\" $field=\"confirm\" $value=\"yes\"/>\n {{$:/core/images/delete-button}} yes\n </$button> or \n <$button class=\"tc-btn-invisible\">\n <$action-deletetiddler $tiddler=\"$:/temp/tables/delete-all\"/>\n {{$:/core/images/close-button}} no\n </$button>\n</$set>\t\t\t\t\n\\end\n\n\\define perform-delete()\n Warning! this action cannot be undone!\n\t<$button class=\"tc-btn-invisible\">\n <$action-deletetiddler $tiddler=\"$:/temp/tables/delete-all\"/>\n <$list filter=<<inputFilter>> variable=\"currentRecord\">\n <$action-deletetiddler $tiddler=<<currentRecord>>/>\n </$list>\n\t\t {{$:/core/images/delete-button}} delete\n </$button> or \n <$button class=\"tc-btn-invisible\">\n <$action-deletetiddler $tiddler=\"$:/temp/tables/delete-all\"/>\n\t\t\t{{$:/core/images/close-button}} cancel \n </$button>\n\\end"},"$:/plugins/kookma/shiraz/macros/dtables/helper":{"title":"$:/plugins/kookma/shiraz/macros/dtables/helper","tags":"$:/tags/Table/Macro","type":"text/vnd.tiddlywiki","text":"\\define columnFilter() $(columns)$ tbl-delete\n\n\\define tempTable() $:/state/dynamictables/$(currentTable)$\n\n\\define tempTableSort() $(tempTable)$/sortby\n\\define tempTagPopup() $(tempTable)$/$(currentRecord)$/$(currentTiddler)$\n\\define tempTableExpand() $(tempTable)$/expand\n\\define tempPathExpand() $(tempTableExpand)$##$(currentRecord)$\n\\define tempTableEdit() $(tempTable)$/edit-view-status\n\n\\define keepstate() $:/keepstate/dynamictables/$(currentTable)$\n\n\\define tempTableFooter() $(keepstate)$/footer\n\\define tempTableStyle() $(keepstate)$/style\n\\define tempWarningMsg() $(keepstate)$/warning\n\n\\define pageStateTiddler() $(keepstate)$/page-number\n\\define entryPerPageStateTiddler() $(keepstate)$/entry-per-page\n\n<!-- \n Those tiddlers based on keepstate are permanent.\n These are tiddlers hold the data and setting for footer, styles and warning (needs to be hold).\n These state and temporary tiddlers are independent of currentTiddler (host tiddler) and on changing\n the title of host tiddler will not disconnected to table\n-->"},"$:/plugins/kookma/shiraz/macros/dtables/maths":{"title":"$:/plugins/kookma/shiraz/macros/dtables/maths","tags":"$:/tags/Table/Macro","type":"text/vnd.tiddlywiki","text":"\\define average(pn:0) <$text text={{{ [subfilter<inputFilter>$(getFieldOrIndex)$<currentColumn>average[]] }}}/>\n\\define median(pn:0) <$text text={{{ [subfilter<inputFilter>$(getFieldOrIndex)$<currentColumn>median[]] }}}/>\n\n\\define count() <$text text={{{ [subfilter<inputFilter>$(getFieldOrIndex)$<currentColumn>count[]] }}}/>\n\\define sum() <$text text={{{ [subfilter<inputFilter>$(getFieldOrIndex)$<currentColumn>sum[]] }}}/>\n\\define product() <$text text={{{ [subfilter<inputFilter>$(getFieldOrIndex)$<currentColumn>product[]] }}}/>\n\n\\define minall() <$text text={{{ [subfilter<inputFilter>$(getFieldOrIndex)$<currentColumn>minall[]] }}}/>\n\\define maxall() <$text text={{{ [subfilter<inputFilter>$(getFieldOrIndex)$<currentColumn>maxall[]] }}}/>\n\n\n\n\n\n"},"$:/plugins/kookma/shiraz/macros/dtables/pagination":{"title":"$:/plugins/kookma/shiraz/macros/dtables/pagination","tags":"$:/tags/Table/Macro","type":"text/vnd.tiddlywiki","text":"\\define prev-button()\n<!-- create previous page button --->\n<$list filter=\"[<page-number>compare:number:lt[2]then[yes]else[no]]\" variable=state>\n<$button disabled=<<state>> class=\"shiraz-dtable-page-prev tc-btn-invisible\">\n{{$:/core/images/chevron-left}} <strong>Prev</strong>\n<$action-listops $tiddler=<<pageStateTiddler>> $field=text $subfilter=\"+[subtract[1]] ~[[1]]\"/>\n</$button>\n</$list>\n\\end\n\n\\define next-button()\n<!-- create next page button --->\n<$list filter=\"[<high>compare:number:gteq<total-entries>then[yes]else[no]]\" variable=state> \n<$button disabled=<<state>> class=\"shiraz-dtable-page-next tc-btn-invisible\">\n<strong>Next</strong> {{$:/core/images/chevron-right}} \n<$action-listops $tiddler=<<pageStateTiddler>> $field=text $subfilter=\"+[add[1]] ~[[2]]\"/>\n</$button>\n</$list>\n\\end\n\n\\define limit-entries()\n<!-- set number of entries per page -->\n<$select tiddler=<<entryPerPageStateTiddler>> default=25 actions=\"\"\"<$action-setfield $tiddler=<<pageStateTiddler>> text=1/>\"\"\">\n<$list filter='5 10 15 20 25 30 40 50' variable=num>\n<option value=<<num>>>Limit <$text text=<<num>>/></option>\n</$list>\n<option value=<<total-entries>> >Show all</option>\n</$select>\n\\end"},"$:/plugins/kookma/shiraz/macros/dtables/show-edit-cell":{"title":"$:/plugins/kookma/shiraz/macros/dtables/show-edit-cell","tags":"$:/tags/Table/Macro","type":"text/vnd.tiddlywiki","text":"\\define showCell()\n <$list filter=\"[<fieldOrIndex>]-index\">\n <$transclude tiddler=<<currentRecord>> field=<<currentColumn>> mode=\"inline\" />\n </$list>\n <$list filter=\"[<fieldOrIndex>]-field\">\n <$transclude tiddler=<<currentRecord>> index=<<currentColumn>> mode=\"inline\" />\n </$list>\n\\end\t\n\\define editCell()\n <$list filter=\"[<fieldOrIndex>]-index\">\n <$edit-text tiddler=<<currentRecord>> field=<<currentColumn>> tag=\"input\" class=\"shiraz-dtable-textbox\"/>\n </$list>\n <$list filter=\"[<fieldOrIndex>]-field\">\n <$edit-text tiddler=<<currentRecord>> index=<<currentColumn>> tag=\"input\" class=\"shiraz-dtable-textbox\"/>\n </$list>\n\\end\n\n\\define showCell_Locked()\n <span style=\"font-style:oblique;\"><<showCell>></span>\n\\end "},"$:/plugins/kookma/shiraz/macros/dtables/table-dynamic":{"title":"$:/plugins/kookma/shiraz/macros/dtables/table-dynamic","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define table-dynamic(filter, fields:\"\", indexes:\"\", sortOp:\"sort\", caption:\"\", class:\"\",\n footerRows:\"0\", stateTiddler:\"\", editButton:\"yes\", pagination:\"no\", emptyMessage:\"filter input is empty\")\n\n\\import [all[shadows+tiddlers]tag[$:/tags/Table/Macro]]\n\n<!--above commands import utility macros-->\n<$vars \n inputFilter=\"[subfilter<__filter__>!has[draft.of]]\"\n sortType=<<__sortOp__>>\n pagination=<<__pagination__>>\n> \n<$set name=currentTable value=<<__stateTiddler__>> emptyValue=<<currentTiddler>> >\n<!-- check what type of columns are sent, fileds or indexes (data tiddlers as records) -->\n<$set name=fieldOrIndex filter=\"[<__fields__>!is[blank]]\" value=\"field\" emptyValue=\"index\">\n<<check_tiddlers_type_for_table_from_indexes isEditable:\"$editButton$\">>\n<$set name=columns filter=\"[<fieldOrIndex>]-index\" value=<<__fields__>> emptyValue=<<__indexes__>> >\n<!--check input filter parameter-->\n<$list filter=\"[subfilter<inputFilter>limit[1]]\" emptyMessage=<<__emptyMessage__>> variable=ignore>\n<$set name=sortneg tiddler=<<tempTableSort>> index=\"negate\">\n<!--calculate the number of columns in edit and view mode -->\n<$set name=ncols filter=\"[<tempTableEdit>getindex[mode]match[edit]]\" value={{{ [subfilter<columnFilter>count[]] }}} emptyValue= {{{ [subfilter<columnFilter>count[]subtract[1]] }}}>\n<div class=\"tbl-container\" style=\"max-width:100%;\">\n<table class=<<__class__>> style=\"caption-side:top\">\n<!-- reveal caption and edit button -------------------->\n<caption style=\"text-align:left;\">\n<$list filter=\"[<__editButton__>match[yes]]\" variable=ignore>\n<span style=\"padding-right:5px;padding-left:3px;\"><<toggle-edit-view>></span></$list>\n$caption$</caption>\n\n<!-- create header -------------------->\n<thead>\n<<confirm-delete>>\n<tr>\n<$list filter=<<columnFilter>> variable=currentColumn>\n<$set name=\"headerLookup\" filter=\"[all[tiddlers+shadows]tag[$:/tags/Table/HeaderTemplate]contains:tbl-column-list<currentColumn>limit[1]get[title]]\" value=<<headerLookup>> emptyValue=\"$:/plugins/kookma/shiraz/templates/header/default\">\n <$transclude tiddler=<<headerLookup>> field=\"text\" mode=\"inline\"/>\n</$set>\n</$list>\n</tr>\n</thead>\n\n<!-- create footer -------------------->\n<$reveal type=\"gt\" default=<<__footerRows__>> text=\"0\" tag=\"tfoot\" class=\"shiraz-dtable-footer\">\n<tr><td colspan=<<ncols>> style=\"font-weight:bold;background-color:transparent;\">Numerical summary</td></tr>\n<$list filter=\"[range[1,$footerRows$]addprefix[footer-]]\" variable=footerRow>\n<tr>\n<$list filter=<<columnFilter>> variable=currentColumn>\n<$set name=\"footerLookup\" filter=\"[all[tiddlers+shadows]tag[$:/tags/Table/FooterTemplate]contains:tbl-column-list<currentColumn>limit[1]get[title]]\" value=<<footerLookup>> emptyValue=\"$:/plugins/kookma/shiraz/templates/footer/default\">\n<$transclude tiddler=<<footerLookup>> field=\"text\" mode=\"inline\"/>\n</$set>\n</$list>\n</tr>\n</$list>\n</$reveal>\n\n<!-- reveal main body of table (generate records) -------------------->\n<tbody>\n<$set name=tableBody filter=\"[<fieldOrIndex>]-index\" value=\"display_body_fields\" emptyValue=\"display_body_indexes\" >\n<!-- setup pagination variables -->\n<$vars total-entries={{{[subfilter<inputFilter>count[]] }}}\n\t\t\t page-number={{{[<pageStateTiddler>get[text]] ~[[1]]}}} \n\t\t\t entries-per-page={{{ [<entryPerPageStateTiddler>get[text]] ~[[25]] }}} >\n<$vars low={{{ [<page-number>subtract[1]multiply<entries-per-page>] }}} \n high={{{[<page-number>multiply<entries-per-page>] }}} >\t \n<$macrocall $name=<<tableBody>> />\n<!--on demand display the pagination row-->\n<$reveal type=\"match\" default=<<pagination>> text=\"yes\" tag=\"tr\" class=\"shiraz-dtable-page-footer\">\n<td colspan=<<ncols>> >\n<<prev-button>>\nDisplaying <$text text={{{[<low>add[1]]}}}/> through <$text text={{{ [<high>compare:number:lt<total-entries>then<high>else<total-entries>] }}}/> of <<total-entries>> Results | <<limit-entries>>\n<<next-button>>\n</td>\n</$reveal><!-- end of pagination ui -->\n</$vars>\n</$vars>\n</$set>\n</tbody>\n</table>\n</div><!-- container-->\n</$set>\n</$set>\n</$list><!--check input filter parameter-->\n</$set>\n</$set>\n</$set>\n</$vars>\n\\end\n\n"},"$:/plugins/kookma/shiraz/macros/dtables/table-utility":{"title":"$:/plugins/kookma/shiraz/macros/dtables/table-utility","tags":"$:/tags/Table/Macro","type":"text/vnd.tiddlywiki","text":"\\define tableFilter_fields() $(inputFilter)$+[$(sortneg)$$(sortType)${$(tempTableSort)$##sortIndex}]\n\\define tableFilter_indexes() [enlist<items>]+[$(sortneg)$$(sortType)$[]]\n\n\\define getitems()\n<$set name=Index tiddler=<<tempTableSort>> index=\"sortIndex\">\n<$list filter=\"[subfilter<inputFilter>!has[draft.of]]\" >\n<$text text=\"[[\"/>{{{ [<currentTiddler>getindex<Index>addsuffix[°≡°]] }}}<<currentTiddler>><$text text=\"]]\"/>\n</$list>\n</$set>\n\\end\n\n\\define display_one_record()\n<$wikify name=\"rowStyle\" text=\"\"\"<$transclude tiddler=<<tempTableStyle>> index=<<currentRecord>> />\"\"\" mode=\"inline\">\n<tr style=<<rowStyle>>>\n<$list filter=<<columnFilter>> variable=currentColumn>\n<$set name=\"bodyLookup\" \n filter=\"[all[tiddlers+shadows]tag[$:/tags/Table/BodyTemplate]contains:tbl-column-list<currentColumn>]\n +[limit[1]get[title]]\"\n value=<<bodyLookup>> \n emptyValue=\"$:/plugins/kookma/shiraz/templates/body/default\">\n<$transclude tiddler=<<bodyLookup>> field=\"text\" mode=\"inline\"/>\n</$set>\n</$list>\n</tr>\n<!-- reveal expanded record-->\n<$reveal type=\"match\" state=<<tempPathExpand>> text=\"show\" tag=\"tr\">\n<<display-expanded-record>>\n</$reveal>\n</$wikify>\n\\end\n\n\\define display_body_fields() \n<$set name=finalFilter filter=\"[<pagination>match[yes]]\" value=\"[subfilter<tableFilter_fields>first<high>] -[subfilter<tableFilter_fields>first<low>]\" emptyValue=\"[subfilter<tableFilter_fields>]\">\n<$list filter=\"[subfilter<finalFilter>]\" variable=\"currentRecord\">\n<<display_one_record>>\n</$list>\n</$set>\n\\end\n\n\\define display_body_indexes()\n<$wikify name=\"items\" text=<<getitems>> > \n<$set name=finalFilter filter=\"[<pagination>match[yes]]\" value=\"[subfilter<tableFilter_indexes>first<high>] -[subfilter<tableFilter_indexes>first<low>]\" emptyValue=\"[subfilter<tableFilter_indexes>]\">\n<$list filter=\"[subfilter<finalFilter>]\" variable=\"currentItem\">\n<$list filter=\"[<currentItem>split[°≡°]last[]]\" variable=\"currentRecord\">\n <<display_one_record>>\n</$list>\n</$list>\n</$set>\n</$wikify>\n\\end\n\n"},"$:/plugins/kookma/shiraz/macros/dtables/tbl-expand":{"title":"$:/plugins/kookma/shiraz/macros/dtables/tbl-expand","tags":"$:/tags/Table/Macro","type":"text/vnd.tiddlywiki","text":"\\define display-expanded-record()\n<td colspan=<<ncols>> class=\"shiraz-dtable-expanded-record\">\n<$tiddler tiddler=<<currentRecord>> >\n\n<!-- in edit mode select between two editors: simple textbox or TW main editor e.g. codemirror -->\n<$list filter=\"[<tempTableEdit>getindex[mode]match[edit]]\" variable=ignore\n emptyMessage=\"\"\"{{||$:/core/ui/ViewTemplate/body}}\"\"\" >\n<$reveal type=\"nomatch\" state=\"$:/config/shiraz/dynamictables/editor-type\" text=\"main-editor\" tag=\"div\">\n<$edit-text class=\"tbl-inpt-edit\" tiddler=<<currentRecord>> field=\"text\" tag=textarea/>\n</$reveal>\n<$reveal type=\"match\" state=\"$:/config/shiraz/dynamictables/editor-type\" text=\"main-editor\" tag=\"div\" class=\"shiraz-dtable-maineditor\">\n{{||$:/core/ui/EditTemplate/body}}\n</$reveal>\n</$list>\n\n</$tiddler>\n</td>\n\\end\n"},"$:/plugins/kookma/shiraz/macros/dtables/toggle-edit-view":{"title":"$:/plugins/kookma/shiraz/macros/dtables/toggle-edit-view","tags":"$:/tags/Table/Macro","type":"text/vnd.tiddlywiki","text":"\\define toggle-edit-view()\n<$reveal type=\"nomatch\" stateTitle=<<tempTableEdit>> stateIndex=\"mode\" text=\"edit\">\n<$button class=\"tc-btn-invisible tc-tiddlylink\" setTitle=<<tempTableEdit>> setIndex=\"mode\" setTo=\"edit\">{{$:/core/images/edit-button}}</$button>\n</$reveal>\n<$reveal type=\"match\" stateTitle=<<tempTableEdit>> stateIndex=\"mode\" text=\"edit\">\n<$button class=\"tc-btn-invisible tc-tiddlylink\" setTitle=<<tempTableEdit>> setIndex=\"mode\" setTo=\"view\">{{$:/core/images/done-button}}</$button>\n</$reveal>\n\\end"},"$:/plugins/kookma/shiraz/macros/dtables/warning_message":{"title":"$:/plugins/kookma/shiraz/macros/dtables/warning_message","tags":"$:/tags/Table/Macro","type":"text/vnd.tiddlywiki","text":"\\define show_tiddler_types()\n<details>\n <summary>List tiddlers with wrong type</summary>\n\t<dl>\n <$list filter=\"[subfilter<inputFilter>]\">\n\t<$list filter=\"[<currentTiddler>get[type]match[application/x-tiddler-dictionary]][<currentTiddler>get[type]match[application/json]]\" variable=ignore\n\temptyMessage=\"\"\"<dt><$link/></dt><dd><$view field=type/></dd>\"\"\">\n\t</$list>\n\t</$list>\n\t</dl>\n</details>\n\\end\n\n\n\\define show_warning_message()\nDynamic editable table from ''indexes'' expects all input tiddlers are of dataTiddler (json or dictionary) types. Using tiddlers of non //json// or //x-tiddler-dictionary// types as input can unintentionally overwrite the data in the text field of those tiddlers.<br>\n<br>\nCheck the tiddler types to find which tiddlers are not of dataTiddler types!<br>\n<<show_tiddler_types>>\n\\end\n\n\n\\define check_tiddlers_type_for_table_from_indexes(isEditable)\n <$list filter=\"[<fieldOrIndex>]-field\" variable=ignore><!-- only dataTiddler -->\n\t<$list filter=\"[<__isEditable__>match[yes]]\" variable=ignore> <!-- only editable table -->\n\t<$list filter=\"[<tempWarningMsg>is[missing]]\" variable=ignore><!-- dismiss if tempWarningMsg is set -->\n\t<$list filter=\"[subfilter<inputFilter>each[type]get[type]]-[[application/x-tiddler-dictionary]]-[[application/json]]\" variable=ignore>\n\t <div style=\"color: white;background-color:#ff0033;padding:8px;text-align:center;width:100%;\">\n\t Danger: Editable dynamic table from idexes with mixed types of tiddlers!  \n\t <$button class=\"tc-btn-invisible tc-tiddlylink\" style=\"fill:white;\" tooltip=\"Dismiss alert and continue with the current selection!\">{{$:/core/images/close-button}}\n <$action-setfield $tiddler=<<tempWarningMsg>> text=\"dissmiss\"/>\n </$button>\n\t </div>\n\t <div style=\"border:1px solid #ff0033;padding:8px;\">\n\t <<show_warning_message>>\n\t </div>\n </$list>\n\t</$list>\n\t</$list>\n\t</$list>\n\\end\t\n"},"$:/plugins/kookma/shiraz/macros/image-basic":{"title":"$:/plugins/kookma/shiraz/macros/image-basic","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define image-basic(img, width:\"30%\", align:\"none\", caption:\"\", tooltip:\"\", alt:\"\")\n<figure class=\"image-basic image-align-$align$\" style=\"width:$width$;\">\n <$image source=<<__img__>> tooltip=<<__tooltip__>> alt=<<__alt__>> /> \n <figcaption>$caption$</figcaption>\n</figure> \n\\end"},"$:/plugins/kookma/shiraz/macros/image-card-utility":{"title":"$:/plugins/kookma/shiraz/macros/image-card-utility","type":"text/vnd.tiddlywiki","text":"\\define image-card-top(img, width:\"30%\", align:\"none\", title:\"Empty\", text:\"Empty\", footer:\"Empty\", alt:\"\")\n<div class=\"card image-align-$align$\" style=\"width:$width$;\">\n <$image class=\"card-img-top\" source=<<__img__>> alt=<<__alt__>> />\n <div class=\"card-body\">\n <$reveal tag=\"div\" type=\"nomatch\" default=\"Empty\" text=<<__title__>> >\n <div class=\"h5 card-title\">$title$</div>\n </$reveal> \n <$reveal tag=\"div\" type=\"nomatch\" default=\"Empty\" text=<<__text__>> >\n <div class=\"card-text\">$text$</div>\n </$reveal> \n <$reveal tag=\"div\" type=\"nomatch\" default=\"Empty\" text=<<__footer__>> >\n <p class=\"card-text\"><small class=\"text-muted\">$footer$</small></p>\n </$reveal>\n </div> \n</div>\n\\end\n\n\\define image-card-bottom(img, width:\"30%\", align:\"none\", title:\"Empty\", text:\"Empty\", footer:\"Empty\", alt:\"\")\n<div class=\"card image-align-$align$\" style=\"width:$width$;\">\n <div class=\"card-body\">\n <$reveal tag=\"div\" type=\"nomatch\" default=\"Empty\" text=<<__title__>> >\n <div class=\"h5 card-title\">$title$</div>\n </$reveal> \n <$reveal tag=\"div\" type=\"nomatch\" default=\"Empty\" text=<<__text__>> >\n <div class=\"card-text\">$text$</div>\n </$reveal> \n <$reveal tag=\"div\" type=\"nomatch\" default=\"Empty\" text=<<__footer__>> >\n <p class=\"card-text\"><small class=\"text-muted\">$footer$</small></p>\n </$reveal>\n </div> \n <$image class=\"card-img-bottom\" source=<<__img__>> alt=<<__alt__>> />\n</div>\n\\end"},"$:/plugins/kookma/shiraz/macros/image-card":{"title":"$:/plugins/kookma/shiraz/macros/image-card","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define image-card(img, width:\"30%\", align:\"none\", title:\"Empty\", text:\"Empty\", footer:\"Empty\", pos:\"top\", alt:\"\")\n\\import $:/plugins/kookma/shiraz/macros/image-card-utility\n<$reveal tag=\"div\" type=\"match\" default=\"top\" text=<<__pos__>> >\n<$macrocall $name=image-card-top img=<<__img__>> title=<<__title__>> text=<<__text__>>\n footer=<<__footer__>> width=<<__width__>> align=<<__align__>> alt=<<__alt__>> />\n</$reveal>\n<$reveal tag=\"div\" type=\"nomatch\" default=\"top\" text=<<__pos__>> >\n<$macrocall $name=image-card-bottom img=<<__img__>> title=<<__title__>> text=<<__text__>>\n footer=<<__footer__>> width=<<__width__>> align=<<__align__>> alt=<<__alt__>> />\n</$reveal>\n\\end\n\n\\define image-card-top(img, width:\"30%\", align:\"none\", title:\"Empty\", text:\"Empty\", footer:\"Empty\", alt:\"\")\n<div class=\"card image-align-$align$\" style=\"width:$width$;\">\n <$image class=\"card-img-top\" source=<<__img__>> alt=<<__alt__>> />\n <div class=\"card-body\">\n <$reveal tag=\"div\" type=\"nomatch\" default=\"Empty\" text=<<__title__>> >\n <div class=\"h5 card-title\">$title$</div>\n </$reveal> \n <$reveal tag=\"div\" type=\"nomatch\" default=\"Empty\" text=<<__text__>> >\n <div class=\"card-text\">$text$</div>\n </$reveal> \n <$reveal tag=\"div\" type=\"nomatch\" default=\"Empty\" text=<<__footer__>> >\n <p class=\"card-text\"><small class=\"text-muted\">$footer$</small></p>\n </$reveal>\n </div> \n</div>\n\\end\n\n\\define image-card-bottom(img, width:\"30%\", align:\"none\", title:\"Empty\", text:\"Empty\", footer:\"Empty\", alt:\"\")\n<div class=\"card image-align-$align$\" style=\"width:$width$;\">\n <div class=\"card-body\">\n <$reveal tag=\"div\" type=\"nomatch\" default=\"Empty\" text=<<__title__>> >\n <div class=\"h5 card-title\">$title$</div>\n </$reveal> \n <$reveal tag=\"div\" type=\"nomatch\" default=\"Empty\" text=<<__text__>> >\n <div class=\"card-text\">$text$</div>\n </$reveal> \n <$reveal tag=\"div\" type=\"nomatch\" default=\"Empty\" text=<<__footer__>> >\n <p class=\"card-text\"><small class=\"text-muted\">$footer$</small></p>\n </$reveal>\n </div> \n <$image class=\"card-img-bottom\" source=<<__img__>> alt=<<__alt__>> />\n</div>\n\\end"},"$:/plugins/kookma/shiraz/macros/image-overlay-utility":{"title":"$:/plugins/kookma/shiraz/macros/image-overlay-utility","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define _cls-content-details() image-overlay-content-details $(fdcls)$"},"$:/plugins/kookma/shiraz/macros/image-overlay":{"title":"$:/plugins/kookma/shiraz/macros/image-overlay","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define image-overlay(img, width:\"30%\", align:\"none\", caption:\"\", title:\"\", text:\"\", fadein:\"left\", alt:\"\")\n\\import $:/plugins/kookma/shiraz/macros/image-overlay-utility\n<div class=\"image-overlay-container image-align-$align$\" style=\"width:$width$;\">\n <h3 class=\"image-overlay-title\">$caption$</h3>\n <div class=\"image-overlay-content\">\n <div class=\"image-overlay-content-overlay\"></div>\n <$image class=\"image-overlay-content-image\" source=<<__img__>> alt=<<__alt__>>/>\n <$set name=\"fdcls\" filter=\"$fadein$ +[splitbefore[ ]] +[addprefix[image-overlay-fadeIn-]]\">\n <div class=<<_cls-content-details>> >\n <h3 class=\"image-overlay-content-title\">$title$</h3>\n <p class=\"image-overlay-content-text\">$text$</p>\n </div>\n </$set>\n </div>\n</div>\n\\end"},"$:/plugins/kookma/shiraz/macros/image-polaroid":{"title":"$:/plugins/kookma/shiraz/macros/image-polaroid","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define image-polaroid(img, width:\"30%\", align:\"none\", caption:\"\", tooltip:\"\", alt:\"\")\n<figure class=\"image-polaroid image-align-$align$\" style=\"width:$width$;\">\n <$image source=\"\"\"$img$\"\"\" tooltip=\"\"\"$tooltip$\"\"\"/>\n <figcaption class=\"image-polaroid-caption\">$caption$</figcaption>\n</figure> \n\\end"},"$:/plugins/kookma/shiraz/macros/image-pretty":{"title":"$:/plugins/kookma/shiraz/macros/image-pretty","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define image-pretty(img, width:\"30%\", align:\"none\", caption:\"\", tooltip:\"\", alt:\"\")\n<figure class=\"image-pretty image-align-$align$\" style=\"width:$width$;\">\n <$image source=<<__img__>> tooltip=<<__tooltip__>> alt=<<__alt__>> /> \n <figcaption class=\"image-pretty-caption\">$caption$</figcaption>\n</figure> \n\\end"},"$:/plugins/kookma/shiraz/macros/image-slidein":{"title":"$:/plugins/kookma/shiraz/macros/image-slidein","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define image-slidein(img, width:\"30%\", align:\"none\", caption:\"\", tooltip:\"\", slidein:\"left\", alt:\"\")\n<figure class=\"image-slidein mr-cap-$slidein$ image-align-$align$\" style=\"width:$width$;\">\n <$image source=<<__img__>> tooltip=<<__tooltip__>> alt=<<__alt__>>/>\n <figcaption>$caption$</figcaption>\n</figure> \n\\end"},"$:/plugins/kookma/shiraz/macros/list-search":{"title":"$:/plugins/kookma/shiraz/macros/list-search","author":"Jeremy Ruston","description":"creates few paragraphs of dumy text","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define list-search( filter:\"[!is[system]]\", search:\"search:title\", template:\"$:/core/ui/ListItemTemplate\",\n class:\"my-3\", stateTiddler:\"\", placeholder:\"keywords\")\n<$set name=\"state\" filter=\"[[$:/temp/list-search/]addsuffix<__stateTiddler__>addsuffix<qualify>]\">\n<div class=<<__class__>> >\n<$keyboard key=\"escape\" actions='<$action-deletetiddler $tiddler=<<state>>/>' >\n<$edit-text tiddler=<<state>> type=\"search\" tag=\"input\" default=\"\" placeholder=\"$placeholder$\" class=\"w-100\"/>\n</$keyboard>\n</div>\n<$reveal stateTitle=<<state>> stateField=text type=\"match\" text=\"\" class=<<__class__>> tag=div>\n<$list filter=<<__filter__>> template=<<__template__>>/>\n</$reveal>\n<$reveal stateTitle=<<state>> stateField=text type=\"nomatch\" text=\"\" class=<<__class__>> tag=div>\n<$let term={{{ [<state>get[text]] }}}\n sub= {{{ \"[\" [<__search__>] \"<term>]\" :and[join[]] }}} ><!-- this line creates a dynamic filter and stores in a string variable-->\n<$list filter=\"[subfilter<__filter__>]:and[subfilter<sub>]\" template=<<__template__>>/>\n</$let>\n</$reveal>\n</$set>\n\\end\n<!-- from Tobias Beer list-search with modification\nThe old style dynamic filters are:\n1. <$list filter=\"$filter$+[$search$<term>]\" template=<<__template__>>/>\n2. <$list filter=\"$filter$\" template=<<__template__>>/>\nThe new style is: not to use text substitution\n-->"},"$:/plugins/kookma/shiraz/macros/multicol":{"title":"$:/plugins/kookma/shiraz/macros/multicol","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define multicol(src, ncol:\"\", class:\"\")\n<div class=\"sh-multicol$ncol$ $class$\">\n\n$src$\n</div>\n\\end"},"$:/plugins/kookma/shiraz/macros/slider":{"title":"$:/plugins/kookma/shiraz/macros/slider","description":"Slider macro shows (hides) its content.","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define slider(label, src, labelClass, srcClass, status:\"closed\")\n<$let revealState = \"\"\"$:/state/shiraz/slider-macro/$(currentTiddler)$/$label$\"\"\"\n source = {{{ [<__src__>get[text]else<__src__>] }}} >\n<h3 class=\"$labelClass$\">\n <$reveal type=\"nomatch\" state=<<revealState>> text=\"open\" default=\"$status$\">\n <$button class=\"tc-btn-invisible tc-tiddlylink\" set=<<revealState>> setTo=\"open\">\n <span class=\"kk-sh-slider\"><$transclude tiddler=\"$:/core/images/right-arrow\" /></span>\n </$button>\n </$reveal>\n <$reveal type=\"match\" state=<<revealState>> text=\"open\" default=\"$status$\">\n <$button class=\"tc-btn-invisible tc-tiddlylink\" set=<<revealState>> setTo=\"closed\">\n <span class=\"kk-sh-slider\"><$transclude tiddler=\"$:/core/images/down-arrow\" /></span>\n </$button>\n </$reveal>\n <$let tv-wikilinks=\"no\">$label$</$let>\n</h3>\n<$reveal type=\"match\" state=<<revealState>> text=\"open\" default=\"$status$\" class=\"$srcClass$\" tag=div>\n<$transclude tiddler=<<source>> field=title mode=block/>\n</$reveal>\n\n</$let>\n\\end"},"$:/plugins/kookma/shiraz/macros/space":{"title":"$:/plugins/kookma/shiraz/macros/space","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define vspace(height:\"25px\")\n<p style=\"margin-bottom: $height$;\"></p>\n\\end\n\n\\define hspace(width:\"25px\")\n<span style=\"margin-left: $width$;\"></span>\n\\end\n"},"$:/plugins/kookma/shiraz/macros/text-utility":{"title":"$:/plugins/kookma/shiraz/macros/text-utility","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define tc(src:\"\", color:\"red\") <span style=\"color:$color$;\">$src$</span>\n\\define bc(src:\"\", color:\"yellow\") <span style=\"background-color:$color$;\">$src$</span>\n\\define mono(src:\"\", class:\"\") <code class=\"mono $class$\">$src$</code>\n\\define transform(case:\"\", src:\"\", class:\"\") <span class=\"text-$case$ $class$\">$src$</span>\n\n<!-- simple highlight -->\n\\define hl(src:\"\", color:\"yellow\") <mark class=\"kk-sh-highlight\" style=\"background-color:$color$;\">$src$</mark>\n\n<!-- drop shadow highlight -->\n\\define hls(src:\"\", color:\"yellow\") <mark class=\"kk-sh-highlight\" style=\"filter: drop-shadow(0 0 0.4rem $color$);\">$src$</mark>\n\n<!-- pen highlight -->\n\\define hlp(src:\"\", color:\"yellow\") <mark class=\"kk-sh-highlight-pen\" style=\"background-image: linear-gradient(to top, $color$ 50%, transparent 0);\">$src$</mark>\n"},"$:/plugins/kookma/shiraz/readme":{"title":"$:/plugins/kookma/shiraz/readme","tags":"","type":"text/vnd.tiddlywiki","text":"; Shiraz\nShiraz is a small framework of stylesheets, templates and macros to create stylish contents in Tiddlywiki. Shiraz has customized elements like alerts, cards, panels, images, static tables, dynamic tables, quick table, badges, texts, etc. Shiraz uses some modified CSS classes from [[Bootstrap|https://getbootstrap.com/]] 4.3.1.\n\n;Code and demo\nFor learning plugin features, syntax, tutorial and examples see the plugin demo and code pages\n\n* Demo: https://kookma.github.io/TW-Shiraz/\n* Code: https://github.com/kookma/TW-Shiraz\n"},"$:/plugins/kookma/shiraz/styles/alerts-leftbar":{"title":"$:/plugins/kookma/shiraz/styles/alerts-leftbar","text":".leftbar{\n border-width:0px !important;\n border-radius:0px !important;\n border-left-width: 5px !important;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bglowtone-colors":{"title":"$:/plugins/kookma/shiraz/styles/bglowtone-colors","text":"/* Colors taked from [1] https://www.bg-w3schools.bg-com/colors/colors_names.bg-asp \n[2] http://www.bg-workwithcolor.bg-com/color-chart-full-01.bg-htm*/\n/*Low tone background colors*/\n.bg-mistyrose{background-color:#ffe4e1;}\n.bg-lemonchiffon{background-color:#fffacd;}\n.bg-lavenderblush{background-color:#fff0f5;}\n.bg-lavender{background-color:#e6e6fa;}\n.bg-honeydew{background-color:#f0fff0;}\n.bg-lightcyan{background-color:#e0ffff;}\n.bg-aliceblue{background-color:#f0f8ff;}\n.bg-cornsilk{background-color:#fff8dc;}\n.bg-gainsboro{background-color:#dcdcdc;}\n.bg-bisque{background-color:#ffe4c4;}\n.bg-snow{background-color:#fffafa;}","list":"mistyrose lemonchiffon lavenderblush lavender honeydew lightcyan aliceblue cornsilk gainsboro bisque snow","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bs/alerts":{"title":"$:/plugins/kookma/shiraz/styles/bs/alerts","text":"/*Was taken from bootstrap 4.1.3*/\n.alert {\n position: relative;\n padding: 0.75rem 1.25rem;\n margin-bottom: 1rem;\n border: 1px solid transparent;\n border-radius: 0.25rem;\n}\n.alert-primary {\n color: #004085;\n background-color: #cce5ff;\n border-color: #b8daff;\n}\n\n.alert-primary hr {\n border-top-color: #9fcdff;\n}\n.alert-secondary {\n color: #383d41;\n background-color: #e2e3e5;\n border-color: #d6d8db;\n}\n\n.alert-secondary hr {\n border-top-color: #c8cbcf;\n}\n\n.alert-success {\n color: #155724;\n background-color: #d4edda;\n border-color: #c3e6cb;\n}\n\n.alert-success hr {\n border-top-color: #b1dfbb;\n}\n.alert-info {\n color: #0c5460;\n background-color: #d1ecf1;\n border-color: #bee5eb;\n}\n\n.alert-info hr {\n border-top-color: #abdde5;\n}\n.alert-warning {\n color: #856404;\n background-color: #fff3cd;\n border-color: #ffeeba;\n}\n\n.alert-warning hr {\n border-top-color: #ffe8a1;\n}\n\n.alert-danger {\n color: #721c24;\n background-color: #f8d7da;\n border-color: #f5c6cb;\n}\n\n.alert-danger hr {\n border-top-color: #f1b0b7;\n}\n.alert-light {\n color: #818182;\n background-color: #fefefe;\n border-color: #fdfdfe;\n}\n\n.alert-light hr {\n border-top-color: #ececf6;\n}\n.alert-dark {\n color: #1b1e21;\n background-color: #d6d8d9;\n border-color: #c6c8ca;\n}\n\n.alert-dark hr {\n border-top-color: #b9bbbe;\n}\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bs/background-colors":{"title":"$:/plugins/kookma/shiraz/styles/bs/background-colors","text":".bg-primary {\n background-color: #007bff !important;\n}\n\na.bg-primary:hover, a.bg-primary:focus,\nbutton.bg-primary:hover,\nbutton.bg-primary:focus {\n background-color: #0062cc !important;\n}\n\n.bg-secondary {\n background-color: #6c757d !important;\n}\n\na.bg-secondary:hover, a.bg-secondary:focus,\nbutton.bg-secondary:hover,\nbutton.bg-secondary:focus {\n background-color: #545b62 !important;\n}\n\n.bg-success {\n background-color: #28a745 !important;\n}\n\na.bg-success:hover, a.bg-success:focus,\nbutton.bg-success:hover,\nbutton.bg-success:focus {\n background-color: #1e7e34 !important;\n}\n\n.bg-info {\n background-color: #17a2b8 !important;\n}\n\na.bg-info:hover, a.bg-info:focus,\nbutton.bg-info:hover,\nbutton.bg-info:focus {\n background-color: #117a8b !important;\n}\n\n.bg-warning {\n background-color: #ffc107 !important;\n}\n\na.bg-warning:hover, a.bg-warning:focus,\nbutton.bg-warning:hover,\nbutton.bg-warning:focus {\n background-color: #d39e00 !important;\n}\n\n.bg-danger {\n background-color: #dc3545 !important;\n}\n\na.bg-danger:hover, a.bg-danger:focus,\nbutton.bg-danger:hover,\nbutton.bg-danger:focus {\n background-color: #bd2130 !important;\n}\n\n.bg-light {\n background-color: #f8f9fa !important;\n}\n\na.bg-light:hover, a.bg-light:focus,\nbutton.bg-light:hover,\nbutton.bg-light:focus {\n background-color: #dae0e5 !important;\n}\n\n.bg-dark {\n background-color: #343a40 !important;\n}\n\na.bg-dark:hover, a.bg-dark:focus,\nbutton.bg-dark:hover,\nbutton.bg-dark:focus {\n background-color: #1d2124 !important;\n}\n\n.bg-white {\n background-color: #fff !important;\n}\n\n.bg-transparent {\n background-color: transparent !important;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bs/badge":{"title":"$:/plugins/kookma/shiraz/styles/bs/badge","text":"/* Extracted from bootstrap 4.1.3 */\n.badge {\n display: inline-block;\n padding: 0.25em 0.4em;\n font-size: 75%;\n font-weight: 700;\n line-height: 1;\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: 0.25rem;\n}\n\n.badge:empty {\n display: none;\n}\n\n.btn .badge {\n position: relative;\n top: -1px;\n}\n\n.badge-pill {\n padding-right: 0.6em;\n padding-left: 0.6em;\n border-radius: 10rem;\n}\n\n.badge-primary {\n color: #fff;\n background-color: #007bff;\n}\n\n.badge-primary[href]:hover, .badge-primary[href]:focus {\n color: #fff;\n text-decoration: none;\n background-color: #0062cc;\n}\n\n.badge-secondary {\n color: #fff;\n background-color: #6c757d;\n}\n\n.badge-secondary[href]:hover, .badge-secondary[href]:focus {\n color: #fff;\n text-decoration: none;\n background-color: #545b62;\n}\n\n.badge-success {\n color: #fff;\n background-color: #28a745;\n}\n\n.badge-success[href]:hover, .badge-success[href]:focus {\n color: #fff;\n text-decoration: none;\n background-color: #1e7e34;\n}\n\n.badge-info {\n color: #fff;\n background-color: #17a2b8;\n}\n\n.badge-info[href]:hover, .badge-info[href]:focus {\n color: #fff;\n text-decoration: none;\n background-color: #117a8b;\n}\n\n.badge-warning {\n color: #212529;\n background-color: #ffc107;\n}\n\n.badge-warning[href]:hover, .badge-warning[href]:focus {\n color: #212529;\n text-decoration: none;\n background-color: #d39e00;\n}\n\n.badge-danger {\n color: #fff;\n background-color: #dc3545;\n}\n\n.badge-danger[href]:hover, .badge-danger[href]:focus {\n color: #fff;\n text-decoration: none;\n background-color: #bd2130;\n}\n\n.badge-light {\n color: #212529;\n background-color: #f8f9fa;\n}\n\n.badge-light[href]:hover, .badge-light[href]:focus {\n color: #212529;\n text-decoration: none;\n background-color: #dae0e5;\n}\n\n.badge-dark {\n color: #fff;\n background-color: #343a40;\n}\n\n.badge-dark[href]:hover, .badge-dark[href]:focus {\n color: #fff;\n text-decoration: none;\n background-color: #1d2124;\n}\n\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bs/borders":{"title":"$:/plugins/kookma/shiraz/styles/bs/borders","text":".border {\n border: 1px solid #dee2e6 !important;\n}\n\n.border-top {\n border-top: 1px solid #dee2e6 !important;\n}\n\n.border-right {\n border-right: 1px solid #dee2e6 !important;\n}\n\n.border-bottom {\n border-bottom: 1px solid #dee2e6 !important;\n}\n\n.border-left {\n border-left: 1px solid #dee2e6 !important;\n}\n\n.border-0 {\n border: 0 !important;\n}\n\n.border-top-0 {\n border-top: 0 !important;\n}\n\n.border-right-0 {\n border-right: 0 !important;\n}\n\n.border-bottom-0 {\n border-bottom: 0 !important;\n}\n\n.border-left-0 {\n border-left: 0 !important;\n}\n\n.border-primary {\n border-color: #007bff !important;\n}\n\n.border-secondary {\n border-color: #6c757d !important;\n}\n\n.border-success {\n border-color: #28a745 !important;\n}\n\n.border-info {\n border-color: #17a2b8 !important;\n}\n\n.border-warning {\n border-color: #ffc107 !important;\n}\n\n.border-danger {\n border-color: #dc3545 !important;\n}\n\n.border-light {\n border-color: #f8f9fa !important;\n}\n\n.border-dark {\n border-color: #343a40 !important;\n}\n\n.border-white {\n border-color: #fff !important;\n}\n\n.rounded {\n border-radius: 0.25rem !important;\n}\n\n.rounded-top {\n border-top-left-radius: 0.25rem !important;\n border-top-right-radius: 0.25rem !important;\n}\n\n.rounded-right {\n border-top-right-radius: 0.25rem !important;\n border-bottom-right-radius: 0.25rem !important;\n}\n\n.rounded-bottom {\n border-bottom-right-radius: 0.25rem !important;\n border-bottom-left-radius: 0.25rem !important;\n}\n\n.rounded-left {\n border-top-left-radius: 0.25rem !important;\n border-bottom-left-radius: 0.25rem !important;\n}\n\n.rounded-circle {\n border-radius: 50% !important;\n}\n\n.rounded-0 {\n border-radius: 0 !important;\n}\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bs/btn":{"title":"$:/plugins/kookma/shiraz/styles/bs/btn","text":"/* Button and btn classes Mohammad*/\n.btn {\n display: inline-block;\n font-weight: 400;\n text-align: center;\n white-space: nowrap;\n vertical-align: middle;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n border: 1px solid transparent;\n padding: 0.375rem 0.75rem;\n font-size: 1rem;\n line-height: 1.5;\n border-radius: 0.25rem;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n\n\n.btn:hover, .btn:focus {\n text-decoration: none;\n}\n\n.btn:focus, .btn.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.btn.disabled, .btn:disabled {\n opacity: 0.65;\n}\n\n.btn:not(:disabled):not(.disabled) {\n cursor: pointer;\n}\n\na.btn.disabled,\nfieldset:disabled a.btn {\n pointer-events: none;\n}\n\n.btn-primary {\n color: #fff;\n background-color: #007bff;\n border-color: #007bff;\n}\n\n.btn-primary:hover {\n color: #fff;\n background-color: #0069d9;\n border-color: #0062cc;\n}\n\n.btn-primary:focus, .btn-primary.focus {\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);\n}\n\n.btn-primary.disabled, .btn-primary:disabled {\n color: #fff;\n background-color: #007bff;\n border-color: #007bff;\n}\n\n.btn-secondary {\n color: #fff;\n background-color: #6c757d;\n border-color: #6c757d;\n}\n\n.btn-secondary:hover {\n color: #fff;\n background-color: #5a6268;\n border-color: #545b62;\n}\n\n.btn-secondary:focus, .btn-secondary.focus {\n box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);\n}\n\n.btn-secondary.disabled, .btn-secondary:disabled {\n color: #fff;\n background-color: #6c757d;\n border-color: #6c757d;\n}\n\n.btn-success {\n color: #fff;\n background-color: #28a745;\n border-color: #28a745;\n}\n\n.btn-success:hover {\n color: #fff;\n background-color: #218838;\n border-color: #1e7e34;\n}\n\n.btn-success:focus, .btn-success.focus {\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);\n}\n\n.btn-success.disabled, .btn-success:disabled {\n color: #fff;\n background-color: #28a745;\n border-color: #28a745;\n}\n\n.btn-info {\n color: #fff;\n background-color: #17a2b8;\n border-color: #17a2b8;\n}\n\n.btn-info:hover {\n color: #fff;\n background-color: #138496;\n border-color: #117a8b;\n}\n\n.btn-info:focus, .btn-info.focus {\n box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);\n}\n\n.btn-info.disabled, .btn-info:disabled {\n color: #fff;\n background-color: #17a2b8;\n border-color: #17a2b8;\n}\n\n.btn-warning {\n color: #212529;\n background-color: #ffc107;\n border-color: #ffc107;\n}\n\n.btn-warning:hover {\n color: #212529;\n background-color: #e0a800;\n border-color: #d39e00;\n}\n\n.btn-warning:focus, .btn-warning.focus {\n box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);\n}\n\n.btn-warning.disabled, .btn-warning:disabled {\n color: #212529;\n background-color: #ffc107;\n border-color: #ffc107;\n}\n\n.btn-danger {\n color: #fff;\n background-color: #dc3545;\n border-color: #dc3545;\n}\n\n.btn-danger:hover {\n color: #fff;\n background-color: #c82333;\n border-color: #bd2130;\n}\n\n.btn-danger:focus, .btn-danger.focus {\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);\n}\n\n.btn-danger.disabled, .btn-danger:disabled {\n color: #fff;\n background-color: #dc3545;\n border-color: #dc3545;\n}\n\n.btn-light {\n color: #212529;\n background-color: #f8f9fa;\n border-color: #f8f9fa;\n}\n\n.btn-light:hover {\n color: #212529;\n background-color: #e2e6ea;\n border-color: #dae0e5;\n}\n\n.btn-light:focus, .btn-light.focus {\n box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);\n}\n\n.btn-light.disabled, .btn-light:disabled {\n color: #212529;\n background-color: #f8f9fa;\n border-color: #f8f9fa;\n}\n\n.btn-dark {\n color: #fff;\n background-color: #343a40;\n border-color: #343a40;\n}\n\n.btn-dark:hover {\n color: #fff;\n background-color: #23272b;\n border-color: #1d2124;\n}\n\n.btn-dark:focus, .btn-dark.focus {\n box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);\n}\n\n.btn-dark.disabled, .btn-dark:disabled {\n color: #fff;\n background-color: #343a40;\n border-color: #343a40;\n}\n\n.btn-link {\n font-weight: 400;\n color: #007bff;\n background-color: transparent;\n}\n\n.btn-link:hover {\n color: #0056b3;\n text-decoration: underline;\n background-color: transparent;\n border-color: transparent;\n}\n\n.btn-link:focus, .btn-link.focus {\n text-decoration: underline;\n border-color: transparent;\n box-shadow: none;\n}\n\n.btn-link:disabled, .btn-link.disabled {\n color: #6c757d;\n pointer-events: none;\n}\n\n/* button size */\n\n.btn-lg{\n padding: 0.5rem 1rem;\n font-size: 1.25rem;\n line-height: 1.5;\n border-radius: 0.3rem;\n}\n\n.btn-sm{\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n line-height: 1.5;\n border-radius: 0.2rem;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bs/card-column":{"title":"$:/plugins/kookma/shiraz/styles/bs/card-column","text":"/* Extracted from bootstrap 4.3.1 */\n.card-columns .card {\n margin-bottom: 0.75rem;\n}\n\n@media (min-width: 576px) {\n .card-columns {\n -webkit-column-count: 3;\n -moz-column-count: 3;\n column-count: 3;\n -webkit-column-gap: 1.25rem;\n -moz-column-gap: 1.25rem;\n column-gap: 1.25rem;\n orphans: 1;\n widows: 1;\n }\n .card-columns .card {\n display: inline-block;\n width: 100%;\n }\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bs/card-deck":{"title":"$:/plugins/kookma/shiraz/styles/bs/card-deck","text":"/* Extracted from bootstrap 4.1.3 */\n\n.card-deck {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-direction: column;\n flex-direction: column;\n}\n\n.card-deck .card {\n margin-bottom: 15px;\n}\n\n@media (min-width: 576px) {\n .card-deck {\n -ms-flex-flow: row wrap;\n flex-flow: row wrap;\n margin-right: -15px;\n margin-left: -15px;\n }\n .card-deck .card {\n display: -ms-flexbox;\n display: flex;\n -ms-flex: 1 0 0%;\n flex: 1 0 0%;\n -ms-flex-direction: column;\n flex-direction: column;\n margin-right: 15px;\n margin-bottom: 0;\n margin-left: 15px;\n }\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bs/card-group":{"title":"$:/plugins/kookma/shiraz/styles/bs/card-group","text":"/* Extracted from bootstrap 4.1.3 */\n.card-group {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-direction: column;\n flex-direction: column;\n}\n\n.card-group > .card {\n margin-bottom: 15px;\n}\n\n@media (min-width: 576px) {\n .card-group {\n -ms-flex-flow: row wrap;\n flex-flow: row wrap;\n }\n .card-group > .card {\n -ms-flex: 1 0 0%;\n flex: 1 0 0%;\n margin-bottom: 0;\n }\n .card-group > .card + .card {\n margin-left: 0;\n border-left: 0;\n }\n .card-group > .card:first-child {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n .card-group > .card:first-child .card-img-top,\n .card-group > .card:first-child .card-header {\n border-top-right-radius: 0;\n }\n .card-group > .card:first-child .card-img-bottom,\n .card-group > .card:first-child .card-footer {\n border-bottom-right-radius: 0;\n }\n .card-group > .card:last-child {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n .card-group > .card:last-child .card-img-top,\n .card-group > .card:last-child .card-header {\n border-top-left-radius: 0;\n }\n .card-group > .card:last-child .card-img-bottom,\n .card-group > .card:last-child .card-footer {\n border-bottom-left-radius: 0;\n }\n .card-group > .card:only-child {\n border-radius: 0.25rem;\n }\n .card-group > .card:only-child .card-img-top,\n .card-group > .card:only-child .card-header {\n border-top-left-radius: 0.25rem;\n border-top-right-radius: 0.25rem;\n }\n .card-group > .card:only-child .card-img-bottom,\n .card-group > .card:only-child .card-footer {\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n }\n .card-group > .card:not(:first-child):not(:last-child):not(:only-child) {\n border-radius: 0;\n }\n .card-group > .card:not(:first-child):not(:last-child):not(:only-child) .card-img-top,\n .card-group > .card:not(:first-child):not(:last-child):not(:only-child) .card-img-bottom,\n .card-group > .card:not(:first-child):not(:last-child):not(:only-child) .card-header,\n .card-group > .card:not(:first-child):not(:last-child):not(:only-child) .card-footer {\n border-radius: 0;\n }\n}\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bs/card":{"title":"$:/plugins/kookma/shiraz/styles/bs/card","text":"/* Extracted from bootstrap 4.1.3 */\n.card {\n position: relative;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-direction: column;\n flex-direction: column;\n min-width: 0;\n word-wrap: break-word;\n background-color: #fff;\n background-clip: border-box;\n border: 1px solid rgba(0, 0, 0, 0.125);\n border-radius: 0.25rem;\n}\n\n.card > hr {\n margin-right: 0;\n margin-left: 0;\n}\n\n.card > .list-group:first-child .list-group-item:first-child {\n border-top-left-radius: 0.25rem;\n border-top-right-radius: 0.25rem;\n}\n\n.card > .list-group:last-child .list-group-item:last-child {\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n}\n\n.card-body {\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n padding: 1.25rem;\n}\n\n.card-title {\n margin-bottom: 0.75rem;\n}\n\n.card-subtitle {\n margin-top: -0.375rem;\n margin-bottom: 0;\n}\n\n.card-text:last-child {\n margin-bottom: 0;\n}\n\n.card-link:hover {\n text-decoration: none;\n}\n\n.card-link + .card-link {\n margin-left: 1.25rem;\n}\n\n.card-header {\n padding: 0.75rem 1.25rem;\n margin-bottom: 0;\n background-color: rgba(0, 0, 0, 0.03);\n border-bottom: 1px solid rgba(0, 0, 0, 0.125);\n}\n\n.card-header:first-child {\n border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0;\n}\n\n.card-header + .list-group .list-group-item:first-child {\n border-top: 0;\n}\n\n.card-footer {\n padding: 0.75rem 1.25rem;\n background-color: rgba(0, 0, 0, 0.03);\n border-top: 1px solid rgba(0, 0, 0, 0.125);\n}\n\n.card-footer:last-child {\n border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px);\n}\n\n.card-header-tabs {\n margin-right: -0.625rem;\n margin-bottom: -0.75rem;\n margin-left: -0.625rem;\n border-bottom: 0;\n}\n\n.card-header-pills {\n margin-right: -0.625rem;\n margin-left: -0.625rem;\n}\n\n.card-img-overlay {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n padding: 1.25rem;\n}\n\n.card-img {\n width: 100%;\n border-radius: calc(0.25rem - 1px);\n}\n\n.card-img-top {\n width: 100%;\n border-top-left-radius: calc(0.25rem - 1px);\n border-top-right-radius: calc(0.25rem - 1px);\n}\n\n.card-img-bottom {\n width: 100%;\n border-bottom-right-radius: calc(0.25rem - 1px);\n border-bottom-left-radius: calc(0.25rem - 1px);\n}\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bs/clearfix":{"title":"$:/plugins/kookma/shiraz/styles/bs/clearfix","text":".clearfix::after {\n display: block;\n clear: both;\n content: \"\";\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bs/float":{"title":"$:/plugins/kookma/shiraz/styles/bs/float","text":".float-left {\n float: left;\n}\n\n.float-right {\n float: right;\n}\n\n.float-none {\n float: none;\n}\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bs/my-adjustment":{"title":"$:/plugins/kookma/shiraz/styles/bs/my-adjustment","text":"/* My adjustments to bootstrap 4.1.3 css classes */\na {\n color: #007bff;\n text-decoration: none;\n background-color: transparent;\n -webkit-text-decoration-skip: objects;\n}\n/* Link is hacked to be compatible with bootstrap \nclasses remove it if the TW core objects break\n*/\n\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bs/shadow":{"title":"$:/plugins/kookma/shiraz/styles/bs/shadow","text":".shadow-sm {\n box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;\n}\n\n.shadow {\n box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;\n}\n\n.shadow-lg {\n box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;\n}\n\n.shadow-none {\n box-shadow: none !important;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bs/sizing-spacing":{"title":"$:/plugins/kookma/shiraz/styles/bs/sizing-spacing","text":"/* Extracted from bootstrap 4.3.1 */\n/*Defines margins, paddings, width and height*/\n.w-25 {\n width: 25% !important;\n}\n.w-50 {\n width: 50% !important;\n}\n.w-75 {\n width: 75% !important;\n}\n.w-100 {\n width: 100% !important;\n}\n.w-auto {\n width: auto !important;\n}\n.h-25 {\n height: 25% !important;\n}\n.h-50 {\n height: 50% !important;\n}\n.h-75 {\n height: 75% !important;\n}\n.h-100 {\n height: 100% !important;\n}\n.h-auto {\n height: auto !important;\n}\n.mw-100 {\n max-width: 100% !important;\n}\n.mh-100 {\n max-height: 100% !important;\n}\n.m-0 {\n margin: 0 !important;\n}\n.mt-0,\n.my-0 {\n margin-top: 0 !important;\n}\n.mr-0,\n.mx-0 {\n margin-right: 0 !important;\n}\n.mb-0,\n.my-0 {\n margin-bottom: 0 !important;\n}\n.ml-0,\n.mx-0 {\n margin-left: 0 !important;\n}\n.m-1 {\n margin: 0.25rem !important;\n}\n.mt-1,\n.my-1 {\n margin-top: 0.25rem !important;\n}\n.mr-1,\n.mx-1 {\n margin-right: 0.25rem !important;\n}\n.mb-1,\n.my-1 {\n margin-bottom: 0.25rem !important;\n}\n.ml-1,\n.mx-1 {\n margin-left: 0.25rem !important;\n}\n.m-2 {\n margin: 0.5rem !important;\n}\n.mt-2,\n.my-2 {\n margin-top: 0.5rem !important;\n}\n.mr-2,\n.mx-2 {\n margin-right: 0.5rem !important;\n}\n.mb-2,\n.my-2 {\n margin-bottom: 0.5rem !important;\n}\n.ml-2,\n.mx-2 {\n margin-left: 0.5rem !important;\n}\n\n.m-3 {\n margin: 1rem !important;\n}\n\n.mt-3,\n.my-3 {\n margin-top: 1rem !important;\n}\n\n.mr-3,\n.mx-3 {\n margin-right: 1rem !important;\n}\n\n.mb-3,\n.my-3 {\n margin-bottom: 1rem !important;\n}\n\n.ml-3,\n.mx-3 {\n margin-left: 1rem !important;\n}\n\n.m-4 {\n margin: 1.5rem !important;\n}\n\n.mt-4,\n.my-4 {\n margin-top: 1.5rem !important;\n}\n\n.mr-4,\n.mx-4 {\n margin-right: 1.5rem !important;\n}\n\n.mb-4,\n.my-4 {\n margin-bottom: 1.5rem !important;\n}\n\n.ml-4,\n.mx-4 {\n margin-left: 1.5rem !important;\n}\n\n.m-5 {\n margin: 3rem !important;\n}\n\n.mt-5,\n.my-5 {\n margin-top: 3rem !important;\n}\n\n.mr-5,\n.mx-5 {\n margin-right: 3rem !important;\n}\n\n.mb-5,\n.my-5 {\n margin-bottom: 3rem !important;\n}\n\n.ml-5,\n.mx-5 {\n margin-left: 3rem !important;\n}\n\n.p-0 {\n padding: 0 !important;\n}\n\n.pt-0,\n.py-0 {\n padding-top: 0 !important;\n}\n\n.pr-0,\n.px-0 {\n padding-right: 0 !important;\n}\n\n.pb-0,\n.py-0 {\n padding-bottom: 0 !important;\n}\n\n.pl-0,\n.px-0 {\n padding-left: 0 !important;\n}\n\n.p-1 {\n padding: 0.25rem !important;\n}\n\n.pt-1,\n.py-1 {\n padding-top: 0.25rem !important;\n}\n\n.pr-1,\n.px-1 {\n padding-right: 0.25rem !important;\n}\n\n.pb-1,\n.py-1 {\n padding-bottom: 0.25rem !important;\n}\n\n.pl-1,\n.px-1 {\n padding-left: 0.25rem !important;\n}\n\n.p-2 {\n padding: 0.5rem !important;\n}\n\n.pt-2,\n.py-2 {\n padding-top: 0.5rem !important;\n}\n\n.pr-2,\n.px-2 {\n padding-right: 0.5rem !important;\n}\n\n.pb-2,\n.py-2 {\n padding-bottom: 0.5rem !important;\n}\n\n.pl-2,\n.px-2 {\n padding-left: 0.5rem !important;\n}\n\n.p-3 {\n padding: 1rem !important;\n}\n\n.pt-3,\n.py-3 {\n padding-top: 1rem !important;\n}\n\n.pr-3,\n.px-3 {\n padding-right: 1rem !important;\n}\n\n.pb-3,\n.py-3 {\n padding-bottom: 1rem !important;\n}\n\n.pl-3,\n.px-3 {\n padding-left: 1rem !important;\n}\n\n.p-4 {\n padding: 1.5rem !important;\n}\n\n.pt-4,\n.py-4 {\n padding-top: 1.5rem !important;\n}\n\n.pr-4,\n.px-4 {\n padding-right: 1.5rem !important;\n}\n\n.pb-4,\n.py-4 {\n padding-bottom: 1.5rem !important;\n}\n\n.pl-4,\n.px-4 {\n padding-left: 1.5rem !important;\n}\n\n.p-5 {\n padding: 3rem !important;\n}\n\n.pt-5,\n.py-5 {\n padding-top: 3rem !important;\n}\n\n.pr-5,\n.px-5 {\n padding-right: 3rem !important;\n}\n\n.pb-5,\n.py-5 {\n padding-bottom: 3rem !important;\n}\n\n.pl-5,\n.px-5 {\n padding-left: 3rem !important;\n}\n\n.m-auto {\n margin: auto !important;\n}\n\n.mt-auto,\n.my-auto {\n margin-top: auto !important;\n}\n\n.mr-auto,\n.mx-auto {\n margin-right: auto !important;\n}\n\n.mb-auto,\n.my-auto {\n margin-bottom: auto !important;\n}\n\n.ml-auto,\n.mx-auto {\n margin-left: auto !important;\n}\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bs/text-alignment":{"title":"$:/plugins/kookma/shiraz/styles/bs/text-alignment","text":".text-justify {\n text-align: justify !important;\n}\n\n.text-nowrap {\n white-space: nowrap !important;\n}\n\n.text-truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.text-left {\n text-align: left !important;\n}\n\n.text-right {\n text-align: right !important;\n}\n\n.text-center {\n text-align: center !important;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bs/text-colors":{"title":"$:/plugins/kookma/shiraz/styles/bs/text-colors","text":"/* from bootstrap 4.1.3 */\n\n.text-white {\n color: #fff !important;\n}\n\n.text-primary {\n color: #007bff !important;\n}\n\na.text-primary:hover, a.text-primary:focus {\n color: #0062cc !important;\n}\n\n.text-secondary {\n color: #6c757d !important;\n}\n\na.text-secondary:hover, a.text-secondary:focus {\n color: #545b62 !important;\n}\n\n.text-success {\n color: #28a745 !important;\n}\n\na.text-success:hover, a.text-success:focus {\n color: #1e7e34 !important;\n}\n\n.text-info {\n color: #17a2b8 !important;\n}\n\na.text-info:hover, a.text-info:focus {\n color: #117a8b !important;\n}\n\n.text-warning {\n color: #ffc107 !important;\n}\n\na.text-warning:hover, a.text-warning:focus {\n color: #d39e00 !important;\n}\n\n.text-danger {\n color: #dc3545 !important;\n}\n\na.text-danger:hover, a.text-danger:focus {\n color: #bd2130 !important;\n}\n\n.text-light {\n color: #f8f9fa !important;\n}\n\na.text-light:hover, a.text-light:focus {\n color: #dae0e5 !important;\n}\n\n.text-dark {\n color: #343a40 !important;\n}\n\na.text-dark:hover, a.text-dark:focus {\n color: #1d2124 !important;\n}\n\n.text-body {\n color: #212529 !important;\n}\n\n.text-muted {\n color: #6c757d !important;\n}\n\n.text-black-50 {\n color: rgba(0, 0, 0, 0.5) !important;\n}\n\n.text-white-50 {\n color: rgba(255, 255, 255, 0.5) !important;\n}\n\n.text-hide {\n font: 0/0 a;\n color: transparent;\n text-shadow: none;\n background-color: transparent;\n border: 0;\n}\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bs/text-utility":{"title":"$:/plugins/kookma/shiraz/styles/bs/text-utility","text":"/* Can be removed latter. This is used for illustration of bootstrap cards */\n\n.text-lowercase {\n text-transform: lowercase !important;\n}\n\n.text-uppercase {\n text-transform: uppercase !important;\n}\n\n.text-capitalize {\n text-transform: capitalize !important;\n}\n\n.font-weight-light {\n font-weight: 300 !important;\n}\n\n.font-weight-normal {\n font-weight: 400 !important;\n}\n\n.font-weight-bold {\n font-weight: 700 !important;\n}\n\n.font-italic {\n font-style: italic !important;\n}\n\n\n.h1, .h2, .h3, .h4, .h5, .h6 {\n margin-bottom: 0.5rem;\n font-family: inherit;\n font-weight: 500;\n line-height: 1.2;\n color: inherit;\n}\n\n.h1 {\n font-size: 2.5rem;\n}\n\n.h2 {\n font-size: 2rem;\n}\n\n.h3 {\n font-size: 1.75rem;\n}\n\n.h4 {\n font-size: 1.5rem;\n}\n\n.h5 {\n font-size: 1.25rem;\n}\n\n.h6 {\n font-size: 1rem;\n}\n\n.lead {\n font-size: 1.25rem;\n font-weight: 300;\n}\n\n.display-1 {\n font-size: 6rem;\n font-weight: 300;\n line-height: 1.2;\n}\n\n.display-2 {\n font-size: 5.5rem;\n font-weight: 300;\n line-height: 1.2;\n}\n\n.display-3 {\n font-size: 4.5rem;\n font-weight: 300;\n line-height: 1.2;\n}\n\n.display-4 {\n font-size: 3.5rem;\n font-weight: 300;\n line-height: 1.2;\n}\n\n.hr {\n margin-top: 1rem;\n margin-bottom: 1rem;\n border: 0;\n border-top: 1px solid rgba(0, 0, 0, 0.1);\n}\n\n.small {\n font-size: 80%;\n font-weight: 400;\n}\n\n.mark {\n padding: 0.2em;\n background-color: #fcf8e3;\n}\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/clear-float":{"title":"$:/plugins/kookma/shiraz/styles/clear-float","text":"/* Resolve issue for floating objects which cross the tiddler frame!\nThe below code should force the tiddler to always wrap around floating elements, so that they are always inside\nRef: https://groups.google.com/d/msg/tiddlywiki/5bZwwj6cyac/2LzFeA7AAwAJ\n*/\n\n.tc-tiddler-body:before, .tc-tiddler-body:after {\n content: \"\";\n display: table;\n}\n.tc-tiddler-body:after {\n clear: both;\n}\n.tc-tiddler-body {\n zoom: 1;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/colorful-sidebar-tab":{"title":"$:/plugins/kookma/shiraz/styles/colorful-sidebar-tab","text":".tc-sidebar-lists .tc-tab-buttons button.tc-tab-selected {\n background: none;\n border: none;\n border-bottom: solid 1px #737373;\n font-weight: bold;\n color: #DB4C3F;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/csvtable-katex":{"title":"$:/plugins/kookma/shiraz/styles/csvtable-katex","text":".falign .katex-display > .katex {text-align:left;}\n.ralign .katex-display > .katex {text-align:right;}\n.table-mathbox tr td{vertical-align: baseline;} /* baseline aligned text and fomula in table cell*/\n\n/*\nOnly used with csv table + katex\nSee $:/plugins/kookma/shiraz/macros/csvtables/formats-math\n*/","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/csvtable-star":{"title":"$:/plugins/kookma/shiraz/styles/csvtable-star","text":"/* Styles for star rating used with table-csv macro */\n.shiraz-star svg{\nwidth: 1.2em;\nheight: 1.2em;\nvertical-align: middle;\nfill:#FF9529; /*Deep Saffron*/\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/csvtable":{"title":"$:/plugins/kookma/shiraz/styles/csvtable","text":"/* todo section ------------*/\n.tc-tiddler-body p.dblock,\n.tc-tiddler-preview-preview p.dblock {\n\tdisplay:none;\n}\n\n/*\nOnly used with csv table\nSee $:/plugins/kookma/shiraz/macros/csvtables/table-csv\nThe @@ produces a p tag.\n*/","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/dbadge":{"title":"$:/plugins/kookma/shiraz/styles/dbadge","text":"/*Credits: \nNishant Srivastava https://codepen.io/nisrulz/pen/bpQWLW\nMohammad Rahmani: https://github.com/kookma\n*/\n.dbadge {\n display: inline-block;\n margin: 0.0em;\n}\n.dbadge > span {\n color: #ffffff;\n font-size: 0.8em;\n font-weight: 400;\n line-height: 1;\n padding: .2em .6em;\n text-align: center;\n vertical-align: baseline;\n white-space: nowrap;}\n\n.dbadge-subject{\n background-color: #656565;\n border-bottom-left-radius: 0.25em;\n border-top-left-radius: 0.25em;}\n.dbadge-status {\n border-bottom-right-radius: 0.25em;\n border-top-right-radius: 0.25em;}\n\n.dbadge-primary {\n background-color: #337ab7;}\n.dbadge-success {\n background-color: #5cb85c;}\n.dbadge-info {\n background-color: #5bc0de;}\n.dbadge-warning {\n background-color: #f0ad4e;}\n.dbadge-danger {\n background-color: #d9534f;}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/details-slider":{"title":"$:/plugins/kookma/shiraz/styles/details-slider","text":"/*details html5 macro*/\ndetails.kk-shiraz-details > summary {\n padding: 2px 6px;\n font-weight:500;\n outline:none;\n}\ndetails.kk-shiraz-details > div {\n padding: 2px 6px;\n margin: 0;\n}\n\n\n/* Styles for summary cursor\nurl: https://css-tricks.com/two-issues-styling-the-details-element-and-how-to-solve-them/\n*/\n\ndetails.kk-shiraz-details summary {\n cursor: pointer;\n}\n\ndetails.kk-shiraz-details summary > * {\n display: inline;\n}\n\n\nbutton .kk-sh-slider svg{\nwidth: 0.8em;\nheight: 0.8em;\nvertical-align: middle;\n}\n\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/dynamic-tables-var":{"title":"$:/plugins/kookma/shiraz/styles/dynamic-tables-var","tags":"$:/tags/Stylesheet","type":"text/vnd.tiddlywiki","text":"/* these are dynamic or variable properties based on the tiddlywiki palette */\n\n.shiraz-dtable-page-footer select{\n\tbackground-color: <<color table-header-background>>;\n\tcolor:<<color foreground>>;\n}\n\n.shiraz-dtable-page-footer > td{\n\tbackground-color: <<color table-header-background>>;\n}\n\n/* customize the table footer used for numerical summary*/\n.shiraz-dtable-footer tr td{\n\tbackground-color: <<color table-footer-background>>;\n\tborder:none;\n}\n\n/* correct button color to support dark theme */\n.tbl-container table thead th button{\n\tcolor:<<colour button-foreground>>\n}\n.tbl-container table thead th button svg {\n\tfill:<<colour button-foreground>>;\n}"},"$:/plugins/kookma/shiraz/styles/dynamic-tables":{"title":"$:/plugins/kookma/shiraz/styles/dynamic-tables","text":"/* main editor toolbar settings for dynamic table */\n.shiraz-dtable-maineditor .tc-editor-toolbar button svg{\n\theight:0.9em; /* make toolbar buttons smaller */\n\twidth:0.9em\n}\n/* make third party plugins like KaTeX button smaller */\n.shiraz-dtable-maineditor .tc-editor-toolbar button .katex{\n\tfont-size: 0.9em;\n\tline-height:1em;\n}\n\n/* edit-text box for dynamic table */\n.shiraz-dtable-textbox {\n\twidth:100%;\n\tpadding-left: 5px;\n\tborder: none;\n}\n\n.shiraz-dtable-textbox:focus {\n\toutline: none;\n\tborder: 1px solid #5778d8;\n\tbackground: transparent;\n}\n\n.tbl-inpt-edit { width: 100%; background-color: transparent; border: none; color: #000000;}\n\nbutton.tbl-sort-svg > svg { text-shadow: none; fill:#000000; height:10px; padding:0 0 2px 0; }\n\nth .tc-tiddlylink, th a { text-shadow: none; margin: 0 0 0 0; padding: 0 0 0 0; color:#000000; font-weight: bold; }\n\n\n/* DELETE CONFIRMATION */\ntable thead .tbl-delete-confirm > th {\n\tcolor: white;\n\tbackground-color:#ff0033;\n\tpadding: 8px;\n\tmargin: 0px;\n\ttext-align:center;\n\tfont-weight:normal;\n}\n\ntable thead .tbl-delete-confirm > th > button {\n\tcolor: white;\n\tfill: white;\n}\n\n/* -- pagination --*/\n.shiraz-dtable-page-footer td{\n\tmargin: 0 0 0 0;\n\tpadding: 4px 7px 4px 7px;\n}\n\n.shiraz-dtable-page-footer select{\n\tpadding:0;\n\tmargin:0;\n\tborder:none;\t\n}\n\n.shiraz-dtable-page-footer {\n\ttext-align:center;\n}\n\n.shiraz-dtable-page-prev{\n\tfloat:left;\n\tmargin-right:8px;\n}\n\n.shiraz-dtable-page-next{\n\tfloat:right;\n\tmargin-left:8px;\n}\n\n.shiraz-dtable-page-footer button svg {height:0.7em;}\n.shiraz-dtable-page-footer button {outline: none; line-height:normal;}\n.shiraz-dtable-page-footer button:disabled {display:none;}\n\n/* format the expanded record (tiddler body) - for local customization like KaTeX numbering */\n.shiraz-dtable-expanded-record{ }\n\n/* adjust the column width for date/due-date/status/linktype fields*/\n.shiraz-dtable-col-fixedsize{\n\twidth:5.5rem;\n\twhite-space: nowrap;\n}\n.shiraz-dtable-priority{\n\twidth:6.5rem;\n\twhite-space: nowrap;\n}\n/* adjust the size of column with svg icons like: tbl-expand, tbl-clone, tbl-delete, tbl-checkbox */\n.shiraz-dtable-svg{\n\twidth:28px;\n\tmax-width:28px;\n}\n\n\n/* this ensure short title in small width table */\n.shiraz-dtable-title{\n\tmax-width: 15rem;\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n\twhite-space: nowrap;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/highlight":{"title":"$:/plugins/kookma/shiraz/styles/highlight","text":"mark.kk-sh-highlight {\n\tbackground-color: unset;\n\tborder-radius:0.4em;\n\tpadding:0 0.25em 0.1em;\n}\n\nmark.kk-sh-highlight-pen {\n\tbackground-color: unset;\n\tbackground-position: top left;\n\tbackground-repeat: no-repeat;\n\tbackground-size: 100% auto;\n}\n\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/image-alignment":{"title":"$:/plugins/kookma/shiraz/styles/image-alignment","text":"/*Image aligning classes*/\n.image-align-right{\n float:right;\n margin:0.5em 0 1.3em 1.4em;\n}\n.image-align-left{\n float:left;\n margin: 0.5em 1.4em 1.3em 0;\n}\n.image-align-center{\n display:block;\n margin: 0.5em auto 1.3em; \n}\n\n.image-float-none {\n float: none !important;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/image-basic":{"title":"$:/plugins/kookma/shiraz/styles/image-basic","text":".image-basic {\n text-align: center;\n font-style: italic;\n font-size: smaller;\n text-indent: 0;\n padding: 0.5em;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/image-overlay":{"title":"$:/plugins/kookma/shiraz/styles/image-overlay","text":".image-overlay-container{\n width: 50%; \n box-sizing: border-box;\n}\n\n@media screen and (max-width: 640px){\n .image-overlay-container{\n display: block;\n width: 100%;\n }\n}\n\n@media screen and (min-width: 900px){\n .image-overlay-container{\n width: 33.33%;\n }\n}\n\n.image-overlay-container .image-overlay-title{\n color: #1a1a1a;\n text-align: center;\n margin-bottom:10px;\n}\n\n.image-overlay-content {\n position: relative;\n width: 90%;\n max-width: 400px;\n margin: auto;\n overflow: hidden;\n}\n\n.image-overlay-content .image-overlay-content-overlay {\n background: rgba(0,0,0,0.7);\n position: absolute;\n height: 99%;\n width: 100%;\n left: 0;\n top: 0;\n bottom: 0;\n right: 0;\n opacity: 0;\n -webkit-transition: all 0.4s ease-in-out 0s;\n -moz-transition: all 0.4s ease-in-out 0s;\n transition: all 0.4s ease-in-out 0s;\n}\n\n.image-overlay-content:hover .image-overlay-content-overlay{\n opacity: 1;\n}\n\n.image-overlay-content-image{\n width: 100%;\n}\n\n.image-overlay-content-details {\n position: absolute;\n text-align: center;\n padding-left: 1em;\n padding-right: 1em;\n width: 100%;\n top: 50%;\n left: 50%;\n opacity: 0;\n -webkit-transform: translate(-50%, -50%);\n -moz-transform: translate(-50%, -50%);\n transform: translate(-50%, -50%);\n -webkit-transition: all 0.3s ease-in-out 0s;\n -moz-transition: all 0.3s ease-in-out 0s;\n transition: all 0.3s ease-in-out 0s;\n}\n\n.image-overlay-content:hover .image-overlay-content-details{\n top: 50%;\n left: 50%;\n opacity: 1;\n}\n\n.image-overlay-content-details h3{\n color: #fff;\n font-weight: 500;\n letter-spacing: 0.15em;\n margin-bottom: 0.5em;\n text-transform: uppercase;\n}\n\n.image-overlay-content-details p{\n color: #fff;\n font-size: 0.8em;\n}\n\n.image-overlay-fadeIn-bottom{\n top: 80%;\n}\n\n.image-overlay-fadeIn-top{\n top: 20%;\n}\n\n.image-overlay-fadeIn-left{\n left: 20%;\n}\n\n.image-overlay-fadeIn-right{\n left: 80%;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/image-polaroid":{"title":"$:/plugins/kookma/shiraz/styles/image-polaroid","text":".image-polaroid {\n min-width:64px;\n background-color: #f8f9fa;\n box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);\n}\n.image-polaroid img {\n width: 100%;\n padding:10px;\n height: auto;\n}\n.image-polaroid .image-polaroid-caption {\n padding:10px 15px 10px;\n text-align: center; \n line-height: 1.4em;\n font-weight:300;\n font-size: 0.9em; \n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/image-pretty":{"title":"$:/plugins/kookma/shiraz/styles/image-pretty","text":".image-pretty {\n min-width:64px;\n border: 1px solid #c8ccd1;\n background-color:#f8f9fa;\n}\n.image-pretty:hover {\n border: 1px solid #777;\n}\n.image-pretty img {\n padding:2px;\n width: 100%;\n height: auto;\n}\n.image-pretty .image-pretty-caption {\n padding:10px 15px 10px;\n text-align: center; \n line-height: 1.4em;\n font-weight:300;\n font-size: 0.9em; \n}\n\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/image-slidein":{"title":"$:/plugins/kookma/shiraz/styles/image-slidein","text":".image-slidein { \n display: block; \n position: relative; \n /*float: left;*/\n overflow: hidden; \n /* margin: 0 20px 20px 0;*/\n}\n\n.image-slidein img {\n width: 100%;\n height: auto;\n}\n\n.image-slidein figcaption { \n position: absolute; \n background: rgba(0,0,0,0.75); \n color: white; \n padding: 10px 20px; \n opacity: 0;\n -webkit-transition: all 0.6s ease;\n -moz-transition: all 0.6s ease;\n -o-transition: all 0.6s ease;\n}\n.image-slidein:hover figcaption {\n opacity: 1;\n}\n.image-slidein:before { \n content: \"?\"; \n position: absolute; \n font-weight: 800; \n background: rgba(255,255,255,0.75); \n text-shadow: 0 0 5px white;\n color: black;\n width: 24px;\n height: 24px;\n -webkit-border-radius: 12px;\n -moz-border-radius: 12px;\n border-radius: 12px;\n text-align: center;\n font-size: 14px;\n line-height: 24px;\n -moz-transition: all 0.6s ease;\n opacity: 0.75;\t\n}\n.image-slidein:hover:before {\n opacity: 0;\n}\n\n.mr-cap-left:before { bottom: 10px; left: 10px; }\n.mr-cap-left figcaption { bottom: 0; left: -30%; }\n.mr-cap-left:hover figcaption { left: 0; }\n\n.mr-cap-right:before { bottom: 10px; right: 10px; }\n.mr-cap-right figcaption { bottom: 0; right: -30%; }\n.mr-cap-right:hover figcaption { right: 0; }\n\n.mr-cap-top:before { top: 10px; left: 10px; }\n.mr-cap-top figcaption { left: 0; top: -30%; }\n.mr-cap-top:hover figcaption { top: 0; }\n\n.mr-cap-bottom:before { bottom: 10px; left: 10px; }\n.mr-cap-bottom figcaption { left: 0; bottom: -30%;}\n.mr-cap-bottom:hover figcaption { bottom: 0; }\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/mono":{"title":"$:/plugins/kookma/shiraz/styles/mono","tags":"$:/tags/Stylesheet","type":"text/vnd.tiddlywiki","text":".mono {\n\tcolor:unset;\n\tbackground-color: <<colour \"code-background\">>;\n\tborder: 1px solid #e1e1e8;\n\twhite-space: pre-wrap;\n\tpadding: 0 3px 2px;\n\tborder-radius: 3px;\n\tfont-family: {{$:/themes/tiddlywiki/vanilla/settings/codefontfamily}}\n}"},"$:/plugins/kookma/shiraz/styles/multicols/column":{"title":"$:/plugins/kookma/shiraz/styles/multicols/column","text":"/* multicolumn layouts with fixed column number works on the whole tiddler */\n.multicol .tc-tiddler-body {\n column-width: 14em;\n column-rule: 1px solid #ccc;\n}\n/* two columns responsive*/\n.multicol2 .tc-tiddler-body {\n\tcolumn-count:2; \n\tcolumn-width:15em;\n}\n/* three columns responsive*/\n.multicol3 .tc-tiddler-body {\n\tcolumn-count:3; \n\tcolumn-width:10em;\n}\n\n\n/* remove the extra space from first paragraph */\n.multicol .tc-tiddler-body > :first-child, \n.multicol2 .tc-tiddler-body > :first-child, \n.multicol3 .tc-tiddler-body > :first-child { margin-top: 0;}\n\n/*-------------------------------------------------------------------------------*/\n/* Classes for using with macro and div elements */\n.sh-multicol {\n column-width: 14em;\n column-rule: 1px solid #ccc;\n}\n/* two columns responsive*/\n.sh-multicol2 {\n\tcolumn-count:2; \n\tcolumn-width:15em;\n}\n/* three columns responsive*/\n.sh-multicol3 {\n\tcolumn-count:3; \n\tcolumn-width:10em;\n}\n\n/* remove the extra space from first paragraph */\n.sh-multicol > :first-child,\n.sh-multicol2 > :first-child,\n.sh-multicol3 > :first-child { margin-top: 0;}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/multicols/flex backup":{"title":"$:/plugins/kookma/shiraz/styles/multicols/flex backup","text":"/* multicolumn layout using flexbox courtesy from Bootstrap 4.3.1*/\n.flex-row {\n display: flex;\n flex-wrap: wrap;\n margin-right: -15px;\n margin-left: -15px;\n}\n.flex-col-1, \n.flex-col-2, \n.flex-col-3 {\n position: relative;\n width: 100%;\n padding-right: 15px;\n padding-left: 15px;\n}\n\n.flex-col-1{flex: 1 1 0;}\n.flex-col-2{flex: 2 1 0;}\n.flex-col-3{flex: 3 1 0;}\n\n.flex-col-1 > :first-child,\n.flex-col-2 > :first-child,\n.flex-col-3 > :first-child {\n\tmargin-top: 0;}","type":"text/css"},"$:/plugins/kookma/shiraz/styles/multicols/flex":{"title":"$:/plugins/kookma/shiraz/styles/multicols/flex","text":"/* multicolumn layout using flexbox courtesy from Bootstrap 4.3.1*/\n.flex-row {\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n/* margin-right: -15px;\n margin-left: -15px;*/\n}\n\n.flex-col,\n.flex-col-1, \n.flex-col-2, \n.flex-col-3,\n.flex-col-4 {\n position: relative;\n width: 100%;\n padding-right: 15px;\n padding-left: 15px;\n}\n\n/* for small screen width>=576px\nhttps://getbootstrap.com/docs/4.3/layout/grid/\n*/\n@media (min-width: 576px) {\n.flex-col {flex: 1 1 0; max-width: 100%;}\n.flex-col-1 {flex: 0 0 25%; max-width:25%}\n.flex-col-2 {flex: 0 0 50%; max-width:50%}\n.flex-col-3 {flex: 0 0 75%; max-width:75%}\n.flex-col-4 {flex: 0 0 100%; max-width:100%}\n}\n\n.flex-col > :first-child,\n.flex-col-1 > :first-child,\n.flex-col-2 > :first-child,\n.flex-col-3 > :first-child,\n.flex-col-4 > :first-child {\n margin-top: 0;}\n\n\n/* Alignment */\n.flex-align-items-center {\n align-items: center !important;\n}\n.flex-justify-content-center {\n justify-content: center !important;\n}\n\n.flex-no-gutters {\n margin-right: 0;\n margin-left: 0;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/multicols/storyriver":{"title":"$:/plugins/kookma/shiraz/styles/multicols/storyriver","text":"/* create story river in two column layout */\n.tc-story-river {\n display: flex;\n flex-wrap: wrap;\n}\n\n.tc-tiddler-frame\n{\n max-width: 49%; margin-right: 1%;\n /*max-width: 32%; margin-right: 1%; */\n}\n","tags":"","type":"text/css"},"$:/plugins/kookma/shiraz/styles/notebook":{"title":"$:/plugins/kookma/shiraz/styles/notebook","text":"@media print{\n .notebook .tc-tiddler-body {\n padding-left:60px;\n margin-top:25px;\n }\n .notebook .tc-tiddler-title,\n .notebook .tc-subtitle,\n\t.notebook .tc-tags-wrapper {\n padding-left:60px;\n }\n}\n\n@media screen{\n .notebook .tc-tiddler-title,\n .notebook .tc-subtitle,\n\t.notebook .tc-tags-wrapper,\n\t.notebook .tc-tiddler-body {\n padding-left:30px;\n }\n\n}\t\n\n@media screen and (max-width:960px) {\n .notebook .tc-tiddler-title,\n .notebook .tc-subtitle,\n .notebook .tc-tags-wrapper,\n .notebook .tc-tiddler-body {\n padding-left:60px;\n }\n\n}\n/*prevent applying left border in edit mode */\n.notebook:not([data-tiddler-title^=\"Draft of\"]):before {\n content: '';\n position: absolute;\n top: 0; bottom: 0; left: 0;\n width: 50px;\n background: radial-gradient(#575450 6px, transparent 7px) repeat-y;\n background-size: 30px 30px;\n border-right: 3px solid #D44147;\n\t z-index:1;\n}\n\n.notebook .tc-tiddler-body {\n\t position: relative;\n background: linear-gradient(transparent, transparent 1.95em, #91D1D3 1.95em);\n background-size: 2em 2em;\n\t min-height:90px; \n}\n\n.notebook .tc-tiddler-body{\n\t padding-top:20px;\n font-family: \"Handlee\", cursive;\n font-weight:300;\n line-height:2em;\n color:#696969;\n}\n\n/* Setting font for other elements */\n.notebook .tc-tiddler-body pre,\n.notebook .tc-tiddler-body code,\n.notebook .tc-tiddler-body pre code\n{\n font-family: \"Handlee\", cursive;\n font-weight:300;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/sticky-footer":{"title":"$:/plugins/kookma/shiraz/styles/sticky-footer","text":".sticky-footer {\n position: absolute;\n right: 0;\n bottom: 0;\n left: 0;\n padding: 0.5rem;\n background-color: #efefef;\n text-align: center;\n margin-top: 5px;\n box-sizing: border-box;\n width: 100%;\n}\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/tables":{"title":"$:/plugins/kookma/shiraz/styles/tables","text":".table-tight{\n\tfont-size:0.8em;\n}\n\n\n/*\nThis tiddler defines the custom stylesheet for tables \nApril 13, 2018\n*/\n\n/*center aligned table*/\n.table-center {\n margin:0 auto;\n}\n\n/* Table caption at top */\n.table-caption-top caption {\n caption-side:top;\n margin-bottom:0.2rem;\n}\n\n/* Striped row table */\n.table-striped-row tr:nth-child(even) td{\n background-color:#F3F6F6; \n}\n\n/* Striped column table */\n.table-striped-col tbody tr td:nth-child(odd) {\n\tbackground-color: #F3F6F6;\n}\n\n/*Borderless table*/\n.table-borderless, \n.table-borderless thead td, \n.table-borderless th, \n.table-borderless tr, \n.table-borderless td{\n border:0;\n}\n\n/* Table lines should be used with table-borderless for abbreviations and two column layout */\n\n.table-lines thead td, .table-lines th{\n border-bottom: 2px solid #dddddd;\n\t background-color:unset;\n }\n.table-lines td{\n border-bottom: 1px solid #dddddd;\n background-color:unset;\n }\n\n/* Table hover (yellow background on mouse over) */\n.table-hover tbody tr:hover{\n color: #212529;\n background-color: #e6e6e6;\n}\n.table-hover-yellow tbody tr:hover{background-color: #ffffcc;}\n.table-hover-cyan tbody tr:hover{background-color: #e6ffff;}\n\n/* Table with colored header */\n.thead-primary thead td, .thead-primary th{background-color: #007bff; color: #fff;}\n.thead-secondary thead td, .thead-secondary th{background-color: #6c757d; color: #fff;}\n.thead-success thead td, .thead-success th{background-color: #28a745; color: #fff;}\n.thead-warning thead td, .thead-warning th{background-color: #ffc107; color: #fff;}\n.thead-danger thead td, .thead-danger th{background-color: #dc3545; color: #fff;}\n.thead-info thead td, .thead-info th{background-color: #17a2b8; color: #fff;}\n.thead-dark thead td, .thead-dark th{background-color: #343a40; color: #fff;}\n.thead-light thead td, .thead-light th{background-color: #f8f9fa; color: #212529;}\n\n/* Table with colored header correct to fill svgs with white color */\n.thead-primary > thead> tr > td svg, .thead-primary > thead> tr > th svg,\n.thead-secondary > thead> tr > td svg, .thead-secondary > thead> tr > th svg,\n.thead-success > thead> tr > td svg, .thead-success > thead> tr > th svg,\n.thead-warning > thead> tr > td svg, .thead-warning > thead> tr > th svg,\n.thead-danger > thead> tr > td svg, .thead-danger > thead> tr > th svg,\n.thead-info > thead> tr > td svg, .thead-info > thead> tr > th svg,\n.thead-dark > thead> tr > td svg, .thead-dark > thead> tr > th svg\n {fill:#ffffff; padding:0 0 3px 0; }\n\n\n.thead-primary th .tc-tiddlylink, .thead-primary th a,\n.thead-secondary th .tc-tiddlylink, .thead-primary th a,\n.thead-success th .tc-tiddlylink, .thead-primary th a,\n.thead-warning th .tc-tiddlylink, .thead-primary th a,\n.thead-danger th .tc-tiddlylink, .thead-primary th a,\n.thead-info th .tc-tiddlylink, .thead-primary th a,\n.thead-dark th .tc-tiddlylink, .thead-primary th a{color:#ffffff}\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/tiddler-title-class":{"title":"$:/plugins/kookma/shiraz/styles/tiddler-title-class","text":".title-primary .tc-title {\n color: #007bff;\n}\n.title-secondary .tc-title {\n color: #6c757d;\n}\n.title-success .tc-title {\n color: #28a745;\n}\n.title-info .tc-title {\n color: #17a2b8;\n}\n.title-warning .tc-title {\n color: #ffc107;\n}\n.title-danger .tc-title {\n color: #dc3545;\n}\n.title-light .tc-title {\n color: #f8f9fa;\n}\n.title-dark .tc-title {\n color: #343a40;\n}\n.title-white .tc-title {\n color: #fff;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/ui/colorify-buttons":{"title":"$:/plugins/kookma/shiraz/styles/ui/colorify-buttons","text":"/* These css rules makes page control buttons in beatiful color */\n\n/*page control buttons*/\n.tc-page-controls .tc-image-new-button { fill: #5EB95E; } /*New tiddler button*/\n.tc-page-controls .tc-image-options-button { fill:#8058A5; } /*Open control pannel*/\n\n/* These css rules makes tiddler viewtoolbar buttons in beatiful color */\n\n.tc-tiddler-controls .tc-image-edit-button{fill:#f37b1d}\n.tc-tiddler-controls .tc-image-info-button{fill:#0e90d2}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/ui/edit-toolbar-buttons":{"title":"$:/plugins/kookma/shiraz/styles/ui/edit-toolbar-buttons","text":"/*Tiddler edit toolbar buttons as traffic lights*/\n.tc-tiddler-controls .tc-image-delete-button {fill:#ebb;}\n.tc-tiddler-controls .tc-image-cancel-button {fill:#ed9;}\n.tc-tiddler-controls .tc-image-done-button {fill:#beb;}","tags":"","type":"text/css"},"$:/plugins/kookma/shiraz/styles/ui/view-toolbar-button-visibility":{"title":"$:/plugins/kookma/shiraz/styles/ui/view-toolbar-button-visibility","text":"/* Mouseover toolbar visibility: courtesy from Tobias Beer*/\n.tc-tiddler-frame .tc-titlebar button {\n opacity: 0;\n transition: opacity .5s ease-in-out;\n}\n.tc-tiddler-frame:hover .tc-titlebar button {\n zoom: 1;\n filter: alpha(opacity=100);\n opacity: 1;\n}\n","tags":"","type":"text/css"},"$:/plugins/kookma/shiraz/templates/body/color":{"title":"$:/plugins/kookma/shiraz/templates/body/color","tags":"$:/tags/Table/BodyTemplate","tbl-column-list":"color","type":"text/vnd.tiddlywiki","text":"\\define showCell()\n<style>\n.dt:not(:disabled):dt(.disabled) {cursor: pointer;}\na.dt.disabled,fieldset:disabled a.dt {pointer-events: none;}\n</style>\n<$link overrideClass=\"dt disabled\" to=\"\">\n<$edit-text tag=input type=color tiddler=<<currentRecord>> field=color/>\n</$link>\n\\end\n\n\\define edit_color() <$edit-text tag=input type=color tiddler=<<currentRecord>> field=<<currentColumn>>/>\n<$reveal type=\"nomatch\" stateTitle=<<tempTableEdit>> stateIndex=\"mode\" text=\"edit\" tag=\"td\">\n<<showCell>>\n</$reveal>\n<$reveal type=\"match\" stateTitle=<<tempTableEdit>> stateIndex=\"mode\" text=\"edit\" tag=\"td\">\n<!--check if the current column is not selected for sorting-->\n<$list filter=\"[<tempTableSort>getindex[sortIndex]match<currentColumn>]\" variable=ignore\nemptyMessage=<<edit_color>> >\n <<showCell_Locked>>\n</$list>\n</$reveal>"},"$:/plugins/kookma/shiraz/templates/body/date":{"title":"$:/plugins/kookma/shiraz/templates/body/date","tags":"$:/tags/Table/BodyTemplate","tbl-column-list":"created modified","type":"text/vnd.tiddlywiki","text":"<td class=\"shiraz-dtable-col-fixedsize\">\n<$view tiddler=<<currentRecord>> field=<<currentColumn>> format=\"date\" template=\"YYYY.0MM.0DD\"/>\n</td>"},"$:/plugins/kookma/shiraz/templates/body/default":{"title":"$:/plugins/kookma/shiraz/templates/body/default","tags":"$:/tags/Table/BodyTemplate","type":"text/vnd.tiddlywiki","text":"<$reveal type=\"nomatch\" stateTitle=<<tempTableEdit>> stateIndex=\"mode\" text=\"edit\" tag=\"td\">\n<<showCell>>\n</$reveal>\n<$reveal type=\"match\" stateTitle=<<tempTableEdit>> stateIndex=\"mode\" text=\"edit\" tag=\"td\">\n<!--check if the current column is not selected for sorting-->\n<$list filter=\"[<tempTableSort>getindex[sortIndex]match<currentColumn>]\" variable=ignore\nemptyMessage=<<editCell>> >\n <<showCell_Locked>>\n</$list>\n</$reveal>"},"$:/plugins/kookma/shiraz/templates/body/due-date":{"title":"$:/plugins/kookma/shiraz/templates/body/due-date","code-body":"yes","tags":"$:/tags/Table/BodyTemplate","tbl-column-list":"due-date due","type":"text/vnd.tiddlywiki","text":"\\define showCell()\n<$let fmt=\"[UTC]YYYY.0MM.0DD\">\n<$set tiddler=<<currentRecord>> field=<<currentColumn>> name=due-date>\n<$text text={{{[<due-date>split[-]split[.]join[]format:date<fmt>]}}} />\n</$set>\n</$let>\n\\end\n\n\\define showCell_Locked() <span style=\"font-style:oblique;\"><<showCell>></span>\n\n\\define edit_date() \n<$list filter=\"[[$:/plugins/kookma/pikaday]!is[missing]] :filter[lookup:no[$:/config/Plugins/Disabled/]match[no]]\"\n emptyMessage='<$edit-text tag=input type=date tiddler=<<currentRecord>> field=<<currentColumn>>/>'\n\tvariable=null >\n <<editCell>>\n</$list>\n\\end\n\n<$reveal type=\"nomatch\" stateTitle=<<tempTableEdit>> stateIndex=\"mode\" text=\"edit\" tag=\"td\" class=\"shiraz-dtable-col-fixedsize\">\n<<showCell>>\n</$reveal>\n<$reveal type=\"match\" stateTitle=<<tempTableEdit>> stateIndex=\"mode\" text=\"edit\" tag=\"td\">\n<!--check if the current column is not selected for sorting-->\n<$list filter=\"[<tempTableSort>getindex[sortIndex]match<currentColumn>]\" variable=ignore\nemptyMessage=<<edit_date>> >\n <<showCell_Locked>>\n</$list>\n</$reveal>\n\n<!-- Part of Task Manager\n this template ALWAYS works on fields -->"},"$:/plugins/kookma/shiraz/templates/body/email":{"title":"$:/plugins/kookma/shiraz/templates/body/email","code-body":"yes","tags":"$:/tags/Table/BodyTemplate","tbl-column-list":"email","type":"text/vnd.tiddlywiki","text":"\\define display-email-address()\n<$let href={{{[<currentRecord>get<currentColumn>addprefix[mailto:]]}}} >\n<a class=\"tc-tiddlylink-external\" href=<<href>> rel=\"noopener noreferrer\" target=\"_blank\">\n<<showCell>>\n</a>\n</$let>\n\\end\n\\define display-email-address_Locked()\n<$let href={{{[<currentRecord>get<currentColumn>addprefix[mailto:]]}}} >\n<a class=\"tc-tiddlylink-external\" href=<<href>> rel=\"noopener noreferrer\" target=\"_blank\">\n<<showCell_Locked>>\n</a>\n</$let>\n\\end\n\n<$reveal type=\"nomatch\" stateTitle=<<tempTableEdit>> stateIndex=\"mode\" text=\"edit\" tag=\"td\">\n<<display-email-address>>\n</$reveal>\n<$reveal type=\"match\" stateTitle=<<tempTableEdit>> stateIndex=\"mode\" text=\"edit\" tag=\"td\">\n<!--check if the current column is not selected for sorting-->\n<$list filter=\"[<tempTableSort>getindex[sortIndex]match<currentColumn>]\" variable=ignore\nemptyMessage=<<editCell>> >\n<<display-email-address_Locked>>\n</$list>\n</$reveal>\n\n"},"$:/plugins/kookma/shiraz/templates/body/priority":{"title":"$:/plugins/kookma/shiraz/templates/body/priority","code-body":"yes","tags":"$:/tags/Table/BodyTemplate","tbl-column-list":"priority","type":"text/vnd.tiddlywiki","text":"\\define circle(color, fill)\n<svg width=\"12\" height=\"12\" >\n<circle cx=\"6\" cy=\"6\" r=\"5\" stroke=<<__color__>> fill=<<__fill__>> stroke-width=\"1\"/>\n</svg>\n\\end\n\n\\define showCell()\n<$list filter=\"[<currentRecord>get<currentColumn>match[5]]\" variable=ignore>\n<$macrocall $name=\"circle\" color=\"#dc3545\" fill=\"#f8d7da\"/> very high\n</$list>\n<$list filter=\"[<currentRecord>get<currentColumn>match[4]]\" variable=ignore>\n<$macrocall $name=\"circle\" color=\"#ff8c00\" fill=\"#fff3cd\"/> high\n</$list>\n<$list filter=\"[<currentRecord>get<currentColumn>match[3]]\" variable=ignore>\n<$macrocall $name=\"circle\" color=\"#17a2b8\" fill=\"#d1ecf1\"/> normal\n</$list>\n<$list filter=\"[<currentRecord>get<currentColumn>match[2]]\" variable=ignore>\n<$macrocall $name=\"circle\" color=\"#007bff\" fill=\"#cce5ff\"/> low\n</$list>\n<$list filter=\"[<currentRecord>get<currentColumn>match[1]]\" variable=ignore>\n<$macrocall $name=\"circle\" color=\"#6c757d\" fill=\"#e2e3e5\"/> very low\n</$list>\n\\end\n\n\\define showCell_Locked() <span style=\"font-style:oblique;\"><<showCell>></span>\n\n\\define select_priority()\n<$select tiddler=<<currentRecord>> field=<<currentColumn>> default=\"\"><option value=''>Select...</option><option value='5'>very high</option><option value='4'>high</option><option value='3'>normal</option><option value='2'>low</option><option value='1'>very low</option><option value=''>no priority</option></$select>\n\\end\n\n\n<$reveal type=\"nomatch\" stateTitle=<<tempTableEdit>> stateIndex=\"mode\" text=\"edit\" tag=\"td\" class=\"shiraz-dtable-priority\">\n<<showCell>>\n</$reveal>\n<$reveal type=\"match\" stateTitle=<<tempTableEdit>> stateIndex=\"mode\" text=\"edit\" tag=\"td\">\n<!--check if the current column is not selected for sorting-->\n<$list filter=\"[<tempTableSort>getindex[sortIndex]match<currentColumn>]\" variable=ignore\nemptyMessage=<<select_priority>> >\n <<showCell_Locked>>\n</$list>\n<$reveal>\n\n<!-- Part of Task Manager\n this template ALWAYS works on fields\n -->"},"$:/plugins/kookma/shiraz/templates/body/status":{"title":"$:/plugins/kookma/shiraz/templates/body/status","code-body":"yes","tags":"$:/tags/Table/BodyTemplate","tbl-column-list":"status","type":"text/vnd.tiddlywiki","text":"\\define showCell() <$transclude tiddler=<<currentRecord>> field=<<currentColumn>> mode=\"inline\" />\n\\define showCell_Locked() <span style=\"font-style:oblique;\"><<showCell>></span>\n\\define select_status()\n<$select tiddler=<<currentRecord>> field=<<currentColumn>> default=\"\">\n<option value=''>Select...</option>\n<$list filter=\"open in-work on-hold complete rework closed\" variable=status><option><$text text=<<status>>/></option></$list>\n</$select>\n\\end\n\n<$reveal type=\"nomatch\" stateTitle=<<tempTableEdit>> stateIndex=\"mode\" text=\"edit\" tag=\"td\" class=\"shiraz-dtable-col-fixedsize\">\n<<showCell>>\n</$reveal>\n<$reveal type=\"match\" stateTitle=<<tempTableEdit>> stateIndex=\"mode\" text=\"edit\" tag=\"td\">\n<!--check if the current column is not selected for sorting-->\n<$list filter=\"[<tempTableSort>getindex[sortIndex]match<currentColumn>]\" variable=ignore\nemptyMessage=<<select_status>> >\n <<showCell_Locked>>\n</$list>\n</$reveal>\n\n<!-- Part of Task Manager\n this template ALWAYS works on fields\n\tchange default staus values `open in-work on-hold complete rework closed` as you like-->"},"$:/plugins/kookma/shiraz/templates/body/tag-helper":{"title":"$:/plugins/kookma/shiraz/templates/body/tag-helper","code-body":"yes","tags":"","type":"text/vnd.tiddlywiki","text":"<!-- This is a copy of core tiddler: $:/core/ui/TagTemplate.\nThis is NOT a dynamic table body tempalte. This template itself used by $:/plugins/kookma/shiraz/templates/body/tags\nOn update Shiraz to a new release of TiddlyWiki, check the latest TiddlyWiki $:/core/ui/TagTemplate core tiddler\n-->\n\n\\whitespace trim\n<span class=\"tc-tag-list-item\" data-tag-title=<<currentTiddler>>>\n<$set name=\"transclusion\" value=<<currentRecord>>><!--Shiraz: this variable is overriden -->\n<$macrocall $name=\"tag-pill-body\" tag=<<currentTiddler>> icon={{{ [<currentTiddler>] :cascade[all[shadows+tiddlers]tag[$:/tags/TiddlerIconFilter]!is[draft]get[text]] }}} colour={{{ [<currentTiddler>] :cascade[all[shadows+tiddlers]tag[$:/tags/TiddlerColourFilter]!is[draft]get[text]] }}} palette={{$:/palette}} element-tag=\"\"\"$button\"\"\" element-attributes=\"\"\"popup=<<qualify \"$:/state/popup/tag\">> dragFilter='[all[current]tagging[]]' tag='span'\"\"\"/>\n<$reveal state=<<qualify \"$:/state/popup/tag\">> type=\"popup\" position=\"below\" animate=\"yes\" class=\"tc-drop-down\">\n<$set name=\"tv-show-missing-links\" value=\"yes\">\n<$transclude tiddler=\"$:/core/ui/ListItemTemplate\"/>\n</$set>\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/TagDropdown]!has[draft.of]]\" variable=\"listItem\"> \n<$transclude tiddler=<<listItem>>/> \n</$list>\n<hr>\n<$macrocall $name=\"list-tagged-draggable\" tag=<<currentTiddler>>/>\n</$reveal>\n</$set>\n</span>\n"},"$:/plugins/kookma/shiraz/templates/body/tags":{"title":"$:/plugins/kookma/shiraz/templates/body/tags","code-body":"yes","tags":"$:/tags/Table/BodyTemplate","tbl-column-list":"tags","type":"text/vnd.tiddlywiki","text":"<$reveal type=\"nomatch\" stateTitle=<<tempTableEdit>> stateIndex=\"mode\" text=\"edit\" tag=\"td\">\n<$list filter=\"[<currentRecord>tags[]] :except[subfilter<sv-exclude-tags>]\">\n<$transclude tiddler=\"$:/plugins/kookma/shiraz/templates/body/tag-helper\"/>\n</$list>\n</$reveal>\n<$reveal type=\"match\" stateTitle=<<tempTableEdit>> stateIndex=\"mode\" text=\"edit\" tag=\"td\">\n<!--check if the current column is not selected for sorting-->\n<$list filter=\"[<tempTableSort>getindex[sortIndex]match<currentColumn>]\" variable=ignore\nemptyMessage=<<editCell>> >\n <<showCell_Locked>>\n</$list>\n</$reveal>"},"$:/plugins/kookma/shiraz/templates/body/tbl-checkbox":{"title":"$:/plugins/kookma/shiraz/templates/body/tbl-checkbox","tags":"$:/tags/Table/BodyTemplate","tbl-column-list":"tbl-checkbox","type":"text/vnd.tiddlywiki","text":"\\define rowStyle() color:<<colour foreground>>; background-color:<<colour table-header-background>>;\n<td style=\"width:28px;text-align:center;\">\n<$checkbox tiddler=<<currentRecord>> tag=\"Done\"\ncheckactions=\"\"\"<$action-setfield $tiddler=<<tempTableStyle>> $index=<<currentRecord>> $value=<<rowStyle>> /><$action-setfield $tiddler=<<currentRecord>> status=\"complete\"/>\"\"\"\nuncheckactions=\"\"\"<$action-setfield $tiddler=<<tempTableStyle>> $index=<<currentRecord>> /><$action-setfield $tiddler=<<currentRecord>> status=\"rework\"/>\"\"\" />\n</td>\n\n<!-- classic style\n\"color:#155724;background-color:#d4edda;\"\n<<colour tab-foreground>>; background-color:<<colour tab-background>>\n-->"},"$:/plugins/kookma/shiraz/templates/body/tbl-clone":{"title":"$:/plugins/kookma/shiraz/templates/body/tbl-clone","tags":"$:/tags/Table/BodyTemplate","tbl-column-list":"tbl-clone","type":"text/vnd.tiddlywiki","text":"\\define cloneTiddler() <$action-createtiddler $basetitle=<<currentRecord>> $template=<<currentRecord>> />\n\n<$list filter=\"[<tempTableEdit>getindex[mode]match[edit]]\" variable=ignore>\n<td style=\"width:28px;text-align:center;\">\n <$button actions=<<cloneTiddler>> class=\"tc-btn-invisible\">\n\t {{$:/core/images/clone-button}}\n\t</$button>\n</td>\n</$list>"},"$:/plugins/kookma/shiraz/templates/body/tbl-delete":{"title":"$:/plugins/kookma/shiraz/templates/body/tbl-delete","tags":"$:/tags/Table/BodyTemplate","tbl-column-list":"tbl-delete","type":"text/vnd.tiddlywiki","text":"<$list filter=\"[<tempTableEdit>getindex[mode]match[edit]]\" variable=ignore>\n<td style=\"width:28px;text-align:center;\">\n <$button class=\"tc-btn-invisible\">\n <$action-sendmessage $message=\"tm-delete-tiddler\" $param=<<currentRecord>>/>\n {{$:/core/images/delete-button}}\n </$button>\n</td>\n</$list>"},"$:/plugins/kookma/shiraz/templates/body/tbl-expand":{"title":"$:/plugins/kookma/shiraz/templates/body/tbl-expand","tags":"$:/tags/Table/BodyTemplate","tbl-column-list":"tbl-expand","type":"text/vnd.tiddlywiki","text":"<$reveal type=\"nomatch\" state=<<tempPathExpand>> text=\"show\" tag=\"td\">\n <$button class=\"tc-btn-invisible tc-tiddlylink\">\n <$action-setfield $tiddler=<<tempTableExpand>> $index=<<currentRecord>> $value=\"show\" />\n {{$:/core/images/right-arrow}}\n </$button>\n</$reveal>\n<$reveal type=\"match\" state=<<tempPathExpand>> text=\"show\" tag=\"td\">\n <$button class=\"tc-btn-invisible tc-tiddlylink\">\n <$action-setfield $tiddler=<<tempTableExpand>> $index=<<currentRecord>>/>\n {{$:/core/images/down-arrow}}\n </$button>\n</$reveal>"},"$:/plugins/kookma/shiraz/templates/body/tbl-linktype":{"title":"$:/plugins/kookma/shiraz/templates/body/tbl-linktype","tags":"$:/tags/Table/BodyTemplate","tbl-column-list":"tbl-linktype","type":"text/vnd.tiddlywiki","text":"\\define subtiddler-pattern() (^$(currentTiddler)$\\s*/|^$(currentTiddler)$\\s*:)\n\n<td class=\"shiraz-dtable-col-fixedsize\">\n<$text text={{{ \n[all[current]links[]match<currentRecord>then[link]]\n[all[current]backlinks[]match<currentRecord>then[backlink]]\n[all[current]tagging[]match<currentRecord>then[tagging]]\n[<currentRecord>regexp<subtiddler-pattern>then[subtiddler]]\n~[<currentRecord>search:text<currentTiddler>then[backtransclusion]else[transclusion]] }}} />\n</td>\n<!-- \ntb-linktype is not sortable not editable. The priority is as below:\nlink, backlink, tagging, subtiddler, transclusion, and backtransclusion\n-->"},"$:/plugins/kookma/shiraz/templates/body/title":{"title":"$:/plugins/kookma/shiraz/templates/body/title","code-body":"yes","tags":"$:/tags/Table/BodyTemplate","tbl-column-list":"title","type":"text/vnd.tiddlywiki","text":"<td class=\"shiraz-dtable-title\">\n<$link to=<<currentRecord>>><$text text=<<currentRecord>> /></$link>\n</td>"},"$:/plugins/kookma/shiraz/templates/body/type":{"title":"$:/plugins/kookma/shiraz/templates/body/type","code-body":"yes","tags":"$:/tags/Table/BodyTemplate","tbl-column-list":"type","type":"text/vnd.tiddlywiki","text":"\\define showCell() <$transclude tiddler=<<currentRecord>> field=<<currentColumn>> mode=\"inline\" />\n<td>\n<<showCell>>\n</td>\n<!-- Note that the showCell here overrides the global showCell from table-dynamic macro -->"},"$:/plugins/kookma/shiraz/templates/footer/default":{"title":"$:/plugins/kookma/shiraz/templates/footer/default","tags":"$:/tags/Table/FooterTemplate","type":"text/vnd.tiddlywiki","text":"<$vars idx={{{ [<currentColumn>addsuffix[/]addsuffix<footerRow>] }}}>\n<$set name=getFieldOrIndex filter=\"[<fieldOrIndex>]-index\" value=\"get\" emptyValue=\"getindex\">\n<$reveal type=\"nomatch\" stateTitle=<<tempTableEdit>> stateIndex=\"mode\" text=\"edit\" tag=\"td\">\n<$transclude tiddler=<<tempTableFooter>> index=<<idx>> mode=\"inline\" />\n</$reveal>\n<$reveal type=\"match\" stateTitle=<<tempTableEdit>> stateIndex=\"mode\" text=\"edit\" tag=\"td\">\n<$edit-text tiddler=<<tempTableFooter>> index=<<idx>> tag=\"input\" class=\"shiraz-dtable-textbox\"/>\n</$reveal>\n</$set>\n</$vars>"},"$:/plugins/kookma/shiraz/templates/footer/tbl-clone":{"title":"$:/plugins/kookma/shiraz/templates/footer/tbl-clone","tags":"$:/tags/Table/FooterTemplate","tbl-column-list":"tbl-clone","type":"text/vnd.tiddlywiki","text":"<$list filter=\"[<tempTableEdit>getindex[mode]match[edit]]\" variable=ignore>\n<td></td>\n</$list>"},"$:/plugins/kookma/shiraz/templates/footer/tbl-delete":{"title":"$:/plugins/kookma/shiraz/templates/footer/tbl-delete","tags":"$:/tags/Table/FooterTemplate","tbl-column-list":"tbl-delete","type":"text/vnd.tiddlywiki","text":"<$list filter=\"[<tempTableEdit>getindex[mode]match[edit]]\" variable=ignore>\n<td></td>\n</$list>"},"$:/plugins/kookma/shiraz/templates/footer/tbl-expand":{"title":"$:/plugins/kookma/shiraz/templates/footer/tbl-expand","tags":"$:/tags/Table/FooterTemplate","tbl-column-list":"tbl-expand","type":"text/vnd.tiddlywiki","text":"<td style=\"width:28px;\"></td>"},"$:/plugins/kookma/shiraz/templates/header/default":{"title":"$:/plugins/kookma/shiraz/templates/header/default","tags":"$:/tags/Table/HeaderTemplate","type":"text/vnd.tiddlywiki","text":"<$reveal type=\"nomatch\" stateTitle=<<tempTableSort>> stateIndex=\"sortIndex\" text=<<currentColumn>> tag=\"th\">\n<$button setTitle=<<tempTableSort>> setIndex=\"sortIndex\" setTo=<<currentColumn>> class=\"tc-btn-invisible tc-tiddlylink\" >\n<$action-setfield $tiddler=<<tempTableSort>> $index=\"hasnegate\" $value=\"false\"/>\n<$action-setfield $tiddler=<<tempTableSort>> $index=\"negate\" $value=\"\"/>\n<span style=\"text-transform: capitalize;\"><$text text=<<currentColumn>>/></span>\n</$button>\n</$reveal>\n<$reveal type=\"match\" stateTitle=<<tempTableSort>> stateIndex=\"sortIndex\" text=<<currentColumn>> tag=\"th\">\n<$list filter=\"[<tempTableSort>getindex[hasnegate]match[false]]\" variable=ignore><!--set negate for sort-->\n<$button setTitle=<<tempTableSort>> setIndex=\"hasnegate\" setTo=\"true\" class=\"tbl-sort-svg tc-btn-invisible tc-tiddlylink\" >\n<$action-setfield $tiddler=<<tempTableSort>> $index=\"negate\" $value=\"!\"/>\n<span style=\"text-transform: capitalize;\"><$text text=<<currentColumn>>/></span> {{$:/core/images/down-arrow}}\n</$button>\n</$list>\n<$list filter=\"[<tempTableSort>getindex[hasnegate]match[true]]\" variable=ignore><!--remove negate for sort-->\n<$button setTitle=<<tempTableSort>> setIndex=\"hasnegate\" setTo=\"false\" class=\"tbl-sort-svg tc-btn-invisible tc-tiddlylink\" >\n<$action-setfield $tiddler=<<tempTableSort>> $index=\"negate\" $value=\"\"/>\n<span style=\"text-transform: capitalize;\"><$text text=<<currentColumn>>/></span> {{$:/core/images/up-arrow}}\n</$button>\n</$list>\n</$reveal>\n"},"$:/plugins/kookma/shiraz/templates/header/tbl-checkbox":{"title":"$:/plugins/kookma/shiraz/templates/header/tbl-checkbox","tags":"$:/tags/Table/HeaderTemplate","tbl-column-list":"tbl-checkbox","type":"text/vnd.tiddlywiki","text":"\\define rowStyle() color:<<colour foreground>>; background-color:<<colour table-header-background>>;\n\n\\define chk-checkactions()\n<$list filter=\"[subfilter<inputFilter>]\" variable=\"currentRecord\">\n<$action-listops $tiddler=<<currentRecord>> $tags=\"+[append[Done]]\" />\n<$action-setfield $tiddler=<<currentRecord>> status=\"complete\"/>\n<$action-setfield $tiddler=<<tempTableStyle>> $index=<<currentRecord>> $value=<<rowStyle>> />\n</$list>\n\\end\n\\define chk-uncheckactions()\n<$list filter=\"[subfilter<inputFilter>]\" variable=\"currentRecord\">\n<$action-listops $tiddler=<<currentRecord>> $tags=\"+[remove[Done]]\" />\n<$action-setfield $tiddler=<<currentRecord>> status=\"rework\"/>\n<$action-setfield $tiddler=<<tempTableStyle>> $index=<<currentRecord>> />\n</$list>\n\\end\n\n<th class=\"shiraz-dtable-svg\">\n<$checkbox checkactions=<<chk-checkactions>> uncheckactions=<<chk-uncheckactions>> />\n</th>\n\n<!-- old style for checked row\n\"color:#155724;background-color:#d4edda;\"\n-->"},"$:/plugins/kookma/shiraz/templates/header/tbl-clone":{"title":"$:/plugins/kookma/shiraz/templates/header/tbl-clone","tags":"$:/tags/Table/HeaderTemplate","tbl-column-list":"tbl-clone","type":"text/vnd.tiddlywiki","text":"<$list filter=\"[<tempTableEdit>getindex[mode]match[edit]]\" variable=ignore>\n<th class=\"shiraz-dtable-svg\">\n<span>\n<$button class=\"tc-btn-invisible\" disabled=yes tooltip=\"disabled button\" style=\"cursor:default\">\n{{$:/core/images/clone-button}}\n</$button>\n</span>\n</th>\n</$list>"},"$:/plugins/kookma/shiraz/templates/header/tbl-delete":{"title":"$:/plugins/kookma/shiraz/templates/header/tbl-delete","tags":"$:/tags/Table/HeaderTemplate","tbl-column-list":"tbl-delete","type":"text/vnd.tiddlywiki","text":"<$list filter=\"[<tempTableEdit>getindex[mode]match[edit]]\" variable=ignore>\n<th class=\"shiraz-dtable-svg\">\n <span>\n <$button class=\"tc-btn-invisible\">\n <$action-setfield $tiddler=\"$:/temp/tables/delete-all\" text=<<currentTable>>/>\n {{$:/core/images/delete-button}}\n </$button>\n </span>\n</th>\n</$list>"},"$:/plugins/kookma/shiraz/templates/header/tbl-expand":{"title":"$:/plugins/kookma/shiraz/templates/header/tbl-expand","tags":"$:/tags/Table/HeaderTemplate","tbl-column-list":"tbl-expand","type":"text/vnd.tiddlywiki","text":"<th class=\"shiraz-dtable-svg\">\n <$list filter=\"[<tempTableExpand>indexes[]limit[1]]\">\n <$button class=\"tc-btn-invisible\">{{$:/core/images/fold-button}}\n <$action-setfield $tiddler=<<tempTableExpand>> text=\"\"/>\n </$button>\n </$list>\n</th>"},"$:/plugins/kookma/shiraz/templates/header/tbl-linktype":{"title":"$:/plugins/kookma/shiraz/templates/header/tbl-linktype","tags":"$:/tags/Table/HeaderTemplate","tbl-column-list":"tbl-linktype","type":"text/vnd.tiddlywiki","text":"<th style=\"cursor:default;\">Linktype</th>\n<!-- \ntb-linktype is not sortable not editable\n-->"},"$:/plugins/kookma/shiraz/ui/Buttons/SwitchPalette":{"title":"$:/plugins/kookma/shiraz/ui/Buttons/SwitchPalette","caption":"{{$:/plugins/kookma/shiraz/images/palette-switch}} {{$:/language/Buttons/Shiraz/Caption}}","dark-palette":"$:/palettes/SolarFlare","description":"Toggle between light/dark color palette","light-palette":"$:/palettes/Vanilla","list-after":"","tags":"$:/tags/PageControls","type":"text/vnd.tiddlywiki","text":"\\whitespace trim\n<$vars \ndarkPalette ={{$:/plugins/kookma/shiraz/ui/Buttons/SwitchPalette!!dark-palette}}\nlightPalette={{$:/plugins/kookma/shiraz/ui/Buttons/SwitchPalette!!light-palette}}\n> \n<$button \n tooltip={{$:/language/Buttons/Shiraz/Hint}} \n aria-label={{$:/language/Buttons/Shiraz/Caption}} \n class=<<tv-config-toolbar-class>>\n>\n <$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n {{$:/plugins/kookma/shiraz/images/palette-switch}}\n </$list>\n\n <$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n <span class=\"tc-btn-text\">switch palettes</span>\n </$list>\n\n <$reveal type=\"match\" state=\"$:/palette\" text=<<darkPalette>> > \n <$action-setfield $tiddler=\"$:/palette\" text=<<lightPalette>> />\n </$reveal>\n <$reveal type=\"nomatch\" state=\"$:/palette\" text=<<darkPalette>> >\n <$action-setfield $tiddler=\"$:/palette\" text=<<darkPalette>> >\n </$reveal>\n</$button>\n</$vars>"},"$:/plugins/kookma/shiraz/ui/ControlPanel/Settings":{"title":"$:/plugins/kookma/shiraz/ui/ControlPanel/Settings","caption":"Shiraz","tags":"$:/tags/ControlPanel/SettingsTab $:/tags/MoreSideBar","type":"text/vnd.tiddlywiki","text":"\\define dynamictables-editortype() $:/config/shiraz/dynamictables/editor-type\n\nThese settings let you customise the behaviour of Shiraz plugin.\n\n---\n\n;Show Shiraz setting in more sidebar\n:<$checkbox tiddler=\"$:/plugins/kookma/shiraz/ui/ControlPanel/Settings\" tag=\"$:/tags/MoreSideBar\"> Show setting in more sidebar</$checkbox>\n\n;Options\n:<$checkbox tiddler=\"$:/plugins/kookma/shiraz/styles/multicols/storyriver\" tag=\"$:/tags/Stylesheet\"> Multicolumn story river</$checkbox>\n:<$checkbox tiddler=\"$:/plugins/kookma/shiraz/styles/ui/colorify-buttons\" tag=\"$:/tags/Stylesheet\"> Colorful UI buttons</$checkbox>\n:<$checkbox tiddler=\"$:/plugins/kookma/shiraz/styles/ui/view-toolbar-button-visibility\" tag=\"$:/tags/Stylesheet\"> Hide tiddler's view toolbar and show on mouse hover</$checkbox>\n:<$checkbox tiddler=\"$:/plugins/kookma/shiraz/styles/ui/edit-toolbar-buttons\" tag=\"$:/tags/Stylesheet\"> Traffic lights for edit toolbar buttons</$checkbox>\n:<$checkbox tiddler=\"$:/plugins/kookma/shiraz/styles/colorful-sidebar-tab\" tag=\"$:/tags/Stylesheet\"> Colorify sidebar tabs</$checkbox>\n\n;Set dark and light palettes\n{{$:/plugins/kookma/shiraz/ui/set-dark-light-palette}}\n\n; Choose Local Editor for Dynamic Table\n:<$checkbox tiddler=<<dynamictables-editortype>> field=\"text\" checked=\"main-editor\" unchecked=\"simple-textarea\" default=\"simple-textarea\"> Use Tiddlywiki main editor </$checkbox>\n:<$checkbox tiddler=<<dynamictables-editortype>> field=\"text\" checked=\"simple-textarea\" unchecked=\"main-editor\" default=\"simple-textarea\"> Use simple text area </$checkbox>"},"$:/plugins/kookma/shiraz/ui/set-dark-light-palette":{"title":"$:/plugins/kookma/shiraz/ui/set-dark-light-palette","dark-palette":"$:/palettes/SolarFlare","light-palette":"$:/palettes/Vanilla","tags":"","type":"text/vnd.tiddlywiki","text":"\\define switchpaletteTid() $:/plugins/kookma/shiraz/ui/Buttons/SwitchPalette\n\n\\define selectPelette(title, default, tiddler, field)\n<label class=\"kk-switch-label\">$title$</label>\n<$select tiddler=<<__tiddler__>> field=<<__field__>> default=\"\">\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/Palette]]\" >\n<option value=<<currentTiddler>> >\n<$view field='name'>\n <$view field='title'/>\n</$view>\n</option>\n</$list>\n</$list>\n\\end\n\n<div style=\"margin-left:40px\">\n\n<$macrocall $name=selectPelette \n title=\"Dark palette\" filter=<<filterNight>> \n\tdefault=\"$:/palettes/SolarizedDark\" field=\"dark-palette\" \n\ttiddler=<<switchpaletteTid>> /><br>\n\n<$macrocall $name=selectPelette \n title=\"Light palette\" filter=<<filterDay>> \n\tdefault=\"$:/palettes/Vanilla\" field=\"light-palette\" \n\ttiddler=<<switchpaletteTid>> />\n\n<label class=\"kk-switch-label\">Reset to default</label>\n<$button> {{$:/core/images/erase}}\n<$action-setfield \n $tiddler=<<switchpaletteTid>> \n\t$field=dark-palette \n\t$value={{!!dark-palette}} />\n<$action-setfield \n $tiddler=<<switchpaletteTid>> \n\t$field=light-palette \n\t$value={{!!light-palette}} />\t\n\t\n<$action-setfield \n $tiddler=\"$:/palette\" \n\t$field=text\n\t$value={{!!light-palette}} />\t\t\n</$button>\n</div>\n<style>\n.kk-switch-label{\n width:105px;\n display: inline-block;\n}\n</style>\t"},"$:/plugins/kookma/shiraz/viewtemplates/sticky-footer":{"title":"$:/plugins/kookma/shiraz/viewtemplates/sticky-footer","list-after":"","tags":"$:/tags/ViewTemplate","type":"text/vnd.tiddlywiki","text":"<$list filter=\"[all[current]has[sticky-footer]]\">\n<div class=\"sticky-footer\">\n{{!!sticky-footer}}\n</div>\n</$list>\n"}}} \ No newline at end of file +{"tiddlers":{"$:/plugins/kookma/shiraz/history":{"title":"$:/plugins/kookma/shiraz/history","type":"text/vnd.tiddlywiki","text":"Full change log: [[https://kookma.github.io/TW-Shiraz/#ChangeLog]]\n\n* ''2.9.7'' -- 2024.07.13 -- update to work with TiddlyWiki 5.3.5\n* ''2.9.5'' -- 2024.06.05 -- minor bug fixes. Reverted to work with TW 5.2.7+\n* ''2.9.4'' -- 2024.05.31 -- update to use some new features of 5.3.3\n* ''2.7.1'' -- 2022.12.17 -- update to Tiddlywiki 5.2.4, few bug fixes\n* ''2.6.9'' -- 2022.10.17 -- improved Node Explorer, and task Explorer\n* ''2.6.1'' -- 2022.09.27 -- new subplug Formatter, better task manager\n* ''2.5.0'' -- 2022.08.02 -- new data block, updated to Tiddlywiki 5.2.3\n* ''2.4.4'' -- 2021.09.19 -- added css class for tbl-expand customization\n* ''2.4.2'' -- 2021.09.10 -- quick table with bunch of column formatting\n* ''2.3.3'' -- 2021.05.20 -- small bug fixes in switch palette\n* ''2.3.1'' -- 2021.05.19 -- tbl-linktype template to be used for generating node-explorer\n* ''2.3.0'' -- 2021.05.10 -- switch palette for dim/dark and light palette selection\n* ''2.2.2'' -- 2021.04.22 -- several issues fixed for pagination, notebook and image classes\n* ''2.2.0'' -- 2021.02.26 -- updated to TW 5.1.23 and pagination added to dynamic tables\n* ''2.1.1'' -- 2020.03.25 -- slider macro with initial status\n* ''2.1.0'' -- 2020.03.23 -- stable release on TW-5.1.22pre\n* ''1.0.0'' -- 2018.10.05 -- first public release\n"},"$:/plugins/kookma/shiraz/images/palette-switch":{"title":"$:/plugins/kookma/shiraz/images/palette-switch","type":"text/vnd.tiddlywiki","text":"<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-palette-button tc-image-button\" viewBox=\"0 0 16 16\"><path d=\"M8 15A7 7 0 1 0 8 1v14zm0 1A8 8 0 1 1 8 0a8 8 0 0 1 0 16z\"/></svg>"},"$:/language/Buttons/Shiraz/Caption":{"title":"$:/language/Buttons/Shiraz/Caption","tags":"","type":"text/vnd.tiddlywiki","text":"Switch light/warm/dark color palette"},"$:/language/Buttons/Shiraz/Hint":{"title":"$:/language/Buttons/Shiraz/Hint","tags":"","type":"text/vnd.tiddlywiki","text":"switch light/warm/dark color palette"},"$:/plugins/kookma/shiraz/license":{"title":"$:/plugins/kookma/shiraz/license","type":"text/vnd.tiddlywiki","text":"Distributed under an MIT license.\n\nCopyright (c) 2018-2022 [[Mohammad Rahmani|https://github.com/kookma]]\n\n<<<\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n<<<"},"$:/plugins/kookma/shiraz/macros/alerts":{"title":"$:/plugins/kookma/shiraz/macros/alerts","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define alert(type:\"primary\" src:\"\", width:\"100%\", class:\"\")\n<div class=\"alert alert-$type$ $class$\" style=\"width:$width$;\">\n$src$\n</div>\n\\end\n\n\\define alert-leftbar(type:\"primary\" src:\"\", width:\"100%\", class:\"\")\n<div class=\"alert alert-$type$ bg-transparent leftbar border-$type$ $class$\" style=\"width:$width$;\">\n$src$\n</div>\n\\end\n"},"$:/plugins/kookma/shiraz/macros/badge":{"title":"$:/plugins/kookma/shiraz/macros/badge","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define badge(type:\"primary\" src:\"\")\n<span class=\"badge badge-$type$\">$src$</span>\n\\end\n\n\\define badge-pill(type:\"primary\" src:\"\")\n<span class=\"badge badge-pill badge-$type$\">$src$</span>\n\\end\n"},"$:/plugins/kookma/shiraz/macros/card":{"title":"$:/plugins/kookma/shiraz/macros/card","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define card(header:\"Empty\", title:\"Empty\" subtitle:\"Empty\" text:\"Empty\",footer:\"Empty\", width:\"100%\" class:\"\")\n<div class=\"card mb-3 $class$\" style=\"width:$width$;\">\n<$reveal tag=\"div\" type=\"nomatch\" default=\"Empty\" text=<<__header__>> >\n <div class=\"card-header\">$header$</div>\n</$reveal>\n<div class=\"card-body\">\n <$reveal tag=\"div\" type=\"nomatch\" default=\"Empty\" text=<<__title__>> >\n <div class=\"h5 card-title\">$title$</div>\n </$reveal>\n <$reveal tag=\"div\" type=\"nomatch\" default=\"Empty\" text=<<__subtitle__>> >\n <div class=\"h6 card-subtitle mb-2 text-muted\">$subtitle$</div>\n </$reveal>\n <$reveal tag=\"div\" type=\"nomatch\" default=\"Empty\" text=<<__text__>> >\n <div class=\"card-text\"><<__text__>></div>\n </$reveal>\n</div>\n<$reveal tag=\"div\" type=\"nomatch\" default=\"Empty\" text=<<__footer__>> >\n <div class=\"card-footer text-muted\">$footer$</div>\n</$reveal>\n</div>\n\\end"},"$:/plugins/kookma/shiraz/macros/csvtables/apps":{"title":"$:/plugins/kookma/shiraz/macros/csvtables/apps","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define nomenclature(id:\"nomenclature\", delimiter:\",\")\n<<table-csv id:\"$id$\" format:\"katex-inline transclude pu\" class:\"table-borderless\" header:no delimiter:\"\"\"$delimiter$\"\"\">>\n\\end\n\n\\define mathbox(id:\"\", format:\"\", delimiter:\",\")\n<<table-csv id:\"$id$\" format:\"transclude katex $format$\" class:\"table-borderless table-mathbox\" header:no delimiter:\"\"\"$delimiter$\"\"\">>\n\\end\n\n\\define subscripts(id:\"subscripts\", delimiter:\",\")\n<<table-csv id:\"$id$\" format:\"katex-inline transclude\" class:\"table-borderless\" header:no delimiter:\"\"\"$delimiter$\"\"\">>\n\\end\n\n\\define superscripts(id:\"superscripts\", delimiter:\",\")\n<<table-csv id:\"$id$\" format:\"katex-inline transclude\" class:\"table-borderless\" header:no delimiter:\"\"\"$delimiter$\"\"\">>\n\\end\n\n<!-- \n- these macros uses the table-csv to display nice looking outputs\n- apps means application\n-->"},"$:/plugins/kookma/shiraz/macros/csvtables/formats-basic":{"title":"$:/plugins/kookma/shiraz/macros/csvtables/formats-basic","type":"text/vnd.tiddlywiki","text":"\\define text() <$text text=<<entry>> />\n\\define code() <code><<text>></code>\n\\define transclude() <$transclude tiddler=<<entry>> field=title/>\n\n\n<!-- these macro are used by table-csv to display entries -->"},"$:/plugins/kookma/shiraz/macros/csvtables/formats-date":{"title":"$:/plugins/kookma/shiraz/macros/csvtables/formats-date","type":"text/vnd.tiddlywiki","text":"\\define date() <$view field=title tiddler={{{[<entry>splitregexp[\\D+]!is[blank]join[]]}}} format=date template=\"YYYY-0MM-0DD\"/>\n\\define shortdate() <$view field=title tiddler={{{[<entry>splitregexp[\\D+]!is[blank]join[]]}}} format=date template=\"mmm DDth, YYYY\"/>\n\\define longdate() <$view field=title tiddler={{{[<entry>splitregexp[\\D+]!is[blank]join[]]}}} format=date template=\"DDD, MMM 0DD, YYYY\"/>\n\n<!-- these macro are used by table-csv to display entries -->"},"$:/plugins/kookma/shiraz/macros/csvtables/formats-math":{"title":"$:/plugins/kookma/shiraz/macros/csvtables/formats-math","type":"text/vnd.tiddlywiki","text":"\\define katex() <span class=\"falign\"><$latex text=<<entry>> displayMode=\"true\"></$latex></span>\n\\define katex-inline() <$latex text=<<entry>> displayMode=\"false\"></$latex>\n\\define pu() <$latex text={{{ [<entry>addprefix[\\pu{]addsuffix[}]] }}} displayMode=\"false\"></$latex>\n\\define equation() <$latex text={{{ [<entry>addprefix[\\begin{equation}]addsuffix[\\end{equation}]] }}} displayMode=\"true\"></$latex>\n\n<!-- \n- these macros are used by table-csv to display entries KaTeX\n- pu stands for physical uints\n- the math formating require the official KaTeX plugin is installed!\n- see $:/plugins/kookma/shiraz/styles/csvtable-katex\n-->"},"$:/plugins/kookma/shiraz/macros/csvtables/formats-misc":{"title":"$:/plugins/kookma/shiraz/macros/csvtables/formats-misc","type":"text/vnd.tiddlywiki","text":"\\define email() <a class=\"tc-tiddlylink-external\" href=\"mailto:$(entry)$\" rel=\"noopener noreferrer\" target=\"_blank\"><<text>></a>\n\n\\define rate()\n<$list filter=\"[<entry>split[]match[*]]\" variable=ignore>\n<span class=\"shiraz-star\"><$transclude tiddler=\"$:/core/images/star-filled\" /></span>\n</$list>\n\\end\n\n<!-- these macro are used by table-csv to display entries -->"},"$:/plugins/kookma/shiraz/macros/csvtables/formats-task":{"title":"$:/plugins/kookma/shiraz/macros/csvtables/formats-task","type":"text/vnd.tiddlywiki","text":"\\define checkbox()\n<!-- show done item -->\n<$list filter=\"[<entry>trim[]match[x]]\" variable=ignore><input type=checkbox checked disabled/></$list>\n<!-- show task item -->\n<$list filter=\"[<entry>trim[]match[-]]\" variable=ignore><input type=checkbox disabled/></$list>\n\\end\n\n\n\\define todo-action(param)\n<!-- toggle a line done (x) / undone (-) . the lbr is used to prevent replace \"x, Hi\" with \"x, Hi Jeremy\"-->\n<$vars lbr=\"\n\">\n <$vars in={{{ [<row>addsuffix<lbr>] }}} out={{{[<row>splitregexp<delimiter>rest[]join<delimiter>addprefix<delimiter>addprefix[$param$]addsuffix<lbr>]}}} >\n <$action-setfield $tiddler=<<src>> text={{{ [<src>get[text]search-replace:g:<in>,<out>] }}}/>\n </$vars>\n</$vars>\t\n\\end\n\n\\define todo()\n<!-- show task item -->\n<$list filter=\"[<entry>trim[]match[-]]\" variable=ignore>\n<$button class=\"tc-btn-invisible\" actions=<<todo-action \"x\">>><input type=checkbox/></$button>\n</$list>\n<!-- show done item -->\n<$list filter=\"[<entry>trim[]match[x]]\" variable=ignore>\n<$button class=\"tc-btn-invisible\" actions=<<todo-action \"-\">>><input type=checkbox checked/></$button>\n</$list>\n\n\\end\n\n<!-- these macro are used by table-csv to display entries -->"},"$:/plugins/kookma/shiraz/macros/csvtables/table-csv-utility":{"title":"$:/plugins/kookma/shiraz/macros/csvtables/table-csv-utility","type":"text/vnd.tiddlywiki","text":"\\whitespace trim\n\n\\define mainFilter() [subfilter<allRows>butfirst<header_row>] :sort:$(sortType)$:$(sortNegate)$[split<delimiter>!is[blank]trim[]nth<sortPos>]\n\\define tempTableSort() $:/state/tablecsv/$(currentTiddler)$/$(stateTiddler)$\n\n\n\\define column-header-template()\n<$reveal type=\"nomatch\" stateTitle=<<tempTableSort>> stateIndex=\"sortIndex\" text=<<currentColumn>> tag=\"th\">\n<$button setTitle=<<tempTableSort>> setIndex=\"sortIndex\" setTo=<<currentColumn>> class=\"tc-btn-invisible tc-tiddlylink\" >\n<$action-setfield $tiddler=<<tempTableSort>> $index=\"hasnegate\" $value=\"false\"/>\n<$action-setfield $tiddler=<<tempTableSort>> $index=\"negate\" $value=\"\"/>\n<span style=\"text-transform: capitalize;\"><$text text=<<currentColumn>>/></span>\n</$button>\n</$reveal>\n<$reveal type=\"match\" stateTitle=<<tempTableSort>> stateIndex=\"sortIndex\" text=<<currentColumn>> tag=\"th\">\n<$list filter=\"[<tempTableSort>getindex[hasnegate]match[false]]\" variable=ignore><!--set negate for sort-->\n<$button setTitle=<<tempTableSort>> setIndex=\"hasnegate\" setTo=\"true\" class=\"tbl-sort-svg tc-btn-invisible tc-tiddlylink\" >\n<$action-setfield $tiddler=<<tempTableSort>> $index=\"negate\" $value=\"reverse\"/>\n<span style=\"text-transform: capitalize;\"><$text text=<<currentColumn>>/></span> {{$:/core/images/down-arrow}}\n</$button>\n</$list>\n<$list filter=\"[<tempTableSort>getindex[hasnegate]match[true]]\" variable=ignore><!--remove negate for sort-->\n<$button setTitle=<<tempTableSort>> setIndex=\"hasnegate\" setTo=\"false\" class=\"tbl-sort-svg tc-btn-invisible tc-tiddlylink\" >\n<$action-setfield $tiddler=<<tempTableSort>> $index=\"negate\" $value=\"\"/>\n<span style=\"text-transform: capitalize;\"><$text text=<<currentColumn>>/></span> {{$:/core/images/up-arrow}}\n</$button>\n</$list>\n</$reveal>\n\\end\n\n<!-- these macro are used by table-csv to display entries -->"},"$:/plugins/kookma/shiraz/macros/csvtables/table-csv":{"title":"$:/plugins/kookma/shiraz/macros/csvtables/table-csv","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define table-csv(tiddler:\"\", delimiter:\",\", sortType:\"alphanumeric\", format:\"\", caption:\"\", class:\"\", header:\"yes\", stateTiddler:\"\", id:\"\", dclass:\"dblock\" )\n\\whitespace trim\n\\import [[$:/plugins/kookma/shiraz/macros/csvtables/table-csv-utility]]\n\\import [all[tiddlers+shadows]prefix[$:/plugins/kookma/shiraz/macros/csvtables/formats]]\n\n<$vars src = {{{ [<__tiddler__>is[tiddler]then<__tiddler__>else<currentTiddler>] }}} \n stateTiddler = {{{ [<__stateTiddler__>!is[blank]then<__stateTiddler__>else[01]] }}} >\n<$vars sortCol = {{{ [<tempTableSort>getindex[sortIndex]] }}} \n sortNegate = {{{ [<tempTableSort>getindex[negate]] }}} \n delimiter = {{{ [<__delimiter__>match[\\t]then[°≡°]else<__delimiter__>] }}}\n dataBlockStartDelimiter ={{{ [<__id__>is[blank]then[@@.$dclass$]] ~[[@.$dclass$.]addsuffix<__id__>] }}}\n dataBlockEndDelimiter = \"@@\" >\n\n<!-- extract the data block -->\n<$let dblock0 = {{{ [<src>get[text]splitregexp<dataBlockStartDelimiter>butfirst[1]] }}}\n dblock1 = {{{ [<dblock0>splitregexp<dataBlockEndDelimiter>butlast[1]] }}}\n dblock = {{{ [<delimiter>!match[°≡°]then<dblock1>] :else[<dblock1>search-replace:g:regexp[\\t],[°≡°]] }}} >\n\n<!-- create table -->\n<table class=\"$class$\">\n<$list filter=\"[<__caption__>!is[blank]]\" variable=ignorw><caption>$caption$</caption></$list>\n<!--check if there is a header row-->\n<$list filter=\"[<__header__>match[yes]then[1]else[0]]\" variable=header_row>\n<!-- process all extracted rows-->\n<$vars allRows=\"[<dblock>splitregexp[\\n]!is[blank]]\">\n<!--create table header-->\n<$list filter=\"[subfilter<allRows>first<header_row>]\" variable=row >\n<tr><$list filter=\"[<row>splitregexp<delimiter>!is[blank]trim[]]\" variable=currentColumn><<column-header-template>></$list></tr>\n</$list>\n<!--create table body-->\n<$vars sortPos = {{{ [subfilter<allRows>first<header_row>splitregexp<delimiter>!is[blank]trim[]] +[allbefore:include<sortCol>count[]] }}} >\n<$vars sortType = {{{ [enlist:raw<__sortType__>nth<sortPos>else[alphanumeric]] }}} >\n<$list filter=<<mainFilter>> variable=row><!-- parse all other rows -->\n<tr><$list filter=\"[<row>splitregexp<delimiter>!is[blank]trim[]]\" variable=entry counter=pos>\n<td><$macrocall $name={{{ [enlist:raw<__format__>nth<pos>else[text]] }}} /></td>\n</$list></tr>\n</$list><!-- end of parse all other rows -->\n</$vars>\n</$vars><!-- sorPs-->\n</$vars> <!-- end of process all extracted rows-->\n</$list><!-- end of check header -->\n</table>\n\n</$let><!-- dblock0-->\n</$vars><!-- sortCol-->\n</$vars>\n\\end\n\n<!--\n- the default format is text, if format is not set for any column\n- the default sort type is alphanumeric, if the sort type is not sent \n- tab delimited data cannot be processed as enlist list them as sparate title on tab and do not keep them as a single row, so befor processing the \\tab is replaced with a rarely used combination like `°≡°`\n- leading and trailing blanks (spaces) are always trimmed\n- when use column header, you cannot have two column with the same header, this causes problem with sort routine\n-->"},"$:/plugins/kookma/shiraz/macros/dbadge":{"title":"$:/plugins/kookma/shiraz/macros/dbadge","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define dbadge(subject,status, type:\"primary\")\n<div class=\"dbadge\"><span class=\"dbadge-subject\">$subject$</span><span class=\"dbadge-status dbadge-$type$ \">$status$</span></div>\n\\end\n"},"$:/plugins/kookma/shiraz/macros/details":{"title":"$:/plugins/kookma/shiraz/macros/details","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define details(label:\"\", src:\"source\", status:\"\", labelClass:\"\", srcClass:\"\")\n<$vars source = {{{ [<__src__>get[text]else<__src__>] }}} >\n<details class=\"kk-shiraz-details\" $status$>\n <$let tv-wikilinks=\"no\">\n <summary class=\"$labelClass$\">$label$</summary>\n </$let>\n <div class=\"$srcClass$\">\n <$transclude tiddler=<<source>> field=title mode=block/>\n </div>\n</details>\n</$vars>\n\\end"},"$:/plugins/kookma/shiraz/macros/dtables/confirm-delete":{"title":"$:/plugins/kookma/shiraz/macros/dtables/confirm-delete","tags":"$:/tags/Table/Macro","type":"text/vnd.tiddlywiki","text":"\\define confirm-delete()\n<!-- reveals deletion confirmation -->\n<$list filter=\"[subfilter<inputFilter>limit[1]]\" variable=ignore>\n<$reveal class=\"tbl-delete-confirm\" type=\"match\" default={{{ [[$:/temp/tables/delete-all]has:index<currentTable>then[yes]] }}} text=\"yes\" tag=\"tr\">\n<th colspan=<<ncols>> >\n<$list filter=\"[[$:/temp/tables/delete-all]getindex<currentTable>match[delete-confirmed]]\" \n variable=ignore emptyMessage=<<ask-for-delete>> >\n <<perform-delete>>\n</$list>\n</th>\n</$reveal>\n</$list>\n\\end\n\n\\define ask-for-delete()\n<$set name=ntids filter=\"[subfilter<inputFilter>count[]]\">\n Delete all <<ntids>> records?\n\t<$button class=\"tc-btn-invisible\">\n <$action-setfield $tiddler=\"$:/temp/tables/delete-all\" $index=<<currentTable>> $value=\"delete-confirmed\"/>\n {{$:/core/images/delete-button}} yes\n </$button> or \n <$button class=\"tc-btn-invisible\">\n <$action-setfield $tiddler=\"$:/temp/tables/delete-all\" $index=<<currentTable>>/>\n {{$:/core/images/close-button}} no\n </$button>\n</$set>\t\t\t\t\n\\end\n\n\\define perform-delete()\n Warning! this action cannot be undone!\n\t<$button class=\"tc-btn-invisible\">\n\t <$action-setfield $tiddler=\"$:/temp/tables/delete-all\" $index=<<currentTable>>/>\n <$list filter=<<inputFilter>> variable=\"currentRecord\">\n <$action-deletetiddler $tiddler=<<currentRecord>>/>\n </$list>\n\t\t {{$:/core/images/delete-button}} delete\n </$button> or \n <$button class=\"tc-btn-invisible\">\n <$action-setfield $tiddler=\"$:/temp/tables/delete-all\" $index=<<currentTable>>/>\n\t\t\t{{$:/core/images/close-button}} cancel \n </$button>\n\\end"},"$:/plugins/kookma/shiraz/macros/dtables/helper":{"title":"$:/plugins/kookma/shiraz/macros/dtables/helper","tags":"$:/tags/Table/Macro","type":"text/vnd.tiddlywiki","text":"\\define columnFilter() $(columns)$ tbl-delete\n\n\\define tempTable() $:/state/dynamictables/$(currentTable)$\n\n\\define tempTableSort() $(tempTable)$/sortby\n\\define tempTagPopup() $(tempTable)$/$(currentRecord)$/$(currentTiddler)$\n\\define tempTableExpand() $(tempTable)$/expand\n\\define tempPathExpand() $(tempTableExpand)$##$(currentRecord)$\n\\define tempTableEdit() $(tempTable)$/edit-view-status\n\n\\define keepstate() $:/keepstate/dynamictables/$(currentTable)$\n\n\\define tempTableFooter() $(keepstate)$/footer\n\\define tempTableStyle() $(keepstate)$/style\n\\define tempWarningMsg() $(keepstate)$/warning\n\n\\define pageStateTiddler() $(keepstate)$/page-number\n\\define entryPerPageStateTiddler() $(keepstate)$/entry-per-page\n\n<!-- \n Those tiddlers based on keepstate are permanent.\n These are tiddlers hold the data and setting for footer, styles and warning (needs to be hold).\n These state and temporary tiddlers are independent of currentTiddler (host tiddler) and on changing\n the title of host tiddler will not disconnected to table\n-->"},"$:/plugins/kookma/shiraz/macros/dtables/maths":{"title":"$:/plugins/kookma/shiraz/macros/dtables/maths","tags":"$:/tags/Table/Macro","type":"text/vnd.tiddlywiki","text":"\\define average(pn:0) <$text text={{{ [subfilter<inputFilter>$(getFieldOrIndex)$<currentColumn>average[]] }}}/>\n\\define median(pn:0) <$text text={{{ [subfilter<inputFilter>$(getFieldOrIndex)$<currentColumn>median[]] }}}/>\n\n\\define count() <$text text={{{ [subfilter<inputFilter>$(getFieldOrIndex)$<currentColumn>count[]] }}}/>\n\\define sum() <$text text={{{ [subfilter<inputFilter>$(getFieldOrIndex)$<currentColumn>sum[]] }}}/>\n\\define product() <$text text={{{ [subfilter<inputFilter>$(getFieldOrIndex)$<currentColumn>product[]] }}}/>\n\n\\define minall() <$text text={{{ [subfilter<inputFilter>$(getFieldOrIndex)$<currentColumn>minall[]] }}}/>\n\\define maxall() <$text text={{{ [subfilter<inputFilter>$(getFieldOrIndex)$<currentColumn>maxall[]] }}}/>\n\n\n\n\n\n"},"$:/plugins/kookma/shiraz/macros/dtables/pagination":{"title":"$:/plugins/kookma/shiraz/macros/dtables/pagination","tags":"$:/tags/Table/Macro","type":"text/vnd.tiddlywiki","text":"\\define prev-button()\n<!-- create previous page button --->\n<$list filter=\"[<page-number>compare:number:lt[2]then[yes]else[no]]\" variable=state>\n<$button disabled=<<state>> class=\"shiraz-dtable-page-prev tc-btn-invisible\">\n{{$:/core/images/chevron-left}} <strong>Prev</strong>\n<$action-listops $tiddler=<<pageStateTiddler>> $field=text $subfilter=\"+[subtract[1]] ~[[1]]\"/>\n</$button>\n</$list>\n\\end\n\n\\define next-button()\n<!-- create next page button --->\n<$list filter=\"[<high>compare:number:gteq<total-entries>then[yes]else[no]]\" variable=state> \n<$button disabled=<<state>> class=\"shiraz-dtable-page-next tc-btn-invisible\">\n<strong>Next</strong> {{$:/core/images/chevron-right}} \n<$action-listops $tiddler=<<pageStateTiddler>> $field=text $subfilter=\"+[add[1]] ~[[2]]\"/>\n</$button>\n</$list>\n\\end\n\n\\define limit-entries()\n<!-- set number of entries per page -->\n<$select tiddler=<<entryPerPageStateTiddler>> default=25 actions=\"\"\"<$action-setfield $tiddler=<<pageStateTiddler>> text=1/>\"\"\">\n<$list filter='5 10 15 20 25 30 40 50' variable=num>\n<option value=<<num>>>Limit <$text text=<<num>>/></option>\n</$list>\n<option value=<<total-entries>> >Show all</option>\n</$select>\n\\end"},"$:/plugins/kookma/shiraz/macros/dtables/show-edit-cell":{"title":"$:/plugins/kookma/shiraz/macros/dtables/show-edit-cell","tags":"$:/tags/Table/Macro","type":"text/vnd.tiddlywiki","text":"\\define showCell()\n <$list filter=\"[<fieldOrIndex>]-index\">\n <$transclude tiddler=<<currentRecord>> field=<<currentColumn>> mode=\"inline\" />\n </$list>\n <$list filter=\"[<fieldOrIndex>]-field\">\n <$transclude tiddler=<<currentRecord>> index=<<currentColumn>> mode=\"inline\" />\n </$list>\n\\end\t\n\\define editCell()\n <$list filter=\"[<fieldOrIndex>]-index\">\n <$edit-text tiddler=<<currentRecord>> field=<<currentColumn>> tag=\"input\" class=\"shiraz-dtable-textbox\"/>\n </$list>\n <$list filter=\"[<fieldOrIndex>]-field\">\n <$edit-text tiddler=<<currentRecord>> index=<<currentColumn>> tag=\"input\" class=\"shiraz-dtable-textbox\"/>\n </$list>\n\\end\n\n\\define showCell_Locked()\n <span style=\"font-style:oblique;\"><<showCell>></span>\n\\end "},"$:/plugins/kookma/shiraz/macros/dtables/table-dynamic":{"title":"$:/plugins/kookma/shiraz/macros/dtables/table-dynamic","code-body":"yes","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define table-dynamic(filter, fields:\"\", indexes:\"\", sortOp:\"sort\", caption:\"\", class:\"\",\n footerRows:\"0\", stateTiddler:\"\", editButton:\"yes\", pagination:\"no\", emptyMessage:\"filter input is empty\")\n\n\\import [all[shadows+tiddlers]tag[$:/tags/Table/Macro]]\n\n<!--above commands import utility macros-->\n<$vars \n inputFilter=\"[subfilter<__filter__>!has[draft.of]]\"\n sortType=<<__sortOp__>>\n pagination=<<__pagination__>>\n> \n<$set name=currentTable value=<<__stateTiddler__>> emptyValue=<<currentTiddler>> >\n<!-- check what type of columns are sent, fileds or indexes (data tiddlers as records) -->\n<$set name=fieldOrIndex filter=\"[<__fields__>!is[blank]]\" value=\"field\" emptyValue=\"index\">\n<$set name=columns filter=\"[<fieldOrIndex>]-index\" value=<<__fields__>> emptyValue=<<__indexes__>> >\n<!--check input filter parameter-->\n<$list filter=\"[subfilter<inputFilter>limit[1]]\" emptyMessage=<<__emptyMessage__>> variable=ignore>\n<$set name=sortneg tiddler=<<tempTableSort>> index=\"negate\">\n<!--calculate the number of columns in edit and view mode -->\n<$set name=ncols filter=\"[<tempTableEdit>getindex[mode]match[edit]]\" value={{{ [subfilter<columnFilter>count[]] }}} emptyValue= {{{ [subfilter<columnFilter>count[]subtract[1]] }}}>\n<div class=\"tbl-container\" style=\"max-width:100%;\">\n<table class=<<__class__>> style=\"caption-side:top\">\n<!-- reveal caption and edit button -------------------->\n<caption style=\"text-align:left;\">\n<$list filter=\"[<__editButton__>match[yes]]\" variable=ignore>\n<span style=\"padding-right:5px;padding-left:3px;\"><<toggle-edit-view>></span></$list>\n$caption$</caption>\n\n<!-- create header -------------------->\n<thead>\n<<confirm-delete>>\n<<check_tiddlers_type_for_table_from_indexes>>\n<tr class=\"shiraz-dtable-header\">\n<$list filter=<<columnFilter>> variable=currentColumn>\n<$set name=\"headerLookup\" filter=\"[all[tiddlers+shadows]tag[$:/tags/Table/HeaderTemplate]contains:tbl-column-list<currentColumn>limit[1]get[title]]\" value=<<headerLookup>> emptyValue=\"$:/plugins/kookma/shiraz/templates/header/default\">\n <$transclude tiddler=<<headerLookup>> field=\"text\" mode=\"inline\"/>\n</$set>\n</$list>\n</tr>\n</thead>\n\n<!-- create footer -------------------->\n<$reveal type=\"gt\" default=<<__footerRows__>> text=\"0\" tag=\"tfoot\" class=\"shiraz-dtable-footer\">\n<tr><td colspan=<<ncols>> style=\"font-weight:bold;background-color:transparent;\">Numerical summary</td></tr>\n<$list filter=\"[range[1,$footerRows$]addprefix[footer-]]\" variable=footerRow>\n<tr>\n<$list filter=<<columnFilter>> variable=currentColumn>\n<$set name=\"footerLookup\" filter=\"[all[tiddlers+shadows]tag[$:/tags/Table/FooterTemplate]contains:tbl-column-list<currentColumn>limit[1]get[title]]\" value=<<footerLookup>> emptyValue=\"$:/plugins/kookma/shiraz/templates/footer/default\">\n<$transclude tiddler=<<footerLookup>> field=\"text\" mode=\"inline\"/>\n</$set>\n</$list>\n</tr>\n</$list>\n</$reveal>\n\n<!-- reveal main body of table (generate records) -------------------->\n<tbody>\n<$set name=tableBody filter=\"[<fieldOrIndex>]-index\" value=\"display_body_fields\" emptyValue=\"display_body_indexes\" >\n<!-- setup pagination variables -->\n<$vars total-entries={{{[subfilter<inputFilter>count[]] }}}\n\t\t\t page-number={{{[<pageStateTiddler>get[text]] ~[[1]]}}} \n\t\t\t entries-per-page={{{ [<entryPerPageStateTiddler>get[text]] ~[[25]] }}} >\n<$vars low={{{ [<page-number>subtract[1]multiply<entries-per-page>] }}} \n high={{{[<page-number>multiply<entries-per-page>] }}} >\t \n<$macrocall $name=<<tableBody>> />\n<!--on demand display the pagination row-->\n<$reveal type=\"match\" default=<<pagination>> text=\"yes\" tag=\"tr\" class=\"shiraz-dtable-page-footer\">\n<td colspan=<<ncols>> >\n<<prev-button>>\nDisplaying <$text text={{{[<low>add[1]]}}}/> through <$text text={{{ [<high>compare:number:lt<total-entries>then<high>else<total-entries>] }}}/> of <<total-entries>> Results | <<limit-entries>>\n<<next-button>>\n</td>\n</$reveal><!-- end of pagination ui -->\n</$vars>\n</$vars>\n</$set>\n</tbody>\n</table>\n</div><!-- container-->\n</$set>\n</$set>\n</$list><!--check input filter parameter-->\n</$set>\n</$set>\n</$set>\n</$vars>\n\\end\n\n"},"$:/plugins/kookma/shiraz/macros/dtables/table-utility":{"title":"$:/plugins/kookma/shiraz/macros/dtables/table-utility","tags":"$:/tags/Table/Macro","type":"text/vnd.tiddlywiki","text":"\\define tableFilter_fields() $(inputFilter)$+[$(sortneg)$$(sortType)${$(tempTableSort)$##sortIndex}]\n\\define tableFilter_indexes() [enlist<items>]+[$(sortneg)$$(sortType)$[]]\n\n\\define getitems()\n<$set name=Index tiddler=<<tempTableSort>> index=\"sortIndex\">\n<$list filter=\"[subfilter<inputFilter>!has[draft.of]]\" >\n<$text text= {{{ [<currentTiddler>getindex<Index>] \"°≡°\" [<currentTiddler>] +[join[]format:titlelist[]] }}} />\n</$list>\n</$set>\n\\end\n\n\\define display_one_record()\n<$wikify name=\"rowStyle\" text=\"\"\"<$transclude tiddler=<<tempTableStyle>> index=<<currentRecord>> />\"\"\" mode=\"inline\">\n<tr style=<<rowStyle>>>\n<$list filter=<<columnFilter>> variable=currentColumn>\n<$set name=\"bodyLookup\" \n filter=\"[all[tiddlers+shadows]tag[$:/tags/Table/BodyTemplate]contains:tbl-column-list<currentColumn>]\n +[limit[1]get[title]]\"\n value=<<bodyLookup>> \n emptyValue=\"$:/plugins/kookma/shiraz/templates/body/default\">\n<$transclude tiddler=<<bodyLookup>> field=\"text\" mode=\"inline\"/>\n</$set>\n</$list>\n</tr>\n<!-- reveal expanded record-->\n<$reveal type=\"match\" state=<<tempPathExpand>> text=\"show\" tag=\"tr\">\n<<display-expanded-record>>\n</$reveal>\n</$wikify>\n\\end\n\n\\define display_body_fields() \n<$set name=finalFilter filter=\"[<pagination>match[yes]]\" value=\"[subfilter<tableFilter_fields>first<high>] -[subfilter<tableFilter_fields>first<low>]\" emptyValue=\"[subfilter<tableFilter_fields>]\">\n<$list filter=\"[subfilter<finalFilter>]\" variable=\"currentRecord\">\n<<display_one_record>>\n</$list>\n</$set>\n\\end\n\n\\define display_body_indexes()\n<$wikify name=\"items\" text=<<getitems>> > \n<$set name=finalFilter filter=\"[<pagination>match[yes]]\" value=\"[subfilter<tableFilter_indexes>first<high>] -[subfilter<tableFilter_indexes>first<low>]\" emptyValue=\"[subfilter<tableFilter_indexes>]\">\n<$list filter=\"[subfilter<finalFilter>]\" variable=\"currentItem\">\n<$list filter=\"[<currentItem>split[°≡°]last[]]\" variable=\"currentRecord\">\n <<display_one_record>>\n</$list>\n</$list>\n</$set>\n</$wikify>\n\\end\n\n"},"$:/plugins/kookma/shiraz/macros/dtables/tbl-expand":{"title":"$:/plugins/kookma/shiraz/macros/dtables/tbl-expand","tags":"$:/tags/Table/Macro","type":"text/vnd.tiddlywiki","text":"\\define display-expanded-record()\n<td colspan=<<ncols>> class=\"shiraz-dtable-expanded-record\">\n<$tiddler tiddler=<<currentRecord>> >\n\n<!-- in edit mode select between two editors: simple textbox or TW main editor e.g. codemirror -->\n<$list filter=\"[<tempTableEdit>getindex[mode]match[edit]]\" variable=ignore\n emptyMessage=\"\"\"{{||$:/core/ui/ViewTemplate/body}}\"\"\" >\n<$reveal type=\"nomatch\" state=\"$:/config/shiraz/dynamictables/editor-type\" text=\"main-editor\" tag=\"div\">\n<$edit-text class=\"tbl-inpt-edit\" tiddler=<<currentRecord>> field=\"text\" tag=textarea/>\n</$reveal>\n<$reveal type=\"match\" state=\"$:/config/shiraz/dynamictables/editor-type\" text=\"main-editor\" tag=\"div\" class=\"shiraz-dtable-maineditor\">\n{{||$:/core/ui/EditTemplate/body}}\n</$reveal>\n</$list>\n\n</$tiddler>\n</td>\n\\end\n"},"$:/plugins/kookma/shiraz/macros/dtables/toggle-edit-view":{"title":"$:/plugins/kookma/shiraz/macros/dtables/toggle-edit-view","tags":"$:/tags/Table/Macro","type":"text/vnd.tiddlywiki","text":"\\define toggle-edit-view()\n<$reveal type=\"nomatch\" stateTitle=<<tempTableEdit>> stateIndex=\"mode\" text=\"edit\">\n<$button class=\"tc-btn-invisible tc-tiddlylink\" setTitle=<<tempTableEdit>> setIndex=\"mode\" setTo=\"edit\">{{$:/core/images/edit-button}}</$button>\n</$reveal>\n<$reveal type=\"match\" stateTitle=<<tempTableEdit>> stateIndex=\"mode\" text=\"edit\">\n<$button class=\"tc-btn-invisible tc-tiddlylink\" setTitle=<<tempTableEdit>> setIndex=\"mode\" setTo=\"view\">{{$:/core/images/done-button}}</$button>\n</$reveal>\n\\end"},"$:/plugins/kookma/shiraz/macros/dtables/warning_message":{"title":"$:/plugins/kookma/shiraz/macros/dtables/warning_message","tags":"$:/tags/Table/Macro","type":"text/vnd.tiddlywiki","text":"\\define filterCriteria() [subfilter<inputFilter>!type[application/x-tiddler-dictionary]!type[application/json]]\n\\define show_tiddler_types()\n<div style=\"text-align:left\">\nList tiddlers with wrong type\n<ul>\n<$list filter=<<filterCriteria>> >\n<li><$link/> (type: <$view field=type/>)</li>\n</$list>\n</ul>\n</div>\n\\end\n\n\\define dismissButton()\n<$button class=\"tc-btn-invisible tc-tiddlylink\" style=\"fill:white;\" tooltip=\"Dismiss alert and continue with the current selection!\">\n{{$:/core/images/close-button}}\n<$action-setfield $tiddler=<<tempWarningMsg>> text=\"dissmiss\"/>\n</$button>\n\\end\n\n\\define check_tiddlers_type_for_table_from_indexes()\n<$list filter=\"[<fieldOrIndex>]-field\" variable=ignore><!-- only dataTiddler -->\n<$list filter=\"[<__editButton__>match[yes]]\" variable=ignore> <!-- only editable table -->\n<$list filter=\"[<tempWarningMsg>is[missing]]\" variable=ignore><!-- dismiss if tempWarningMsg is set -->\n<$list filter=\"[subfilter<filterCriteria>] :and[limit[1]]\" variable=ignore>\n<tr class=\"tbl-delete-confirm\">\n<th colspan=<<ncols>> >\nDanger: Editable dynamic table from idexes with mixed types of tiddlers!  <<dismissButton>>\n<<show_tiddler_types>>\n</th>\n</tr>\n</$list>\n</$list>\n</$list>\n</$list>\n\\end\t\n"},"$:/plugins/kookma/shiraz/macros/image-basic":{"title":"$:/plugins/kookma/shiraz/macros/image-basic","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define image-basic(img, width:\"30%\", align:\"none\", caption:\"\", tooltip:\"\", alt:\"\")\n<figure class=\"image-basic image-align-$align$\" style=\"width:$width$;\">\n <$image source=<<__img__>> tooltip=<<__tooltip__>> alt=<<__alt__>> /> \n <figcaption>$caption$</figcaption>\n</figure> \n\\end"},"$:/plugins/kookma/shiraz/macros/image-card":{"title":"$:/plugins/kookma/shiraz/macros/image-card","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define image-card(img, width:\"30%\", align:\"none\", title:\"Empty\", text:\"Empty\", footer:\"Empty\", pos:\"top\", alt:\"\")\n\\import $:/plugins/kookma/shiraz/macros/image-card-utility\n<$reveal tag=\"div\" type=\"match\" default=\"top\" text=<<__pos__>> >\n<$macrocall $name=image-card-top img=<<__img__>> title=<<__title__>> text=<<__text__>>\n footer=<<__footer__>> width=<<__width__>> align=<<__align__>> alt=<<__alt__>> />\n</$reveal>\n<$reveal tag=\"div\" type=\"nomatch\" default=\"top\" text=<<__pos__>> >\n<$macrocall $name=image-card-bottom img=<<__img__>> title=<<__title__>> text=<<__text__>>\n footer=<<__footer__>> width=<<__width__>> align=<<__align__>> alt=<<__alt__>> />\n</$reveal>\n\\end\n\n\\define image-card-top(img, width:\"30%\", align:\"none\", title:\"Empty\", text:\"Empty\", footer:\"Empty\", alt:\"\")\n<div class=\"card image-align-$align$\" style=\"width:$width$;\">\n <$image class=\"card-img-top\" source=<<__img__>> alt=<<__alt__>> />\n <div class=\"card-body\">\n <$reveal tag=\"div\" type=\"nomatch\" default=\"Empty\" text=<<__title__>> >\n <div class=\"h5 card-title\">$title$</div>\n </$reveal> \n <$reveal tag=\"div\" type=\"nomatch\" default=\"Empty\" text=<<__text__>> >\n <div class=\"card-text\">$text$</div>\n </$reveal> \n <$reveal tag=\"div\" type=\"nomatch\" default=\"Empty\" text=<<__footer__>> >\n <p class=\"card-text\"><small class=\"text-muted\">$footer$</small></p>\n </$reveal>\n </div> \n</div>\n\\end\n\n\\define image-card-bottom(img, width:\"30%\", align:\"none\", title:\"Empty\", text:\"Empty\", footer:\"Empty\", alt:\"\")\n<div class=\"card image-align-$align$\" style=\"width:$width$;\">\n <div class=\"card-body\">\n <$reveal tag=\"div\" type=\"nomatch\" default=\"Empty\" text=<<__title__>> >\n <div class=\"h5 card-title\">$title$</div>\n </$reveal> \n <$reveal tag=\"div\" type=\"nomatch\" default=\"Empty\" text=<<__text__>> >\n <div class=\"card-text\">$text$</div>\n </$reveal> \n <$reveal tag=\"div\" type=\"nomatch\" default=\"Empty\" text=<<__footer__>> >\n <p class=\"card-text\"><small class=\"text-muted\">$footer$</small></p>\n </$reveal>\n </div> \n <$image class=\"card-img-bottom\" source=<<__img__>> alt=<<__alt__>> />\n</div>\n\\end"},"$:/plugins/kookma/shiraz/macros/image-overlay":{"title":"$:/plugins/kookma/shiraz/macros/image-overlay","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define image-overlay(img, width:\"30%\", align:\"none\", caption:\"\", title:\"\", text:\"\", fadein:\"left\", alt:\"\")\n<div class=\"image-overlay-container image-align-$align$\" style=\"width:$width$;\">\n <h3 class=\"image-overlay-title\">$caption$</h3>\n <div class=\"image-overlay-content\">\n <div class=\"image-overlay-content-overlay\"></div>\n <$image class=\"image-overlay-content-image\" source=<<__img__>> alt=<<__alt__>>/>\n <$set name=\"fdcls\" filter=\"$fadein$ +[splitbefore[ ]] +[addprefix[image-overlay-fadeIn-]]\">\n <div class={{{ image-overlay-content-details [<fdcls>] :and[join[ ]] }}} >\n <h3 class=\"image-overlay-content-title\">$title$</h3>\n <p class=\"image-overlay-content-text\">$text$</p>\n </div>\n </$set>\n </div>\n</div>\n\\end"},"$:/plugins/kookma/shiraz/macros/image-polaroid":{"title":"$:/plugins/kookma/shiraz/macros/image-polaroid","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define image-polaroid(img, width:\"30%\", align:\"none\", caption:\"\", tooltip:\"\", alt:\"\")\n<figure class=\"image-polaroid image-align-$align$\" style=\"width:$width$;\">\n <$image source=\"\"\"$img$\"\"\" tooltip=\"\"\"$tooltip$\"\"\"/>\n <figcaption class=\"image-polaroid-caption\">$caption$</figcaption>\n</figure> \n\\end"},"$:/plugins/kookma/shiraz/macros/image-pretty":{"title":"$:/plugins/kookma/shiraz/macros/image-pretty","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define image-pretty(img, width:\"30%\", align:\"none\", caption:\"\", tooltip:\"\", alt:\"\")\n<figure class=\"image-pretty image-align-$align$\" style=\"width:$width$;\">\n <$image source=<<__img__>> tooltip=<<__tooltip__>> alt=<<__alt__>> /> \n <figcaption class=\"image-pretty-caption\">$caption$</figcaption>\n</figure> \n\\end"},"$:/plugins/kookma/shiraz/macros/image-slidein":{"title":"$:/plugins/kookma/shiraz/macros/image-slidein","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define image-slidein(img, width:\"30%\", align:\"none\", caption:\"\", tooltip:\"\", slidein:\"left\", alt:\"\")\n<figure class=\"image-slidein mr-cap-$slidein$ image-align-$align$\" style=\"width:$width$;\">\n <$image source=<<__img__>> tooltip=<<__tooltip__>> alt=<<__alt__>>/>\n <figcaption>$caption$</figcaption>\n</figure> \n\\end"},"$:/plugins/kookma/shiraz/macros/list-search":{"title":"$:/plugins/kookma/shiraz/macros/list-search","author":"Jeremy Ruston","description":"creates few paragraphs of dumy text","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define list-search( filter:\"[!is[system]]\", search:\"search:title\", template:\"$:/core/ui/ListItemTemplate\",\n class:\"my-3\", stateTiddler:\"\", placeholder:\"keywords\")\n<$set name=\"state\" filter=\"[[$:/temp/list-search/]addsuffix<__stateTiddler__>addsuffix<qualify>]\">\n<div class=<<__class__>> >\n<$keyboard key=\"escape\" actions='<$action-deletetiddler $tiddler=<<state>>/>' >\n<$edit-text tiddler=<<state>> type=\"search\" tag=\"input\" default=\"\" placeholder=\"$placeholder$\" class=\"w-100\"/>\n</$keyboard>\n</div>\n<$reveal stateTitle=<<state>> stateField=text type=\"match\" text=\"\" class=<<__class__>> tag=div>\n<$list filter=<<__filter__>> template=<<__template__>>/>\n</$reveal>\n<$reveal stateTitle=<<state>> stateField=text type=\"nomatch\" text=\"\" class=<<__class__>> tag=div>\n<$let term={{{ [<state>get[text]] }}}\n sub= {{{ \"[\" [<__search__>] \"<term>]\" :and[join[]] }}} ><!-- this line creates a dynamic filter and stores in a string variable-->\n<$list filter=\"[subfilter<__filter__>]:and[subfilter<sub>]\" template=<<__template__>>/>\n</$let>\n</$reveal>\n</$set>\n\\end\n<!-- from Tobias Beer list-search with modification\nThe old style dynamic filters are:\n1. <$list filter=\"$filter$+[$search$<term>]\" template=<<__template__>>/>\n2. <$list filter=\"$filter$\" template=<<__template__>>/>\nThe new style is: not to use text substitution\n-->"},"$:/plugins/kookma/shiraz/macros/multicol":{"title":"$:/plugins/kookma/shiraz/macros/multicol","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define multicol(src, ncol:\"\", class:\"\")\n<div class=\"sh-multicol$ncol$ $class$\">\n\n$src$\n</div>\n\\end"},"$:/plugins/kookma/shiraz/macros/slider":{"title":"$:/plugins/kookma/shiraz/macros/slider","description":"Slider macro shows (hides) its content.","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define slider(label, src, labelClass, srcClass, status:\"closed\")\n<$let revealState = \"\"\"$:/state/shiraz/slider-macro/$(currentTiddler)$/$label$\"\"\"\n source = {{{ [<__src__>get[text]else<__src__>] }}} >\n<h3 class=\"$labelClass$\">\n <$reveal type=\"nomatch\" state=<<revealState>> text=\"open\" default=\"$status$\">\n <$button class=\"tc-btn-invisible tc-tiddlylink\" set=<<revealState>> setTo=\"open\">\n <span class=\"kk-sh-slider\"><$transclude tiddler=\"$:/core/images/right-arrow\" /></span>\n </$button>\n </$reveal>\n <$reveal type=\"match\" state=<<revealState>> text=\"open\" default=\"$status$\">\n <$button class=\"tc-btn-invisible tc-tiddlylink\" set=<<revealState>> setTo=\"closed\">\n <span class=\"kk-sh-slider\"><$transclude tiddler=\"$:/core/images/down-arrow\" /></span>\n </$button>\n </$reveal>\n <$let tv-wikilinks=\"no\">$label$</$let>\n</h3>\n<$reveal type=\"match\" state=<<revealState>> text=\"open\" default=\"$status$\" class=\"$srcClass$\" tag=div>\n<$transclude tiddler=<<source>> field=title mode=block/>\n</$reveal>\n\n</$let>\n\\end"},"$:/plugins/kookma/shiraz/macros/space":{"title":"$:/plugins/kookma/shiraz/macros/space","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define vspace(height:\"25px\")\n<p style=\"margin-bottom: $height$;\"></p>\n\\end\n\n\\define hspace(width:\"25px\")\n<span style=\"margin-left: $width$;\"></span>\n\\end\n"},"$:/plugins/kookma/shiraz/macros/text-utility":{"title":"$:/plugins/kookma/shiraz/macros/text-utility","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define tc(src:\"\", color:\"red\") <span style=\"color:$color$;\">$src$</span>\n\\define bc(src:\"\", color:\"yellow\") <span style=\"background-color:$color$;\">$src$</span>\n\\define mono(src:\"\", class:\"\") <code class=\"mono $class$\">$src$</code>\n\\define transform(case:\"\", src:\"\", class:\"\") <span class=\"text-$case$ $class$\">$src$</span>\n\n<!-- simple highlight -->\n\\define hl(src:\"\", color:\"yellow\") <mark class=\"kk-sh-highlight\" style=\"background-color:$color$;\">$src$</mark>\n\n<!-- drop shadow highlight -->\n\\define hls(src:\"\", color:\"yellow\") <mark class=\"kk-sh-highlight\" style=\"filter: drop-shadow(0 0 0.4rem $color$);\">$src$</mark>\n\n<!-- pen highlight -->\n\\define hlp(src:\"\", color:\"yellow\") <mark class=\"kk-sh-highlight-pen\" style=\"background-image: linear-gradient(to top, $color$ 50%, transparent 0);\">$src$</mark>\n"},"$:/plugins/kookma/shiraz/readme":{"title":"$:/plugins/kookma/shiraz/readme","type":"text/vnd.tiddlywiki","text":"; Shiraz\nShiraz is a small framework of stylesheets, templates and macros to create stylish contents in Tiddlywiki. Shiraz has customized elements like alerts, cards, panels, images, static tables, dynamic tables, quick table, badges, texts, etc. Shiraz uses some modified CSS classes from [[Bootstrap|https://getbootstrap.com/]] 4.3.1.\n\n;Code and demo\nFor learning plugin features, syntax, tutorial and examples see the plugin demo and code pages\n\n* Demo: https://kookma.github.io/TW-Shiraz/\n* Code: https://github.com/kookma/TW-Shiraz\n"},"$:/plugins/kookma/shiraz/styles/alerts-leftbar":{"title":"$:/plugins/kookma/shiraz/styles/alerts-leftbar","text":".leftbar{\n border-width:0px !important;\n border-radius:0px !important;\n border-left-width: 5px !important;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bglowtone-colors":{"title":"$:/plugins/kookma/shiraz/styles/bglowtone-colors","text":"/* Colors taked from [1] https://www.bg-w3schools.bg-com/colors/colors_names.bg-asp \n[2] http://www.bg-workwithcolor.bg-com/color-chart-full-01.bg-htm*/\n/*Low tone background colors*/\n.bg-mistyrose{background-color:#ffe4e1;}\n.bg-lemonchiffon{background-color:#fffacd;}\n.bg-lavenderblush{background-color:#fff0f5;}\n.bg-lavender{background-color:#e6e6fa;}\n.bg-honeydew{background-color:#f0fff0;}\n.bg-lightcyan{background-color:#e0ffff;}\n.bg-aliceblue{background-color:#f0f8ff;}\n.bg-cornsilk{background-color:#fff8dc;}\n.bg-gainsboro{background-color:#dcdcdc;}\n.bg-bisque{background-color:#ffe4c4;}\n.bg-snow{background-color:#fffafa;}","list":"mistyrose lemonchiffon lavenderblush lavender honeydew lightcyan aliceblue cornsilk gainsboro bisque snow","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bs/alerts":{"title":"$:/plugins/kookma/shiraz/styles/bs/alerts","text":"/*Was taken from bootstrap 4.1.3*/\n.alert {\n position: relative;\n padding: 0.75rem 1.25rem;\n margin-bottom: 1rem;\n border: 1px solid transparent;\n border-radius: 0.25rem;\n}\n.alert-primary {\n color: #004085;\n background-color: #cce5ff;\n border-color: #b8daff;\n}\n\n.alert-primary hr {\n border-top-color: #9fcdff;\n}\n.alert-secondary {\n color: #383d41;\n background-color: #e2e3e5;\n border-color: #d6d8db;\n}\n\n.alert-secondary hr {\n border-top-color: #c8cbcf;\n}\n\n.alert-success {\n color: #155724;\n background-color: #d4edda;\n border-color: #c3e6cb;\n}\n\n.alert-success hr {\n border-top-color: #b1dfbb;\n}\n.alert-info {\n color: #0c5460;\n background-color: #d1ecf1;\n border-color: #bee5eb;\n}\n\n.alert-info hr {\n border-top-color: #abdde5;\n}\n.alert-warning {\n color: #856404;\n background-color: #fff3cd;\n border-color: #ffeeba;\n}\n\n.alert-warning hr {\n border-top-color: #ffe8a1;\n}\n\n.alert-danger {\n color: #721c24;\n background-color: #f8d7da;\n border-color: #f5c6cb;\n}\n\n.alert-danger hr {\n border-top-color: #f1b0b7;\n}\n.alert-light {\n color: #818182;\n background-color: #fefefe;\n border-color: #fdfdfe;\n}\n\n.alert-light hr {\n border-top-color: #ececf6;\n}\n.alert-dark {\n color: #1b1e21;\n background-color: #d6d8d9;\n border-color: #c6c8ca;\n}\n\n.alert-dark hr {\n border-top-color: #b9bbbe;\n}\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bs/background-colors":{"title":"$:/plugins/kookma/shiraz/styles/bs/background-colors","text":".bg-primary {\n background-color: #007bff !important;\n}\n\na.bg-primary:hover, a.bg-primary:focus,\nbutton.bg-primary:hover,\nbutton.bg-primary:focus {\n background-color: #0062cc !important;\n}\n\n.bg-secondary {\n background-color: #6c757d !important;\n}\n\na.bg-secondary:hover, a.bg-secondary:focus,\nbutton.bg-secondary:hover,\nbutton.bg-secondary:focus {\n background-color: #545b62 !important;\n}\n\n.bg-success {\n background-color: #28a745 !important;\n}\n\na.bg-success:hover, a.bg-success:focus,\nbutton.bg-success:hover,\nbutton.bg-success:focus {\n background-color: #1e7e34 !important;\n}\n\n.bg-info {\n background-color: #17a2b8 !important;\n}\n\na.bg-info:hover, a.bg-info:focus,\nbutton.bg-info:hover,\nbutton.bg-info:focus {\n background-color: #117a8b !important;\n}\n\n.bg-warning {\n background-color: #ffc107 !important;\n}\n\na.bg-warning:hover, a.bg-warning:focus,\nbutton.bg-warning:hover,\nbutton.bg-warning:focus {\n background-color: #d39e00 !important;\n}\n\n.bg-danger {\n background-color: #dc3545 !important;\n}\n\na.bg-danger:hover, a.bg-danger:focus,\nbutton.bg-danger:hover,\nbutton.bg-danger:focus {\n background-color: #bd2130 !important;\n}\n\n.bg-light {\n background-color: #f8f9fa !important;\n}\n\na.bg-light:hover, a.bg-light:focus,\nbutton.bg-light:hover,\nbutton.bg-light:focus {\n background-color: #dae0e5 !important;\n}\n\n.bg-dark {\n background-color: #343a40 !important;\n}\n\na.bg-dark:hover, a.bg-dark:focus,\nbutton.bg-dark:hover,\nbutton.bg-dark:focus {\n background-color: #1d2124 !important;\n}\n\n.bg-white {\n background-color: #fff !important;\n}\n\n.bg-transparent {\n background-color: transparent !important;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bs/badge":{"title":"$:/plugins/kookma/shiraz/styles/bs/badge","text":"/* Extracted from bootstrap 4.1.3 */\n.badge {\n display: inline-block;\n padding: 0.25em 0.4em;\n font-size: 75%;\n font-weight: 700;\n line-height: 1;\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: 0.25rem;\n}\n\n.badge:empty {\n display: none;\n}\n\n.btn .badge {\n position: relative;\n top: -1px;\n}\n\n.badge-pill {\n padding-right: 0.6em;\n padding-left: 0.6em;\n border-radius: 10rem;\n}\n\n.badge-primary {\n color: #fff;\n background-color: #007bff;\n}\n\n.badge-primary[href]:hover, .badge-primary[href]:focus {\n color: #fff;\n text-decoration: none;\n background-color: #0062cc;\n}\n\n.badge-secondary {\n color: #fff;\n background-color: #6c757d;\n}\n\n.badge-secondary[href]:hover, .badge-secondary[href]:focus {\n color: #fff;\n text-decoration: none;\n background-color: #545b62;\n}\n\n.badge-success {\n color: #fff;\n background-color: #28a745;\n}\n\n.badge-success[href]:hover, .badge-success[href]:focus {\n color: #fff;\n text-decoration: none;\n background-color: #1e7e34;\n}\n\n.badge-info {\n color: #fff;\n background-color: #17a2b8;\n}\n\n.badge-info[href]:hover, .badge-info[href]:focus {\n color: #fff;\n text-decoration: none;\n background-color: #117a8b;\n}\n\n.badge-warning {\n color: #212529;\n background-color: #ffc107;\n}\n\n.badge-warning[href]:hover, .badge-warning[href]:focus {\n color: #212529;\n text-decoration: none;\n background-color: #d39e00;\n}\n\n.badge-danger {\n color: #fff;\n background-color: #dc3545;\n}\n\n.badge-danger[href]:hover, .badge-danger[href]:focus {\n color: #fff;\n text-decoration: none;\n background-color: #bd2130;\n}\n\n.badge-light {\n color: #212529;\n background-color: #f8f9fa;\n}\n\n.badge-light[href]:hover, .badge-light[href]:focus {\n color: #212529;\n text-decoration: none;\n background-color: #dae0e5;\n}\n\n.badge-dark {\n color: #fff;\n background-color: #343a40;\n}\n\n.badge-dark[href]:hover, .badge-dark[href]:focus {\n color: #fff;\n text-decoration: none;\n background-color: #1d2124;\n}\n\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bs/borders":{"title":"$:/plugins/kookma/shiraz/styles/bs/borders","text":".border {\n border: 1px solid #dee2e6 !important;\n}\n\n.border-top {\n border-top: 1px solid #dee2e6 !important;\n}\n\n.border-right {\n border-right: 1px solid #dee2e6 !important;\n}\n\n.border-bottom {\n border-bottom: 1px solid #dee2e6 !important;\n}\n\n.border-left {\n border-left: 1px solid #dee2e6 !important;\n}\n\n.border-0 {\n border: 0 !important;\n}\n\n.border-top-0 {\n border-top: 0 !important;\n}\n\n.border-right-0 {\n border-right: 0 !important;\n}\n\n.border-bottom-0 {\n border-bottom: 0 !important;\n}\n\n.border-left-0 {\n border-left: 0 !important;\n}\n\n.border-primary {\n border-color: #007bff !important;\n}\n\n.border-secondary {\n border-color: #6c757d !important;\n}\n\n.border-success {\n border-color: #28a745 !important;\n}\n\n.border-info {\n border-color: #17a2b8 !important;\n}\n\n.border-warning {\n border-color: #ffc107 !important;\n}\n\n.border-danger {\n border-color: #dc3545 !important;\n}\n\n.border-light {\n border-color: #f8f9fa !important;\n}\n\n.border-dark {\n border-color: #343a40 !important;\n}\n\n.border-white {\n border-color: #fff !important;\n}\n\n.rounded {\n border-radius: 0.25rem !important;\n}\n\n.rounded-top {\n border-top-left-radius: 0.25rem !important;\n border-top-right-radius: 0.25rem !important;\n}\n\n.rounded-right {\n border-top-right-radius: 0.25rem !important;\n border-bottom-right-radius: 0.25rem !important;\n}\n\n.rounded-bottom {\n border-bottom-right-radius: 0.25rem !important;\n border-bottom-left-radius: 0.25rem !important;\n}\n\n.rounded-left {\n border-top-left-radius: 0.25rem !important;\n border-bottom-left-radius: 0.25rem !important;\n}\n\n.rounded-circle {\n border-radius: 50% !important;\n}\n\n.rounded-0 {\n border-radius: 0 !important;\n}\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bs/btn":{"title":"$:/plugins/kookma/shiraz/styles/bs/btn","text":"/* Button and btn classes Mohammad*/\n.btn {\n display: inline-block;\n font-weight: 400;\n text-align: center;\n white-space: nowrap;\n vertical-align: middle;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n border: 1px solid transparent;\n padding: 0.375rem 0.75rem;\n font-size: 1rem;\n line-height: 1.5;\n border-radius: 0.25rem;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n\n\n.btn:hover, .btn:focus {\n text-decoration: none;\n}\n\n.btn:focus, .btn.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.btn.disabled, .btn:disabled {\n opacity: 0.65;\n}\n\n.btn:not(:disabled):not(.disabled) {\n cursor: pointer;\n}\n\na.btn.disabled,\nfieldset:disabled a.btn {\n pointer-events: none;\n}\n\n.btn-primary {\n color: #fff;\n background-color: #007bff;\n border-color: #007bff;\n}\n\n.btn-primary:hover {\n color: #fff;\n background-color: #0069d9;\n border-color: #0062cc;\n}\n\n.btn-primary:focus, .btn-primary.focus {\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);\n}\n\n.btn-primary.disabled, .btn-primary:disabled {\n color: #fff;\n background-color: #007bff;\n border-color: #007bff;\n}\n\n.btn-secondary {\n color: #fff;\n background-color: #6c757d;\n border-color: #6c757d;\n}\n\n.btn-secondary:hover {\n color: #fff;\n background-color: #5a6268;\n border-color: #545b62;\n}\n\n.btn-secondary:focus, .btn-secondary.focus {\n box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);\n}\n\n.btn-secondary.disabled, .btn-secondary:disabled {\n color: #fff;\n background-color: #6c757d;\n border-color: #6c757d;\n}\n\n.btn-success {\n color: #fff;\n background-color: #28a745;\n border-color: #28a745;\n}\n\n.btn-success:hover {\n color: #fff;\n background-color: #218838;\n border-color: #1e7e34;\n}\n\n.btn-success:focus, .btn-success.focus {\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);\n}\n\n.btn-success.disabled, .btn-success:disabled {\n color: #fff;\n background-color: #28a745;\n border-color: #28a745;\n}\n\n.btn-info {\n color: #fff;\n background-color: #17a2b8;\n border-color: #17a2b8;\n}\n\n.btn-info:hover {\n color: #fff;\n background-color: #138496;\n border-color: #117a8b;\n}\n\n.btn-info:focus, .btn-info.focus {\n box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);\n}\n\n.btn-info.disabled, .btn-info:disabled {\n color: #fff;\n background-color: #17a2b8;\n border-color: #17a2b8;\n}\n\n.btn-warning {\n color: #212529;\n background-color: #ffc107;\n border-color: #ffc107;\n}\n\n.btn-warning:hover {\n color: #212529;\n background-color: #e0a800;\n border-color: #d39e00;\n}\n\n.btn-warning:focus, .btn-warning.focus {\n box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);\n}\n\n.btn-warning.disabled, .btn-warning:disabled {\n color: #212529;\n background-color: #ffc107;\n border-color: #ffc107;\n}\n\n.btn-danger {\n color: #fff;\n background-color: #dc3545;\n border-color: #dc3545;\n}\n\n.btn-danger:hover {\n color: #fff;\n background-color: #c82333;\n border-color: #bd2130;\n}\n\n.btn-danger:focus, .btn-danger.focus {\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);\n}\n\n.btn-danger.disabled, .btn-danger:disabled {\n color: #fff;\n background-color: #dc3545;\n border-color: #dc3545;\n}\n\n.btn-light {\n color: #212529;\n background-color: #f8f9fa;\n border-color: #f8f9fa;\n}\n\n.btn-light:hover {\n color: #212529;\n background-color: #e2e6ea;\n border-color: #dae0e5;\n}\n\n.btn-light:focus, .btn-light.focus {\n box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);\n}\n\n.btn-light.disabled, .btn-light:disabled {\n color: #212529;\n background-color: #f8f9fa;\n border-color: #f8f9fa;\n}\n\n.btn-dark {\n color: #fff;\n background-color: #343a40;\n border-color: #343a40;\n}\n\n.btn-dark:hover {\n color: #fff;\n background-color: #23272b;\n border-color: #1d2124;\n}\n\n.btn-dark:focus, .btn-dark.focus {\n box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);\n}\n\n.btn-dark.disabled, .btn-dark:disabled {\n color: #fff;\n background-color: #343a40;\n border-color: #343a40;\n}\n\n.btn-link {\n font-weight: 400;\n color: #007bff;\n background-color: transparent;\n}\n\n.btn-link:hover {\n color: #0056b3;\n text-decoration: underline;\n background-color: transparent;\n border-color: transparent;\n}\n\n.btn-link:focus, .btn-link.focus {\n text-decoration: underline;\n border-color: transparent;\n box-shadow: none;\n}\n\n.btn-link:disabled, .btn-link.disabled {\n color: #6c757d;\n pointer-events: none;\n}\n\n/* button size */\n\n.btn-lg{\n padding: 0.5rem 1rem;\n font-size: 1.25rem;\n line-height: 1.5;\n border-radius: 0.3rem;\n}\n\n.btn-sm{\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n line-height: 1.5;\n border-radius: 0.2rem;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bs/card-column":{"title":"$:/plugins/kookma/shiraz/styles/bs/card-column","text":"/* Extracted from bootstrap 4.3.1 */\n.card-columns .card {\n margin-bottom: 0.75rem;\n}\n\n@media (min-width: 576px) {\n .card-columns {\n -webkit-column-count: 3;\n -moz-column-count: 3;\n column-count: 3;\n -webkit-column-gap: 1.25rem;\n -moz-column-gap: 1.25rem;\n column-gap: 1.25rem;\n orphans: 1;\n widows: 1;\n }\n .card-columns .card {\n display: inline-block;\n width: 100%;\n }\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bs/card-deck":{"title":"$:/plugins/kookma/shiraz/styles/bs/card-deck","text":"/* Extracted from bootstrap 4.1.3 */\n\n.card-deck {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-direction: column;\n flex-direction: column;\n}\n\n.card-deck .card {\n margin-bottom: 15px;\n}\n\n@media (min-width: 576px) {\n .card-deck {\n -ms-flex-flow: row wrap;\n flex-flow: row wrap;\n margin-right: -15px;\n margin-left: -15px;\n }\n .card-deck .card {\n display: -ms-flexbox;\n display: flex;\n -ms-flex: 1 0 0%;\n flex: 1 0 0%;\n -ms-flex-direction: column;\n flex-direction: column;\n margin-right: 15px;\n margin-bottom: 0;\n margin-left: 15px;\n }\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bs/card-group":{"title":"$:/plugins/kookma/shiraz/styles/bs/card-group","text":"/* Extracted from bootstrap 4.1.3 */\n.card-group {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-direction: column;\n flex-direction: column;\n}\n\n.card-group > .card {\n margin-bottom: 15px;\n}\n\n@media (min-width: 576px) {\n .card-group {\n -ms-flex-flow: row wrap;\n flex-flow: row wrap;\n }\n .card-group > .card {\n -ms-flex: 1 0 0%;\n flex: 1 0 0%;\n margin-bottom: 0;\n }\n .card-group > .card + .card {\n margin-left: 0;\n border-left: 0;\n }\n .card-group > .card:first-child {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n .card-group > .card:first-child .card-img-top,\n .card-group > .card:first-child .card-header {\n border-top-right-radius: 0;\n }\n .card-group > .card:first-child .card-img-bottom,\n .card-group > .card:first-child .card-footer {\n border-bottom-right-radius: 0;\n }\n .card-group > .card:last-child {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n .card-group > .card:last-child .card-img-top,\n .card-group > .card:last-child .card-header {\n border-top-left-radius: 0;\n }\n .card-group > .card:last-child .card-img-bottom,\n .card-group > .card:last-child .card-footer {\n border-bottom-left-radius: 0;\n }\n .card-group > .card:only-child {\n border-radius: 0.25rem;\n }\n .card-group > .card:only-child .card-img-top,\n .card-group > .card:only-child .card-header {\n border-top-left-radius: 0.25rem;\n border-top-right-radius: 0.25rem;\n }\n .card-group > .card:only-child .card-img-bottom,\n .card-group > .card:only-child .card-footer {\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n }\n .card-group > .card:not(:first-child):not(:last-child):not(:only-child) {\n border-radius: 0;\n }\n .card-group > .card:not(:first-child):not(:last-child):not(:only-child) .card-img-top,\n .card-group > .card:not(:first-child):not(:last-child):not(:only-child) .card-img-bottom,\n .card-group > .card:not(:first-child):not(:last-child):not(:only-child) .card-header,\n .card-group > .card:not(:first-child):not(:last-child):not(:only-child) .card-footer {\n border-radius: 0;\n }\n}\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bs/card":{"title":"$:/plugins/kookma/shiraz/styles/bs/card","text":"/* Extracted from bootstrap 4.1.3 */\n.card {\n position: relative;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-direction: column;\n flex-direction: column;\n min-width: 0;\n word-wrap: break-word;\n background-color: #fff;\n background-clip: border-box;\n border: 1px solid rgba(0, 0, 0, 0.125);\n border-radius: 0.25rem;\n}\n\n.card > hr {\n margin-right: 0;\n margin-left: 0;\n}\n\n.card > .list-group:first-child .list-group-item:first-child {\n border-top-left-radius: 0.25rem;\n border-top-right-radius: 0.25rem;\n}\n\n.card > .list-group:last-child .list-group-item:last-child {\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n}\n\n.card-body {\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n padding: 1.25rem;\n}\n\n.card-title {\n margin-bottom: 0.75rem;\n}\n\n.card-subtitle {\n margin-top: -0.375rem;\n margin-bottom: 0;\n}\n\n.card-text:last-child {\n margin-bottom: 0;\n}\n\n.card-link:hover {\n text-decoration: none;\n}\n\n.card-link + .card-link {\n margin-left: 1.25rem;\n}\n\n.card-header {\n padding: 0.75rem 1.25rem;\n margin-bottom: 0;\n background-color: rgba(0, 0, 0, 0.03);\n border-bottom: 1px solid rgba(0, 0, 0, 0.125);\n}\n\n.card-header:first-child {\n border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0;\n}\n\n.card-header + .list-group .list-group-item:first-child {\n border-top: 0;\n}\n\n.card-footer {\n padding: 0.75rem 1.25rem;\n background-color: rgba(0, 0, 0, 0.03);\n border-top: 1px solid rgba(0, 0, 0, 0.125);\n}\n\n.card-footer:last-child {\n border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px);\n}\n\n.card-header-tabs {\n margin-right: -0.625rem;\n margin-bottom: -0.75rem;\n margin-left: -0.625rem;\n border-bottom: 0;\n}\n\n.card-header-pills {\n margin-right: -0.625rem;\n margin-left: -0.625rem;\n}\n\n.card-img-overlay {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n padding: 1.25rem;\n}\n\n.card-img {\n width: 100%;\n border-radius: calc(0.25rem - 1px);\n}\n\n.card-img-top {\n width: 100%;\n border-top-left-radius: calc(0.25rem - 1px);\n border-top-right-radius: calc(0.25rem - 1px);\n}\n\n.card-img-bottom {\n width: 100%;\n border-bottom-right-radius: calc(0.25rem - 1px);\n border-bottom-left-radius: calc(0.25rem - 1px);\n}\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bs/clearfix":{"title":"$:/plugins/kookma/shiraz/styles/bs/clearfix","text":".clearfix::after {\n display: block;\n clear: both;\n content: \"\";\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bs/float":{"title":"$:/plugins/kookma/shiraz/styles/bs/float","text":".float-left {\n float: left;\n}\n\n.float-right {\n float: right;\n}\n\n.float-none {\n float: none;\n}\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bs/my-adjustment":{"title":"$:/plugins/kookma/shiraz/styles/bs/my-adjustment","text":"/* My adjustments to bootstrap 4.1.3 css classes */\na {\n color: #007bff;\n text-decoration: none;\n background-color: transparent;\n -webkit-text-decoration-skip: objects;\n}\n/* Link is hacked to be compatible with bootstrap \nclasses remove it if the TW core objects break\n*/\n\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bs/shadow":{"title":"$:/plugins/kookma/shiraz/styles/bs/shadow","text":".shadow-sm {\n box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;\n}\n\n.shadow {\n box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;\n}\n\n.shadow-lg {\n box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;\n}\n\n.shadow-none {\n box-shadow: none !important;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bs/sizing-spacing":{"title":"$:/plugins/kookma/shiraz/styles/bs/sizing-spacing","text":"/* Extracted from bootstrap 4.3.1 */\n/*Defines margins, paddings, width and height*/\n.w-25 {\n width: 25% !important;\n}\n.w-50 {\n width: 50% !important;\n}\n.w-75 {\n width: 75% !important;\n}\n.w-100 {\n width: 100% !important;\n}\n.w-auto {\n width: auto !important;\n}\n.h-25 {\n height: 25% !important;\n}\n.h-50 {\n height: 50% !important;\n}\n.h-75 {\n height: 75% !important;\n}\n.h-100 {\n height: 100% !important;\n}\n.h-auto {\n height: auto !important;\n}\n.mw-100 {\n max-width: 100% !important;\n}\n.mh-100 {\n max-height: 100% !important;\n}\n.m-0 {\n margin: 0 !important;\n}\n.mt-0,\n.my-0 {\n margin-top: 0 !important;\n}\n.mr-0,\n.mx-0 {\n margin-right: 0 !important;\n}\n.mb-0,\n.my-0 {\n margin-bottom: 0 !important;\n}\n.ml-0,\n.mx-0 {\n margin-left: 0 !important;\n}\n.m-1 {\n margin: 0.25rem !important;\n}\n.mt-1,\n.my-1 {\n margin-top: 0.25rem !important;\n}\n.mr-1,\n.mx-1 {\n margin-right: 0.25rem !important;\n}\n.mb-1,\n.my-1 {\n margin-bottom: 0.25rem !important;\n}\n.ml-1,\n.mx-1 {\n margin-left: 0.25rem !important;\n}\n.m-2 {\n margin: 0.5rem !important;\n}\n.mt-2,\n.my-2 {\n margin-top: 0.5rem !important;\n}\n.mr-2,\n.mx-2 {\n margin-right: 0.5rem !important;\n}\n.mb-2,\n.my-2 {\n margin-bottom: 0.5rem !important;\n}\n.ml-2,\n.mx-2 {\n margin-left: 0.5rem !important;\n}\n\n.m-3 {\n margin: 1rem !important;\n}\n\n.mt-3,\n.my-3 {\n margin-top: 1rem !important;\n}\n\n.mr-3,\n.mx-3 {\n margin-right: 1rem !important;\n}\n\n.mb-3,\n.my-3 {\n margin-bottom: 1rem !important;\n}\n\n.ml-3,\n.mx-3 {\n margin-left: 1rem !important;\n}\n\n.m-4 {\n margin: 1.5rem !important;\n}\n\n.mt-4,\n.my-4 {\n margin-top: 1.5rem !important;\n}\n\n.mr-4,\n.mx-4 {\n margin-right: 1.5rem !important;\n}\n\n.mb-4,\n.my-4 {\n margin-bottom: 1.5rem !important;\n}\n\n.ml-4,\n.mx-4 {\n margin-left: 1.5rem !important;\n}\n\n.m-5 {\n margin: 3rem !important;\n}\n\n.mt-5,\n.my-5 {\n margin-top: 3rem !important;\n}\n\n.mr-5,\n.mx-5 {\n margin-right: 3rem !important;\n}\n\n.mb-5,\n.my-5 {\n margin-bottom: 3rem !important;\n}\n\n.ml-5,\n.mx-5 {\n margin-left: 3rem !important;\n}\n\n.p-0 {\n padding: 0 !important;\n}\n\n.pt-0,\n.py-0 {\n padding-top: 0 !important;\n}\n\n.pr-0,\n.px-0 {\n padding-right: 0 !important;\n}\n\n.pb-0,\n.py-0 {\n padding-bottom: 0 !important;\n}\n\n.pl-0,\n.px-0 {\n padding-left: 0 !important;\n}\n\n.p-1 {\n padding: 0.25rem !important;\n}\n\n.pt-1,\n.py-1 {\n padding-top: 0.25rem !important;\n}\n\n.pr-1,\n.px-1 {\n padding-right: 0.25rem !important;\n}\n\n.pb-1,\n.py-1 {\n padding-bottom: 0.25rem !important;\n}\n\n.pl-1,\n.px-1 {\n padding-left: 0.25rem !important;\n}\n\n.p-2 {\n padding: 0.5rem !important;\n}\n\n.pt-2,\n.py-2 {\n padding-top: 0.5rem !important;\n}\n\n.pr-2,\n.px-2 {\n padding-right: 0.5rem !important;\n}\n\n.pb-2,\n.py-2 {\n padding-bottom: 0.5rem !important;\n}\n\n.pl-2,\n.px-2 {\n padding-left: 0.5rem !important;\n}\n\n.p-3 {\n padding: 1rem !important;\n}\n\n.pt-3,\n.py-3 {\n padding-top: 1rem !important;\n}\n\n.pr-3,\n.px-3 {\n padding-right: 1rem !important;\n}\n\n.pb-3,\n.py-3 {\n padding-bottom: 1rem !important;\n}\n\n.pl-3,\n.px-3 {\n padding-left: 1rem !important;\n}\n\n.p-4 {\n padding: 1.5rem !important;\n}\n\n.pt-4,\n.py-4 {\n padding-top: 1.5rem !important;\n}\n\n.pr-4,\n.px-4 {\n padding-right: 1.5rem !important;\n}\n\n.pb-4,\n.py-4 {\n padding-bottom: 1.5rem !important;\n}\n\n.pl-4,\n.px-4 {\n padding-left: 1.5rem !important;\n}\n\n.p-5 {\n padding: 3rem !important;\n}\n\n.pt-5,\n.py-5 {\n padding-top: 3rem !important;\n}\n\n.pr-5,\n.px-5 {\n padding-right: 3rem !important;\n}\n\n.pb-5,\n.py-5 {\n padding-bottom: 3rem !important;\n}\n\n.pl-5,\n.px-5 {\n padding-left: 3rem !important;\n}\n\n.m-auto {\n margin: auto !important;\n}\n\n.mt-auto,\n.my-auto {\n margin-top: auto !important;\n}\n\n.mr-auto,\n.mx-auto {\n margin-right: auto !important;\n}\n\n.mb-auto,\n.my-auto {\n margin-bottom: auto !important;\n}\n\n.ml-auto,\n.mx-auto {\n margin-left: auto !important;\n}\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bs/text-alignment":{"title":"$:/plugins/kookma/shiraz/styles/bs/text-alignment","text":".text-justify {\n text-align: justify !important;\n}\n\n.text-nowrap {\n white-space: nowrap !important;\n}\n\n.text-truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.text-left {\n text-align: left !important;\n}\n\n.text-right {\n text-align: right !important;\n}\n\n.text-center {\n text-align: center !important;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bs/text-colors":{"title":"$:/plugins/kookma/shiraz/styles/bs/text-colors","text":"/* from bootstrap 4.1.3 */\n\n.text-white {\n color: #fff !important;\n}\n\n.text-primary {\n color: #007bff !important;\n}\n\na.text-primary:hover, a.text-primary:focus {\n color: #0062cc !important;\n}\n\n.text-secondary {\n color: #6c757d !important;\n}\n\na.text-secondary:hover, a.text-secondary:focus {\n color: #545b62 !important;\n}\n\n.text-success {\n color: #28a745 !important;\n}\n\na.text-success:hover, a.text-success:focus {\n color: #1e7e34 !important;\n}\n\n.text-info {\n color: #17a2b8 !important;\n}\n\na.text-info:hover, a.text-info:focus {\n color: #117a8b !important;\n}\n\n.text-warning {\n color: #ffc107 !important;\n}\n\na.text-warning:hover, a.text-warning:focus {\n color: #d39e00 !important;\n}\n\n.text-danger {\n color: #dc3545 !important;\n}\n\na.text-danger:hover, a.text-danger:focus {\n color: #bd2130 !important;\n}\n\n.text-light {\n color: #f8f9fa !important;\n}\n\na.text-light:hover, a.text-light:focus {\n color: #dae0e5 !important;\n}\n\n.text-dark {\n color: #343a40 !important;\n}\n\na.text-dark:hover, a.text-dark:focus {\n color: #1d2124 !important;\n}\n\n.text-body {\n color: #212529 !important;\n}\n\n.text-muted {\n color: #6c757d !important;\n}\n\n.text-black-50 {\n color: rgba(0, 0, 0, 0.5) !important;\n}\n\n.text-white-50 {\n color: rgba(255, 255, 255, 0.5) !important;\n}\n\n.text-hide {\n font: 0/0 a;\n color: transparent;\n text-shadow: none;\n background-color: transparent;\n border: 0;\n}\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/bs/text-utility":{"title":"$:/plugins/kookma/shiraz/styles/bs/text-utility","text":"/* Can be removed latter. This is used for illustration of bootstrap cards */\n\n.text-lowercase {\n text-transform: lowercase !important;\n}\n\n.text-uppercase {\n text-transform: uppercase !important;\n}\n\n.text-capitalize {\n text-transform: capitalize !important;\n}\n\n.font-weight-light {\n font-weight: 300 !important;\n}\n\n.font-weight-normal {\n font-weight: 400 !important;\n}\n\n.font-weight-bold {\n font-weight: 700 !important;\n}\n\n.font-italic {\n font-style: italic !important;\n}\n\n\n.h1, .h2, .h3, .h4, .h5, .h6 {\n margin-bottom: 0.5rem;\n font-family: inherit;\n font-weight: 500;\n line-height: 1.2;\n color: inherit;\n}\n\n.h1 {\n font-size: 2.5rem;\n}\n\n.h2 {\n font-size: 2rem;\n}\n\n.h3 {\n font-size: 1.75rem;\n}\n\n.h4 {\n font-size: 1.5rem;\n}\n\n.h5 {\n font-size: 1.25rem;\n}\n\n.h6 {\n font-size: 1rem;\n}\n\n.lead {\n font-size: 1.25rem;\n font-weight: 300;\n}\n\n.display-1 {\n font-size: 6rem;\n font-weight: 300;\n line-height: 1.2;\n}\n\n.display-2 {\n font-size: 5.5rem;\n font-weight: 300;\n line-height: 1.2;\n}\n\n.display-3 {\n font-size: 4.5rem;\n font-weight: 300;\n line-height: 1.2;\n}\n\n.display-4 {\n font-size: 3.5rem;\n font-weight: 300;\n line-height: 1.2;\n}\n\n.hr {\n margin-top: 1rem;\n margin-bottom: 1rem;\n border: 0;\n border-top: 1px solid rgba(0, 0, 0, 0.1);\n}\n\n.small {\n font-size: 80%;\n font-weight: 400;\n}\n\n.mark {\n padding: 0.2em;\n background-color: #fcf8e3;\n}\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/clear-float":{"title":"$:/plugins/kookma/shiraz/styles/clear-float","text":"/* Resolve issue for floating objects which cross the tiddler frame!\nThe below code should force the tiddler to always wrap around floating elements, so that they are always inside\nRef: https://groups.google.com/d/msg/tiddlywiki/5bZwwj6cyac/2LzFeA7AAwAJ\n*/\n\n.tc-tiddler-body:before, .tc-tiddler-body:after {\n content: \"\";\n display: table;\n}\n.tc-tiddler-body:after {\n clear: both;\n}\n.tc-tiddler-body {\n zoom: 1;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/colorful-sidebar-tab":{"title":"$:/plugins/kookma/shiraz/styles/colorful-sidebar-tab","text":".tc-sidebar-lists .tc-tab-buttons button.tc-tab-selected {\n background: none;\n border: none;\n border-bottom: solid 1px #737373;\n font-weight: bold;\n color: #DB4C3F;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/csvtable-katex":{"title":"$:/plugins/kookma/shiraz/styles/csvtable-katex","text":".falign .katex-display > .katex {text-align:left;}\n.ralign .katex-display > .katex {text-align:right;}\n.table-mathbox tr td{vertical-align: baseline;} /* baseline aligned text and fomula in table cell*/\n\n/*\nOnly used with csv table + katex\nSee $:/plugins/kookma/shiraz/macros/csvtables/formats-math\n*/","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/csvtable-star":{"title":"$:/plugins/kookma/shiraz/styles/csvtable-star","text":"/* Styles for star rating used with table-csv macro */\n.shiraz-star svg{\nwidth: 1.2em;\nheight: 1.2em;\nvertical-align: middle;\nfill:#FF9529; /*Deep Saffron*/\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/csvtable":{"title":"$:/plugins/kookma/shiraz/styles/csvtable","text":"/* todo section ------------*/\n.tc-tiddler-body p.dblock,\n.tc-tiddler-preview-preview p.dblock {\n\tdisplay:none;\n}\n\n/*\nOnly used with csv table\nSee $:/plugins/kookma/shiraz/macros/csvtables/table-csv\nThe @@ produces a p tag.\n*/","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/dbadge":{"title":"$:/plugins/kookma/shiraz/styles/dbadge","text":"/*Credits: \nNishant Srivastava https://codepen.io/nisrulz/pen/bpQWLW\nMohammad Rahmani: https://github.com/kookma\n*/\n.dbadge {\n display: inline-block;\n margin: 0.0em;\n}\n.dbadge > span {\n color: #ffffff;\n font-size: 0.8em;\n font-weight: 400;\n line-height: 1;\n padding: .2em .6em;\n text-align: center;\n vertical-align: baseline;\n white-space: nowrap;}\n\n.dbadge-subject{\n background-color: #656565;\n border-bottom-left-radius: 0.25em;\n border-top-left-radius: 0.25em;}\n.dbadge-status {\n border-bottom-right-radius: 0.25em;\n border-top-right-radius: 0.25em;}\n\n.dbadge-primary {\n background-color: #337ab7;}\n.dbadge-success {\n background-color: #5cb85c;}\n.dbadge-info {\n background-color: #5bc0de;}\n.dbadge-warning {\n background-color: #f0ad4e;}\n.dbadge-danger {\n background-color: #d9534f;}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/details-slider":{"title":"$:/plugins/kookma/shiraz/styles/details-slider","text":"/*details html5 macro*/\ndetails.kk-shiraz-details > summary {\n padding: 2px 6px;\n font-weight:500;\n outline:none;\n}\ndetails.kk-shiraz-details > div {\n padding: 2px 6px;\n margin: 0;\n}\n\n\n/* Styles for summary cursor\nurl: https://css-tricks.com/two-issues-styling-the-details-element-and-how-to-solve-them/\n*/\n\ndetails.kk-shiraz-details summary {\n cursor: pointer;\n}\n\ndetails.kk-shiraz-details summary > * {\n display: inline;\n}\n\n\nbutton .kk-sh-slider svg{\nwidth: 0.8em;\nheight: 0.8em;\nvertical-align: middle;\n}\n\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/dynamic-tables-var":{"title":"$:/plugins/kookma/shiraz/styles/dynamic-tables-var","tags":"$:/tags/Stylesheet","type":"text/vnd.tiddlywiki","text":"/* these are dynamic or variable properties based on the tiddlywiki palette */\n\n.shiraz-dtable-page-footer select{\n\tbackground-color: <<color table-header-background>>;\n\tcolor:<<color foreground>>;\n}\n\n.shiraz-dtable-page-footer > td{\n\tbackground-color: <<color table-header-background>>;\n}\n\n/* customize the table footer used for numerical summary*/\n.shiraz-dtable-footer tr td{\n\tbackground-color: <<color table-footer-background>>;\n\tborder:none;\n}\n\n/* correct button color to support dark theme */\n.tbl-container table thead th button{\n\tcolor:<<colour button-foreground>>\n}\n.tbl-container table thead th button svg {\n\tfill:<<colour button-foreground>>;\n}"},"$:/plugins/kookma/shiraz/styles/dynamic-tables":{"title":"$:/plugins/kookma/shiraz/styles/dynamic-tables","text":"/* main editor toolbar settings for dynamic table */\n.shiraz-dtable-maineditor .tc-editor-toolbar button svg{\n\theight:0.9em; /* make toolbar buttons smaller */\n\twidth:0.9em\n}\n/* make third party plugins like KaTeX button smaller */\n.shiraz-dtable-maineditor .tc-editor-toolbar button .katex{\n\tfont-size: 0.9em;\n\tline-height:1em;\n}\n\n/* edit-text box for dynamic table */\n.shiraz-dtable-textbox {\n\twidth:100%;\n\tpadding-left: 5px;\n\tborder: none;\n}\n\n.shiraz-dtable-textbox:focus {\n\toutline: none;\n\tborder: 1px solid #5778d8;\n\tbackground: transparent;\n}\n\n.tbl-inpt-edit { width: 100%; background-color: transparent; border: none; color: #000000;}\n\nbutton.tbl-sort-svg > svg { text-shadow: none; fill:#000000; height:10px; padding:0 0 2px 0; }\n\nth .tc-tiddlylink, th a { text-shadow: none; margin: 0 0 0 0; padding: 0 0 0 0; color:unset; font-weight: bold; }\n\n\n/* DELETE CONFIRMATION */\ntable thead .tbl-delete-confirm > th {\n\tcolor: white;\n\tbackground-color:#ff0033;\n\tpadding: 8px;\n\tmargin: 0px;\n\ttext-align:center;\n\tfont-weight:normal;\n}\n\ntable thead .tbl-delete-confirm > th > button,\ntable thead .tbl-delete-confirm > th > a {\n\tcolor: white;\n\tfill: white;\n}\n\n/* -- pagination --*/\n.shiraz-dtable-page-footer td{\n\tmargin: 0 0 0 0;\n\tpadding: 4px 7px 4px 7px;\n}\n\n.shiraz-dtable-page-footer select{\n\tpadding:0;\n\tmargin:0;\n\tborder:none;\t\n}\n\n.shiraz-dtable-page-footer {\n\ttext-align:center;\n}\n\n.shiraz-dtable-page-prev{\n\tfloat:left;\n\tmargin-right:8px;\n}\n\n.shiraz-dtable-page-next{\n\tfloat:right;\n\tmargin-left:8px;\n}\n\n.shiraz-dtable-page-footer button svg {height:0.7em;}\n.shiraz-dtable-page-footer button {outline: none; line-height:normal;}\n.shiraz-dtable-page-footer button:disabled {display:none;}\n\n/* format the expanded record (tiddler body) - for local customization like KaTeX numbering */\n.shiraz-dtable-expanded-record{ }\n\n/* adjust the column width for date/due-date/status/linktype fields*/\n.shiraz-dtable-col-fixedsize{\n\twidth:5.5rem;\n\twhite-space: nowrap;\n}\n.shiraz-dtable-priority{\n\twidth:6.5rem;\n\twhite-space: nowrap;\n}\n/* adjust the size of column with svg icons like: tbl-expand, tbl-clone, tbl-delete, tbl-checkbox */\n.shiraz-dtable-svg{\n\twidth:28px;\n\tmax-width:28px;\n}\n\n\n/* this ensure short title in small width table */\n.shiraz-dtable-title{\n\tmax-width: 15rem;\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n\twhite-space: nowrap;\n}\n\n/* Newly added 2024.05.31 */\n.shiraz-default-cursore{ /* for tbl-linktype */\n\tcursor:default;\n}\n.shiraz-dtable-locked-cell{\n\t/* for styling the locked cell */\n\tfont-style:oblique;\n}\n.shiraz-cell-centered { /* centered table cell */\n\ttext-align: center;\n\tvertical-align: middle;\n}\n\n/* button caption style on dynamic table header\nthis style can be overriden locally by user */\ntable thead .shiraz-dtable-header th button {\n text-transform: capitalize; /* Capitalize the first letter of every word */\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/highlight":{"title":"$:/plugins/kookma/shiraz/styles/highlight","text":"mark.kk-sh-highlight {\n\tbackground-color: unset;\n\tborder-radius:0.4em;\n\tpadding:0 0.25em 0.1em;\n}\n\nmark.kk-sh-highlight-pen {\n\tbackground-color: unset;\n\tbackground-position: top left;\n\tbackground-repeat: no-repeat;\n\tbackground-size: 100% auto;\n}\n\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/image-alignment":{"title":"$:/plugins/kookma/shiraz/styles/image-alignment","text":"/*Image aligning classes*/\n.image-align-right{\n float:right;\n margin:0.5em 0 1.3em 1.4em;\n}\n.image-align-left{\n float:left;\n margin: 0.5em 1.4em 1.3em 0;\n}\n.image-align-center{\n display:block;\n margin: 0.5em auto 1.3em; \n}\n\n.image-float-none {\n float: none !important;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/image-basic":{"title":"$:/plugins/kookma/shiraz/styles/image-basic","text":".image-basic {\n text-align: center;\n font-style: italic;\n font-size: smaller;\n text-indent: 0;\n padding: 0.5em;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/image-overlay":{"title":"$:/plugins/kookma/shiraz/styles/image-overlay","text":".image-overlay-container{\n width: 50%; \n box-sizing: border-box;\n}\n\n@media screen and (max-width: 640px){\n .image-overlay-container{\n display: block;\n width: 100%;\n }\n}\n\n@media screen and (min-width: 900px){\n .image-overlay-container{\n width: 33.33%;\n }\n}\n\n.image-overlay-container .image-overlay-title{\n color: #1a1a1a;\n text-align: center;\n margin-bottom:10px;\n}\n\n.image-overlay-content {\n position: relative;\n width: 90%;\n max-width: 400px;\n margin: auto;\n overflow: hidden;\n}\n\n.image-overlay-content .image-overlay-content-overlay {\n background: rgba(0,0,0,0.7);\n position: absolute;\n height: 99%;\n width: 100%;\n left: 0;\n top: 0;\n bottom: 0;\n right: 0;\n opacity: 0;\n -webkit-transition: all 0.4s ease-in-out 0s;\n -moz-transition: all 0.4s ease-in-out 0s;\n transition: all 0.4s ease-in-out 0s;\n}\n\n.image-overlay-content:hover .image-overlay-content-overlay{\n opacity: 1;\n}\n\n.image-overlay-content-image{\n width: 100%;\n}\n\n.image-overlay-content-details {\n position: absolute;\n text-align: center;\n padding-left: 1em;\n padding-right: 1em;\n width: 100%;\n top: 50%;\n left: 50%;\n opacity: 0;\n -webkit-transform: translate(-50%, -50%);\n -moz-transform: translate(-50%, -50%);\n transform: translate(-50%, -50%);\n -webkit-transition: all 0.3s ease-in-out 0s;\n -moz-transition: all 0.3s ease-in-out 0s;\n transition: all 0.3s ease-in-out 0s;\n}\n\n.image-overlay-content:hover .image-overlay-content-details{\n top: 50%;\n left: 50%;\n opacity: 1;\n}\n\n.image-overlay-content-details h3{\n color: #fff;\n font-weight: 500;\n letter-spacing: 0.15em;\n margin-bottom: 0.5em;\n text-transform: uppercase;\n}\n\n.image-overlay-content-details p{\n color: #fff;\n font-size: 0.8em;\n}\n\n.image-overlay-fadeIn-bottom{\n top: 80%;\n}\n\n.image-overlay-fadeIn-top{\n top: 20%;\n}\n\n.image-overlay-fadeIn-left{\n left: 20%;\n}\n\n.image-overlay-fadeIn-right{\n left: 80%;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/image-polaroid":{"title":"$:/plugins/kookma/shiraz/styles/image-polaroid","text":".image-polaroid {\n min-width:64px;\n background-color: #f8f9fa;\n box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);\n}\n.image-polaroid img {\n width: 100%;\n padding:10px;\n height: auto;\n}\n.image-polaroid .image-polaroid-caption {\n padding:10px 15px 10px;\n text-align: center; \n line-height: 1.4em;\n font-weight:300;\n font-size: 0.9em; \n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/image-pretty":{"title":"$:/plugins/kookma/shiraz/styles/image-pretty","text":".image-pretty {\n min-width:64px;\n border: 1px solid #c8ccd1;\n background-color:#f8f9fa;\n}\n.image-pretty:hover {\n border: 1px solid #777;\n}\n.image-pretty img {\n padding:2px;\n width: 100%;\n height: auto;\n}\n.image-pretty .image-pretty-caption {\n padding:10px 15px 10px;\n text-align: center; \n line-height: 1.4em;\n font-weight:300;\n font-size: 0.9em; \n}\n\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/image-slidein":{"title":"$:/plugins/kookma/shiraz/styles/image-slidein","text":".image-slidein { \n display: block; \n position: relative; \n /*float: left;*/\n overflow: hidden; \n /* margin: 0 20px 20px 0;*/\n}\n\n.image-slidein img {\n width: 100%;\n height: auto;\n}\n\n.image-slidein figcaption { \n position: absolute; \n background: rgba(0,0,0,0.75); \n color: white; \n padding: 10px 20px; \n opacity: 0;\n -webkit-transition: all 0.6s ease;\n -moz-transition: all 0.6s ease;\n -o-transition: all 0.6s ease;\n}\n.image-slidein:hover figcaption {\n opacity: 1;\n}\n.image-slidein:before { \n content: \"?\"; \n position: absolute; \n font-weight: 800; \n background: rgba(255,255,255,0.75); \n text-shadow: 0 0 5px white;\n color: black;\n width: 24px;\n height: 24px;\n -webkit-border-radius: 12px;\n -moz-border-radius: 12px;\n border-radius: 12px;\n text-align: center;\n font-size: 14px;\n line-height: 24px;\n -moz-transition: all 0.6s ease;\n opacity: 0.75;\t\n}\n.image-slidein:hover:before {\n opacity: 0;\n}\n\n.mr-cap-left:before { bottom: 10px; left: 10px; }\n.mr-cap-left figcaption { bottom: 0; left: -30%; }\n.mr-cap-left:hover figcaption { left: 0; }\n\n.mr-cap-right:before { bottom: 10px; right: 10px; }\n.mr-cap-right figcaption { bottom: 0; right: -30%; }\n.mr-cap-right:hover figcaption { right: 0; }\n\n.mr-cap-top:before { top: 10px; left: 10px; }\n.mr-cap-top figcaption { left: 0; top: -30%; }\n.mr-cap-top:hover figcaption { top: 0; }\n\n.mr-cap-bottom:before { bottom: 10px; left: 10px; }\n.mr-cap-bottom figcaption { left: 0; bottom: -30%;}\n.mr-cap-bottom:hover figcaption { bottom: 0; }\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/mono":{"title":"$:/plugins/kookma/shiraz/styles/mono","tags":"$:/tags/Stylesheet","type":"text/vnd.tiddlywiki","text":".mono {\n\tcolor:unset;\n\tbackground-color: <<colour \"code-background\">>;\n\tborder: 1px solid #e1e1e8;\n\twhite-space: pre-wrap;\n\tpadding: 0 3px 2px;\n\tborder-radius: 3px;\n\tfont-family: {{$:/themes/tiddlywiki/vanilla/settings/codefontfamily}}\n}"},"$:/plugins/kookma/shiraz/styles/multicols/column":{"title":"$:/plugins/kookma/shiraz/styles/multicols/column","text":"/* multicolumn layouts with fixed column number works on the whole tiddler */\n.multicol .tc-tiddler-body {\n column-width: 14em;\n column-rule: 1px solid #ccc;\n}\n/* two columns responsive*/\n.multicol2 .tc-tiddler-body {\n\tcolumn-count:2; \n\tcolumn-width:15em;\n}\n/* three columns responsive*/\n.multicol3 .tc-tiddler-body {\n\tcolumn-count:3; \n\tcolumn-width:10em;\n}\n\n\n/* remove the extra space from first paragraph */\n.multicol .tc-tiddler-body > :first-child, \n.multicol2 .tc-tiddler-body > :first-child, \n.multicol3 .tc-tiddler-body > :first-child { margin-top: 0;}\n\n/*-------------------------------------------------------------------------------*/\n/* Classes for using with macro and div elements */\n.sh-multicol {\n column-width: 14em;\n column-rule: 1px solid #ccc;\n}\n/* two columns responsive*/\n.sh-multicol2 {\n\tcolumn-count:2; \n\tcolumn-width:15em;\n}\n/* three columns responsive*/\n.sh-multicol3 {\n\tcolumn-count:3; \n\tcolumn-width:10em;\n}\n\n/* remove the extra space from first paragraph */\n.sh-multicol > :first-child,\n.sh-multicol2 > :first-child,\n.sh-multicol3 > :first-child { margin-top: 0;}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/multicols/flex backup":{"title":"$:/plugins/kookma/shiraz/styles/multicols/flex backup","text":"/* multicolumn layout using flexbox courtesy from Bootstrap 4.3.1*/\n.flex-row {\n display: flex;\n flex-wrap: wrap;\n margin-right: -15px;\n margin-left: -15px;\n}\n.flex-col-1, \n.flex-col-2, \n.flex-col-3 {\n position: relative;\n width: 100%;\n padding-right: 15px;\n padding-left: 15px;\n}\n\n.flex-col-1{flex: 1 1 0;}\n.flex-col-2{flex: 2 1 0;}\n.flex-col-3{flex: 3 1 0;}\n\n.flex-col-1 > :first-child,\n.flex-col-2 > :first-child,\n.flex-col-3 > :first-child {\n\tmargin-top: 0;}","type":"text/css"},"$:/plugins/kookma/shiraz/styles/multicols/flex":{"title":"$:/plugins/kookma/shiraz/styles/multicols/flex","text":"/* multicolumn layout using flexbox courtesy from Bootstrap 4.3.1*/\n.flex-row {\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n/* margin-right: -15px;\n margin-left: -15px;*/\n}\n\n.flex-col,\n.flex-col-1, \n.flex-col-2, \n.flex-col-3,\n.flex-col-4 {\n position: relative;\n width: 100%;\n padding-right: 15px;\n padding-left: 15px;\n}\n\n/* for small screen width>=576px\nhttps://getbootstrap.com/docs/4.3/layout/grid/\n*/\n@media (min-width: 576px) {\n.flex-col {flex: 1 1 0; max-width: 100%;}\n.flex-col-1 {flex: 0 0 25%; max-width:25%}\n.flex-col-2 {flex: 0 0 50%; max-width:50%}\n.flex-col-3 {flex: 0 0 75%; max-width:75%}\n.flex-col-4 {flex: 0 0 100%; max-width:100%}\n}\n\n.flex-col > :first-child,\n.flex-col-1 > :first-child,\n.flex-col-2 > :first-child,\n.flex-col-3 > :first-child,\n.flex-col-4 > :first-child {\n margin-top: 0;}\n\n\n/* Alignment */\n.flex-align-items-center {\n align-items: center !important;\n}\n.flex-justify-content-center {\n justify-content: center !important;\n}\n\n.flex-no-gutters {\n margin-right: 0;\n margin-left: 0;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/multicols/storyriver":{"title":"$:/plugins/kookma/shiraz/styles/multicols/storyriver","text":"/* create story river in two column layout */\n.tc-story-river {\n display: flex;\n flex-wrap: wrap;\n}\n\n.tc-tiddler-frame\n{\n max-width: 49%; margin-right: 1%;\n /*max-width: 32%; margin-right: 1%; */\n}\n","type":"text/css"},"$:/plugins/kookma/shiraz/styles/notebook":{"title":"$:/plugins/kookma/shiraz/styles/notebook","text":"@media print{\n .notebook .tc-tiddler-body {\n padding-left:60px;\n margin-top:25px;\n }\n .notebook .tc-tiddler-title,\n .notebook .tc-subtitle,\n\t.notebook .tc-tags-wrapper {\n padding-left:60px;\n }\n}\n\n@media screen{\n .notebook .tc-tiddler-title,\n .notebook .tc-subtitle,\n\t.notebook .tc-tags-wrapper,\n\t.notebook .tc-tiddler-body {\n padding-left:30px;\n }\n\n}\t\n\n@media screen and (max-width:960px) {\n .notebook .tc-tiddler-title,\n .notebook .tc-subtitle,\n .notebook .tc-tags-wrapper,\n .notebook .tc-tiddler-body {\n padding-left:60px;\n }\n\n}\n/*prevent applying left border in edit mode */\n.notebook:not([data-tiddler-title^=\"Draft of\"]):before {\n content: '';\n position: absolute;\n top: 0; bottom: 0; left: 0;\n width: 50px;\n background: radial-gradient(#575450 6px, transparent 7px) repeat-y;\n background-size: 30px 30px;\n border-right: 3px solid #D44147;\n\t z-index:1;\n}\n\n.notebook .tc-tiddler-body {\n\t position: relative;\n background: linear-gradient(transparent, transparent 1.95em, #91D1D3 1.95em);\n background-size: 2em 2em;\n\t min-height:90px; \n}\n\n.notebook .tc-tiddler-body{\n\t padding-top:20px;\n font-family: \"Handlee\", cursive;\n font-weight:300;\n line-height:2em;\n color:#696969;\n}\n\n/* Setting font for other elements */\n.notebook .tc-tiddler-body pre,\n.notebook .tc-tiddler-body code,\n.notebook .tc-tiddler-body pre code\n{\n font-family: \"Handlee\", cursive;\n font-weight:300;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/sticky-footer":{"title":"$:/plugins/kookma/shiraz/styles/sticky-footer","text":".sticky-footer {\n position: absolute;\n right: 0;\n bottom: 0;\n left: 0;\n padding: 0.5rem;\n background-color: #efefef;\n text-align: center;\n margin-top: 5px;\n box-sizing: border-box;\n width: 100%;\n}\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/tables":{"title":"$:/plugins/kookma/shiraz/styles/tables","text":".table-tight{\n\tfont-size:0.8em;\n}\n\n\n/*\nThis tiddler defines the custom stylesheet for tables \nApril 13, 2018\n*/\n\n/*center aligned table*/\n.table-center {\n margin:0 auto;\n}\n\n/* Table caption at top */\n.table-caption-top caption {\n caption-side:top;\n margin-bottom:0.2rem;\n}\n\n/* Striped row table */\n.table-striped-row tr:nth-child(even) td{\n background-color:#F3F6F6; \n}\n\n/* Striped column table */\n.table-striped-col tbody tr td:nth-child(odd) {\n\tbackground-color: #F3F6F6;\n}\n\n/*Borderless table*/\n.table-borderless, \n.table-borderless thead td, \n.table-borderless th, \n.table-borderless tr, \n.table-borderless td{\n border:0;\n}\n\n/* Table lines should be used with table-borderless for abbreviations and two column layout */\n\n.table-lines thead td, .table-lines th{\n border-bottom: 2px solid #dddddd;\n\t background-color:unset;\n }\n.table-lines td{\n border-bottom: 1px solid #dddddd;\n background-color:unset;\n }\n\n/* Table hover (yellow background on mouse over) */\n.table-hover tbody tr:hover{\n color: #212529;\n background-color: #e6e6e6;\n}\n.table-hover-yellow tbody tr:hover{background-color: #ffffcc;}\n.table-hover-cyan tbody tr:hover{background-color: #e6ffff;}\n\n/* Table with colored header */\n.thead-primary thead td, .thead-primary th{background-color: #007bff; color: #fff;}\n.thead-secondary thead td, .thead-secondary th{background-color: #6c757d; color: #fff;}\n.thead-success thead td, .thead-success th{background-color: #28a745; color: #fff;}\n.thead-warning thead td, .thead-warning th{background-color: #ffc107; color: #fff;}\n.thead-danger thead td, .thead-danger th{background-color: #dc3545; color: #fff;}\n.thead-info thead td, .thead-info th{background-color: #17a2b8; color: #fff;}\n.thead-dark thead td, .thead-dark th{background-color: #343a40; color: #fff;}\n.thead-light thead td, .thead-light th{background-color: #f8f9fa; color: #212529;}\n\n/* Table with colored header correct to fill svgs with white color */\n.thead-primary > thead> tr > td svg, .thead-primary > thead> tr > th svg,\n.thead-secondary > thead> tr > td svg, .thead-secondary > thead> tr > th svg,\n.thead-success > thead> tr > td svg, .thead-success > thead> tr > th svg,\n.thead-warning > thead> tr > td svg, .thead-warning > thead> tr > th svg,\n.thead-danger > thead> tr > td svg, .thead-danger > thead> tr > th svg,\n.thead-info > thead> tr > td svg, .thead-info > thead> tr > th svg,\n.thead-dark > thead> tr > td svg, .thead-dark > thead> tr > th svg\n {fill:#ffffff; padding:0 0 3px 0; }\n\n\n.thead-primary th .tc-tiddlylink, .thead-primary th a,\n.thead-secondary th .tc-tiddlylink, .thead-primary th a,\n.thead-success th .tc-tiddlylink, .thead-primary th a,\n.thead-warning th .tc-tiddlylink, .thead-primary th a,\n.thead-danger th .tc-tiddlylink, .thead-primary th a,\n.thead-info th .tc-tiddlylink, .thead-primary th a,\n.thead-dark th .tc-tiddlylink, .thead-primary th a{color:#ffffff}\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/tiddler-title-class":{"title":"$:/plugins/kookma/shiraz/styles/tiddler-title-class","text":".title-primary .tc-title {\n color: #007bff;\n}\n.title-secondary .tc-title {\n color: #6c757d;\n}\n.title-success .tc-title {\n color: #28a745;\n}\n.title-info .tc-title {\n color: #17a2b8;\n}\n.title-warning .tc-title {\n color: #ffc107;\n}\n.title-danger .tc-title {\n color: #dc3545;\n}\n.title-light .tc-title {\n color: #f8f9fa;\n}\n.title-dark .tc-title {\n color: #343a40;\n}\n.title-white .tc-title {\n color: #fff;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/ui/colorify-buttons":{"title":"$:/plugins/kookma/shiraz/styles/ui/colorify-buttons","text":"/* These css rules makes page control buttons in beatiful color */\n\n/*page control buttons*/\n.tc-page-controls .tc-image-new-button { fill: #5EB95E; } /*New tiddler button*/\n.tc-page-controls .tc-image-options-button { fill:#8058A5; } /*Open control pannel*/\n\n/* These css rules makes tiddler viewtoolbar buttons in beatiful color */\n\n.tc-tiddler-controls .tc-image-edit-button{fill:#f37b1d}\n.tc-tiddler-controls .tc-image-info-button{fill:#0e90d2}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/shiraz/styles/ui/edit-toolbar-buttons":{"title":"$:/plugins/kookma/shiraz/styles/ui/edit-toolbar-buttons","text":"/*Tiddler edit toolbar buttons as traffic lights*/\n.tc-tiddler-controls .tc-image-delete-button {fill:#ebb;}\n.tc-tiddler-controls .tc-image-cancel-button {fill:#ed9;}\n.tc-tiddler-controls .tc-image-done-button {fill:#beb;}","type":"text/css"},"$:/plugins/kookma/shiraz/styles/ui/view-toolbar-button-visibility":{"title":"$:/plugins/kookma/shiraz/styles/ui/view-toolbar-button-visibility","text":"/* Mouseover toolbar visibility: courtesy from Tobias Beer*/\n.tc-tiddler-frame .tc-titlebar button {\n opacity: 0;\n transition: opacity .5s ease-in-out;\n}\n.tc-tiddler-frame:hover .tc-titlebar button {\n zoom: 1;\n filter: alpha(opacity=100);\n opacity: 1;\n}\n","type":"text/css"},"$:/plugins/kookma/shiraz/templates/body/color":{"title":"$:/plugins/kookma/shiraz/templates/body/color","tags":"$:/tags/Table/BodyTemplate","tbl-column-list":"color","type":"text/vnd.tiddlywiki","text":"\\procedure box(stroke-color, fill)\n\\parameters (width:40, height:18)\n<svg width=<<width>> height=<<height>> >\n<rect width=<<width>> height=<<height>> x=\"0\" y=\"0\" rx=\"10\" ry=\"10\" stroke=<<stroke-color>> fill=<<fill>> stroke-width=\"0\"/>\n</svg>\n\\end\n\\procedure show-cell() <$transclude $variable=box fill={{{ [<currentRecord>get[color]else[transparent]] }}}/>\n\\procedure show-cell-locked() <span class=\"\"><<show-cell>></span>\n\\procedure edit-cell() <$edit-text tag=input type=color tiddler=<<currentRecord>> field=<<currentColumn>>/>\n\n\n<td class=\"shiraz-cell-centered\">\n<%if [<tempTableEdit>getindex[mode]!match[edit]] %>\n<<show-cell>>\n<%elseif [<tempTableSort>getindex[sortIndex]match<currentColumn>] %><!--check if the current column is not selected for sorting-->\n<<show-cell-locked>>\n<%else%>\n<<edit-cell>>\n<%endif%>\n</td>\n<!-- when tiddler has no color\ntransparent is used. You can make it black by leaving it empty.\n-->"},"$:/plugins/kookma/shiraz/templates/body/date":{"title":"$:/plugins/kookma/shiraz/templates/body/date","tags":"$:/tags/Table/BodyTemplate","tbl-column-list":"created modified","type":"text/vnd.tiddlywiki","text":"<td class=\"shiraz-dtable-col-fixedsize\">\n<$view tiddler=<<currentRecord>> field=<<currentColumn>> format=\"date\" template=\"YYYY.0MM.0DD\"/>\n</td>"},"$:/plugins/kookma/shiraz/templates/body/default":{"title":"$:/plugins/kookma/shiraz/templates/body/default","tags":"$:/tags/Table/BodyTemplate","type":"text/vnd.tiddlywiki","text":"<$reveal type=\"nomatch\" stateTitle=<<tempTableEdit>> stateIndex=\"mode\" text=\"edit\" tag=\"td\">\n<<showCell>>\n</$reveal>\n<$reveal type=\"match\" stateTitle=<<tempTableEdit>> stateIndex=\"mode\" text=\"edit\" tag=\"td\">\n<!--check if the current column is not selected for sorting-->\n<$list filter=\"[<tempTableSort>getindex[sortIndex]match<currentColumn>]\" variable=ignore\nemptyMessage=<<editCell>> >\n <<showCell_Locked>>\n</$list>\n</$reveal>"},"$:/plugins/kookma/shiraz/templates/body/due-date":{"title":"$:/plugins/kookma/shiraz/templates/body/due-date","code-body":"yes","tags":"$:/tags/Table/BodyTemplate","tbl-column-list":"due-date due","type":"text/vnd.tiddlywiki","text":"\\procedure show-cell()\n<$let fmt=\"[UTC]YYYY.0MM.0DD\">\n<$set tiddler=<<currentRecord>> field=<<currentColumn>> name=due-date>\n<$text text={{{[<due-date>split[-]split[.]join[]format:date<fmt>]}}} />\n</$set>\n</$let>\n\\end\n\n\\procedure show-cell-locked() <span class=\"shiraz-dtable-locked-cell\"><<show-cell>></span>\n\n\\procedure edit_date() \n<$list filter=\"[[$:/plugins/kookma/pikaday]!is[missing]] :filter[lookup:no[$:/config/Plugins/Disabled/]match[no]]\"\n emptyMessage='<$edit-text tag=input type=date tiddler=<<currentRecord>> field=<<currentColumn>>/>'\n\tvariable=null >\n <<edit-cell>>\n</$list>\n\\end\n\n<$reveal type=\"nomatch\" stateTitle=<<tempTableEdit>> stateIndex=\"mode\" text=\"edit\" tag=\"td\" class=\"shiraz-dtable-date\">\n<<show-cell>>\n</$reveal>\n<$reveal type=\"match\" stateTitle=<<tempTableEdit>> stateIndex=\"mode\" text=\"edit\" tag=\"td\">\n<!--check if the current column is not selected for sorting-->\n<$list filter=\"[<tempTableSort>getindex[sortIndex]match<currentColumn>]\" variable=ignore\nemptyMessage=<<edit_date>> >\n <<show-cell-locked>>\n</$list>\n</$reveal>\n\n<!-- Part of Task Manager\n this template ALWAYS works on fields -->"},"$:/plugins/kookma/shiraz/templates/body/email":{"title":"$:/plugins/kookma/shiraz/templates/body/email","code-body":"yes","tags":"$:/tags/Table/BodyTemplate","tbl-column-list":"email","type":"text/vnd.tiddlywiki","text":"\\define display-email-address()\n<$let href={{{[<currentRecord>get<currentColumn>addprefix[mailto:]]}}} >\n<a class=\"tc-tiddlylink-external\" href=<<href>> rel=\"noopener noreferrer\" target=\"_blank\">\n<<showCell>>\n</a>\n</$let>\n\\end\n\\define display-email-address_Locked()\n<$let href={{{[<currentRecord>get<currentColumn>addprefix[mailto:]]}}} >\n<a class=\"tc-tiddlylink-external\" href=<<href>> rel=\"noopener noreferrer\" target=\"_blank\">\n<<showCell_Locked>>\n</a>\n</$let>\n\\end\n\n<$reveal type=\"nomatch\" stateTitle=<<tempTableEdit>> stateIndex=\"mode\" text=\"edit\" tag=\"td\">\n<<display-email-address>>\n</$reveal>\n<$reveal type=\"match\" stateTitle=<<tempTableEdit>> stateIndex=\"mode\" text=\"edit\" tag=\"td\">\n<!--check if the current column is not selected for sorting-->\n<$list filter=\"[<tempTableSort>getindex[sortIndex]match<currentColumn>]\" variable=ignore\nemptyMessage=<<editCell>> >\n<<display-email-address_Locked>>\n</$list>\n</$reveal>\n\n"},"$:/plugins/kookma/shiraz/templates/body/priority":{"title":"$:/plugins/kookma/shiraz/templates/body/priority","code-body":"yes","tags":"$:/tags/Table/BodyTemplate","tbl-column-list":"priority","type":"text/vnd.tiddlywiki","text":"\\define circle(color, fill)\n<svg width=\"12\" height=\"12\" >\n<circle cx=\"6\" cy=\"6\" r=\"5\" stroke=<<__color__>> fill=<<__fill__>> stroke-width=\"1\"/>\n</svg>\n\\end\n\n\\define show-cell()\n<$list filter=\"[<currentRecord>get<currentColumn>match[5]]\" variable=ignore>\n<$macrocall $name=\"circle\" color=\"#dc3545\" fill=\"#f8d7da\"/> very high\n</$list>\n<$list filter=\"[<currentRecord>get<currentColumn>match[4]]\" variable=ignore>\n<$macrocall $name=\"circle\" color=\"#ff8c00\" fill=\"#fff3cd\"/> high\n</$list>\n<$list filter=\"[<currentRecord>get<currentColumn>match[3]]\" variable=ignore>\n<$macrocall $name=\"circle\" color=\"#17a2b8\" fill=\"#d1ecf1\"/> normal\n</$list>\n<$list filter=\"[<currentRecord>get<currentColumn>match[2]]\" variable=ignore>\n<$macrocall $name=\"circle\" color=\"#007bff\" fill=\"#cce5ff\"/> low\n</$list>\n<$list filter=\"[<currentRecord>get<currentColumn>match[1]]\" variable=ignore>\n<$macrocall $name=\"circle\" color=\"#6c757d\" fill=\"#e2e3e5\"/> very low\n</$list>\n\\end\n\n\\define show-cell-locked() <span class=\"shiraz-dtable-locked-cell\"><<show-cell>></span>\n\n\\define select_priority()\n<$select tiddler=<<currentRecord>> field=<<currentColumn>> default=\"\"><option value=''>Select...</option><option value='5'>very high</option><option value='4'>high</option><option value='3'>normal</option><option value='2'>low</option><option value='1'>very low</option><option value=''>no priority</option></$select>\n\\end\n\n\n<$reveal type=\"nomatch\" stateTitle=<<tempTableEdit>> stateIndex=\"mode\" text=\"edit\" tag=\"td\" class=\"shiraz-dtable-priority\">\n<<show-cell>>\n</$reveal>\n<$reveal type=\"match\" stateTitle=<<tempTableEdit>> stateIndex=\"mode\" text=\"edit\" tag=\"td\">\n<!--check if the current column is not selected for sorting-->\n<$list filter=\"[<tempTableSort>getindex[sortIndex]match<currentColumn>]\" variable=ignore\nemptyMessage=<<select_priority>> >\n <<show-cell-locked>>\n</$list>\n<$reveal>\n\n<!-- Part of Task Manager\n this template ALWAYS works on fields\n -->"},"$:/plugins/kookma/shiraz/templates/body/status":{"title":"$:/plugins/kookma/shiraz/templates/body/status","code-body":"yes","tags":"$:/tags/Table/BodyTemplate","tbl-column-list":"status","type":"text/vnd.tiddlywiki","text":"\\define show-cell() <$transclude tiddler=<<currentRecord>> field=<<currentColumn>> mode=\"inline\" />\n\\define show-cell-locked() <span class=\"shiraz-dtable-locked-cell\"><<show-cell>></span>\n\\define select_status()\n<$select tiddler=<<currentRecord>> field=<<currentColumn>> default=\"\">\n<option value=''>Select...</option>\n<$list filter=\"open in-work on-hold complete rework closed\" variable=status><option><$text text=<<status>>/></option></$list>\n</$select>\n\\end\n\n<$reveal type=\"nomatch\" stateTitle=<<tempTableEdit>> stateIndex=\"mode\" text=\"edit\" tag=\"td\" class=\"shiraz-dtable-col-fixedsize\">\n<<show-cell>>\n</$reveal>\n<$reveal type=\"match\" stateTitle=<<tempTableEdit>> stateIndex=\"mode\" text=\"edit\" tag=\"td\">\n<!--check if the current column is not selected for sorting-->\n<$list filter=\"[<tempTableSort>getindex[sortIndex]match<currentColumn>]\" variable=ignore\nemptyMessage=<<select_status>> >\n <<show-cell-locked>>\n</$list>\n</$reveal>\n\n<!-- Part of Task Manager\n this template ALWAYS works on fields\n\tchange default staus values `open in-work on-hold complete rework closed` as you like-->"},"$:/plugins/kookma/shiraz/templates/body/tag-template":{"title":"$:/plugins/kookma/shiraz/templates/body/tag-template","code-body":"yes","type":"text/vnd.tiddlywiki","text":"<!-- This is a copy of core tiddler: $:/core/ui/TagTemplate.\nThis is NOT a dynamic table body tempalte. This template itself used by $:/plugins/kookma/shiraz/templates/body/tags\nOn update Shiraz to a new release of TiddlyWiki, check the latest TiddlyWiki $:/core/ui/TagTemplate core tiddler.\n\nRemarks: In $:/core/ui/TagTemplate every: <<qualify \"$:/state/popup/tag\">> has been changed to: {{{ [<qualify \"$:/state/popup/tag\">][<currentTable>][<currentRecord>]+[join[/]] }}}\nThis solution allows to to get unique popups in a list widget (here in dyanmic table, tags column template)\nSee https://tiddlywiki.com to learn how substituted attributes work! \n-->\n\n\n\\whitespace trim\n<span class=\"tc-tag-list-item\" data-tag-title=<<currentTiddler>>>\n<$set name=\"transclusion\" value=<<currentTiddler>>>\n\t<$macrocall $name=\"tag-pill-body\"\n\t\ttag=<<currentTiddler>>\n\t\ticon={{{ [<currentTiddler>] :cascade[all[shadows+tiddlers]tag[$:/tags/TiddlerIconFilter]!is[draft]get[text]] }}}\n\t\tcolour={{{ [<currentTiddler>] :cascade[all[shadows+tiddlers]tag[$:/tags/TiddlerColourFilter]!is[draft]get[text]] }}}\n\t\tpalette={{$:/palette}}\n\t\telement-tag=\"$button\"\n\t\telement-attributes=\"\"\"popup={{{ [<qualify \"$:/state/popup/tag\">][<currentTable>][<currentRecord>]+[join[/]] }}} dragFilter=\"[all[current]tagging[]]\" tag='span'\"\"\"\n\t/>\n\t<$reveal state={{{ [<qualify \"$:/state/popup/tag\">][<currentTable>][<currentRecord>]+[join[/]] }}} type=\"popup\" position=\"below\" animate=\"yes\" class=\"tc-drop-down\">\n\t\t<$set name=\"tv-show-missing-links\" value=\"yes\">\n\t\t\t<$transclude tiddler=\"$:/core/ui/ListItemTemplate\"/>\n\t\t</$set>\n\t\t<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/TagDropdown]!has[draft.of]]\" variable=\"listItem\"> \n\t\t\t<$transclude tiddler=<<listItem>>/> \n\t\t</$list>\n\t\t<hr>\n\t\t<$macrocall $name=\"list-tagged-draggable\" tag=<<currentTiddler>>/>\n\t</$reveal>\n</$set>\n</span>\n"},"$:/plugins/kookma/shiraz/templates/body/tags":{"title":"$:/plugins/kookma/shiraz/templates/body/tags","code-body":"yes","tags":"$:/tags/Table/BodyTemplate","tbl-column-list":"tags","type":"text/vnd.tiddlywiki","text":"<$reveal type=\"nomatch\" stateTitle=<<tempTableEdit>> stateIndex=\"mode\" text=\"edit\" tag=\"td\">\n<$list filter=\"[<currentRecord>tags[]sort[title]] :except[subfilter<sv-exclude-tags>]\">\n<$transclude tiddler=\"$:/plugins/kookma/shiraz/templates/body/tag-template\"/>\n</$list>\n</$reveal>\n<$reveal type=\"match\" stateTitle=<<tempTableEdit>> stateIndex=\"mode\" text=\"edit\" tag=\"td\">\n<!--check if the current column is not selected for sorting-->\n<$list filter=\"[<tempTableSort>getindex[sortIndex]match<currentColumn>]\" variable=\"transclusion\"\nemptyMessage=<<editCell>> >\n <<showCell_Locked>>\n</$list>\n</$reveal>"},"$:/plugins/kookma/shiraz/templates/body/tbl-checkbox":{"title":"$:/plugins/kookma/shiraz/templates/body/tbl-checkbox","tags":"$:/tags/Table/BodyTemplate","tbl-column-list":"tbl-checkbox","type":"text/vnd.tiddlywiki","text":"\\define rowStyle() color:<<colour foreground>>; background-color:<<colour table-header-background>>;\n<td style=\"width:28px;text-align:center;\">\n<$checkbox tiddler=<<currentRecord>> tag=\"Done\"\ncheckactions=\"\"\"<$action-setfield $tiddler=<<tempTableStyle>> $index=<<currentRecord>> $value=<<rowStyle>> /><$action-setfield $tiddler=<<currentRecord>> status=\"complete\"/>\"\"\"\nuncheckactions=\"\"\"<$action-setfield $tiddler=<<tempTableStyle>> $index=<<currentRecord>> /><$action-setfield $tiddler=<<currentRecord>> status=\"rework\"/>\"\"\" />\n</td>\n\n<!-- classic style\n\"color:#155724;background-color:#d4edda;\"\n<<colour tab-foreground>>; background-color:<<colour tab-background>>\n-->"},"$:/plugins/kookma/shiraz/templates/body/tbl-clone":{"title":"$:/plugins/kookma/shiraz/templates/body/tbl-clone","tags":"$:/tags/Table/BodyTemplate","tbl-column-list":"tbl-clone","type":"text/vnd.tiddlywiki","text":"\\define cloneTiddler() <$action-createtiddler $basetitle=<<currentRecord>> $template=<<currentRecord>> />\n\n<$list filter=\"[<tempTableEdit>getindex[mode]match[edit]]\" variable=ignore>\n<td style=\"width:28px;text-align:center;\">\n <$button actions=<<cloneTiddler>> class=\"tc-btn-invisible\">\n\t {{$:/core/images/clone-button}}\n\t</$button>\n</td>\n</$list>"},"$:/plugins/kookma/shiraz/templates/body/tbl-delete":{"title":"$:/plugins/kookma/shiraz/templates/body/tbl-delete","tags":"$:/tags/Table/BodyTemplate","tbl-column-list":"tbl-delete","type":"text/vnd.tiddlywiki","text":"<$list filter=\"[<tempTableEdit>getindex[mode]match[edit]]\" variable=ignore>\n<td style=\"width:28px;text-align:center;\">\n <$button class=\"tc-btn-invisible\">\n <$action-sendmessage $message=\"tm-delete-tiddler\" $param=<<currentRecord>>/>\n {{$:/core/images/delete-button}}\n </$button>\n</td>\n</$list>"},"$:/plugins/kookma/shiraz/templates/body/tbl-expand":{"title":"$:/plugins/kookma/shiraz/templates/body/tbl-expand","tags":"$:/tags/Table/BodyTemplate","tbl-column-list":"tbl-expand","type":"text/vnd.tiddlywiki","text":"<$reveal type=\"nomatch\" state=<<tempPathExpand>> text=\"show\" tag=\"td\">\n <$button class=\"tc-btn-invisible tc-tiddlylink\">\n <$action-setfield $tiddler=<<tempTableExpand>> $index=<<currentRecord>> $value=\"show\" />\n {{$:/core/images/right-arrow}}\n </$button>\n</$reveal>\n<$reveal type=\"match\" state=<<tempPathExpand>> text=\"show\" tag=\"td\">\n <$button class=\"tc-btn-invisible tc-tiddlylink\">\n <$action-setfield $tiddler=<<tempTableExpand>> $index=<<currentRecord>>/>\n {{$:/core/images/down-arrow}}\n </$button>\n</$reveal>"},"$:/plugins/kookma/shiraz/templates/body/tbl-linktype":{"title":"$:/plugins/kookma/shiraz/templates/body/tbl-linktype","code-body":"yes","tags":"$:/tags/Table/BodyTemplate","tbl-column-list":"tbl-linktype","type":"text/vnd.tiddlywiki","text":"<td class=\"shiraz-dtable-col-fixedsize\">\n<$let subtiddler-pattern=`(^${[<currentTiddler>escaperegexp[]]}$\\s*/|^${[<currentTiddler>escaperegexp[]]}$\\s*:)` >\n<$text text={{{ \n[all[current]links[]match<currentRecord>then[link]]\n[all[current]backlinks[]match<currentRecord>then[backlink]]\n[all[current]tagging[]match<currentRecord>then[tagging]]\n[<currentRecord>regexp<subtiddler-pattern>then[subtiddler]]\n~[<currentRecord>search:text<currentTiddler>then[backtransclusion]else[transclusion]] }}} />\n</$let>\n</td>\n<!-- \ntb-linktype is not sortable not editable. The priority is as below:\nlink, backlink, tagging, subtiddler, transclusion, and backtransclusion\n-->"},"$:/plugins/kookma/shiraz/templates/body/title":{"title":"$:/plugins/kookma/shiraz/templates/body/title","code-body":"yes","tags":"$:/tags/Table/BodyTemplate","tbl-column-list":"title","type":"text/vnd.tiddlywiki","text":"<td class=\"shiraz-dtable-title\">\n<$link to=<<currentRecord>>><$text text=<<currentRecord>> /></$link>\n</td>"},"$:/plugins/kookma/shiraz/templates/body/type":{"title":"$:/plugins/kookma/shiraz/templates/body/type","code-body":"yes","tags":"$:/tags/Table/BodyTemplate","tbl-column-list":"type","type":"text/vnd.tiddlywiki","text":"\\define showCell() <$transclude tiddler=<<currentRecord>> field=<<currentColumn>> mode=\"inline\" />\n<td>\n<<showCell>>\n</td>\n<!-- Note that the showCell here overrides the global showCell from table-dynamic macro -->"},"$:/plugins/kookma/shiraz/templates/footer/default":{"title":"$:/plugins/kookma/shiraz/templates/footer/default","tags":"$:/tags/Table/FooterTemplate","type":"text/vnd.tiddlywiki","text":"<$vars idx={{{ [<currentColumn>addsuffix[/]addsuffix<footerRow>] }}}>\n<$set name=getFieldOrIndex filter=\"[<fieldOrIndex>]-index\" value=\"get\" emptyValue=\"getindex\">\n<$reveal type=\"nomatch\" stateTitle=<<tempTableEdit>> stateIndex=\"mode\" text=\"edit\" tag=\"td\">\n<$transclude tiddler=<<tempTableFooter>> index=<<idx>> mode=\"inline\" />\n</$reveal>\n<$reveal type=\"match\" stateTitle=<<tempTableEdit>> stateIndex=\"mode\" text=\"edit\" tag=\"td\">\n<$edit-text tiddler=<<tempTableFooter>> index=<<idx>> tag=\"input\" class=\"shiraz-dtable-textbox\"/>\n</$reveal>\n</$set>\n</$vars>"},"$:/plugins/kookma/shiraz/templates/footer/tbl-clone":{"title":"$:/plugins/kookma/shiraz/templates/footer/tbl-clone","tags":"$:/tags/Table/FooterTemplate","tbl-column-list":"tbl-clone","type":"text/vnd.tiddlywiki","text":"<$list filter=\"[<tempTableEdit>getindex[mode]match[edit]]\" variable=ignore>\n<td></td>\n</$list>"},"$:/plugins/kookma/shiraz/templates/footer/tbl-delete":{"title":"$:/plugins/kookma/shiraz/templates/footer/tbl-delete","tags":"$:/tags/Table/FooterTemplate","tbl-column-list":"tbl-delete","type":"text/vnd.tiddlywiki","text":"<$list filter=\"[<tempTableEdit>getindex[mode]match[edit]]\" variable=ignore>\n<td></td>\n</$list>"},"$:/plugins/kookma/shiraz/templates/footer/tbl-expand":{"title":"$:/plugins/kookma/shiraz/templates/footer/tbl-expand","tags":"$:/tags/Table/FooterTemplate","tbl-column-list":"tbl-expand","type":"text/vnd.tiddlywiki","text":"<td style=\"width:28px;\"></td>"},"$:/plugins/kookma/shiraz/templates/header/default":{"title":"$:/plugins/kookma/shiraz/templates/header/default","tags":"$:/tags/Table/HeaderTemplate","type":"text/vnd.tiddlywiki","text":"<$reveal type=\"nomatch\" stateTitle=<<tempTableSort>> stateIndex=\"sortIndex\" text=<<currentColumn>> tag=\"th\">\n<$button setTitle=<<tempTableSort>> setIndex=\"sortIndex\" setTo=<<currentColumn>> class=\"tc-btn-invisible tc-tiddlylink\" >\n<$action-setfield $tiddler=<<tempTableSort>> $index=\"hasnegate\" $value=\"false\"/>\n<$action-setfield $tiddler=<<tempTableSort>> $index=\"negate\" $value=\"\"/>\n<span style=\"text-transform: capitalize;\"><$text text=<<currentColumn>>/></span>\n</$button>\n</$reveal>\n<$reveal type=\"match\" stateTitle=<<tempTableSort>> stateIndex=\"sortIndex\" text=<<currentColumn>> tag=\"th\">\n<$list filter=\"[<tempTableSort>getindex[hasnegate]match[false]]\" variable=ignore><!--set negate for sort-->\n<$button setTitle=<<tempTableSort>> setIndex=\"hasnegate\" setTo=\"true\" class=\"tbl-sort-svg tc-btn-invisible tc-tiddlylink\" >\n<$action-setfield $tiddler=<<tempTableSort>> $index=\"negate\" $value=\"!\"/>\n<span style=\"text-transform: capitalize;\"><$text text=<<currentColumn>>/></span> {{$:/core/images/down-arrow}}\n</$button>\n</$list>\n<$list filter=\"[<tempTableSort>getindex[hasnegate]match[true]]\" variable=ignore><!--remove negate for sort-->\n<$button setTitle=<<tempTableSort>> setIndex=\"hasnegate\" setTo=\"false\" class=\"tbl-sort-svg tc-btn-invisible tc-tiddlylink\" >\n<$action-setfield $tiddler=<<tempTableSort>> $index=\"negate\" $value=\"\"/>\n<span style=\"text-transform: capitalize;\"><$text text=<<currentColumn>>/></span> {{$:/core/images/up-arrow}}\n</$button>\n</$list>\n</$reveal>\n"},"$:/plugins/kookma/shiraz/templates/header/tbl-checkbox":{"title":"$:/plugins/kookma/shiraz/templates/header/tbl-checkbox","tags":"$:/tags/Table/HeaderTemplate","tbl-column-list":"tbl-checkbox","type":"text/vnd.tiddlywiki","text":"\\define rowStyle() color:<<colour foreground>>; background-color:<<colour table-header-background>>;\n\n\\define chk-checkactions()\n<$list filter=\"[subfilter<inputFilter>]\" variable=\"currentRecord\">\n<$action-listops $tiddler=<<currentRecord>> $tags=\"+[append[Done]]\" />\n<$action-setfield $tiddler=<<currentRecord>> status=\"complete\"/>\n<$action-setfield $tiddler=<<tempTableStyle>> $index=<<currentRecord>> $value=<<rowStyle>> />\n</$list>\n\\end\n\\define chk-uncheckactions()\n<$list filter=\"[subfilter<inputFilter>]\" variable=\"currentRecord\">\n<$action-listops $tiddler=<<currentRecord>> $tags=\"+[remove[Done]]\" />\n<$action-setfield $tiddler=<<currentRecord>> status=\"rework\"/>\n<$action-setfield $tiddler=<<tempTableStyle>> $index=<<currentRecord>> />\n</$list>\n\\end\n\n<th class=\"shiraz-dtable-svg\">\n<$checkbox checkactions=<<chk-checkactions>> uncheckactions=<<chk-uncheckactions>> />\n</th>\n\n<!-- old style for checked row\n\"color:#155724;background-color:#d4edda;\"\n-->"},"$:/plugins/kookma/shiraz/templates/header/tbl-clone":{"title":"$:/plugins/kookma/shiraz/templates/header/tbl-clone","tags":"$:/tags/Table/HeaderTemplate","tbl-column-list":"tbl-clone","type":"text/vnd.tiddlywiki","text":"<$list filter=\"[<tempTableEdit>getindex[mode]match[edit]]\" variable=ignore>\n<th class=\"shiraz-dtable-svg\">\n<span>\n<$button class=\"tc-btn-invisible\" disabled=yes tooltip=\"disabled button\" style=\"cursor:default\">\n{{$:/core/images/clone-button}}\n</$button>\n</span>\n</th>\n</$list>"},"$:/plugins/kookma/shiraz/templates/header/tbl-delete":{"title":"$:/plugins/kookma/shiraz/templates/header/tbl-delete","tags":"$:/tags/Table/HeaderTemplate","tbl-column-list":"tbl-delete","type":"text/vnd.tiddlywiki","text":"<$list filter=\"[<tempTableEdit>getindex[mode]match[edit]]\" variable=ignore>\n<th class=\"shiraz-dtable-svg\">\n <span>\n <$button class=\"tc-btn-invisible\">\n <$action-setfield $tiddler=\"$:/temp/tables/delete-all\" $index=<<currentTable>> $value=\"to-be-deleted\"/>\n {{$:/core/images/delete-button}}\n </$button>\n </span>\n</th>\n</$list>"},"$:/plugins/kookma/shiraz/templates/header/tbl-expand":{"title":"$:/plugins/kookma/shiraz/templates/header/tbl-expand","tags":"$:/tags/Table/HeaderTemplate","tbl-column-list":"tbl-expand","type":"text/vnd.tiddlywiki","text":"<th class=\"shiraz-dtable-svg\">\n <$list filter=\"[<tempTableExpand>indexes[]limit[1]]\">\n <$button class=\"tc-btn-invisible\">{{$:/core/images/fold-button}}\n <$action-setfield $tiddler=<<tempTableExpand>> text=\"\"/>\n </$button>\n </$list>\n</th>"},"$:/plugins/kookma/shiraz/templates/header/tbl-linktype":{"title":"$:/plugins/kookma/shiraz/templates/header/tbl-linktype","tags":"$:/tags/Table/HeaderTemplate","tbl-column-list":"tbl-linktype","type":"text/vnd.tiddlywiki","text":"<th class=\"shiraz-default-cursore\">Linktype</th>\n<!-- \ntb-linktype is not sortable not editable\n-->"},"$:/plugins/kookma/shiraz/ui/Buttons/SwitchPalette":{"title":"$:/plugins/kookma/shiraz/ui/Buttons/SwitchPalette","caption":"{{$:/plugins/kookma/shiraz/images/palette-switch}} {{$:/language/Buttons/Shiraz/Caption}}","dark-palette":"$:/palettes/Nord","description":"Toggle between light/warm/dark color palette","light-palette":"$:/palettes/Vanilla","list-after":"","tags":"$:/tags/PageControls","type":"text/vnd.tiddlywiki","warm-palette":"$:/palettes/SolarFlare","text":"\\define switchActions() <$action-setfield $tiddler=\"$:/palette\" $field=\"text\" $value=<<next-palette>> />\n\\whitespace trim\n<$let \nselected-palettes={{{\n [<thisTiddler>get[light-palette]]\n [<thisTiddler>get[warm-palette]]\n\t[<thisTiddler>get[dark-palette]] +[join[ ]] }}}\n\t\ndefault-palette={{{\n [<thisTiddler>get[light-palette]]\n\t[[$:/palettes/Vanilla]] +[first[]] }}}\t\t\t\t\t \nnext-palette={{{\n [[$:/palette]get[text]]\n +[cycle<selected-palettes>] +[last[]]\n :else[<default-palette>] }}}\t\t\t\t\n>\n<$button \n tooltip={{$:/language/Buttons/Shiraz/Hint}} \n aria-label={{$:/language/Buttons/Shiraz/Caption}} \n class=<<tv-config-toolbar-class>>\n\tactions=<<switchActions>>\n>\n <$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n {{$:/plugins/kookma/shiraz/images/palette-switch}}\n </$list>\n\n <$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n <span class=\"tc-btn-text\">switch palettes</span>\n </$list>\n</$button>\n</$let>"},"$:/plugins/kookma/shiraz/ui/ControlPanel/Settings":{"title":"$:/plugins/kookma/shiraz/ui/ControlPanel/Settings","caption":"Shiraz","tags":"$:/tags/ControlPanel/SettingsTab $:/tags/MoreSideBar","type":"text/vnd.tiddlywiki","text":"\\define dynamictables-editortype() $:/config/shiraz/dynamictables/editor-type\n\nThese settings let you customise the behaviour of Shiraz plugin.\n\n---\n\n;Show Shiraz setting in more sidebar\n:<$checkbox tiddler=\"$:/plugins/kookma/shiraz/ui/ControlPanel/Settings\" tag=\"$:/tags/MoreSideBar\"> Show setting in more sidebar</$checkbox>\n\n;Options\n:<$checkbox tiddler=\"$:/plugins/kookma/shiraz/styles/multicols/storyriver\" tag=\"$:/tags/Stylesheet\"> Multicolumn story river</$checkbox>\n:<$checkbox tiddler=\"$:/plugins/kookma/shiraz/styles/ui/colorify-buttons\" tag=\"$:/tags/Stylesheet\"> Colorful UI buttons</$checkbox>\n:<$checkbox tiddler=\"$:/plugins/kookma/shiraz/styles/ui/view-toolbar-button-visibility\" tag=\"$:/tags/Stylesheet\"> Hide tiddler's view toolbar and show on mouse hover</$checkbox>\n:<$checkbox tiddler=\"$:/plugins/kookma/shiraz/styles/ui/edit-toolbar-buttons\" tag=\"$:/tags/Stylesheet\"> Traffic lights for edit toolbar buttons</$checkbox>\n:<$checkbox tiddler=\"$:/plugins/kookma/shiraz/styles/colorful-sidebar-tab\" tag=\"$:/tags/Stylesheet\"> Colorify sidebar tabs</$checkbox>\n\n;Set dark and light palettes\n{{$:/plugins/kookma/shiraz/ui/set-palette}}\n\n; Choose Local Editor for Dynamic Table\n:<$checkbox tiddler=<<dynamictables-editortype>> field=\"text\" checked=\"main-editor\" unchecked=\"simple-textarea\" default=\"simple-textarea\"> Use Tiddlywiki main editor </$checkbox>\n:<$checkbox tiddler=<<dynamictables-editortype>> field=\"text\" checked=\"simple-textarea\" unchecked=\"main-editor\" default=\"simple-textarea\"> Use simple text area </$checkbox>"},"$:/plugins/kookma/shiraz/ui/set-palette":{"title":"$:/plugins/kookma/shiraz/ui/set-palette","dark-palette":"$:/palettes/Nord","light-palette":"$:/palettes/Vanilla","type":"text/vnd.tiddlywiki","warm-palette":"$:/palettes/SolarFlare","text":"\\define switchpaletteTid() $:/plugins/kookma/shiraz/ui/Buttons/SwitchPalette\n\\define filterDay() [all[tiddlers+shadows]tag[$:/tags/Palette]] :filter[get[color-scheme]match[light]] -[enlist<filterWarm>]\n\\define filterNight() [all[tiddlers+shadows]tag[$:/tags/Palette]] :filter[get[color-scheme]match[dark]] -[enlist<filterWarm>]\n\\define filterWarm() \n$:/palettes/DesertSand\n$:/palettes/SolarFlare\n$:/palettes/SolarizedLight\n\\end\n\n\\define selectPelette(title, filter, default, tiddler, field)\n<label class=\"kk-switch-label\">$title$</label>\n<$select tiddler=<<__tiddler__>> field=<<__field__>> default=\"\">\n<$list filter=<<__filter__>> >\n<option value=<<currentTiddler>> >\n<$view field='name'>\n <$view field='title'/>\n</$view>\n</option>\n</$list>\n</$list>\n\\end\n\n<div style=\"margin-left:40px\">\n\n<$macrocall $name=selectPelette \n title=\"Light palette\" filter=<<filterDay>> \n\tdefault=\"$:/palettes/Vanilla\" field=\"light-palette\" \n\ttiddler=<<switchpaletteTid>> />\t\n\t\n<$macrocall $name=selectPelette \n title=\"Warm palette\" filter=<<filterWarm>> \n\tdefault=\"$:/palettes/SolarFlare\" field=\"warm-palette\" \n\ttiddler=<<switchpaletteTid>> />\n\n<$macrocall $name=selectPelette \n title=\"Dark palette\" filter=<<filterNight>> \n\tdefault=\"$:/palettes/Nord\" field=\"dark-palette\" \n\ttiddler=<<switchpaletteTid>> /><br>\n\n<label class=\"kk-switch-label\">Reset to default</label>\n<$button> {{$:/core/images/erase}}\n\n<$action-setfield \n $tiddler=<<switchpaletteTid>> \n\t$field=dark-palette \n $value={{!!dark-palette}} />\n\n<$action-setfield \n $tiddler=<<switchpaletteTid>> \n\t$field=warm-palette \n\t$value={{!!warm-palette}} />\t\n\t\n<$action-setfield \n $tiddler=<<switchpaletteTid>> \n\t$field=light-palette \n\t$value={{!!light-palette}} />\t\n\t\n<$action-setfield \n $tiddler=\"$:/palette\" \n\t$field=text\n\t$value={{!!light-palette}} />\t\t\n</$button>\n</div>\n<style>\n.kk-switch-label{\n width:105px;\n display: inline-block;\n}\n</style>\t"},"$:/plugins/kookma/shiraz/viewtemplates/sticky-footer":{"title":"$:/plugins/kookma/shiraz/viewtemplates/sticky-footer","list-after":"","tags":"$:/tags/ViewTemplate","type":"text/vnd.tiddlywiki","text":"<$list filter=\"[all[current]has[sticky-footer]]\">\n<div class=\"sticky-footer\">\n{{!!sticky-footer}}\n</div>\n</$list>\n"}}} \ No newline at end of file diff --git a/tiddlers/TCTSystem/plugins/kookma/shiraz.json.meta b/tiddlers/TCTSystem/plugins/kookma/shiraz.json.meta index 72659eda..803f4072 100644 --- a/tiddlers/TCTSystem/plugins/kookma/shiraz.json.meta +++ b/tiddlers/TCTSystem/plugins/kookma/shiraz.json.meta @@ -1,11 +1,12 @@ author: Mohammad Rahmani -core-version: >=5.2.2 +core-version: >=5.2.7 dependents: description: extended markups, styles, images, tables, and macros list: readme license history name: Shiraz plugin-type: plugin source: https://github.com/kookma/TW-Shiraz +stability: STABILITY_2_STABLE title: $:/plugins/kookma/shiraz type: application/json -version: 2.9.0 \ No newline at end of file +version: 2.9.7 \ No newline at end of file diff --git a/tiddlers/TCTSystem/plugins/kookma/tamasha.json b/tiddlers/TCTSystem/plugins/kookma/tamasha.json index 9af307da..168233c9 100644 --- a/tiddlers/TCTSystem/plugins/kookma/tamasha.json +++ b/tiddlers/TCTSystem/plugins/kookma/tamasha.json @@ -1 +1 @@ -{"tiddlers":{"$:/plugins/kookma/tamasha/animations/slideIn":{"title":"$:/plugins/kookma/tamasha/animations/slideIn","text":"/* https://www.w3schools.com/w3css/w3css_animate.asp*/\n.tamasha-animation-slidedown{position:relative;animation:animatetop 0.4s}@keyframes animatetop{from{top:-300px;opacity:0} to{top:0;opacity:1}}\n.tamasha-animation-slideleft{position:relative;animation:animateleft 0.4s}@keyframes animateleft{from{left:-300px;opacity:0} to{left:0;opacity:1}}\n.tamasha-animation-slideright{position:relative;animation:animateright 0.4s}@keyframes animateright{from{right:-300px;opacity:0} to{right:0;opacity:1}}\n.tamasha-animation-slideup{position:relative;animation:animatebottom 0.4s}@keyframes animatebottom{from{bottom:-300px;opacity:0} to{bottom:0;opacity:1}}\n.tamasha-animation-slidezoom {animation:animatezoom 0.8s ease-out}@keyframes animatezoom{from{transform:scale(0)} to{transform:scale(1)}}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/history":{"title":"$:/plugins/kookma/tamasha/history","tags":"","type":"text/vnd.tiddlywiki","text":"Full change log https://kookma.github.io/TW-Tamasha/#ChangeLog\n\n* ''0.5.0'' -- 2021.02.10 -- maintenance release\n* ''0.4.2'' -- 2021.02.02 -- linear scaling of font size, new kimia theme\n* ''0.4.1'' -- 2021.02.01 -- css and ui cleanup\n* ''0.4.0'' -- 2021.01.27 -- dynamic font size for slide\n* ''0.3.0'' -- 2021.01.25 -- new shortcut keys, new transition effects for progress bar\n* ''0.2.0'' -- 2021.01.24 -- beta release\n* ''0.1.0'' -- 2020.12.12 -- alpha release\n"},"$:/plugins/kookma/tamasha/license":{"title":"$:/plugins/kookma/tamasha/license","tags":"","type":"text/vnd.tiddlywiki","text":"Distributed under an MIT license.\n\nCopyright (c) 2020 - 2023 [[Mohammad Rahmani|https://github.com/kookma]]\n\n<<<\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n<<<"},"$:/plugins/kookma/tamasha/macros/frame":{"title":"$:/plugins/kookma/tamasha/macros/frame","tags":"$:/tags/Macro/Tamasha","type":"text/vnd.tiddlywiki","text":"\\define presentation-frame-focus-selector() .$(myState)$\n\\define presentation-frame-class() tamasha-presentation-frame $(myState)$\n\n\\define slideBackground() [<stateNavigatorTid>get[text]] ~[tag<mainTag>first[]] :and[get[background]addprefix[background-color:]addsuffix[;]]\n"},"$:/plugins/kookma/tamasha/macros/navigator":{"title":"$:/plugins/kookma/tamasha/macros/navigator","tags":"$:/tags/Macro/Tamasha","type":"text/vnd.tiddlywiki","text":"\\define stateNavigatorTid() $:/state/tamasha/navigator/$(currentTiddler)$/$(myState)$\n\\define loopSlides() [tag<mainTag>$(loopState)$[]]\n\n\\define goHome() <$action-setfield $tiddler=<<stateNavigatorTid>> text={{{[tag<mainTag>first[]]}}}/>\n\\define goEnd() <$action-setfield $tiddler=<<stateNavigatorTid>> text={{{[tag<mainTag>last[]]}}}/>\n\n\n\n\\define nextSlide() \n<$vars currentTid={{{[<stateNavigatorTid>get[text]] ~[tag<mainTag>first[]]}}}>\n<$list filter=\"[<loopShow>match[yes]then[first]else[last]]\" variable=\"loopState\">\n<$action-setfield $tiddler=<<stateNavigatorTid>> \n text={{{ [tag<mainTag>after<currentTid>] ~[subfilter<loopSlides>] }}} />\n</$list>\t\n</$vars>\n\\end\n\n\\define previousSlide()\n<$vars currentTid={{{[<stateNavigatorTid>get[text]]}}}>\n<$list filter=\"[<loopShow>match[yes]then[last]else[first]]\" variable=\"loopState\">\n<$action-setfield $tiddler=<<stateNavigatorTid>> \n text={{{ [tag<mainTag>before<currentTid>] ~[subfilter<loopSlides>] }}} />\n</$list>\t\t\n</$vars>\n\\end\n\n\\define navigator()\n<$list filter=\"[<stateNavigatorTid>get[text]] ~[tag<mainTag>first[]]\" variable=\"currentSlide\" emptyMessage=\"No slide existed or wrong input\">\n\t<div class=<<animationClass>> ><!-- this div also used for flexbox layout -->\n\t<$transclude tiddler=<<myTemplate>> mode=block/>\n\t</div>\n</$list> \n\\end"},"$:/plugins/kookma/tamasha/macros/presenter":{"title":"$:/plugins/kookma/tamasha/macros/presenter","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define presenter(tag, loop:\"no\", footer:\"\", template:\"vanilla\", theme:\"vanda\", animation, state)\n\\import [all[tiddlers+shadows]tag[$:/tags/Macro/Tamasha]]\n<$vars\n mainTag=<<__tag__>>\n loopShow=<<__loop__>>\n slideFooter=<<__footer__>> \n myTemplate={{{ [all[tiddlers+shadows]tag[$:/tags/Tamasha/Template]search:title<__template__>] ~$:/plugins/kookma/tamasha/templates/vanilla }}} \n myTheme={{{ [all[tiddlers+shadows]tag[$:/tags/Tamasha/Theme]getindex<__theme__>] ~[<__theme__>] }}}\n animationClass={{{[<__animation__>trim[]!is[blank]addprefix[tamasha-animation-]]}}}\n myState={{{ [<__state__>trim[]is[blank]then[presenter]else<__state__>addsuffix<qualify>] }}}\n SlidesCount={{{[tag<__tag__>count[]]}}}\n >\n<$keyboard key=\"F\" actions=<<toggle-presentation-mode>> >\n<$keyboard key=\"escape\" actions=<<toggle-author-mode>> >\n<$keyboard key=\"H home\" actions=<<goHome>> >\n<$keyboard key=\"E end\" actions=<<goEnd>> >\n<$keyboard key=\"right down enter space\" actions=<<nextSlide>> >\n<$keyboard key=\"left up backspace\" actions=<<previousSlide>> >\n\n<div class=<<myTheme>> ><!-- apply theme -->\n<div class=<<presentation-frame-class>> tabindex=1 style={{{[subfilter<slideBackground>]}}} >\n\n<!-- Presentation Mode -->\n<div class={{{[<statePresentTid>getindex[overlayClass]] ~[[tamasha-overlay]]}}} style={{{[subfilter<slideBackground>]}}} >\n<$transclude tiddler=\"$:/plugins/kookma/tamasha/ui/slide\" mode=block/>\n</div>\n\n<!-- Author mode -->\n<div><!-- reserved for further development-->\n<$transclude tiddler=\"$:/plugins/kookma/tamasha/ui/slide\" mode=block/>\n</div>\n\n</div>\n</div>\n\n</$keyboard>\n</$keyboard>\n</$keyboard>\n</$keyboard>\n</$keyboard>\n</$keyboard>\n\n<$reveal type=\"match\" stateTitle=<<statePresentTid>> stateIndex=\"mode\" text=\"presentation-mode\">\n<style>body { overflow: hidden; /* Hide scrollbars */ }</style>\n</$reveal>\n\n</$vars>\n\\end\n"},"$:/plugins/kookma/tamasha/macros/toggle":{"title":"$:/plugins/kookma/tamasha/macros/toggle","tags":"$:/tags/Macro/Tamasha","type":"text/vnd.tiddlywiki","text":"\\define statePresentTid() $:/state/tamasha/presentation/$(currentTiddler)$/$(myState)$\n\n\\define toggle-presentation-mode() \n<$action-setfield $tiddler=<<statePresentTid>> $index=\"overlayClass\" $value=\"tamasha-overlay open\"/>\n<$action-setfield $tiddler=<<statePresentTid>> $index=\"mode\" $value=\"presentation-mode\"/>\n<$action-sendmessage $message=\"tm-focus-selector\" $param=<<presentation-frame-focus-selector>> />\n\\end\n\\define toggle-author-mode()\n<$action-setfield $tiddler=<<statePresentTid>> $index=\"overlayClass\" $value=\"tamasha-overlay\"/>\n<$action-setfield $tiddler=<<statePresentTid>> $index=\"mode\" $value=\"author-mode\"/>\n<$action-sendmessage $message=\"tm-focus-selector\" $param=<<presentation-frame-focus-selector>> />\n\\end"},"$:/plugins/kookma/tamasha/readme":{"title":"$:/plugins/kookma/tamasha/readme","tags":"","type":"text/vnd.tiddlywiki","text":"; Tamasha\nTamasha is a presentation app based on Tiddlywiki 5.1.23+\n\n;Code and demo\nFor learning plugin features, syntax, tutorial and examples see the plugin demo and code pages\n\n* Demo: https://kookma.github.io/TW-Tamasha/\n* Code: https://github.com/kookma/TW-Tamasha\n"},"$:/plugins/kookma/tamasha/styles/buttons":{"title":"$:/plugins/kookma/tamasha/styles/buttons","tags":"$:/tags/Stylesheet","type":"text/vnd.tiddlywiki","text":".tamasha-viewer-nav {\n\tvisibility: hidden;\n\topacity: 0.02;\n transition: visibility 0.5s, opacity 0.75s linear;\n\n\tfont-size:1.3em;\n\tbackground-color: <<colour background>>;\n\t/*border: 2px solid #9a9a9aaa;*/\n}\n\n.tamasha-presentation-frame:hover .tamasha-viewer-nav {\n\tvisibility: visible;\n\topacity: 0.6;\n}\n\n.tamasha-nav-button svg{\n\tfill: #9a9a9a;\n}\n\n.tamasha-nav-button:hover svg{\n/*\tfill: #ffffff; */\n fill: <<color foreground>>\n}\n.tamasha-nav-button,\n.tamasha-nav-button:focus {\n\toutline:none;\n}\n\n.tamasha-viewer-nav .tamasha-toolbar-separator {\n\tbackground-color:#9a9a9a;\n}\n\n"},"$:/plugins/kookma/tamasha/styles/content":{"title":"$:/plugins/kookma/tamasha/styles/content","text":".tamasha-slide-content{\t\nborder:1px dotted orange; /*for debug purpose*/\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/styles/footer":{"title":"$:/plugins/kookma/tamasha/styles/footer","text":".tamasha-slide-footer{\t\n/*\tborder-bottom: 1px dotted green;*/\n/*\t font-size:18px;\n line-height:24px;\t\n\tfont-weight:400; */\n\n}\n\n.tamasha-slide-footer span{\n\topacity: 0.8;\n/*\tcolor: darkblue;*/\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/styles/frame":{"title":"$:/plugins/kookma/tamasha/styles/frame","tags":"$:/tags/Stylesheet","type":"text/vnd.tiddlywiki","text":".tamasha-presentation-frame{\n border: 1px solid #B2FBF6CC;\n}\n.tamasha-presentation-frame:focus{\n\toutline:none;\n}"},"$:/plugins/kookma/tamasha/styles/layout/buttons":{"title":"$:/plugins/kookma/tamasha/styles/layout/buttons","text":"/* buttons, slidenumber and progressbar are positioned based on\n .tamasha-presentation-frame\n*/\n\n.tamasha-viewer-nav {\n\tleft: 1.5rem;\n\tposition: absolute;\n\tbottom: 1rem;\n\tborder-radius:2px;\n\tpadding:4px 10px;\n}\n\n.tamasha-viewer-nav .tamasha-toolbar-separator {\n\tdisplay:inline-block;\n\twidth:2px;\n\theight:1.3em;\n\tmargin:0 4px;\n\tvertical-align: top;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/styles/layout/content":{"title":"$:/plugins/kookma/tamasha/styles/layout/content","text":".tamasha-slide-content {\n\tfont-size: 1.3rem;\n\tline-height: 1.85rem;\n\tpadding: 5px 30px;\n\tmargin: 0 auto;\n\tmax-width: 900px;\n\theight:480px;\n\toverflow: hidden;\n\tmargin-bottom: 4rem;\n}\n\n.tamasha-overlay .tamasha-slide-content {\n\tfont-size: clamp(1rem, 4vh, 2.5rem);\n\tline-height: clamp(1.5rem, 6vh, 4rem);\n\theight: auto;\n\tpadding: 10px 8vh;\n}\n\n/* keep images inside slide content */\n.tamasha-slide-content img{\n\tmax-width:95%;\n\tmax-height:95%;\n}\n\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/styles/layout/footer":{"title":"$:/plugins/kookma/tamasha/styles/layout/footer","text":".tamasha-slide-footer{\t\n\tposition: absolute; \n\tleft: 0; \n\tright: 0; \n\tmargin-left: auto; \n\tmargin-right: auto; \n\tbottom:1rem;\n\tmax-width:100%;\n\toverflow:hidden;\n\ttext-align:center;\n\tdisplay:inline-block;\n\tmax-width:40%;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/styles/layout/frame":{"title":"$:/plugins/kookma/tamasha/styles/layout/frame","text":".tamasha-presentation-frame{\n\tposition:relative;\t\t\n\twidth:100%;\n\theight:100%;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/styles/layout/overlay":{"title":"$:/plugins/kookma/tamasha/styles/layout/overlay","text":".tamasha-overlay {\n\theight: 0; \n\tposition:fixed;\n\ttop:0; left:0;\n\tz-index:1500;\n\toverflow-y: hidden;\n\twidth:100%;\n}\n\n.tamasha-overlay.open {\n\theight: 100%; /* use full screen height */\n\tmax-height:100%;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/styles/layout/progressbar":{"title":"$:/plugins/kookma/tamasha/styles/layout/progressbar","text":".tamasha-progress{\n\tleft:0;\n\tbottom: 0;\n\tposition: absolute;\n\twidth:100%;\n\theight:4px;\n}\n\n.tamasha-progress .bar{\n\tdisplay: block;\n\theight:100%;\n\twidth:100%; \n\ttransform-origin:0 0;\n\ttransform:sclaeX(0);\n\ttransition: transform 0.8s ease-in-out;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/styles/layout/slidelist":{"title":"$:/plugins/kookma/tamasha/styles/layout/slidelist","text":".tamasha-popup{\n\tleft: 50px;\n\tposition: absolute;\n\tbottom: 60px;\n\n\tpadding-right:30px; /* to adapt with ol used inside popup */\n\tborder-radius:4px;\n\n\tmax-height:50%;\n\toverflow-y:auto;\n\tmax-width:50%;\n}\n\n.tamasha-popup .tc-btn-invisible{\n\ttext-align:left;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/styles/layout/slidenumber":{"title":"$:/plugins/kookma/tamasha/styles/layout/slidenumber","text":".tamasha-slide-number {\n\tposition: absolute;\n\tbottom: 1rem;\n\tright: 1.5rem;\n}\n\n.tamasha-number-circle {\n\tbox-sizing: content-box; \n\twidth: 1.5em;\n\theight: 1.5em;\n\tline-height: 1.5em;\n\ttext-align: center;\n\tborder-radius: 50%; \n}\n/* change the circle size: increase line-height=width=height */","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/styles/layout/uisetting":{"title":"$:/plugins/kookma/tamasha/styles/layout/uisetting","tags":"$:/tags/Stylesheet","type":"text/vnd.tiddlywiki","text":".noslidenumber .tamasha-slide-number{display:none}\n.noprogressbar .tamasha-progress{display:none}\n.nonavbutton .tamasha-viewer-nav {display:none}"},"$:/plugins/kookma/tamasha/styles/overlay":{"title":"$:/plugins/kookma/tamasha/styles/overlay","tags":"$:/tags/Stylesheet","type":"text/vnd.tiddlywiki","text":".tamasha-overlay {\n\ttransition-property: all;\n\ttransition-duration: 1s;\n\ttransition-timing-function: cubic-bezier(0, 1, 0.5, 1);\n\tbackground-color:<<colour background>>;\n}\n"},"$:/plugins/kookma/tamasha/styles/progressbar":{"title":"$:/plugins/kookma/tamasha/styles/progressbar","tags":"$:/tags/Stylesheet","type":"text/vnd.tiddlywiki","text":"\\define progress-light() #e5e5e5\n\\define progress-dark() #494949\n\\define bar-light() #9a9a9a\n\\define bar-dark() #d79921\n\n<$vars \nlight=\"Blanca Blue Muted ContrastLight DesertSand Rocker SolarFlare SolarizedLight SpartanDay Vanilla [[Notebook Beige]] [[Notebook Grey]]\"\ndark=\"ContrastDark CupertinoDark DarkPhotos GruvboxDark Nord SolarizedDark SpartanNight Twilight\"\npalette={{{ [[$:/palette]get[text]removeprefix[$:/palettes/]] }}}\n>\n<$list filter=\"[enlist<dark>search:title<palette>then[dark]else[light]]\" variable=colorMacro>\n\n.tamasha-progress{\n\tbackground-color:<$macrocall $name={{{[<colorMacro>addprefix[progress-]]}}} />;\n}\n.tamasha-progress .bar{\n\tbackground-color:<$macrocall $name={{{[<colorMacro>addprefix[bar-]]}}} />;\n}\n</$list>\n</$vars>"},"$:/plugins/kookma/tamasha/styles/scrollbars":{"title":"$:/plugins/kookma/tamasha/styles/scrollbars","text":"/* custom scrollbar */\n.tamasha-popup::-webkit-scrollbar {\n width: 20px;\n}\n\n.tamasha-popup::-webkit-scrollbar-track {\n background-color: transparent;\n}\n\n.tamasha-popup::-webkit-scrollbar-thumb {\n background-color: #666666;\n border-radius: 20px;\n border: 6px solid transparent;\n background-clip: content-box;\n}\n\n.tamasha-popup::-webkit-scrollbar-thumb:hover {\n background-color: #909090; /* #a8bbbf;*/\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/styles/slidelist":{"title":"$:/plugins/kookma/tamasha/styles/slidelist","text":".tamasha-popup{\n\tbackground-color: #323232;\n\tfont-size:1em;\n\tbox-shadow:0 4px 10px 0 rgba(0,0,0,0.2),0 4px 20px 0 rgba(0,0,0,0.19);\n}\n\n.tamasha-popup .tc-btn-invisible{\n\tcolor:#b9b9b9;\n}\n\n.tamasha-popup button:focus{\n\toutline:none;\n}\n\n/* change number color*/\n.tamasha-popup li::marker { \n\tcolor:#b9b9b9;\n}\n\n/* slide in view: current slide in the slideList */\n.tamasha-popup .currentSlide .tc-btn-invisible,\n.tamasha-popup .currentSlide::marker {\n\tcolor:#fff;\n\tfont-size:0.9em;\n}\n\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/styles/slidenumber":{"title":"$:/plugins/kookma/tamasha/styles/slidenumber","tags":"$:/tags/Stylesheet","type":"text/vnd.tiddlywiki","text":".tamasha-number-circle {\n\tborder: 0.1em solid #666;\n\tfont-size: 1.2em;\n\tfont-weight:300;\n\tbackground: <<colour background>>;\n\tcolor: #666;\n\topacity:0.9;\n}"},"$:/plugins/kookma/tamasha/templates/nolink":{"title":"$:/plugins/kookma/tamasha/templates/nolink","tags":"$:/tags/Tamasha/Template","type":"text/vnd.tiddlywiki","text":"\\define tv-wikilinks() no\n<h2 class=\"title\"><$transclude tiddler=<<currentSlide>> field=title /></h2>\n<$transclude tiddler=<<currentSlide>> mode=block/>"},"$:/plugins/kookma/tamasha/templates/simple":{"title":"$:/plugins/kookma/tamasha/templates/simple","tags":"$:/tags/Tamasha/Template","type":"text/vnd.tiddlywiki","text":"<$transclude tiddler=<<currentSlide>> mode=block/>"},"$:/plugins/kookma/tamasha/templates/vanilla":{"title":"$:/plugins/kookma/tamasha/templates/vanilla","tags":"$:/tags/Tamasha/Template","type":"text/vnd.tiddlywiki","text":"<h2 class=\"title\"><$link to=<<currentSlide>> /></h2>\n<$transclude tiddler=<<currentSlide>> mode=block/>"},"$:/plugins/kookma/tamasha/themes/composite":{"title":"$:/plugins/kookma/tamasha/themes/composite","text":"vanda: vanda\nmitra: mitra\nkimia: kimia\nroya: vanda roya\nhoma: vanda homa\nleila: mitra leila\nirana: vanda irana","type":"application/x-tiddler-dictionary","tags":"$:/tags/Tamasha/Theme"},"$:/plugins/kookma/tamasha/themes/homa":{"title":"$:/plugins/kookma/tamasha/themes/homa","text":".homa .tamasha-presentation-frame, \n.homa .tamasha-overlay {\n\tcolor:#ffffff;\n/*\tbackground-color:#A52A2A;*/\n\tbackground-image: linear-gradient(to left, #4d154f, #3b0f2f, #230c18, #000000);\n}\n.homa .tamasha-presentation-frame a:link {\n\tcolor: yellow;\n}\n.homa .tamasha-presentation-frame a:visited {\n\tcolor: #00ff00;\n}\n.homa .tamasha-slide-content pre {\n\tbackground-color: #230c18;\n}\n/* ---------- tables ---------- */\n.homa .tamasha-slide-content table th, \n.homa .tamasha-slide-content table thead td {\n\tbackground-color: #4d154f;\n}\n.homa .tamasha-slide-content table tfoot td{\n\tbackground-color: #4d154f;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/themes/irana":{"title":"$:/plugins/kookma/tamasha/themes/irana","text":"/* irana only add a backgroud with parallax scrolling effects */\n\n.irana .tamasha-presentation-frame, \n.irana .tamasha-overlay {\ncolor:#efefef;\nbackground-color: #ee5522;\nbackground-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 2000 1500'%3E%3Cdefs%3E%3CradialGradient id='a' gradientUnits='objectBoundingBox'%3E%3Cstop offset='0' stop-color='%23FB3'/%3E%3Cstop offset='1' stop-color='%23ee5522'/%3E%3C/radialGradient%3E%3ClinearGradient id='b' gradientUnits='userSpaceOnUse' x1='0' y1='750' x2='1550' y2='750'%3E%3Cstop offset='0' stop-color='%23f7882b'/%3E%3Cstop offset='1' stop-color='%23ee5522'/%3E%3C/linearGradient%3E%3Cpath id='s' fill='url(%23b)' d='M1549.2 51.6c-5.4 99.1-20.2 197.6-44.2 293.6c-24.1 96-57.4 189.4-99.3 278.6c-41.9 89.2-92.4 174.1-150.3 253.3c-58 79.2-123.4 152.6-195.1 219c-71.7 66.4-149.6 125.8-232.2 177.2c-82.7 51.4-170.1 94.7-260.7 129.1c-90.6 34.4-184.4 60-279.5 76.3C192.6 1495 96.1 1502 0 1500c96.1-2.1 191.8-13.3 285.4-33.6c93.6-20.2 185-49.5 272.5-87.2c87.6-37.7 171.3-83.8 249.6-137.3c78.4-53.5 151.5-114.5 217.9-181.7c66.5-67.2 126.4-140.7 178.6-218.9c52.3-78.3 96.9-161.4 133-247.9c36.1-86.5 63.8-176.2 82.6-267.6c18.8-91.4 28.6-184.4 29.6-277.4c0.3-27.6 23.2-48.7 50.8-48.4s49.5 21.8 49.2 49.5c0 0.7 0 1.3-0.1 2L1549.2 51.6z'/%3E%3Cg id='g'%3E%3Cuse href='%23s' transform='scale(0.12) rotate(60)'/%3E%3Cuse href='%23s' transform='scale(0.2) rotate(10)'/%3E%3Cuse href='%23s' transform='scale(0.25) rotate(40)'/%3E%3Cuse href='%23s' transform='scale(0.3) rotate(-20)'/%3E%3Cuse href='%23s' transform='scale(0.4) rotate(-30)'/%3E%3Cuse href='%23s' transform='scale(0.5) rotate(20)'/%3E%3Cuse href='%23s' transform='scale(0.6) rotate(60)'/%3E%3Cuse href='%23s' transform='scale(0.7) rotate(10)'/%3E%3Cuse href='%23s' transform='scale(0.835) rotate(-40)'/%3E%3Cuse href='%23s' transform='scale(0.9) rotate(40)'/%3E%3Cuse href='%23s' transform='scale(1.05) rotate(25)'/%3E%3Cuse href='%23s' transform='scale(1.2) rotate(8)'/%3E%3Cuse href='%23s' transform='scale(1.333) rotate(-60)'/%3E%3Cuse href='%23s' transform='scale(1.45) rotate(-30)'/%3E%3Cuse href='%23s' transform='scale(1.6) rotate(10)'/%3E%3C/g%3E%3C/defs%3E%3Cg transform='rotate(0 0 0)'%3E%3Cg transform='rotate(0 0 0)'%3E%3Ccircle fill='url(%23a)' r='3000'/%3E%3Cg opacity='0.5'%3E%3Ccircle fill='url(%23a)' r='2000'/%3E%3Ccircle fill='url(%23a)' r='1800'/%3E%3Ccircle fill='url(%23a)' r='1700'/%3E%3Ccircle fill='url(%23a)' r='1651'/%3E%3Ccircle fill='url(%23a)' r='1450'/%3E%3Ccircle fill='url(%23a)' r='1250'/%3E%3Ccircle fill='url(%23a)' r='1175'/%3E%3Ccircle fill='url(%23a)' r='900'/%3E%3Ccircle fill='url(%23a)' r='750'/%3E%3Ccircle fill='url(%23a)' r='500'/%3E%3Ccircle fill='url(%23a)' r='380'/%3E%3Ccircle fill='url(%23a)' r='250'/%3E%3C/g%3E%3Cg transform='rotate(0 0 0)'%3E%3Cuse href='%23g' transform='rotate(10)'/%3E%3Cuse href='%23g' transform='rotate(120)'/%3E%3Cuse href='%23g' transform='rotate(240)'/%3E%3C/g%3E%3Ccircle fill-opacity='0.1' fill='url(%23a)' r='3000'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E\");\nbackground-attachment: fixed;\nbackground-size: cover;\n/*https://www.svgbackgrounds.com*/\n}\n\n.irana .tamasha-slide-content pre {\n background-color: #2e2e2e;\n}\n/* ---------- tables ---------- */\n.irana .tamasha-slide-content table th, \n.irana .tamasha-slide-content table thead td {\n background-color: #ee5522;\n}\n.irana .tamasha-slide-content table tfoot td {\n\tbackground-color: #ef5d23;\n}\n\n.irana .tamasha-presentation-frame a:link {\n\tcolor:#efefef;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/themes/kimia":{"title":"$:/plugins/kookma/tamasha/themes/kimia","text":"/* kimia is a basic theme */\n\n/* hide ui elements */\n.kimia .tamasha-slide-number,\n.kimia .tamasha-viewer-nav {\n\tdisplay:none;\n}\n\n/*\n.kimia .tamasha-progress {\n\tdisplay:none;\n}\n*/\n\n.kimia .tamasha-slide-content{\n font-weight:500;\n}\n\n.kimia .tamasha-slide-content .title{ /* used with vanilla template*/\n\t font-family: Impact, sans-serif;\n\t font-weight:300;\n}\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/themes/leila":{"title":"$:/plugins/kookma/tamasha/themes/leila","text":".leila .tamasha-presentation-frame, \n.leila .tamasha-overlay {\ncolor:#ffffff;\n/*background-color:#A52A2A;*/\nbackground: linear-gradient(90deg, #4b6cb7 0%, #182848 100%);\n}\n\n.leila .tamasha-presentation-frame a:link {\n color: yellow;\n}\n\n.leila .tamasha-presentation-frame a:visited {\n color: #00ff00;\n}\n\n.leila .tamasha-slide-content pre {\n background-color: #182848;\n}\n\n/* ---------- tables ---------- */\n.leila .tamasha-slide-content table th, \n.leila .tamasha-slide-content table thead td {\n background-color: #4b6cb7;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/themes/mitra":{"title":"$:/plugins/kookma/tamasha/themes/mitra","text":"/* mitra is a basic theme */\n\n.mitra .tamasha-slide-content {\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\ttext-align:center;\n}\n\n.mitra .tamasha-slide-content{\n\tfont-weight:500;\n}\n\n.mitra .tamasha-slide-content .title{ /* used with vanilla template*/\n font-size:1.5em;\n line-height:1.5em;\n font-weight:500;\n}\n\n.mitra .tamasha-slide-content ol,\n.mitra .tamasha-slide-content ul,\n.mitra .tamasha-slide-content li{\n\ttext-align:left;\n}\n/* ---------- code ---------- */\n.mitra .tamasha-slide-content code,\n.mitra .tamasha-slide-content pre {\n\tfont-size:0.9em;\n\tline-height:1.2em;\n\ttext-align:left;\n}\n\n/* ---------- tables ---------- */\n.mitra .tamasha-slide-content table td,\n.mitra .tamasha-slide-content table th {\n\tfont-size:0.8em;\n\tfont-weight:400;\n}\n\n.mitra .tamasha-slide-content table caption {\n\tcaption-side:top;\n\tfont-size:1em;\n\tmargin-bottom:0.2rem;\n}\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/themes/moon":{"title":"$:/plugins/kookma/tamasha/themes/moon","text":".moon .tamasha-presentation-frame, \n.moon .tamasha-overlay {\n\tcolor:#333;\n\tbackground-color: #f7fbfc;\n}\n\n\n\n.moon .tamasha-slide-content {\t\n\t/*font-family: 'Open Sans', sans-serif;*/\n\t/*font-family: 'Nunito Sans', sans-serif;*/\n\tfont-family: 'Lato', sans-serif;\n\tfont-weight:400;\n}\n\n.moon .tamasha-slide-content h2{\n\t/*font-family: 'Quicksand', sans-serif;*/\n/*\tfont-family: 'Nunito Sans', sans-serif;*/\n\tfont-family: 'News Cycle', Impact, sans-serif;\n\tfont-size:3rem;\n/*\tfont-weight:300;*/\n\n}\n\n.moon .tamasha-overlay.open .tamasha-slide-content {\t\n\theight:unset;\n\twidth:unset;\n}\n\n.moon .tamasha-slide-content .title{ /* used with vanilla template*/\n\tfont-weight:300;\n}\n\n/* ---------- code ---------- */\n.moon .tamasha-slide-content code,\n.moon .tamasha-slide-content pre {\n\tfont-family:'Inconsolata', monospace;\n\tfont-size:0.9em;\n\tline-height:1.2em;\n\ttext-align:left;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/themes/roya":{"title":"$:/plugins/kookma/tamasha/themes/roya","text":"/* roya only add a backgroud with parallax scrolling effects */\n.roya .tamasha-presentation-frame, \n.roya .tamasha-overlay {\ncolor:#000;\nbackground-color: #ffaa00;\nbackground-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25' viewBox='0 0 1600 800'%3E%3Cg %3E%3Cpath fill='%23ffb100' d='M486 705.8c-109.3-21.8-223.4-32.2-335.3-19.4C99.5 692.1 49 703 0 719.8V800h843.8c-115.9-33.2-230.8-68.1-347.6-92.2C492.8 707.1 489.4 706.5 486 705.8z'/%3E%3Cpath fill='%23ffb800' d='M1600 0H0v719.8c49-16.8 99.5-27.8 150.7-33.5c111.9-12.7 226-2.4 335.3 19.4c3.4 0.7 6.8 1.4 10.2 2c116.8 24 231.7 59 347.6 92.2H1600V0z'/%3E%3Cpath fill='%23ffbf00' d='M478.4 581c3.2 0.8 6.4 1.7 9.5 2.5c196.2 52.5 388.7 133.5 593.5 176.6c174.2 36.6 349.5 29.2 518.6-10.2V0H0v574.9c52.3-17.6 106.5-27.7 161.1-30.9C268.4 537.4 375.7 554.2 478.4 581z'/%3E%3Cpath fill='%23ffc500' d='M0 0v429.4c55.6-18.4 113.5-27.3 171.4-27.7c102.8-0.8 203.2 22.7 299.3 54.5c3 1 5.9 2 8.9 3c183.6 62 365.7 146.1 562.4 192.1c186.7 43.7 376.3 34.4 557.9-12.6V0H0z'/%3E%3Cpath fill='%23ffcc00' d='M181.8 259.4c98.2 6 191.9 35.2 281.3 72.1c2.8 1.1 5.5 2.3 8.3 3.4c171 71.6 342.7 158.5 531.3 207.7c198.8 51.8 403.4 40.8 597.3-14.8V0H0v283.2C59 263.6 120.6 255.7 181.8 259.4z'/%3E%3Cpath fill='%23ffd624' d='M1600 0H0v136.3c62.3-20.9 127.7-27.5 192.2-19.2c93.6 12.1 180.5 47.7 263.3 89.6c2.6 1.3 5.1 2.6 7.7 3.9c158.4 81.1 319.7 170.9 500.3 223.2c210.5 61 430.8 49 636.6-16.6V0z'/%3E%3Cpath fill='%23ffe038' d='M454.9 86.3C600.7 177 751.6 269.3 924.1 325c208.6 67.4 431.3 60.8 637.9-5.3c12.8-4.1 25.4-8.4 38.1-12.9V0H288.1c56 21.3 108.7 50.6 159.7 82C450.2 83.4 452.5 84.9 454.9 86.3z'/%3E%3Cpath fill='%23ffeb49' d='M1600 0H498c118.1 85.8 243.5 164.5 386.8 216.2c191.8 69.2 400 74.7 595 21.1c40.8-11.2 81.1-25.2 120.3-41.7V0z'/%3E%3Cpath fill='%23fff558' d='M1397.5 154.8c47.2-10.6 93.6-25.3 138.6-43.8c21.7-8.9 43-18.8 63.9-29.5V0H643.4c62.9 41.7 129.7 78.2 202.1 107.4C1020.4 178.1 1214.2 196.1 1397.5 154.8z'/%3E%3Cpath fill='%23ffff66' d='M1315.3 72.4c75.3-12.6 148.9-37.1 216.8-72.4h-723C966.8 71 1144.7 101 1315.3 72.4z'/%3E%3C/g%3E%3C/svg%3E\");\nbackground-attachment: fixed;\nbackground-size: cover;\n/*https://www.svgbackgrounds.com*/\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/themes/vanda":{"title":"$:/plugins/kookma/tamasha/themes/vanda","text":"/* vanda is a basic theme and the default theme of Tamasha*/\n\n/* ---------- code ---------- */\n.vanda .tamasha-slide-content code,\n.vanda .tamasha-slide-content pre {\n\tfont-size:0.9em;\n\tline-height:1.2em;\n\ttext-align:left;\n}\n\n/* ---------- tables ---------- */\n.vanda .tamasha-slide-content table td,\n.vanda .tamasha-slide-content table th {\n\tfont-size:0.8em;\n\tfont-weight:400;\n}\n\n.vanda .tamasha-slide-content table caption {\n\tcaption-side:top;\n\tfont-size:1em;\n\tmargin-bottom:0.2rem;\n}\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/ui/buttons":{"title":"$:/plugins/kookma/tamasha/ui/buttons","type":"text/vnd.tiddlywiki","text":"\\define btn-toggle-presentation-mode()\n<$button class=\"tc-btn-invisible tamasha-nav-button\" actions=<<toggle-presentation-mode>> > {{$:/core/images/full-screen-button}} </$button>\n\\end\n\\define btn-toggle-author-mode()\n<$button class=\"tc-btn-invisible tamasha-nav-button\" actions=<<toggle-author-mode>> >{{$:/core/images/close-button}}</$button>\n\\end\n\n<div class=\"tamasha-viewer-nav\">\n<$button class=\"tc-btn-invisible tamasha-nav-button\" actions=<<previousSlide>> >{{$:/core/images/left-arrow}}\n</$button>\n<$button class=\"tc-btn-invisible tamasha-nav-button\" actions=<<nextSlide>> >{{$:/core/images/right-arrow}}\n</$button>\n<div class=\"tamasha-toolbar-separator\"> </div>\n<$button class=\"tc-btn-invisible tamasha-nav-button\" \n actions=\"\"\"<$action-listops $tiddler=<<stateListboxTid>> $field=\"text\" $subfilter=\"+[toggle[slideList]]\" />\"\"\" >\n\t {{$:/core/images/down-arrow}}\n</$button>\n<div class=\"tamasha-toolbar-separator\"> </div>\n<$list filter=\"[<statePresentTid>getindex[mode]match[presentation-mode]]\" \n variable=ignore emptyMessage=\"\"\"<<btn-toggle-presentation-mode>>\"\"\" \t>\n <<btn-toggle-author-mode>>\n</$list>\n</div>"},"$:/plugins/kookma/tamasha/ui/content":{"title":"$:/plugins/kookma/tamasha/ui/content","type":"text/vnd.tiddlywiki","text":"<div class=\"tamasha-slide-content\">\n<<navigator>>\n</div>\n"},"$:/plugins/kookma/tamasha/ui/footer":{"title":"$:/plugins/kookma/tamasha/ui/footer","tags":"","type":"text/vnd.tiddlywiki","text":"<div class=\"tamasha-slide-footer\">\n<span><<slideFooter>></span>\n</div>"},"$:/plugins/kookma/tamasha/ui/progressbar":{"title":"$:/plugins/kookma/tamasha/ui/progressbar","tags":"","type":"text/vnd.tiddlywiki","text":"\\define calculate-progress()\n<span class=\"bar\"\n style={{{ [tag<mainTag>allbefore{$(stateNavigatorTid)$!!text}count[]add[1]divide<SlidesCount>fixed[2]addprefix[transform:scaleX(]addsuffix[);]] }}} >\n</span>\n\\end\n\n<div class=\"tamasha-progress\">\n\t<<calculate-progress>>\n</div>\n"},"$:/plugins/kookma/tamasha/ui/slide":{"title":"$:/plugins/kookma/tamasha/ui/slide","tags":"","type":"text/vnd.tiddlywiki","text":"<$transclude tiddler=\"$:/plugins/kookma/tamasha/ui/content\" mode=block/>\n<$transclude tiddler=\"$:/plugins/kookma/tamasha/ui/footer\" mode=block/>\n<$transclude tiddler=\"$:/plugins/kookma/tamasha/ui/buttons\" mode=block/>\n<$transclude tiddler=\"$:/plugins/kookma/tamasha/ui/slidelist\" mode=block/>\n<$transclude tiddler=\"$:/plugins/kookma/tamasha/ui/slidenumber\" mode=block/>\n<$transclude tiddler=\"$:/plugins/kookma/tamasha/ui/progressbar\" mode=block/>"},"$:/plugins/kookma/tamasha/ui/slidelist":{"title":"$:/plugins/kookma/tamasha/ui/slidelist","tags":"$:/tags/Macro/Tamasha","type":"text/vnd.tiddlywiki","text":"\\define stateListboxTid() $:/state/tamasha/listbox/$(currentTiddler)$/$(myState)$\n\n\\define gotoSlide() \n<$action-setfield $tiddler=<<stateNavigatorTid>> text=<<selectedTid>> />\n<$action-listops $tiddler=<<stateListboxTid>> $field=\"text\" $subfilter=\"+[toggle[slideList]]\" />\n<$action-sendmessage $message=\"tm-focus-selector\" $param=<<presentation-frame-focus-selector>> />\n\\end\n\n\n<$list filter=\"[<stateListboxTid>get[text]match[slideList]]\" variable=\"null\">\n<div class=\"tamasha-popup\">\n<ol>\n<$list filter=\"[tag<mainTag>]\" variable=\"selectedTid\">\n<li class={{{[<stateNavigatorTid>get[text]match<selectedTid>then[currentSlide]]}}} >\n<$button class=\"tc-btn-invisible\" actions=<<gotoSlide>> >\n<$view tiddler=<<selectedTid>> field=\"title\"/>\n</$button>\n</li>\n</$list>\n</ol>\n</div>\n</$list>\n"},"$:/plugins/kookma/tamasha/ui/slidenumber":{"title":"$:/plugins/kookma/tamasha/ui/slidenumber","type":"text/vnd.tiddlywiki","text":"\\define calc-slideNumber()\n<$vars currentTid={{{[<stateNavigatorTid>get[text]] ~[tag<mainTag>first[]]}}}>\n<$text text={{{ [tag<mainTag>allbefore:include<currentTid>count[]pad[2]] }}} />\n</$vars>\n\\end\n<div class=\"tamasha-slide-number\">\n<div class=\"tamasha-number-circle\"><<calc-slideNumber>></div>\n</div>"}}} \ No newline at end of file +{"tiddlers":{"$:/plugins/kookma/tamasha/animations/slideIn":{"title":"$:/plugins/kookma/tamasha/animations/slideIn","text":"/* https://www.w3schools.com/w3css/w3css_animate.asp*/\n.tamasha-animation-slidedown{position:relative;animation:animatetop 0.4s}@keyframes animatetop{from{top:-300px;opacity:0} to{top:0;opacity:1}}\n.tamasha-animation-slideleft{position:relative;animation:animateleft 0.4s}@keyframes animateleft{from{left:-300px;opacity:0} to{left:0;opacity:1}}\n.tamasha-animation-slideright{position:relative;animation:animateright 0.4s}@keyframes animateright{from{right:-300px;opacity:0} to{right:0;opacity:1}}\n.tamasha-animation-slideup{position:relative;animation:animatebottom 0.4s}@keyframes animatebottom{from{bottom:-300px;opacity:0} to{bottom:0;opacity:1}}\n.tamasha-animation-slidezoom {animation:animatezoom 0.8s ease-out}@keyframes animatezoom{from{transform:scale(0)} to{transform:scale(1)}}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/history":{"title":"$:/plugins/kookma/tamasha/history","tags":"","type":"text/vnd.tiddlywiki","text":"Full change log https://kookma.github.io/TW-Tamasha/#ChangeLog\n\n* ''0.5.0'' -- 2024.06.03 -- update to TW 5.3.3 and minor bug fixes\n* ''0.5.0'' -- 2021.02.10 -- maintenance release\n* ''0.4.2'' -- 2021.02.02 -- linear scaling of font size, new kimia theme\n* ''0.4.1'' -- 2021.02.01 -- css and ui cleanup\n* ''0.4.0'' -- 2021.01.27 -- dynamic font size for slide\n* ''0.3.0'' -- 2021.01.25 -- new shortcut keys, new transition effects for progress bar\n* ''0.2.0'' -- 2021.01.24 -- beta release\n* ''0.1.0'' -- 2020.12.12 -- alpha release\n"},"$:/plugins/kookma/tamasha/license":{"title":"$:/plugins/kookma/tamasha/license","tags":"","type":"text/vnd.tiddlywiki","text":"Distributed under an MIT license.\n\nCopyright (c) 2020 - 2023 [[Mohammad Rahmani|https://github.com/kookma]]\n\n<<<\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n<<<"},"$:/plugins/kookma/tamasha/macros/frame":{"title":"$:/plugins/kookma/tamasha/macros/frame","tags":"$:/tags/Macro/Tamasha","type":"text/vnd.tiddlywiki","text":"\\define presentation-frame-focus-selector() .$(myState)$\n\\define presentation-frame-class() tamasha-presentation-frame $(myState)$\n\n\\define slideBackground() [<stateNavigatorTid>get[text]] ~[tag<mainTag>first[]] :and[get[background]addprefix[background-color:]addsuffix[;]]\n"},"$:/plugins/kookma/tamasha/macros/navigator":{"title":"$:/plugins/kookma/tamasha/macros/navigator","tags":"$:/tags/Macro/Tamasha","type":"text/vnd.tiddlywiki","text":"\\define stateNavigatorTid() $:/state/tamasha/navigator/$(currentTiddler)$/$(myState)$\n\\define loopSlides() [tag<mainTag>$(loopState)$[]]\n\n\\define goHome() <$action-setfield $tiddler=<<stateNavigatorTid>> text={{{[tag<mainTag>first[]]}}}/>\n\\define goEnd() <$action-setfield $tiddler=<<stateNavigatorTid>> text={{{[tag<mainTag>last[]]}}}/>\n\n\n\n\\define nextSlide() \n<$vars currentTid={{{[<stateNavigatorTid>get[text]] ~[tag<mainTag>first[]]}}}>\n<$list filter=\"[<loopShow>match[yes]then[first]else[last]]\" variable=\"loopState\">\n<$action-setfield $tiddler=<<stateNavigatorTid>> \n text={{{ [tag<mainTag>after<currentTid>] ~[subfilter<loopSlides>] }}} />\n</$list>\t\n</$vars>\n\\end\n\n\\define previousSlide()\n<$vars currentTid={{{[<stateNavigatorTid>get[text]]}}}>\n<$list filter=\"[<loopShow>match[yes]then[last]else[first]]\" variable=\"loopState\">\n<$action-setfield $tiddler=<<stateNavigatorTid>> \n text={{{ [tag<mainTag>before<currentTid>] ~[subfilter<loopSlides>] }}} />\n</$list>\t\t\n</$vars>\n\\end\n\n\\define navigator()\n<$list filter=\"[<stateNavigatorTid>get[text]] ~[tag<mainTag>first[]]\" variable=\"currentSlide\" emptyMessage=\"No slide existed or wrong input\">\n\t<div class=<<animationClass>> ><!-- this div also used for flexbox layout -->\n\t<$transclude tiddler=<<myTemplate>> mode=block/>\n\t</div>\n</$list> \n\\end"},"$:/plugins/kookma/tamasha/macros/presenter":{"title":"$:/plugins/kookma/tamasha/macros/presenter","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define presenter(tag, loop:\"no\", footer:\"\", template:\"vanilla\", theme:\"vanda\", animation, state)\n\\import [all[tiddlers+shadows]tag[$:/tags/Macro/Tamasha]]\n<$vars\n mainTag=<<__tag__>>\n loopShow=<<__loop__>>\n slideFooter=<<__footer__>> \n myTemplate={{{ [all[tiddlers+shadows]tag[$:/tags/Tamasha/Template]!is[draft]search:title<__template__>] ~$:/plugins/kookma/tamasha/templates/vanilla }}} \n myTheme={{{ [all[tiddlers+shadows]tag[$:/tags/Tamasha/Theme]getindex<__theme__>] ~[<__theme__>] }}}\n animationClass={{{[<__animation__>trim[]!is[blank]addprefix[tamasha-animation-]]}}}\n myState={{{ [<__state__>trim[]is[blank]then[presenter]else<__state__>addsuffix<qualify>] }}}\n SlidesCount={{{[tag<__tag__>count[]]}}}\n >\n<$keyboard key=\"F\" actions=<<toggle-presentation-mode>> >\n<$keyboard key=\"escape\" actions=<<toggle-author-mode>> >\n<$keyboard key=\"H home\" actions=<<goHome>> >\n<$keyboard key=\"E end\" actions=<<goEnd>> >\n<$keyboard key=\"right down enter space\" actions=<<nextSlide>> >\n<$keyboard key=\"left up backspace\" actions=<<previousSlide>> >\n\n<div class=<<myTheme>> ><!-- apply theme -->\n<div class=<<presentation-frame-class>> tabindex=1 style={{{[subfilter<slideBackground>]}}} >\n\n<!-- Presentation Mode -->\n<div class={{{[<statePresentTid>getindex[overlayClass]] ~[[tamasha-overlay]]}}} style={{{[subfilter<slideBackground>]}}} >\n<$transclude tiddler=\"$:/plugins/kookma/tamasha/ui/slide\" mode=block/>\n</div>\n\n<!-- Author mode -->\n<div><!-- reserved for further development-->\n<$transclude tiddler=\"$:/plugins/kookma/tamasha/ui/slide\" mode=block/>\n</div>\n\n</div>\n</div>\n\n</$keyboard>\n</$keyboard>\n</$keyboard>\n</$keyboard>\n</$keyboard>\n</$keyboard>\n\n<$reveal type=\"match\" stateTitle=<<statePresentTid>> stateIndex=\"mode\" text=\"presentation-mode\">\n<style>body { overflow: hidden; /* Hide scrollbars */ }</style>\n</$reveal>\n\n</$vars>\n\\end\n"},"$:/plugins/kookma/tamasha/macros/toggle":{"title":"$:/plugins/kookma/tamasha/macros/toggle","tags":"$:/tags/Macro/Tamasha","type":"text/vnd.tiddlywiki","text":"\\define statePresentTid() $:/state/tamasha/presentation/$(currentTiddler)$/$(myState)$\n\n\\define toggle-presentation-mode() \n<$action-setfield $tiddler=<<statePresentTid>> $index=\"overlayClass\" $value=\"tamasha-overlay open\"/>\n<$action-setfield $tiddler=<<statePresentTid>> $index=\"mode\" $value=\"presentation-mode\"/>\n<$action-sendmessage $message=\"tm-focus-selector\" $param=<<presentation-frame-focus-selector>> />\n\\end\n\\define toggle-author-mode()\n<$action-setfield $tiddler=<<statePresentTid>> $index=\"overlayClass\" $value=\"tamasha-overlay\"/>\n<$action-setfield $tiddler=<<statePresentTid>> $index=\"mode\" $value=\"author-mode\"/>\n<$action-sendmessage $message=\"tm-focus-selector\" $param=<<presentation-frame-focus-selector>> />\n\\end"},"$:/plugins/kookma/tamasha/readme":{"title":"$:/plugins/kookma/tamasha/readme","tags":"","type":"text/vnd.tiddlywiki","text":"; Tamasha\nTamasha is a presentation app based on Tiddlywiki 5.1.23+\n\n;Code and demo\nFor learning plugin features, syntax, tutorial and examples see the plugin demo and code pages\n\n* Demo: https://kookma.github.io/TW-Tamasha/\n* Code: https://github.com/kookma/TW-Tamasha\n"},"$:/plugins/kookma/tamasha/styles/buttons":{"title":"$:/plugins/kookma/tamasha/styles/buttons","tags":"$:/tags/Stylesheet","type":"text/vnd.tiddlywiki","text":".tamasha-viewer-nav {\n\tvisibility: hidden;\n\topacity: 0.02;\n transition: visibility 0.5s, opacity 0.75s linear;\n\n\tfont-size:1.3em;\n\tbackground-color: <<colour background>>;\n\t/*border: 2px solid #9a9a9aaa;*/\n}\n\n.tamasha-presentation-frame:hover .tamasha-viewer-nav {\n\tvisibility: visible;\n\topacity: 0.6;\n}\n\n.tamasha-nav-button svg{\n\tfill: #9a9a9a;\n}\n\n.tamasha-nav-button:hover svg{\n/*\tfill: #ffffff; */\n fill: <<color foreground>>\n}\n.tamasha-nav-button,\n.tamasha-nav-button:focus {\n\toutline:none;\n}\n\n.tamasha-viewer-nav .tamasha-toolbar-separator {\n\tbackground-color:#9a9a9a;\n}\n\n"},"$:/plugins/kookma/tamasha/styles/content":{"title":"$:/plugins/kookma/tamasha/styles/content","text":".tamasha-slide-content{\t\nborder:1px dotted orange; /*for debug purpose*/\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/styles/footer":{"title":"$:/plugins/kookma/tamasha/styles/footer","text":".tamasha-slide-footer{\t\n/*\tborder-bottom: 1px dotted green;*/\n/*\t font-size:18px;\n line-height:24px;\t\n\tfont-weight:400; */\n\n}\n\n.tamasha-slide-footer span{\n\topacity: 0.8;\n/*\tcolor: darkblue;*/\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/styles/frame":{"title":"$:/plugins/kookma/tamasha/styles/frame","tags":"$:/tags/Stylesheet","type":"text/vnd.tiddlywiki","text":".tamasha-presentation-frame{\n border: 1px solid #B2FBF6CC;\n}\n.tamasha-presentation-frame:focus{\n\toutline:none;\n}"},"$:/plugins/kookma/tamasha/styles/layout/buttons":{"title":"$:/plugins/kookma/tamasha/styles/layout/buttons","text":"/* buttons, slidenumber and progressbar are positioned based on\n .tamasha-presentation-frame\n*/\n\n.tamasha-viewer-nav {\n\tleft: 1.5rem;\n\tposition: absolute;\n\tbottom: 1rem;\n\tborder-radius:2px;\n\tpadding:4px 10px;\n}\n\n.tamasha-viewer-nav .tamasha-toolbar-separator {\n\tdisplay:inline-block;\n\twidth:2px;\n\theight:1.3em;\n\tmargin:0 4px;\n\tvertical-align: top;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/styles/layout/content":{"title":"$:/plugins/kookma/tamasha/styles/layout/content","text":".tamasha-slide-content {\n\tfont-size: 1.3rem;\n\tline-height: 1.85rem;\n\tpadding: 5px 30px;\n\tmargin: 0 auto;\n\tmax-width: 900px;\n\theight:480px;\n\toverflow: hidden;\n\tmargin-bottom: 4rem;\n}\n\n.tamasha-overlay .tamasha-slide-content {\n\tfont-size: clamp(1rem, 4vh, 2.5rem);\n\tline-height: clamp(1.5rem, 6vh, 4rem);\n\theight: auto;\n\tpadding: 10px 8vh;\n}\n\n/* keep images inside slide content */\n.tamasha-slide-content img{\n\tmax-width:95%;\n\tmax-height:95%;\n}\n\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/styles/layout/footer":{"title":"$:/plugins/kookma/tamasha/styles/layout/footer","text":".tamasha-slide-footer{\t\n\tposition: absolute; \n\tleft: 0; \n\tright: 0; \n\tmargin-left: auto; \n\tmargin-right: auto; \n\tbottom:1rem;\n\tmax-width:100%;\n\toverflow:hidden;\n\ttext-align:center;\n\tdisplay:inline-block;\n\tmax-width:40%;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/styles/layout/frame":{"title":"$:/plugins/kookma/tamasha/styles/layout/frame","text":".tamasha-presentation-frame{\n\tposition:relative;\t\t\n\twidth:100%;\n\theight:100%;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/styles/layout/overlay":{"title":"$:/plugins/kookma/tamasha/styles/layout/overlay","text":".tamasha-overlay {\n\theight: 0; \n\tposition:fixed;\n\ttop:0; left:0;\n\tz-index:1500;\n\toverflow-y: hidden;\n\twidth:100%;\n}\n\n.tamasha-overlay.open {\n\theight: 100%; /* use full screen height */\n\tmax-height:100%;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/styles/layout/progressbar":{"title":"$:/plugins/kookma/tamasha/styles/layout/progressbar","text":".tamasha-progress{\n\tleft:0;\n\tbottom: 0;\n\tposition: absolute;\n\twidth:100%;\n\theight:4px;\n}\n\n.tamasha-progress .bar{\n\tdisplay: block;\n\theight:100%;\n\twidth:100%; \n\ttransform-origin:0 0;\n\ttransform:sclaeX(0);\n\ttransition: transform 0.8s ease-in-out;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/styles/layout/slidelist":{"title":"$:/plugins/kookma/tamasha/styles/layout/slidelist","text":".tamasha-popup{\n\tleft: 50px;\n\tposition: absolute;\n\tbottom: 60px;\n\n\tpadding-right:30px; /* to adapt with ol used inside popup */\n\tborder-radius:4px;\n\n\tmax-height:50%;\n\toverflow-y:auto;\n\tmax-width:50%;\n}\n\n.tamasha-popup .tc-btn-invisible{\n\ttext-align:left;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/styles/layout/slidenumber":{"title":"$:/plugins/kookma/tamasha/styles/layout/slidenumber","text":".tamasha-slide-number {\n\tposition: absolute;\n\tbottom: 1rem;\n\tright: 1.5rem;\n}\n\n.tamasha-number-circle {\n\tbox-sizing: content-box; \n\twidth: 1.5em;\n\theight: 1.5em;\n\tline-height: 1.5em;\n\ttext-align: center;\n\tborder-radius: 50%; \n}\n/* change the circle size: increase line-height=width=height */","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/styles/layout/uisetting":{"title":"$:/plugins/kookma/tamasha/styles/layout/uisetting","tags":"$:/tags/Stylesheet","type":"text/vnd.tiddlywiki","text":".noslidenumber .tamasha-slide-number{display:none}\n.noprogressbar .tamasha-progress{display:none}\n.nonavbutton .tamasha-viewer-nav {display:none}"},"$:/plugins/kookma/tamasha/styles/overlay":{"title":"$:/plugins/kookma/tamasha/styles/overlay","tags":"$:/tags/Stylesheet","type":"text/vnd.tiddlywiki","text":".tamasha-overlay {\n\ttransition-property: all;\n\ttransition-duration: 1s;\n\ttransition-timing-function: cubic-bezier(0, 1, 0.5, 1);\n\tbackground-color:<<colour background>>;\n}\n"},"$:/plugins/kookma/tamasha/styles/progressbar":{"title":"$:/plugins/kookma/tamasha/styles/progressbar","tags":"$:/tags/Stylesheet","type":"text/vnd.tiddlywiki","text":"\\define progress-light() #e5e5e5\n\\define progress-dark() #494949\n\\define bar-light() #9a9a9a\n\\define bar-dark() #d79921\n\n<$vars \nlight=\"Blanca Blue Muted ContrastLight DesertSand Rocker SolarFlare SolarizedLight SpartanDay Vanilla [[Notebook Beige]] [[Notebook Grey]]\"\ndark=\"ContrastDark CupertinoDark DarkPhotos GruvboxDark Nord SolarizedDark SpartanNight Twilight\"\npalette={{{ [[$:/palette]get[text]removeprefix[$:/palettes/]] }}}\n>\n<$list filter=\"[enlist<dark>search:title<palette>then[dark]else[light]]\" variable=colorMacro>\n\n.tamasha-progress{\n\tbackground-color:<$macrocall $name={{{[<colorMacro>addprefix[progress-]]}}} />;\n}\n.tamasha-progress .bar{\n\tbackground-color:<$macrocall $name={{{[<colorMacro>addprefix[bar-]]}}} />;\n}\n</$list>\n</$vars>"},"$:/plugins/kookma/tamasha/styles/scrollbars":{"title":"$:/plugins/kookma/tamasha/styles/scrollbars","text":"/* custom scrollbar */\n.tamasha-popup::-webkit-scrollbar {\n width: 20px;\n}\n\n.tamasha-popup::-webkit-scrollbar-track {\n background-color: transparent;\n}\n\n.tamasha-popup::-webkit-scrollbar-thumb {\n background-color: #666666;\n border-radius: 20px;\n border: 6px solid transparent;\n background-clip: content-box;\n}\n\n.tamasha-popup::-webkit-scrollbar-thumb:hover {\n background-color: #909090; /* #a8bbbf;*/\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/styles/slidelist":{"title":"$:/plugins/kookma/tamasha/styles/slidelist","text":".tamasha-popup{\n\tbackground-color: #323232;\n\tfont-size:1em;\n\tbox-shadow:0 4px 10px 0 rgba(0,0,0,0.2),0 4px 20px 0 rgba(0,0,0,0.19);\n}\n\n.tamasha-popup .tc-btn-invisible{\n\tcolor:#b9b9b9;\n}\n\n.tamasha-popup button:focus{\n\toutline:none;\n}\n\n/* change number color*/\n.tamasha-popup li::marker { \n\tcolor:#b9b9b9;\n}\n\n/* slide in view: current slide in the slideList */\n.tamasha-popup .currentSlide .tc-btn-invisible,\n.tamasha-popup .currentSlide::marker {\n\tcolor:#fff;\n\tfont-size:0.9em;\n}\n\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/styles/slidenumber":{"title":"$:/plugins/kookma/tamasha/styles/slidenumber","tags":"$:/tags/Stylesheet","type":"text/vnd.tiddlywiki","text":".tamasha-number-circle {\n\tborder: 0.1em solid #666;\n\tfont-size: 1.2em;\n\tfont-weight:300;\n\tbackground: <<colour background>>;\n\tcolor: #666;\n\topacity:0.9;\n}"},"$:/plugins/kookma/tamasha/templates/nolink":{"title":"$:/plugins/kookma/tamasha/templates/nolink","tags":"$:/tags/Tamasha/Template","type":"text/vnd.tiddlywiki","text":"\\define tv-wikilinks() no\n\\whitespace trim\n<h2 class=\"tamasha-slide-title\">\n <$link to=<<currentSlide>>>\n <$transclude $tiddler=<<currentSlide>> $field={{{ [<currentSlide>get[caption]then[caption]else[title]] }}} />\n </$link>\n</h2>\n<$transclude tiddler=<<currentSlide>> mode=block/>"},"$:/plugins/kookma/tamasha/templates/simple":{"title":"$:/plugins/kookma/tamasha/templates/simple","tags":"$:/tags/Tamasha/Template","type":"text/vnd.tiddlywiki","text":"<$transclude tiddler=<<currentSlide>> mode=block/>"},"$:/plugins/kookma/tamasha/templates/vanilla":{"title":"$:/plugins/kookma/tamasha/templates/vanilla","tags":"$:/tags/Tamasha/Template","type":"text/vnd.tiddlywiki","text":"\\whitespace trim\n<h2 class=\"tamasha-slide-title\">\n <$link to=<<currentSlide>>>\n <$transclude $tiddler=<<currentSlide>> $field={{{ [<currentSlide>get[caption]then[caption]else[title]] }}} />\n </$link>\n</h2>\n<$transclude tiddler=<<currentSlide>> mode=block/>"},"$:/plugins/kookma/tamasha/themes/composite":{"title":"$:/plugins/kookma/tamasha/themes/composite","text":"vanda: vanda\nmitra: mitra\nkimia: kimia\nroya: vanda roya\nhoma: vanda homa\nleila: mitra leila\nirana: vanda irana","type":"application/x-tiddler-dictionary","tags":"$:/tags/Tamasha/Theme"},"$:/plugins/kookma/tamasha/themes/homa":{"title":"$:/plugins/kookma/tamasha/themes/homa","text":".homa .tamasha-presentation-frame, \n.homa .tamasha-overlay {\n\tcolor:#ffffff;\n/*\tbackground-color:#A52A2A;*/\n\tbackground-image: linear-gradient(to left, #4d154f, #3b0f2f, #230c18, #000000);\n}\n.homa .tamasha-presentation-frame a:link {\n\tcolor: yellow;\n}\n.homa .tamasha-presentation-frame a:visited {\n\tcolor: #00ff00;\n}\n.homa .tamasha-slide-content pre {\n\tbackground-color: #230c18;\n}\n/* ---------- tables ---------- */\n.homa .tamasha-slide-content table th, \n.homa .tamasha-slide-content table thead td {\n\tbackground-color: #4d154f;\n}\n.homa .tamasha-slide-content table tfoot td{\n\tbackground-color: #4d154f;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/themes/irana":{"title":"$:/plugins/kookma/tamasha/themes/irana","text":"/* irana only add a backgroud with parallax scrolling effects */\n/*https://www.svgbackgrounds.com*/\n.irana .tamasha-presentation-frame, \n.irana .tamasha-overlay { \ncolor:#efefef;\nbackground-color: #ee5522;\nbackground-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 2000 1500'%3E%3Cdefs%3E%3CradialGradient id='a' gradientUnits='objectBoundingBox'%3E%3Cstop offset='0' stop-color='%23FB3'/%3E%3Cstop offset='1' stop-color='%23ee5522'/%3E%3C/radialGradient%3E%3ClinearGradient id='b' gradientUnits='userSpaceOnUse' x1='0' y1='750' x2='1550' y2='750'%3E%3Cstop offset='0' stop-color='%23f7882b'/%3E%3Cstop offset='1' stop-color='%23ee5522'/%3E%3C/linearGradient%3E%3Cpath id='s' fill='url(%23b)' d='M1549.2 51.6c-5.4 99.1-20.2 197.6-44.2 293.6c-24.1 96-57.4 189.4-99.3 278.6c-41.9 89.2-92.4 174.1-150.3 253.3c-58 79.2-123.4 152.6-195.1 219c-71.7 66.4-149.6 125.8-232.2 177.2c-82.7 51.4-170.1 94.7-260.7 129.1c-90.6 34.4-184.4 60-279.5 76.3C192.6 1495 96.1 1502 0 1500c96.1-2.1 191.8-13.3 285.4-33.6c93.6-20.2 185-49.5 272.5-87.2c87.6-37.7 171.3-83.8 249.6-137.3c78.4-53.5 151.5-114.5 217.9-181.7c66.5-67.2 126.4-140.7 178.6-218.9c52.3-78.3 96.9-161.4 133-247.9c36.1-86.5 63.8-176.2 82.6-267.6c18.8-91.4 28.6-184.4 29.6-277.4c0.3-27.6 23.2-48.7 50.8-48.4s49.5 21.8 49.2 49.5c0 0.7 0 1.3-0.1 2L1549.2 51.6z'/%3E%3Cg id='g'%3E%3Cuse href='%23s' transform='scale(0.12) rotate(60)'/%3E%3Cuse href='%23s' transform='scale(0.2) rotate(10)'/%3E%3Cuse href='%23s' transform='scale(0.25) rotate(40)'/%3E%3Cuse href='%23s' transform='scale(0.3) rotate(-20)'/%3E%3Cuse href='%23s' transform='scale(0.4) rotate(-30)'/%3E%3Cuse href='%23s' transform='scale(0.5) rotate(20)'/%3E%3Cuse href='%23s' transform='scale(0.6) rotate(60)'/%3E%3Cuse href='%23s' transform='scale(0.7) rotate(10)'/%3E%3Cuse href='%23s' transform='scale(0.835) rotate(-40)'/%3E%3Cuse href='%23s' transform='scale(0.9) rotate(40)'/%3E%3Cuse href='%23s' transform='scale(1.05) rotate(25)'/%3E%3Cuse href='%23s' transform='scale(1.2) rotate(8)'/%3E%3Cuse href='%23s' transform='scale(1.333) rotate(-60)'/%3E%3Cuse href='%23s' transform='scale(1.45) rotate(-30)'/%3E%3Cuse href='%23s' transform='scale(1.6) rotate(10)'/%3E%3C/g%3E%3C/defs%3E%3Cg transform='rotate(0 0 0)'%3E%3Cg transform='rotate(0 0 0)'%3E%3Ccircle fill='url(%23a)' r='3000'/%3E%3Cg opacity='0.5'%3E%3Ccircle fill='url(%23a)' r='2000'/%3E%3Ccircle fill='url(%23a)' r='1800'/%3E%3Ccircle fill='url(%23a)' r='1700'/%3E%3Ccircle fill='url(%23a)' r='1651'/%3E%3Ccircle fill='url(%23a)' r='1450'/%3E%3Ccircle fill='url(%23a)' r='1250'/%3E%3Ccircle fill='url(%23a)' r='1175'/%3E%3Ccircle fill='url(%23a)' r='900'/%3E%3Ccircle fill='url(%23a)' r='750'/%3E%3Ccircle fill='url(%23a)' r='500'/%3E%3Ccircle fill='url(%23a)' r='380'/%3E%3Ccircle fill='url(%23a)' r='250'/%3E%3C/g%3E%3Cg transform='rotate(0 0 0)'%3E%3Cuse href='%23g' transform='rotate(10)'/%3E%3Cuse href='%23g' transform='rotate(120)'/%3E%3Cuse href='%23g' transform='rotate(240)'/%3E%3C/g%3E%3Ccircle fill-opacity='0.1' fill='url(%23a)' r='3000'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E\");\nbackground-attachment: fixed;\nbackground-size: cover;\n}\n\n\n.irana .tamasha-slide-content pre {\n background-color: #2e2e2e;\n}\n/* ---------- tables ---------- */\n.irana .tamasha-slide-content table th, \n.irana .tamasha-slide-content table thead td {\n background-color: #ee5522;\n}\n.irana .tamasha-slide-content table tfoot td {\n\tbackground-color: #ef5d23;\n}\n\n.irana .tamasha-presentation-frame a:link {\n\tcolor:#efefef;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/themes/kimia":{"title":"$:/plugins/kookma/tamasha/themes/kimia","text":"/* kimia is a basic theme */\n\n/* hide ui elements */\n.kimia .tamasha-slide-number,\n.kimia .tamasha-viewer-nav {\n\tdisplay:none;\n}\n\n/*\n.kimia .tamasha-progress {\n\tdisplay:none;\n}\n*/\n\n.kimia .tamasha-slide-content{\n font-weight:500;\n}\n\n.kimia .tamasha-slide-content .tamasha-slide-title{ /* used with vanilla template*/\n\t font-family: Impact, sans-serif;\n\t font-weight:300;\n}\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/themes/leila":{"title":"$:/plugins/kookma/tamasha/themes/leila","text":".leila .tamasha-presentation-frame, \n.leila .tamasha-overlay {\ncolor:#ffffff;\n/*background-color:#A52A2A;*/\nbackground: linear-gradient(90deg, #4b6cb7 0%, #182848 100%);\n}\n\n.leila .tamasha-presentation-frame a:link {\n color: yellow;\n}\n\n.leila .tamasha-presentation-frame a:visited {\n color: #00ff00;\n}\n\n.leila .tamasha-slide-content pre {\n background-color: #182848;\n}\n\n/* ---------- tables ---------- */\n.leila .tamasha-slide-content table th, \n.leila .tamasha-slide-content table thead td {\n background-color: #4b6cb7;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/themes/mitra":{"title":"$:/plugins/kookma/tamasha/themes/mitra","text":"/* mitra is a basic theme */\n\n.mitra .tamasha-slide-content {\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\ttext-align:center;\n}\n\n.mitra .tamasha-slide-content{\n\tfont-weight:500;\n}\n\n.mitra .tamasha-slide-content .tamasha-slide-title{ /* used with vanilla template*/\n font-size:1.5em;\n line-height:1.5em;\n font-weight:500;\n}\n\n.mitra .tamasha-slide-content ol,\n.mitra .tamasha-slide-content ul,\n.mitra .tamasha-slide-content li{\n\ttext-align:left;\n}\n/* ---------- code ---------- */\n.mitra .tamasha-slide-content code,\n.mitra .tamasha-slide-content pre {\n\tfont-size:0.9em;\n\tline-height:1.2em;\n\ttext-align:left;\n}\n\n/* ---------- tables ---------- */\n.mitra .tamasha-slide-content table td,\n.mitra .tamasha-slide-content table th {\n\tfont-size:0.8em;\n\tfont-weight:400;\n}\n\n.mitra .tamasha-slide-content table caption {\n\tcaption-side:top;\n\tfont-size:1em;\n\tmargin-bottom:0.2rem;\n}\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/themes/moon":{"title":"$:/plugins/kookma/tamasha/themes/moon","text":".moon .tamasha-presentation-frame, \n.moon .tamasha-overlay {\n\tcolor:#333;\n\tbackground-color: #f7fbfc;\n}\n\n\n\n.moon .tamasha-slide-content {\t\n\t/*font-family: 'Open Sans', sans-serif;*/\n\t/*font-family: 'Nunito Sans', sans-serif;*/\n\tfont-family: 'Lato', sans-serif;\n\tfont-weight:400;\n}\n\n.moon .tamasha-slide-content h2{\n\t/*font-family: 'Quicksand', sans-serif;*/\n/*\tfont-family: 'Nunito Sans', sans-serif;*/\n\tfont-family: 'News Cycle', Impact, sans-serif;\n\tfont-size:3rem;\n/*\tfont-weight:300;*/\n\n}\n\n.moon .tamasha-overlay.open .tamasha-slide-content {\t\n\theight:unset;\n\twidth:unset;\n}\n\n.moon .tamasha-slide-content .tamasha-slide-title{ /* used with vanilla template*/\n\tfont-weight:300;\n}\n\n/* ---------- code ---------- */\n.moon .tamasha-slide-content code,\n.moon .tamasha-slide-content pre {\n\tfont-family:'Inconsolata', monospace;\n\tfont-size:0.9em;\n\tline-height:1.2em;\n\ttext-align:left;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/themes/roya":{"title":"$:/plugins/kookma/tamasha/themes/roya","text":"/* roya only add a backgroud with parallax scrolling effects */\n.roya .tamasha-presentation-frame, \n.roya .tamasha-overlay {\ncolor:#000;\nbackground-color: #ffaa00;\nbackground-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25' viewBox='0 0 1600 800'%3E%3Cg %3E%3Cpath fill='%23ffb100' d='M486 705.8c-109.3-21.8-223.4-32.2-335.3-19.4C99.5 692.1 49 703 0 719.8V800h843.8c-115.9-33.2-230.8-68.1-347.6-92.2C492.8 707.1 489.4 706.5 486 705.8z'/%3E%3Cpath fill='%23ffb800' d='M1600 0H0v719.8c49-16.8 99.5-27.8 150.7-33.5c111.9-12.7 226-2.4 335.3 19.4c3.4 0.7 6.8 1.4 10.2 2c116.8 24 231.7 59 347.6 92.2H1600V0z'/%3E%3Cpath fill='%23ffbf00' d='M478.4 581c3.2 0.8 6.4 1.7 9.5 2.5c196.2 52.5 388.7 133.5 593.5 176.6c174.2 36.6 349.5 29.2 518.6-10.2V0H0v574.9c52.3-17.6 106.5-27.7 161.1-30.9C268.4 537.4 375.7 554.2 478.4 581z'/%3E%3Cpath fill='%23ffc500' d='M0 0v429.4c55.6-18.4 113.5-27.3 171.4-27.7c102.8-0.8 203.2 22.7 299.3 54.5c3 1 5.9 2 8.9 3c183.6 62 365.7 146.1 562.4 192.1c186.7 43.7 376.3 34.4 557.9-12.6V0H0z'/%3E%3Cpath fill='%23ffcc00' d='M181.8 259.4c98.2 6 191.9 35.2 281.3 72.1c2.8 1.1 5.5 2.3 8.3 3.4c171 71.6 342.7 158.5 531.3 207.7c198.8 51.8 403.4 40.8 597.3-14.8V0H0v283.2C59 263.6 120.6 255.7 181.8 259.4z'/%3E%3Cpath fill='%23ffd624' d='M1600 0H0v136.3c62.3-20.9 127.7-27.5 192.2-19.2c93.6 12.1 180.5 47.7 263.3 89.6c2.6 1.3 5.1 2.6 7.7 3.9c158.4 81.1 319.7 170.9 500.3 223.2c210.5 61 430.8 49 636.6-16.6V0z'/%3E%3Cpath fill='%23ffe038' d='M454.9 86.3C600.7 177 751.6 269.3 924.1 325c208.6 67.4 431.3 60.8 637.9-5.3c12.8-4.1 25.4-8.4 38.1-12.9V0H288.1c56 21.3 108.7 50.6 159.7 82C450.2 83.4 452.5 84.9 454.9 86.3z'/%3E%3Cpath fill='%23ffeb49' d='M1600 0H498c118.1 85.8 243.5 164.5 386.8 216.2c191.8 69.2 400 74.7 595 21.1c40.8-11.2 81.1-25.2 120.3-41.7V0z'/%3E%3Cpath fill='%23fff558' d='M1397.5 154.8c47.2-10.6 93.6-25.3 138.6-43.8c21.7-8.9 43-18.8 63.9-29.5V0H643.4c62.9 41.7 129.7 78.2 202.1 107.4C1020.4 178.1 1214.2 196.1 1397.5 154.8z'/%3E%3Cpath fill='%23ffff66' d='M1315.3 72.4c75.3-12.6 148.9-37.1 216.8-72.4h-723C966.8 71 1144.7 101 1315.3 72.4z'/%3E%3C/g%3E%3C/svg%3E\");\nbackground-attachment: fixed;\nbackground-size: cover;\n/*https://www.svgbackgrounds.com*/\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/themes/vanda":{"title":"$:/plugins/kookma/tamasha/themes/vanda","text":"/* vanda is a basic theme and the default theme of Tamasha*/\n\n/* ---------- code ---------- */\n.vanda .tamasha-slide-content code,\n.vanda .tamasha-slide-content pre {\n\tfont-size:0.9em;\n\tline-height:1.2em;\n\ttext-align:left;\n}\n\n/* ---------- tables ---------- */\n.vanda .tamasha-slide-content table td,\n.vanda .tamasha-slide-content table th {\n\tfont-size:0.8em;\n\tfont-weight:400;\n}\n\n.vanda .tamasha-slide-content table caption {\n\tcaption-side:top;\n\tfont-size:1em;\n\tmargin-bottom:0.2rem;\n}\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/tamasha/ui/buttons":{"title":"$:/plugins/kookma/tamasha/ui/buttons","type":"text/vnd.tiddlywiki","text":"\\define btn-toggle-presentation-mode()\n<$button class=\"tc-btn-invisible tamasha-nav-button\" actions=<<toggle-presentation-mode>> > {{$:/core/images/full-screen-button}} </$button>\n\\end\n\\define btn-toggle-author-mode()\n<$button class=\"tc-btn-invisible tamasha-nav-button\" actions=<<toggle-author-mode>> >{{$:/core/images/close-button}}</$button>\n\\end\n\n<div class=\"tamasha-viewer-nav\">\n<$button class=\"tc-btn-invisible tamasha-nav-button\" actions=<<previousSlide>> >{{$:/core/images/left-arrow}}\n</$button>\n<$button class=\"tc-btn-invisible tamasha-nav-button\" actions=<<nextSlide>> >{{$:/core/images/right-arrow}}\n</$button>\n<div class=\"tamasha-toolbar-separator\"> </div>\n<$button class=\"tc-btn-invisible tamasha-nav-button\" \n actions=\"\"\"<$action-listops $tiddler=<<stateListboxTid>> $field=\"text\" $subfilter=\"+[toggle[slideList]]\" />\"\"\" >\n\t {{$:/core/images/down-arrow}}\n</$button>\n<div class=\"tamasha-toolbar-separator\"> </div>\n<$list filter=\"[<statePresentTid>getindex[mode]match[presentation-mode]]\" \n variable=ignore emptyMessage=\"\"\"<<btn-toggle-presentation-mode>>\"\"\" \t>\n <<btn-toggle-author-mode>>\n</$list>\n</div>"},"$:/plugins/kookma/tamasha/ui/content":{"title":"$:/plugins/kookma/tamasha/ui/content","type":"text/vnd.tiddlywiki","text":"<div class=\"tamasha-slide-content\">\n<<navigator>>\n</div>\n"},"$:/plugins/kookma/tamasha/ui/footer":{"title":"$:/plugins/kookma/tamasha/ui/footer","tags":"","type":"text/vnd.tiddlywiki","text":"<div class=\"tamasha-slide-footer\">\n<span><<slideFooter>></span>\n</div>"},"$:/plugins/kookma/tamasha/ui/progressbar":{"title":"$:/plugins/kookma/tamasha/ui/progressbar","tags":"","type":"text/vnd.tiddlywiki","text":"\\define calculate-progress()\n<span class=\"bar\"\n style={{{ [tag<mainTag>allbefore{$(stateNavigatorTid)$!!text}count[]add[1]divide<SlidesCount>fixed[2]addprefix[transform:scaleX(]addsuffix[);]] }}} >\n</span>\n\\end\n\n<div class=\"tamasha-progress\">\n\t<<calculate-progress>>\n</div>\n"},"$:/plugins/kookma/tamasha/ui/slide":{"title":"$:/plugins/kookma/tamasha/ui/slide","tags":"","type":"text/vnd.tiddlywiki","text":"<$transclude tiddler=\"$:/plugins/kookma/tamasha/ui/content\" mode=block/>\n<$transclude tiddler=\"$:/plugins/kookma/tamasha/ui/footer\" mode=block/>\n<$transclude tiddler=\"$:/plugins/kookma/tamasha/ui/buttons\" mode=block/>\n<$transclude tiddler=\"$:/plugins/kookma/tamasha/ui/slidelist\" mode=block/>\n<$transclude tiddler=\"$:/plugins/kookma/tamasha/ui/slidenumber\" mode=block/>\n<$transclude tiddler=\"$:/plugins/kookma/tamasha/ui/progressbar\" mode=block/>"},"$:/plugins/kookma/tamasha/ui/slidelist":{"title":"$:/plugins/kookma/tamasha/ui/slidelist","tags":"$:/tags/Macro/Tamasha","type":"text/vnd.tiddlywiki","text":"\\define stateListboxTid() $:/state/tamasha/listbox/$(currentTiddler)$/$(myState)$\n\n\\define gotoSlide() \n<$action-setfield $tiddler=<<stateNavigatorTid>> text=<<selectedTid>> />\n<$action-listops $tiddler=<<stateListboxTid>> $field=\"text\" $subfilter=\"+[toggle[slideList]]\" />\n<$action-sendmessage $message=\"tm-focus-selector\" $param=<<presentation-frame-focus-selector>> />\n\\end\n\n\n<$list filter=\"[<stateListboxTid>get[text]match[slideList]]\" variable=\"null\">\n<div class=\"tamasha-popup\">\n<ol>\n<$list filter=\"[tag<mainTag>]\" variable=\"selectedTid\">\n<li class={{{[<stateNavigatorTid>get[text]match<selectedTid>then[currentSlide]]}}} >\n<$button class=\"tc-btn-invisible\" actions=<<gotoSlide>> >\n<$view tiddler=<<selectedTid>> field=\"title\"/>\n</$button>\n</li>\n</$list>\n</ol>\n</div>\n</$list>\n"},"$:/plugins/kookma/tamasha/ui/slidenumber":{"title":"$:/plugins/kookma/tamasha/ui/slidenumber","type":"text/vnd.tiddlywiki","text":"\\define calc-slideNumber()\n<$vars currentTid={{{[<stateNavigatorTid>get[text]] ~[tag<mainTag>first[]]}}}>\n<$text text={{{ [tag<mainTag>allbefore:include<currentTid>count[]pad[2]] }}} />\n</$vars>\n\\end\n<div class=\"tamasha-slide-number\">\n<div class=\"tamasha-number-circle\"><<calc-slideNumber>></div>\n</div>"}}} \ No newline at end of file diff --git a/tiddlers/TCTSystem/plugins/kookma/tamasha.json.meta b/tiddlers/TCTSystem/plugins/kookma/tamasha.json.meta index 2c73dd10..2ad2e4bc 100644 --- a/tiddlers/TCTSystem/plugins/kookma/tamasha.json.meta +++ b/tiddlers/TCTSystem/plugins/kookma/tamasha.json.meta @@ -9,4 +9,4 @@ plugin-type: plugin source: https://github.com/kookma/TW-Tamasha title: $:/plugins/kookma/tamasha type: application/json -version: 0.6.0 \ No newline at end of file +version: 0.6.1 \ No newline at end of file diff --git a/tiddlers/TCTSystem/plugins/kookma/toc.json b/tiddlers/TCTSystem/plugins/kookma/toc.json new file mode 100644 index 00000000..2460207d --- /dev/null +++ b/tiddlers/TCTSystem/plugins/kookma/toc.json @@ -0,0 +1 @@ +{"tiddlers":{"$:/plugins/kookma/toc/history":{"title":"$:/plugins/kookma/toc/history","tags":"","type":"text/vnd.tiddlywiki","text":"Full change log https://kookma.github.io/TW-TOC/#ChangeLog\n\n* ''1.5.0'' -- 2023.02.16 -- update to Tiddlywiki 5.2.5\n* ''1.4.1'' -- 2022.04.09 -- outlining was added\n* ''1.3.1'' -- 2021.09.27 -- stable release\n* ''0.1.0 '' -- 2020.01.23 -- initial release"},"$:/plugins/kookma/toc/icon":{"title":"$:/plugins/kookma/toc/icon","text":"<svg width=\"30\" height=\"30\" viewBox=\"0 0 1024 1024\" class=\"icon\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M707.004 461.38h56.314v28.669h-56.314zm0 63.481h56.314v28.669h-56.314zm0 62.457h56.314v27.645h-56.314zM847.276 714.28h55.29v27.645h-55.29zm0-63.481h55.29v28.669h-55.29zM440.794 265.818h28.669v-34.812h48.122v167.917H489.94v27.645H573.9v-27.645h-27.645V231.006h50.17v34.812h27.645v-63.48H440.794z\" fill=\"#FFB612\"/>\n <path d=\"M623.124 579.46c-2.798-6.717-7.539-13.938-14.256-16.738-3.289-1.469-6.35-4.073-10.198-4.073H192.852c-3.848 0-7.556 2.604-10.845 4.073-6.717 2.799-14.412 9.104-17.21 15.82-1.47 3.289-4.548 7.914-4.548 11.762v202.908c0 3.848 3.077 7.556 4.547 10.845 2.799 6.717 9.34 10.863 16.058 13.662 3.289 1.47 8.151.997 11.999.997H598.67c3.848 0 7.556.472 10.845-.997 6.717-2.8 10.811-7.566 13.61-14.282 1.469-3.289.944-6.376.944-10.225V590.305c0-3.85.525-7.558-.945-10.845zM395.761 726.744c-19.311 0-34.984-15.673-34.984-34.985s15.673-34.984 34.984-34.984c19.312 0 34.984 15.673 34.984 34.984s-15.673 34.985-34.984 34.985zM892.537 461.38h-30.926v153.583h30.926c7.697 0 10.03-2.97 10.03-10.665V478.355c0-7.696-2.333-16.975-10.03-16.975zM752.601 650.8h-31.262v91.126h31.262c7.696 0 10.718-3.987 10.718-11.684V667.27c-.001-7.695-3.023-16.47-10.718-16.47z\" fill=\"#E0E0E0\"/>\n <path d=\"M899.534 342.61H721.338V177.49c0-38.552-28.141-72.42-66.693-72.42H136.877c-38.552 0-73.897 33.868-73.897 72.42v671.698c0 38.552 35.345 66.797 73.897 66.797h643.71c41.562 0 76.127-27.645 82.774-68.6h36.173c34.705 0 59.346-26.464 59.346-61.17v-377.83c0-34.703-24.641-65.776-59.346-65.776zM91.65 177.49c0-23.159 22.069-43.752 45.228-43.752h67.4v71.74c0 23.16-16.253 38.84-39.412 38.84H91.649V177.49zm45.228 710.85c-23.16 0-45.228-15.993-45.228-39.152V272.985h73.216c38.552 0 66.032-28.955 66.032-67.508v-71.74h423.748c23.159 0 39.049 20.593 39.049 43.752v657.704c0 21.48 11.047 39.837 24.341 53.147H136.877zm696.065-479.954v426.807c0 30.856-24.946 55.975-55.802 55.975s-55.802-25.119-55.802-55.975V370.254h125.86c-6.717 15.359-14.256 25.188-14.256 38.132zm97.27 377.83c0 19.311-11.366 32.5-30.678 32.5h-37.923v-410.33c0-19.312 14.988-34.984 34.3-34.984s34.3 15.672 34.3 34.984v377.83z\" fill=\"#262626\"/>\n <path d=\"M287.211 210.528H413.15v26.621H287.211zm0 62.457H413.15v27.645H287.211zM160.25 336.466h252.9v26.621h-252.9zm0 62.457h252.9v27.645h-252.9zm0 62.457h463.82v28.669H160.25zm28.67 286.688h-28.67v45.145c0 15.435 17.17 25.503 32.603 25.503h38.045v-27.645h-41.979v-43.003zm407.505 43.003h-44.027v27.645h46.273c15.435 0 25.4-10.068 25.4-25.503v-45.145h-27.646v43.003zm2.246-232.422h-46.273v28.669h44.027v43.003h27.645v-40.017c0-15.435-9.964-31.655-25.4-31.655zm-438.42 31.656v40.017h28.668V587.32h41.98V558.65h-38.046c-15.432 0-32.603 16.219-32.603 31.655zm235.511 38.482c-34.704 0-62.972 28.268-62.972 62.972 0 34.705 28.268 62.972 62.972 62.972s62.972-28.267 62.972-62.972-28.267-62.972-62.972-62.972zm0 97.957c-19.311 0-34.984-15.673-34.984-34.985s15.673-34.984 34.984-34.984c19.312 0 34.984 15.673 34.984 34.984s-15.673 34.985-34.984 34.985zM175.608 198.48v-37.098h-31.734c-11.575 0-24.58 11.53-24.58 23.105v32.185h38.574c11.575-.001 17.74-6.618 17.74-18.192z\" fill=\"#262626\"/>\n</svg>","type":"image/svg+xml","modified":"20240731133548160","tags":""},"$:/plugins/kookma/toc/license":{"title":"$:/plugins/kookma/toc/license","tags":"","type":"text/vnd.tiddlywiki","text":"Distributed under an MIT license.\n\nCopyright (c) 2020-2023 [[Mohammad Rahmani|https://github.com/kookma]]\n\n<<<\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n<<<"},"$:/plugins/kookma/toc/macros/helper":{"title":"$:/plugins/kookma/toc/macros/helper","tags":"$:/tags/Macro/Toc","type":"text/vnd.tiddlywiki","text":"\\define tidSelectedItem() $:/temp/toc/selected-item/$(stateTiddler)$\n\\define tidToggleState() $:/temp/toc/toggle/$(stateTiddler)$\n\n\\define tidShowMode() $:/temp/toc/show-mode/$(stateTiddler)$\n\\define tidExpandAll() $:/temp/toc/expand-all//$(stateTiddler)$\n\\define tidShowTools() $:/temp/toc/show-tools/$(stateTiddler)$\n\n\\define tidTocTemplate() $:/plugins/kookma/toc/templates/show-single-item\n\\define tidBookmarkConfig() $:/config/toc/bookmarks/$(stateTiddler)$"},"$:/plugins/kookma/toc/macros/multilevel-draggable":{"title":"$:/plugins/kookma/toc/macros/multilevel-draggable","tags":"$:/tags/Macro/Toc","type":"text/vnd.tiddlywiki","text":"\\define toc-item-dragdata() $:/temp/toc/dragdata\n\\define toc-item-dragdata-path() $:/temp/toc/dragdata/path\n\\define toc-item-dragstart() \n<$action-setfield $tiddler=<<toc-item-dragdata>> text=<<actionTiddler>> />\n<$action-setfield $tiddler=<<toc-item-dragdata-path>> text=<<path>> />\n\\end\n\\define toc-item-dragend() \n<$action-deletetiddler $tiddler=<<toc-item-dragdata>> />\n<$action-deletetiddler $tiddler=<<toc-item-dragdata-path>> />\n\\end\n\n\\define toc_caption()\n<$transclude field=\"caption\">\n <$view field=\"title\" format=\"plainwikified\"/>\n</$transclude>\n\\end\n\n\\define toc-item-dragtip()\n<$wikify name=actionTiddler text={{{ [<toc-item-dragdata>get[text]] }}}><!--handles title with space in title-->\n<$vars actionTiddlerx={{{ [<toc-item-dragdata>get[text]] }}}>\n<$list filter=\"[<actionTiddler>!match<item>]\"> <!-- DON'T SHOW TIP ON SELF -->\n <div class=\"kk-toc-dragtip\">\n <nobr>drop <$tiddler tiddler=<<actionTiddler>>>''<<toc_caption>>''</$tiddler></nobr><br>\n <nobr>onto <$tiddler tiddler=<<item>> >''<<toc_caption>>''</$tiddler></nobr><br>\n <div style=\"font-size:80%; border-top:1px solid; margin-top:0.2em;\">\n NO KEY=insert before, SHIFT=insert after, CTRL=drop into\n </div>\n </div>\n</$list>\n</$vars>\n</$wikify>\n\\end\n\n\n\\define toc-item-drop()\n<$reveal default=<<actionTiddler>> type=\"nomatch\" text=<<item>>> <!-- DON'T DROP ON SELF -->\n <!-- get OLDTAG and NEWTAG, exclude special tags -->\n <$vars sourcepath={{{ [<toc-item-dragdata-path>get[text]] }}}\n targetpath=<<path>> >\n <$vars oldtag= {{{ [<sourcepath>split[/]]-[<actionTiddler>]+[last[]] }}}\n newtag={{{ [<targetpath>split[/]]-[<item>]+[last[]] }}}>\n <$reveal default=<<modifier>> type=\"match\" text=\"normal\"> <!-- DROP BEFORE SIBLING -->\n <$set name=\"order\" filter=\"[<newtag>tagging[]]\">\n <$list filter=<<order>>> <$action-deletefield $field=\"list-before\"/> <$action-deletefield $field=\"list-after\"/> </$list>\n <$action-listops $tiddler=<<actionTiddler>> $field=\"tags\" $subfilter=\"-[<oldtag>] [<newtag>]\" />\n <$action-listops $tiddler=<<oldtag>> $field=\"list\" $subfilter=\"-[<actionTiddler>]\" />\n <$action-listops $tiddler=<<newtag>> $field=\"list\" $subfilter=\"[enlist<order>] -[<actionTiddler>] [<actionTiddler>] +[putbefore<item>]\" />\n </$set>\n </$reveal>\n <$reveal default=<<modifier>> type=\"match\" text=\"shift\"> <!-- DROP AFTER SIBLING -->\n <$set name=\"order\" filter=\"[<newtag>tagging[]]\">\n <$list filter=<<order>>> <$action-deletefield $field=\"list-before\"/> <$action-deletefield $field=\"list-after\"/> </$list>\n <$action-listops $tiddler=<<actionTiddler>> $field=\"tags\" $subfilter=\"-[<oldtag>] [<newtag>]\" />\n <$action-listops $tiddler=<<oldtag>> $field=\"list\" $subfilter=\"-[<actionTiddler>]\" />\n <$action-listops $tiddler=<<newtag>> $field=\"list\" $subfilter=\"[enlist<order>] -[<actionTiddler>] [<actionTiddler>] +[putafter<item>]\" />\n </$set>\n </$reveal>\n <$reveal default=<<modifier>> type=\"match\" text=\"ctrl\"> <!-- DROP AS CHILD -->\n <$set name=\"order\" filter=\"[<item>tagging[]]\">\n <$list filter=<<order>>> <$action-deletefield $field=\"list-before\"/> <$action-deletefield $field=\"list-after\"/> </$list>\n <$action-listops $tiddler=<<actionTiddler>> $field=\"tags\" $subfilter=\"-[<oldtag>] [<item>]\" />\n <$action-listops $tiddler=<<oldtag>> $field=\"list\" $subfilter=\"-[<actionTiddler>]\" />\n <$action-listops $tiddler=<<item>> $field=\"list\" $subfilter=\"[enlist<order>] -[<actionTiddler>] [<actionTiddler>]\" />\n </$set>\n </$reveal>\n </$vars>\n </$vars>\n</$reveal>\n\\end"},"$:/plugins/kookma/toc/macros/multilevel-exapndable":{"title":"$:/plugins/kookma/toc/macros/multilevel-exapndable","modified":"20240731133548160","tags":"$:/tags/Macro/Toc","type":"text/vnd.tiddlywiki","text":"\\define toc-open-icon() $:/core/images/down-arrow\n\\define toc-closed-icon() $:/core/images/right-arrow\n\n\\define toc-show-item-authormode(item, is-branch:no)\n<$vars item=<<__item__>> is-branch=<<__is-branch__>> >\n<$droppable actions=<<toc-item-drop>>>\n\t<div class=\"tc-droppable-placeholder kk-toc-placeholder\"></div> \n\t<$draggable tiddler=<<item>> startactions=<<toc-item-dragstart>> endactions=<<toc-item-dragend>> dragimagetype=\"blank\">\n \t{{$item$||$(tidTocTemplate)$}}\n\t</$draggable>\n\t<div class=\"tc-droppable-placeholder kk-toc-placeholder\"><<toc-item-dragtip>></div> \n</$droppable>\n</$vars>\n\\end\n\n\\define toc-show-item-readermode(item, is-branch:no)\n<$vars item=<<__item__>> is-branch=<<__is-branch__>> >\n {{$item$||$(tidTocTemplate)$}}\n</$vars>\n\\end\n\n\n\\define toggle-branch()\n<$reveal type=\"nomatch\" stateTitle=<<tidToggleState>> stateIndex=<<path>> text=\"yes\">\n <$button class=\"tc-btn-invisible\" setTitle=<<tidToggleState>> setIndex=<<path>> setTo=\"yes\">\n <$transclude tiddler=<<toc-closed-icon>> />\n </$button>\n </$reveal>\n <$reveal type=\"match\" stateTitle=<<tidToggleState>> stateIndex=<<path>> text=\"yes\">\n <$button class=\"tc-btn-invisible\" setTitle=<<tidToggleState>> setIndex=<<path>> >\n\t <$transclude tiddler=<<toc-open-icon>> />\n </$button>\n </$reveal>\n\\end \n\n\n\\define _toc-tree-body(here, exclude, path)\n<$vars path=\"\"\"$path$/$here$\"\"\">\n<$list filter=\"\"\"[tag[$here$]] $exclude$ +[limit[1]]\"\"\" emptyMessage=\"\"\"<li style=\"padding-left:1.2em\"><$macrocall $name=<<toc-show-mode>> item=<<__here__>> /></li>\"\"\" variable=ignore>\n <li><$macrocall $name=<<toc-show-mode>> item=<<__here__>> is-branch=\"yes\"/></li>\n <$reveal type=\"match\" stateTitle=<<tidToggleState>> stateIndex=<<path>> text=\"yes\">\n <ol>\n <$list filter=\"\"\"[tag[$here$]] $exclude$\"\"\">\n <$macrocall $name=\"_toc-tree-body\" here=<<currentTiddler>> exclude=\"\"\"$exclude$ -[[$here$]]\"\"\" path=<<path>>/>\n </$list>\n </ol>\n </$reveal>\n</$list> \n</$vars>\n\\end\n\n\n\\define toc-tree(here, exclude, mode)\n<$set name=toc-show-mode value=<<__mode__>> emptyValue=\"toc-show-item-readermode\">\n<div class=\"kk-toc\" style=\"margin-top:-10px;\">\n<ol>\n<$list filter=\"\"\"[tag[$here$]] $exclude$ -[[$here$]]\"\"\">\n<$macrocall $name=\"_toc-tree-body\" here=<<currentTiddler>> exclude=\"\"\"$exclude$ -[[$here$]]\"\"\" path=\"\"\"$here$\"\"\" />\n</$list>\n</ol>\n</div>\n</$set>\n\\end\n\n\\define item-path() $(path)$/$(item)$\n\n\\define _toc-expand(here, exclude, path)\n<$list filter=\"\"\"[tag[$here$]] $exclude$ -[[$here$]]\"\"\">\n<$vars item=<<currentTiddler>> path=\"\"\"$path$\"\"\" >\n <$action-setfield $tiddler=<<tidToggleState>> $index=\"\"\"$path$\"\"\" $value=\"yes\"/>\n <$macrocall $name=\"_toc-expand\" here=<<item>> exclude=\"\"\"$exclude$ -[[$here$]]\"\"\" path=<<item-path>>/>\n</$vars>\t \n</$list>\n\\end\n\n\n\\define collapse-expand-all(here, exclude)\n<$reveal type=\"match\" stateTitle=<<tidExpandAll>> stateField=\"text\" text=\"expand-all\">\n<$button class=\"tc-btn-invisible kk-toc-btn\" tooltip=\"collapse all\">{{$:/core/images/fold-button}}\n<$action-deletetiddler $tiddler=<<tidToggleState>> />\n<$action-setfield $tiddler=<<tidExpandAll>> text=\"collapse-all\"/>\n</$button>\n</$reveal>\n<$reveal type=\"nomatch\" stateTitle=<<tidExpandAll>> stateField=\"text\" text=\"expand-all\">\n<$button class=\"tc-btn-invisible kk-toc-btn\" tooltip=\"expand all\">{{$:/core/images/unfold-button}}\n<$macrocall $name=\"_toc-expand\" here=<<__here__>> exclude=<<__exclude__>> path=<<__here__>> />\n<$action-setfield $tiddler=<<tidExpandAll>> text=\"expand-all\"/>\n</$button>\n</$reveal>\n\\end\n\n\\define multilevel-toc-expandable(tag:\"TableOfContents\", exclude:\"\", stateTiddler:\"multilevelState\")\n<$set name=stateTiddler value=<<__stateTiddler__>> >\n<$macrocall $name=collapse-expand-all here=<<__tag__>> exclude=<<__exclude__>> />\n<$macrocall $name=toc-tree here=<<__tag__>> exclude=<<__exclude__>> mode=\"toc-show-item-readermode\" />\n</$set>\n\\end"},"$:/plugins/kookma/toc/macros/multilevel-navigation":{"title":"$:/plugins/kookma/toc/macros/multilevel-navigation","tags":"$:/tags/Macro/Toc","type":"text/vnd.tiddlywiki","text":"\\define toc-list(here,exclude)\n<$list filter=\"\"\"[tag[$here$]] [subfilter<__exclude__>] -[<__here__>]\"\"\">\n <$text text=\"[[\"/><<currentTiddler>><$text text=\"]]\"/>\n <$macrocall $name=\"toc-list\" here=<<currentTiddler>> exclude=\"\"\"$exclude$ -[[$here$]]\"\"\"/>\n</$list>\n\\end\n\n\\define toc-hierarchical-navigation(tag:\"\", exclude:\"\", class, close:\"no\")\n\\define prev-actions()\n<$action-setfield $tiddler=<<tidSelectedItem>> text=<<prevTiddler>> /> \n<$list filter=\"[<__close__>match[yes]]\" variable=ignore><$action-sendmessage $message=\"tm-close-tiddler\" $param=<<currentTiddler>>/></$list>\n\\end prev-actions\n\n\\define next-actions()\n<$action-setfield $tiddler=<<tidSelectedItem>> text=<<nextTiddler>> /> \n<$list filter=\"[<__close__>match[yes]]\" variable=ignore><$action-sendmessage $message=\"tm-close-tiddler\" $param=<<currentTiddler>>/></$list>\n\\end next-actions\n\n<$wikify name=\"all\" text=\"\"\"<$macrocall $name=\"toc-list\" here=<<__tag__>> exclude=<<__exclude__>> />\"\"\">\n<$vars prev={{{ [enlist<all>before<currentTiddler>] }}} >\n<$vars next={{{ [enlist<all>after<currentTiddler>] }}} >\n<div class=\"$class$\">\n<$list filter=\"[<prev>!is[missing]]\" variable=\"prevTiddler\">\n<$button to=<<prevTiddler>> tooltip=<<prevTiddler>> class=\"tc-btn-invisible $class$\" actions=<<prev-actions>> >previous</$button>\n</$list>\n<$list filter=\"[<next>!is[missing]] [<prev>!is[missing]] +[count[]] -1 -0\" variable=ignore>|</$list>\n<$list filter=\"[<next>!is[missing]]\" variable=\"nextTiddler\">\n<$button to=<<nextTiddler>> tooltip=<<nextTiddler>> class=\"tc-btn-invisible $class$\" actions=<<next-actions>> >next</$button>\n</$list>\n</div>\n</$vars>\n</$vars>\n</$wikify>\n\\end toc-hierarchical-navigation\n\n\n\\define multilevel-toc-navigation(tag:\"TableOfContents\", exclude:\"\", close:\"no\", class:\"\", stateTiddler:\"multilevelState\")\n<$set name=stateTiddler value=<<__stateTiddler__>> >\n<$list filter=\"[<currentTiddler>!is[system]]\">\n <div class=\"kk-toc-hideForPrint\">\n <$macrocall $name=\"toc-hierarchical-navigation\"\n tag=<<__tag__>> exclude=<<__exclude__>> close=<<__close__>> class=<<__class__>> />\n </div>\n</$list>\n</$set>\n\\end"},"$:/plugins/kookma/toc/macros/multilevel-toc-all":{"title":"$:/plugins/kookma/toc/macros/multilevel-toc-all","tags":"$:/tags/Macro/Toc","type":"text/vnd.tiddlywiki","text":"\\define toc-all-body(here,exclude)\n<$list filter=\"\"\"[tag[$here$]] $exclude$ -[[$here$]]\"\"\">\n <li><$link/></li>\n <$list filter=\"[tag<currentTiddler>]+[limit[1]]\" variable=ignore>\n <ol style=\"padding-left:1.5em\">\n <$macrocall $name=\"toc-all-body\" here=<<currentTiddler>> exclude=\"\"\"$exclude$ -[[$here$]]\"\"\"/>\n </ol>\n</$list>\n</$list>\n\\end\n\n\\define toc-all(tag, exclude)\n<div class=\"kk-toc\">\n <ol>\n <$macrocall $name=\"toc-all-body\" here=<<__tag__>> exclude=<<__exclude__>> />\n </ol>\n</div>\n\\end"},"$:/plugins/kookma/toc/macros/multilevel-ui":{"title":"$:/plugins/kookma/toc/macros/multilevel-ui","tags":"$:/tags/Macro/Toc","type":"text/vnd.tiddlywiki","text":"\\define show-mode()\n<$reveal type=\"nomatch\" stateTitle=<<tidShowMode>> stateField=\"text\" text=\"toc-show-item-authormode\">\n<$button class=\"tc-btn-invisible kk-toc-btn\" tooltip=\"switch to author mode\">{{$:/core/images/edit-button}}\n<$action-setfield $tiddler=<<tidShowMode>> text=\"toc-show-item-authormode\"/>\n</$button>\n</$reveal>\n<$reveal type=\"match\" stateTitle=<<tidShowMode>> stateField=\"text\" text=\"toc-show-item-authormode\">\n<$button class=\"tc-btn-invisible kk-toc-btn\" tooltip=\"switch to reader mode\">{{$:/core/images/done-button}}\n<$action-setfield $tiddler=<<tidShowMode>> text=\"toc-show-item-readermode\"/>\n</$button>\n</$reveal>\n\\end\n\n\\define remove-all-bookmarks()\n<$button class=\"tc-btn-invisible kk-toc-btn\" tooltip=\"remove all bookmarks\">☆\n<$list filter=\"[<tidBookmarkConfig>!is[missing]]\" variable=ignore>\n<$action-deletetiddler $tiddler=<<tidBookmarkConfig>> />\n</$list>\n</$button>\n\\end\n\n\\define toggle-display-btnTools()\n<$list filter=\"[<tidShowTools>get[text]match[show]]\"\n emptyMessage=\"\"\"<$action-setfield $tiddler=<<tidShowTools>> text=\"show\"/>\"\"\">\n<$action-setfield $tiddler=<<tidShowTools>> text=\"hide\"/>\n</$list>\n\\end\n\n\\define toc-manager-ui()\n<span class=\"kk-toc-tools-manager\"> ---  \n<$button class=\"tc-btn-invisible kk-toc-btn\" tooltip=\"toggle tools buttons\" actions=<<toggle-display-btnTools>>>\n{{$:/core/images/options-button}}\n</$button>\n<$reveal stateTitle=<<tidShowTools>> stateField=text text=\"show\" type=\"match\">\n<$macrocall $name=\"collapse-expand-all\" here=<<__tag__>> exclude=<<__exclude__>> />\n<$reveal type=nomatch stateTitle=<<adminTid>> stateField=\"text\" text=\"reader\" default=\"author\">\n<<show-mode>><!--only hide edit tools if adminTid tiddler text is reader-->\n</$reveal>\n<<remove-all-bookmarks>>\n</$reveal>\n</span>\n\\end\n\n\\define toc-ui(tag:\"TableOfContents\", exclude:\"\", stateTiddler:\"multilevelState\")\n<$set name=stateTiddler value=<<__stateTiddler__>> >\n<<toc-manager-ui>>\n<$macrocall $name=toc-tree here=<<__tag__>> exclude=<<__exclude__>> mode={{{[<tidShowMode>get[text]]}}} />\n</$set>\n\\end\n\n"},"$:/plugins/kookma/toc/macros/twolevel-expandable":{"title":"$:/plugins/kookma/toc/macros/twolevel-expandable","tags":"$:/tags/Macro/Toc","type":"text/vnd.tiddlywiki","text":"\\define toc-open-icon() $:/core/images/down-arrow\n\\define toc-closed-icon() $:/core/images/right-arrow\n\n\\define twolevel-toc-show-single-item(item)\n<$set name=\"openItemClass\" filter=\"[<tidSelectedItem>get[text]match<__item__>]\" value=\"tc-btn-invisible kk-toc-opened-item\" emptyValue=\"tc-btn-invisible tc-tiddlylink\">\n<$button class=<<openItemClass>> style=\"outline:none;\" to=<<__item__>> dragTiddler=<<__item__>>>\n <$view tiddler=<<__item__>> field=\"caption\">\n <$view tiddler=<<__item__>> field=\"title\"></$view>\n </$view>\n<$action-setfield $tiddler=<<tidSelectedItem>> text=<<__item__>> /> \n</$button>\n</$set>\n\\end \n\n\n\\define twolevel-toc-body(here, exclude)\n<$list filter=\"\"\"[tag[$here$]] $exclude$ +[limit[1]]\"\"\" emptyMessage=\"\"\"<li class=\"kk-toc-item\" style=\"padding-left:1.2em\"><$macrocall $name=twolevel-toc-show-single-item item=<<__here__>> /></li>\"\"\" variable=ignore>\n<li class=\"kk-toc-item\">\n<$reveal type=\"nomatch\" stateTitle=<<tidToggleState>> stateIndex=<<__here__>> text=\"yes\">\n <$button class=\"tc-btn-invisible tc-tiddlylink\" style=\"outline:none;\" setTitle=<<tidToggleState>> setIndex=<<__here__>> setTo=\"yes\">\n <$transclude tiddler=<<toc-closed-icon>> />\n </$button>\n </$reveal>\n <$reveal type=\"match\" stateTitle=<<tidToggleState>> stateIndex=<<__here__>> text=\"yes\">\n <$button class=\"tc-btn-invisible tc-tiddlylink\" style=\"outline:none;\" setTitle=<<tidToggleState>> setIndex=<<__here__>> setTo=\"no\">\n <$transclude tiddler=<<toc-open-icon>> />\n </$button>\n </$reveal>\n<$macrocall $name=twolevel-toc-show-single-item item=<<__here__>> />\n</li>\n<$reveal type=\"match\" stateTitle=<<tidToggleState>> stateIndex=<<__here__>> text=\"yes\">\n<ol>\n<$list filter=\"\"\"[tag[$here$]] $exclude$\"\"\">\n<li class=\"kk-toc-item\"><$macrocall $name=twolevel-toc-show-single-item item=<<currentTiddler>> /></li>\n</$list>\n</ol>\n</$reveal>\n\\end\n\n\n\\define twolevel-toc-tree(here, exclude)\n<div class=\"kk-toc\" style=\"margin-top:-10px\">\n<ol>\n<$list filter=\"\"\"[tag[$here$]] $exclude$\"\"\"> \n<$macrocall $name=twolevel-toc-body here=<<currentTiddler>> exclude=<<__exclude__>> />\n</$list>\n</ol>\n</div>\n\\end\n\n\n\\define twolevel-toc-expand-all(here, exclude)\n<$list filter=\"\"\"[tag[$here$]] $exclude$\"\"\"> \n<$list filter=\"[tag<currentTiddler>count[]!match[0]]\" variable=ignore>\n<$action-setfield $tiddler=<<tidToggleState>> $index=<<currentTiddler>> $value=\"yes\"/>\n</$list>\n</$list>\n\\end\n\n\n\\define twolevel-collapse-expand-all(here, exclude)\n<$reveal type=\"match\" stateTitle=<<tidExpandAll>> stateField=\"text\" text=\"expand-all\">\n<$button tooltip=\"collapse all\" class=\"tc-btn-invisible kk-toc-btn\" style=\"outline:none;\" tooltip=\"collapse all\">{{$:/core/images/fold-button}}\n<$action-deletetiddler $tiddler=<<tidToggleState>> />\n<$action-setfield $tiddler=<<tidExpandAll>> text=\"collapse-all\"/>\n</$button>\n</$reveal>\n<$reveal type=\"nomatch\" stateTitle=<<tidExpandAll>> stateField=\"text\" text=\"expand-all\">\n<$button tooltip=\"expand all\" class=\"tc-btn-invisible kk-toc-btn\" style=\"outline:none;\">{{$:/core/images/unfold-button}}\n<$macrocall $name=\"twolevel-toc-expand-all\" here=<<__here__>> exclude=<<__exclude__>> />\n<$action-setfield $tiddler=<<tidExpandAll>> text=\"expand-all\"/>\n</$button>\n</$reveal>\n\\end\n\n\n\\define twolevel-toc-expandable(tag:\"Contents\", exclude:\"\", stateTiddler:\"twolevelState\")\n<$set name=stateTiddler value=<<__stateTiddler__>> >\n<$macrocall $name=twolevel-collapse-expand-all here=<<__tag__>> exclude=<<__exclude__>> />\n<$macrocall $name=twolevel-toc-tree here=<<__tag__>> exclude=<<__exclude__>> />\n</$set>\n\\end"},"$:/plugins/kookma/toc/macros/twolevel-navigation":{"title":"$:/plugins/kookma/toc/macros/twolevel-navigation","tags":"$:/tags/Macro/Toc","type":"text/vnd.tiddlywiki","text":"\\define twolevel-toc-list(here, exclude)\n<$list filter=\"\"\"[tag[$here$]][<__exclude__>]\"\"\"> \n <$text text={{{ [<currentTiddler>format:titlelist[]] }}}/>\n <$list filter=\"\"\"[tag<currentTiddler>] [<__exclude__>]\"\"\">\n <$text text={{{ [<currentTiddler>format:titlelist[]] }}}/>\n </$list>\n</$list>\n\\end\n\n\n\\define twolevel-toc-hierarchical-navigation(tag:\"\", class, exclude:\"\", close:\"no\")\n\\define prev-actions()\n<$action-setfield $tiddler=<<tidSelectedItem>> text=<<prevTiddler>> /> \n<$list filter=\"[<__close__>match[yes]]\" variable=ignore><$action-sendmessage $message=\"tm-close-tiddler\" $param=<<currentTiddler>>/></$list>\n\\end prev-actions\n\n\\define next-actions()\n<$action-setfield $tiddler=<<tidSelectedItem>> text=<<nextTiddler>> /> \n<$list filter=\"[<__close__>match[yes]]\" variable=ignore><$action-sendmessage $message=\"tm-close-tiddler\" $param=<<currentTiddler>>/></$list>\n\\end next-actions\n\n<$wikify name=\"all\" text=\"\"\"<$macrocall $name=\"twolevel-toc-list\" here=<<__tag__>> exclude=<<__exclude__>>/>\"\"\">\n<$vars prev={{{ [enlist<all>before<currentTiddler>] }}} >\n<$vars next={{{ [enlist<all>after<currentTiddler>] }}} >\n<div class=\"$class$\">\n<$list filter=\"[<prev>!is[missing]]\" variable=\"prevTiddler\">\n<$button to=<<prevTiddler>> tooltip=<<prevTiddler>> class=\"tc-btn-invisible $class$\" actions=<<prev-actions>> >previous</$button>\n</$list>\n<$list filter=\"[<next>!is[missing]] [<prev>!is[missing]] +[count[]] -1 -0\" variable=ignore>|</$list>\n<$list filter=\"[<next>!is[missing]]\" variable=\"nextTiddler\">\n<$button to=<<nextTiddler>> tooltip=<<nextTiddler>> class=\"tc-btn-invisible $class$\" actions=<<next-actions>> >next</$button>\n</$list>\n</div>\n</$vars>\n</$vars>\n</$wikify>\n\\end twolevel-toc-hierarchical-navigation\n\n\\define twolevel-toc-navigation(tag:\"Contents\", exclude=<<__exclude__>>, close:\"no\", class:\"\", stateTiddler:\"twolevelState\")\n<$set name=stateTiddler value=<<__stateTiddler__>> >\n<$list filter=\"[<currentTiddler>!is[system]]\">\n <div class=\"kk-twolevel-toc-hideForPrint\">\n <$macrocall $name=twolevel-toc-hierarchical-navigation \n tag=<<__tag__>> exclude=<<__exclude__>> close=<<__close__>> class=<<__class__>> />\n </div>\n</$list>\n</$set>\n\\end"},"$:/plugins/kookma/toc/readme":{"title":"$:/plugins/kookma/toc/readme","tags":"","type":"text/vnd.tiddlywiki","text":"; TOC\nTOC plugin contains several macros, stylesheets and templates to create table of contents and navigator buttons. In contrast to Tiddlywiki core macros, the TOC plugin has many extra features including\n\n* non recursive two level toc\n* hierarchical navigation\n* exclude feature to exclude a branch or specific entries\n* track and highlight the TOC entry opened from table of contents or by navigation buttons\n\nLike core toc macro, TOC plugin supports also the recursive multi level table of contents, but here, it also support hierarchical navigation.\n\n;Code and demo\nFor learning plugin features, syntax, tutorial and examples see the plugin demo and code pages\n\n* Demo: https://kookma.github.io/TW-TOC/\n* Code: https://github.com/kookma/TW-TOC\n"},"$:/plugins/kookma/toc/styles/hierarchical-navigation":{"title":"$:/plugins/kookma/toc/styles/hierarchical-navigation","text":".kk-toc-navigation{\n font-weight: 600;\n}\n\n@media print {\n .kk-toc-hideForPrint{display:none;}\n}\n ","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/toc/styles/main":{"title":"$:/plugins/kookma/toc/styles/main","text":"/* these styles are used to customize the TOC tree and ui */\n/* toc tree lists */\n.kk-toc ol {\n list-style-type: none;\n padding-left:0;\n}\n.kk-toc ol ol{\n list-style-type: none;\n padding-left:2em;\n}\n\n/* bold first level entry and normal weight for other levels */\n.kk-toc li .tc-tiddlylink{font-weight: bold;}\n.kk-toc ol ol .tc-tiddlylink{font-weight:normal;}\n\n\n.kk-toc-item { text-align:left; white-space:nowrap; } /* prevent wrapping long entries*/\n.kk-toc-item img { height:1em; width:1em; }\n.kk-toc-item svg { height:1em; width:1em;}\n\n/* More tools button fade-in */\n.kk-toc-item .kk-toc-tools { opacity:0.0; }\n.kk-toc-item:hover .kk-toc-tools { opacity:0.5; }\n.kk-toc-item:hover .kk-toc-tools:hover { opacity:1.0; }\n\n/* bookmark button fade-in*/\n.kk-toc-item .kk-bookmark { opacity:0.0; }\n.kk-toc-item:hover .kk-bookmark { opacity:0.5; }\n.kk-toc-item:hover .kk-bookmark:hover { opacity:1.0; }\n.kk-toc-item .kk-bookmark.show { opacity:1.0 !important; }\n\n/* drag and drop elements */\n.kk-toc-placeholder{ position:relative; border:0 !important; border-bottom:1px dotted blue !important; }\n.kk-toc-dragtip {\n position:absolute; z-index:1; right:0.5em; top:0.5em; padding:0.25em 0.5em;\n border:1px solid lightgray; box-shadow: 0.3em 0.3em 0.5em rgba(0,0,0,0.3);\n background:white; text-align:center; font-size:80%; line-height:100%;\n}\n\n\n/* set color of links when toc is used in a sidebar tab*/\n.tc-sidebar-lists .kk-toc-item .tc-tiddlylink{color:#999999}\n.tc-sidebar-lists .kk-toc-item svg { height:1em; width:1em; fill: #acacac;}\n\n/* item when are visited NOT in sidebar*/\n/*.kk-toc li .tc-tiddlylink{color:black;} selected or clicked item */\n.kk-toc-opened-item{ \n\tpadding:0;\n\tpadding-left:5px; \n\tborder-radius: unset;\n\tborder-left-width:2px; \n\tborder-left-style:solid;}\n\n/* ui buttons on sidebar */\n.kk-toc button {outline:none;}\n.kk-toc-btn {outline:none;}\n.tc-sidebar-lists .kk-toc-btn svg { fill: #acacac;}\n.tc-sidebar-lists .kk-toc-btn { color: #acacac;}\n\n\n\n\n/* manager buttons */\n.kk-toc-tools-manager { opacity:0.5; }\n.kk-toc-tools-manager:hover { opacity:1.0; }","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/toc/templates/bookmark":{"title":"$:/plugins/kookma/toc/templates/bookmark","type":"text/vnd.tiddlywiki","text":"\\define bkm-is-bookmark() $(tidBookmarkConfig)$##$(currentTiddler)$\n\\define bkm-emptystar() ☆\n\\define bkm-filledstar() ★\n\\define bkm-tip-addbkm() add '$(tiptext)$' to Bookmarks\n\\define bkm-tip-rembkm() remove '$(tiptext)$' from Bookmarks\n\n<!-- ADD/REMOVE ITEM FROM BOOKMARKS -->\n<$set name=\"tiptext\" filter=\"[<currentTiddler>has[caption]]\" value={{!!caption}} emptyValue={{!!title}}>\n<$reveal state=<<bkm-is-bookmark>> type=\"match\" text=\"\">\n <$button class=\"tc-btn-invisible\" tooltip=<<bkm-tip-addbkm>>>\n <$action-setfield $tiddler=<<tidBookmarkConfig>> $index=<<currentTiddler>> $value=<<now>>/>\n <span class=\"kk-bookmark\"><<bkm-emptystar>></span>\n </$button>\n</$reveal>\n<$reveal state=<<bkm-is-bookmark>> type=\"nomatch\" text=\"\">\n <$button class=\"tc-btn-invisible kk-toc-btn\" tooltip=<<bkm-tip-rembkm>>>\n <$action-setfield $tiddler=<<tidBookmarkConfig>> $index=<<currentTiddler>>/> <!-- DELETEINDEX -->\n <span class=\"kk-bookmark.show\"><<bkm-filledstar>></span>\n </$button></$reveal>\n</$set>"},"$:/plugins/kookma/toc/templates/more-actions":{"title":"$:/plugins/kookma/toc/templates/more-actions","type":"text/vnd.tiddlywiki","text":"\\whitespace trim\n\\define config-title()\n$:/config/ViewToolbarButtons/Visibility/$(listItem)$\n\\end\n<$button popup=<<qualify \"$:/state/popup/more\">> tooltip={{$:/language/Buttons/More/Hint}} aria-label={{$:/language/Buttons/More/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/down-arrow}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/More/Caption}}/>\n</span>\n</$list>\n</$button>\n<$reveal state=<<qualify \"$:/state/popup/more\">> type=\"popup\" position=\"belowleft\" animate=\"yes\">\n\n<div class=\"tc-drop-down\">\n\n<$set name=\"tv-config-toolbar-icons\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-text\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-class\" value=\"tc-btn-invisible\">\n\n<$list filter=\"$:/core/ui/Buttons/new-here $:/core/ui/Buttons/new-journal-here $:/core/ui/Buttons/clone $:/core/ui/Buttons/open-window\" variable=\"listItem\">\n\n<$set name=\"tv-config-toolbar-class\" filter=\"[<tv-config-toolbar-class>] [<listItem>encodeuricomponent[]addprefix[tc-btn-]]\">\n\n<$transclude tiddler=<<listItem>> mode=\"inline\"/>\n\n</$set>\n\n</$list>\n\n</$set>\n\n</$set>\n\n</$set>\n\n</div>\n\n</$reveal>"},"$:/plugins/kookma/toc/templates/show-single-item":{"title":"$:/plugins/kookma/toc/templates/show-single-item","tags":"show-content","type":"text/vnd.tiddlywiki","text":"\\define toc-show-menu()\n<!-- SHOW AUTHOR TOOLS AND BOOKMARK STAR -->\n<span class=\"kk-toc-tools\"> {{||$:/plugins/kookma/toc/templates/more-actions}} </span>\n{{||$:/plugins/kookma/toc/templates/bookmark}}\n\\end\n\n\\define show-single-item()\n<$set name=\"openItemClass\" filter=\"[<tidSelectedItem>get[text]match<item>]\" value=\"tc-btn-invisible tc-tiddlylink kk-toc-opened-item\" emptyValue=\"tc-btn-invisible tc-tiddlylink\">\n<!--show the toggle branch button if the item is a branch -->\n<$list filter=\"[<is-branch>match[yes]]\" variable=ignore><<toggle-branch>></$list>\n<$button class=<<openItemClass>> style=\"outline:none;\" to=<<item>> >\n <$tiddler tiddler=<<item>>><<toc_caption>></$tiddler>\n<$action-setfield $tiddler=<<tidSelectedItem>> text=<<item>> /> \n</$button>\n</$set>\n\\end \n\n<$reveal default=<<toc-show-mode>> type=\"match\" text=\"toc-show-item-authormode\" >\n<div class=\"kk-toc-item\" title=\"drag to rearrange items\">\n <<show-single-item>>\n <span style=\"float:right;margin-left:0.5em;\"> <<toc-show-menu>> </span>\n <div style=\"clear:both;\"></div>\n</div>\n</$reveal>\n<$reveal default=<<toc-show-mode>> type=\"nomatch\" text=\"toc-show-item-authormode\" >\n<div class=\"kk-toc-item\" title={{!!title}}>\n <<show-single-item>>\n<!--1. comment to deactivate bookmarks in reader mode-->\n <span style=\"float:right;margin-left:0.5em;\">\n {{||$:/plugins/kookma/toc/templates/bookmark}}\n </span>\n <div style=\"clear:both;\"></div>\n<!--1. end -->\n</div>\n</$reveal>\n\n"}}} \ No newline at end of file diff --git a/tiddlers/TCTSystem/plugins/kookma/toc.json.meta b/tiddlers/TCTSystem/plugins/kookma/toc.json.meta new file mode 100644 index 00000000..1c3d9465 --- /dev/null +++ b/tiddlers/TCTSystem/plugins/kookma/toc.json.meta @@ -0,0 +1,12 @@ +author: Mohammad Rahmani +core-version: >=5.2.5 +dependents: +description: Table of contents and navigation builder +list: readme license history +name: Toc +plugin-type: plugin +source: https://github.com/kookma/TOC +stability: STABILITY_2_STABLE +title: $:/plugins/kookma/toc +type: application/json +version: 1.6.2 \ No newline at end of file diff --git a/tiddlers/TCTSystem/plugins/kookma/utility.json b/tiddlers/TCTSystem/plugins/kookma/utility.json index 0286732e..33678d08 100644 --- a/tiddlers/TCTSystem/plugins/kookma/utility.json +++ b/tiddlers/TCTSystem/plugins/kookma/utility.json @@ -1 +1 @@ -{"tiddlers":{"$:/plugins/kookma/utility/actions/view-fields":{"title":"$:/plugins/kookma/utility/actions/view-fields","code-body":"yes","key":"((view-fields))","tags":"$:/tags/KeyboardShortcut","type":"text/vnd.tiddlywiki","text":"<$action-listops $tiddler=\"$:/state/utility/view-fields\" $field=\"text\" $subfilter=\"+[toggle[show],[hide]]\" />"},"$:/config/ShortcutInfo/customize-ui":{"title":"$:/config/ShortcutInfo/customize-ui","tags":"","type":"text/vnd.tiddlywiki","text":"Show customize UI dialog"},"$:/config/ShortcutInfo/switch-reader-mode":{"title":"$:/config/ShortcutInfo/switch-reader-mode","type":"text/vnd.tiddlywiki","text":"Toggle the reader mode"},"$:/config/ShortcutInfo/view-fields":{"title":"$:/config/ShortcutInfo/view-fields","tags":"","type":"text/vnd.tiddlywiki","text":"Show fields in view mode"},"$:/config/shortcuts/customize-ui":{"title":"$:/config/shortcuts/customize-ui","type":"text/vnd.tiddlywiki","text":"ctrl-shift-Period"},"$:/config/shortcuts/switch-reader-mode":{"title":"$:/config/shortcuts/switch-reader-mode","type":"text/vnd.tiddlywiki","text":"ctrl-shift-Slash"},"$:/config/shortcuts/view-fields":{"title":"$:/config/shortcuts/view-fields","tags":"","type":"text/vnd.tiddlywiki","text":"ctrl-Slash"},"$:/plugins/kookma/utility/customize-ui/actions":{"title":"$:/plugins/kookma/utility/customize-ui/actions","key":"((customize-ui))","tags":"$:/tags/KeyboardShortcut","type":"text/vnd.tiddlywiki","text":"<$action-sendmessage $message=\"tm-modal\" $param=\"$:/plugins/kookma/utility/customize-ui/modal\" />"},"$:/plugins/kookma/utility/customize-ui/modal":{"title":"$:/plugins/kookma/utility/customize-ui/modal","caption":"Customize UI elements","tags":"","type":"text/vnd.tiddlywiki","text":"''Show/hide selected UI elements''\n\n<div class=\"tc-control-panel\">\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Toolbars]!has[draft.of]] [all[shadows+tiddlers]tag[$:/tags/Utility/UI]!has[draft.of]]\" default=\"$:/core/ui/ControlPanel/Toolbars/ViewToolbar\" class=\"tc-vertical\" explicitState=\"$:/state/tabs/controlpanel/toolbars-1345989671\"/>\n</div>"},"$:/plugins/kookma/utility/customize-ui/sidebar-elements":{"title":"$:/plugins/kookma/utility/customize-ui/sidebar-elements","caption":"Sidebar elements","tags":"$:/tags/Utility/UI","type":"text/vnd.tiddlywiki","text":"Choose which elements are displayed in right sidebar. \n\n<$checkbox tiddler=\"$:/core/ui/TopBar/menu\" tag=\"$:/tags/TopRightBar\"/> Show right sidebar toggle button<br/>\n<$checkbox tiddler=\"$:/core/ui/SideBarSegments/search\" tag=\"$:/tags/SideBarSegment\"/> Show search bar<br/>\n<$checkbox tiddler=\"$:/core/ui/SideBarSegments/tabs\" tag=\"$:/tags/SideBarSegment\"/> Show sidebar tabs<br/>\n<!-- reserved\n<$checkbox tiddler=\"$:/config/custom-segment\" tag=\"$:/tags/SideBarSegment\"/> Show custom menu -->"},"$:/plugins/kookma/utility/customize-ui/sidebar-tabs":{"title":"$:/plugins/kookma/utility/customize-ui/sidebar-tabs","caption":"Sidebar tabs","list-after":"$:/plugins/kookma/utility/customize-ui/sidebar-elements","tags":"$:/tags/Utility/UI","type":"text/vnd.tiddlywiki","text":"Choose which tabs are displayed in right sidebar tabs. \n\n<$checkbox tiddler=\"$:/core/ui/SideBar/Open\" tag=\"$:/tags/SideBar\"/> Show Open tab<br/>\n<$checkbox tiddler=\"$:/core/ui/SideBar/Recent\" tag=\"$:/tags/SideBar\"/> Show Recent tab<br/>\n<$checkbox tiddler=\"$:/core/ui/SideBar/Tools\" tag=\"$:/tags/SideBar\"/> Show Tools tab<br/>\n<$checkbox tiddler=\"$:/core/ui/SideBar/More\" tag=\"$:/tags/SideBar\"/> Show More tab<br/>"},"$:/plugins/kookma/utility/customize-ui/site-option":{"title":"$:/plugins/kookma/utility/customize-ui/site-option","caption":"Site options","list-before":"","tags":"$:/tags/Utility/UI","type":"text/vnd.tiddlywiki","text":"Choose which elements are displayed for site. \n\n<$checkbox tiddler=\"$:/core/ui/SideBarSegments/site-title\" tag=\"$:/tags/SideBarSegment\"/> Show site title<br/>\n<$checkbox tiddler=\"$:/core/ui/SideBarSegments/site-subtitle\" tag=\"$:/tags/SideBarSegment\"/> Show site subtitle<br/>\n<$checkbox tiddler=\"$:/core/ui/SideBarSegments/page-controls\" tag=\"$:/tags/SideBarSegment\"/> Show page controls<br/>"},"$:/plugins/kookma/utility/history":{"title":"$:/plugins/kookma/utility/history","tags":"","type":"text/vnd.tiddlywiki","text":"* ''2.4.0'' -- 2022.11.10 -- center storyriver when sidebar closed\n* ''2.3.4'' -- 2022.10.24 -- bug fixes\n* ''2.3.0'' -- 2022.08.02 -- new macros, update to Tiddlywiki 5.2.3\n* ''2.1.6'' -- 2022.07.06 -- bug fixes, update to Tiddlywiki 5.2.2\n* ''2.1.6'' -- 2021.05.20 -- bug fixes, new state tiddler for view fields\n* ''2.1.4'' -- 2021.04.09 -- new viewtemplate for show fields used\n* ''2.1.2'' -- 2020.04.03 -- page control button issue fixed\n* ''2.1.1'' -- 2020.03.25 -- page control button improved and minor issues in css fixed\n* ''2.1.0'' -- 2020.03.23 -- new transclusion output for fields macro and disable drag and drop globally\n* ''2.0.0'' -- 2020.03.16 -- new author-reader mode switch\n* ''1.8.0'' -- 2020.03.13 -- admin panel added\n* ''1.7.0'' -- 2020.02.23 -- show tiddler raw content including the macros on demand\n* ''1.0.0'' -- 2019.10.13 -- stable release\n* ''0.5.0'' -- 2019.10.10 -- first beta release"},"$:/plugins/kookma/utility/images/view-fields.svg":{"title":"$:/plugins/kookma/utility/images/view-fields.svg","tags":"","type":"text/vnd.tiddlywiki","text":"<svg xmlns=\"http://www.w3.org/2000/svg\" class=\"tc-image-button tc-image-view-fields\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 24 24\"><path d=\"M0 0h24v24H0z\" fill=\"none\"/><path d=\"M7 11H1v2h6v-2zm2.17-3.24L7.05 5.64 5.64 7.05l2.12 2.12 1.41-1.41zM13 1h-2v6h2V1zm5.36 6.05l-1.41-1.41-2.12 2.12 1.41 1.41 2.12-2.12zM17 11v2h6v-2h-6zm-5-2c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3zm2.83 7.24l2.12 2.12 1.41-1.41-2.12-2.12-1.41 1.41zm-9.19.71l1.41 1.41 2.12-2.12-1.41-1.41-2.12 2.12zM11 23h2v-6h-2v6z\"/></svg>"},"$:/language/Buttons/DraggableHandle/Caption":{"title":"$:/language/Buttons/DraggableHandle/Caption","tags":"","type":"text/vnd.tiddlywiki","text":"draggable handle"},"$:/language/Buttons/DraggableHandle/Hint":{"title":"$:/language/Buttons/DraggableHandle/Hint","tags":"","type":"text/vnd.tiddlywiki","text":"Drag, focus, permalink, and permaview"},"$:/language/Buttons/Utility/Caption":{"title":"$:/language/Buttons/Utility/Caption","tags":"","type":"text/vnd.tiddlywiki","text":"show fields"},"$:/language/Buttons/Utility/Hint":{"title":"$:/language/Buttons/Utility/Hint","tags":"","type":"text/vnd.tiddlywiki","text":"Show fields"},"$:/plugins/kookma/utility/license":{"title":"$:/plugins/kookma/utility/license","tags":"","type":"text/vnd.tiddlywiki","text":"Distributed under an MIT license.\n\nCopyright (c) 2019-2022 [[Mohammad Rahmani|https://github.com/kookma]]\n\n<<<\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n<<<\n"},"$:/plugins/kookma/utility/macros/code":{"title":"$:/plugins/kookma/utility/macros/code","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define code(src, language:\"xml\", caption:\"\")\n<$let code = {{{ [<__src__>is[tiddler]get[text]] [<__src__>is[blank]then{!!text}else<__src__>] }}} >\n<figure class=\"kk-utility-fig\">\n<$list filter=\"[<__caption__>!is[blank]]\"><figcaption class=<<__class__>>>$caption$</figcaption></$list>\n<div class=\"kk-utility-code\">\n<$button class=\"tc-btn-invisible kk-utility-copy-btn\"\n message=\"tm-copy-to-clipboard\"\n param=<<code>>\n tooltip={{$:/language/Buttons/CopyToClipboard/Hint}} >\n{{$:/core/images/copy-clipboard}}\n</$button>\n<$codeblock language=<<__language__>> code=<<code>> />\n</div>\n</figure>\n</$let>\n\\end"},"$:/plugins/kookma/utility/macros/custom-transclusion":{"title":"$:/plugins/kookma/utility/macros/custom-transclusion","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define code-link(tiddler, caption)\n<div style=\"margin-top:10px;\">\n<$set name=selected-tiddler value=\"$tiddler$\" emptyValue=<<currentTiddler>> >\n\n<$link to=<<selected-tiddler>>/>\n\n<$macrocall $name=\"code\" language={{{[<selected-tiddler>get[type]]}}} src={{{[<selected-tiddler>get[text]]}}} caption=<<__caption__>>/>\n</$set>\n</div>\n\\end\n\n\\define content(tiddler)\n<$set name=selected-tiddler value=\"$tiddler$\" emptyValue=<<currentTiddler>> >\n<$link to=<<selected-tiddler>>/>\n<$transclude tiddler=<<selected-tiddler>> mode=\"block\"/>\n</$set>\n\\end\n\n\\define description(tiddler)\n<$set name=selected-tiddler value=\"$tiddler$\" emptyValue=<<currentTiddler>> >\n<dl><dt><$link to=<<selected-tiddler>>/></dt><dd><$transclude tiddler=<<selected-tiddler>> field=\"description\"/></dd></dl>\n</$set>\n\\end\n\n\\define fields(tiddler)\n<$tiddler tiddler={{{[<__tiddler__>get[title]else<currentTiddler>]}}} >\n<$link/>\n<table class=\"kk-utility-tbl-borderless\">\n<$list filter='[<currentTiddler>fields:exclude[text title created modified tags creator modifier type revision bag]]' variable=fld emptyMessage='<tr><td>no fields</td></tr>'>\n<tr><td style=\"text-align:right\"><<fld>>:</td><td><$text text={{{[<currentTiddler>get<fld>]}}}/></td></tr>\n</$list>\n</table>\n</$tiddler>\n\\end"},"$:/plugins/kookma/utility/macros/doc-svg":{"title":"$:/plugins/kookma/utility/macros/doc-svg","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define doc-svg(tiddler:\"\", color:\"\")\n<span class=\"kk-doc\" style=\"fill:$color$;\"><$transclude tiddler=<<__tiddler__>> /></span>\n\\end"},"$:/plugins/kookma/utility/macros/docit":{"title":"$:/plugins/kookma/utility/macros/docit","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define docit()\n<div class=\"alert alert-danger\">\n''To Be Documented''. Created on <$view field=created format=date template=\"YYYY.0MM.0DD\"/>\n</div>\n\\end\n\n\n"},"$:/plugins/kookma/utility/macros/find":{"title":"$:/plugins/kookma/utility/macros/find","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define find(text, begin, end, output:\"simple\", mode:\"all\")\n<$vars \n fulltext=<<__text__>>\n start=<<__begin__>>\n stop=<<__end__>>\n output-macro=<<__output__>>\n>\n<$list variable=\"p1\" filter=\"[<fulltext>splitbefore<start>]\">\n<$list variable=\"p2\" filter=\"[<fulltext>removeprefix<p1>]\">\n<$list variable=\"p3\" filter=\"[<p2>splitbefore<stop>removesuffix<stop>]\">\n<$macrocall $name=<<output-macro>> p=<<p3>> />\n<$reveal type=\"match\" text=\"all\" default=<<__mode__>> >\n<$macrocall $name=\"find\"\n text={{{[<p2>removeprefix<p3>removeprefix<stop>]}}}\n begin=<<start>>\n end=<<stop>>\n output=<<output-macro>>\n/>\n</$reveal>\n</$list>\n</$list>\n</$list>\n</$vars>\n\\end\n\n\\define simple(p)\n<$text text=<<__p__>> />\n\\end\n\n\\define simple-list(p)\n<li><$text text=<<__p__>>/></li>\n\\end"},"$:/plugins/kookma/utility/macros/linkify":{"title":"$:/plugins/kookma/utility/macros/linkify","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define linkify(tiddler:\"\", field:\"caption\")\n<$link to=<<__tiddler__>> >\n<$view tiddler=<<__tiddler__>> field=<<__field__>> >\n<$view tiddler=<<__tiddler__>> field=\"title\" />\n</$view>\n</$link>\n\\end"},"$:/plugins/kookma/utility/macros/lorem":{"title":"$:/plugins/kookma/utility/macros/lorem","author":"Jeremy Ruston","description":"creates few paragraphs of dumy text","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define .lorem(np:1, nw:\"\")\n\\define baseText()\nLorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\n\\end baseText\n\n<$let numwords={{{ [<__nw__>!match[]] :else[<baseText>split[ ]count[]] }}} >\n<$list filter=\"[<baseText>split[ ]limit<numwords>join[ ]trim[,]trim[.]addsuffix[.]]\" variable=paragraph>\n\n<$list filter=\"[range[1,$np$]]\" variable=null>\n<<paragraph>>\n<$list filter=\"[<__np__>!match[1]]\"><p/></$list>\n</$list>\n\n</$list>\n</$let>\n\\end .lorem"},"$:/plugins/kookma/utility/macros/reveal-code":{"title":"$:/plugins/kookma/utility/macros/reveal-code","code-body":"yes","tags":"","type":"text/vnd.tiddlywiki","text":"\\define reveal-tiddler-code(title:\"\", status:\"\")\n<details title=\"Show/hide tiddler code\" class=\"kk-utility-details\" $status$>\n<summary>$title$</summary>\n<$macrocall $name=\"code\" language=xml src={{!!text}} />\n</details>\n\\end\n<!-- Used as viewTemplate see:$:/plugins/kookma/utility/viewtemplates/reveal-code -->\n<$set name=revealFilter tiddler=\"$:/config/Utility/Reveal-code-filter\" field=text>\n<$let systemFilter={{{ [[$:/config/ViewTemplateBodyFilters/system]get[text]split[+]butlast[]] }}}\n showFilter =\"[all[current]tag[show-content]]\n [all[current]tag[$:/tags/EditTemplate]]\n [all[current]tag[$:/tags/ViewTemplate]] \n [all[current]tag[$:/tags/Macro]!prefix[$:/core]]\n [all[current]subfilter<revealFilter>]\"\n stylesFilter=\"[all[current]tag[$:/tags/Stylesheet]] [type[text/css]]\"\n hasCodebody =\"[all[current]field:code-body[yes]]\"\n>\n<!-- Tiddlers with reveal code button at the tiddler bottom by default code is hidden-->\n<$list filter=\"[all[current]] -[subfilter<systemFilter>] -[subfilter<showFilter>] -[subfilter<stylesFilter>] -[subfilter<hasCodebody>] +[limit[1]]\">\n<<reveal-tiddler-code title:\"Code\">>\n</$list>\n<!-- Tiddlers with reveal code button at the tiddler bottom by default code is shown-->\n<$list filter=\"[subfilter<showFilter>] -[subfilter<hasCodebody>] +[limit[1]]\">\n <<reveal-tiddler-code title:\"Code\" status:\"open\">>\n</$list>\n</$let>\n</$set>"},"$:/plugins/kookma/utility/macros/show-macro":{"title":"$:/plugins/kookma/utility/macros/show-macro","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define disp-macro-contents(p)\n<pre>\\define<$text text=<<__p__>> />\\end</pre>\n\\end\n\n\\define show-macro(tiddler)\n<$set name=selected-tiddler value=\"$tiddler$\" emptyValue=<<currentTiddler>> >\n<$macrocall $name='find'\n text={{{[<selected-tiddler>get[text]]}}}\n begin=\"\\define\"\n end=\"\\end\"\n output=\"disp-macro-contents\"/>\n</$set>\n\\end"},"$:/plugins/kookma/utility/macros/simple-navigation":{"title":"$:/plugins/kookma/utility/macros/simple-navigation","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define simple-navigation(tag:\"demo\", class, close:\"no\")\n<$list filter=\"[all[current]tag<__tag__>]\">\n<div class=\"$class$\">\n<$list filter=\"[tag<__tag__>before<currentTiddler>]\" variable=\"prevTiddler\">\n<$button to=<<prevTiddler>> tooltip=<<prevTiddler>> class=\"tc-btn-invisible $class$\">previous\n<$list filter=\"[<__close__>match[yes]]\" variable=ignore><$action-sendmessage $message=\"tm-close-tiddler\" $param=<<currentTiddler>>/></$list>\n</$button>\n</$list>\n<$list filter=\"[tag<__tag__>after<currentTiddler>] [tag<__tag__>before<currentTiddler>] +[count[]] -1\" variable=ignore>|</$list>\n<$list filter=\"[tag<__tag__>after<currentTiddler>]\" variable=\"nextTiddler\">\n<$button to=<<nextTiddler>> tooltip=<<nextTiddler>> class=\"tc-btn-invisible $class$\">next\n<$list filter=\"[<__close__>match[yes]]\" variable=ignore><$action-sendmessage $message=\"tm-close-tiddler\" $param=<<currentTiddler>>/></$list>\n</$button>\n</$list>\n</div>\n</$list>\n\\end"},"$:/plugins/kookma/utility/macros/unique-id":{"title":"$:/plugins/kookma/utility/macros/unique-id","author":"Jeremy Ruston","description":"creates a unique id for permanent state tiddler","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define create_id_from_timedata(prefix) $prefix$-<<now [UTC]YYYY0MM0DD0hh0mm0ssXXX>>\n\n\\define unique-id(prefix:id)\n<$wikify name=id text=<<create_id_from_timedata \"\"\"$prefix$\"\"\">> >\n<$button tooltip=\"create unique id\" class=\"tc-btn-invisible\" message=\"tm-copy-to-clipboard\" param=<<id>> >{{$:/core/images/copy-clipboard}} \n</$button> <$text text=<<id>>/>\n</$wikify>\n\\end\n"},"$:/plugins/kookma/utility/macros/wikitext-macros":{"title":"$:/plugins/kookma/utility/macros/wikitext-macros","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define wikitext-example-with-html(src)\n<div class=\"doc-example\">\n\n<$macrocall $name=\"copy-to-clipboard-above-right\" src=<<__src__>>/>\n\n<$codeblock code=<<__src__>>/>\n\nThat renders as:\n\n<$macrocall $name=\"__src__\"/>\n\n... and the underlying HTML is:\n\n<$wikify name=\"html\" text=<<__src__>> output=\"html\">\n<$codeblock code=<<html>>/>\n</$wikify>\n</div>\n\\end\n\n\\define wikitext-example(src)\n<div class=\"doc-example\">\n\n<$macrocall $name=\"copy-to-clipboard-above-right\" src=<<__src__>>/>\n\n<$codeblock code=<<__src__>>/>\n\nThat renders as:\n\n<$macrocall $name=\"__src__\"/>\n\n</div>\n\\end\n\n\n<!--\nCredit: Jeremy Ruston TW 5.2.25\nThe wiki-text macros are set of macros for documenting TW codes.\nI changed the name here, so the macro names are different if compared to original macros\n-->"},"$:/plugins/kookma/utility/reader-mode/styles":{"title":"$:/plugins/kookma/utility/reader-mode/styles","tags":"$:/tags/Stylesheet","type":"text/vnd.tiddlywiki","text":"<!-- this tiddler is a modified $:/plugins/tiddlywiki/tiddlyweb/readonly from Tiddlyweb plugin -->\n\\define button-selector(title)\nbutton.$title$, .tc-drop-down button.$title$, div.$title$\n\\end\n\n\\define hide-edit-controls()\n<<button-selector tc-btn-\\%24\\%3A\\%2Fcore\\%2Fui\\%2FButtons\\%2Fclone>>,\n<<button-selector tc-btn-\\%24\\%3A\\%2Fcore\\%2Fui\\%2FButtons\\%2Fdelete>>,\n<<button-selector tc-btn-\\%24\\%3A\\%2Fcore\\%2Fui\\%2FButtons\\%2Fedit>>,\n<<button-selector tc-btn-\\%24\\%3A\\%2Fcore\\%2Fui\\%2FButtons\\%2Fnew-here>>,\n<<button-selector tc-btn-\\%24\\%3A\\%2Fcore\\%2Fui\\%2FButtons\\%2Fnew-journal-here>>,\n<<button-selector tc-btn-\\%24\\%3A\\%2Fcore\\%2Fui\\%2FButtons\\%2Fimport>>,\n<<button-selector tc-btn-\\%24\\%3A\\%2Fcore\\%2Fui\\%2FButtons\\%2Fmanager>>,\n<<button-selector tc-btn-\\%24\\%3A\\%2Fcore\\%2Fui\\%2FButtons\\%2Fnew-image>>,\n<<button-selector tc-btn-\\%24\\%3A\\%2Fcore\\%2Fui\\%2FButtons\\%2Fnew-journal>>,\n<<button-selector tc-btn-\\%24\\%3A\\%2Fcore\\%2Fui\\%2FButtons\\%2Fnew-tiddler>>{\n\tdisplay: none;\n}\n\\end\n\n\\define hide-user-selected-controls()\n<<button-selector tc-btn-\\%24\\%3A\\%2Fcore\\%2Fui\\%2FButtons\\%2Fcontrol-panel>>,\n<<button-selector tc-btn-\\%24\\%3A\\%2Fcore\\%2Fui\\%2FButtons\\%2Fsave-wiki>>,\n<<button-selector tc-btn-\\%24\\%3A\\%2Fcore\\%2Fui\\%2FButtons\\%2Finfo>>,\n<<button-selector tc-btn-\\%24\\%3A\\%2Fplugins\\%2Fkookma\\%2Fcommander\\%2Fbuttons\\%2Fpagecontrol>>,\n<<button-selector tc-btn-\\%24\\%3A\\%2Fplugins\\%2Fkookma\\%2Ftrashbin\\%2Fui\\%2Ftoolbar-button>>,\n<<button-selector tc-btn-\\%24\\%3A\\%2Fplugins\\%2Fkookma\\%2Ffavorites\\%2Fui\\%2Fbuttons\\%2Fadd-remove>>,\n<<button-selector tc-btn-\\%24\\%3A\\%2Fplugins\\%2Fkookma\\%2Futility\\%2Fui\\%2FButtons\\%2FViewFields>> {\n\tdisplay: none;\n}\n\\end\n\n<$reveal state=\"$:/status/IsReaderMode\" type=\"match\" text=\"yes\" default=\"no\"> <!-- by default reader mode is off -->\n\n\\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline macrocallblock\n\n<<hide-edit-controls>>\n<<hide-user-selected-controls>>\n</$reveal>"},"$:/plugins/kookma/utility/reader-mode/switch-actions":{"title":"$:/plugins/kookma/utility/reader-mode/switch-actions","key":"((switch-reader-mode))","tags":"$:/tags/KeyboardShortcut","type":"text/vnd.tiddlywiki","text":"<!-- Toggle reader mode status tiddler: Used in $:/plugins/kookma/utility/styles/reader-mode-->\n<$action-listops $tiddler=\"$:/status/IsReaderMode\" $field=text $subfilter=\"+[toggle[yes]]\"/>\n\n\n<!-- hide core sidebar tabs -->\n<$list filter=\"$:/core/ui/SideBar/Tools $:/core/ui/SideBar/More\">\n<$action-listops $tiddler=<<currentTiddler>> $field=tags $subfilter=\"+[toggle[$:/tags/SideBar]]\"/>\n</$list>\n\n<!-- hide third party plugin sidebar tabs: first check if tab is exist -->\n<$list filter=\"\"\"\n $:/plugins/kookma/trashbin/sidebar-tab \n $:/plugins/kookma/favorites/ui/sidebar/active-tab\n +[is[shadow]]\n \"\"\">\n<$action-listops $tiddler=<<currentTiddler>> $field=tags $subfilter=\"+[toggle[$:/tags/SideBar]]\"/>\n</$list>\n\n\n\n<!-- disable drag and drop -->\n<$action-listops $tiddler=\"$:/config/DragAndDrop/Enable\" $field=text $subfilter=\"+[toggle[no]]\"/>\n"},"$:/plugins/kookma/utility/readme":{"title":"$:/plugins/kookma/utility/readme","tags":"","type":"text/vnd.tiddlywiki","text":"; Utility plugin\nThe utility plugin objective is to provide set of tools for authors. These tools includes simple transclusions, show raw contents of tiddlers, reader mode, wikitext macros, show fields in view mode, linkify, code, docit, and much more!\n\n; Code and demo\nFor learning plugin features, syntax, tutorial and examples see the plugin demo and code pages\n\n* Demo: https://kookma.github.io/TW-Utility/\n* Code: https://github.com/kookma/TW-Utility\n"},"$:/plugins/kookma/utility/snippets/code-macro":{"title":"$:/plugins/kookma/utility/snippets/code-macro","caption":"Code","tags":"$:/tags/TextEditor/Snippet","type":"text/vnd.tiddlywiki","text":"<<code src:\"\" language:\"xml\" title:\"\">>"},"$:/plugins/kookma/utility/snippets/wikitext-example-macrocall":{"title":"$:/plugins/kookma/utility/snippets/wikitext-example-macrocall","caption":"Wikitext-example macrocall","tags":"$:/tags/TextEditor/Snippet","type":"text/vnd.tiddlywiki","text":"<$macrocall $name=\"wikitext-example\" \nsrc=\"\"\"\n\"\"\"/>"},"$:/plugins/kookma/utility/snippets/wikitext-example":{"title":"$:/plugins/kookma/utility/snippets/wikitext-example","caption":"Wikitext-example","tags":"$:/tags/TextEditor/Snippet","type":"text/vnd.tiddlywiki","text":"<<wikitext-example \nsrc:\"\"\"\n\"\"\">>"},"$:/plugins/kookma/utility/styles/centered-storyriver":{"title":"$:/plugins/kookma/utility/styles/centered-storyriver","description":"makes storyriver centered when sidebar is closed","tags":"","type":"text/vnd.tiddlywiki","text":"\\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline html\n<$list filter=\"[[$:/state/sidebar]get[text]match[no]]\" variable=null>\n:not([data-tiddler-title^=\"Draft of '\"]).tc-tiddler-frame {\nmin-width: 600px;\nmax-width: 50vw;\nmargin-left: auto;\nmargin-right: auto;\n}\n</$list>"},"$:/plugins/kookma/utility/styles/code":{"title":"$:/plugins/kookma/utility/styles/code","text":"figure.kk-utility-fig {\n\t/* for future use*/\n\tmargin-left:0;\n\tmargin-right:0;\n}\n\n/*figcaption structure */\nfigure.kk-utility-fig figcaption {\n\tpadding: 4.5px 7.5px 7.5px 7.5px;;\n\tborder-top-left-radius: 3px;\n\tborder-top-right-radius: 3px;\n\tmargin-bottom: -3px;\n}\n\n/* figcaption skin: colors */\nfigure.kk-utility-fig figcaption{\n\topacity: 0.7;\n\tbackground-color:black;\n\tcolor:white;\n}\n\n/* correct the style of codeblock pre element */\nfigure.kk-utility-fig pre{\n\tmargin-top:0;\n\t/*\tused to have inner top border straight */\n\t/*\tborder-top-left-radius: 0; \n\tborder-top-right-radius: 0; */\n}\n\n\n/* the code block and copy-to-clipboard button */\n.kk-utility-code{\n\tposition: relative;\n}\n/* pretty display the empty code block */\n.kk-utility-code pre code{\n\tdisplay: block;\n\tmin-height:30px; \n}\n\n.kk-utility-copy-btn{\n\tposition: absolute;\n\ttop: 3px;\n\tright: 5px;\n\topacity: 0.3;\n\tfill:currentColor;\n}\n\n.tc-btn-invisible.kk-utility-copy-btn svg{\nwidth: 1.2em;\nheight: 1.2em;\n}\n\n.kk-utility-copy-btn:hover{\n transition: opacity 200ms ease-in-out;\n opacity: 1;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/utility/styles/doc-svg":{"title":"$:/plugins/kookma/utility/styles/doc-svg","text":".kk-doc svg{\nwidth: 1.2em;\nheight: 1.2em;\nvertical-align: middle;}\n\n.kk-ut-txt{\nmin-width:50%}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/utility/styles/main":{"title":"$:/plugins/kookma/utility/styles/main","text":"/* view feilds area */\n.kk-ut-viewfields { /* prevents overlapping with other elements */\n\tmargin-top: 12px;\n\tmargin-bottom: 12px;\n}\n/* in simple transclusion for fields */\n.kk-utility-tbl-borderless, \n.kk-utility-tbl-borderless tr,\n.kk-utility-tbl-borderless td{border:0;}\n","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/utility/styles/reveal-code":{"title":"$:/plugins/kookma/utility/styles/reveal-code","text":"details.kk-utility-details summary {\n\topacity:0.2;\n\tfont-size:0.9em;\n\tdisplay: inline;\n\tcursor: pointer;\n\tpadding: 10px;\n\ttransition: 0.3s;\n\t-webkit-user-select: none;\n\t-moz-user-select: none;\n\t-ms-user-select: none;\n\tuser-select: none;\n}\ndetails.kk-utility-details summary:hover{\n\n}\ndetails.kk-utility-details[open] > summary {\n\topacity:1;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/utility/styles/tw-version":{"title":"$:/plugins/kookma/utility/styles/tw-version","tags":"$:/tags/Stylesheet","type":"text/vnd.tiddlywiki","text":"/* TW-version added to site title */\n.tc-site-title:before {\n content:\"TW <<version>>\";\n position:absolute;\n margin-top:-1.9em;\n color:silver;\n font-size:13px;\n}"},"$:/plugins/kookma/utility/styles/wikitext-macro":{"title":"$:/plugins/kookma/utility/styles/wikitext-macro","tags":"$:/tags/Stylesheet","type":"text/vnd.tiddlywiki","text":".doc-example {\n\tmargin: 1em 0;\n\tpadding: 0.8em 0;\n}\n.doc-example:hover {\n\tbackground-color: <<colour code-background>>;\n}\n.doc-example ul {\n\tmargin-bottom: 0;\n\tpadding-bottom: 0;\n\tmargin-top: 0.2em;\n}\n\n.doc-example input[type=search] { \n width: 95%;\n}\n.doc-example pre:first-child {\n\tmargin-top: 0;\n}\n\n\n\n\n\n\n\n\n"},"$:/plugins/kookma/utility/ui/Buttons/DraggableLink":{"title":"$:/plugins/kookma/utility/ui/Buttons/DraggableLink","caption":"{{$:/core/images/link}} {{$:/language/Buttons/DraggableHandle/Caption}}","description":"{{$:/language/Buttons/DraggableHandle/Hint}}","list-after":"$:/core/ui/Buttons/more-tiddler-actions","tags":"$:/tags/ViewToolbar","type":"text/vnd.tiddlywiki","text":"\\define btn-actions()\n<!-- bring to top -->\n<$list filter=\"[<modifier>match[normal]]\" variable=ignore>\n<$action-navigate $to=<<currentTiddler>> $scroll=\"yes\"/>\n</$list>\n\n<!-- focus -->\n<$list filter=\"[<modifier>match[alt]]\" variable=ignore>\n<$action-sendmessage $message=\"tm-close-other-tiddlers\" param=<<currentTiddler>> />\n</$list>\n\n<!-- permalink -->\n<$list filter=\"[<modifier>match[ctrl]]\" variable=ignore>\n<$action-sendmessage $message=\"tm-permalink\" param=<<currentTiddler>> />\n</$list>\n\n<!-- permaview -->\n<$list filter=\"[<modifier>match[shift]]\" variable=ignore>\n<$action-sendmessage $message=\"tm-permaview\" param=<<currentTiddler>> />\n</$list>\n\n\\end\n\n\\whitespace trim\n<$button tooltip={{$:/language/Buttons/DraggableHandle/Hint}} aria-label={{$:/language/Buttons/DraggableHandle/Caption}} class=<<tv-config-toolbar-class>> dragTiddler=<<currentTiddler>> actions=<<btn-actions>> >\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/link}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text={{$:/language/Buttons/DraggableHandle/Caption}}/>\n</span>\n</$list>\n</$button>"},"$:/plugins/kookma/utility/ui/Buttons/ViewFields":{"title":"$:/plugins/kookma/utility/ui/Buttons/ViewFields","caption":"{{$:/plugins/kookma/utility/images/view-fields.svg}} {{$:/language/Buttons/Utility/Caption}}","description":"Show a toggle button for view fields","list-before":"$:/plugins/kookma/shiraz/ui/Buttons/SwitchPalette","tags":"$:/tags/PageControls","type":"text/vnd.tiddlywiki","text":"\\whitespace trim\n\n\\define stateTid() $:/state/utility/view-fields\n\n\\define show-fields-button()\n\\whitespace trim\n<$reveal type=\"nomatch\" state=<<stateTid>> text=\"show\" default=\"hide\" tag=span>\n <$button set=<<stateTid>> setTo=\"show\" \n\t tooltip={{$:/language/Buttons/Utility/Hint}} \n\t\t\t\t\t aria-label={{$:/language/Buttons/Utility/Caption}} \n\t\t\t\t\t class=<<tv-config-toolbar-class>>\n >\n <<disp-on-pagecontrols>>\n </$button>\n</$reveal>\n<$reveal type=\"match\" state=<<stateTid>> text=\"show\" default=\"hide\" tag=span>\n <$button set=<<stateTid>> setTo=\"hide\" \n tooltip={{$:/language/Buttons/Utility/Hint}} \n\t\t\t\t aria-label={{$:/language/Buttons/Utility/Caption}} \n\t\t\t\t class=\"\"\"$(tv-config-toolbar-class)$ tc-selected\"\"\"\n >\n <<disp-on-pagecontrols>>\n </$button>\n</$reveal>\n\\end\n\n\\define disp-on-pagecontrols() \n\\whitespace trim\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/plugins/kookma/utility/images/view-fields.svg}} \n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Utility/Caption}}/></span>\n</$list>\n\\end\n\n<<show-fields-button>>"},"$:/plugins/kookma/utility/ui/ControlPanel/Settings":{"title":"$:/plugins/kookma/utility/ui/ControlPanel/Settings","caption":"Utility","tags":"$:/tags/ControlPanel/SettingsTab $:/tags/MoreSideBar","type":"text/vnd.tiddlywiki","text":"These settings let you customise the behaviour of Utility plugin.\n\n---\n\n;Show Utility setting in more sidebar\n:<$checkbox tiddler=\"$:/plugins/kookma/utility/ui/ControlPanel/Settings\" tag=\"$:/tags/MoreSideBar\"> Show setting in more sidebar</$checkbox>\n\n;Options\n:<$checkbox tiddler=\"$:/plugins/kookma/utility/ui/Buttons/ViewFields\" tag=\"$:/tags/PageControls\"> Enable show fields</$checkbox>\n:<$checkbox tiddler=\"$:/plugins/kookma/utility/styles/tw-version\" tag=\"$:/tags/Stylesheet\"> Show the Tiddlywiki version badge</$checkbox>\n:<$checkbox tiddler=\"$:/plugins/kookma/utility/styles/centered-storyriver\" tag=\"$:/tags/Stylesheet\"> Center storyriver when sidebar closed</$checkbox>\n:<$checkbox tiddler=\"$:/plugins/kookma/utility/viewtemplates/reveal-code\" tag=\"$:/tags/ViewTemplate\"> Display code button at tiddler bottom</$checkbox><div style=\"padding-left:18px;\">\n<$list filter=\"[[$:/plugins/kookma/utility/viewtemplates/reveal-code]tag[$:/tags/ViewTemplate]]\" variable=ignore>\nFilter to show tiddler code (default to open)   <$edit-text tiddler=\"$:/config/Utility/Reveal-code-filter\" field=\"text\" tag=input default=\"\" placeholder=\"enter a filter e.g. [tag[myTag]] \" class=\"kk-ut-txt\"/>\n</$list></div>\n\n;Customize UI elements\n: [[Show/hide selected UI elements|$:/plugins/kookma/utility/customize-ui/modal]]"},"$:/plugins/kookma/utility/viewtemplates/reveal-code":{"title":"$:/plugins/kookma/utility/viewtemplates/reveal-code","list-after":"$:/core/ui/ViewTemplate/body","tags":"$:/tags/ViewTemplate","type":"text/vnd.tiddlywiki","text":"<$reveal type=\"nomatch\" stateTitle=<<folded-state>> text=\"hide\" tag=\"div\" retain=\"yes\" animate=\"yes\">\n<$transclude tiddler=\"$:/plugins/kookma/utility/macros/reveal-code\" />\n</$reveal>\n<!--This viewtemplate uses the code in $:/plugins/kookma/utility/macros/reveal-code tiddler. The reason is this tiddler will change tag and so on plugin update user may miss to delete it to be updated to latest version.-->"},"$:/plugins/kookma/utility/viewtemplates/view-fields":{"title":"$:/plugins/kookma/utility/viewtemplates/view-fields","description":"Toggle field handling in view mode","list-before":"$:/core/ui/ViewTemplate/body","tags":"$:/tags/ViewTemplate","type":"text/vnd.tiddlywiki","text":"<$reveal type=match stateTiddler stateTitle=\"$:/state/utility/view-fields\" stateField=text default=\"hide\" text=show tag=div class=\"kk-ut-viewfields\">\n<$importvariables filter=\"[[$:/core/ui/EditTemplate]]\">\n<!-- the above import required from TW5.2.3-->\n<$vars \n newFieldNameTiddler=<<qualify \"$:/temp/NewFieldName\">>\n newFieldValueTiddlerPrefix=<<qualify \"$:/temp/NewFieldValue\">>\n newFieldNameInputTiddler=<<qualify \"$:/temp/NewFieldName/input\">>\n newFieldNameSelectionTiddler=<<qualify \"$:/temp/NewFieldName/selected-item\">>\n searchListState=<<qualify \"$:/temp/searchListState\">> \n storeTitle=<<qualify \"$:/temp/storeTitle\">> \n>\n<$transclude tiddler=\"$:/core/ui/EditTemplate/fields\"/>\n</$vars>\n</$importvariables>\n</$reveal>\n\n<!-- IMPORTANT Note: This new viewtemplate works with TW 5.2.3+, do not use in TW 5.2.2 and older\nif so, your UI will crash. This is because of temp tiddlers.\n-->"}}} \ No newline at end of file +{"tiddlers":{"$:/plugins/kookma/utility/actions/view-fields":{"title":"$:/plugins/kookma/utility/actions/view-fields","code-body":"yes","key":"((view-fields))","tags":"$:/tags/KeyboardShortcut","type":"text/vnd.tiddlywiki","text":"<$action-listops $tiddler=\"$:/state/utility/view-fields\" $field=\"text\" $subfilter=\"+[toggle[show],[hide]]\" />"},"$:/config/ShortcutInfo/customize-ui":{"title":"$:/config/ShortcutInfo/customize-ui","created":"20240728083002166","modified":"20240728083006740","tags":"","type":"text/vnd.tiddlywiki","text":"Utility: Show customize UI dialog"},"$:/config/ShortcutInfo/switch-reader-mode":{"title":"$:/config/ShortcutInfo/switch-reader-mode","created":"20240728083039218","modified":"20240728083044414","type":"text/vnd.tiddlywiki","text":"Utility: Toggle the reader mode"},"$:/config/ShortcutInfo/view-fields":{"title":"$:/config/ShortcutInfo/view-fields","created":"20240728082942453","modified":"20240728082948220","tags":"","type":"text/vnd.tiddlywiki","text":"Utility: Show fields in view mode"},"$:/config/shortcuts/customize-ui":{"title":"$:/config/shortcuts/customize-ui","type":"text/vnd.tiddlywiki","text":"ctrl-shift-Period"},"$:/config/shortcuts/switch-reader-mode":{"title":"$:/config/shortcuts/switch-reader-mode","type":"text/vnd.tiddlywiki","text":"ctrl-shift-Slash"},"$:/config/shortcuts/view-fields":{"title":"$:/config/shortcuts/view-fields","tags":"","type":"text/vnd.tiddlywiki","text":"ctrl-Slash"},"$:/config/ViewTemplateBodyFilters/Utility/source-toggle-button":{"title":"$:/config/ViewTemplateBodyFilters/Utility/source-toggle-button","list-before":"$:/config/ViewTemplateBodyFilters/default","tags":"$:/tags/ViewTemplateBodyFilter","type":"text/vnd.tiddlywiki","text":"[{$:/config/ViewTemplate/Visibility/$:/plugins/kookma/utility/viewtemplates/source-toggle-button}match[show]]\n:then[[$:/plugins/kookma/utility/viewtemplates/source-toggle-button]]"},"$:/plugins/kookma/utility/customize-ui/actions":{"title":"$:/plugins/kookma/utility/customize-ui/actions","key":"((customize-ui))","tags":"$:/tags/KeyboardShortcut","type":"text/vnd.tiddlywiki","text":"<$action-sendmessage $message=\"tm-modal\" $param=\"$:/plugins/kookma/utility/customize-ui/modal\" />"},"$:/plugins/kookma/utility/customize-ui/modal":{"title":"$:/plugins/kookma/utility/customize-ui/modal","caption":"Customize UI elements","tags":"","type":"text/vnd.tiddlywiki","text":"''Show/hide selected UI elements''\n\n<div class=\"tc-control-panel\">\n<$transclude $variable=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Toolbars]!has[draft.of]] [all[shadows+tiddlers]tag[$:/tags/Utility/UI]!has[draft.of]]\" default=\"$:/core/ui/ControlPanel/Toolbars/ViewToolbar\" class=\"tc-vertical\" explicitState=\"$:/state/tabs/controlpanel/toolbars-1345989671\"/>\n</div>"},"$:/plugins/kookma/utility/customize-ui/sidebar-elements":{"title":"$:/plugins/kookma/utility/customize-ui/sidebar-elements","caption":"Sidebar elements","tags":"$:/tags/Utility/UI","type":"text/vnd.tiddlywiki","text":"Choose which elements are displayed in right sidebar. \n\n<$checkbox tiddler=\"$:/core/ui/TopBar/menu\" tag=\"$:/tags/TopRightBar\"/> Show right sidebar toggle button<br/>\n<$checkbox tiddler=\"$:/core/ui/SideBarSegments/search\" tag=\"$:/tags/SideBarSegment\"/> Show search bar<br/>\n<$checkbox tiddler=\"$:/core/ui/SideBarSegments/tabs\" tag=\"$:/tags/SideBarSegment\"/> Show sidebar tabs<br/>\n<!-- reserved\n<$checkbox tiddler=\"$:/config/custom-segment\" tag=\"$:/tags/SideBarSegment\"/> Show custom menu -->"},"$:/plugins/kookma/utility/customize-ui/sidebar-tabs":{"title":"$:/plugins/kookma/utility/customize-ui/sidebar-tabs","caption":"Sidebar tabs","list-after":"$:/plugins/kookma/utility/customize-ui/sidebar-elements","tags":"$:/tags/Utility/UI","type":"text/vnd.tiddlywiki","text":"Choose which tabs are displayed in right sidebar tabs. \n\n<$checkbox tiddler=\"$:/core/ui/SideBar/Open\" tag=\"$:/tags/SideBar\"/> Show Open tab<br/>\n<$checkbox tiddler=\"$:/core/ui/SideBar/Recent\" tag=\"$:/tags/SideBar\"/> Show Recent tab<br/>\n<$checkbox tiddler=\"$:/core/ui/SideBar/Tools\" tag=\"$:/tags/SideBar\"/> Show Tools tab<br/>\n<$checkbox tiddler=\"$:/core/ui/SideBar/More\" tag=\"$:/tags/SideBar\"/> Show More tab<br/>"},"$:/plugins/kookma/utility/customize-ui/site-option":{"title":"$:/plugins/kookma/utility/customize-ui/site-option","caption":"Site options","list-before":"","tags":"$:/tags/Utility/UI","type":"text/vnd.tiddlywiki","text":"Choose which elements are displayed for site. \n\n<$checkbox tiddler=\"$:/core/ui/SideBarSegments/site-title\" tag=\"$:/tags/SideBarSegment\"/> Show site title<br/>\n<$checkbox tiddler=\"$:/core/ui/SideBarSegments/site-subtitle\" tag=\"$:/tags/SideBarSegment\"/> Show site subtitle<br/>\n<$checkbox tiddler=\"$:/core/ui/SideBarSegments/page-controls\" tag=\"$:/tags/SideBarSegment\"/> Show page controls<br/>"},"$:/plugins/kookma/utility/edittemplates/tiddler-size":{"title":"$:/plugins/kookma/utility/edittemplates/tiddler-size","list-after":"$:/core/ui/EditTemplate/controls","tags":"$:/tags/EditTemplate","type":"text/vnd.tiddlywiki","text":"\\function .fieldnames() text\n\\function .lines() [.fieldnames[]] :map[<..currentTiddler>get<currentTiddler>splitregexp[\\n]count[]else[0]] [enlist<fieldnames>count[]else[0]] +[sum[]]\n\\function .words() [.fieldnames[]] :map[<..currentTiddler>get<currentTiddler>splitregexp[\\n]splitregexp[\\s+]count[]else[0]] [enlist<fieldnames>splitregexp[\\s+]count[]else[0]] +[sum[]]\n\\function .bytes() [.fieldnames[]] :map[<..currentTiddler>get<currentTiddler>else[]length[]] [enlist<fieldnames>length[]else[0]] +[sum[]]\n\n<%if [{$:/config/EditTemplate/Visibility/$:/plugins/kookma/utility/edittemplates/tiddler-size}match[show]] %>\n\t<$let popid={{{ [[$:/temp/TiddlyTools/Templates/Size/]addsuffix<currentTiddler>addsuffix<qualify>] }}} >\n\t\t<$button class=\"tc-btn-invisible kk-utility-tiddlersize-btn\" popup=<<popid>> tooltip=\"show field sizes\">\n\t\t\t Tiddler text: <<.lines>> lines, <<.words>> words, <<.bytes>> bytes {{$:/core/images/down-arrow}} <!-- only text field statistics -->\n\t\t</$button>\n\t\t<$reveal state=<<popid>> type=\"popup\" class=\"tc-drop-down kk-utility-tiddlersize-dropdwon\">\n\t\t<$importvariables filter=\"[[$:/plugins/kookma/utility/tiddlerInfo/tiddler-size]]\">\n\t\t\t<<tiddlerSize>> <!-- full tiddler statistics -->\n\t\t</$importvariables>\t\n\t\t</$reveal>\n\t</$let>\n<%endif%>"},"$:/plugins/kookma/utility/history":{"title":"$:/plugins/kookma/utility/history","tags":"","type":"text/vnd.tiddlywiki","text":"* ''3.0.0'' -- 2024.07.18 -- updated to TiddlyWiki 5.3.5, some features moved to Shiraz\n\n--- Utility 3 is not backward compatible. It is based \n\n\n* ''2.8.1'' -- 2024.07.16 -- updated to TiddlyWiki 5.3.4, bug fixes\n* ''2.4.0'' -- 2022.11.10 -- center storyriver when sidebar closed\n* ''2.3.4'' -- 2022.10.24 -- bug fixes\n* ''2.3.0'' -- 2022.08.02 -- new macros, update to Tiddlywiki 5.2.3\n* ''2.1.6'' -- 2022.07.06 -- bug fixes, update to Tiddlywiki 5.2.2\n* ''2.1.6'' -- 2021.05.20 -- bug fixes, new state tiddler for view fields\n* ''2.1.4'' -- 2021.04.09 -- new viewtemplate for show fields used\n* ''2.1.2'' -- 2020.04.03 -- page control button issue fixed\n* ''2.1.1'' -- 2020.03.25 -- page control button improved and minor issues in css fixed\n* ''2.1.0'' -- 2020.03.23 -- new transclusion output for fields macro and disable drag and drop globally\n* ''2.0.0'' -- 2020.03.16 -- new author-reader mode switch\n* ''1.8.0'' -- 2020.03.13 -- admin panel added\n* ''1.7.0'' -- 2020.02.23 -- show tiddler raw content including the macros on demand\n* ''1.0.0'' -- 2019.10.13 -- stable release\n* ''0.5.0'' -- 2019.10.10 -- first beta release"},"$:/plugins/kookma/utility/icon":{"title":"$:/plugins/kookma/utility/icon","text":"<svg xmlns=\"http://www.w3.org/2000/svg\" xml:space=\"preserve\" style=\"enable-background:new 0 0 602.95 602.95\" viewBox=\"0 0 602.95 602.95\" width=\"30px\"><path d=\"M571.835 471.399 452.014 351.578l-5.022 5.022c-8.317 8.317-21.817 8.317-30.134 0s-8.317-21.817 0-30.134l5.022-5.022-30.134-30.134-100.445 100.446 30.134 30.134 5.022-5.022c8.317-8.317 21.817-8.317 30.134 0s8.317 21.817 0 30.134l-5.022 5.022L471.39 571.845a71.136 71.136 0 0 0 11.963 9.552l98.035-98.035a71.192 71.192 0 0 0-9.553-11.963z\" style=\"fill:#88b337\"/><path d=\"m581.387 483.362-98.035 98.035c32.966 21.174 76.861 11.622 98.035-21.345 15.007-23.353 15.007-53.326 0-76.69z\" style=\"fill:#dadddf\"/><path d=\"m130.589 90.421-10.045-40.179-70.311-40.178-40.179 40.178 40.179 70.312 40.178 10.045 231.024 231.024 40.178-40.178z\" style=\"fill:#cfd2d4\"/><path d=\"m589.242 93.816-66.917 66.917-60.267-20.089-20.089-60.267 66.917-66.917C450.005-1.567 390.099 33.99 375.073 92.871a110.112 110.112 0 0 0 0 54.401l-227.81 227.81c-59.484-15.097-119.942 20.873-135.039 80.356C-2.873 514.922 33.097 575.38 92.58 590.477c59.484 15.097 119.942-20.872 135.039-80.356a111.234 111.234 0 0 0 0-54.682l227.81-227.81c58.921 14.986 118.827-20.631 133.813-79.553a110.02 110.02 0 0 0 0-54.26zM150.678 532.38H90.411l-30.134-50.223 30.134-50.223h60.267l30.134 50.223-30.134 50.223z\" style=\"fill:#dadddf\"/><path d=\"M592.637 521.622a70.869 70.869 0 0 0-11.25-38.26l-28.928 28.928v73.235c24.549-11.822 40.168-36.652 40.178-63.903z\" style=\"fill:#cfd2d4\"/><path d=\"m1.336 55.265 40.178 70.312a10.02 10.02 0 0 0 6.278 4.761l37.486 9.372 128.57 128.57 14.203-14.203-130.579-130.58a10.027 10.027 0 0 0-4.661-2.642l-36.02-9.04L22.58 51.92l29.33-29.33 59.926 34.242 9.04 36.02a10.059 10.059 0 0 0 2.642 4.671l130.579 130.579 14.203-14.203-128.57-128.57-9.372-37.466a10.016 10.016 0 0 0-4.761-6.288L55.285 1.396a10.047 10.047 0 0 0-12.053 1.617L3.053 43.191a10.033 10.033 0 0 0-1.717 12.074zM183.753 404.74 404.73 183.763l14.205 14.205-220.977 220.977zM159.286 426.761a10.045 10.045 0 0 0-8.608-4.872H90.411c-3.526 0-6.79 1.848-8.608 4.872l-30.134 50.223a10.066 10.066 0 0 0 0 10.346l30.134 50.223a10.045 10.045 0 0 0 8.608 4.872h60.267c3.526 0 6.79-1.848 8.608-4.872l30.134-50.223a10.066 10.066 0 0 0 0-10.346l-30.134-50.223zm-14.293 95.574H96.096l-24.107-40.178 24.107-40.178h48.897l24.107 40.178-24.107 40.178z\"/><path d=\"M482.147 241.088c66.344.221 120.303-53.377 120.524-119.721a120.383 120.383 0 0 0-3.686-29.943c-1.336-5.384-6.79-8.658-12.174-7.322a10.059 10.059 0 0 0-4.671 2.642l-62.527 62.487-49.61-16.533-16.543-49.6 62.527-62.537c3.917-3.927 3.917-10.286-.01-14.203a10.086 10.086 0 0 0-4.701-2.652c-64.335-16.292-129.695 22.65-145.987 86.986a120.26 120.26 0 0 0-3.676 29.862c.02 7.905.844 15.79 2.441 23.534L144.079 364.064a118.754 118.754 0 0 0-23.534-2.441C53.98 361.623.011 415.592.011 482.157S53.98 602.691 120.545 602.691s120.534-53.969 120.534-120.534c-.02-7.905-.844-15.79-2.441-23.534l52.663-52.663 23.032 23.032c3.917 3.917 10.286 3.917 14.203 0l5.022-5.022c4.41-4.379 11.521-4.379 15.931 0 4.399 4.389 4.41 11.511.02 15.911l-.02.02-5.022 5.022c-3.917 3.917-3.917 10.286 0 14.203l119.821 119.821c31.52 31.801 82.847 32.032 114.648.522 31.801-31.52 32.032-82.847.522-114.648l-.522-.522-119.821-119.822c-3.917-3.917-10.286-3.917-14.203 0l-5.022 5.022c-4.41 4.379-11.521 4.379-15.931 0-4.4-4.389-4.41-11.511-.02-15.911l.02-.02 5.022-5.022c3.917-3.917 3.917-10.286 0-14.203l-23.032-23.032 52.663-52.663a118.771 118.771 0 0 0 23.535 2.44zm39.465 341.514a60.864 60.864 0 0 1-21.365-3.897l78.448-78.448c11.842 31.49-4.088 66.615-35.578 78.448a60.986 60.986 0 0 1-21.505 3.897zM407.818 321.545c-11.119 13.269-9.382 33.046 3.887 44.166 11.662 9.773 28.657 9.763 40.309-.03l112.72 112.82c1.225 1.225 2.37 2.521 3.475 3.837l-85.881 85.881c-1.316-1.105-2.612-2.25-3.837-3.475l-112.81-112.82c11.119-13.269 9.382-33.047-3.887-44.166-11.662-9.773-28.657-9.763-40.309.03l-16.071-16.071 86.333-86.202 16.071 16.03zm40.559-101.028-227.86 227.82a10.04 10.04 0 0 0-2.652 9.542c13.781 54.12-18.924 109.164-73.044 122.945C90.701 594.595 35.657 561.9 21.876 507.78S40.8 398.616 94.92 384.835a101.136 101.136 0 0 1 49.901 0 10.146 10.146 0 0 0 9.542-2.652l227.81-227.82a10.063 10.063 0 0 0 2.642-9.542c-13.691-53.487 18.572-107.939 72.059-121.619a99.943 99.943 0 0 1 30.977-2.933l-52.985 53.005a10.036 10.036 0 0 0-2.431 10.276l20.089 60.267a10.025 10.025 0 0 0 6.358 6.348l60.267 20.089a10.032 10.032 0 0 0 10.276-2.421l52.985-52.985c.121 1.919.181 3.817.181 5.705.281 55.195-44.226 100.164-99.421 100.445a99.93 99.93 0 0 1-25.302-3.124 10.06 10.06 0 0 0-9.542 2.642.885.885 0 0 0 .051.001z\"/><path d=\"m404.713 418.952 14.204-14.205L519.36 505.19l-14.205 14.205z\"/></svg>","type":"image/svg+xml","tags":""},"$:/plugins/kookma/utility/images/view-fields.svg":{"title":"$:/plugins/kookma/utility/images/view-fields.svg","tags":"","type":"text/vnd.tiddlywiki","text":"<svg xmlns=\"http://www.w3.org/2000/svg\" class=\"tc-image-button tc-image-view-fields\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 24 24\"><path d=\"M0 0h24v24H0z\" fill=\"none\"/><path d=\"M7 11H1v2h6v-2zm2.17-3.24L7.05 5.64 5.64 7.05l2.12 2.12 1.41-1.41zM13 1h-2v6h2V1zm5.36 6.05l-1.41-1.41-2.12 2.12 1.41 1.41 2.12-2.12zM17 11v2h6v-2h-6zm-5-2c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3zm2.83 7.24l2.12 2.12 1.41-1.41-2.12-2.12-1.41 1.41zm-9.19.71l1.41 1.41 2.12-2.12-1.41-1.41-2.12 2.12zM11 23h2v-6h-2v6z\"/></svg>"},"$:/language/Buttons/DraggableHandle/Caption":{"title":"$:/language/Buttons/DraggableHandle/Caption","tags":"","type":"text/vnd.tiddlywiki","text":"draggable handle"},"$:/language/Buttons/DraggableHandle/Hint":{"title":"$:/language/Buttons/DraggableHandle/Hint","tags":"","type":"text/vnd.tiddlywiki","text":"Drag, focus, permalink, and permaview"},"$:/language/Buttons/Utility/Caption":{"title":"$:/language/Buttons/Utility/Caption","tags":"","type":"text/vnd.tiddlywiki","text":"show fields"},"$:/language/Buttons/Utility/Hint":{"title":"$:/language/Buttons/Utility/Hint","tags":"","type":"text/vnd.tiddlywiki","text":"Show fields"},"$:/language/Utility/Notifications/Permlink/CopiedToClipboard/Succeeded":{"title":"$:/language/Utility/Notifications/Permlink/CopiedToClipboard/Succeeded","tags":"","type":"text/vnd.tiddlywiki","text":"Permlink was copied to clipboard!"},"$:/language/Utility/Notifications/Permview/CopiedToClipboard/Succeeded":{"title":"$:/language/Utility/Notifications/Permview/CopiedToClipboard/Succeeded","tags":"","type":"text/vnd.tiddlywiki","text":"Permview was copied to clipboard!"},"$:/language/Utility/Notifications/Source/CopiedToClipboard/Succeeded":{"title":"$:/language/Utility/Notifications/Source/CopiedToClipboard/Succeeded","tags":"","type":"text/vnd.tiddlywiki","text":"Source code is copied to clipboard!"},"$:/language/Utility/Notifications/UID/CopiedToClipboard/Succeeded":{"title":"$:/language/Utility/Notifications/UID/CopiedToClipboard/Succeeded","tags":"","type":"text/vnd.tiddlywiki","text":"UID (unique id) is copied to clipboard!"},"$:/plugins/kookma/utility/license":{"title":"$:/plugins/kookma/utility/license","tags":"","type":"text/vnd.tiddlywiki","text":"Distributed under an MIT license.\n\nCopyright (c) 2019-2024 [[Mohammad Rahmani|https://github.com/kookma]]\n\n<<<\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n<<<\n"},"$:/plugins/kookma/utility/procedures/code":{"title":"$:/plugins/kookma/utility/procedures/code","tags":"$:/tags/Global","type":"text/vnd.tiddlywiki","text":"\\procedure code(src:\"\", language:\"xml\", caption:\"\")\n<$let code={{{ [<src>is[tiddler]get[text]] [<src>is[blank]then{!!text}else<src>] }}} >\n\t<figure class=\"kk-utility-fig\">\n\t\t<%if [<caption>!is[blank]] %><figcaption><<caption>></figcaption><%endif%>\n\t\t<div class=\"kk-utility-code\">\n\t\t\t<$button class=\"tc-btn-invisible kk-utility-copy-btn\" tooltip={{$:/language/Buttons/CopyToClipboard/Hint}} >\n\t\t\t\t\t{{$:/core/images/copy-clipboard}}\n\t\t\t\t\t<$action-sendmessage $message=\"tm-copy-to-clipboard\" $param=<<code>> successNotification=\"$:/language/Utility/Notifications/Source/CopiedToClipboard/Succeeded\"/>\t\t\t\t\t \n\t\t\t</$button>\n\t\t\t<$codeblock language=<<language>> code=<<code>> />\n\t\t</div>\n\t</figure>\n</$let>\n\\end code"},"$:/plugins/kookma/utility/procedures/custom-transclusion":{"title":"$:/plugins/kookma/utility/procedures/custom-transclusion","created":"20240728084447882","modified":"20240728084447882","tags":"$:/tags/Global","type":"text/vnd.tiddlywiki","text":"\\procedure source-link(tiddler, caption)\n<$tiddler tiddler={{{[<tiddler>get[title]else<currentTiddler>]}}} >\n<$link/>\n<$transclude $variable=\"code\" language={{{ [<currentTiddler>get[type]else[text/vnd.tiddlywiki]] }}} src={{!!text}} caption=<<caption>>/>\n</$tiddler>\n\\end\n\n\\procedure content(tiddler)\n<$tiddler tiddler={{{[<tiddler>get[title]else<currentTiddler>]}}} >\n<$link/>\n<$transclude $field=\"text\" $mode=\"block\"/>\n</$tiddler>\n\\end\n\n\\procedure description(tiddler)\n<$tiddler tiddler={{{[<tiddler>get[title]else<currentTiddler>]}}} >\n<dl>\n<dt><$link/></dt>\n<dd><$transclude $field=\"description\"/></dd>\n</dl>\n</$tiddler>\n\\end\n\n\\procedure fields(tiddler)\n<$tiddler tiddler={{{[<tiddler>get[title]else<currentTiddler>]}}} >\n<$link/>\n<$transclude tiddler=\"$:/core/ui/TiddlerFields\"/>\n</$tiddler>\n\\end"},"$:/plugins/kookma/utility/procedures/doc-url":{"title":"$:/plugins/kookma/utility/procedures/doc-url","created":"20240728084438157","modified":"20240728084438157","tags":"$:/tags/Global","type":"text/vnd.tiddlywiki","text":"\\procedure doc-url(url)\n<$let topic={{{ [<url>split[.html]last[]] }}}\n ourl= {{{[<topic>addprefix[https://tiddlywiki.com]]}}} >\n<a href=<<ourl>> target=_blank><$text text={{{[<topic>removeprefix[#]] :and[decodeuri[]] }}} /></a>\n\\end"},"$:/plugins/kookma/utility/procedures/docit":{"title":"$:/plugins/kookma/utility/procedures/docit","created":"20240728084400356","modified":"20240728084420544","tags":"$:/tags/Global","type":"text/vnd.tiddlywiki","text":"\\procedure docit()\n<div class=\"alert alert-danger\">\n''To Be Documented''. Created on <$view field=created format=date template=\"YYYY.0MM.0DD\"/>\n</div>\n\\end"},"$:/plugins/kookma/utility/procedures/docsvg":{"title":"$:/plugins/kookma/utility/procedures/docsvg","created":"20240728084429373","modified":"20240728084429373","tags":"$:/tags/Global","type":"text/vnd.tiddlywiki","text":"\\procedure doc-svg(tiddler:\"\", color:\"\")\n<span class=\"kk-doc\" style=`fill:$(color)$;`><$transclude tiddler=<<tiddler>> /></span>\n\\end"},"$:/plugins/kookma/utility/procedures/linkify":{"title":"$:/plugins/kookma/utility/procedures/linkify","created":"20240728085952652","modified":"20240728085952652","tags":"$:/tags/Global","type":"text/vnd.tiddlywiki","text":"\\procedure linkify(tiddler:\"\", field:\"caption\")\n<$link to=<<tiddler>> >\n\t<$view tiddler=<<tiddler>> field=<<field>> >\n\t\t\t<$view tiddler=<<tiddler>> field=\"title\" />\n\t</$view>\n</$link>\n\\end"},"$:/plugins/kookma/utility/procedures/local-link":{"title":"$:/plugins/kookma/utility/procedures/local-link","tags":"$:/tags/Global","type":"text/vnd.tiddlywiki","text":"\\procedure local(folder, label:\"\")\n<a href={{{ [<folder>addprefix[file:///]] }}} target=_blank>\n<%if [<label>trim[]is[blank]] %><<folder>><% else %><<label>><%endif%>\n</a>\n\\end"},"$:/plugins/kookma/utility/procedures/lorem":{"title":"$:/plugins/kookma/utility/procedures/lorem","author":"Jeremy Ruston","description":"creates few paragraphs of dumy text","tags":"$:/tags/Global","type":"text/vnd.tiddlywiki","text":"\\procedure .lorem(np:1, nw:\"\")\n\\procedure baseText()\nLorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\n\\end baseText\n\n<$let numwords={{{ [<nw>!match[]] :else[<baseText>split[ ]count[]] }}} numparagraphs=`[range[1,$(np)$]]`>\n<$list filter=\"[<baseText>split[ ]limit<numwords>join[ ]trim[,]trim[.]addsuffix[.]]\" variable=paragraph>\n\n<$list filter=<<numparagraphs>> variable=null> \n<<paragraph>>\n<$list filter=\"[<np>!match[1]]\"><p/></$list>\n</$list>\n\n</$list>\n</$let>\n\\end .lorem"},"$:/plugins/kookma/utility/procedures/password":{"title":"$:/plugins/kookma/utility/procedures/password","tags":"$:/tags/Global","type":"text/vnd.tiddlywiki","text":"\\procedure pass(password, label:\"Pass\")\n\\whitespace notrim\n<div class=\"kk-utility-credential-outer\">\n\t<$text text=<<label>> />: \n\t<$button tooltip=\"click to copy password to clipboard\" class=\"tc-btn-invisible\" message=\"tm-copy-to-clipboard\" param=<<password>> >\n\t\t{{$:/core/images/copy-clipboard}}\n\t</$button>\n\t<span class=\"kk-utility-credential-inner\">\n\t\t<$text text=<<password>>/>\n\t</span>\n</div>\n\\end\n"},"$:/plugins/kookma/utility/procedures/simple-navigation":{"title":"$:/plugins/kookma/utility/procedures/simple-navigation","tags":"$:/tags/Global","type":"text/vnd.tiddlywiki","text":"\\procedure simple-navigation(tag:\"demo\", class, close:\"no\")\n<$list filter=\"[all[current]tag<tag>]\">\n<div class=`$(class)$`>\n\t<$list filter=\"[tag<tag>before<currentTiddler>]\" variable=\"prevTiddler\">\n\t\t<$button to=<<prevTiddler>> tooltip=<<prevTiddler>> class=`tc-btn-invisible $(class)$`>previous\n\t\t\t\t<%if [<close>match[yes]] %><$action-sendmessage $message=\"tm-close-tiddler\" $param=<<currentTiddler>>/><%endif%>\n\t\t</$button>\n\t</$list>\n\t<%if [tag<tag>after<currentTiddler>][tag<tag>before<currentTiddler>] :and[count[]compare:integer:gteq[2]] %>|<%endif%>\n\t<$list filter=\"[tag<tag>after<currentTiddler>]\" variable=\"nextTiddler\">\n\t\t<$button to=<<nextTiddler>> tooltip=<<nextTiddler>> class=`tc-btn-invisible $(class)$`>next\n\t\t\t\t<%if [<close>match[yes]] %><$action-sendmessage $message=\"tm-close-tiddler\" $param=<<currentTiddler>>/><%endif%>\n\t\t</$button>\n\t</$list>\n</div>\n</$list>\n\\end"},"$:/plugins/kookma/utility/procedures/uid":{"title":"$:/plugins/kookma/utility/procedures/uid","author":"Jeremy Ruston","description":"creates a unique id for permanent state tiddler","tags":"$:/tags/Global","type":"text/vnd.tiddlywiki","text":"\\procedure uid(prefix:\"id\")\n<$let uid={{{ [<prefix>][<now [UTC]YYYY0MM0DD0hh0mm0ssXXX>] :and[join[-]] }}}>\n\t<$button tooltip=\"create unique id\" class=\"tc-btn-invisible\">\n\t<$action-sendmessage $message=\"tm-copy-to-clipboard\" $param=<<uid>> successNotification=\"$:/language/Utility/Notifications/UID/CopiedToClipboard/Succeeded\"/>\n\t\t{{$:/core/images/copy-clipboard}} \n\t</$button> \n\t<$text text=<<uid>>/>\n</$let>\n\\end"},"$:/plugins/kookma/utility/procedures/wikitext-example":{"title":"$:/plugins/kookma/utility/procedures/wikitext-example","tags":"$:/tags/Global","type":"text/vnd.tiddlywiki","text":"\\procedure wikitext-example(src)\n<div class=\"doc-example\">\n\t<$transclude $variable=\"copy-to-clipboard-above-right\" src=<<src>>/>\n\t<$codeblock code=<<src>>/>\n\t<p>That renders as:</p>\n\t<$transclude $variable=\"src\" $mode=\"block\"/>\n</div>\n\\end\n\n\\procedure wikitext-example-with-html(src)\n<div class=\"doc-example\">\n\t<$transclude $variable=\"copy-to-clipboard-above-right\" src=<<src>>/>\n\t<$codeblock code=<<src>>/>\n\t<p>That renders as:</p>\n\t<$transclude $variable=\"src\" $mode=\"block\"/>\n\t<p> ... and the underlying HTML is:</p>\n\t<$wikify name=\"html\" text=<<src>> output=\"html\">\n\t\t<$codeblock code=<<html>>/>\n\t</$wikify>\n</div>\n\\end\n\n<!--\nCredit: Jeremy Ruston TiddlyWiki 5.3.5\nThe wiki-text examples are set of procedures for documenting TW codes.\nI changed the name here, so the procedures name are different if compared to original TiddlyWiki\n-->"},"$:/plugins/kookma/utility/reader-mode/styles":{"title":"$:/plugins/kookma/utility/reader-mode/styles","tags":"$:/tags/Stylesheet","type":"text/vnd.tiddlywiki","text":"<!-- this tiddler is a modified $:/plugins/tiddlywiki/tiddlyweb/readonly from Tiddlyweb plugin -->\n\\procedure button-selector(title) <$text text=`button.$(title)$, .tc-drop-down button.$(title)$, div.$(title)$` />\n\n\\procedure hide-edit-controls()\n<<button-selector tc-btn-\\%24\\%3A\\%2Fcore\\%2Fui\\%2FButtons\\%2Fclone>>,\n<<button-selector tc-btn-\\%24\\%3A\\%2Fcore\\%2Fui\\%2FButtons\\%2Fdelete>>,\n<<button-selector tc-btn-\\%24\\%3A\\%2Fcore\\%2Fui\\%2FButtons\\%2Fedit>>,\n<<button-selector tc-btn-\\%24\\%3A\\%2Fcore\\%2Fui\\%2FButtons\\%2Fnew-here>>,\n<<button-selector tc-btn-\\%24\\%3A\\%2Fcore\\%2Fui\\%2FButtons\\%2Fnew-journal-here>>,\n<<button-selector tc-btn-\\%24\\%3A\\%2Fcore\\%2Fui\\%2FButtons\\%2Fimport>>,\n<<button-selector tc-btn-\\%24\\%3A\\%2Fcore\\%2Fui\\%2FButtons\\%2Fmanager>>,\n<<button-selector tc-btn-\\%24\\%3A\\%2Fcore\\%2Fui\\%2FButtons\\%2Fnew-image>>,\n<<button-selector tc-btn-\\%24\\%3A\\%2Fcore\\%2Fui\\%2FButtons\\%2Fnew-journal>>,\n<<button-selector tc-btn-\\%24\\%3A\\%2Fcore\\%2Fui\\%2FButtons\\%2Fnew-tiddler>>{\n\tdisplay: none;\n}\n\\end\n\n\\procedure hide-user-selected-controls()\n<<button-selector tc-btn-\\%24\\%3A\\%2Fcore\\%2Fui\\%2FButtons\\%2Fcontrol-panel>>,\n<<button-selector tc-btn-\\%24\\%3A\\%2Fcore\\%2Fui\\%2FButtons\\%2Fsave-wiki>>,\n<<button-selector tc-btn-\\%24\\%3A\\%2Fcore\\%2Fui\\%2FButtons\\%2Finfo>>,\n<<button-selector tc-btn-\\%24\\%3A\\%2Fplugins\\%2Fkookma\\%2Fcommander\\%2Fbuttons\\%2Fpagecontrol>>,\n<<button-selector tc-btn-\\%24\\%3A\\%2Fplugins\\%2Fkookma\\%2Ftrashbin\\%2Fui\\%2Ftoolbar-button>>,\n<<button-selector tc-btn-\\%24\\%3A\\%2Fplugins\\%2Fkookma\\%2Ffavorites\\%2Fui\\%2Fbuttons\\%2Fadd-remove>>,\n<<button-selector tc-btn-\\%24\\%3A\\%2Fplugins\\%2Fkookma\\%2Futility\\%2Fui\\%2FButtons\\%2FViewFields>> {\n\tdisplay: none;\n}\n\\end\n\n<$reveal state=\"$:/status/IsReaderMode\" type=\"match\" text=\"yes\" default=\"no\"> <!-- by default reader mode is off -->\n\n\\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline macrocallblock\n\n<<hide-edit-controls>>\n<<hide-user-selected-controls>>\n</$reveal>"},"$:/plugins/kookma/utility/reader-mode/switch-actions":{"title":"$:/plugins/kookma/utility/reader-mode/switch-actions","key":"((switch-reader-mode))","tags":"$:/tags/KeyboardShortcut","type":"text/vnd.tiddlywiki","text":"<!-- Toggle reader mode status tiddler: Used in $:/plugins/kookma/utility/styles/reader-mode-->\n<$action-listops $tiddler=\"$:/status/IsReaderMode\" $field=text $subfilter=\"+[toggle[yes]]\"/>\n\n\n<!-- hide core sidebar tabs -->\n<$list filter=\"$:/core/ui/SideBar/Tools $:/core/ui/SideBar/More\">\n<$action-listops $tiddler=<<currentTiddler>> $field=tags $subfilter=\"+[toggle[$:/tags/SideBar]]\"/>\n</$list>\n\n<!-- hide third party plugin sidebar tabs: first check if tab is exist -->\n<$list filter=\"\"\"\n $:/plugins/kookma/trashbin/sidebar-tab \n $:/plugins/kookma/favorites/ui/sidebar/active-tab\n +[is[shadow]]\n \"\"\">\n<$action-listops $tiddler=<<currentTiddler>> $field=tags $subfilter=\"+[toggle[$:/tags/SideBar]]\"/>\n</$list>\n\n\n\n<!-- disable drag and drop -->\n<$action-listops $tiddler=\"$:/config/DragAndDrop/Enable\" $field=text $subfilter=\"+[toggle[no]]\"/>\n"},"$:/plugins/kookma/utility/readme":{"title":"$:/plugins/kookma/utility/readme","tags":"","type":"text/vnd.tiddlywiki","text":"; Utility plugin\nThe utility plugin objective is to provide set of tools for authors. These tools includes simple transclusions, show raw contents of tiddlers, reader mode, wikitext macros, show fields in view mode, linkify, code, docit, and much more!\n\n; Code and demo\nFor learning plugin features, syntax, tutorial and examples see the plugin demo and code pages\n\n* Demo: https://kookma.github.io/TW-Utility/\n* Code: https://github.com/kookma/TW-Utility\n"},"$:/plugins/kookma/utility/snippets/code-procedure":{"title":"$:/plugins/kookma/utility/snippets/code-procedure","caption":"Code","tags":"$:/tags/TextEditor/Snippet","type":"text/vnd.tiddlywiki","text":"<<code src:\"\" language:\"xml\" caption:\"\">>"},"$:/plugins/kookma/utility/snippets/doc-url":{"title":"$:/plugins/kookma/utility/snippets/doc-url","caption":"Docurl","tags":"$:/tags/TextEditor/Snippet","type":"text/vnd.tiddlywiki","text":"<<doc-url url:\"\">>"},"$:/plugins/kookma/utility/snippets/local-proc":{"title":"$:/plugins/kookma/utility/snippets/local-proc","caption":"Local","tags":"$:/tags/TextEditor/Snippet","type":"text/vnd.tiddlywiki","text":"<<local folder:\"\" label:\"\">>"},"$:/plugins/kookma/utility/snippets/pass-proc":{"title":"$:/plugins/kookma/utility/snippets/pass-proc","caption":"Password","tags":"$:/tags/TextEditor/Snippet","type":"text/vnd.tiddlywiki","text":"<<pass password:\"\" label:\"Pass\">>"},"$:/plugins/kookma/utility/snippets/wikitext-example-transclude":{"title":"$:/plugins/kookma/utility/snippets/wikitext-example-transclude","caption":"Wikitext-example transclude","tags":"$:/tags/TextEditor/Snippet","type":"text/vnd.tiddlywiki","text":"<$transclude $variable=\"wikitext-example\" \nsrc=\"\"\"\n\"\"\"/>"},"$:/plugins/kookma/utility/snippets/wikitext-example":{"title":"$:/plugins/kookma/utility/snippets/wikitext-example","caption":"Wikitext-example","tags":"$:/tags/TextEditor/Snippet","type":"text/vnd.tiddlywiki","text":"<<wikitext-example \nsrc:\"\"\"\n\"\"\">>"},"$:/plugins/kookma/utility/styles/code":{"title":"$:/plugins/kookma/utility/styles/code","tags":"$:/tags/Stylesheet","type":"text/vnd.tiddlywiki","text":"figure.kk-utility-fig {\n\t/* for future use*/\n\tmargin-left:0;\n\tmargin-right:0;\n}\n\n/*figcaption structure */\nfigure.kk-utility-fig figcaption {\n\tpadding: 4.5px 7.5px 7.5px 7.5px;\n\tborder-top-left-radius: 3px;\n\tborder-top-right-radius: 3px;\n\tmargin-bottom: -3px;\n}\n\n/* figcaption skin: colors */\nfigure.kk-utility-fig figcaption{\n\topacity: 0.7;\n\tbackground-color:black;\n\tcolor:white;\n}\n\n/* correct the style of codeblock pre element */\nfigure.kk-utility-fig pre{\n\tmargin-top:0;\n\t/*\tused to have inner top border straight */\n\t/*\tborder-top-left-radius: 0; \n\tborder-top-right-radius: 0; */\n}\n\n\n/* the code block and copy-to-clipboard button */\n.kk-utility-code{\n\tposition: relative;\n}\n/* pretty display the empty code block */\n.kk-utility-code pre code{\n\tdisplay: block;\n\tmin-height:30px; \n}\n\n.kk-utility-copy-btn{\n\tposition: absolute;\n\ttop: 3px;\n\tright: 5px;\n\topacity: 0.3;\n/*\tfill:currentColor;*/\n}\n\n.tc-btn-invisible.kk-utility-copy-btn svg{\nwidth: 1.2em;\nheight: 1.2em;\n}\n\n.kk-utility-copy-btn:hover{\n transition: opacity 200ms ease-in-out;\n opacity: 1;\n}"},"$:/plugins/kookma/utility/styles/doc-svg":{"title":"$:/plugins/kookma/utility/styles/doc-svg","text":".kk-doc svg{\nwidth: 1.2em;\nheight: 1.2em;\nvertical-align: middle;}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/utility/styles/password":{"title":"$:/plugins/kookma/utility/styles/password","text":".kk-utility-credential-inner{\n\topacity: 0;\n\ttransition: opacity ease-in 2s;\n}\n.kk-utility-credential-outer:hover .kk-utility-credential-inner{\n\topacity: 1;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/utility/styles/reveal-code":{"title":"$:/plugins/kookma/utility/styles/reveal-code","text":"details.kk-utility-details summary {\n\topacity:0.2;\n\tfont-size:0.9em;\n\tdisplay: inline;\n\tcursor: pointer;\n\tpadding: 10px;\n\ttransition: 0.3s;\n\t-webkit-user-select: none;\n\t-moz-user-select: none;\n\t-ms-user-select: none;\n\tuser-select: none;\n}\ndetails.kk-utility-details summary:hover,\ndetails.kk-utility-details[open] > summary {\n\topacity:1;\n}\n\n/* hide in preview pane */\n.tc-tiddler-preview-preview .kk-utility-details{\n\tdisplay: none; \n}\n\n\n/* used in $:/plugins/kookma/utility/ui/ControlPanel/Settings */\n.kk-utility-label{\n\twidth:26em;\n\tdisplay: block;\n\tmargin-top:5px;\n}\n\n.kk-ut-txt{\n\tmin-width:50%;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/utility/styles/tiddler-size":{"title":"$:/plugins/kookma/utility/styles/tiddler-size","text":"/* tiddler size table */\n\n.kk-utility-tiddlersize{\n\tmargin:0.5em;\n}\n.kk-utility-tiddlersize tr,\n.kk-utility-tiddlersize th,\n.kk-utility-tiddlersize td {\n\tpadding:0 0.25em;\n\tmargin:0; \n\ttext-align:right;\n}\n\n/* tiddler size button and dropdown in Edit mode */\n.kk-utility-tiddlersize-btn{\n\tfloat:left;\n\tmargin-top:-1.25em;\n}\n.kk-utility-tiddlersize-dropdwon{\n\tpadding:0;\n\tfont-size:90%;\n\tmin-width:unset;\n}","tags":"$:/tags/Stylesheet","type":"text/css"},"$:/plugins/kookma/utility/styles/tw-version":{"title":"$:/plugins/kookma/utility/styles/tw-version","tags":"$:/tags/Stylesheet","type":"text/vnd.tiddlywiki","text":"\\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline conditional\n<%if [{$:/config/Stylesheet/Visibility/$:/plugins/kookma/utility/styles/tw-version}match[show]] %>\n/* TW-version added to site title */\n.tc-site-title:before {\n content:\"TW <<version>>\";\n position:absolute;\n margin-top:-1.9em;\n color:<<color sidebar-foreground>>;\n font-size:13px;\n}\n<%endif%>"},"$:/plugins/kookma/utility/styles/wikitext-macro":{"title":"$:/plugins/kookma/utility/styles/wikitext-macro","tags":"$:/tags/Stylesheet","type":"text/vnd.tiddlywiki","text":".doc-example {\n\tmargin: 1em 0;\n\tpadding: 0.8em 0;\n}\n.doc-example:hover {\n\tbackground-color: <<colour code-background>>;\n}\n.doc-example ul {\n\tmargin-bottom: 0;\n\tpadding-bottom: 0;\n\tmargin-top: 0.2em;\n}\n\n.doc-example input[type=search] { \n width: 95%;\n}\n.doc-example pre:first-child {\n\tmargin-top: 0;\n}"},"$:/plugins/kookma/utility/tiddlerInfo/tiddler-size":{"title":"$:/plugins/kookma/utility/tiddlerInfo/tiddler-size","caption":"Tiddler size","tags":"$:/tags/TiddlerInfo","type":"text/vnd.tiddlywiki","text":"\\function .fieldnames() [<currentTiddler>fields[]sort[]] -[[draft.title]] -[[draft.of]]\n\\function .lines() [.fieldnames[]] :map[<..currentTiddler>get<currentTiddler>splitregexp[\\n]count[]else[0]] [enlist<fieldnames>count[]else[0]] +[sum[]]\n\\function .words() [.fieldnames[]] :map[<..currentTiddler>get<currentTiddler>splitregexp[\\n]splitregexp[\\s+]count[]else[0]] [enlist<fieldnames>splitregexp[\\s+]count[]else[0]] +[sum[]]\n\\function .bytes() [.fieldnames[]] :map[<..currentTiddler>get<currentTiddler>else[]length[]] [enlist<fieldnames>length[]else[0]] +[sum[]]\n\n\\procedure tiddlerSize()\n <table class=\"kk-utility-tiddlersize\">\n <tr><th>fieldname</th><th>lines</th><th>words</th><th>bytes</th></tr>\n <$list filter=\"[.fieldnames[]]\" variable=\"fieldname\">\n <tr>\n <td><<fieldname>></td>\n <td><$text text={{{ [<currentTiddler>get<fieldname>splitregexp[\\n]count[]else[0]] }}}/></td>\n <td><$text text={{{ [<currentTiddler>get<fieldname>splitregexp[\\n]splitregexp[\\s+]count[]else[0]] }}}/></td>\n <td><$text text={{{ [<currentTiddler>get<fieldname>length[]else[0]] }}}/></td>\n </tr>\n </$list>\n <tr>\n <td>field names</td>\n <td><$text text={{{ [.fieldnames[]count[]else[0]] }}}/></td>\n <td><$text text={{{ [.fieldnames[]splitregexp[\\s+]count[]else[0]] }}}/></td>\n <td><$text text={{{ [.fieldnames[]length[]else[0]] +[sum[]] }}}/></td>\n </tr>\n <tr>\n <th>totals</th>\n <th><<.lines>></th>\n <th><<.words>></th>\n <th><<.bytes>></th>\n </tr>\n </table>\n\\end tiddlerSize\n\n<<tiddlerSize>>"},"$:/plugins/kookma/utility/ui/Buttons/draggable-link":{"title":"$:/plugins/kookma/utility/ui/Buttons/draggable-link","caption":"{{$:/core/images/link}} {{$:/language/Buttons/DraggableHandle/Caption}}","description":"{{$:/language/Buttons/DraggableHandle/Hint}}","list-after":"$:/core/ui/Buttons/more-tiddler-actions","tags":"$:/tags/ViewToolbar","type":"text/vnd.tiddlywiki","text":"\\procedure btn-actions()\n<!-- bring to top -->\n<$list filter=\"[<modifier>match[normal]]\" variable=ignore>\n<$action-navigate $to=<<currentTiddler>> $scroll=\"yes\"/>\n</$list>\n\n<!-- focus -->\n<$list filter=\"[<modifier>match[alt]]\" variable=ignore>\n<$action-sendmessage $message=\"tm-close-other-tiddlers\" param=<<currentTiddler>> />\n</$list>\n\n<!-- permalink -->\n<$list filter=\"[<modifier>match[ctrl]]\" variable=ignore>\n<$action-sendmessage $message=\"tm-permalink\" param=<<currentTiddler>> successNotification=\"$:/language/Utility/Notifications/Permlink/CopiedToClipboard/Succeeded\"/>\n</$list>\n\n<!-- permaview -->\n<$list filter=\"[<modifier>match[shift]]\" variable=ignore>\n<$action-sendmessage $message=\"tm-permaview\" param=<<currentTiddler>> successNotification=\"$:/language/Utility/Notifications/Permview/CopiedToClipboard/Succeeded\"/>\n</$list>\n\n\\end\n\n\\whitespace trim\n<$button tooltip={{$:/language/Buttons/DraggableHandle/Hint}} aria-label={{$:/language/Buttons/DraggableHandle/Caption}} class=<<tv-config-toolbar-class>> dragTiddler=<<currentTiddler>> actions=<<btn-actions>> >\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/link}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text={{$:/language/Buttons/DraggableHandle/Caption}}/>\n</span>\n</$list>\n</$button>"},"$:/plugins/kookma/utility/ui/Buttons/view-fields":{"title":"$:/plugins/kookma/utility/ui/Buttons/view-fields","caption":"{{$:/plugins/kookma/utility/images/view-fields.svg}} {{$:/language/Buttons/Utility/Caption}}","description":"Show a toggle button for view fields","list-before":"$:/plugins/kookma/shiraz/ui/Buttons/SwitchPalette","tags":"$:/tags/PageControls","type":"text/vnd.tiddlywiki","text":"\\whitespace trim\n\\procedure stateTid() $:/state/utility/view-fields\n\n\\procedure control-panel-button(status, class)\n\\whitespace trim\n\t<$button set=<<stateTid>> setTo=<<status>> tooltip={{$:/language/Buttons/Utility/Hint}} aria-label={{$:/language/Buttons/Utility/Caption}} class=`$(tv-config-toolbar-class)$ $(class)$` >\n\t\t\t<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n\t\t\t\t\t{{$:/plugins/kookma/utility/images/view-fields.svg}} \n\t\t\t</$list>\n\t\t\t<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n\t\t\t\t\t<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Utility/Caption}}/></span>\n\t\t\t</$list>\n\t</$button>\n\\end\t\n\n\n<%if [<stateTid>get[text]match[show]] %>\n\t<<control-panel-button status:\"hide\" class:\"tc-selected\">>\n<%else%>\n\t<<control-panel-button status:\"show\">>\n<%endif%>"},"$:/plugins/kookma/utility/ui/ControlPanel/Settings":{"title":"$:/plugins/kookma/utility/ui/ControlPanel/Settings","caption":"Utility","tags":"$:/tags/ControlPanel/SettingsTab $:/tags/MoreSideBar","type":"text/vnd.tiddlywiki","text":"\\procedure help-exclude-reveal-filter()\nExclude Filter: Use this filter to hide the\nsource toggle button on specific tiddlers.\n\\end\n\n\\procedure help-extra-reveal-filter()\nUse this filter to show the source toggle button with\nrevealed source code on specific tiddlers.\n\\end\n\n\nThese settings let you customise the behaviour of Utility plugin.\n\n---\n\n;Show Utility setting in more sidebar\n:<$checkbox tiddler=\"$:/plugins/kookma/utility/ui/ControlPanel/Settings\" tag=\"$:/tags/MoreSideBar\"> Show setting in more sidebar</$checkbox>\n\n\n;Options\n:<$checkbox tiddler=\"$:/config/Stylesheet/Visibility/$:/plugins/kookma/utility/styles/tw-version\" field=\"text\" checked=\"show\" unchecked=\"hide\"> Show Tiddlywiki version badge</$checkbox>\n:<$checkbox tiddler=\"$:/config/EditTemplate/Visibility/$:/plugins/kookma/utility/edittemplates/tiddler-size\" field=\"text\" checked=\"show\" unchecked=\"hide\"> Show tiddler size information in edit mode</$checkbox>\n:<$checkbox tiddler=\"$:/config/ViewTemplate/Visibility/$:/plugins/kookma/utility/viewtemplates/import-select\" field=\"text\" checked=\"show\" unchecked=\"hide\"> Show select tiddlers menu on ''~$:/Import''</$checkbox>\n\n\n;Source Toggle Button\n:<$checkbox tiddler=\"$:/config/ViewTemplate/Visibility/$:/plugins/kookma/utility/viewtemplates/source-toggle-button\" field=\"text\" checked=\"show\" unchecked=\"hide\"> Show source button on the tiddlers</$checkbox>\n\n:<div style=\"padding-left:18px;\">\n<%if [{$:/config/ViewTemplate/Visibility/$:/plugins/kookma/utility/viewtemplates/source-toggle-button}match[show]] %>\n<label class=\"kk-utility-label\" title=<<help-exclude-reveal-filter>> >Exclude filter<sup>?</sup></label>\n<$edit-text tiddler=\"$:/config/Utility/SourceToggleButton/Exclude-filter\" field=\"text\" tag=input default=\"\" placeholder=\"enter a filter e.g. [has:field[myField]] \" class=\"kk-ut-txt\"/><br>\n\n<label class=\"kk-utility-label\" title=<<help-extra-reveal-filter>> >Extra filter<sup>?</sup></label>\n<$edit-text tiddler=\"$:/config/Utility/SourceToggleButton/Extra-filter\" field=\"text\" tag=input default=\"\" placeholder=\"enter a filter e.g. [tag[myTag]] \" class=\"kk-ut-txt\"/>\n<%endif%>\n</div>\n\n;Customize UI elements\n: [[Show/hide selected UI elements|$:/plugins/kookma/utility/customize-ui/modal]]\n\n"},"$:/plugins/kookma/utility/viewtemplates/import-select":{"title":"$:/plugins/kookma/utility/viewtemplates/import-select","list-before":"$:/core/ui/ViewTemplate/body","tags":"$:/tags/ViewTemplate","type":"text/vnd.tiddlywiki","text":"\\procedure select-all-actions()\n<$list filter=\"[all[current]plugintiddlers[]sort[title]]\" variable=\"payloadTiddler\">\n<$action-setfield $field={{{ [<payloadTiddler>addprefix[selection-]] }}} $value={{$:/state/import/select-all}}/>\n</$list>\n<$action-setfield $field=\"selection-system-tiddlers\" $value={{$:/state/import/select-all}} />\n<$action-setfield $field=\"selection-shadow-tiddlers\" $value={{$:/state/import/select-all}} />\n<$action-setfield $field=\"selection-ordinary-tiddlers\" $value={{$:/state/import/select-all}} />\n<$action-setfield $field=\"selection-existing-tiddlers\" $value={{$:/state/import/select-all}} />\n\\end\n\n\n\\procedure select-all-state(param)\n<$list filter=\"[<param>match[unchecked]]\" variable=null>\n\t<$action-setfield $tiddler=\"$:/state/import/select-all\" $field=text $value=<<param>>/>\n</$list>\n\\end\n\n\n\\procedure cb-action(filter, param)\n<$list filter=\"[{$:/Import}jsonindexes[tiddlers]] :filter[subfilter<filter>]\" variable=\"tid\">\n <$action-setfield $tiddler=\"$:/Import\" $field={{{ [[selection-]addsuffix<tid>] }}} $value=<<param>>/>\n</$list>\n<<select-all-state>>\n\\end\n\n\n\\procedure check-boxes()\n<$checkbox tiddler=\"$:/state/import/select-all\" field=\"text\" checked=\"checked\" unchecked=\"unchecked\" default=\"checked\" \n actions=<<select-all-actions>>\n ><span class=\"tc-tiny-gap\">All</span>\n</$checkbox>\n\n<$checkbox field=\"selection-system-tiddlers\" default=\"checked\" checked=\"checked\" unchecked=\"unchecked\"\n checkactions= \"\"\"<<cb-action filter:\"[is[system]]\" param:\"checked\">>\"\"\"\n uncheckactions= \"\"\"<<cb-action filter:\"[is[system]]\" param:\"unchecked\">>\"\"\"\n ><span class=\"tc-tiny-gap\">System</span>\n</$checkbox>\n\n<$checkbox field=\"selection-shadow-tiddlers\" default=\"checked\" checked=\"checked\" unchecked=\"unchecked\"\n checkactions= \"\"\"<<cb-action filter:\"[is[shadow]]\" param:\"checked\">>\"\"\"\n uncheckactions= \"\"\"<<cb-action filter:\"[is[shadow]]\" param:\"unchecked\">>\"\"\"\n ><span class=\"tc-tiny-gap\">Shadow</span>\n</$checkbox>\n\n<$checkbox field=\"selection-ordinary-tiddlers\" default=\"checked\" checked=\"checked\" unchecked=\"unchecked\"\n checkactions= \"\"\"<<cb-action filter:\"[!is[system]!is[shadow]]\" param:\"checked\">>\"\"\"\n uncheckactions= \"\"\"<<cb-action filter:\"[!is[system]!is[shadow]]\" param:\"unchecked\">>\"\"\"\n ><span class=\"tc-tiny-gap\">Ordinary</span>\n</$checkbox>\n\n<$checkbox field=\"selection-existing-tiddlers\" default=\"checked\" checked=\"checked\" unchecked=\"unchecked\"\n checkactions= \"\"\"<<cb-action filter:\"[is[tiddler]]\" param:\"checked\">>\"\"\"\n uncheckactions= \"\"\"<<cb-action filter:\"[is[tiddler]]\" param:\"unchecked\">>\"\"\"\n ><span class=\"tc-tiny-gap\">Existing</span>\n</$checkbox>\n\n\\end\n\n\\procedure rename-existing-action()\n<$list filter=\"[{$:/Import}jsonindexes[tiddlers]is[tiddler]]\" variable=\"tid\">\n <$action-setfield $tiddler=\"$:/Import\" $field={{{ [[rename-]addsuffix<tid>] }}} $value={{{ [<tid>] :and[subfilter{!!rename-inputbox}] }}}/>\n</$list>\n\\end\n\n\\procedure cancel-rename-existing-action()\n<$list filter=\"[{$:/Import}jsonindexes[tiddlers]is[tiddler]]\" variable=\"tid\">\n <$action-setfield $tiddler=\"$:/Import\" $field={{{ [[rename-]addsuffix<tid>] }}} />\n</$list>\n\\end\n\n\\procedure rename-existing()\n<div style=\"margin-top:5px;\">\nRename existing\n<$keyboard key={{$:/config/shortcuts/input-cancel}} actions=\"\"\"<$action-deletefield $field=\"rename-inputbox\"/>\"\"\" >\n<$edit-text field=\"rename-inputbox\" tag=input size=\"45\" placeholder=\"enter a subfilter e.g. [addprefix[New-]]\"/>\n</$keyboard>\n<$button actions=<<rename-existing-action>> >apply</$button>\n<$button actions=<<cancel-rename-existing-action>> >cancel</$button>\n</div>\n\\end rename-existing\n\n<%if [{$:/config/ViewTemplate/Visibility/$:/plugins/kookma/utility/viewtemplates/import-select}match[show]] [all[current]match[$:/Import]status[pending]] :and[count[]match[2]] %>\n<<check-boxes>>\n<<rename-existing>>\n<%endif%>"},"$:/plugins/kookma/utility/viewtemplates/source-toggle-button":{"title":"$:/plugins/kookma/utility/viewtemplates/source-toggle-button","code-body":"yes","tags":"","type":"text/vnd.tiddlywiki","text":"\\define show-tiddler-source(open:\"\")\n<details title=\"Show/hide tiddler source\" class=\"kk-utility-details\" $open$>\n<summary>Source</summary>\n<$transclude $variable=\"code\" language={{{ [{!!type}else[xml]] }}} src={{!!text}} />\n</details>\n\\end\n\n<$transclude $tiddler=\"$:/core/ui/ViewTemplate/body/default\"/>\n\n<%if [all[current]has[title]] -[subfilter{$:/config/Utility/SourceToggleButton/Exclude-filter}] %>\n\t<%if [tag[show-content]] [tag[show-source]] [subfilter{$:/config/Utility/SourceToggleButton/Extra-filter}] :and[match<currentTiddler>] %>\n\t\t<<show-tiddler-source open>>\n\t<%else%>\n\t\t<<show-tiddler-source>>\n\t<%endif%>\n<%endif%>"},"$:/plugins/kookma/utility/viewtemplates/view-fields":{"title":"$:/plugins/kookma/utility/viewtemplates/view-fields","description":"Toggle field handling in view mode","list-before":"$:/core/ui/ViewTemplate/body","tags":"$:/tags/ViewTemplate","type":"text/vnd.tiddlywiki","text":"<$reveal type=match stateTitle=\"$:/state/utility/view-fields\" stateField=text default=\"hide\" text=show tag=div class=\"kk-ut-viewfields\">\n\n<$vars newFieldNameTiddler=<<qualify \"$:/temp/NewFieldName\">>\nnewFieldValueTiddler=<<qualify \"$:/temp/NewFieldValue\">> \nsearchListState=<<qualify \"$:/temp/searchListState\">> \nstoreTitle=<<qualify \"$:/temp/storeTitle\">> \n>\n<$transclude tiddler=\"$:/core/ui/EditTemplate/fields\"/>\n</$vars>\n\n</$reveal>\n\n<!-- IMPORTANT Note: I had to use another viewtemplate for TW 5.2.3+, which do not use in TW 5.2.2 and older, but after 5.3.3\nI could use the old viewtemplate to show the fields!\nSee: https://github.com/Jermolene/TiddlyWiki5/discussions/6803#discussioncomment-3190043\n-->"}}} \ No newline at end of file diff --git a/tiddlers/TCTSystem/plugins/kookma/utility.json.meta b/tiddlers/TCTSystem/plugins/kookma/utility.json.meta index 1dca1e73..d55ff7bd 100644 --- a/tiddlers/TCTSystem/plugins/kookma/utility.json.meta +++ b/tiddlers/TCTSystem/plugins/kookma/utility.json.meta @@ -1,11 +1,12 @@ author: Mohammad Rahmani -core-version: >=5.2.5 +core-version: >=5.3.5 dependents: description: Small tools for authors and developers list: readme license history name: Utility plugin-type: plugin source: https://github.com/kookma/TW-Utility +stability: STABILITY_2_STABLE title: $:/plugins/kookma/utility type: application/json -version: 2.7.0 \ No newline at end of file +version: 3.0.0 \ No newline at end of file diff --git a/tiddlers/TCTSystem/plugins/linonetwo/autocomplete.json b/tiddlers/TCTSystem/plugins/linonetwo/autocomplete.json new file mode 100644 index 00000000..c92e6222 --- /dev/null +++ b/tiddlers/TCTSystem/plugins/linonetwo/autocomplete.json @@ -0,0 +1,16 @@ +[ + { + "author": "linonetwo", + "dependents": "", + "description": "Auto complete full-text search across wiki. Dependency of TW-CommandPalette. Install that if you want out-of-box features.", + "list": "readme example config tree", + "name": "autocomplete", + "plugin-type": "plugin", + "stability": "STABILITY_1_EXPERIMENTAL", + "text": "{\"tiddlers\":{\"$:/plugins/linonetwo/autocomplete/commands/help/CtrlEnter\":{\"title\":\"$:/plugins/linonetwo/autocomplete/commands/help/CtrlEnter\",\"command-palette-prefix\":\"\",\"caption\":\"<<lingo Help/CtrlEnter/Caption $:/plugins/linonetwo/autocomplete/language/>>\",\"description\":\"<<lingo Help/CtrlEnter/Description $:/plugins/linonetwo/autocomplete/language/>>\",\"tags\":\"$:/tags/AutoCompleteHelp\",\"list-after\":\"$:/plugins/linonetwo/autocomplete/commands/help/User\"},\"$:/plugins/linonetwo/autocomplete/commands/help/Enter\":{\"title\":\"$:/plugins/linonetwo/autocomplete/commands/help/Enter\",\"command-palette-prefix\":\"\",\"caption\":\"<<lingo Help/Enter/Caption $:/plugins/linonetwo/autocomplete/language/>>\",\"description\":\"<<lingo Help/Enter/Description $:/plugins/linonetwo/autocomplete/language/>>\",\"tags\":\"$:/tags/AutoCompleteHelp\",\"list-after\":\"$:/plugins/linonetwo/autocomplete/commands/help/ShiftEnter\"},\"$:/plugins/linonetwo/autocomplete/commands/help/Filter\":{\"title\":\"$:/plugins/linonetwo/autocomplete/commands/help/Filter\",\"command-palette-prefix\":\"[\",\"caption\":\"<<lingo Help/Filter/Caption $:/plugins/linonetwo/autocomplete/language/>>\",\"description\":\"<<lingo Help/Filter/Description $:/plugins/linonetwo/autocomplete/language/>>\",\"tags\":\"$:/tags/AutoCompleteHelp\"},\"$:/plugins/linonetwo/autocomplete/commands/help/Help\":{\"title\":\"$:/plugins/linonetwo/autocomplete/commands/help/Help\",\"command-palette-prefix\":\"?\",\"caption\":\"<<lingo Help/Help/Caption $:/plugins/linonetwo/autocomplete/language/>>\",\"description\":\"<<lingo Help/Help/Description $:/plugins/linonetwo/autocomplete/language/>>\",\"tags\":\"$:/tags/AutoCompleteHelp\"},\"$:/plugins/linonetwo/autocomplete/commands/help/ShiftEnter\":{\"title\":\"$:/plugins/linonetwo/autocomplete/commands/help/ShiftEnter\",\"command-palette-prefix\":\"\",\"caption\":\"<<lingo Help/ShiftEnter/Caption $:/plugins/linonetwo/autocomplete/language/>>\",\"description\":\"<<lingo Help/ShiftEnter/Description $:/plugins/linonetwo/autocomplete/language/>>\",\"tags\":\"$:/tags/AutoCompleteHelp\",\"list-after\":\"$:/plugins/linonetwo/autocomplete/commands/help/CtrlEnter\"},\"$:/plugins/linonetwo/autocomplete/commands/help/System\":{\"title\":\"$:/plugins/linonetwo/autocomplete/commands/help/System\",\"command-palette-prefix\":\"$ ¥\",\"caption\":\"<<lingo Help/System/Caption $:/plugins/linonetwo/autocomplete/language/>>\",\"description\":\"<<lingo Help/System/Description $:/plugins/linonetwo/autocomplete/language/>>\",\"tags\":\"$:/tags/AutoCompleteHelp\"},\"$:/plugins/linonetwo/autocomplete/commands/help/Tags\":{\"title\":\"$:/plugins/linonetwo/autocomplete/commands/help/Tags\",\"command-palette-prefix\":\"#\",\"caption\":\"<<lingo Help/Tags/Caption $:/plugins/linonetwo/autocomplete/language/>>\",\"description\":\"<<lingo Help/Tags/Description $:/plugins/linonetwo/autocomplete/language/>>\",\"tags\":\"$:/tags/AutoCompleteHelp\"},\"$:/plugins/linonetwo/autocomplete/commands/help/User\":{\"title\":\"$:/plugins/linonetwo/autocomplete/commands/help/User\",\"command-palette-prefix\":\"\",\"caption\":\"<<lingo Help/User/Caption $:/plugins/linonetwo/autocomplete/language/>>\",\"description\":\"<<lingo Help/User/Description $:/plugins/linonetwo/autocomplete/language/>>\",\"tags\":\"$:/tags/AutoCompleteHelp\"},\"$:/plugins/linonetwo/autocomplete/config\":{\"title\":\"$:/plugins/linonetwo/autocomplete/config\",\"tags\":\"$:/tags/ControlPanel/SettingsTab\",\"caption\":\"<<lingo Name $:/plugins/linonetwo/autocomplete/language/>>\",\"text\":\"\\\\define lingo-base() $:/plugins/linonetwo/autocomplete/language/\\n\\n!!! <<lingo Configs/Performance/Caption>>\\n\\n;<<lingo Configs/DebounceDuration/Caption>>\\n:<$edit-text tiddler=\\\"$:/plugins/linonetwo/autocomplete/configs/DebounceDuration\\\" tabindex=-1 focus=false cancelPopups=\\\"yes\\\" fileDrop=no tag=\\\"input\\\" type=\\\"number\\\" />ms <<lingo Configs/DebounceDuration/Description>>\\n\\n!!! <<lingo Configs/TitleText/Caption>>\\n\\n;<<lingo Configs/TitlePriorityText/Caption>>\\n:<$checkbox tiddler=\\\"$:/plugins/linonetwo/autocomplete/configs/TitlePriorityText\\\" field=\\\"text\\\" checked=\\\"yes\\\" unchecked=\\\"\\\"> <<lingo Configs/TitlePriorityText/Description>></$checkbox>\\n;<<lingo Configs/TitleAlias/Caption>>\\n:<$edit-text tiddler=\\\"$:/plugins/linonetwo/autocomplete/configs/TitleAlias\\\" tabindex=-1 focus=false cancelPopups=\\\"yes\\\" fileDrop=no tag=\\\"input\\\" /> <<lingo Configs/TitleAlias/Description>>\\n;<<lingo Configs/TextAlias/Caption>>\\n:<$edit-text tiddler=\\\"$:/plugins/linonetwo/autocomplete/configs/TextAlias\\\" tabindex=-1 focus=false cancelPopups=\\\"yes\\\" fileDrop=no tag=\\\"input\\\" /> <<lingo Configs/TextAlias/Description>>\\n;<<lingo Configs/TitleTextIgnoreFilter/Caption>>\\n:<$edit-text tiddler=\\\"$:/plugins/linonetwo/autocomplete/configs/TitleTextIgnoreFilter\\\" tabindex=-1 focus=false cancelPopups=\\\"yes\\\" fileDrop=no tag=\\\"input\\\" /> <<lingo Configs/TitleTextIgnoreFilter/Description>>\\n;<<lingo Configs/ApplyIgnoreFilterToTag/Caption>>\\n:<$checkbox tiddler=\\\"$:/plugins/linonetwo/autocomplete/configs/ApplyIgnoreFilterToTag\\\" field=\\\"text\\\" checked=\\\"yes\\\" unchecked=\\\"\\\"> <<lingo Configs/ApplyIgnoreFilterToTag/Description>></$checkbox>\\n\\n!!! <<lingo Configs/SystemTiddler/Caption>>\\n\\n;<<lingo Configs/SearchSystemTitle/Caption>>\\n:<$checkbox tiddler=\\\"$:/plugins/linonetwo/autocomplete/configs/SearchSystemTitle\\\" field=\\\"text\\\" checked=\\\"yes\\\" unchecked=\\\"\\\"> <<lingo Configs/SearchSystemTitle/Description>></$checkbox>\\n;<<lingo Configs/CacheSystemTiddlers/Caption>>\\n:<$checkbox tiddler=\\\"$:/plugins/linonetwo/autocomplete/configs/CacheSystemTiddlers\\\" field=\\\"text\\\" checked=\\\"yes\\\" unchecked=\\\"\\\"> <<lingo Configs/CacheSystemTiddlers/Description>></$checkbox>\\n\\n!!! <<lingo Configs/FilterSearch/Caption>>\\n\\n;<<lingo Configs/MissingFilterOnTop/Caption>>\\n:<$checkbox tiddler=\\\"$:/plugins/linonetwo/autocomplete/configs/MissingFilterOnTop\\\" field=\\\"text\\\" checked=\\\"yes\\\" unchecked=\\\"\\\"> <<lingo Configs/MissingFilterOnTop/Description>></$checkbox>\\n\"},\"$:/plugins/linonetwo/autocomplete/configs/TitleAlias\":{\"title\":\"$:/plugins/linonetwo/autocomplete/configs/TitleAlias\",\"text\":\"title caption alias\"},\"$:/plugins/linonetwo/autocomplete/configs/TextAlias\":{\"title\":\"$:/plugins/linonetwo/autocomplete/configs/TextAlias\",\"text\":\"text keywords\"},\"$:/plugins/linonetwo/autocomplete/configs/TitleTextIgnoreFilter\":{\"title\":\"$:/plugins/linonetwo/autocomplete/configs/TitleTextIgnoreFilter\",\"text\":\"-[field:calendarEntry[yes]] :filter[!field:tmo_taskState[Completed]!field:tmo_taskState[Archived]!field:tmo_taskState[Terminated]!field:tmo_taskState[Suspended]]\"},\"$:/plugins/linonetwo/autocomplete/configs/TitlePriorityText\":{\"title\":\"$:/plugins/linonetwo/autocomplete/configs/TitlePriorityText\",\"text\":\"no\"},\"$:/plugins/linonetwo/autocomplete/configs/SearchSystemTitle\":{\"title\":\"$:/plugins/linonetwo/autocomplete/configs/SearchSystemTitle\",\"text\":\"no\"},\"$:/plugins/linonetwo/autocomplete/configs/CacheSystemTiddlers\":{\"title\":\"$:/plugins/linonetwo/autocomplete/configs/CacheSystemTiddlers\",\"text\":\"yes\"},\"$:/plugins/linonetwo/autocomplete/configs/ApplyIgnoreFilterToTag\":{\"title\":\"$:/plugins/linonetwo/autocomplete/configs/ApplyIgnoreFilterToTag\",\"text\":\"yes\"},\"$:/plugins/linonetwo/autocomplete/configs/MissingFilterOnTop\":{\"title\":\"$:/plugins/linonetwo/autocomplete/configs/MissingFilterOnTop\",\"text\":\"no\"},\"$:/plugins/linonetwo/autocomplete/configs/DebounceDuration\":{\"title\":\"$:/plugins/linonetwo/autocomplete/configs/DebounceDuration\",\"text\":\"300\"},\"$:/plugins/linonetwo/autocomplete/example\":{\"title\":\"$:/plugins/linonetwo/autocomplete/example\",\"text\":\"<<wikitext-example-without-html src:'<$auto-complete-search id=\\\"demo\\\" autoFocus=\\\"no\\\" destroyWhenNotVis=\\\"no\\\" />'>>\\n\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Readme\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Readme\",\"text\":\"\\\\define lingo-base() $:/plugins/linonetwo/autocomplete/language/\\n\\n! <<lingo Name>>\\n\\n<<lingo Description>>\\n\\n!! CommandPalette\\n\\nIf you want to use the command menu out-of-the-box, you also need to install the [[$:/plugins/linonetwo/commandpalette]] plugin.\\n\\n!!! Auto-completion box\\n\\nThis plugin provides an auto-completion box Widget `<$auto-complete-search />` with the following basic usage:\\n\\n| !Parameter Name | !Type | !Description | !Default Value |\\n| `cycleHistoryMode` | yes/no | Determines if the mode is used to cycle through opened story tiddlers, showing only history, no other features. | `no` |\\n| `autoFocus` | yes/no | Automatically sets focus to the input and opens the panel when the widget is rendered. | `yes` |\\n| `panelBelowInput` | yes/no | By default panel is below input. Disable this to let it center on top of window. | `yes` |\\n| `destroyWhenNotVis` | yes/no | Destroys the widget when it is not visible. | `no` |\\n\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Name\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Name\",\"text\":\"AutoComplete Box\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Description\",\"text\":\"Search the text of tiddlers and execute commands in Tiddlywiki. Embed anywhere as a Widget.\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/Performance/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/Performance/Caption\",\"text\":\"Performance\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/TitleAlias/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/TitleAlias/Caption\",\"text\":\"Fields regarded as title to search\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/TitleAlias/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/TitleAlias/Description\",\"text\":\"When searching title, you may want to include more fields to search. Separate fields with spaces, note that adding too many fields can cause lag.\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/TextAlias/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/TextAlias/Caption\",\"text\":\"Fields regarded as text to search\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/TextAlias/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/TextAlias/Description\",\"text\":\"When searching text, you may want to include more fields to search. Separate fields with spaces, note that adding too many fields can cause lag.\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/DesktopWidth/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/DesktopWidth/Caption\",\"text\":\"Width on desktop mode\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/DesktopWidth/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/DesktopWidth/Description\",\"text\":\"Width of the input and result boxes on the screen (does not affect mobile, which is full screen by default)\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/TitlePriorityText/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/TitlePriorityText/Caption\",\"text\":\"Title higher than text.\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/TitlePriorityText/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/TitlePriorityText/Description\",\"text\":\"When checked, title search results will be listed on the top, and text search results will be listed below, when searching user tiddlers. (The result on the bottom can be selected by pressing the ↑ up arrow key to circle go to the bottom of the search results)\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/TitleTextIgnoreFilter/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/TitleTextIgnoreFilter/Caption\",\"text\":\"Tiddlers to be ignored for title and content search.\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/TitleTextIgnoreFilter/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/TitleTextIgnoreFilter/Description\",\"text\":\"Filter to specify tiddlers you don't want to be searched in the command palette, e.g. calendar tiddlers that can be searched by the calendar search feature, or tiddlers that can be managed by other specialized plugins, etc.\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/ApplyIgnoreFilterToTag/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/ApplyIgnoreFilterToTag/Caption\",\"text\":\"Apply Ignore when searching for tags.\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/ApplyIgnoreFilterToTag/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/ApplyIgnoreFilterToTag/Description\",\"text\":\"When checked, the above filters are also applied when searching for sub-tiddlers of a tag through `#` mode. When ignore is in effect, the `- ... ` prompt.\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/DebounceDuration/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/DebounceDuration/Caption\",\"text\":\"Search debounce duration\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/DebounceDuration/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/DebounceDuration/Description\",\"text\":\"Pressing a key to search once will lead to lagging, here set the search anti-shake duration, meaning two consecutive key presses within this duration will be judged as inputting, and will wait for you to finish typing before searching, in milliseconds.\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/SearchSystemTitle/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/SearchSystemTitle/Caption\",\"text\":\"Freely Search System Tiddler Title\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/SearchSystemTitle/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/SearchSystemTitle/Description\",\"text\":\"There are a large number of system titles in the wiki that make up the Tiddlywiki operating system, and searching for them can be slow. Check this option if you are one of Tiddlywiki's developers and often search for system titles. (only involves free searching of system tiddlers, so you can search layouts, system actions, etc. without checking this option)\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/CacheSystemTiddlers/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/CacheSystemTiddlers/Caption\",\"text\":\"Caching system tiddlers\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/CacheSystemTiddlers/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/CacheSystemTiddlers/Description\",\"text\":\"Assumed system tiddlers don't change during wiki usage, so they are only loaded to the front-end cache once for the initial search, and then no longer loaded with the latest data for subsequent searches. Note that this option includes all results from searches done with {{$:/plugins/linonetwo/autocomplete/commands/help/System!!command-palette-prefix}}. If you are part of the developers of Tiddlywiki and the system tiddlers change frequently, then you can uncheck this option. (only about search layout, system actions, etc., not about free search system tiddlers)\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/MissingFilterOnTop/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/MissingFilterOnTop/Caption\",\"text\":\"Missing Filter On Top\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/MissingFilterOnTop/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/MissingFilterOnTop/Description\",\"text\":\"When checked, when using `[` filter search mode, if there is no matching filter, it will be displayed on top, so that you can directly use the new filter you just entered to search. When unchecked, it will be at the bottom, so that you can search for the filter tiddlers tagged with `$:/tags/Filter`.\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/FilterSearch/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/FilterSearch/Caption\",\"text\":\"Filter Search\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/TitleText/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/TitleText/Caption\",\"text\":\"Search Title & Text\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/SystemTiddler/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Configs/SystemTiddler/Caption\",\"text\":\"Search System Tiddlers\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/SystemTitle\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/SystemTitle\",\"text\":\"Title of system tiddler\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/UserTitle\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/UserTitle\",\"text\":\"Title of user tiddler\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/UserTitlePinyin\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/UserTitlePinyin\",\"text\":\"Title Pinyin of user tiddler\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/UserText\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/UserText\",\"text\":\"Text of user tiddler\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/StoryHistory\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/StoryHistory\",\"text\":\"Story history\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/SearchHistory\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/SearchHistory\",\"text\":\"Search history\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Filter\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Filter\",\"text\":\"Pick build-in filters\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/UnderFilter\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/UnderFilter\",\"text\":\"Further search based on filters\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Tagging\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Tagging\",\"text\":\"User tiddlers with tags\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Message\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Message\",\"text\":\"Trigger system message\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Layout\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Layout\",\"text\":\"Switch layout\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Config\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Config\",\"text\":\"Open config\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Tags\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Tags\",\"text\":\"Tags\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Help\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Help\",\"text\":\"Command palette usage\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/ActionString\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/ActionString\",\"text\":\"Trigger action string\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/CurrentTiddler\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/CurrentTiddler\",\"text\":\"Current tiddler\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/CurrentLayout\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/CurrentLayout\",\"text\":\"Current layout\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/NoResult\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/NoResult\",\"text\":\"No result or no uniq result\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Help/Help/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Help/Help/Caption\",\"text\":\"Help\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Help/Help/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Help/Help/Description\",\"text\":\"Usage of the command menu, describes what the command menu will search when different prefixes are added to the search box.\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Help/Filter/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Help/Filter/Caption\",\"text\":\"Filters\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Help/Filter/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Help/Filter/Description\",\"text\":\"A two-step process, first search for a preset filter or a customized filter, enter to confirm the selection; then continue to search in the filter results, enter to open the tiddler. In the second step, only user tiddlers are searched by default, and system tiddlers can be included by adding a prefix to the system entry search.\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Help/User/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Help/User/Caption\",\"text\":\"User tiddlers\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Help/User/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Help/User/Description\",\"text\":\"Not prefixed, just typed, you can search for the title and content of your tiddlers. Enter to select (currently mouse isn't available), Ctrl + Enter will copy the selected content to the clipboard, easy to paste.\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Help/System/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Help/System/Caption\",\"text\":\"System tiddlers\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Help/System/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Help/System/Description\",\"text\":\"Searches for individual micro-system features such as available system messages, layouts, settings, etc.\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Help/Tags/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Help/Tags/Caption\",\"text\":\"Tags\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Help/Tags/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Help/Tags/Description\",\"text\":\"In two steps, first search for all tags in the Knowledge Base, enter to confirm selection; then continue searching in tiddlers with this tag added, enter to open the tiddler. In the second step, only user tiddlers are searched by default, and system tiddlers can be included by adding a prefix to the system entry search.\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Help/Enter/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Help/Enter/Caption\",\"text\":\"⏎ Enter\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Help/Enter/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Help/Enter/Description\",\"text\":\"When an option is selected using the up and down arrow keys, pressing Enter will directly open it.\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Help/CtrlEnter/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Help/CtrlEnter/Caption\",\"text\":\"⌃ ⏎ Ctrl + Enter\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Help/CtrlEnter/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Help/CtrlEnter/Description\",\"text\":\"Copies the currently selected text or content to the clipboard.\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Help/ShiftEnter/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Help/ShiftEnter/Caption\",\"text\":\"⇧ Shift + Enter\"},\"$:/plugins/linonetwo/autocomplete/language/en-GB/Help/ShiftEnter/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/en-GB/Help/ShiftEnter/Description\",\"text\":\"Opens a temporary tiddler in the story river, containing the results of the current search.\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Readme\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Readme\",\"text\":\"\\\\define lingo-base() $:/plugins/linonetwo/autocomplete/language/\\n\\n! <<lingo Name>>\\n\\n<<lingo Description>>\\n\\n!! 命令菜单\\n\\n如果你想用开箱即用的命令菜单,你还需要安装 [[$:/plugins/linonetwo/commandpalette]] 插件。\\n\\n!! 自动补全框\\n\\n本插件提供了一个自动补全框微件 `<$auto-complete-search />`,基本用法如下:\\n\\n| !参数名称 | !类型 | !描述 | !默认值 |\\n| `cycleHistoryMode` | yes/no | 确定是否使用该模式循环浏览已打开的故事条目,仅显示历史记录,无其他功能。 | `no` |\\n| `autoFocus` | yes/no | 当微件渲染时,自动将焦点设置到输入框并打开面板。 | `yes` |\\n| `panelBelowInput` | yes/no | 默认情况下,面板位于输入下方。禁用此选项可让面板位于窗口顶部的中心位置。 | `yes` |\\n| `destroyWhenNotVis` | yes/no | 当不可见时,立即销毁微件。 | `no` |\\n\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Name\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Name\",\"text\":\"自动补全框\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Description\",\"text\":\"搜索条目文本,以及执行太微中的命令。作为微件嵌入任何地方。\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/Performance/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/Performance/Caption\",\"text\":\"性能\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/TitleAlias/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/TitleAlias/Caption\",\"text\":\"视为标题的字段\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/TitleAlias/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/TitleAlias/Description\",\"text\":\"搜索标题时,您可能希望包含更多的字段加入搜索。字段之间用空格隔开,注意加入过多字段会变卡。\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/TextAlias/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/TextAlias/Caption\",\"text\":\"视为正文文本的字段\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/TextAlias/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/TextAlias/Description\",\"text\":\"搜索正文文本时,您可能希望包含更多的字段加入搜索。字段之间用空格隔开,注意加入过多字段会变卡。\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/DesktopWidth/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/DesktopWidth/Caption\",\"text\":\"桌面模式宽度\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/DesktopWidth/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/DesktopWidth/Description\",\"text\":\"输入框和结果框占屏幕的宽度(不影响移动端,移动端默认全屏)\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/TitlePriorityText/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/TitlePriorityText/Caption\",\"text\":\"标题高于内容\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/TitlePriorityText/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/TitlePriorityText/Description\",\"text\":\"勾选后,在搜索用户内容时,将标题搜索结果排在上面,内容搜索结果排在下面。(下面的内容可以通过按↑上方向键转到搜索结果的底部来选择)\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/DebounceDuration/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/DebounceDuration/Caption\",\"text\":\"搜索防抖时长\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/DebounceDuration/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/DebounceDuration/Description\",\"text\":\"按一个键就搜一次会导致卡顿,这里设置搜索防抖时长,意思是两次连续按键在这个时长内就判定为输入中,就会等你输入完再搜索,单位毫秒。\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/TitleTextIgnoreFilter/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/TitleTextIgnoreFilter/Caption\",\"text\":\"标题和内容搜索时需要忽略的条目\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/TitleTextIgnoreFilter/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/TitleTextIgnoreFilter/Description\",\"text\":\"通过筛选器指定不想在命令菜单里搜到的条目,例如可以通过日历搜索功能去搜的日记条目、可以通过别的插件专门管理的条目等。\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/ApplyIgnoreFilterToTag/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/ApplyIgnoreFilterToTag/Caption\",\"text\":\"搜标签时也应用忽略\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/ApplyIgnoreFilterToTag/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/ApplyIgnoreFilterToTag/Description\",\"text\":\"勾选时,通过 `#` 模式搜索某个标签的子条目时,也应用上述筛选器。忽略生效时,将显示 `- ...` 提示。\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/SearchSystemTitle/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/SearchSystemTitle/Caption\",\"text\":\"自由搜索系统条目标题\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/SearchSystemTitle/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/SearchSystemTitle/Description\",\"text\":\"知识库中有大量的系统条目,组成了太微操作系统,搜索它们会比较慢。如果您是太微的开发者的一员,经常搜索系统条目,那可以勾选此选项。(仅涉及自由搜索系统条目,所以不勾选此选项也可以搜索布局、系统动作等等)\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/CacheSystemTiddlers/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/CacheSystemTiddlers/Caption\",\"text\":\"缓存系统条目\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/CacheSystemTiddlers/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/CacheSystemTiddlers/Description\",\"text\":\"假设在知识库使用过程中,系统条目不会发生变化,所以只在初次搜索时加载一次到前端快取,之后再搜索时不再加载最新数据。注意此选项包括所有使用 {{$:/plugins/linonetwo/autocomplete/commands/help/System!!command-palette-prefix}} 搜索的结果。如果您是太微的开发者的一员,系统条目经常变化,那可以取消勾选此选项。(仅涉及搜索布局、系统动作等等,不涉及自由搜索系统条目)\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/MissingFilterOnTop/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/MissingFilterOnTop/Caption\",\"text\":\"缺失筛选器置顶\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/MissingFilterOnTop/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/MissingFilterOnTop/Description\",\"text\":\"勾选时,使用 `[` 筛选器搜索模式时,如果没有匹配的筛选器,则将其置顶显示,方便您直接使用刚输入的新筛选器来搜索。不勾选时则是置底,方便搜索加了 `$:/tags/Filter` 标签的筛选器条目。\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/FilterSearch/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/FilterSearch/Caption\",\"text\":\"筛选器搜索\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/TitleText/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/TitleText/Caption\",\"text\":\"标题和内容搜索\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/SystemTiddler/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Configs/SystemTiddler/Caption\",\"text\":\"系统条目搜索\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/UserTitle\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/UserTitle\",\"text\":\"用户条目标题\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/SystemTitle\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/SystemTitle\",\"text\":\"系统条目标题\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/UserTitlePinyin\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/UserTitlePinyin\",\"text\":\"用户条目标题拼音\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/UserText\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/UserText\",\"text\":\"用户条目内容文本\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/StoryHistory\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/StoryHistory\",\"text\":\"故事流浏览历史\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/SearchHistory\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/SearchHistory\",\"text\":\"搜索历史\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Filter\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Filter\",\"text\":\"选择预置筛选器\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/UnderFilter\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/UnderFilter\",\"text\":\"基于筛选器进一步搜索\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Tagging\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Tagging\",\"text\":\"带标签的用户条目\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Message\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Message\",\"text\":\"触发系统消息\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Layout\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Layout\",\"text\":\"切换布局\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Config\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Config\",\"text\":\"打开设置\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Tags\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Tags\",\"text\":\"标签\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Help\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Help\",\"text\":\"命令菜单用法\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/ActionString\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/ActionString\",\"text\":\"触发动作字符串\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/CurrentTiddler\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/CurrentTiddler\",\"text\":\"当前条目\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/CurrentLayout\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/CurrentLayout\",\"text\":\"当前布局\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/NoResult\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/NoResult\",\"text\":\"无结果或结果重复\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Help/Help/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Help/Help/Caption\",\"text\":\"帮助\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Help/Help/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Help/Help/Description\",\"text\":\"命令菜单用法,介绍在搜索框里加上不同前缀时,命令菜单将会搜索的内容。\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Help/Filter/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Help/Filter/Caption\",\"text\":\"筛选器\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Help/Filter/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Help/Filter/Description\",\"text\":\"分为两步,首先搜索预置筛选器或自定义筛选器,回车确认选中;然后在筛选结果中继续搜索,回车打开条目。第二步里,默认只搜索用户条目,可加上系统条目搜索的前缀来包括系统条目。\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Help/User/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Help/User/Caption\",\"text\":\"用户条目\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Help/User/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Help/User/Description\",\"text\":\"什么前缀也不加,直接打字,可以搜索你的条目的标题和内容。回车选中(目前无法用鼠标选中),Ctrl+回车会复制选中的内容到剪贴板,方便黏贴。\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Help/System/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Help/System/Caption\",\"text\":\"系统条目\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Help/System/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Help/System/Description\",\"text\":\"带有这个前缀时,可以搜索各太微系统功能,如可用的系统消息、布局、设置等。\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Help/Tags/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Help/Tags/Caption\",\"text\":\"标签\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Help/Tags/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Help/Tags/Description\",\"text\":\"分为两步,首先搜索知识库中所有的标签,回车确认选中;然后在加了这个标签的条目中继续搜索,回车打开条目。第二步里,默认只搜索用户条目,可加上系统条目搜索的前缀来包括系统条目。\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Help/Enter/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Help/Enter/Caption\",\"text\":\"⏎ 回车\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Help/Enter/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Help/Enter/Description\",\"text\":\"当通过上下方向键选中一个选项时,回车可以直接打开它。\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Help/CtrlEnter/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Help/CtrlEnter/Caption\",\"text\":\"⌃ ⏎ 控制键加回车\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Help/CtrlEnter/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Help/CtrlEnter/Description\",\"text\":\"将当前选中的文本或内容复制到剪贴板中。\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Help/ShiftEnter/Caption\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Help/ShiftEnter/Caption\",\"text\":\"⇧ 换档键加回车\"},\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Help/ShiftEnter/Description\":{\"title\":\"$:/plugins/linonetwo/autocomplete/language/zh-Hans/Help/ShiftEnter/Description\",\"text\":\"在故事河里打开一个临时条目,包含当前搜索的结果。\"},\"$:/plugins/linonetwo/autocomplete/readme\":{\"title\":\"$:/plugins/linonetwo/autocomplete/readme\",\"text\":\"\\\\define lingo-base() $:/plugins/linonetwo/autocomplete/language/\\n\\n<<lingo Readme>>\\n\"},\"$:/plugins/linonetwo/autocomplete/tree\":{\"title\":\"$:/plugins/linonetwo/autocomplete/tree\",\"text\":\"<<tree prefix:\\\"$:/plugins/linonetwo/autocomplete/\\\">>\"},\"$:/plugins/linonetwo/autocomplete/widget/build-in-sub-plugins/search-layout.css\":{\"title\":\"$:/plugins/linonetwo/autocomplete/widget/build-in-sub-plugins/search-layout.css\",\"text\":\"div.tw-commandpalette-layout-result{display:flex;flex-direction:row;align-items:center}\",\"type\":\"text/css\",\"tags\":\"$:/tags/Stylesheet\"},\"$:/plugins/linonetwo/autocomplete/widget/build-in-sub-plugins/search-recent.css\":{\"title\":\"$:/plugins/linonetwo/autocomplete/widget/build-in-sub-plugins/search-recent.css\",\"text\":\".tw-commandpalette-search-recent-item{position:relative;display:flex;flex-direction:row;justify-content:flex-start;align-items:center}.tw-commandpalette-search-recent-item .tw-commandpalette-search-recent-item-delete{position:absolute;right:1em;opacity:.3;padding:5px}.tw-commandpalette-search-recent-item .tw-commandpalette-search-recent-item-delete:hover{opacity:.7}.tw-commandpalette-search-recent-item .tw-commandpalette-search-recent-item-delete:active{opacity:1}.tw-commandpalette-search-recent-item .tw-commandpalette-search-recent-item-delete svg{width:20px}\",\"type\":\"text/css\",\"tags\":\"$:/tags/Stylesheet\"},\"$:/plugins/linonetwo/autocomplete/widget/templates/FilterResultBodyCascade\":{\"title\":\"$:/plugins/linonetwo/autocomplete/widget/templates/FilterResultBodyCascade\",\"tags\":\"$:/tags/ViewTemplateBodyFilter\",\"list-before\":\"$:/config/ViewTemplateBodyFilters/system\",\"text\":\"[tag[$:/tags/AutoCompleteResult]then[$:/core/ui/ViewTemplate/body/default]]\"},\"$:/plugins/linonetwo/autocomplete/widget/templates/FilterResultTemplate\":{\"title\":\"$:/plugins/linonetwo/autocomplete/widget/templates/FilterResultTemplate\",\"tags\":\"$:/tags/AutoCompleteResult\",\"throttle.refresh\":\"yes\",\"_is_titleless\":\"yes\",\"text\":\"<ol>\\n <$list filter={{!!filter}}>\\n <li>\\n <$link to=<<currentTiddler>>>\\n <$transclude field=\\\"caption\\\">\\n <$view field=\\\"title\\\"/>\\n </$transclude>\\n </$link>\\n </li>\\n </$list>\\n</ol>\\n\"},\"$:/plugins/linonetwo/autocomplete/widget/build-in-sub-plugins/command-action-string.js\":{\"title\":\"$:/plugins/linonetwo/autocomplete/widget/build-in-sub-plugins/command-action-string.js\",\"tags\":\"$:/tags/AutoCompletePlugin\",\"type\":\"application/javascript\",\"module-type\":\"library\",\"priority\":\"20\",\"Modern.TiddlyDev#Origin\":\"widgets/build-in-sub-plugins/command-action-string.ts\",\"text\":\"\\\"use strict\\\";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__export=(e,t)=>{for(var i in t)__defProp(e,i,{get:t[i],enumerable:!0})},__copyProps=(t,i,r,n)=>{if(i&&\\\"object\\\"==typeof i||\\\"function\\\"==typeof i)for(let e of __getOwnPropNames(i))__hasOwnProp.call(t,e)||e===r||__defProp(t,e,{get:()=>i[e],enumerable:!(n=__getOwnPropDesc(i,e))||n.enumerable});return t},__toCommonJS=e=>__copyProps(__defProp({},\\\"__esModule\\\",{value:!0}),e),command_action_string_exports={},systemPrefixes=(__export(command_action_string_exports,{plugin:()=>plugin}),module.exports=__toCommonJS(command_action_string_exports),$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/System\\\")?.fields?.[\\\"command-palette-prefix\\\"]?.split(\\\" \\\")?.filter(Boolean)),filterPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Filter\\\")?.fields?.[\\\"command-palette-prefix\\\"],tagsPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Tags\\\")?.fields?.[\\\"command-palette-prefix\\\"],helpPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Help\\\")?.fields?.[\\\"command-palette-prefix\\\"];function checkIsSearchSystem(e){return Boolean(systemPrefixes?.includes(e.query[0]))}function checkIsUnderFilter(e){return Boolean(e.state.context.filter)}var cacheSystemTiddlers=()=>\\\"yes\\\"===$tw.wiki.getTiddlerText(\\\"$:/plugins/linonetwo/autocomplete/configs/CacheSystemTiddlers\\\");function debouncePromise(i,r){let n;return async function(...t){return n&&clearTimeout(n),new Promise(e=>{n=setTimeout(()=>{e(i(...t))},r)})}}var debounceDuration=Number($tw.wiki.getTiddlerText(\\\"$:/plugins/linonetwo/autocomplete/configs/DebounceDuration\\\",\\\"300\\\")),debounced=debouncePromise(async e=>Promise.resolve(e),debounceDuration),isInTidGiDesktop=\\\"undefined\\\"!=typeof document&&document?.location?.protocol?.startsWith(\\\"tidgi\\\"),tidGiWorkspaceID=window.meta?.()?.workspaceID;async function filterTiddlersAsync(e,t){var{system:i=!1,exclude:r,toTiddler:n=!0}=t;return isInTidGiDesktop&&\\\"service\\\"in window?(await window.service.wiki.callWikiIpcServerRoute(tidGiWorkspaceID,\\\"getTiddlersJSON\\\",e,r,{ignoreSyncSystemConfig:!i,toTiddler:n})).data:n?$tw.wiki.filterTiddlers(e).map(e=>$tw.wiki.getTiddler(e)?.fields).filter(Boolean):$tw.wiki.filterTiddlers(e).filter(Boolean).map(e=>({title:e}))}var lingoBase=\\\"$:/plugins/linonetwo/autocomplete/language/\\\";function lingo(e){const t=$tw.wiki.filterTiddlers(\\\"[[$:/language]get[text]get[name]else[en-GB]]\\\")[0];return $tw.wiki.getGlobalCache(`lingo-${t}-`+e,()=>$tw.wiki.getTiddlerText(\\\"\\\"+lingoBase+t+\\\"/\\\"+e,e))}function renderTextWithCache(e,t,i){return void 0===e||\\\"string\\\"!=typeof e?\\\"\\\":$tw.wiki.getGlobalCache(\\\"wikify-\\\"+e,()=>$tw.wiki.renderText(\\\"text/plain\\\",\\\"text/vnd.tiddlywiki\\\",`\\\\\\\\import [[$:/core/macros/lingo]]\\n\\n`+e,{parentWidget:t,variables:i}))}var cachedTiddlers=[],plugin={async getSources(t){if(0===t.query.length)return[];if(!checkIsSearchSystem(t)||checkIsUnderFilter(t))return[];const i=$tw.wiki.getTiddlerText(\\\"$:/temp/focussedTiddler\\\"),r={currentTiddler:i??\\\"\\\",commandpaletteinput:t.query.slice(1)},n=t.state.context[\\\"widget\\\"],o=e=>{t.setContext({noNavigate:!0}),n?.invokeActionString(e.text,n,null,r)};return debounced([{sourceId:\\\"actionString\\\",async getItems({query:t}){return\\\"\\\"===t?[]:(cachedTiddlers=0!==cachedTiddlers.length&&cacheSystemTiddlers()?cachedTiddlers:await filterTiddlersAsync(\\\"[all[tiddlers+shadows]tag[$:/tags/Actions]]\\\",{system:!0,exclude:[]})).filter(e=>0<$tw.wiki.filterTiddlers(`[search[${t.slice(1)}]]`,void 0,$tw.wiki.makeTiddlerIterator([e.title.replace(\\\"$:/plugins/\\\",\\\"\\\").replace(\\\"linonetwo/commandpalette/\\\",\\\"\\\"),renderTextWithCache(e.caption,n),renderTextWithCache(e.description,n)])).length)},getItemUrl({item:e}){return e.title},onSelect({item:e}){o(e)},templates:{header(){let e=i?$tw.wiki.getTiddler(i)?.fields?.caption:\\\"\\\";return e=e&&`(${renderTextWithCache(e,n,r)})`,`${lingo(\\\"ActionString\\\")} - ${lingo(\\\"CurrentTiddler\\\")}: ${i} `+e},item({item:e,createElement:t}){var i=e.description?` (${renderTextWithCache(e.description,n,r)})`:\\\"\\\";return t(\\\"div\\\",{onclick:()=>{o(e)}},renderTextWithCache(e.caption,n,r)+i||e.title)}}}])}};\"},\"$:/plugins/linonetwo/autocomplete/widget/build-in-sub-plugins/command-message.js\":{\"title\":\"$:/plugins/linonetwo/autocomplete/widget/build-in-sub-plugins/command-message.js\",\"tags\":\"$:/tags/AutoCompletePlugin\",\"type\":\"application/javascript\",\"module-type\":\"library\",\"priority\":\"20\",\"Modern.TiddlyDev#Origin\":\"widgets/build-in-sub-plugins/command-message.ts\",\"text\":\"\\\"use strict\\\";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__export=(e,t)=>{for(var i in t)__defProp(e,i,{get:t[i],enumerable:!0})},__copyProps=(t,i,r,o)=>{if(i&&\\\"object\\\"==typeof i||\\\"function\\\"==typeof i)for(let e of __getOwnPropNames(i))__hasOwnProp.call(t,e)||e===r||__defProp(t,e,{get:()=>i[e],enumerable:!(o=__getOwnPropDesc(i,e))||o.enumerable});return t},__toCommonJS=e=>__copyProps(__defProp({},\\\"__esModule\\\",{value:!0}),e),command_message_exports={},systemPrefixes=(__export(command_message_exports,{plugin:()=>plugin}),module.exports=__toCommonJS(command_message_exports),$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/System\\\")?.fields?.[\\\"command-palette-prefix\\\"]?.split(\\\" \\\")?.filter(Boolean)),filterPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Filter\\\")?.fields?.[\\\"command-palette-prefix\\\"],tagsPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Tags\\\")?.fields?.[\\\"command-palette-prefix\\\"],helpPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Help\\\")?.fields?.[\\\"command-palette-prefix\\\"];function checkIsSearchSystem(e){return Boolean(systemPrefixes?.includes(e.query[0]))}function checkIsUnderFilter(e){return Boolean(e.state.context.filter)}var cacheSystemTiddlers=()=>\\\"yes\\\"===$tw.wiki.getTiddlerText(\\\"$:/plugins/linonetwo/autocomplete/configs/CacheSystemTiddlers\\\");function debouncePromise(i,r){let o;return async function(...t){return o&&clearTimeout(o),new Promise(e=>{o=setTimeout(()=>{e(i(...t))},r)})}}var debounceDuration=Number($tw.wiki.getTiddlerText(\\\"$:/plugins/linonetwo/autocomplete/configs/DebounceDuration\\\",\\\"300\\\")),debounced=debouncePromise(async e=>Promise.resolve(e),debounceDuration),isInTidGiDesktop=\\\"undefined\\\"!=typeof document&&document?.location?.protocol?.startsWith(\\\"tidgi\\\"),tidGiWorkspaceID=window.meta?.()?.workspaceID;async function filterTiddlersAsync(e,t){var{system:i=!1,exclude:r,toTiddler:o=!0}=t;return isInTidGiDesktop&&\\\"service\\\"in window?(await window.service.wiki.callWikiIpcServerRoute(tidGiWorkspaceID,\\\"getTiddlersJSON\\\",e,r,{ignoreSyncSystemConfig:!i,toTiddler:o})).data:o?$tw.wiki.filterTiddlers(e).map(e=>$tw.wiki.getTiddler(e)?.fields).filter(Boolean):$tw.wiki.filterTiddlers(e).filter(Boolean).map(e=>({title:e}))}var lingoBase=\\\"$:/plugins/linonetwo/autocomplete/language/\\\";function lingo(e){const t=$tw.wiki.filterTiddlers(\\\"[[$:/language]get[text]get[name]else[en-GB]]\\\")[0];return $tw.wiki.getGlobalCache(`lingo-${t}-`+e,()=>$tw.wiki.getTiddlerText(\\\"\\\"+lingoBase+t+\\\"/\\\"+e,e))}function renderTextWithCache(e,t,i){return void 0===e||\\\"string\\\"!=typeof e?\\\"\\\":$tw.wiki.getGlobalCache(\\\"wikify-\\\"+e,()=>$tw.wiki.renderText(\\\"text/plain\\\",\\\"text/vnd.tiddlywiki\\\",`\\\\\\\\import [[$:/core/macros/lingo]]\\n\\n`+e,{parentWidget:t,variables:i}))}var cachedTiddlers=[],plugin={async getSources(t){if(0===t.query.length)return[];if(!checkIsSearchSystem(t)||checkIsUnderFilter(t))return[];const i=$tw.wiki.getTiddlerText(\\\"$:/temp/focussedTiddler\\\"),r={currentTiddler:i??\\\"\\\"},o=t.state.context[\\\"widget\\\"],n=e=>{t.setContext({noNavigate:!0}),o?.dispatchEvent?.({type:e.text.trim(),tiddlerTitle:i})};return debounced([{sourceId:\\\"message\\\",async getItems({query:t}){return\\\"\\\"===t?[]:(cachedTiddlers=0!==cachedTiddlers.length&&cacheSystemTiddlers()?cachedTiddlers:await filterTiddlersAsync(\\\"[all[tiddlers+shadows]tag[$:/tags/Messages]]\\\",{system:!0})).filter(e=>{var t=e[\\\"command-palette-filter\\\"];return!t||!i||0<$tw.wiki.filterTiddlers(t,void 0,$tw.wiki.makeTiddlerIterator([i])).length}).filter(e=>0<$tw.wiki.filterTiddlers(`[search[${t.slice(1)}]]`,void 0,$tw.wiki.makeTiddlerIterator([e.title.replace(\\\"$:/plugins/linonetwo/autocomplete/\\\",\\\"\\\"),renderTextWithCache(e.caption,o),renderTextWithCache(e.description,o)])).length)},getItemUrl({item:e}){return e.title},onSelect({item:e}){n(e)},templates:{header(){let e=i?$tw.wiki.getTiddler(i)?.fields?.caption:\\\"\\\";return e=e&&`(${renderTextWithCache(e,o,r)})`,`${lingo(\\\"Message\\\")} - ${lingo(\\\"CurrentTiddler\\\")}: ${i} `+e},item({item:e,createElement:t}){var i=e.description?` (${renderTextWithCache(e.description,o,r)})`:\\\"\\\";return t(\\\"div\\\",{onclick:()=>{n(e)}},renderTextWithCache(e.caption,o,r)+i||e.title)}}}])}};\"},\"$:/plugins/linonetwo/autocomplete/widget/build-in-sub-plugins/search-config.js\":{\"title\":\"$:/plugins/linonetwo/autocomplete/widget/build-in-sub-plugins/search-config.js\",\"tags\":\"$:/tags/AutoCompletePlugin\",\"type\":\"application/javascript\",\"module-type\":\"library\",\"priority\":\"15\",\"Modern.TiddlyDev#Origin\":\"widgets/build-in-sub-plugins/search-config.ts\",\"text\":\"\\\"use strict\\\";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__export=(e,t)=>{for(var i in t)__defProp(e,i,{get:t[i],enumerable:!0})},__copyProps=(t,i,r,o)=>{if(i&&\\\"object\\\"==typeof i||\\\"function\\\"==typeof i)for(let e of __getOwnPropNames(i))__hasOwnProp.call(t,e)||e===r||__defProp(t,e,{get:()=>i[e],enumerable:!(o=__getOwnPropDesc(i,e))||o.enumerable});return t},__toCommonJS=e=>__copyProps(__defProp({},\\\"__esModule\\\",{value:!0}),e),search_config_exports={},systemPrefixes=(__export(search_config_exports,{plugin:()=>plugin}),module.exports=__toCommonJS(search_config_exports),$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/System\\\")?.fields?.[\\\"command-palette-prefix\\\"]?.split(\\\" \\\")?.filter(Boolean)),filterPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Filter\\\")?.fields?.[\\\"command-palette-prefix\\\"],tagsPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Tags\\\")?.fields?.[\\\"command-palette-prefix\\\"],helpPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Help\\\")?.fields?.[\\\"command-palette-prefix\\\"];function checkIsSearchSystem(e){return Boolean(systemPrefixes?.includes(e.query[0]))}function checkIsUnderFilter(e){return Boolean(e.state.context.filter)}var cacheSystemTiddlers=()=>\\\"yes\\\"===$tw.wiki.getTiddlerText(\\\"$:/plugins/linonetwo/autocomplete/configs/CacheSystemTiddlers\\\");function debouncePromise(i,r){let o;return async function(...t){return o&&clearTimeout(o),new Promise(e=>{o=setTimeout(()=>{e(i(...t))},r)})}}var debounceDuration=Number($tw.wiki.getTiddlerText(\\\"$:/plugins/linonetwo/autocomplete/configs/DebounceDuration\\\",\\\"300\\\")),debounced=debouncePromise(async e=>Promise.resolve(e),debounceDuration),isInTidGiDesktop=\\\"undefined\\\"!=typeof document&&document?.location?.protocol?.startsWith(\\\"tidgi\\\"),tidGiWorkspaceID=window.meta?.()?.workspaceID;async function filterTiddlersAsync(e,t){var{system:i=!1,exclude:r,toTiddler:o=!0}=t;return isInTidGiDesktop&&\\\"service\\\"in window?(await window.service.wiki.callWikiIpcServerRoute(tidGiWorkspaceID,\\\"getTiddlersJSON\\\",e,r,{ignoreSyncSystemConfig:!i,toTiddler:o})).data:o?$tw.wiki.filterTiddlers(e).map(e=>$tw.wiki.getTiddler(e)?.fields).filter(Boolean):$tw.wiki.filterTiddlers(e).filter(Boolean).map(e=>({title:e}))}var lingoBase=\\\"$:/plugins/linonetwo/autocomplete/language/\\\";function lingo(e){const t=$tw.wiki.filterTiddlers(\\\"[[$:/language]get[text]get[name]else[en-GB]]\\\")[0];return $tw.wiki.getGlobalCache(`lingo-${t}-`+e,()=>$tw.wiki.getTiddlerText(\\\"\\\"+lingoBase+t+\\\"/\\\"+e,e))}function renderTextWithCache(e,t,i){return void 0===e||\\\"string\\\"!=typeof e?\\\"\\\":$tw.wiki.getGlobalCache(\\\"wikify-\\\"+e,()=>$tw.wiki.renderText(\\\"text/plain\\\",\\\"text/vnd.tiddlywiki\\\",`\\\\\\\\import [[$:/core/macros/lingo]]\\n\\n`+e,{parentWidget:t,variables:i}))}var cachedTiddlers=[],plugin={async getSources(o){if(0===o.query.length)return[];if(!checkIsSearchSystem(o)||checkIsUnderFilter(o))return[];const n=o.state.context[\\\"widget\\\"];return debounced([{sourceId:\\\"config\\\",async getItems({query:t}){return(cachedTiddlers=0!==cachedTiddlers.length&&cacheSystemTiddlers()?cachedTiddlers:await filterTiddlersAsync(\\\"[all[shadows]tag[$:/tags/ControlPanel/SettingsTab]]\\\",{system:!0})).filter(e=>0<$tw.wiki.filterTiddlers(`[search[${t.slice(1)}]]`,void 0,$tw.wiki.makeTiddlerIterator([renderTextWithCache(e.caption,n),e.text,e.title.replace(\\\"$:/plugins/\\\",\\\"\\\")])).length)},getItemUrl({item:e}){return e.title},templates:{header(){return lingo(\\\"Config\\\")},item({item:e,createElement:t,state:i}){var r=()=>{o.navigator.navigate({item:e,itemUrl:e.title,state:i})};return\\\"string\\\"==typeof e.caption&&\\\"\\\"!==e.caption?t(\\\"div\\\",{onclick:r},renderTextWithCache(e.caption,n)):t(\\\"div\\\",{onclick:r},e.title)}}}])}};\"},\"$:/plugins/linonetwo/autocomplete/widget/build-in-sub-plugins/search-filter.js\":{\"title\":\"$:/plugins/linonetwo/autocomplete/widget/build-in-sub-plugins/search-filter.js\",\"tags\":\"$:/tags/AutoCompletePlugin\",\"type\":\"application/javascript\",\"module-type\":\"library\",\"priority\":\"0\",\"Modern.TiddlyDev#Origin\":\"widgets/build-in-sub-plugins/search-filter.ts\",\"text\":\"\\\"use strict\\\";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__export=(e,t)=>{for(var i in t)__defProp(e,i,{get:t[i],enumerable:!0})},__copyProps=(t,i,r,o)=>{if(i&&\\\"object\\\"==typeof i||\\\"function\\\"==typeof i)for(let e of __getOwnPropNames(i))__hasOwnProp.call(t,e)||e===r||__defProp(t,e,{get:()=>i[e],enumerable:!(o=__getOwnPropDesc(i,e))||o.enumerable});return t},__toCommonJS=e=>__copyProps(__defProp({},\\\"__esModule\\\",{value:!0}),e),search_filter_exports={},systemPrefixes=(__export(search_filter_exports,{plugin:()=>plugin}),module.exports=__toCommonJS(search_filter_exports),$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/System\\\")?.fields?.[\\\"command-palette-prefix\\\"]?.split(\\\" \\\")?.filter(Boolean)),filterPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Filter\\\")?.fields?.[\\\"command-palette-prefix\\\"],tagsPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Tags\\\")?.fields?.[\\\"command-palette-prefix\\\"],helpPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Help\\\")?.fields?.[\\\"command-palette-prefix\\\"];function checkIsSearchSystem(e){return Boolean(systemPrefixes?.includes(e.query[0]))}function checkIsFilter(e){return e.query[0]===filterPrefix}function checkIsUnderFilter(e){return Boolean(e.state.context.filter)}var cacheSystemTiddlers=()=>\\\"yes\\\"===$tw.wiki.getTiddlerText(\\\"$:/plugins/linonetwo/autocomplete/configs/CacheSystemTiddlers\\\"),titleTextExclusionFilter=()=>$tw.wiki.getTiddlerText(\\\"$:/plugins/linonetwo/autocomplete/configs/TitleTextIgnoreFilter\\\",\\\"\\\"),missingFilterOnTop=()=>$tw.wiki.getTiddlerText(\\\"$:/plugins/linonetwo/autocomplete/configs/MissingFilterOnTop\\\",\\\"\\\"),emptyContext={noNavigate:void 0,newQuery:void 0,noClose:void 0};function debouncePromise(i,r){let o;return async function(...t){return o&&clearTimeout(o),new Promise(e=>{o=setTimeout(()=>{e(i(...t))},r)})}}var debounceDuration=Number($tw.wiki.getTiddlerText(\\\"$:/plugins/linonetwo/autocomplete/configs/DebounceDuration\\\",\\\"300\\\")),debounced=debouncePromise(async e=>Promise.resolve(e),debounceDuration),isInTidGiDesktop=\\\"undefined\\\"!=typeof document&&document?.location?.protocol?.startsWith(\\\"tidgi\\\"),tidGiWorkspaceID=window.meta?.()?.workspaceID;async function filterTiddlersAsync(e,t){var{system:i=!1,exclude:r,toTiddler:o=!0}=t;return isInTidGiDesktop&&\\\"service\\\"in window?(await window.service.wiki.callWikiIpcServerRoute(tidGiWorkspaceID,\\\"getTiddlersJSON\\\",e,r,{ignoreSyncSystemConfig:!i,toTiddler:o})).data:o?$tw.wiki.filterTiddlers(e).map(e=>$tw.wiki.getTiddler(e)?.fields).filter(Boolean):$tw.wiki.filterTiddlers(e).filter(Boolean).map(e=>({title:e}))}var lingoBase=\\\"$:/plugins/linonetwo/autocomplete/language/\\\";function lingo(e){const t=$tw.wiki.filterTiddlers(\\\"[[$:/language]get[text]get[name]else[en-GB]]\\\")[0];return $tw.wiki.getGlobalCache(`lingo-${t}-`+e,()=>$tw.wiki.getTiddlerText(\\\"\\\"+lingoBase+t+\\\"/\\\"+e,e))}function renderTextWithCache(e,t,i){return void 0===e||\\\"string\\\"!=typeof e?\\\"\\\":$tw.wiki.getGlobalCache(\\\"wikify-\\\"+e,()=>$tw.wiki.renderText(\\\"text/plain\\\",\\\"text/vnd.tiddlywiki\\\",`\\\\\\\\import [[$:/core/macros/lingo]]\\n\\n`+e,{parentWidget:t,variables:i}))}var cachedTiddlers=[],plugin={async getSources(o){var e=[];if(checkIsFilter(o)){const r=o.state.context[\\\"widget\\\"],l=e=>{var t=\\\"no\\\"!==e[\\\"command-palette-get-tiddler\\\"];o.setContext({noNavigate:!0,noClose:!0,filter:e.filter.trim(),newQuery:\\\"\\\",filterGetTiddler:t})};e.push({sourceId:\\\"build-in-filter\\\",async getItems({query:t}){var e,i;return\\\"\\\"===t?[]:(e=(cachedTiddlers=0!==cachedTiddlers.length&&cacheSystemTiddlers()?cachedTiddlers:await filterTiddlersAsync(\\\"[all[tiddlers+shadows]tag[$:/tags/Filter]]\\\",{system:!0})).filter(e=>void 0!==e&&!(!e.filter||\\\"string\\\"!=typeof e.filter)).filter(e=>0<$tw.wiki.filterTiddlers(`[search[${t.slice(1)}]]`,void 0,$tw.wiki.makeTiddlerIterator([e.title.replace(\\\"$:/plugins/\\\",\\\"\\\").replace(\\\"linonetwo/commandpalette/\\\",\\\"\\\"),renderTextWithCache(e.caption,r),renderTextWithCache(e.description,r),e.filter.trim().replaceAll(\\\"[\\\",\\\"\\\").replaceAll(\\\"]\\\",\\\"\\\")])).length),i={filter:t,title:\\\"\\\",type:\\\"\\\",text:\\\"\\\"},1<t.length?missingFilterOnTop()?[i,...e]:[...e,i]:e)},getItemUrl({item:e}){return e.title},onSelect({item:e}){l(e)},templates:{header(){return lingo(\\\"Filter\\\")},item({item:e,createElement:t}){var i=renderTextWithCache(e.caption,r);return t(\\\"div\\\",{style:\\\"display:flex;flex-direction:column;\\\",onclick:()=>{l(e),o.setQuery(\\\"\\\"),o.refresh()[\\\"catch\\\"](e=>{console.error(\\\"Error in search-filter step1 refresh\\\",e)})}},[t(\\\"div\\\",{style:\\\"margin-bottom:0.25em;\\\"},i+(e.description?(i?\\\" - \\\":\\\"\\\")+renderTextWithCache(e.description,r):\\\"\\\")),t(\\\"div\\\",{},[t(\\\"small\\\",{},e.filter.trim())])])}}})}return checkIsUnderFilter(o)&&e.push({sourceId:\\\"filter\\\",async getItems({query:e,state:t}){var i=checkIsSearchSystem(o);return filterTiddlersAsync(`[all[tiddlers+shadows]]+${t.context.filter} ${t.context.applyExclusion?titleTextExclusionFilter():\\\"\\\"} +[search[${i?e.slice(1):e}]]`,{system:i,toTiddler:t.context.filterGetTiddler??!0})},getItemUrl({item:e}){return e.title},templates:{header(){return`${lingo(\\\"UnderFilter\\\")} - ${o.state.context.filter} `+(o.state.context.applyExclusion?\\\"- ...\\\":\\\"\\\")},item({item:e,createElement:t,state:i}){var r=()=>{o.navigator.navigate({item:e,itemUrl:e.title,state:{...i,context:{...i.context,...emptyContext}}})};return\\\"string\\\"==typeof e.caption&&\\\"\\\"!==e.caption?t(\\\"div\\\",{onclick:r},`${e.caption} (${e.title})`):t(\\\"div\\\",{onclick:r},e.title)},noResults(){return lingo(\\\"NoResult\\\")}}}),debounced(e)}};\"},\"$:/plugins/linonetwo/autocomplete/widget/build-in-sub-plugins/search-help.js\":{\"title\":\"$:/plugins/linonetwo/autocomplete/widget/build-in-sub-plugins/search-help.js\",\"tags\":\"$:/tags/AutoCompletePlugin\",\"type\":\"application/javascript\",\"module-type\":\"library\",\"priority\":\"-1\",\"Modern.TiddlyDev#Origin\":\"widgets/build-in-sub-plugins/search-help.ts\",\"text\":\"\\\"use strict\\\";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__export=(e,t)=>{for(var r in t)__defProp(e,r,{get:t[r],enumerable:!0})},__copyProps=(t,r,i,o)=>{if(r&&\\\"object\\\"==typeof r||\\\"function\\\"==typeof r)for(let e of __getOwnPropNames(r))__hasOwnProp.call(t,e)||e===i||__defProp(t,e,{get:()=>r[e],enumerable:!(o=__getOwnPropDesc(r,e))||o.enumerable});return t},__toCommonJS=e=>__copyProps(__defProp({},\\\"__esModule\\\",{value:!0}),e),search_help_exports={},systemPrefixes=(__export(search_help_exports,{plugin:()=>plugin}),module.exports=__toCommonJS(search_help_exports),$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/System\\\")?.fields?.[\\\"command-palette-prefix\\\"]?.split(\\\" \\\")?.filter(Boolean)),filterPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Filter\\\")?.fields?.[\\\"command-palette-prefix\\\"],tagsPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Tags\\\")?.fields?.[\\\"command-palette-prefix\\\"],helpPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Help\\\")?.fields?.[\\\"command-palette-prefix\\\"];function checkIsHelp(e){return e.query[0]===helpPrefix||\\\"\\\"===e.query}function checkIsUnderFilter(e){return Boolean(e.state.context.filter)}var cacheSystemTiddlers=()=>\\\"yes\\\"===$tw.wiki.getTiddlerText(\\\"$:/plugins/linonetwo/autocomplete/configs/CacheSystemTiddlers\\\"),lingoBase=\\\"$:/plugins/linonetwo/autocomplete/language/\\\";function lingo(e){const t=$tw.wiki.filterTiddlers(\\\"[[$:/language]get[text]get[name]else[en-GB]]\\\")[0];return $tw.wiki.getGlobalCache(`lingo-${t}-`+e,()=>$tw.wiki.getTiddlerText(\\\"\\\"+lingoBase+t+\\\"/\\\"+e,e))}function renderTextWithCache(e,t,r){return void 0===e||\\\"string\\\"!=typeof e?\\\"\\\":$tw.wiki.getGlobalCache(\\\"wikify-\\\"+e,()=>$tw.wiki.renderText(\\\"text/plain\\\",\\\"text/vnd.tiddlywiki\\\",`\\\\\\\\import [[$:/core/macros/lingo]]\\n\\n`+e,{parentWidget:t,variables:r}))}var cachedTiddlers=[],plugin={getSources(i){const o=i.state.context[\\\"widget\\\"];return!checkIsHelp(i)||checkIsUnderFilter(i)?[]:[{sourceId:\\\"help\\\",getItems({query:t}){return(cachedTiddlers=0!==cachedTiddlers.length&&cacheSystemTiddlers()?cachedTiddlers:$tw.wiki.filterTiddlers(\\\"[all[shadows]tag[$:/tags/AutoCompleteHelp]]\\\")).map(e=>$tw.wiki.getTiddler(e)?.fields).filter(Boolean).filter(e=>0<$tw.wiki.filterTiddlers(`[search[${t.slice(1)}]]`,void 0,$tw.wiki.makeTiddlerIterator([e.title.replace(\\\"$:/plugins/linonetwo/autocomplete/commands/help/\\\",\\\"\\\"),renderTextWithCache(e.caption,o),renderTextWithCache(e.description,o)])).length)},getItemUrl({item:e}){return e.title},onSelect({item:e}){var t=e[\\\"command-palette-prefix\\\"].charAt(0);i.setContext({noNavigate:!0,noClose:!0,newQuery:t})},templates:{header(){return lingo(\\\"Help\\\")},item({item:t,createElement:e}){var r=t.description?\\\" \\\"+renderTextWithCache(t.description,o):\\\"\\\";return e(\\\"div\\\",{style:\\\"display:flex;flex-direction:column;\\\",onclick:()=>{var e=t[\\\"command-palette-prefix\\\"].charAt(0);i.setQuery(e),i.refresh()[\\\"catch\\\"](e=>{console.error(\\\"Error in search-help refresh\\\",e)})}},[e(\\\"div\\\",{style:\\\"margin-bottom:0.25em;\\\"},[e(\\\"em\\\",{style:\\\"margin-right:0.25em;\\\"},[t[\\\"command-palette-prefix\\\"]]),renderTextWithCache(t.caption,o)]),e(\\\"div\\\",{style:\\\"margin-bottom:0.3em;\\\"},r)])}}}]}};\"},\"$:/plugins/linonetwo/autocomplete/widget/build-in-sub-plugins/search-layout.js\":{\"title\":\"$:/plugins/linonetwo/autocomplete/widget/build-in-sub-plugins/search-layout.js\",\"tags\":\"$:/tags/AutoCompletePlugin\",\"type\":\"application/javascript\",\"module-type\":\"library\",\"priority\":\"25\",\"Modern.TiddlyDev#Origin\":\"widgets/build-in-sub-plugins/search-layout.ts\",\"text\":\"\\\"use strict\\\";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__export=(e,t)=>{for(var i in t)__defProp(e,i,{get:t[i],enumerable:!0})},__copyProps=(t,i,r,o)=>{if(i&&\\\"object\\\"==typeof i||\\\"function\\\"==typeof i)for(let e of __getOwnPropNames(i))__hasOwnProp.call(t,e)||e===r||__defProp(t,e,{get:()=>i[e],enumerable:!(o=__getOwnPropDesc(i,e))||o.enumerable});return t},__toCommonJS=e=>__copyProps(__defProp({},\\\"__esModule\\\",{value:!0}),e),search_layout_exports={},systemPrefixes=(__export(search_layout_exports,{plugin:()=>plugin}),module.exports=__toCommonJS(search_layout_exports),$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/System\\\")?.fields?.[\\\"command-palette-prefix\\\"]?.split(\\\" \\\")?.filter(Boolean)),filterPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Filter\\\")?.fields?.[\\\"command-palette-prefix\\\"],tagsPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Tags\\\")?.fields?.[\\\"command-palette-prefix\\\"],helpPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Help\\\")?.fields?.[\\\"command-palette-prefix\\\"];function checkIsSearchSystem(e){return Boolean(systemPrefixes?.includes(e.query[0]))}function checkIsUnderFilter(e){return Boolean(e.state.context.filter)}var cacheSystemTiddlers=()=>\\\"yes\\\"===$tw.wiki.getTiddlerText(\\\"$:/plugins/linonetwo/autocomplete/configs/CacheSystemTiddlers\\\"),isInTidGiDesktop=\\\"undefined\\\"!=typeof document&&document?.location?.protocol?.startsWith(\\\"tidgi\\\"),tidGiWorkspaceID=window.meta?.()?.workspaceID;async function filterTiddlersAsync(e,t){var{system:i=!1,exclude:r,toTiddler:o=!0}=t;return isInTidGiDesktop&&\\\"service\\\"in window?(await window.service.wiki.callWikiIpcServerRoute(tidGiWorkspaceID,\\\"getTiddlersJSON\\\",e,r,{ignoreSyncSystemConfig:!i,toTiddler:o})).data:o?$tw.wiki.filterTiddlers(e).map(e=>$tw.wiki.getTiddler(e)?.fields).filter(Boolean):$tw.wiki.filterTiddlers(e).filter(Boolean).map(e=>({title:e}))}function renderTextWithCache(e,t,i){return void 0===e||\\\"string\\\"!=typeof e?\\\"\\\":$tw.wiki.getGlobalCache(\\\"wikify-\\\"+e,()=>$tw.wiki.renderText(\\\"text/plain\\\",\\\"text/vnd.tiddlywiki\\\",`\\\\\\\\import [[$:/core/macros/lingo]]\\n\\n`+e,{parentWidget:t,variables:i}))}function renderHTMLWithCache(e,t,i){return void 0===e||\\\"string\\\"!=typeof e?\\\"\\\":$tw.wiki.getGlobalCache(\\\"wikify-html-\\\"+e,()=>$tw.wiki.renderText(\\\"text/html\\\",\\\"text/vnd.tiddlywiki\\\",`\\\\\\\\import [[$:/core/macros/lingo]]\\n\\n`+e,{parentWidget:t,variables:i}))}function getIconSvg(e,t){return renderHTMLWithCache($tw.wiki.getTiddlerText(e),t).replace(\\\"<p>\\\",\\\"\\\").replace(\\\"</p>\\\",\\\"\\\")}var lingoBase=\\\"$:/plugins/linonetwo/autocomplete/language/\\\";function lingo(e){const t=$tw.wiki.filterTiddlers(\\\"[[$:/language]get[text]get[name]else[en-GB]]\\\")[0];return $tw.wiki.getGlobalCache(`lingo-${t}-`+e,()=>$tw.wiki.getTiddlerText(\\\"\\\"+lingoBase+t+\\\"/\\\"+e,e))}var cachedTiddlers=[],plugin={getSources(t){if(0===t.query.length)return[];if(!checkIsSearchSystem(t)||checkIsUnderFilter(t))return[];const o=t.state.context[\\\"widget\\\"],n=e=>{t.setContext({noNavigate:!0}),$tw.wiki.setText(\\\"$:/layout\\\",\\\"text\\\",void 0,e.title,{suppressTimestamp:!0})};return[{sourceId:\\\"layout\\\",async getItems({query:t}){return(cachedTiddlers=0!==cachedTiddlers.length&&cacheSystemTiddlers()?cachedTiddlers:await filterTiddlersAsync(\\\"[all[tiddlers+shadows]tag[$:/tags/Layout]] [[$:/core/ui/PageTemplate]] +[!is[draft]sort[name]]\\\",{system:!0})).filter(e=>0<$tw.wiki.filterTiddlers(`[search[${t.slice(1)}]]`,void 0,$tw.wiki.makeTiddlerIterator([renderTextWithCache(e.name,o),renderTextWithCache(e.description,o),e.title.replace(\\\"$:/plugins/\\\",\\\"\\\")])).length)},getItemUrl({item:e}){return e.title},onSelect({item:e}){n(e)},templates:{header(){var e=$tw.wiki.getTiddlerText(\\\"$:/layout\\\",\\\"\\\"),e=$tw.wiki.getTiddler(e)?.fields?.name,e=e?renderTextWithCache(e,o):$tw.wiki.getTiddlerText(\\\"$:/language/PageTemplate/Name\\\");return`${lingo(\\\"Layout\\\")} - ${lingo(\\\"CurrentLayout\\\")}: `+e},item({item:e,createElement:t}){var i,r;return\\\"string\\\"==typeof e.name&&\\\"\\\"!==e.name?(i=renderTextWithCache(e.name,o),r=renderTextWithCache(e.description,o),t(\\\"div\\\",{\\\"class\\\":\\\"tw-commandpalette-layout-result\\\",onclick:()=>{n(e)},innerHTML:\\\"\\\"+getIconSvg(e.icon,o)+i+(r?\\\" - \\\"+r:\\\"\\\")})):t(\\\"div\\\",{onclick:()=>{n(e)}},e.title)}}}]}};\"},\"$:/plugins/linonetwo/autocomplete/widget/build-in-sub-plugins/search-recent.js\":{\"title\":\"$:/plugins/linonetwo/autocomplete/widget/build-in-sub-plugins/search-recent.js\",\"tags\":\"$:/tags/AutoCompletePlugin\",\"type\":\"application/javascript\",\"module-type\":\"library\",\"priority\":\"1\",\"Modern.TiddlyDev#Origin\":\"widgets/build-in-sub-plugins/search-recent.ts\",\"text\":\"\\\"use strict\\\";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__export=(e,t)=>{for(var r in t)__defProp(e,r,{get:t[r],enumerable:!0})},__copyProps=(t,r,n,o)=>{if(r&&\\\"object\\\"==typeof r||\\\"function\\\"==typeof r)for(let e of __getOwnPropNames(r))__hasOwnProp.call(t,e)||e===n||__defProp(t,e,{get:()=>r[e],enumerable:!(o=__getOwnPropDesc(r,e))||o.enumerable});return t},__toCommonJS=e=>__copyProps(__defProp({},\\\"__esModule\\\",{value:!0}),e),search_recent_exports={};function _typeof(e){return(_typeof=\\\"function\\\"==typeof Symbol&&\\\"symbol\\\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\\\"function\\\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\\\"symbol\\\":typeof e})(e)}function ownKeys(t,e){var r,n=Object.keys(t);return Object.getOwnPropertySymbols&&(r=Object.getOwnPropertySymbols(t),e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)),n}function _objectSpread(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ownKeys(Object(r),!0).forEach(function(e){_defineProperty(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function _defineProperty(e,t,r){return(t=_toPropertyKey(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _toPropertyKey(e){var t=_toPrimitive(e,\\\"string\\\");return\\\"symbol\\\"===_typeof(t)?t:String(t)}function _toPrimitive(e,t){if(\\\"object\\\"!==_typeof(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0===r)return(\\\"string\\\"===t?String:Number)(e);r=r.call(e,t||\\\"default\\\");if(\\\"object\\\"!==_typeof(r))return r;throw new TypeError(\\\"@@toPrimitive must return a primitive value.\\\")}function addHighlightedAttribute(e){var t=e.item,r=e.query;return _objectSpread(_objectSpread({},t),{},{_highlightResult:{label:{value:r?t.label.replace(new RegExp(r.replace(/[-/\\\\\\\\^$*+?.()|[\\\\]{}]/g,\\\"\\\\\\\\$&\\\"),\\\"gi\\\"),function(e){return\\\"__aa-highlight__\\\".concat(e,\\\"__/aa-highlight__\\\")}):t.label}}})}__export(search_recent_exports,{plugin:()=>plugin}),module.exports=__toCommonJS(search_recent_exports);var LOCAL_STORAGE_KEY=\\\"AUTOCOMPLETE_RECENT_SEARCHES\\\",LOCAL_STORAGE_KEY_TEST=\\\"__AUTOCOMPLETE_RECENT_SEARCHES_PLUGIN_TEST_KEY__\\\";function isLocalStorageSupported(){try{return localStorage.setItem(LOCAL_STORAGE_KEY_TEST,\\\"\\\"),localStorage.removeItem(LOCAL_STORAGE_KEY_TEST),!0}catch(e){return!1}}function getLocalStorage(e){var t=e.key;return isLocalStorageSupported()?{setItem:function(e){return window.localStorage.setItem(t,JSON.stringify(e))},getItem:function(){var e=window.localStorage.getItem(t);return e?JSON.parse(e):[]}}:{setItem:function(){},getItem:function(){return[]}}}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError(\\\"Invalid attempt to spread non-iterable instance.\\\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\\\")}function _unsupportedIterableToArray(e,t){var r;if(e)return\\\"string\\\"==typeof e?_arrayLikeToArray(e,t):\\\"Map\\\"===(r=\\\"Object\\\"===(r=Object.prototype.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:r)||\\\"Set\\\"===r?Array.from(e):\\\"Arguments\\\"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_arrayLikeToArray(e,t):void 0}function _iterableToArray(e){if(\\\"undefined\\\"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e[\\\"@@iterator\\\"])return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function createLocalStorage(e){var t=e.key,r=e.limit,n=e.search,o=getLocalStorage({key:t});return{onAdd:function(e){o.setItem([e].concat(_toConsumableArray(o.getItem())))},onRemove:function(t){o.setItem(o.getItem().filter(function(e){return e.id!==t}))},getAll:function(){return n({query:0<arguments.length&&void 0!==arguments[0]?arguments[0]:\\\"\\\",items:o.getItem(),limit:r}).slice(0,r)}}}function createRef(e){return{current:e}}var warnCache={current:{}};function warn(e,t){var r;e||(r=t.trim(),warnCache.current[r])||(warnCache.current[r]=!0,console.warn(\\\"[Autocomplete] \\\".concat(r)))}function createStorageApi(t){return{addItem:function(e){t.onRemove(e.id),t.onAdd(e)},removeItem:function(e){t.onRemove(e)},getAll:function(e){return t.getAll(e)}}}function getTemplates(e){var o=e.onRemove,a=e.onTapAhead;return{item:function(e){var t=e.item,r=e.createElement,n=e.components;return r(\\\"div\\\",{className:\\\"aa-ItemWrapper\\\"},r(\\\"div\\\",{className:\\\"aa-ItemContent\\\"},r(\\\"div\\\",{className:\\\"aa-ItemIcon aa-ItemIcon--noBorder\\\"},r(\\\"svg\\\",{viewBox:\\\"0 0 24 24\\\",fill:\\\"currentColor\\\"},r(\\\"path\\\",{d:\\\"M12.516 6.984v5.25l4.5 2.672-0.75 1.266-5.25-3.188v-6h1.5zM12 20.016q3.281 0 5.648-2.367t2.367-5.648-2.367-5.648-5.648-2.367-5.648 2.367-2.367 5.648 2.367 5.648 5.648 2.367zM12 2.016q4.125 0 7.055 2.93t2.93 7.055-2.93 7.055-7.055 2.93-7.055-2.93-2.93-7.055 2.93-7.055 7.055-2.93z\\\"}))),r(\\\"div\\\",{className:\\\"aa-ItemContentBody\\\"},r(\\\"div\\\",{className:\\\"aa-ItemContentTitle\\\"},r(n.ReverseHighlight,{hit:t,attribute:\\\"label\\\"}),t.category&&r(\\\"span\\\",{className:\\\"aa-ItemContentSubtitle aa-ItemContentSubtitle--inline\\\"},r(\\\"span\\\",{className:\\\"aa-ItemContentSubtitleIcon\\\"}),\\\" in\\\",\\\" \\\",r(\\\"span\\\",{className:\\\"aa-ItemContentSubtitleCategory\\\"},t.category))))),r(\\\"div\\\",{className:\\\"aa-ItemActions\\\"},r(\\\"button\\\",{className:\\\"aa-ItemActionButton\\\",title:\\\"Remove this search\\\",onClick:function(e){e.preventDefault(),e.stopPropagation(),o(t.id)}},r(\\\"svg\\\",{viewBox:\\\"0 0 24 24\\\",fill:\\\"currentColor\\\"},r(\\\"path\\\",{d:\\\"M18 7v13c0 0.276-0.111 0.525-0.293 0.707s-0.431 0.293-0.707 0.293h-10c-0.276 0-0.525-0.111-0.707-0.293s-0.293-0.431-0.293-0.707v-13zM17 5v-1c0-0.828-0.337-1.58-0.879-2.121s-1.293-0.879-2.121-0.879h-4c-0.828 0-1.58 0.337-2.121 0.879s-0.879 1.293-0.879 2.121v1h-4c-0.552 0-1 0.448-1 1s0.448 1 1 1h1v13c0 0.828 0.337 1.58 0.879 2.121s1.293 0.879 2.121 0.879h10c0.828 0 1.58-0.337 2.121-0.879s0.879-1.293 0.879-2.121v-13h1c0.552 0 1-0.448 1-1s-0.448-1-1-1zM9 5v-1c0-0.276 0.111-0.525 0.293-0.707s0.431-0.293 0.707-0.293h4c0.276 0 0.525 0.111 0.707 0.293s0.293 0.431 0.293 0.707v1zM9 11v6c0 0.552 0.448 1 1 1s1-0.448 1-1v-6c0-0.552-0.448-1-1-1s-1 0.448-1 1zM13 11v6c0 0.552 0.448 1 1 1s1-0.448 1-1v-6c0-0.552-0.448-1-1-1s-1 0.448-1 1z\\\"}))),r(\\\"button\\\",{className:\\\"aa-ItemActionButton\\\",title:'Fill query with \\\"'.concat(t.label,'\\\"'),onClick:function(e){e.preventDefault(),e.stopPropagation(),a(t)}},r(\\\"svg\\\",{viewBox:\\\"0 0 24 24\\\",fill:\\\"currentColor\\\"},r(\\\"path\\\",{d:\\\"M8 17v-7.586l8.293 8.293c0.391 0.391 1.024 0.391 1.414 0s0.391-1.024 0-1.414l-8.293-8.293h7.586c0.552 0 1-0.448 1-1s-0.448-1-1-1h-10c-0.552 0-1 0.448-1 1v10c0 0.552 0.448 1 1 1s1-0.448 1-1z\\\"})))))}}}function _typeof2(e){return(_typeof2=\\\"function\\\"==typeof Symbol&&\\\"symbol\\\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\\\"function\\\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\\\"symbol\\\":typeof e})(e)}function _toConsumableArray2(e){return _arrayWithoutHoles2(e)||_iterableToArray2(e)||_unsupportedIterableToArray2(e)||_nonIterableSpread2()}function _nonIterableSpread2(){throw new TypeError(\\\"Invalid attempt to spread non-iterable instance.\\\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\\\")}function _unsupportedIterableToArray2(e,t){var r;if(e)return\\\"string\\\"==typeof e?_arrayLikeToArray2(e,t):\\\"Map\\\"===(r=\\\"Object\\\"===(r=Object.prototype.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:r)||\\\"Set\\\"===r?Array.from(e):\\\"Arguments\\\"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_arrayLikeToArray2(e,t):void 0}function _iterableToArray2(e){if(\\\"undefined\\\"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e[\\\"@@iterator\\\"])return Array.from(e)}function _arrayWithoutHoles2(e){if(Array.isArray(e))return _arrayLikeToArray2(e)}function _arrayLikeToArray2(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function ownKeys2(t,e){var r,n=Object.keys(t);return Object.getOwnPropertySymbols&&(r=Object.getOwnPropertySymbols(t),e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)),n}function _objectSpread2(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ownKeys2(Object(r),!0).forEach(function(e){_defineProperty2(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ownKeys2(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function _defineProperty2(e,t,r){return(t=_toPropertyKey2(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _toPropertyKey2(e){var t=_toPrimitive2(e,\\\"string\\\");return\\\"symbol\\\"===_typeof2(t)?t:String(t)}function _toPrimitive2(e,t){if(\\\"object\\\"!==_typeof2(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0===r)return(\\\"string\\\"===t?String:Number)(e);r=r.call(e,t||\\\"default\\\");if(\\\"object\\\"!==_typeof2(r))return r;throw new TypeError(\\\"@@toPrimitive must return a primitive value.\\\")}function getDefaultSubscribe(o){return function(e){(0,e.onSelect)(function(e){var t=e.item,r=e.state,n=e.source,r=n.getItemInputValue({item:t,state:r});\\\"querySuggestionsPlugin\\\"===n.sourceId&&r&&(n={id:r,label:r,category:t.__autocomplete_qsCategory},o.addItem(n))})}}function createRecentSearchesPlugin(e){var t=getOptions(e),r=t.storage,c=t.transformSource,t=t.subscribe,u=createStorageApi(r),l=createRef([]);return{name:\\\"aa.recentSearchesPlugin\\\",subscribe:null!=t?t:getDefaultSubscribe(u),onSubmit:function(e){var t=e.state.query;t&&u.addItem({id:t,label:t})},getSources:function(e){var t=e.query,r=e.setQuery,n=e.refresh,o=e.state;function a(e){u.removeItem(e),n()}function i(e){r(e.label),n()}return l.current=u.getAll(t),Promise.resolve(l.current).then(function(e){return 0===e.length?[]:[c({source:{sourceId:\\\"recentSearchesPlugin\\\",getItemInputValue:function(e){return e.item.label},getItems:function(){return e},templates:getTemplates({onRemove:a,onTapAhead:i})},onRemove:a,onTapAhead:i,state:o})]})},data:_objectSpread2(_objectSpread2({},u),{},{getAlgoliaSearchParams:function(){var e,t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{};return Array.isArray(l.current)?_objectSpread2(_objectSpread2({},t),{},{facetFilters:[].concat(_toConsumableArray2(null!=(e=t.facetFilters)?e:[]),_toConsumableArray2(l.current.map(function(e){return[\\\"objectID:-\\\".concat(e.label)]}))),hitsPerPage:Math.max(1,(null!=(e=t.hitsPerPage)?e:10)-l.current.length)}):(warn(!1,\\\"The `getAlgoliaSearchParams` function is not supported with storages that return promises in `getAll`.\\\"),t)}}),__autocomplete_pluginOptions:e}}function getOptions(e){return _objectSpread2({transformSource:function(e){return e.source}},e)}function search(e){var t=e.query,r=e.items,n=e.limit;return t?r.filter(function(e){return e.label.toLowerCase().includes(t.toLowerCase())}).slice(0,n).map(function(e){return addHighlightedAttribute({item:e,query:t})}):r.slice(0,n).map(function(e){return addHighlightedAttribute({item:e,query:t})})}function _typeof3(e){return(_typeof3=\\\"function\\\"==typeof Symbol&&\\\"symbol\\\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\\\"function\\\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\\\"symbol\\\":typeof e})(e)}function ownKeys3(t,e){var r,n=Object.keys(t);return Object.getOwnPropertySymbols&&(r=Object.getOwnPropertySymbols(t),e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)),n}function _objectSpread3(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ownKeys3(Object(r),!0).forEach(function(e){_defineProperty3(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ownKeys3(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function _defineProperty3(e,t,r){return(t=_toPropertyKey3(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _toPropertyKey3(e){var t=_toPrimitive3(e,\\\"string\\\");return\\\"symbol\\\"===_typeof3(t)?t:String(t)}function _toPrimitive3(e,t){if(\\\"object\\\"!==_typeof3(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0===r)return(\\\"string\\\"===t?String:Number)(e);r=r.call(e,t||\\\"default\\\");if(\\\"object\\\"!==_typeof3(r))return r;throw new TypeError(\\\"@@toPrimitive must return a primitive value.\\\")}function createLocalStorageRecentSearchesPlugin(e){var t=getOptions2(e),r=t.key,n=t.limit,o=t.transformSource,a=t.search,t=t.subscribe;return _objectSpread3(_objectSpread3({},createRecentSearchesPlugin({transformSource:o,storage:createLocalStorage({key:[LOCAL_STORAGE_KEY,r].join(\\\":\\\"),limit:n,search:a}),subscribe:t})),{},{name:\\\"aa.localStorageRecentSearchesPlugin\\\",__autocomplete_pluginOptions:e})}function getOptions2(e){return _objectSpread3({limit:5,search:search,transformSource:function(e){return e.source}},e)}function renderHTMLWithCache(e,t,r){return void 0===e||\\\"string\\\"!=typeof e?\\\"\\\":$tw.wiki.getGlobalCache(\\\"wikify-html-\\\"+e,()=>$tw.wiki.renderText(\\\"text/html\\\",\\\"text/vnd.tiddlywiki\\\",`\\\\\\\\import [[$:/core/macros/lingo]]\\n\\n`+e,{parentWidget:t,variables:r}))}function getIconSvg(e,t){return renderHTMLWithCache($tw.wiki.getTiddlerText(e),t).replace(\\\"<p>\\\",\\\"\\\").replace(\\\"</p>\\\",\\\"\\\")}var lingoBase=\\\"$:/plugins/linonetwo/autocomplete/language/\\\";function lingo(e){const t=$tw.wiki.filterTiddlers(\\\"[[$:/language]get[text]get[name]else[en-GB]]\\\")[0];return $tw.wiki.getGlobalCache(`lingo-${t}-`+e,()=>$tw.wiki.getTiddlerText(\\\"\\\"+lingoBase+t+\\\"/\\\"+e,e))}var plugin=e=>{let n,o;const a=getIconSvg(\\\"$:/core/images/delete-button\\\",void 0),i=createLocalStorageRecentSearchesPlugin({key:\\\"recent-\\\"+e,subscribe(e){e.setContext?.({addHistoryItem:e=>i.data?.addItem({id:e,label:e})}),n=e.setContext,o=e.refresh.bind(e)},transformSource({source:t}){const r=e=>{n?.({newQuery:e,noClose:!0,noNavigate:!0})};return{...t,getItemUrl({item:e}){return e.id},async getItems(e){return 0<e.query.length?[]:t.getItems(e)},onSelect({item:e}){r(e.id)},templates:{...t.templates,header(){return lingo(\\\"SearchHistory\\\")},item({item:e,createElement:t}){return t(\\\"div\\\",{\\\"class\\\":\\\"tw-commandpalette-search-recent-item\\\",onclick:r},t(\\\"span\\\",{},e.id),t(\\\"span\\\",{\\\"class\\\":\\\"tw-commandpalette-search-recent-item-delete\\\",onclick:()=>{i.data?.removeItem(e.id),o?.()?.[\\\"catch\\\"]?.(e=>{console.error(\\\"Error in search-recent refresh\\\",e)})},innerHTML:a}))}}}}});return i};\"},\"$:/plugins/linonetwo/autocomplete/widget/build-in-sub-plugins/search-story-history.js\":{\"title\":\"$:/plugins/linonetwo/autocomplete/widget/build-in-sub-plugins/search-story-history.js\",\"tags\":\"$:/tags/AutoCompletePlugin\",\"type\":\"application/javascript\",\"module-type\":\"library\",\"priority\":\"0\",\"Modern.TiddlyDev#Origin\":\"widgets/build-in-sub-plugins/search-story-history.ts\",\"text\":\"\\\"use strict\\\";var __create=Object.create,__defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__getProtoOf=Object.getPrototypeOf,__hasOwnProp=Object.prototype.hasOwnProperty,__esm=(e,o)=>function(){return o=e?(0,e[__getOwnPropNames(e)[0]])(e=0):o},__commonJS=(e,o)=>function(){return o||(0,e[__getOwnPropNames(e)[0]])((o={exports:{}}).exports,o),o.exports},__export=(e,o)=>{for(var t in o)__defProp(e,t,{get:o[t],enumerable:!0})},__copyProps=(o,t,r,i)=>{if(t&&\\\"object\\\"==typeof t||\\\"function\\\"==typeof t)for(let e of __getOwnPropNames(t))__hasOwnProp.call(o,e)||e===r||__defProp(o,e,{get:()=>t[e],enumerable:!(i=__getOwnPropDesc(t,e))||i.enumerable});return o},__toESM=(e,o,t)=>(t=null!=e?__create(__getProtoOf(e)):{},__copyProps(!o&&e&&e.__esModule?t:__defProp(t,\\\"default\\\",{value:e,enumerable:!0}),e)),__toCommonJS=e=>__copyProps(__defProp({},\\\"__esModule\\\",{value:!0}),e),init_esbuild_inject=__esm({\\\"node_modules/.pnpm/tiddlywiki-plugin-dev@0.2.1_postcss@8.4.41_ts-node@10.9.2_@types+node@22.2.0_typescript@5.5.4_/node_modules/tiddlywiki-plugin-dev/dist/js/esbuild-inject.js\\\"(){}}),require_freeGlobal=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_freeGlobal.js\\\"(e,o){init_esbuild_inject();var t=\\\"object\\\"==typeof global&&global&&global.Object===Object&&global;o.exports=t}}),require_root=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_root.js\\\"(e,o){init_esbuild_inject();var t=require_freeGlobal(),r=\\\"object\\\"==typeof self&&self&&self.Object===Object&&self,t=t||r||Function(\\\"return this\\\")();o.exports=t}}),require_Symbol=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Symbol.js\\\"(e,o){init_esbuild_inject();var t=require_root().Symbol;o.exports=t}}),require_getRawTag=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getRawTag.js\\\"(e,o){init_esbuild_inject();var t=require_Symbol(),r=Object.prototype,s=r.hasOwnProperty,_=r.toString,a=t?t.toStringTag:void 0;o.exports=function(e){var o=s.call(e,a),t=e[a];try{var r=!(e[a]=void 0)}catch(n){}var i=_.call(e);return r&&(o?e[a]=t:delete e[a]),i}}}),require_objectToString=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_objectToString.js\\\"(e,o){init_esbuild_inject();var t=Object.prototype.toString;o.exports=function(e){return t.call(e)}}}),require_baseGetTag=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseGetTag.js\\\"(e,o){init_esbuild_inject();var t=require_Symbol(),r=require_getRawTag(),i=require_objectToString(),n=t?t.toStringTag:void 0;o.exports=function(e){return null==e?void 0===e?\\\"[object Undefined]\\\":\\\"[object Null]\\\":(n&&n in Object(e)?r:i)(e)}}}),require_isObject=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isObject.js\\\"(e,o){init_esbuild_inject(),o.exports=function(e){var o=typeof e;return null!=e&&(\\\"object\\\"==o||\\\"function\\\"==o)}}}),require_isFunction=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isFunction.js\\\"(e,o){init_esbuild_inject();var t=require_baseGetTag(),r=require_isObject();o.exports=function(e){var o;return!!r(e)&&(\\\"[object Function]\\\"==(o=t(e))||\\\"[object GeneratorFunction]\\\"==o||\\\"[object AsyncFunction]\\\"==o||\\\"[object Proxy]\\\"==o)}}}),require_coreJsData=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_coreJsData.js\\\"(e,o){init_esbuild_inject();var t=require_root()[\\\"__core-js_shared__\\\"];o.exports=t}}),require_isMasked=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isMasked.js\\\"(e,o){init_esbuild_inject();var t=require_coreJsData(),r=(t=/[^.]+$/.exec(t&&t.keys&&t.keys.IE_PROTO||\\\"\\\"))?\\\"Symbol(src)_1.\\\"+t:\\\"\\\";o.exports=function(e){return!!r&&r in e}}}),require_toSource=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_toSource.js\\\"(e,o){init_esbuild_inject();var t=Function.prototype.toString;o.exports=function(e){if(null!=e){try{return t.call(e)}catch(o){}try{return e+\\\"\\\"}catch(o){}}return\\\"\\\"}}}),require_baseIsNative=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsNative.js\\\"(e,o){init_esbuild_inject();var t=require_isFunction(),r=require_isMasked(),i=require_isObject(),n=require_toSource(),s=/^\\\\[object .+?Constructor\\\\]$/,_=Function.prototype,a=Object.prototype,_=_.toString,a=a.hasOwnProperty,d=RegExp(\\\"^\\\"+_.call(a).replace(/[\\\\\\\\^$.*+?()[\\\\]{}|]/g,\\\"\\\\\\\\$&\\\").replace(/hasOwnProperty|(function).*?(?=\\\\\\\\\\\\()| for .+?(?=\\\\\\\\\\\\])/g,\\\"$1.*?\\\")+\\\"$\\\");o.exports=function(e){return!(!i(e)||r(e))&&(t(e)?d:s).test(n(e))}}}),require_getValue=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getValue.js\\\"(e,o){init_esbuild_inject(),o.exports=function(e,o){return null==e?void 0:e[o]}}}),require_getNative=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getNative.js\\\"(e,o){init_esbuild_inject();var r=require_baseIsNative(),i=require_getValue();o.exports=function(e,o){var t=i(e,o);return r(t)?t:void 0}}}),require_nativeCreate=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_nativeCreate.js\\\"(e,o){init_esbuild_inject();var t=require_getNative()(Object,\\\"create\\\");o.exports=t}}),require_hashClear=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashClear.js\\\"(e,o){init_esbuild_inject();var t=require_nativeCreate();o.exports=function(){this.__data__=t?t(null):{},this.size=0}}}),require_hashDelete=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashDelete.js\\\"(e,o){init_esbuild_inject(),o.exports=function(e){var o=this.has(e)&&delete this.__data__[e];return this.size-=o?1:0,o}}}),require_hashGet=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashGet.js\\\"(e,o){init_esbuild_inject();var r=require_nativeCreate(),i=Object.prototype.hasOwnProperty;o.exports=function(e){var o,t=this.__data__;return r?\\\"__lodash_hash_undefined__\\\"===(o=t[e])?void 0:o:i.call(t,e)?t[e]:void 0}}}),require_hashHas=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashHas.js\\\"(e,o){init_esbuild_inject();var t=require_nativeCreate(),r=Object.prototype.hasOwnProperty;o.exports=function(e){var o=this.__data__;return t?void 0!==o[e]:r.call(o,e)}}}),require_hashSet=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashSet.js\\\"(e,o){init_esbuild_inject();var r=require_nativeCreate();o.exports=function(e,o){var t=this.__data__;return this.size+=this.has(e)?0:1,t[e]=r&&void 0===o?\\\"__lodash_hash_undefined__\\\":o,this}}}),require_Hash=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Hash.js\\\"(e,o){init_esbuild_inject();var t=require_hashClear(),r=require_hashDelete(),i=require_hashGet(),n=require_hashHas(),s=require_hashSet();function _(e){var o=-1,t=null==e?0:e.length;for(this.clear();++o<t;){var r=e[o];this.set(r[0],r[1])}}_.prototype.clear=t,_.prototype[\\\"delete\\\"]=r,_.prototype.get=i,_.prototype.has=n,_.prototype.set=s,o.exports=_}}),require_listCacheClear=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheClear.js\\\"(e,o){init_esbuild_inject(),o.exports=function(){this.__data__=[],this.size=0}}}),require_eq=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/eq.js\\\"(e,o){init_esbuild_inject(),o.exports=function(e,o){return e===o||e!=e&&o!=o}}}),require_assocIndexOf=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_assocIndexOf.js\\\"(e,o){init_esbuild_inject();var r=require_eq();o.exports=function(e,o){for(var t=e.length;t--;)if(r(e[t][0],o))return t;return-1}}}),require_listCacheDelete=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheDelete.js\\\"(e,o){init_esbuild_inject();var r=require_assocIndexOf(),i=Array.prototype.splice;o.exports=function(e){var o=this.__data__,t=r(o,e);return!(t<0||(t==o.length-1?o.pop():i.call(o,t,1),--this.size,0))}}}),require_listCacheGet=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheGet.js\\\"(e,o){init_esbuild_inject();var r=require_assocIndexOf();o.exports=function(e){var o=this.__data__,t=r(o,e);return t<0?void 0:o[t][1]}}}),require_listCacheHas=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheHas.js\\\"(e,o){init_esbuild_inject();var t=require_assocIndexOf();o.exports=function(e){return-1<t(this.__data__,e)}}}),require_listCacheSet=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheSet.js\\\"(e,o){init_esbuild_inject();var i=require_assocIndexOf();o.exports=function(e,o){var t=this.__data__,r=i(t,e);return r<0?(++this.size,t.push([e,o])):t[r][1]=o,this}}}),require_ListCache=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_ListCache.js\\\"(e,o){init_esbuild_inject();var t=require_listCacheClear(),r=require_listCacheDelete(),i=require_listCacheGet(),n=require_listCacheHas(),s=require_listCacheSet();function _(e){var o=-1,t=null==e?0:e.length;for(this.clear();++o<t;){var r=e[o];this.set(r[0],r[1])}}_.prototype.clear=t,_.prototype[\\\"delete\\\"]=r,_.prototype.get=i,_.prototype.has=n,_.prototype.set=s,o.exports=_}}),require_Map=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Map.js\\\"(e,o){init_esbuild_inject();var t=require_getNative()(require_root(),\\\"Map\\\");o.exports=t}}),require_mapCacheClear=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheClear.js\\\"(e,o){init_esbuild_inject();var t=require_Hash(),r=require_ListCache(),i=require_Map();o.exports=function(){this.size=0,this.__data__={hash:new t,map:new(i||r),string:new t}}}}),require_isKeyable=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isKeyable.js\\\"(e,o){init_esbuild_inject(),o.exports=function(e){var o=typeof e;return\\\"string\\\"==o||\\\"number\\\"==o||\\\"symbol\\\"==o||\\\"boolean\\\"==o?\\\"__proto__\\\"!==e:null===e}}}),require_getMapData=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getMapData.js\\\"(e,o){init_esbuild_inject();var r=require_isKeyable();o.exports=function(e,o){var t=e.__data__;return r(o)?t[\\\"string\\\"==typeof o?\\\"string\\\":\\\"hash\\\"]:t.map}}}),require_mapCacheDelete=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheDelete.js\\\"(e,o){init_esbuild_inject();var t=require_getMapData();o.exports=function(e){var o=t(this,e)[\\\"delete\\\"](e);return this.size-=o?1:0,o}}}),require_mapCacheGet=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheGet.js\\\"(e,o){init_esbuild_inject();var t=require_getMapData();o.exports=function(e){return t(this,e).get(e)}}}),require_mapCacheHas=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheHas.js\\\"(e,o){init_esbuild_inject();var t=require_getMapData();o.exports=function(e){return t(this,e).has(e)}}}),require_mapCacheSet=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheSet.js\\\"(e,o){init_esbuild_inject();var i=require_getMapData();o.exports=function(e,o){var t=i(this,e),r=t.size;return t.set(e,o),this.size+=t.size==r?0:1,this}}}),require_MapCache=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_MapCache.js\\\"(e,o){init_esbuild_inject();var t=require_mapCacheClear(),r=require_mapCacheDelete(),i=require_mapCacheGet(),n=require_mapCacheHas(),s=require_mapCacheSet();function _(e){var o=-1,t=null==e?0:e.length;for(this.clear();++o<t;){var r=e[o];this.set(r[0],r[1])}}_.prototype.clear=t,_.prototype[\\\"delete\\\"]=r,_.prototype.get=i,_.prototype.has=n,_.prototype.set=s,o.exports=_}}),require_setCacheAdd=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_setCacheAdd.js\\\"(e,o){init_esbuild_inject();o.exports=function(e){return this.__data__.set(e,\\\"__lodash_hash_undefined__\\\"),this}}}),require_setCacheHas=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_setCacheHas.js\\\"(e,o){init_esbuild_inject(),o.exports=function(e){return this.__data__.has(e)}}}),require_SetCache=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_SetCache.js\\\"(e,o){init_esbuild_inject();var r=require_MapCache(),t=require_setCacheAdd(),i=require_setCacheHas();function n(e){var o=-1,t=null==e?0:e.length;for(this.__data__=new r;++o<t;)this.add(e[o])}n.prototype.add=n.prototype.push=t,n.prototype.has=i,o.exports=n}}),require_baseFindIndex=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseFindIndex.js\\\"(e,o){init_esbuild_inject(),o.exports=function(e,o,t,r){for(var i=e.length,n=t+(r?1:-1);r?n--:++n<i;)if(o(e[n],n,e))return n;return-1}}}),require_baseIsNaN=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsNaN.js\\\"(e,o){init_esbuild_inject(),o.exports=function(e){return e!=e}}}),require_strictIndexOf=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_strictIndexOf.js\\\"(e,o){init_esbuild_inject(),o.exports=function(e,o,t){for(var r=t-1,i=e.length;++r<i;)if(e[r]===o)return r;return-1}}}),require_baseIndexOf=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIndexOf.js\\\"(e,o){init_esbuild_inject();var r=require_baseFindIndex(),i=require_baseIsNaN(),n=require_strictIndexOf();o.exports=function(e,o,t){return o==o?n(e,o,t):r(e,i,t)}}}),require_arrayIncludes=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_arrayIncludes.js\\\"(e,o){init_esbuild_inject();var t=require_baseIndexOf();o.exports=function(e,o){return!!(null==e?0:e.length)&&-1<t(e,o,0)}}}),require_arrayIncludesWith=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_arrayIncludesWith.js\\\"(e,o){init_esbuild_inject(),o.exports=function(e,o,t){for(var r=-1,i=null==e?0:e.length;++r<i;)if(t(o,e[r]))return!0;return!1}}}),require_cacheHas=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_cacheHas.js\\\"(e,o){init_esbuild_inject(),o.exports=function(e,o){return e.has(o)}}}),require_Set=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Set.js\\\"(e,o){init_esbuild_inject();var t=require_getNative()(require_root(),\\\"Set\\\");o.exports=t}}),require_noop=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/noop.js\\\"(e,o){init_esbuild_inject(),o.exports=function(){}}}),require_setToArray=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_setToArray.js\\\"(e,o){init_esbuild_inject(),o.exports=function(e){var o=-1,t=Array(e.size);return e.forEach(function(e){t[++o]=e}),t}}}),require_createSet=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_createSet.js\\\"(e,o){init_esbuild_inject();var t=require_Set(),r=require_noop(),i=require_setToArray(),i=t&&1/i(new t([,-0]))[1]==1/0?function(e){return new t(e)}:r;o.exports=i}}),require_baseUniq=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseUniq.js\\\"(e,o){init_esbuild_inject();var p=require_SetCache(),m=require_arrayIncludes(),h=require_arrayIncludesWith(),f=require_cacheHas(),j=require_createSet(),b=require_setToArray();o.exports=function(e,o,t){var r=-1,i=m,n=e.length,s=!0,_=[],a=_;if(t)s=!1,i=h;else if(200<=n){var d=o?null:j(e);if(d)return b(d);s=!1,i=f,a=new p}else a=o?[]:_;e:for(;++r<n;){var l=e[r],u=o?o(l):l,l=t||0!==l?l:0;if(s&&u==u){for(var c=a.length;c--;)if(a[c]===u)continue e;o&&a.push(u),_.push(l)}else i(a,u,t)||(a!==_&&a.push(u),_.push(l))}return _}}}),require_uniq=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/uniq.js\\\"(e,o){init_esbuild_inject();var t=require_baseUniq();o.exports=function(e){return e&&e.length?t(e):[]}}}),search_story_history_exports={},import_uniq=(__export(search_story_history_exports,{plugin:()=>plugin}),module.exports=__toCommonJS(search_story_history_exports),init_esbuild_inject(),__toESM(require_uniq())),systemPrefixes=(init_esbuild_inject(),$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/System\\\")?.fields?.[\\\"command-palette-prefix\\\"]?.split(\\\" \\\")?.filter(Boolean)),filterPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Filter\\\")?.fields?.[\\\"command-palette-prefix\\\"],tagsPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Tags\\\")?.fields?.[\\\"command-palette-prefix\\\"],helpPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Help\\\")?.fields?.[\\\"command-palette-prefix\\\"];function checkIsSearchUser(e){var o=e.query[0];return!systemPrefixes?.includes(o)&&![filterPrefix,tagsPrefix,helpPrefix].includes(o)}function checkIsUnderFilter(e){return Boolean(e.state.context.filter)}init_esbuild_inject();var lingoBase=\\\"$:/plugins/linonetwo/autocomplete/language/\\\";function lingo(e){const o=$tw.wiki.filterTiddlers(\\\"[[$:/language]get[text]get[name]else[en-GB]]\\\")[0];return $tw.wiki.getGlobalCache(`lingo-${o}-`+e,()=>$tw.wiki.getTiddlerText(\\\"\\\"+lingoBase+o+\\\"/\\\"+e,e))}function renderTextWithCache(e,o,t){return void 0===e||\\\"string\\\"!=typeof e?\\\"\\\":$tw.wiki.getGlobalCache(\\\"wikify-\\\"+e,()=>$tw.wiki.renderText(\\\"text/plain\\\",\\\"text/vnd.tiddlywiki\\\",`\\\\\\\\import [[$:/core/macros/lingo]]\\n\\n`+e,{parentWidget:o,variables:t}))}init_esbuild_inject();var plugin={getSources(r){const i=r.state.context[\\\"widget\\\"];return!checkIsSearchUser(r)||checkIsUnderFilter(r)?[]:[{sourceId:\\\"story-history\\\",getItems({query:e}){var o=$tw.wiki.getTiddlerData(\\\"$:/HistoryList\\\")??[],o=(0,import_uniq[\\\"default\\\"])([...o.reverse().map(e=>e.title),...$tw.wiki.filterTiddlers(\\\"[list[$:/StoryList]]\\\")]);let t=[];var[o,r,...i]=(t=void 0===$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/pinyin-fuzzy-search/pinyin-fuzzy-search.js\\\")?$tw.wiki.filterTiddlers(`[search:title[${e}]]`,void 0,$tw.wiki.makeTiddlerIterator(o)):$tw.wiki.filterTiddlers(`[pinyinfuse[${e}]]`,void 0,$tw.wiki.makeTiddlerIterator(o))).map(e=>$tw.wiki.getTiddler(e)?.fields).filter(Boolean);return[r,o,...i].filter(Boolean)},getItemUrl({item:e}){return e.title},templates:{header(){return lingo(\\\"StoryHistory\\\")},item({item:e,createElement:o,state:t}){return\\\"string\\\"==typeof e.caption&&\\\"\\\"!==e.caption?o(\\\"div\\\",{onclick:()=>{r.navigator.navigate({item:e,itemUrl:e.title,state:t})}},`${renderTextWithCache(e.caption,i)} (${e.title})`):o(\\\"div\\\",{onclick:()=>{r.navigator.navigate({item:e,itemUrl:e.title,state:t})}},e.title)}}}]}};\"},\"$:/plugins/linonetwo/autocomplete/widget/build-in-sub-plugins/search-system-title.js\":{\"title\":\"$:/plugins/linonetwo/autocomplete/widget/build-in-sub-plugins/search-system-title.js\",\"tags\":\"$:/tags/AutoCompletePlugin\",\"type\":\"application/javascript\",\"module-type\":\"library\",\"priority\":\"5\",\"Modern.TiddlyDev#Origin\":\"widgets/build-in-sub-plugins/search-system-title.ts\",\"text\":\"\\\"use strict\\\";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__export=(e,t)=>{for(var i in t)__defProp(e,i,{get:t[i],enumerable:!0})},__copyProps=(t,i,o,r)=>{if(i&&\\\"object\\\"==typeof i||\\\"function\\\"==typeof i)for(let e of __getOwnPropNames(i))__hasOwnProp.call(t,e)||e===o||__defProp(t,e,{get:()=>i[e],enumerable:!(r=__getOwnPropDesc(i,e))||r.enumerable});return t},__toCommonJS=e=>__copyProps(__defProp({},\\\"__esModule\\\",{value:!0}),e),search_system_title_exports={},systemPrefixes=(__export(search_system_title_exports,{plugin:()=>plugin}),module.exports=__toCommonJS(search_system_title_exports),$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/System\\\")?.fields?.[\\\"command-palette-prefix\\\"]?.split(\\\" \\\")?.filter(Boolean)),filterPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Filter\\\")?.fields?.[\\\"command-palette-prefix\\\"],tagsPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Tags\\\")?.fields?.[\\\"command-palette-prefix\\\"],helpPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Help\\\")?.fields?.[\\\"command-palette-prefix\\\"];function checkIsSearchSystem(e){return Boolean(systemPrefixes?.includes(e.query[0]))}function checkIsUnderFilter(e){return Boolean(e.state.context.filter)}var searchSystemTitle=()=>\\\"yes\\\"===$tw.wiki.getTiddlerText(\\\"$:/plugins/linonetwo/autocomplete/configs/SearchSystemTitle\\\");function debouncePromise(i,o){let r;return async function(...t){return r&&clearTimeout(r),new Promise(e=>{r=setTimeout(()=>{e(i(...t))},o)})}}var debounceDuration=Number($tw.wiki.getTiddlerText(\\\"$:/plugins/linonetwo/autocomplete/configs/DebounceDuration\\\",\\\"300\\\")),debounced=debouncePromise(async e=>Promise.resolve(e),debounceDuration),isInTidGiDesktop=\\\"undefined\\\"!=typeof document&&document?.location?.protocol?.startsWith(\\\"tidgi\\\"),tidGiWorkspaceID=window.meta?.()?.workspaceID;async function filterTiddlersAsync(e,t){var{system:i=!1,exclude:o,toTiddler:r=!0}=t;return isInTidGiDesktop&&\\\"service\\\"in window?(await window.service.wiki.callWikiIpcServerRoute(tidGiWorkspaceID,\\\"getTiddlersJSON\\\",e,o,{ignoreSyncSystemConfig:!i,toTiddler:r})).data:r?$tw.wiki.filterTiddlers(e).map(e=>$tw.wiki.getTiddler(e)?.fields).filter(Boolean):$tw.wiki.filterTiddlers(e).filter(Boolean).map(e=>({title:e}))}var lingoBase=\\\"$:/plugins/linonetwo/autocomplete/language/\\\";function lingo(e){const t=$tw.wiki.filterTiddlers(\\\"[[$:/language]get[text]get[name]else[en-GB]]\\\")[0];return $tw.wiki.getGlobalCache(`lingo-${t}-`+e,()=>$tw.wiki.getTiddlerText(\\\"\\\"+lingoBase+t+\\\"/\\\"+e,e))}var plugin={async getSources(o){return 0!==o.query.length&&searchSystemTitle()&&checkIsSearchSystem(o)&&!checkIsUnderFilter(o)?debounced([{sourceId:\\\"system-title\\\",async getItems({query:e}){return\\\"\\\"===e?[]:await filterTiddlersAsync(`[all[tiddlers+shadows]is[system]search[${e.substring(1)}]]`,{system:!0})},getItemUrl({item:e}){return e.title},templates:{header(){return lingo(\\\"SystemTitle\\\")},item({item:e,createElement:t,state:i}){return\\\"string\\\"==typeof e.caption&&\\\"\\\"!==e.caption?t(\\\"div\\\",{onclick:()=>{o.navigator.navigate({item:e,itemUrl:e.title,state:i})}},`${e.caption} (${e.title})`):t(\\\"div\\\",{onclick:()=>{o.navigator.navigate({item:e,itemUrl:e.title,state:i})}},e.title)}}}]):[]}};\"},\"$:/plugins/linonetwo/autocomplete/widget/build-in-sub-plugins/search-tags.js\":{\"title\":\"$:/plugins/linonetwo/autocomplete/widget/build-in-sub-plugins/search-tags.js\",\"tags\":\"$:/tags/AutoCompletePlugin\",\"type\":\"application/javascript\",\"module-type\":\"library\",\"priority\":\"0\",\"Modern.TiddlyDev#Origin\":\"widgets/build-in-sub-plugins/search-tags.ts\",\"text\":\"\\\"use strict\\\";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__export=(e,t)=>{for(var i in t)__defProp(e,i,{get:t[i],enumerable:!0})},__copyProps=(t,i,o,r)=>{if(i&&\\\"object\\\"==typeof i||\\\"function\\\"==typeof i)for(let e of __getOwnPropNames(i))__hasOwnProp.call(t,e)||e===o||__defProp(t,e,{get:()=>i[e],enumerable:!(r=__getOwnPropDesc(i,e))||r.enumerable});return t},__toCommonJS=e=>__copyProps(__defProp({},\\\"__esModule\\\",{value:!0}),e),search_tags_exports={},systemPrefixes=(__export(search_tags_exports,{plugin:()=>plugin}),module.exports=__toCommonJS(search_tags_exports),$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/System\\\")?.fields?.[\\\"command-palette-prefix\\\"]?.split(\\\" \\\")?.filter(Boolean)),filterPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Filter\\\")?.fields?.[\\\"command-palette-prefix\\\"],tagsPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Tags\\\")?.fields?.[\\\"command-palette-prefix\\\"],helpPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Help\\\")?.fields?.[\\\"command-palette-prefix\\\"];function checkIsSearchTags(e){return e.query[0]===tagsPrefix}var applyIgnoreFilterToTag=()=>\\\"yes\\\"===$tw.wiki.getTiddlerText(\\\"$:/plugins/linonetwo/autocomplete/configs/ApplyIgnoreFilterToTag\\\",\\\"\\\");function debouncePromise(i,o){let r;return async function(...t){return r&&clearTimeout(r),new Promise(e=>{r=setTimeout(()=>{e(i(...t))},o)})}}var debounceDuration=Number($tw.wiki.getTiddlerText(\\\"$:/plugins/linonetwo/autocomplete/configs/DebounceDuration\\\",\\\"300\\\")),debounced=debouncePromise(async e=>Promise.resolve(e),debounceDuration),isInTidGiDesktop=\\\"undefined\\\"!=typeof document&&document?.location?.protocol?.startsWith(\\\"tidgi\\\"),tidGiWorkspaceID=window.meta?.()?.workspaceID;async function filterTiddlersAsync(e,t){var{system:i=!1,exclude:o,toTiddler:r=!0}=t;return isInTidGiDesktop&&\\\"service\\\"in window?(await window.service.wiki.callWikiIpcServerRoute(tidGiWorkspaceID,\\\"getTiddlersJSON\\\",e,o,{ignoreSyncSystemConfig:!i,toTiddler:r})).data:r?$tw.wiki.filterTiddlers(e).map(e=>$tw.wiki.getTiddler(e)?.fields).filter(Boolean):$tw.wiki.filterTiddlers(e).filter(Boolean).map(e=>({title:e}))}var lingoBase=\\\"$:/plugins/linonetwo/autocomplete/language/\\\";function lingo(e){const t=$tw.wiki.filterTiddlers(\\\"[[$:/language]get[text]get[name]else[en-GB]]\\\")[0];return $tw.wiki.getGlobalCache(`lingo-${t}-`+e,()=>$tw.wiki.getTiddlerText(\\\"\\\"+lingoBase+t+\\\"/\\\"+e,e))}var plugin={async getSources(o){if(0===o.query.length)return[];if(!checkIsSearchTags(o))return[];const r=e=>{o.state.context.addHistoryItem?.(o.query);var t=`[[${e.title}]] [tag[${e.title}]]`;o.setContext({newQuery:\\\"\\\",noClose:!0,noNavigate:!0,filter:t,applyExclusion:applyIgnoreFilterToTag()})};return debounced([{sourceId:\\\"tags\\\",async getItems({query:e}){var t=`[tags[]search[${e.slice(1)}]]`;return o.setContext({filterToOpen:t}),filterTiddlersAsync(t,{system:!0})},getItemUrl({item:e}){return e.title},onSelect({item:e}){r(e)},templates:{header(){return lingo(\\\"Tags\\\")},item({item:e,createElement:t}){var i=()=>{r(e),o.setQuery(\\\"\\\"),o.refresh()[\\\"catch\\\"](e=>{console.error(\\\"Error in search-tags refresh\\\",e)})};return\\\"string\\\"==typeof e.caption&&\\\"\\\"!==e.caption?t(\\\"div\\\",{onclick:i},`${e.caption} (${e.title})`):t(\\\"div\\\",{onclick:i},e.title)},noResults(){return lingo(\\\"NoResult\\\")}}}])}};\"},\"$:/plugins/linonetwo/autocomplete/widget/build-in-sub-plugins/search-user-text.js\":{\"title\":\"$:/plugins/linonetwo/autocomplete/widget/build-in-sub-plugins/search-user-text.js\",\"tags\":\"$:/tags/AutoCompletePlugin\",\"type\":\"application/javascript\",\"module-type\":\"library\",\"priority\":\"15\",\"Modern.TiddlyDev#Origin\":\"widgets/build-in-sub-plugins/search-user-text.ts\",\"text\":\"\\\"use strict\\\";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__export=(e,t)=>{for(var i in t)__defProp(e,i,{get:t[i],enumerable:!0})},__copyProps=(t,i,r,o)=>{if(i&&\\\"object\\\"==typeof i||\\\"function\\\"==typeof i)for(let e of __getOwnPropNames(i))__hasOwnProp.call(t,e)||e===r||__defProp(t,e,{get:()=>i[e],enumerable:!(o=__getOwnPropDesc(i,e))||o.enumerable});return t},__toCommonJS=e=>__copyProps(__defProp({},\\\"__esModule\\\",{value:!0}),e),search_user_text_exports={},systemPrefixes=(__export(search_user_text_exports,{plugin:()=>plugin}),module.exports=__toCommonJS(search_user_text_exports),$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/System\\\")?.fields?.[\\\"command-palette-prefix\\\"]?.split(\\\" \\\")?.filter(Boolean)),filterPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Filter\\\")?.fields?.[\\\"command-palette-prefix\\\"],tagsPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Tags\\\")?.fields?.[\\\"command-palette-prefix\\\"],helpPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Help\\\")?.fields?.[\\\"command-palette-prefix\\\"];function checkIsSearchUser(e){var t=e.query[0];return!systemPrefixes?.includes(t)&&![filterPrefix,tagsPrefix,helpPrefix].includes(t)}function checkIsUnderFilter(e){return Boolean(e.state.context.filter)}var titleTextExclusionFilter=()=>$tw.wiki.getTiddlerText(\\\"$:/plugins/linonetwo/autocomplete/configs/TitleTextIgnoreFilter\\\",\\\"\\\");function debouncePromise(i,r){let o;return async function(...t){return o&&clearTimeout(o),new Promise(e=>{o=setTimeout(()=>{e(i(...t))},r)})}}var debounceDuration=Number($tw.wiki.getTiddlerText(\\\"$:/plugins/linonetwo/autocomplete/configs/DebounceDuration\\\",\\\"300\\\")),debounced=debouncePromise(async e=>Promise.resolve(e),debounceDuration),isInTidGiDesktop=\\\"undefined\\\"!=typeof document&&document?.location?.protocol?.startsWith(\\\"tidgi\\\"),tidGiWorkspaceID=window.meta?.()?.workspaceID;async function filterTiddlersAsync(e,t){var{system:i=!1,exclude:r,toTiddler:o=!0}=t;return isInTidGiDesktop&&\\\"service\\\"in window?(await window.service.wiki.callWikiIpcServerRoute(tidGiWorkspaceID,\\\"getTiddlersJSON\\\",e,r,{ignoreSyncSystemConfig:!i,toTiddler:o})).data:o?$tw.wiki.filterTiddlers(e).map(e=>$tw.wiki.getTiddler(e)?.fields).filter(Boolean):$tw.wiki.filterTiddlers(e).filter(Boolean).map(e=>({title:e}))}function getFieldsAsText(){return $tw.wiki.getTiddlerText(\\\"$:/plugins/linonetwo/autocomplete/configs/TextAlias\\\",\\\"text\\\").split(\\\" \\\").filter(Boolean).join(\\\",\\\")}var lingoBase=\\\"$:/plugins/linonetwo/autocomplete/language/\\\";function lingo(e){const t=$tw.wiki.filterTiddlers(\\\"[[$:/language]get[text]get[name]else[en-GB]]\\\")[0];return $tw.wiki.getGlobalCache(`lingo-${t}-`+e,()=>$tw.wiki.getTiddlerText(\\\"\\\"+lingoBase+t+\\\"/\\\"+e,e))}var plugin={async getSources(r){return 0===r.query.length||!checkIsSearchUser(r)||checkIsUnderFilter(r)?[]:debounced([{sourceId:\\\"text\\\",async getItems({query:e}){return\\\"\\\"===e?[]:filterTiddlersAsync(`[all[tiddlers]!is[system]] ${titleTextExclusionFilter()} :filter[has[text]get[text]!compare:string:eq[]]+[search:${getFieldsAsText()}[${e}]]`,{system:!1,exclude:[]})},getItemUrl({item:e}){return e.title},templates:{header(){return lingo(\\\"UserText\\\")},item({item:s,createElement:e,state:t}){var i=\\\"string\\\"==typeof s.caption&&\\\"\\\"!==s.caption?`${s.caption} (${s.title})`:s.title;let a=\\\"\\\";return t.query.split(\\\" \\\").filter(Boolean).forEach(e=>{var t,i,r,o,n,l=s.text.indexOf(e);-1!==l&&(i=0<(o=Math.max(0,l-30))?\\\"...\\\":\\\"\\\",r=(t=Math.min(s.text.length,l+e.length+30))<s.text.length?\\\"...\\\":\\\"\\\",o=s.text.slice(o,l),n=s.text.slice(l,l+e.length),l=s.text.slice(l+e.length,t),a+=i+o+`<mark>${n}</mark>`+l+r)}),e(\\\"div\\\",{style:\\\"display:flex;flex-direction:column;\\\",onclick:()=>{r.navigator.navigate({item:s,itemUrl:s.title,state:t})}},[e(\\\"div\\\",{style:\\\"margin-bottom:0.25em;\\\"},i),e(\\\"div\\\",{},[e(\\\"small\\\",{innerHTML:a})])])}}}])}};\"},\"$:/plugins/linonetwo/autocomplete/widget/build-in-sub-plugins/search-user-title-pinyin.js\":{\"title\":\"$:/plugins/linonetwo/autocomplete/widget/build-in-sub-plugins/search-user-title-pinyin.js\",\"tags\":\"$:/tags/AutoCompletePlugin\",\"type\":\"application/javascript\",\"module-type\":\"library\",\"priority\":\"10\",\"Modern.TiddlyDev#Origin\":\"widgets/build-in-sub-plugins/search-user-title-pinyin.ts\",\"text\":\"\\\"use strict\\\";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__export=(e,t)=>{for(var i in t)__defProp(e,i,{get:t[i],enumerable:!0})},__copyProps=(t,i,n,r)=>{if(i&&\\\"object\\\"==typeof i||\\\"function\\\"==typeof i)for(let e of __getOwnPropNames(i))__hasOwnProp.call(t,e)||e===n||__defProp(t,e,{get:()=>i[e],enumerable:!(r=__getOwnPropDesc(i,e))||r.enumerable});return t},__toCommonJS=e=>__copyProps(__defProp({},\\\"__esModule\\\",{value:!0}),e),search_user_title_pinyin_exports={},systemPrefixes=(__export(search_user_title_pinyin_exports,{plugin:()=>plugin}),module.exports=__toCommonJS(search_user_title_pinyin_exports),$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/System\\\")?.fields?.[\\\"command-palette-prefix\\\"]?.split(\\\" \\\")?.filter(Boolean)),filterPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Filter\\\")?.fields?.[\\\"command-palette-prefix\\\"],tagsPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Tags\\\")?.fields?.[\\\"command-palette-prefix\\\"],helpPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Help\\\")?.fields?.[\\\"command-palette-prefix\\\"];function checkIsSearchUser(e){var t=e.query[0];return!systemPrefixes?.includes(t)&&![filterPrefix,tagsPrefix,helpPrefix].includes(t)}function checkIsUnderFilter(e){return Boolean(e.state.context.filter)}var titleTextExclusionFilter=()=>$tw.wiki.getTiddlerText(\\\"$:/plugins/linonetwo/autocomplete/configs/TitleTextIgnoreFilter\\\",\\\"\\\");function debouncePromise(i,n){let r;return async function(...t){return r&&clearTimeout(r),new Promise(e=>{r=setTimeout(()=>{e(i(...t))},n)})}}var debounceDuration=Number($tw.wiki.getTiddlerText(\\\"$:/plugins/linonetwo/autocomplete/configs/DebounceDuration\\\",\\\"300\\\")),debounced=debouncePromise(async e=>Promise.resolve(e),debounceDuration),isInTidGiDesktop=\\\"undefined\\\"!=typeof document&&document?.location?.protocol?.startsWith(\\\"tidgi\\\"),tidGiWorkspaceID=window.meta?.()?.workspaceID;async function filterTiddlersAsync(e,t){var{system:i=!1,exclude:n,toTiddler:r=!0}=t;return isInTidGiDesktop&&\\\"service\\\"in window?(await window.service.wiki.callWikiIpcServerRoute(tidGiWorkspaceID,\\\"getTiddlersJSON\\\",e,n,{ignoreSyncSystemConfig:!i,toTiddler:r})).data:r?$tw.wiki.filterTiddlers(e).map(e=>$tw.wiki.getTiddler(e)?.fields).filter(Boolean):$tw.wiki.filterTiddlers(e).filter(Boolean).map(e=>({title:e}))}function getFieldsAsTitle(){return $tw.wiki.getTiddlerText(\\\"$:/plugins/linonetwo/autocomplete/configs/TitleAlias\\\",\\\"title caption\\\").split(\\\" \\\").filter(Boolean).join(\\\",\\\")}var lingoBase=\\\"$:/plugins/linonetwo/autocomplete/language/\\\";function lingo(e){const t=$tw.wiki.filterTiddlers(\\\"[[$:/language]get[text]get[name]else[en-GB]]\\\")[0];return $tw.wiki.getGlobalCache(`lingo-${t}-`+e,()=>$tw.wiki.getTiddlerText(\\\"\\\"+lingoBase+t+\\\"/\\\"+e,e))}var plugin={async getSources(n){return!checkIsSearchUser(n)||checkIsUnderFilter(n)||void 0===$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/pinyin-fuzzy-search/pinyin-fuzzy-search.js\\\")||$tw.utils.containsChinese?.(n.query)||0===n.query.length?[]:debounced([{sourceId:\\\"title-pinyin\\\",async getItems({query:e}){var t;return\\\"\\\"===e?[]:(t=`[all[tiddlers]!is[system]] ${titleTextExclusionFilter()} +[pinyinfuse:${getFieldsAsTitle()}[${e}]]`,n.setContext({filterToOpen:t}),filterTiddlersAsync(t,{}))},getItemUrl({item:e}){return e.title},templates:{header(){return lingo(\\\"UserTitlePinyin\\\")},item({item:e,createElement:t,state:i}){return\\\"string\\\"==typeof e.caption&&\\\"\\\"!==e.caption?t(\\\"div\\\",{onclick:()=>{n.navigator.navigate({item:e,itemUrl:e.title,state:i})}},`${e.caption} (${e.title})`):t(\\\"div\\\",{onclick:()=>{n.navigator.navigate({item:e,itemUrl:e.title,state:i})}},e.title)}}}])}};\"},\"$:/plugins/linonetwo/autocomplete/widget/build-in-sub-plugins/search-user-title.js\":{\"title\":\"$:/plugins/linonetwo/autocomplete/widget/build-in-sub-plugins/search-user-title.js\",\"tags\":\"$:/tags/AutoCompletePlugin\",\"type\":\"application/javascript\",\"module-type\":\"library\",\"priority\":\"5\",\"Modern.TiddlyDev#Origin\":\"widgets/build-in-sub-plugins/search-user-title.ts\",\"text\":\"\\\"use strict\\\";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__export=(e,t)=>{for(var i in t)__defProp(e,i,{get:t[i],enumerable:!0})},__copyProps=(t,i,o,r)=>{if(i&&\\\"object\\\"==typeof i||\\\"function\\\"==typeof i)for(let e of __getOwnPropNames(i))__hasOwnProp.call(t,e)||e===o||__defProp(t,e,{get:()=>i[e],enumerable:!(r=__getOwnPropDesc(i,e))||r.enumerable});return t},__toCommonJS=e=>__copyProps(__defProp({},\\\"__esModule\\\",{value:!0}),e),search_user_title_exports={},systemPrefixes=(__export(search_user_title_exports,{plugin:()=>plugin}),module.exports=__toCommonJS(search_user_title_exports),$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/System\\\")?.fields?.[\\\"command-palette-prefix\\\"]?.split(\\\" \\\")?.filter(Boolean)),filterPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Filter\\\")?.fields?.[\\\"command-palette-prefix\\\"],tagsPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Tags\\\")?.fields?.[\\\"command-palette-prefix\\\"],helpPrefix=$tw.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/commands/help/Help\\\")?.fields?.[\\\"command-palette-prefix\\\"];function checkIsSearchUser(e){var t=e.query[0];return!systemPrefixes?.includes(t)&&![filterPrefix,tagsPrefix,helpPrefix].includes(t)}function checkIsUnderFilter(e){return Boolean(e.state.context.filter)}var titleTextExclusionFilter=()=>$tw.wiki.getTiddlerText(\\\"$:/plugins/linonetwo/autocomplete/configs/TitleTextIgnoreFilter\\\",\\\"\\\");function debouncePromise(i,o){let r;return async function(...t){return r&&clearTimeout(r),new Promise(e=>{r=setTimeout(()=>{e(i(...t))},o)})}}var debounceDuration=Number($tw.wiki.getTiddlerText(\\\"$:/plugins/linonetwo/autocomplete/configs/DebounceDuration\\\",\\\"300\\\")),debounced=debouncePromise(async e=>Promise.resolve(e),debounceDuration),isInTidGiDesktop=\\\"undefined\\\"!=typeof document&&document?.location?.protocol?.startsWith(\\\"tidgi\\\"),tidGiWorkspaceID=window.meta?.()?.workspaceID;async function filterTiddlersAsync(e,t){var{system:i=!1,exclude:o,toTiddler:r=!0}=t;return isInTidGiDesktop&&\\\"service\\\"in window?(await window.service.wiki.callWikiIpcServerRoute(tidGiWorkspaceID,\\\"getTiddlersJSON\\\",e,o,{ignoreSyncSystemConfig:!i,toTiddler:r})).data:r?$tw.wiki.filterTiddlers(e).map(e=>$tw.wiki.getTiddler(e)?.fields).filter(Boolean):$tw.wiki.filterTiddlers(e).filter(Boolean).map(e=>({title:e}))}function getFieldsAsTitle(){return $tw.wiki.getTiddlerText(\\\"$:/plugins/linonetwo/autocomplete/configs/TitleAlias\\\",\\\"title caption\\\").split(\\\" \\\").filter(Boolean).join(\\\",\\\")}var lingoBase=\\\"$:/plugins/linonetwo/autocomplete/language/\\\";function lingo(e){const t=$tw.wiki.filterTiddlers(\\\"[[$:/language]get[text]get[name]else[en-GB]]\\\")[0];return $tw.wiki.getGlobalCache(`lingo-${t}-`+e,()=>$tw.wiki.getTiddlerText(\\\"\\\"+lingoBase+t+\\\"/\\\"+e,e))}var plugin={async getSources(o){return 0===o.query.length||!checkIsSearchUser(o)||checkIsUnderFilter(o)?[]:debounced([{sourceId:\\\"title\\\",async getItems({query:e}){var t;return\\\"\\\"===e?[]:(t=`[all[tiddlers]!is[system]] ${titleTextExclusionFilter()} +[search:${getFieldsAsTitle()}[${e}]]`,o.setContext({filterToOpen:t}),filterTiddlersAsync(t,{}))},getItemUrl({item:e}){return e.title},templates:{header(){return lingo(\\\"UserTitle\\\")},item({item:e,createElement:t,state:i}){return\\\"string\\\"==typeof e.caption&&\\\"\\\"!==e.caption?t(\\\"div\\\",{onclick:()=>{o.navigator.navigate({item:e,itemUrl:e.title,state:i})}},`${e.caption} (${e.title})`):t(\\\"div\\\",{onclick:onclick},e.title)}}}])}};\"},\"$:/plugins/linonetwo/autocomplete/widget/widget.js\":{\"title\":\"$:/plugins/linonetwo/autocomplete/widget/widget.js\",\"type\":\"application/javascript\",\"module-type\":\"widget\",\"Modern.TiddlyDev#Origin\":\"widgets/widget.ts\",\"text\":\"\\\"use strict\\\";var __create=Object.create,__defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__getProtoOf=Object.getPrototypeOf,__hasOwnProp=Object.prototype.hasOwnProperty,__esm=(e,t)=>function(){return t=e?(0,e[__getOwnPropNames(e)[0]])(e=0):t},__commonJS=(e,t)=>function(){return t||(0,e[__getOwnPropNames(e)[0]])((t={exports:{}}).exports,t),t.exports},__copyProps=(t,r,n,o)=>{if(r&&\\\"object\\\"==typeof r||\\\"function\\\"==typeof r)for(let e of __getOwnPropNames(r))__hasOwnProp.call(t,e)||e===n||__defProp(t,e,{get:()=>r[e],enumerable:!(o=__getOwnPropDesc(r,e))||o.enumerable});return t},__toESM=(e,t,r)=>(r=null!=e?__create(__getProtoOf(e)):{},__copyProps(!t&&e&&e.__esModule?r:__defProp(r,\\\"default\\\",{value:e,enumerable:!0}),e)),init_esbuild_inject=__esm({\\\"node_modules/.pnpm/tiddlywiki-plugin-dev@0.2.1_postcss@8.4.41_ts-node@10.9.2_@types+node@22.2.0_typescript@5.5.4_/node_modules/tiddlywiki-plugin-dev/dist/js/esbuild-inject.js\\\"(){}}),require_key_master=__commonJS({\\\"node_modules/.pnpm/key-master@4.1.0/node_modules/key-master/index.js\\\"(e,t){init_esbuild_inject(),t.exports=function(t,r=new Map){return{has:e=>r.has(e),get:e=>(r.has(e)||r.set(e,t(e)),r.get(e)),\\\"delete\\\":e=>r[\\\"delete\\\"](e),set:(e,t)=>{r.set(e,t)},getUnderlyingDataStructure:()=>r}}}}),require_dist=__commonJS({\\\"node_modules/.pnpm/insular-observer@0.1.1/node_modules/insular-observer/dist/index.js\\\"(e,t){init_esbuild_inject();var r=require_key_master();t.exports=(e,t)=>{const o=r(()=>[],new WeakMap);const i=new e(e=>{e.forEach(t=>{o.get(t.target).forEach(e=>e(t))})},t);return function(t,e,r){\\\"function\\\"==typeof e&&(r=e,e=void 0);const n=o.get(t);return n.push(r),i.observe(t,e),function(){var e=n.indexOf(r);if(n.splice(e,1),0===n.length)return o[\\\"delete\\\"](t),i.unobserve&&i.unobserve(t)}}}}}),require_visibility_observer=__commonJS({\\\"node_modules/.pnpm/@seznam+visibility-observer@1.1.0/node_modules/@seznam/visibility-observer/index.js\\\"(e){init_esbuild_inject();var t=e&&e.__importDefault||function(e){return e&&e.__esModule?e:{\\\"default\\\":e}},o=(Object.defineProperty(e,\\\"__esModule\\\",{value:!0}),t(require_dist())),r=t(require_key_master()),f=\\\"undefined\\\"!=typeof document?document.createElement(\\\"div\\\"):{},d=r[\\\"default\\\"](()=>r[\\\"default\\\"](()=>new Map,new WeakMap),new WeakMap);function y(e,t,r=null){var n,o,i,a=d.getUnderlyingDataStructure().get(r||f);a&&(n=a.getUnderlyingDataStructure().get(e))&&(i=n.get(o=t))&&(i.unobserve(),n[\\\"delete\\\"](o),n.size||a[\\\"delete\\\"](e))}e.observe=function(e,t,r={}){({once:a,root:u,rootMargin:o,threshold:i}=r);const n={once:!!a,root:u||f,rootMargin:function(e){var t=(\\\"number\\\"==typeof e?e+\\\"px\\\":e).trim().split(/\\\\s+/);if(4<t.length)throw new SyntaxError('Invalid root margin, expected a single number or a string containing 1 to 4 numbers suffixed by \\\"px\\\" or \\\"%\\\" and separated by whitespace: '+e);1===t.length&&t.push(t[0]);2===t.length&&t.push(t[0]);3===t.length&&t.push(t[1]);return t.join(\\\" \\\")}(void 0!==o?o:\\\"0px 0px 0px 0px\\\"),threshold:void 0!==i?i:0};var o,i,a,u,c=d.get(n.root).get(e),l=t,s=c.get(l),p=()=>y(e,t,n.root);if(s){if(a=n,u=s,a.rootMargin===u.rootMargin&&a.threshold===u.threshold&&a.once===u.once)return p;p()}return s=m(n)(e,r.once?(function(e,t){t.isIntersecting&&(y(t.target,e),e(t))}).bind(null,l):l),c.set(l,{...n,unobserve:s}),p},e.unobserve=y;var m=(()=>{const n=r[\\\"default\\\"](()=>new Map,new WeakMap);return e=>{var t=e.rootMargin+\\\";\\\"+e.threshold,r=n.get(e.root).get(t);return r||(r=o[\\\"default\\\"](IntersectionObserver,{...e,root:e.root===f?null:e.root}),n.get(e.root).set(t,r),r)}})()}}),import_widget=(init_esbuild_inject(),require(\\\"$:/core/modules/widgets/widget.js\\\"));function createRef(e){return{current:e}}function debounce(n,o){var i=void 0;return function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];i&&clearTimeout(i),i=setTimeout(function(){return n.apply(void 0,t)},o)}}function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_unsupportedIterableToArray(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError(\\\"Invalid attempt to destructure non-iterable instance.\\\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\\\")}function _unsupportedIterableToArray(e,t){var r;if(e)return\\\"string\\\"==typeof e?_arrayLikeToArray(e,t):\\\"Map\\\"===(r=\\\"Object\\\"===(r=Object.prototype.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:r)||\\\"Set\\\"===r?Array.from(e):\\\"Arguments\\\"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_arrayLikeToArray(e,t):void 0}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function _iterableToArrayLimit(e,t){var r=null==e?null:\\\"undefined\\\"!=typeof Symbol&&e[Symbol.iterator]||e[\\\"@@iterator\\\"];if(null!=r){var n,o,i,a,u=[],c=!0,l=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(u.push(n.value),u.length!==t);c=!0);}catch(s){l=!0,o=s}finally{try{if(!c&&null!=r[\\\"return\\\"]&&(a=r[\\\"return\\\"](),Object(a)!==a))return}finally{if(l)throw o}}return u}}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _typeof(e){return(_typeof=\\\"function\\\"==typeof Symbol&&\\\"symbol\\\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\\\"function\\\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\\\"symbol\\\":typeof e})(e)}function decycle(e){var r,t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:new Set;return e&&\\\"object\\\"===_typeof(e)?t.has(e)?\\\"[Circular]\\\":(r=t.add(e),Array.isArray(e)?e.map(function(e){return decycle(e,r)}):Object.fromEntries(Object.entries(e).map(function(e){var t=_slicedToArray(e,2);return[t[0],decycle(t[1],r)]}))):e}function flatten(e){return e.reduce(function(e,t){return e.concat(t)},[])}init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject();var autocompleteId=0;function generateAutocompleteId(){return\\\"autocomplete-\\\".concat(autocompleteId++)}function getAttributeValueByPath(e,t){return t.reduce(function(e,t){return e&&e[t]},e)}function getItemsCount(e){return 0===e.collections.length?0:e.collections.reduce(function(e,t){return e+t.items.length},0)}function invariant(e,t){if(!e)throw new Error(\\\"[Autocomplete] \\\".concat(\\\"function\\\"==typeof t?t():t))}function isPrimitive(e){return e!==Object(e)}function isEqual(e,t){if(e!==t){if(isPrimitive(e)||isPrimitive(t)||\\\"function\\\"==typeof e||\\\"function\\\"==typeof t)return e===t;if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var r=0,n=Object.keys(e);r<n.length;r++){var o=n[r];if(!(o in t))return!1;if(!isEqual(e[o],t[o]))return!1}}return!0}init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject();var noop=function noop2(){};function safelyRunOnBrowser(e){if(\\\"undefined\\\"!=typeof window)return e({window:window})}init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject();var version=\\\"1.17.4\\\",userAgents=[{segment:\\\"autocomplete-core\\\",version:version}],warnCache=(init_esbuild_inject(),{current:{}});function warn(e,t){var r;e||(r=t.trim(),warnCache.current[r])||(warnCache.current[r]=!0,console.warn(\\\"[Autocomplete] \\\".concat(r)))}function createClickedEvent(e){var t=e.item,r=e.items,r=void 0===r?[]:r;return{index:t.__autocomplete_indexName,items:[t],positions:[1+r.findIndex(function(e){return e.objectID===t.objectID})],queryID:t.__autocomplete_queryID,algoliaSource:[\\\"autocomplete\\\"]}}function _slicedToArray2(e,t){return _arrayWithHoles2(e)||_iterableToArrayLimit2(e,t)||_unsupportedIterableToArray2(e,t)||_nonIterableRest2()}function _nonIterableRest2(){throw new TypeError(\\\"Invalid attempt to destructure non-iterable instance.\\\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\\\")}function _unsupportedIterableToArray2(e,t){var r;if(e)return\\\"string\\\"==typeof e?_arrayLikeToArray2(e,t):\\\"Map\\\"===(r=\\\"Object\\\"===(r=Object.prototype.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:r)||\\\"Set\\\"===r?Array.from(e):\\\"Arguments\\\"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_arrayLikeToArray2(e,t):void 0}function _arrayLikeToArray2(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function _iterableToArrayLimit2(e,t){var r=null==e?null:\\\"undefined\\\"!=typeof Symbol&&e[Symbol.iterator]||e[\\\"@@iterator\\\"];if(null!=r){var n,o,i,a,u=[],c=!0,l=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(u.push(n.value),u.length!==t);c=!0);}catch(s){l=!0,o=s}finally{try{if(!c&&null!=r[\\\"return\\\"]&&(a=r[\\\"return\\\"](),Object(a)!==a))return}finally{if(l)throw o}}return u}}function _arrayWithHoles2(e){if(Array.isArray(e))return e}function isModernInsightsClient(e){var t=_slicedToArray2((e.version||\\\"\\\").split(\\\".\\\").map(Number),2),r=t[0],t=t[1];return 3<=r||2===r&&4<=t||1===r&&10<=t}init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject();var _excluded=[\\\"items\\\"],_excluded2=[\\\"items\\\"];function _typeof2(e){return(_typeof2=\\\"function\\\"==typeof Symbol&&\\\"symbol\\\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\\\"function\\\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\\\"symbol\\\":typeof e})(e)}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray3(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError(\\\"Invalid attempt to spread non-iterable instance.\\\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\\\")}function _unsupportedIterableToArray3(e,t){var r;if(e)return\\\"string\\\"==typeof e?_arrayLikeToArray3(e,t):\\\"Map\\\"===(r=\\\"Object\\\"===(r=Object.prototype.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:r)||\\\"Set\\\"===r?Array.from(e):\\\"Arguments\\\"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_arrayLikeToArray3(e,t):void 0}function _iterableToArray(e){if(\\\"undefined\\\"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e[\\\"@@iterator\\\"])return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray3(e)}function _arrayLikeToArray3(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function _objectWithoutProperties(e,t){if(null==e)return{};var r,n=_objectWithoutPropertiesLoose(e,t);if(Object.getOwnPropertySymbols)for(var o=Object.getOwnPropertySymbols(e),i=0;i<o.length;i++)r=o[i],0<=t.indexOf(r)||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r]);return n}function _objectWithoutPropertiesLoose(e,t){if(null==e)return{};for(var r,n={},o=Object.keys(e),i=0;i<o.length;i++)r=o[i],0<=t.indexOf(r)||(n[r]=e[r]);return n}function ownKeys(t,e){var r,n=Object.keys(t);return Object.getOwnPropertySymbols&&(r=Object.getOwnPropertySymbols(t),e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)),n}function _objectSpread(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ownKeys(Object(r),!0).forEach(function(e){_defineProperty(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function _defineProperty(e,t,r){return(t=_toPropertyKey(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _toPropertyKey(e){var t=_toPrimitive(e,\\\"string\\\");return\\\"symbol\\\"===_typeof2(t)?t:String(t)}function _toPrimitive(e,t){if(\\\"object\\\"!==_typeof2(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0===r)return(\\\"string\\\"===t?String:Number)(e);r=r.call(e,t||\\\"default\\\");if(\\\"object\\\"!==_typeof2(r))return r;throw new TypeError(\\\"@@toPrimitive must return a primitive value.\\\")}function chunk(e){for(var t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:20,r=[],n=0;n<e.objectIDs.length;n+=t)r.push(_objectSpread(_objectSpread({},e),{},{objectIDs:e.objectIDs.slice(n,n+t)}));return r}function mapToInsightsParamsApi(e){return e.map(function(e){var t=e.items,r=_objectWithoutProperties(e,_excluded);return _objectSpread(_objectSpread({},r),{},{objectIDs:(null==t?void 0:t.map(function(e){return e.objectID}))||r.objectIDs})})}function createSearchInsightsApi(o){var i=isModernInsightsClient(o);function n(e,t,r){var n;i&&void 0!==r?(n={\\\"X-Algolia-Application-Id\\\":(n=r[0].__autocomplete_algoliaCredentials).appId,\\\"X-Algolia-API-Key\\\":n.apiKey},o.apply(void 0,[e].concat(_toConsumableArray(t),[{headers:n}]))):o.apply(void 0,[e].concat(_toConsumableArray(t)))}return{init:function(e,t){o(\\\"init\\\",{appId:e,apiKey:t})},setAuthenticatedUserToken:function(e){o(\\\"setAuthenticatedUserToken\\\",e)},setUserToken:function(e){o(\\\"setUserToken\\\",e)},clickedObjectIDsAfterSearch:function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];0<t.length&&n(\\\"clickedObjectIDsAfterSearch\\\",mapToInsightsParamsApi(t),t[0].items)},clickedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];0<t.length&&n(\\\"clickedObjectIDs\\\",mapToInsightsParamsApi(t),t[0].items)},clickedFilters:function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];0<t.length&&o.apply(void 0,[\\\"clickedFilters\\\"].concat(t))},convertedObjectIDsAfterSearch:function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];0<t.length&&n(\\\"convertedObjectIDsAfterSearch\\\",mapToInsightsParamsApi(t),t[0].items)},convertedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];0<t.length&&n(\\\"convertedObjectIDs\\\",mapToInsightsParamsApi(t),t[0].items)},convertedFilters:function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];0<t.length&&o.apply(void 0,[\\\"convertedFilters\\\"].concat(t))},viewedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];0<t.length&&t.reduce(function(e,t){var r=t.items,n=_objectWithoutProperties(t,_excluded2);return[].concat(_toConsumableArray(e),_toConsumableArray(chunk(_objectSpread(_objectSpread({},n),{},{objectIDs:(null==r?void 0:r.map(function(e){return e.objectID}))||n.objectIDs})).map(function(e){return{items:r,payload:e}})))},[]).forEach(function(e){var t=e.items;return n(\\\"viewedObjectIDs\\\",[e.payload],t)})},viewedFilters:function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];0<t.length&&o.apply(void 0,[\\\"viewedFilters\\\"].concat(t))}}}function createViewedEvents(e){var t=e.items.reduce(function(e,t){var r;return e[t.__autocomplete_indexName]=(null!=(r=e[t.__autocomplete_indexName])?r:[]).concat(t),e},{});return Object.keys(t).map(function(e){return{index:e,items:t[e],algoliaSource:[\\\"autocomplete\\\"]}})}function isAlgoliaInsightsHit(e){return e.objectID&&e.__autocomplete_indexName&&e.__autocomplete_queryID}function _typeof3(e){return(_typeof3=\\\"function\\\"==typeof Symbol&&\\\"symbol\\\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\\\"function\\\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\\\"symbol\\\":typeof e})(e)}function _toConsumableArray2(e){return _arrayWithoutHoles2(e)||_iterableToArray2(e)||_unsupportedIterableToArray4(e)||_nonIterableSpread2()}function _nonIterableSpread2(){throw new TypeError(\\\"Invalid attempt to spread non-iterable instance.\\\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\\\")}function _unsupportedIterableToArray4(e,t){var r;if(e)return\\\"string\\\"==typeof e?_arrayLikeToArray4(e,t):\\\"Map\\\"===(r=\\\"Object\\\"===(r=Object.prototype.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:r)||\\\"Set\\\"===r?Array.from(e):\\\"Arguments\\\"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_arrayLikeToArray4(e,t):void 0}function _iterableToArray2(e){if(\\\"undefined\\\"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e[\\\"@@iterator\\\"])return Array.from(e)}function _arrayWithoutHoles2(e){if(Array.isArray(e))return _arrayLikeToArray4(e)}function _arrayLikeToArray4(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function ownKeys2(t,e){var r,n=Object.keys(t);return Object.getOwnPropertySymbols&&(r=Object.getOwnPropertySymbols(t),e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)),n}function _objectSpread2(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ownKeys2(Object(r),!0).forEach(function(e){_defineProperty2(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ownKeys2(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function _defineProperty2(e,t,r){return(t=_toPropertyKey2(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _toPropertyKey2(e){var t=_toPrimitive2(e,\\\"string\\\");return\\\"symbol\\\"===_typeof3(t)?t:String(t)}function _toPrimitive2(e,t){if(\\\"object\\\"!==_typeof3(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0===r)return(\\\"string\\\"===t?String:Number)(e);r=r.call(e,t||\\\"default\\\");if(\\\"object\\\"!==_typeof3(r))return r;throw new TypeError(\\\"@@toPrimitive must return a primitive value.\\\")}init_esbuild_inject(),init_esbuild_inject();var VIEW_EVENT_DELAY=400,ALGOLIA_INSIGHTS_VERSION=\\\"2.15.0\\\",ALGOLIA_INSIGHTS_SRC=\\\"https://cdn.jsdelivr.net/npm/search-insights@\\\".concat(ALGOLIA_INSIGHTS_VERSION,\\\"/dist/search-insights.min.js\\\"),sendViewedObjectIDs=debounce(function(e){var t=e.onItemsChange,r=e.items,n=e.insights,o=e.state;t({insights:n,insightsEvents:createViewedEvents({items:r}).map(function(e){return _objectSpread2({eventName:\\\"Items Viewed\\\"},e)}),state:o})},VIEW_EVENT_DELAY);function createAlgoliaInsightsPlugin(e){var t=getOptions(e),r=t.insightsClient,n=t.insightsInitParams,o=t.onItemsChange,a=t.onSelect,u=t.onActive,c=t.__autocomplete_clickAnalytics,l=r;if(r||safelyRunOnBrowser(function(e){var n=e.window,o=n.AlgoliaAnalyticsObject||\\\"aa\\\";(l=\\\"string\\\"==typeof o?n[o]:l)||(n.AlgoliaAnalyticsObject=o,n[o]||(n[o]=function(){n[o].queue||(n[o].queue=[]);for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];n[o].queue.push(t)}),n[o].version=ALGOLIA_INSIGHTS_VERSION,l=n[o],loadInsights(n))}),!l)return{};n&&l(\\\"init\\\",_objectSpread2({partial:!0},n));var s=createSearchInsightsApi(l),i=createRef([]),p=debounce(function(e){var t,r=e.state;r.isOpen&&(t=r.collections.reduce(function(e,t){return[].concat(_toConsumableArray2(e),_toConsumableArray2(t.items))},[]).filter(isAlgoliaInsightsHit),isEqual(i.current.map(function(e){return e.objectID}),t.map(function(e){return e.objectID}))||0<(i.current=t).length&&sendViewedObjectIDs({onItemsChange:o,items:t,insights:s,state:r}))},0);return{name:\\\"aa.algoliaInsightsPlugin\\\",subscribe:function(e){var t=e.setContext,r=e.onSelect,n=e.onActive,o=!1;function i(e){t({algoliaInsightsPlugin:{__algoliaSearchParameters:_objectSpread2(_objectSpread2({},c?{clickAnalytics:!0}:{}),e?{userToken:normalizeUserToken(e)}:{}),insights:s}})}l(\\\"addAlgoliaAgent\\\",\\\"insights-plugin\\\"),i(),l(\\\"onUserTokenChange\\\",function(e){o||i(e)}),l(\\\"getUserToken\\\",null,function(e,t){o||i(t)}),l(\\\"onAuthenticatedUserTokenChange\\\",function(e){e?(o=!0,i(e)):(o=!1,l(\\\"getUserToken\\\",null,function(e,t){return i(t)}))}),l(\\\"getAuthenticatedUserToken\\\",null,function(e,t){t&&(o=!0,i(t))}),r(function(e){var t=e.item,r=e.state,n=e.event,o=e.source;isAlgoliaInsightsHit(t)&&a({state:r,event:n,insights:s,item:t,insightsEvents:[_objectSpread2({eventName:\\\"Item Selected\\\"},createClickedEvent({item:t,items:o.getItems().filter(isAlgoliaInsightsHit)}))]})}),n(function(e){var t=e.item,r=e.source,n=e.state,o=e.event;isAlgoliaInsightsHit(t)&&u({state:n,event:o,insights:s,item:t,insightsEvents:[_objectSpread2({eventName:\\\"Item Active\\\"},createClickedEvent({item:t,items:r.getItems().filter(isAlgoliaInsightsHit)}))]})})},onStateChange:function(e){var t=e.state;p({state:t})},__autocomplete_pluginOptions:e}}function getAlgoliaSources(){var e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:[],t=1<arguments.length?arguments[1]:void 0;return[].concat(_toConsumableArray2(e),[\\\"autocomplete-internal\\\"],_toConsumableArray2(null!=(e=t.algoliaInsightsPlugin)&&e.__automaticInsights?[\\\"autocomplete-automatic\\\"]:[]))}function getOptions(e){return _objectSpread2({onItemsChange:function(e){var t=e.insights,r=e.insightsEvents,n=e.state;t.viewedObjectIDs.apply(t,_toConsumableArray2(r.map(function(e){return _objectSpread2(_objectSpread2({},e),{},{algoliaSource:getAlgoliaSources(e.algoliaSource,n.context)})})))},onSelect:function(e){var t=e.insights,r=e.insightsEvents,n=e.state;t.clickedObjectIDsAfterSearch.apply(t,_toConsumableArray2(r.map(function(e){return _objectSpread2(_objectSpread2({},e),{},{algoliaSource:getAlgoliaSources(e.algoliaSource,n.context)})})))},onActive:noop,__autocomplete_clickAnalytics:!0},e)}function loadInsights(e){var t=\\\"[Autocomplete]: Could not load search-insights.js. Please load it manually following https://alg.li/insights-autocomplete\\\";try{var r=e.document.createElement(\\\"script\\\");r[\\\"async\\\"]=!0,r.src=ALGOLIA_INSIGHTS_SRC,r.onerror=function(){console.error(t)},document.body.appendChild(r)}catch(n){console.error(t)}}function normalizeUserToken(e){return\\\"number\\\"==typeof e?e.toString():e}function checkOptions(e){warn(!e.debug,\\\"The `debug` option is meant for development debugging and should not be used in production.\\\")}function createInternalCancelablePromise(r,e){var n=e;return{then:function(e,t){return createInternalCancelablePromise(r.then(createCallback(e,n,r),createCallback(t,n,r)),n)},\\\"catch\\\":function(e){return createInternalCancelablePromise(r[\\\"catch\\\"](createCallback(e,n,r)),n)},\\\"finally\\\":function(e){return e&&n.onCancelList.push(e),createInternalCancelablePromise(r[\\\"finally\\\"](createCallback(e&&function(){return n.onCancelList=[],e()},n,r)),n)},cancel:function(){n.isCanceled=!0;var e=n.onCancelList;n.onCancelList=[],e.forEach(function(e){e()})},isCanceled:function(){return!0===n.isCanceled}}}function createCancelablePromise(r){return createInternalCancelablePromise(new Promise(function(e,t){return r(e,t)}),{isCanceled:!1,onCancelList:[]})}function cancelable(e){return createInternalCancelablePromise(e,{isCanceled:!1,onCancelList:[]})}function createCallback(t,r,e){return t?function(e){return r.isCanceled?e:t(e)}:e}function createCancelablePromiseList(){var e=[];return{add:function(t){return e.push(t),t[\\\"finally\\\"](function(){e=e.filter(function(e){return e!==t})})},cancelAll:function(){e.forEach(function(e){return e.cancel()})},isEmpty:function(){return 0===e.length}}}function createConcurrentSafePromise(){var r=-1,n=-1,o=void 0;return function(e){var t=++r;return Promise.resolve(e).then(function(e){return o&&t<n?o:(n=t,o=e)})}}function getNextActiveItemId(e,t,r,n){var o;return r?e<0&&(null===t||null!==n&&0===t)?r+e:(o=(null===t?-1:t)+e)<=-1||r<=o?null===n?null:0:o:null}function ownKeys3(t,e){var r,n=Object.keys(t);return Object.getOwnPropertySymbols&&(r=Object.getOwnPropertySymbols(t),e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)),n}function _objectSpread3(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ownKeys3(Object(r),!0).forEach(function(e){_defineProperty3(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ownKeys3(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function _defineProperty3(e,t,r){return(t=_toPropertyKey3(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _toPropertyKey3(e){var t=_toPrimitive3(e,\\\"string\\\");return\\\"symbol\\\"===_typeof4(t)?t:String(t)}function _toPrimitive3(e,t){if(\\\"object\\\"!==_typeof4(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0===r)return(\\\"string\\\"===t?String:Number)(e);r=r.call(e,t||\\\"default\\\");if(\\\"object\\\"!==_typeof4(r))return r;throw new TypeError(\\\"@@toPrimitive must return a primitive value.\\\")}function _typeof4(e){return(_typeof4=\\\"function\\\"==typeof Symbol&&\\\"symbol\\\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\\\"function\\\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\\\"symbol\\\":typeof e})(e)}function getNormalizedSources(e,t){var n=[];return Promise.resolve(e(t)).then(function(e){return invariant(Array.isArray(e),function(){return\\\"The `getSources` function must return an array of sources but returned type \\\".concat(JSON.stringify(_typeof4(e)),\\\":\\\\n\\\\n\\\").concat(JSON.stringify(decycle(e),null,2))}),Promise.all(e.filter(function(e){return Boolean(e)}).map(function(e){if(invariant(\\\"string\\\"==typeof e.sourceId,\\\"A source must provide a `sourceId` string.\\\"),n.includes(e.sourceId))throw new Error(\\\"[Autocomplete] The `sourceId` \\\".concat(JSON.stringify(e.sourceId),\\\" is not unique.\\\"));n.push(e.sourceId);var t={getItemInputValue:function(e){return e.state.query},getItemUrl:function(){},onSelect:function(e){(0,e.setIsOpen)(!1)},onActive:noop,onResolve:noop},r=(Object.keys(t).forEach(function(e){t[e].__default=!0}),_objectSpread3(_objectSpread3({},t),e));return Promise.resolve(r)}))})}function getCollectionFromActiveItemId(r){var e=r.collections.map(function(e){return e.items.length}).reduce(function(e,t,r){var n=e[r-1]||0;return e.push(n+t),e},[]).reduce(function(e,t){return t<=r.activeItemId?e+1:e},0);return r.collections[e]}function getRelativeActiveItemId(e){for(var t=e.state,r=e.collection,n=!1,o=0,i=0;!1===n;){var a=t.collections[o];if(a===r){n=!0;break}i+=a.items.length,o++}return t.activeItemId-i}function getActiveItem(e){var t,r=getCollectionFromActiveItemId(e);return r?{item:t=r.items[getRelativeActiveItemId({state:e,collection:r})],itemInputValue:(r=r.source).getItemInputValue({item:t,state:e}),itemUrl:r.getItemUrl({item:t,state:e}),source:r}:null}function getAutocompleteElementId(e,t,r){return[e,null==r?void 0:r.sourceId,t].filter(Boolean).join(\\\"-\\\").replace(/\\\\s/g,\\\"\\\")}function isOrContainsNode(e,t){return e===t||e.contains(t)}init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject(),createCancelablePromise.resolve=function(e){return cancelable(Promise.resolve(e))},createCancelablePromise.reject=function(e){return cancelable(Promise.reject(e))},init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject();var regex=/((gt|sm)-|galaxy nexus)|samsung[- ]|samsungbrowser/i;function isSamsung(e){return Boolean(e&&e.match(regex))}function mapToAlgoliaResponse(e){return{results:e,hits:e.map(function(e){return e.hits}).filter(Boolean),facetHits:e.map(function(e){var t;return null==(t=e.facetHits)?void 0:t.map(function(e){return{label:e.value,count:e.count,_highlightResult:{label:{value:e.highlighted}}}})}).filter(Boolean)}}function getNativeEvent(e){return e.nativeEvent||e}function _typeof5(e){return(_typeof5=\\\"function\\\"==typeof Symbol&&\\\"symbol\\\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\\\"function\\\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\\\"symbol\\\":typeof e})(e)}function ownKeys4(t,e){var r,n=Object.keys(t);return Object.getOwnPropertySymbols&&(r=Object.getOwnPropertySymbols(t),e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)),n}function _objectSpread4(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ownKeys4(Object(r),!0).forEach(function(e){_defineProperty4(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ownKeys4(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function _defineProperty4(e,t,r){return(t=_toPropertyKey4(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _toPropertyKey4(e){var t=_toPrimitive4(e,\\\"string\\\");return\\\"symbol\\\"===_typeof5(t)?t:String(t)}function _toPrimitive4(e,t){if(\\\"object\\\"!==_typeof5(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0===r)return(\\\"string\\\"===t?String:Number)(e);r=r.call(e,t||\\\"default\\\");if(\\\"object\\\"!==_typeof5(r))return r;throw new TypeError(\\\"@@toPrimitive must return a primitive value.\\\")}function createStore(n,o,i){var a=o.initialState;return{getState:function(){return a},dispatch:function(e,t){var r=_objectSpread4({},a);a=n(a,{type:e,props:o,payload:t}),i({state:a,prevState:r})},pendingRequests:createCancelablePromiseList()}}function _typeof6(e){return(_typeof6=\\\"function\\\"==typeof Symbol&&\\\"symbol\\\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\\\"function\\\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\\\"symbol\\\":typeof e})(e)}function ownKeys5(t,e){var r,n=Object.keys(t);return Object.getOwnPropertySymbols&&(r=Object.getOwnPropertySymbols(t),e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)),n}function _objectSpread5(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ownKeys5(Object(r),!0).forEach(function(e){_defineProperty5(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ownKeys5(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function _defineProperty5(e,t,r){return(t=_toPropertyKey5(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _toPropertyKey5(e){var t=_toPrimitive5(e,\\\"string\\\");return\\\"symbol\\\"===_typeof6(t)?t:String(t)}function _toPrimitive5(e,t){if(\\\"object\\\"!==_typeof6(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0===r)return(\\\"string\\\"===t?String:Number)(e);r=r.call(e,t||\\\"default\\\");if(\\\"object\\\"!==_typeof6(r))return r;throw new TypeError(\\\"@@toPrimitive must return a primitive value.\\\")}function getAutocompleteSetters(e){var n=e.store;return{setActiveItemId:function(e){n.dispatch(\\\"setActiveItemId\\\",e)},setQuery:function(e){n.dispatch(\\\"setQuery\\\",e)},setCollections:function(e){var t=0,r=e.map(function(e){return _objectSpread5(_objectSpread5({},e),{},{items:flatten(e.items).map(function(e){return _objectSpread5(_objectSpread5({},e),{},{__autocomplete_id:t++})})})});n.dispatch(\\\"setCollections\\\",r)},setIsOpen:function(e){n.dispatch(\\\"setIsOpen\\\",e)},setStatus:function(e){n.dispatch(\\\"setStatus\\\",e)},setContext:function(e){n.dispatch(\\\"setContext\\\",e)}}}function _typeof7(e){return(_typeof7=\\\"function\\\"==typeof Symbol&&\\\"symbol\\\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\\\"function\\\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\\\"symbol\\\":typeof e})(e)}function _toConsumableArray3(e){return _arrayWithoutHoles3(e)||_iterableToArray3(e)||_unsupportedIterableToArray5(e)||_nonIterableSpread3()}function _nonIterableSpread3(){throw new TypeError(\\\"Invalid attempt to spread non-iterable instance.\\\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\\\")}function _unsupportedIterableToArray5(e,t){var r;if(e)return\\\"string\\\"==typeof e?_arrayLikeToArray5(e,t):\\\"Map\\\"===(r=\\\"Object\\\"===(r=Object.prototype.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:r)||\\\"Set\\\"===r?Array.from(e):\\\"Arguments\\\"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_arrayLikeToArray5(e,t):void 0}function _iterableToArray3(e){if(\\\"undefined\\\"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e[\\\"@@iterator\\\"])return Array.from(e)}function _arrayWithoutHoles3(e){if(Array.isArray(e))return _arrayLikeToArray5(e)}function _arrayLikeToArray5(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function ownKeys6(t,e){var r,n=Object.keys(t);return Object.getOwnPropertySymbols&&(r=Object.getOwnPropertySymbols(t),e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)),n}function _objectSpread6(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ownKeys6(Object(r),!0).forEach(function(e){_defineProperty6(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ownKeys6(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function _defineProperty6(e,t,r){return(t=_toPropertyKey6(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _toPropertyKey6(e){var t=_toPrimitive6(e,\\\"string\\\");return\\\"symbol\\\"===_typeof7(t)?t:String(t)}function _toPrimitive6(e,t){if(\\\"object\\\"!==_typeof7(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0===r)return(\\\"string\\\"===t?String:Number)(e);r=r.call(e,t||\\\"default\\\");if(\\\"object\\\"!==_typeof7(r))return r;throw new TypeError(\\\"@@toPrimitive must return a primitive value.\\\")}function getDefaultProps(n,o){var e,r=\\\"undefined\\\"!=typeof window?window:{},i=n.plugins||[];return _objectSpread6(_objectSpread6({debug:!1,openOnFocus:!1,enterKeyHint:void 0,ignoreCompositionEvents:!1,placeholder:\\\"\\\",autoFocus:!1,defaultActiveItemId:null,stallThreshold:300,insights:void 0,environment:r,shouldPanelOpen:function(e){return 0<getItemsCount(e.state)},reshape:function(e){return e.sources}},n),{},{id:null!=(e=n.id)?e:generateAutocompleteId(),plugins:i,initialState:_objectSpread6({activeItemId:null,query:\\\"\\\",completion:null,collections:[],isOpen:!1,status:\\\"idle\\\",context:{}},n.initialState),onStateChange:function(r){var e;null!=(e=n.onStateChange)&&e.call(n,r),i.forEach(function(e){var t;return null==(t=e.onStateChange)?void 0:t.call(e,r)})},onSubmit:function(r){var e;null!=(e=n.onSubmit)&&e.call(n,r),i.forEach(function(e){var t;return null==(t=e.onSubmit)?void 0:t.call(e,r)})},onReset:function(r){var e;null!=(e=n.onReset)&&e.call(n,r),i.forEach(function(e){var t;return null==(t=e.onReset)?void 0:t.call(e,r)})},getSources:function(t){return Promise.all([].concat(_toConsumableArray3(i.map(function(e){return e.getSources})),[n.getSources]).filter(Boolean).map(function(e){return getNormalizedSources(e,t)})).then(function(e){return flatten(e)}).then(function(e){return e.map(function(e){return _objectSpread6(_objectSpread6({},e),{},{onSelect:function(r){e.onSelect(r),o.forEach(function(e){var t;return null==(t=e.onSelect)?void 0:t.call(e,r)})},onActive:function(r){e.onActive(r),o.forEach(function(e){var t;return null==(t=e.onActive)?void 0:t.call(e,r)})},onResolve:function(r){e.onResolve(r),o.forEach(function(e){var t;return null==(t=e.onResolve)?void 0:t.call(e,r)})}})})})},navigator:_objectSpread6({navigate:function(e){var t=e.itemUrl;r.location.assign(t)},navigateNewTab:function(e){var t=e.itemUrl,t=r.open(t,\\\"_blank\\\",\\\"noopener\\\");null!=t&&t.focus()},navigateNewWindow:function(e){var t=e.itemUrl;r.open(t,\\\"_blank\\\",\\\"noopener\\\")}},n.navigator)})}function _typeof8(e){return(_typeof8=\\\"function\\\"==typeof Symbol&&\\\"symbol\\\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\\\"function\\\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\\\"symbol\\\":typeof e})(e)}function ownKeys7(t,e){var r,n=Object.keys(t);return Object.getOwnPropertySymbols&&(r=Object.getOwnPropertySymbols(t),e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)),n}function _objectSpread7(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ownKeys7(Object(r),!0).forEach(function(e){_defineProperty7(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ownKeys7(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function _defineProperty7(e,t,r){return(t=_toPropertyKey7(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _toPropertyKey7(e){var t=_toPrimitive7(e,\\\"string\\\");return\\\"symbol\\\"===_typeof8(t)?t:String(t)}function _toPrimitive7(e,t){if(\\\"object\\\"!==_typeof8(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0===r)return(\\\"string\\\"===t?String:Number)(e);r=r.call(e,t||\\\"default\\\");if(\\\"object\\\"!==_typeof8(r))return r;throw new TypeError(\\\"@@toPrimitive must return a primitive value.\\\")}function reshape(e){var t=e.collections,r=e.props,n=e.state,t=t.reduce(function(e,t){return _objectSpread7(_objectSpread7({},e),{},_defineProperty7({},t.source.sourceId,_objectSpread7(_objectSpread7({},t.source),{},{getItems:function(){return flatten(t.items)}})))},{}),t=r.plugins.reduce(function(e,t){return t.reshape?t.reshape(e):e},{sourcesBySourceId:t,state:n}).sourcesBySourceId;return flatten(r.reshape({sourcesBySourceId:t,sources:Object.values(t),state:n})).filter(Boolean).map(function(e){return{source:e,items:e.getItems()}})}function _typeof9(e){return(_typeof9=\\\"function\\\"==typeof Symbol&&\\\"symbol\\\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\\\"function\\\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\\\"symbol\\\":typeof e})(e)}function ownKeys8(t,e){var r,n=Object.keys(t);return Object.getOwnPropertySymbols&&(r=Object.getOwnPropertySymbols(t),e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)),n}function _objectSpread8(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ownKeys8(Object(r),!0).forEach(function(e){_defineProperty8(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ownKeys8(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function _defineProperty8(e,t,r){return(t=_toPropertyKey8(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _toPropertyKey8(e){var t=_toPrimitive8(e,\\\"string\\\");return\\\"symbol\\\"===_typeof9(t)?t:String(t)}function _toPrimitive8(e,t){if(\\\"object\\\"!==_typeof9(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0===r)return(\\\"string\\\"===t?String:Number)(e);r=r.call(e,t||\\\"default\\\");if(\\\"object\\\"!==_typeof9(r))return r;throw new TypeError(\\\"@@toPrimitive must return a primitive value.\\\")}function _toConsumableArray4(e){return _arrayWithoutHoles4(e)||_iterableToArray4(e)||_unsupportedIterableToArray6(e)||_nonIterableSpread4()}function _nonIterableSpread4(){throw new TypeError(\\\"Invalid attempt to spread non-iterable instance.\\\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\\\")}function _unsupportedIterableToArray6(e,t){var r;if(e)return\\\"string\\\"==typeof e?_arrayLikeToArray6(e,t):\\\"Map\\\"===(r=\\\"Object\\\"===(r=Object.prototype.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:r)||\\\"Set\\\"===r?Array.from(e):\\\"Arguments\\\"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_arrayLikeToArray6(e,t):void 0}function _iterableToArray4(e){if(\\\"undefined\\\"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e[\\\"@@iterator\\\"])return Array.from(e)}function _arrayWithoutHoles4(e){if(Array.isArray(e))return _arrayLikeToArray6(e)}function _arrayLikeToArray6(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function isDescription(e){return Boolean(e.execute)}function isRequesterDescription(e){return Boolean(null==e?void 0:e.execute)}function preResolve(t,r,n){var o;return isRequesterDescription(t)?(o=\\\"algolia\\\"===t.requesterId?Object.assign.apply(Object,[{}].concat(_toConsumableArray4(Object.keys(n.context).map(function(e){var t;return null==(t=n.context[e])?void 0:t.__algoliaSearchParameters})))):{},_objectSpread8(_objectSpread8({},t),{},{requests:t.queries.map(function(e){return{query:\\\"algolia\\\"===t.requesterId?_objectSpread8(_objectSpread8({},e),{},{params:_objectSpread8(_objectSpread8({},o),e.params)}):e,sourceId:r,transformResponse:t.transformResponse}})})):{items:t,sourceId:r}}function resolve(e){var t=e.reduce(function(e,t){var r,n,o,i,a;return isDescription(t)?(r=t.searchClient,n=t.execute,o=t.requesterId,i=t.requests,(a=e.find(function(e){return isDescription(t)&&isDescription(e)&&e.searchClient===r&&Boolean(o)&&e.requesterId===o}))?(a=a.items).push.apply(a,_toConsumableArray4(i)):e.push({execute:n,requesterId:o,items:i,searchClient:r})):e.push(t),e},[]).map(function(e){var t,r;return isDescription(e)?(t=e.execute,r=e.items,t({searchClient:e.searchClient,requests:r})):Promise.resolve(e)});return Promise.all(t).then(function(e){return flatten(e)})}function postResolve(o,e,i){return e.map(function(t){var e=o.filter(function(e){return e.sourceId===t.sourceId}),r=e.map(function(e){return e.items}),e=e[0].transformResponse,n=e?e(mapToAlgoliaResponse(r)):r;return t.onResolve({source:t,results:r,items:n,state:i.getState()}),invariant(Array.isArray(n),function(){return'The `getItems` function from source \\\"'.concat(t.sourceId,'\\\" must return an array of items but returned type ').concat(JSON.stringify(_typeof9(n)),\\\":\\\\n\\\\n\\\").concat(JSON.stringify(decycle(n),null,2),\\\".\\\\n\\\\nSee: https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/sources/#param-getitems\\\")}),invariant(n.every(Boolean),'The `getItems` function from source \\\"'.concat(t.sourceId,'\\\" must return an array of items but returned ').concat(JSON.stringify(void 0),\\\".\\\\n\\\\nDid you forget to return items?\\\\n\\\\nSee: https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/sources/#param-getitems\\\")),{source:t,items:n}})}function _typeof10(e){return(_typeof10=\\\"function\\\"==typeof Symbol&&\\\"symbol\\\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\\\"function\\\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\\\"symbol\\\":typeof e})(e)}init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject();var _excluded3=[\\\"event\\\",\\\"nextState\\\",\\\"props\\\",\\\"query\\\",\\\"refresh\\\",\\\"store\\\"];function ownKeys9(t,e){var r,n=Object.keys(t);return Object.getOwnPropertySymbols&&(r=Object.getOwnPropertySymbols(t),e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)),n}function _objectSpread9(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ownKeys9(Object(r),!0).forEach(function(e){_defineProperty9(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ownKeys9(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function _defineProperty9(e,t,r){return(t=_toPropertyKey9(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _toPropertyKey9(e){var t=_toPrimitive9(e,\\\"string\\\");return\\\"symbol\\\"===_typeof10(t)?t:String(t)}function _toPrimitive9(e,t){if(\\\"object\\\"!==_typeof10(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0===r)return(\\\"string\\\"===t?String:Number)(e);r=r.call(e,t||\\\"default\\\");if(\\\"object\\\"!==_typeof10(r))return r;throw new TypeError(\\\"@@toPrimitive must return a primitive value.\\\")}function _objectWithoutProperties2(e,t){if(null==e)return{};var r,n=_objectWithoutPropertiesLoose2(e,t);if(Object.getOwnPropertySymbols)for(var o=Object.getOwnPropertySymbols(e),i=0;i<o.length;i++)r=o[i],0<=t.indexOf(r)||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r]);return n}function _objectWithoutPropertiesLoose2(e,t){if(null==e)return{};for(var r,n={},o=Object.keys(e),i=0;i<o.length;i++)r=o[i],0<=t.indexOf(r)||(n[r]=e[r]);return n}var lastStalledId=null,runConcurrentSafePromise=createConcurrentSafePromise();function onInput(e){var i=e.event,t=e.nextState,a=void 0===t?{}:t,u=e.props,c=e.query,l=e.refresh,s=e.store,p=_objectWithoutProperties2(e,_excluded3),f=(lastStalledId&&u.environment.clearTimeout(lastStalledId),p.setCollections),d=p.setIsOpen,t=p.setQuery,r=p.setActiveItemId,y=p.setStatus,o=p.setContext;if(t(c),r(u.defaultActiveItemId),!c&&!1===u.openOnFocus)return t=s.getState().collections.map(function(e){return _objectSpread9(_objectSpread9({},e),{},{items:[]})}),y(\\\"idle\\\"),f(t),d(null!=(r=a.isOpen)?r:u.shouldPanelOpen({state:s.getState()})),r=cancelable(runConcurrentSafePromise(t).then(function(){return Promise.resolve()})),s.pendingRequests.add(r);y(\\\"loading\\\"),lastStalledId=u.environment.setTimeout(function(){y(\\\"stalled\\\")},u.stallThreshold);t=cancelable(runConcurrentSafePromise(u.getSources(_objectSpread9({query:c,refresh:l,state:s.getState()},p)).then(function(n){return Promise.all(n.map(function(t){return Promise.resolve(t.getItems(_objectSpread9({query:c,refresh:l,state:s.getState()},p))).then(function(e){return preResolve(e,t.sourceId,s.getState())})})).then(resolve).then(function(e){var t,r=e.some(function(e){return isSearchResponseWithAutomaticInsightsFlag(e.items)});return r&&o({algoliaInsightsPlugin:_objectSpread9(_objectSpread9({},(null==(t=s.getState().context)?void 0:t.algoliaInsightsPlugin)||{}),{},{__automaticInsights:r})}),postResolve(e,n,s)}).then(function(e){return reshape({collections:e,props:u,state:s.getState()})})}))).then(function(e){y(\\\"idle\\\"),f(e);var t,r,n=u.shouldPanelOpen({state:s.getState()}),o=(d(null!=(o=a.isOpen)?o:u.openOnFocus&&!c&&n||n),getActiveItem(s.getState()));null!==s.getState().activeItemId&&o&&(n=o.item,t=o.itemInputValue,r=o.itemUrl,(o=o.source).onActive(_objectSpread9({event:i,item:n,itemInputValue:t,itemUrl:r,refresh:l,source:o,state:s.getState()},p)))})[\\\"finally\\\"](function(){y(\\\"idle\\\"),lastStalledId&&u.environment.clearTimeout(lastStalledId)});return s.pendingRequests.add(t)}function isSearchResponseWithAutomaticInsightsFlag(e){return!Array.isArray(e)&&Boolean(null==e?void 0:e._automaticInsights)}function _typeof11(e){return(_typeof11=\\\"function\\\"==typeof Symbol&&\\\"symbol\\\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\\\"function\\\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\\\"symbol\\\":typeof e})(e)}init_esbuild_inject();var _excluded4=[\\\"event\\\",\\\"props\\\",\\\"refresh\\\",\\\"store\\\"];function ownKeys10(t,e){var r,n=Object.keys(t);return Object.getOwnPropertySymbols&&(r=Object.getOwnPropertySymbols(t),e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)),n}function _objectSpread10(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ownKeys10(Object(r),!0).forEach(function(e){_defineProperty10(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ownKeys10(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function _defineProperty10(e,t,r){return(t=_toPropertyKey10(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _toPropertyKey10(e){var t=_toPrimitive10(e,\\\"string\\\");return\\\"symbol\\\"===_typeof11(t)?t:String(t)}function _toPrimitive10(e,t){if(\\\"object\\\"!==_typeof11(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0===r)return(\\\"string\\\"===t?String:Number)(e);r=r.call(e,t||\\\"default\\\");if(\\\"object\\\"!==_typeof11(r))return r;throw new TypeError(\\\"@@toPrimitive must return a primitive value.\\\")}function _objectWithoutProperties3(e,t){if(null==e)return{};var r,n=_objectWithoutPropertiesLoose3(e,t);if(Object.getOwnPropertySymbols)for(var o=Object.getOwnPropertySymbols(e),i=0;i<o.length;i++)r=o[i],0<=t.indexOf(r)||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r]);return n}function _objectWithoutPropertiesLoose3(e,t){if(null==e)return{};for(var r,n={},o=Object.keys(e),i=0;i<o.length;i++)r=o[i],0<=t.indexOf(r)||(n[r]=e[r]);return n}function onKeyDown(e){var t,r,n,o,i,a,u,c=e.event,l=e.props,s=e.refresh,p=e.store,f=_objectWithoutProperties3(e,_excluded4);\\\"ArrowUp\\\"===c.key||\\\"ArrowDown\\\"===c.key?(t=function(){var e=getActiveItem(p.getState()),e=l.environment.document.getElementById(getAutocompleteElementId(l.id,\\\"item-\\\".concat(p.getState().activeItemId),null==e?void 0:e.source));e&&(e.scrollIntoViewIfNeeded?e.scrollIntoViewIfNeeded(!1):e.scrollIntoView(!1))},r=function(){var e,t,r,n=getActiveItem(p.getState());null!==p.getState().activeItemId&&n&&(e=n.item,t=n.itemInputValue,r=n.itemUrl,(n=n.source).onActive(_objectSpread10({event:c,item:e,itemInputValue:t,itemUrl:r,refresh:s,source:n,state:p.getState()},f)))},c.preventDefault(),!1===p.getState().isOpen&&(l.openOnFocus||Boolean(p.getState().query))?onInput(_objectSpread10({event:c,props:l,query:p.getState().query,refresh:s,store:p},f)).then(function(){p.dispatch(c.key,{nextActiveItemId:l.defaultActiveItemId}),r(),setTimeout(t,0)}):(p.dispatch(c.key,{}),r(),t())):\\\"Escape\\\"===c.key?(c.preventDefault(),p.dispatch(c.key,null),p.pendingRequests.cancelAll()):\\\"Tab\\\"===c.key?(p.dispatch(\\\"blur\\\",null),p.pendingRequests.cancelAll()):\\\"Enter\\\"===c.key&&(null===p.getState().activeItemId||p.getState().collections.every(function(e){return 0===e.items.length})?l.debug||p.pendingRequests.cancelAll():(c.preventDefault(),n=getActiveItem(p.getState()),o=n.item,i=n.itemInputValue,a=n.itemUrl,u=n.source,c.metaKey||c.ctrlKey?void 0!==a&&(u.onSelect(_objectSpread10({event:c,item:o,itemInputValue:i,itemUrl:a,refresh:s,source:u,state:p.getState()},f)),l.navigator.navigateNewTab({itemUrl:a,item:o,state:p.getState()})):c.shiftKey?void 0!==a&&(u.onSelect(_objectSpread10({event:c,item:o,itemInputValue:i,itemUrl:a,refresh:s,source:u,state:p.getState()},f)),l.navigator.navigateNewWindow({itemUrl:a,item:o,state:p.getState()})):c.altKey||(void 0!==a?(u.onSelect(_objectSpread10({event:c,item:o,itemInputValue:i,itemUrl:a,refresh:s,source:u,state:p.getState()},f)),l.navigator.navigate({itemUrl:a,item:o,state:p.getState()})):onInput(_objectSpread10({event:c,nextState:{isOpen:!1},props:l,query:i,refresh:s,store:p},f)).then(function(){u.onSelect(_objectSpread10({event:c,item:o,itemInputValue:i,itemUrl:a,refresh:s,source:u,state:p.getState()},f))}))))}function _typeof12(e){return(_typeof12=\\\"function\\\"==typeof Symbol&&\\\"symbol\\\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\\\"function\\\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\\\"symbol\\\":typeof e})(e)}var _excluded5=[\\\"props\\\",\\\"refresh\\\",\\\"store\\\"],_excluded22=[\\\"inputElement\\\",\\\"formElement\\\",\\\"panelElement\\\"],_excluded32=[\\\"inputElement\\\"],_excluded42=[\\\"inputElement\\\",\\\"maxLength\\\"],_excluded52=[\\\"source\\\"],_excluded6=[\\\"item\\\",\\\"source\\\"];function ownKeys11(t,e){var r,n=Object.keys(t);return Object.getOwnPropertySymbols&&(r=Object.getOwnPropertySymbols(t),e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)),n}function _objectSpread11(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ownKeys11(Object(r),!0).forEach(function(e){_defineProperty11(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ownKeys11(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function _defineProperty11(e,t,r){return(t=_toPropertyKey11(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _toPropertyKey11(e){var t=_toPrimitive11(e,\\\"string\\\");return\\\"symbol\\\"===_typeof12(t)?t:String(t)}function _toPrimitive11(e,t){if(\\\"object\\\"!==_typeof12(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0===r)return(\\\"string\\\"===t?String:Number)(e);r=r.call(e,t||\\\"default\\\");if(\\\"object\\\"!==_typeof12(r))return r;throw new TypeError(\\\"@@toPrimitive must return a primitive value.\\\")}function _objectWithoutProperties4(e,t){if(null==e)return{};var r,n=_objectWithoutPropertiesLoose4(e,t);if(Object.getOwnPropertySymbols)for(var o=Object.getOwnPropertySymbols(e),i=0;i<o.length;i++)r=o[i],0<=t.indexOf(r)||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r]);return n}function _objectWithoutPropertiesLoose4(e,t){if(null==e)return{};for(var r,n={},o=Object.keys(e),i=0;i<o.length;i++)r=o[i],0<=t.indexOf(r)||(n[r]=e[r]);return n}function getPropGetters(e){var a=e.props,u=e.refresh,c=e.store,l=_objectWithoutProperties4(e,_excluded5);return{getEnvironmentProps:function(e){var r=e.inputElement,n=e.formElement,o=e.panelElement;function t(t){!c.getState().isOpen&&c.pendingRequests.isEmpty()||t.target===r||!1!==[n,o].some(function(e){return isOrContainsNode(e,t.target)})||(c.dispatch(\\\"blur\\\",null),a.debug)||c.pendingRequests.cancelAll()}return _objectSpread11({onTouchStart:t,onMouseDown:t,onTouchMove:function(e){!1!==c.getState().isOpen&&r===a.environment.document.activeElement&&e.target!==r&&r.blur()}},_objectWithoutProperties4(e,_excluded22))},getRootProps:function(e){return _objectSpread11({role:\\\"combobox\\\",\\\"aria-expanded\\\":c.getState().isOpen,\\\"aria-haspopup\\\":\\\"listbox\\\",\\\"aria-owns\\\":c.getState().isOpen?c.getState().collections.map(function(e){var t=e.source;return getAutocompleteElementId(a.id,\\\"list\\\",t)}).join(\\\" \\\"):void 0,\\\"aria-labelledby\\\":getAutocompleteElementId(a.id,\\\"label\\\")},e)},getFormProps:function(r){r.inputElement;return _objectSpread11({action:\\\"\\\",noValidate:!0,role:\\\"search\\\",onSubmit:function(e){var t;e.preventDefault(),a.onSubmit(_objectSpread11({event:e,refresh:u,state:c.getState()},l)),c.dispatch(\\\"submit\\\",null),null!=(t=r.inputElement)&&t.blur()},onReset:function(e){var t;e.preventDefault(),a.onReset(_objectSpread11({event:e,refresh:u,state:c.getState()},l)),c.dispatch(\\\"reset\\\",null),null!=(t=r.inputElement)&&t.focus()}},_objectWithoutProperties4(r,_excluded32))},getLabelProps:function(e){return _objectSpread11({htmlFor:getAutocompleteElementId(a.id,\\\"input\\\"),id:getAutocompleteElementId(a.id,\\\"label\\\")},e)},getInputProps:function(t){function r(e){(a.openOnFocus||Boolean(c.getState().query))&&onInput(_objectSpread11({event:e,props:a,query:c.getState().completion||c.getState().query,refresh:u,store:c},l)),c.dispatch(\\\"focus\\\",null)}var e=t||{},n=(e.inputElement,e.maxLength),o=void 0===n?512:n,n=_objectWithoutProperties4(e,_excluded42),e=getActiveItem(c.getState()),i=isSamsung((null==(i=a.environment.navigator)?void 0:i.userAgent)||\\\"\\\"),i=a.enterKeyHint||(null!=e&&e.itemUrl&&!i?\\\"go\\\":\\\"search\\\");return _objectSpread11({\\\"aria-autocomplete\\\":\\\"both\\\",\\\"aria-activedescendant\\\":c.getState().isOpen&&null!==c.getState().activeItemId?getAutocompleteElementId(a.id,\\\"item-\\\".concat(c.getState().activeItemId),null==e?void 0:e.source):void 0,\\\"aria-controls\\\":c.getState().isOpen?c.getState().collections.map(function(e){var t=e.source;return getAutocompleteElementId(a.id,\\\"list\\\",t)}).join(\\\" \\\"):void 0,\\\"aria-labelledby\\\":getAutocompleteElementId(a.id,\\\"label\\\"),value:c.getState().completion||c.getState().query,id:getAutocompleteElementId(a.id,\\\"input\\\"),autoComplete:\\\"off\\\",autoCorrect:\\\"off\\\",autoCapitalize:\\\"off\\\",enterKeyHint:i,spellCheck:\\\"false\\\",autoFocus:a.autoFocus,placeholder:a.placeholder,maxLength:o,type:\\\"search\\\",onChange:function(e){var t=e.currentTarget.value;a.ignoreCompositionEvents&&getNativeEvent(e).isComposing?l.setQuery(t):onInput(_objectSpread11({event:e,props:a,query:t.slice(0,o),refresh:u,store:c},l))},onCompositionEnd:function(e){onInput(_objectSpread11({event:e,props:a,query:e.currentTarget.value.slice(0,o),refresh:u,store:c},l))},onKeyDown:function(e){getNativeEvent(e).isComposing||onKeyDown(_objectSpread11({event:e,props:a,refresh:u,store:c},l))},onFocus:r,onBlur:noop,onClick:function(e){t.inputElement!==a.environment.document.activeElement||c.getState().isOpen||r(e)}},n)},getPanelProps:function(e){return _objectSpread11({onMouseDown:function(e){e.preventDefault()},onMouseLeave:function(){c.dispatch(\\\"mouseleave\\\",null)}},e)},getListProps:function(e){var t=e||{},r=t.source,t=_objectWithoutProperties4(t,_excluded52);return _objectSpread11({role:\\\"listbox\\\",\\\"aria-labelledby\\\":getAutocompleteElementId(a.id,\\\"label\\\"),id:getAutocompleteElementId(a.id,\\\"list\\\",r)},t)},getItemProps:function(e){var i=e.item,n=e.source,t=_objectWithoutProperties4(e,_excluded6);return _objectSpread11({id:getAutocompleteElementId(a.id,\\\"item-\\\".concat(i.__autocomplete_id),n),role:\\\"option\\\",\\\"aria-selected\\\":c.getState().activeItemId===i.__autocomplete_id,onMouseMove:function(e){var t,r,n,o;i.__autocomplete_id!==c.getState().activeItemId&&(c.dispatch(\\\"mousemove\\\",i.__autocomplete_id),o=getActiveItem(c.getState()),null!==c.getState().activeItemId)&&o&&(t=o.item,r=o.itemInputValue,n=o.itemUrl,(o=o.source).onActive(_objectSpread11({event:e,item:t,itemInputValue:r,itemUrl:n,refresh:u,source:o,state:c.getState()},l)))},onMouseDown:function(e){e.preventDefault()},onClick:function(e){var t=n.getItemInputValue({item:i,state:c.getState()}),r=n.getItemUrl({item:i,state:c.getState()});(r?Promise.resolve():onInput(_objectSpread11({event:e,nextState:{isOpen:!1},props:a,query:t,refresh:u,store:c},l))).then(function(){n.onSelect(_objectSpread11({event:e,item:i,itemInputValue:t,itemUrl:r,refresh:u,source:n,state:c.getState()},l))})}},t)}}}function _typeof13(e){return(_typeof13=\\\"function\\\"==typeof Symbol&&\\\"symbol\\\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\\\"function\\\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\\\"symbol\\\":typeof e})(e)}function ownKeys12(t,e){var r,n=Object.keys(t);return Object.getOwnPropertySymbols&&(r=Object.getOwnPropertySymbols(t),e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)),n}function _objectSpread12(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ownKeys12(Object(r),!0).forEach(function(e){_defineProperty12(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ownKeys12(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function _defineProperty12(e,t,r){return(t=_toPropertyKey12(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _toPropertyKey12(e){var t=_toPrimitive12(e,\\\"string\\\");return\\\"symbol\\\"===_typeof13(t)?t:String(t)}function _toPrimitive12(e,t){if(\\\"object\\\"!==_typeof13(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0===r)return(\\\"string\\\"===t?String:Number)(e);r=r.call(e,t||\\\"default\\\");if(\\\"object\\\"!==_typeof13(r))return r;throw new TypeError(\\\"@@toPrimitive must return a primitive value.\\\")}function getMetadata(e){var t=e.plugins,r=e.options,n=null==(n=((null==(n=r.__autocomplete_metadata)?void 0:n.userAgents)||[])[0])?void 0:n.segment,n=n?_defineProperty12({},n,Object.keys((null==(n=r.__autocomplete_metadata)?void 0:n.options)||{})):{};return{plugins:t.map(function(e){return{name:e.name,options:Object.keys(e.__autocomplete_pluginOptions||[])}}),options:_objectSpread12({\\\"autocomplete-core\\\":Object.keys(r)},n),ua:userAgents.concat((null==(t=r.__autocomplete_metadata)?void 0:t.userAgents)||[])}}function injectMetadata(e){var t,r,n,o=e.metadata,i=e.environment;(null==(t=i.navigator)||null==(t=t.userAgent)?void 0:t.includes(\\\"Algolia Crawler\\\"))&&(r=i.document.createElement(\\\"meta\\\"),n=i.document.querySelector(\\\"head\\\"),r.name=\\\"algolia:metadata\\\",setTimeout(function(){r.content=JSON.stringify(o),n.appendChild(r)},0))}function getCompletion(e){var t=e.state;return!1!==t.isOpen&&null!==t.activeItemId&&(null==(t=getActiveItem(t))?void 0:t.itemInputValue)||null}function _typeof14(e){return(_typeof14=\\\"function\\\"==typeof Symbol&&\\\"symbol\\\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\\\"function\\\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\\\"symbol\\\":typeof e})(e)}function ownKeys13(t,e){var r,n=Object.keys(t);return Object.getOwnPropertySymbols&&(r=Object.getOwnPropertySymbols(t),e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)),n}function _objectSpread13(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ownKeys13(Object(r),!0).forEach(function(e){_defineProperty13(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ownKeys13(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function _defineProperty13(e,t,r){return(t=_toPropertyKey13(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _toPropertyKey13(e){var t=_toPrimitive13(e,\\\"string\\\");return\\\"symbol\\\"===_typeof14(t)?t:String(t)}function _toPrimitive13(e,t){if(\\\"object\\\"!==_typeof14(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0===r)return(\\\"string\\\"===t?String:Number)(e);r=r.call(e,t||\\\"default\\\");if(\\\"object\\\"!==_typeof14(r))return r;throw new TypeError(\\\"@@toPrimitive must return a primitive value.\\\")}init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject();var stateReducer=function stateReducer2(e,t){switch(t.type){case\\\"setActiveItemId\\\":return _objectSpread13(_objectSpread13({},e),{},{activeItemId:t.payload});case\\\"setQuery\\\":return _objectSpread13(_objectSpread13({},e),{},{query:t.payload,completion:null});case\\\"setCollections\\\":return _objectSpread13(_objectSpread13({},e),{},{collections:t.payload});case\\\"setIsOpen\\\":return _objectSpread13(_objectSpread13({},e),{},{isOpen:t.payload});case\\\"setStatus\\\":return _objectSpread13(_objectSpread13({},e),{},{status:t.payload});case\\\"setContext\\\":return _objectSpread13(_objectSpread13({},e),{},{context:_objectSpread13(_objectSpread13({},e.context),t.payload)});case\\\"ArrowDown\\\":var r=_objectSpread13(_objectSpread13({},e),{},{activeItemId:t.payload.hasOwnProperty(\\\"nextActiveItemId\\\")?t.payload.nextActiveItemId:getNextActiveItemId(1,e.activeItemId,getItemsCount(e),t.props.defaultActiveItemId)});return _objectSpread13(_objectSpread13({},r),{},{completion:getCompletion({state:r})});case\\\"ArrowUp\\\":r=_objectSpread13(_objectSpread13({},e),{},{activeItemId:getNextActiveItemId(-1,e.activeItemId,getItemsCount(e),t.props.defaultActiveItemId)});return _objectSpread13(_objectSpread13({},r),{},{completion:getCompletion({state:r})});case\\\"Escape\\\":return e.isOpen?_objectSpread13(_objectSpread13({},e),{},{activeItemId:null,isOpen:!1,completion:null}):_objectSpread13(_objectSpread13({},e),{},{activeItemId:null,query:\\\"\\\",status:\\\"idle\\\",collections:[]});case\\\"submit\\\":return _objectSpread13(_objectSpread13({},e),{},{activeItemId:null,isOpen:!1,status:\\\"idle\\\"});case\\\"reset\\\":return _objectSpread13(_objectSpread13({},e),{},{activeItemId:!0===t.props.openOnFocus?t.props.defaultActiveItemId:null,status:\\\"idle\\\",completion:null,query:\\\"\\\"});case\\\"focus\\\":return _objectSpread13(_objectSpread13({},e),{},{activeItemId:t.props.defaultActiveItemId,isOpen:(t.props.openOnFocus||Boolean(e.query))&&t.props.shouldPanelOpen({state:e})});case\\\"blur\\\":return t.props.debug?e:_objectSpread13(_objectSpread13({},e),{},{isOpen:!1,activeItemId:null});case\\\"mousemove\\\":return _objectSpread13(_objectSpread13({},e),{},{activeItemId:t.payload});case\\\"mouseleave\\\":return _objectSpread13(_objectSpread13({},e),{},{activeItemId:t.props.defaultActiveItemId});default:return invariant(!1,\\\"The reducer action \\\".concat(JSON.stringify(t.type),\\\" is not supported.\\\")),e}};function _typeof15(e){return(_typeof15=\\\"function\\\"==typeof Symbol&&\\\"symbol\\\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\\\"function\\\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\\\"symbol\\\":typeof e})(e)}function ownKeys14(t,e){var r,n=Object.keys(t);return Object.getOwnPropertySymbols&&(r=Object.getOwnPropertySymbols(t),e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)),n}function _objectSpread14(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ownKeys14(Object(r),!0).forEach(function(e){_defineProperty14(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ownKeys14(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function _defineProperty14(e,t,r){return(t=_toPropertyKey14(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _toPropertyKey14(e){var t=_toPrimitive14(e,\\\"string\\\");return\\\"symbol\\\"===_typeof15(t)?t:String(t)}function _toPrimitive14(e,t){if(\\\"object\\\"!==_typeof15(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0===r)return(\\\"string\\\"===t?String:Number)(e);r=r.call(e,t||\\\"default\\\");if(\\\"object\\\"!==_typeof15(r))return r;throw new TypeError(\\\"@@toPrimitive must return a primitive value.\\\")}function createAutocomplete(e){checkOptions(e);var t,r=[],n=getDefaultProps(e,r),o=createStore(stateReducer,n,function(e){var t=e.prevState,r=e.state;n.onStateChange(_objectSpread14({prevState:t,state:r,refresh:u,navigator:n.navigator},i)),!l()&&null!=(t=r.context)&&null!=(r=t.algoliaInsightsPlugin)&&r.__automaticInsights&&!1!==n.insights&&(t=createAlgoliaInsightsPlugin({__autocomplete_clickAnalytics:!1}),n.plugins.push(t),c([t]))}),i=getAutocompleteSetters({store:o}),a=getPropGetters(_objectSpread14({props:n,refresh:u,store:o,navigator:n.navigator},i));function u(){return onInput(_objectSpread14({event:new Event(\\\"input\\\"),nextState:{isOpen:o.getState().isOpen},props:n,navigator:n.navigator,query:o.getState().query,refresh:u,store:o},i))}function c(e){e.forEach(function(e){var t;return null==(t=e.subscribe)?void 0:t.call(e,_objectSpread14(_objectSpread14({},i),{},{navigator:n.navigator,refresh:u,onSelect:function(e){r.push({onSelect:e})},onActive:function(e){r.push({onActive:e})},onResolve:function(e){r.push({onResolve:e})}}))})}function l(){return n.plugins.some(function(e){return\\\"aa.algoliaInsightsPlugin\\\"===e.name})}return n.insights&&!l()&&(t=\\\"boolean\\\"==typeof n.insights?{}:n.insights,n.plugins.push(createAlgoliaInsightsPlugin(t))),c(n.plugins),injectMetadata({metadata:getMetadata({plugins:n.plugins,options:e}),environment:n.environment}),_objectSpread14(_objectSpread14({refresh:u,navigator:n.navigator},a),i)}init_esbuild_inject();var n=function(e,t,r,o){t[0]=0;for(var i=1;i<t.length;i++){var a=t[i++],u=t[i]?(t[0]|=a?1:2,r[t[i++]]):t[++i];3===a?o[0]=u:4===a?o[1]=Object.assign(o[1]||{},u):5===a?(o[1]=o[1]||{})[t[++i]]=u:6===a?o[1][t[++i]]+=u+\\\"\\\":a?(a=e.apply(u,n(e,u,r,[\\\"\\\",null])),o.push(a),u[0]?t[0]|=2:(t[i-2]=0,t[i]=a)):o.push(u)}return o},t=new Map;function htm_module_default(e){var r=t.get(this);return r||t.set(this,r=new Map),1<(r=n(this,r.get(e)||(r.set(e,r=function(e){for(var t,r,n=1,o=\\\"\\\",i=\\\"\\\",a=[0],u=function(e){1===n&&(e||(o=o.replace(/^\\\\s*\\\\n\\\\s*|\\\\s*\\\\n\\\\s*$/g,\\\"\\\")))?a.push(0,e,o):3===n&&(e||o)?(a.push(3,e,o),n=2):2===n&&\\\"...\\\"===o&&e?a.push(4,e,0):2===n&&o&&!e?a.push(5,0,!0,o):5<=n&&((o||!e&&5===n)&&(a.push(n,0,o,r),n=6),e)&&(a.push(n,e,0,r),n=6),o=\\\"\\\"},c=0;c<e.length;c++){c&&(1===n&&u(),u(c));for(var l=0;l<e[c].length;l++)t=e[c][l],1===n?\\\"<\\\"===t?(u(),a=[a],n=3):o+=t:4===n?o=\\\"--\\\"===o&&\\\">\\\"===t?(n=1,\\\"\\\"):t+o[0]:i?t===i?i=\\\"\\\":o+=t:'\\\"'===t||\\\"'\\\"===t?i=t:\\\">\\\"===t?(u(),n=1):n&&(\\\"=\\\"===t?(n=5,r=o,o=\\\"\\\"):\\\"/\\\"===t&&(n<5||\\\">\\\"===e[c][l+1])?(u(),3===n&&(a=a[0]),(a=(n=a)[0]).push(2,0,n),n=0):\\\" \\\"===t||\\\"\\\\t\\\"===t||\\\"\\\\n\\\"===t||\\\"\\\\r\\\"===t?(u(),n=2):o+=t),3===n&&\\\"!--\\\"===o&&(n=4,a=a[0])}return u(),a}(e)),r),arguments,[])).length?r:r[0]}init_esbuild_inject(),init_esbuild_inject();var ClearIcon=function ClearIcon2(e){var t=e.environment,r=t.document.createElementNS(\\\"http://www.w3.org/2000/svg\\\",\\\"svg\\\"),t=(r.setAttribute(\\\"class\\\",\\\"aa-ClearIcon\\\"),r.setAttribute(\\\"viewBox\\\",\\\"0 0 24 24\\\"),r.setAttribute(\\\"width\\\",\\\"18\\\"),r.setAttribute(\\\"height\\\",\\\"18\\\"),r.setAttribute(\\\"fill\\\",\\\"currentColor\\\"),t.document.createElementNS(\\\"http://www.w3.org/2000/svg\\\",\\\"path\\\"));return t.setAttribute(\\\"d\\\",\\\"M5.293 6.707l5.293 5.293-5.293 5.293c-0.391 0.391-0.391 1.024 0 1.414s1.024 0.391 1.414 0l5.293-5.293 5.293 5.293c0.391 0.391 1.024 0.391 1.414 0s0.391-1.024 0-1.414l-5.293-5.293 5.293-5.293c0.391-0.391 0.391-1.024 0-1.414s-1.024-0.391-1.414 0l-5.293 5.293-5.293-5.293c-0.391-0.391-1.024-0.391-1.414 0s-0.391 1.024 0 1.414z\\\"),r.appendChild(t),r};function getHTMLElement(e,t){var r;return\\\"string\\\"==typeof t?(invariant(null!==(r=e.document.querySelector(t)),\\\"The element \\\".concat(JSON.stringify(t),\\\" is not in the document.\\\")),r):t}function mergeClassNames(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return t.reduce(function(n,o){return Object.keys(o).forEach(function(e){var t=n[e],r=o[e];t!==r&&(n[e]=[t,r].filter(Boolean).join(\\\" \\\"))}),n},{})}function _toConsumableArray5(e){return _arrayWithoutHoles5(e)||_iterableToArray5(e)||_unsupportedIterableToArray7(e)||_nonIterableSpread5()}function _nonIterableSpread5(){throw new TypeError(\\\"Invalid attempt to spread non-iterable instance.\\\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\\\")}function _unsupportedIterableToArray7(e,t){var r;if(e)return\\\"string\\\"==typeof e?_arrayLikeToArray7(e,t):\\\"Map\\\"===(r=\\\"Object\\\"===(r=Object.prototype.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:r)||\\\"Set\\\"===r?Array.from(e):\\\"Arguments\\\"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_arrayLikeToArray7(e,t):void 0}function _iterableToArray5(e){if(\\\"undefined\\\"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e[\\\"@@iterator\\\"])return Array.from(e)}function _arrayWithoutHoles5(e){if(Array.isArray(e))return _arrayLikeToArray7(e)}function _arrayLikeToArray7(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function _typeof16(e){return(_typeof16=\\\"function\\\"==typeof Symbol&&\\\"symbol\\\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\\\"function\\\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\\\"symbol\\\":typeof e})(e)}init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject();var isPlainObject=function isPlainObject2(e){return e&&\\\"object\\\"===_typeof16(e)&&\\\"[object Object]\\\"===Object.prototype.toString.call(e)};function mergeDeep(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return t.reduce(function(n,o){return Object.keys(o).forEach(function(e){var t=n[e],r=o[e];Array.isArray(t)&&Array.isArray(r)?n[e]=t.concat.apply(t,_toConsumableArray5(r)):isPlainObject(t)&&isPlainObject(r)?n[e]=mergeDeep(t,r):n[e]=r}),n},{})}function _typeof17(e){return(_typeof17=\\\"function\\\"==typeof Symbol&&\\\"symbol\\\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\\\"function\\\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\\\"symbol\\\":typeof e})(e)}function ownKeys15(t,e){var r,n=Object.keys(t);return Object.getOwnPropertySymbols&&(r=Object.getOwnPropertySymbols(t),e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)),n}function _objectSpread15(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ownKeys15(Object(r),!0).forEach(function(e){_defineProperty15(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ownKeys15(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function _defineProperty15(e,t,r){return(t=_toPropertyKey15(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _toPropertyKey15(e){var t=_toPrimitive15(e,\\\"string\\\");return\\\"symbol\\\"===_typeof17(t)?t:String(t)}function _toPrimitive15(e,t){if(\\\"object\\\"!==_typeof17(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0===r)return(\\\"string\\\"===t?String:Number)(e);r=r.call(e,t||\\\"default\\\");if(\\\"object\\\"!==_typeof17(r))return r;throw new TypeError(\\\"@@toPrimitive must return a primitive value.\\\")}function _slicedToArray3(e,t){return _arrayWithHoles3(e)||_iterableToArrayLimit3(e,t)||_unsupportedIterableToArray8(e,t)||_nonIterableRest3()}function _nonIterableRest3(){throw new TypeError(\\\"Invalid attempt to destructure non-iterable instance.\\\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\\\")}function _unsupportedIterableToArray8(e,t){var r;if(e)return\\\"string\\\"==typeof e?_arrayLikeToArray8(e,t):\\\"Map\\\"===(r=\\\"Object\\\"===(r=Object.prototype.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:r)||\\\"Set\\\"===r?Array.from(e):\\\"Arguments\\\"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_arrayLikeToArray8(e,t):void 0}function _arrayLikeToArray8(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function _iterableToArrayLimit3(e,t){var r=null==e?null:\\\"undefined\\\"!=typeof Symbol&&e[Symbol.iterator]||e[\\\"@@iterator\\\"];if(null!=r){var n,o,i,a,u=[],c=!0,l=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(u.push(n.value),u.length!==t);c=!0);}catch(s){l=!0,o=s}finally{try{if(!c&&null!=r[\\\"return\\\"]&&(a=r[\\\"return\\\"](),Object(a)!==a))return}finally{if(l)throw o}}return u}}function _arrayWithHoles3(e){if(Array.isArray(e))return e}function pickBy(e,o){return Object.entries(e).reduce(function(e,t){var r=_slicedToArray3(t,2),n=r[0],r=r[1];return o({key:n,value:r})?_objectSpread15(_objectSpread15({},e),{},_defineProperty15({},n,r)):e},{})}init_esbuild_inject(),init_esbuild_inject();var TOUCH_EVENTS_ALIASES=[\\\"ontouchstart\\\",\\\"ontouchend\\\",\\\"ontouchmove\\\",\\\"ontouchcancel\\\"];function setStyle(e,t,r){e[t]=null===r?\\\"\\\":\\\"number\\\"!=typeof r?r:r+\\\"px\\\"}function eventProxy(e){this._listeners[e.type](e)}function setProperty(e,t,r){var n,o,i=e[t];if(\\\"style\\\"===t)if(\\\"string\\\"==typeof r)e.style=r;else if(null===r)e.style=\\\"\\\";else for(t in r)i&&r[t]===i[t]||setStyle(e.style,t,r[t]);else\\\"o\\\"===t[0]&&\\\"n\\\"===t[1]?(n=t!==(t=t.replace(/Capture$/,\\\"\\\")),t=(t=(o=t.toLowerCase())in e||TOUCH_EVENTS_ALIASES.includes(o)?o:t).slice(2),e._listeners||(e._listeners={}),(e._listeners[t]=r)?i||e.addEventListener(t,eventProxy,n):e.removeEventListener(t,eventProxy,n)):\\\"list\\\"!==t&&\\\"tagName\\\"!==t&&\\\"form\\\"!==t&&\\\"type\\\"!==t&&\\\"size\\\"!==t&&\\\"download\\\"!==t&&\\\"href\\\"!==t&&t in e?e[t]=null==r?\\\"\\\":r:\\\"function\\\"!=typeof r&&\\\"dangerouslySetInnerHTML\\\"!==t&&(null==r||!1===r&&!/^ar/.test(t)?e.removeAttribute(t):e.setAttribute(t,r))}function getNormalizedName(e){switch(e){case\\\"onChange\\\":return\\\"onInput\\\";case\\\"onCompositionEnd\\\":return\\\"oncompositionend\\\";default:return e}}function setProperties(e,t){for(var r in t)setProperty(e,getNormalizedName(r),t[r])}function setPropertiesWithoutEvents(e,t){for(var r in t)\\\"o\\\"===r[0]&&\\\"n\\\"===r[1]||setProperty(e,getNormalizedName(r),t[r])}var _excluded7=[\\\"children\\\"];function _toConsumableArray6(e){return _arrayWithoutHoles6(e)||_iterableToArray6(e)||_unsupportedIterableToArray9(e)||_nonIterableSpread6()}function _nonIterableSpread6(){throw new TypeError(\\\"Invalid attempt to spread non-iterable instance.\\\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\\\")}function _unsupportedIterableToArray9(e,t){var r;if(e)return\\\"string\\\"==typeof e?_arrayLikeToArray9(e,t):\\\"Map\\\"===(r=\\\"Object\\\"===(r=Object.prototype.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:r)||\\\"Set\\\"===r?Array.from(e):\\\"Arguments\\\"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_arrayLikeToArray9(e,t):void 0}function _iterableToArray6(e){if(\\\"undefined\\\"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e[\\\"@@iterator\\\"])return Array.from(e)}function _arrayWithoutHoles6(e){if(Array.isArray(e))return _arrayLikeToArray9(e)}function _arrayLikeToArray9(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function _objectWithoutProperties5(e,t){if(null==e)return{};var r,n=_objectWithoutPropertiesLoose5(e,t);if(Object.getOwnPropertySymbols)for(var o=Object.getOwnPropertySymbols(e),i=0;i<o.length;i++)r=o[i],0<=t.indexOf(r)||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r]);return n}function _objectWithoutPropertiesLoose5(e,t){if(null==e)return{};for(var r,n={},o=Object.keys(e),i=0;i<o.length;i++)r=o[i],0<=t.indexOf(r)||(n[r]=e[r]);return n}function getCreateDomElement(i){return function(e,t){var r=t.children,r=void 0===r?[]:r,n=_objectWithoutProperties5(t,_excluded7),o=i.document.createElement(e);return setProperties(o,n),o.append.apply(o,_toConsumableArray6(r)),o}}function _typeof18(e){return(_typeof18=\\\"function\\\"==typeof Symbol&&\\\"symbol\\\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\\\"function\\\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\\\"symbol\\\":typeof e})(e)}var _excluded8=[\\\"autocompleteScopeApi\\\",\\\"environment\\\",\\\"classNames\\\",\\\"getInputProps\\\",\\\"getInputPropsCore\\\",\\\"isDetached\\\",\\\"state\\\"];function ownKeys16(t,e){var r,n=Object.keys(t);return Object.getOwnPropertySymbols&&(r=Object.getOwnPropertySymbols(t),e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)),n}function _objectSpread16(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ownKeys16(Object(r),!0).forEach(function(e){_defineProperty16(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ownKeys16(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function _defineProperty16(e,t,r){return(t=_toPropertyKey16(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _toPropertyKey16(e){var t=_toPrimitive16(e,\\\"string\\\");return\\\"symbol\\\"===_typeof18(t)?t:String(t)}function _toPrimitive16(e,t){if(\\\"object\\\"!==_typeof18(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0===r)return(\\\"string\\\"===t?String:Number)(e);r=r.call(e,t||\\\"default\\\");if(\\\"object\\\"!==_typeof18(r))return r;throw new TypeError(\\\"@@toPrimitive must return a primitive value.\\\")}function _objectWithoutProperties6(e,t){if(null==e)return{};var r,n=_objectWithoutPropertiesLoose6(e,t);if(Object.getOwnPropertySymbols)for(var o=Object.getOwnPropertySymbols(e),i=0;i<o.length;i++)r=o[i],0<=t.indexOf(r)||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r]);return n}function _objectWithoutPropertiesLoose6(e,t){if(null==e)return{};for(var r,n={},o=Object.keys(e),i=0;i<o.length;i++)r=o[i],0<=t.indexOf(r)||(n[r]=e[r]);return n}var n2,l,u,t2,i,o,r,f,e,c,s,a,Input=function Input2(e){var t=e.autocompleteScopeApi,r=e.environment,n=(e.classNames,e.getInputProps),o=e.getInputPropsCore,i=e.isDetached,a=e.state,u=_objectWithoutProperties6(e,_excluded8),r=getCreateDomElement(r)(\\\"input\\\",u),c=n(_objectSpread16({state:a,props:o({inputElement:r}),inputElement:r},t));return setProperties(r,_objectSpread16(_objectSpread16({},c),{},{onKeyDown:function(e){i&&\\\"Tab\\\"===e.key||c.onKeyDown(e)}})),r},LoadingIcon=(init_esbuild_inject(),function LoadingIcon2(e){var t=e.environment.document.createElementNS(\\\"http://www.w3.org/2000/svg\\\",\\\"svg\\\");return t.setAttribute(\\\"class\\\",\\\"aa-LoadingIcon\\\"),t.setAttribute(\\\"viewBox\\\",\\\"0 0 100 100\\\"),t.setAttribute(\\\"width\\\",\\\"20\\\"),t.setAttribute(\\\"height\\\",\\\"20\\\"),t.innerHTML='<circle\\\\n cx=\\\"50\\\"\\\\n cy=\\\"50\\\"\\\\n fill=\\\"none\\\"\\\\n r=\\\"35\\\"\\\\n stroke=\\\"currentColor\\\"\\\\n stroke-dasharray=\\\"164.93361431346415 56.97787143782138\\\"\\\\n stroke-width=\\\"6\\\"\\\\n>\\\\n <animateTransform\\\\n attributeName=\\\"transform\\\"\\\\n type=\\\"rotate\\\"\\\\n repeatCount=\\\"indefinite\\\"\\\\n dur=\\\"1s\\\"\\\\n values=\\\"0 50 50;90 50 50;180 50 50;360 50 50\\\"\\\\n keyTimes=\\\"0;0.40;0.65;1\\\"\\\\n />\\\\n</circle>',t}),SearchIcon=(init_esbuild_inject(),function SearchIcon2(e){var t=e.environment,r=t.document.createElementNS(\\\"http://www.w3.org/2000/svg\\\",\\\"svg\\\"),t=(r.setAttribute(\\\"class\\\",\\\"aa-SubmitIcon\\\"),r.setAttribute(\\\"viewBox\\\",\\\"0 0 24 24\\\"),r.setAttribute(\\\"width\\\",\\\"20\\\"),r.setAttribute(\\\"height\\\",\\\"20\\\"),r.setAttribute(\\\"fill\\\",\\\"currentColor\\\"),t.document.createElementNS(\\\"http://www.w3.org/2000/svg\\\",\\\"path\\\"));return t.setAttribute(\\\"d\\\",\\\"M16.041 15.856c-0.034 0.026-0.067 0.055-0.099 0.087s-0.060 0.064-0.087 0.099c-1.258 1.213-2.969 1.958-4.855 1.958-1.933 0-3.682-0.782-4.95-2.050s-2.050-3.017-2.050-4.95 0.782-3.682 2.050-4.95 3.017-2.050 4.95-2.050 3.682 0.782 4.95 2.050 2.050 3.017 2.050 4.95c0 1.886-0.745 3.597-1.959 4.856zM21.707 20.293l-3.675-3.675c1.231-1.54 1.968-3.493 1.968-5.618 0-2.485-1.008-4.736-2.636-6.364s-3.879-2.636-6.364-2.636-4.736 1.008-6.364 2.636-2.636 3.879-2.636 6.364 1.008 4.736 2.636 6.364 3.879 2.636 6.364 2.636c2.125 0 4.078-0.737 5.618-1.968l3.675 3.675c0.391 0.391 1.024 0.391 1.414 0s0.391-1.024 0-1.414z\\\"),r.appendChild(t),r});function _typeof19(e){return(_typeof19=\\\"function\\\"==typeof Symbol&&\\\"symbol\\\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\\\"function\\\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\\\"symbol\\\":typeof e})(e)}function ownKeys17(t,e){var r,n=Object.keys(t);return Object.getOwnPropertySymbols&&(r=Object.getOwnPropertySymbols(t),e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)),n}function _objectSpread17(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ownKeys17(Object(r),!0).forEach(function(e){_defineProperty17(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ownKeys17(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function _defineProperty17(e,t,r){return(t=_toPropertyKey17(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _toPropertyKey17(e){var t=_toPrimitive17(e,\\\"string\\\");return\\\"symbol\\\"===_typeof19(t)?t:String(t)}function _toPrimitive17(e,t){if(\\\"object\\\"!==_typeof19(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0===r)return(\\\"string\\\"===t?String:Number)(e);r=r.call(e,t||\\\"default\\\");if(\\\"object\\\"!==_typeof19(r))return r;throw new TypeError(\\\"@@toPrimitive must return a primitive value.\\\")}function createAutocompleteDom(e){var t=e.autocomplete,r=e.autocompleteScopeApi,n=e.classNames,o=e.environment,i=e.isDetached,a=e.placeholder,a=void 0===a?\\\"Search\\\":a,u=e.propGetters,c=e.setIsModalOpen,l=e.state,s=e.translations,p=getCreateDomElement(o),f=u.getRootProps(_objectSpread17({state:l,props:t.getRootProps({})},r)),f=p(\\\"div\\\",_objectSpread17({\\\"class\\\":n.root},f)),d=p(\\\"div\\\",{\\\"class\\\":n.detachedContainer,onMouseDown:function(e){e.stopPropagation()}}),y=p(\\\"div\\\",{\\\"class\\\":n.detachedOverlay,children:[d],onMouseDown:function(){c(!1),t.setIsOpen(!1)}}),m=u.getLabelProps(_objectSpread17({state:l,props:t.getLabelProps({})},r)),b=p(\\\"button\\\",{\\\"class\\\":n.submitButton,type:\\\"submit\\\",title:s.submitButtonTitle,children:[SearchIcon({environment:o})]}),_=p(\\\"label\\\",_objectSpread17({\\\"class\\\":n.label,children:[b],ariaLabel:s.submitButtonTitle},m)),v=p(\\\"button\\\",{\\\"class\\\":n.clearButton,type:\\\"reset\\\",title:s.clearButtonTitle,children:[ClearIcon({environment:o})]}),g=p(\\\"div\\\",{\\\"class\\\":n.loadingIndicator,children:[LoadingIcon({environment:o})]}),h=Input({\\\"class\\\":n.input,environment:o,state:l,getInputProps:u.getInputProps,getInputPropsCore:t.getInputProps,autocompleteScopeApi:r,isDetached:i}),S=p(\\\"div\\\",{\\\"class\\\":n.inputWrapperPrefix,children:[_,g]}),j=p(\\\"div\\\",{\\\"class\\\":n.inputWrapperSuffix,children:[v]}),P=p(\\\"div\\\",{\\\"class\\\":n.inputWrapper,children:[h]}),O=u.getFormProps(_objectSpread17({state:l,props:t.getFormProps({inputElement:h})},r)),S=p(\\\"form\\\",_objectSpread17({\\\"class\\\":n.form,children:[S,P,j]},O)),j=u.getPanelProps(_objectSpread17({state:l,props:t.getPanelProps({})},r)),O=p(\\\"div\\\",_objectSpread17({\\\"class\\\":n.panel},j)),r=p(\\\"div\\\",{\\\"class\\\":n.detachedSearchButtonQuery,textContent:l.query}),u=p(\\\"div\\\",{\\\"class\\\":n.detachedSearchButtonPlaceholder,hidden:Boolean(l.query),textContent:a});return i?(j=p(\\\"div\\\",{\\\"class\\\":n.detachedSearchButtonIcon,children:[SearchIcon({environment:o})]}),l=p(\\\"button\\\",{type:\\\"button\\\",\\\"class\\\":n.detachedSearchButton,title:s.detachedSearchButtonTitle,id:m.id,onClick:function(){c(!0)},children:[j,u,r]}),a=p(\\\"button\\\",{type:\\\"button\\\",\\\"class\\\":n.detachedCancelButton,textContent:s.detachedCancelButtonText,onTouchStart:function(e){e.stopPropagation()},onClick:function(){t.setIsOpen(!1),c(!1)}}),i=p(\\\"div\\\",{\\\"class\\\":n.detachedFormContainer,children:[S,a]}),d.appendChild(i),f.appendChild(l)):f.appendChild(S),{detachedContainer:d,detachedOverlay:y,detachedSearchButtonQuery:r,detachedSearchButtonPlaceholder:u,inputWrapper:P,input:h,root:f,form:S,label:_,submitButton:b,clearButton:v,loadingIndicator:g,panel:O}}function createEffectWrapper(){var r=[],n=[];function t(e){r.push(e);var t=e();n.push(t)}return{runEffect:t,cleanupEffects:function(){var e=n;n=[],e.forEach(function(e){e()})},runEffects:function(){var e=r;r=[],e.forEach(function(e){t(e)})}}}function createReactiveWrapper(){var r=[];return{reactive:function(e){var t=e(),t={_fn:e,_ref:{current:t},get value(){return this._ref.current},set value(e){this._ref.current=e}};return r.push(t),t},runReactives:function(){r.forEach(function(e){e._ref.current=e._fn()})}}}init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject();var h={},p=[],v=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,y=Array.isArray;function d(e,t){for(var r in t)e[r]=t[r];return e}function w(e){var t=e.parentNode;t&&t.removeChild(e)}function _(e,t,r){var n,o,i,a={};for(i in t)\\\"key\\\"==i?n=t[i]:\\\"ref\\\"==i?o=t[i]:a[i]=t[i];if(2<arguments.length&&(a.children=3<arguments.length?n2.call(arguments,2):r),\\\"function\\\"==typeof e&&null!=e.defaultProps)for(i in e.defaultProps)void 0===a[i]&&(a[i]=e.defaultProps[i]);return g(e,a,n,o,null)}function g(e,t,r,n,o){var i={type:e,props:t,key:r,ref:n,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,constructor:void 0,__v:null==o?++u:o,__i:-1,__u:0};return null==o&&null!=l.vnode&&l.vnode(i),i}function k(e){return e.children}function b(e,t){this.props=e,this.context=t}function x(e,t){if(null==t)return e.__?x(e.__,e.__i+1):null;for(var r;t<e.__k.length;t++)if(null!=(r=e.__k[t])&&null!=r.__e)return r.__e;return\\\"function\\\"==typeof e.type?x(e):null}function C(e){var t,r;if(null!=(e=e.__)&&null!=e.__c){for(e.__e=e.__c.base=null,t=0;t<e.__k.length;t++)if(null!=(r=e.__k[t])&&null!=r.__e){e.__e=e.__c.base=r.__e;break}return C(e)}}function M(e){(e.__d||(e.__d=!0,!i.push(e))||P.__r++)&&o===l.debounceRendering||((o=l.debounceRendering)||r)(P)}function P(){var e,t,r,n,o,a,u;for(i.sort(f);t=i.shift();)t.__d&&(e=i.length,r=void 0,o=(n=(t=t).__v).__e,a=[],u=[],t.__P&&((r=d({},n)).__v=n.__v+1,l.vnode&&l.vnode(r),O(t.__P,r,n,t.__n,t.__P.namespaceURI,32&n.__u?[o]:null,a,null==o?x(n):o,!!(32&n.__u),u),r.__v=n.__v,j(a,r.__.__k[r.__i]=r,u),r.__e!=o)&&C(r),i.length>e)&&i.sort(f);P.__r=0}function S(e,t,r,n,o,i,a,u,c,l,s){var f,d,y,m,b,_=n&&n.__k||p,v=t.length;for(r.__d=c,$(r,t,_),c=r.__d,f=0;f<v;f++)null!=(y=r.__k[f])&&\\\"boolean\\\"!=typeof y&&\\\"function\\\"!=typeof y&&(d=-1!==y.__i&&_[y.__i]||h,y.__i=f,O(e,y,d,o,i,a,u,c,l,s),m=y.__e,y.ref&&d.ref!=y.ref&&(d.ref&&N(d.ref,null,y),s.push(y.ref,y.__c||m,y)),null==b&&null!=m&&(b=m),65536&y.__u||d.__k===y.__k?c=I(y,c=c&&!c.isConnected?x(d):c,e):\\\"function\\\"==typeof y.type&&void 0!==y.__d?c=y.__d:m&&(c=m.nextSibling),y.__d=void 0,y.__u&=-196609);r.__d=c,r.__e=b}function $(e,t,r){var n,o,i,a,u,c=t.length,l=r.length,s=l,p=0;for(e.__k=[],n=0;n<c;n++)a=n+p,null!=(o=e.__k[n]=null==(o=t[n])||\\\"boolean\\\"==typeof o||\\\"function\\\"==typeof o?null:\\\"string\\\"==typeof o||\\\"number\\\"==typeof o||\\\"bigint\\\"==typeof o||o.constructor==String?g(null,o,null,null,null):y(o)?g(k,{children:o},null,null,null):void 0===o.constructor&&0<o.__b?g(o.type,o.props,o.key,o.ref||null,o.__v):o)?(o.__=e,o.__b=e.__b+1,u=L(o,r,a,s),i=null,-1!==(o.__i=u)&&(s--,i=r[u])&&(i.__u|=131072),null==i||null===i.__v?(-1==u&&p--,\\\"function\\\"!=typeof o.type&&(o.__u|=65536)):u!==a&&(u===a+1?p++:a<u?c-a<s?p+=u-a:p--:u<a?u==a-1&&(p=u-a):p=0,u!==n+p)&&(o.__u|=65536)):(i=r[a])&&null==i.key&&i.__e&&0==(131072&i.__u)&&(i.__e==e.__d&&(e.__d=x(i)),V(i,i,!1),r[a]=null,s--);if(s)for(n=0;n<l;n++)null!=(i=r[n])&&0==(131072&i.__u)&&(i.__e==e.__d&&(e.__d=x(i)),V(i,i))}function I(e,t,r){var n,o;if(\\\"function\\\"==typeof e.type)for(n=e.__k,o=0;n&&o<n.length;o++)n[o]&&(n[o].__=e,t=I(n[o],t,r));else for(e.__e!=t&&(r.insertBefore(e.__e,t||null),t=e.__e);null!=(t=t&&t.nextSibling)&&8===t.nodeType;);return t}function L(e,t,r,n){var o=e.key,i=e.type,a=r-1,u=r+1,c=t[r];if(null===c||c&&o==c.key&&i===c.type&&0==(131072&c.__u))return r;if(n>(null!=c&&0==(131072&c.__u)?1:0))for(;0<=a||u<t.length;){if(0<=a){if((c=t[a])&&0==(131072&c.__u)&&o==c.key&&i===c.type)return a;a--}if(u<t.length){if((c=t[u])&&0==(131072&c.__u)&&o==c.key&&i===c.type)return u;u++}}return-1}function T(e,t,r){\\\"-\\\"===t[0]?e.setProperty(t,null==r?\\\"\\\":r):e[t]=null==r?\\\"\\\":\\\"number\\\"!=typeof r||v.test(t)?r:r+\\\"px\\\"}function A(t,r,n,o,i){var a;e:if(\\\"style\\\"===r)if(\\\"string\\\"==typeof n)t.style.cssText=n;else{if(\\\"string\\\"==typeof o&&(t.style.cssText=o=\\\"\\\"),o)for(r in o)n&&r in n||T(t.style,r,\\\"\\\");if(n)for(r in n)o&&n[r]===o[r]||T(t.style,r,n[r])}else if(\\\"o\\\"===r[0]&&\\\"n\\\"===r[1])a=r!==(r=r.replace(/(PointerCapture)$|Capture$/i,\\\"$1\\\")),r=(r.toLowerCase()in t||\\\"onFocusOut\\\"===r||\\\"onFocusIn\\\"===r?r.toLowerCase():r).slice(2),t.l||(t.l={}),(t.l[r+a]=n)?o?n.u=o.u:(n.u=e,t.addEventListener(r,a?s:c,a)):t.removeEventListener(r,a?s:c,a);else{if(\\\"http://www.w3.org/2000/svg\\\"==i)r=r.replace(/xlink(H|:h)/,\\\"h\\\").replace(/sName$/,\\\"s\\\");else if(\\\"width\\\"!=r&&\\\"height\\\"!=r&&\\\"href\\\"!=r&&\\\"list\\\"!=r&&\\\"form\\\"!=r&&\\\"tabIndex\\\"!=r&&\\\"download\\\"!=r&&\\\"rowSpan\\\"!=r&&\\\"colSpan\\\"!=r&&\\\"role\\\"!=r&&r in t)try{t[r]=null==n?\\\"\\\":n;break e}catch(u){}\\\"function\\\"!=typeof n&&(null==n||!1===n&&\\\"-\\\"!==r[4]?t.removeAttribute(r):t.setAttribute(r,n))}}function F(n){return function(t){if(this.l){var r=this.l[t.type+n];if(null==t.t)t.t=e++;else if(t.t<r.u)return;return r(l.event?l.event(t):t)}}}function O(e,t,r,n,o,i,a,u,c,s){var p,f,m,_,v,g,h,j,P,O,w,I,A,E,C,T=t.type;if(void 0!==t.constructor)return null;128&r.__u&&(c=!!(32&r.__u),i=[u=t.__e=r.__e]),(p=l.__b)&&p(t);e:if(\\\"function\\\"==typeof T)try{if(j=t.props,P=(p=T.contextType)&&n[p.__c],O=p?P?P.props.value:p.__:n,r.__c?h=(f=t.__c=r.__c).__=f.__E:(\\\"prototype\\\"in T&&T.prototype.render?t.__c=f=new T(j,O):(t.__c=f=new b(j,O),f.constructor=T,f.render=q),P&&P.sub(f),f.props=j,f.state||(f.state={}),f.context=O,f.__n=n,m=f.__d=!0,f.__h=[],f._sb=[]),null==f.__s&&(f.__s=f.state),null!=T.getDerivedStateFromProps&&(f.__s==f.state&&(f.__s=d({},f.__s)),d(f.__s,T.getDerivedStateFromProps(j,f.__s))),_=f.props,v=f.state,f.__v=t,m)null==T.getDerivedStateFromProps&&null!=f.componentWillMount&&f.componentWillMount(),null!=f.componentDidMount&&f.__h.push(f.componentDidMount);else{if(null==T.getDerivedStateFromProps&&j!==_&&null!=f.componentWillReceiveProps&&f.componentWillReceiveProps(j,O),!f.__e&&(null!=f.shouldComponentUpdate&&!1===f.shouldComponentUpdate(j,f.__s,O)||t.__v===r.__v)){for(t.__v!==r.__v&&(f.props=j,f.state=f.__s,f.__d=!1),t.__e=r.__e,t.__k=r.__k,t.__k.forEach(function(e){e&&(e.__=t)}),w=0;w<f._sb.length;w++)f.__h.push(f._sb[w]);f._sb=[],f.__h.length&&a.push(f);break e}null!=f.componentWillUpdate&&f.componentWillUpdate(j,f.__s,O),null!=f.componentDidUpdate&&f.__h.push(function(){f.componentDidUpdate(_,v,g)})}if(f.context=O,f.props=j,f.__P=e,f.__e=!1,I=l.__r,A=0,\\\"prototype\\\"in T&&T.prototype.render){for(f.state=f.__s,f.__d=!1,I&&I(t),p=f.render(f.props,f.state,f.context),E=0;E<f._sb.length;E++)f.__h.push(f._sb[E]);f._sb=[]}else for(;f.__d=!1,I&&I(t),p=f.render(f.props,f.state,f.context),f.state=f.__s,f.__d&&++A<25;);f.state=f.__s,null!=f.getChildContext&&(n=d(d({},n),f.getChildContext())),m||null==f.getSnapshotBeforeUpdate||(g=f.getSnapshotBeforeUpdate(_,v)),S(e,y(C=null!=p&&p.type===k&&null==p.key?p.props.children:p)?C:[C],t,r,n,o,i,a,u,c,s),f.base=t.__e,t.__u&=-161,f.__h.length&&a.push(f),h&&(f.__E=f.__=null)}catch(x){t.__v=null,c||null!=i?(t.__e=u,t.__u|=c?160:32,i[i.indexOf(u)]=null):(t.__e=r.__e,t.__k=r.__k),l.__e(x,t,r)}else null==i&&t.__v===r.__v?(t.__k=r.__k,t.__e=r.__e):t.__e=z(r.__e,t,r,n,o,i,a,c,s);(p=l.diffed)&&p(t)}function j(r,e,t){e.__d=void 0;for(var n=0;n<t.length;n++)N(t[n],t[++n],t[++n]);l.__c&&l.__c(e,r),r.some(function(t){try{r=t.__h,t.__h=[],r.some(function(e){e.call(t)})}catch(e){l.__e(e,t.__v)}})}function z(e,t,r,n,o,i,a,u,c){var l,s,p,f,d,m,b,_=r.props,v=t.props,g=t.type;if(o=\\\"svg\\\"===g?\\\"http://www.w3.org/2000/svg\\\":\\\"math\\\"===g?\\\"http://www.w3.org/1998/Math/MathML\\\":o||\\\"http://www.w3.org/1999/xhtml\\\",null!=i)for(l=0;l<i.length;l++)if((d=i[l])&&\\\"setAttribute\\\"in d==!!g&&(g?d.localName===g:3===d.nodeType)){e=d,i[l]=null;break}if(null==e){if(null===g)return document.createTextNode(v);e=document.createElementNS(o,g,v.is&&v),i=null,u=!1}if(null===g)_===v||u&&e.data===v||(e.data=v);else{if(i=i&&n2.call(e.childNodes),_=r.props||h,!u&&null!=i)for(_={},l=0;l<e.attributes.length;l++)_[(d=e.attributes[l]).name]=d.value;for(l in _)if(d=_[l],\\\"children\\\"!=l)if(\\\"dangerouslySetInnerHTML\\\"==l)p=d;else if(\\\"key\\\"!==l&&!(l in v)){if(\\\"value\\\"==l&&\\\"defaultValue\\\"in v||\\\"checked\\\"==l&&\\\"defaultChecked\\\"in v)continue;A(e,l,null,d,o)}for(l in v)d=v[l],\\\"children\\\"==l?f=d:\\\"dangerouslySetInnerHTML\\\"==l?s=d:\\\"value\\\"==l?m=d:\\\"checked\\\"==l?b=d:\\\"key\\\"===l||u&&\\\"function\\\"!=typeof d||_[l]===d||A(e,l,d,_[l],o);if(s)u||p&&(s.__html===p.__html||s.__html===e.innerHTML)||(e.innerHTML=s.__html),t.__k=[];else if(p&&(e.innerHTML=\\\"\\\"),S(e,y(f)?f:[f],t,r,n,\\\"foreignObject\\\"===g?\\\"http://www.w3.org/1999/xhtml\\\":o,i,a,i?i[0]:r.__k&&x(r,0),u,c),null!=i)for(l=i.length;l--;)null!=i[l]&&w(i[l]);u||(l=\\\"value\\\",void 0!==m&&(m!==e[l]||\\\"progress\\\"===g&&!m||\\\"option\\\"===g&&m!==_[l])&&A(e,l,m,_[l],o),l=\\\"checked\\\",void 0!==b&&b!==e[l]&&A(e,l,b,_[l],o))}return e}function N(e,t,r){try{\\\"function\\\"==typeof e?e(t):e.current=t}catch(n){l.__e(n,r)}}function V(e,t,r){var n,o;if(l.unmount&&l.unmount(e),!(n=e.ref)||n.current&&n.current!==e.__e||N(n,null,t),null!=(n=e.__c)){if(n.componentWillUnmount)try{n.componentWillUnmount()}catch(i){l.__e(i,t)}n.base=n.__P=null}if(n=e.__k)for(o=0;o<n.length;o++)n[o]&&V(n[o],t,r||\\\"function\\\"!=typeof e.type);r||null==e.__e||w(e.__e),e.__c=e.__=e.__e=e.__d=void 0}function q(e,t,r){return this.constructor(e,r)}function B(e,t,r){var n,o,i,a;l.__&&l.__(e,t),o=(n=\\\"function\\\"==typeof r)?null:r&&r.__k||t.__k,i=[],a=[],O(t,e=(!n&&r||t).__k=_(k,null,[e]),o||h,h,t.namespaceURI,!n&&r?[r]:!o&&t.firstChild?n2.call(t.childNodes):null,i,!n&&r?r:o?o.__e:t.firstChild,n,a),j(i,e,a)}n2=p.slice,l={__e:function(e,t,r,n){for(var o,i,a;t=t.__;)if((o=t.__c)&&!o.__)try{if((i=o.constructor)&&null!=i.getDerivedStateFromError&&(o.setState(i.getDerivedStateFromError(e)),a=o.__d),null!=o.componentDidCatch&&(o.componentDidCatch(e,n||{}),a=o.__d),a)return o.__E=o}catch(u){e=u}throw e}},u=0,t2=function(e){return null!=e&&null==e.constructor},b.prototype.setState=function(e,t){var r=null!=this.__s&&this.__s!==this.state?this.__s:this.__s=d({},this.state);(e=\\\"function\\\"==typeof e?e(d({},r),this.props):e)&&d(r,e),null!=e&&this.__v&&(t&&this._sb.push(t),M(this))},b.prototype.forceUpdate=function(e){this.__v&&(this.__e=!0,e&&this.__h.push(e),M(this))},b.prototype.render=k,i=[],r=\\\"function\\\"==typeof Promise?Promise.prototype.then.bind(Promise.resolve()):setTimeout,f=function(e,t){return e.__v.__b-t.__v.__b},P.__r=0,e=0,c=F(!1),s=F(!0),a=0,init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject();var HIGHLIGHT_PRE_TAG=\\\"__aa-highlight__\\\",HIGHLIGHT_POST_TAG=\\\"__/aa-highlight__\\\";function createAttributeSet(){var r=0<arguments.length&&void 0!==arguments[0]?arguments[0]:[];return{get:function(){return r},add:function(e){var t=r[r.length-1];(null==t?void 0:t.isHighlighted)===e.isHighlighted?r[r.length-1]={value:t.value+e.value,isHighlighted:t.isHighlighted}:r.push(e)}}}function parseAttribute(e){var t=e.highlightedValue.split(HIGHLIGHT_PRE_TAG),r=t.shift(),n=createAttributeSet(r?[{value:r,isHighlighted:!1}]:[]);return t.forEach(function(e){var t=e.split(HIGHLIGHT_POST_TAG);n.add({value:t[0],isHighlighted:!0}),\\\"\\\"!==t[1]&&n.add({value:t[1],isHighlighted:!1})}),n.get()}function _toConsumableArray7(e){return _arrayWithoutHoles7(e)||_iterableToArray7(e)||_unsupportedIterableToArray10(e)||_nonIterableSpread7()}function _nonIterableSpread7(){throw new TypeError(\\\"Invalid attempt to spread non-iterable instance.\\\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\\\")}function _unsupportedIterableToArray10(e,t){var r;if(e)return\\\"string\\\"==typeof e?_arrayLikeToArray10(e,t):\\\"Map\\\"===(r=\\\"Object\\\"===(r=Object.prototype.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:r)||\\\"Set\\\"===r?Array.from(e):\\\"Arguments\\\"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_arrayLikeToArray10(e,t):void 0}function _iterableToArray7(e){if(\\\"undefined\\\"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e[\\\"@@iterator\\\"])return Array.from(e)}function _arrayWithoutHoles7(e){if(Array.isArray(e))return _arrayLikeToArray10(e)}function _arrayLikeToArray10(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function parseAlgoliaHitHighlight(e){var t=e.hit,r=e.attribute,r=Array.isArray(r)?r:[r],n=getAttributeValueByPath(t,[\\\"_highlightResult\\\"].concat(_toConsumableArray7(r),[\\\"value\\\"]));return\\\"string\\\"!=typeof n&&(warn(!1,'The attribute \\\"'.concat(r.join(\\\".\\\"),'\\\" described by the path ').concat(JSON.stringify(r),\\\" does not exist on the hit. Did you set it in `attributesToHighlight`?\\\")+\\\"\\\\nSee https://www.algolia.com/doc/api-reference/api-parameters/attributesToHighlight/\\\"),n=getAttributeValueByPath(t,r)||\\\"\\\"),parseAttribute({highlightedValue:n})}init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject();var htmlEscapes={\\\"&\\\":\\\"&\\\",\\\"<\\\":\\\"<\\\",\\\">\\\":\\\">\\\",\\\""\\\":'\\\"',\\\"'\\\":\\\"'\\\"},hasAlphanumeric=new RegExp(/\\\\w/i),regexEscapedHtml=/&(amp|quot|lt|gt|#39);/g,regexHasEscapedHtml=RegExp(regexEscapedHtml.source);function unescape(e){return e&®exHasEscapedHtml.test(e)?e.replace(regexEscapedHtml,function(e){return htmlEscapes[e]}):e}function isPartHighlighted(e,t){var r=e[t],n=(null==(n=e[t+1])?void 0:n.isHighlighted)||!0,o=(null==(o=e[t-1])?void 0:o.isHighlighted)||!0;return hasAlphanumeric.test(unescape(r.value))||o!==n?r.isHighlighted:o}function _typeof20(e){return(_typeof20=\\\"function\\\"==typeof Symbol&&\\\"symbol\\\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\\\"function\\\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\\\"symbol\\\":typeof e})(e)}function ownKeys18(t,e){var r,n=Object.keys(t);return Object.getOwnPropertySymbols&&(r=Object.getOwnPropertySymbols(t),e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)),n}function _objectSpread18(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ownKeys18(Object(r),!0).forEach(function(e){_defineProperty18(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ownKeys18(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function _defineProperty18(e,t,r){return(t=_toPropertyKey18(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _toPropertyKey18(e){var t=_toPrimitive18(e,\\\"string\\\");return\\\"symbol\\\"===_typeof20(t)?t:String(t)}function _toPrimitive18(e,t){if(\\\"object\\\"!==_typeof20(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0===r)return(\\\"string\\\"===t?String:Number)(e);r=r.call(e,t||\\\"default\\\");if(\\\"object\\\"!==_typeof20(r))return r;throw new TypeError(\\\"@@toPrimitive must return a primitive value.\\\")}function reverseHighlightedParts(r){return r.some(function(e){return e.isHighlighted})?r.map(function(e,t){return _objectSpread18(_objectSpread18({},e),{},{isHighlighted:!isPartHighlighted(r,t)})}):r.map(function(e){return _objectSpread18(_objectSpread18({},e),{},{isHighlighted:!1})})}function parseAlgoliaHitReverseHighlight(e){return reverseHighlightedParts(parseAlgoliaHitHighlight(e))}function _toConsumableArray8(e){return _arrayWithoutHoles8(e)||_iterableToArray8(e)||_unsupportedIterableToArray11(e)||_nonIterableSpread8()}function _nonIterableSpread8(){throw new TypeError(\\\"Invalid attempt to spread non-iterable instance.\\\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\\\")}function _unsupportedIterableToArray11(e,t){var r;if(e)return\\\"string\\\"==typeof e?_arrayLikeToArray11(e,t):\\\"Map\\\"===(r=\\\"Object\\\"===(r=Object.prototype.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:r)||\\\"Set\\\"===r?Array.from(e):\\\"Arguments\\\"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_arrayLikeToArray11(e,t):void 0}function _iterableToArray8(e){if(\\\"undefined\\\"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e[\\\"@@iterator\\\"])return Array.from(e)}function _arrayWithoutHoles8(e){if(Array.isArray(e))return _arrayLikeToArray11(e)}function _arrayLikeToArray11(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function parseAlgoliaHitSnippet(e){var t=e.hit,r=e.attribute,r=Array.isArray(r)?r:[r],n=getAttributeValueByPath(t,[\\\"_snippetResult\\\"].concat(_toConsumableArray8(r),[\\\"value\\\"]));return\\\"string\\\"!=typeof n&&(warn(!1,'The attribute \\\"'.concat(r.join(\\\".\\\"),'\\\" described by the path ').concat(JSON.stringify(r),\\\" does not exist on the hit. Did you set it in `attributesToSnippet`?\\\")+\\\"\\\\nSee https://www.algolia.com/doc/api-reference/api-parameters/attributesToSnippet/\\\"),n=getAttributeValueByPath(t,r)||\\\"\\\"),parseAttribute({highlightedValue:n})}function parseAlgoliaHitReverseSnippet(e){return reverseHighlightedParts(parseAlgoliaHitSnippet(e))}function createHighlightComponent(e){var i=e.createElement,a=e.Fragment;function t(e){var t=e.hit,r=e.attribute,n=e.tagName,o=void 0===n?\\\"mark\\\":n;return i(a,{},parseAlgoliaHitHighlight({hit:t,attribute:r}).map(function(e,t){return e.isHighlighted?i(o,{key:t},e.value):e.value}))}return t.__autocomplete_componentName=\\\"Highlight\\\",t}function createReverseHighlightComponent(e){var i=e.createElement,a=e.Fragment;function t(e){var t=e.hit,r=e.attribute,n=e.tagName,o=void 0===n?\\\"mark\\\":n;return i(a,{},parseAlgoliaHitReverseHighlight({hit:t,attribute:r}).map(function(e,t){return e.isHighlighted?i(o,{key:t},e.value):e.value}))}return t.__autocomplete_componentName=\\\"ReverseHighlight\\\",t}function createReverseSnippetComponent(e){var i=e.createElement,a=e.Fragment;function t(e){var t=e.hit,r=e.attribute,n=e.tagName,o=void 0===n?\\\"mark\\\":n;return i(a,{},parseAlgoliaHitReverseSnippet({hit:t,attribute:r}).map(function(e,t){return e.isHighlighted?i(o,{key:t},e.value):e.value}))}return t.__autocomplete_componentName=\\\"ReverseSnippet\\\",t}function createSnippetComponent(e){var i=e.createElement,a=e.Fragment;function t(e){var t=e.hit,r=e.attribute,n=e.tagName,o=void 0===n?\\\"mark\\\":n;return i(a,{},parseAlgoliaHitSnippet({hit:t,attribute:r}).map(function(e,t){return e.isHighlighted?i(o,{key:t},e.value):e.value}))}return t.__autocomplete_componentName=\\\"Snippet\\\",t}function _typeof21(e){return(_typeof21=\\\"function\\\"==typeof Symbol&&\\\"symbol\\\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\\\"function\\\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\\\"symbol\\\":typeof e})(e)}init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject();var _excluded9=[\\\"classNames\\\",\\\"container\\\",\\\"getEnvironmentProps\\\",\\\"getFormProps\\\",\\\"getInputProps\\\",\\\"getItemProps\\\",\\\"getLabelProps\\\",\\\"getListProps\\\",\\\"getPanelProps\\\",\\\"getRootProps\\\",\\\"panelContainer\\\",\\\"panelPlacement\\\",\\\"render\\\",\\\"renderNoResults\\\",\\\"renderer\\\",\\\"detachedMediaQuery\\\",\\\"components\\\",\\\"translations\\\"];function ownKeys19(t,e){var r,n=Object.keys(t);return Object.getOwnPropertySymbols&&(r=Object.getOwnPropertySymbols(t),e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)),n}function _objectSpread19(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ownKeys19(Object(r),!0).forEach(function(e){_defineProperty19(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ownKeys19(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function _defineProperty19(e,t,r){return(t=_toPropertyKey19(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _toPropertyKey19(e){var t=_toPrimitive19(e,\\\"string\\\");return\\\"symbol\\\"===_typeof21(t)?t:String(t)}function _toPrimitive19(e,t){if(\\\"object\\\"!==_typeof21(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0===r)return(\\\"string\\\"===t?String:Number)(e);r=r.call(e,t||\\\"default\\\");if(\\\"object\\\"!==_typeof21(r))return r;throw new TypeError(\\\"@@toPrimitive must return a primitive value.\\\")}function _objectWithoutProperties7(e,t){if(null==e)return{};var r,n=_objectWithoutPropertiesLoose7(e,t);if(Object.getOwnPropertySymbols)for(var o=Object.getOwnPropertySymbols(e),i=0;i<o.length;i++)r=o[i],0<=t.indexOf(r)||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r]);return n}function _objectWithoutPropertiesLoose7(e,t){if(null==e)return{};for(var r,n={},o=Object.keys(e),i=0;i<o.length;i++)r=o[i],0<=t.indexOf(r)||(n[r]=e[r]);return n}var defaultClassNames={clearButton:\\\"aa-ClearButton\\\",detachedCancelButton:\\\"aa-DetachedCancelButton\\\",detachedContainer:\\\"aa-DetachedContainer\\\",detachedFormContainer:\\\"aa-DetachedFormContainer\\\",detachedOverlay:\\\"aa-DetachedOverlay\\\",detachedSearchButton:\\\"aa-DetachedSearchButton\\\",detachedSearchButtonIcon:\\\"aa-DetachedSearchButtonIcon\\\",detachedSearchButtonPlaceholder:\\\"aa-DetachedSearchButtonPlaceholder\\\",detachedSearchButtonQuery:\\\"aa-DetachedSearchButtonQuery\\\",form:\\\"aa-Form\\\",input:\\\"aa-Input\\\",inputWrapper:\\\"aa-InputWrapper\\\",inputWrapperPrefix:\\\"aa-InputWrapperPrefix\\\",inputWrapperSuffix:\\\"aa-InputWrapperSuffix\\\",item:\\\"aa-Item\\\",label:\\\"aa-Label\\\",list:\\\"aa-List\\\",loadingIndicator:\\\"aa-LoadingIndicator\\\",panel:\\\"aa-Panel\\\",panelLayout:\\\"aa-PanelLayout aa-Panel--scrollable\\\",root:\\\"aa-Autocomplete\\\",source:\\\"aa-Source\\\",sourceFooter:\\\"aa-SourceFooter\\\",sourceHeader:\\\"aa-SourceHeader\\\",sourceNoResults:\\\"aa-SourceNoResults\\\",submitButton:\\\"aa-SubmitButton\\\"},defaultRender=function defaultRender2(e,t){var r=e.children;(0,e.render)(r,t)},defaultRenderer={createElement:_,Fragment:k,render:B};function getDefaultOptions(e){var t=e.classNames,r=e.container,n=e.getEnvironmentProps,o=e.getFormProps,i=e.getInputProps,a=e.getItemProps,u=e.getLabelProps,c=e.getListProps,l=e.getPanelProps,s=e.getRootProps,p=e.panelContainer,f=e.panelPlacement,d=e.render,y=e.renderNoResults,m=e.renderer,b=e.detachedMediaQuery,_=e.components,v=e.translations,g=_objectWithoutProperties7(e,_excluded9),h=\\\"undefined\\\"!=typeof window?window:{},r=getHTMLElement(h,r),m=(invariant(\\\"INPUT\\\"!==r.tagName,\\\"The `container` option does not support `input` elements. You need to change the container to a `div`.\\\"),warn(!(d&&m&&(null==m||!m.render)),\\\"You provided the `render` option but did not provide a `renderer.render`. Since v1.6.0, you can provide a `render` function directly in `renderer`.\\\\nTo get rid of this warning, do any of the following depending on your use case.\\\\n- If you are using the `render` option only to override Autocomplete's default `render` function, pass the `render` function into `renderer` and remove the `render` option.\\\\n- If you are using the `render` option to customize the layout, pass your `render` function into `renderer` and use it from the provided parameters of the `render` option.\\\\n- If you are using the `render` option to work with React 18, pass an empty `render` function into `renderer`.\\\\nSee https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-render\\\"),warn(!m||d||m.Fragment&&m.createElement&&m.render,\\\"You provided an incomplete `renderer` (missing: \\\".concat([!(null!=m&&m.createElement)&&\\\"`renderer.createElement`\\\",!(null!=m&&m.Fragment)&&\\\"`renderer.Fragment`\\\",!(null!=m&&m.render)&&\\\"`renderer.render`\\\"].filter(Boolean).join(\\\", \\\"),\\\"). This can cause rendering issues.\\\")+\\\"\\\\nSee https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-renderer\\\"),_objectSpread19(_objectSpread19({},defaultRenderer),m)),S={Highlight:createHighlightComponent(m),ReverseHighlight:createReverseHighlightComponent(m),ReverseSnippet:createReverseSnippetComponent(m),Snippet:createSnippetComponent(m)};return{renderer:{classNames:mergeClassNames(defaultClassNames,null!=t?t:{}),container:r,getEnvironmentProps:null!=n?n:function(e){return e.props},getFormProps:null!=o?o:function(e){return e.props},getInputProps:null!=i?i:function(e){return e.props},getItemProps:null!=a?a:function(e){return e.props},getLabelProps:null!=u?u:function(e){return e.props},getListProps:null!=c?c:function(e){return e.props},getPanelProps:null!=l?l:function(e){return e.props},getRootProps:null!=s?s:function(e){return e.props},panelContainer:p?getHTMLElement(h,p):h.document.body,panelPlacement:null!=f?f:\\\"input-wrapper-width\\\",render:null!=d?d:defaultRender,renderNoResults:y,renderer:m,detachedMediaQuery:null!=b?b:getComputedStyle(h.document.documentElement).getPropertyValue(\\\"--aa-detached-media-query\\\"),components:_objectSpread19(_objectSpread19({},S),_),translations:_objectSpread19(_objectSpread19({},{clearButtonTitle:\\\"Clear\\\",detachedCancelButtonText:\\\"Cancel\\\",detachedSearchButtonTitle:\\\"Search\\\",submitButtonTitle:\\\"Submit\\\"}),v)},core:_objectSpread19(_objectSpread19({},g),{},{id:null!=(t=g.id)?t:generateAutocompleteId(),environment:h})}}function getPanelPlacementStyle(e){var t=e.panelPlacement,r=e.container,n=e.form,o=e.environment,i=r.getBoundingClientRect(),a=(o.pageYOffset||o.document.documentElement.scrollTop||o.document.body.scrollTop||0)+i.top+i.height;switch(t){case\\\"start\\\":return{top:a,left:i.left};case\\\"end\\\":return{top:a,right:o.document.documentElement.clientWidth-(i.left+i.width)};case\\\"full-width\\\":return{top:a,left:0,right:0,width:\\\"unset\\\",maxWidth:\\\"unset\\\"};case\\\"input-wrapper-width\\\":var u=n.getBoundingClientRect();return{top:a,left:u.left,right:o.document.documentElement.clientWidth-(u.left+u.width),width:\\\"unset\\\",maxWidth:\\\"unset\\\"};default:throw new Error(\\\"[Autocomplete] The `panelPlacement` value \\\".concat(JSON.stringify(t),\\\" is not valid.\\\"))}}function _typeof22(e){return(_typeof22=\\\"function\\\"==typeof Symbol&&\\\"symbol\\\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\\\"function\\\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\\\"symbol\\\":typeof e})(e)}function _extends(){return(_extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r,n=arguments[t];for(r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e}).apply(this,arguments)}function ownKeys20(t,e){var r,n=Object.keys(t);return Object.getOwnPropertySymbols&&(r=Object.getOwnPropertySymbols(t),e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)),n}function _objectSpread20(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ownKeys20(Object(r),!0).forEach(function(e){_defineProperty20(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ownKeys20(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function _defineProperty20(e,t,r){return(t=_toPropertyKey20(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _toPropertyKey20(e){var t=_toPrimitive20(e,\\\"string\\\");return\\\"symbol\\\"===_typeof22(t)?t:String(t)}function _toPrimitive20(e,t){if(\\\"object\\\"!==_typeof22(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0===r)return(\\\"string\\\"===t?String:Number)(e);r=r.call(e,t||\\\"default\\\");if(\\\"object\\\"!==_typeof22(r))return r;throw new TypeError(\\\"@@toPrimitive must return a primitive value.\\\")}function renderSearchBox(e){var t=e.autocomplete,r=e.autocompleteScopeApi,n=e.dom,o=e.propGetters,i=e.state;setPropertiesWithoutEvents(n.root,o.getRootProps(_objectSpread20({state:i,props:t.getRootProps({})},r))),setPropertiesWithoutEvents(n.input,o.getInputProps(_objectSpread20({state:i,props:t.getInputProps({inputElement:n.input}),inputElement:n.input},r))),setProperties(n.label,{hidden:\\\"stalled\\\"===i.status}),setProperties(n.loadingIndicator,{hidden:\\\"stalled\\\"!==i.status}),setProperties(n.clearButton,{hidden:!i.query}),setProperties(n.detachedSearchButtonQuery,{textContent:i.query}),setProperties(n.detachedSearchButtonPlaceholder,{hidden:Boolean(i.query)})}function renderPanel(e,t){var r,n,o,i=t.autocomplete,a=t.autocompleteScopeApi,u=t.classNames,c=t.html,l=t.dom,s=t.panelContainer,p=t.propGetters,f=t.state,d=t.components,y=t.renderer;f.isOpen?(s.contains(l.panel)||\\\"loading\\\"===f.status||s.appendChild(l.panel),l.panel.classList.toggle(\\\"aa-Panel--stalled\\\",\\\"stalled\\\"===f.status),r=f.collections.filter(function(e){var t=e.source,r=e.items;return t.templates.noResults||0<r.length}).map(function(e,t){var r=e.source,n=e.items;return y.createElement(\\\"section\\\",{key:t,className:u.source,\\\"data-autocomplete-source-id\\\":r.sourceId},r.templates.header&&y.createElement(\\\"div\\\",{className:u.sourceHeader},r.templates.header({components:d,createElement:y.createElement,Fragment:y.Fragment,items:n,source:r,state:f,html:c})),r.templates.noResults&&0===n.length?y.createElement(\\\"div\\\",{className:u.sourceNoResults},r.templates.noResults({components:d,createElement:y.createElement,Fragment:y.Fragment,source:r,state:f,html:c})):y.createElement(\\\"ul\\\",_extends({className:u.list},p.getListProps(_objectSpread20({state:f,props:i.getListProps({source:r})},a))),n.map(function(e){var t=i.getItemProps({item:e,source:r});return y.createElement(\\\"li\\\",_extends({key:t.id,className:u.item},p.getItemProps(_objectSpread20({state:f,props:t},a))),r.templates.item({components:d,createElement:y.createElement,Fragment:y.Fragment,item:e,state:f,html:c}))})),r.templates.footer&&y.createElement(\\\"div\\\",{className:u.sourceFooter},r.templates.footer({components:d,createElement:y.createElement,Fragment:y.Fragment,items:n,source:r,state:f,html:c})))}),n=y.createElement(y.Fragment,null,y.createElement(\\\"div\\\",{className:u.panelLayout},r),y.createElement(\\\"div\\\",{className:\\\"aa-GradientBottom\\\"})),o=r.reduce(function(e,t){return e[t.props[\\\"data-autocomplete-source-id\\\"]]=t,e},{}),e(_objectSpread20(_objectSpread20({children:n,state:f,sections:r,elements:o},y),{},{components:d,html:c},a),l.panel)):s.contains(l.panel)&&s.removeChild(l.panel)}init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject();var userAgents2=[{segment:\\\"autocomplete-js\\\",version:version}],_excluded10=[\\\"components\\\"];function _typeof23(e){return(_typeof23=\\\"function\\\"==typeof Symbol&&\\\"symbol\\\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\\\"function\\\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\\\"symbol\\\":typeof e})(e)}function _objectWithoutProperties8(e,t){if(null==e)return{};var r,n=_objectWithoutPropertiesLoose8(e,t);if(Object.getOwnPropertySymbols)for(var o=Object.getOwnPropertySymbols(e),i=0;i<o.length;i++)r=o[i],0<=t.indexOf(r)||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r]);return n}function _objectWithoutPropertiesLoose8(e,t){if(null==e)return{};for(var r,n={},o=Object.keys(e),i=0;i<o.length;i++)r=o[i],0<=t.indexOf(r)||(n[r]=e[r]);return n}function ownKeys21(t,e){var r,n=Object.keys(t);return Object.getOwnPropertySymbols&&(r=Object.getOwnPropertySymbols(t),e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)),n}function _objectSpread21(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ownKeys21(Object(r),!0).forEach(function(e){_defineProperty21(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ownKeys21(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function _defineProperty21(e,t,r){return(t=_toPropertyKey21(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _toPropertyKey21(e){var t=_toPrimitive21(e,\\\"string\\\");return\\\"symbol\\\"===_typeof23(t)?t:String(t)}function _toPrimitive21(e,t){if(\\\"object\\\"!==_typeof23(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0===r)return(\\\"string\\\"===t?String:Number)(e);r=r.call(e,t||\\\"default\\\");if(\\\"object\\\"!==_typeof23(r))return r;throw new TypeError(\\\"@@toPrimitive must return a primitive value.\\\")}var instancesCount=0;function autocomplete(e){var t=createEffectWrapper(),r=t.runEffect,n=t.cleanupEffects,o=t.runEffects,t=createReactiveWrapper(),i=t.reactive,a=t.runReactives,u=createRef(!1),c=createRef(e),l=createRef(void 0),s=i(function(){return getDefaultOptions(c.current)}),p=i(function(){return s.value.core.environment.matchMedia(s.value.renderer.detachedMediaQuery).matches}),f=i(function(){return createAutocomplete(_objectSpread21(_objectSpread21({},s.value.core),{},{onStateChange:function(e){var t,r;u.current=e.state.collections.some(function(e){return e.source.templates.noResults}),null!=(r=l.current)&&r.call(l,e),null!=(t=(r=s.value.core).onStateChange)&&t.call(r,e)},shouldPanelOpen:c.current.shouldPanelOpen||function(e){var t,r=e.state;return!!p.value||(t=0<getItemsCount(r),(s.value.core.openOnFocus||r.query)&&(r=Boolean(u.current||s.value.renderer.renderNoResults),!t)&&r)||t},__autocomplete_metadata:{userAgents:userAgents2,options:e}}))}),d=createRef(_objectSpread21({collections:[],completion:null,context:{},isOpen:!1,query:\\\"\\\",activeItemId:null,status:\\\"idle\\\"},s.value.core.initialState)),y={getEnvironmentProps:s.value.renderer.getEnvironmentProps,getFormProps:s.value.renderer.getFormProps,getInputProps:s.value.renderer.getInputProps,getItemProps:s.value.renderer.getItemProps,getLabelProps:s.value.renderer.getLabelProps,getListProps:s.value.renderer.getListProps,getPanelProps:s.value.renderer.getPanelProps,getRootProps:s.value.renderer.getRootProps},m={setActiveItemId:f.value.setActiveItemId,setQuery:f.value.setQuery,setCollections:f.value.setCollections,setIsOpen:f.value.setIsOpen,setStatus:f.value.setStatus,setContext:f.value.setContext,refresh:f.value.refresh,navigator:f.value.navigator},b=i(function(){return htm_module_default.bind(s.value.renderer.renderer.createElement)}),_=i(function(){return createAutocompleteDom({autocomplete:f.value,autocompleteScopeApi:m,classNames:s.value.renderer.classNames,environment:s.value.core.environment,isDetached:p.value,placeholder:s.value.core.placeholder,propGetters:y,setIsModalOpen:S,state:d.current,translations:s.value.renderer.translations})});function v(){setProperties(_.value.panel,{style:p.value?{}:getPanelPlacementStyle({panelPlacement:s.value.renderer.panelPlacement,container:_.value.root,form:_.value.form,environment:s.value.core.environment})})}function g(e){d.current=e;var t={autocomplete:f.value,autocompleteScopeApi:m,classNames:s.value.renderer.classNames,components:s.value.renderer.components,container:s.value.renderer.container,html:b.value,dom:_.value,panelContainer:p.value?_.value.detachedContainer:s.value.renderer.panelContainer,propGetters:y,state:d.current,renderer:s.value.renderer.renderer},r=!getItemsCount(e)&&!u.current&&s.value.renderer.renderNoResults||s.value.renderer.render;renderSearchBox(t),renderPanel(r,t)}function h(){var e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},t=(n(),s.value.renderer),r=t.components,t=_objectWithoutProperties8(t,_excluded10);c.current=mergeDeep(t,s.value.core,{components:pickBy(r,function(e){return!e.value.hasOwnProperty(\\\"__autocomplete_componentName\\\")}),initialState:d.current},e),a(),o(),f.value.refresh().then(function(){g(d.current)})}function S(e){e!==s.value.core.environment.document.body.contains(_.value.detachedOverlay)&&(e?(s.value.core.environment.document.body.appendChild(_.value.detachedOverlay),s.value.core.environment.document.body.classList.add(\\\"aa-Detached\\\"),_.value.input.focus()):(s.value.core.environment.document.body.removeChild(_.value.detachedOverlay),s.value.core.environment.document.body.classList.remove(\\\"aa-Detached\\\")))}return r(function(){var e=f.value.getEnvironmentProps({formElement:_.value.form,panelElement:_.value.panel,inputElement:_.value.input});return setProperties(s.value.core.environment,e),function(){setProperties(s.value.core.environment,Object.keys(e).reduce(function(e,t){return _objectSpread21(_objectSpread21({},e),{},_defineProperty21({},t,void 0))},{}))}}),r(function(){var e=p.value?s.value.core.environment.document.body:s.value.renderer.panelContainer,t=p.value?_.value.detachedOverlay:_.value.panel;return p.value&&d.current.isOpen&&S(!0),g(d.current),function(){e.contains(t)&&(e.removeChild(t),e.classList.remove(\\\"aa-Detached\\\"))}}),r(function(){var e=s.value.renderer.container;return e.appendChild(_.value.root),function(){e.removeChild(_.value.root)}}),r(function(){var n=debounce(function(e){g(e.state)},0);return l.current=function(e){var t=e.state,r=e.prevState;p.value&&r.isOpen!==t.isOpen&&S(t.isOpen),p.value||!t.isOpen||r.isOpen||v(),t.query!==r.query&&s.value.core.environment.document.querySelectorAll(\\\".aa-Panel--scrollable\\\").forEach(function(e){0!==e.scrollTop&&(e.scrollTop=0)}),n({state:t})},function(){l.current=void 0}}),r(function(){var e=debounce(function(){var e=p.value;p.value=s.value.core.environment.matchMedia(s.value.renderer.detachedMediaQuery).matches,e!==p.value?h({}):requestAnimationFrame(v)},20);return s.value.core.environment.addEventListener(\\\"resize\\\",e),function(){s.value.core.environment.removeEventListener(\\\"resize\\\",e)}}),r(function(){var e,t;return p.value?(r((e=s.value.core.environment.matchMedia(getComputedStyle(s.value.core.environment.document.documentElement).getPropertyValue(\\\"--aa-detached-modal-media-query\\\"))).matches),(t=Boolean(e.addEventListener))?e.addEventListener(\\\"change\\\",n):e.addListener(n),function(){t?e.removeEventListener(\\\"change\\\",n):e.removeListener(n)}):function(){};function r(e){_.value.detachedContainer.classList.toggle(\\\"aa-DetachedContainer--modal\\\",e)}function n(e){r(e.matches)}}),r(function(){return requestAnimationFrame(v),function(){}}),warn(0===instancesCount,\\\"Autocomplete doesn't support multiple instances running at the same time. Make sure to destroy the previous instance before creating a new one.\\\\n\\\\nSee: https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-destroy\\\"),instancesCount++,_objectSpread21(_objectSpread21({},m),{},{update:h,destroy:function(){instancesCount--,n()}})}var import_visibility_observer=__toESM(require_visibility_observer()),emptyContext=(init_esbuild_inject(),{noNavigate:void 0,newQuery:void 0,noClose:void 0});function fixPanelPosition(e){var t;e&&(t=e.getBoundingClientRect(),document.documentElement.style.setProperty(\\\"--position-autocomplete-panel-top\\\",t.bottom+\\\"px\\\"))}function getActiveElement(e=document.activeElement){var t=e.shadowRoot,r=e.contentDocument;return t?.activeElement?getActiveElement(t.activeElement):r?.activeElement?getActiveElement(r.activeElement):e}function getSubPlugins(r){const n=[];return $tw.wiki.filterTiddlers(\\\"[all[shadows]tag[$:/tags/AutoCompletePlugin]]\\\").map(e=>$tw.wiki.getTiddler(e)?.fields).filter(e=>void 0!==e).sort((e,t)=>(t.priority??0)-(e.priority??0)).forEach(t=>{try{let e=require(t.title).plugin;\\\"function\\\"==typeof e&&(e=e(r)),n.push(e)}catch(e){console.error(\\\"Failed to load command palette plugin \\\"+t.title,e)}}),n}function handleDarkMode(){var e=0<$tw.wiki.filterTiddlers(\\\"[[$:/palette]get[text]get[color-scheme]compare:string:eq[dark]]\\\").length,t=document.body?.dataset;void 0!==t&&(t.theme=e?\\\"dark\\\":\\\"light\\\")}init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject(),init_esbuild_inject();var uniqSourcesBy=i=>function(...e){const o=new Set;return e.map(n=>{const e=n.getItems().filter(e=>{var t=i({source:n,item:e}),r=o.has(t);return o.add(t),!r});return{...n,getItems(){return e}}})},AutoCompleteSearchWidget=class extends import_widget.widget{constructor(e,t){super(e,t),this.id=\\\"default\\\",this.previouslyFocusedElement=null,this.cycleHistoryMode=!1,this.autoFocus=!0,this.panelBelowInput=!0,this.destroyWhenNotVis=!1,this.fixPanelPosition=this.fixPanelPosition.bind(this)}refresh(e){return!1}render(e,t){this.parentDomNode=e,this.computeAttributes(),this.execute(),this.id=this.getAttribute(\\\"id\\\",\\\"default\\\");var r=this.getAttribute(\\\"prefix\\\",\\\"\\\");this.cycleHistoryMode=\\\"yes\\\"===this.getAttribute(\\\"cycleHistoryMode\\\",\\\"no\\\"),this.autoFocus=\\\"yes\\\"===this.getAttribute(\\\"autoFocus\\\",\\\"yes\\\"),this.panelBelowInput=\\\"yes\\\"===this.getAttribute(\\\"panelBelowInput\\\",\\\"yes\\\"),this.destroyWhenNotVis=\\\"yes\\\"===this.getAttribute(\\\"destroyWhenNotVis\\\",\\\"no\\\");const a=\\\"yes\\\"===this.wiki.getTiddlerText(\\\"$:/plugins/linonetwo/autocomplete/configs/TitlePriorityText\\\",\\\"no\\\");var n=$tw.utils.domMaker(\\\"nav\\\",{\\\"class\\\":\\\"tw-auto-complete-container\\\"});this.parentDomNode.insertBefore(n,t),this.domNodes.push(n),handleDarkMode();const u=uniqSourcesBy(({item:e})=>e.title),o=(this.previouslyFocusedElement=getActiveElement(),e=>{this.autoCompleteState=e});this.autoCompleteInstance=autocomplete({id:this.id,container:n,classNames:{panel:\\\"tw-commandpalette-panel-\\\"+this.id},placeholder:\\\"Search for tiddlers\\\",initialState:{query:r},defaultActiveItemId:0,onStateChange(e){o(e)},autoFocus:this.autoFocus,openOnFocus:this.autoFocus,ignoreCompositionEvents:!0,navigator:{navigate:this.onEnter.bind(this),navigateNewTab:this.onCtrlEnter.bind(this),navigateNewWindow:this.onShiftEnter.bind(this)},plugins:getSubPlugins(this.id),reshape({sourcesBySourceId:e}){const{title:t,\\\"title-pinyin\\\":r,\\\"story-history\\\":n,text:o,...i}=e;return[...u(...[...a?[t,o]:[o,t],r,n].filter(Boolean)),...Object.values(i)]}}),this.autoCompleteInstance.setContext({widget:this}),this.onCommandPaletteInputDOMInit(n),this.onCommandPaletteDetachedDOMInit(n)}onVisibilityChange(e){e.isIntersecting||(this.destroy(),(0,import_visibility_observer.unobserve)(e.target,this.onVisibilityChange.bind(this)))}onEnter({itemUrl:e,state:t}){\\\"\\\"!==t.query.trim()&&t.context.addHistoryItem?.(t.query),void 0!==t.context.newQuery&&(this.autoCompleteInstance?.setQuery?.(t.context.newQuery),this.autoCompleteInstance?.setContext({newQuery:void 0}),this.autoCompleteInstance?.refresh?.()),t.context.noNavigate||this.dispatchEvent({type:\\\"tm-navigate\\\",navigateTo:e,navigateFromNode:this}),t.context.noClose||this.setCloseState(),this.clearContext()}onCtrlEnter({itemUrl:e,state:t}){$tw.utils.copyToClipboard(e),t.context.noClose||this.setCloseState(),this.clearContext()}onShiftEnter({state:e}){var t,r=this.wiki.getTiddler(\\\"$:/plugins/linonetwo/autocomplete/widget/templates/FilterResultTemplate\\\"),n=e.context,o=n.filter||n.filterToOpen;r&&o&&(t=\\\"$:/temp/volatile/\\\"+Date.now(),this.wiki.addTiddler({...r.fields,title:t,filter:o}),this.dispatchEvent({type:\\\"tm-navigate\\\",navigateTo:t})),n.noClose||this.setCloseState(),this.clearContext()}clearContext(){this.autoCompleteInstance?.setContext(emptyContext)}onCommandPaletteDetachedDOMInit(e){var t=e.querySelector(\\\"button.aa-DetachedSearchButton\\\");null!==t&&(t.click(),t.style.display=\\\"none\\\",null!==(t=this.document.querySelector(\\\"body.aa-Detached > div.aa-DetachedOverlay\\\")))&&this.destroyWhenNotVis&&(0,import_visibility_observer.observe)(t,this.onVisibilityChange.bind(this))}onCommandPaletteInputDOMInit(e){var t=e.querySelector(\\\"input\\\");null!==t&&(this.destroyWhenNotVis&&(0,import_visibility_observer.observe)(e,this.onVisibilityChange.bind(this)),this.registerHistoryKeyboardHandlers(t),this.autoFocus&&t.focus(),t.addEventListener(\\\"keydown\\\",e=>{\\\"Escape\\\"===e.key?this.setCloseState():\\\"Enter\\\"===e.key&&(this.autoCompleteInstance?.setIsOpen(!0),e.stopPropagation(),e.preventDefault())}),this.panelBelowInput)&&(this.fixPanelPosition(),t.addEventListener(\\\"focus\\\",this.fixPanelPosition),t.addEventListener(\\\"blur\\\",this.fixPanelPosition),window.addEventListener(\\\"resize\\\",this.fixPanelPosition))}fixPanelPosition(){fixPanelPosition(this.parentDomNode)}registerHistoryKeyboardHandlers(e){this.cycleHistoryMode&&(e.addEventListener(\\\"keydown\\\",e=>{var t;void 0!==this.autoCompleteInstance&&\\\"Tab\\\"===e.key&&e.ctrlKey&&(this.historySwitchActiveItemId=(this.historySwitchActiveItemId??this.autoCompleteState?.state?.activeItemId??0)+(e.shiftKey?-1:1),t=this.autoCompleteState?.state?.collections?.[0]?.items?.length??0,-1===this.historySwitchActiveItemId?this.historySwitchActiveItemId=Math.max(t-1,0):this.historySwitchActiveItemId>=t&&(this.historySwitchActiveItemId=0),this.autoCompleteInstance.setActiveItemId(this.historySwitchActiveItemId),this.autoCompleteInstance.setIsOpen(!0),e.stopPropagation(),e.preventDefault())}),e.addEventListener(\\\"keyup\\\",e=>{var t;void 0!==this.autoCompleteInstance&&(\\\"Tab\\\"===e.key&&e.ctrlKey?(e.stopPropagation(),e.preventDefault()):\\\"Control\\\"===e.key&&\\\"\\\"===this.autoCompleteState?.state?.query&&(e.stopPropagation(),e.preventDefault(),t=this.autoCompleteState?.state?.collections.find(({source:e})=>\\\"story-history\\\"===e.sourceId)?.items[this.autoCompleteState?.state?.activeItemId??0])&&this.autoCompleteInstance.navigator.navigate({item:t,itemUrl:t.title,state:this.autoCompleteState?.state}))}))}setCloseState(){$tw.wiki.deleteTiddler(`$:/temp/auto-complete-search/${this.id}/opened`),this.autoCompleteInstance?.setIsOpen(!1),(this.document?.querySelector?.(\\\".tw-commandpalette-panel-\\\"+this.id))?.remove?.()}destroy(){this.setCloseState();var e=this.parentDomNode?.querySelector(\\\".tw-auto-complete-container\\\");this.autoCompleteInstance?.destroy(),e?.remove?.(),this.parentDomNode=void 0,this.autoCompleteInstance=void 0,window.removeEventListener(\\\"resize\\\",this.fixPanelPosition),this.previouslyFocusedElement?.focus?.()}};exports[\\\"auto-complete-search\\\"]=AutoCompleteSearchWidget;\"},\"$:/plugins/linonetwo/autocomplete/widgets/widget.css\":{\"title\":\"$:/plugins/linonetwo/autocomplete/widgets/widget.css\",\"tags\":[\"$:/tags/Stylesheet\"],\"type\":\"text/css\",\"Modern.TiddlyDev#Origin\":\"../../node_modules/.pnpm/@algolia+autocomplete-theme-classic@1.17.4/node_modules/@algolia/autocomplete-theme-classic/dist/theme.min.css\",\"text\":\":root{--aa-search-input-height:44px;--aa-input-icon-size:20px;--aa-base-unit:16;--aa-spacing-factor:1;--aa-spacing:calc(var(--aa-base-unit)*var(--aa-spacing-factor)*1px);--aa-spacing-half:calc(var(--aa-spacing)/2);--aa-panel-max-height:650px;--aa-base-z-index:9999;--aa-font-size:calc(var(--aa-base-unit)*1px);--aa-font-family:inherit;--aa-font-weight-medium:500;--aa-font-weight-semibold:600;--aa-font-weight-bold:700;--aa-icon-size:20px;--aa-icon-stroke-width:1.6;--aa-icon-color-rgb:119,119,163;--aa-icon-color-alpha:1;--aa-action-icon-size:20px;--aa-text-color-rgb:38,38,39;--aa-text-color-alpha:1;--aa-primary-color-rgb:62,52,211;--aa-primary-color-alpha:0.2;--aa-muted-color-rgb:128,126,163;--aa-muted-color-alpha:0.6;--aa-panel-border-color-rgb:128,126,163;--aa-panel-border-color-alpha:0.3;--aa-input-border-color-rgb:128,126,163;--aa-input-border-color-alpha:0.8;--aa-background-color-rgb:255,255,255;--aa-background-color-alpha:1;--aa-input-background-color-rgb:255,255,255;--aa-input-background-color-alpha:1;--aa-selected-color-rgb:179,173,214;--aa-selected-color-alpha:0.205;--aa-description-highlight-background-color-rgb:245,223,77;--aa-description-highlight-background-color-alpha:0.5;--aa-detached-media-query:(max-width:680px);--aa-detached-modal-media-query:(min-width:680px);--aa-detached-modal-max-width:680px;--aa-detached-modal-max-height:500px;--aa-overlay-color-rgb:115,114,129;--aa-overlay-color-alpha:0.4;--aa-panel-shadow:0 0 0 1px rgba(35,38,59,0.1),0 6px 16px -4px rgba(35,38,59,0.15);--aa-scrollbar-width:13px;--aa-scrollbar-track-background-color-rgb:234,234,234;--aa-scrollbar-track-background-color-alpha:1;--aa-scrollbar-thumb-background-color-rgb:var(--aa-background-color-rgb);--aa-scrollbar-thumb-background-color-alpha:1}body.dark,body[data-theme=dark]{--aa-text-color-rgb:183,192,199;--aa-primary-color-rgb:146,138,255;--aa-muted-color-rgb:146,138,255;--aa-input-background-color-rgb:0,3,9;--aa-background-color-rgb:21,24,42;--aa-selected-color-rgb:146,138,255;--aa-selected-color-alpha:0.25;--aa-description-highlight-background-color-rgb:0 255 255;--aa-description-highlight-background-color-alpha:0.25;--aa-icon-color-rgb:119,119,163;--aa-panel-shadow:inset 1px 1px 0 0 #2c2e40,0 3px 8px 0 #000309;--aa-scrollbar-track-background-color-rgb:44,46,64;--aa-scrollbar-thumb-background-color-rgb:var(--aa-background-color-rgb)}.aa-Autocomplete *,.aa-DetachedFormContainer *,.aa-Panel *{box-sizing:border-box}.aa-Autocomplete,.aa-DetachedFormContainer,.aa-Panel{color:#262627;color:rgba(var(--aa-text-color-rgb),var(--aa-text-color-alpha));font-family:inherit;font-family:var(--aa-font-family);font-size:calc(16 * 1px);font-size:var(--aa-font-size);font-weight:400;line-height:1em;margin:0;padding:0;text-align:left}.aa-Form{align-items:center;background-color:#fff;background-color:rgba(var(--aa-input-background-color-rgb),var(--aa-input-background-color-alpha));border:1px solid rgba(128,126,163,.8);border:1px solid rgba(var(--aa-input-border-color-rgb),var(--aa-input-border-color-alpha));border-radius:3px;display:flex;line-height:1em;margin:0;position:relative;width:100%}.aa-Form:focus-within{border-color:#3e34d3;border-color:rgba(var(--aa-primary-color-rgb),1);box-shadow:rgba(62,52,211,.2) 0 0 0 2px,inset rgba(62,52,211,.2) 0 0 0 2px;box-shadow:rgba(var(--aa-primary-color-rgb),var(--aa-primary-color-alpha)) 0 0 0 2px,inset rgba(var(--aa-primary-color-rgb),var(--aa-primary-color-alpha)) 0 0 0 2px;outline:currentColor}.aa-InputWrapperPrefix{align-items:center;display:flex;flex-shrink:0;height:44px;height:var(--aa-search-input-height);order:1}.aa-Label,.aa-LoadingIndicator{cursor:auto;flex-shrink:0;height:100%;padding:0;text-align:left}.aa-Label svg,.aa-LoadingIndicator svg{color:#3e34d3;color:rgba(var(--aa-primary-color-rgb),1);height:auto;max-height:20px;max-height:var(--aa-input-icon-size);stroke-width:1.6;stroke-width:var(--aa-icon-stroke-width);width:20px;width:var(--aa-input-icon-size)}.aa-LoadingIndicator,.aa-SubmitButton{height:100%;padding-left:calc(calc(16 * 1 * 1px)*.75 - 1px);padding-left:calc(var(--aa-spacing)*.75 - 1px);padding-right:calc(calc(16 * 1 * 1px)/ 2);padding-right:var(--aa-spacing-half);width:calc(calc(16 * 1 * 1px)*1.75 + 20px - 1px);width:calc(var(--aa-spacing)*1.75 + var(--aa-icon-size) - 1px)}@media (hover:none) and (pointer:coarse){:root{--aa-spacing-factor:1.2;--aa-action-icon-size:22px}.aa-LoadingIndicator,.aa-SubmitButton{padding-left:calc(calc(calc(16 * 1 * 1px)/ 2)/ 2 - 1px);padding-left:calc(var(--aa-spacing-half)/ 2 - 1px);width:calc(20px + calc(16 * 1 * 1px)*1.25 - 1px);width:calc(var(--aa-icon-size) + var(--aa-spacing)*1.25 - 1px)}}.aa-SubmitButton{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:0 0;border:0;margin:0}.aa-LoadingIndicator{align-items:center;display:flex;justify-content:center}.aa-LoadingIndicator[hidden]{display:none}.aa-InputWrapper{order:3;position:relative;width:100%}.aa-Input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:0 0;border:0;color:#262627;color:rgba(var(--aa-text-color-rgb),var(--aa-text-color-alpha));font:inherit;height:44px;height:var(--aa-search-input-height);padding:0;width:100%}.aa-Input::-moz-placeholder{color:rgba(128,126,163,.6);color:rgba(var(--aa-muted-color-rgb),var(--aa-muted-color-alpha));opacity:1}.aa-Input::placeholder{color:rgba(128,126,163,.6);color:rgba(var(--aa-muted-color-rgb),var(--aa-muted-color-alpha));opacity:1}.aa-Input:focus{border-color:none;box-shadow:none;outline:0}.aa-Input::-webkit-search-cancel-button,.aa-Input::-webkit-search-decoration,.aa-Input::-webkit-search-results-button,.aa-Input::-webkit-search-results-decoration{-webkit-appearance:none;appearance:none}.aa-InputWrapperSuffix{align-items:center;display:flex;height:44px;height:var(--aa-search-input-height);order:4}.aa-ClearButton{align-items:center;background:0 0;border:0;color:rgba(128,126,163,.6);color:rgba(var(--aa-muted-color-rgb),var(--aa-muted-color-alpha));cursor:pointer;display:flex;height:100%;margin:0;padding:0 calc(calc(16 * 1 * 1px)*.83333 - .5px);padding:0 calc(var(--aa-spacing)*.83333 - .5px)}@media (hover:none) and (pointer:coarse){.aa-ClearButton{padding:0 calc(calc(16 * 1 * 1px)*.66667 - .5px);padding:0 calc(var(--aa-spacing)*.66667 - .5px)}}.aa-ClearButton:focus,.aa-ClearButton:hover{color:#262627;color:rgba(var(--aa-text-color-rgb),var(--aa-text-color-alpha))}.aa-ClearButton[hidden]{display:none}.aa-ClearButton svg{stroke-width:1.6;stroke-width:var(--aa-icon-stroke-width);width:20px;width:var(--aa-icon-size)}.aa-Panel{background-color:#fff;background-color:rgba(var(--aa-background-color-rgb),var(--aa-background-color-alpha));border-radius:calc(calc(16 * 1 * 1px)/ 4);border-radius:calc(var(--aa-spacing)/4);box-shadow:0 0 0 1px rgba(35,38,59,.1),0 6px 16px -4px rgba(35,38,59,.15);box-shadow:var(--aa-panel-shadow);margin:8px 0 0;overflow:hidden;position:absolute;transition:opacity .2s ease-in,filter .2s ease-in}@media screen and (prefers-reduced-motion){.aa-Panel{transition:none}}.aa-Panel button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:0 0;border:0;margin:0;padding:0}.aa-PanelLayout{height:100%;margin:0;max-height:650px;max-height:var(--aa-panel-max-height);overflow-y:auto;padding:0;position:relative;text-align:left}.aa-PanelLayoutColumns--twoGolden{display:grid;grid-template-columns:39.2% auto;overflow:hidden;padding:0}.aa-PanelLayoutColumns--two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:hidden;padding:0}.aa-PanelLayoutColumns--three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:hidden;padding:0}.aa-Panel--stalled .aa-Source{filter:grayscale(1);opacity:.8}.aa-Panel--scrollable{margin:0;max-height:650px;max-height:var(--aa-panel-max-height);overflow-x:hidden;overflow-y:auto;padding:calc(calc(16 * 1 * 1px)/ 2);padding:var(--aa-spacing-half);scrollbar-color:rgba(255,255,255,1) rgba(234,234,234,1);scrollbar-color:rgba(var(--aa-scrollbar-thumb-background-color-rgb),var(--aa-scrollbar-thumb-background-color-alpha)) rgba(var(--aa-scrollbar-track-background-color-rgb),var(--aa-scrollbar-track-background-color-alpha));scrollbar-width:thin}.aa-Panel--scrollable::-webkit-scrollbar{width:13px;width:var(--aa-scrollbar-width)}.aa-Panel--scrollable::-webkit-scrollbar-track{background-color:#eaeaea;background-color:rgba(var(--aa-scrollbar-track-background-color-rgb),var(--aa-scrollbar-track-background-color-alpha))}.aa-Panel--scrollable::-webkit-scrollbar-thumb{background-color:#fff;background-color:rgba(var(--aa-scrollbar-thumb-background-color-rgb),var(--aa-scrollbar-thumb-background-color-alpha));border-radius:9999px;border:3px solid #eaeaea;border:3px solid rgba(var(--aa-scrollbar-track-background-color-rgb),var(--aa-scrollbar-track-background-color-alpha));border-right-width:2px}.aa-Source{margin:0;padding:0;position:relative;width:100%}.aa-Source:empty{display:none}.aa-SourceNoResults{font-size:1em;margin:0;padding:calc(16 * 1 * 1px);padding:var(--aa-spacing)}.aa-List{list-style:none;margin:0}.aa-List,.aa-SourceHeader{padding:0;position:relative}.aa-SourceHeader{margin:calc(calc(16 * 1 * 1px)/ 2) .5em calc(calc(16 * 1 * 1px)/ 2) 0;margin:var(--aa-spacing-half) .5em var(--aa-spacing-half) 0}.aa-SourceHeader:empty{display:none}.aa-SourceHeaderTitle{background:#fff;background:rgba(var(--aa-background-color-rgb),var(--aa-background-color-alpha));color:#3e34d3;color:rgba(var(--aa-primary-color-rgb),1);display:inline-block;font-size:.8em;font-weight:600;font-weight:var(--aa-font-weight-semibold);margin:0;padding:0 calc(calc(16 * 1 * 1px)/ 2) 0 0;padding:0 var(--aa-spacing-half) 0 0;position:relative;z-index:9999;z-index:var(--aa-base-z-index)}.aa-SourceHeaderLine{border-bottom:1px solid #3e34d3;border-bottom:1px solid rgba(var(--aa-primary-color-rgb),1);display:block;height:2px;left:0;margin:0;opacity:.3;padding:0;position:absolute;right:0;top:calc(calc(16 * 1 * 1px)/ 2);top:var(--aa-spacing-half);z-index:calc(9999 - 1);z-index:calc(var(--aa-base-z-index) - 1)}.aa-SourceFooterSeeAll{background:linear-gradient(180deg,#fff,rgba(128,126,163,.14));background:linear-gradient(180deg,rgba(var(--aa-background-color-rgb),var(--aa-background-color-alpha)),rgba(128,126,163,.14));border:1px solid rgba(128,126,163,.6);border:1px solid rgba(var(--aa-muted-color-rgb),var(--aa-muted-color-alpha));border-radius:5px;box-shadow:inset 0 0 2px #fff,0 2px 2px -1px rgba(76,69,88,.15);color:inherit;font-size:.95em;font-weight:500;font-weight:var(--aa-font-weight-medium);padding:.475em 1em .6em;-webkit-text-decoration:none;text-decoration:none}.aa-SourceFooterSeeAll:focus,.aa-SourceFooterSeeAll:hover{border:1px solid #3e34d3;border:1px solid rgba(var(--aa-primary-color-rgb),1);color:#3e34d3;color:rgba(var(--aa-primary-color-rgb),1)}.aa-Item{align-items:center;border-radius:3px;cursor:pointer;display:grid;min-height:calc(calc(16 * 1 * 1px)*2.5);min-height:calc(var(--aa-spacing)*2.5);padding:calc(calc(calc(16 * 1 * 1px)/ 2)/ 2);padding:calc(var(--aa-spacing-half)/2)}.aa-Item[aria-selected=true]{background-color:rgba(179,173,214,.205);background-color:rgba(var(--aa-selected-color-rgb),var(--aa-selected-color-alpha))}.aa-Item[aria-selected=true] .aa-ActiveOnly,.aa-Item[aria-selected=true] .aa-ItemActionButton{visibility:visible}.aa-ItemIcon{align-items:center;background:#fff;background:rgba(var(--aa-background-color-rgb),var(--aa-background-color-alpha));border-radius:3px;box-shadow:inset 0 0 0 1px rgba(128,126,163,.3);box-shadow:inset 0 0 0 1px rgba(var(--aa-panel-border-color-rgb),var(--aa-panel-border-color-alpha));color:#7777a3;color:rgba(var(--aa-icon-color-rgb),var(--aa-icon-color-alpha));display:flex;flex-shrink:0;font-size:.7em;height:calc(20px + calc(calc(16 * 1 * 1px)/ 2));height:calc(var(--aa-icon-size) + var(--aa-spacing-half));justify-content:center;overflow:hidden;stroke-width:1.6;stroke-width:var(--aa-icon-stroke-width);text-align:center;width:calc(20px + calc(calc(16 * 1 * 1px)/ 2));width:calc(var(--aa-icon-size) + var(--aa-spacing-half))}.aa-ItemIcon img{height:auto;max-height:calc(20px + calc(calc(16 * 1 * 1px)/ 2) - 8px);max-height:calc(var(--aa-icon-size) + var(--aa-spacing-half) - 8px);max-width:calc(20px + calc(calc(16 * 1 * 1px)/ 2) - 8px);max-width:calc(var(--aa-icon-size) + var(--aa-spacing-half) - 8px);width:auto}.aa-ItemIcon svg{height:20px;height:var(--aa-icon-size);width:20px;width:var(--aa-icon-size)}.aa-ItemIcon--alignTop{align-self:flex-start}.aa-ItemIcon--noBorder{background:0 0;box-shadow:none}.aa-ItemIcon--picture{height:96px;width:96px}.aa-ItemIcon--picture img{max-height:100%;max-width:100%;padding:calc(calc(16 * 1 * 1px)/ 2);padding:var(--aa-spacing-half)}.aa-ItemContent{align-items:center;cursor:pointer;display:grid;gap:calc((16 * 1 * 1px)/ 2);gap:calc(calc(16 * 1 * 1px)/ 2);grid-gap:calc((16 * 1 * 1px)/ 2);grid-gap:calc(calc(16 * 1 * 1px)/ 2);grid-gap:var(--aa-spacing-half);gap:var(--aa-spacing-half);grid-auto-flow:column;line-height:1.25em;overflow:hidden}.aa-ItemContent:empty{display:none}.aa-ItemContent mark{background:0 0;color:#262627;color:rgba(var(--aa-text-color-rgb),var(--aa-text-color-alpha));font-style:normal;font-weight:700;font-weight:var(--aa-font-weight-bold)}.aa-ItemContent--dual{display:flex;flex-direction:column;justify-content:space-between;text-align:left}.aa-ItemContent--dual .aa-ItemContentSubtitle,.aa-ItemContent--dual .aa-ItemContentTitle{display:block}.aa-ItemContent--indented{padding-left:calc(20px + calc(16 * 1 * 1px));padding-left:calc(var(--aa-icon-size) + var(--aa-spacing))}.aa-ItemContentBody{display:grid;gap:calc(((16 * 1 * 1px)/ 2)/ 2);gap:calc(calc(calc(16 * 1 * 1px)/ 2)/ 2);grid-gap:calc(((16 * 1 * 1px)/ 2)/ 2);grid-gap:calc(calc(calc(16 * 1 * 1px)/ 2)/ 2);grid-gap:calc(var(--aa-spacing-half)/2);gap:calc(var(--aa-spacing-half)/2)}.aa-ItemContentTitle{display:inline-block;margin:0 .5em 0 0;max-width:100%;overflow:hidden;padding:0;text-overflow:ellipsis;white-space:nowrap}.aa-ItemContentSubtitle{font-size:.92em}.aa-ItemContentSubtitleIcon:before{border-color:rgba(128,126,163,.64);border-color:rgba(var(--aa-muted-color-rgb),.64);border-style:solid;content:\\\"\\\";display:inline-block;left:1px;position:relative;top:-3px}.aa-ItemContentSubtitle--inline .aa-ItemContentSubtitleIcon:before{border-width:0 0 1.5px;margin-left:calc(calc(16 * 1 * 1px)/ 2);margin-left:var(--aa-spacing-half);margin-right:calc(calc(calc(16 * 1 * 1px)/ 2)/ 2);margin-right:calc(var(--aa-spacing-half)/2);width:calc(calc(calc(16 * 1 * 1px)/ 2) + 2px);width:calc(var(--aa-spacing-half) + 2px)}.aa-ItemContentSubtitle--standalone{align-items:center;color:#262627;color:rgba(var(--aa-text-color-rgb),var(--aa-text-color-alpha));display:grid;gap:calc((16 * 1 * 1px)/ 2);gap:calc(calc(16 * 1 * 1px)/ 2);grid-gap:calc((16 * 1 * 1px)/ 2);grid-gap:calc(calc(16 * 1 * 1px)/ 2);grid-gap:var(--aa-spacing-half);gap:var(--aa-spacing-half);grid-auto-flow:column;justify-content:start}.aa-ItemContentSubtitle--standalone .aa-ItemContentSubtitleIcon:before{border-radius:0 0 0 3px;border-width:0 0 1.5px 1.5px;height:calc(calc(16 * 1 * 1px)/ 2);height:var(--aa-spacing-half);width:calc(calc(16 * 1 * 1px)/ 2);width:var(--aa-spacing-half)}.aa-ItemContentSubtitleCategory{color:#807ea3;color:rgba(var(--aa-muted-color-rgb),1);font-weight:500}.aa-ItemContentDescription{color:#262627;color:rgba(var(--aa-text-color-rgb),var(--aa-text-color-alpha));font-size:.85em;max-width:100%;overflow-x:hidden;text-overflow:ellipsis}.aa-ItemContentDescription:empty{display:none}.aa-ItemContentDescription mark{background:rgba(245,223,77,.5);background:rgba(var(--aa-description-highlight-background-color-rgb),var(--aa-description-highlight-background-color-alpha));color:#262627;color:rgba(var(--aa-text-color-rgb),var(--aa-text-color-alpha));font-style:normal;font-weight:500;font-weight:var(--aa-font-weight-medium)}.aa-ItemContentDash{color:rgba(128,126,163,.6);color:rgba(var(--aa-muted-color-rgb),var(--aa-muted-color-alpha));display:none;opacity:.4}.aa-ItemContentTag{background-color:rgba(62,52,211,.2);background-color:rgba(var(--aa-primary-color-rgb),var(--aa-primary-color-alpha));border-radius:3px;margin:0 .4em 0 0;padding:.08em .3em}.aa-ItemLink,.aa-ItemWrapper{align-items:center;color:inherit;display:grid;gap:calc(((16 * 1 * 1px)/ 2)/ 2);gap:calc(calc(calc(16 * 1 * 1px)/ 2)/ 2);grid-gap:calc(((16 * 1 * 1px)/ 2)/ 2);grid-gap:calc(calc(calc(16 * 1 * 1px)/ 2)/ 2);grid-gap:calc(var(--aa-spacing-half)/2);gap:calc(var(--aa-spacing-half)/2);grid-auto-flow:column;justify-content:space-between;width:100%}.aa-ItemLink{color:inherit;-webkit-text-decoration:none;text-decoration:none}.aa-ItemActions{display:grid;grid-auto-flow:column;height:100%;justify-self:end;margin:0 calc(calc(16 * 1 * 1px)/ -3);margin:0 calc(var(--aa-spacing)/-3);padding:0 2px 0 0}.aa-ItemActionButton{align-items:center;background:0 0;border:0;color:rgba(128,126,163,.6);color:rgba(var(--aa-muted-color-rgb),var(--aa-muted-color-alpha));cursor:pointer;display:flex;flex-shrink:0;padding:0}.aa-ItemActionButton:focus svg,.aa-ItemActionButton:hover svg{color:#262627;color:rgba(var(--aa-text-color-rgb),var(--aa-text-color-alpha))}.aa-ItemActionButton svg{color:rgba(128,126,163,.6);color:rgba(var(--aa-muted-color-rgb),var(--aa-muted-color-alpha));margin:0;margin:calc(calc(16 * 1 * 1px)/ 3);margin:calc(var(--aa-spacing)/3);stroke-width:1.6;stroke-width:var(--aa-icon-stroke-width);width:20px;width:var(--aa-action-icon-size)}.aa-ActiveOnly{visibility:hidden}.aa-PanelHeader{align-items:center;background:#3e34d3;background:rgba(var(--aa-primary-color-rgb),1);color:#fff;display:grid;height:var(--aa-modal-header-height);margin:0;padding:calc(calc(16 * 1 * 1px)/ 2) calc(16 * 1 * 1px);padding:var(--aa-spacing-half) var(--aa-spacing);position:relative}.aa-PanelHeader:after{background-image:linear-gradient(#fff,rgba(255,255,255,0));background-image:linear-gradient(rgba(var(--aa-background-color-rgb),1),rgba(var(--aa-background-color-rgb),0));bottom:calc(calc(calc(16 * 1 * 1px)/ 2)*-1);bottom:calc(var(--aa-spacing-half)*-1);content:\\\"\\\";height:calc(calc(16 * 1 * 1px)/ 2);height:var(--aa-spacing-half);left:0;pointer-events:none;position:absolute;right:0;z-index:9999;z-index:var(--aa-base-z-index)}.aa-PanelFooter{background-color:#fff;background-color:rgba(var(--aa-background-color-rgb),var(--aa-background-color-alpha));box-shadow:inset 0 1px 0 rgba(128,126,163,.3);box-shadow:inset 0 1px 0 rgba(var(--aa-panel-border-color-rgb),var(--aa-panel-border-color-alpha));display:flex;justify-content:space-between;margin:0;padding:calc(16 * 1 * 1px);padding:var(--aa-spacing);position:relative;z-index:9999;z-index:var(--aa-base-z-index)}.aa-PanelFooter:after{background-image:linear-gradient(rgba(255,255,255,0),rgba(128,126,163,.6));background-image:linear-gradient(rgba(var(--aa-background-color-rgb),0),rgba(var(--aa-muted-color-rgb),var(--aa-muted-color-alpha)));content:\\\"\\\";height:calc(16 * 1 * 1px);height:var(--aa-spacing);left:0;opacity:.12;pointer-events:none;position:absolute;right:0;top:calc(calc(16 * 1 * 1px)*-1);top:calc(var(--aa-spacing)*-1);z-index:calc(9999 - 1);z-index:calc(var(--aa-base-z-index) - 1)}.aa-DetachedContainer{background:#fff;background:rgba(var(--aa-background-color-rgb),var(--aa-background-color-alpha));bottom:0;box-shadow:0 0 0 1px rgba(35,38,59,.1),0 6px 16px -4px rgba(35,38,59,.15);box-shadow:var(--aa-panel-shadow);display:flex;flex-direction:column;left:0;margin:0;overflow:hidden;padding:0;position:fixed;right:0;top:0;z-index:9999;z-index:var(--aa-base-z-index)}.aa-DetachedContainer:after{height:32px}.aa-DetachedContainer .aa-SourceHeader{margin:calc(calc(16 * 1 * 1px)/ 2) 0 calc(calc(16 * 1 * 1px)/ 2) 2px;margin:var(--aa-spacing-half) 0 var(--aa-spacing-half) 2px}.aa-DetachedContainer .aa-Panel{background-color:#fff;background-color:rgba(var(--aa-background-color-rgb),var(--aa-background-color-alpha));border-radius:0;box-shadow:none;flex-grow:1;margin:0;padding:0;position:relative}.aa-DetachedContainer .aa-PanelLayout{bottom:0;box-shadow:none;left:0;margin:0;max-height:none;overflow-y:auto;position:absolute;right:0;top:0;width:100%}.aa-DetachedFormContainer{border-bottom:1px solid rgba(128,126,163,.3);border-bottom:1px solid rgba(var(--aa-panel-border-color-rgb),var(--aa-panel-border-color-alpha));display:flex;flex-direction:row;justify-content:space-between;margin:0;padding:calc(calc(16 * 1 * 1px)/ 2);padding:var(--aa-spacing-half)}.aa-DetachedCancelButton{background:0 0;border:0;border-radius:3px;color:#262627;color:rgba(var(--aa-text-color-rgb),var(--aa-text-color-alpha));cursor:pointer;font:inherit;margin:0 0 0 calc(calc(16 * 1 * 1px)/ 2);margin:0 0 0 var(--aa-spacing-half);padding:0 calc(calc(16 * 1 * 1px)/ 2);padding:0 var(--aa-spacing-half)}.aa-DetachedCancelButton:focus,.aa-DetachedCancelButton:hover{box-shadow:inset 0 0 0 1px rgba(128,126,163,.3);box-shadow:inset 0 0 0 1px rgba(var(--aa-panel-border-color-rgb),var(--aa-panel-border-color-alpha))}.aa-DetachedContainer--modal{border-radius:6px;bottom:inherit;height:auto;margin:0 auto;max-width:680px;max-width:var(--aa-detached-modal-max-width);position:absolute;top:3%}.aa-DetachedContainer--modal .aa-PanelLayout{max-height:500px;max-height:var(--aa-detached-modal-max-height);padding-bottom:calc(calc(16 * 1 * 1px)/ 2);padding-bottom:var(--aa-spacing-half);position:static}.aa-DetachedContainer--modal .aa-PanelLayout:empty{display:none}.aa-DetachedSearchButton{align-items:center;background-color:#fff;background-color:rgba(var(--aa-input-background-color-rgb),var(--aa-input-background-color-alpha));border:1px solid rgba(128,126,163,.8);border:1px solid rgba(var(--aa-input-border-color-rgb),var(--aa-input-border-color-alpha));border-radius:3px;color:rgba(128,126,163,.6);color:rgba(var(--aa-muted-color-rgb),var(--aa-muted-color-alpha));cursor:pointer;display:flex;font:inherit;font-family:inherit;font-family:var(--aa-font-family);font-size:calc(16 * 1px);font-size:var(--aa-font-size);height:44px;height:var(--aa-search-input-height);margin:0;padding:0 calc(44px/8);padding:0 calc(var(--aa-search-input-height)/8);position:relative;text-align:left;width:100%}.aa-DetachedSearchButton:focus{border-color:#3e34d3;border-color:rgba(var(--aa-primary-color-rgb),1);box-shadow:rgba(62,52,211,.2) 0 0 0 3px,inset rgba(62,52,211,.2) 0 0 0 2px;box-shadow:rgba(var(--aa-primary-color-rgb),var(--aa-primary-color-alpha)) 0 0 0 3px,inset rgba(var(--aa-primary-color-rgb),var(--aa-primary-color-alpha)) 0 0 0 2px;outline:currentColor}.aa-DetachedSearchButtonIcon{align-items:center;color:#3e34d3;color:rgba(var(--aa-primary-color-rgb),1);cursor:auto;display:flex;flex-shrink:0;height:100%;justify-content:center;width:calc(20px + calc(16 * 1 * 1px));width:calc(var(--aa-icon-size) + var(--aa-spacing))}.aa-DetachedSearchButtonQuery{color:#262627;color:rgba(var(--aa-text-color-rgb),1);line-height:1.25em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.aa-DetachedSearchButtonPlaceholder[hidden]{display:none}.aa-Detached{height:100vh;overflow:hidden}.aa-DetachedOverlay{background-color:rgba(115,114,129,.4);background-color:rgba(var(--aa-overlay-color-rgb),var(--aa-overlay-color-alpha));height:100vh;left:0;margin:0;padding:0;position:fixed;right:0;top:0;z-index:calc(9999 - 1);z-index:calc(var(--aa-base-z-index) - 1)}.aa-GradientBottom,.aa-GradientTop{height:calc(calc(16 * 1 * 1px)/ 2);height:var(--aa-spacing-half);left:0;pointer-events:none;position:absolute;right:0;z-index:9999;z-index:var(--aa-base-z-index)}.aa-GradientTop{background-image:linear-gradient(#fff,rgba(255,255,255,0));background-image:linear-gradient(rgba(var(--aa-background-color-rgb),1),rgba(var(--aa-background-color-rgb),0));top:0}.aa-GradientBottom{background-image:linear-gradient(rgba(255,255,255,0),#fff);background-image:linear-gradient(rgba(var(--aa-background-color-rgb),0),rgba(var(--aa-background-color-rgb),1));border-bottom-left-radius:calc(calc(16 * 1 * 1px)/ 4);border-bottom-left-radius:calc(var(--aa-spacing)/4);border-bottom-right-radius:calc(calc(16 * 1 * 1px)/ 4);border-bottom-right-radius:calc(var(--aa-spacing)/4);bottom:0}@media (hover:none) and (pointer:coarse){.aa-ItemActionButton:focus svg,.aa-ItemActionButton:hover svg{color:inherit}.aa-DesktopOnly{display:none}}@media (hover:hover){.aa-TouchOnly{display:none}}/*! Bundled license information:\\n\\n@algolia/autocomplete-theme-classic/dist/theme.min.css:\\n (*! @algolia/autocomplete-theme-classic 1.17.4 | MIT License | © Algolia, Inc. and contributors | https://github.com/algolia/autocomplete *)\\n*/\"}}}", + "title": "$:/plugins/linonetwo/autocomplete", + "type": "application/json", + "version": "0.1.0", + "Modern.TiddlyDev#SHA256-Hashed": "232e861822edfc474d322249ca419ab183b0581cc578f29d7291ae0c516f3890" + } +] \ No newline at end of file diff --git a/tiddlers/TCTSystem/plugins/linonetwo/commandpalette.json b/tiddlers/TCTSystem/plugins/linonetwo/commandpalette.json index f72725c5..699bac5e 100644 --- a/tiddlers/TCTSystem/plugins/linonetwo/commandpalette.json +++ b/tiddlers/TCTSystem/plugins/linonetwo/commandpalette.json @@ -2,16 +2,17 @@ { "author": "LinOnetwo", "core-version": ">=5.0.8", - "dependents": "$:/plugins/linonetwo/pinyin-fuzzy-search", - "description": "Command palette Chinese translated", - "list": "readme", + "dependents": "$:/plugins/Gk0Wk/focused-tiddler $:/plugins/linonetwo/autocomplete", + "description": "Best Command Palette, search everything, extensible, delightful.", + "list": "readme config tree", "plugin-type": "plugin", "source": "https://github.com/tiddly-gittly/tiddlywiki-plugins", - "text": "{\"tiddlers\":{\"$:/plugins/linonetwo/commandpalette/CommandPaletteHistory\":{\"text\":\"{\\n \\\"history\\\": [\\n \\\"Explorer\\\",\\n \\\"Clone Tiddler\\\",\\n \\\"See Drafts\\\",\\n \\\"Refresh Server\\\",\\n \\\"Permaview\\\",\\n \\\"See Themes\\\",\\n \\\"Refresh Command Palette\\\",\\n \\\"See Shadows Tiddlers\\\",\\n \\\"See Orphans Tiddlers\\\",\\n \\\"Remove tag\\\",\\n \\\"Add tag to tiddler\\\",\\n \\\"Delete Tiddler\\\",\\n \\\"Close Tiddler\\\",\\n \\\"Recent Tiddlers\\\",\\n \\\"New Task with Title\\\",\\n \\\"Edit Tiddler\\\",\\n \\\"See Mising Tiddlers\\\",\\n \\\"Show CommandTiddlers\\\",\\n \\\"See untagged Tiddlers\\\",\\n \\\"See Languages\\\",\\n \\\"See Plugins\\\",\\n \\\"New Command Wizard\\\",\\n \\\"Cancel Tiddler\\\",\\n \\\"Save Tiddler\\\",\\n \\\"Close other Tiddlers\\\",\\n \\\"Permalink\\\",\\n \\\"Create Command\\\",\\n \\\"Unfold All Tiddlers\\\",\\n \\\"Fold All Tiddlers\\\",\\n \\\"Print\\\",\\n \\\"Close All Tiddlers\\\",\\n \\\"Save Wiki\\\",\\n \\\"Home\\\",\\n \\\"Toggle Fullscreen\\\",\\n \\\"New Tiddler\\\"\\n ]\\n}\\n\",\"type\":\"application/json\",\"created\":\"20200603153247010\",\"modified\":\"20200610112340290\",\"title\":\"$:/plugins/linonetwo/commandpalette/CommandPaletteHistory\"},\"$:/plugins/linonetwo/commandpalette/CommandPaletteSearchSteps\":{\"text\":\"{\\n \\\"steps\\\": [\\n {\\n \\\"filter\\\": \\\"[list[$:/StoryList]pinyinfuse[]]\\\",\\n \\\"caret\\\": \\\"30\\\",\\n \\\"filterFallback\\\": \\\"[list[$:/StoryList]search[]]\\\",\\n \\\"caretFallback\\\": \\\"26\\\",\\n \\\"hint\\\": \\\"历史记录\\\"\\n },\\n { \\\"filter\\\": \\\"[!is[system]pinyinfuse:title[]]\\\", \\\"caret\\\": \\\"29\\\", \\\"filterFallback\\\": \\\"[!is[system]search:title[]]\\\", \\\"caretFallback\\\": \\\"25\\\", \\\"hint\\\": \\\"在标题中\\\" },\\n {\\n \\\"filter\\\": \\\"[all[system+shadows]pinyinfuse:title[]]\\\",\\n \\\"caret\\\": \\\"37\\\",\\n \\\"filterFallback\\\": \\\"[all[system+shadows]search:title[]]\\\",\\n \\\"caretFallback\\\": \\\"33\\\",\\n \\\"hint\\\": \\\"在标题中 (系统)\\\"\\n },\\n { \\\"filter\\\": \\\"[!is[system]pinyinfuse[]]\\\", \\\"caret\\\": \\\"23\\\", \\\"filterFallback\\\": \\\"[!is[system]search[]]\\\", \\\"caretFallback\\\": \\\"19\\\", \\\"hint\\\": \\\"全局搜索\\\" },\\n { \\\"filter\\\": \\\"[all[shadows]pinyinfuse[]]\\\", \\\"caret\\\": \\\"24\\\", \\\"filterFallback\\\": \\\"[all[shadows]search[]]\\\", \\\"caretFallback\\\": \\\"20\\\", \\\"hint\\\": \\\"shadows\\\" }\\n ]\\n}\\n\",\"type\":\"application/json\",\"title\":\"$:/plugins/linonetwo/commandpalette/CommandPaletteSearchSteps\"},\"$:/plugins/linonetwo/commandpalette/CommandPaletteSettings\":{\"text\":\"{\\n \\\"maxResults\\\": \\\"30\\\",\\n \\\"maxResultHintSize\\\": 45,\\n \\\"neverBasic\\\": \\\"false\\\",\\n \\\"smoothScroll\\\": \\\"false\\\"\\n}\\n\",\"type\":\"application/json\",\"created\":\"20200604160432063\",\"modified\":\"20200610112626066\",\"title\":\"$:/plugins/linonetwo/commandpalette/CommandPaletteSettings\"},\"$:/plugins/linonetwo/commandpalette/settings/HideDefaultSearchBar\":{\"title\":\"$:/plugins/linonetwo/commandpalette/settings/HideDefaultSearchBar\",\"text\":\"no\"},\"$:/plugins/linonetwo/commandpalette/ControlPanel/Settings\":{\"title\":\"$:/plugins/linonetwo/commandpalette/ControlPanel/Settings\",\"caption\":\"CommandPalette\",\"tags\":\"$:/tags/ControlPanel/SettingsTab\",\"text\":\"These settings let you customise the behaviour of CommandPalette plugin.\\n\\n---\\n\\n!! Appearance\\n\\n;Hide default search bar:\\n:<$checkbox tiddler=\\\"$:/plugins/linonetwo/commandpalette/settings/HideDefaultSearchBar\\\" field=\\\"text\\\" checked=\\\"yes\\\" unchecked=\\\"no\\\"> If you only use commandpalette to search and don't need default search bar, check this box.</$checkbox>\"},\"$:/plugins/linonetwo/commandpalette/Browser Refresh\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Browser Refresh\",\"command-palette-name\":\"Browser Refresh\",\"command-palette-type\":\"message\",\"command-palette-caption\":\"{{$:/language/Buttons/Refresh/Caption}}\",\"command-palette-hint\":\"{{$:/language/Buttons/Refresh/Hint}}\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"tm-browser-refresh\\n\"},\"$:/plugins/linonetwo/commandpalette/Cancel Tiddler\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Cancel Tiddler\",\"command-palette-mode\":\"drafts\",\"command-palette-name\":\"Cancel Tiddler\",\"command-palette-type\":\"history\",\"command-palette-caption\":\"{{$:/language/Buttons/Cancel/Caption}}\",\"command-palette-hint\":\"{{$:/language/Buttons/Cancel/Hint}}\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"tm-cancel-tiddler\\n\"},\"$:/plugins/linonetwo/commandpalette/Clone Tiddler\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Clone Tiddler\",\"command-palette-name\":\"Clone Tiddler\",\"command-palette-type\":\"history\",\"command-palette-caption\":\"{{$:/language/Buttons/Clone/Caption}}\",\"command-palette-hint\":\"{{$:/language/Buttons/Clone/Hint}}\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"tm-new-tiddler\\n\"},\"$:/plugins/linonetwo/commandpalette/Close All Tiddlers\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Close All Tiddlers\",\"command-palette-name\":\"Close All Tiddlers\",\"command-palette-type\":\"message\",\"command-palette-caption\":\"{{$:/language/Buttons/CloseAll/Caption}}\",\"command-palette-hint\":\"{{$:/language/Buttons/CloseAll/Hint}}\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"tm-close-all-tiddlers\\n\"},\"$:/plugins/linonetwo/commandpalette/Close Tiddler\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Close Tiddler\",\"command-palette-name\":\"Close Tiddler\",\"command-palette-type\":\"history\",\"command-palette-caption\":\"{{$:/language/Buttons/Close/Caption}}\",\"command-palette-hint\":\"{{$:/language/Buttons/Close/Hint}}\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"tm-close-tiddler\\n\"},\"$:/plugins/linonetwo/commandpalette/Close other Tiddlers\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Close other Tiddlers\",\"command-palette-name\":\"Close other Tiddlers\",\"command-palette-type\":\"history\",\"command-palette-caption\":\"{{$:/language/Buttons/CloseOthers/Caption}}\",\"command-palette-hint\":\"{{$:/language/Buttons/CloseOthers/Hint}}\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"tm-close-other-tiddlers\\n\"},\"$:/plugins/linonetwo/commandpalette/Command Palette Settings\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Command Palette Settings\",\"command-palette-name\":\"Command Palette Settings\",\"command-palette-type\":\"prompt\",\"command-palette-caption\":\"命令菜单设置\",\"command-palette-hint\":\"打开命令菜单的设置,快捷设置命令菜单相关配置\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"|\\n\"},\"$:/plugins/linonetwo/commandpalette/ControlPanel Command\":{\"title\":\"$:/plugins/linonetwo/commandpalette/ControlPanel Command\",\"command-palette-name\":\"Show Control Panel\",\"command-palette-type\":\"actionString\",\"command-palette-caption\":\"打开命令菜单\",\"command-palette-hint\":\"打开命令菜单\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"<$action-navigate $to=\\\"$:/ControlPanel\\\"/>\"},\"$:/plugins/linonetwo/commandpalette/Delete Tiddler\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Delete Tiddler\",\"command-palette-name\":\"Delete Tiddler\",\"command-palette-type\":\"history\",\"command-palette-caption\":\"{{$:/language/Buttons/Delete/Caption}}\",\"command-palette-hint\":\"{{$:/language/Buttons/Delete/Hint}}\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"tm-delete-tiddler\\n\"},\"$:/plugins/linonetwo/commandpalette/Edit Tiddler\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Edit Tiddler\",\"command-palette-name\":\"Edit Tiddler\",\"command-palette-type\":\"history\",\"command-palette-caption\":\"{{$:/language/Buttons/Edit/Caption}}\",\"command-palette-hint\":\"{{$:/language/Buttons/Edit/Hint}}\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"tm-edit-tiddler\\n\"},\"$:/plugins/linonetwo/commandpalette/Filter operation\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Filter operation\",\"command-palette-name\":\"Filter operation\",\"command-palette-type\":\"prompt\",\"command-palette-caption\":\"{{$:/language/Buttons/AdvancedSearch/Caption}}\",\"command-palette-hint\":\"{{$:/language/Buttons/AdvancedSearch/Hint}}\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"[\\n\"},\"$:/plugins/linonetwo/commandpalette/Fold All Tiddlers\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Fold All Tiddlers\",\"command-palette-name\":\"Fold All Tiddlers\",\"command-palette-type\":\"message\",\"command-palette-caption\":\"{{$:/language/Buttons/FoldAll/Caption}}\",\"command-palette-hint\":\"{{$:/language/Buttons/FoldAll/Hint}}\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"tm-fold-all-tiddlers\\n\"},\"$:/plugins/linonetwo/commandpalette/Home\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Home\",\"command-palette-name\":\"Home\",\"command-palette-type\":\"message\",\"command-palette-caption\":\"{{$:/language/Buttons/Home/Caption}}\",\"command-palette-hint\":\"{{$:/language/Buttons/Home/Hint}}\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"tm-home\\n\"},\"$:/plugins/linonetwo/commandpalette/New Journal Command\":{\"title\":\"$:/plugins/linonetwo/commandpalette/New Journal Command\",\"command-palette-name\":\"New Journal\",\"command-palette-type\":\"actionString\",\"command-palette-caption\":\"{{$:/language/Buttons/NewJournal/Caption}}\",\"command-palette-hint\":\"{{$:/language/Buttons/NewJournal/Hint}}\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"{{$:/core/ui/Actions/new-journal}}\\n\"},\"$:/plugins/linonetwo/commandpalette/New Tiddler with title\":{\"title\":\"$:/plugins/linonetwo/commandpalette/New Tiddler with title\",\"command-palette-name\":\"New Tiddler with title\",\"command-palette-type\":\"prompt\",\"command-palette-caption\":\"以标题{{$:/language/Buttons/NewTiddler/Caption}}\",\"command-palette-hint\":\"以标题{{$:/language/Buttons/NewTiddler/Hint}}\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"+\\n\"},\"$:/plugins/linonetwo/commandpalette/New Tiddler\":{\"title\":\"$:/plugins/linonetwo/commandpalette/New Tiddler\",\"command-palette-name\":\"New Tiddler\",\"command-palette-type\":\"message\",\"command-palette-caption\":\"{{$:/language/Buttons/NewTiddler/Caption}}\",\"command-palette-hint\":\"{{$:/language/Buttons/NewTiddler/Hint}}\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"tm-new-tiddler\\n\"},\"$:/plugins/linonetwo/commandpalette/Permalink\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Permalink\",\"command-palette-name\":\"Permalink\",\"command-palette-type\":\"history\",\"command-palette-caption\":\"{{$:/language/Buttons/Permalink/Caption}}\",\"command-palette-hint\":\"{{$:/language/Buttons/Permalink/Hint}}\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"tm-permalink\\n\"},\"$:/plugins/linonetwo/commandpalette/Permaview\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Permaview\",\"command-palette-name\":\"Permaview\",\"command-palette-type\":\"message\",\"command-palette-caption\":\"{{$:/language/Buttons/Permaview/Caption}}\",\"command-palette-hint\":\"{{$:/language/Buttons/Permaview/Hint}}\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"tm-permaview\\n\"},\"$:/plugins/linonetwo/commandpalette/Print\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Print\",\"command-palette-name\":\"Print\",\"command-palette-type\":\"message\",\"command-palette-caption\":\"{{$:/language/Buttons/Print/Caption}}\",\"command-palette-hint\":\"{{$:/language/Buttons/Print/Hint}}\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"tm-print\\n\"},\"$:/plugins/linonetwo/commandpalette/Recent Tiddlers Command\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Recent Tiddlers Command\",\"command-palette-caret\":\"33\",\"command-palette-name\":\"Recent Tiddlers\",\"command-palette-type\":\"prompt-basic\",\"command-palette-caption\":\"查看最近编辑过的Tiddler\",\"command-palette-hint\":\"在命令菜单里列出最近编辑过的Tiddler\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"[!is[system]!sort[created]search[]]\\n\"},\"$:/plugins/linonetwo/commandpalette/Refresh Server\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Refresh Server\",\"command-palette-name\":\"Refresh Server\",\"command-palette-type\":\"message\",\"command-palette-caption\":\"服务器{{$:/language/Buttons/Refresh/Caption}}\",\"command-palette-hint\":\"服务器{{$:/language/Buttons/Refresh/Hint}}\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"tm-server-refresh\\n\"},\"$:/plugins/linonetwo/commandpalette/Save Tiddler\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Save Tiddler\",\"command-palette-mode\":\"drafts\",\"command-palette-name\":\"Save Tiddler\",\"command-palette-type\":\"history\",\"command-palette-caption\":\"{{$:/language/Buttons/Save/Caption}}\",\"command-palette-hint\":\"{{$:/language/Buttons/Save/Hint}}\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"tm-save-tiddler\\n\"},\"$:/plugins/linonetwo/commandpalette/Save Wiki\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Save Wiki\",\"command-palette-name\":\"Save Wiki\",\"command-palette-type\":\"message\",\"command-palette-caption\":\"{{$:/language/Buttons/SaveWiki/Caption}}\",\"command-palette-hint\":\"{{$:/language/Buttons/SaveWiki/Hint}}\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"tm-save-wiki\\n\"},\"$:/plugins/linonetwo/commandpalette/Search Tags\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Search Tags\",\"command-palette-name\":\"Search Tags\",\"command-palette-type\":\"prompt\",\"command-palette-caption\":\"搜索标签列表\",\"command-palette-hint\":\"在命令菜单里列出搜索到的标签\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"#\\n\"},\"$:/plugins/linonetwo/commandpalette/Search fields\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Search fields\",\"command-palette-caret\":\"16\",\"command-palette-name\":\"Search fields\",\"command-palette-type\":\"prompt-basic\",\"command-palette-caption\":\"搜索字段名\",\"command-palette-hint\":\"在命令菜单里搜索列出所有Wiki里涉及到的字段名\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"[fields[]search[]]\\n\"},\"$:/plugins/linonetwo/commandpalette/Search tiddlers with tag\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Search tiddlers with tag\",\"command-palette-name\":\"用 @标签 搜索条目\",\"command-palette-type\":\"prompt\",\"command-palette-caption\":\"带某个标签的Tiddler\",\"command-palette-hint\":\"在命令菜单里列出带某个标签的Tiddler\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"@\\n\"},\"$:/plugins/linonetwo/commandpalette/Search\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Search\",\"command-palette-name\":\"Search\",\"command-palette-type\":\"prompt\",\"command-palette-caption\":\"{{$:/language/Buttons/AdvancedSearch/Caption}}\",\"command-palette-hint\":\"{{$:/language/Buttons/AdvancedSearch/Hint}}\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\"},\"$:/plugins/linonetwo/commandpalette/See Drafts\":{\"title\":\"$:/plugins/linonetwo/commandpalette/See Drafts\",\"command-palette-caret\":\"27\",\"command-palette-name\":\"See Drafts\",\"command-palette-type\":\"prompt-basic\",\"command-palette-caption\":\"查看草稿Tiddler\",\"command-palette-hint\":\"在命令菜单里列出所有处于草稿状态的Tiddler\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"[has:field[draft.of]search[]]\\n\"},\"$:/plugins/linonetwo/commandpalette/See Languages\":{\"title\":\"$:/plugins/linonetwo/commandpalette/See Languages\",\"command-palette-caret\":\"43\",\"command-palette-name\":\"See Languages\",\"command-palette-type\":\"prompt-basic\",\"command-palette-caption\":\"查看语言列表\",\"command-palette-hint\":\"在命令菜单里列出语言列表\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"[!has[draft.of]plugin-type[language]search[]]\\n\"},\"$:/plugins/linonetwo/commandpalette/See Missing Tiddlers\":{\"title\":\"$:/plugins/linonetwo/commandpalette/See Missing Tiddlers\",\"command-palette-caret\":\"20\",\"command-palette-name\":\"See Mising Tiddlers\",\"command-palette-type\":\"prompt-basic\",\"command-palette-caption\":\"查看缺失的Tiddler\",\"command-palette-hint\":\"在命令菜单里列出缺失的Tiddler\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"[all[missing]search[]]\\n\"},\"$:/plugins/linonetwo/commandpalette/See Orphans Tiddlers\":{\"title\":\"$:/plugins/linonetwo/commandpalette/See Orphans Tiddlers\",\"command-palette-caret\":\"20\",\"command-palette-name\":\"See Orphans Tiddlers\",\"command-palette-type\":\"prompt-basic\",\"command-palette-caption\":\"查看孤儿Tiddler\",\"command-palette-hint\":\"在命令菜单里列出孤儿Tiddler\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"[all[orphans]search[]]\\n\"},\"$:/plugins/linonetwo/commandpalette/See Plugins\":{\"title\":\"$:/plugins/linonetwo/commandpalette/See Plugins\",\"command-palette-caret\":\"41\",\"command-palette-name\":\"See Plugins\",\"command-palette-type\":\"prompt-basic\",\"command-palette-caption\":\"查看插件列表\",\"command-palette-hint\":\"在命令菜单里列出插件列表\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"[!has[draft.of]plugin-type[plugin]search[]]\\n\"},\"$:/plugins/linonetwo/commandpalette/See Shadows Tiddlers\":{\"title\":\"$:/plugins/linonetwo/commandpalette/See Shadows Tiddlers\",\"command-palette-caret\":\"20\",\"command-palette-name\":\"See Shadows Tiddlers\",\"command-palette-type\":\"prompt-basic\",\"command-palette-caption\":\"查看系统Tiddler\",\"command-palette-hint\":\"在命令菜单里列出系统Tiddler\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"[all[shadows]search[]]\\n\"},\"$:/plugins/linonetwo/commandpalette/See Story List\":{\"title\":\"$:/plugins/linonetwo/commandpalette/See Story List\",\"command-palette-caret\":\"26\",\"command-palette-name\":\"See Story List\",\"command-palette-type\":\"prompt-basic\",\"command-palette-caption\":\"查看开启的Tiddler\",\"command-palette-hint\":\"在命令菜单里列出开启的Tiddler\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"[list[$:/StoryList]search[]]\"},\"$:/plugins/linonetwo/commandpalette/See Themes\":{\"title\":\"$:/plugins/linonetwo/commandpalette/See Themes\",\"command-palette-caret\":\"40\",\"command-palette-name\":\"See Themes\",\"command-palette-type\":\"prompt-basic\",\"command-palette-caption\":\"查看主题\",\"command-palette-hint\":\"列出可用主题\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"[!has[draft.of]plugin-type[theme]search[]]\\n\"},\"$:/plugins/linonetwo/commandpalette/See all content-types\":{\"title\":\"$:/plugins/linonetwo/commandpalette/See all content-types\",\"command-palette-caret\":\"48\",\"command-palette-name\":\"See all content-type\",\"command-palette-type\":\"prompt-basic\",\"command-palette-caption\":\"查看内容类型\",\"command-palette-hint\":\"在命令菜单里列出所有Wiki里涉及到的内容类型\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"[all[tiddlers+shadows]each[type]get[type]search[]]\\n\"},\"$:/plugins/linonetwo/commandpalette/See untagged tiddlers\":{\"title\":\"$:/plugins/linonetwo/commandpalette/See untagged tiddlers\",\"command-palette-caret\":\"29\",\"command-palette-name\":\"See untagged Tiddlers\",\"command-palette-type\":\"prompt-basic\",\"command-palette-caption\":\"查看未打标签的Tiddler\",\"command-palette-hint\":\"在命令菜单里列出未打标签的Tiddler列表\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"[untagged[]!is[system]search[]]\\n\"},\"$:/plugins/linonetwo/commandpalette/Show help\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Show help\",\"command-palette-name\":\"Show help\",\"command-palette-type\":\"prompt\",\"command-palette-caption\":\"展示帮助\",\"command-palette-hint\":\"列出有哪些用法\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"?\\n\"},\"$:/plugins/linonetwo/commandpalette/Toggle Fullscreen\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Toggle Fullscreen\",\"command-palette-name\":\"Toggle Fullscreen\",\"command-palette-type\":\"message\",\"command-palette-caption\":\"{{$:/language/Buttons/FullScreen/Caption}}\",\"command-palette-hint\":\"{{$:/language/Buttons/FullScreen/Hint}}\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"tm-full-screen\\n\"},\"$:/plugins/linonetwo/commandpalette/Unfold All Tiddlers\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Unfold All Tiddlers\",\"command-palette-name\":\"Unfold All Tiddlers\",\"command-palette-type\":\"actionString\",\"command-palette-caption\":\"{{$:/language/Buttons/UnfoldAll/Caption}}\",\"command-palette-hint\":\"{{$:/language/Buttons/UnfoldAll/Hint}}\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"<$action-sendmessage $message=\\\"tm-unfold-all-tiddlers\\\" foldedStatePrefix=\\\"$:/state/folded/\\\"/>\\n\"},\"$:/plugins/linonetwo/commandpalette/Version\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Version\",\"command-palette-caret\":\"49\",\"command-palette-name\":\"Version\",\"command-palette-type\":\"prompt-basic\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"[[$:/plugins/linonetwo/commandpalette]get[version]]\"},\"$:/plugins/linonetwo/commandpalette/show tiddler commands\":{\"title\":\"$:/plugins/linonetwo/commandpalette/show tiddler commands\",\"command-palette-name\":\"Show CommandTiddlers\",\"command-palette-type\":\"prompt\",\"command-palette-caption\":\"展示可用命令Tiddler列表\",\"command-palette-hint\":\"列出命令菜单的命令来自哪些Tiddlers\",\"tags\":\"$:/tags/CommandPaletteCommand\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"@$:/tags/CommandPaletteCommand\\n\"},\"$:/plugins/linonetwo/itonnote/readme\":{\"title\":\"$:/plugins/linonetwo/itonnote/readme\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"此插件基于[[Souk21/TW-commandpalette|https://github.com/Souk21/TW-commandpalette]],非常感谢他的工作,在过去的一年里这个插件极大地为我提高了工作效率。我将它主要源码复制过来汉化并加入拼音搜索功能,以便我们更灵活地在中文环境下使用。\\n\\n!! 功能\\n\\n按下 ctrl/cmd + P 唤起搜索框,按的时候如果多加一个 shift 可以唤起功能框。\\n\\n搜索的时候可以打拼音。\\n\"},\"$:/config/ShortcutInfo/command-palette-switch-history-back\":{\"title\":\"$:/config/ShortcutInfo/command-palette-switch-history-back\",\"tags\":\"\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"Switch to previously opened tiddler (Inversed)\"},\"$:/config/ShortcutInfo/command-palette-switch-history\":{\"title\":\"$:/config/ShortcutInfo/command-palette-switch-history\",\"tags\":\"\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"Switch to previously opened tiddler\"},\"$:/config/ShortcutInfo/insert-command-palette-result\":{\"title\":\"$:/config/ShortcutInfo/insert-command-palette-result\",\"created\":\"20200604175511112\",\"modified\":\"20200604175520378\",\"tags\":\"\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"Insert the current result in the previously focused element\"},\"$:/config/ShortcutInfo/open-command-palette-command-mode\":{\"title\":\"$:/config/ShortcutInfo/open-command-palette-command-mode\",\"tags\":\"\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"Open the command palette in command mode\"},\"$:/config/ShortcutInfo/open-command-palette-selection\":{\"title\":\"$:/config/ShortcutInfo/open-command-palette-selection\",\"created\":\"20200604175511112\",\"modified\":\"20200604175520378\",\"tags\":\"\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"Open the command palette with current selection\"},\"$:/config/ShortcutInfo/open-command-palette\":{\"title\":\"$:/config/ShortcutInfo/open-command-palette\",\"created\":\"20200531223953066\",\"modified\":\"20200531224011568\",\"tags\":\"\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"Open the command palette\"},\"$:/config/shortcuts-mac/insert-command-palette-result\":{\"title\":\"$:/config/shortcuts-mac/insert-command-palette-result\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"shift-cmd-I\"},\"$:/config/shortcuts-mac/open-command-palette-command-mode\":{\"title\":\"$:/config/shortcuts-mac/open-command-palette-command-mode\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"cmd-shift-P\"},\"$:/config/shortcuts-mac/open-command-palette\":{\"title\":\"$:/config/shortcuts-mac/open-command-palette\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"cmd-P\"},\"$:/config/shortcuts/command-palette-switch-history-back\":{\"title\":\"$:/config/shortcuts/command-palette-switch-history-back\",\"tags\":\"\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"ctrl-shift-tab\"},\"$:/config/shortcuts/command-palette-switch-history\":{\"title\":\"$:/config/shortcuts/command-palette-switch-history\",\"tags\":\"\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"ctrl-tab\"},\"$:/config/shortcuts/insert-command-palette-result\":{\"title\":\"$:/config/shortcuts/insert-command-palette-result\",\"created\":\"20200604175539239\",\"modified\":\"20200604175658624\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"ctrl+shift+I\"},\"$:/config/shortcuts/open-command-palette-command-mode\":{\"title\":\"$:/config/shortcuts/open-command-palette-command-mode\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"ctrl-shift-P\"},\"$:/config/shortcuts/open-command-palette-selection\":{\"title\":\"$:/config/shortcuts/open-command-palette-selection\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"\"},\"$:/config/shortcuts/open-command-palette\":{\"title\":\"$:/config/shortcuts/open-command-palette\",\"tags\":\"\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"ctrl-P\"},\"$:/core/ui/KeyboardShortcuts/CommandPalette\":{\"title\":\"$:/core/ui/KeyboardShortcuts/CommandPalette\",\"key\":\"((open-command-palette))\",\"tags\":\"$:/tags/KeyboardShortcut\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"<$action-sendmessage $message=\\\"open-command-palette\\\"/>\"},\"$:/plugins/linonetwo/commandpalette/CommandPaletteCommandMode\":{\"title\":\"$:/plugins/linonetwo/commandpalette/CommandPaletteCommandMode\",\"key\":\"((open-command-palette-command-mode))\",\"tags\":\"$:/tags/KeyboardShortcut\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"<$action-sendmessage $message=\\\"open-command-palette\\\" $param=\\\">\\\" />\"},\"$:/plugins/linonetwo/commandpalette/CommandPaletteSelection\":{\"title\":\"$:/plugins/linonetwo/commandpalette/CommandPaletteSelection\",\"created\":\"20200604175339522\",\"key\":\"((open-command-palette-selection))\",\"modified\":\"20200604175716862\",\"tags\":\"$:/tags/KeyboardShortcut\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"<$action-sendmessage $message=\\\"open-command-palette-selection\\\"/>\"},\"$:/plugins/linonetwo/commandpalette/CommandPaletteSwitchHistory\":{\"title\":\"$:/plugins/linonetwo/commandpalette/CommandPaletteSwitchHistory\",\"key\":\"((command-palette-switch-history))\",\"tags\":\"$:/tags/KeyboardShortcut\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"<$action-sendmessage $message=\\\"command-palette-switch-history\\\" />\"},\"$:/plugins/linonetwo/commandpalette/CommandPaletteSwitchHistoryBack\":{\"title\":\"$:/plugins/linonetwo/commandpalette/CommandPaletteSwitchHistoryBack\",\"key\":\"((command-palette-switch-history-back))\",\"tags\":\"$:/tags/KeyboardShortcut\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"<$action-sendmessage $message=\\\"command-palette-switch-history-back\\\" />\"},\"$:/plugins/linonetwo/commandpalette/InsertCommandPaletteResult\":{\"title\":\"$:/plugins/linonetwo/commandpalette/InsertCommandPaletteResult\",\"key\":\"((insert-command-palette-result))\",\"tags\":\"$:/tags/KeyboardShortcut\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"<$action-sendmessage $message=\\\"insert-command-palette-result\\\"/>\"},\"$:/plugins/linonetwo/commandpalette/Compact.css\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Compact.css\",\"tags\":\"$:/tags/CommandPaletteTheme $:/tags/Stylesheet\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"\\\\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline html\\n:root {\\n --palette-radius: 5px;\\n}\\n.commandpalette {\\n position: fixed;\\n background: <<colour background>>;\\n z-index: 9999;\\n left: 50%;\\n top: 10%;\\n transform: translate(-50%, 0%);\\n width: 500px;\\n display: none;\\n flex-direction: column;\\n font-size: 21px;\\n border-radius: var(--palette-radius);\\n box-shadow: rgba(0, 0, 0, 0.15) 0px 0px 14px;\\n border: 2px solid <<colour page-background>>;\\n}\\n@media (max-width: 540px) {\\n .commandpalette {\\n width: calc(100vw - 40px);\\n }\\n}\\n.commandpalette-masklayer {\\n position: fixed;\\n z-index: 9998;\\n top: 0;\\n left: 0;\\n right: 0;\\n bottom: 0;\\n width: 100vw;\\n height: 100vh;\\n background: <<colour background>>;\\n opacity: 0;\\n filter: contrast(130%);\\n min-width: 200px !important;\\n transition: all {{$:/config/AnimationDuration}}ms;\\n pointer-events: none;\\n backdrop-filter: blur(10px);\\n background-color: rgba(255,255,255,0.6);\\n}\\n.inputhintwrapper {\\n display: flex;\\n align-items: center;\\n border-bottom: 1px solid <<colour page-background>>;\\n}\\n.commandpalette input {\\n border: 0;\\n background: 0;\\n height: 40px;\\n color: <<colour foreground>>;\\n border-radius: var(--palette-radius) var(--palette-radius) 0px 0px;\\n outline: 0;\\n min-width: 50px;\\n flex: 1;\\n padding-left: 7px;\\n}\\n.commandpalettetitle {\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n}\\n.commandpalettehint {\\n font-size: 13px;\\n text-align: right;\\n flex-shrink: 0;\\n padding-right: 7px;\\n opacity: 0.6;\\n font-weight: 800;\\n}\\n.commandpaletteresultselected>.commandpalettehint {\\n opacity: 1;\\n}\\n.commandpalettehintmain {\\n\\n}\\n.commandpaletteresult {\\n background: <<colour background>>;\\n font-size: 15px;\\n color: <<colour foreground>>;\\n fill: <<colour foreground>>;\\n display: flex;\\n align-items: center;\\n justify-content: space-between;\\n padding-left: 6px;\\n padding-top: 4px;\\n padding-bottom: 4px;\\n cursor: pointer;\\n width: 100%;\\n}\\n.commandpaletteresult:not(:last-child) {\\n border-bottom: <<colour page-background>> solid 1px;\\n}\\n.commandpaletteresult:hover:not(.commandpaletteresultselected) {\\n background: <<colour page-background>>;\\n}\\n.commandpaletteresultselected {\\n background: <<colour primary>>;\\n color: <<colour tiddler-link-background>>;\\n fill: <<colour tiddler-link-background>>;\\n}\\n.cp-scroll{\\n max-height: 50vh;\\n overflow-y: auto;\\n position: relative;\\n border-radius: 0px 0px var(--palette-radius) var(--palette-radius);\\n}\\n\"},\"$:/plugins/linonetwo/commandpalette/HideVanillaSearch.css\":{\"title\":\"$:/plugins/linonetwo/commandpalette/HideVanillaSearch.css\",\"tags\":\"$:/tags/Stylesheet\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"<$list filter=\\\"[[$:/plugins/linonetwo/commandpalette/settings/HideDefaultSearchBar]get[text]else[no]match[yes]]\\\">\\n.tc-sidebar-lists.tc-sidebar-search {\\n display: none;\\n}\\n</$list>\\n\"},\"$:/plugins/linonetwo/commandpalette/Original.css\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Original.css\",\"tags\":\"$:/tags/CommandPaletteTheme\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"\\n\\\\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline html\\n:root {\\n --palette-radius: 5px;\\n}\\n.commandpalette {\\n position: fixed;\\n background:<<colour page-background>>;\\n z-index: 9999;\\n left: 50%;\\n top: 10%;\\n transform: translate(-50%, 0%);\\n width: 500px;\\n display: none;\\n flex-direction: column;\\n font-size: 21px;\\n border-radius: var(--palette-radius);\\n box-shadow: rgba(0, 0, 0, 0.15) 0px 0px 14px;\\n border: 4px solid transparent;\\n}\\n@media (max-width: 540px) {\\n .commandpalette {\\n width: calc(100vw - 40px);\\n }\\n}\\n.commandpalette-masklayer {\\n position: fixed;\\n z-index: 9998;\\n top: 0;\\n left: 0;\\n right: 0;\\n bottom: 0;\\n width: 100vw;\\n height: 100vh;\\n background: <<colour background>>;\\n opacity: 0;\\n filter: contrast(130%);\\n min-width: 200px !important;\\n transition: all {{$:/config/AnimationDuration}}ms;\\n pointer-events: none;\\n backdrop-filter: blur(10px);\\n background-color: rgba(255,255,255,0.6);\\n}\\n.commandpalette input {\\n border: 0;\\n height: 40px;\\n color: <<colour foreground>>;\\n border-radius: var(--palette-radius) var(--palette-radius) 0px 0px;\\n padding-left: 11px;\\n padding-right: 11px;\\n width: 100%;\\n outline: 0;\\n}\\n.commandpalettetitle {\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n}\\n.commandpalettehint {\\n font-size: 13px;\\n text-align: right;\\n flex-shrink: 0;\\n padding-right: 7px;\\n opacity: 0.6;\\n font-weight: 800;\\n}\\n.commandpaletteresultselected>.commandpalettehint {\\n opacity: 1;\\n}\\n.commandpalettehintmain {\\n}\\n.commandpaletteresult {\\n background: <<colour background>>;\\n font-size: 15px;\\n color: <<colour foreground>>;\\n fill: <<colour foreground>>;\\n display: flex;\\n align-items: center;\\n justify-content: space-between;\\n padding-left: 6px;\\n padding-top: 4px;\\n padding-bottom: 4px;\\n cursor: pointer;\\n width: 100%;\\n}\\n.commandpaletteresult:not(:last-child) {\\n border-bottom: <<colour page-background>> solid 1px;\\n}\\n.commandpaletteresult:hover:not(.commandpaletteresultselected) {\\n background: <<colour page-background>>;\\n}\\n.commandpaletteresultselected {\\n background: <<colour primary>>;\\n color: <<colour page-background>>;\\n fill: <<colour page-background>>;\\n}\\n.cp-scroll{\\n max-height: 50vh;\\n overflow-y: auto;\\n position: relative;\\n border-radius: 0px 0px var(--palette-radius) var(--palette-radius);\\n}\\n\"},\"$:/core/ui/Buttons/CommandPalette\":{\"title\":\"$:/core/ui/Buttons/CommandPalette\",\"caption\":\"{{$:/plugins/linonetwo/commandpalette/command-palette.svg}} Command Palette\",\"description\":\"Open Command Palette\",\"tags\":\"$:/tags/PageControls\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"<$button class=<<tv-config-toolbar-class>> message=\\\"open-command-palette\\\" tooltip=\\\"Open Command Palette\\\" aria-label=\\\"Command Palette\\\"><$list filter=\\\"[<tv-config-toolbar-icons>match[yes]]\\\">{{$:/plugins/linonetwo/commandpalette/command-palette.svg}}</$list><$list filter=\\\"[<tv-config-toolbar-text>match[yes]]\\\"><span class=\\\"tc-btn-text\\\"><$text text=\\\"Command Palette\\\"/></span></$list></$button>\\n\"},\"$:/plugins/linonetwo/commandpalette/View\":{\"title\":\"$:/plugins/linonetwo/commandpalette/View\",\"tags\":\"$:/tags/AboveStory\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"<$commandpalettewidget/>\\n\"},\"$:/plugins/linonetwo/commandpalette/command-palette.svg\":{\"title\":\"$:/plugins/linonetwo/commandpalette/command-palette.svg\",\"tags\":\"$:/tags/Image\",\"text\":\"<svg aria-hidden=\\\"true\\\" width=\\\"22pt\\\" height=\\\"22pt\\\" class=\\\"tc-image-button commandpalette-button\\\" viewBox=\\\"0 0 512 512\\\" style=\\\"transform: rotate(225deg);\\\">\\n <path d=\\\"M224 96l16-32 32-16-32-16-16-32-16 32-32 16 32 16 16 32zM80 160l26.66-53.33L160 80l-53.34-26.67L80 0 53.34 53.33 0 80l53.34 26.67L80 160zm0-96c8.84 0 16 7.16 16 16s-7.16 16-16 16-16-7.16-16-16 7.16-16 16-16zm352 224l-26.66 53.33L352 368l53.34 26.67L432 448l26.66-53.33L512 368l-53.34-26.67L432 288zm0 96c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16zm70.63-306.04L434.04 9.37C427.79 3.12 419.6 0 411.41 0s-16.38 3.12-22.63 9.37L9.37 388.79c-12.5 12.5-12.5 32.76 0 45.25l68.59 68.59c6.25 6.25 14.44 9.37 22.63 9.37s16.38-3.12 22.63-9.37l379.41-379.41c12.49-12.5 12.49-32.76 0-45.26zM100.59 480L32 411.41l258.38-258.4 68.6 68.6L100.59 480zm281.02-281.02l-68.6-68.6L411.38 32h.03L480 100.59l-98.39 98.39z\\\" fill-rule=\\\"evenodd\\\"/>\\n</svg>\\n\"},\"$:/plugins/linonetwo/commandpalette/CommandPaletteWidget.js\":{\"title\":\"$:/plugins/linonetwo/commandpalette/CommandPaletteWidget.js\",\"type\":\"application/javascript\",\"module-type\":\"widget\",\"Modern.TiddlyDev#Origin\":\"CommandPaletteWidget.ts\",\"text\":\"\\\"use strict\\\";var __create=Object.create,__defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__getProtoOf=Object.getPrototypeOf,__hasOwnProp=Object.prototype.hasOwnProperty,__esm=(e,t)=>function(){return t=e?(0,e[__getOwnPropNames(e)[0]])(e=0):t},__commonJS=(e,t)=>function(){return t||(0,e[__getOwnPropNames(e)[0]])((t={exports:{}}).exports,t),t.exports},__copyProps=(t,i,s,r)=>{if(i&&\\\"object\\\"==typeof i||\\\"function\\\"==typeof i)for(let e of __getOwnPropNames(i))__hasOwnProp.call(t,e)||e===s||__defProp(t,e,{get:()=>i[e],enumerable:!(r=__getOwnPropDesc(i,e))||r.enumerable});return t},__toESM=(e,t,i)=>(i=null!=e?__create(__getProtoOf(e)):{},__copyProps(!t&&e&&e.__esModule?i:__defProp(i,\\\"default\\\",{value:e,enumerable:!0}),e)),init_esbuild_inject=__esm({\\\"node_modules/.pnpm/tiddlywiki-plugin-dev@0.0.39_postcss@8.4.33_ts-node@10.9.2/node_modules/tiddlywiki-plugin-dev/dist/js/esbuild-inject.js\\\"(){}}),require_isObject=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isObject.js\\\"(e,t){init_esbuild_inject(),t.exports=function(e){var t=typeof e;return null!=e&&(\\\"object\\\"==t||\\\"function\\\"==t)}}}),require_freeGlobal=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_freeGlobal.js\\\"(e,t){init_esbuild_inject();var i=\\\"object\\\"==typeof global&&global&&global.Object===Object&&global;t.exports=i}}),require_root=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_root.js\\\"(e,t){init_esbuild_inject();var i=require_freeGlobal(),s=\\\"object\\\"==typeof self&&self&&self.Object===Object&&self,i=i||s||Function(\\\"return this\\\")();t.exports=i}}),require_now=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/now.js\\\"(e,t){init_esbuild_inject();var i=require_root();t.exports=function(){return i.Date.now()}}}),require_trimmedEndIndex=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_trimmedEndIndex.js\\\"(e,t){init_esbuild_inject();var i=/\\\\s/;t.exports=function(e){for(var t=e.length;t--&&i.test(e.charAt(t)););return t}}}),require_baseTrim=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseTrim.js\\\"(e,t){init_esbuild_inject();var i=require_trimmedEndIndex(),s=/^\\\\s+/;t.exports=function(e){return e&&e.slice(0,i(e)+1).replace(s,\\\"\\\")}}}),require_Symbol=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Symbol.js\\\"(e,t){init_esbuild_inject();var i=require_root().Symbol;t.exports=i}}),require_getRawTag=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getRawTag.js\\\"(e,t){init_esbuild_inject();var i=require_Symbol(),s=Object.prototype,o=s.hasOwnProperty,a=s.toString,l=i?i.toStringTag:void 0;t.exports=function(e){var t=o.call(e,l),i=e[l];try{var s=!(e[l]=void 0)}catch(n){}var r=a.call(e);return s&&(t?e[l]=i:delete e[l]),r}}}),require_objectToString=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_objectToString.js\\\"(e,t){init_esbuild_inject();var i=Object.prototype.toString;t.exports=function(e){return i.call(e)}}}),require_baseGetTag=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseGetTag.js\\\"(e,t){init_esbuild_inject();var i=require_Symbol(),s=require_getRawTag(),r=require_objectToString(),n=i?i.toStringTag:void 0;t.exports=function(e){return null==e?void 0===e?\\\"[object Undefined]\\\":\\\"[object Null]\\\":(n&&n in Object(e)?s:r)(e)}}}),require_isObjectLike=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isObjectLike.js\\\"(e,t){init_esbuild_inject(),t.exports=function(e){return null!=e&&\\\"object\\\"==typeof e}}}),require_isSymbol=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isSymbol.js\\\"(e,t){init_esbuild_inject();var i=require_baseGetTag(),s=require_isObjectLike();t.exports=function(e){return\\\"symbol\\\"==typeof e||s(e)&&\\\"[object Symbol]\\\"==i(e)}}}),require_toNumber=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/toNumber.js\\\"(e,t){init_esbuild_inject();var i=require_baseTrim(),s=require_isObject(),r=require_isSymbol(),n=/^[-+]0x[0-9a-f]+$/i,o=/^0b[01]+$/i,a=/^0o[0-7]+$/i,l=parseInt;t.exports=function(e){if(\\\"number\\\"==typeof e)return e;if(r(e))return NaN;if(s(e)&&(t=\\\"function\\\"==typeof e.valueOf?e.valueOf():e,e=s(t)?t+\\\"\\\":t),\\\"string\\\"!=typeof e)return 0===e?e:+e;e=i(e);var t=o.test(e);return t||a.test(e)?l(e.slice(2),t?2:8):n.test(e)?NaN:+e}}}),require_debounce=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/debounce.js\\\"(e,t){init_esbuild_inject();var f=require_isObject(),S=require_now(),b=require_toNumber(),y=Math.max,w=Math.min;t.exports=function(s,r,e){var n,o,i,a,l,h,u=0,d=!1,c=!1,t=!0;if(\\\"function\\\"!=typeof s)throw new TypeError(\\\"Expected a function\\\");function m(e){var t=n,i=o;return n=o=void 0,u=e,a=s.apply(i,t)}function p(e){var t=e-h;return void 0===h||r<=t||t<0||c&&i<=e-u}function _(){var e,t=S();if(p(t))return v(t);l=setTimeout(_,(t=r-((e=t)-h),c?w(t,i-(e-u)):t))}function v(e){return l=void 0,t&&n?m(e):(n=o=void 0,a)}function g(){var e,t=S(),i=p(t);if(n=arguments,o=this,h=t,i){if(void 0===l)return u=e=h,l=setTimeout(_,r),d?m(e):a;if(c)return clearTimeout(l),l=setTimeout(_,r),m(h)}return void 0===l&&(l=setTimeout(_,r)),a}return r=b(r)||0,f(e)&&(d=!!e.leading,c=\\\"maxWait\\\"in e,i=c?y(b(e.maxWait)||0,r):i,t=\\\"trailing\\\"in e?!!e.trailing:t),g.cancel=function(){void 0!==l&&clearTimeout(l),n=h=o=l=void(u=0)},g.flush=function(){return void 0===l?a:v(S())},g}}}),require_isFunction=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isFunction.js\\\"(e,t){init_esbuild_inject();var i=require_baseGetTag(),s=require_isObject();t.exports=function(e){var t;return!!s(e)&&(\\\"[object Function]\\\"==(t=i(e))||\\\"[object GeneratorFunction]\\\"==t||\\\"[object AsyncFunction]\\\"==t||\\\"[object Proxy]\\\"==t)}}}),require_coreJsData=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_coreJsData.js\\\"(e,t){init_esbuild_inject();var i=require_root()[\\\"__core-js_shared__\\\"];t.exports=i}}),require_isMasked=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isMasked.js\\\"(e,t){init_esbuild_inject();var i=require_coreJsData(),s=(i=/[^.]+$/.exec(i&&i.keys&&i.keys.IE_PROTO||\\\"\\\"))?\\\"Symbol(src)_1.\\\"+i:\\\"\\\";t.exports=function(e){return!!s&&s in e}}}),require_toSource=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_toSource.js\\\"(e,t){init_esbuild_inject();var i=Function.prototype.toString;t.exports=function(e){if(null!=e){try{return i.call(e)}catch(t){}try{return e+\\\"\\\"}catch(t){}}return\\\"\\\"}}}),require_baseIsNative=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsNative.js\\\"(e,t){init_esbuild_inject();var i=require_isFunction(),s=require_isMasked(),r=require_isObject(),n=require_toSource(),o=/^\\\\[object .+?Constructor\\\\]$/,a=Function.prototype,l=Object.prototype,a=a.toString,l=l.hasOwnProperty,h=RegExp(\\\"^\\\"+a.call(l).replace(/[\\\\\\\\^$.*+?()[\\\\]{}|]/g,\\\"\\\\\\\\$&\\\").replace(/hasOwnProperty|(function).*?(?=\\\\\\\\\\\\()| for .+?(?=\\\\\\\\\\\\])/g,\\\"$1.*?\\\")+\\\"$\\\");t.exports=function(e){return!(!r(e)||s(e))&&(i(e)?h:o).test(n(e))}}}),require_getValue=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getValue.js\\\"(e,t){init_esbuild_inject(),t.exports=function(e,t){return null==e?void 0:e[t]}}}),require_getNative=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getNative.js\\\"(e,t){init_esbuild_inject();var s=require_baseIsNative(),r=require_getValue();t.exports=function(e,t){var i=r(e,t);return s(i)?i:void 0}}}),require_nativeCreate=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_nativeCreate.js\\\"(e,t){init_esbuild_inject();var i=require_getNative()(Object,\\\"create\\\");t.exports=i}}),require_hashClear=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashClear.js\\\"(e,t){init_esbuild_inject();var i=require_nativeCreate();t.exports=function(){this.__data__=i?i(null):{},this.size=0}}}),require_hashDelete=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashDelete.js\\\"(e,t){init_esbuild_inject(),t.exports=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}}}),require_hashGet=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashGet.js\\\"(e,t){init_esbuild_inject();var s=require_nativeCreate(),r=Object.prototype.hasOwnProperty;t.exports=function(e){var t,i=this.__data__;return s?\\\"__lodash_hash_undefined__\\\"===(t=i[e])?void 0:t:r.call(i,e)?i[e]:void 0}}}),require_hashHas=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashHas.js\\\"(e,t){init_esbuild_inject();var i=require_nativeCreate(),s=Object.prototype.hasOwnProperty;t.exports=function(e){var t=this.__data__;return i?void 0!==t[e]:s.call(t,e)}}}),require_hashSet=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashSet.js\\\"(e,t){init_esbuild_inject();var s=require_nativeCreate();t.exports=function(e,t){var i=this.__data__;return this.size+=this.has(e)?0:1,i[e]=s&&void 0===t?\\\"__lodash_hash_undefined__\\\":t,this}}}),require_Hash=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Hash.js\\\"(e,t){init_esbuild_inject();var i=require_hashClear(),s=require_hashDelete(),r=require_hashGet(),n=require_hashHas(),o=require_hashSet();function a(e){var t=-1,i=null==e?0:e.length;for(this.clear();++t<i;){var s=e[t];this.set(s[0],s[1])}}a.prototype.clear=i,a.prototype[\\\"delete\\\"]=s,a.prototype.get=r,a.prototype.has=n,a.prototype.set=o,t.exports=a}}),require_listCacheClear=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheClear.js\\\"(e,t){init_esbuild_inject(),t.exports=function(){this.__data__=[],this.size=0}}}),require_eq=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/eq.js\\\"(e,t){init_esbuild_inject(),t.exports=function(e,t){return e===t||e!=e&&t!=t}}}),require_assocIndexOf=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_assocIndexOf.js\\\"(e,t){init_esbuild_inject();var s=require_eq();t.exports=function(e,t){for(var i=e.length;i--;)if(s(e[i][0],t))return i;return-1}}}),require_listCacheDelete=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheDelete.js\\\"(e,t){init_esbuild_inject();var s=require_assocIndexOf(),r=Array.prototype.splice;t.exports=function(e){var t=this.__data__,i=s(t,e);return!(i<0||(i==t.length-1?t.pop():r.call(t,i,1),--this.size,0))}}}),require_listCacheGet=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheGet.js\\\"(e,t){init_esbuild_inject();var s=require_assocIndexOf();t.exports=function(e){var t=this.__data__,i=s(t,e);return i<0?void 0:t[i][1]}}}),require_listCacheHas=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheHas.js\\\"(e,t){init_esbuild_inject();var i=require_assocIndexOf();t.exports=function(e){return-1<i(this.__data__,e)}}}),require_listCacheSet=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheSet.js\\\"(e,t){init_esbuild_inject();var r=require_assocIndexOf();t.exports=function(e,t){var i=this.__data__,s=r(i,e);return s<0?(++this.size,i.push([e,t])):i[s][1]=t,this}}}),require_ListCache=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_ListCache.js\\\"(e,t){init_esbuild_inject();var i=require_listCacheClear(),s=require_listCacheDelete(),r=require_listCacheGet(),n=require_listCacheHas(),o=require_listCacheSet();function a(e){var t=-1,i=null==e?0:e.length;for(this.clear();++t<i;){var s=e[t];this.set(s[0],s[1])}}a.prototype.clear=i,a.prototype[\\\"delete\\\"]=s,a.prototype.get=r,a.prototype.has=n,a.prototype.set=o,t.exports=a}}),require_Map=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Map.js\\\"(e,t){init_esbuild_inject();var i=require_getNative()(require_root(),\\\"Map\\\");t.exports=i}}),require_mapCacheClear=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheClear.js\\\"(e,t){init_esbuild_inject();var i=require_Hash(),s=require_ListCache(),r=require_Map();t.exports=function(){this.size=0,this.__data__={hash:new i,map:new(r||s),string:new i}}}}),require_isKeyable=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isKeyable.js\\\"(e,t){init_esbuild_inject(),t.exports=function(e){var t=typeof e;return\\\"string\\\"==t||\\\"number\\\"==t||\\\"symbol\\\"==t||\\\"boolean\\\"==t?\\\"__proto__\\\"!==e:null===e}}}),require_getMapData=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getMapData.js\\\"(e,t){init_esbuild_inject();var s=require_isKeyable();t.exports=function(e,t){var i=e.__data__;return s(t)?i[\\\"string\\\"==typeof t?\\\"string\\\":\\\"hash\\\"]:i.map}}}),require_mapCacheDelete=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheDelete.js\\\"(e,t){init_esbuild_inject();var i=require_getMapData();t.exports=function(e){var t=i(this,e)[\\\"delete\\\"](e);return this.size-=t?1:0,t}}}),require_mapCacheGet=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheGet.js\\\"(e,t){init_esbuild_inject();var i=require_getMapData();t.exports=function(e){return i(this,e).get(e)}}}),require_mapCacheHas=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheHas.js\\\"(e,t){init_esbuild_inject();var i=require_getMapData();t.exports=function(e){return i(this,e).has(e)}}}),require_mapCacheSet=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheSet.js\\\"(e,t){init_esbuild_inject();var r=require_getMapData();t.exports=function(e,t){var i=r(this,e),s=i.size;return i.set(e,t),this.size+=i.size==s?0:1,this}}}),require_MapCache=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_MapCache.js\\\"(e,t){init_esbuild_inject();var i=require_mapCacheClear(),s=require_mapCacheDelete(),r=require_mapCacheGet(),n=require_mapCacheHas(),o=require_mapCacheSet();function a(e){var t=-1,i=null==e?0:e.length;for(this.clear();++t<i;){var s=e[t];this.set(s[0],s[1])}}a.prototype.clear=i,a.prototype[\\\"delete\\\"]=s,a.prototype.get=r,a.prototype.has=n,a.prototype.set=o,t.exports=a}}),require_setCacheAdd=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_setCacheAdd.js\\\"(e,t){init_esbuild_inject();t.exports=function(e){return this.__data__.set(e,\\\"__lodash_hash_undefined__\\\"),this}}}),require_setCacheHas=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_setCacheHas.js\\\"(e,t){init_esbuild_inject(),t.exports=function(e){return this.__data__.has(e)}}}),require_SetCache=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_SetCache.js\\\"(e,t){init_esbuild_inject();var s=require_MapCache(),i=require_setCacheAdd(),r=require_setCacheHas();function n(e){var t=-1,i=null==e?0:e.length;for(this.__data__=new s;++t<i;)this.add(e[t])}n.prototype.add=n.prototype.push=i,n.prototype.has=r,t.exports=n}}),require_baseFindIndex=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseFindIndex.js\\\"(e,t){init_esbuild_inject(),t.exports=function(e,t,i,s){for(var r=e.length,n=i+(s?1:-1);s?n--:++n<r;)if(t(e[n],n,e))return n;return-1}}}),require_baseIsNaN=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsNaN.js\\\"(e,t){init_esbuild_inject(),t.exports=function(e){return e!=e}}}),require_strictIndexOf=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_strictIndexOf.js\\\"(e,t){init_esbuild_inject(),t.exports=function(e,t,i){for(var s=i-1,r=e.length;++s<r;)if(e[s]===t)return s;return-1}}}),require_baseIndexOf=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIndexOf.js\\\"(e,t){init_esbuild_inject();var s=require_baseFindIndex(),r=require_baseIsNaN(),n=require_strictIndexOf();t.exports=function(e,t,i){return t==t?n(e,t,i):s(e,r,i)}}}),require_arrayIncludes=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_arrayIncludes.js\\\"(e,t){init_esbuild_inject();var i=require_baseIndexOf();t.exports=function(e,t){return!!(null==e?0:e.length)&&-1<i(e,t,0)}}}),require_arrayIncludesWith=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_arrayIncludesWith.js\\\"(e,t){init_esbuild_inject(),t.exports=function(e,t,i){for(var s=-1,r=null==e?0:e.length;++s<r;)if(i(t,e[s]))return!0;return!1}}}),require_cacheHas=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_cacheHas.js\\\"(e,t){init_esbuild_inject(),t.exports=function(e,t){return e.has(t)}}}),require_Set=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Set.js\\\"(e,t){init_esbuild_inject();var i=require_getNative()(require_root(),\\\"Set\\\");t.exports=i}}),require_noop=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/noop.js\\\"(e,t){init_esbuild_inject(),t.exports=function(){}}}),require_setToArray=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_setToArray.js\\\"(e,t){init_esbuild_inject(),t.exports=function(e){var t=-1,i=Array(e.size);return e.forEach(function(e){i[++t]=e}),i}}}),require_createSet=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_createSet.js\\\"(e,t){init_esbuild_inject();var i=require_Set(),s=require_noop(),r=require_setToArray(),r=i&&1/r(new i([,-0]))[1]==1/0?function(e){return new i(e)}:s;t.exports=r}}),require_baseUniq=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseUniq.js\\\"(e,t){init_esbuild_inject();var m=require_SetCache(),p=require_arrayIncludes(),_=require_arrayIncludesWith(),v=require_cacheHas(),g=require_createSet(),f=require_setToArray();t.exports=function(e,t,i){var s=-1,r=p,n=e.length,o=!0,a=[],l=a;if(i)o=!1,r=_;else if(200<=n){var h=t?null:g(e);if(h)return f(h);o=!1,r=v,l=new m}else l=t?[]:a;e:for(;++s<n;){var u=e[s],d=t?t(u):u,u=i||0!==u?u:0;if(o&&d==d){for(var c=l.length;c--;)if(l[c]===d)continue e;t&&l.push(d),a.push(u)}else r(l,d,i)||(l!==a&&l.push(d),a.push(u))}return a}}}),require_uniq=__commonJS({\\\"node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/uniq.js\\\"(e,t){init_esbuild_inject();var i=require_baseUniq();t.exports=function(e){return e&&e.length?i(e):[]}}}),import_debounce=(init_esbuild_inject(),__toESM(require_debounce())),import_uniq=__toESM(require_uniq()),import_widget=require(\\\"$:/core/modules/widgets/widget.js\\\"),CommandPaletteWidget=class extends import_widget.widget{constructor(e,t){super(e,t),this.actions=[],this.triggers=[],this.currentResults=[],this.typeField=\\\"command-palette-type\\\",this.nameField=\\\"command-palette-name\\\",this.captionField=\\\"command-palette-caption\\\",this.hintField=\\\"command-palette-hint\\\",this.modeField=\\\"command-palette-mode\\\",this.userInputField=\\\"command-palette-user-input\\\",this.caretField=\\\"command-palette-caret\\\",this.immediateField=\\\"command-palette-immediate\\\",this.triggerField=\\\"command-palette-trigger\\\",this.currentSelection=0,this.symbolProviders={},this.blockProviderChange=!1,this.defaultSettings={maxResults:15,maxResultHintSize:45,neverBasic:!1,showHistoryOnOpen:!0,escapeGoesBack:!0,alwaysPassSelection:!1,theme:\\\"$:/plugins/linonetwo/commandpalette/Compact.css\\\"},this.settings={},this.commandHistoryPath=\\\"$:/plugins/linonetwo/commandpalette/CommandPaletteHistory\\\",this.settingsPath=\\\"$:/plugins/linonetwo/commandpalette/CommandPaletteSettings\\\",this.searchStepsPath=\\\"$:/plugins/linonetwo/commandpalette/CommandPaletteSearchSteps\\\",this.customCommandsTag=\\\"$:/tags/CommandPaletteCommand\\\",this.themesTag=\\\"$:/tags/CommandPaletteTheme\\\",this.currentResolver=()=>{},this.currentProvider=()=>{},this.searchSteps=[],this.isIMEOpen=!1,this.initialise(e,t),this.onInput=(0,import_debounce[\\\"default\\\"])(this.onInput,300)}actionStringBuilder(t){return e=>this.invokeActionString(t,this,e)}actionStringInput(t,e,i){this.blockProviderChange=!0,this.allowInputFieldSelection=!0,this.hint.innerText=e,this.input.value=\\\"\\\",this.currentProvider=()=>{},this.currentResolver=e=>{this.invokeActionString(t,this,e,{commandpaletteinput:this.input.value}),this.closePalette()},this.showResults([]),this.onInput(this.input.value)}invokeFieldMangler(e,t,i,s){this.invokeActionString(`<$fieldmangler tiddler=\\\"${e}\\\">\\n\\t\\t\\t<$action-sendmessage $message=\\\"${t}\\\" $param=\\\"${i}\\\"/>\\n\\t\\t\\t</$fieldmangler>`,this,s)}tagOperation(e,t,s,r,n,o){this.blockProviderChange=!0,n&&(this.allowInputFieldSelection=!0),this.currentProvider=this.historyProviderBuilder(t),this.currentResolver=e=>{if(0!==this.currentSelection){const i=this.getDataFromResultDiv(this.currentResults[this.currentSelection-1],\\\"name\\\");this.currentProvider=e=>{var t;this.currentSelection=0,this.hint.innerText=s,i&&(t=r(i,e),this.showResults(t.map(e=>({name:e}))))},this.input.value=\\\"\\\",this.onInput(this.input.value),this.currentResolver=t=>{if(n||0!==this.currentSelection){let e=this.input.value;0!==this.currentSelection&&(e=this.getDataFromResultDiv(this.currentResults[this.currentSelection-1],\\\"name\\\")),this.invokeFieldMangler(i,o,e,t),t.getModifierState(\\\"Shift\\\")?this.onInput(this.input.value):this.closePalette()}}}},this.input.value=\\\"\\\",this.onInput(this.input.value)}refreshThemes(e){this.themes=this.getTiddlersWithTag(this.themesTag);let t=!1;for(const s of this.themes){var i=s.fields.title;i===this.settings.theme?(t=!0,this.addTagIfNecessary(i,\\\"$:/tags/Stylesheet\\\",e)):this.invokeFieldMangler(i,\\\"tm-remove-tag\\\",\\\"$:/tags/Stylesheet\\\",e)}t||this.addTagIfNecessary(this.defaultSettings.theme,\\\"$:/tags/Stylesheet\\\",e)}addTagIfNecessary(e,t,i){this.hasTag(e,t)||this.invokeFieldMangler(e,\\\"tm-add-tag\\\",t,i)}hasTag(e,t){var i;return!(null==(i=null==(i=null==(i=$tw.wiki.getTiddler(e))?void 0:i.fields)?void 0:i.tags)||!i.includes(t))}refreshCommands(){this.actions=[],this.actions.push({name:\\\"Refresh Command Palette\\\",action:e=>{this.refreshCommandPalette(),this.promptCommand(\\\"\\\")},keepPalette:!0},{name:\\\"Explorer\\\",action:e=>{this.explorer(e)},keepPalette:!0},{name:\\\"History\\\",caption:\\\"查看历史记录\\\",action:e=>{this.showHistory()},keepPalette:!0},{name:\\\"New Command Wizard\\\",caption:\\\"交互式创建新命令\\\",action:e=>{this.newCommandWizard()},keepPalette:!0},{name:\\\"Add tag to tiddler\\\",caption:\\\"向条目添加标签\\\",action:e=>{this.tagOperation(e,\\\"选择一个条目来添加标签\\\",\\\"选择一个标签来添加 (⇧⏎ 可以多次添加)\\\",(e,t)=>$tw.wiki.filterTiddlers(`[!is[system]tags[]] [is[system]tags[]] -[[${e}]tags[]] +[${$tw.utils.pinyinfuse?\\\"pinyinfuse\\\":\\\"search\\\"}[${t}]]`),!0,\\\"tm-add-tag\\\")},keepPalette:!0},{name:\\\"Remove tag\\\",caption:\\\"去除标签\\\",action:e=>{this.tagOperation(e,\\\"选择一个条目来去除标签\\\",\\\"选择一个标签来去除 (⇧⏎ 可以去除多次)\\\",(e,t)=>$tw.wiki.filterTiddlers(`[[${e}]tags[]] +[${$tw.utils.pinyinfuse?\\\"pinyinfuse\\\":\\\"search\\\"}[${t}]]`),!1,\\\"tm-remove-tag\\\")},keepPalette:!0});var e=this.getTiddlersWithTag(this.customCommandsTag);for(const a of e){a.fields[this.typeField];var i=a.fields[this.nameField];if(\\\"string\\\"!=typeof i)throw new Error(`命令菜单条目 ${a.fields.title} 缺失 ${this.nameField} 字段`);var s=this.translateCaption(a.fields[this.captionField]),r=a.fields[this.typeField];let t=this.translateCaption(a.fields.text);const l=(null!=(n=(t=void 0===t?\\\"\\\":t).match(/^.*/))?n:[\\\"\\\"])[0],h=this.translateCaption(null!=(n=null!=(n=a.fields[this.hintField])?n:a.fields[this.nameField])?n:\\\"\\\");if(\\\"shortcut\\\"===r){var n=a.fields[this.triggerField];void 0!==n&&this.triggers.push({name:i,caption:s,trigger:n,text:t,hint:h})}else if(a.fields[this.nameField],\\\"prompt\\\"===r){var n=!!a.fields[this.immediateField];const u=null!=(o=Number(a.fields[this.caretField]))?o:0;var o={name:i,caption:s,hint:h,action:()=>{this.promptCommand(l,u)},keepPalette:!n,immediate:n};this.actions.push(o)}else if(\\\"prompt-basic\\\"===r){const d=null!=(n=Number(a.fields[this.caretField]))?n:0;o={name:i,caption:s,hint:h,action:()=>{this.promptCommandBasic(l,d,h)},keepPalette:!0};this.actions.push(o)}else if(\\\"message\\\"===r)this.actions.push({name:i,caption:s,hint:h,action:e=>{this.tmMessageBuilder(l)(e)},keepPalette:!1});else if(\\\"actionString\\\"===r)void 0!==a.fields[this.userInputField]&&\\\"true\\\"===a.fields[this.userInputField]?this.actions.push({name:i,caption:s,hint:h,action:e=>{this.actionStringInput(t,h,e)},keepPalette:!0}):this.actions.push({name:i,caption:s,hint:h,action:e=>this.actionStringBuilder(t)(e),keepPalette:!1});else if(\\\"history\\\"===r){const c=a.fields[this.modeField];this.actions.push({name:i,caption:s,hint:h,action:e=>{this.commandWithHistoryPicker(l,h,c).handler(e)},keepPalette:!0})}}}translateCaption(e){return $tw.wiki.renderText(\\\"text/plain\\\",\\\"text/vnd.tiddlywiki\\\",e)}newCommandWizard(){this.blockProviderChange=!0,this.input.value=\\\"\\\",this.hint.innerText=\\\"命令名\\\";let t=\\\"\\\",i=\\\"\\\",s=\\\"\\\";const r=()=>{this.input.value=\\\"\\\",this.hint.innerText=\\\"输入信息\\\",this.currentResolver=e=>{this.tmMessageBuilder(\\\"tm-new-tiddler\\\",{title:\\\"$:/\\\"+t,tags:this.customCommandsTag,[this.typeField]:i,[this.nameField]:t,[this.hintField]:s,text:this.input.value})(e),this.closePalette()}},n=()=>{this.input.value=\\\"\\\",this.hint.innerText=\\\"输入提示文本\\\",this.currentResolver=e=>{s=this.input.value,r()}},o=()=>{this.input.value=\\\"\\\",this.hint.innerText=\\\"Enter type (prompt, prompt-basic, message, actionString, history)\\\",this.currentResolver=e=>{\\\"history\\\"===(i=this.input.value)?n():(this.tmMessageBuilder(\\\"tm-new-tiddler\\\",{title:\\\"$:/\\\"+t,tags:this.customCommandsTag,[this.typeField]:i,[this.nameField]:t})(e),this.closePalette())}};this.currentProvider=e=>{},this.currentResolver=e=>{0!==this.input.value.length&&(t=this.input.value,o())},this.showResults([])}explorer(e){this.blockProviderChange=!0,this.input.value=\\\"$:/\\\",this.lastExplorerInput=\\\"$:/\\\",this.hint.innerText=\\\"Explorer (⇧⏎ to add multiple)\\\",this.currentProvider=e=>{this.explorerProvider(\\\"$:/\\\",e)},this.currentResolver=e=>{var t;0!==this.currentSelection&&null!=(t=this.getActionFromResultDiv(this.currentResults[this.currentSelection-1]))&&t(e)},this.onInput()}explorerProvider(t,e){const i=t=>{this.input.value=t,this.lastExplorerInput=this.input.value,this.currentProvider=e=>{this.explorerProvider(t,e)},this.onInput()};this.input.value.startsWith(t)||(this.input.value=this.lastExplorerInput),this.lastExplorerInput=this.input.value,this.currentSelection=0;var s=this.input.value.substr(t.length),r=[],n=[];for(const o of $tw.wiki.filterTiddlers(`[removeprefix[${t}]splitbefore[/]sort[]${$tw.utils.pinyinfuse?\\\"pinyinfuse\\\":\\\"search\\\"}[${s}]]`))o.endsWith(\\\"/\\\")?r.push({name:o,action:e=>{i(\\\"\\\"+t+o)}}):n.push({name:o,action:e=>{this.navigateTo(\\\"\\\"+t+o),e.getModifierState(\\\"Shift\\\")||this.closePalette()}});if(\\\"$:/\\\"!==t){s=t.split(\\\"/\\\");s.splice(-2);const a=s.join(\\\"/\\\")+\\\"/\\\";void this.showResults([{name:\\\"..\\\",action:e=>{i(a)}},...r,...n])}else this.showResults([...r,...n])}setSetting(e,t){\\\"string\\\"==typeof t&&\\\"false\\\"===(t=\\\"true\\\"===t?!0:t)&&(t=!1),this.settings[e]=t,$tw.wiki.setTiddlerData(this.settingsPath,this.settings)}refreshSettings(){this.settings=$tw.wiki.getTiddlerData(this.settingsPath,{...this.defaultSettings});for(const i in this.defaultSettings){var e;this.defaultSettings.hasOwnProperty(i)&&(e=i,void 0===this.settings[e])&&(this.settings[e]=this.defaultSettings[e])}for(const s in this.settings){var t;this.settings.hasOwnProperty(s)&&(t=s,\\\"string\\\"==typeof this.settings[t])&&(\\\"true\\\"===this.settings[t].toLowerCase()&&(this.settings[t]=!0),\\\"false\\\"===this.settings[t].toLowerCase())&&(this.settings[t]=!1)}}getTiddlersWithTag(e){return $tw.wiki.getTiddlersWithTag(e).map(e=>$tw.wiki.getTiddler(e))}render(e,t){this.parentDomNode=e,this.execute(),void 0===$tw.utils.pinyinfuse&&console.warn(\\\"需要安装 linonetwo/pinyin-fuzzy-search 插件以获得模糊搜索和拼音搜索的能力\\\"),this.history=$tw.wiki.getTiddlerData(this.commandHistoryPath,{history:[]}).history,$tw.rootWidget.addEventListener(\\\"open-command-palette\\\",e=>{$tw.hooks.invokeHook(\\\"th-open-command-palette\\\",e),this.openPalette(e,e.param)}),$tw.rootWidget.addEventListener(\\\"open-command-palette-selection\\\",e=>{this.openPaletteSelection(e)}),$tw.rootWidget.addEventListener(\\\"insert-command-palette-result\\\",e=>{this.insertSelectedResult()}),$tw.rootWidget.addEventListener(\\\"command-palette-switch-history\\\",e=>{this.handleSwitchHistory(e,!0)}),$tw.rootWidget.addEventListener(\\\"command-palette-switch-history-back\\\",e=>{this.handleSwitchHistory(e,!1)});var i=this.createElement(\\\"div\\\",{className:\\\"inputhintwrapper\\\"});this.div=this.createElement(\\\"div\\\",{className:\\\"commandpalette\\\"},{display:\\\"none\\\"}),this.mask=this.createElement(\\\"div\\\",{className:\\\"commandpalette-masklayer\\\"},{opacity:\\\"0\\\"}),this.input=this.createElement(\\\"input\\\",{type:\\\"text\\\"}),this.hint=this.createElement(\\\"div\\\",{className:\\\"commandpalettehint commandpalettehintmain\\\"}),i.append(this.input,this.hint),this.scrollDiv=this.createElement(\\\"div\\\",{className:\\\"cp-scroll\\\"}),this.div.append(i,this.scrollDiv),this.input.addEventListener(\\\"keydown\\\",e=>{this.onKeyDown(e)}),this.input.addEventListener(\\\"input\\\",()=>{this.onInput(this.input.value)}),this.input.addEventListener(\\\"compositionstart\\\",()=>{this.isIMEOpen=!0},!1),this.input.addEventListener(\\\"compositionend\\\",()=>{this.isIMEOpen=!1},!1),document.addEventListener(\\\"click\\\",e=>{this.onClick(e)}),e.insertBefore(this.mask,t),e.insertBefore(this.div,t),this.refreshCommandPalette(),this.symbolProviders[\\\">\\\"]={searcher:e=>{this.actionProvider(e)},resolver:e=>{this.actionResolver(e)}},this.symbolProviders[\\\"》\\\"]=this.symbolProviders[\\\">\\\"],this.symbolProviders[\\\"##\\\"]={searcher:e=>{this.tagListProvider(e)},resolver:e=>{this.tagListResolver(e)}},this.symbolProviders[\\\"#\\\"]={searcher:e=>{this.tagProvider(e)},resolver:e=>{this.defaultResolver(e)}},this.symbolProviders[\\\"?\\\"]={searcher:e=>{this.helpProvider(e)},resolver:e=>{this.helpResolver(e)}},this.symbolProviders[\\\"?\\\"]=this.symbolProviders[\\\"?\\\"],this.symbolProviders[\\\"[\\\"]={searcher:(e,t)=>{this.filterProvider(e,t)},resolver:e=>{this.filterResolver(e)}},this.symbolProviders[\\\"+\\\"]={searcher:e=>{this.createTiddlerProvider(e)},resolver:e=>{this.createTiddlerResolver(e)}},this.symbolProviders[\\\"|\\\"]={searcher:e=>{this.settingsProvider(e)},resolver:e=>{this.settingsResolver(e)}},this.currentResults=[],this.currentProvider=()=>{}}helpProvider(e){this.currentSelection=0,this.hint.innerText=\\\"Help\\\",this.showResults([{name:\\\"直接打字是搜索条目标题和内容;而以下述特殊字符开头可以执行特殊搜索\\\",action:()=>{this.promptCommand(\\\"\\\")}},{name:\\\"> 查看和搜索命令列表\\\",action:()=>{this.promptCommand(\\\">\\\")}},{name:\\\"+ 创建条目,先输入条目名,然后可以带上#打标签\\\",action:()=>{this.promptCommand(\\\"+\\\")}},{name:\\\"# 列出带标签的条目(标签不可包含空格,用空格隔开多个#开头的标签,不带#的作为搜索词)\\\",action:()=>{this.promptCommand(\\\"#\\\")}},{name:\\\"## 搜索标签列表\\\",action:()=>{this.promptCommand(\\\"##\\\",2)}},{name:\\\"[ 筛选器语句\\\",action:()=>{this.promptCommand(\\\"[\\\")}},{name:\\\"| 命令菜单设置\\\",action:()=>{this.promptCommand(\\\"|\\\")}},{name:\\\"\\\\\\\\ 规避第一个字符是上述命令字符的情况,例如「\\\\\\\\#」可搜标题以「#」起头的条目\\\",action:()=>{this.promptCommand(\\\"\\\\\\\\\\\")}},{name:\\\"? 打开帮助\\\",action:()=>{this.promptCommand(\\\"?\\\")}}])}parseCommand(t){let e=\\\"\\\",i,s;const r=this.triggers.find(e=>t.startsWith(e.trigger));var n;return void 0===r?(n=Object.keys(this.symbolProviders).sort((e,t)=>-e.length+t.length).find(e=>t.startsWith(e)),e=void 0===n?(i=this.defaultResolver,s=this.defaultProvider,t):(s=this.symbolProviders[n].searcher,i=this.symbolProviders[n].resolver,t.replace(n,\\\"\\\"))):(i=e=>{var t=this.input.value.substr(r.trigger.length);this.invokeActionString(r.text,this,e,{commandpaletteinput:t}),this.closePalette()},s=e=>{this.hint.innerText=r.hint,this.showResults([])}),{resolver:i,provider:s,terms:e}}refreshSearchSteps(){this.searchSteps=[];for(const e of $tw.wiki.getTiddlerData(this.searchStepsPath).steps)this.searchSteps.push(this.searchStepBuilder($tw.utils.pinyinfuse?e.filter:e.filterFallback,Number($tw.utils.pinyinfuse?e.caret:e.caretFallback),e.hint))}refreshCommandPalette(){this.refreshSettings(),this.refreshThemes(),this.refreshCommands(),this.refreshSearchSteps()}handleSwitchHistory(e,t){this.isOpened||this.openPalette(e),this.onKeyDown(new KeyboardEvent(\\\"keydown\\\",{bubbles:!1,cancelable:!0,key:t?\\\"ArrowDown\\\":\\\"ArrowUp\\\",shiftKey:!1}));const i=e=>{e.ctrlKey||(this.currentResolver(e),window.removeEventListener(\\\"keyup\\\",i))};window.addEventListener(\\\"keyup\\\",i)}updateCommandHistory(e){this.history=[...new Set([e.name,...this.history])],$tw.wiki.setTiddlerData(this.commandHistoryPath,{history:this.history})}historyProviderBuilder(i,s){return e=>{this.currentSelection=0,this.hint.innerText=i;let t;t=(t=void 0!==s&&\\\"drafts\\\"===s?$tw.wiki.filterTiddlers(\\\"[has:field[draft.of]]\\\"):void 0!==s&&\\\"story\\\"===s?$tw.wiki.filterTiddlers(\\\"[list[$:/StoryList]]\\\"):this.getHistory()).map(e=>({name:e})),this.showResults(t)}}commandWithHistoryPicker(i,e,t){const s=this.historyProviderBuilder(e,t),r=e=>{var t;0!==this.currentSelection&&(t=this.getDataFromResultDiv(this.currentResults[this.currentSelection-1],\\\"name\\\"),this.parentWidget.dispatchEvent({type:i,param:t,tiddlerTitle:t}),this.closePalette())};return{handler:e=>{this.blockProviderChange=!0,this.allowInputFieldSelection=!0,this.currentProvider=s,this.currentResolver=r,this.input.value=\\\"\\\",this.onInput(this.input.value)},provider:s,resolver:r}}onInput(e=\\\"\\\"){var t,i,s;this.blockProviderChange?this.currentProvider(e):(({resolver:t,provider:i,terms:s}=this.parseCommand(e)),this.currentResolver=t,this.currentProvider=i,this.currentProvider(s)),this.setSelectionToFirst()}onClick(e){this.isOpened&&!this.div.contains(e.target)&&this.closePalette()}openPaletteSelection(e){var t=this.getCurrentSelection();this.openPalette(e,t)}openPalette(e,t){this.currentProvider(\\\"\\\"),this.isOpened=!0,this.allowInputFieldSelection=!1,this.goBack=void 0,this.blockProviderChange=!1;var i=this.getActiveElement();this.previouslyFocused={element:i,start:i.selectionStart,end:i.selectionEnd,caretPos:i.selectionEnd},this.input.value=\\\"\\\",void 0!==t&&(this.input.value=t),this.settings.alwaysPassSelection&&(this.input.value+=this.getCurrentSelection()),this.currentSelection=0,this.onInput(this.input.value),this.div.style.display=\\\"flex\\\",this.mask.style.opacity=\\\"0.6\\\",this.input.focus()}insertSelectedResult(){var e,t,i;this.isOpened&&0!==this.currentSelection&&void 0!==(t=(e=this.previouslyFocused).element.value)&&(i=this.getDataFromResultDiv(this.currentResults[this.currentSelection-1],\\\"name\\\"))&&(e.start===e.end?this.previouslyFocused.element.value=t.substring(0,e.start)+i+t.substring(e.start):this.previouslyFocused.element.value=t.substring(0,e.start)+i+t.substring(e.end),this.previouslyFocused.caretPos=e.start+i.length,this.closePalette())}closePalette(){this.div.style.display=\\\"none\\\",this.mask.style.opacity=\\\"0\\\",this.isOpened=!1,this.focusAtCaretPosition(this.previouslyFocused.element,this.previouslyFocused.caretPos)}onKeyDown(t){switch(t.key){case\\\"Escape\\\":this.settings.escapeGoesBack&&void 0!==this.goBack?(this.goBack(),this.goBack=void 0):this.closePalette();break;case\\\"ArrowUp\\\":{t.preventDefault(),t.stopPropagation();let e=this.currentSelection-1;0===e?this.allowInputFieldSelection||(e=this.currentResults.length):e<0&&(e=this.currentResults.length),this.setSelection(e);break}case\\\"ArrowDown\\\":{t.preventDefault(),t.stopPropagation();let e=(this.currentSelection+1)%(this.currentResults.length+1);!this.allowInputFieldSelection&&0===e&&0<this.currentResults.length&&(e=1),this.setSelection(e);break}case\\\"Enter\\\":t.preventDefault(),t.stopPropagation(),this.validateSelection(t)}}addResult(e,t){var i=this.createElement(\\\"div\\\",{className:\\\"commandpaletteresult\\\"}),s=this.createElement(\\\"div\\\",{className:\\\"commandpalettetitle\\\",innerText:e.caption||e.name});i.append(s),void 0!==e.hint&&(s=this.createElement(\\\"div\\\",{className:\\\"commandpalettehint\\\",innerText:e.hint}),i.append(s)),i.dataset.result=JSON.stringify(e),null!=e.action&&i.addEventListener(\\\"abort\\\",e.action),this.currentResults.push(i),i.addEventListener(\\\"click\\\",e=>{e.stopPropagation(),e.preventDefault(),this.setSelection(t+1),this.validateSelection(e)}),i.addEventListener(\\\"contextmenu\\\",e=>{e.stopPropagation(),e.ctrlKey&&0===e.button&&(e.preventDefault(),this.setSelection(t+1),this.validateSelection(e))}),this.scrollDiv.append(i)}getDataFromResultDiv(e,t){var i;return JSON.parse(null!=(i=e.dataset.result)?i:\\\"{}\\\")[t]}getActionFromResultDiv(e){return e.onabort}validateSelection(e){this.isIMEOpen||this.currentResolver(e)}defaultResolver(e){var t;e.getModifierState(\\\"Shift\\\")?(this.input.value=\\\"+\\\"+this.input.value,this.createTiddlerResolver(e)):0!==this.currentSelection&&(t=this.getDataFromResultDiv(this.currentResults[this.currentSelection-1],\\\"name\\\"),this.closePalette(),this.navigateTo(t))}navigateTo(e){e&&this.parentWidget.dispatchEvent({type:\\\"tm-navigate\\\",param:e,navigateTo:e})}showHistory(){this.hint.innerText=\\\"历史记录\\\",this.currentProvider=t=>{let e;e=0===t.length?this.getHistory():$tw.utils.pinyinfuse?$tw.utils.pinyinfuse(this.getHistory(),t).map(e=>e.item):this.getHistory().filter(e=>e.toLowerCase().includes(t)),this.showResults(e.map(e=>({name:e,action:()=>{this.navigateTo(e),this.closePalette()}})))},this.currentResolver=e=>{var t;0!==this.currentSelection&&null!=(t=this.getActionFromResultDiv(this.currentResults[this.currentSelection-1]))&&t(e)},this.input.value=\\\"\\\",this.blockProviderChange=!0,this.onInput(this.input.value)}setSelectionToFirst(){let e=1;!this.allowInputFieldSelection&&0!==this.currentResults.length||(e=0),this.setSelection(e)}setSelection(e){var t,i,s,r,n,o;this.currentSelection=e;for(let l=0;l<this.currentResults.length;l++){var a=this.currentSelection===l+1;this.currentResults[l].className=a?\\\"commandpaletteresult commandpaletteresultselected\\\":\\\"commandpaletteresult\\\"}0===this.currentSelection?this.scrollDiv.scrollTop=0:(t=this.scrollDiv.offsetHeight,i=this.scrollDiv.scrollTop,s=Number(null!=(s=null==(s=this.currentResults[this.currentSelection-1])?void 0:s.offsetTop)?s:0),r=Number(null!=(r=null==(r=this.currentResults[this.currentSelection-1])?void 0:r.offsetHeight)?r:0),(s<i||i+t<=s)&&(o=(n=s)-t+r,n=Math.abs(s-i),o=Math.abs(o-i),this.scrollDiv.scrollTop=n<o?s:s-t+r))}getHistory(){var e=null!=(e=$tw.wiki.getTiddlerData(\\\"$:/HistoryList\\\"))?e:[],[e,t,...i]=(0,import_uniq[\\\"default\\\"])([...e.reverse().map(e=>e.title),...$tw.wiki.filterTiddlers(\\\"[list[$:/StoryList]]\\\")]).filter(e=>this.tiddlerOrShadowExists(e));return[t,e,...i]}tiddlerOrShadowExists(e){return $tw.wiki.tiddlerExists(e)||$tw.wiki.isShadowTiddler(e)}defaultProvider(i){this.hint.innerText=\\\"⏎搜索条目(⇧⏎ 创建条目)(?问号查看帮助)\\\";let e;i.startsWith(\\\"\\\\\\\\\\\")&&(i=i.substr(1)),e=0===i.length?this.settings.showHistoryOnOpen?this.getHistory().map(e=>({name:e,hint:\\\"历史记录\\\"})):[]:(0,import_uniq[\\\"default\\\"])(this.searchSteps.reduce((e,t)=>[...e,...t(i)],[])),this.showResults(e)}searchStepBuilder(i,s,r){return e=>{var t=i.substring(0,s)+e+i.substring(s);return $tw.wiki.filterTiddlers(t).map(e=>({name:e,hint:r}))}}tagListProvider(e){this.currentSelection=0,this.hint.innerText=\\\"搜索标签列表\\\";let t;t=(t=0===e.length?$tw.wiki.filterTiddlers(\\\"[!is[system]tags[]][is[system]tags[]][all[shadows]tags[]]\\\"):$tw.wiki.filterTiddlers($tw.utils.pinyinfuse?`[all[]tags[]!is[system]pinyinfuse[${e}]][all[]tags[]is[system]pinyinfuse[${e}]][all[shadows]tags[]pinyinfuse[${e}]]`:`[all[]tags[]!is[system]search[${e}]][all[]tags[]is[system]search[${e}]][all[shadows]tags[]search[${e}]]`)).map(e=>({name:e})),this.showResults(t)}tagListResolver(e){if(0===this.currentSelection)return t=this.input.value.substring(2),$tw.wiki.filterTiddlers(\\\"[tag[\\\"+t+\\\"]]\\\")?void(this.input.value=\\\"##\\\"+t):void 0;var t=this.currentResults[this.currentSelection-1];this.input.value=\\\"##\\\"+t.innerText,this.onInput(this.input.value)}tagProvider(e){this.currentSelection=0,this.hint.innerText=\\\"用「#标签 #标签2」搜索条目\\\";let t=[];if(0<e.length){var{tags:i,searchTerms:s,tagsFilter:r}=this.parseTags(this.input.value),r=$tw.wiki.filterTiddlers(r);if(0<r.length){if(1===i.length){const n=i[0];this.tiddlerOrShadowExists(n)&&s.some(e=>n.includes(e))&&t.push(n)}t=[...t,...r]}}this.showResults(t.map(e=>({name:e})))}parseTags(e){var t=[],i=[];for(const r of e.split(\\\" \\\").filter(e=>\\\"\\\"!==e))r.startsWith(\\\"#\\\")?t.push(r.substr(1)):i.push(r);let s=`[all[tiddlers+system+shadows]${t.reduce((e,t)=>e+\\\"tag[\\\"+t+\\\"]\\\",\\\"\\\")}]`;return 0<i.length&&(s=s.substring(0,s.length-1),s+=`${$tw.utils.pinyinfuse?\\\"pinyinfuse\\\":\\\"search\\\"}[${i.join(\\\" \\\")}]]`),{tags:t,searchTerms:i,tagsFilter:s}}settingsProvider(e){this.currentSelection=0,this.hint.innerText=\\\"Select the setting you want to change\\\";var t,i,s=e=>0<e.length&&null===e.match(/\\\\D/gm),r=e=>0<e.length&&null!==e.match(/(true\\\\b)|(false\\\\b)/gim);this.showResults([{name:\\\"Theme (currently \\\"+(null==(i=null==(t=this.settings.theme)?void 0:t.match)?void 0:i.call(t,/[^/]*$/)),action:()=>{this.promptForThemeSetting()}},this.settingResultBuilder(\\\"Max results\\\",\\\"maxResults\\\",\\\"Choose the maximum number of results\\\",s,\\\"Error: value must be a positive integer\\\"),this.settingResultBuilder(\\\"Show history on open\\\",\\\"showHistoryOnOpen\\\",\\\"Chose whether to show the history when you open the palette\\\",r,\\\"Error: value must be 'true' or 'false'\\\"),this.settingResultBuilder(\\\"Escape to go back\\\",\\\"escapeGoesBack\\\",\\\"Chose whether ESC should go back when possible\\\",r,\\\"Error: value must be 'true' or 'false'\\\"),this.settingResultBuilder(\\\"Use selection as search query\\\",\\\"alwaysPassSelection\\\",\\\"Chose your current selection is passed to the command palette\\\",r,\\\"Error: value must be 'true' or 'false'\\\"),this.settingResultBuilder(\\\"Never Basic\\\",\\\"neverBasic\\\",\\\"Chose whether to override basic prompts to show filter operation\\\",r,\\\"Error: value must be 'true' or 'false'\\\"),this.settingResultBuilder(\\\"Field preview max size\\\",\\\"maxResultHintSize\\\",\\\"Choose the maximum hint length for field preview\\\",s,\\\"Error: value must be a positive integer\\\")])}settingResultBuilder(e,t,i,s,r){return{name:e+\\\" (currently \\\"+this.settings[t]+\\\")\\\",action:()=>{this.promptForSetting(t,i,s,r)}}}settingsResolver(e){var t;0!==this.currentSelection&&(this.goBack=()=>{this.input.value=\\\"|\\\",this.blockProviderChange=!1,this.onInput(this.input.value)},null!=(t=this.getActionFromResultDiv(this.currentResults[this.currentSelection-1])))&&t(e)}promptForThemeSetting(){this.blockProviderChange=!0,this.allowInputFieldSelection=!1,this.currentProvider=e=>{this.currentSelection=0,this.hint.innerText=\\\"选择一个主题\\\";const t=this.defaultSettings.theme;var i=[{name:\\\"恢复默认值: \\\"+t.match(/[^/]*$/),action:()=>{this.setSetting(\\\"theme\\\",t),this.refreshThemes()}}];for(const r of this.themes){const n=r.fields.title;var s=n.match(/[^/]*$/);i.push({name:s,action:()=>{this.setSetting(\\\"theme\\\",n),this.refreshThemes()}})}this.showResults(i)},this.currentResolver=e=>{var t;null!=(t=this.getActionFromResultDiv(this.currentResults[this.currentSelection-1]))&&t(e)},this.input.value=\\\"\\\",this.onInput(this.input.value)}promptForSetting(s,r,n,o){this.blockProviderChange=!0,this.allowInputFieldSelection=!0,this.currentProvider=e=>{this.currentSelection=0,this.hint.innerText=r;const t=this.defaultSettings[s];var i=[{name:\\\"Revert to default value: \\\"+t,action:()=>{this.setSetting(s,t)}}];n(e)||i.push({name:o,action:()=>{}}),this.showResults(i)},this.currentResolver=e=>{var t;0===this.currentSelection?(t=this.input.value,n(t)&&(this.setSetting(s,t),this.goBack=void 0,this.blockProviderChange=!1,this.allowInputFieldSelection=!1,this.promptCommand(\\\"|\\\"))):null!=(t=this.getActionFromResultDiv(this.currentResults[this.currentSelection-1]))&&(t(e),this.goBack=void 0,this.blockProviderChange=!1,this.allowInputFieldSelection=!1,this.promptCommand(\\\"|\\\"))},this.input.value=this.settings[s],this.onInput(this.input.value)}showResults(e){var t;for(const s of this.currentResults)s.remove();this.currentResults=[];let i=0;for(const r of e)if(this.addResult(r,i),++i>=(null!=(t=this.settings.maxResults)?t:this.defaultSettings.maxResults))break}tmMessageBuilder(t,i={}){return e=>{this.parentWidget.dispatchEvent({type:t,paramObject:i,event:e})}}actionProvider(i){this.currentSelection=0,this.hint.innerText=\\\"查看和搜索命令列表\\\";let e;e=0===i.length?this.getCommandHistory():$tw.utils.pinyinfuse?$tw.utils.pinyinfuse(this.actions,i.toLowerCase(),[\\\"name\\\",\\\"caption\\\"]).map(e=>e.item):this.actions.filter(e=>{var t;return e.name.toLowerCase().includes(i.toLowerCase())||(null==(t=null==(t=e.caption)?void 0:t.toLowerCase())?void 0:t.includes(i.toLowerCase()))}),this.showResults(e)}filterProvider(e,t){this.currentSelection=0,this.hint.innerText=void 0===t?\\\"筛选器语句\\\":t,e=\\\"[\\\"+e;var s=$tw.wiki.filterTiddlers(\\\"[fields[]]\\\");const r=$tw.wiki.filterTiddlers(e).map(e=>({name:e}));var n=(e,t)=>r.splice(e+1,0,t);for(let l=0;l<r.length;l++){const h=r[l];let i=!1,e=\\\"Invalid Date\\\";\\\"Invalid Date\\\"!==(e=17===h.name.length?$tw.utils.parseDate(h.name).toLocaleString():e)&&(r[l].hint=e,r[l].action=()=>{},i=!0);0<$tw.wiki.getTiddlersWithTag(h.name).length&&(i&&(n(l,{...r[l]}),l+=1),r[l].action=()=>{this.promptCommand(\\\"#\\\"+h.name)},r[l].hint=\\\"Tag\\\",i=!0);var o=this.tiddlerOrShadowExists(h.name),o=(o&&(i&&(n(l,{...r[l]}),l+=1),r[l].action=()=>{this.navigateTo(h.name),this.closePalette()},r[l].hint=\\\"Tiddler\\\",i=!0),s.includes(h.name));if(o){i&&(n(l,{...r[l]}),l+=1);let e;try{e=$tw.wiki.parseFilter(this.input.value)}catch{}var a=[];for(const u of e||[])2===u.operators.length&&\\\"title\\\"===u.operators[0].operator&&\\\"fields\\\"===u.operators[1].operator&&a.push(u.operators[0].operand);let t=\\\"Field\\\";1===a.length&&(t=(t=(t=$tw.wiki.getTiddler(a[0]).fields[h.name])instanceof Date?t.toLocaleString():t).toString().replaceAll(/(\\\\r\\\\n|\\\\n|\\\\r)/gm,\\\"\\\"),o=(null!=(o=this.settings.maxResultHintSize)?o:this.defaultSettings.maxResultHintSize)-3,t.length>o)&&(t=t.substring(0,o),t+=\\\"...\\\"),r[l].hint=t,r[l].action=()=>{},i=!0}}this.showResults(r)}filterResolver(e){var t;0!==this.currentSelection&&(null!=(t=this.getActionFromResultDiv(this.currentResults[this.currentSelection-1]))&&t(e),e.stopPropagation())}helpResolver(e){var t;0!==this.currentSelection&&(null!=(t=this.getActionFromResultDiv(this.currentResults[this.currentSelection-1]))&&t(e),e.stopPropagation())}createTiddlerProvider(e){this.currentSelection=0,this.hint.innerText=\\\"创建条目,空格隔开可以用#打多个标签\\\",this.showResults([])}createTiddlerResolver(e){let{tags:t,searchTerms:i}=this.parseTags(this.input.value.substring(1));var s=i.join(\\\" \\\");t=t.join(\\\" \\\"),this.tmMessageBuilder(\\\"tm-new-tiddler\\\",{title:s,tags:t})(e),this.closePalette()}promptCommand(e,t){this.blockProviderChange=!1,this.input.value=e,this.input.focus(),void 0!==t&&this.input.setSelectionRange(t,t),this.onInput(this.input.value)}promptCommandBasic(e,t,i){!0===this.settings.neverBasic?this.promptCommand(e,t):(this.input.value=\\\"\\\",this.blockProviderChange=!0,this.currentProvider=this.basicProviderBuilder(e,t,i),this.onInput(this.input.value))}basicProviderBuilder(e,t,r){const n=e.substr(0,t),o=e.substr(t);return e=>{var{resolver:t,provider:i,terms:s}=this.parseCommand(n+e+o);i(s,r),this.currentResolver=t}}getCommandHistory(){this.history=this.history.filter(t=>this.actions.some(e=>e.name===t));const t=this.history.map(t=>this.actions.find(e=>e.name===t));for(;t.length<=(null!=(e=this.settings.maxResults)?e:this.defaultSettings.maxResults);){var e=this.actions.find(e=>!t.includes(e));if(void 0===e)break;t.push(e)}return t}actionResolver(e){var t;if(e.preventDefault(),e.stopPropagation(),0!==this.currentSelection){var i=this.actions.find(e=>e.name===this.getDataFromResultDiv(this.currentResults[this.currentSelection-1],\\\"name\\\"));if(null!=i){if(i.keepPalette){const s=this.input.value;this.goBack=()=>{this.input.value=s,this.blockProviderChange=!1,this.onInput(this.input.value)}}this.updateCommandHistory(i),null!=(t=i.action)&&t.call(i,e),i.immediate?this.validateSelection(e):i.keepPalette||this.closePalette()}}}getCurrentSelection(){var e=window.getSelection().toString();return\\\"\\\"!==e?e:void 0===(e=this.getActiveElement())||void 0===e.selectionStart?\\\"\\\":e.selectionStart>e.selectionEnd?e.value.substring(e.selectionStart,e.selectionEnd):e.value.substring(e.selectionEnd,e.selectionStart)}getActiveElement(e=document.activeElement){var t=e.shadowRoot,i=e.contentDocument;return null!=t&&t.activeElement?this.getActiveElement(t.activeElement):null!=i&&i.activeElement?this.getActiveElement(i.activeElement):e}focusAtCaretPosition(e,t){var i;if(null!==e)return e.value=e.value,e.createTextRange?((i=e.createTextRange()).move(\\\"character\\\",t),i.select(),!0):e.selectionStart||0===e.selectionStart?(e.focus(),e.setSelectionRange(t,t),!0):(e.focus(),!1)}createElement(e,t,i){var s,r,n,o,a=this.document.createElement(e);for([s,r]of Object.entries(t||{}))a[s]=r;for([n,o]of Object.entries(null!=i||{}))a.style[n]=o;return a}refresh(){return!1}};exports.commandpalettewidget=CommandPaletteWidget;\"}}}", + "stability": "STABILITY_2_STABLE", + "text": "{\"tiddlers\":{\"$:/plugins/linonetwo/commandpalette/DefaultCommandPalette\":{\"title\":\"$:/plugins/linonetwo/commandpalette/DefaultCommandPalette\",\"tags\":\"$:/tags/CommandPalette\",\"text\":\"\\\\procedure on-mask-layer-clicked() <$action-sendmessage $message=\\\"close-command-palette\\\" $param=\\\"default\\\"/>\\n\\n<% if [{$:/temp/auto-complete-search/default/opened}match[yes]] %>\\n <$eventcatcher selector=\\\".tw-default-commandpalette-mask-layer\\\" tag=\\\"div\\\" $click=<<on-mask-layer-clicked>>>\\n <div class=\\\"tw-default-commandpalette-mask-layer\\\"></div>\\n </$eventcatcher>\\n <div class=\\\"tw-command-palette-default-container\\\">\\n <$auto-complete-search\\n id=\\\"default\\\"\\n prefix={{$:/temp/auto-complete-search/default/opened!!prefix}}\\n historyMode={{$:/temp/auto-complete-search/default/opened!!historyMode}}\\n destroyWhenNotVis=\\\"yes\\\"\\n />\\n </div>\\n<% endif %>\\n\"},\"$:/plugins/linonetwo/commandpalette/Show Control Panel\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Show Control Panel\",\"caption\":\"<<lingo ShowControlPanel $:/plugins/linonetwo/commandpalette/language/>>\",\"tags\":\"$:/tags/Actions\",\"text\":\"<$action-navigate $to=\\\"$:/ControlPanel\\\"/>\"},\"$:/plugins/linonetwo/commandpalette/Unfold All Tiddlers\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Unfold All Tiddlers\",\"caption\":\"{{$:/language/Buttons/UnfoldAll/Caption}}\",\"description\":\"{{$:/language/Buttons/UnfoldAll/Hint}}\",\"tags\":\"$:/tags/Actions\",\"text\":\"<$action-sendmessage $message=\\\"tm-unfold-all-tiddlers\\\" foldedStatePrefix=\\\"$:/state/folded/\\\"/>\\n\"},\"$:/plugins/linonetwo/commandpalette/Search fields\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Search fields\",\"caption\":\"<<lingo Filter/Fields/Caption $:/plugins/linonetwo/commandpalette/language/>>\",\"description\":\"<<lingo Filter/Fields/Description $:/plugins/linonetwo/commandpalette/language/>>\",\"tags\":\"$:/tags/Filter\",\"filter\":\"[fields[]]\",\"command-palette-get-tiddler\":\"no\"},\"$:/plugins/linonetwo/commandpalette/See Languages\":{\"title\":\"$:/plugins/linonetwo/commandpalette/See Languages\",\"caption\":\"<<lingo Filter/Languages/Caption $:/plugins/linonetwo/commandpalette/language/>>\",\"description\":\"<<lingo Filter/Languages/Description $:/plugins/linonetwo/commandpalette/language/>>\",\"tags\":\"$:/tags/Filter\",\"filter\":\"[!has[draft.of]plugin-type[language]]\"},\"$:/plugins/linonetwo/commandpalette/See Plugins\":{\"title\":\"$:/plugins/linonetwo/commandpalette/See Plugins\",\"caption\":\"<<lingo Filter/Plugins/Caption $:/plugins/linonetwo/commandpalette/language/>>\",\"description\":\"<<lingo Filter/Plugins/Description $:/plugins/linonetwo/commandpalette/language/>>\",\"tags\":\"$:/tags/Filter\",\"filter\":\"[!has[draft.of]plugin-type[plugin]search[]]\"},\"$:/plugins/linonetwo/commandpalette/See Themes\":{\"title\":\"$:/plugins/linonetwo/commandpalette/See Themes\",\"caption\":\"<<lingo Filter/Themes/Caption $:/plugins/linonetwo/commandpalette/language/>>\",\"description\":\"<<lingo Filter/Themes/Description $:/plugins/linonetwo/commandpalette/language/>>\",\"tags\":\"$:/tags/Filter\",\"filter\":\"[!has[draft.of]plugin-type[theme]search[]]\"},\"$:/plugins/linonetwo/commandpalette/See all content-types\":{\"title\":\"$:/plugins/linonetwo/commandpalette/See all content-types\",\"caption\":\"<<lingo Filter/ContentType/Caption $:/plugins/linonetwo/commandpalette/language/>>\",\"description\":\"<<lingo Filter/ContentType/Description $:/plugins/linonetwo/commandpalette/language/>>\",\"tags\":\"$:/tags/Filter\",\"filter\":\"[all[tiddlers+shadows]each[type]get[type]]\"},\"$:/plugins/linonetwo/commandpalette/See untagged tiddlers\":{\"title\":\"$:/plugins/linonetwo/commandpalette/See untagged tiddlers\",\"caption\":\"<<lingo Filter/Untagged/Caption $:/plugins/linonetwo/commandpalette/language/>>\",\"description\":\"<<lingo Filter/Untagged/Description $:/plugins/linonetwo/commandpalette/language/>>\",\"tags\":\"$:/tags/Filter\",\"filter\":\"[untagged[]!is[system]search[]]\"},\"$:/plugins/linonetwo/commandpalette/Browser Refresh\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Browser Refresh\",\"tags\":\"$:/tags/Messages\",\"caption\":\"{{$:/language/Buttons/Refresh/Caption}}\",\"description\":\"{{$:/language/Buttons/Refresh/Hint}}\",\"text\":\"tm-browser-refresh\\n\"},\"$:/plugins/linonetwo/commandpalette/Cancel Tiddler\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Cancel Tiddler\",\"command-palette-filter\":\"[has:field[draft.of]]\",\"tags\":\"$:/tags/Messages\",\"caption\":\"{{$:/language/Buttons/Cancel/Caption}}\",\"description\":\"{{$:/language/Buttons/Cancel/Hint}} <<currentTiddler>>\",\"text\":\"tm-cancel-tiddler\\n\"},\"$:/plugins/linonetwo/commandpalette/Clone Tiddler\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Clone Tiddler\",\"tags\":\"$:/tags/Messages\",\"caption\":\"{{$:/language/Buttons/Clone/Caption}}\",\"description\":\"{{$:/language/Buttons/Clone/Hint}} <<currentTiddler>>\",\"text\":\"tm-new-tiddler\\n\"},\"$:/plugins/linonetwo/commandpalette/Close All Tiddlers\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Close All Tiddlers\",\"tags\":\"$:/tags/Messages\",\"caption\":\"{{$:/language/Buttons/CloseAll/Caption}}\",\"description\":\"{{$:/language/Buttons/CloseAll/Hint}}\",\"text\":\"tm-close-all-tiddlers\\n\"},\"$:/plugins/linonetwo/commandpalette/Close Tiddler\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Close Tiddler\",\"tags\":\"$:/tags/Messages\",\"caption\":\"{{$:/language/Buttons/Close/Caption}}\",\"description\":\"{{$:/language/Buttons/Close/Hint}} <<currentTiddler>>\",\"text\":\"tm-close-tiddler\\n\"},\"$:/plugins/linonetwo/commandpalette/Close other Tiddlers\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Close other Tiddlers\",\"tags\":\"$:/tags/Messages\",\"caption\":\"{{$:/language/Buttons/CloseOthers/Caption}}\",\"description\":\"{{$:/language/Buttons/CloseOthers/Hint}} <<currentTiddler>>\",\"text\":\"tm-close-other-tiddlers\\n\"},\"$:/plugins/linonetwo/commandpalette/Delete Tiddler\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Delete Tiddler\",\"tags\":\"$:/tags/Messages\",\"caption\":\"{{$:/language/Buttons/Delete/Caption}}\",\"description\":\"{{$:/language/Buttons/Delete/Hint}}\",\"text\":\"tm-delete-tiddler\\n\"},\"$:/plugins/linonetwo/commandpalette/Edit Tiddler\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Edit Tiddler\",\"tags\":\"$:/tags/Messages\",\"caption\":\"{{$:/language/Buttons/Edit/Caption}}\",\"description\":\"{{$:/language/Buttons/Edit/Hint}}\",\"text\":\"tm-edit-tiddler\\n\"},\"$:/plugins/linonetwo/commandpalette/Fold All Tiddlers\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Fold All Tiddlers\",\"tags\":\"$:/tags/Messages\",\"caption\":\"{{$:/language/Buttons/FoldAll/Caption}}\",\"description\":\"{{$:/language/Buttons/FoldAll/Hint}}\",\"text\":\"tm-fold-all-tiddlers\\n\"},\"$:/plugins/linonetwo/commandpalette/Home\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Home\",\"tags\":\"$:/tags/Messages\",\"caption\":\"{{$:/language/Buttons/Home/Caption}}\",\"description\":\"{{$:/language/Buttons/Home/Hint}}\",\"text\":\"tm-home\\n\"},\"$:/plugins/linonetwo/commandpalette/New Tiddler\":{\"title\":\"$:/plugins/linonetwo/commandpalette/New Tiddler\",\"tags\":\"$:/tags/Messages\",\"caption\":\"{{$:/language/Buttons/NewTiddler/Caption}}\",\"description\":\"{{$:/language/Buttons/NewTiddler/Hint}}\",\"text\":\"tm-new-tiddler\\n\"},\"$:/plugins/linonetwo/commandpalette/Permalink\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Permalink\",\"tags\":\"$:/tags/Messages\",\"caption\":\"{{$:/language/Buttons/Permalink/Caption}}\",\"description\":\"{{$:/language/Buttons/Permalink/Hint}}\",\"text\":\"tm-permalink\\n\"},\"$:/plugins/linonetwo/commandpalette/Permaview\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Permaview\",\"tags\":\"$:/tags/Messages\",\"caption\":\"{{$:/language/Buttons/Permaview/Caption}}\",\"description\":\"{{$:/language/Buttons/Permaview/Hint}}\",\"text\":\"tm-permaview\\n\"},\"$:/plugins/linonetwo/commandpalette/Print\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Print\",\"tags\":\"$:/tags/Messages\",\"caption\":\"{{$:/language/Buttons/Print/Caption}}\",\"description\":\"{{$:/language/Buttons/Print/Hint}}\",\"text\":\"tm-print\\n\"},\"$:/plugins/linonetwo/commandpalette/Refresh Server\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Refresh Server\",\"tags\":\"$:/tags/Messages\",\"caption\":\"{{$:/language/Buttons/Refresh/Caption}}<<lingo Server $:/plugins/linonetwo/commandpalette/language/>>\",\"description\":\"{{$:/language/Buttons/Refresh/Hint}}<<lingo Server $:/plugins/linonetwo/commandpalette/language/>>\",\"text\":\"tm-server-refresh\\n\"},\"$:/plugins/linonetwo/commandpalette/Save Tiddler\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Save Tiddler\",\"command-palette-filter\":\"[has:field[draft.of]]\",\"tags\":\"$:/tags/Messages\",\"caption\":\"{{$:/language/Buttons/Save/Caption}}\",\"description\":\"{{$:/language/Buttons/Save/Hint}}\",\"text\":\"tm-save-tiddler\\n\"},\"$:/plugins/linonetwo/commandpalette/Save Wiki\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Save Wiki\",\"tags\":\"$:/tags/Messages\",\"caption\":\"{{$:/language/Buttons/SaveWiki/Caption}}\",\"description\":\"{{$:/language/Buttons/SaveWiki/Hint}}\",\"text\":\"tm-save-wiki\\n\"},\"$:/plugins/linonetwo/commandpalette/Toggle Fullscreen\":{\"title\":\"$:/plugins/linonetwo/commandpalette/Toggle Fullscreen\",\"tags\":\"$:/tags/Messages\",\"caption\":\"{{$:/language/Buttons/FullScreen/Caption}}\",\"description\":\"{{$:/language/Buttons/FullScreen/Hint}}\",\"text\":\"tm-full-screen\\n\"},\"$:/plugins/linonetwo/commandpalette/config\":{\"title\":\"$:/plugins/linonetwo/commandpalette/config\",\"tags\":\"$:/tags/ControlPanel/SettingsTab\",\"caption\":\"<<lingo Name $:/plugins/linonetwo/commandpalette/language/>>\",\"text\":\"\\\\define lingo-base() $:/plugins/linonetwo/commandpalette/language/\\n\\n<<lingo Configs/Description>>\\n\\n---\\n\\n!! <<lingo Configs/PluginConfigs/Caption>>\\n\\n!!! <<lingo Configs/Appearance/Caption>>\\n\\n;<<lingo Configs/HideDefaultSearchBar/Caption>>\\n:<$checkbox tiddler=\\\"$:/plugins/linonetwo/commandpalette/configs/HideDefaultSearchBar\\\" field=\\\"text\\\" checked=\\\"yes\\\" unchecked=\\\"\\\"> <<lingo Configs/HideDefaultSearchBar/Description>></$checkbox>\\n;<<lingo Configs/DesktopWidth/Caption>>\\n:<$edit-text\\n tiddler=\\\"$:/plugins/linonetwo/commandpalette/configs/DesktopWidth\\\"\\n tabindex=-1\\n focus=false\\n cancelPopups=\\\"yes\\\"\\n fileDrop=no\\n tag=\\\"input\\\"\\n type=\\\"number\\\"\\n/><$select tiddler=\\\"$:/plugins/linonetwo/commandpalette/configs/DesktopWidthUnit\\\" tooltip='Desktop Width Unit'>\\n <option>%</option>\\n <option>px</option>\\n <option>em</option>\\n</$select> <<lingo Configs/DesktopWidth/Description>>\\n\\n!! <$link to=\\\"$:/plugins/linonetwo/autocomplete/config\\\"><<lingo Name $:/plugins/linonetwo/autocomplete/language/>></$link>\\n\\n{{$:/plugins/linonetwo/autocomplete/config}}\\n\"},\"$:/plugins/linonetwo/commandpalette/configs/HideDefaultSearchBar\":{\"title\":\"$:/plugins/linonetwo/commandpalette/configs/HideDefaultSearchBar\",\"text\":\"no\"},\"$:/plugins/linonetwo/commandpalette/configs/DesktopWidth\":{\"title\":\"$:/plugins/linonetwo/commandpalette/configs/DesktopWidth\",\"text\":\"80\"},\"$:/plugins/linonetwo/commandpalette/configs/DesktopWidthUnit\":{\"title\":\"$:/plugins/linonetwo/commandpalette/configs/DesktopWidthUnit\",\"text\":\"%\"},\"$:/plugins/linonetwo/commandpalette/icons/command-palette\":{\"title\":\"$:/plugins/linonetwo/commandpalette/icons/command-palette\",\"tags\":\"$:/tags/Image\",\"text\":\"\\\\parameters (size:\\\"22pt\\\")\\n<svg width=<<size>> height=<<size>> class=\\\"tc-image-button commandpalette-button\\\" viewBox=\\\"0 0 512 512\\\" style=\\\"transform: rotate(225deg);\\\">\\n <path d=\\\"M224 96l16-32 32-16-32-16-16-32-16 32-32 16 32 16 16 32zM80 160l26.66-53.33L160 80l-53.34-26.67L80 0 53.34 53.33 0 80l53.34 26.67L80 160zm0-96c8.84 0 16 7.16 16 16s-7.16 16-16 16-16-7.16-16-16 7.16-16 16-16zm352 224l-26.66 53.33L352 368l53.34 26.67L432 448l26.66-53.33L512 368l-53.34-26.67L432 288zm0 96c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16zm70.63-306.04L434.04 9.37C427.79 3.12 419.6 0 411.41 0s-16.38 3.12-22.63 9.37L9.37 388.79c-12.5 12.5-12.5 32.76 0 45.25l68.59 68.59c6.25 6.25 14.44 9.37 22.63 9.37s16.38-3.12 22.63-9.37l379.41-379.41c12.49-12.5 12.49-32.76 0-45.26zM100.59 480L32 411.41l258.38-258.4 68.6 68.6L100.59 480zm281.02-281.02l-68.6-68.6L411.38 32h.03L480 100.59l-98.39 98.39z\\\" fill-rule=\\\"evenodd\\\"/>\\n</svg>\\n\"},\"$:/plugins/linonetwo/commandpalette/language/en-GB/ShowControlPanel\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/en-GB/ShowControlPanel\",\"text\":\"Show Control Panel\"},\"$:/plugins/linonetwo/commandpalette/language/en-GB/Server\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/en-GB/Server\",\"text\":\"Server\"},\"$:/plugins/linonetwo/commandpalette/language/en-GB/Filter/Fields/Caption\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/en-GB/Filter/Fields/Caption\",\"text\":\"Field names\"},\"$:/plugins/linonetwo/commandpalette/language/en-GB/Filter/Fields/Description\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/en-GB/Filter/Fields/Description\",\"text\":\"searches for all field names of all tiddlers in the wiki.\"},\"$:/plugins/linonetwo/commandpalette/language/en-GB/Filter/ContentType/Caption\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/en-GB/Filter/ContentType/Caption\",\"text\":\"View the content type.\"},\"$:/plugins/linonetwo/commandpalette/language/en-GB/Filter/ContentType/Description\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/en-GB/Filter/ContentType/Description\",\"text\":\"lists the content types of all entries in the Wiki.\"},\"$:/plugins/linonetwo/commandpalette/language/en-GB/Filter/Languages/Caption\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/en-GB/Filter/Languages/Caption\",\"text\":\"list of languages\"},\"$:/plugins/linonetwo/commandpalette/language/en-GB/Filter/Languages/Description\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/en-GB/Filter/Languages/Description\",\"text\":\"Lists the installed languages.\"},\"$:/plugins/linonetwo/commandpalette/language/en-GB/Filter/Plugins/Caption\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/en-GB/Filter/Plugins/Caption\",\"text\":\"List of plugins.\"},\"$:/plugins/linonetwo/commandpalette/language/en-GB/Filter/Plugins/Description\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/en-GB/Filter/Plugins/Description\",\"text\":\"List of installed plugins.\"},\"$:/plugins/linonetwo/commandpalette/language/en-GB/Filter/Themes/Caption\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/en-GB/Filter/Themes/Caption\",\"text\":\"List of themes.\"},\"$:/plugins/linonetwo/commandpalette/language/en-GB/Filter/Themes/Description\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/en-GB/Filter/Themes/Description\",\"text\":\"List of installed themes.\"},\"$:/plugins/linonetwo/commandpalette/language/en-GB/Filter/Untagged/Caption\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/en-GB/Filter/Untagged/Caption\",\"text\":\"Untagged\"},\"$:/plugins/linonetwo/commandpalette/language/en-GB/Filter/Untagged/Description\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/en-GB/Filter/Untagged/Description\",\"text\":\"lists untagged entries, which can be difficult to find without tags\"},\"$:/plugins/linonetwo/commandpalette/language/en-GB/Readme\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/en-GB/Readme\",\"text\":\"\\\\define lingo-base() $:/plugins/linonetwo/commandpalette/language/\\n\\n! <<lingo Name>>\\n\\n<<lingo Description>>\\n\\n!! Dependency\\n\\nThis plugin is developed based on [[$:/plugins/linonetwo/autocomplete]] autocomplete plugin, you need to install it together (if you install it with CPL, it will automatically recognize the dependency and install it automatically, so you don't have to worry about it).\\n\\n!! Credits\\n\\nThis plugin references the design of [[Souk21/TW-commandpalette|https://github.com/Souk21/TW-commandpalette]], thanks to him for making the first version! This plugin upgrades and is written with TypeScript and [ext[algolia/autocomplete|https://github.com/algolia/autocomplete]], make it much more powerful and friendly to developers to extend its functionality.\\n\\n!! Feature\\n\\nPress ctrl/cmd + P to call up the search box, or add Shift to call up the command box (aka, command palette).\\n\"},\"$:/plugins/linonetwo/commandpalette/language/en-GB/Name\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/en-GB/Name\",\"text\":\"Command Palette\"},\"$:/plugins/linonetwo/commandpalette/language/en-GB/Description\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/en-GB/Description\",\"text\":\"Search the text of tiddlers, and execute commands in Tiddlywiki. Beautiful omni-bar and shortcut command center.\"},\"$:/plugins/linonetwo/commandpalette/language/en-GB/Configs/Description\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/en-GB/Configs/Description\",\"text\":\"These settings let you customise the behaviour of \\\"Command Palette\\\" plugin.\"},\"$:/plugins/linonetwo/commandpalette/language/en-GB/Configs/PluginConfigs/Caption\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/en-GB/Configs/PluginConfigs/Caption\",\"text\":\"Plugin Configs\"},\"$:/plugins/linonetwo/commandpalette/language/en-GB/Configs/HideDefaultSearchBar/Caption\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/en-GB/Configs/HideDefaultSearchBar/Caption\",\"text\":\"Hide default search bar\"},\"$:/plugins/linonetwo/commandpalette/language/en-GB/Configs/HideDefaultSearchBar/Description\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/en-GB/Configs/HideDefaultSearchBar/Description\",\"text\":\"If you only use commandpalette to search and don't need default search bar, check this box.\"},\"$:/plugins/linonetwo/commandpalette/language/en-GB/Configs/DesktopWidth/Caption\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/en-GB/Configs/DesktopWidth/Caption\",\"text\":\"Width on desktop mode\"},\"$:/plugins/linonetwo/commandpalette/language/en-GB/Configs/DesktopWidth/Description\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/en-GB/Configs/DesktopWidth/Description\",\"text\":\"Width of the input and result boxes on the screen (does not affect mobile, which is full screen by default)\"},\"$:/plugins/linonetwo/commandpalette/language/en-GB/Configs/Appearance/Caption\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/en-GB/Configs/Appearance/Caption\",\"text\":\"Appearance\"},\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/ShowControlPanel\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/ShowControlPanel\",\"text\":\"打开命令菜单\"},\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Server\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Server\",\"text\":\"服务器\"},\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Filter/Fields/Caption\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Filter/Fields/Caption\",\"text\":\"字段名\"},\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Filter/Fields/Description\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Filter/Fields/Description\",\"text\":\"搜索Wiki里所有条目涉及到的所有字段名\"},\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Filter/ContentType/Caption\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Filter/ContentType/Caption\",\"text\":\"查看内容类型\"},\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Filter/ContentType/Description\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Filter/ContentType/Description\",\"text\":\"列出所有Wiki里涉及到的条目的内容类型\"},\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Filter/Languages/Caption\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Filter/Languages/Caption\",\"text\":\"语言列表\"},\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Filter/Languages/Description\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Filter/Languages/Description\",\"text\":\"列出已安装的语言的列表\"},\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Filter/Plugins/Caption\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Filter/Plugins/Caption\",\"text\":\"插件列表\"},\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Filter/Plugins/Description\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Filter/Plugins/Description\",\"text\":\"列出已安装的插件的列表\"},\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Filter/Themes/Caption\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Filter/Themes/Caption\",\"text\":\"主题列表\"},\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Filter/Themes/Description\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Filter/Themes/Description\",\"text\":\"列出已安装的主题的列表\"},\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Filter/Untagged/Caption\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Filter/Untagged/Caption\",\"text\":\"未打标签\"},\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Filter/Untagged/Description\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Filter/Untagged/Description\",\"text\":\"列出未打标签的条目,无标签会让它们难以找到\"},\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Readme\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Readme\",\"text\":\"\\\\define lingo-base() $:/plugins/linonetwo/commandpalette/language/\\n\\n! <<lingo Name>>\\n\\n<<lingo Description>>\\n\\n!! 依赖\\n\\n本插件基于 [[$:/plugins/linonetwo/autocomplete]] 自动补全框插件开发,你需要一并安装它(用 CPL 安装的话,会自动识别依赖自动安装,就不用担心了)。\\n\\n!! 致谢\\n\\n该插件参考了[[Souk21/TW-commandpalette|https://github.com/Souk21/TW-commandpalette]]的设计,感谢他制作的第一版!本插件升级并采用了 TypeScript 和[ext[algolia/autocomplete|https://github.com/algolia/autocomplete]]编写,因此功能更强大,对开发人员扩展其功能也更友好。\\n\\n!! 功能\\n\\n按下 ctrl/cmd + P 唤起搜索框,按的时候如果多加一个 Shift 可以唤起功能框。\\n\\n如果你还安装了[ext[linonetwo/pinyin-fuzzy-search|https://tw-cpl.netlify.app/#linonetwo%2Fpinyin-fuzzy-search:Index%20linonetwo%2Fpinyin-fuzzy-search]]插件,那么搜索的时候可以打拼音。\\n\"},\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Name\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Name\",\"text\":\"命令菜单\"},\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Description\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Description\",\"text\":\"搜索条目文本,以及执行太微中的命令。美观大方的多合一搜索框和快捷指令中心。\"},\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Configs/Description\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Configs/Description\",\"text\":\"通过这些设置,您可以自定义「命令菜单」插件的行为。\"},\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Configs/PluginConfigs/Caption\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Configs/PluginConfigs/Caption\",\"text\":\"插件设置\"},\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Configs/HideDefaultSearchBar/Caption\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Configs/HideDefaultSearchBar/Caption\",\"text\":\"隐藏默认搜索栏\"},\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Configs/HideDefaultSearchBar/Description\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Configs/HideDefaultSearchBar/Description\",\"text\":\"如果您只使用命令菜单搜索,不需要默认搜索栏,请选中此复选框。\"},\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Configs/DesktopWidth/Caption\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Configs/DesktopWidth/Caption\",\"text\":\"桌面模式宽度\"},\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Configs/DesktopWidth/Description\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Configs/DesktopWidth/Description\",\"text\":\"输入框和结果框占屏幕的宽度(不影响移动端,移动端默认全屏)\"},\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Configs/Appearance/Caption\":{\"title\":\"$:/plugins/linonetwo/commandpalette/language/zh-Hans/Configs/Appearance/Caption\",\"text\":\"样式\"},\"$:/core/macros/lingo\":{\"title\":\"$:/core/macros/lingo\",\"tags\":\"$:/tags/Global\",\"text\":\"<!-- //TODO: remove after https://github.com/Jermolene/TiddlyWiki5/pull/7821 is merged -->\\n<!-- Note that lingo-base should end with a trailing slash character -->\\n\\\\procedure lingo-base()\\n$:/language/\\n\\\\end lingo-base\\n\\n\\\\procedure lingo(title,override-lingo-base)\\n<!-- Lingo procedure -->\\n<!-- Get the parse mode used to invoke this procedure -->\\n<$parameters $parseMode=\\\"parseMode\\\">\\n\\t<!-- Compute the lingo-base-->\\n\\t<$let active-lingo-base={{{ [<override-lingo-base>!match[]else<lingo-base>] }}}>\\n\\t\\t<!-- First try the old school <active-lingo-base><title> format -->\\n\\t\\t<$transclude $tiddler={{{ [<active-lingo-base>addsuffix<title>] }}} $mode=<<parseMode>>>\\n\\t\\t\\t<!-- If that didn't work, try the new <lingo-base><langcode>/<title> format -->\\n\\t\\t\\t<$let language-code={{{ [[$:/language]get[text]get[name]else[en-GB]] }}}>\\n <$transclude $tiddler={{{ [<active-lingo-base>addsuffix<language-code>addsuffix[/]addsuffix<title>] }}} $mode=<<parseMode>>/>\\n\\t\\t\\t</$let>\\n\\t\\t</$transclude>\\n\\t</$let>\\n</$parameters>\\n\\\\end lingo\"},\"$:/plugins/linonetwo/commandpalette/readme\":{\"title\":\"$:/plugins/linonetwo/commandpalette/readme\",\"text\":\"\\\\define lingo-base() $:/plugins/linonetwo/commandpalette/language/\\n\\n<<lingo Readme>>\\n\"},\"$:/config/ShortcutInfo/open-command-palette\":{\"title\":\"$:/config/ShortcutInfo/open-command-palette\",\"created\":\"20200531223953066\",\"modified\":\"20200531224011568\",\"tags\":\"\",\"text\":\"Open the command palette\"},\"$:/config/shortcuts-mac/open-command-palette\":{\"title\":\"$:/config/shortcuts-mac/open-command-palette\",\"text\":\"cmd-P\"},\"$:/config/shortcuts/open-command-palette\":{\"title\":\"$:/config/shortcuts/open-command-palette\",\"text\":\"ctrl-P\"},\"$:/plugins/linonetwo/commandpalette/CommandPalette\":{\"title\":\"$:/plugins/linonetwo/commandpalette/CommandPalette\",\"key\":\"((open-command-palette))\",\"tags\":\"$:/tags/KeyboardShortcut\",\"text\":\"<$action-sendmessage $message=\\\"open-command-palette\\\"/>\"},\"$:/config/ShortcutInfo/open-command-palette-command-mode\":{\"title\":\"$:/config/ShortcutInfo/open-command-palette-command-mode\",\"tags\":\"\",\"text\":\"Open the command palette in command mode\"},\"$:/config/shortcuts-mac/open-command-palette-command-mode\":{\"title\":\"$:/config/shortcuts-mac/open-command-palette-command-mode\",\"text\":\"cmd-shift-P\"},\"$:/config/shortcuts/open-command-palette-command-mode\":{\"title\":\"$:/config/shortcuts/open-command-palette-command-mode\",\"text\":\"ctrl-shift-P\"},\"$:/plugins/linonetwo/commandpalette/CommandPaletteCommandMode\":{\"title\":\"$:/plugins/linonetwo/commandpalette/CommandPaletteCommandMode\",\"key\":\"((open-command-palette-command-mode))\",\"tags\":\"$:/tags/KeyboardShortcut\",\"text\":\"<$action-sendmessage $message=\\\"open-command-palette\\\" prefix=\\\"$\\\" />\"},\"$:/config/ShortcutInfo/command-palette-switch-history\":{\"title\":\"$:/config/ShortcutInfo/command-palette-switch-history\",\"tags\":\"\",\"text\":\"Switch to previously opened tiddler\"},\"$:/config/shortcuts/command-palette-switch-history\":{\"title\":\"$:/config/shortcuts/command-palette-switch-history\",\"text\":\"ctrl-tab\"},\"$:/plugins/linonetwo/commandpalette/CommandPaletteSwitchHistory\":{\"title\":\"$:/plugins/linonetwo/commandpalette/CommandPaletteSwitchHistory\",\"key\":\"((command-palette-switch-history))\",\"tags\":\"$:/tags/KeyboardShortcut\",\"text\":\"<$action-sendmessage $message=\\\"open-command-palette\\\" historyMode=\\\"yes\\\"/>\"},\"$:/config/ShortcutInfo/command-palette-switch-history-back\":{\"title\":\"$:/config/ShortcutInfo/command-palette-switch-history-back\",\"tags\":\"\",\"text\":\"Switch to previously opened tiddler (Inversed)\"},\"$:/config/shortcuts/command-palette-switch-history-back\":{\"title\":\"$:/config/shortcuts/command-palette-switch-history-back\",\"text\":\"ctrl-shift-tab\"},\"$:/plugins/linonetwo/commandpalette/CommandPaletteSwitchHistoryBack\":{\"title\":\"$:/plugins/linonetwo/commandpalette/CommandPaletteSwitchHistoryBack\",\"key\":\"((command-palette-switch-history-back))\",\"tags\":\"$:/tags/KeyboardShortcut\",\"text\":\"<$action-sendmessage $message=\\\"open-command-palette\\\" historyMode=\\\"yes\\\"/>\"},\"$:/plugins/linonetwo/commandpalette/styles/DefaultCommandPalette.css\":{\"title\":\"$:/plugins/linonetwo/commandpalette/styles/DefaultCommandPalette.css\",\"tags\":\"$:/tags/Stylesheet\",\"text\":\"\\\\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline html\\n\\n:root {\\n --position-autocomplete-panel-top: 5em;\\n}\\n.aa-Panel {\\n /**\\n * container of command input can't be position fix, otherwise need a hack\\n * https://github.com/algolia/autocomplete/issues/1199\\n */\\n position: fixed !important;\\n top: calc(var(--position-autocomplete-panel-top) + 0.25em) !important;\\n z-index: 9999;\\n}\\n.tw-command-palette-default-container {\\n position: fixed;\\n background: <<colour page-background>>;\\n z-index: 9998;\\n top: 5em;\\n left: 50%;\\n transform: translate(-50%, 0%);\\n /** fallback to 80% of root widget */\\n width: 80%;\\n width: {{$:/plugins/linonetwo/commandpalette/configs/DesktopWidth}}{{$:/plugins/linonetwo/commandpalette/configs/DesktopWidthUnit}};\\n flex-direction: column;\\n}\\ndiv.aa-DetachedContainer div.aa-Panel {\\n /** height of .aa-DetachedFormContainer */\\n top: 65px !important;\\n width: 100%;\\n height: 100%;\\n}\\n.tw-default-commandpalette-mask-layer {\\n position: fixed;\\n z-index: 9997;\\n top: 0;\\n left: 0;\\n right: 0;\\n bottom: 0;\\n width: 100vw;\\n height: 100vh;\\n background: <<colour background>>;\\n opacity: 0.5;\\n filter: contrast(130%);\\n min-width: 200px !important;\\n transition: opacity {{$:/config/AnimationDuration}}ms;\\n backdrop-filter: blur(10px);\\n overscroll-behavior: contain;\\n overscroll-behavior: none;\\n}\\n\\ndiv.aa-SourceHeader {\\n border-bottom: 1px solid;\\n padding-bottom: 0.3em;\\n padding-top: 0.3em;\\n opacity: 0.5;\\n}\\n\"},\"$:/plugins/linonetwo/commandpalette/styles/HideVanillaSearch.css\":{\"title\":\"$:/plugins/linonetwo/commandpalette/styles/HideVanillaSearch.css\",\"tags\":\"$:/tags/Stylesheet\",\"text\":\"<$list filter=\\\"[[$:/plugins/linonetwo/commandpalette/configs/HideDefaultSearchBar]get[text]else[no]match[yes]]\\\">\\n.tc-sidebar-lists.tc-sidebar-search {\\n display: none;\\n}\\n</$list>\\n\"},\"$:/core/ui/CommandPaletteTemplate\":{\"title\":\"$:/core/ui/CommandPaletteTemplate\",\"tags\":\"$:/tags/PageTemplate\",\"text\":\"<$list filter=\\\"[all[shadows+tiddlers]tag[$:/tags/CommandPalette]!has[draft.of]]\\\">\\n<$transclude/>\\n</$list>\"},\"$:/core/ui/Buttons/CommandPalette\":{\"title\":\"$:/core/ui/Buttons/CommandPalette\",\"caption\":\"{{$:/plugins/linonetwo/commandpalette/icons/command-palette}} Command Palette\",\"description\":\"Open Command Palette\",\"tags\":\"$:/tags/PageControls\",\"text\":\"\\\\whitespace trim\\n<$button\\n class=<<tv-config-toolbar-class>>\\n message=\\\"open-command-palette\\\"\\n tooltip=\\\"Open Command Palette\\\"\\n aria-label=\\\"Command Palette\\\"\\n>\\n <% if [<tv-config-toolbar-icons>match[yes]] %>\\n {{$:/plugins/linonetwo/commandpalette/icons/command-palette}}\\n <% endif %>\\n <% if [<tv-config-toolbar-text>match[yes]] %>\\n <span class=\\\"tc-btn-text\\\">\\n <$text text=\\\"Command Palette\\\"/>\\n </span>\\n <% endif %>\\n</$button>\\n\"},\"$:/plugins/linonetwo/commandpalette/tree\":{\"title\":\"$:/plugins/linonetwo/commandpalette/tree\",\"text\":\"<<tree prefix:\\\"$:/plugins/linonetwo/commandpalette/\\\">>\"},\"$:/plugins/linonetwo/commandpalette/message-handlers/startup.js\":{\"title\":\"$:/plugins/linonetwo/commandpalette/message-handlers/startup.js\",\"type\":\"application/javascript\",\"module-type\":\"startup\",\"Modern.TiddlyDev#Origin\":\"message-handlers/startup.ts\",\"text\":\"\\\"use strict\\\";exports.name=\\\"commandpalette/message-handlers/startup\\\",exports.after=[\\\"startup\\\"],exports.synchronous=!0,exports.startup=function(){$tw.rootWidget.addEventListener(\\\"open-command-palette\\\",e=>{var t=$tw.hooks.invokeHook(\\\"th-open-command-palette\\\",e),o=t?.paramObject?.id||\\\"default\\\",a=t?.paramObject?.prefix||\\\"\\\",t=t?.paramObject?.historyMode||\\\"no\\\";return $tw.wiki.addTiddler({title:`$:/temp/auto-complete-search/${o}/opened`,text:\\\"yes\\\",prefix:a,historyMode:t}),!1}),$tw.rootWidget.addEventListener(\\\"close-command-palette\\\",e=>{var t=$tw.hooks.invokeHook(\\\"th-close-command-palette\\\",e)?.param||\\\"default\\\";return $tw.wiki.deleteTiddler(`$:/temp/auto-complete-search/${t}/opened`),!1})};\"}}}", "title": "$:/plugins/linonetwo/commandpalette", "type": "application/json", - "version": "0.4.0", - "Modern.TiddlyDev#SHA256-Hashed": "c147a62824f60d242116ad97eda168b626a86a3136ba1bdd9044cd19e2fbd2fe", - "name": "Command Palette" + "version": "2.0.0", + "Modern.TiddlyDev#SHA256-Hashed": "712bcb0d6d4cc96a78cd868c5ebba44f05e6f232dea5c3c2281b6f10aa7f693f", + "name": "Command Palette 命令菜单" } ] \ No newline at end of file diff --git a/tiddlers/TCTSystem/plugins/linonetwo/itonnote.json b/tiddlers/TCTSystem/plugins/linonetwo/itonnote.json index 1767b23e..9f85664e 100644 --- a/tiddlers/TCTSystem/plugins/linonetwo/itonnote.json +++ b/tiddlers/TCTSystem/plugins/linonetwo/itonnote.json @@ -1,16 +1,16 @@ [ { "author": "LinOnetwo", - "core-version": ">=5.1.22", - "dependents": "$:/plugins/tiddlywiki/browser-sniff", + "core-version": ">=5.3.0", + "dependents": "$:/plugins/tiddlywiki/browser-sniff $:/plugins/kookma/toc", "description": "Heavy lifting for new users to set up a powerful and opinionated knowledge management system.", - "list": "readme description ControlPanel", + "list": "readme ControlPanel tree", "name": "ItonNote", "plugin-type": "plugin", - "text": "{\"tiddlers\":{\"$:/config/DefaultSidebarTab\":{\"title\":\"$:/config/DefaultSidebarTab\",\"creator\":\"LinOnetwo\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"$:/plugins/linonetwo/itonnote/Sidebar/FolderMenu\"},\"$:/config/DownloadSaver/AutoSave\":{\"title\":\"$:/config/DownloadSaver/AutoSave\",\"created\":\"20190601103555586\",\"creator\":\"Lin Onetwo\",\"modified\":\"20200410072837906\",\"modifier\":\"Lin Onetwo\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"no\"},\"$:/config/MissingLinks\":{\"title\":\"$:/config/MissingLinks\",\"created\":\"20190419034301891\",\"modified\":\"20200409033736457\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"yes\"},\"$:/config/Navigation/UpdateAddressBar\":{\"title\":\"$:/config/Navigation/UpdateAddressBar\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"permaview\"},\"$:/config/Navigation/UpdateHistory\":{\"title\":\"$:/config/Navigation/UpdateHistory\",\"created\":\"20190419034422400\",\"modified\":\"20200409033736411\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"yes\"},\"$:/config/Navigation/openLinkFromInsideRiver\":{\"title\":\"$:/config/Navigation/openLinkFromInsideRiver\",\"created\":\"20200409033736445\",\"modified\":\"20200409033736445\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"above\"},\"$:/config/Navigation/openLinkFromOutsideRiver\":{\"title\":\"$:/config/Navigation/openLinkFromOutsideRiver\",\"created\":\"20200409033736433\",\"modified\":\"20200409033736433\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"top\"},\"$:/config/Plugins/Disabled/$:/plugins/sycom/g-analytics\":{\"title\":\"$:/config/Plugins/Disabled/$:/plugins/sycom/g-analytics\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"no\"},\"$:/config/Plugins/Disabled/$:/plugins/tiddlywiki/codemirror-mode-x-tiddlywiki\":{\"title\":\"$:/config/Plugins/Disabled/$:/plugins/tiddlywiki/codemirror-mode-x-tiddlywiki\",\"created\":\"20200411033813183\",\"modified\":\"20200411033814242\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"yes\"},\"$:/config/Plugins/Disabled/$:/plugins/tiddlywiki/codemirror\":{\"title\":\"$:/config/Plugins/Disabled/$:/plugins/tiddlywiki/codemirror\",\"created\":\"20200530042942722\",\"modified\":\"20200530043337009\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"no\"},\"$:/config/Plugins/Disabled/$:/plugins/tiddlywiki/highlight\":{\"title\":\"$:/config/Plugins/Disabled/$:/plugins/tiddlywiki/highlight\",\"created\":\"20190419154112345\",\"modified\":\"20200409033736342\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"no\"},\"$:/config/RelinkOnRename\":{\"title\":\"$:/config/RelinkOnRename\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"yes\"},\"$:/config/Search/MinLength\":{\"title\":\"$:/config/Search/MinLength\",\"created\":\"20190419153747812\",\"modified\":\"20200409033736319\",\"tags\":\"\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"1\"},\"$:/config/Toolbar/ButtonClass\":{\"title\":\"$:/config/Toolbar/ButtonClass\",\"created\":\"20190419034516378\",\"modified\":\"20200409033736308\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"tc-btn-invisible\"},\"$:/config/WikiParserRules/Inline/wikilink\":{\"title\":\"$:/config/WikiParserRules/Inline/wikilink\",\"created\":\"20190419034308697\",\"modified\":\"20200409033736296\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"disable\"},\"$:/config/codemirror/autoCloseTags\":{\"title\":\"$:/config/codemirror/autoCloseTags\",\"text\":\"true\",\"type\":\"bool\",\"created\":\"20211017131109932\",\"creator\":\"林一二\",\"modified\":\"20211017131109937\",\"modifier\":\"林一二\"},\"$:/config/codemirror/indentWithTabs\":{\"title\":\"$:/config/codemirror/indentWithTabs\",\"text\":\"false\",\"type\":\"bool\",\"created\":\"20210622180509486\",\"creator\":\"TiddlyGit User\",\"modified\":\"20210622180509499\",\"modifier\":\"TiddlyGit User\"},\"$:/config/codemirror/keyMap\":{\"title\":\"$:/config/codemirror/keyMap\",\"text\":\"sublime\\n\",\"type\":\"string\",\"created\":\"20211017131058335\",\"creator\":\"林一二\",\"modified\":\"20211017131058343\",\"modifier\":\"林一二\"},\"$:/config/codemirror/styleActiveLine\":{\"title\":\"$:/config/codemirror/styleActiveLine\",\"text\":\"true\",\"type\":\"bool\",\"created\":\"20230523081008543\",\"creator\":\"WhiteFall\",\"modified\":\"20230523081008543\",\"modifier\":\"WhiteFall\"},\"$:/config/markdown/renderWikiTextPragma\":{\"title\":\"$:/config/markdown/renderWikiTextPragma\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"\\\\rules only html image macrocallinline syslink transcludeinline wikilink prettylink filteredtranscludeblock macrocallblock transcludeblock \"},\"$:/config/section-editor/config-editor-type\":{\"title\":\"$:/config/section-editor/config-editor-type\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"main-editor\"},\"$:/config/section-editor/config-visibility-toolbar\":{\"title\":\"$:/config/section-editor/config-visibility-toolbar\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"yes\"},\"$:/config/section-editor/hlevel\":{\"title\":\"$:/config/section-editor/hlevel\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"5\"},\"$:/config/section-editor/reader-mode\":{\"title\":\"$:/config/section-editor/reader-mode\",\"type\":\"text/vnd.tiddlywiki\"},\"$:/config/shortcuts/cancel-edit-tiddler\":{\"title\":\"$:/config/shortcuts/cancel-edit-tiddler\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"shift-Escape\"},\"$:/config/themes/itonnote/sidebar-search\":{\"title\":\"$:/config/themes/itonnote/sidebar-search\",\"created\":\"20231010115608460\",\"creator\":\"马不前\",\"modified\":\"20231010115608460\",\"modifier\":\"马不前\",\"text\":\"show\"},\"$:/language\":{\"title\":\"$:/language\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"$:/languages/zh-Hans\"},\"$:/themes/tiddlywiki/vanilla/options/sidebarlayout\":{\"title\":\"$:/themes/tiddlywiki/vanilla/options/sidebarlayout\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"fluid-fixed\"},\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/editor-height\":{\"title\":\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/editor-height\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"hide\"},\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/heading-4\":{\"title\":\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/heading-4\",\"created\":\"20231010115437154\",\"modified\":\"20231010115437154\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"hide\"},\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/linkify\":{\"title\":\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/linkify\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"hide\"},\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/mono-block\":{\"title\":\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/mono-block\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"hide\"},\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/mono-line\":{\"title\":\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/mono-line\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"hide\"},\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/preview-type\":{\"title\":\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/preview-type\",\"created\":\"20231010115427906\",\"modified\":\"20231010115427906\",\"text\":\"hide\"},\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/preview\":{\"title\":\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/preview\",\"created\":\"20231010115425849\",\"modified\":\"20231010115429153\",\"text\":\"show\"},\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/rotate-left\":{\"title\":\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/rotate-left\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"show\"},\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/size\":{\"title\":\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/size\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"show\"},\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/subscript\":{\"title\":\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/subscript\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"hide\"},\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/transcludify\":{\"title\":\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/transcludify\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"hide\"},\"$:/config/EditorToolbarButtons/Visibility/$:/plugins/stobot/sticky/EditorToolbarButton\":{\"title\":\"$:/config/EditorToolbarButtons/Visibility/$:/plugins/stobot/sticky/EditorToolbarButton\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"hide\"},\"$:/config/EditorToolbarButtons/Visibility/$:/plugins/tiddlywiki/markdown/EditorToolbar/mono-line\":{\"title\":\"$:/config/EditorToolbarButtons/Visibility/$:/plugins/tiddlywiki/markdown/EditorToolbar/mono-line\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"hide\"},\"$:/config/TextEditor/EditorHeight/Mode\":{\"title\":\"$:/config/TextEditor/EditorHeight/Mode\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"auto\"},\"$:/core/ui/EditorToolbar/linkify\":{\"title\":\"$:/core/ui/EditorToolbar/linkify\",\"caption\":\"{{$:/language/Buttons/Linkify/Caption}}\",\"condition\":\"[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]\",\"description\":\"{{$:/language/Buttons/Linkify/Hint}}\",\"icon\":\"$:/core/images/linkify\",\"shortcuts\":\"((linkify))\",\"tags\":\"$:/tags/EditorToolbar\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"<$action-sendmessage\\n\\t$message=\\\"tm-edit-text-operation\\\"\\n\\t$param=\\\"wrap-selection\\\"\\n\\tprefix=\\\"[[\\\"\\n\\tsuffix=\\\"]]\\\"\\n/>\\n\"},\"$:/core/ui/EditorToolbar/transcludify\":{\"title\":\"$:/core/ui/EditorToolbar/transcludify\",\"caption\":\"{{$:/language/Buttons/Transcludify/Caption}}\",\"condition\":\"[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]\",\"description\":\"{{$:/language/Buttons/Transcludify/Hint}}\",\"icon\":\"$:/core/images/transcludify\",\"shortcuts\":\"((transcludify))\",\"tags\":\"$:/tags/EditorToolbar\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"<$action-sendmessage\\n\\t$message=\\\"tm-edit-text-operation\\\"\\n\\t$param=\\\"wrap-selection\\\"\\n\\tprefix=\\\"{{\\\"\\n\\tsuffix=\\\"}}\\\"\\n/>\\n\"},\"$:/plugins/linonetwo/itonnote/Configs/SideBarFolderMenuBaseTitle\":{\"title\":\"$:/plugins/linonetwo/itonnote/Configs/SideBarFolderMenuBaseTitle\",\"creator\":\"LinOnetwo\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"Index\"},\"$:/config/DefaultMoreSidebarTab\":{\"title\":\"$:/config/DefaultMoreSidebarTab\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"$:/core/ui/MoreSideBar/Orphans\"},\"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/CommandPalette\":{\"title\":\"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/CommandPalette\",\"created\":\"20231010115031451\",\"modified\":\"20231010115031451\",\"text\":\"hide\"},\"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/advanced-search\":{\"title\":\"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/advanced-search\",\"created\":\"20200602124339340\",\"modified\":\"20200602124339360\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"show\"},\"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/control-panel\":{\"title\":\"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/control-panel\",\"created\":\"20200410174523174\",\"modified\":\"20200410175230294\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"show\"},\"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/encryption\":{\"title\":\"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/encryption\",\"created\":\"20200410174620924\",\"modified\":\"20200410174809069\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"hide\"},\"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/home\":{\"title\":\"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/home\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"show\"},\"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/more-page-actions\":{\"title\":\"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/more-page-actions\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"show\"},\"$:/config/PageControlButtons/Visibility/$:/plugins/kookma/commander/buttons/pagecontrol\":{\"title\":\"$:/config/PageControlButtons/Visibility/$:/plugins/kookma/commander/buttons/pagecontrol\",\"created\":\"20200410174517268\",\"modified\":\"20200410174518337\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"show\"},\"$:/config/PageControlButtons/Visibility/$:/plugins/kookma/solution/buttons/pagecontrol\":{\"title\":\"$:/config/PageControlButtons/Visibility/$:/plugins/kookma/solution/buttons/pagecontrol\",\"created\":\"20231010115501994\",\"modified\":\"20231010115506130\",\"text\":\"show\"},\"$:/config/PageControlButtons/Visibility/$:/plugins/kookma/utility/ui/Buttons/ViewFields\":{\"title\":\"$:/config/PageControlButtons/Visibility/$:/plugins/kookma/utility/ui/Buttons/ViewFields\",\"created\":\"20231010114951098\",\"modified\":\"20231010114951098\",\"text\":\"hide\"},\"$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/export-tiddler\":{\"title\":\"$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/export-tiddler\",\"created\":\"20200410064657446\",\"modified\":\"20200410064708140\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"hide\"},\"$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/new-here\":{\"title\":\"$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/new-here\",\"created\":\"20200409065701335\",\"modified\":\"20200409065702475\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"show\"},\"$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/new-journal-here\":{\"title\":\"$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/new-journal-here\",\"created\":\"20200410064650269\",\"modified\":\"20231010115006123\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"hide\"},\"$:/config/ViewToolbarButtons/Visibility/$:/plugins/bimlas/locator/viewtemplate/open-in-sidebar\":{\"title\":\"$:/config/ViewToolbarButtons/Visibility/$:/plugins/bimlas/locator/viewtemplate/open-in-sidebar\",\"created\":\"20231010115004755\",\"modified\":\"20231010115004755\",\"text\":\"hide\"},\"$:/config/ViewToolbarButtons/Visibility/$:/plugins/linonetwo/open-in-external-app/ViewToolbarButton\":{\"title\":\"$:/config/ViewToolbarButtons/Visibility/$:/plugins/linonetwo/open-in-external-app/ViewToolbarButton\",\"created\":\"20231010115002411\",\"modified\":\"20231010115002411\",\"text\":\"hide\"},\"$:/config/ViewToolbarButtons/Visibility/$:/plugins/linonetwo/zx-script/ViewToolbarButton\":{\"title\":\"$:/config/ViewToolbarButtons/Visibility/$:/plugins/linonetwo/zx-script/ViewToolbarButton\",\"created\":\"20231010115001562\",\"modified\":\"20231010115001562\",\"text\":\"hide\"},\"$:/config/ViewToolbarButtons/Visibility/$:/plugins/tiddlywiki/qrcode/ViewToolbarButton\":{\"title\":\"$:/config/ViewToolbarButtons/Visibility/$:/plugins/tiddlywiki/qrcode/ViewToolbarButton\",\"created\":\"20231010114959435\",\"modified\":\"20231010114959435\",\"text\":\"hide\"},\"$:/config/ViewToolbarButtons/Visibility/$:/plugins/tiddlywiki/text-slicer/ui/slice-toolbar-button\":{\"title\":\"$:/config/ViewToolbarButtons/Visibility/$:/plugins/tiddlywiki/text-slicer/ui/slice-toolbar-button\",\"created\":\"20200411035036487\",\"modified\":\"20200411035037540\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"hide\"},\"$:/palette\":{\"title\":\"$:/palette\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"$:/palettes/Notion\"},\"$:/tags/PageControls\":{\"title\":\"$:/tags/PageControls\",\"list\":\"$:/plugins/linonetwo/omni-search-bar/ui/Buttons/search $:/core/ui/Buttons/home $:/core/ui/Buttons/close-all $:/core/ui/Buttons/fold-all $:/core/ui/Buttons/unfold-all $:/core/ui/Buttons/permaview $:/core/ui/Buttons/more-page-actions $:/core/ui/Buttons/new-tiddler $:/plugins/tiddlywiki/markdown/new-markdown-button $:/plugins/kookma/solution/buttons/pagecontrol $:/core/ui/Buttons/new-journal $:/core/ui/Buttons/new-image $:/core/ui/Buttons/import $:/core/ui/Buttons/export-page $:/core/ui/Buttons/control-panel $:/core/ui/Buttons/advanced-search $:/plugins/kookma/commander/buttons/pagecontrol $:/core/ui/Buttons/manager $:/core/ui/Buttons/tag-manager $:/core/ui/Buttons/language $:/core/ui/Buttons/palette $:/core/ui/Buttons/theme $:/core/ui/Buttons/storyview $:/core/ui/Buttons/encryption $:/core/ui/Buttons/timestamp $:/core/ui/Buttons/full-screen $:/core/ui/Buttons/print $:/core/ui/Buttons/refresh $:/plugins/kookma/utility/pagecontrol/view-fields-button $:/core/ui/Buttons/save-wiki $:/plugins/linonetwo/source-control-management/PageControlButton\",\"type\":\"text/vnd.tiddlywiki\"},\"$:/theme\":{\"title\":\"$:/theme\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"$:/themes/linonetwo/itonnote\"},\"$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint\":{\"title\":\"$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"960px\"},\"$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth\":{\"title\":\"$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"380px\"},\"$:/themes/tiddlywiki/vanilla/metrics/storywidth\":{\"title\":\"$:/themes/tiddlywiki/vanilla/metrics/storywidth\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"770px\"},\"$:/themes/tiddlywiki/vanilla/options/stickytitles\":{\"title\":\"$:/themes/tiddlywiki/vanilla/options/stickytitles\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"yes\"},\"$:/themes/tiddlywiki/vanilla/settings/codefontfamily\":{\"title\":\"$:/themes/tiddlywiki/vanilla/settings/codefontfamily\",\"created\":\"20190420032819437\",\"modified\":\"20200409033737050\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"'Fira Code',\\\"SFMono-Regular\\\",Consolas,\\\"Liberation Mono\\\",Menlo,Courier,monospace\"},\"$:/themes/tiddlywiki/vanilla/settings/editorfontfamily\":{\"title\":\"$:/themes/tiddlywiki/vanilla/settings/editorfontfamily\",\"created\":\"20190421072924643\",\"modified\":\"20200409033737038\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"'Fira Code',\\\"SFMono-Regular\\\",Consolas,\\\"Liberation Mono\\\",Menlo,Courier,monospace\"},\"$:/themes/tiddlywiki/vanilla/settings/fontfamily\":{\"title\":\"$:/themes/tiddlywiki/vanilla/settings/fontfamily\",\"created\":\"20190420034215366\",\"modified\":\"20200409033737026\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"'Fira Code',-apple-system, BlinkMacSystemFont, \\\"Segoe UI\\\", Helvetica, Arial, sans-serif, \\\"Apple Color Emoji\\\", \\\"Segoe UI Emoji\\\", \\\"Segoe UI Symbol\\\"\"},\"$:/plugins/linonetwo/itonnote/settings/PageControlBelowPage\":{\"title\":\"$:/plugins/linonetwo/itonnote/settings/PageControlBelowPage\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"yes\"},\"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/contents\":{\"title\":\"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/contents\",\"created\":\"20200415162108079\",\"modified\":\"20200602041547212\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"hide\"},\"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/hamburger\":{\"title\":\"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/hamburger\",\"created\":\"20200415162126215\",\"modified\":\"20200415162128295\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"show\"},\"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/pagecontrols\":{\"title\":\"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/pagecontrols\",\"created\":\"20200415162131716\",\"modified\":\"20200415162330718\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"show\"},\"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/sidebar\":{\"title\":\"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/sidebar\",\"created\":\"20200415162109418\",\"modified\":\"20200415162109442\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"show\"},\"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/topleftbar\":{\"title\":\"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/topleftbar\",\"created\":\"20200415162101755\",\"modified\":\"20200602041539750\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"hide\"},\"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/toprightbar\":{\"title\":\"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/toprightbar\",\"created\":\"20200415162118824\",\"modified\":\"20200415163710486\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"show\"},\"$:/config/shortcuts-mac/bold\":{\"title\":\"$:/config/shortcuts-mac/bold\",\"created\":\"20200602011151844\",\"modified\":\"20200602011151860\",\"type\":\"text/vnd.tiddlywiki\"},\"$:/config/shortcuts-mac/italic\":{\"title\":\"$:/config/shortcuts-mac/italic\",\"created\":\"20200602011428084\",\"modified\":\"20200602011428114\",\"type\":\"text/vnd.tiddlywiki\"},\"$:/config/shortcuts-mac/new-image\":{\"title\":\"$:/config/shortcuts-mac/new-image\",\"created\":\"20200602011526855\",\"modified\":\"20200602011526866\",\"type\":\"text/vnd.tiddlywiki\"},\"$:/config/shortcuts-mac/new-journal\":{\"title\":\"$:/config/shortcuts-mac/new-journal\",\"created\":\"20200602011519033\",\"modified\":\"20200602011519055\",\"type\":\"text/vnd.tiddlywiki\"},\"$:/config/shortcuts-mac/toggle-sidebar\":{\"title\":\"$:/config/shortcuts-mac/toggle-sidebar\",\"created\":\"20200602011322158\",\"modified\":\"20200602011322171\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"cmd-B\"},\"$:/config/shortcuts-not-mac/bold\":{\"title\":\"$:/config/shortcuts-not-mac/bold\",\"created\":\"20200602011156768\",\"modified\":\"20200602011156779\",\"type\":\"text/vnd.tiddlywiki\"},\"$:/config/shortcuts-not-mac/new-image\":{\"title\":\"$:/config/shortcuts-not-mac/new-image\",\"created\":\"20200602011529909\",\"modified\":\"20200602011529924\",\"type\":\"text/vnd.tiddlywiki\"},\"$:/config/shortcuts-not-mac/new-journal\":{\"title\":\"$:/config/shortcuts-not-mac/new-journal\",\"created\":\"20200602011521325\",\"modified\":\"20200602011521342\",\"type\":\"text/vnd.tiddlywiki\"},\"$:/config/shortcuts/bold\":{\"title\":\"$:/config/shortcuts/bold\",\"created\":\"20200602011200184\",\"modified\":\"20200602011200195\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"ctrl-B\"},\"$:/config/shortcuts/toggle-sidebar\":{\"title\":\"$:/config/shortcuts/toggle-sidebar\",\"created\":\"20200602011309990\",\"modified\":\"20200602011310003\",\"type\":\"text/vnd.tiddlywiki\"},\"$:/plugins/linonetwo/itonnote/ControlPanel/Settings\":{\"title\":\"$:/plugins/linonetwo/itonnote/ControlPanel/Settings\",\"caption\":\"ItonNote\",\"tags\":\"$:/tags/ControlPanel/SettingsTab\",\"text\":\"These settings let you customise the behaviour of ItonNote plugin.\\n\\n---\\n\\n!! Appearance\\n\\n;Show page control buttons below page on mobile:\\n:<$checkbox tiddler=\\\"$:/plugins/linonetwo/itonnote/settings/PageControlBelowPage\\\" field=\\\"text\\\" checked=\\\"yes\\\" unchecked=\\\"no\\\"> On mobile sidebar is folded, so adding page control to bottom will be convenient shortcut.</$checkbox>\"},\"$:/plugins/linonetwo/itonnote/ControlPanel\":{\"title\":\"$:/plugins/linonetwo/itonnote/ControlPanel\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"!! 设置 Settings\\n\\n!!! 作为文件目录中根文件夹的笔记的标题 \\nTitle of the notes as the root folder in the file tree\\n\\n以这个标题作为标签的其它笔记相当于放入了根文件夹中:\\n\\nOther notes with this title as a tag are equivalent to being placed in the root folder:\\n\\n虚拟根文件夹:\\n<$edit-text\\n\\ttiddler=\\\"$:/plugins/linonetwo/itonnote/Configs/SideBarFolderMenuBaseTitle\\\"\\n\\ttag=\\\"input\\\"\\n\\tdefault=\\\"Index\\\"\\n\\tplaceholder=\\\"\\\" />\\n\"},\"导出文件 Export File\":{\"title\":\"导出文件 Export File\",\"description\":\"导出文件 Export File\",\"extension\":\"\",\"tags\":\"$:/tags/Exporter\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"\\\\define renderContent()\\n{{{ $(exportFilter)$ ||$:/core/templates/plain-text-tiddler}}}\\n\\\\end\\n<<renderContent>>\"},\"$:/plugins/linonetwo/itonnote/Help/FolderMenu-zh-CN\":{\"title\":\"$:/plugins/linonetwo/itonnote/Help/FolderMenu-zh-CN\",\"tags\":\"$:/plugins/linonetwo/itonnote/Help/Index\",\"text\":\"侧边栏的「目录结构」标签页里展示了[[通过标签系统自动生成|$:/plugins/linonetwo/itonnote/Help/VirtualFolder-zh_CN]]的文件夹。\\n\\n第一个目录树根据`当前所在的条目`展示,是动态的;第二个目录树从`Index(根文件夹)`条目出发,是静态的。因Echart动态显示上下文的图没有这种树的形式好看且干扰注意力。所以暂用目录树的形式显示上下文。\\n\\n若想修改根文件夹,请打开[[设置|$:/plugins/linonetwo/itonnote/ControlPanel]]。\\n\\n* 打了 A 标签,即相当于将文件存储在文件夹 A 中,并以 A 的内容作为文件夹的 Readme\\n* 在任意条目中使用「创建一个标签为此条目名称的新条目」按钮,可以创建以当前条目为文件夹的文件\\n* 点击 {{$:/core/images/folder}} 按钮(使它变成 {{$:/core/images/fold-button}})可以展开文件夹\\n* 直接点击文件夹的名字可以查看这个文件夹的 Readme\\n\"},\"$:/plugins/linonetwo/itonnote/Help/Index\":{\"title\":\"$:/plugins/linonetwo/itonnote/Help/Index\",\"text\":\"<$list filter=\\\"[[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]]\\\" variable=\\\"lang\\\">\\n\\n\\t<$list filter=\\\"[<lang>search[zh]]\\\">\\n\\t\\t<$list filter=\\\"[tag<currentTiddler>suffix[zh-CN]]\\\">\\n\\t\\t\\t<section class=\\\"main-page-section\\\">\\n\\n\\t\\t\\t\\t!! <<currentTiddler>>\\n\\t\\t\\t\\t{{!!text}}\\n\\n\\t\\t\\t</section>\\n\\t\\t</$list>\\n\\t</$list>\\n\\n\\t<$list filter=\\\"[<lang>!search[zh]]\\\">\\n\\t\\t<$list filter=\\\"[tag<currentTiddler>suffix[en-GB]]\\\">\\n\\t\\t\\t<section class=\\\"main-page-section\\\">\\n\\n\\t\\t\\t\\t!! <<currentTiddler>>\\n\\t\\t\\t\\t{{!!text}}\\n\\n\\t\\t\\t</section>\\n\\t\\t</$list>\\n\\t</$list>\\n\\n</$list>\"},\"$:/plugins/linonetwo/itonnote/Help/VirtualFolder-en-GB\":{\"title\":\"$:/plugins/linonetwo/itonnote/Help/VirtualFolder-en-GB\",\"tags\":\"$:/plugins/linonetwo/itonnote/Help/Index\",\"text\":\"!!! Tag\\n\\nThe Tag structure can be thought of as a folder directory structure with soft links to form a graphical structure, since Tag relationships are inherently free, and two notes can be tagged to each other and parented to each other in the folder structure.\\n\\nUsing toc macro, you can create a \\\"file directory\\\" tab in the sidebar, which shows the folder structure generated by the tag. The details are written in [[Official Table-of-Contents Macros doc|https://tiddlywiki.com/#Table-of-Contents%20Macros:%5B%5BTable-of-Contents%20Macros%5D%5D%20%5B%5BTable-of-Contents%20Macros%20(Examples)%5D%5D]], and the plugin should have it pre-populated in [[$:/plugins/linonetwo/itonnote/Sidebar/FolderMenu]], which can be used immediately or modified to override it.\\n\\nThen you can set the \\\"File Directory\\\" tab to be displayed by default in `$:/ControlPanel` -> \\\"Settings\\\" -> \\\"Default Sidebar Tab\\\", so that you can use TiddlyWiki as a folder system. And the plugin should already be pre-configured for this.\\n\\n!!! Slash\\n\\nTiddlyWiki comes with a way to create folders by using slashes in the header.\\n\\nThe various folders that come with the system can be seen via the sidebar under \\\"More\\\" -> \\\"Explore\\\".\\n\\nIf you use the NodeJS version of TiddlyWiki, these tiddlers will also be placed in the corresponding folders on the real file system.\\n\"},\"$:/plugins/linonetwo/itonnote/Help/VirtualFolder-zh_CN\":{\"title\":\"$:/plugins/linonetwo/itonnote/Help/VirtualFolder-zh_CN\",\"tags\":\"$:/plugins/linonetwo/itonnote/Help/Index\",\"text\":\"!!! 标签\\n\\n标签结构可以看作是一种文件夹目录结构,通过软链接形成图论结构,因为标签关系本身是自由的,两个笔记可以相互加对方为标签,并在文件夹结构中互为父级,形成任意自由的结构。\\n\\n使用官方的 toc 宏,你可以在侧边栏创建一个「文件目录」标签,显示标签生成的文件夹结构。详细内容写在 [[官方文档的 Table-of-Contents 一文里|https://tw-cn-doc.cpolar.top/#Table-of-Contents%20Macros:%5B%5BTable-of-Contents%20Macros%5D%5D%20%5B%5BTable-of-Contents%20Macros%20(Examples)%5D%5D]] 中,插件应在 [[$:/plugins/linonetwo/itonnote/Sidebar/FolderMenu]] 中预置了,可以立即使用,你也可以修改覆盖。\\n\\n然后,您可以在 `$:/ControlPanel` ->「Settings」 ->「Default Sidebar Tab」中设置默认显示「文件目录」选项卡,这样您就可以将 TiddlyWiki 用作文件夹系统。插件应该已经为此进行了预配置。\\n\\n!!! 斜杠\\n\\nTiddlyWiki 提供了一种在标题里使用斜杠创建文件夹的方法。\\n\\n你可以通过侧边栏的「更多」->「探索」查看系统自带的各种文件夹。\\n\\n如果你使用的是 NodeJS 版本的 TiddlyWiki,这些 tiddlers 也会被放置在真实文件系统的相应文件夹中。\\n\\n!!! 使用哪种?\\n\\n这是个见仁见智的问题,请[[参考中文教程学习|https://tw-cn.netlify.app/#%E4%BD%BF%E7%94%A8%E6%A0%87%E7%AD%BE%E5%BD%93%E6%96%87%E4%BB%B6%E5%A4%B9:%E4%BD%BF%E7%94%A8%E6%A0%87%E7%AD%BE%E5%BD%93%E6%96%87%E4%BB%B6%E5%A4%B9%20%E6%AC%A2%E8%BF%8E%E6%9D%A5%E5%88%B0%E5%A4%AA%E5%BE%AE%EF%BC%81]],也可以加群讨论!\\n\"},\"$:/plugins/linonetwo/itonnote/Macros/OpenImageInGithub\":{\"title\":\"$:/plugins/linonetwo/itonnote/Macros/OpenImageInGithub\",\"created\":\"20200412034056887\",\"tags\":\"$:/tags/Macro\",\"caption\":\"点击在新标签页打开Github大图\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"\\\\define view-big-image(source)\\n<a href=\\\"https://raw.githubusercontent.com/linonetwo/wiki/master/Meme-of-LinOnetwo/tiddlers/$source$\\\" title=\\\"Click for a bigger version (opens in a separate tab)\\\" target=\\\"_blank\\\">\\n <img src=\\\"https://raw.githubusercontent.com/linonetwo/wiki/master/Meme-of-LinOnetwo/tiddlers/$source$\\\"/>\\n</a>\\n\\\\end\"},\"$:/plugins/linonetwo/itonnote/Macros/TransclusionWithEditMe\":{\"title\":\"$:/plugins/linonetwo/itonnote/Macros/TransclusionWithEditMe\",\"tags\":\"$:/tags/Macro 自改TW\",\"caption\":\"带有「编辑此块」的引用transclusion宏\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"\\\\define reuse-pane(content)\\n<style>\\n.reuse-pane {\\n\\tposition: absolute;\\n\\tright: 10px;\\n\\twidth: auto;\\n\\tmax-width: 4px;\\n\\theight: 1.5em;\\n\\toverflow: hidden;\\n\\tborder: 10px solid transparent;\\n\\tborder-top: 0;\\n\\tbox-sizing: content-box;\\n\\ttransition: max-width 0.5s;\\n}\\n.reuse-pane:hover {\\n max-width: 80vw;\\n}\\n.reuse-pane-content {\\n\\tdisplay: inline-block;\\n\\tbackground-color: rgba(233, 233, 233, 0.9);\\n\\tborder-left: 4px solid rgba(0, 0, 0, 0.05);\\n\\tpadding: 0px 5px;\\n\\tpadding-bottom: 2px;\\n}\\n</style>\\n<div class=\\\"reuse-pane\\\">\\n <small class=\\\"reuse-pane-content\\\">$content$</small>\\n</div>\\n\\\\end\\n\\n\\\\define reuse-tiddler(title)\\n<$macrocall $name=\\\"reuse-pane\\\" content=\\\"\\\"\\\"\\n查看引文:[[$title$]]\\n\\\"\\\"\\\" />\\n\\n{{$title$}}\\n\\n\\\\end\"},\"$:/config/OfficialPluginLibrary\":{\"title\":\"$:/config/OfficialPluginLibrary\",\"tags\":\"$:/tags/PluginLibrary\",\"caption\":\"{{$:/language/OfficialPluginLibrary}}\",\"enabled\":\"no\",\"text\":\"\\\\procedure load-plugin-library-button()\\n\\\\whitespace trim\\n<$list filter=\\\"[[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]]\\\" variable=\\\"lang\\\">\\n<$list filter=\\\"[<lang>search[zh]]\\\">\\n\\n为了更好的体验,我们建议您\\n<$button>\\n打开 CPL 安装插件\\n<$action-sendmessage $message=\\\"tm-close-tiddler\\\" />\\n<$action-sendmessage $message=\\\"tm-navigate\\\" navigateTo=\\\"$:/plugins/Gk0Wk/CPL-Repo/panel\\\" />\\n</$button>\\n\\n</$list>\\n\\n<$list filter=\\\"[<lang>!search[zh]]\\\">\\n\\nFor a better experience, we recommend you\\n<$button>\\nOpen CPL to install plugins\\n<$action-sendmessage $message=\\\"tm-close-tiddler\\\" />\\n<$action-sendmessage $message=\\\"tm-navigate\\\" navigateTo=\\\"$:/plugins/Gk0Wk/CPL-Repo/panel\\\" />\\n</$button>\\n\\n</$list></$list>\\n\\\\end\\n\\n<<load-plugin-library-button>>\\n\"},\"$:/core/ui/ControlPanel/Settings\":{\"title\":\"$:/core/ui/ControlPanel/Settings\",\"tags\":\"$:/tags/ControlPanel\",\"caption\":\"{{$:/language/ControlPanel/Settings/Caption}}\",\"text\":\"<div class=\\\"tc-control-panel\\\">\\n<$macrocall $name=\\\"tabs\\\" tabsList=\\\"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/SettingsTab]!has[draft.of]]\\\" default=\\\"$:/core/ui/ControlPanel/Settings/TiddlyWiki\\\" explicitState=\\\"$:/state/tab--697582678\\\"/>\\n</div>\\n\"},\"$:/core/ui/ControlPanel/Settings/TiddlyWiki\":{\"title\":\"$:/core/ui/ControlPanel/Settings/TiddlyWiki\",\"tags\":\"$:/tags/ControlPanel/SettingsTab\",\"caption\":\"TiddlyWiki\",\"text\":\"\\\\define lingo-base() $:/language/ControlPanel/Settings/\\n\\n<<lingo Hint>>\\n\\n<$list filter=\\\"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Settings]]\\\">\\n\\n<div style=\\\"border-top:1px solid #eee;\\\">\\n\\n!! <$link><$transclude field=\\\"caption\\\"/></$link>\\n\\n<$transclude/>\\n\\n</div>\\n\\n</$list>\\n\"},\"$:/plugins/linonetwo/itonnote/Sidebar/FolderMenu\":{\"title\":\"$:/plugins/linonetwo/itonnote/Sidebar/FolderMenu\",\"caption\":\"文件目录\",\"creator\":\"LinOnetwo\",\"description\":\"文件夹系统目录结构\",\"is-dropdown\":\"yes\",\"tags\":\"$:/tags/SideBar $:/tags/MenuBar\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"<$scrollable fallthrough=\\\"none\\\" class=\\\"tc-popup-keep tc-menubar-dropdown-sidebar\\\">\\n\\n\\t<$let toc-open-icon=\\\"$:/core/images/fold-button\\\" toc-closed-icon=\\\"$:/core/images/folder\\\">\\n\\t\\t<div class=\\\"tc-table-of-contents\\\">\\n\\t\\t\\t<$transclude $variable=\\\"toc-selective-expandable\\\" tag={{$:/plugins/linonetwo/itonnote/Configs/SideBarFolderMenuBaseTitle}} />\\n\\t\\t</div>\\n\\t</$let>\\n\\n <$list filter=\\\"[[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]]\\\" variable=\\\"lang\\\">\\n\\n <$list filter=\\\"[<lang>search[zh]]\\\">\\n [[使用帮助|$:/plugins/linonetwo/itonnote/Help/Index]]\\n </$list>\\n\\n <$list filter=\\\"[<lang>!search[zh]]\\\">\\n [[Help|$:/plugins/linonetwo/itonnote/Help/Index]]\\n </$list>\\n\\n </$list>\\n\\n</$scrollable>\\n\"},\"$:/plugins/linonetwo/itonnote/Snippets/OpenImageInGithub\":{\"title\":\"$:/plugins/linonetwo/itonnote/Snippets/OpenImageInGithub\",\"caption\":\"图片:点击在新标签页打开大图\",\"tags\":\"$:/plugins/linonetwo/itonnote/Macros/OpenImageInGithub $:/tags/TextEditor/Snippet\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"<<view-big-image xxx.jpg>>\"},\"$:/plugins/linonetwo/itonnote/Snippets/TOCAboutCurrentTiddler\":{\"title\":\"$:/plugins/linonetwo/itonnote/Snippets/TOCAboutCurrentTiddler\",\"caption\":\"添加一个使用当前标题的 toc\",\"tags\":\"[[$:/plugins/linonetwo/itonnote/Help/Index]] $:/tags/TextEditor/Snippet\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"\\n<$let toc-open-icon=\\\"$:/core/images/fold-button\\\" toc-closed-icon=\\\"$:/core/images/folder\\\">\\n <div class=\\\"tc-table-of-contents\\\">\\n <$transclude $variable=\\\"toc-selective-expandable\\\" tag=<<currentTiddler>> />\\n </div>\\n</$let>\"},\"$:/plugins/linonetwo/itonnote/Snippets/TransclusionWithEditMe\":{\"title\":\"$:/plugins/linonetwo/itonnote/Snippets/TransclusionWithEditMe\",\"caption\":\"带「编辑此块」的引用Transclusion\",\"tags\":\"$:/plugins/linonetwo/itonnote/Macros/TransclusionWithEditMe $:/tags/TextEditor/Snippet\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"<<reuse-tiddler \\\"title\\\">>\"},\"$:/plugins/linonetwo/itonnote/UI/PageControlBelowPage\":{\"title\":\"$:/plugins/linonetwo/itonnote/UI/PageControlBelowPage\",\"tags\":\"$:/tags/AboveStory\",\"text\":\"<!-- Though visually it is on the bottom of the page, but we have to use AboveStory to make sure it is overlay on the story. -->\\n<$list filter=\\\"[[$:/plugins/linonetwo/itonnote/settings/PageControlBelowPage]get[text]else[no]match[yes]]\\\">\\n <nav class=\\\"page-control-below-page\\\">\\n {{$:/core/ui/PageTemplate/pagecontrols}}\\n </nav>\\n</$list>\"},\"$:/plugins/linonetwo/itonnote/UI/style.css\":{\"title\":\"$:/plugins/linonetwo/itonnote/UI/style.css\",\"tags\":\"$:/tags/Stylesheet\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"<$importvariables filter=\\\"[[$:/themes/tiddlywiki/vanilla/base]]\\\">\\n\\n.page-control-below-page {\\n display: none;\\n\\n padding: 10px;\\n background-color: white;\\n -webkit-backdrop-filter: blur(10px);\\n\\n position: fixed;\\n bottom: 0;\\n left: 0;\\n z-index: 200;\\n width: 100%;\\n}\\n.page-control-below-page .tc-page-controls {\\n margin: 0;\\n\\n display: flex;\\n flex-direction: row;\\n align-items: center;\\n justify-content: space-evenly;\\n}\\n\\n@media (max-width: <<sidebarbreakpoint>>) {\\n .page-control-below-page {\\n display: block;\\n }\\n}\\n\"},\"$:/plugins/linonetwo/itonnote/description\":{\"title\":\"$:/plugins/linonetwo/itonnote/description\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"!!! macros\\n\\n!!!! TransclusionWithEditMe\\n\\n[[$:/plugins/linonetwo/itonnote/Macros/TransclusionWithEditMe]] Usage:\\n\\n使用普通的 [[Transclusion|https://tiddlywiki.com/#Transclusion]] 时,你没法得知源文件在哪里,如果想要修改内容,还得打开编辑模式、复制被引用的 Tiddler 的标题,然后搜索打开编辑,比较麻烦。\\n\\n使用此宏进行引用就很方便了:\\n\\n```tid\\n<<reuse-tiddler \\\"快速创建新笔记按钮\\\">>\\n```\\n\\n会直接在引用的区块旁边显示一个「查看引文」的小浮窗,带有指向源文件的链接,直接点开编辑即可。\\n\\n!!!! OpenImageInGithub\\n\\n[[$:/plugins/linonetwo/itonnote/Macros/OpenImageInGithub]] Usage:\\n\\nIf you have `webcatalog-tiddlywiki-menu-app.jpg` in your Wiki, you normally can just `{{webcatalog-tiddlywiki-menu-app.jpg}}` to place it in your tiddler, but you can use this macro to make it clickable, and open large image in the new browser tab:\\n\\n```tid\\n<<view-big-image webcatalog-tiddlywiki-menu-app.jpg>>\\n```\\n\\n!!! snippets(文本片段)\\n\\n在编辑模式下,有一个图章按钮,点击后会列出一系列文本片段,可以一键添加预制内容,因而无需用脑记住这些复杂的文本片段了。\\n\\n本插件预置了一些文本片段,详见相应的 Macros 的介绍,或相应的插件的介绍:\\n\\n* [[$:/plugins/linonetwo/itonnote/Snippets/TOCAboutCurrentTiddler]]\\n* [[$:/plugins/linonetwo/itonnote/Snippets/OpenImageInGithub]]\\n* [[$:/plugins/linonetwo/itonnote/Snippets/TransclusionWithEditMe]]\\n\"},\"$:/plugins/linonetwo/itonnote/readme\":{\"title\":\"$:/plugins/linonetwo/itonnote/readme\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"!! 功能\\n\\n预配置了一系列琐碎的内容,一般来自各插件的Readme和论坛讨论,但大多数人懒得看Readme,故在此直接帮忙配置好了。\\n\\n具体预置内容介绍可见[[Description|$:/plugins/linonetwo/itonnote/description]]。\\n\\n{{$:/plugins/linonetwo/itonnote/ControlPanel}}\\n\"},\"$:/plugins/linonetwo/itonnote/Startup/closeSidebarOnMobile.js\":{\"module-type\":\"startup\",\"title\":\"$:/plugins/linonetwo/itonnote/Startup/closeSidebarOnMobile.js\",\"type\":\"application/javascript\",\"creator\":\"NicolasPetton\",\"Modern.TiddlyDev#Origin\":\"Startup/closeSidebarOnMobile.ts\",\"text\":\"\\\"use strict\\\";exports.name=\\\"close-sidebar-on-mobile\\\",exports.platforms=[\\\"browser\\\"],exports.after=[\\\"rootwidget\\\"];var isOnMobile=()=>\\\"yes\\\"===$tw.wiki.getTiddlerText(\\\"$:/info/browser/is/mobile\\\")||\\\"yes\\\"===$tw.wiki.getTiddlerText(\\\"$:/info/tidgi-mobile\\\"),closeSidebar=()=>{$tw.wiki.addTiddler({title:\\\"$:/state/sidebar\\\",text:\\\"no\\\"}),$tw.wiki.addTiddler({title:\\\"$:/state/notebook-sidebar\\\",text:\\\"no\\\"})},closeSidebarOnMobile=e=>(isOnMobile()&&closeSidebar(),e),setup=()=>{$tw.hooks.addHook(\\\"th-opening-default-tiddlers-list\\\",closeSidebarOnMobile),$tw.hooks.addHook(\\\"th-importing-file\\\",closeSidebarOnMobile),$tw.hooks.addHook(\\\"th-navigating\\\",closeSidebarOnMobile),$tw.hooks.addHook(\\\"th-new-tiddler\\\",closeSidebarOnMobile),$tw.hooks.addHook(\\\"th-open-command-palette\\\",closeSidebarOnMobile),closeSidebarOnMobile()};exports.startup=setup;\"}}}", + "text": "{\"tiddlers\":{\"$:/config/DefaultSidebarTab\":{\"title\":\"$:/config/DefaultSidebarTab\",\"creator\":\"LinOnetwo\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"$:/plugins/linonetwo/itonnote/Sidebar/FolderMenu\"},\"$:/config/DownloadSaver/AutoSave\":{\"title\":\"$:/config/DownloadSaver/AutoSave\",\"created\":\"20190601103555586\",\"creator\":\"Lin Onetwo\",\"modified\":\"20200410072837906\",\"modifier\":\"Lin Onetwo\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"no\"},\"$:/config/MissingLinks\":{\"title\":\"$:/config/MissingLinks\",\"created\":\"20190419034301891\",\"modified\":\"20200409033736457\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"yes\"},\"$:/config/Navigation/UpdateAddressBar\":{\"title\":\"$:/config/Navigation/UpdateAddressBar\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"permaview\"},\"$:/config/Navigation/UpdateHistory\":{\"title\":\"$:/config/Navigation/UpdateHistory\",\"created\":\"20190419034422400\",\"modified\":\"20200409033736411\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"yes\"},\"$:/config/Navigation/openLinkFromInsideRiver\":{\"title\":\"$:/config/Navigation/openLinkFromInsideRiver\",\"created\":\"20200409033736445\",\"modified\":\"20200409033736445\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"above\"},\"$:/config/Navigation/openLinkFromOutsideRiver\":{\"title\":\"$:/config/Navigation/openLinkFromOutsideRiver\",\"created\":\"20200409033736433\",\"modified\":\"20200409033736433\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"top\"},\"$:/config/Plugins/Disabled/$:/plugins/sycom/g-analytics\":{\"title\":\"$:/config/Plugins/Disabled/$:/plugins/sycom/g-analytics\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"no\"},\"$:/config/Plugins/Disabled/$:/plugins/tiddlywiki/codemirror-mode-x-tiddlywiki\":{\"title\":\"$:/config/Plugins/Disabled/$:/plugins/tiddlywiki/codemirror-mode-x-tiddlywiki\",\"created\":\"20200411033813183\",\"modified\":\"20200411033814242\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"yes\"},\"$:/config/Plugins/Disabled/$:/plugins/tiddlywiki/codemirror\":{\"title\":\"$:/config/Plugins/Disabled/$:/plugins/tiddlywiki/codemirror\",\"created\":\"20200530042942722\",\"modified\":\"20200530043337009\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"no\"},\"$:/config/Plugins/Disabled/$:/plugins/tiddlywiki/highlight\":{\"title\":\"$:/config/Plugins/Disabled/$:/plugins/tiddlywiki/highlight\",\"created\":\"20190419154112345\",\"modified\":\"20200409033736342\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"no\"},\"$:/config/RelinkOnRename\":{\"title\":\"$:/config/RelinkOnRename\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"yes\"},\"$:/config/Search/MinLength\":{\"title\":\"$:/config/Search/MinLength\",\"created\":\"20190419153747812\",\"modified\":\"20200409033736319\",\"tags\":\"\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"1\"},\"$:/config/Toolbar/ButtonClass\":{\"title\":\"$:/config/Toolbar/ButtonClass\",\"created\":\"20190419034516378\",\"modified\":\"20200409033736308\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"tc-btn-invisible\"},\"$:/config/WikiParserRules/Inline/wikilink\":{\"title\":\"$:/config/WikiParserRules/Inline/wikilink\",\"created\":\"20190419034308697\",\"modified\":\"20200409033736296\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"disable\"},\"$:/config/codemirror/autoCloseTags\":{\"title\":\"$:/config/codemirror/autoCloseTags\",\"text\":\"true\",\"type\":\"bool\",\"created\":\"20211017131109932\",\"creator\":\"林一二\",\"modified\":\"20211017131109937\",\"modifier\":\"林一二\"},\"$:/config/codemirror/indentWithTabs\":{\"title\":\"$:/config/codemirror/indentWithTabs\",\"text\":\"false\",\"type\":\"bool\",\"created\":\"20210622180509486\",\"creator\":\"TiddlyGit User\",\"modified\":\"20210622180509499\",\"modifier\":\"TiddlyGit User\"},\"$:/config/codemirror/keyMap\":{\"title\":\"$:/config/codemirror/keyMap\",\"text\":\"sublime\\n\",\"type\":\"string\",\"created\":\"20211017131058335\",\"creator\":\"林一二\",\"modified\":\"20211017131058343\",\"modifier\":\"林一二\"},\"$:/config/codemirror/styleActiveLine\":{\"title\":\"$:/config/codemirror/styleActiveLine\",\"text\":\"true\",\"type\":\"bool\",\"created\":\"20230523081008543\",\"creator\":\"WhiteFall\",\"modified\":\"20230523081008543\",\"modifier\":\"WhiteFall\"},\"$:/config/markdown/renderWikiTextPragma\":{\"title\":\"$:/config/markdown/renderWikiTextPragma\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"\\\\rules only html image macrocallinline syslink transcludeinline wikilink prettylink filteredtranscludeblock macrocallblock transcludeblock \"},\"$:/config/section-editor/config-editor-type\":{\"title\":\"$:/config/section-editor/config-editor-type\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"main-editor\"},\"$:/config/section-editor/config-visibility-toolbar\":{\"title\":\"$:/config/section-editor/config-visibility-toolbar\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"yes\"},\"$:/config/section-editor/hlevel\":{\"title\":\"$:/config/section-editor/hlevel\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"5\"},\"$:/config/section-editor/reader-mode\":{\"title\":\"$:/config/section-editor/reader-mode\",\"type\":\"text/vnd.tiddlywiki\"},\"$:/config/shortcuts/cancel-edit-tiddler\":{\"title\":\"$:/config/shortcuts/cancel-edit-tiddler\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"shift-Escape\"},\"$:/config/themes/itonnote/sidebar-search\":{\"title\":\"$:/config/themes/itonnote/sidebar-search\",\"created\":\"20231010115608460\",\"creator\":\"马不前\",\"modified\":\"20231010115608460\",\"modifier\":\"马不前\",\"text\":\"show\"},\"$:/language\":{\"title\":\"$:/language\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"$:/languages/zh-Hans\"},\"$:/themes/tiddlywiki/vanilla/options/sidebarlayout\":{\"title\":\"$:/themes/tiddlywiki/vanilla/options/sidebarlayout\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"fluid-fixed\"},\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/editor-height\":{\"title\":\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/editor-height\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"hide\"},\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/heading-4\":{\"title\":\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/heading-4\",\"created\":\"20231010115437154\",\"modified\":\"20231010115437154\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"hide\"},\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/linkify\":{\"title\":\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/linkify\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"hide\"},\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/mono-block\":{\"title\":\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/mono-block\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"hide\"},\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/mono-line\":{\"title\":\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/mono-line\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"hide\"},\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/preview-type\":{\"title\":\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/preview-type\",\"created\":\"20231010115427906\",\"modified\":\"20231010115427906\",\"text\":\"hide\"},\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/preview\":{\"title\":\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/preview\",\"created\":\"20231010115425849\",\"modified\":\"20231010115429153\",\"text\":\"show\"},\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/rotate-left\":{\"title\":\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/rotate-left\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"show\"},\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/size\":{\"title\":\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/size\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"show\"},\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/subscript\":{\"title\":\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/subscript\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"hide\"},\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/transcludify\":{\"title\":\"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/transcludify\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"hide\"},\"$:/config/EditorToolbarButtons/Visibility/$:/plugins/stobot/sticky/EditorToolbarButton\":{\"title\":\"$:/config/EditorToolbarButtons/Visibility/$:/plugins/stobot/sticky/EditorToolbarButton\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"hide\"},\"$:/config/EditorToolbarButtons/Visibility/$:/plugins/tiddlywiki/markdown/EditorToolbar/mono-line\":{\"title\":\"$:/config/EditorToolbarButtons/Visibility/$:/plugins/tiddlywiki/markdown/EditorToolbar/mono-line\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"hide\"},\"$:/config/TextEditor/EditorHeight/Mode\":{\"title\":\"$:/config/TextEditor/EditorHeight/Mode\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"auto\"},\"$:/core/ui/EditorToolbar/linkify\":{\"title\":\"$:/core/ui/EditorToolbar/linkify\",\"caption\":\"{{$:/language/Buttons/Linkify/Caption}}\",\"condition\":\"[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]\",\"description\":\"{{$:/language/Buttons/Linkify/Hint}}\",\"icon\":\"$:/core/images/linkify\",\"shortcuts\":\"((linkify))\",\"tags\":\"$:/tags/EditorToolbar\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"<$action-sendmessage\\n\\t$message=\\\"tm-edit-text-operation\\\"\\n\\t$param=\\\"wrap-selection\\\"\\n\\tprefix=\\\"[[\\\"\\n\\tsuffix=\\\"]]\\\"\\n/>\\n\"},\"$:/core/ui/EditorToolbar/transcludify\":{\"title\":\"$:/core/ui/EditorToolbar/transcludify\",\"caption\":\"{{$:/language/Buttons/Transcludify/Caption}}\",\"condition\":\"[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]\",\"description\":\"{{$:/language/Buttons/Transcludify/Hint}}\",\"icon\":\"$:/core/images/transcludify\",\"shortcuts\":\"((transcludify))\",\"tags\":\"$:/tags/EditorToolbar\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"<$action-sendmessage\\n\\t$message=\\\"tm-edit-text-operation\\\"\\n\\t$param=\\\"wrap-selection\\\"\\n\\tprefix=\\\"{{\\\"\\n\\tsuffix=\\\"}}\\\"\\n/>\\n\"},\"$:/config/DefaultMoreSidebarTab\":{\"title\":\"$:/config/DefaultMoreSidebarTab\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"$:/core/ui/MoreSideBar/Orphans\"},\"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/CommandPalette\":{\"title\":\"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/CommandPalette\",\"created\":\"20231010115031451\",\"modified\":\"20240327124515344\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"show\"},\"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/advanced-search\":{\"title\":\"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/advanced-search\",\"created\":\"20200602124339340\",\"modified\":\"20200602124339360\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"show\"},\"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/control-panel\":{\"title\":\"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/control-panel\",\"created\":\"20200410174523174\",\"modified\":\"20200410175230294\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"show\"},\"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/encryption\":{\"title\":\"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/encryption\",\"created\":\"20200410174620924\",\"modified\":\"20200410174809069\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"hide\"},\"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/home\":{\"title\":\"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/home\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"show\"},\"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/layout\":{\"title\":\"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/layout\",\"created\":\"20240327124514607\",\"modified\":\"20240327124514607\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"show\"},\"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/more-page-actions\":{\"title\":\"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/more-page-actions\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"show\"},\"$:/config/PageControlButtons/Visibility/$:/plugins/kookma/commander/buttons/pagecontrol\":{\"title\":\"$:/config/PageControlButtons/Visibility/$:/plugins/kookma/commander/buttons/pagecontrol\",\"created\":\"20200410174517268\",\"modified\":\"20240327124436927\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"hide\"},\"$:/config/PageControlButtons/Visibility/$:/plugins/kookma/solution/buttons/pagecontrol\":{\"title\":\"$:/config/PageControlButtons/Visibility/$:/plugins/kookma/solution/buttons/pagecontrol\",\"created\":\"20231010115501994\",\"modified\":\"20240327124500077\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"hide\"},\"$:/config/PageControlButtons/Visibility/$:/plugins/kookma/utility/ui/Buttons/ViewFields\":{\"title\":\"$:/config/PageControlButtons/Visibility/$:/plugins/kookma/utility/ui/Buttons/ViewFields\",\"created\":\"20231010114951098\",\"modified\":\"20231010114951098\",\"text\":\"hide\"},\"$:/config/PageControlButtons/Visibility/$:/plugins/linonetwo/tw-calendar/tiddlywiki-ui/GoToEventsCalendarLayoutButton\":{\"title\":\"$:/config/PageControlButtons/Visibility/$:/plugins/linonetwo/tw-calendar/tiddlywiki-ui/GoToEventsCalendarLayoutButton\",\"created\":\"20240327124452936\",\"modified\":\"20240327124452936\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"hide\"},\"$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/export-tiddler\":{\"title\":\"$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/export-tiddler\",\"created\":\"20200410064657446\",\"modified\":\"20200410064708140\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"hide\"},\"$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/new-here\":{\"title\":\"$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/new-here\",\"created\":\"20200409065701335\",\"modified\":\"20200409065702475\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"show\"},\"$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/new-journal-here\":{\"title\":\"$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/new-journal-here\",\"created\":\"20200410064650269\",\"modified\":\"20231010115006123\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"hide\"},\"$:/config/ViewToolbarButtons/Visibility/$:/plugins/bimlas/locator/viewtemplate/open-in-sidebar\":{\"title\":\"$:/config/ViewToolbarButtons/Visibility/$:/plugins/bimlas/locator/viewtemplate/open-in-sidebar\",\"created\":\"20231010115004755\",\"modified\":\"20231010115004755\",\"text\":\"hide\"},\"$:/config/ViewToolbarButtons/Visibility/$:/plugins/linonetwo/open-in-external-app/ViewToolbarButton\":{\"title\":\"$:/config/ViewToolbarButtons/Visibility/$:/plugins/linonetwo/open-in-external-app/ViewToolbarButton\",\"created\":\"20231010115002411\",\"modified\":\"20231010115002411\",\"text\":\"hide\"},\"$:/config/ViewToolbarButtons/Visibility/$:/plugins/linonetwo/zx-script/ViewToolbarButton\":{\"title\":\"$:/config/ViewToolbarButtons/Visibility/$:/plugins/linonetwo/zx-script/ViewToolbarButton\",\"created\":\"20231010115001562\",\"modified\":\"20231010115001562\",\"text\":\"hide\"},\"$:/config/ViewToolbarButtons/Visibility/$:/plugins/tiddlywiki/qrcode/ViewToolbarButton\":{\"title\":\"$:/config/ViewToolbarButtons/Visibility/$:/plugins/tiddlywiki/qrcode/ViewToolbarButton\",\"created\":\"20231010114959435\",\"modified\":\"20231010114959435\",\"text\":\"hide\"},\"$:/config/ViewToolbarButtons/Visibility/$:/plugins/tiddlywiki/text-slicer/ui/slice-toolbar-button\":{\"title\":\"$:/config/ViewToolbarButtons/Visibility/$:/plugins/tiddlywiki/text-slicer/ui/slice-toolbar-button\",\"created\":\"20200411035036487\",\"modified\":\"20200411035037540\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"hide\"},\"$:/palette\":{\"title\":\"$:/palette\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"$:/palettes/Notion\"},\"$:/tags/PageControls\":{\"title\":\"$:/tags/PageControls\",\"list\":\"$:/plugins/linonetwo/omni-search-bar/ui/Buttons/search $:/core/ui/Buttons/home $:/core/ui/Buttons/close-all $:/core/ui/Buttons/fold-all $:/core/ui/Buttons/unfold-all $:/core/ui/Buttons/permaview $:/core/ui/Buttons/more-page-actions $:/core/ui/Buttons/new-tiddler $:/plugins/tiddlywiki/markdown/new-markdown-button $:/plugins/kookma/solution/buttons/pagecontrol $:/core/ui/Buttons/new-journal $:/core/ui/Buttons/new-image $:/core/ui/Buttons/import $:/core/ui/Buttons/export-page $:/core/ui/Buttons/control-panel $:/core/ui/Buttons/advanced-search $:/plugins/kookma/commander/buttons/pagecontrol $:/core/ui/Buttons/manager $:/core/ui/Buttons/tag-manager $:/core/ui/Buttons/language $:/core/ui/Buttons/palette $:/core/ui/Buttons/theme $:/core/ui/Buttons/storyview $:/core/ui/Buttons/encryption $:/core/ui/Buttons/timestamp $:/core/ui/Buttons/full-screen $:/core/ui/Buttons/print $:/core/ui/Buttons/refresh $:/plugins/kookma/utility/pagecontrol/view-fields-button $:/core/ui/Buttons/save-wiki $:/plugins/linonetwo/source-control-management/PageControlButton\",\"type\":\"text/vnd.tiddlywiki\"},\"$:/theme\":{\"title\":\"$:/theme\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"$:/themes/linonetwo/itonnote\"},\"$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint\":{\"title\":\"$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"960px\"},\"$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth\":{\"title\":\"$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"380px\"},\"$:/themes/tiddlywiki/vanilla/metrics/storywidth\":{\"title\":\"$:/themes/tiddlywiki/vanilla/metrics/storywidth\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"770px\"},\"$:/themes/tiddlywiki/vanilla/options/stickytitles\":{\"title\":\"$:/themes/tiddlywiki/vanilla/options/stickytitles\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"yes\"},\"$:/themes/tiddlywiki/vanilla/settings/codefontfamily\":{\"title\":\"$:/themes/tiddlywiki/vanilla/settings/codefontfamily\",\"created\":\"20190420032819437\",\"modified\":\"20200409033737050\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"'Fira Code',\\\"SFMono-Regular\\\",Consolas,\\\"Liberation Mono\\\",Menlo,Courier,monospace\"},\"$:/themes/tiddlywiki/vanilla/settings/editorfontfamily\":{\"title\":\"$:/themes/tiddlywiki/vanilla/settings/editorfontfamily\",\"created\":\"20190421072924643\",\"modified\":\"20200409033737038\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"'Fira Code',\\\"SFMono-Regular\\\",Consolas,\\\"Liberation Mono\\\",Menlo,Courier,monospace\"},\"$:/themes/tiddlywiki/vanilla/settings/fontfamily\":{\"title\":\"$:/themes/tiddlywiki/vanilla/settings/fontfamily\",\"created\":\"20190420034215366\",\"modified\":\"20200409033737026\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"'Fira Code',-apple-system, BlinkMacSystemFont, \\\"Segoe UI\\\", Helvetica, Arial, sans-serif, \\\"Apple Color Emoji\\\", \\\"Segoe UI Emoji\\\", \\\"Segoe UI Symbol\\\"\"},\"$:/plugins/linonetwo/itonnote/settings/PageControlBelowPage\":{\"title\":\"$:/plugins/linonetwo/itonnote/settings/PageControlBelowPage\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"yes\"},\"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/contents\":{\"title\":\"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/contents\",\"created\":\"20200415162108079\",\"modified\":\"20200602041547212\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"hide\"},\"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/hamburger\":{\"title\":\"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/hamburger\",\"created\":\"20200415162126215\",\"modified\":\"20200415162128295\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"show\"},\"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/pagecontrols\":{\"title\":\"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/pagecontrols\",\"created\":\"20200415162131716\",\"modified\":\"20200415162330718\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"show\"},\"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/sidebar\":{\"title\":\"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/sidebar\",\"created\":\"20200415162109418\",\"modified\":\"20200415162109442\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"show\"},\"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/topleftbar\":{\"title\":\"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/topleftbar\",\"created\":\"20200415162101755\",\"modified\":\"20200602041539750\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"hide\"},\"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/toprightbar\":{\"title\":\"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/toprightbar\",\"created\":\"20200415162118824\",\"modified\":\"20200415163710486\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"show\"},\"$:/config/shortcuts-mac/bold\":{\"title\":\"$:/config/shortcuts-mac/bold\",\"created\":\"20200602011151844\",\"modified\":\"20200602011151860\",\"type\":\"text/vnd.tiddlywiki\"},\"$:/config/shortcuts-mac/italic\":{\"title\":\"$:/config/shortcuts-mac/italic\",\"created\":\"20200602011428084\",\"modified\":\"20200602011428114\",\"type\":\"text/vnd.tiddlywiki\"},\"$:/config/shortcuts-mac/new-image\":{\"title\":\"$:/config/shortcuts-mac/new-image\",\"created\":\"20200602011526855\",\"modified\":\"20200602011526866\",\"type\":\"text/vnd.tiddlywiki\"},\"$:/config/shortcuts-mac/new-journal\":{\"title\":\"$:/config/shortcuts-mac/new-journal\",\"created\":\"20200602011519033\",\"modified\":\"20200602011519055\",\"type\":\"text/vnd.tiddlywiki\"},\"$:/config/shortcuts-mac/toggle-sidebar\":{\"title\":\"$:/config/shortcuts-mac/toggle-sidebar\",\"created\":\"20200602011322158\",\"modified\":\"20200602011322171\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"cmd-B\"},\"$:/config/shortcuts-not-mac/bold\":{\"title\":\"$:/config/shortcuts-not-mac/bold\",\"created\":\"20200602011156768\",\"modified\":\"20200602011156779\",\"type\":\"text/vnd.tiddlywiki\"},\"$:/config/shortcuts-not-mac/new-image\":{\"title\":\"$:/config/shortcuts-not-mac/new-image\",\"created\":\"20200602011529909\",\"modified\":\"20200602011529924\",\"type\":\"text/vnd.tiddlywiki\"},\"$:/config/shortcuts-not-mac/new-journal\":{\"title\":\"$:/config/shortcuts-not-mac/new-journal\",\"created\":\"20200602011521325\",\"modified\":\"20200602011521342\",\"type\":\"text/vnd.tiddlywiki\"},\"$:/config/shortcuts/bold\":{\"title\":\"$:/config/shortcuts/bold\",\"created\":\"20200602011200184\",\"modified\":\"20200602011200195\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"ctrl-B\"},\"$:/config/shortcuts/toggle-sidebar\":{\"title\":\"$:/config/shortcuts/toggle-sidebar\",\"created\":\"20200602011309990\",\"modified\":\"20200602011310003\",\"type\":\"text/vnd.tiddlywiki\"},\"$:/plugins/linonetwo/itonnote/ControlPanel\":{\"title\":\"$:/plugins/linonetwo/itonnote/ControlPanel\",\"type\":\"text/vnd.tiddlywiki\",\"tags\":\"$:/tags/ControlPanel/SettingsTab\",\"caption\":\"<<lingo Name $:/plugins/linonetwo/itonnote/language/>>\",\"text\":\"\\\\procedure lingo-base() $:/plugins/linonetwo/itonnote/language/\\n\\n\\\\define single-text-tag-editor(config-name)\\n\\\\whitespace trim\\n<!-- copy and modify from $:/plugins/linonetwo/intention-tower-knowledge-graph/configs/Tags -->\\n<div>\\n <$let\\n currentTiddler=<<config-title $config-name$>>\\n palette={{$:/palette}}\\n tempTitle=\\\"$:/state/plugins/linonetwo/itonnote/Configs/$config-name$\\\"\\n tabIndex={{$:/config/EditTabIndex}}\\n cancelPopups=\\\"yes\\\"\\n >\\n <% if [{$:/plugins/linonetwo/itonnote/Configs/$config-name$}!match[]] %>\\n <$macrocall $name=\\\"tag\\\" tag={{$:/plugins/linonetwo/itonnote/Configs/$config-name$}} />\\n <% endif %>\\n\\n <$edit-text tiddler=<<tempTitle>> tag=\\\"input\\\" field=\\\"text\\\" placeholder={{$:/language/EditTemplate/Tags/Add/Placeholder}} />\\n\\n <$button>\\n <<completeInit>>\\n <$action-setfield tiddler=<<currentTiddler>> text={{{ [<tempTitle>get[text]] }}}>\\n <$action-setfield tiddler=<<tempTitle>> text=\\\"\\\" />\\n </$action-setfield>\\n\\n {{$:/language/EditTemplate/Tags/Add/Button}}\\n </$button>\\n \\n </$let> \\n</div>\\n\\\\end\\n\\n<<lingo Config/Description>>\\n\\n---\\n\\n!! <<lingo PluginConfigs>>\\n\\n!!! <<lingo Config/Appearance>>\\n\\n;<<lingo Config/PageControlMobile/Caption>>\\n:<$checkbox tiddler=\\\"$:/plugins/linonetwo/itonnote/Configs/PageControlBelowPage\\\" field=\\\"text\\\" checked=\\\"yes\\\" unchecked=\\\"no\\\"> <<lingo Config/PageControlMobile/Description>></$checkbox>\\n\\n!!! <<lingo Config/FolderMenu/Caption>>\\n\\n<<single-text-tag-editor SideBarFolderMenuBaseTitle>>\\n\\n<<lingo Config/FolderMenu/Description>>\\n\"},\"$:/plugins/linonetwo/itonnote/Configs/SideBarFolderMenuBaseTitle\":{\"title\":\"$:/plugins/linonetwo/itonnote/Configs/SideBarFolderMenuBaseTitle\",\"text\":\"Index\"},\"$:/plugins/linonetwo/itonnote/Configs/PageControlBelowPage\":{\"title\":\"$:/plugins/linonetwo/itonnote/Configs/PageControlBelowPage\",\"text\":\"yes\"},\"$:/plugins/linonetwo/itonnote/Macros/OpenImageInGithub\":{\"title\":\"$:/plugins/linonetwo/itonnote/Macros/OpenImageInGithub\",\"created\":\"20200412034056887\",\"tags\":\"$:/tags/Macro\",\"caption\":\"点击在新标签页打开Github大图\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"\\\\define view-big-image(source)\\n<a href=\\\"https://raw.githubusercontent.com/linonetwo/wiki/master/Meme-of-LinOnetwo/tiddlers/$source$\\\" title=\\\"Click for a bigger version (opens in a separate tab)\\\" target=\\\"_blank\\\">\\n <img src=\\\"https://raw.githubusercontent.com/linonetwo/wiki/master/Meme-of-LinOnetwo/tiddlers/$source$\\\"/>\\n</a>\\n\\\\end\"},\"$:/plugins/linonetwo/itonnote/Macros/TransclusionWithEditMe\":{\"title\":\"$:/plugins/linonetwo/itonnote/Macros/TransclusionWithEditMe\",\"tags\":\"$:/tags/Macro 自改TW\",\"caption\":\"带有「编辑此块」的引用transclusion宏\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"\\\\define reuse-pane(content)\\n<style>\\n.reuse-pane {\\n\\tposition: absolute;\\n\\tright: 10px;\\n\\twidth: auto;\\n\\tmax-width: 4px;\\n\\theight: 1.5em;\\n\\toverflow: hidden;\\n\\tborder: 10px solid transparent;\\n\\tborder-top: 0;\\n\\tbox-sizing: content-box;\\n\\ttransition: max-width 0.5s;\\n}\\n.reuse-pane:hover {\\n max-width: 80vw;\\n}\\n.reuse-pane-content {\\n\\tdisplay: inline-block;\\n\\tbackground-color: rgba(233, 233, 233, 0.9);\\n\\tborder-left: 4px solid rgba(0, 0, 0, 0.05);\\n\\tpadding: 0px 5px;\\n\\tpadding-bottom: 2px;\\n}\\n</style>\\n<div class=\\\"reuse-pane\\\">\\n <small class=\\\"reuse-pane-content\\\">$content$</small>\\n</div>\\n\\\\end\\n\\n\\\\define reuse-tiddler(title)\\n<$macrocall $name=\\\"reuse-pane\\\" content=\\\"\\\"\\\"\\n查看引文:[[$title$]]\\n\\\"\\\"\\\" />\\n\\n{{$title$}}\\n\\n\\\\end\"},\"$:/config/OfficialPluginLibrary\":{\"title\":\"$:/config/OfficialPluginLibrary\",\"tags\":\"$:/tags/PluginLibrary\",\"caption\":\"{{$:/language/OfficialPluginLibrary}}\",\"enabled\":\"no\",\"text\":\"\\\\procedure load-plugin-library-button()\\n\\\\whitespace trim\\n<$list filter=\\\"[[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]]\\\" variable=\\\"lang\\\">\\n<$list filter=\\\"[<lang>search[zh]]\\\">\\n\\n为了更好的体验,我们建议您\\n<$button>\\n打开 CPL 安装插件\\n<$action-sendmessage $message=\\\"tm-close-tiddler\\\" />\\n<$action-sendmessage $message=\\\"tm-navigate\\\" navigateTo=\\\"$:/plugins/Gk0Wk/CPL-Repo/panel\\\" />\\n</$button>\\n\\n</$list>\\n\\n<$list filter=\\\"[<lang>!search[zh]]\\\">\\n\\nFor a better experience, we recommend you\\n<$button>\\nOpen CPL to install plugins\\n<$action-sendmessage $message=\\\"tm-close-tiddler\\\" />\\n<$action-sendmessage $message=\\\"tm-navigate\\\" navigateTo=\\\"$:/plugins/Gk0Wk/CPL-Repo/panel\\\" />\\n</$button>\\n\\n</$list></$list>\\n\\\\end\\n\\n<<load-plugin-library-button>>\\n\"},\"$:/core/ui/ControlPanel/Settings\":{\"title\":\"$:/core/ui/ControlPanel/Settings\",\"tags\":\"$:/tags/ControlPanel\",\"caption\":\"{{$:/language/ControlPanel/Settings/Caption}}\",\"text\":\"<div class=\\\"tc-control-panel\\\">\\n<$macrocall $name=\\\"tabs\\\" tabsList=\\\"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/SettingsTab]!has[draft.of]]\\\" default=\\\"$:/core/ui/ControlPanel/Settings/TiddlyWiki\\\" explicitState=\\\"$:/state/tab--697582678\\\"/>\\n</div>\\n\"},\"$:/core/ui/ControlPanel/Settings/TiddlyWiki\":{\"title\":\"$:/core/ui/ControlPanel/Settings/TiddlyWiki\",\"tags\":\"$:/tags/ControlPanel/SettingsTab\",\"caption\":\"TiddlyWiki\",\"text\":\"\\\\define lingo-base() $:/language/ControlPanel/Settings/\\n\\n<<lingo Hint>>\\n\\n<$list filter=\\\"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Settings]]\\\">\\n\\n<div style=\\\"border-top:1px solid #eee;\\\">\\n\\n!! <$link><$transclude field=\\\"caption\\\"/></$link>\\n\\n<$transclude/>\\n\\n</div>\\n\\n</$list>\\n\"},\"$:/plugins/linonetwo/itonnote/Sidebar/FolderMenu\":{\"title\":\"$:/plugins/linonetwo/itonnote/Sidebar/FolderMenu\",\"tags\":\"$:/tags/SideBar $:/tags/MenuBar\",\"caption\":\"<<lingo Config/FolderMenu/Caption $:/plugins/linonetwo/itonnote/language/>>\",\"description\":\"<<lingo Config/FolderMenu/Description $:/plugins/linonetwo/itonnote/language/>>\",\"is-dropdown\":\"yes\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"\\\\import [all[tiddlers+shadows]tag[$:/tags/Macro/Toc]]\\n\\\\procedure lingo-base() $:/plugins/linonetwo/itonnote/language/\\n\\n<$scrollable fallthrough=\\\"none\\\" class=\\\"tc-popup-keep tc-menubar-dropdown-sidebar\\\">\\n\\n\\t<$let toc-open-icon=\\\"$:/core/images/fold-button\\\" toc-closed-icon=\\\"$:/core/images/folder\\\">\\n\\t\\t<$transclude $variable=\\\"toc-ui\\\" tag={{$:/plugins/linonetwo/itonnote/Configs/SideBarFolderMenuBaseTitle}} />\\n\\t</$let>\\n\\n <<lingo FolderMenu/Help>>\\n\\n</$scrollable>\\n\"},\"$:/plugins/linonetwo/itonnote/Snippets/OpenImageInGithub\":{\"title\":\"$:/plugins/linonetwo/itonnote/Snippets/OpenImageInGithub\",\"caption\":\"图片:点击在新标签页打开大图\",\"tags\":\"$:/plugins/linonetwo/itonnote/Macros/OpenImageInGithub $:/tags/TextEditor/Snippet\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"<<view-big-image xxx.jpg>>\"},\"$:/plugins/linonetwo/itonnote/Snippets/TOCAboutCurrentTiddler\":{\"title\":\"$:/plugins/linonetwo/itonnote/Snippets/TOCAboutCurrentTiddler\",\"caption\":\"添加一个使用当前标题的 toc\",\"tags\":\"[[$:/plugins/linonetwo/itonnote/Help/Index]] $:/tags/TextEditor/Snippet\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"\\n<$let toc-open-icon=\\\"$:/core/images/fold-button\\\" toc-closed-icon=\\\"$:/core/images/folder\\\">\\n <$transclude $variable=\\\"toc-ui\\\" tag={{$:/plugins/linonetwo/itonnote/Configs/SideBarFolderMenuBaseTitle}} />\\n</$let>\"},\"$:/plugins/linonetwo/itonnote/Snippets/TransclusionWithEditMe\":{\"title\":\"$:/plugins/linonetwo/itonnote/Snippets/TransclusionWithEditMe\",\"caption\":\"带「编辑此块」的引用Transclusion\",\"tags\":\"$:/plugins/linonetwo/itonnote/Macros/TransclusionWithEditMe $:/tags/TextEditor/Snippet\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"<<reuse-tiddler \\\"title\\\">>\"},\"$:/plugins/linonetwo/itonnote/UI/PageControlBelowPage\":{\"title\":\"$:/plugins/linonetwo/itonnote/UI/PageControlBelowPage\",\"tags\":\"$:/tags/AboveStory\",\"text\":\"<!-- Though visually it is on the bottom of the page, but we have to use AboveStory to make sure it is overlay on the story. -->\\n<$list filter=\\\"[[$:/plugins/linonetwo/itonnote/settings/PageControlBelowPage]get[text]else[no]match[yes]]\\\">\\n <nav class=\\\"page-control-below-page\\\">\\n {{$:/core/ui/PageTemplate/pagecontrols}}\\n </nav>\\n</$list>\"},\"$:/plugins/linonetwo/itonnote/UI/style.css\":{\"title\":\"$:/plugins/linonetwo/itonnote/UI/style.css\",\"tags\":\"$:/tags/Stylesheet\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"<$importvariables filter=\\\"[[$:/themes/tiddlywiki/vanilla/base]]\\\">\\n\\n.page-control-below-page {\\n display: none;\\n\\n padding: 10px;\\n background-color: white;\\n -webkit-backdrop-filter: blur(10px);\\n\\n position: fixed;\\n bottom: 0;\\n left: 0;\\n z-index: 200;\\n width: 100%;\\n}\\n.page-control-below-page .tc-page-controls {\\n margin: 0;\\n\\n display: flex;\\n flex-direction: row;\\n align-items: center;\\n justify-content: space-evenly;\\n}\\n\\n@media (max-width: <<sidebarbreakpoint>>) {\\n .page-control-below-page {\\n display: block;\\n }\\n}\\n\"},\"$:/plugins/linonetwo/itonnote/ViewTemplate/LazyLoadingIndicatorBody\":{\"title\":\"$:/plugins/linonetwo/itonnote/ViewTemplate/LazyLoadingIndicatorBody\",\"text\":\"\\\\rules except dash\\n\\n<!-- Render the text to trigger lazy-loading -->\\n{{||$:/core/ui/ViewTemplate/body/default}}\\n<div class=\\\"skinny-tiddler-loading-indicator\\\" />\\n<style>\\n .skinny-tiddler-loading-indicator {\\n height: 4px;\\n width: 100%;\\n --c:no-repeat linear-gradient(#6100ee 0 0);\\n background: var(--c),var(--c),#d7b8fc;\\n background-size: 60% 100%;\\n animation: l16 3s infinite;\\n }\\n @keyframes l16 {\\n 0% {background-position:-150% 0,-150% 0}\\n 66% {background-position: 250% 0,-150% 0}\\n 100% {background-position: 250% 0, 250% 0}\\n }\\n</style>\"},\"$:/plugins/linonetwo/itonnote/ViewTemplate/LazyLoadingIndicatorCascade\":{\"title\":\"$:/plugins/linonetwo/itonnote/ViewTemplate/LazyLoadingIndicatorCascade\",\"tags\":\"$:/tags/ViewTemplateBodyFilter\",\"list-before\":\"$:/config/ViewTemplateBodyFilters/hide-body\",\"text\":\"[has:field[_is_skinny]then[$:/plugins/linonetwo/itonnote/ViewTemplate/LazyLoadingIndicatorBody]]\"},\"$:/plugins/linonetwo/itonnote/language/en-GB/FolderMenu\":{\"title\":\"$:/plugins/linonetwo/itonnote/language/en-GB/FolderMenu\",\"text\":\"The folder structure [[auto-generated by tag system|$:/plugins/linonetwo/itonnote/language/en-GB/VirtualFolder]] is shown in the \\\"FolderMenu\\\" tab in the sidebar.\\n\\nThe first directory tree is displayed according to the `currently located entry` and is dynamic; the second directory tree starts from the `Index(root folder)` entry and is static. Because Echart's dynamic display of contextual diagrams is not as nice and distracting as this tree form. So for now, the context is displayed in the form of a directory tree.\\n\\nIf you want to modify the root folder, please open the [[Settings|$:/plugins/linonetwo/itonnote/ControlPanel]].\\n\\n* tagged with A, which is equivalent to storing the file in folder A and using the contents of A as the Readme of the folder\\n* Use the \\\"Create a new tiddler with this tag name\\\" button in any Tiddler to create a file with the current Tiddler as the folder\\n* Click the {{$:/core/images/folder}} button (to make it {{$:/core/images/fold-button}}) to expand the folder\\n* Click directly on the name of a folder to see the Readme of that folder\\n* Click {{$:/core/images/options-button}} button to open more buttons, you can see {{$:/core/images/edit-button}} button, click it to open edit mode.\\n** In edit mode, hover over the folder and the {{$:/core/images/down-arrow}} button will appear on the far right, click on it to see a series of new action buttons, which can be used to create new entries in the folder.\\n** You can also drag the folder to sort it.\\n\"},\"$:/plugins/linonetwo/itonnote/language/en-GB/Readme\":{\"title\":\"$:/plugins/linonetwo/itonnote/language/en-GB/Readme\",\"text\":\"\\\\procedure lingo-base() $:/plugins/linonetwo/itonnote/language/\\n\\n! <<lingo Name>>\\n\\n<<lingo Description>>\\n\\n!! Features\\n\\nSome preset content for this plugin.\\n\\n!!! snippets (text snippets)\\n\\nIn edit mode, there is a stamp button that lists a series of text snippets that can be added with one click, thus eliminating the need to memorize these complex text snippets.\\n\\nThis plugin comes with a number of text snippets pre-built, see the introduction of the corresponding Macros for details, or the introduction of the corresponding plugin:\\n\\n* [[$:/plugins/linonetwo/itonnote/Snippets/TOCAboutCurrentTiddler]]\\n* [[$:/plugins/linonetwo/itonnote/Snippets/OpenImageInGithub]]\\n* [[$:/plugins/linonetwo/itonnote/Snippets/TransclusionWithEditMe]]\\n\\n!!! macros\\n\\n!!!! TransclusionWithEditMe\\n\\n[[$:/plugins/linonetwo/itonnote/Macros/TransclusionWithEditMe]] Usage:\\n\\n使用普通的 [[Transclusion|https://tiddlywiki.com/#Transclusion]] 时,你没法得知源文件在哪里,如果想要修改内容,还得打开编辑模式、复制被引用的 Tiddler 的标题,然后搜索打开编辑,比较麻烦。\\n\\n使用此宏进行引用就很方便了:\\n\\n```tid\\n<<reuse-tiddler \\\"快速创建新笔记按钮\\\">>\\n```\\n\\n会直接在引用的区块旁边显示一个「查看引文」的小浮窗,带有指向源文件的链接,直接点开编辑即可。\\n\\n!!!! OpenImageInGithub\\n\\n[[$:/plugins/linonetwo/itonnote/Macros/OpenImageInGithub]] Usage:\\n\\nIf you have `webcatalog-tiddlywiki-menu-app.jpg` in your Wiki, you normally can just `{{webcatalog-tiddlywiki-menu-app.jpg}}` to place it in your tiddler, but you can use this macro to make it clickable, and open large image in the new browser tab:\\n\\n```tid\\n<<view-big-image webcatalog-tiddlywiki-menu-app.jpg>>\\n```\\n\"},\"$:/plugins/linonetwo/itonnote/language/en-GB/Name\":{\"title\":\"$:/plugins/linonetwo/itonnote/language/en-GB/Name\",\"text\":\"TidGi Preset\"},\"$:/plugins/linonetwo/itonnote/language/en-GB/Description\":{\"title\":\"$:/plugins/linonetwo/itonnote/language/en-GB/Description\",\"text\":\"A series of trivial content for TidGi Preset, usually from the plugin's description file and forum discussions, but most people are too lazy to read the description file, so here is a direct help to configure it.\"},\"$:/plugins/linonetwo/itonnote/language/en-GB/PluginConfigs\":{\"title\":\"$:/plugins/linonetwo/itonnote/language/en-GB/PluginConfigs\",\"text\":\"plugin settings\"},\"$:/plugins/linonetwo/itonnote/language/en-GB/Config/Description\":{\"title\":\"$:/plugins/linonetwo/itonnote/language/en-GB/Config/Description\",\"text\":\"With these settings, you can customize the behavior of the \\\"TidGi Preset\\\" plugin.\"},\"$:/plugins/linonetwo/itonnote/language/en-GB/Config/Appearance\":{\"title\":\"$:/plugins/linonetwo/itonnote/language/en-GB/Config/Appearance\",\"text\":\"Appearance\"},\"$:/plugins/linonetwo/itonnote/language/en-GB/Config/PageControlMobile/Caption\":{\"title\":\"$:/plugins/linonetwo/itonnote/language/en-GB/Config/PageControlMobile/Caption\",\"text\":\"Show page control buttons at the bottom of the mobile page.\"},\"$:/plugins/linonetwo/itonnote/language/en-GB/Config/PageControlMobile/Description\":{\"title\":\"$:/plugins/linonetwo/itonnote/language/en-GB/Config/PageControlMobile/Description\",\"text\":\"On mobile devices, the sidebar is collapsed, so adding page controls at the bottom would be a convenient shortcut.\"},\"$:/plugins/linonetwo/itonnote/language/en-GB/Config/FolderMenu/Caption\":{\"title\":\"$:/plugins/linonetwo/itonnote/language/en-GB/Config/FolderMenu/Caption\",\"text\":\"Folder Menu\"},\"$:/plugins/linonetwo/itonnote/language/en-GB/Config/FolderMenu/Description\":{\"title\":\"$:/plugins/linonetwo/itonnote/language/en-GB/Config/FolderMenu/Description\",\"text\":\"Other tiddlers are added to this tag, which is equivalent to this tag being the root folder into which other tiddlers are placed. And it is displayed in the \\\"File Menu\\\" tab on the sidebar.\"},\"$:/plugins/linonetwo/itonnote/language/en-GB/FolderMenu/Help\":{\"title\":\"$:/plugins/linonetwo/itonnote/language/en-GB/FolderMenu/Help\",\"text\":\"[[Help|$:/plugins/linonetwo/itonnote/language/en-GB/FolderMenu]]\"},\"$:/plugins/linonetwo/itonnote/language/en-GB/VirtualFolder\":{\"title\":\"$:/plugins/linonetwo/itonnote/language/en-GB/VirtualFolder\",\"text\":\"!!! Tag\\n\\nThe Tag structure can be thought of as a folder directory structure with soft links to form a graphical structure, since Tag relationships are inherently free, and two notes can be tagged to each other and parented to each other in the folder structure.\\n\\nUsing toc macro, you can create a \\\"file directory\\\" tab in the sidebar, which shows the folder structure generated by the tag. The details are written in [[Official Table-of-Contents Macros doc|https://tiddlywiki.com/#Table-of-Contents%20Macros:%5B%5BTable-of-Contents%20Macros%5D%5D%20%5B%5BTable-of-Contents%20Macros%20(Examples)%5D%5D]], and the plugin should have it pre-populated in [[$:/plugins/linonetwo/itonnote/Sidebar/FolderMenu]], which can be used immediately or modified to override it.\\n\\nThen you can set the \\\"File Directory\\\" tab to be displayed by default in `$:/ControlPanel` -> \\\"Settings\\\" -> \\\"Default Sidebar Tab\\\", so that you can use TiddlyWiki as a folder system. And the plugin should already be pre-configured for this.\\n\\n!!! Slash\\n\\nTiddlyWiki comes with a way to create folders by using slashes in the header.\\n\\nThe various folders that come with the system can be seen via the sidebar under \\\"More\\\" -> \\\"Explore\\\".\\n\\nIf you use the NodeJS version of TiddlyWiki, these tiddlers will also be placed in the corresponding folders on the real file system.\\n\"},\"$:/plugins/linonetwo/itonnote/language/zh-Hans/FolderMenu\":{\"title\":\"$:/plugins/linonetwo/itonnote/language/zh-Hans/FolderMenu\",\"text\":\"侧边栏的「目录结构」标签页里展示了[[通过标签系统自动生成|$:/plugins/linonetwo/itonnote/language/zh-Hans/VirtualFolder]]的文件夹。\\n\\n第一个目录树根据`当前所在的条目`展示,是动态的;第二个目录树从`Index(根文件夹)`条目出发,是静态的。因Echart动态显示上下文的图没有这种树的形式好看且干扰注意力。所以暂用目录树的形式显示上下文。\\n\\n若想修改根文件夹,请打开[[设置|$:/plugins/linonetwo/itonnote/ControlPanel]]。\\n\\n* 打了 A 标签,即相当于将文件存储在文件夹 A 中,并以 A 的内容作为文件夹的说明文本\\n* 在任意条目中使用「创建一个标签为此条目名称的新条目」按钮,可以创建以当前条目为文件夹的文件\\n* 点击 {{$:/core/images/folder}} 按钮(使它变成 {{$:/core/images/fold-button}})可以展开文件夹\\n* 直接点击文件夹的名字可以查看这个文件夹的说明文本\\n* 点击 {{$:/core/images/options-button}} 按钮可以打开更多按钮,可以看到 {{$:/core/images/edit-button}} 按钮,点击后可以打开编辑模式。\\n** 编辑模式下,鼠标悬浮在文件夹上会在最右侧出现 {{$:/core/images/down-arrow}} 按钮,点击可以看到一系列新建操作按钮,可以用于在文件夹内新建条目\\n** 此时也可以拖动文件夹排序\"},\"$:/plugins/linonetwo/itonnote/language/zh-Hans/Readme\":{\"title\":\"$:/plugins/linonetwo/itonnote/language/zh-Hans/Readme\",\"text\":\"\\\\procedure lingo-base() $:/plugins/linonetwo/itonnote/language/\\n\\n! <<lingo Name>>\\n\\n<<lingo Description>>\\n\\n!! 功能\\n\\n本插件的一些预置内容。\\n\\n!!! snippets(文本片段)\\n\\n在编辑模式下,有一个图章按钮,点击后会列出一系列文本片段,可以一键添加预制内容,因而无需用脑记住这些复杂的文本片段了。\\n\\n本插件预置了一些文本片段,详见相应的 Macros 的介绍,或相应的插件的介绍:\\n\\n* [[$:/plugins/linonetwo/itonnote/Snippets/TOCAboutCurrentTiddler]]\\n* [[$:/plugins/linonetwo/itonnote/Snippets/OpenImageInGithub]]\\n* [[$:/plugins/linonetwo/itonnote/Snippets/TransclusionWithEditMe]]\\n\\n!!! 宏\\n\\n!!!! TransclusionWithEditMe\\n\\n[[$:/plugins/linonetwo/itonnote/Macros/TransclusionWithEditMe]] Usage:\\n\\n使用普通的 [[Transclusion|https://tiddlywiki.com/#Transclusion]] 时,你没法得知源文件在哪里,如果想要修改内容,还得打开编辑模式、复制被引用的 Tiddler 的标题,然后搜索打开编辑,比较麻烦。\\n\\n使用此宏进行引用就很方便了:\\n\\n```tid\\n<<reuse-tiddler \\\"快速创建新笔记按钮\\\">>\\n```\\n\\n会直接在引用的区块旁边显示一个「查看引文」的小浮窗,带有指向源文件的链接,直接点开编辑即可。\\n\\n!!!! OpenImageInGithub\\n\\n[[$:/plugins/linonetwo/itonnote/Macros/OpenImageInGithub]] Usage:\\n\\n如果您的 Wiki 中有 \\\"webcatalog-tiddlywiki-menu-app.jpg\\\",您通常可以直接使用\\\"{{webcatalog-tiddlywiki-menu-app.jpg}}\\\"将其放到条目中,但您可以使用此宏使其可点击,并在新的浏览器标签页中打开大图:\\nIf you have `webcatalog-tiddlywiki-menu-app.jpg` in your Wiki, you normally can just `{{webcatalog-tiddlywiki-menu-app.jpg}}` to place it in your tiddler, but you can use this macro to make it clickable, and open large image in the new browser tab:\\n\\n```tid\\n<<view-big-image webcatalog-tiddlywiki-menu-app.jpg>>\\n```\\n\"},\"$:/plugins/linonetwo/itonnote/language/zh-Hans/Name\":{\"title\":\"$:/plugins/linonetwo/itonnote/language/zh-Hans/Name\",\"text\":\"太记预置\"},\"$:/plugins/linonetwo/itonnote/language/zh-Hans/Description\":{\"title\":\"$:/plugins/linonetwo/itonnote/language/zh-Hans/Description\",\"text\":\"为太记预配置了一系列琐碎的内容,一般来自各插件的自述文件和论坛讨论,但大多数人懒得看自述文件,故在此直接帮忙配置好了。\"},\"$:/plugins/linonetwo/itonnote/language/zh-Hans/PluginConfigs\":{\"title\":\"$:/plugins/linonetwo/itonnote/language/zh-Hans/PluginConfigs\",\"text\":\"插件设置\"},\"$:/plugins/linonetwo/itonnote/language/zh-Hans/Config/Description\":{\"title\":\"$:/plugins/linonetwo/itonnote/language/zh-Hans/Config/Description\",\"text\":\"通过这些设置,您可以自定义「太记预置」插件的行为。\"},\"$:/plugins/linonetwo/itonnote/language/zh-Hans/Config/Appearance\":{\"title\":\"$:/plugins/linonetwo/itonnote/language/zh-Hans/Config/Appearance\",\"text\":\"外观\"},\"$:/plugins/linonetwo/itonnote/language/zh-Hans/Config/PageControlMobile/Caption\":{\"title\":\"$:/plugins/linonetwo/itonnote/language/zh-Hans/Config/PageControlMobile/Caption\",\"text\":\"在手机页面下方显示页面控制按钮\"},\"$:/plugins/linonetwo/itonnote/language/zh-Hans/Config/PageControlMobile/Description\":{\"title\":\"$:/plugins/linonetwo/itonnote/language/zh-Hans/Config/PageControlMobile/Description\",\"text\":\"在移动设备上,侧边栏是折叠的,因此在底部添加页面控制将是一个方便的快捷方式。\"},\"$:/plugins/linonetwo/itonnote/language/zh-Hans/Config/FolderMenu/Caption\":{\"title\":\"$:/plugins/linonetwo/itonnote/language/zh-Hans/Config/FolderMenu/Caption\",\"text\":\"文件目录\"},\"$:/plugins/linonetwo/itonnote/language/zh-Hans/Config/FolderMenu/Description\":{\"title\":\"$:/plugins/linonetwo/itonnote/language/zh-Hans/Config/FolderMenu/Description\",\"text\":\"其它笔记加上这个标签,相当于这个标签是根目录文件夹,其它笔记放入了这个文件夹中。并显示在侧边栏的「文件目录」标签页里。\"},\"$:/plugins/linonetwo/itonnote/language/zh-Hans/FolderMenu/Help\":{\"title\":\"$:/plugins/linonetwo/itonnote/language/zh-Hans/FolderMenu/Help\",\"text\":\"[[使用帮助|$:/plugins/linonetwo/itonnote/language/zh-Hans/FolderMenu]]\"},\"$:/plugins/linonetwo/itonnote/language/zh-Hans/VirtualFolder\":{\"title\":\"$:/plugins/linonetwo/itonnote/language/zh-Hans/VirtualFolder\",\"text\":\"!!! 标签\\n\\n标签结构可以看作是一种文件夹目录结构,通过软链接形成图论结构,因为标签关系本身是自由的,两个笔记可以相互加对方为标签,并在文件夹结构中互为父级,形成任意自由的结构。\\n\\n使用官方的 toc 宏,你可以在侧边栏创建一个「文件目录」标签,显示标签生成的文件夹结构。详细内容写在 [[官方文档的 Table-of-Contents 一文里|https://tw-cn-doc.cpolar.top/#Table-of-Contents%20Macros:%5B%5BTable-of-Contents%20Macros%5D%5D%20%5B%5BTable-of-Contents%20Macros%20(Examples)%5D%5D]] 中,插件应在 [[$:/plugins/linonetwo/itonnote/Sidebar/FolderMenu]] 中预置了,可以立即使用,你也可以修改覆盖。\\n\\n然后,您可以在 `$:/ControlPanel` ->「Settings」 ->「Default Sidebar Tab」中设置默认显示「文件目录」选项卡,这样您就可以将 TiddlyWiki 用作文件夹系统。插件应该已经为此进行了预配置。\\n\\n!!! 斜杠\\n\\nTiddlyWiki 提供了一种在标题里使用斜杠创建文件夹的方法。\\n\\n你可以通过侧边栏的「更多」->「探索」查看系统自带的各种文件夹。\\n\\n如果你使用的是 NodeJS 版本的 TiddlyWiki,这些 tiddlers 也会被放置在真实文件系统的相应文件夹中。\\n\\n!!! 使用哪种?\\n\\n这是个见仁见智的问题,请[[参考中文教程学习|https://tw-cn.netlify.app/#%E4%BD%BF%E7%94%A8%E6%A0%87%E7%AD%BE%E5%BD%93%E6%96%87%E4%BB%B6%E5%A4%B9:%E4%BD%BF%E7%94%A8%E6%A0%87%E7%AD%BE%E5%BD%93%E6%96%87%E4%BB%B6%E5%A4%B9%20%E6%AC%A2%E8%BF%8E%E6%9D%A5%E5%88%B0%E5%A4%AA%E5%BE%AE%EF%BC%81]],也可以加群讨论!\\n\"},\"$:/core/macros/lingo\":{\"title\":\"$:/core/macros/lingo\",\"tags\":\"$:/tags/Global\",\"text\":\"<!-- //TODO: remove after https://github.com/Jermolene/TiddlyWiki5/pull/7821 is merged -->\\n<!-- Note that lingo-base should end with a trailing slash character -->\\n\\\\procedure lingo-base()\\n$:/language/\\n\\\\end lingo-base\\n\\n\\\\procedure lingo(title,override-lingo-base)\\n<!-- Lingo procedure -->\\n<!-- Get the parse mode used to invoke this procedure -->\\n<$parameters $parseMode=\\\"parseMode\\\">\\n\\t<!-- Compute the lingo-base-->\\n\\t<$let active-lingo-base={{{ [<override-lingo-base>!match[]else<lingo-base>] }}}>\\n\\t\\t<!-- First try the old school <active-lingo-base><title> format -->\\n\\t\\t<$transclude $tiddler={{{ [<active-lingo-base>addsuffix<title>] }}} $mode=<<parseMode>>>\\n\\t\\t\\t<!-- If that didn't work, try the new <lingo-base><langcode>/<title> format -->\\n\\t\\t\\t<$let language-code={{{ [[$:/language]get[text]get[name]else[en-GB]] }}}>\\n <$transclude $tiddler={{{ [<active-lingo-base>addsuffix<language-code>addsuffix[/]addsuffix<title>] }}} $mode=<<parseMode>>/>\\n\\t\\t\\t</$let>\\n\\t\\t</$transclude>\\n\\t</$let>\\n</$parameters>\\n\\\\end lingo\"},\"$:/plugins/linonetwo/itonnote/readme\":{\"title\":\"$:/plugins/linonetwo/itonnote/readme\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"\\\\procedure lingo-base() $:/plugins/linonetwo/itonnote/language/\\n\\n<<lingo Readme>>\\n\"},\"$:/plugins/linonetwo/itonnote/tree\":{\"title\":\"$:/plugins/linonetwo/itonnote/tree\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"<<tree prefix:\\\"$:/plugins/linonetwo/itonnote/\\\">>\"},\"$:/plugins/linonetwo/itonnote/Startup/closeSidebarOnMobile.js\":{\"module-type\":\"startup\",\"title\":\"$:/plugins/linonetwo/itonnote/Startup/closeSidebarOnMobile.js\",\"type\":\"application/javascript\",\"creator\":\"NicolasPetton\",\"Modern.TiddlyDev#Origin\":\"Startup/closeSidebarOnMobile.ts\",\"text\":\"\\\"use strict\\\";exports.name=\\\"close-sidebar-on-mobile\\\",exports.platforms=[\\\"browser\\\"],exports.after=[\\\"rootwidget\\\"];var isOnMobile=()=>\\\"yes\\\"===$tw.wiki.getTiddlerText(\\\"$:/info/browser/is/mobile\\\")||\\\"yes\\\"===$tw.wiki.getTiddlerText(\\\"$:/info/tidgi-mobile\\\"),closeSidebar=()=>{$tw.wiki.addTiddler({title:\\\"$:/state/sidebar\\\",text:\\\"no\\\"}),$tw.wiki.addTiddler({title:\\\"$:/state/notebook-sidebar\\\",text:\\\"no\\\"})},closeSidebarOnMobile=e=>(isOnMobile()&&closeSidebar(),e),setup=()=>{$tw.hooks.addHook(\\\"th-opening-default-tiddlers-list\\\",closeSidebarOnMobile),$tw.hooks.addHook(\\\"th-importing-file\\\",closeSidebarOnMobile),$tw.hooks.addHook(\\\"th-navigating\\\",closeSidebarOnMobile),$tw.hooks.addHook(\\\"th-new-tiddler\\\",closeSidebarOnMobile),$tw.hooks.addHook(\\\"th-open-command-palette\\\",closeSidebarOnMobile),closeSidebarOnMobile()};exports.startup=setup;\"}}}", "title": "$:/plugins/linonetwo/itonnote", "type": "application/json", - "version": "2.0.3", - "Modern.TiddlyDev#SHA256-Hashed": "fa2f6b767668ba76a3598c9e1f31d47ded67c542d5e8bd5ddf651b54dfcaa7b5" + "version": "3.2.0", + "Modern.TiddlyDev#SHA256-Hashed": "2bfa0066546d370ef8e815b14cb910036237682f77a98cd86df85e8e3856a06d" } ] \ No newline at end of file diff --git a/tiddlers/TCTSystem/plugins/linonetwo/opened-tiddlers-bar.json b/tiddlers/TCTSystem/plugins/linonetwo/opened-tiddlers-bar.json index cb4db446..ab296594 100644 --- a/tiddlers/TCTSystem/plugins/linonetwo/opened-tiddlers-bar.json +++ b/tiddlers/TCTSystem/plugins/linonetwo/opened-tiddlers-bar.json @@ -4,13 +4,13 @@ "core-version": ">=5.1.22", "dependents": "", "description": "VSCode style opened files top bar", - "list": "Readme LICENSE", + "list": "Readme config tree", "name": "Opened Tiddlers Bar", "plugin-type": "plugin", - "text": "{\"tiddlers\":{\"$:/plugins/linonetwo/opened-tiddlers-bar/AboveStory\":{\"title\":\"$:/plugins/linonetwo/opened-tiddlers-bar/AboveStory\",\"creator\":\"[[Jeffrey Wikinson]]\",\"modifier\":\"LinOnetwo\",\"tags\":\"$:/tags/AboveStory\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"<div class=\\\"opened-tiddlers-bar-container tc-adjust-top-of-scroll\\\">\\n <<opened-tiddlers-bar>>\\n</div>\"},\"$:/plugins/linonetwo/opened-tiddlers-bar/Readme\":{\"title\":\"$:/plugins/linonetwo/opened-tiddlers-bar/Readme\",\"creator\":\"LinOnetwo\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"!! Features\\n\\nThis plugin provides VSCode style \\\"Opened Tiddlers\\\" top bar\\n\\nUse the middle mouse button or the X button to close the tab.\\n\\nUse Shift + mouse wheel to swipe sideways to view.\\n\\n!! Credits\\n\\nThis plugin is based on [[$:/plugins/bj/storytabs|http://bjtools.tiddlyspot.com/]] , which is in MIT license, thank you, Buggyj!\\n\"},\"$:/plugins/linonetwo/opened-tiddlers-bar/style.css\":{\"title\":\"$:/plugins/linonetwo/opened-tiddlers-bar/style.css\",\"creator\":\"LinOnetwo\",\"tags\":\"$:/tags/Stylesheet\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"/** make things in $:/tags/AboveStory position fixed, so it will always on the top */\\nsection.story-backdrop .opened-tiddlers-bar-container {\\n position: fixed;\\n top: 0;\\n z-index: 1000;\\n height: var(--menubar-height);\\n width: 100vw;\\n left: 0;\\n\\n overflow-x: auto;\\n white-space: nowrap;\\n overflow: -moz-scrollbars-none;\\n scrollbar-width: none;\\n}\\nsection.story-backdrop .opened-tiddlers-bar-container::-webkit-scrollbar {\\n display: none;\\n}\\n\\nsection.story-backdrop div.opened-tiddlers-bar div.opened-tiddlers-bar-tabs {\\n display: flex;\\n flex-direction: row;\\n justify-content: flex-start;\\n}\\n/** make it possible to drag the app using this bar in TidGi, when titleBar is closed */\\n<$reveal type=\\\"match\\\" state=\\\"$:/state/titleBarOpened\\\" text=\\\"no\\\">\\ndiv.opened-tiddlers-bar-tabs {\\n width: 90vw;\\n overflow-x: auto;\\n white-space: nowrap;\\n overflow: -moz-scrollbars-none;\\n scrollbar-width: none;\\n}\\ndiv.opened-tiddlers-bar-tabs::-webkit-scrollbar {\\n display: none;\\n}\\ndiv.opened-tiddlers-bar-drag-area {\\n width: 5vw;\\n -webkit-app-region: drag;\\n}\\n</$reveal>\\n/** when hide titlebar and hide sidebar (and on macOS, windows not tested), move bar right to avoid collision with close button on the left top of app */\\n/** move right a bit to avoid collision with close button on macOS when title bar hide */\\n<$reveal type=\\\"match\\\" state=\\\"$:/state/titleBarOpened\\\" text=\\\"no\\\">\\n<$reveal type=\\\"match\\\" state=\\\"$:/state/sideBarOpened\\\" text=\\\"no\\\">\\nsection.story-backdrop {\\n width: 100vw;\\n padding-left: 68px;\\n}\\n</$reveal>\\n</$reveal>\\n\\n/** tiddlers bar */\\nsection.story-backdrop > p > .opened-tiddlers-bar-container, section.story-backdrop > p > .opened-tiddlers-bar-container > div.tc-tab-buttons {\\n width: 100%;\\n margin: 0;\\n display: flex;\\n background: transparent;\\n}\\nsection.story-backdrop > p > .opened-tiddlers-bar-container {\\n background-color: white;\\n backdrop-filter: blur(3px);\\n background: <<colour tab-background-selected>>;\\n}\\n\\n\\ndiv.opened-tiddlers-bar-tabs button {\\n border: none;\\n border-radius: 0;\\n margin: 0;\\n padding: 5px 10px;\\n padding-right: 2px;\\n}\\n/** x button */\\ndiv.opened-tiddlers-bar-tabs button.opened-tiddlers-bar-close-button {\\n border: none;\\n border-radius: 0;\\n margin: 0;\\n padding: 0 5px;\\n opacity: 0;\\n background-color: transparent;\\n}\\n/** show x when tab is hovered */\\ndiv.opened-tiddlers-bar-tabs:hover button.opened-tiddlers-bar-close-button {\\n opacity: 1;\\n}\\nsection.story-backdrop div.opened-tiddlers-bar-tabs button.tc-tab:not(.tc-tab-selected):hover {\\n border-bottom: 2px solid gray;\\n}\\nsection.story-backdrop div.opened-tiddlers-bar-tabs button.tc-tab:nth-child(2) {\\n margin-left: -1em;\\n}\\ndiv.opened-tiddlers-bar.tc-tab-buttons {\\n padding: 0;\\n margin: 0;\\n}\\n\\n/** 收起侧边栏的按钮 */\\n.tc-topbar-right {\\n top: 18px;\\n}\\n\"},\"$:/plugins/linonetwo/opened-tiddlers-bar/tree\":{\"title\":\"$:/plugins/linonetwo/opened-tiddlers-bar/tree\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"<<tree prefix:\\\"$:/plugins/linonetwo/opened-tiddlers-bar/\\\">>\"},\"$:/plugins/linonetwo/opened-tiddlers-bar/ui\":{\"title\":\"$:/plugins/linonetwo/opened-tiddlers-bar/ui\",\"creator\":\"[[Jeffrey Wikinson]]\",\"modifier\":\"LinOnetwo\",\"tags\":\"$:/tags/Macro\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"\\\\define onMiddleClick()\\n<$list filter=\\\"[<event-mousebutton>match[middle]]\\\">\\n<$action-sendmessage $message=\\\"tm-close-tiddler\\\" $param=<<currentTab>>/>\\n</$list>\\n\\\\end\\n\\\\define opened-tiddlers-bar()\\n\\\\whitespace trim\\n<div class=\\\"tc-tab-buttons opened-tiddlers-bar\\\" >\\n <div class=\\\"opened-tiddlers-bar-drag-area\\\" />\\n <div class=\\\"opened-tiddlers-bar-tabs\\\">\\n <$list filter=\\\"[list[$:/StoryList]]\\\" history=\\\"$:/HistoryList\\\" variable=\\\"currentTab\\\">\\n <$reveal type=\\\"match\\\" state=\\\"$:/HistoryList!!current-tiddler\\\" text=<<currentTab>>>\\n <$eventcatcher $auxclick=<<onMiddleClick>>>\\n <div style=\\\"display:inline\\\">\\n <$button to=<<currentTab>> class=\\\"tc-tab-selected tc-tab\\\">\\n <$view tiddler=<<currentTab>> field=\\\"name\\\">\\n <$view tiddler=<<currentTab>> field=\\\"title\\\" /></$view>\\n <$button message=\\\"tm-close-tiddler\\\" param=<<currentTab>> class=\\\"tc-image-button opened-tiddlers-bar-close-button\\\">\\n ×\\n </$button>\\n </$button>\\n </div>\\n </$eventcatcher>\\n </$reveal>\\n <$reveal type=\\\"nomatch\\\" state=\\\"$:/HistoryList!!current-tiddler\\\" text=<<currentTab>>>\\n <$eventcatcher $auxclick=<<onMiddleClick>>>\\n <div>\\n <$button to=<<currentTab>> class=\\\"tc-tab\\\" >\\n <$view tiddler=<<currentTab>> field=\\\"name\\\">\\n <$view tiddler=<<currentTab>> field=\\\"title\\\" />\\n </$view>\\n <$button message=\\\"tm-close-tiddler\\\" param=<<currentTab>> class=\\\"tc-image-button opened-tiddlers-bar-close-button\\\">\\n ×\\n </$button>\\n </$button>\\n </div>\\n </$eventcatcher>\\n </$reveal>\\n </$list>\\n </div>\\n <div class=\\\"opened-tiddlers-bar-drag-area\\\" />\\n</div>\\n\\\\end\\n\"}}}", + "text": "{\"tiddlers\":{\"$:/plugins/linonetwo/opened-tiddlers-bar/AboveStory\":{\"title\":\"$:/plugins/linonetwo/opened-tiddlers-bar/AboveStory\",\"tags\":\"$:/tags/AboveStory\",\"text\":\"<div class=\\\"opened-tiddlers-bar-container tc-adjust-top-of-scroll\\\">\\n <<opened-tiddlers-bar>>\\n</div>\"},\"$:/plugins/linonetwo/opened-tiddlers-bar/config\":{\"title\":\"$:/plugins/linonetwo/opened-tiddlers-bar/config\",\"tags\":\"$:/tags/ControlPanel/SettingsTab\",\"caption\":\"<<lingo Name $:/plugins/linonetwo/opened-tiddlers-bar/language/>>\",\"text\":\"\\\\procedure lingo-base() $:/plugins/linonetwo/opened-tiddlers-bar/language/\\n\\n<<lingo Config/Description>>\\n\\n---\\n\\n!! <<lingo PluginConfigs>>\\n\\n;<<lingo Configs/BarHeight/Caption>>\\n:<$edit-text tiddler=\\\"$:/plugins/linonetwo/opened-tiddlers-bar/configs/bar-height\\\" tag=\\\"input\\\" type=\\\"number\\\" step=\\\"1\\\" size=\\\"3\\\" class=\\\"tc-tiddler-bar-height\\\"/>px <<lingo Configs/BarHeight/Description>>\"},\"$:/plugins/linonetwo/opened-tiddlers-bar/configs/bar-height\":{\"title\":\"$:/plugins/linonetwo/opened-tiddlers-bar/configs/bar-height\",\"text\":\"30\"},\"$:/plugins/linonetwo/opened-tiddlers-bar/language/en-GB/Readme\":{\"title\":\"$:/plugins/linonetwo/opened-tiddlers-bar/language/en-GB/Readme\",\"text\":\"\\\\procedure lingo-base() $:/plugins/linonetwo/opened-tiddlers-bar/language/\\n\\n! <<lingo Name>>\\n\\n<<lingo Description>>\\n\\n!! Features\\n\\nUse the middle mouse button or the X button to close the tab.\\n\\nUse Shift + mouse wheel to swipe sideways to view.\\n\\n!! Credits\\n\\nThis plugin is based on [[$:/plugins/bj/storytabs|http://bjtools.tiddlyspot.com/]] , which is in MIT license, thank you, Buggyj!\\n\"},\"$:/plugins/linonetwo/opened-tiddlers-bar/language/en-GB/Name\":{\"title\":\"$:/plugins/linonetwo/opened-tiddlers-bar/language/en-GB/Name\",\"text\":\"Opened Tiddlers Bar\"},\"$:/plugins/linonetwo/opened-tiddlers-bar/language/en-GB/Description\":{\"title\":\"$:/plugins/linonetwo/opened-tiddlers-bar/language/en-GB/Description\",\"text\":\"Provides VSCode style \\\"Opened Tiddlers\\\" top bar\"},\"$:/plugins/linonetwo/opened-tiddlers-bar/language/en-GB/PluginConfigs\":{\"title\":\"$:/plugins/linonetwo/opened-tiddlers-bar/language/en-GB/PluginConfigs\",\"text\":\"Plugin Configs\"},\"$:/plugins/linonetwo/opened-tiddlers-bar/language/en-GB/ConfigDescription\":{\"title\":\"$:/plugins/linonetwo/opened-tiddlers-bar/language/en-GB/ConfigDescription\",\"text\":\"These settings let you customise the behaviour of Opened Tiddlers Bar plugin.\"},\"$:/plugins/linonetwo/opened-tiddlers-bar/language/en-GB/Configs/BarHeight/Caption\":{\"title\":\"$:/plugins/linonetwo/opened-tiddlers-bar/language/en-GB/Configs/BarHeight/Caption\",\"text\":\"Height of the bar\"},\"$:/plugins/linonetwo/opened-tiddlers-bar/language/en-GB/Configs/BarHeight/Description\":{\"title\":\"$:/plugins/linonetwo/opened-tiddlers-bar/language/en-GB/Configs/BarHeight/Description\",\"text\":\"Make the bar taller or shorter. Recommend to set it around 30px.\"},\"$:/plugins/linonetwo/opened-tiddlers-bar/language/zh-Hans/Readme\":{\"title\":\"$:/plugins/linonetwo/opened-tiddlers-bar/language/zh-Hans/Readme\",\"text\":\"\\\\procedure lingo-base() $:/plugins/linonetwo/opened-tiddlers-bar/language/\\n\\n! <<lingo Name>>\\n\\n<<lingo Description>>\\n\\n!! 功能\\n\\n使用中键或 X 按钮关闭标签。\\n\\n使用 Shift + 鼠标滚轮左右滑动查看。\\n\\n!! 鸣谢\\n\\n此插件基于 [[$:/plugins/bj/storytabs|http://bjtools.tiddlyspot.com/]] ,该插件采用 MIT 许可证,感谢 Buggyj!\\n\"},\"$:/plugins/linonetwo/opened-tiddlers-bar/language/zh-Hans/Name\":{\"title\":\"$:/plugins/linonetwo/opened-tiddlers-bar/language/zh-Hans/Name\",\"text\":\"「开启的条目」栏\"},\"$:/plugins/linonetwo/opened-tiddlers-bar/language/zh-Hans/Description\":{\"title\":\"$:/plugins/linonetwo/opened-tiddlers-bar/language/zh-Hans/Description\",\"text\":\"灵感来自 Notion 和 VSCode 的主题\"},\"$:/plugins/linonetwo/opened-tiddlers-bar/language/zh-Hans/PluginConfigs\":{\"title\":\"$:/plugins/linonetwo/opened-tiddlers-bar/language/zh-Hans/PluginConfigs\",\"text\":\"插件设置\"},\"$:/plugins/linonetwo/opened-tiddlers-bar/language/zh-Hans/ConfigDescription\":{\"title\":\"$:/plugins/linonetwo/opened-tiddlers-bar/language/zh-Hans/ConfigDescription\",\"text\":\"通过这些设置,您可以自定义「开启的条目栏」插件的行为。\"},\"$:/plugins/linonetwo/opened-tiddlers-bar/language/zh-Hans/Configs/BarHeight/Caption\":{\"title\":\"$:/plugins/linonetwo/opened-tiddlers-bar/language/zh-Hans/Configs/BarHeight/Caption\",\"text\":\"栏的高度\"},\"$:/plugins/linonetwo/opened-tiddlers-bar/language/zh-Hans/Configs/BarHeight/Description\":{\"title\":\"$:/plugins/linonetwo/opened-tiddlers-bar/language/zh-Hans/Configs/BarHeight/Description\",\"text\":\"使栏变高或变矮。建议将其设置在 30px 左右。\"},\"$:/plugins/linonetwo/opened-tiddlers-bar/Readme\":{\"title\":\"$:/plugins/linonetwo/opened-tiddlers-bar/Readme\",\"text\":\"\\\\procedure lingo-base() $:/plugins/linonetwo/opened-tiddlers-bar/language/\\n\\n<<lingo Readme>>\\n\"},\"$:/plugins/linonetwo/opened-tiddlers-bar/style.css\":{\"title\":\"$:/plugins/linonetwo/opened-tiddlers-bar/style.css\",\"tags\":\"$:/tags/Stylesheet\",\"text\":\"\\\\rules except horizrule dash\\n\\n/**\\n * 由于 Tiddlywiki 会把 base.tid 里的 -- 识别为分隔符,变为 - ,所以如果需要用变量,就用 \\\\rules except horizrule dash\\n */\\n\\n/** 顶部标题栏半透明,别的组件都得根据它下移 */\\nbody.tc-body {\\n --menubar-height: {{$:/plugins/linonetwo/opened-tiddlers-bar/configs/bar-height}}px;\\n}\\n\\n/** make things in $:/tags/AboveStory position fixed, so it will always on the top */\\nsection.story-backdrop .opened-tiddlers-bar-container {\\n position: fixed;\\n top: 0;\\n z-index: 1000;\\n height: var(--menubar-height);\\n width: 100vw;\\n left: 0;\\n\\n overflow-x: auto;\\n white-space: nowrap;\\n overflow: -moz-scrollbars-none;\\n scrollbar-width: none;\\n}\\n.opened-tiddlers-bar {\\n height: var(--menubar-height);\\n}\\nsection.story-backdrop .opened-tiddlers-bar-container::-webkit-scrollbar {\\n display: none;\\n}\\n\\nsection.story-backdrop div.opened-tiddlers-bar div.opened-tiddlers-bar-tabs {\\n display: flex;\\n flex-direction: row;\\n justify-content: flex-start;\\n}\\n/** make it possible to drag the app using this bar in TidGi, when TidGi's titleBar is closed */\\n<% if [[$:/state/titleBarOpened]get[text]match[no]] %>\\ndiv.opened-tiddlers-bar-tabs {\\n width: 90vw;\\n overflow-x: auto;\\n white-space: nowrap;\\n overflow: -moz-scrollbars-none;\\n scrollbar-width: none;\\n}\\ndiv.opened-tiddlers-bar-tabs::-webkit-scrollbar {\\n display: none;\\n}\\ndiv.opened-tiddlers-bar-drag-area {\\n width: 5vw;\\n -webkit-app-region: drag;\\n}\\n\\n/** when hide titlebar and hide sidebar (and on macOS, windows not tested), move bar right to avoid collision with close button on the left top of app */\\n/** move right a bit to avoid collision with close button on macOS when title bar hide */\\n<% if [[$:/state/sideBarOpened]get[text]match[no]] %>\\nsection.story-backdrop {\\n width: 100vw;\\n padding-left: 68px;\\n}\\n<% endif %>\\n<% endif %>\\n\\n/** tiddlers bar */\\nsection.story-backdrop > p > .opened-tiddlers-bar-container, section.story-backdrop > p > .opened-tiddlers-bar-container > div.tc-tab-buttons {\\n width: 100%;\\n margin: 0;\\n display: flex;\\n background: transparent;\\n}\\nsection.story-backdrop > p > .opened-tiddlers-bar-container {\\n background-color: white;\\n backdrop-filter: blur(3px);\\n background: <<colour tab-background-selected>>;\\n}\\n\\n\\ndiv.opened-tiddlers-bar-tabs button.tc-tab {\\n height: calc(100% - 2px);\\n border-radius: 0;\\n margin: 0;\\n padding: 5px 10px;\\n padding-right: 2px;\\n}\\n/** x button */\\ndiv.opened-tiddlers-bar-tabs button.opened-tiddlers-bar-close-button {\\n border: none;\\n border-radius: 0;\\n margin: 0;\\n padding: 0 5px;\\n opacity: 0;\\n background-color: transparent;\\n}\\n/** show x when tab is hovered */\\ndiv.opened-tiddlers-bar-tabs:hover button.opened-tiddlers-bar-close-button {\\n opacity: 1;\\n}\\ndiv.opened-tiddlers-bar-tabs span.tc-eventcatcher {\\n display: inline-block;\\n height: 100%;\\n}\\nsection.story-backdrop div.opened-tiddlers-bar-tabs button.tc-tab:nth-child(2) {\\n margin-left: -1em;\\n}\\ndiv.opened-tiddlers-bar.tc-tab-buttons {\\n padding: 0;\\n margin: 0;\\n}\\n\\n/** 收起侧边栏的按钮 */\\n.tc-topbar-right {\\n top: 18px;\\n}\\n\"},\"$:/plugins/linonetwo/opened-tiddlers-bar/tree\":{\"title\":\"$:/plugins/linonetwo/opened-tiddlers-bar/tree\",\"text\":\"<<tree prefix:\\\"$:/plugins/linonetwo/opened-tiddlers-bar/\\\">>\"},\"$:/plugins/linonetwo/opened-tiddlers-bar/ui\":{\"title\":\"$:/plugins/linonetwo/opened-tiddlers-bar/ui\",\"tags\":\"$:/tags/Global\",\"text\":\"\\\\procedure on-opened-tiddlers-bar-item-middle-click()\\n<$list filter=\\\"[<event-mousebutton>match[middle]]\\\">\\n<$action-sendmessage $message=\\\"tm-close-tiddler\\\" $param=<<currentTab>>/>\\n</$list>\\n\\\\end\\n\\n\\\\procedure opened-tiddlers-bar()\\n\\\\whitespace trim\\n<div class=\\\"tc-tab-buttons opened-tiddlers-bar\\\" >\\n <div class=\\\"opened-tiddlers-bar-drag-area\\\" />\\n <div class=\\\"opened-tiddlers-bar-tabs\\\">\\n <$list filter=\\\"[list[$:/StoryList]]\\\" history=\\\"$:/HistoryList\\\" variable=\\\"currentTab\\\">\\n <$reveal type=\\\"match\\\" state=\\\"$:/HistoryList!!current-tiddler\\\" text=<<currentTab>>>\\n <$eventcatcher $auxclick=<<on-opened-tiddlers-bar-item-middle-click>>>\\n <$button to=<<currentTab>> class=\\\"tc-tab-selected tc-tab\\\">\\n <$view tiddler=<<currentTab>> field=\\\"name\\\">\\n <$view tiddler=<<currentTab>> field=\\\"title\\\" /></$view>\\n <$button message=\\\"tm-close-tiddler\\\" param=<<currentTab>> class=\\\"tc-image-button opened-tiddlers-bar-close-button\\\">\\n ×\\n </$button>\\n </$button>\\n </$eventcatcher>\\n </$reveal>\\n <$reveal type=\\\"nomatch\\\" state=\\\"$:/HistoryList!!current-tiddler\\\" text=<<currentTab>>>\\n <$eventcatcher $auxclick=<<on-opened-tiddlers-bar-item-middle-click>>>\\n <$button to=<<currentTab>> class=\\\"tc-tab\\\" >\\n <$view tiddler=<<currentTab>> field=\\\"name\\\">\\n <$view tiddler=<<currentTab>> field=\\\"title\\\" />\\n </$view>\\n <$button message=\\\"tm-close-tiddler\\\" param=<<currentTab>> class=\\\"tc-image-button opened-tiddlers-bar-close-button\\\">\\n ×\\n </$button>\\n </$button>\\n </$eventcatcher>\\n </$reveal>\\n </$list>\\n </div>\\n <div class=\\\"opened-tiddlers-bar-drag-area\\\" />\\n</div>\\n\\\\end\\n\"}}}", "title": "$:/plugins/linonetwo/opened-tiddlers-bar", "type": "application/json", - "version": "0.3.1", - "Modern.TiddlyDev#SHA256-Hashed": "719b62d2c1e2c88a1980820aea3c39207333150b8b34444b5df451123041430b" + "version": "1.0.0", + "Modern.TiddlyDev#SHA256-Hashed": "b458c5d7dcb3ade6e6e17b81ee48b3c5e42657a48a3cf4d1090a7138dc864773" } ] \ No newline at end of file diff --git a/tiddlers/TCTSystem/themes/linonetwo/itonnote.json b/tiddlers/TCTSystem/themes/linonetwo/itonnote.json index 2ea026a9..1eb422d9 100644 --- a/tiddlers/TCTSystem/themes/linonetwo/itonnote.json +++ b/tiddlers/TCTSystem/themes/linonetwo/itonnote.json @@ -1,17 +1,17 @@ [ { "author": "LinOnetwo", - "core-version": ">=5.3.1", + "core-version": ">=5.3.3", "dependents": "$:/themes/tiddlywiki/vanilla", "description": "Notion and VSCode inspired theme", - "list": "readme settings tree", + "list": "readme config tree", "name": "ItonNote Theme", "plugin-priority": "1", "plugin-type": "theme", - "text": "{\"tiddlers\":{\"$:/themes/linonetwo/itonnote/base\":{\"title\":\"$:/themes/linonetwo/itonnote/base\",\"tags\":\"$:/tags/Stylesheet\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"/*\\n** Start with the vanilla theme and normalize CSS reset, and then belay some of its effects\\n*/\\n\\n{{$:/themes/tiddlywiki/vanilla/base}}\\n\\n<$importvariables filter=\\\"[[$:/themes/tiddlywiki/vanilla/base]]\\\">\\n\\n/** fix native tw table overflow, should not affect other table widget wrapped within div */\\n.tc-tiddler-body > table {\\n display: block;\\n overflow: auto;\\n}\\n.tc-tiddler-body > table tbody {\\n display: table;\\n width: 100%;\\n}\\n\\n/**\\n 代码样式\\n*/\\n\\np > code, li > code, code[data-slate-leaf=true] {\\n box-decoration-break: clone;\\n padding: .1rem .3rem .2rem;\\n border-radius: .2rem;\\n background: <<colour code-background>>;\\n}\\n\\n.hljs {\\n background-color: <<colour page-background>>;\\n border: none;\\n box-shadow: <<colour sidebar-foreground-shadow>>;\\n}\\n\\npre {\\n word-break: break-all;\\n}\\n\\ndiv.cm-code-block-line, div.latex {\\n background: <<colour button-background>>;\\n}\\ndiv.cm-code-block-line:hover, div.latex:hover {\\n background: <<colour button-background-hover>>;\\n}\\n\\n/**\\n 卡片、编辑器和背景样式\\n*/\\n\\n/** 给卡片加上阴影 */\\n.tc-tiddler-frame {\\n box-shadow: <<colour sidebar-foreground-shadow>>;\\n}\\n\\ndiv.tc-tiddler-title {\\n background: <<colour tiddler-title-background>>;\\n backdrop-filter: blur(10px);\\n z-index: 890;\\n position: sticky;\\n}\\n/** 编辑器工具栏 */\\n.tc-editor-toolbar {\\n background: <<colour tiddler-editor-background>>;\\n backdrop-filter: blur(10px);\\n position: sticky;\\n z-index: 890;\\n}\\n.tc-tiddler-preview {\\n overflow: unset;\\n}\\n.tc-block-dropdown {\\n z-index: 1001;\\n}\\n\\n/** 去掉编辑模式下的很多边框 */\\n/** 去掉预览的边框,除了左边框 */\\n.tc-tiddler-preview-preview {\\n border: none;\\n padding-left: 10px;\\n border-left: 1px solid <<colour tiddler-editor-border>>;\\n}\\n/** 去掉代码编辑器的边框和底色,为所见即所得编辑做准备 */\\n.CodeMirror {\\n border: none !important;\\n background-color: unset !important;\\n}\\n/** 去掉所有其它文本编辑框的边框 */\\n.tc-tiddler-frame input.tc-edit-texteditor {\\n border: none;\\n background: unset;\\n}\\n/** 去掉标题下面的 tag 栏的边框 */\\n.tc-edit-tags {\\n border: none;\\n border-bottom: 1px solid <<colour tiddler-editor-border>>;\\n padding: 4px 8px 4px 8px;\\n}\\n\\n/** 让预览状态下的属性编辑框不那么夺目 */\\n.tc-tiddler-view-frame .tc-edit-field {\\n background-color: unset !important;\\n}\\n\\n/**\\n\\t自定义字体\\n*/\\n* {\\n font-variant-ligatures: contextual;\\n font-display: swap;\\n}\\n\\n/* Only use fira code in code block */\\ncode { font-family: 'Fira Code VF', monospace; }\\n\\n/**\\n 按钮样式\\n*/\\n\\n/** 除了工具栏上的按钮以外,其它按钮 */\\nbutton:not(.tc-btn-invisible) {\\n color: <<colour button-foreground>>;\\n padding: 5px 10px;\\n\\tmargin: 2px;\\n border-radius: 5px;\\n border: <<colour button-border>>;\\n cursor: pointer;\\n /** hover动画 */\\n transition: background-color 0.2s;\\n}\\nbutton:not(.tc-btn-invisible):hover {\\n\\tbackground-color: <<colour button-background-hover>>;\\n}\\n\\nbutton:not(.tc-btn-invisible) svg {\\n\\tfill: <<colour tab-foreground>>;\\n}\\nbutton:disabled {\\n cursor: not-allowed;\\n opacity: 0.3;\\n}\\n\\n/** 收合栏,修复由于 button:not(.tc-tab-selected) 带来的样式。没法在那边 not ,因为 not 列表太长会导致优先级过高 */\\nbutton.tc-fold-banner {\\n position: absolute;\\n padding: 0;\\n margin: 0;\\n background: none;\\n border: none;\\n width: 23px;\\n text-align: center;\\n margin-left: -35px;\\n top: 6px;\\n bottom: 6px;\\n}\\nbutton.tc-unfold-banner {\\n position: unset;\\n padding: 0;\\n margin: 0;\\n background: none;\\n border: none;\\n width: 100%;\\n width: calc(100% + 2px);\\n text-align: center;\\n border-top: 2px solid #f8f8f8;\\n margin-top: 4px;\\n}\\n\\n\\n/** Tab 上的按钮 */\\n.tc-tab-buttons > button {\\n\\tborder-radius: 0px;\\n}\\n.tc-tab-buttons button:not(.tc-tab-selected) {\\n\\tfill: none;\\n\\tbackground-color: <<colour tab-background>>;\\n\\tcolor: <<colour tab-foreground>>;\\n\\tborder: none;\\n border-radius: 0px;\\n}\\n.tc-tab-buttons button:not(.tc-tab-selected):hover {\\n\\tbackground-color: <<colour button-background-hover>>;\\n}\\n.tc-sidebar-lists .tc-tab-buttons button.tc-tab-selected {\\n\\tborder: none;\\n\\tborder-bottom: 2px solid silver;\\n border-radius: 0px;\\n}\\n.tc-tab-buttons button.tc-tab-selected {\\n\\tborder: none;\\n\\tborder-bottom: 2px solid silver;\\n\\tbackground-color: #f4f4f4;\\n border-radius: 0px;\\n}\\n\\n/** 标签 */\\nbutton.tc-tag-label, span.tc-tag-label {\\n border-radius: 3px;\\n background-color: <<colour tag-background>>;\\n color: <<colour foreground>>;\\n /** hover动画 */\\n transition: background-color 0.2s;\\n /** 适配长标题作为标签的情况 */\\n white-space: normal;\\n margin-top: 0.1em;\\n margin-bottom: 0.1em;\\n}\\nbutton.tc-tag-label, span.tc-tag-label:hover {\\n background-color: <<colour tag-background-hover>>;\\n}\\n\\n/**\\n 链接样式\\n*/\\n\\na.tc-tiddlylink, a.tc-tiddlylink:hover {\\n padding: 2px;\\n padding-bottom: 0;\\n white-space: normal;\\n word-break: break-all;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n font-weight: bold;\\n line-height: 1.3;\\n color: <<colour tiddler-link-foreground>>;\\n border-bottom: <<colour tiddler-link-underline>>;\\n text-decoration: none;\\n /** hover动画 */\\n transition: background 120ms ease-in 0s;\\n}\\na.tc-tiddlylink:hover {\\n background-color: <<colour page-background>>;\\n color: <<colour tiddler-link-foreground>>;\\n}\\n\\na.tc-tiddlylink-external, a.tc-tiddlylink-external:visited {\\n\\tpadding: 2px;\\n padding-bottom: 0px;\\n\\tborder-bottom: <<colour external-link-underline>>;\\n\\ttext-decoration: none;\\n box-decoration-break: clone;\\n font-weight: bold;\\n color: <<external-link-foreground>>;\\n}\\n\\na.tc-tiddlylink-external:hover {\\n background-color: <<colour external-link-background-hover>>;\\n background-image: <<colour external-link-background-clip-image>>;\\n background-clip: border-box;\\n -webkit-background-clip: text;\\n -webkit-text-fill-color: transparent;\\n}\\n\\n/** 预览状态标签下拉列表里的链接 */\\n.tc-drop-down a.tc-tiddlylink:hover {\\n background-color: <<colour page-background>>;\\n color: <<colour tiddler-link-foreground>>;\\n}\\n/** 编辑器标签下拉列表当前鼠标悬浮状态的颜色 */\\n.tc-block-dropdown a {\\n transition: background-color 0.2s;\\n}\\n.tc-block-dropdown a:hover {\\n background-color: <<colour dropdown-background>>;\\n}\\n\\n/** 带链接的 Kookma badge,为了适应彩色背景,需要把链接默认蓝色背景色去掉,变成白色,与主题无关 */\\n.dbadge a,.dbadge a:hover {\\n color: white !important;\\n border: unset;\\n -webkit-text-fill-color: unset !important;\\n font-weight: unset;\\n text-decoration: none;\\n}\\n\\na.tc-tiddlylink.tc-tiddlylink-resolves.tc-plugin-info.tc-popup-handle.tc-popup-absolute:hover {\\n\\tbackground-color: <<colour modal-border>>;\\n}\\n\\n/**\\n\\t侧边栏\\n*/\\n\\n.tc-page-controls {\\n display: flex;\\n flex-wrap: wrap;\\n}\\n\\n.tc-site-title {\\n\\tfont-size: 1.75em;\\n}\\n\\n.tc-sidebar-scrollable {\\n\\toverscroll-behavior: contain;\\n\\toverflow: -moz-scrollbars-none;\\n}\\n.tc-sidebar-scrollable::-webkit-scrollbar {\\n\\twidth: 0 !important\\n}\\n\\n/** 顶栏 */\\n.tc-topbar {\\n z-index: 1001;\\n}\\n\\n@media (min-width: <<sidebarbreakpoint>>) {\\n\\t.tc-sidebar-scrollable {\\n\\t padding: 40px 10px 0px 15px;\\n\\t}\\n}\\n\\n@media (max-width: <<sidebarbreakpoint>>) {\\n\\t.tc-sidebar-header {\\n\\t margin-top: 20px;\\n /** fix mobile left side still have width after close */\\n padding-left: 0;\\n padding-right: 0;\\n\\t}\\n .tc-sidebar-header > .tc-reveal {\\n padding-left: 10px;\\n padding-right: 10px;\\n }\\n /** solve collision with tc-sidebar-scrollable in mobile */\\n .tc-topbar {\\n z-index: 1002;\\n }\\n}\\n\\n\\n/** 标题 */\\n\\n.tc-site-subtitle {\\n margin-top: 5px;\\n}\\n\\n/**\\n\\t卡片流展示优化\\n*/\\n@media (max-width: <<sidebarbreakpoint>>) {\\n\\t.tc-story-river {\\n\\t padding-top: 42px;\\n\\t}\\n}\\n\\n/**\\n\\t宽屏时隐藏顶部 MenuBar\\n*/\\n\\n@media (min-width: <<sidebarbreakpoint>>) {\\n\\tnav.tc-menubar {\\n\\tdisplay: none !important;\\n\\t}\\n}\\n\\n/**\\n 去除按钮、搜索框选中时的蓝框\\n*/\\nbutton:focus, button:active {\\n outline: none !important;\\n box-shadow: none;\\n}\\n\\n[placeholder]{\\n text-overflow:ellipsis;\\n}\\n::placeholder{\\n text-overflow:ellipsis;\\n}\\ninput[type=search] {\\n appearance: none;\\n -webkit-appearance: none;\\n}\\n\\n* {\\n outline: none;\\n outline-color: none;\\n -webkit-font-smoothing: antialiased;\\n}\\n*:focus {\\n outline: none;\\n}\\n/** 去除输入框默认的边框 */\\ntextarea, input[type=text], input[type=search], input[type=\\\"\\\"], input:not([type]) {\\n border: 2px solid <<colour tiddler-editor-border>>;\\n background: <<colour page-background>>;\\n}\\n\\n/*\\n** TW-Locator and Bi-Link list\\n*/\\n.tc-table-of-contents {\\n max-width: 100%;\\n max-height: 200vh;\\n overflow: auto;\\n}\\n.tc-table-of-contents::-webkit-scrollbar {\\n display: none;\\n}\\n\\n/**\\n* Code Mirror\\n*/\\n.cm-code-block-line {\\n background-color: transparent;\\n}\\n\\n/**\\n* Hide toolbar buttons if not hover\\n* Disable this effect on mobile, otherwise it will be hard to find the button\\n* From tb_demo_onhover-toolbar-styles\\n*/\\n@media (min-width: <<sidebarbreakpoint>>) {\\n .tc-tiddler-frame .tc-titlebar button {\\n opacity: 0;\\n transition: opacity .5s ease-in-out;\\n }\\n .tc-tiddler-frame:hover .tc-titlebar button {\\n zoom: 1;\\n filter: alpha(opacity=100);\\n opacity: 1;\\n }\\n}\\n\\n/** fix https://github.com/Jermolene/TiddlyWiki5/discussions/5821 */\\nvideo::-webkit-media-controls-timeline {\\n width: 200px;\\n}\\n\\n@media (min-width: <<sidebarbreakpoint>>) {\\n div.tc-page-container .tc-sidebar-scrollable {\\n width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth}};\\n padding-left: 2em;\\n }\\n}\\n<$reveal type=\\\"match\\\" state=\\\"$:/state/sidebar\\\" text=\\\"no\\\">\\n div.tc-page-container .tc-sidebar-scrollable {\\n /**\\n * Compage-control-below-pagepletely hide sidebar dom node when sidebar is not opened.\\n * To fix sometimes it is still 20px width after close. \\n */\\n display: none;\\n }\\n</$reveal>\\n/** Sidebar on mobile, make it sidebar instead of top bar */\\n@media (max-width: <<sidebarbreakpoint>>) {\\n .tc-sidebar-scrollable {\\n height: 100vh;\\n /** show storyflow on the side, showing this is a sidebar, not the front-page */\\n max-width: 90vw;\\n z-index: 1001;\\n position: fixed;\\n overflow: auto;\\n overflow: overlay;\\n top: 0;\\n background: <<colour page-background>>;\\n }\\n /** make close sidebar button bigger */\\n .tc-topbar.tc-topbar-right > button.tc-hide-sidebar-btn,button.tc-show-sidebar-btn {\\n width: 2em;\\n height: 2em;\\n box-sizing: content-box;\\n border-bottom-right-radius: 50%;\\n }\\n /** move sidebar close button to top right */\\n span.tc-topbar.tc-topbar-right {\\n top: 0px;\\n right: 0px;\\n position: absolute;\\n }\\n span.tc-topbar.tc-topbar-right > button.tc-hide-sidebar-btn {\\n top: 0px;\\n right: 0px;\\n position: fixed;\\n background: rgba(255,255,255,0.3);\\n backdrop-filter: blur(3px);\\n /** make close side bar button a long vertical bar */\\n border-radius: 0px;\\n height: 100vh;\\n }\\n span.tc-topbar.tc-topbar-right > button.tc-show-sidebar-btn {\\n position: fixed;\\n left: 0;\\n top: 0;\\n background: rgba(255,255,255,0.3);\\n backdrop-filter: blur(3px);\\n <$reveal type=\\\"match\\\" state=\\\"$:/info/tidgi-mobile\\\" text=\\\"yes\\\">\\n /** fix android status bar cover the tc-show-sidebar-btn */\\n height: 4em;\\n </$reveal>\\n }\\n span.tc-topbar.tc-topbar-right > button.tc-show-sidebar-btn > svg.tc-image-chevron-left.tc-image-button, span.tc-topbar.tc-topbar-right > button.tc-hide-sidebar-btn > svg.tc-image-chevron-right.tc-image-button {\\n transform: rotate(180deg);\\n }\\n /** make opened-tiddlers-bar move right to not be cover by show-sidebar-btn */\\n section.story-backdrop .opened-tiddlers-bar-container div.opened-tiddlers-bar.tc-tab-buttons {\\n margin-left: calc(8px * 2 + 32px);\\n <$reveal type=\\\"match\\\" state=\\\"$:/info/tidgi-mobile\\\" text=\\\"yes\\\">\\n /** fix android status bar cover the opened-tiddlers-bar */\\n margin-top: 30px;\\n </$reveal>\\n }\\n}\\n/** fix z-index */\\n.tc-modal-wrapper {\\n z-index: 1400;\\n}\\n\\n/** fix long badge on mobile */\\n.dbadge > span {\\n white-space: initial;\\n}\\n\\n</$importvariables>\\n\"},\"$:/themes/tiddlywiki/vanilla/options/sidebarlayout\":{\"title\":\"$:/themes/tiddlywiki/vanilla/options/sidebarlayout\",\"text\":\"fluid-fixed\"},\"$:/config/themes/itonnote/separate-title-and-button\":{\"title\":\"$:/config/themes/itonnote/separate-title-and-button\",\"text\":\"hide\"},\"$:/config/themes/itonnote/sidebar-search\":{\"title\":\"$:/config/themes/itonnote/sidebar-search\",\"text\":\"hide\"},\"$:/themes/linonetwo/itonnote/firacode.css\":{\"title\":\"$:/themes/linonetwo/itonnote/firacode.css\",\"text\":\"/** generated by `base64 -i FiraCode-VF.woff2 -o o.txt` and copy here. Only VF is needed */\\n@font-face {\\n font-family: 'Fira Code VF';\\n src: url('data:@file/octet-stream;base64,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');\\n}\\n\",\"tags\":\"$:/tags/Stylesheet\",\"type\":\"text/plain\"},\"$:/palettes/Notion\":{\"title\":\"$:/palettes/Notion\",\"tags\":\"$:/tags/Palette $:/themes/linonetwo/itonnote/readme\",\"type\":\"application/x-tiddler-dictionary\",\"name\":\"Notion\",\"description\":\"Notion inspired light and modern colors\",\"color-scheme\":\"light\",\"text\":\"alert-background: #ffe476\\nalert-border: #b99e2f\\nalert-highlight: #881122\\nalert-muted-foreground: #b99e2f\\nbackground: #ffffff\\nblockquote-bar: <<colour muted-foreground>>\\nbutton-background: rgba(0, 0, 0, 0.03)\\nbutton-background-hover: rgba(0, 0, 0, 0.05)\\nbutton-foreground: #333\\nbutton-border: none\\ncode-background: linear-gradient(19deg,#DDD,#EEE)\\ncode-border: none\\ncode-foreground: #333\\ndiff-delete-background: #ffc9c9\\ndiff-delete-foreground: <<colour foreground>>\\ndiff-equal-background: \\ndiff-equal-foreground: <<colour foreground>>\\ndiff-insert-background: #aaefad\\ndiff-insert-foreground: <<colour foreground>>\\ndiff-invisible-background: \\ndiff-invisible-foreground: <<colour muted-foreground>>\\ndirty-indicator: #ff0000\\ndownload-background: #34c734\\ndownload-foreground: <<colour background>>\\ndragger-background: <<colour foreground>>\\ndragger-foreground: <<colour background>>\\ndropdown-background: #fff\\ndropdown-border: <<colour muted-foreground>>\\ndropdown-tab-background-selected: rgba(55, 53, 47, 0.08)\\ndropdown-tab-background: #ececec\\ndropzone-background: rgba(0,200,0,0.7)\\nexternal-link-background-hover: #333\\nexternal-link-background-clip-image: linear-gradient(19deg, #333 0%, #CCC 100%)\\nexternal-link-background-visited: inherit\\nexternal-link-background: inherit\\nexternal-link-foreground-hover: inherit\\nexternal-link-foreground-visited: #666\\nexternal-link-foreground: #666\\nexternal-link-underline: 1px solid #8357d7\\nforeground: #333333\\nmessage-background: #ecf2ff\\nmessage-border: #cfd6e6\\nmessage-foreground: #547599\\nmodal-backdrop: <<colour foreground>>\\nmodal-background: <<colour background>>\\nmodal-border: #999999\\nmodal-footer-background: #f5f5f5\\nmodal-footer-border: #dddddd\\nmodal-header-border: #eeeeee\\nmuted-foreground: #bbb\\nnotification-background: #ffffdd\\nnotification-border: #999999\\npage-background: #fafafa\\npre-background: #f5f5f5\\npre-border: #cccccc\\nprimary: rgb(46, 170, 220)\\nselection-background:\\nselection-foreground:\\nselect-tag-background:\\nselect-tag-foreground:\\nsidebar-button-foreground: <<colour foreground>>\\nsidebar-controls-foreground-hover: #000000\\nsidebar-controls-foreground: #aaaaaa\\nsidebar-foreground-shadow: rgba(15, 15, 15, 0.1) 0px 0px 5px 1px, rgba(15, 15, 15, 0.1) 0px 2px 10px\\nsidebar-foreground: #acacac\\nsidebar-muted-foreground-hover: #444444\\nsidebar-muted-foreground: #c0c0c0\\nsidebar-tab-background-selected: #f4f4f4\\nsidebar-tab-background: #e0e0e0\\nsidebar-tab-border-selected: <<colour tab-border-selected>>\\nsidebar-tab-border: <<colour tab-border>>\\nsidebar-tab-divider: #e4e4e4\\nsidebar-tab-foreground-selected:\\nsidebar-tab-foreground: <<colour tab-foreground>>\\nsidebar-tiddler-link-foreground-hover: #444444\\nsidebar-tiddler-link-foreground: #999999\\nsite-title-foreground: <<colour tiddler-title-foreground>>\\nstatic-alert-foreground: #aaaaaa\\ntab-background-selected: rgba(255, 255, 255, 0.3)\\ntab-background: transparent\\ntab-border-selected: #d8d8d8\\ntab-border: #cccccc\\ntab-divider: #d8d8d8\\ntab-foreground-selected: <<colour tab-foreground>>\\ntab-foreground: #666666\\ntable-border: #dddddd\\ntable-footer-background: #a8a8a8\\ntable-header-background: #f0f0f0\\ntag-background: rgba(92, 112, 128, 0.9)\\ntag-background-hover: rgba(92, 112, 128, 1)\\ntag-foreground: <<colour foreground>>\\ntiddler-background: <<colour background>>\\ntiddler-border: <<colour background>>\\ntiddler-controls-foreground-hover: #888888\\ntiddler-controls-foreground-selected: #444444\\ntiddler-controls-foreground: #cccccc\\ntiddler-editor-background: rgba(255, 255, 255, 0.5)\\ntiddler-editor-border-image: #ffffff\\ntiddler-editor-border: rgba(242, 241, 238, 0.6)\\ntiddler-editor-fields-even: #eee\\ntiddler-editor-fields-odd: #fff\\ntiddler-info-background: #f8f8f8\\ntiddler-info-border: #dddddd\\ntiddler-info-tab-background: #f8f8f8\\ntiddler-link-background: <<colour background>>\\ntiddler-link-foreground: <<colour button-foreground>>\\ntiddler-link-underline: 1px solid rgba(55, 53, 47, 0.16)\\ntiddler-subtitle-foreground: #c0c0c0\\ntiddler-title-foreground: #182955\\ntiddler-title-background: rgba(255, 255, 255, 0.5)\\ntoolbar-new-button:\\ntoolbar-options-button:\\ntoolbar-save-button:\\ntoolbar-info-button:\\ntoolbar-edit-button:\\ntoolbar-close-button:\\ntoolbar-delete-button:\\ntoolbar-cancel-button:\\ntoolbar-done-button:\\nuntagged-background: #999999\\nvery-muted-foreground: #888888\\nwikilist-background: #e5e5e5\\nwikilist-item: #fff\\nwikilist-info: #000\\nwikilist-title: #666\\nwikilist-title-svg: <<colour wikilist-title>>\\nwikilist-url: #aaa\\nwikilist-button-open: #4fb82b\\nwikilist-button-open-hover: green\\nwikilist-button-reveal: #5778d8\\nwikilist-button-reveal-hover: blue\\nwikilist-button-remove: #d85778\\nwikilist-button-remove-hover: red\\nwikilist-toolbar-background: #d3d3d3\\nwikilist-toolbar-foreground: #888\\nwikilist-droplink-dragover: rgba(255,192,192,0.5)\\nwikilist-button-background: #acacac\\nwikilist-button-foreground: #000\"},\"$:/themes/linonetwo/itonnote/plugin-modification\":{\"title\":\"$:/themes/linonetwo/itonnote/plugin-modification\",\"tags\":\"$:/tags/Stylesheet\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"/*\\n** Change some style of plugins\\n*/\\n\\n/*\\n** Shiraz\\n*/\\n.tbl-container {\\n max-width: 100%;\\n max-height: 100vh;\\n overflow: auto;\\n}\\n\\n/**\\n* opened tiddlers bar\\n*/\\nsection.story-backdrop > p, section.story-backdrop > p > div.tc-tab-buttons {\\n background-color: #fafafa33 !important;\\n}\\n\"},\"$:/themes/linonetwo/itonnote/readme\":{\"title\":\"$:/themes/linonetwo/itonnote/readme\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"Notion and VSCode inspired theme. Adapted for light theme.\\n\\nIf the sidebar search box is hidden, the core entry `$:/core/ui/SideBarSegments/search`, is modified, removing the tag `$:/tags/SideBarSegment`.\"},\"$:/themes/linonetwo/itonnote/separate-title-and-button\":{\"title\":\"$:/themes/linonetwo/itonnote/separate-title-and-button\",\"tags\":\"$:/tags/Stylesheet\",\"text\":\"<$reveal state=\\\"$:/config/themes/itonnote/separate-title-and-button\\\" type=\\\"match\\\" text=\\\"show\\\">\\n\\n/**\\n\\t让标题与按钮分隔开。\\n*/\\n.tc-titlebar h2 {\\n\\tdisplay: table-header-group;\\n\\tword-wrap:break-word;\\n\\tword-break:break-all;\\n}\\n\\n</$reveal>\"},\"$:/themes/linonetwo/itonnote/settings\":{\"title\":\"$:/themes/linonetwo/itonnote/settings\",\"tags\":\"$:/tags/ControlPanel/SettingsTab\",\"caption\":\"ItonNote Themes\",\"text\":\"These settings let you customise the behaviour of ItonNote themes.\\n\\n----\\n\\n<$list filter=\\\"[[$:/language]get[text]removeprefix[$:/languages/]else[en-GB]]\\\" variable=\\\"lang\\\">\\n<$list filter=\\\"[<lang>search[zh]]\\\">\\n\\n<$checkbox tiddler=\\\"$:/core/ui/SideBarSegments/search\\\" tag=\\\"$:/tags/SideBarSegment\\\"> 显示侧边栏搜索框。</$checkbox>\\n\\n* <$checkbox tiddler=\\\"$:/config/themes/itonnote/sidebar-search\\\" field=\\\"text\\\" checked=\\\"show\\\" unchecked=\\\"hide\\\" default=\\\"hide\\\">显示侧边栏搜索框的按钮。</$checkbox>\\n\\n<$checkbox tiddler=\\\"$:/config/themes/itonnote/separate-title-and-button\\\" field=\\\"text\\\" checked=\\\"show\\\" unchecked=\\\"hide\\\" default=\\\"hide\\\">优化显示,标题过长时与按钮错开。</$checkbox>\\n\\n</$list>\\n\\n<$list filter=\\\"[<lang>!search[zh]]\\\">\\n\\n<$checkbox tiddler=\\\"$:/core/ui/SideBarSegments/search\\\" tag=\\\"$:/tags/SideBarSegment\\\"> Sidebar search box, turned on by default, hidden if unchecked. Hiding will hide the content below with it.</$checkbox>\\n\\n* <$checkbox tiddler=\\\"$:/config/themes/itonnote/sidebar-search\\\" field=\\\"text\\\" checked=\\\"show\\\" unchecked=\\\"hide\\\" default=\\\"hide\\\"> Button to display the search box in the sidebar. </$checkbox>\\n\\n<$checkbox tiddler=\\\"$:/config/themes/itonnote/separate-title-and-button\\\" field=\\\"text\\\" checked=\\\"show\\\" unchecked=\\\"hide\\\" default=\\\"hide\\\"> Optimize the display, staggered with the button when the title is too long </$checkbox>\\n\\n</$list>\\n</$list>\"},\"$:/themes/linonetwo/itonnote/sidebar-search\":{\"title\":\"$:/themes/linonetwo/itonnote/sidebar-search\",\"tags\":\"$:/tags/Stylesheet\",\"text\":\"<$reveal state=\\\"$:/config/themes/itonnote/sidebar-search\\\" type=\\\"match\\\" text=\\\"hide\\\">\\n\\n/** 隐藏没用的侧边栏的搜索栏按钮 */\\n.tc-sidebar-search > p > div > span > button {\\n\\tdisplay: none;\\n}\\n\\n</$reveal>\"},\"$:/themes/linonetwo/itonnote/sidebarWidth.css\":{\"title\":\"$:/themes/linonetwo/itonnote/sidebarWidth.css\",\"text\":\"div.tc-page-container{--scrollbar-width:calc(100vw - 100%)}.tc-sidebar-scrollable{max-width:calc(100vw - (8px * 2 + 2em + var(--scrollbar-width)))}\",\"tags\":\"$:/tags/Stylesheet\",\"type\":\"text/css\"},\"$:/core/templates/static.template.css\":{\"title\":\"$:/core/templates/static.template.css\",\"text\":\"<!-- from the tiddlywiki repo, core/templates/static.template.css.tid -->\\n\\n{{$:/boot/boot.css||$:/core/templates/wikified-tiddler}}\\n\\n{{$:/core/ui/PageStylesheet||$:/core/templates/wikified-tiddler}}\\n\\n<!-- override the core tiddler to add this -->\\n\\n{{$:/themes/linonetwo/itonnote/staticTemplateStyle.css||$:/core/templates/wikified-tiddler}}\"},\"$:/themes/linonetwo/itonnote/staticTemplateStyle.css\":{\"title\":\"$:/themes/linonetwo/itonnote/staticTemplateStyle.css\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"<!-- shouldn't add tags: $:/tags/Stylesheet otherwise it will affect non static mode -->\\n<$importvariables filter=\\\"[[$:/themes/tiddlywiki/vanilla/base]]\\\">\\n/* Hide sidebar in static template on mobile\\n Normally the sidebar will hide using js in itonnote plugin. But in static template there is no js in static template\\n*/\\n@media (max-width: <<sidebarbreakpoint>>) {\\n .tc-body {\\n display: flex;\\n flex-direction: column;\\n justify-content: flex-start;\\n align-items: stretch;\\n }\\n .tc-sidebar-scrollable {\\n height: auto;\\n position: unset;\\n width: 100%;\\n padding-left: 20px;\\n }\\n}\\n<!-- fix width related css variable not set in static mode -->\\n@media (min-width: <<sidebarbreakpoint>>) {\\n .tc-sidebar-scrollable {\\n width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth}};\\n max-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth}};\\n }\\n}\\n</$importvariables>\\n\"},\"$:/themes/linonetwo/itonnote/tree\":{\"title\":\"$:/themes/linonetwo/itonnote/tree\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"<<tree prefix:\\\"$:/themes/linonetwo/itonnote/\\\">>\"},\"$:/themes/linonetwo/itonnote/variables.css\":{\"title\":\"$:/themes/linonetwo/itonnote/variables.css\",\"text\":\"body.tc-body{--menubar-height:27px}div.tc-tiddler-title{top:var(--menubar-height)}.tc-editor-toolbar{top:calc(var(--menubar-height) + 50px)}\",\"tags\":\"$:/tags/Stylesheet\",\"type\":\"text/css\"}}}", + "text": "{\"tiddlers\":{\"$:/themes/linonetwo/itonnote/base\":{\"title\":\"$:/themes/linonetwo/itonnote/base\",\"tags\":\"$:/tags/Stylesheet\",\"text\":\"\\\\rules except horizrule dash\\n\\n/**\\n * 由于 Tiddlywiki 会把 base.tid 里的 -- 识别为分隔符,变为 - ,所以如果需要用变量,就用 \\\\rules except horizrule dash\\n */\\n/*\\n** Start with the vanilla theme and normalize CSS reset, and then belay some of its effects\\n*/\\n\\n{{$:/themes/tiddlywiki/vanilla/base}}\\n\\n<$importvariables filter=\\\"[[$:/themes/tiddlywiki/vanilla/base]]\\\">\\n\\n/** fix native tw table overflow, should not affect other table widget wrapped within div */\\n.tc-tiddler-body > table {\\n display: block;\\n overflow: auto;\\n}\\n.tc-tiddler-body > table tbody {\\n display: table;\\n width: 100%;\\n}\\n\\n/**\\n 代码样式\\n*/\\n\\np > code, li > code, code[data-slate-leaf=true] {\\n box-decoration-break: clone;\\n padding: .1rem .3rem .2rem;\\n border-radius: .2rem;\\n background: <<colour code-background>>;\\n}\\n\\n.hljs {\\n background-color: <<colour page-background>>;\\n border: none;\\n box-shadow: <<colour sidebar-foreground-shadow>>;\\n}\\n\\npre {\\n word-break: break-all;\\n}\\n\\ndiv.cm-code-block-line, div.latex {\\n background: <<colour button-background>>;\\n}\\ndiv.cm-code-block-line:hover, div.latex:hover {\\n background: <<colour button-background-hover>>;\\n}\\n\\n/**\\n 卡片、编辑器和背景样式\\n*/\\n\\n/** 给卡片加上阴影 */\\n.tc-tiddler-frame {\\n box-shadow: <<colour sidebar-foreground-shadow>>;\\n}\\n\\n/** 优化标题区域在长条目里的显示,磁吸顶部不隐藏,查看模式和编辑模式可分别开启。 */\\ndiv.tc-tiddler-title {\\n background: <<colour tiddler-title-background>>;\\n}\\n<% if [[$:/themes/tiddlywiki/vanilla/options/stickytitles]get[text]match[yes]] %>\\ndiv.tc-tiddler-title {\\n backdrop-filter: blur(10px);\\n z-index: 900;\\n position: sticky;\\n}\\n/** fix menubar with sticky title https://github.com/Jermolene/TiddlyWiki5/issues/4471#issuecomment-594456486*/\\ndiv.tc-tiddler-title {\\n top: calc(var(--menubar-height) - 1px);\\n}\\n<% endif %>\\n<% if [[$:/themes/linonetwo/itonnote/configs/sticky-edit-title]get[text]match[yes]] %>\\ndiv.tc-tiddler-edit-title {\\n backdrop-filter: blur(10px);\\n z-index: 900;\\n position: sticky;\\n}\\ndiv.tc-tiddler-edit-title {\\n top: calc(var(--menubar-height) - 1px);\\n}\\n<% endif %>\\n\\ndiv.tc-tiddler-title {\\n background: <<colour tiddler-title-background>>;\\n}\\n/** 编辑器工具栏 */\\n<% if [[$:/themes/linonetwo/itonnote/configs/sticky-edit-toolbar]get[text]match[yes]] %>\\n.tc-editor-toolbar {\\n background: <<colour tiddler-editor-background>>;\\n backdrop-filter: blur(10px);\\n position: sticky;\\n z-index: 890;\\n}\\n <% if [[$:/themes/linonetwo/itonnote/configs/sticky-edit-title]get[text]match[yes]] %>\\n /** 当编辑标题吸顶时,编辑器工具栏下移标题一般会有的高度 */\\n .tc-editor-toolbar {\\n top: calc(var(--menubar-height) + 50px);\\n }\\n <% else %>\\n .tc-editor-toolbar {\\n top: calc(var(--menubar-height) - 1px);\\n }\\n <% endif %>\\n<% endif %>\\n\\n.tc-tiddler-preview {\\n overflow: unset;\\n}\\n.tc-block-dropdown {\\n z-index: 1001;\\n}\\n\\n/** 去掉编辑模式下的很多边框 */\\n/** 去掉预览的边框,除了左边框 */\\n.tc-tiddler-preview-preview {\\n border: none;\\n padding-left: 10px;\\n border-left: 1px solid <<colour tiddler-editor-border>>;\\n}\\n/** 去掉代码编辑器的边框和底色,为所见即所得编辑做准备 */\\n.CodeMirror {\\n border: none !important;\\n background-color: unset !important;\\n}\\n/** 去掉所有其它文本编辑框的边框 */\\n.tc-tiddler-frame input.tc-edit-texteditor {\\n border: none;\\n background: unset;\\n}\\n/** 去掉标题下面的 tag 栏的边框 */\\n.tc-edit-tags {\\n border: none;\\n border-bottom: 1px solid <<colour tiddler-editor-border>>;\\n padding: 4px 8px 4px 8px;\\n}\\n\\n/** 让预览状态下的属性编辑框不那么夺目 */\\n.tc-tiddler-view-frame .tc-edit-field {\\n background-color: unset !important;\\n}\\n\\n/**\\n\\t自定义字体\\n*/\\n* {\\n font-variant-ligatures: contextual;\\n font-display: swap;\\n}\\n\\n/* Only use fira code in code block */\\ncode { font-family: 'Fira Code VF', monospace; }\\n\\n/**\\n 按钮样式\\n*/\\n\\n/** 除了工具栏上的按钮以外,其它按钮, 允许用 .no-itonnote-button-overwrite 取消覆盖\\n .tlui-button 是 tldraw 白板的\\n */\\nbutton {\\n color: <<colour button-foreground>>;\\n padding: 5px 10px;\\n\\tmargin: 2px;\\n border-radius: 5px;\\n border: <<colour button-border>>;\\n cursor: pointer;\\n /** hover动画 */\\n transition: background-color 0.2s;\\n}\\nbutton:hover {\\n\\tbackground-color: <<colour button-background-hover>>;\\n}\\n\\nbutton svg {\\n\\tfill: <<colour tab-foreground>>;\\n}\\nbutton:disabled {\\n cursor: not-allowed;\\n opacity: 0.3;\\n}\\n\\n/** 收合栏,修复由于 button:not(.tc-tab-selected) 带来的样式。没法在那边 not ,因为 not 列表太长会导致优先级过高 */\\nbutton.tc-fold-banner {\\n position: absolute;\\n padding: 0;\\n margin: 0;\\n background: none;\\n border: none;\\n width: 23px;\\n text-align: center;\\n margin-left: -35px;\\n top: 6px;\\n bottom: 6px;\\n}\\nbutton.tc-unfold-banner {\\n position: unset;\\n padding: 0;\\n margin: 0;\\n background: none;\\n border: none;\\n width: 100%;\\n width: calc(100% + 2px);\\n text-align: center;\\n border-top: 2px solid #f8f8f8;\\n margin-top: 4px;\\n}\\n\\n\\n/** Tab 上的按钮 */\\n.tc-tab-buttons > button {\\n\\tborder-radius: 0px;\\n}\\n.tc-tab-buttons button:not(.tc-tab-selected) {\\n\\tfill: none;\\n\\tbackground-color: <<colour tab-background>>;\\n\\tcolor: <<colour tab-foreground>>;\\n\\tborder: none;\\n border-radius: 0px;\\n}\\n.tc-tab-buttons button:not(.tc-tab-selected):hover {\\n\\tbackground-color: <<colour button-background-hover>>;\\n}\\n.tc-sidebar-lists .tc-tab-buttons button.tc-tab-selected {\\n\\tborder: none;\\n\\tborder-bottom: 2px solid silver;\\n border-radius: 0px;\\n}\\n.tc-tab-buttons button.tc-tab-selected {\\n\\tborder: none;\\n\\tborder-bottom: 2px solid silver;\\n\\tbackground-color: #f4f4f4;\\n border-radius: 0px;\\n}\\n\\n/** 标签 */\\nbutton.tc-tag-label, span.tc-tag-label {\\n border-radius: 3px;\\n background-color: <<colour tag-background>>;\\n color: <<colour foreground>>;\\n /** hover动画 */\\n transition: background-color 0.2s;\\n /** 适配长标题作为标签的情况 */\\n white-space: normal;\\n margin-top: 0.1em;\\n margin-bottom: 0.1em;\\n}\\nbutton.tc-tag-label, span.tc-tag-label:hover {\\n background-color: <<colour tag-background-hover>>;\\n}\\n\\n/**\\n 链接样式\\n*/\\n\\na.tc-tiddlylink, a.tc-tiddlylink:hover {\\n padding: 2px;\\n padding-bottom: 0;\\n white-space: normal;\\n word-break: break-all;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n font-weight: bold;\\n line-height: 1.3;\\n color: <<colour tiddler-link-foreground>>;\\n border-bottom: <<colour tiddler-link-underline>>;\\n text-decoration: none;\\n /** hover动画 */\\n transition: background 120ms ease-in 0s;\\n}\\na.tc-tiddlylink:hover {\\n background-color: <<colour page-background>>;\\n color: <<colour tiddler-link-foreground>>;\\n}\\n\\na.tc-tiddlylink-external, a.tc-tiddlylink-external:visited {\\n\\tpadding: 2px;\\n padding-bottom: 0px;\\n\\tborder-bottom: <<colour external-link-underline>>;\\n\\ttext-decoration: none;\\n box-decoration-break: clone;\\n font-weight: bold;\\n color: <<external-link-foreground>>;\\n}\\n\\na.tc-tiddlylink-external:hover {\\n background-color: <<colour external-link-background-hover>>;\\n background-image: <<colour external-link-background-clip-image>>;\\n background-clip: border-box;\\n -webkit-background-clip: text;\\n -webkit-text-fill-color: transparent;\\n}\\n\\n/** 预览状态标签下拉列表里的链接 */\\n.tc-drop-down a.tc-tiddlylink:hover {\\n background-color: <<colour page-background>>;\\n color: <<colour tiddler-link-foreground>>;\\n}\\n/** 编辑器标签下拉列表当前鼠标悬浮状态的颜色 */\\n.tc-block-dropdown a {\\n transition: background-color 0.2s;\\n}\\n.tc-block-dropdown a:hover {\\n background-color: <<colour dropdown-background>>;\\n}\\n\\n/** 带链接的 Kookma badge,为了适应彩色背景,需要把链接默认蓝色背景色去掉,变成白色,与主题无关 */\\n.dbadge a,.dbadge a:hover {\\n color: white !important;\\n border: unset;\\n -webkit-text-fill-color: unset !important;\\n font-weight: unset;\\n text-decoration: none;\\n}\\n\\na.tc-tiddlylink.tc-tiddlylink-resolves.tc-plugin-info.tc-popup-handle.tc-popup-absolute:hover {\\n\\tbackground-color: <<colour modal-border>>;\\n}\\n\\n/**\\n\\t侧边栏\\n*/\\n\\n.tc-page-controls {\\n display: flex;\\n flex-wrap: wrap;\\n}\\n\\n.tc-site-title {\\n\\tfont-size: 1.75em;\\n}\\n\\n.tc-sidebar-scrollable {\\n\\toverscroll-behavior: contain;\\n\\toverflow: -moz-scrollbars-none;\\n}\\n.tc-sidebar-scrollable::-webkit-scrollbar {\\n\\twidth: 0 !important\\n}\\n\\n/** 顶栏 */\\n.tc-topbar {\\n z-index: 1001;\\n}\\n\\n@media (min-width: <<sidebarbreakpoint>>) {\\n\\t.tc-sidebar-scrollable {\\n\\t padding: 40px 10px 0px 15px;\\n\\t}\\n}\\n\\n@media (max-width: <<sidebarbreakpoint>>) {\\n\\t.tc-sidebar-header {\\n\\t margin-top: 20px;\\n /** fix mobile left side still have width after close */\\n padding-left: 0;\\n padding-right: 0;\\n\\t}\\n .tc-sidebar-header > .tc-reveal {\\n padding-left: 10px;\\n padding-right: 10px;\\n }\\n /** solve collision with tc-sidebar-scrollable in mobile */\\n .tc-topbar {\\n z-index: 1002;\\n }\\n}\\n\\n\\n/** 标题 */\\n\\n.tc-site-subtitle {\\n margin-top: 5px;\\n}\\n\\n/**\\n\\t卡片流展示优化\\n*/\\n@media (max-width: <<sidebarbreakpoint>>) {\\n\\t.tc-story-river {\\n\\t padding-top: 42px;\\n\\t}\\n}\\n\\n/**\\n\\t宽屏时隐藏顶部 MenuBar\\n*/\\n\\n@media (min-width: <<sidebarbreakpoint>>) {\\n\\tnav.tc-menubar {\\n\\tdisplay: none !important;\\n\\t}\\n}\\n\\n/**\\n 去除按钮、搜索框选中时的蓝框\\n*/\\nbutton:focus, button:active {\\n outline: none !important;\\n box-shadow: none;\\n}\\n\\n[placeholder]{\\n text-overflow:ellipsis;\\n}\\n::placeholder{\\n text-overflow:ellipsis;\\n}\\ninput[type=search] {\\n appearance: none;\\n -webkit-appearance: none;\\n}\\n\\n* {\\n outline: none;\\n outline-color: none;\\n -webkit-font-smoothing: antialiased;\\n}\\n*:focus {\\n outline: none;\\n}\\n/** 去除输入框默认的边框 */\\ntextarea, input[type=text], input[type=search], input[type=\\\"\\\"], input:not([type]) {\\n border: 2px solid <<colour tiddler-editor-border>>;\\n background: <<colour page-background>>;\\n}\\n\\n/*\\n** TW-Locator and Bi-Link list\\n*/\\n.tc-table-of-contents {\\n max-width: 100%;\\n max-height: 200vh;\\n overflow: auto;\\n}\\n.tc-table-of-contents::-webkit-scrollbar {\\n display: none;\\n}\\n\\n/**\\n* Code Mirror\\n*/\\n.cm-code-block-line {\\n background-color: transparent;\\n}\\n\\n/**\\n* Hide toolbar buttons if not hover\\n* Disable this effect on mobile, otherwise it will be hard to find the button\\n* From tb_demo_onhover-toolbar-styles\\n*/\\n@media (min-width: <<sidebarbreakpoint>>) {\\n .tc-tiddler-frame .tc-titlebar button {\\n opacity: 0;\\n transition: opacity .5s ease-in-out;\\n }\\n .tc-tiddler-frame:hover .tc-titlebar button {\\n zoom: 1;\\n filter: alpha(opacity=100);\\n opacity: 1;\\n }\\n}\\n\\n/** fix https://github.com/Jermolene/TiddlyWiki5/discussions/5821 */\\nvideo::-webkit-media-controls-timeline {\\n width: 200px;\\n}\\n\\n@media (min-width: <<sidebarbreakpoint>>) {\\n div.tc-page-container .tc-sidebar-scrollable {\\n width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth}};\\n padding-left: 2em;\\n }\\n}\\n<$reveal type=\\\"match\\\" state=\\\"$:/state/sidebar\\\" text=\\\"no\\\">\\n div.tc-page-container .tc-sidebar-scrollable {\\n /**\\n * Compage-control-below-pagepletely hide sidebar dom node when sidebar is not opened.\\n * To fix sometimes it is still 20px width after close. \\n */\\n display: none;\\n }\\n</$reveal>\\n/** Sidebar on mobile, make it sidebar instead of top bar */\\n@media (max-width: <<sidebarbreakpoint>>) {\\n .tc-sidebar-scrollable {\\n height: 100vh;\\n /** show storyflow on the side, showing this is a sidebar, not the front-page */\\n max-width: 90vw;\\n z-index: 1001;\\n position: fixed;\\n overflow: auto;\\n overflow: overlay;\\n top: 0;\\n background: <<colour page-background>>;\\n }\\n /** make close sidebar button bigger */\\n .tc-topbar.tc-topbar-right > button.tc-hide-sidebar-btn,button.tc-show-sidebar-btn {\\n width: 2em;\\n height: 2em;\\n box-sizing: content-box;\\n border-bottom-right-radius: 50%;\\n }\\n /** move sidebar close button to top right */\\n span.tc-topbar.tc-topbar-right {\\n top: 0px;\\n right: 0px;\\n position: absolute;\\n }\\n span.tc-topbar.tc-topbar-right > button.tc-hide-sidebar-btn {\\n top: 0px;\\n right: 0px;\\n position: fixed;\\n background: rgba(255,255,255,0.3);\\n backdrop-filter: blur(3px);\\n /** make close side bar button a long vertical bar */\\n border-radius: 0px;\\n height: 100vh;\\n }\\n span.tc-topbar.tc-topbar-right > button.tc-show-sidebar-btn {\\n position: fixed;\\n left: 0;\\n top: 0;\\n background: rgba(255,255,255,0.3);\\n backdrop-filter: blur(3px);\\n <$reveal type=\\\"match\\\" state=\\\"$:/info/tidgi-mobile\\\" text=\\\"yes\\\">\\n /** fix android status bar cover the tc-show-sidebar-btn */\\n height: 4em;\\n </$reveal>\\n }\\n span.tc-topbar.tc-topbar-right > button.tc-show-sidebar-btn > svg.tc-image-chevron-left.tc-image-button, span.tc-topbar.tc-topbar-right > button.tc-hide-sidebar-btn > svg.tc-image-chevron-right.tc-image-button {\\n transform: rotate(180deg);\\n }\\n /** make opened-tiddlers-bar move right to not be cover by show-sidebar-btn */\\n section.story-backdrop .opened-tiddlers-bar-container div.opened-tiddlers-bar.tc-tab-buttons {\\n margin-left: calc(8px * 2 + 32px);\\n <$reveal type=\\\"match\\\" state=\\\"$:/info/tidgi-mobile\\\" text=\\\"yes\\\">\\n /** fix android status bar cover the opened-tiddlers-bar */\\n margin-top: 30px;\\n </$reveal>\\n }\\n}\\n/** fix z-index */\\n.tc-modal-wrapper {\\n z-index: 1400;\\n}\\n\\n/** fix long badge on mobile */\\n.dbadge > span {\\n white-space: initial;\\n}\\n\\n</$importvariables>\\n\"},\"$:/themes/linonetwo/itonnote/config\":{\"title\":\"$:/themes/linonetwo/itonnote/config\",\"tags\":\"$:/tags/ControlPanel/SettingsTab\",\"caption\":\"<<lingo Name $:/themes/linonetwo/itonnote/language/>>\",\"text\":\"\\\\procedure lingo-base() $:/themes/linonetwo/itonnote/language/\\n\\n<<lingo Config/Description>>\\n\\n---\\n\\n!! <<lingo PluginConfigs>>\\n\\n;<<lingo Configs/SideBarSegments/Caption>>\\n:<$checkbox tiddler=\\\"$:/core/ui/SideBarSegments/search\\\" tag=\\\"$:/tags/SideBarSegment\\\"> <<lingo Configs/SideBarSegments/Description>></$checkbox>\\n;<<lingo Configs/SidebarSearch/Caption>>\\n:<$checkbox tiddler=\\\"$:/themes/linonetwo/itonnote/configs/sidebar-search\\\" field=\\\"text\\\" checked=\\\"show\\\" unchecked=\\\"hide\\\" default=\\\"hide\\\"> <<lingo Configs/SidebarSearch/Description>></$checkbox>\\n;<<lingo Configs/SeparateTitleAndButton/Caption>>\\n:<$checkbox tiddler=\\\"$:/themes/linonetwo/itonnote/configs/separate-title-and-button\\\" field=\\\"text\\\" checked=\\\"yes\\\" unchecked=\\\"no\\\" default=\\\"no\\\"> <<lingo Configs/SeparateTitleAndButton/Description>></$checkbox>\\n;<<lingo Configs/StickyEditToolbar/Caption>>\\n:<$checkbox tiddler=\\\"$:/themes/linonetwo/itonnote/configs/sticky-edit-toolbar\\\" field=\\\"text\\\" checked=\\\"yes\\\" unchecked=\\\"no\\\" default=\\\"no\\\"> <<lingo Configs/StickyEditToolbar/Description>></$checkbox>\\n;{{$:/language/ThemeTweaks/Options/StickyTitles}}\\n:<$checkbox tiddler=\\\"$:/themes/tiddlywiki/vanilla/options/stickytitles\\\" field=\\\"text\\\" checked=\\\"yes\\\" unchecked=\\\"no\\\" default=\\\"no\\\"> {{$:/language/ThemeTweaks/Options/StickyTitles/Hint}}</$checkbox>\\n<% if [[$:/themes/tiddlywiki/vanilla/options/stickytitles]get[text]!match[yes]] %>\\n\\n;<<lingo Configs/StickyEditTitle/Caption>>\\n:<$checkbox tiddler=\\\"$:/themes/linonetwo/itonnote/configs/sticky-edit-title\\\" field=\\\"text\\\" checked=\\\"yes\\\" unchecked=\\\"no\\\" default=\\\"no\\\"> <<lingo Configs/StickyEditTitle/Description>></$checkbox>\\n\\n<% endif %>\"},\"$:/themes/linonetwo/itonnote/configs/separate-title-and-button\":{\"title\":\"$:/themes/linonetwo/itonnote/configs/separate-title-and-button\",\"text\":\"no\"},\"$:/themes/linonetwo/itonnote/configs/sidebar-search\":{\"title\":\"$:/themes/linonetwo/itonnote/configs/sidebar-search\",\"text\":\"show\"},\"$:/themes/linonetwo/itonnote/configs/sticky-edit-title\":{\"title\":\"$:/themes/linonetwo/itonnote/configs/sticky-edit-title\",\"text\":\"yes\"},\"$:/themes/linonetwo/itonnote/configs/sticky-edit-toolbar\":{\"title\":\"$:/themes/linonetwo/itonnote/configs/sticky-edit-toolbar\",\"text\":\"yes\"},\"$:/themes/tiddlywiki/vanilla/options/sidebarlayout\":{\"title\":\"$:/themes/tiddlywiki/vanilla/options/sidebarlayout\",\"text\":\"fluid-fixed\"},\"$:/themes/linonetwo/itonnote/firacode.css\":{\"title\":\"$:/themes/linonetwo/itonnote/firacode.css\",\"text\":\"/** generated by `base64 -i FiraCode-VF.woff2 -o o.txt` and copy here. Only VF is needed */\\n@font-face {\\n font-family: 'Fira Code VF';\\n src: url('data:@file/octet-stream;base64,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');\\n}\\n\",\"tags\":\"$:/tags/Stylesheet\",\"type\":\"text/plain\"},\"$:/themes/linonetwo/itonnote/language/en-GB/Readme\":{\"title\":\"$:/themes/linonetwo/itonnote/language/en-GB/Readme\",\"text\":\"\\\\procedure lingo-base() $:/themes/linonetwo/itonnote/language/\\n\\n! <<lingo Name>>\\n\\n<<lingo Description>>\\n\\n\"},\"$:/themes/linonetwo/itonnote/language/en-GB/Name\":{\"title\":\"$:/themes/linonetwo/itonnote/language/en-GB/Name\",\"text\":\"TidGi Preconfig theme\"},\"$:/themes/linonetwo/itonnote/language/en-GB/Description\":{\"title\":\"$:/themes/linonetwo/itonnote/language/en-GB/Description\",\"text\":\"Notion and VSCode inspired theme.\"},\"$:/themes/linonetwo/itonnote/language/en-GB/PluginConfigs\":{\"title\":\"$:/themes/linonetwo/itonnote/language/en-GB/PluginConfigs\",\"text\":\"Plugin Configs\"},\"$:/themes/linonetwo/itonnote/language/en-GB/ConfigDescription\":{\"title\":\"$:/themes/linonetwo/itonnote/language/en-GB/ConfigDescription\",\"text\":\"These settings let you customise the behaviour of TidGi Preconfig theme plugin.\"},\"$:/themes/linonetwo/itonnote/language/en-GB/Configs/SideBarSegments/Caption\":{\"title\":\"$:/themes/linonetwo/itonnote/language/en-GB/Configs/SideBarSegments/Caption\",\"text\":\"Sidebar search box, turned on by default, hidden if unchecked. Hiding will hide the content below with it.\"},\"$:/themes/linonetwo/itonnote/language/en-GB/Configs/SideBarSegments/Description\":{\"title\":\"$:/themes/linonetwo/itonnote/language/en-GB/Configs/SideBarSegments/Description\",\"text\":\"With the Command Menu plugin for searching, you don't need the Tiddlywiki native search box, uncheck to hide the native search box.\"},\"$:/themes/linonetwo/itonnote/language/en-GB/Configs/SidebarSearch/Caption\":{\"title\":\"$:/themes/linonetwo/itonnote/language/en-GB/Configs/SidebarSearch/Caption\",\"text\":\"Button to display the search box in the sidebar.\"},\"$:/themes/linonetwo/itonnote/language/en-GB/Configs/SidebarSearch/Description\":{\"title\":\"$:/themes/linonetwo/itonnote/language/en-GB/Configs/SidebarSearch/Description\",\"text\":\"In the case of displaying a sidebar search box, feel the need to display additional buttons for the sidebar search box. You can hide it if you think it duplicates the advanced search button on the page control bar.\"},\"$:/themes/linonetwo/itonnote/language/en-GB/Configs/SeparateTitleAndButton/Caption\":{\"title\":\"$:/themes/linonetwo/itonnote/language/en-GB/Configs/SeparateTitleAndButton/Caption\",\"text\":\"Staggered with the button when the title is too long, to optimize the display.\"},\"$:/themes/linonetwo/itonnote/language/en-GB/Configs/SeparateTitleAndButton/Description\":{\"title\":\"$:/themes/linonetwo/itonnote/language/en-GB/Configs/SeparateTitleAndButton/Description\",\"text\":\"Adjusting title display via CSS.\"},\"$:/themes/linonetwo/itonnote/language/en-GB/Configs/StickyEditToolbar/Caption\":{\"title\":\"$:/themes/linonetwo/itonnote/language/en-GB/Configs/StickyEditToolbar/Caption\",\"text\":\"Fixed toolbar at the top when editing\"},\"$:/themes/linonetwo/itonnote/language/en-GB/Configs/StickyEditToolbar/Description\":{\"title\":\"$:/themes/linonetwo/itonnote/language/en-GB/Configs/StickyEditToolbar/Description\",\"text\":\"In edit mode, the toolbar is fixed at the top of the screen for easier use when the tiddler content is long.\"},\"$:/themes/linonetwo/itonnote/language/en-GB/Configs/StickyEditTitle/Caption\":{\"title\":\"$:/themes/linonetwo/itonnote/language/en-GB/Configs/StickyEditTitle/Caption\",\"text\":\"Fixed title at the top when editing\"},\"$:/themes/linonetwo/itonnote/language/en-GB/Configs/StickyEditTitle/Description\":{\"title\":\"$:/themes/linonetwo/itonnote/language/en-GB/Configs/StickyEditTitle/Description\",\"text\":\"If you have turned off the sticky title in view mode, you can still turn it on in edit mode, the title is fixed at the top of the screen for easier saving or cancelling when the tiddler content is long.\"},\"$:/themes/linonetwo/itonnote/language/zh-Hans/Readme\":{\"title\":\"$:/themes/linonetwo/itonnote/language/zh-Hans/Readme\",\"text\":\"\\\\procedure lingo-base() $:/themes/linonetwo/itonnote/language/\\n\\n! <<lingo Name>>\\n\\n<<lingo Description>>\\n\"},\"$:/themes/linonetwo/itonnote/language/zh-Hans/Name\":{\"title\":\"$:/themes/linonetwo/itonnote/language/zh-Hans/Name\",\"text\":\"太记预置主题\"},\"$:/themes/linonetwo/itonnote/language/zh-Hans/Description\":{\"title\":\"$:/themes/linonetwo/itonnote/language/zh-Hans/Description\",\"text\":\"灵感来自 Notion 和 VSCode 的主题\"},\"$:/themes/linonetwo/itonnote/language/zh-Hans/PluginConfigs\":{\"title\":\"$:/themes/linonetwo/itonnote/language/zh-Hans/PluginConfigs\",\"text\":\"插件设置\"},\"$:/themes/linonetwo/itonnote/language/zh-Hans/ConfigDescription\":{\"title\":\"$:/themes/linonetwo/itonnote/language/zh-Hans/ConfigDescription\",\"text\":\"通过这些设置,您可以自定义「太记预置主题」插件的行为。\"},\"$:/themes/linonetwo/itonnote/language/zh-Hans/Configs/SideBarSegments/Caption\":{\"title\":\"$:/themes/linonetwo/itonnote/language/zh-Hans/Configs/SideBarSegments/Caption\",\"text\":\"显示侧边栏搜索框。\"},\"$:/themes/linonetwo/itonnote/language/zh-Hans/Configs/SideBarSegments/Description\":{\"title\":\"$:/themes/linonetwo/itonnote/language/zh-Hans/Configs/SideBarSegments/Description\",\"text\":\"有命令菜单插件用于搜索,就不需要太微原生的搜索框了,取消勾选可以隐藏原生搜索框。\"},\"$:/themes/linonetwo/itonnote/language/zh-Hans/Configs/SidebarSearch/Caption\":{\"title\":\"$:/themes/linonetwo/itonnote/language/zh-Hans/Configs/SidebarSearch/Caption\",\"text\":\"显示侧边栏搜索框的按钮。\"},\"$:/themes/linonetwo/itonnote/language/zh-Hans/Configs/SidebarSearch/Description\":{\"title\":\"$:/themes/linonetwo/itonnote/language/zh-Hans/Configs/SidebarSearch/Description\",\"text\":\"在显示侧边栏搜索框的情况下,是否需要显示侧边栏搜索框旁边的高级搜索按钮。如果你觉得它与页面控制栏上的高级搜索按钮重复了可以隐藏它。\"},\"$:/themes/linonetwo/itonnote/language/zh-Hans/Configs/SeparateTitleAndButton/Caption\":{\"title\":\"$:/themes/linonetwo/itonnote/language/zh-Hans/Configs/SeparateTitleAndButton/Caption\",\"text\":\"标题过长时与按钮错开以优化显示。\"},\"$:/themes/linonetwo/itonnote/language/zh-Hans/Configs/SeparateTitleAndButton/Description\":{\"title\":\"$:/themes/linonetwo/itonnote/language/zh-Hans/Configs/SeparateTitleAndButton/Description\",\"text\":\"通过CSS调整标题显示。\"},\"$:/themes/linonetwo/itonnote/language/zh-Hans/Configs/StickyEditToolbar/Caption\":{\"title\":\"$:/themes/linonetwo/itonnote/language/zh-Hans/Configs/StickyEditToolbar/Caption\",\"text\":\"编辑时工具栏固定在顶部\"},\"$:/themes/linonetwo/itonnote/language/zh-Hans/Configs/StickyEditToolbar/Description\":{\"title\":\"$:/themes/linonetwo/itonnote/language/zh-Hans/Configs/StickyEditToolbar/Description\",\"text\":\"在编辑模式时,工具栏固定在屏幕顶部,以便在条目内容较长时更方便使用工具栏。\"},\"$:/themes/linonetwo/itonnote/language/zh-Hans/Configs/StickyEditTitle/Caption\":{\"title\":\"$:/themes/linonetwo/itonnote/language/zh-Hans/Configs/StickyEditTitle/Caption\",\"text\":\"编辑时标题固定在顶部\"},\"$:/themes/linonetwo/itonnote/language/zh-Hans/Configs/StickyEditTitle/Description\":{\"title\":\"$:/themes/linonetwo/itonnote/language/zh-Hans/Configs/StickyEditTitle/Description\",\"text\":\"关闭了查看模式时标题吸顶时,勾选可以依然开启在编辑模式时,标题固定在屏幕顶部,以便在条目内容较长时更方便保存或取消。\"},\"$:/palettes/Notion\":{\"title\":\"$:/palettes/Notion\",\"tags\":\"$:/tags/Palette $:/themes/linonetwo/itonnote/readme\",\"type\":\"application/x-tiddler-dictionary\",\"name\":\"Notion\",\"description\":\"Notion inspired light and modern colors\",\"color-scheme\":\"light\",\"text\":\"alert-background: #ffe476\\nalert-border: #b99e2f\\nalert-highlight: #881122\\nalert-muted-foreground: #b99e2f\\nbackground: #ffffff\\nblockquote-bar: <<colour muted-foreground>>\\nbutton-background: rgba(0, 0, 0, 0.03)\\nbutton-background-hover: rgba(0, 0, 0, 0.05)\\nbutton-foreground: #333\\nbutton-border: none\\ncode-background: linear-gradient(19deg,#DDD,#EEE)\\ncode-border: none\\ncode-foreground: #333\\ndiff-delete-background: #ffc9c9\\ndiff-delete-foreground: <<colour foreground>>\\ndiff-equal-background: \\ndiff-equal-foreground: <<colour foreground>>\\ndiff-insert-background: #aaefad\\ndiff-insert-foreground: <<colour foreground>>\\ndiff-invisible-background: \\ndiff-invisible-foreground: <<colour muted-foreground>>\\ndirty-indicator: #ff0000\\ndownload-background: #34c734\\ndownload-foreground: <<colour background>>\\ndragger-background: <<colour foreground>>\\ndragger-foreground: <<colour background>>\\ndropdown-background: #fff\\ndropdown-border: <<colour muted-foreground>>\\ndropdown-tab-background-selected: rgba(55, 53, 47, 0.08)\\ndropdown-tab-background: #ececec\\ndropzone-background: rgba(0,200,0,0.7)\\nexternal-link-background-hover: #333\\nexternal-link-background-clip-image: linear-gradient(19deg, #333 0%, #CCC 100%)\\nexternal-link-background-visited: inherit\\nexternal-link-background: inherit\\nexternal-link-foreground-hover: inherit\\nexternal-link-foreground-visited: #666\\nexternal-link-foreground: #666\\nexternal-link-underline: 1px solid #8357d7\\nforeground: #333333\\nmessage-background: #ecf2ff\\nmessage-border: #cfd6e6\\nmessage-foreground: #547599\\nmodal-backdrop: <<colour foreground>>\\nmodal-background: <<colour background>>\\nmodal-border: #999999\\nmodal-footer-background: #f5f5f5\\nmodal-footer-border: #dddddd\\nmodal-header-border: #eeeeee\\nmuted-foreground: #bbb\\nnotification-background: #ffffdd\\nnotification-border: #999999\\npage-background: #fafafa\\npre-background: #f5f5f5\\npre-border: #cccccc\\nprimary: rgb(46, 170, 220)\\nselection-background:\\nselection-foreground:\\nselect-tag-background:\\nselect-tag-foreground:\\nsidebar-button-foreground: <<colour foreground>>\\nsidebar-controls-foreground-hover: #000000\\nsidebar-controls-foreground: #aaaaaa\\nsidebar-foreground-shadow: rgba(15, 15, 15, 0.1) 0px 0px 5px 1px, rgba(15, 15, 15, 0.1) 0px 2px 10px\\nsidebar-foreground: #acacac\\nsidebar-muted-foreground-hover: #444444\\nsidebar-muted-foreground: #c0c0c0\\nsidebar-tab-background-selected: #f4f4f4\\nsidebar-tab-background: #e0e0e0\\nsidebar-tab-border-selected: <<colour tab-border-selected>>\\nsidebar-tab-border: <<colour tab-border>>\\nsidebar-tab-divider: #e4e4e4\\nsidebar-tab-foreground-selected:\\nsidebar-tab-foreground: <<colour tab-foreground>>\\nsidebar-tiddler-link-foreground-hover: #444444\\nsidebar-tiddler-link-foreground: #999999\\nsite-title-foreground: <<colour tiddler-title-foreground>>\\nstatic-alert-foreground: #aaaaaa\\ntab-background-selected: rgba(255, 255, 255, 0.3)\\ntab-background: transparent\\ntab-border-selected: #d8d8d8\\ntab-border: #cccccc\\ntab-divider: #d8d8d8\\ntab-foreground-selected: <<colour tab-foreground>>\\ntab-foreground: #666666\\ntable-border: #dddddd\\ntable-footer-background: #a8a8a8\\ntable-header-background: #f0f0f0\\ntag-background: rgba(92, 112, 128, 0.9)\\ntag-background-hover: rgba(92, 112, 128, 1)\\ntag-foreground: <<colour foreground>>\\ntiddler-background: <<colour background>>\\ntiddler-border: <<colour background>>\\ntiddler-controls-foreground-hover: #888888\\ntiddler-controls-foreground-selected: #444444\\ntiddler-controls-foreground: #cccccc\\ntiddler-editor-background: rgba(255, 255, 255, 0.5)\\ntiddler-editor-border-image: #ffffff\\ntiddler-editor-border: rgba(242, 241, 238, 0.6)\\ntiddler-editor-fields-even: #eee\\ntiddler-editor-fields-odd: #fff\\ntiddler-info-background: #f8f8f8\\ntiddler-info-border: #dddddd\\ntiddler-info-tab-background: #f8f8f8\\ntiddler-link-background: <<colour background>>\\ntiddler-link-foreground: <<colour button-foreground>>\\ntiddler-link-underline: 1px solid rgba(55, 53, 47, 0.16)\\ntiddler-subtitle-foreground: #c0c0c0\\ntiddler-title-foreground: #182955\\ntiddler-title-background: rgba(255, 255, 255, 0.5)\\ntoolbar-new-button:\\ntoolbar-options-button:\\ntoolbar-save-button:\\ntoolbar-info-button:\\ntoolbar-edit-button:\\ntoolbar-close-button:\\ntoolbar-delete-button:\\ntoolbar-cancel-button:\\ntoolbar-done-button:\\nuntagged-background: #999999\\nvery-muted-foreground: #888888\\nwikilist-background: #e5e5e5\\nwikilist-item: #fff\\nwikilist-info: #000\\nwikilist-title: #666\\nwikilist-title-svg: <<colour wikilist-title>>\\nwikilist-url: #aaa\\nwikilist-button-open: #4fb82b\\nwikilist-button-open-hover: green\\nwikilist-button-reveal: #5778d8\\nwikilist-button-reveal-hover: blue\\nwikilist-button-remove: #d85778\\nwikilist-button-remove-hover: red\\nwikilist-toolbar-background: #d3d3d3\\nwikilist-toolbar-foreground: #888\\nwikilist-droplink-dragover: rgba(255,192,192,0.5)\\nwikilist-button-background: #acacac\\nwikilist-button-foreground: #000\"},\"$:/themes/linonetwo/itonnote/plugin-modification\":{\"title\":\"$:/themes/linonetwo/itonnote/plugin-modification\",\"tags\":\"$:/tags/Stylesheet\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"/*\\n** Change some style of plugins\\n*/\\n\\n/*\\n** Shiraz\\n*/\\n.tbl-container {\\n max-width: 100%;\\n max-height: 100vh;\\n overflow: auto;\\n}\\n\\n/**\\n* opened tiddlers bar\\n*/\\nsection.story-backdrop > p, section.story-backdrop > p > div.tc-tab-buttons {\\n background-color: #fafafa33 !important;\\n}\\n\"},\"$:/themes/linonetwo/itonnote/readme\":{\"title\":\"$:/themes/linonetwo/itonnote/readme\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"\\\\procedure lingo-base() $:/themes/linonetwo/itonnote/language/\\n\\n<<lingo Readme>>\\n\"},\"$:/themes/linonetwo/itonnote/separate-title-and-button\":{\"title\":\"$:/themes/linonetwo/itonnote/separate-title-and-button\",\"tags\":\"$:/tags/Stylesheet\",\"text\":\"<% if [[$:/themes/linonetwo/itonnote/configs/separate-title-and-button]get[text]match[yes]] %>\\n/**\\n\\t让标题与按钮分隔开。\\n*/\\n.tc-titlebar h2 {\\n\\tdisplay: table-header-group;\\n\\tword-wrap:break-word;\\n\\tword-break:break-all;\\n}\\n<% endif %>\\n\"},\"$:/themes/linonetwo/itonnote/sidebar-search\":{\"title\":\"$:/themes/linonetwo/itonnote/sidebar-search\",\"tags\":\"$:/tags/Stylesheet\",\"text\":\"<$reveal state=\\\"$:/themes/linonetwo/itonnote/configs/sidebar-search\\\" type=\\\"match\\\" text=\\\"hide\\\">\\n\\n/** 隐藏没用的侧边栏的搜索栏按钮 */\\n.tc-sidebar-search > p > div > span > button {\\n\\tdisplay: none;\\n}\\n\\n</$reveal>\"},\"$:/themes/linonetwo/itonnote/sidebarWidth.css\":{\"title\":\"$:/themes/linonetwo/itonnote/sidebarWidth.css\",\"text\":\"div.tc-page-container{--scrollbar-width:calc(100vw - 100%)}.tc-sidebar-scrollable{max-width:calc(100vw - (8px * 2 + 2em + var(--scrollbar-width)))}\",\"tags\":\"$:/tags/Stylesheet\",\"type\":\"text/css\"},\"$:/core/templates/static.template.css\":{\"title\":\"$:/core/templates/static.template.css\",\"text\":\"<!-- from the tiddlywiki repo, core/templates/static.template.css.tid -->\\n\\n{{$:/boot/boot.css||$:/core/templates/wikified-tiddler}}\\n\\n{{$:/core/ui/PageStylesheet||$:/core/templates/wikified-tiddler}}\\n\\n<!-- override the core tiddler to add this -->\\n\\n{{$:/themes/linonetwo/itonnote/staticTemplateStyle.css||$:/core/templates/wikified-tiddler}}\"},\"$:/themes/linonetwo/itonnote/staticTemplateStyle.css\":{\"title\":\"$:/themes/linonetwo/itonnote/staticTemplateStyle.css\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"<!-- shouldn't add tags: $:/tags/Stylesheet otherwise it will affect non static mode -->\\n<$importvariables filter=\\\"[[$:/themes/tiddlywiki/vanilla/base]]\\\">\\n/* Hide sidebar in static template on mobile\\n Normally the sidebar will hide using js in itonnote plugin. But in static template there is no js in static template\\n*/\\n@media (max-width: <<sidebarbreakpoint>>) {\\n .tc-body {\\n display: flex;\\n flex-direction: column;\\n justify-content: flex-start;\\n align-items: stretch;\\n }\\n .tc-sidebar-scrollable {\\n height: auto;\\n position: unset;\\n width: 100%;\\n padding-left: 20px;\\n }\\n}\\n<!-- fix width related css variable not set in static mode -->\\n@media (min-width: <<sidebarbreakpoint>>) {\\n .tc-sidebar-scrollable {\\n width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth}};\\n max-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth}};\\n }\\n}\\n</$importvariables>\\n\"},\"$:/themes/linonetwo/itonnote/tree\":{\"title\":\"$:/themes/linonetwo/itonnote/tree\",\"type\":\"text/vnd.tiddlywiki\",\"text\":\"<<tree prefix:\\\"$:/themes/linonetwo/itonnote/\\\">>\"}}}", "title": "$:/themes/linonetwo/itonnote", "type": "application/json", - "version": "0.3.6", - "Modern.TiddlyDev#SHA256-Hashed": "f1a22782d0b8647501c2afa0038893a969346f52442a8001f7f055acfcbf3e67" + "version": "1.2.0", + "Modern.TiddlyDev#SHA256-Hashed": "c8a3785ef8041899bbd1408eeda0e94a58451cb95c7c69c8b8db22c2efa6b178" } ] \ No newline at end of file