dsh-tiddlywiki 0.26.1 → 0.26.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "dsh-tiddlywiki",
3
3
  "description": "TiddlyWiki 5 as the DSH persistent knowledge base: fifteen tiddlywiki_* agent tools (filtered search/recent/tags/batch/rewrite/trash/lint + git sync & conflict resolve), a full TiddlyWiki editor embedded in the GUI center column (same-origin proxy, works over Tailscale/LAN/domain), a right-side wiki tab, a per-session summary tab, a quick-note card with draft auto-save behind a single knowledge FAB, an optional clip bookmarklet that also saves selected images as attachments, and git-based sync with auto-commit. Mounts via the official dsh plugin system — no DSH source changes.",
4
- "version": "0.26.1",
4
+ "version": "0.26.2",
5
5
  "type": "module",
6
6
  "keywords": [
7
7
  "dsh",
package/src/host/admin.ts CHANGED
@@ -359,16 +359,25 @@ export async function bundledCatalog(twRoot: string): Promise<Catalog> {
359
359
  }
360
360
  const out: CatalogEntry[] = []
361
361
  for (const dir of dirs) {
362
- let info: { name?: string; description?: string; dependents?: string[] } = {}
362
+ let info: { title?: string; name?: string; description?: string; dependents?: string[] } = {}
363
363
  try {
364
364
  info = JSON.parse(await readFile(join(root, dir, 'plugin.info'), 'utf8')) as typeof info
365
365
  } catch {
366
366
  info = {}
367
367
  }
368
368
  if (sub === 'themes' && dir !== 'vanilla' && !(await themeHasCss(dir))) continue
369
+ // The tiddler title comes from plugin.info, NOT from the folder name
370
+ // (v0.26.2): they normally agree, but `plugins/tiddlywiki/codemirror-fullscreen-editing`
371
+ // declares `"title": "$:/plugins/tiddlywiki/codemirror-fullscreen"` — deriving
372
+ // the title from the directory made every title-keyed comparison miss that
373
+ // plugin (the settings page's 「TW 内已禁用」/「wiki 内已装」 badges match on
374
+ // the full tiddler title, so a disabled codemirror-fullscreen showed no badge).
375
+ // plugin.info IS the tiddler TW loads, so it is the source of truth; the
376
+ // folder-derived form stays only as a fallback for a missing/empty title.
377
+ const declaredTitle = typeof info.title === 'string' && info.title.length > 0 ? info.title : undefined
369
378
  out.push({
370
379
  name: `tiddlywiki/${dir}`,
371
- title: sub === 'plugins' ? `$:/plugins/tiddlywiki/${dir}` : `$:/themes/tiddlywiki/${dir}`,
380
+ title: declaredTitle ?? (sub === 'plugins' ? `$:/plugins/tiddlywiki/${dir}` : `$:/themes/tiddlywiki/${dir}`),
372
381
  label: info.name ?? dir,
373
382
  description: info.description ?? '',
374
383
  // plugin.info `dependents` are full plugin titles → convert to names.