Compare commits
10 commits
175a6dd1f1
...
6d003be503
Author | SHA1 | Date | |
---|---|---|---|
baalajimaestro | 6d003be503 | ||
baalajimaestro | 9d0b0540e6 | ||
baalajimaestro | 4d99c6a327 | ||
baalajimaestro | 0b5a666de4 | ||
baalajimaestro | 298ac6134a | ||
baalajimaestro | a4a32e3395 | ||
baalajimaestro | a2c2318982 | ||
baalajimaestro | 3670a0bc99 | ||
baalajimaestro | 19c9718f91 | ||
baalajimaestro | 5eb96ecbaa |
3
.obsidian/core-plugins-migration.json
vendored
3
.obsidian/core-plugins-migration.json
vendored
|
@ -25,5 +25,6 @@
|
|||
"workspaces": false,
|
||||
"file-recovery": true,
|
||||
"publish": false,
|
||||
"sync": false
|
||||
"sync": false,
|
||||
"bookmarks": true
|
||||
}
|
2
.obsidian/core-plugins.json
vendored
2
.obsidian/core-plugins.json
vendored
|
@ -13,7 +13,7 @@
|
|||
"note-composer",
|
||||
"command-palette",
|
||||
"editor-status",
|
||||
"starred",
|
||||
"bookmarks",
|
||||
"outline",
|
||||
"word-count",
|
||||
"file-recovery"
|
||||
|
|
362
.obsidian/plugins/dataview/main.js
vendored
362
.obsidian/plugins/dataview/main.js
vendored
File diff suppressed because one or more lines are too long
2
.obsidian/plugins/dataview/manifest.json
vendored
2
.obsidian/plugins/dataview/manifest.json
vendored
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"id": "dataview",
|
||||
"name": "Dataview",
|
||||
"version": "0.5.55",
|
||||
"version": "0.5.56",
|
||||
"minAppVersion": "0.13.11",
|
||||
"description": "Complex data views for the data-obsessed.",
|
||||
"author": "Michael Brenan <blacksmithgu@gmail.com>",
|
||||
|
|
|
@ -14,11 +14,14 @@
|
|||
"drawingFilenameDateTime": "YYYY-MM-DD HH.mm.ss",
|
||||
"useExcalidrawExtension": true,
|
||||
"displaySVGInPreview": true,
|
||||
"previewImageType": "SVGIMG",
|
||||
"allowImageCache": true,
|
||||
"displayExportedImageIfAvailable": false,
|
||||
"previewMatchObsidianTheme": false,
|
||||
"width": "400",
|
||||
"dynamicStyling": "colorful",
|
||||
"isLeftHanded": false,
|
||||
"iframeMatchExcalidrawTheme": true,
|
||||
"matchTheme": false,
|
||||
"matchThemeAlways": false,
|
||||
"matchThemeTrigger": false,
|
||||
|
@ -401,5 +404,11 @@
|
|||
}
|
||||
}
|
||||
],
|
||||
"numberOfCustomPens": 0
|
||||
"numberOfCustomPens": 0,
|
||||
"pdfScale": 4,
|
||||
"pdfBorderBox": true,
|
||||
"pdfGapSize": 20,
|
||||
"pdfLockAfterImport": true,
|
||||
"pdfNumColumns": 1,
|
||||
"pdfImportScale": 0.3
|
||||
}
|
File diff suppressed because one or more lines are too long
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"id": "obsidian-excalidraw-plugin",
|
||||
"name": "Excalidraw",
|
||||
"version": "1.8.26",
|
||||
"version": "1.9.18",
|
||||
"minAppVersion": "1.1.6",
|
||||
"description": "An Obsidian plugin to edit and view Excalidraw drawings",
|
||||
"author": "Zsolt Viczian",
|
||||
|
|
|
@ -21,29 +21,33 @@
|
|||
display: none;
|
||||
}
|
||||
|
||||
img.excalidraw-embedded-img {
|
||||
.excalidraw-embedded-img {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
img.excalidraw-svg-right-wrap {
|
||||
.excalidraw-svg-right-wrap {
|
||||
float: right;
|
||||
margin: 0px 0px 20px 20px;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
img.excalidraw-svg-left-wrap {
|
||||
.excalidraw-svg-left-wrap {
|
||||
float: left;
|
||||
margin: 0px 35px 20px 0px;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
img.excalidraw-svg-right {
|
||||
.excalidraw-svg-right {
|
||||
float: right;
|
||||
}
|
||||
|
||||
.excalidraw-svg-center {
|
||||
text-align: center;
|
||||
margin: auto;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
img.excalidraw-svg-left {
|
||||
.excalidraw-svg-left {
|
||||
float: left;
|
||||
}
|
||||
|
||||
|
@ -99,6 +103,10 @@ li[data-testid] {
|
|||
border: 0 !important;
|
||||
box-shadow: 0 !important;
|
||||
background-color: transparent !important;
|
||||
}
|
||||
|
||||
.excalidraw .popover {
|
||||
position: fixed !important;
|
||||
}
|
||||
|
||||
.disable-zen-mode--visible {
|
||||
|
@ -340,4 +348,70 @@ div.excalidraw-draginfo {
|
|||
background: var(--color-base-40);
|
||||
display: block;
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
.excalidraw [data-radix-popper-content-wrapper] {
|
||||
position: absolute !important;
|
||||
}
|
||||
|
||||
.excalidraw__embeddable-container .view-header {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
.excalidraw__embeddable-container input {
|
||||
background: initial;
|
||||
}
|
||||
|
||||
.excalidraw .HelpDialog__key {
|
||||
background-color: var(--color-gray-80) !important;
|
||||
}
|
||||
|
||||
.excalidraw .embeddable-menu {
|
||||
width: fit-content;
|
||||
height: fit-content;
|
||||
position: absolute;
|
||||
display: block;
|
||||
z-index: var(--zIndex-layerUI);
|
||||
}
|
||||
|
||||
.excalidraw .welcome-screen-center__logo svg {
|
||||
width: 5rem !important;
|
||||
}
|
||||
|
||||
.excalidraw-image-wrapper {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.excalidraw-image-wrapper img {
|
||||
margin: auto;
|
||||
}
|
||||
|
||||
.modal-content.excalidraw-scriptengine-install .search-bar-wrapper {
|
||||
position: sticky;
|
||||
top: 1em;
|
||||
margin-right: 1em;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 5px;
|
||||
flex-wrap: nowrap;
|
||||
z-index: 10;
|
||||
background: var(--background-secondary);
|
||||
padding: 0.5em;
|
||||
border-bottom: 1px solid var(--background-modifier-border);
|
||||
float: right;
|
||||
max-width: 28em;
|
||||
}
|
||||
|
||||
.modal-content.excalidraw-scriptengine-install .hit-count {
|
||||
margin-left: 0.5em;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.modal-content.excalidraw-scriptengine-install .active-highlight {
|
||||
border: 2px solid var(--color-accent-2);
|
||||
background-color: var(--color-accent);
|
||||
}
|
||||
|
||||
.excalidraw-svg svg a {
|
||||
text-decoration: none;
|
||||
}
|
18513
.obsidian/plugins/obsidian-git/main.js
vendored
18513
.obsidian/plugins/obsidian-git/main.js
vendored
File diff suppressed because it is too large
Load diff
2
.obsidian/plugins/obsidian-git/manifest.json
vendored
2
.obsidian/plugins/obsidian-git/manifest.json
vendored
|
@ -5,5 +5,5 @@
|
|||
"isDesktopOnly": false,
|
||||
"fundingUrl": "https://ko-fi.com/vinzent",
|
||||
"js": "main.js",
|
||||
"version": "2.19.1"
|
||||
"version": "2.21.0"
|
||||
}
|
||||
|
|
27
.obsidian/plugins/obsidian-git/styles.css
vendored
27
.obsidian/plugins/obsidian-git/styles.css
vendored
|
@ -8,6 +8,11 @@
|
|||
}
|
||||
}
|
||||
|
||||
.workspace-leaf-content[data-type='git-view'] .button-border {
|
||||
border: 2px solid var(--interactive-accent);
|
||||
border-radius: var(--radius-s);
|
||||
}
|
||||
|
||||
.workspace-leaf-content[data-type='git-view'] .view-content {
|
||||
padding: 0;
|
||||
}
|
||||
|
@ -484,4 +489,24 @@
|
|||
|
||||
.workspace-leaf-content[data-type="diff-view"] .d2h-moved-tag {
|
||||
border: 1px solid #3572b0;
|
||||
}
|
||||
}
|
||||
|
||||
/* ====================== Line Authoring Information ====================== */
|
||||
|
||||
.cm-gutterElement.obs-git-blame-gutter {
|
||||
/* Add background color to spacing inbetween and around the gutter for better aesthetics */
|
||||
border-width: 0px 2px 0.2px 2px;
|
||||
border-style: solid;
|
||||
border-color: var(--background-secondary);
|
||||
background-color: var(--background-secondary);
|
||||
}
|
||||
|
||||
.cm-gutterElement.obs-git-blame-gutter > div, .line-author-settings-preview {
|
||||
/* delegate text color to settings */
|
||||
color: var(--obs-git-gutter-text);
|
||||
font-family: monospace;
|
||||
height: 100%; /* ensure, that age-based background color occupies entire parent */
|
||||
text-align: right;
|
||||
padding: 0px 6px 0px 6px;
|
||||
white-space: pre; /* Keep spaces and do not collapse them. */
|
||||
}
|
||||
|
|
68
.obsidian/plugins/obsidian-kanban/main.js
vendored
68
.obsidian/plugins/obsidian-kanban/main.js
vendored
File diff suppressed because one or more lines are too long
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"id": "obsidian-kanban",
|
||||
"name": "Kanban",
|
||||
"version": "1.5.2",
|
||||
"version": "1.5.3",
|
||||
"minAppVersion": "1.0.0",
|
||||
"description": "Create markdown-backed Kanban boards in Obsidian.",
|
||||
"author": "mgmeyers",
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
"selectAll": true,
|
||||
"listLines": false,
|
||||
"listLineAction": "toggle-folding",
|
||||
"dndExperiment": false,
|
||||
"previousRelease": "4.6.1"
|
||||
"dnd": true,
|
||||
"previousRelease": "4.7.1",
|
||||
"dndExperiment": false
|
||||
}
|
3170
.obsidian/plugins/obsidian-outliner/main.js
vendored
3170
.obsidian/plugins/obsidian-outliner/main.js
vendored
File diff suppressed because one or more lines are too long
|
@ -1,8 +1,8 @@
|
|||
{
|
||||
"id": "obsidian-outliner",
|
||||
"name": "Outliner",
|
||||
"version": "4.6.1",
|
||||
"minAppVersion": "1.0.0",
|
||||
"version": "4.8.0",
|
||||
"minAppVersion": "1.1.16",
|
||||
"description": "Work with your lists like in Workflowy or RoamResearch.",
|
||||
"author": "Viacheslav Slinko",
|
||||
"authorUrl": "https://github.com/vslinko",
|
||||
|
|
23
.obsidian/plugins/obsidian-outliner/styles.css
vendored
23
.obsidian/plugins/obsidian-outliner/styles.css
vendored
|
@ -1,14 +1,13 @@
|
|||
/* lists */
|
||||
/* lists and bullets */
|
||||
.outliner-plugin-better-lists .cm-s-obsidian .HyperMD-list-line {
|
||||
padding-top: 0.4em;
|
||||
}
|
||||
|
||||
/* bullets */
|
||||
.outliner-plugin-better-bullets .cm-formatting-list-ul {
|
||||
.outliner-plugin-better-lists .cm-formatting-list-ul {
|
||||
margin-right: 0.3em;
|
||||
}
|
||||
|
||||
.outliner-plugin-better-bullets .list-bullet::after {
|
||||
.outliner-plugin-better-lists .list-bullet::after {
|
||||
width: 0.4em;
|
||||
height: 0.4em;
|
||||
background-color: var(--text-muted);
|
||||
|
@ -71,10 +70,15 @@
|
|||
}
|
||||
|
||||
/* drag-n-drop */
|
||||
.outliner-plugin-dragging-line {
|
||||
.outliner-plugin-dropping-line {
|
||||
background-color: hsla(var(--interactive-accent-hsl), 0.4);
|
||||
}
|
||||
|
||||
.outliner-plugin-dragging-line {
|
||||
opacity: 0.5;
|
||||
background-color: hsla(var(--interactive-accent-hsl), 0.2);
|
||||
}
|
||||
|
||||
.outliner-plugin-drop-zone {
|
||||
width: 300px;
|
||||
height: 4px;
|
||||
|
@ -84,12 +88,9 @@
|
|||
pointer-events: none;
|
||||
}
|
||||
|
||||
.outliner-plugin-drop-zone-before {
|
||||
margin-top: -8px;
|
||||
}
|
||||
|
||||
.outliner-plugin-drop-zone-after {
|
||||
margin-top: -1px;
|
||||
.outliner-plugin-drop-zone-padding {
|
||||
position: absolute;
|
||||
height: 4px;
|
||||
}
|
||||
|
||||
body.outliner-plugin-dnd:not(.outliner-plugin-dragging) .cm-formatting-list,
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
{
|
||||
"obsidian-prism-theme@@color-schemes-dt": "pt-color-scheme-custom-dt"
|
||||
"obsidian-prism-theme@@color-schemes-dt": "pt-color-scheme-custom-dt",
|
||||
"obsidian-prism-theme@@color-scheme-style-dt": "pt-color-scheme-style-two-tone-and-border-dt"
|
||||
}
|
442
.obsidian/plugins/obsidian-style-settings/main.js
vendored
442
.obsidian/plugins/obsidian-style-settings/main.js
vendored
|
@ -3737,9 +3737,18 @@ class CSSSettingsManager {
|
|||
Object.keys(config).forEach((settingId) => {
|
||||
const setting = config[settingId];
|
||||
if (setting.type === SettingType.CLASS_TOGGLE) {
|
||||
if (this.getSetting(section, settingId)) {
|
||||
document.body.classList.remove(setting.id);
|
||||
}
|
||||
document.body.classList.remove(setting.id);
|
||||
}
|
||||
else if (setting.type === SettingType.CLASS_SELECT) {
|
||||
const multiToggle = setting;
|
||||
multiToggle.options.forEach((v) => {
|
||||
if (typeof v === 'string') {
|
||||
document.body.classList.remove(v);
|
||||
}
|
||||
else {
|
||||
document.body.classList.remove(v.value);
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
|
@ -3747,26 +3756,27 @@ class CSSSettingsManager {
|
|||
setCSSVariables() {
|
||||
const [vars, themedLight, themedDark] = getCSSVariables(this.settings, this.config, this.gradients, this);
|
||||
this.styleTag.innerText = `
|
||||
body.css-settings-manager {
|
||||
${vars.reduce((combined, current) => {
|
||||
body.css-settings-manager {
|
||||
${vars.reduce((combined, current) => {
|
||||
return combined + `--${current.key}: ${current.value}; `;
|
||||
}, '')}
|
||||
}
|
||||
}
|
||||
|
||||
body.theme-light.css-settings-manager {
|
||||
${themedLight.reduce((combined, current) => {
|
||||
body.theme-light.css-settings-manager {
|
||||
${themedLight.reduce((combined, current) => {
|
||||
return combined + `--${current.key}: ${current.value}; `;
|
||||
}, '')}
|
||||
}
|
||||
}
|
||||
|
||||
body.theme-dark.css-settings-manager {
|
||||
${themedDark.reduce((combined, current) => {
|
||||
body.theme-dark.css-settings-manager {
|
||||
${themedDark.reduce((combined, current) => {
|
||||
return combined + `--${current.key}: ${current.value}; `;
|
||||
}, '')}
|
||||
}
|
||||
`
|
||||
}
|
||||
`
|
||||
.trim()
|
||||
.replace(/[\r\n\s]+/g, ' ');
|
||||
this.plugin.app.workspace.trigger('css-change', { source: 'style-settings' });
|
||||
}
|
||||
setConfig(settings) {
|
||||
this.config = {};
|
||||
|
@ -3819,16 +3829,22 @@ class CSSSettingsManager {
|
|||
setSetting(sectionId, settingId, value) {
|
||||
this.settings[`${sectionId}@@${settingId}`] = value;
|
||||
this.save();
|
||||
this.removeClasses();
|
||||
this.initClasses();
|
||||
}
|
||||
setSettings(settings) {
|
||||
Object.keys(settings).forEach((id) => {
|
||||
this.settings[id] = settings[id];
|
||||
});
|
||||
this.removeClasses();
|
||||
this.initClasses();
|
||||
return this.save();
|
||||
}
|
||||
clearSetting(sectionId, settingId) {
|
||||
delete this.settings[`${sectionId}@@${settingId}`];
|
||||
this.save();
|
||||
this.removeClasses();
|
||||
this.initClasses();
|
||||
}
|
||||
clearSection(sectionId) {
|
||||
Object.keys(this.settings).forEach((key) => {
|
||||
|
@ -3838,6 +3854,8 @@ class CSSSettingsManager {
|
|||
}
|
||||
});
|
||||
this.save();
|
||||
this.removeClasses();
|
||||
this.initClasses();
|
||||
}
|
||||
export(section, config) {
|
||||
new ExportModal(this.plugin.app, this.plugin, section, config).open();
|
||||
|
@ -8027,13 +8045,6 @@ function createDescription(description, def, defLabel) {
|
|||
}
|
||||
return fragment;
|
||||
}
|
||||
let timer;
|
||||
function customDebounce(cb, timeout = 300) {
|
||||
clearTimeout(timer);
|
||||
timer = setTimeout(() => {
|
||||
cb();
|
||||
}, timeout);
|
||||
}
|
||||
|
||||
var fuzzysort = createCommonjsModule(function (module) {
|
||||
((root, UMD) => {
|
||||
|
@ -8579,16 +8590,28 @@ var fuzzysort = createCommonjsModule(function (module) {
|
|||
// TODO: (perf) prepareSearch seems slow
|
||||
});
|
||||
|
||||
class AbstractSettingComponent {
|
||||
constructor(sectionId, sectionName, setting, settingsManager, isView) {
|
||||
class AbstractSettingComponent extends obsidian.Component {
|
||||
constructor(parent, sectionId, sectionName, setting, settingsManager, isView) {
|
||||
super();
|
||||
this.childEl = null;
|
||||
this.parent = parent;
|
||||
this.sectionId = sectionId;
|
||||
this.sectionName = sectionName;
|
||||
this.setting = setting;
|
||||
this.settingsManager = settingsManager;
|
||||
this.isView = isView;
|
||||
this.onInit();
|
||||
}
|
||||
onInit() { }
|
||||
get containerEl() {
|
||||
return this.parent instanceof HTMLElement
|
||||
? this.parent
|
||||
: this.parent.childEl;
|
||||
}
|
||||
onload() {
|
||||
this.render();
|
||||
}
|
||||
onunload() {
|
||||
this.destroy();
|
||||
}
|
||||
/**
|
||||
* Matches the Component against `str`. A perfect match returns 0, no match returns negative infinity.
|
||||
*
|
||||
|
@ -8614,10 +8637,10 @@ class AbstractSettingComponent {
|
|||
const resetTooltip = 'Restore default';
|
||||
|
||||
class ClassToggleSettingComponent extends AbstractSettingComponent {
|
||||
render(containerEl) {
|
||||
render() {
|
||||
const title = getTitle(this.setting);
|
||||
const description = getDescription(this.setting);
|
||||
this.settingEl = new obsidian.Setting(containerEl);
|
||||
this.settingEl = new obsidian.Setting(this.containerEl);
|
||||
this.settingEl.setName(title);
|
||||
this.settingEl.setDesc(description !== null && description !== void 0 ? description : '');
|
||||
this.settingEl.addToggle((toggle) => {
|
||||
|
@ -8625,12 +8648,6 @@ class ClassToggleSettingComponent extends AbstractSettingComponent {
|
|||
toggle.setValue(value !== undefined ? !!value : !!this.setting.default);
|
||||
toggle.onChange((value) => {
|
||||
this.settingsManager.setSetting(this.sectionId, this.setting.id, value);
|
||||
if (value) {
|
||||
document.body.classList.add(this.setting.id);
|
||||
}
|
||||
else {
|
||||
document.body.classList.remove(this.setting.id);
|
||||
}
|
||||
});
|
||||
this.toggleComponent = toggle;
|
||||
});
|
||||
|
@ -8639,12 +8656,6 @@ class ClassToggleSettingComponent extends AbstractSettingComponent {
|
|||
b.onClick(() => {
|
||||
const value = !!this.setting.default;
|
||||
this.toggleComponent.setValue(value);
|
||||
if (value) {
|
||||
document.body.classList.add(this.setting.id);
|
||||
}
|
||||
else {
|
||||
document.body.classList.remove(this.setting.id);
|
||||
}
|
||||
this.settingsManager.clearSetting(this.sectionId, this.setting.id);
|
||||
});
|
||||
b.setTooltip(resetTooltip);
|
||||
|
@ -8658,7 +8669,7 @@ class ClassToggleSettingComponent extends AbstractSettingComponent {
|
|||
}
|
||||
|
||||
class ClassMultiToggleSettingComponent extends AbstractSettingComponent {
|
||||
render(containerEl) {
|
||||
render() {
|
||||
const title = getTitle(this.setting);
|
||||
const description = getDescription(this.setting);
|
||||
if (typeof this.setting.default !== 'string') {
|
||||
|
@ -8666,7 +8677,7 @@ class ClassMultiToggleSettingComponent extends AbstractSettingComponent {
|
|||
}
|
||||
let prevValue = this.getPreviousValue();
|
||||
const defaultLabel = this.getDefaultOptionLabel();
|
||||
this.settingEl = new obsidian.Setting(containerEl);
|
||||
this.settingEl = new obsidian.Setting(this.containerEl);
|
||||
this.settingEl.setName(title);
|
||||
this.settingEl.setDesc(createDescription(description, this.setting.default, defaultLabel));
|
||||
this.settingEl.addDropdown((dropdown) => {
|
||||
|
@ -8684,12 +8695,6 @@ class ClassMultiToggleSettingComponent extends AbstractSettingComponent {
|
|||
dropdown.setValue(prevValue);
|
||||
dropdown.onChange((value) => {
|
||||
this.settingsManager.setSetting(this.sectionId, this.setting.id, value);
|
||||
if (value !== 'none') {
|
||||
document.body.classList.add(value);
|
||||
}
|
||||
if (prevValue) {
|
||||
document.body.classList.remove(prevValue);
|
||||
}
|
||||
prevValue = value;
|
||||
});
|
||||
this.dropdownComponent = dropdown;
|
||||
|
@ -8697,14 +8702,7 @@ class ClassMultiToggleSettingComponent extends AbstractSettingComponent {
|
|||
this.settingEl.addExtraButton((b) => {
|
||||
b.setIcon('reset');
|
||||
b.onClick(() => {
|
||||
const value = this.setting.default || 'none';
|
||||
this.dropdownComponent.setValue(this.setting.default || 'none');
|
||||
if (value !== 'none') {
|
||||
document.body.classList.add(value);
|
||||
}
|
||||
if (prevValue) {
|
||||
document.body.classList.remove(prevValue);
|
||||
}
|
||||
this.settingsManager.clearSetting(this.sectionId, this.setting.id);
|
||||
});
|
||||
b.setTooltip(resetTooltip);
|
||||
|
@ -8749,13 +8747,13 @@ class ClassMultiToggleSettingComponent extends AbstractSettingComponent {
|
|||
}
|
||||
|
||||
class VariableTextSettingComponent extends AbstractSettingComponent {
|
||||
render(containerEl) {
|
||||
render() {
|
||||
const title = getTitle(this.setting);
|
||||
const description = getDescription(this.setting);
|
||||
if (typeof this.setting.default !== 'string') {
|
||||
return console.error(`${t('Error:')} ${title} ${t('missing default value')}`);
|
||||
}
|
||||
this.settingEl = new obsidian.Setting(containerEl);
|
||||
this.settingEl = new obsidian.Setting(this.containerEl);
|
||||
this.settingEl.setName(title);
|
||||
this.settingEl.setDesc(createDescription(description, this.setting.default));
|
||||
this.settingEl.addText((text) => {
|
||||
|
@ -8787,13 +8785,13 @@ class VariableTextSettingComponent extends AbstractSettingComponent {
|
|||
}
|
||||
|
||||
class VariableNumberSettingComponent extends AbstractSettingComponent {
|
||||
render(containerEl) {
|
||||
render() {
|
||||
const title = getTitle(this.setting);
|
||||
const description = getDescription(this.setting);
|
||||
if (typeof this.setting.default !== 'number') {
|
||||
return console.error(`${t('Error:')} ${title} ${t('missing default value')}`);
|
||||
}
|
||||
this.settingEl = new obsidian.Setting(containerEl);
|
||||
this.settingEl = new obsidian.Setting(this.containerEl);
|
||||
this.settingEl.setName(title);
|
||||
this.settingEl.setDesc(createDescription(description, this.setting.default.toString(10)));
|
||||
this.settingEl.addText((text) => {
|
||||
|
@ -8823,13 +8821,13 @@ class VariableNumberSettingComponent extends AbstractSettingComponent {
|
|||
}
|
||||
|
||||
class VariableNumberSliderSettingComponent extends AbstractSettingComponent {
|
||||
render(containerEl) {
|
||||
render() {
|
||||
const title = getTitle(this.setting);
|
||||
const description = getDescription(this.setting);
|
||||
if (typeof this.setting.default !== 'number') {
|
||||
return console.error(`${t('Error:')} ${title} ${t('missing default value')}`);
|
||||
}
|
||||
this.settingEl = new obsidian.Setting(containerEl);
|
||||
this.settingEl = new obsidian.Setting(this.containerEl);
|
||||
this.settingEl.setName(title);
|
||||
this.settingEl.setDesc(createDescription(description, this.setting.default.toString(10)));
|
||||
this.settingEl.addSlider((slider) => {
|
||||
|
@ -8860,14 +8858,14 @@ class VariableNumberSliderSettingComponent extends AbstractSettingComponent {
|
|||
}
|
||||
|
||||
class VariableSelectSettingComponent extends AbstractSettingComponent {
|
||||
render(containerEl) {
|
||||
render() {
|
||||
const title = getTitle(this.setting);
|
||||
const description = getDescription(this.setting);
|
||||
if (typeof this.setting.default !== 'string') {
|
||||
return console.error(`${t('Error:')} ${title} ${t('missing default value')}`);
|
||||
}
|
||||
const defaultLabel = this.getDefaultOptionLabel();
|
||||
this.settingEl = new obsidian.Setting(containerEl);
|
||||
this.settingEl = new obsidian.Setting(this.containerEl);
|
||||
this.settingEl.setName(title);
|
||||
this.settingEl.setDesc(createDescription(description, this.setting.default, defaultLabel));
|
||||
this.settingEl.addDropdown((dropdown) => {
|
||||
|
@ -8932,7 +8930,7 @@ var pickr_min = createCommonjsModule(function (module, exports) {
|
|||
var Pickr = /*@__PURE__*/getDefaultExportFromCjs(pickr_min);
|
||||
|
||||
class VariableColorSettingComponent extends AbstractSettingComponent {
|
||||
render(containerEl) {
|
||||
render() {
|
||||
var _a;
|
||||
const title = getTitle(this.setting);
|
||||
const description = getDescription(this.setting);
|
||||
|
@ -8954,16 +8952,16 @@ class VariableColorSettingComponent extends AbstractSettingComponent {
|
|||
if (value !== undefined) {
|
||||
swatches.push(value);
|
||||
}
|
||||
this.settingEl = new obsidian.Setting(containerEl);
|
||||
this.settingEl = new obsidian.Setting(this.containerEl);
|
||||
this.settingEl.setName(title);
|
||||
this.settingEl.setDesc(createDescription(description, this.setting.default));
|
||||
// fix, so that the color is correctly shown before the color picker has been opened
|
||||
const defaultColor = value !== undefined ? value : this.setting.default;
|
||||
containerEl.style.setProperty('--pcr-color', defaultColor);
|
||||
this.containerEl.style.setProperty('--pcr-color', defaultColor);
|
||||
this.pickr = Pickr.create(getPickrSettings({
|
||||
isView: this.isView,
|
||||
el: this.settingEl.controlEl.createDiv({ cls: 'picker' }),
|
||||
containerEl: containerEl,
|
||||
containerEl: this.containerEl,
|
||||
swatches: swatches,
|
||||
opacity: this.setting.opacity,
|
||||
defaultColor: defaultColor,
|
||||
|
@ -8977,7 +8975,9 @@ class VariableColorSettingComponent extends AbstractSettingComponent {
|
|||
});
|
||||
this.pickr.on('show', () => {
|
||||
const { result } = this.pickr.getRoot().interaction;
|
||||
requestAnimationFrame(() => requestAnimationFrame(() => result.select()));
|
||||
activeWindow.requestAnimationFrame(() => {
|
||||
activeWindow.requestAnimationFrame(() => result.select());
|
||||
});
|
||||
});
|
||||
this.pickr.on('cancel', onPickrCancel);
|
||||
this.settingEl.addExtraButton((b) => {
|
||||
|
@ -8999,7 +8999,7 @@ class VariableColorSettingComponent extends AbstractSettingComponent {
|
|||
}
|
||||
|
||||
class VariableThemedColorSettingComponent extends AbstractSettingComponent {
|
||||
render(containerEl) {
|
||||
render() {
|
||||
const title = getTitle(this.setting);
|
||||
const description = getDescription(this.setting);
|
||||
if (typeof this.setting['default-light'] !== 'string' ||
|
||||
|
@ -9028,7 +9028,7 @@ class VariableThemedColorSettingComponent extends AbstractSettingComponent {
|
|||
if (valueDark !== undefined) {
|
||||
swatchesDark.push(valueDark);
|
||||
}
|
||||
this.settingEl = new obsidian.Setting(containerEl);
|
||||
this.settingEl = new obsidian.Setting(this.containerEl);
|
||||
this.settingEl.setName(title);
|
||||
// Construct description
|
||||
this.settingEl.descEl.createSpan({}, (span) => {
|
||||
|
@ -9051,9 +9051,9 @@ class VariableThemedColorSettingComponent extends AbstractSettingComponent {
|
|||
cls: 'themed-color-wrapper',
|
||||
});
|
||||
// Create light color picker
|
||||
this.createColorPickerLight(wrapper, containerEl, swatchesLight, valueLight, idLight);
|
||||
this.createColorPickerLight(wrapper, this.containerEl, swatchesLight, valueLight, idLight);
|
||||
// Create dark color picker
|
||||
this.createColorPickerDark(wrapper, containerEl, swatchesDark, valueDark, idDark);
|
||||
this.createColorPickerDark(wrapper, this.containerEl, swatchesDark, valueDark, idDark);
|
||||
this.settingEl.settingEl.dataset.id = this.setting.id;
|
||||
}
|
||||
destroy() {
|
||||
|
@ -9081,7 +9081,7 @@ class VariableThemedColorSettingComponent extends AbstractSettingComponent {
|
|||
}));
|
||||
this.pickrLight.on('show', () => {
|
||||
const { result } = this.pickrLight.getRoot().interaction;
|
||||
requestAnimationFrame(() => requestAnimationFrame(() => result.select()));
|
||||
activeWindow.requestAnimationFrame(() => activeWindow.requestAnimationFrame(() => result.select()));
|
||||
});
|
||||
this.pickrLight.on('save', (color, instance) => this.onSave(idLight, color, instance));
|
||||
this.pickrLight.on('cancel', onPickrCancel);
|
||||
|
@ -9110,7 +9110,7 @@ class VariableThemedColorSettingComponent extends AbstractSettingComponent {
|
|||
}));
|
||||
this.pickrDark.on('show', () => {
|
||||
const { result } = this.pickrDark.getRoot().interaction;
|
||||
requestAnimationFrame(() => requestAnimationFrame(() => result.select()));
|
||||
activeWindow.requestAnimationFrame(() => activeWindow.requestAnimationFrame(() => result.select()));
|
||||
});
|
||||
this.pickrDark.on('save', (color, instance) => this.onSave(idDark, color, instance));
|
||||
this.pickrDark.on('cancel', onPickrCancel);
|
||||
|
@ -9132,17 +9132,17 @@ class VariableThemedColorSettingComponent extends AbstractSettingComponent {
|
|||
}
|
||||
|
||||
class InfoTextSettingComponent extends AbstractSettingComponent {
|
||||
render(containerEl) {
|
||||
render() {
|
||||
const title = getTitle(this.setting);
|
||||
const description = getDescription(this.setting);
|
||||
this.settingEl = new obsidian.Setting(containerEl);
|
||||
this.settingEl = new obsidian.Setting(this.containerEl);
|
||||
this.settingEl.setClass('style-settings-info-text');
|
||||
if (title) {
|
||||
this.settingEl.setName(title);
|
||||
}
|
||||
if (description) {
|
||||
if (this.setting.markdown) {
|
||||
obsidian.MarkdownRenderer.renderMarkdown(description, this.settingEl.descEl, '', undefined);
|
||||
obsidian.MarkdownRenderer.renderMarkdown(description, this.settingEl.descEl, '', this);
|
||||
this.settingEl.descEl.addClass('style-settings-markdown');
|
||||
}
|
||||
else {
|
||||
|
@ -9157,52 +9157,84 @@ class InfoTextSettingComponent extends AbstractSettingComponent {
|
|||
}
|
||||
}
|
||||
|
||||
function createSettingComponent(sectionId, sectionName, setting, settingsManager, isView) {
|
||||
function createSettingComponent(parent, sectionId, sectionName, setting, settingsManager, isView) {
|
||||
if (setting.type === SettingType.HEADING) {
|
||||
return new HeadingSettingComponent(sectionId, sectionName, setting, settingsManager, isView);
|
||||
return new HeadingSettingComponent(parent, sectionId, sectionName, setting, settingsManager, isView);
|
||||
}
|
||||
else if (setting.type === SettingType.INFO_TEXT) {
|
||||
return new InfoTextSettingComponent(sectionId, sectionName, setting, settingsManager, isView);
|
||||
return new InfoTextSettingComponent(parent, sectionId, sectionName, setting, settingsManager, isView);
|
||||
}
|
||||
else if (setting.type === SettingType.CLASS_TOGGLE) {
|
||||
return new ClassToggleSettingComponent(sectionId, sectionName, setting, settingsManager, isView);
|
||||
return new ClassToggleSettingComponent(parent, sectionId, sectionName, setting, settingsManager, isView);
|
||||
}
|
||||
else if (setting.type === SettingType.CLASS_SELECT) {
|
||||
return new ClassMultiToggleSettingComponent(sectionId, sectionName, setting, settingsManager, isView);
|
||||
return new ClassMultiToggleSettingComponent(parent, sectionId, sectionName, setting, settingsManager, isView);
|
||||
}
|
||||
else if (setting.type === SettingType.VARIABLE_TEXT) {
|
||||
return new VariableTextSettingComponent(sectionId, sectionName, setting, settingsManager, isView);
|
||||
return new VariableTextSettingComponent(parent, sectionId, sectionName, setting, settingsManager, isView);
|
||||
}
|
||||
else if (setting.type === SettingType.VARIABLE_NUMBER) {
|
||||
return new VariableNumberSettingComponent(sectionId, sectionName, setting, settingsManager, isView);
|
||||
return new VariableNumberSettingComponent(parent, sectionId, sectionName, setting, settingsManager, isView);
|
||||
}
|
||||
else if (setting.type === SettingType.VARIABLE_NUMBER_SLIDER) {
|
||||
return new VariableNumberSliderSettingComponent(sectionId, sectionName, setting, settingsManager, isView);
|
||||
return new VariableNumberSliderSettingComponent(parent, sectionId, sectionName, setting, settingsManager, isView);
|
||||
}
|
||||
else if (setting.type === SettingType.VARIABLE_SELECT) {
|
||||
return new VariableSelectSettingComponent(sectionId, sectionName, setting, settingsManager, isView);
|
||||
return new VariableSelectSettingComponent(parent, sectionId, sectionName, setting, settingsManager, isView);
|
||||
}
|
||||
else if (setting.type === SettingType.VARIABLE_COLOR) {
|
||||
return new VariableColorSettingComponent(sectionId, sectionName, setting, settingsManager, isView);
|
||||
return new VariableColorSettingComponent(parent, sectionId, sectionName, setting, settingsManager, isView);
|
||||
}
|
||||
else if (setting.type === SettingType.VARIABLE_THEMED_COLOR) {
|
||||
return new VariableThemedColorSettingComponent(sectionId, sectionName, setting, settingsManager, isView);
|
||||
return new VariableThemedColorSettingComponent(parent, sectionId, sectionName, setting, settingsManager, isView);
|
||||
}
|
||||
else {
|
||||
return undefined;
|
||||
}
|
||||
}
|
||||
function buildSettingComponentTree(opts) {
|
||||
const { containerEl, isView, sectionId, settings, settingsManager, sectionName, } = opts;
|
||||
const root = new HeadingSettingComponent(containerEl, sectionId, sectionName, settings[0], settingsManager, isView);
|
||||
let currentHeading = root;
|
||||
for (const setting of settings.splice(1)) {
|
||||
if (setting.type === 'heading') {
|
||||
const newHeading = setting;
|
||||
if (newHeading.level < currentHeading.setting.level) {
|
||||
while (newHeading.level < currentHeading.setting.level) {
|
||||
currentHeading = currentHeading.parent;
|
||||
}
|
||||
if (currentHeading.setting.id === root.setting.id) {
|
||||
currentHeading = currentHeading.addSettingChild(newHeading);
|
||||
}
|
||||
else {
|
||||
currentHeading = currentHeading.parent.addSettingChild(newHeading);
|
||||
}
|
||||
}
|
||||
else if (newHeading.level === currentHeading.setting.level) {
|
||||
currentHeading = currentHeading.parent.addSettingChild(newHeading);
|
||||
}
|
||||
else {
|
||||
currentHeading = currentHeading.addSettingChild(newHeading);
|
||||
}
|
||||
}
|
||||
else {
|
||||
currentHeading.addSettingChild(setting);
|
||||
}
|
||||
}
|
||||
return root;
|
||||
}
|
||||
class HeadingSettingComponent extends AbstractSettingComponent {
|
||||
onInit() {
|
||||
constructor() {
|
||||
super(...arguments);
|
||||
this.children = [];
|
||||
this.filteredChildren = [];
|
||||
this.filterMode = false;
|
||||
this.filterResultCount = 0;
|
||||
}
|
||||
render(containerEl) {
|
||||
render() {
|
||||
const title = getTitle(this.setting);
|
||||
const description = getDescription(this.setting);
|
||||
this.settingEl = new obsidian.Setting(containerEl);
|
||||
this.settingEl = new obsidian.Setting(this.containerEl);
|
||||
this.settingEl.setHeading();
|
||||
this.settingEl.setClass('style-settings-heading');
|
||||
this.settingEl.setName(title);
|
||||
|
@ -9214,28 +9246,28 @@ class HeadingSettingComponent extends AbstractSettingComponent {
|
|||
});
|
||||
obsidian.setIcon(iconContainer, 'right-triangle');
|
||||
this.settingEl.nameEl.prepend(iconContainer);
|
||||
if (this.filterMode) {
|
||||
this.settingEl.nameEl.createSpan({
|
||||
cls: 'style-settings-filter-result-count',
|
||||
text: `${this.filterResultCount} Results`,
|
||||
});
|
||||
}
|
||||
this.resultsEl = this.settingEl.nameEl.createSpan({
|
||||
cls: 'style-settings-filter-result-count',
|
||||
text: this.filterMode ? `${this.filterResultCount} Results` : undefined,
|
||||
});
|
||||
this.settingEl.settingEl.addEventListener('click', () => {
|
||||
this.toggleVisible();
|
||||
});
|
||||
this.addResetButton();
|
||||
this.addExportButton();
|
||||
this.childEl = containerEl.createDiv({ cls: 'style-settings-container' });
|
||||
this.childEl = this.containerEl.createDiv({
|
||||
cls: 'style-settings-container',
|
||||
});
|
||||
this.setCollapsed(this.setting.collapsed);
|
||||
}
|
||||
destroy() {
|
||||
var _a;
|
||||
if (!this.setting.collapsed) {
|
||||
this.destroyChildren();
|
||||
}
|
||||
this.removeChildren();
|
||||
(_a = this.settingEl) === null || _a === void 0 ? void 0 : _a.settingEl.remove();
|
||||
this.childEl.remove();
|
||||
}
|
||||
filter(filterString) {
|
||||
var _a;
|
||||
this.filteredChildren = [];
|
||||
this.filterResultCount = 0;
|
||||
for (const child of this.children) {
|
||||
|
@ -9254,10 +9286,18 @@ class HeadingSettingComponent extends AbstractSettingComponent {
|
|||
}
|
||||
}
|
||||
this.filterMode = true;
|
||||
this.setting.collapsed = false;
|
||||
if (this.filterResultCount) {
|
||||
this.setCollapsed(false);
|
||||
}
|
||||
else {
|
||||
this.setCollapsed(true);
|
||||
}
|
||||
this.renderChildren();
|
||||
(_a = this.resultsEl) === null || _a === void 0 ? void 0 : _a.setText(`${this.filterResultCount} Results`);
|
||||
return this.filterResultCount;
|
||||
}
|
||||
clearFilter() {
|
||||
var _a;
|
||||
this.filteredChildren = [];
|
||||
for (const child of this.children) {
|
||||
if (child.setting.type === SettingType.HEADING) {
|
||||
|
@ -9265,36 +9305,37 @@ class HeadingSettingComponent extends AbstractSettingComponent {
|
|||
}
|
||||
}
|
||||
this.filterMode = false;
|
||||
this.setting.collapsed = true;
|
||||
this.setCollapsed(true);
|
||||
this.renderChildren();
|
||||
(_a = this.resultsEl) === null || _a === void 0 ? void 0 : _a.empty();
|
||||
}
|
||||
renderChildren() {
|
||||
this.destroyChildren();
|
||||
this.removeChildren();
|
||||
if (this.filterMode) {
|
||||
for (const child of this.filteredChildren) {
|
||||
child.render(this.childEl);
|
||||
this.addChild(child);
|
||||
}
|
||||
}
|
||||
else {
|
||||
for (const child of this.children) {
|
||||
child.render(this.childEl);
|
||||
this.addChild(child);
|
||||
}
|
||||
}
|
||||
}
|
||||
destroyChildren() {
|
||||
var _a;
|
||||
removeChildren() {
|
||||
for (const child of this.children) {
|
||||
child.destroy();
|
||||
this.removeChild(child);
|
||||
}
|
||||
(_a = this.childEl) === null || _a === void 0 ? void 0 : _a.empty();
|
||||
}
|
||||
toggleVisible() {
|
||||
this.setCollapsed(!this.setting.collapsed);
|
||||
}
|
||||
setCollapsed(collapsed) {
|
||||
var _a;
|
||||
this.setting.collapsed = collapsed;
|
||||
this.settingEl.settingEl.toggleClass('is-collapsed', collapsed);
|
||||
(_a = this.settingEl) === null || _a === void 0 ? void 0 : _a.settingEl.toggleClass('is-collapsed', collapsed);
|
||||
if (collapsed) {
|
||||
this.destroyChildren();
|
||||
this.removeChildren();
|
||||
}
|
||||
else {
|
||||
this.renderChildren();
|
||||
|
@ -9322,14 +9363,11 @@ class HeadingSettingComponent extends AbstractSettingComponent {
|
|||
});
|
||||
});
|
||||
}
|
||||
addChild(child) {
|
||||
const newSettingComponent = createSettingComponent(this.sectionId, this.sectionName, child, this.settingsManager, this.isView);
|
||||
addSettingChild(child) {
|
||||
const newSettingComponent = createSettingComponent(this, this.sectionId, this.sectionName, child, this.settingsManager, this.isView);
|
||||
if (!newSettingComponent) {
|
||||
return undefined;
|
||||
}
|
||||
if (newSettingComponent.setting.type === SettingType.HEADING) {
|
||||
newSettingComponent.parent = this;
|
||||
}
|
||||
this.children.push(newSettingComponent);
|
||||
return newSettingComponent;
|
||||
}
|
||||
|
@ -9344,40 +9382,10 @@ class HeadingSettingComponent extends AbstractSettingComponent {
|
|||
return children;
|
||||
}
|
||||
}
|
||||
function buildSettingComponentTree(opts) {
|
||||
const { isView, sectionId, settings, settingsManager, sectionName } = opts;
|
||||
const root = new HeadingSettingComponent(sectionId, sectionName, settings[0], settingsManager, isView);
|
||||
let currentHeading = root;
|
||||
for (const setting of settings.splice(1)) {
|
||||
if (setting.type === 'heading') {
|
||||
const newHeading = setting;
|
||||
if (newHeading.level < currentHeading.setting.level) {
|
||||
while (newHeading.level < currentHeading.setting.level) {
|
||||
currentHeading = currentHeading.parent;
|
||||
}
|
||||
if (currentHeading.setting.id === root.setting.id) {
|
||||
currentHeading = currentHeading.addChild(newHeading);
|
||||
}
|
||||
else {
|
||||
currentHeading = currentHeading.parent.addChild(newHeading);
|
||||
}
|
||||
}
|
||||
else if (newHeading.level === currentHeading.setting.level) {
|
||||
currentHeading = currentHeading.parent.addChild(newHeading);
|
||||
}
|
||||
else {
|
||||
currentHeading = currentHeading.addChild(newHeading);
|
||||
}
|
||||
}
|
||||
else {
|
||||
currentHeading.addChild(setting);
|
||||
}
|
||||
}
|
||||
return root;
|
||||
}
|
||||
|
||||
class SettingsMarkup {
|
||||
class SettingsMarkup extends obsidian.Component {
|
||||
constructor(app, plugin, containerEl, isView) {
|
||||
super();
|
||||
this.settingsComponentTrees = [];
|
||||
this.filterString = '';
|
||||
this.settings = [];
|
||||
|
@ -9387,23 +9395,31 @@ class SettingsMarkup {
|
|||
this.containerEl = containerEl;
|
||||
this.isView = !!isView;
|
||||
}
|
||||
onload() {
|
||||
this.display();
|
||||
}
|
||||
onunload() {
|
||||
this.settingsComponentTrees = [];
|
||||
}
|
||||
display() {
|
||||
this.generate(this.settings);
|
||||
}
|
||||
removeChildren() {
|
||||
for (const settingsComponentTree of this.settingsComponentTrees) {
|
||||
this.removeChild(settingsComponentTree);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* Recursively destroys all setting elements.
|
||||
*/
|
||||
cleanup() {
|
||||
var _a;
|
||||
for (const settingsComponentTree of this.settingsComponentTrees) {
|
||||
settingsComponentTree.destroy();
|
||||
}
|
||||
this.removeChildren();
|
||||
(_a = this.settingsContainerEl) === null || _a === void 0 ? void 0 : _a.empty();
|
||||
}
|
||||
setSettings(settings, errorList) {
|
||||
this.settings = settings;
|
||||
this.errorList = errorList;
|
||||
this.plugin.settingsManager.setConfig(settings);
|
||||
if (this.containerEl.parentNode) {
|
||||
this.generate(settings);
|
||||
}
|
||||
|
@ -9479,17 +9495,15 @@ class SettingsMarkup {
|
|||
// move the search component from the back to the front
|
||||
setting.nameEl.appendChild(setting.controlEl.lastChild);
|
||||
searchComponent.setValue(this.filterString);
|
||||
searchComponent.onChange((value) => {
|
||||
customDebounce(() => {
|
||||
this.filterString = value;
|
||||
if (value) {
|
||||
this.filter();
|
||||
}
|
||||
else {
|
||||
this.clearFilter();
|
||||
}
|
||||
}, 250);
|
||||
});
|
||||
searchComponent.onChange(obsidian.debounce((value) => {
|
||||
this.filterString = value;
|
||||
if (value) {
|
||||
this.filter();
|
||||
}
|
||||
else {
|
||||
this.clearFilter();
|
||||
}
|
||||
}, 250, true));
|
||||
searchComponent.setPlaceholder('Search Style Settings...');
|
||||
});
|
||||
this.settingsContainerEl = containerEl.createDiv();
|
||||
|
@ -9504,20 +9518,21 @@ class SettingsMarkup {
|
|||
collapsed: (_a = s.collapsed) !== null && _a !== void 0 ? _a : true,
|
||||
resetFn: () => {
|
||||
plugin.settingsManager.clearSection(s.id);
|
||||
this.generate(this.settings);
|
||||
this.rerender();
|
||||
},
|
||||
},
|
||||
...s.settings,
|
||||
];
|
||||
try {
|
||||
const settingsComponentTree = buildSettingComponentTree({
|
||||
containerEl: this.settingsContainerEl,
|
||||
isView: this.isView,
|
||||
sectionId: s.id,
|
||||
sectionName: s.name,
|
||||
settings: options,
|
||||
settingsManager: plugin.settingsManager,
|
||||
});
|
||||
settingsComponentTree.render(this.settingsContainerEl);
|
||||
this.addChild(settingsComponentTree);
|
||||
this.settingsComponentTrees.push(settingsComponentTree);
|
||||
}
|
||||
catch (e) {
|
||||
|
@ -9529,39 +9544,45 @@ class SettingsMarkup {
|
|||
* Recursively filter all setting elements based on `filterString` and then re-renders.
|
||||
*/
|
||||
filter() {
|
||||
this.cleanup();
|
||||
for (const settingsComponentTree of this.settingsComponentTrees) {
|
||||
settingsComponentTree.filter(this.filterString);
|
||||
settingsComponentTree.render(this.settingsContainerEl);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* Recursively clears the filter and then re-renders.
|
||||
*/
|
||||
clearFilter() {
|
||||
this.cleanup();
|
||||
for (const settingsComponentTree of this.settingsComponentTrees) {
|
||||
settingsComponentTree.clearFilter();
|
||||
settingsComponentTree.render(this.settingsContainerEl);
|
||||
}
|
||||
}
|
||||
rerender() {
|
||||
for (const settingsComponentTree of this.settingsComponentTrees) {
|
||||
settingsComponentTree.render(this.settingsContainerEl);
|
||||
}
|
||||
this.cleanup();
|
||||
this.display();
|
||||
}
|
||||
}
|
||||
|
||||
class CSSSettingsTab extends obsidian.PluginSettingTab {
|
||||
constructor(app, plugin) {
|
||||
super(app, plugin);
|
||||
this.settingsMarkup = new SettingsMarkup(app, plugin, this.containerEl);
|
||||
this.plugin = plugin;
|
||||
}
|
||||
setSettings(settings, errorList) {
|
||||
this.settings = settings;
|
||||
this.errorList = errorList;
|
||||
if (this.settingsMarkup) {
|
||||
this.settingsMarkup.setSettings(settings, errorList);
|
||||
}
|
||||
}
|
||||
display() {
|
||||
this.settingsMarkup.display();
|
||||
this.settingsMarkup = this.plugin.addChild(new SettingsMarkup(this.app, this.plugin, this.containerEl));
|
||||
if (this.settings) {
|
||||
this.settingsMarkup.setSettings(this.settings, this.errorList);
|
||||
}
|
||||
}
|
||||
hide() {
|
||||
this.settingsMarkup.cleanup();
|
||||
this.plugin.removeChild(this.settingsMarkup);
|
||||
this.settingsMarkup = null;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -9570,7 +9591,22 @@ class SettingsView extends obsidian.ItemView {
|
|||
constructor(plugin, leaf) {
|
||||
super(leaf);
|
||||
this.plugin = plugin;
|
||||
this.settingsMarkup = new SettingsMarkup(plugin.app, plugin, this.contentEl, true);
|
||||
}
|
||||
setSettings(settings, errorList) {
|
||||
this.settings = settings;
|
||||
this.errorList = errorList;
|
||||
if (this.settingsMarkup) {
|
||||
this.settingsMarkup.setSettings(settings, errorList);
|
||||
}
|
||||
}
|
||||
onload() {
|
||||
this.settingsMarkup = this.addChild(new SettingsMarkup(this.plugin.app, this.plugin, this.contentEl, true));
|
||||
if (this.settings) {
|
||||
this.settingsMarkup.setSettings(this.settings, this.errorList);
|
||||
}
|
||||
}
|
||||
onunload() {
|
||||
this.settingsMarkup = null;
|
||||
}
|
||||
getViewType() {
|
||||
return viewType;
|
||||
|
@ -9581,16 +9617,6 @@ class SettingsView extends obsidian.ItemView {
|
|||
getDisplayText() {
|
||||
return 'Style Settings';
|
||||
}
|
||||
onOpen() {
|
||||
return __awaiter(this, void 0, void 0, function* () {
|
||||
return this.settingsMarkup.display();
|
||||
});
|
||||
}
|
||||
onClose() {
|
||||
return __awaiter(this, void 0, void 0, function* () {
|
||||
return this.settingsMarkup.cleanup();
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
class CSSSettingsPlugin extends obsidian.Plugin {
|
||||
|
@ -9615,8 +9641,10 @@ class CSSSettingsPlugin extends obsidian.Plugin {
|
|||
this.activateView();
|
||||
},
|
||||
});
|
||||
this.registerEvent(this.app.workspace.on('css-change', () => {
|
||||
this.parseCSS();
|
||||
this.registerEvent(this.app.workspace.on('css-change', (data) => {
|
||||
if ((data === null || data === void 0 ? void 0 : data.source) !== 'style-settings') {
|
||||
this.parseCSS();
|
||||
}
|
||||
}));
|
||||
this.registerEvent(this.app.workspace.on('parse-style-settings', () => {
|
||||
this.parseCSS();
|
||||
|
@ -9625,6 +9653,13 @@ class CSSSettingsPlugin extends obsidian.Plugin {
|
|||
this.darkEl = document.body.createDiv('theme-dark style-settings-ref');
|
||||
document.body.classList.add('css-settings-manager');
|
||||
this.parseCSS();
|
||||
this.app.workspace.onLayoutReady(() => {
|
||||
if (this.settingsList) {
|
||||
this.app.workspace.getLeavesOfType(viewType).forEach((leaf) => {
|
||||
leaf.view.setSettings(this.settingsList, this.errorList);
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
getCSSVar(id) {
|
||||
|
@ -9635,15 +9670,16 @@ class CSSSettingsPlugin extends obsidian.Plugin {
|
|||
}
|
||||
parseCSS() {
|
||||
clearTimeout(this.debounceTimer);
|
||||
this.settingsList = [];
|
||||
this.errorList = [];
|
||||
// remove registered theme commands (sadly undocumented API)
|
||||
for (const command of this.commandList) {
|
||||
// @ts-ignore
|
||||
this.app.commands.removeCommand(command.id);
|
||||
}
|
||||
this.commandList = [];
|
||||
this.debounceTimer = window.setTimeout(() => {
|
||||
this.debounceTimer = activeWindow.setTimeout(() => {
|
||||
this.settingsList = [];
|
||||
this.errorList = [];
|
||||
// remove registered theme commands (sadly undocumented API)
|
||||
for (const command of this.commandList) {
|
||||
// @ts-ignore
|
||||
this.app.commands.removeCommand(command.id);
|
||||
}
|
||||
this.commandList = [];
|
||||
this.settingsManager.removeClasses();
|
||||
const styleSheets = document.styleSheets;
|
||||
for (let i = 0, len = styleSheets.length; i < len; i++) {
|
||||
const sheet = styleSheets.item(i);
|
||||
|
@ -9651,10 +9687,11 @@ class CSSSettingsPlugin extends obsidian.Plugin {
|
|||
}
|
||||
// compatability with Settings Search Plugin
|
||||
this.registerSettingsToSettingsSearch();
|
||||
this.settingsTab.settingsMarkup.setSettings(this.settingsList, this.errorList);
|
||||
this.settingsTab.setSettings(this.settingsList, this.errorList);
|
||||
this.app.workspace.getLeavesOfType(viewType).forEach((leaf) => {
|
||||
leaf.view.settingsMarkup.setSettings(this.settingsList, this.errorList);
|
||||
leaf.view.setSettings(this.settingsList, this.errorList);
|
||||
});
|
||||
this.settingsManager.setConfig(this.settingsList);
|
||||
this.settingsManager.initClasses();
|
||||
this.registerSettingCommands();
|
||||
}, 100);
|
||||
|
@ -9775,12 +9812,6 @@ class CSSSettingsPlugin extends obsidian.Plugin {
|
|||
callback: () => {
|
||||
const value = !this.settingsManager.getSetting(section.id, setting.id);
|
||||
this.settingsManager.setSetting(section.id, setting.id, value);
|
||||
if (value) {
|
||||
document.body.classList.add(setting.id);
|
||||
}
|
||||
else {
|
||||
document.body.classList.remove(setting.id);
|
||||
}
|
||||
this.settingsTab.settingsMarkup.rerender();
|
||||
for (const leaf of this.app.workspace.getLeavesOfType(viewType)) {
|
||||
leaf.view.settingsMarkup.rerender();
|
||||
|
@ -9795,7 +9826,6 @@ class CSSSettingsPlugin extends obsidian.Plugin {
|
|||
this.darkEl = null;
|
||||
document.body.classList.remove('css-settings-manager');
|
||||
this.settingsManager.cleanup();
|
||||
this.settingsTab.settingsMarkup.cleanup();
|
||||
this.deactivateView();
|
||||
this.unregisterSettingsFromSettingsSearch();
|
||||
}
|
||||
|
@ -9810,7 +9840,7 @@ class CSSSettingsPlugin extends obsidian.Plugin {
|
|||
type: viewType,
|
||||
active: true,
|
||||
});
|
||||
leaf.view.settingsMarkup.setSettings(this.settingsList, this.errorList);
|
||||
leaf.view.setSettings(this.settingsList, this.errorList);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"id": "obsidian-style-settings",
|
||||
"name": "Style Settings",
|
||||
"version": "1.0.3",
|
||||
"version": "1.0.6",
|
||||
"minAppVersion": "0.11.5",
|
||||
"description": "Offers controls for adjusting theme, plugin, and snippet CSS variables.",
|
||||
"author": "mgmeyers",
|
||||
|
|
File diff suppressed because one or more lines are too long
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"id": "obsidian-view-mode-by-frontmatter",
|
||||
"name": "Force note view mode",
|
||||
"version": "1.1.1",
|
||||
"version": "1.2.0",
|
||||
"minAppVersion": "0.9.12",
|
||||
"description": "This plugin allows to force the view mode and editing mode for a note by using front matter",
|
||||
"author": "Benny Wydooghe",
|
||||
|
|
13
.obsidian/plugins/obsidian-view-mode-by-frontmatter/styles.css
vendored
Normal file
13
.obsidian/plugins/obsidian-view-mode-by-frontmatter/styles.css
vendored
Normal file
|
@ -0,0 +1,13 @@
|
|||
.force-view-mode-div > .setting-item > .setting-item-control {
|
||||
justify-content: space-around;
|
||||
padding: 0;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.force-view-mode-folder > .setting-item > .setting-item-control > *:first-child {
|
||||
flex: 2 1 0;
|
||||
}
|
||||
|
||||
.force-view-mode-folder > .setting-item > .setting-item-control > *:nth-child(2) {
|
||||
flex: 1 1 0;
|
||||
}
|
4
.obsidian/plugins/omnisearch/data.json
vendored
4
.obsidian/plugins/omnisearch/data.json
vendored
|
@ -5,7 +5,9 @@
|
|||
"indexedFileTypes": [],
|
||||
"PDFIndexing": false,
|
||||
"imagesIndexing": false,
|
||||
"unsupportedFilesIndexing": "no",
|
||||
"splitCamelCase": false,
|
||||
"openInNewPane": false,
|
||||
"ribbonIcon": true,
|
||||
"showExcerpt": true,
|
||||
"renderLineReturnInExcerpts": true,
|
||||
|
@ -13,11 +15,13 @@
|
|||
"highlight": true,
|
||||
"showPreviousQueryResults": true,
|
||||
"simpleSearch": false,
|
||||
"fuzziness": "1",
|
||||
"weightBasename": 3,
|
||||
"weightDirectory": 2,
|
||||
"weightH1": 1.5,
|
||||
"weightH2": 1.3,
|
||||
"weightH3": 1.1,
|
||||
"weightUnmarkedTags": 1.1,
|
||||
"welcomeMessage": "1.10.1",
|
||||
"verboseLogging": false
|
||||
}
|
70
.obsidian/plugins/omnisearch/main.js
vendored
70
.obsidian/plugins/omnisearch/main.js
vendored
File diff suppressed because one or more lines are too long
4
.obsidian/plugins/omnisearch/manifest.json
vendored
4
.obsidian/plugins/omnisearch/manifest.json
vendored
|
@ -1,8 +1,8 @@
|
|||
{
|
||||
"id": "omnisearch",
|
||||
"name": "Omnisearch",
|
||||
"version": "1.14.0",
|
||||
"minAppVersion": "1.0.0",
|
||||
"version": "1.15.2",
|
||||
"minAppVersion": "1.3.0",
|
||||
"description": "A search engine that just works",
|
||||
"author": "Simon Cambier",
|
||||
"authorUrl": "https://github.com/scambier/obsidian-omnisearch",
|
||||
|
|
1
.obsidian/plugins/omnisearch/styles.css
vendored
1
.obsidian/plugins/omnisearch/styles.css
vendored
|
@ -18,6 +18,7 @@
|
|||
}
|
||||
|
||||
.omnisearch-result__title {
|
||||
white-space: pre-wrap;
|
||||
align-items: center;
|
||||
display: flex;
|
||||
gap: 5px;
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"id": "settings-search",
|
||||
"name": "Settings Search",
|
||||
"version": "1.3.7",
|
||||
"version": "1.3.8",
|
||||
"minAppVersion": "0.12.17",
|
||||
"author": "Jeremy Valentine",
|
||||
"description": "Globally search settings in Obsidian.md",
|
||||
|
|
5039
.obsidian/plugins/table-editor-obsidian/main.js
vendored
5039
.obsidian/plugins/table-editor-obsidian/main.js
vendored
File diff suppressed because one or more lines are too long
|
@ -6,7 +6,12 @@
|
|||
"description": "Improved table navigation, formatting, manipulation, and formulas",
|
||||
"isDesktopOnly": false,
|
||||
"minAppVersion": "1.0.0",
|
||||
"version": "0.18.1",
|
||||
"version": "0.19.1",
|
||||
"js": "main.js",
|
||||
"fundingUrl": {
|
||||
"Github Sponsor": "https://github.com/sponsors/tgrosinger",
|
||||
"Buy me a Coffee": "https://buymeacoffee.com/tgrosinger",
|
||||
"Paypal": "https://paypal.me/tgrosinger"
|
||||
},
|
||||
"donation": "https://buymeacoffee.com/tgrosinger"
|
||||
}
|
13
.obsidian/themes/Prism/manifest.json
vendored
13
.obsidian/themes/Prism/manifest.json
vendored
|
@ -1,7 +1,8 @@
|
|||
{
|
||||
"name": "Prism",
|
||||
"version": "3.2.4",
|
||||
"minAppVersion": "1.2.0",
|
||||
"author": "Damian Korcz",
|
||||
"authorUrl": "https://github.com/damiankorcz"
|
||||
{
|
||||
"name": "Prism",
|
||||
"version": "3.3.0",
|
||||
"minAppVersion": "1.3.1",
|
||||
"author": "Damian Korcz",
|
||||
"authorUrl": "https://github.com/damiankorcz",
|
||||
"fundingUrl": "https://www.buymeacoffee.com/DamianKorcz"
|
||||
}
|
2357
.obsidian/themes/Prism/theme.css
vendored
2357
.obsidian/themes/Prism/theme.css
vendored
File diff suppressed because one or more lines are too long
12
.obsidian/workspace.json
vendored
12
.obsidian/workspace.json
vendored
|
@ -60,6 +60,14 @@
|
|||
"type": "starred",
|
||||
"state": {}
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "f804e1fc8361c53c",
|
||||
"type": "leaf",
|
||||
"state": {
|
||||
"type": "bookmarks",
|
||||
"state": {}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
|
@ -153,9 +161,9 @@
|
|||
"daily-notes:Open today's daily note": false,
|
||||
"templates:Insert template": false,
|
||||
"command-palette:Open command palette": false,
|
||||
"table-editor-obsidian:Advanced Tables Toolbar": false,
|
||||
"omnisearch:Omnisearch": false,
|
||||
"obsidian-excalidraw-plugin:Create new drawing": false
|
||||
"obsidian-excalidraw-plugin:Create new drawing": false,
|
||||
"table-editor-obsidian:Advanced Tables Toolbar": false
|
||||
}
|
||||
},
|
||||
"active": "d3ce90df51bd874b",
|
||||
|
|
Loading…
Reference in a new issue