From 40170e44b25686a392560746d9937b0b83668a04 Mon Sep 17 00:00:00 2001 From: sno Date: Mon, 4 Nov 2024 19:40:52 +0100 Subject: [PATCH] Add Reporting Summary API and examples --- README.md | 90 ++++++ reporting-screenshot.png | Bin 0 -> 207597 bytes src/interfaces.ts | 18 ++ src/main.ts | 135 +++++++-- src/settings-tab.ts | 16 + src/settings.ts | 42 ++- src/timeTrackingSummary.ts | 308 ++++++++++++++++++++ test-vault/.obsidian/community-plugins.json | 4 +- test-vault/Time summary reporting test.md | 17 ++ 9 files changed, 600 insertions(+), 30 deletions(-) create mode 100644 reporting-screenshot.png create mode 100644 src/interfaces.ts create mode 100644 src/timeTrackingSummary.ts create mode 100644 test-vault/Time summary reporting test.md diff --git a/README.md b/README.md index 89eff88..760bdc2 100644 --- a/README.md +++ b/README.md @@ -47,6 +47,96 @@ A time tracker is really just a special code block that stores information about The tracker's information is stored in the code block as JSON data. The names, start times and end times of each segment are stored. They're displayed neatly in the code block in preview or reading mode. +# Tim Tracking Summary / Reporting + +1. **Time Tracking Entries with Tags**: Track work sessions with tags to categorize different activities. + + - Example of an entry: `#tt_dev #tt_client_a #tt_frontend` represents time spent working on the development (frontend) for a specific client. + +2. **Enhanced Reporting Functionality**: Generate time tracking reports for specific time periods, allowing detailed insight into how time was allocated. + + - **Stream-based Reports**: View summaries of time based on specific streams such as Development, Accounting, etc. + + - **Client-based Reports**: Track hours spent working for specific clients. + + +![alt text](reporting-screenshot.png) + +The output within Obsidian will render detailed information for each time segment, as shown in the first image. + +## Example Report + +Call command `Ctrl+P` select `Insert Time Tracking Summary` + +The reporting capability allows generating summaries for specific time ranges and topics: + +- **Streams Report**: A summary of all topics (e.g., Development, Accounting) over a selected period. + + ``` + time-tracking-summary + "2024-11-01", "2024-11-30" + ``` + +- **Clients Report**: A summary for individual topic over a given time range. + + ``` + time-tracking-summary + "2024-11-01", "2024-11-30", clients + ``` + + +These examples help demonstrate how you can leverage the new tracking and reporting capabilities. + +## How to Use + +1. **Tag Configuration** + - Configure your tags, icons, and sub tags using YAML in the settings of the plugin. + - Example configuration can be found in the settings: +2. **Tag your records with one or more tags / sub tags** +3. **Inserting Time Tracking Summary** + - Use the newly added command to insert the time tracking summary snippet into a markdown file. + - This will generate a report for a given period, optionally filtered by a specific topic. + +```yaml +# You can have as many 'sections' as you want to track different domains separately or in parallel + +# Example secction / topic 1 +streams: + name: "๐ŸŒŠ Streams" + items: + - topic: "Accounting" + icon: "๐Ÿงฎ" + tag: "#tt_accounting" + subTags: [] + + - topic: "Development" + icon: "๐Ÿ’—" + tag: "#tt_dev" + subTags: + - topic: "Frontend" + tag: "#tt_frontend" + subTags: [] + + - topic: "Backend" + tag: "#tt_backend" + subTags: [] + +# Example section / topic 2 +clients: + name: "๐Ÿ‘จ๐Ÿผโ€๐Ÿ’ผ Clients" + items: + - topic: "Client A" + tag: "#tt_client_a" + subTags: [] + + - topic: "Client B" + tag: "#tt_client_b" + subTags: []` + +``` + + + # ๐Ÿ™ Acknowledgements If you like this plugin and want to support its development, you can do so through my website by clicking this fancy image! diff --git a/reporting-screenshot.png b/reporting-screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..4ab32b49d995cc4c1f86f10dfe3d2c2d25643ac7 GIT binary patch literal 207597 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

<2DREr<6XOSt*orV7&|muGj_5+I?~EW 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

;~tUH$>FIC{_9T*bTo?UMV2@KsH|kz63vpD0{J7 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 Y)boe=)*BIaG6}yd%x0UWnm7mj7Z%$^`2YX_ literal 0 HcmV?d00001 diff --git a/src/interfaces.ts b/src/interfaces.ts new file mode 100644 index 0000000..a110604 --- /dev/null +++ b/src/interfaces.ts @@ -0,0 +1,18 @@ +// interfaces.ts +export interface SubTag { + topic: string; + tag: string; + icon?: string; + subTags: SubTag[]; + } + + export interface Item extends SubTag {} + + export interface Section { + name: string; + items: Item[]; + } + + export interface Configuration { + [sectionKey: string]: Section; + } diff --git a/src/main.ts b/src/main.ts index 329b37a..81b6b23 100644 --- a/src/main.ts +++ b/src/main.ts @@ -1,18 +1,38 @@ -import { MarkdownRenderChild, Plugin, TFile } from "obsidian"; +import { Editor, MarkdownRenderChild, moment, Plugin, TFile } from "obsidian"; import { defaultSettings, SimpleTimeTrackerSettings } from "./settings"; import { SimpleTimeTrackerSettingsTab } from "./settings-tab"; -import { displayTracker, Entry, formatDuration, formatTimestamp, getDuration, getRunningEntry, getTotalDuration, isRunning, loadAllTrackers, loadTracker, orderedEntries } from "./tracker"; +import { + displayTracker, + Entry, + formatDuration, + formatTimestamp, + getDuration, + getRunningEntry, + getTotalDuration, + isRunning, + loadAllTrackers, + loadTracker, + orderedEntries, +} from "./tracker"; +import { TimeTrackingSummary } from "./timeTrackingSummary"; export default class SimpleTimeTrackerPlugin extends Plugin { - public api = { // verbatim versions of the functions found in tracker.ts with the same parameters - loadTracker, loadAllTrackers, getDuration, getTotalDuration, getRunningEntry, isRunning, + loadTracker, + loadAllTrackers, + getDuration, + getTotalDuration, + getRunningEntry, + isRunning, // modified versions of the functions found in tracker.ts, with the number of required arguments reduced - formatTimestamp: (timestamp: string) => formatTimestamp(timestamp, this.settings), - formatDuration: (totalTime: number) => formatDuration(totalTime, this.settings), - orderedEntries: (entries: Entry[]) => orderedEntries(entries, this.settings) + formatTimestamp: (timestamp: string) => + formatTimestamp(timestamp, this.settings), + formatDuration: (totalTime: number) => + formatDuration(totalTime, this.settings), + orderedEntries: (entries: Entry[]) => + orderedEntries(entries, this.settings), }; public settings: SimpleTimeTrackerSettings; @@ -21,37 +41,102 @@ export default class SimpleTimeTrackerPlugin extends Plugin { this.addSettingTab(new SimpleTimeTrackerSettingsTab(this.app, this)); - this.registerMarkdownCodeBlockProcessor("simple-time-tracker", (s, e, i) => { - e.empty(); - let component = new MarkdownRenderChild(e); - let tracker = loadTracker(s); + this.registerMarkdownCodeBlockProcessor( + "simple-time-tracker", + (s, e, i) => { + e.empty(); + let component = new MarkdownRenderChild(e); + let tracker = loadTracker(s); - // Wrap file name in a function since it can change - let filePath = i.sourcePath; - const getFile = () => filePath; + // Wrap file name in a function since it can change + let filePath = i.sourcePath; + const getFile = () => filePath; - // Hook rename events to update the file path - component.registerEvent(this.app.vault.on("rename", (file, oldPath) => { - if (file instanceof TFile && oldPath === filePath) { - filePath = file.path; - } - })); + // Hook rename events to update the file path + component.registerEvent( + this.app.vault.on("rename", (file, oldPath) => { + if (file instanceof TFile && oldPath === filePath) { + filePath = file.path; + } + }) + ); - displayTracker(tracker, e, getFile, () => i.getSectionInfo(e), this.settings, component); - i.addChild(component); - }); + displayTracker( + tracker, + e, + getFile, + () => i.getSectionInfo(e), + this.settings, + component + ); + i.addChild(component); + } + ); this.addCommand({ id: `insert`, name: `Insert Time Tracker`, editorCallback: (e, _) => { e.replaceSelection("```simple-time-tracker\n```\n"); - } + }, }); + + this.addCommand({ + id: `insert-time-tracking-summary`, + name: `Insert Time Tracking Summary`, + editorCallback: (editor) => this.insertTimeTrackingSummarySummary(editor), + }); + + this.registerMarkdownCodeBlockProcessor( + "time-tracking-summary", + async (source, el, ctx) => { + const sourceWithoutComments = source + .split("\n")[0] + .replace(/\/\/.*$/g, ''); // Remove everything after // + + const params = sourceWithoutComments + .split(",") + .map((s) => s.trim()); + + const [startDateStr, endDateStr, streamKey] = params; + + const timeTracking = new TimeTrackingSummary( + this.app, + this.settings, + this.api + ); + await timeTracking.timeTrackingSummaryForPeriod( + el, + startDateStr, + endDateStr, + streamKey // Optional parameter + ); + } + ); + } + + + insertTimeTrackingSummarySummary(editor: Editor) { + const now = moment(); + // First day of the current month + const firstDay = now.clone().startOf('month').format('YYYY-MM-DD'); + + // Last day of the current month + const lastDay = now.clone().endOf('month').format('YYYY-MM-DD'); + + const snippet = ` +\`\`\`time-tracking-summary + "${firstDay}", "${lastDay}" // Optional: add ", stream_name" to filter by streams section. By default will print all. +\`\`\``; + editor.replaceSelection(snippet); } async loadSettings(): Promise { - this.settings = Object.assign({}, defaultSettings, await this.loadData()); + this.settings = Object.assign( + {}, + defaultSettings, + await this.loadData() + ); } async saveSettings(): Promise { diff --git a/src/settings-tab.ts b/src/settings-tab.ts index 06bae5c..d683096 100644 --- a/src/settings-tab.ts +++ b/src/settings-tab.ts @@ -74,6 +74,22 @@ export class SimpleTimeTrackerSettingsTab extends PluginSettingTab { }); }); + new Setting(this.containerEl) + .setName("Tag Configurations") + .setDesc("Configure your tags, icons, and sub-tags using YAML.") + .addTextArea((text) => { + text + .setPlaceholder("Enter tag configurations in YAML format") + .setValue(this.plugin.settings.tagConfigurationsYaml) + .onChange(async (value) => { + this.plugin.settings.tagConfigurationsYaml = value; + await this.plugin.saveSettings(); + }); + text.inputEl.rows = 15; + text.inputEl.style.width = "100%"; + }); + + this.containerEl.createEl("hr"); this.containerEl.createEl("p", { text: "Need help using the plugin? Feel free to join the Discord server!" }); this.containerEl.createEl("a", { href: "https://link.ellpeck.de/discordweb" }).createEl("img", { diff --git a/src/settings.ts b/src/settings.ts index a70e817..73295fb 100644 --- a/src/settings.ts +++ b/src/settings.ts @@ -4,16 +4,52 @@ export const defaultSettings: SimpleTimeTrackerSettings = { csvDelimiter: ",", fineGrainedDurations: true, reverseSegmentOrder: false, - timestampDurations: false + timestampDurations: false, + tagConfigurationsYaml: ` +# This is a sample configuration file for the tag configurations + +# You can have as many 'sections' as you want to track different domains separately or in parallel + +# Example section 1 +streams: + name: "๐ŸŒŠ Streams" + items: + - topic: "Accounting" + icon: "๐Ÿงฎ" + tag: "#tt_accounting" + subTags: [] + + - topic: "Development" + icon: "๐Ÿ’—" + tag: "#tt_dev" + subTags: + - topic: "Frontend" + tag: "#tt_frontend" + subTags: [] + + - topic: "Backend" + tag: "#tt_backend" + subTags: [] + +# Example section 2 +clients: + name: "๐Ÿ‘จ๐Ÿผโ€๐Ÿ’ผ Clients" + items: + - topic: "Client A" + tag: "#tt_client_a" + subTags: [] + + - topic: "Client B" + tag: "#tt_client_b" + subTags: []` }; export interface SimpleTimeTrackerSettings { - timestampFormat: string; editableTimestampFormat: string; csvDelimiter: string; fineGrainedDurations: boolean; reverseSegmentOrder: boolean; timestampDurations: boolean; - + tagConfigurationsYaml: string; } diff --git a/src/timeTrackingSummary.ts b/src/timeTrackingSummary.ts new file mode 100644 index 0000000..0c10535 --- /dev/null +++ b/src/timeTrackingSummary.ts @@ -0,0 +1,308 @@ +import { SimpleTimeTrackerSettings } from "./settings"; +import { Configuration, Section, Item, SubTag } from "./interfaces"; +import { parseYaml, moment } from "obsidian"; + + +export class TimeTrackingSummary { + settings: SimpleTimeTrackerSettings; + api: any; + app: any; // Reference to the Obsidian app + + constructor(app: any, settings: SimpleTimeTrackerSettings, api: any) { + this.app = app; + this.settings = settings; + this.api = api; + } + + async timeTrackingSummaryForPeriod( + containerEl: HTMLElement, + startDateStr: string, + endDateStr: string, + streamKey?: string + ) { + // Define the time interval (inclusive) + const startDate = moment(startDateStr).startOf("day"); + const endDate = moment(endDateStr).endOf("day"); + + // Initialize an object to hold total durations per dimension + let dimensionDurations: { + [dimension: string]: { [tag: string]: number }; + } = {}; + const untrackedSectionName = "Other"; + + // Parse the configuration from settings + let config: Configuration; + try { + config = this.parseConfiguration(); + } catch (error: any) { + containerEl.createEl("p", { + text: `Error parsing configuration: ${error.message}`, + }); + return; + } + + const api = this.api; + + // Load all trackers from all markdown files + const files = this.app.vault.getMarkdownFiles(); + + for (const file of files) { + const trackers = await api.loadAllTrackers(file.path); + + for (let { tracker } of trackers) { + for (let entry of tracker.entries) { + let entryDate = moment(entry.startTime); + if ( + !entryDate.isValid() || + !entryDate.isBetween(startDate, endDate, null, "[]") + ) { + continue; + } + + let tags = entry.name.match(/#\w+/g) || []; + let duration = api.getDuration(entry); // Use API duration calculation + duration = duration / (1000 * 60 * 60); // Convert ms to hours + + let mappedDimensions = this.mapTagsToDimensions( + tags, + config + ); + + if (Object.keys(mappedDimensions).length === 0) { + // Handle untracked time + if (!dimensionDurations[untrackedSectionName]) { + dimensionDurations[untrackedSectionName] = {}; + } + if ( + !dimensionDurations[untrackedSectionName][ + untrackedSectionName + ] + ) { + dimensionDurations[untrackedSectionName][ + untrackedSectionName + ] = 0; + } + dimensionDurations[untrackedSectionName][ + untrackedSectionName + ] += duration; + } else { + // Accumulate tracked time + for (let dimension in mappedDimensions) { + if (!dimensionDurations[dimension]) { + dimensionDurations[dimension] = {}; + } + for (let topic of mappedDimensions[dimension]) { + if (!dimensionDurations[dimension][topic]) { + dimensionDurations[dimension][topic] = 0; + } + dimensionDurations[dimension][topic] += + duration; + } + } + } + } + } + } + + streamKey = streamKey?.replace(/^["']|["']$/g, '').trim().toLowerCase() // remove any quotes and trim + + + if (streamKey && streamKey.trim() !== "") { + console.log(`streamKey: ${streamKey} is not empty, proceeding to filter dimensions`); + + // Create mapping of section keys and names to dimensions + const sectionMapping: { [key: string]: string } = {}; + for (const [key, section] of Object.entries(config)) { + sectionMapping[key.toLowerCase()] = section.name; + sectionMapping[section.name.toLowerCase()] = section.name; + } + + // Find matching section + const filteredDimensions: typeof dimensionDurations = {}; + for (const dimension in dimensionDurations) { + console.log(`dimension: ${dimension}, checking match with ${streamKey}`); + // Check if streamKey matches either section key or display name + if (dimension.toLowerCase() === streamKey || + Object.keys(sectionMapping).includes(streamKey)) { + const matchedDimension = sectionMapping[streamKey] || dimension; + if (dimensionDurations[matchedDimension]) { + filteredDimensions[matchedDimension] = dimensionDurations[matchedDimension]; + break; + } + } + } + + // Show message if no matching stream found + if (Object.keys(filteredDimensions).length === 0) { + containerEl.createEl("p", { + text: `No results found for stream "${streamKey}" in the selected period [${startDate.format( + "YYYY-MM-DD" + )} โ†’ ${endDate.format("YYYY-MM-DD")}]`, + }); + return; + } + + // Replace original dimensions with filtered + dimensionDurations = filteredDimensions; + } + + + // Display the results + for (let dimension in dimensionDurations) { + console.log(`dimension: ${dimension}`); + let totalDuration = Object.values( + dimensionDurations[dimension] + ).reduce((sum, hours) => sum + hours, 0); + let totalMs = totalDuration * 60 * 60 * 1000; // Convert hours to ms + let formattedTotalDuration = api.formatDuration(totalMs); + + containerEl.createEl("h2", { + text: `${dimension} ๐Ÿ“… [${startDate.format( + "YYYY-MM-DD" + )} โ†’ ${endDate.format( + "YYYY-MM-DD" + )}] โณTotal: ${formattedTotalDuration}`, + }); + + let tableEl = containerEl.createEl("table"); + let headerRow = tableEl.createEl("tr"); + ["Icon", "Topic", "Total Hours", "Formatted Duration"].forEach( + (text) => { + headerRow.createEl("th", { text }); + } + ); + + let tableData = Object.entries(dimensionDurations[dimension]).map( + ([topic, hours]) => { + let durationMs = hours * 60 * 60 * 1000; + let formattedHours = api.formatDuration(durationMs); + let icon = this.getIconForTag(topic, config); + return { + icon, + topic, + hours: hours.toFixed(2), + formattedHours, + }; + } + ); + + // Sort table data by time spent (hours) in descending order + tableData.sort((a, b) => parseFloat(b.hours) - parseFloat(a.hours)); + + tableData.forEach((row) => { + let rowEl = tableEl.createEl("tr"); + ["icon", "topic", "hours", "formattedHours"].forEach((key) => { + rowEl.createEl("td", { text: (row as any)[key] }); + }); + }); + } + } + + parseConfiguration(): Configuration { + const yamlContent = this.settings.tagConfigurationsYaml; + console.log(`received config:\n ${yamlContent}`); + const config = parseYaml(yamlContent); + + console.log("Parsed configuration:", config); + + if (!config || typeof config !== "object") { + throw new Error("Invalid configuration format."); + } + + // Validate and transform the configuration + for (const [sectionKey, sectionValue] of Object.entries(config)) { + console.log(`sectionKey: ${sectionKey}`); + if ( + !sectionValue.hasOwnProperty("name") || + !sectionValue.hasOwnProperty("items") + ) { + throw new Error( + `Section ${sectionKey} is missing 'name' or 'items' properties.` + ); + } + + // Recursively validate items and subTags + const validateItems = (items: any[]) => { + console.log(`items: ${items}`); + for (const item of items) { + if ( + !item.hasOwnProperty("topic") || + !item.hasOwnProperty("tag") + ) { + throw new Error( + `Item ${JSON.stringify( + item + )} is missing 'topic' or 'tag' properties.` + ); + } + item.subTags = item.subTags || []; + validateItems(item.subTags); + } + }; + + validateItems((sectionValue as Section).items); + } + + return config as Configuration; + } + + mapTagsToDimensions( + tags: string[], + config: Configuration + ): { [dimension: string]: string[] } { + const mappedDimensions: { [dimension: string]: string[] } = {}; + + const processItems = ( + items: (Item | SubTag)[], + dimensionName: string, + tagsInDimension: Set + ) => { + for (const item of items) { + if (tags.includes(item.tag)) { + tagsInDimension.add(item.topic); + } + if (item.subTags && item.subTags.length > 0) { + processItems(item.subTags, dimensionName, tagsInDimension); + } + } + }; + + for (const section of Object.values(config)) { + const dimensionName = section.name; + const tagsInDimension: Set = new Set(); + processItems(section.items, dimensionName, tagsInDimension); + if (tagsInDimension.size > 0) { + mappedDimensions[dimensionName] = Array.from(tagsInDimension); + } + } + + return mappedDimensions; + } + + getIconForTag(topic: string, config: Configuration): string { + let foundIcon = ""; + + const searchItems = (items: (Item | SubTag)[]): boolean => { + for (const item of items) { + if (item.topic === topic) { + foundIcon = item.icon || ""; + return true; + } + if (item.subTags && item.subTags.length > 0) { + if (searchItems(item.subTags)) { + return true; + } + } + } + return false; + }; + + for (const section of Object.values(config)) { + if (searchItems(section.items)) { + break; + } + } + + return foundIcon; + } +} diff --git a/test-vault/.obsidian/community-plugins.json b/test-vault/.obsidian/community-plugins.json index 88886e9..b1228e8 100644 --- a/test-vault/.obsidian/community-plugins.json +++ b/test-vault/.obsidian/community-plugins.json @@ -1,4 +1,4 @@ [ - "simple-time-tracker", - "dataview" + "dataview", + "simple-time-tracker" ] \ No newline at end of file diff --git a/test-vault/Time summary reporting test.md b/test-vault/Time summary reporting test.md new file mode 100644 index 0000000..545d09a --- /dev/null +++ b/test-vault/Time summary reporting test.md @@ -0,0 +1,17 @@ + +# Example data +```simple-time-tracker +{"entries":[{"name":"#tt_accounting #tt_client_a bills processing","startTime":"2024-11-01T09:25:42.000Z","endTime":"2024-11-01T17:25:56.000Z"},{"name":"#tt_dev #tt_client2 ","startTime":"2024-11-02T13:26:21.000Z","endTime":"2024-11-02T17:27:18.000Z"},{"name":"#tt_dev #tt_client_a #tt_frontend did this","startTime":"2024-11-03T08:27:20.000Z","endTime":"2024-11-03T17:27:39.000Z"},{"name":"#tt_dev #tt_client_b #tt_backend did that","startTime":"2024-11-04T14:27:40.000Z","endTime":"2024-11-04T17:27:53.000Z"}]} +``` + +# Example report +## Report only one stream + +```time-tracking-summary + "2024-11-01", "2024-11-30" // Optional: add ", stream_name" to filter by streams section. By default will print all. +``` +## Report only one stream + +```time-tracking-summary + "2024-11-01", "2024-11-30", clients // Optional: add ", stream_name" to filter by streams section. By default will print all. +``` \ No newline at end of file