feat: integrate XSLT Tools with toolbox portal

This commit is contained in:
2026-07-20 18:16:18 +02:00
parent 3193cc395c
commit 8f8a59e76c
36 changed files with 1737 additions and 243 deletions

View File

@@ -1,44 +1,66 @@
# Changelog
## 0.3.2
### Added
- Added a typed Toolbox Contract v1 application definition and generated `toolbox-app.json` manifest.
- Added the shared React application shell while retaining the XSLT-specific Help action.
- Added standalone and toolbox-mode integration coverage, including nested-path static deployment checks.
- Added deterministic, cross-time-zone release ZIP and SHA-256 generation with complete production dependency licence files.
- Added a session-only SHA-256/revision trust gate that disables both transformation engines until the exact stylesheet is reviewed and confirmed.
- Added conservative transformation input/output limits and a best-effort asynchronous deadline.
- Added a prominent Source action and corresponding-source notice for the 0.3.2 tag.
### Changed
- Made Vite build assets relocatable with a relative deployment base.
- Resolved the lazily loaded SaxonJS runtime relative to the deployed application path.
- Documented that the vendored SaxonJS 2.7 browser distribution is free to use under separate, non-open-source terms and is not part of the application's AGPL licensing.
- Classified stylesheet processing conservatively and documented that executable stylesheets may access browser or network resources.
- Documented that trusted SaxonJS can access same-site Toolbox data, send data over the network, or navigate away; the recommended portal CSP is defense in depth rather than containment.
- Switched Toolbox SDK dependencies from local workspace links to the public token-free package registry.
- Release packaging now refuses to overwrite same-version artifacts unless `--force` is explicit.
## 0.3.1
### Added
* Added global keyboard shortcut `Shift + Enter` to apply the current transformation.
* Added global keyboard shortcut `F1` to open the help dialog.
* Added shortcut hints for transformation and help actions.
- Added global keyboard shortcut `Shift + Enter` to apply the current transformation.
- Added global keyboard shortcut `F1` to open the help dialog.
- Added shortcut hints for transformation and help actions.
### Changed
* Bumped application version to `0.3.1`.
- Bumped application version to `0.3.1`.
## 0.3.0
### Added
* Added browser-side SaxonJS dynamic compilation support.
* Added support for raw XSLT 1.0, 2.0, and 3.0 transformations through the SaxonJS dynamic engine.
* Added dynamic XSLT-to-SEF compilation in the browser using the full `SaxonJS2.js` browser artifact.
* Added lazy loading for the SaxonJS browser compiler/runtime.
* Added tests covering XSLT 1.0, XSLT 2.0, and XSLT 3.0 transformation scenarios.
* Added project quality commands for type checking, linting, formatting, testing, building, and combined checks.
- Added browser-side SaxonJS dynamic compilation support.
- Added support for raw XSLT 1.0, 2.0, and 3.0 transformations through the SaxonJS dynamic engine.
- Added dynamic XSLT-to-SEF compilation in the browser using the full `SaxonJS2.js` browser artifact.
- Added lazy loading for the SaxonJS browser compiler/runtime.
- Added tests covering XSLT 1.0, XSLT 2.0, and XSLT 3.0 transformation scenarios.
- Added project quality commands for type checking, linting, formatting, testing, building, and combined checks.
### Changed
* Made `saxon-js-dynamic` the primary SaxonJS-based engine for raw XML + raw XSLT workflows.
* Removed the earlier failed npm-bundled SaxonJS approach.
* Removed the SEF-only SaxonJS placeholder from the main workflow.
* Excluded vendored SaxonJS files from linting and formatting.
* Cleaned up debug-only code and unused declarations.
* Improved transformation engine registry and test coverage.
- Made `saxon-js-dynamic` the primary SaxonJS-based engine for raw XML + raw XSLT workflows.
- Removed the earlier failed npm-bundled SaxonJS approach.
- Removed the SEF-only SaxonJS placeholder from the main workflow.
- Excluded vendored SaxonJS files from linting and formatting.
- Cleaned up debug-only code and unused declarations.
- Improved transformation engine registry and test coverage.
### Fixed
* Fixed SaxonJS browser integration by using the full `SaxonJS2.js` artifact instead of `SaxonJS2.rt.js`.
* Fixed dynamic compiler setup by providing a synthetic stylesheet base URI.
* Fixed SaxonJS static parameter handling by passing an `XdmMap` instead of a plain JavaScript object.
* Fixed browser compiler result extraction by reading `checkedOptions.principalResult`.
* Removed duplicate XML output replacement after transformations.
- Fixed SaxonJS browser integration by using the full `SaxonJS2.js` artifact instead of `SaxonJS2.rt.js`.
- Fixed dynamic compiler setup by providing a synthetic stylesheet base URI.
- Fixed SaxonJS static parameter handling by passing an `XdmMap` instead of a plain JavaScript object.
- Fixed browser compiler result extraction by reading `checkedOptions.principalResult`.
- Removed duplicate XML output replacement after transformations.
## 0.2.0