- `jira-sync-block-start-` docs fix
- custom fields functions correct load on startup
- jira values highlight rollback due to contributor dropped feature full realization. (In current state it's too buggy to release)
- Fixed processFrontmatter typo (processFrontMatter)
- Fixed minimalIssue type assertion (as any as JiraIssue)
- Fixed AdfTaskListNode interface duplicates
- Fixed AdfBlockNode type union to use AdfTaskListNode
- Fixed statusMapping.fromJira second parameter (api_version)
- adfToMarkdown(undefined) now returns null instead of ''
- jiraToMarkdown(undefined) now returns null instead of ''
- Prevents empty strings from passing guard clause and clearing note fields
- Proper semantics: undefined = field not in issue, null = field cleared in Jira
Passing {fields: {status: {name: ...}}} to updateJiraToLocal caused all
fromJira mappings to run with undefined inputs, producing empty strings
that overwrote description and comments. Now updates only the status
field in frontmatter and sync content markers directly.
- @slipstyle's ADF converter (tweaked)
- More broad description of Field Mapping settings section
- a few minor fixes of how lambda js functions convert into strings
- `Super Simple Time Tracker` plugin format support
- Support of multiple Jira connections.
- `AGENTS.md` file from Obidian plugin template and filled with info about project
- Updated eslint configs to `eslint.config.js` format + linted all the code; added prettier with according config
- localization validator improvement; multiple localization fixes
- many minor fixes
- parseInline: [text](url) → ADF link mark; [[wikilink]] preserved as plain text for round-trip fidelity
- adfInlineToMarkdown: inlineCard renders as [url](url) to preserve link text
- markdownToAdf: - [ ]/- [x] → taskList/taskItem nodes; sub-items flattened with hardBreak (taskItem only allows inline content)
- markdownToAdf: indented sub-bullets under bullet/ordered lists → nested bulletList in listItem
- adfBlockToMarkdown: taskList, bulletList, orderedList all render nested content with 2-space indentation
Opens a modal pre-populated with any selected editor text, allowing
users to highlight notes in a non-synced section and post them as a
Jira comment in one step. Supports API v2 (plain text) and v3 (ADF).
Writes key immediately after create so it is never lost, then fetches
the full issue to populate all synced fields (status, assignee, dates,
comments, etc.) in one step.
border-left + padding-left was overriding Obsidian's list item padding,
causing bullet and ordered list markers to overlap the accent bar. An
inset box-shadow achieves the same visual effect without touching layout.
Pulls Jira comments into Obsidian notes with author, timestamp (date
and time to second precision), and body converted from ADF to markdown.
Returns empty string when no comments exist.
When highlight mode is on, hide markers as before but wrap the synced
content itself in a highlight decoration:
- Inline sections: background + outline on text between start/end markers
- Line sections: same treatment on text after the line marker
- Block sections: left accent border + tinted background on each content line
Reading mode wraps the same content in a jira-sync-content span.
Uses color-mix() for theme-aware accent tinting.
Add a toggle in General settings to make jira-sync markers visible as
styled labels instead of hiding them. When enabled:
- Markers render with tag-style pill appearance (theme-aware via --tag-* vars)
- Block content between jira-sync-block-start and jira-sync-end gets a
left border accent line in live preview
- Works in both live preview (CM6) and reading mode
- Cursor inside a marker adds an accent outline (jira-sync-active)
Default is off, preserving existing hide-on-blur behaviour.
Remove the blanket jiraToMarkdown() pass on all body sync sections — it was
corrupting ADF-sourced markdown (headings becoming ordered list items). Instead,
the default description fromJira now calls jiraToMarkdown directly, preserving
v2 wiki-markup behaviour. v3 users override description.fromJira with
adfToMarkdown() via their field mapping settings.
Implement adfToMarkdown, adfInlineToMarkdown, and adfBlockToMarkdown so
that pulling a Jira issue back into Obsidian converts the ADF description
to clean markdown rather than clobbering the note with raw HTML or wiki
markup. Export adfToMarkdown and register it in SAFE_GLOBALS / context so
field mapping expressions can call it directly.
Converts Obsidian markdown to Atlassian Document Format (ADF) so
descriptions can be sent to the Jira Cloud API v3, which rejects
plain text and wiki markup in the description field.
Supports headings, paragraphs, bullet/ordered lists, fenced code
blocks, horizontal rules, and inline bold/italic/inline code.
Exposes markdownToAdf as a first-class helper in the expression
evaluation context alongside markdownToJira and jiraToMarkdown,
so it can be used in field mapping expressions as markdownToAdf(value).
- File reading for `jira-sync-*` is now much more time efficient.
- Readmes updated in terms of how file body indicators work.
- Template example reworked.
- Fixed how hidden indicators look like in Live Preview (no more glitching lines)
- Changed default filename template from "{summary} [{key}]" to "{summary} ({key})", so there should be less problems with inline md links
- Took the filename option to fetch settings section so you can configure it yourself
- Added husky precommit check, so I won't forget to bump versions of plugin anymore
- "Raw Issue Viewer" renamed into "Fetch Issue Settings", added useful 'fields' and 'expand' params used in most fetch requests.
- now Global settings use correct native Search component instead of custom one.
- refactored period selector in Timekeep settings so it now also uses native component.
- migrated most of settings values. Old user data will be auto migrated too. I'll delete migration script in a year or two.
- JQL pull tasks (with preview)
- Timekeep settings menu full rework
- bunch of small fixes with data transformation and pointers
- now caching Jira key -> file path to increase performance
- new pointer - `jira-sync-inline-*`
- readme slight rework