Changelog

What changed, and when.

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

1

1.6

1.6.2 (2026-09-23)

Bug Fixes
  • fix: Check every attribute of the modal group against the schema, including size, scrollable, keyboard, backdrop-static, close-button, close-button-label, centred, fade and fullscreen, so a value the schema rejects is now named instead of applied without a word. (#46)
  • fix: Remove the extension’s own duplicate fullscreen and centred warnings, now that the schema names each mistake once. (#46)
  • fix: Honour the centered spelling of centred, which the schema and the extension both declared but the code never read. (#46)
  • fix: Gate the options check on html:js with Bootstrap so non-acting formats stay silent. (#46)
  • 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. (#46)
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. (#43)
  • docs: Add worked examples for the parts of the extension the examples page did not show. These are the button type argument, the dismiss button forms, the default width, fullscreen at every width, a per-modal override of a project default, the header close button, body headings and a code block inside a modal. (#47)
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. (#44)
  • 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. (#45)
  • build: Update the vendored Lua modules to 2.5.0, which adds the accessors that read what the schema resolves an option, an element’s attributes and a format’s options 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. (#46)

1.6.1 (2026-09-07)

Bug Fixes
  • fix: The modal shortcode no longer stops the render when it is called with no button type. It applies the documented toggle default. (#41)

1.6.0 (2026-09-07)

New Features
  • feat: Check the document configuration and each shortcode call against the extension schema, and report what it does not accept. (#37)

1.5

1.5.2 (2026-08-01)

Bug Fixes
  • fix: Register the filter at pre-quarto in the extension manifest, so listing modal 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.5.1 (2026-08-01)

Bug Fixes
  • fix: Honour a document-level option written as a bare YAML false, such as keyboard: false. The value was read as an absent option, so the default applied instead and the setting never reached the dialog.
Documentation
  • docs: Add a documentation website under docs/, built on the atelier project type and published to https://m.canouil.dev/quarto-modal/.
  • 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.5.0 (2026-05-31)

New Features
  • feat: Add friendly size aliases (small, medium/default, large, extra-large/xlarge) and warn on unknown values.
  • feat: Add close-button attribute to suppress the header close button and close-button-label to override its aria-label.
  • feat: Validate description references and warn when the referenced identifier is absent from the document.
  • feat: Detect nested modal containers and warn (Bootstrap does not support modal nesting).
  • feat: Warn when a Div carries modal-specific attributes but its identifier is missing the required modal- prefix.
  • feat: Warn on unknown fullscreen values instead of silently emitting no class.
Bug Fixes
  • fix: Preserve pre-existing bs-toggle/bs-target attributes on link expansion; the filter runs at pre-quarto where attributes have not yet been prefixed with data-, so writes now use the unprefixed names and detect existing values correctly.
Refactoring
  • refactor: Clarify the misleading filter-function comment to document that the callback is invoked on every Div and processes only those whose identifier starts with modal-.
  • refactor: Synchronise shared modules (content-extraction.lua, html.lua, logging.lua, metadata.lua, pandoc-helpers.lua, string.lua) with the canonical version.
Documentation
  • docs: Document friendly size aliases, close-button/close-button-label attributes, description validation, and the nested-modal warning.

1.4

1.4.2 (2026-04-22)

Bug Fixes
  • fix: Preserve non-modal Divs in filter (return nil instead of pandoc.Null()), which previously deleted every Div without a modal- identifier from the output.

1.4.1 (2026-04-15)

Refactoring
  • refactor: Synchronise shared module (logging.lua) with canonical version.

1.4.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.3

1.3.1 (2026-02-21)

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

1.3.0 (2026-02-21)

New Features
  • feat: Add extension-provided code snippets (#15).
  • feat: Add _schema.yml for configuration validation and IDE support (#12).
Bug Fixes
  • fix: Snippet should have ID using modal- prefix.
Style
  • style: Three colons by default.

1.2

1.2.1 (2026-02-11)

Bug Fixes
  • fix: Update copyright year.

1.2.0 (2025-12-03)

Bug Fixes
  • fix: Use british english spelling.
Refactoring
  • refactor: Update modal filter and README for content extraction (#9).

1.1

1.1.0 (2025-10-25)

Refactoring
  • refactor: Use module and enhance extension (#7).

1.0

1.0.2 (2025-08-08)

New Features
  • feat: Extend clipboard.js functionality to modals (#5).

1.0.1 (2025-07-27)

New Features
  • feat: Modal link expansion in markdown (#3).
Documentation
  • docs: bs-target and bs-toggle attributes.

1.0.0 (2025-07-27)

Bug Fixes
  • fix: Button before code.
  • fix: Embedding resources not required.
  • fix: Check for boostrap.
Documentation
  • docs: Add documentation and examples.
Back to top