From 347e1b3ad4913c83f6578a183b57a898a19563d9 Mon Sep 17 00:00:00 2001 From: Awin Huang Date: Sat, 3 Sep 2022 15:31:06 +0800 Subject: [PATCH] vault backup: 2022-09-03 15:31:06 Affected files: .obsidian/plugins/dataview/main.js .obsidian/plugins/obsidian-columns/styles.css .obsidian/plugins/obsidian-rollover-daily-todos/main.js .obsidian/plugins/obsidian-rollover-daily-todos/manifest.json .obsidian/plugins/obsidian-tasks-plugin/styles.css .obsidian/plugins/oz-image-plugin/manifest.json .obsidian/plugins/oz-image-plugin/styles.css .obsidian/plugins/table-editor-obsidian/main.js .obsidian/workspace --- .obsidian/plugins/dataview/main.js | 46 +- .obsidian/plugins/obsidian-columns/styles.css | 20 +- .../obsidian-rollover-daily-todos/main.js | 242 ++++---- .../manifest.json | 20 +- .../plugins/obsidian-tasks-plugin/styles.css | 106 ++-- .../plugins/oz-image-plugin/manifest.json | 20 +- .obsidian/plugins/oz-image-plugin/styles.css | 540 +++++++++--------- .../plugins/table-editor-obsidian/main.js | 152 ++--- .obsidian/workspace | 2 +- 9 files changed, 574 insertions(+), 574 deletions(-) diff --git a/.obsidian/plugins/dataview/main.js b/.obsidian/plugins/dataview/main.js index ddc3625..eb02779 100644 --- a/.obsidian/plugins/dataview/main.js +++ b/.obsidian/plugins/dataview/main.js @@ -2,29 +2,29 @@ var obsidian = require('obsidian'); -/*! ***************************************************************************** -Copyright (c) Microsoft Corporation. - -Permission to use, copy, modify, and/or distribute this software for any -purpose with or without fee is hereby granted. - -THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH -REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY -AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, -INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM -LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR -OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR -PERFORMANCE OF THIS SOFTWARE. -***************************************************************************** */ - -function __awaiter(thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); +/*! ***************************************************************************** +Copyright (c) Microsoft Corporation. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH +REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY +AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, +INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM +LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR +OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THIS SOFTWARE. +***************************************************************************** */ + +function __awaiter(thisArg, _arguments, P, generator) { + function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } + return new (P || (P = Promise))(function (resolve, reject) { + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } + function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); } var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {}; diff --git a/.obsidian/plugins/obsidian-columns/styles.css b/.obsidian/plugins/obsidian-columns/styles.css index 3efb1db..9737348 100644 --- a/.obsidian/plugins/obsidian-columns/styles.css +++ b/.obsidian/plugins/obsidian-columns/styles.css @@ -1,11 +1,11 @@ -.columnParent { - display: flex; - padding: 15px 20px; - flex-wrap: wrap; - gap: 20px; -} - -.columnChild { - flex-grow: 1; - flex-basis: 0px; +.columnParent { + display: flex; + padding: 15px 20px; + flex-wrap: wrap; + gap: 20px; +} + +.columnChild { + flex-grow: 1; + flex-basis: 0px; } \ No newline at end of file diff --git a/.obsidian/plugins/obsidian-rollover-daily-todos/main.js b/.obsidian/plugins/obsidian-rollover-daily-todos/main.js index d2ac8e1..6658e75 100644 --- a/.obsidian/plugins/obsidian-rollover-daily-todos/main.js +++ b/.obsidian/plugins/obsidian-rollover-daily-todos/main.js @@ -2,127 +2,127 @@ var obsidian = require('obsidian'); -const MAX_TIME_SINCE_CREATION = 5000; // 5 seconds - -class RolloverTodosPlugin extends obsidian.Plugin { - checkDailyNotesEnabled() { - return this.app.vault.config.pluginEnabledStatus['daily-notes']; - } - - getDailyNotesDirectory() { - if (this.dailyNotesDirectory != null) { - return this.dailyNotesDirectory; - } - - this.dailyNotesDirectory = this.app.internalPlugins.plugins['daily-notes'].instance.options.folder; - return this.dailyNotesDirectory; - } - - getLastDailyNote() { - const dailyNotesDirectory = this.getDailyNotesDirectory(); - - const files = this.app.vault.getAllLoadedFiles() - .filter(file => file.path.startsWith(dailyNotesDirectory)) - .filter(file => file.basename != null) - .sort((a, b) => new Date(b.basename).getTime() - new Date(a.basename).getTime()); - - return files[1]; - } - - async getAllUnfinishedTodos(file) { - const contents = await this.app.vault.read(file); - const unfinishedTodosRegex = /\t*- \[ \].*/g; - const unfinishedTodos = Array.from(contents.matchAll(unfinishedTodosRegex)).map(([todo]) => todo); - return unfinishedTodos; - } - - async onload() { - this.settings = await this.loadData() || { templateHeading: 'none' }; - - if (!this.checkDailyNotesEnabled()) { - new obsidian.Notice('Daily notes plugin is not enabled. Enable it and then reload Obsidian.', 2000); - } - - this.addSettingTab(new RollverTodosSettings(this.app, this)); - - this.registerEvent(this.app.vault.on('create', async (file) => { - // is a daily note - const dailyNotesDirectory = this.getDailyNotesDirectory(); - if (!file.path.startsWith(dailyNotesDirectory)) return; - - // is today's daily note - const today = new Date(); - if (getISOFormattedDate(today) !== file.basename) return; - - // was just created - if (today.getTime() - file.stat.ctime > MAX_TIME_SINCE_CREATION) return; - - const lastDailyNote = this.getLastDailyNote(); - if (lastDailyNote == null) return; - - const unfinishedTodos = await this.getAllUnfinishedTodos(lastDailyNote); - - let dailyNoteContent = await this.app.vault.read(file); - - if (this.settings.templateHeading !== 'none') { - const heading = this.settings.templateHeading; - dailyNoteContent = dailyNoteContent.replace(heading, heading + '\n' + unfinishedTodos.join('\n') + '\n'); - } else { - dailyNoteContent += '\n' + unfinishedTodos.join('\n'); - } - - await this.app.vault.modify(file, dailyNoteContent); - })); - } -} - -class RollverTodosSettings extends obsidian.PluginSettingTab { - constructor(app, plugin) { - super(app, plugin); - this.plugin = plugin; - } - - async getTemplateHeadings() { - const template = this.app.internalPlugins.plugins['daily-notes'].instance.options.template; - if (!template) return []; - - const file = this.app.vault.getAbstractFileByPath(template + '.md'); - const templateContents = await this.app.vault.read(file); - const allHeadings = Array.from(templateContents.matchAll(/#{1,} .*/g)).map(([heading]) => heading); - return allHeadings; - } - - async display() { - const templateHeadings = await this.getTemplateHeadings(); - - this.containerEl.empty(); - new obsidian.Setting(this.containerEl) - .setName('Template heading') - .setDesc('Which heading from your template should the todos go under') - .addDropdown((dropdown) => dropdown - .addOptions({ - ...templateHeadings.reduce((acc, heading) => { - acc[heading] = heading; - return acc; - }, {}), - 'none': 'None' - }) - .setValue(this.plugin?.settings.templateHeading) - .onChange(value => { - this.plugin.settings.templateHeading = value; - this.plugin.saveData(this.plugin.settings); - }) - ); - } -} - -/** - * Return an ISO formatted date only for the users current timezone. - */ -function getISOFormattedDate(date) { - const month = `${date.getMonth() + 1}`.padStart(2, "0"); - const day = `${date.getDate()}`.padStart(2, "0"); - return date.getFullYear() + "-" + month + "-" + day; +const MAX_TIME_SINCE_CREATION = 5000; // 5 seconds + +class RolloverTodosPlugin extends obsidian.Plugin { + checkDailyNotesEnabled() { + return this.app.vault.config.pluginEnabledStatus['daily-notes']; + } + + getDailyNotesDirectory() { + if (this.dailyNotesDirectory != null) { + return this.dailyNotesDirectory; + } + + this.dailyNotesDirectory = this.app.internalPlugins.plugins['daily-notes'].instance.options.folder; + return this.dailyNotesDirectory; + } + + getLastDailyNote() { + const dailyNotesDirectory = this.getDailyNotesDirectory(); + + const files = this.app.vault.getAllLoadedFiles() + .filter(file => file.path.startsWith(dailyNotesDirectory)) + .filter(file => file.basename != null) + .sort((a, b) => new Date(b.basename).getTime() - new Date(a.basename).getTime()); + + return files[1]; + } + + async getAllUnfinishedTodos(file) { + const contents = await this.app.vault.read(file); + const unfinishedTodosRegex = /\t*- \[ \].*/g; + const unfinishedTodos = Array.from(contents.matchAll(unfinishedTodosRegex)).map(([todo]) => todo); + return unfinishedTodos; + } + + async onload() { + this.settings = await this.loadData() || { templateHeading: 'none' }; + + if (!this.checkDailyNotesEnabled()) { + new obsidian.Notice('Daily notes plugin is not enabled. Enable it and then reload Obsidian.', 2000); + } + + this.addSettingTab(new RollverTodosSettings(this.app, this)); + + this.registerEvent(this.app.vault.on('create', async (file) => { + // is a daily note + const dailyNotesDirectory = this.getDailyNotesDirectory(); + if (!file.path.startsWith(dailyNotesDirectory)) return; + + // is today's daily note + const today = new Date(); + if (getISOFormattedDate(today) !== file.basename) return; + + // was just created + if (today.getTime() - file.stat.ctime > MAX_TIME_SINCE_CREATION) return; + + const lastDailyNote = this.getLastDailyNote(); + if (lastDailyNote == null) return; + + const unfinishedTodos = await this.getAllUnfinishedTodos(lastDailyNote); + + let dailyNoteContent = await this.app.vault.read(file); + + if (this.settings.templateHeading !== 'none') { + const heading = this.settings.templateHeading; + dailyNoteContent = dailyNoteContent.replace(heading, heading + '\n' + unfinishedTodos.join('\n') + '\n'); + } else { + dailyNoteContent += '\n' + unfinishedTodos.join('\n'); + } + + await this.app.vault.modify(file, dailyNoteContent); + })); + } +} + +class RollverTodosSettings extends obsidian.PluginSettingTab { + constructor(app, plugin) { + super(app, plugin); + this.plugin = plugin; + } + + async getTemplateHeadings() { + const template = this.app.internalPlugins.plugins['daily-notes'].instance.options.template; + if (!template) return []; + + const file = this.app.vault.getAbstractFileByPath(template + '.md'); + const templateContents = await this.app.vault.read(file); + const allHeadings = Array.from(templateContents.matchAll(/#{1,} .*/g)).map(([heading]) => heading); + return allHeadings; + } + + async display() { + const templateHeadings = await this.getTemplateHeadings(); + + this.containerEl.empty(); + new obsidian.Setting(this.containerEl) + .setName('Template heading') + .setDesc('Which heading from your template should the todos go under') + .addDropdown((dropdown) => dropdown + .addOptions({ + ...templateHeadings.reduce((acc, heading) => { + acc[heading] = heading; + return acc; + }, {}), + 'none': 'None' + }) + .setValue(this.plugin?.settings.templateHeading) + .onChange(value => { + this.plugin.settings.templateHeading = value; + this.plugin.saveData(this.plugin.settings); + }) + ); + } +} + +/** + * Return an ISO formatted date only for the users current timezone. + */ +function getISOFormattedDate(date) { + const month = `${date.getMonth() + 1}`.padStart(2, "0"); + const day = `${date.getDate()}`.padStart(2, "0"); + return date.getFullYear() + "-" + month + "-" + day; } module.exports = RolloverTodosPlugin; diff --git a/.obsidian/plugins/obsidian-rollover-daily-todos/manifest.json b/.obsidian/plugins/obsidian-rollover-daily-todos/manifest.json index 1a19d99..7c3f213 100644 --- a/.obsidian/plugins/obsidian-rollover-daily-todos/manifest.json +++ b/.obsidian/plugins/obsidian-rollover-daily-todos/manifest.json @@ -1,10 +1,10 @@ -{ - "id": "obsidian-rollover-daily-todos", - "name": "Rollover Daily Todos", - "version": "1.0.2", - "minAppVersion": "0.9.20", - "description": "This plugin will rollover any unchecked checkboxes from your last daily note into today's note", - "author": "Matthew Sessions", - "authorUrl": "https://matthewsessions.com", - "isDesktopOnly": false -} +{ + "id": "obsidian-rollover-daily-todos", + "name": "Rollover Daily Todos", + "version": "1.0.2", + "minAppVersion": "0.9.20", + "description": "This plugin will rollover any unchecked checkboxes from your last daily note into today's note", + "author": "Matthew Sessions", + "authorUrl": "https://matthewsessions.com", + "isDesktopOnly": false +} diff --git a/.obsidian/plugins/obsidian-tasks-plugin/styles.css b/.obsidian/plugins/obsidian-tasks-plugin/styles.css index 8de91f3..d0876ba 100644 --- a/.obsidian/plugins/obsidian-tasks-plugin/styles.css +++ b/.obsidian/plugins/obsidian-tasks-plugin/styles.css @@ -1,53 +1,53 @@ -.tasks-count { - color: var(--text-faint); - padding-left: 20px; -} - -/* Pencil icon. */ -.tasks-edit { - background-color: var(--text-faint); - mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20aria-hidden%3D%22true%22%20focusable%3D%22false%22%20width%3D%221em%22%20height%3D%221em%22%20style%3D%22-ms-transform%3A%20rotate(360deg)%3B%20-webkit-transform%3A%20rotate(360deg)%3B%20transform%3A%20rotate(360deg)%3B%22%20preserveAspectRatio%3D%22xMidYMid%20meet%22%20viewBox%3D%220%200%201536%201536%22%3E%3Cpath%20d%3D%22M363%201408l91-91l-235-235l-91%2091v107h128v128h107zm523-928q0-22-22-22q-10%200-17%207l-542%20542q-7%207-7%2017q0%2022%2022%2022q10%200%2017-7l542-542q7-7%207-17zm-54-192l416%20416l-832%20832H0v-416zm683%2096q0%2053-37%2090l-166%20166l-416-416l166-165q36-38%2090-38q53%200%2091%2038l235%20234q37%2039%2037%2091z%22%20fill%3D%22%23626262%22%2F%3E%3C%2Fsvg%3E"); - -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20aria-hidden%3D%22true%22%20focusable%3D%22false%22%20width%3D%221em%22%20height%3D%221em%22%20style%3D%22-ms-transform%3A%20rotate(360deg)%3B%20-webkit-transform%3A%20rotate(360deg)%3B%20transform%3A%20rotate(360deg)%3B%22%20preserveAspectRatio%3D%22xMidYMid%20meet%22%20viewBox%3D%220%200%201536%201536%22%3E%3Cpath%20d%3D%22M363%201408l91-91l-235-235l-91%2091v107h128v128h107zm523-928q0-22-22-22q-10%200-17%207l-542%20542q-7%207-7%2017q0%2022%2022%2022q10%200%2017-7l542-542q7-7%207-17zm-54-192l416%20416l-832%20832H0v-416zm683%2096q0%2053-37%2090l-166%20166l-416-416l166-165q36-38%2090-38q53%200%2091%2038l235%20234q37%2039%2037%2091z%22%20fill%3D%22%23626262%22%2F%3E%3C%2Fsvg%3E"); - display: inline-block; - width: 1em; - height: 1em; - vertical-align: middle; - margin-left: 0.3em; - cursor: pointer; -} - -.internal-link.internal-link-short-mode { - text-decoration: none; -} - -.tasks-list-text { - position: relative; -} - -.tasks-list-text .tooltip { - position: absolute; - top: 0px; - left: 0px; - white-space: nowrap; -} - -.tasks-setting-important { - color: red; - font-weight: bold; -} - -.tasks-modal label { - margin: 5px 0 5px 0; -} - -.tasks-modal input[type=text] { - width: 100%; -} - -.tasks-modal hr { - margin: 10px 0 10px 0; -} - -.tasks-modal-date { - margin-bottom: 10px; -} +.tasks-count { + color: var(--text-faint); + padding-left: 20px; +} + +/* Pencil icon. */ +.tasks-edit { + background-color: var(--text-faint); + mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20aria-hidden%3D%22true%22%20focusable%3D%22false%22%20width%3D%221em%22%20height%3D%221em%22%20style%3D%22-ms-transform%3A%20rotate(360deg)%3B%20-webkit-transform%3A%20rotate(360deg)%3B%20transform%3A%20rotate(360deg)%3B%22%20preserveAspectRatio%3D%22xMidYMid%20meet%22%20viewBox%3D%220%200%201536%201536%22%3E%3Cpath%20d%3D%22M363%201408l91-91l-235-235l-91%2091v107h128v128h107zm523-928q0-22-22-22q-10%200-17%207l-542%20542q-7%207-7%2017q0%2022%2022%2022q10%200%2017-7l542-542q7-7%207-17zm-54-192l416%20416l-832%20832H0v-416zm683%2096q0%2053-37%2090l-166%20166l-416-416l166-165q36-38%2090-38q53%200%2091%2038l235%20234q37%2039%2037%2091z%22%20fill%3D%22%23626262%22%2F%3E%3C%2Fsvg%3E"); + -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20aria-hidden%3D%22true%22%20focusable%3D%22false%22%20width%3D%221em%22%20height%3D%221em%22%20style%3D%22-ms-transform%3A%20rotate(360deg)%3B%20-webkit-transform%3A%20rotate(360deg)%3B%20transform%3A%20rotate(360deg)%3B%22%20preserveAspectRatio%3D%22xMidYMid%20meet%22%20viewBox%3D%220%200%201536%201536%22%3E%3Cpath%20d%3D%22M363%201408l91-91l-235-235l-91%2091v107h128v128h107zm523-928q0-22-22-22q-10%200-17%207l-542%20542q-7%207-7%2017q0%2022%2022%2022q10%200%2017-7l542-542q7-7%207-17zm-54-192l416%20416l-832%20832H0v-416zm683%2096q0%2053-37%2090l-166%20166l-416-416l166-165q36-38%2090-38q53%200%2091%2038l235%20234q37%2039%2037%2091z%22%20fill%3D%22%23626262%22%2F%3E%3C%2Fsvg%3E"); + display: inline-block; + width: 1em; + height: 1em; + vertical-align: middle; + margin-left: 0.3em; + cursor: pointer; +} + +.internal-link.internal-link-short-mode { + text-decoration: none; +} + +.tasks-list-text { + position: relative; +} + +.tasks-list-text .tooltip { + position: absolute; + top: 0px; + left: 0px; + white-space: nowrap; +} + +.tasks-setting-important { + color: red; + font-weight: bold; +} + +.tasks-modal label { + margin: 5px 0 5px 0; +} + +.tasks-modal input[type=text] { + width: 100%; +} + +.tasks-modal hr { + margin: 10px 0 10px 0; +} + +.tasks-modal-date { + margin-bottom: 10px; +} diff --git a/.obsidian/plugins/oz-image-plugin/manifest.json b/.obsidian/plugins/oz-image-plugin/manifest.json index 7708cd4..3a71906 100644 --- a/.obsidian/plugins/oz-image-plugin/manifest.json +++ b/.obsidian/plugins/oz-image-plugin/manifest.json @@ -1,10 +1,10 @@ -{ - "id": "oz-image-plugin", - "name": "Ozan's Image in Editor Plugin", - "version": "2.1.1", - "minAppVersion": "0.13.14", - "description": "View Images, Transclusions, iFrames and PDF Files within the Editor without a necessity to switch to Preview.", - "author": "Ozan Tellioglu", - "authorUrl": "https://ozan.pl/aboutme/", - "isDesktopOnly": false -} +{ + "id": "oz-image-plugin", + "name": "Ozan's Image in Editor Plugin", + "version": "2.1.1", + "minAppVersion": "0.13.14", + "description": "View Images, Transclusions, iFrames and PDF Files within the Editor without a necessity to switch to Preview.", + "author": "Ozan Tellioglu", + "authorUrl": "https://ozan.pl/aboutme/", + "isDesktopOnly": false +} diff --git a/.obsidian/plugins/oz-image-plugin/styles.css b/.obsidian/plugins/oz-image-plugin/styles.css index f793329..69d01a2 100644 --- a/.obsidian/plugins/oz-image-plugin/styles.css +++ b/.obsidian/plugins/oz-image-plugin/styles.css @@ -1,270 +1,270 @@ -.CodeMirror-linewidget img { - margin-top: 5px; - margin-bottom: 5px; -} - -.theme-dark img[alt$='#invert'], -.theme-dark div.oz-image-widget > img[alt$='#invert'], -.theme-dark div.oz-image-widget-cm6 > img[alt$='#invert'] { - filter: invert(1) hue-rotate(180deg); -} - -.oz-transclusion-widget, -.oz-transclusion-widget-cm6 { - padding: 3px 3px 3px 19px; - border: 0.7px solid var(--text-muted); - max-height: 600px; - overflow: auto; - border-radius: 7px; - margin-top: 5px; -} - -.oz-coffee-div { - text-align: center; - margin-top: 20px; -} - -/* Line Numbers In Editor CodeBlock Renders */ -pre[class*='language-'].line-numbers { - position: relative; - padding-left: 3.8em; - counter-reset: linenumber; -} -pre[class*='language-'].line-numbers > code { - position: relative; - white-space: inherit; -} -.line-numbers .line-numbers-rows { - position: absolute; - pointer-events: none; - top: 0; - font-size: 100%; - left: -3.8em; - width: 3em; /* works for line-numbers below 1000 lines */ - letter-spacing: -1px; - border-right: 1px solid #999; - - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; -} -.line-numbers-rows > span { - display: block; - counter-increment: linenumber; -} -.line-numbers-rows > span:before { - content: counter(linenumber); - color: #999; - display: block; - padding-right: 0.8em; - text-align: right; -} - -.mermaid-error-information { - color: red; - font-size: 14px; - margin-bottom: 3px; -} - -.oz-modal-center { - text-align: center; - margin: 20px 10px 20px 10px; -} - -.oz-modal-title { - text-align: center; -} - -.inline-mathjax-block { - margin-left: 5px; -} - -.oz-image-widget > img, -.oz-image-widget-cm6 > img { - -webkit-user-drag: none; - user-select: none; - -moz-user-select: none; - -webkit-user-select: none; - -ms-user-select: none; -} - -div.oz-transclusion-widget pre, -div.oz-transclusion-widget-cm6 pre { - overflow-x: auto; -} - -.oz-transclusion-widget > *, -.oz-transclusion-widget-cm6 > * { - user-select: text !important; -} - -/* Rich Link Cards */ -/* Credit: https://github.com/dhamaniasad/obsidian-rich-links */ -.oz-rich-link-card { - border: 1px solid var(--background-modifier-border); - border-radius: 3px; - width: 100%; - display: flex; - text-decoration: none; - background-color: var(--background-primary); -} - -.oz-rich-link-card-container { - position: relative; -} - -.oz-rich-link-image-container { - height: 100px; - width: 35%; - min-width: 120px; - overflow: hidden; - border-right: 1px solid var(--background-modifier-border); -} - -.oz-rich-link-image { - background-position: center center; - background-size: cover; - background-repeat: no-repeat; - padding-bottom: 100px; - background-color: var(--background-secondary); -} - -.oz-rich-link-card-text { - padding: 4px; - width: 75%; -} - -.oz-rich-link-card-title { - font-family: sans-serif; - font-size: 16px; - margin: 0 0 4px 0; - display: -webkit-box; - -webkit-line-clamp: 1; - -webkit-box-orient: vertical; - overflow: hidden; - color: var(--text-normal); -} - -.oz-rich-link-card-description { - font-family: sans-serif; - font-size: 14px; - margin: 0; - color: var(--text-muted); - display: -webkit-box; - -webkit-line-clamp: 2; - -webkit-box-orient: vertical; - overflow: hidden; -} - -.oz-rich-link-href { - font-family: sans-serif; - font-size: 14px; - margin: 0; - color: var(--text-faint); - display: -webkit-box; - -webkit-line-clamp: 1; - -webkit-box-orient: vertical; - overflow: hidden; -} - -.image-in-editor-settings-main-header { - text-align: center !important; - margin-bottom: 20px; -} - -.image-in-editor-cm-header { - margin-top: 0px; -} - -.image-in-editor-editor-header { - margin-bottom: 5px; -} - -/* Sizing for CM5 and CM6 */ - -div.oz-image-widget > img[alt$='#small'], -div.oz-image-widget-cm6 > img[alt$='#small'] { - max-width: 75% !important; - min-width: 200pt !important; -} - -div.oz-image-widget > img[alt$='#x-small'], -div.oz-image-widget-cm6 > img[alt$='#x-small'] { - max-width: 50% !important; - min-width: 100pt !important; -} - -div.oz-image-widget > img[alt$='#xx-small'], -div.oz-image-widget-cm6 > img[alt$='#xx-small'] { - max-width: 25% !important; - min-width: 50pt !important; -} - -/* Style For CM6 */ - -div.oz-image-widget-cm6, -div.oz-custom-html-widget-cm6, -div.oz-pdf-widget-cm6 { - padding-top: 5px; - padding-bottom: 5px; -} - -div.oz-image-widget-cm6 + br, -div.oz-custom-html-widget-cm6 + br, -div.oz-pdf-widget-cm6 + br { - display: none; -} - -.cm-line div.oz-transclusion-widget-cm6 { - padding-top: 10px; - padding-bottom: 10px; -} - -.cm-line div.oz-transclusion-widget-cm6 * { - margin-block-start: 0px !important; - margin-block-end: 0px !important; -} - -/* Legacy Admonition */ - -.oz-admonition { - margin: 1.5em 0; - padding: 0; - overflow: hidden; - page-break-inside: avoid; - border-left: 0.3rem solid rgb(var(--oz-admonition-color)); - border-radius: 0.1rem; - box-shadow: 0 0.2rem 0.5rem rgb(44, 43, 43); -} - -.oz-admonition-title { - position: relative; - padding: 15px 5px 15px 15px; - font-weight: 700; - background-color: rgba(var(--oz-admonition-color), 0.1); -} - -.oz-admonition-title-content { - display: flex; - justify-content: flex-start; - margin-top: 0 !important; - margin-bottom: 0 !important; -} - -.oz-admonition-content-holder { - position: relative; - padding-top: 15px; - padding-bottom: 15px; -} - -.oz-admonition-content { - margin: 10px 15px; - position: relative; - overflow-x: auto; -} - -.oz-admonition-title-markdown { - text-transform: capitalize; - display: block; -} +.CodeMirror-linewidget img { + margin-top: 5px; + margin-bottom: 5px; +} + +.theme-dark img[alt$='#invert'], +.theme-dark div.oz-image-widget > img[alt$='#invert'], +.theme-dark div.oz-image-widget-cm6 > img[alt$='#invert'] { + filter: invert(1) hue-rotate(180deg); +} + +.oz-transclusion-widget, +.oz-transclusion-widget-cm6 { + padding: 3px 3px 3px 19px; + border: 0.7px solid var(--text-muted); + max-height: 600px; + overflow: auto; + border-radius: 7px; + margin-top: 5px; +} + +.oz-coffee-div { + text-align: center; + margin-top: 20px; +} + +/* Line Numbers In Editor CodeBlock Renders */ +pre[class*='language-'].line-numbers { + position: relative; + padding-left: 3.8em; + counter-reset: linenumber; +} +pre[class*='language-'].line-numbers > code { + position: relative; + white-space: inherit; +} +.line-numbers .line-numbers-rows { + position: absolute; + pointer-events: none; + top: 0; + font-size: 100%; + left: -3.8em; + width: 3em; /* works for line-numbers below 1000 lines */ + letter-spacing: -1px; + border-right: 1px solid #999; + + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} +.line-numbers-rows > span { + display: block; + counter-increment: linenumber; +} +.line-numbers-rows > span:before { + content: counter(linenumber); + color: #999; + display: block; + padding-right: 0.8em; + text-align: right; +} + +.mermaid-error-information { + color: red; + font-size: 14px; + margin-bottom: 3px; +} + +.oz-modal-center { + text-align: center; + margin: 20px 10px 20px 10px; +} + +.oz-modal-title { + text-align: center; +} + +.inline-mathjax-block { + margin-left: 5px; +} + +.oz-image-widget > img, +.oz-image-widget-cm6 > img { + -webkit-user-drag: none; + user-select: none; + -moz-user-select: none; + -webkit-user-select: none; + -ms-user-select: none; +} + +div.oz-transclusion-widget pre, +div.oz-transclusion-widget-cm6 pre { + overflow-x: auto; +} + +.oz-transclusion-widget > *, +.oz-transclusion-widget-cm6 > * { + user-select: text !important; +} + +/* Rich Link Cards */ +/* Credit: https://github.com/dhamaniasad/obsidian-rich-links */ +.oz-rich-link-card { + border: 1px solid var(--background-modifier-border); + border-radius: 3px; + width: 100%; + display: flex; + text-decoration: none; + background-color: var(--background-primary); +} + +.oz-rich-link-card-container { + position: relative; +} + +.oz-rich-link-image-container { + height: 100px; + width: 35%; + min-width: 120px; + overflow: hidden; + border-right: 1px solid var(--background-modifier-border); +} + +.oz-rich-link-image { + background-position: center center; + background-size: cover; + background-repeat: no-repeat; + padding-bottom: 100px; + background-color: var(--background-secondary); +} + +.oz-rich-link-card-text { + padding: 4px; + width: 75%; +} + +.oz-rich-link-card-title { + font-family: sans-serif; + font-size: 16px; + margin: 0 0 4px 0; + display: -webkit-box; + -webkit-line-clamp: 1; + -webkit-box-orient: vertical; + overflow: hidden; + color: var(--text-normal); +} + +.oz-rich-link-card-description { + font-family: sans-serif; + font-size: 14px; + margin: 0; + color: var(--text-muted); + display: -webkit-box; + -webkit-line-clamp: 2; + -webkit-box-orient: vertical; + overflow: hidden; +} + +.oz-rich-link-href { + font-family: sans-serif; + font-size: 14px; + margin: 0; + color: var(--text-faint); + display: -webkit-box; + -webkit-line-clamp: 1; + -webkit-box-orient: vertical; + overflow: hidden; +} + +.image-in-editor-settings-main-header { + text-align: center !important; + margin-bottom: 20px; +} + +.image-in-editor-cm-header { + margin-top: 0px; +} + +.image-in-editor-editor-header { + margin-bottom: 5px; +} + +/* Sizing for CM5 and CM6 */ + +div.oz-image-widget > img[alt$='#small'], +div.oz-image-widget-cm6 > img[alt$='#small'] { + max-width: 75% !important; + min-width: 200pt !important; +} + +div.oz-image-widget > img[alt$='#x-small'], +div.oz-image-widget-cm6 > img[alt$='#x-small'] { + max-width: 50% !important; + min-width: 100pt !important; +} + +div.oz-image-widget > img[alt$='#xx-small'], +div.oz-image-widget-cm6 > img[alt$='#xx-small'] { + max-width: 25% !important; + min-width: 50pt !important; +} + +/* Style For CM6 */ + +div.oz-image-widget-cm6, +div.oz-custom-html-widget-cm6, +div.oz-pdf-widget-cm6 { + padding-top: 5px; + padding-bottom: 5px; +} + +div.oz-image-widget-cm6 + br, +div.oz-custom-html-widget-cm6 + br, +div.oz-pdf-widget-cm6 + br { + display: none; +} + +.cm-line div.oz-transclusion-widget-cm6 { + padding-top: 10px; + padding-bottom: 10px; +} + +.cm-line div.oz-transclusion-widget-cm6 * { + margin-block-start: 0px !important; + margin-block-end: 0px !important; +} + +/* Legacy Admonition */ + +.oz-admonition { + margin: 1.5em 0; + padding: 0; + overflow: hidden; + page-break-inside: avoid; + border-left: 0.3rem solid rgb(var(--oz-admonition-color)); + border-radius: 0.1rem; + box-shadow: 0 0.2rem 0.5rem rgb(44, 43, 43); +} + +.oz-admonition-title { + position: relative; + padding: 15px 5px 15px 15px; + font-weight: 700; + background-color: rgba(var(--oz-admonition-color), 0.1); +} + +.oz-admonition-title-content { + display: flex; + justify-content: flex-start; + margin-top: 0 !important; + margin-bottom: 0 !important; +} + +.oz-admonition-content-holder { + position: relative; + padding-top: 15px; + padding-bottom: 15px; +} + +.oz-admonition-content { + margin: 10px 15px; + position: relative; + overflow-x: auto; +} + +.oz-admonition-title-markdown { + text-transform: capitalize; + display: block; +} diff --git a/.obsidian/plugins/table-editor-obsidian/main.js b/.obsidian/plugins/table-editor-obsidian/main.js index f490c4b..ad29f1e 100644 --- a/.obsidian/plugins/table-editor-obsidian/main.js +++ b/.obsidian/plugins/table-editor-obsidian/main.js @@ -2,82 +2,82 @@ var obsidian = require('obsidian'); -/*! ***************************************************************************** -Copyright (c) Microsoft Corporation. - -Permission to use, copy, modify, and/or distribute this software for any -purpose with or without fee is hereby granted. - -THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH -REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY -AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, -INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM -LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR -OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR -PERFORMANCE OF THIS SOFTWARE. -***************************************************************************** */ -/* global Reflect, Promise */ - -var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); -}; - -function __extends(d, b) { - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); -} - -var __assign = function() { - __assign = Object.assign || function __assign(t) { - for (var s, i = 1, n = arguments.length; i < n; i++) { - s = arguments[i]; - for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; - } - return t; - }; - return __assign.apply(this, arguments); -}; - -function __awaiter(thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -} - -function __generator(thisArg, body) { - var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; - return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; - function verb(n) { return function (v) { return step([n, v]); }; } - function step(op) { - if (f) throw new TypeError("Generator is already executing."); - while (_) try { - if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; - if (y = 0, t) op = [op[0] & 2, t.value]; - switch (op[0]) { - case 0: case 1: t = op; break; - case 4: _.label++; return { value: op[1], done: false }; - case 5: _.label++; y = op[1]; op = [0]; continue; - case 7: op = _.ops.pop(); _.trys.pop(); continue; - default: - if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } - if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } - if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } - if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } - if (t[2]) _.ops.pop(); - _.trys.pop(); continue; - } - op = body.call(thisArg, _); - } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } - if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; - } +/*! ***************************************************************************** +Copyright (c) Microsoft Corporation. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH +REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY +AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, +INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM +LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR +OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THIS SOFTWARE. +***************************************************************************** */ +/* global Reflect, Promise */ + +var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); +}; + +function __extends(d, b) { + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); +} + +var __assign = function() { + __assign = Object.assign || function __assign(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; + +function __awaiter(thisArg, _arguments, P, generator) { + function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } + return new (P || (P = Promise))(function (resolve, reject) { + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } + function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); +} + +function __generator(thisArg, body) { + var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; + return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; + function verb(n) { return function (v) { return step([n, v]); }; } + function step(op) { + if (f) throw new TypeError("Generator is already executing."); + while (_) try { + if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; + if (y = 0, t) op = [op[0] & 2, t.value]; + switch (op[0]) { + case 0: case 1: t = op; break; + case 4: _.label++; return { value: op[1], done: false }; + case 5: _.label++; y = op[1]; op = [0]; continue; + case 7: op = _.ops.pop(); _.trys.pop(); continue; + default: + if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } + if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } + if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } + if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } + if (t[2]) _.ops.pop(); + _.trys.pop(); continue; + } + op = body.call(thisArg, _); + } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } + if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; + } } var icons = { diff --git a/.obsidian/workspace b/.obsidian/workspace index 00bfad3..80c05eb 100644 --- a/.obsidian/workspace +++ b/.obsidian/workspace @@ -116,8 +116,8 @@ }, "active": "ec13ce58b15fa6d4", "lastOpenFiles": [ - "02. PARA/01. Project(專案)/001. Kong.md", "02. PARA/01. Project(專案)/008. Sentinel.md", + "02. PARA/01. Project(專案)/001. Kong.md", "00. TOP/01. TODO.md", "01. Daily/2022-08-15.md", "01. Daily/2022-07-15(週五).md",