feat: publish Toolbox 0.9.2 from LocalToolBox

This commit is contained in:
2026-07-27 15:58:41 +02:00
parent 43670a5824
commit f0b2ce34e4
22 changed files with 139 additions and 98 deletions
+2 -4
View File
@@ -143,9 +143,7 @@ describe('portal UI', () => {
expect(within(card).getByRole('heading', { level: 3 })).toHaveTextContent(
'Regex'
);
expect(
within(card).getByText('Explain and test regex locally.')
).toBeVisible();
expect(within(card).getByText('Explain and test locally.')).toBeVisible();
});
it('moves the full disclosure into an accessible modal', async () => {
@@ -181,7 +179,7 @@ describe('portal UI', () => {
});
expect(sourceLink).toHaveAttribute(
'href',
'https://git.add-ideas.de/zemion/pdf-tools'
'https://git.add-ideas.de/lotobo/pdf-tools'
);
expect(sourceLink).toHaveAttribute('rel', 'noopener noreferrer');
expect(
+3 -3
View File
@@ -28,7 +28,7 @@ import type { LoadedCatalogue, ResolvedApp } from './types';
import { usePreferences } from './usePreferences';
const CATALOGUE_HREF = './toolbox.catalog.json';
const PORTAL_SOURCE = 'https://git.add-ideas.de/zemion/toolbox-portal';
const PORTAL_SOURCE = 'https://git.add-ideas.de/lotobo/toolbox-portal';
type LoadState =
| { status: 'loading' }
@@ -489,9 +489,9 @@ export default function App() {
</span>
</p>
<span>
Portal v0.2.9 ·{' '}
Portal v0.2.10 ·{' '}
<a
href="https://git.add-ideas.de/zemion/toolbox-portal/src/tag/v0.9.1"
href="https://git.add-ideas.de/lotobo/toolbox-portal/src/tag/v0.9.2"
target="_blank"
rel="noopener noreferrer"
>
+1 -1
View File
@@ -15,7 +15,7 @@ describe('catalogue loading', () => {
id: 'de.add-ideas.pdf-tools',
name: 'PDF Workbench',
entryUrl: 'http://localhost:3000/apps/pdf/',
sourceUrl: 'https://git.add-ideas.de/zemion/pdf-tools',
sourceUrl: 'https://git.add-ideas.de/lotobo/pdf-tools',
});
});
+4 -4
View File
@@ -30,7 +30,7 @@ export const pdfManifest: ToolboxAppManifest = {
telemetry: false,
},
source: {
repository: 'https://git.add-ideas.de/zemion/pdf-tools',
repository: 'https://git.add-ideas.de/lotobo/pdf-tools',
license: 'AGPL-3.0-only',
},
};
@@ -45,7 +45,7 @@ export const xsltManifest: ToolboxAppManifest = {
categories: ['documents', 'developer'],
tags: ['transform', 'xml'],
source: {
repository: 'https://git.add-ideas.de/zemion/xslt-tools',
repository: 'https://git.add-ideas.de/lotobo/xslt-tools',
license: 'AGPL-3.0-only',
},
};
@@ -60,7 +60,7 @@ export const onenoteManifest: ToolboxAppManifest = {
categories: ['documents', 'notes'],
tags: ['onepkg', 'import'],
source: {
repository: 'https://git.add-ideas.de/zemion/onenote-tools',
repository: 'https://git.add-ideas.de/lotobo/onenote-tools',
license: 'AGPL-3.0-only',
},
};
@@ -82,7 +82,7 @@ export const regexManifest: ToolboxAppManifest = {
crossOriginIsolated: false,
},
source: {
repository: 'https://git.add-ideas.de/zemion/regex-tools',
repository: 'https://git.add-ideas.de/lotobo/regex-tools',
license: 'GPL-3.0-or-later',
},
};
+31
View File
@@ -0,0 +1,31 @@
import { describe, expect, it } from 'vitest';
import { shortToolDescription, shortToolTitle } from './toolPresentation';
import type { ResolvedApp } from './types';
function app(id: string, name: string, description: string): ResolvedApp {
return { id, name, description } as ResolvedApp;
}
describe('compact tool presentation', () => {
it('uses the requested Audio & Video tile copy', () => {
const audioVideo = app(
'de.add-ideas.av-tools',
'Audio & Video Tools',
'Convert and lightly edit audio and video locally in the browser.'
);
expect(shortToolTitle(audioVideo)).toBe('Audio & Video');
expect(shortToolDescription(audioVideo)).toBe('Convert and edit locally.');
});
it('uses the requested Regex tile copy', () => {
const regex = app(
'de.add-ideas.regex-tools',
'Regex Tools',
'Develop, explain, test and apply regular expressions locally in the browser.'
);
expect(shortToolTitle(regex)).toBe('Regex');
expect(shortToolDescription(regex)).toBe('Explain and test locally.');
});
});
+5 -1
View File
@@ -13,9 +13,13 @@ const PRESENTATION: Record<string, { title: string; description: string }> = {
title: 'OneNote',
description: 'Open OneNote files locally.',
},
'de.add-ideas.av-tools': {
title: 'Audio & Video',
description: 'Convert and edit locally.',
},
'de.add-ideas.regex-tools': {
title: 'Regex',
description: 'Explain and test regex locally.',
description: 'Explain and test locally.',
},
};