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

49
src/toolboxApp.ts Normal file
View File

@@ -0,0 +1,49 @@
import { defineToolboxApp } from '@add-ideas/toolbox-contract';
import { APP_VERSION } from './version.ts';
export const toolboxAppDefinition = {
$schema:
'https://git.add-ideas.de/zemion/toolbox-sdk/raw/branch/main/schemas/toolbox-app.v1.schema.json',
schemaVersion: 1,
id: 'de.add-ideas.xslt-tools',
name: 'XSLT tools',
version: APP_VERSION,
description:
'Browser-based XML and XSLT transformations with executable-stylesheet trust controls.',
entry: './',
icon: './favicon.svg',
categories: ['documents', 'xml', 'xslt'],
tags: ['transform', 'validate', 'format', 'explain'],
actions: [
{
id: 'source',
label: 'Source',
url: 'https://git.add-ideas.de/zemion/xslt-tools/src/tag/v0.3.2',
},
],
assets: ['./vendor/saxon/SaxonJS2.js', './vendor/saxon/LICENSE.txt'],
integration: {
contextVersion: 1,
launchModes: ['navigate', 'new-tab'],
embedding: 'unsupported',
},
requirements: {
secureContext: true,
workers: false,
indexedDb: false,
crossOriginIsolated: false,
},
privacy: {
processing: 'mixed',
fileUploads: true,
telemetry: false,
label:
'Stylesheets are executable: after explicit trust they may read same-site app data, contact the network, or navigate away.',
},
source: {
repository: 'https://git.add-ideas.de/zemion/xslt-tools',
license: 'AGPL-3.0-only',
},
} as const;
export const toolboxApp = defineToolboxApp(toolboxAppDefinition);