@geekity/cms 0.26.0 → 0.27.0
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/README.md +2 -1
- package/admin/pages/plugins/confirm.njk +42 -0
- package/admin/pages/plugins/installed.njk +85 -3
- package/admin/static/admin.css +7 -0
- package/dist/admin/documents.d.ts +3 -0
- package/dist/admin/documents.d.ts.map +1 -1
- package/dist/admin/documents.js +12 -3
- package/dist/admin/documents.js.map +1 -1
- package/dist/admin/plugins.d.ts +6 -0
- package/dist/admin/plugins.d.ts.map +1 -1
- package/dist/admin/plugins.js +274 -3
- package/dist/admin/plugins.js.map +1 -1
- package/dist/admin/taxonomy.d.ts +4 -1
- package/dist/admin/taxonomy.d.ts.map +1 -1
- package/dist/admin/taxonomy.js +11 -7
- package/dist/admin/taxonomy.js.map +1 -1
- package/dist/admin/templates.d.ts +1 -0
- package/dist/admin/templates.d.ts.map +1 -1
- package/dist/admin/templates.js +1 -0
- package/dist/admin/templates.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +55 -19
- package/dist/cli.js.map +1 -1
- package/dist/config.d.ts +8 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +1 -0
- package/dist/config.js.map +1 -1
- package/dist/content/parser.d.ts.map +1 -1
- package/dist/content/parser.js +2 -1
- package/dist/content/parser.js.map +1 -1
- package/dist/content/store.d.ts +21 -3
- package/dist/content/store.d.ts.map +1 -1
- package/dist/content/store.js +169 -42
- package/dist/content/store.js.map +1 -1
- package/dist/content/tags.d.ts +26 -0
- package/dist/content/tags.d.ts.map +1 -0
- package/dist/content/tags.js +41 -0
- package/dist/content/tags.js.map +1 -0
- package/dist/federation/article.d.ts.map +1 -1
- package/dist/federation/article.js +3 -1
- package/dist/federation/article.js.map +1 -1
- package/dist/notify.js +2 -2
- package/dist/notify.js.map +1 -1
- package/dist/plugin.d.ts +8 -0
- package/dist/plugin.d.ts.map +1 -1
- package/dist/plugin.js +8 -0
- package/dist/plugin.js.map +1 -1
- package/dist/plugins/changes.d.ts +31 -0
- package/dist/plugins/changes.d.ts.map +1 -0
- package/dist/plugins/changes.js +40 -0
- package/dist/plugins/changes.js.map +1 -0
- package/dist/plugins/install.d.ts +30 -3
- package/dist/plugins/install.d.ts.map +1 -1
- package/dist/plugins/install.js +43 -15
- package/dist/plugins/install.js.map +1 -1
- package/dist/plugins/manage.d.ts +32 -0
- package/dist/plugins/manage.d.ts.map +1 -0
- package/dist/plugins/manage.js +101 -0
- package/dist/plugins/manage.js.map +1 -0
- package/dist/plugins/registry.js +1 -1
- package/dist/plugins/registry.js.map +1 -1
- package/dist/plugins/upgrade.d.ts +54 -0
- package/dist/plugins/upgrade.d.ts.map +1 -0
- package/dist/plugins/upgrade.js +240 -0
- package/dist/plugins/upgrade.js.map +1 -0
- package/dist/web/routes.d.ts.map +1 -1
- package/dist/web/routes.js +25 -12
- package/dist/web/routes.js.map +1 -1
- package/dist/web/taxonomy.d.ts +7 -1
- package/dist/web/taxonomy.d.ts.map +1 -1
- package/dist/web/taxonomy.js +24 -8
- package/dist/web/taxonomy.js.map +1 -1
- package/package.json +1 -1
- package/themes/default/README.md +2 -2
- package/themes/default/layouts/base.njk +1 -1
- package/themes/default/layouts/tag.njk +1 -1
- package/themes/default/partials/tags.njk +1 -1
package/dist/content/store.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { databaseFile, openDatabase } from '../cache.js';
|
|
2
2
|
import { featuredPosts, PINNED_FRONT_MATTER_KEY } from './pinned.js';
|
|
3
3
|
import { searchExpression, searchText, SNIPPET_CLOSE, SNIPPET_OPEN } from './search.js';
|
|
4
|
+
import { tagKey, uniqueTags } from './tags.js';
|
|
4
5
|
import { VISIBILITIES, VISIBILITY_FRONT_MATTER_KEY } from './visibility.js';
|
|
5
6
|
export { DATABASE_FILE } from '../cache.js';
|
|
6
7
|
/** Directory name that marks a document as thrown away but not yet deleted. */
|
|
@@ -148,7 +149,7 @@ export function openContentStore(options) {
|
|
|
148
149
|
hash = excluded.hash
|
|
149
150
|
`),
|
|
150
151
|
deleteTags: db.prepare('DELETE FROM document_tags WHERE path = ?'),
|
|
151
|
-
insertTag: db.prepare('INSERT INTO document_tags (path, tag, position) VALUES (?, ?, ?)'),
|
|
152
|
+
insertTag: db.prepare('INSERT INTO document_tags (path, tag, key, position) VALUES (?, ?, ?, ?)'),
|
|
152
153
|
deleteCategories: db.prepare('DELETE FROM document_categories WHERE path = ?'),
|
|
153
154
|
insertCategory: db.prepare('INSERT INTO document_categories (path, category, position) VALUES (?, ?, ?)'),
|
|
154
155
|
pathForPermalink: db.prepare('SELECT path FROM documents WHERE permalink = ? AND trashed = 0'),
|
|
@@ -168,7 +169,12 @@ export function openContentStore(options) {
|
|
|
168
169
|
`),
|
|
169
170
|
byStoredObjectId: db.prepare(`SELECT * FROM documents WHERE json_extract(activitypub, '$.id') = ? ORDER BY trashed LIMIT 1`),
|
|
170
171
|
bySlug: db.prepare(`SELECT * FROM documents WHERE slug = ? ORDER BY date_sort DESC, path DESC LIMIT 1`),
|
|
171
|
-
tagsFor: db.prepare('SELECT tag FROM document_tags WHERE path = ? ORDER BY position'),
|
|
172
|
+
tagsFor: db.prepare('SELECT tag, key FROM document_tags WHERE path = ? ORDER BY position'),
|
|
173
|
+
keysFor: db.prepare('SELECT key FROM document_tags WHERE path = ?'),
|
|
174
|
+
spellings: db.prepare(tagSpellingsSql('')),
|
|
175
|
+
spellingsOfKeys: db.prepare(tagSpellingsSql('WHERE spelled.key IN (SELECT value FROM json_each(:keys))')),
|
|
176
|
+
spellingExcluding: db.prepare(tagSpellingsSql('WHERE spelled.key = :key AND spelled.path <> :excluding')),
|
|
177
|
+
dataVersion: db.prepare('PRAGMA data_version'),
|
|
172
178
|
categoriesFor: db.prepare('SELECT category FROM document_categories WHERE path = ? ORDER BY position'),
|
|
173
179
|
paths: db.prepare('SELECT path FROM documents ORDER BY path'),
|
|
174
180
|
counts: db.prepare(`
|
|
@@ -182,12 +188,11 @@ export function openContentStore(options) {
|
|
|
182
188
|
FROM documents
|
|
183
189
|
`),
|
|
184
190
|
tagCounts: db.prepare(`
|
|
185
|
-
SELECT document_tags.tag AS tag, COUNT(*) AS count
|
|
191
|
+
SELECT document_tags.key AS key, MIN(document_tags.tag) AS tag, COUNT(*) AS count
|
|
186
192
|
FROM document_tags
|
|
187
193
|
JOIN documents ON documents.path = document_tags.path
|
|
188
194
|
WHERE ${LISTED_CLAUSE}
|
|
189
|
-
GROUP BY document_tags.
|
|
190
|
-
ORDER BY count DESC, tag ASC
|
|
195
|
+
GROUP BY document_tags.key
|
|
191
196
|
`),
|
|
192
197
|
categoryCounts: db.prepare(`
|
|
193
198
|
SELECT document_categories.category AS category, COUNT(*) AS count
|
|
@@ -197,8 +202,8 @@ export function openContentStore(options) {
|
|
|
197
202
|
GROUP BY document_categories.category
|
|
198
203
|
ORDER BY count DESC, category ASC
|
|
199
204
|
`),
|
|
200
|
-
tagUsage: db.prepare(termUsageSql(
|
|
201
|
-
categoryUsage: db.prepare(termUsageSql(
|
|
205
|
+
tagUsage: db.prepare(termUsageSql(TERM_TABLES.tag)),
|
|
206
|
+
categoryUsage: db.prepare(termUsageSql(TERM_TABLES.category)),
|
|
202
207
|
nextDue: db.prepare(`
|
|
203
208
|
SELECT MIN(date_sort) AS due FROM documents
|
|
204
209
|
WHERE draft = 0 AND trashed = 0 AND ${SCHEDULED_CLAUSE}
|
|
@@ -221,8 +226,43 @@ export function openContentStore(options) {
|
|
|
221
226
|
`),
|
|
222
227
|
};
|
|
223
228
|
let open = true;
|
|
229
|
+
let cachedSpellings;
|
|
230
|
+
const staleKeys = new Set();
|
|
231
|
+
const MOST_KEYS_REFRESHED = 500;
|
|
232
|
+
function siteSpellings() {
|
|
233
|
+
const now = nowKey();
|
|
234
|
+
const dataVersion = statements.dataVersion.get()?.['data_version'];
|
|
235
|
+
const current = cachedSpellings === undefined || outOfDate(cachedSpellings, dataVersion, now)
|
|
236
|
+
? undefined
|
|
237
|
+
: cachedSpellings.byKey;
|
|
238
|
+
if (current !== undefined && staleKeys.size === 0)
|
|
239
|
+
return current;
|
|
240
|
+
const refreshStaleOnly = current !== undefined && staleKeys.size <= MOST_KEYS_REFRESHED;
|
|
241
|
+
const byKey = refreshStaleOnly ? current : new Map();
|
|
242
|
+
const rows = refreshStaleOnly
|
|
243
|
+
? refreshStaleSpellings(byKey, now)
|
|
244
|
+
: statements.spellings.all(now);
|
|
245
|
+
for (const row of rows)
|
|
246
|
+
byKey.set(String(row['key']), String(row['tag']));
|
|
247
|
+
staleKeys.clear();
|
|
248
|
+
const nextScheduledAt = text(statements.nextDue.get(now)['due']);
|
|
249
|
+
cachedSpellings = { byKey, dataVersion, workedOutAt: now, nextScheduledAt };
|
|
250
|
+
return byKey;
|
|
251
|
+
}
|
|
252
|
+
function refreshStaleSpellings(byKey, now) {
|
|
253
|
+
for (const key of staleKeys)
|
|
254
|
+
byKey.delete(key);
|
|
255
|
+
return statements.spellingsOfKeys.all({ keys: JSON.stringify([...staleKeys]) }, now);
|
|
256
|
+
}
|
|
257
|
+
function markTagsStaleBeforeWrite(contentPath) {
|
|
258
|
+
for (const row of statements.keysFor.all(contentPath))
|
|
259
|
+
staleKeys.add(String(row['key']));
|
|
260
|
+
}
|
|
224
261
|
function tagsOf(contentPath) {
|
|
225
|
-
|
|
262
|
+
const spellings = siteSpellings();
|
|
263
|
+
return statements.tagsFor
|
|
264
|
+
.all(contentPath)
|
|
265
|
+
.map((row) => spellings.get(String(row['key'])) ?? String(row['tag']));
|
|
226
266
|
}
|
|
227
267
|
function categoriesOf(contentPath) {
|
|
228
268
|
return statements.categoriesFor.all(contentPath).map((row) => String(row['category']));
|
|
@@ -247,6 +287,9 @@ export function openContentStore(options) {
|
|
|
247
287
|
}
|
|
248
288
|
function writeOne(document) {
|
|
249
289
|
const contentPath = document.path;
|
|
290
|
+
markTagsStaleBeforeWrite(contentPath);
|
|
291
|
+
for (const tag of document.tags)
|
|
292
|
+
staleKeys.add(tagKey(tag));
|
|
250
293
|
try {
|
|
251
294
|
statements.insert.run(toRow(document));
|
|
252
295
|
}
|
|
@@ -254,8 +297,8 @@ export function openContentStore(options) {
|
|
|
254
297
|
throw translateWriteError(error, document, statements.pathForPermalink);
|
|
255
298
|
}
|
|
256
299
|
statements.deleteTags.run(contentPath);
|
|
257
|
-
document.tags.forEach((tag, position) => {
|
|
258
|
-
statements.insertTag.run(contentPath, tag, position);
|
|
300
|
+
uniqueTags(document.tags).forEach((tag, position) => {
|
|
301
|
+
statements.insertTag.run(contentPath, tag, tagKey(tag), position);
|
|
259
302
|
});
|
|
260
303
|
statements.deleteCategories.run(contentPath);
|
|
261
304
|
document.categories.forEach((category, position) => {
|
|
@@ -276,9 +319,9 @@ export function openContentStore(options) {
|
|
|
276
319
|
* holds `term`, newest first. Tags and categories are the same query over two
|
|
277
320
|
* tables, so neither can drift from the other.
|
|
278
321
|
*/
|
|
279
|
-
function selectByTerm(
|
|
280
|
-
const where = [LISTED_CLAUSE,
|
|
281
|
-
const params = [nowKey(), term];
|
|
322
|
+
function selectByTerm(terms, term, options) {
|
|
323
|
+
const where = [LISTED_CLAUSE, termFilter(terms)];
|
|
324
|
+
const params = [nowKey(), terms.match(term)];
|
|
282
325
|
if (options.type !== undefined) {
|
|
283
326
|
where.unshift('type = ?');
|
|
284
327
|
params.unshift(options.type);
|
|
@@ -286,9 +329,10 @@ export function openContentStore(options) {
|
|
|
286
329
|
return select(where, params, options);
|
|
287
330
|
}
|
|
288
331
|
/** {@link selectByTerm}'s total, for the pager and the archive's existence. */
|
|
289
|
-
function countByTerm(
|
|
290
|
-
const
|
|
291
|
-
const
|
|
332
|
+
function countByTerm(terms, term, options) {
|
|
333
|
+
const { table, matchColumn } = terms;
|
|
334
|
+
const where = [LISTED_CLAUSE, `${table}.${matchColumn} = ?`];
|
|
335
|
+
const params = [nowKey(), terms.match(term)];
|
|
292
336
|
if (options.type !== undefined) {
|
|
293
337
|
where.push('documents.type = ?');
|
|
294
338
|
params.push(options.type);
|
|
@@ -346,11 +390,14 @@ export function openContentStore(options) {
|
|
|
346
390
|
}
|
|
347
391
|
},
|
|
348
392
|
remove(contentPath) {
|
|
393
|
+
markTagsStaleBeforeWrite(contentPath);
|
|
349
394
|
// Nothing cascades into a virtual table, so the words go by hand.
|
|
350
395
|
statements.deleteText.run(contentPath);
|
|
351
396
|
return statements.remove.run(contentPath).changes > 0;
|
|
352
397
|
},
|
|
353
398
|
clear() {
|
|
399
|
+
cachedSpellings = undefined;
|
|
400
|
+
staleKeys.clear();
|
|
354
401
|
db.exec('BEGIN');
|
|
355
402
|
try {
|
|
356
403
|
// All four by name. The two term tables would go with the documents
|
|
@@ -423,10 +470,10 @@ export function openContentStore(options) {
|
|
|
423
470
|
return hydrateAll(rows);
|
|
424
471
|
},
|
|
425
472
|
listByTag(tag, options = {}) {
|
|
426
|
-
return selectByTerm(
|
|
473
|
+
return selectByTerm(TERM_TABLES.tag, tag, options);
|
|
427
474
|
},
|
|
428
475
|
listByCategory(category, options = {}) {
|
|
429
|
-
return selectByTerm(
|
|
476
|
+
return selectByTerm(TERM_TABLES.category, category, options);
|
|
430
477
|
},
|
|
431
478
|
listByAuthor(names, options = {}) {
|
|
432
479
|
if (names.length === 0)
|
|
@@ -456,12 +503,12 @@ export function openContentStore(options) {
|
|
|
456
503
|
params.push(nowKey());
|
|
457
504
|
}
|
|
458
505
|
if (options.tag !== undefined) {
|
|
459
|
-
where.push(
|
|
460
|
-
params.push(options.tag);
|
|
506
|
+
where.push(termFilter(TERM_TABLES.tag));
|
|
507
|
+
params.push(TERM_TABLES.tag.match(options.tag));
|
|
461
508
|
}
|
|
462
509
|
if (options.category !== undefined) {
|
|
463
|
-
where.push(
|
|
464
|
-
params.push(options.category);
|
|
510
|
+
where.push(termFilter(TERM_TABLES.category));
|
|
511
|
+
params.push(TERM_TABLES.category.match(options.category));
|
|
465
512
|
}
|
|
466
513
|
return select(where, params, options);
|
|
467
514
|
},
|
|
@@ -484,10 +531,10 @@ export function openContentStore(options) {
|
|
|
484
531
|
};
|
|
485
532
|
},
|
|
486
533
|
countByTag(tag, options = {}) {
|
|
487
|
-
return countByTerm(
|
|
534
|
+
return countByTerm(TERM_TABLES.tag, tag, options);
|
|
488
535
|
},
|
|
489
536
|
countByCategory(category, options = {}) {
|
|
490
|
-
return countByTerm(
|
|
537
|
+
return countByTerm(TERM_TABLES.category, category, options);
|
|
491
538
|
},
|
|
492
539
|
countByAuthor(names) {
|
|
493
540
|
if (names.length === 0)
|
|
@@ -499,10 +546,20 @@ export function openContentStore(options) {
|
|
|
499
546
|
return Number(row['count']);
|
|
500
547
|
},
|
|
501
548
|
listTags() {
|
|
502
|
-
|
|
503
|
-
|
|
549
|
+
const spellings = siteSpellings();
|
|
550
|
+
return statements.tagCounts
|
|
551
|
+
.all(nowKey())
|
|
552
|
+
.map((row) => ({
|
|
553
|
+
tag: spellings.get(String(row['key'])) ?? String(row['tag']),
|
|
504
554
|
count: Number(row['count']),
|
|
505
|
-
}))
|
|
555
|
+
}))
|
|
556
|
+
.sort((a, b) => b.count - a.count || compareByUtf16CodeUnit(a.tag, b.tag));
|
|
557
|
+
},
|
|
558
|
+
tagSpelling(tag, options = {}) {
|
|
559
|
+
if (options.excluding === undefined)
|
|
560
|
+
return siteSpellings().get(tagKey(tag));
|
|
561
|
+
const row = statements.spellingExcluding.get({ key: tagKey(tag), excluding: options.excluding }, nowKey());
|
|
562
|
+
return text(row?.['tag']);
|
|
506
563
|
},
|
|
507
564
|
listCategories() {
|
|
508
565
|
return statements.categoryCounts.all(nowKey()).map((row) => ({
|
|
@@ -512,11 +569,15 @@ export function openContentStore(options) {
|
|
|
512
569
|
},
|
|
513
570
|
listTermUsage(taxonomy) {
|
|
514
571
|
const query = taxonomy === 'tag' ? statements.tagUsage : statements.categoryUsage;
|
|
515
|
-
|
|
516
|
-
|
|
572
|
+
const spellings = taxonomy === 'tag' ? siteSpellings() : new Map();
|
|
573
|
+
return query
|
|
574
|
+
.all(nowKey())
|
|
575
|
+
.map((row) => ({
|
|
576
|
+
term: spellings.get(String(row['key'])) ?? String(row['term']),
|
|
517
577
|
published: Number(row['published']),
|
|
518
578
|
total: Number(row['total']),
|
|
519
|
-
}))
|
|
579
|
+
}))
|
|
580
|
+
.sort((a, b) => compareByUtf16CodeUnit(a.term, b.term));
|
|
520
581
|
},
|
|
521
582
|
search(query, options = {}) {
|
|
522
583
|
const expression = searchExpression(query);
|
|
@@ -543,23 +604,68 @@ export function openContentStore(options) {
|
|
|
543
604
|
},
|
|
544
605
|
};
|
|
545
606
|
}
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
607
|
+
const TERM_TABLES = {
|
|
608
|
+
tag: { table: 'document_tags', matchColumn: 'key', column: 'tag', match: tagKey },
|
|
609
|
+
category: {
|
|
610
|
+
table: 'document_categories',
|
|
611
|
+
matchColumn: 'category',
|
|
612
|
+
column: 'category',
|
|
613
|
+
match: (category) => category,
|
|
614
|
+
},
|
|
615
|
+
};
|
|
616
|
+
function outOfDate(cache, dataVersion, now) {
|
|
617
|
+
return (anotherConnectionWrote(cache, dataVersion) ||
|
|
618
|
+
scheduledPostCameDue(cache, now) ||
|
|
619
|
+
clockWentBack(cache, now));
|
|
620
|
+
}
|
|
621
|
+
function anotherConnectionWrote(cache, dataVersion) {
|
|
622
|
+
return cache.dataVersion !== dataVersion;
|
|
623
|
+
}
|
|
624
|
+
function scheduledPostCameDue(cache, now) {
|
|
625
|
+
return cache.nextScheduledAt !== undefined && now >= cache.nextScheduledAt;
|
|
626
|
+
}
|
|
627
|
+
function clockWentBack(cache, now) {
|
|
628
|
+
return now < cache.workedOutAt;
|
|
629
|
+
}
|
|
630
|
+
function compareByUtf16CodeUnit(a, b) {
|
|
631
|
+
if (a === b)
|
|
632
|
+
return 0;
|
|
633
|
+
return a < b ? -1 : 1;
|
|
634
|
+
}
|
|
635
|
+
function termFilter({ table, matchColumn }) {
|
|
636
|
+
return `path IN (SELECT path FROM ${table} WHERE ${matchColumn} = ?)`;
|
|
637
|
+
}
|
|
638
|
+
function tagSpellingsSql(where) {
|
|
639
|
+
return `
|
|
640
|
+
SELECT key, tag FROM (
|
|
641
|
+
SELECT key, tag, ROW_NUMBER() OVER (
|
|
642
|
+
PARTITION BY key
|
|
643
|
+
ORDER BY SUM(listed) DESC,
|
|
644
|
+
MIN(CASE WHEN listed THEN date_sort END) ASC NULLS LAST,
|
|
645
|
+
COUNT(*) DESC,
|
|
646
|
+
MIN(date_sort) ASC NULLS LAST,
|
|
647
|
+
tag ASC
|
|
648
|
+
) AS rank
|
|
649
|
+
FROM (
|
|
650
|
+
SELECT spelled.key AS key, spelled.tag AS tag,
|
|
651
|
+
${LISTED_CLAUSE} AS listed, spelled_in.date_sort AS date_sort
|
|
652
|
+
FROM document_tags AS spelled
|
|
653
|
+
JOIN documents AS spelled_in ON spelled_in.path = spelled.path
|
|
654
|
+
${where}
|
|
655
|
+
)
|
|
656
|
+
GROUP BY key, tag
|
|
657
|
+
)
|
|
658
|
+
WHERE rank = 1
|
|
659
|
+
`;
|
|
660
|
+
}
|
|
661
|
+
function termUsageSql({ table, matchColumn, column }) {
|
|
555
662
|
return `
|
|
556
|
-
SELECT ${table}.${column} AS term,
|
|
663
|
+
SELECT ${table}.${matchColumn} AS key, MIN(${table}.${column}) AS term,
|
|
557
664
|
COALESCE(SUM(${LISTED_CLAUSE}), 0) AS published,
|
|
558
665
|
COUNT(*) AS total
|
|
559
666
|
FROM ${table}
|
|
560
667
|
JOIN documents ON documents.path = ${table}.path
|
|
561
|
-
GROUP BY ${table}.${
|
|
562
|
-
ORDER BY term ASC
|
|
668
|
+
GROUP BY ${table}.${matchColumn}
|
|
563
669
|
`;
|
|
564
670
|
}
|
|
565
671
|
/**
|
|
@@ -805,5 +911,26 @@ const MIGRATIONS = [
|
|
|
805
911
|
CREATE INDEX documents_permalink ON documents (permalink);
|
|
806
912
|
`,
|
|
807
913
|
},
|
|
914
|
+
{
|
|
915
|
+
version: 8,
|
|
916
|
+
sql: `
|
|
917
|
+
-- Tags match without regard to case (TASK-308): each row carries its
|
|
918
|
+
-- key, the tag in lower case, which JavaScript works out because
|
|
919
|
+
-- SQLite's lower() folds ASCII only. A document carries a tag once
|
|
920
|
+
-- whatever its casing. The rows already here have no key, and their
|
|
921
|
+
-- files hash the same, so emptying the index is what makes the next
|
|
922
|
+
-- scan write them again; the files are the source of truth (decision-1).
|
|
923
|
+
DROP TABLE document_tags;
|
|
924
|
+
CREATE TABLE document_tags (
|
|
925
|
+
path TEXT NOT NULL REFERENCES documents (path) ON DELETE CASCADE,
|
|
926
|
+
tag TEXT NOT NULL,
|
|
927
|
+
key TEXT NOT NULL,
|
|
928
|
+
position INTEGER NOT NULL,
|
|
929
|
+
PRIMARY KEY (path, key)
|
|
930
|
+
);
|
|
931
|
+
CREATE INDEX document_tags_key ON document_tags (key);
|
|
932
|
+
DELETE FROM documents;
|
|
933
|
+
`,
|
|
934
|
+
},
|
|
808
935
|
];
|
|
809
936
|
//# sourceMappingURL=store.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/content/store.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/content/store.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What makes two spellings one tag, and the segment of its archive URL.
|
|
3
|
+
*
|
|
4
|
+
* `toLowerCase()` rather than a locale's rules, so a tag matches the same way
|
|
5
|
+
* on every server whatever its locale, and so the key a URL carries is the key
|
|
6
|
+
* the index stores. It does no Unicode normalisation: a tag typed once
|
|
7
|
+
* precomposed and once decomposed stays two tags.
|
|
8
|
+
*/
|
|
9
|
+
export declare function tagKey(tag: string): string;
|
|
10
|
+
/** The tags without a second spelling of one already listed. The first spelling stays. */
|
|
11
|
+
export declare function uniqueTags(tags: readonly string[]): string[];
|
|
12
|
+
/** One tag given in another spelling than the site's, and the site's spelling it took. */
|
|
13
|
+
export interface Respelling {
|
|
14
|
+
readonly given: string;
|
|
15
|
+
readonly site: string;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Tags as a write should store them: each one the site already carries in the
|
|
19
|
+
* site's spelling, and no tag twice. `siteSpelling` answers how the site spells
|
|
20
|
+
* a tag, or `undefined` for one it does not carry.
|
|
21
|
+
*/
|
|
22
|
+
export declare function respellTags(tags: readonly string[], siteSpelling: (tag: string) => string | undefined): {
|
|
23
|
+
tags: string[];
|
|
24
|
+
respelled: Respelling[];
|
|
25
|
+
};
|
|
26
|
+
//# sourceMappingURL=tags.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tags.d.ts","sourceRoot":"","sources":["../../src/content/tags.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE1C;AAED,0FAA0F;AAC1F,wBAAgB,UAAU,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,EAAE,CAU5D;AAED,0FAA0F;AAC1F,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CACzB,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,YAAY,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,GAChD;IAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAAC,SAAS,EAAE,UAAU,EAAE,CAAA;CAAE,CAS7C"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What makes two spellings one tag, and the segment of its archive URL.
|
|
3
|
+
*
|
|
4
|
+
* `toLowerCase()` rather than a locale's rules, so a tag matches the same way
|
|
5
|
+
* on every server whatever its locale, and so the key a URL carries is the key
|
|
6
|
+
* the index stores. It does no Unicode normalisation: a tag typed once
|
|
7
|
+
* precomposed and once decomposed stays two tags.
|
|
8
|
+
*/
|
|
9
|
+
export function tagKey(tag) {
|
|
10
|
+
return tag.toLowerCase();
|
|
11
|
+
}
|
|
12
|
+
/** The tags without a second spelling of one already listed. The first spelling stays. */
|
|
13
|
+
export function uniqueTags(tags) {
|
|
14
|
+
const seen = new Set();
|
|
15
|
+
const unique = [];
|
|
16
|
+
for (const tag of tags) {
|
|
17
|
+
const key = tagKey(tag);
|
|
18
|
+
if (seen.has(key))
|
|
19
|
+
continue;
|
|
20
|
+
seen.add(key);
|
|
21
|
+
unique.push(tag);
|
|
22
|
+
}
|
|
23
|
+
return unique;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Tags as a write should store them: each one the site already carries in the
|
|
27
|
+
* site's spelling, and no tag twice. `siteSpelling` answers how the site spells
|
|
28
|
+
* a tag, or `undefined` for one it does not carry.
|
|
29
|
+
*/
|
|
30
|
+
export function respellTags(tags, siteSpelling) {
|
|
31
|
+
const respelled = [];
|
|
32
|
+
const spelled = uniqueTags(tags).map((given) => {
|
|
33
|
+
const site = siteSpelling(given);
|
|
34
|
+
if (site === undefined || site === given)
|
|
35
|
+
return given;
|
|
36
|
+
respelled.push({ given, site });
|
|
37
|
+
return site;
|
|
38
|
+
});
|
|
39
|
+
return { tags: spelled, respelled };
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=tags.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tags.js","sourceRoot":"","sources":["../../src/content/tags.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,UAAU,MAAM,CAAC,GAAW;IAChC,OAAO,GAAG,CAAC,WAAW,EAAE,CAAC;AAC3B,CAAC;AAED,0FAA0F;AAC1F,MAAM,UAAU,UAAU,CAAC,IAAuB;IAChD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QACxB,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,SAAS;QAC5B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACd,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACnB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAQD;;;;GAIG;AACH,MAAM,UAAU,WAAW,CACzB,IAAuB,EACvB,YAAiD;IAEjD,MAAM,SAAS,GAAiB,EAAE,CAAC;IACnC,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QAC7C,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QACjC,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,KAAK;YAAE,OAAO,KAAK,CAAC;QACvD,SAAS,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;IACH,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;AACtC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"article.d.ts","sourceRoot":"","sources":["../../src/federation/article.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EACL,GAAG,EACH,OAAO,EAEP,MAAM,EACN,MAAM,EACN,KAAK,EAOL,IAAI,EAGJ,MAAM,EAEN,SAAS,EACT,MAAM,EAEP,MAAM,eAAe,CAAC;AAKvB,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAMjD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAWvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"article.d.ts","sourceRoot":"","sources":["../../src/federation/article.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EACL,GAAG,EACH,OAAO,EAEP,MAAM,EACN,MAAM,EACN,KAAK,EAOL,IAAI,EAGJ,MAAM,EAEN,SAAS,EACT,MAAM,EAEP,MAAM,eAAe,CAAC;AAKvB,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAMjD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAWvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAaxD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAK7D;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,cAAc,CAC5B,OAAO,EAAE,OAAO,CAAC,qBAAqB,CAAC,EACvC,QAAQ,EAAE,QAAQ,GACjB,IAAI,GAAG,SAAS,CAGlB;AA2ED,+DAA+D;AAC/D,eAAO,MAAM,iBAAiB,kBAAkB,CAAC;AAEjD;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,EAAE,GAAG,GAAE,IAAiB,GAAG,OAAO,CAEvF;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,YAAY,EACnB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,GACd,QAAQ,GAAG,SAAS,CAOtB;AAqDD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,UAAU,CACxB,OAAO,EAAE,OAAO,CAAC,qBAAqB,CAAC,EACvC,QAAQ,EAAE,QAAQ,EAClB,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,GAAG,IAAI,GAAG,KAAK,CAyFxB;AA8KD;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,OAAO,CAAC,qBAAqB,CAAC,EACvC,QAAQ,EAAE,QAAQ,EAClB,OAAO,CAAC,EAAE,WAAW,GACpB,MAAM,CAgBR;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,OAAO,CAAC,qBAAqB,CAAC,EACvC,QAAQ,EAAE,QAAQ,EAClB,QAAQ,GAAE,MAA6B,EACvC,OAAO,CAAC,EAAE,WAAW,GACpB,MAAM,CAgBR;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,OAAO,CAAC,qBAAqB,CAAC,EACvC,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,MAAM,GACd,MAAM,CAUR;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,OAAO,CAAC,qBAAqB,CAAC,EACvC,QAAQ,EAAE,QAAQ,EAClB,OAAO,CAAC,EAAE,MAAM,GACf,SAAS,CAMX;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,OAAO,CAAC,qBAAqB,CAAC,EACvC,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,SAAS,EACjB,QAAQ,EAAE,MAAM,GACf,GAAG,GAAG,MAAM,CAkBd;AAED,8EAA8E;AAC9E,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,OAAO,CAAC;AAExC;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,qBAAqB,CAAC,EAAE,QAAQ,EAAE,QAAQ,GAAG,GAAG,CAEhG;AAYD;;;;;;;;;;GAUG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,QAAQ,CAAC,OAAO,GAAG,SAAS,CAOjF"}
|
|
@@ -16,6 +16,7 @@ import { readAltTexts } from '../images/alt-text.js';
|
|
|
16
16
|
import { imagesIn } from '../images/markup.js';
|
|
17
17
|
import { postLabel, postTypeOf, replyTarget } from '../content/post-type.js';
|
|
18
18
|
import { htmlToText } from '../content/search.js';
|
|
19
|
+
import { respellTags } from '../content/tags.js';
|
|
19
20
|
import { visibilityOf } from '../content/visibility.js';
|
|
20
21
|
import { userForAuthor } from '../web/authors.js';
|
|
21
22
|
import { isServed, permalinkOfObjectId, postObjectId } from '../web/documents.js';
|
|
@@ -209,6 +210,7 @@ export function postObject(context, document, replyTo) {
|
|
|
209
210
|
// The language a client filters and translates the post by: its own, else
|
|
210
211
|
// the site's (TASK-154).
|
|
211
212
|
const language = documentLanguage(document) ?? canonicalLocale(settings.language) ?? DEFAULT_LOCALE;
|
|
213
|
+
const siteSpelledTags = respellTags(document.tags, (tag) => context.data.store.tagSpelling(tag)).tags;
|
|
212
214
|
const inReplyTo = replyTarget(document);
|
|
213
215
|
const mentioned = mentionedAccounts(document.body, context.data.config.contentDir);
|
|
214
216
|
const common = {
|
|
@@ -236,7 +238,7 @@ export function postObject(context, document, replyTo) {
|
|
|
236
238
|
// each one points at the archive the site serves for it.
|
|
237
239
|
tags: [
|
|
238
240
|
...mentions(replyTo, mentioned),
|
|
239
|
-
...
|
|
241
|
+
...siteSpelledTags.map((tag) => hashtag(tag, tagHref(tag, 0, bases), baseUrl)),
|
|
240
242
|
...document.categories.map((category) => hashtag(category, categoryHref(category, 0, bases), baseUrl)),
|
|
241
243
|
],
|
|
242
244
|
};
|