Changelog

What changed, and when.

Every released version of the offcanvas extension, and what each one changed.

1

1.4

1.4.1 (2026-09-23)

Bug Fixes
  • fix: Read the options through the schema, so a value that is not a boolean is reported rather than ignored. Comparing the document text accepted true and false only, and every other spelling was dropped without a word. (#43)
  • fix: Read the offcanvas attributes through the schema, so a value it rejects is named once and an explicit scroll=“false”, keyboard=“false” or show-close=“false” is no longer at risk of being silently dropped. scroll=“TRUE” and show-close=“TRUE” now switch the setting on, the same way “true” always has. (#43)
  • fix: Allow the “left” and “right” placement aliases in the schema, so a documented, working value is no longer reported as invalid. (#43)
  • fix: Fall back to the same “start” placement on a margin panel that an invalid value already falls back to on an ordinary offcanvas panel, instead of writing the invalid value straight into the emitted class name. (#43)
  • fix: Gate the options check on html:js with Bootstrap so non-acting formats stay silent. (#43)
  • fix: Report a key nested inside an option as a warning rather than an error, so one nested typo does not invalidate the whole configuration. This matches how the extension already reports an unknown key at the top of its own block. (#43)
Documentation
  • docs: Serve the extension’s social card as the Open Graph image, so a shared link shows the card rather than the first image on the page. (#40)
  • docs: Record that a panel with no heading and no title has no accessible name. (#44)
  • docs: Add worked examples for the panel title, the close button, the trigger icon, and a trigger with no classes. (#44)
Refactoring
  • build: Update the vendored Lua modules to 2.3.0, which includes the schema-check fix for an extension whose entry points are in a subdirectory. A module no longer carries a version line in its header, so its checksum changes only when its code changes. (#41)
  • build: Fetch the schema validator from a Quarto Wizard release asset rather than a raw path inside its repository, which a refactor could move without notice. The vendored file is unchanged. (#42)
  • build: Update the vendored Lua modules to 2.5.0, which adds the accessor that reads what the schema resolves an option to. The schema validator moves to its own release train and is pinned at schema-v2.2.0, which accepts only true and false as a boolean. The extension no longer vendors metadata.lua. (#43)

1.4.0 (2026-09-07)

New Features
  • feat: Check the document configuration against the extension schema and report what it does not accept. (#36)

1.3

1.3.2 (2026-08-01)

Bug Fixes
  • fix: Register the filter at pre-quarto in the extension manifest, so listing offcanvas under filters is enough and the entry point no longer has to be named in project or document YAML.
  • fix: Raise quarto-required to >=1.9.38, the first version whose _extension.yml schema accepts a filter entry point.

1.3.1 (2026-08-01)

Bug Fixes
  • fix: Honour a document-level option written as a bare YAML false, such as keyboard: false or scroll: false. The value was read as an absent option, so the default applied instead and the setting never reached the panel.
Documentation
  • docs: Add a documentation website under docs/, built on the atelier project type and published to https://m.canouil.dev/quarto-offcanvas/.
  • docs: Trim README.md to a landing page pointing at the website, and example.qmd to a short starting point to copy.
  • docs: Add the Pages workflow, which renders docs/ on pull requests and deploys it from the release tag.
  • docs: Add the Quarto Extensions Updates workflow, scanning docs for the website’s own dependencies.

1.3.0 (2026-05-31)

New Features
  • feat: Add animation attribute with none, fast, normal, and slow presets driving --bs-offcanvas-transition-duration.
  • feat: Add auto-dismiss attribute (milliseconds) that closes the panel after a delay, with a small JS helper that cancels the timer on early dismissal.
  • feat: Add .offcanvas-trigger child div to supply custom markdown as the trigger content, replacing trigger-text/trigger-icon for that panel.
  • feat: Add trigger-style attribute for inline CSS on the trigger element.
Bug Fixes
  • fix: Merge user-supplied trigger styles with the built-in cursor: pointer; hint on text triggers instead of dropping them.
  • fix: Reset per-document state (offcanvas ID counter and JS helper flag) in the Meta pass to prevent leakage across batch renders.
  • fix: Warn on invalid backdrop, trigger-type, animation, and auto-dismiss values instead of passing them through silently.
Documentation
  • docs: Document Bootstrap version assumptions (5.0+ for offcanvas, 5.2+ for .offcanvas-{sm,...}, 5.3+ for the CSS custom property used by animation).
  • docs: Cover the new attributes (animation, auto-dismiss, trigger-style) and the .offcanvas-trigger child div in README, schema, and example.
Refactoring
  • refactor: Synchronise shared modules with canonical versions.

1.2

1.2.1 (2026-04-15)

Refactoring
  • refactor: Synchronise shared module (logging.lua) with canonical version.
Documentation
  • docs: Remove version pinning from GitHub URL in example.

1.2.0 (2026-03-23)

Refactoring
  • refactor: Replace monolithic utils.lua with focused modules (string.lua, logging.lua, metadata.lua, pandoc-helpers.lua, html.lua, paths.lua, colour.lua).

1.1

1.1.1 (2026-02-21)

New Features
  • feat: Rename element-attributes to attributes and add classes section (#18).

1.1.0 (2026-02-21)

New Features
  • feat: Add extension-provided code snippets (#16).
  • feat: Add _schema.yml for configuration validation and IDE support (#13).
Style
  • style: Three colons by default.

1.0

1.0.2 (2026-02-11)

Bug Fixes
  • fix: Update copyright year.

1.0.1 (2025-12-03)

Bug Fixes
  • fix: Set footer padding in offcanvas component (#10).

1.0.0 (2025-12-03)

New Features
  • feat: Initialise quarto-offcanvas extension repository.
Back to top