Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
  • Loading branch information
AndreasSas committed Jan 27, 2024
2 parents 895304b + c2851e2 commit 4233421
Show file tree
Hide file tree
Showing 40 changed files with 206 additions and 151 deletions.
4 changes: 2 additions & 2 deletions src/api/tags.ts
Expand Up @@ -21,9 +21,9 @@ export function get_tags(data: Array<IColorPicker>, enable_multiple_tags: boolea

return tag_name // read the last line if you are confused why we are looping over the tag_name
.split(reSplit)
.map(tag => tag.trim().toLowerCase()) // Also trim the tag for leading spaces & map everything to lowercase!
.map(tag => tag.trim()) // Also trim the tag for leading spaces & map everything to lowercase!
.filter(Boolean) // filter out empty lines
.map(tag => remove_slash ? tag.replace(reSLASH, "") : tag) // replace the "/"
.map(tag => ({ tag_name: tag, color, background_color, luminance_offset }));
});
}
}
5 changes: 5 additions & 0 deletions src/main.ts
Expand Up @@ -59,6 +59,11 @@ export default class ColoredTagWrangler extends Plugin implements IColoredTagWra
name:"EXPERIMENTAL : export TAGS LINKED TO FOLDER NOTES to graph.json. This overwrites your current graph.json. Use at own risk!",
callback: async () => await experimental.exportGraphJsonFolderNotes(this)
})
this.addCommand({
id:"export-css-to-codeblock",
name:"EXPERIMENTAL : CSS Styling to code block.",
editorCallback: async (editor, ctx) => await experimental.ExportToCSS(editor, ctx, this)
})
}
}

Expand Down
4 changes: 2 additions & 2 deletions src/plugin/commands/ExportGraphJsonTagsCodeblock.ts
Expand Up @@ -9,7 +9,7 @@ import {IColorGroup} from "src/api/graph";
// ---------------------------------------------------------------------------------------------------------------------
// Code
// ---------------------------------------------------------------------------------------------------------------------
export async function ExportGraphJsonTagsCodeblock(editor: Editor, ctx: MarkdownView | MarkdownFileInfo, plugin: IColoredTagWrangler){
export async function ExportGraphJsonTagsCodeblock(editor: Editor, _: MarkdownView | MarkdownFileInfo, plugin: IColoredTagWrangler){
const color_groups = get_tags(plugin.settings.TagColors.ColorPicker, plugin.settings?.TagColors.EnableMultipleTags)
.map(({tag_name, color}) => {
return {
Expand All @@ -29,4 +29,4 @@ export async function ExportGraphJsonTagsCodeblock(editor: Editor, ctx: Markdown
].join("\n")
)

}
}
19 changes: 19 additions & 0 deletions src/plugin/commands/experimental/ExportToCSS.ts
@@ -0,0 +1,19 @@
// ---------------------------------------------------------------------------------------------------------------------
// Imports
// ---------------------------------------------------------------------------------------------------------------------
import {IColoredTagWrangler} from "src/plugin/IColoredTagWrangler";
import {Editor, MarkdownFileInfo, MarkdownView} from "obsidian";

// ---------------------------------------------------------------------------------------------------------------------
// Code
// ---------------------------------------------------------------------------------------------------------------------
export async function ExportToCSS(editor: Editor, _: MarkdownView | MarkdownFileInfo, plugin: IColoredTagWrangler){
editor.replaceSelection(
[
"```css",
...plugin.style_manager.getAllCssStyling(),
"```",
].join("\n")
)

}
3 changes: 2 additions & 1 deletion src/plugin/commands/experimental/index.ts
@@ -1,2 +1,3 @@
export * from './ExportGraphJsonTags';
export * from './ExportGraphJsonFolderNotes';
export * from './ExportGraphJsonFolderNotes';
export * from './ExportToCSS';
5 changes: 0 additions & 5 deletions src/plugin/event_handlers/FileOpen.ts
@@ -1,13 +1,8 @@
// ---------------------------------------------------------------------------------------------------------------------
// Imports
// ---------------------------------------------------------------------------------------------------------------------

import {TFile} from "obsidian";
import $ from "jquery";

import {EventHandler} from "src/plugin/event_handlers/EventHandler";
import {get_tags} from "src/api/tags";
import {rgbToString} from "src/api/ColorConverters";

// ---------------------------------------------------------------------------------------------------------------------
// Code
Expand Down
6 changes: 1 addition & 5 deletions src/plugin/event_handlers/MetadataChange.ts
@@ -1,12 +1,8 @@
// ---------------------------------------------------------------------------------------------------------------------
// Imports
// ---------------------------------------------------------------------------------------------------------------------
import {
CachedMetadata,
TFile
} from "obsidian";
import {CachedMetadata, TFile} from "obsidian";
import {file_is_folderNote, processTagColors} from "src/api/FolderNoteLogic";
import {v4 as uuid4} from "uuid";
import {EventHandler} from "src/plugin/event_handlers/EventHandler";

// ---------------------------------------------------------------------------------------------------------------------
Expand Down
7 changes: 2 additions & 5 deletions src/plugin/setting_tab/SettingsTabComponent.ts
@@ -1,11 +1,8 @@
// ---------------------------------------------------------------------------------------------------------------------
// Imports
// ---------------------------------------------------------------------------------------------------------------------
import ColoredTagWranglerPlugin
from "src/main";
import {
PluginSettingTab,
} from "obsidian";
import ColoredTagWranglerPlugin from "src/main";
import {PluginSettingTab,} from "obsidian";
// ---------------------------------------------------------------------------------------------------------------------
// Interface
// ---------------------------------------------------------------------------------------------------------------------
Expand Down
@@ -1,10 +1,8 @@
// ---------------------------------------------------------------------------------------------------------------------
// Imports
// ---------------------------------------------------------------------------------------------------------------------
import {Setting}
from "obsidian";
import {SettingsTabComponent}
from "src/plugin/setting_tab/SettingsTabComponent";
import {Setting} from "obsidian";
import {SettingsTabComponent} from "src/plugin/setting_tab/SettingsTabComponent";
// ---------------------------------------------------------------------------------------------------------------------
// Code
// ---------------------------------------------------------------------------------------------------------------------
Expand Down
6 changes: 2 additions & 4 deletions src/plugin/setting_tab/components/ComponentCSSNoteTags.ts
@@ -1,10 +1,8 @@
// ---------------------------------------------------------------------------------------------------------------------
// Imports
// ---------------------------------------------------------------------------------------------------------------------
import {Setting}
from "obsidian";
import {SettingsTabComponent}
from "src/plugin/setting_tab/SettingsTabComponent";
import {Setting} from "obsidian";
import {SettingsTabComponent} from "src/plugin/setting_tab/SettingsTabComponent";
// ---------------------------------------------------------------------------------------------------------------------
// Code
// ---------------------------------------------------------------------------------------------------------------------
Expand Down
10 changes: 2 additions & 8 deletions src/plugin/setting_tab/components/ComponentCSSTagsNoWrap.ts
@@ -1,14 +1,8 @@
// ---------------------------------------------------------------------------------------------------------------------
// Imports
// ---------------------------------------------------------------------------------------------------------------------
import {Setting}
from "obsidian";
import {SettingsTabComponent}
from "src/plugin/setting_tab/SettingsTabComponent";
// ---------------------------------------------------------------------------------------------------------------------
// Support Code
// ---------------------------------------------------------------------------------------------------------------------
const INVALID_CHAR = [' ', ';', '}', '{']
import {Setting} from "obsidian";
import {SettingsTabComponent} from "src/plugin/setting_tab/SettingsTabComponent";

// ---------------------------------------------------------------------------------------------------------------------
// Code
Expand Down
6 changes: 2 additions & 4 deletions src/plugin/setting_tab/components/ComponentDebug.ts
@@ -1,10 +1,8 @@
// ---------------------------------------------------------------------------------------------------------------------
// Imports
// ---------------------------------------------------------------------------------------------------------------------
import {Setting}
from "obsidian";
import {SettingsTabComponent}
from "src/plugin/setting_tab/SettingsTabComponent";
import {Setting} from "obsidian";
import {SettingsTabComponent} from "src/plugin/setting_tab/SettingsTabComponent";
// ---------------------------------------------------------------------------------------------------------------------
// Code
// ---------------------------------------------------------------------------------------------------------------------
Expand Down
@@ -1,10 +1,8 @@
// ---------------------------------------------------------------------------------------------------------------------
// Imports
// ---------------------------------------------------------------------------------------------------------------------
import {Setting}
from "obsidian";
import {SettingsTabComponent}
from "src/plugin/setting_tab/SettingsTabComponent";
import {Setting} from "obsidian";
import {SettingsTabComponent} from "src/plugin/setting_tab/SettingsTabComponent";
// ---------------------------------------------------------------------------------------------------------------------
// Code
// ---------------------------------------------------------------------------------------------------------------------
Expand Down
6 changes: 2 additions & 4 deletions src/plugin/setting_tab/components/ComponentDebugReloadCSS.ts
@@ -1,10 +1,8 @@
// ---------------------------------------------------------------------------------------------------------------------
// Imports
// ---------------------------------------------------------------------------------------------------------------------
import {Setting}
from "obsidian";
import {SettingsTabComponent}
from "src/plugin/setting_tab/SettingsTabComponent";
import {Setting} from "obsidian";
import {SettingsTabComponent} from "src/plugin/setting_tab/SettingsTabComponent";
// ---------------------------------------------------------------------------------------------------------------------
// Code
// ---------------------------------------------------------------------------------------------------------------------
Expand Down
6 changes: 2 additions & 4 deletions src/plugin/setting_tab/components/ComponentFolderNote.ts
@@ -1,10 +1,8 @@
// ---------------------------------------------------------------------------------------------------------------------
// Imports
// ---------------------------------------------------------------------------------------------------------------------
import {Setting}
from "obsidian";
import {SettingsTabComponent}
from "src/plugin/setting_tab/SettingsTabComponent";
import {Setting} from "obsidian";
import {SettingsTabComponent} from "src/plugin/setting_tab/SettingsTabComponent";
// ---------------------------------------------------------------------------------------------------------------------
// Code
// ---------------------------------------------------------------------------------------------------------------------
Expand Down
@@ -1,12 +1,9 @@
// ---------------------------------------------------------------------------------------------------------------------
// Imports
// ---------------------------------------------------------------------------------------------------------------------
import {Setting}
from "obsidian";
import {SettingsTabComponent}
from "src/plugin/setting_tab/SettingsTabComponent";
import {detect_all_links}
from "src/api/FolderNoteLogic"
import {Setting} from "obsidian";
import {SettingsTabComponent} from "src/plugin/setting_tab/SettingsTabComponent";
import {detect_all_links} from "src/api/FolderNoteLogic"
// ---------------------------------------------------------------------------------------------------------------------
// Code
// ---------------------------------------------------------------------------------------------------------------------
Expand Down
@@ -1,10 +1,8 @@
// ---------------------------------------------------------------------------------------------------------------------
// Imports
// ---------------------------------------------------------------------------------------------------------------------
import {Setting}
from "obsidian";
import {SettingsTabComponent}
from "src/plugin/setting_tab/SettingsTabComponent";
import {Setting} from "obsidian";
import {SettingsTabComponent} from "src/plugin/setting_tab/SettingsTabComponent";
import {arrayMove} from "../../../api/ArrayUtils";
// ---------------------------------------------------------------------------------------------------------------------
// Code
Expand Down
6 changes: 2 additions & 4 deletions src/plugin/setting_tab/components/ComponentKanban.ts
@@ -1,10 +1,8 @@
// ---------------------------------------------------------------------------------------------------------------------
// Imports
// ---------------------------------------------------------------------------------------------------------------------
import {Setting}
from "obsidian";
import {SettingsTabComponent}
from "src/plugin/setting_tab/SettingsTabComponent";
import {Setting} from "obsidian";
import {SettingsTabComponent} from "src/plugin/setting_tab/SettingsTabComponent";
// ---------------------------------------------------------------------------------------------------------------------
// Code
// ---------------------------------------------------------------------------------------------------------------------
Expand Down
6 changes: 2 additions & 4 deletions src/plugin/setting_tab/components/ComponentKanbanCards.ts
@@ -1,10 +1,8 @@
// ---------------------------------------------------------------------------------------------------------------------
// Imports
// ---------------------------------------------------------------------------------------------------------------------
import {Setting}
from "obsidian";
import {SettingsTabComponent}
from "src/plugin/setting_tab/SettingsTabComponent";
import {Setting} from "obsidian";
import {SettingsTabComponent} from "src/plugin/setting_tab/SettingsTabComponent";
// ---------------------------------------------------------------------------------------------------------------------
// Code
// ---------------------------------------------------------------------------------------------------------------------
Expand Down
@@ -1,10 +1,8 @@
// ---------------------------------------------------------------------------------------------------------------------
// Imports
// ---------------------------------------------------------------------------------------------------------------------
import {Setting}
from "obsidian";
import {SettingsTabComponent}
from "src/plugin/setting_tab/SettingsTabComponent";
import {Setting} from "obsidian";
import {SettingsTabComponent} from "src/plugin/setting_tab/SettingsTabComponent";
// ---------------------------------------------------------------------------------------------------------------------
// Code
// ---------------------------------------------------------------------------------------------------------------------
Expand Down
6 changes: 2 additions & 4 deletions src/plugin/setting_tab/components/ComponentKanbanLists.ts
@@ -1,10 +1,8 @@
// ---------------------------------------------------------------------------------------------------------------------
// Imports
// ---------------------------------------------------------------------------------------------------------------------
import {Setting}
from "obsidian";
import {SettingsTabComponent}
from "src/plugin/setting_tab/SettingsTabComponent";
import {Setting} from "obsidian";
import {SettingsTabComponent} from "src/plugin/setting_tab/SettingsTabComponent";
// ---------------------------------------------------------------------------------------------------------------------
// Code
// ---------------------------------------------------------------------------------------------------------------------
Expand Down
Expand Up @@ -23,6 +23,7 @@ export class ComponentTagsEnableAutoBackgroundButton extends SettingsTabComponen
.onChange(async state => {
this.plugin.settings.TagColors.EnableSeparateBackground = state;
await this.plugin.saveSettings();
this.settings_tab.display();
})
}
);
Expand Down
8 changes: 3 additions & 5 deletions src/plugin/settings/DefaultSettings.ts
Expand Up @@ -12,9 +12,7 @@ export const DefaultSettings: ISettings = {
ColorPicker: [],

EnableMultipleTags:true,
EnableSeparateBackground:false,
EnableSeparateLuminanceOffset:false, // can be removed
EnableDarkLightDifference:true, // can be removed
EnableSeparateBackground:true,
EnableBackgroundOpacity:false,

Values:{
Expand Down Expand Up @@ -49,7 +47,7 @@ export const DefaultSettings: ISettings = {
},

Kanban:{
Enable:false,
Enable:true,
EnableCards:false,
EnableLists:false,
HideHashtags:false,
Expand Down Expand Up @@ -83,6 +81,6 @@ export const DefaultSettings: ISettings = {
},

Info: {
SettingsVersion: 13 // UPDATE THIS WHEN YOU CHANGE ANYTHING IN THE SETTINGS!!!
SettingsVersion: 14 // UPDATE THIS WHEN YOU CHANGE ANYTHING IN THE SETTINGS!!!
}
}
2 changes: 0 additions & 2 deletions src/plugin/settings/ISettings.ts
Expand Up @@ -13,8 +13,6 @@ export interface ISettings {

EnableMultipleTags:boolean,
EnableSeparateBackground:boolean,
EnableSeparateLuminanceOffset:boolean,
EnableDarkLightDifference:boolean,
EnableBackgroundOpacity:boolean,
Values:{
BackgroundOpacity:number,
Expand Down
1 change: 1 addition & 0 deletions src/plugin/settings/Migrate.ts
Expand Up @@ -24,6 +24,7 @@ const MIGRATION_STEPS: ((data: any) => any)[] = [ // Using any's isn't perfect b
(data) => migrations.migrate_10_to_11(data),
(data) => migrations.migrate_11_to_12(data),
(data) => migrations.migrate_12_to_13(data),
(data) => migrations.migrate_13_to_14(data),
];

// ---------------------------------------------------------------------------------------------------------------------
Expand Down
1 change: 1 addition & 0 deletions src/plugin/settings/migrations/index.ts
Expand Up @@ -14,3 +14,4 @@ export * from 'src/plugin/settings/migrations/migrate_09_to_10';
export * from 'src/plugin/settings/migrations/migrate_10_to_11';
export * from 'src/plugin/settings/migrations/migrate_11_to_12';
export * from 'src/plugin/settings/migrations/migrate_12_to_13';
export * from 'src/plugin/settings/migrations/migrate_13_to_14';
2 changes: 1 addition & 1 deletion src/plugin/settings/migrations/migrate_11_to_12.ts
Expand Up @@ -2,7 +2,7 @@
// Imports
// ---------------------------------------------------------------------------------------------------------------------
import {ISettings_v011} from "src/plugin/settings/old_setting_versions";
import {ISettings_v012} from "../old_setting_versions/ISettings_v012";
import {ISettings_v012} from "src/plugin/settings/old_setting_versions";

// ---------------------------------------------------------------------------------------------------------------------
// Code
Expand Down
9 changes: 4 additions & 5 deletions src/plugin/settings/migrations/migrate_12_to_13.ts
@@ -1,14 +1,13 @@
// ---------------------------------------------------------------------------------------------------------------------
// Imports
// ---------------------------------------------------------------------------------------------------------------------
import {ISettings} from "src/plugin/settings/ISettings";
import {ISettings_v012} from "src/plugin/settings/old_setting_versions";
import {ISettings_v012, ISettings_v013} from "src/plugin/settings/old_setting_versions";

// ---------------------------------------------------------------------------------------------------------------------
// Code
// ---------------------------------------------------------------------------------------------------------------------
export function migrate_12_to_13(loaded_data:ISettings_v012):ISettings {
let transformed_data = loaded_data as unknown as ISettings;
export function migrate_12_to_13(loaded_data:ISettings_v012):ISettings_v013 {
let transformed_data = loaded_data as unknown as ISettings_v013;

transformed_data.FolderNote.EnableBackgroundOpacity = loaded_data.TagColors.EnableBackgroundOpacity;
transformed_data.FolderNote.Values.BackgroundOpacity = loaded_data.TagColors.Values.BackgroundOpacity;
Expand All @@ -20,5 +19,5 @@ export function migrate_12_to_13(loaded_data:ISettings_v012):ISettings {
transformed_data.Canvas.Values.BackgroundOpacity = loaded_data.TagColors.Values.BackgroundOpacity;

transformed_data.Info.SettingsVersion = 13;
return transformed_data as unknown as ISettings;
return transformed_data as unknown as ISettings_v013;
}

0 comments on commit 4233421

Please sign in to comment.