@cogenta/schema 0.2.0 → 0.4.1
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/dist/define-collection.d.ts.map +1 -1
- package/dist/define-collection.js +53 -3
- package/dist/define-collection.js.map +1 -1
- package/dist/generate-types.d.ts.map +1 -1
- package/dist/generate-types.js +6 -1
- package/dist/generate-types.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/media-usage.d.ts +56 -0
- package/dist/media-usage.d.ts.map +1 -0
- package/dist/media-usage.js +89 -0
- package/dist/media-usage.js.map +1 -0
- package/dist/rich-text.d.ts +28 -2
- package/dist/rich-text.d.ts.map +1 -1
- package/dist/rich-text.js +26 -3
- package/dist/rich-text.js.map +1 -1
- package/dist/routing/index.d.ts +5 -1
- package/dist/routing/index.d.ts.map +1 -1
- package/dist/routing/index.js +2 -0
- package/dist/routing/index.js.map +1 -1
- package/dist/routing/not-found-log.d.ts +78 -0
- package/dist/routing/not-found-log.d.ts.map +1 -0
- package/dist/routing/not-found-log.js +153 -0
- package/dist/routing/not-found-log.js.map +1 -0
- package/dist/routing/redirect-patterns.d.ts +61 -0
- package/dist/routing/redirect-patterns.d.ts.map +1 -0
- package/dist/routing/redirect-patterns.js +173 -0
- package/dist/routing/redirect-patterns.js.map +1 -0
- package/dist/routing/redirects.d.ts +27 -4
- package/dist/routing/redirects.d.ts.map +1 -1
- package/dist/routing/redirects.js +160 -48
- package/dist/routing/redirects.js.map +1 -1
- package/dist/scheduling/index.d.ts +2 -0
- package/dist/scheduling/index.d.ts.map +1 -1
- package/dist/scheduling/index.js +1 -0
- package/dist/scheduling/index.js.map +1 -1
- package/dist/scheduling/registry.d.ts +147 -0
- package/dist/scheduling/registry.d.ts.map +1 -0
- package/dist/scheduling/registry.js +318 -0
- package/dist/scheduling/registry.js.map +1 -0
- package/dist/search/extract.d.ts +24 -0
- package/dist/search/extract.d.ts.map +1 -1
- package/dist/search/extract.js +63 -8
- package/dist/search/extract.js.map +1 -1
- package/dist/search/index.d.ts +2 -1
- package/dist/search/index.d.ts.map +1 -1
- package/dist/search/index.js +1 -9
- package/dist/search/index.js.map +1 -1
- package/dist/store/admin-theme-store.d.ts +26 -0
- package/dist/store/admin-theme-store.d.ts.map +1 -0
- package/dist/store/admin-theme-store.js +81 -0
- package/dist/store/admin-theme-store.js.map +1 -0
- package/dist/store/admin-theme-tables.d.ts +24 -0
- package/dist/store/admin-theme-tables.d.ts.map +1 -0
- package/dist/store/admin-theme-tables.js +41 -0
- package/dist/store/admin-theme-tables.js.map +1 -0
- package/dist/store/admin-theme-templates.d.ts +135 -0
- package/dist/store/admin-theme-templates.d.ts.map +1 -0
- package/dist/store/admin-theme-templates.js +217 -0
- package/dist/store/admin-theme-templates.js.map +1 -0
- package/dist/store/columns.d.ts.map +1 -1
- package/dist/store/columns.js +8 -2
- package/dist/store/columns.js.map +1 -1
- package/dist/store/diff.d.ts +40 -0
- package/dist/store/diff.d.ts.map +1 -1
- package/dist/store/diff.js +148 -0
- package/dist/store/diff.js.map +1 -1
- package/dist/store/index.d.ts +47 -4
- package/dist/store/index.d.ts.map +1 -1
- package/dist/store/index.js +26 -2
- package/dist/store/index.js.map +1 -1
- package/dist/store/maintenance-store.d.ts +34 -0
- package/dist/store/maintenance-store.d.ts.map +1 -0
- package/dist/store/maintenance-store.js +92 -0
- package/dist/store/maintenance-store.js.map +1 -0
- package/dist/store/menu-store.d.ts +146 -0
- package/dist/store/menu-store.d.ts.map +1 -0
- package/dist/store/menu-store.js +565 -0
- package/dist/store/menu-store.js.map +1 -0
- package/dist/store/menu-tables.d.ts +38 -0
- package/dist/store/menu-tables.d.ts.map +1 -0
- package/dist/store/menu-tables.js +117 -0
- package/dist/store/menu-tables.js.map +1 -0
- package/dist/store/naming.d.ts +1 -1
- package/dist/store/naming.d.ts.map +1 -1
- package/dist/store/naming.js +2 -0
- package/dist/store/naming.js.map +1 -1
- package/dist/store/pattern-store.d.ts +75 -0
- package/dist/store/pattern-store.d.ts.map +1 -0
- package/dist/store/pattern-store.js +118 -0
- package/dist/store/pattern-store.js.map +1 -0
- package/dist/store/pattern-tables.d.ts +29 -0
- package/dist/store/pattern-tables.d.ts.map +1 -0
- package/dist/store/pattern-tables.js +53 -0
- package/dist/store/pattern-tables.js.map +1 -0
- package/dist/store/read-only.d.ts +3 -3
- package/dist/store/read-only.d.ts.map +1 -1
- package/dist/store/read-only.js +4 -3
- package/dist/store/read-only.js.map +1 -1
- package/dist/store/redirect-tracking.d.ts +50 -0
- package/dist/store/redirect-tracking.d.ts.map +1 -0
- package/dist/store/redirect-tracking.js +91 -0
- package/dist/store/redirect-tracking.js.map +1 -0
- package/dist/store/review-transitions.d.ts +34 -0
- package/dist/store/review-transitions.d.ts.map +1 -0
- package/dist/store/review-transitions.js +51 -0
- package/dist/store/review-transitions.js.map +1 -0
- package/dist/store/role-permission-export.d.ts +22 -0
- package/dist/store/role-permission-export.d.ts.map +1 -0
- package/dist/store/role-permission-export.js +0 -0
- package/dist/store/role-permission-export.js.map +1 -0
- package/dist/store/role-permission-overlay.d.ts +27 -0
- package/dist/store/role-permission-overlay.d.ts.map +1 -0
- package/dist/store/role-permission-overlay.js +0 -0
- package/dist/store/role-permission-overlay.js.map +1 -0
- package/dist/store/role-permission-store.d.ts +72 -0
- package/dist/store/role-permission-store.d.ts.map +1 -0
- package/dist/store/role-permission-store.js +148 -0
- package/dist/store/role-permission-store.js.map +1 -0
- package/dist/store/role-permission-tables.d.ts +27 -0
- package/dist/store/role-permission-tables.d.ts.map +1 -0
- package/dist/store/role-permission-tables.js +52 -0
- package/dist/store/role-permission-tables.js.map +1 -0
- package/dist/store/scheduled-publish-enqueue.d.ts +37 -0
- package/dist/store/scheduled-publish-enqueue.d.ts.map +1 -0
- package/dist/store/scheduled-publish-enqueue.js +51 -0
- package/dist/store/scheduled-publish-enqueue.js.map +1 -0
- package/dist/store/scheduled-publish-failures.d.ts +36 -0
- package/dist/store/scheduled-publish-failures.d.ts.map +1 -0
- package/dist/store/scheduled-publish-failures.js +67 -0
- package/dist/store/scheduled-publish-failures.js.map +1 -0
- package/dist/store/schema-2-1-migration.d.ts +29 -0
- package/dist/store/schema-2-1-migration.d.ts.map +1 -0
- package/dist/store/schema-2-1-migration.js +71 -0
- package/dist/store/schema-2-1-migration.js.map +1 -0
- package/dist/store/search-console-store.d.ts +44 -0
- package/dist/store/search-console-store.d.ts.map +1 -0
- package/dist/store/search-console-store.js +90 -0
- package/dist/store/search-console-store.js.map +1 -0
- package/dist/store/search-console-tables.d.ts +14 -0
- package/dist/store/search-console-tables.d.ts.map +1 -0
- package/dist/store/search-console-tables.js +29 -0
- package/dist/store/search-console-tables.js.map +1 -0
- package/dist/store/search-indexing.d.ts +36 -0
- package/dist/store/search-indexing.d.ts.map +1 -1
- package/dist/store/search-indexing.js +33 -0
- package/dist/store/search-indexing.js.map +1 -1
- package/dist/store/site-settings-registry.d.ts +164 -0
- package/dist/store/site-settings-registry.d.ts.map +1 -0
- package/dist/store/site-settings-registry.js +1160 -0
- package/dist/store/site-settings-registry.js.map +1 -0
- package/dist/store/site-settings-store.d.ts +42 -0
- package/dist/store/site-settings-store.d.ts.map +1 -0
- package/dist/store/site-settings-store.js +97 -0
- package/dist/store/site-settings-store.js.map +1 -0
- package/dist/store/site-settings-tables.d.ts +29 -0
- package/dist/store/site-settings-tables.d.ts.map +1 -0
- package/dist/store/site-settings-tables.js +48 -0
- package/dist/store/site-settings-tables.js.map +1 -0
- package/dist/store/store.d.ts +57 -2
- package/dist/store/store.d.ts.map +1 -1
- package/dist/store/store.js +278 -37
- package/dist/store/store.js.map +1 -1
- package/dist/store/tables.d.ts.map +1 -1
- package/dist/store/tables.js +11 -0
- package/dist/store/tables.js.map +1 -1
- package/dist/store/taxonomy-store.d.ts.map +1 -1
- package/dist/store/taxonomy-store.js +90 -39
- package/dist/store/taxonomy-store.js.map +1 -1
- package/dist/store/taxonomy-usage.d.ts +47 -0
- package/dist/store/taxonomy-usage.d.ts.map +1 -0
- package/dist/store/taxonomy-usage.js +101 -0
- package/dist/store/taxonomy-usage.js.map +1 -0
- package/dist/store/theme-store.d.ts +73 -0
- package/dist/store/theme-store.d.ts.map +1 -0
- package/dist/store/theme-store.js +193 -0
- package/dist/store/theme-store.js.map +1 -0
- package/dist/store/types.d.ts +36 -1
- package/dist/store/types.d.ts.map +1 -1
- package/dist/store/values.d.ts.map +1 -1
- package/dist/store/values.js +28 -1
- package/dist/store/values.js.map +1 -1
- package/dist/system-fields.d.ts +8 -1
- package/dist/system-fields.d.ts.map +1 -1
- package/dist/system-fields.js +14 -1
- package/dist/system-fields.js.map +1 -1
- package/dist/types.d.ts +54 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +21 -0
- package/dist/types.js.map +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"site-settings-registry.js","sourceRoot":"","sources":["../../src/store/site-settings-registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { type DatabaseHandle } from '@cogenta/core';
|
|
2
|
+
/**
|
|
3
|
+
* The persistence layer of `SITE_SETTINGS_REGISTRY` (fiche 23 task 1).
|
|
4
|
+
*
|
|
5
|
+
* A row exists only once someone has actually written a value — a registry
|
|
6
|
+
* entry nobody has touched yet has no row at all, and the caller (the REST
|
|
7
|
+
* router) is the one that fills in `defaultValue` for it. That is
|
|
8
|
+
* deliberate: it is what lets a new registry entry with a new default ship
|
|
9
|
+
* without a migration that back-fills every existing site's table.
|
|
10
|
+
*/
|
|
11
|
+
export interface SiteSettingRecord {
|
|
12
|
+
readonly key: string;
|
|
13
|
+
/** `SITE_SETTINGS_SITE_SCOPE` (`''`) for a site-scoped setting, a real locale code for a locale-scoped one. */
|
|
14
|
+
readonly locale: string;
|
|
15
|
+
readonly value: unknown;
|
|
16
|
+
readonly updatedAt: string;
|
|
17
|
+
/** The actor who wrote this value, or `null` for a value seeded outside a request (a migration, a test fixture). */
|
|
18
|
+
readonly updatedBy: string | null;
|
|
19
|
+
}
|
|
20
|
+
export interface SiteSettingsStoreOptions {
|
|
21
|
+
readonly db: DatabaseHandle;
|
|
22
|
+
readonly now?: () => Date;
|
|
23
|
+
}
|
|
24
|
+
export interface SiteSettingsStore {
|
|
25
|
+
/**
|
|
26
|
+
* Every row written for this locale, plus every site-scoped row — exactly
|
|
27
|
+
* the set of overrides that apply when rendering settings for this locale
|
|
28
|
+
* context. A registry entry with no row here is unset; the caller applies
|
|
29
|
+
* its default.
|
|
30
|
+
*/
|
|
31
|
+
list(locale: string): Promise<readonly SiteSettingRecord[]>;
|
|
32
|
+
get(key: string, locale: string): Promise<SiteSettingRecord | null>;
|
|
33
|
+
/**
|
|
34
|
+
* Refuses a key the registry does not declare (`SITE_SETTING_UNKNOWN`), a
|
|
35
|
+
* value that fails that key's own schema, or a `locale` that does not
|
|
36
|
+
* match the key's declared scope (`SITE_SETTING_INVALID` for both — the
|
|
37
|
+
* registry is the single place either failure is decided).
|
|
38
|
+
*/
|
|
39
|
+
set(key: string, locale: string, value: unknown, updatedBy: string | null): Promise<SiteSettingRecord>;
|
|
40
|
+
}
|
|
41
|
+
export declare function createSiteSettingsStore(options: SiteSettingsStoreOptions): SiteSettingsStore;
|
|
42
|
+
//# sourceMappingURL=site-settings-store.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"site-settings-store.d.ts","sourceRoot":"","sources":["../../src/store/site-settings-store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,cAAc,EAAmB,MAAM,eAAe,CAAA;AAIlF;;;;;;;;GAQG;AAEH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,+GAA+G;IAC/G,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAA;IACvB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,oHAAoH;IACpH,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;CAClC;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,EAAE,EAAE,cAAc,CAAA;IAC3B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,IAAI,CAAA;CAC1B;AAED,MAAM,WAAW,iBAAiB;IAChC;;;;;OAKG;IACH,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,iBAAiB,EAAE,CAAC,CAAA;IAC3D,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAAA;IACnE;;;;;OAKG;IACH,GAAG,CACD,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,OAAO,EACd,SAAS,EAAE,MAAM,GAAG,IAAI,GACvB,OAAO,CAAC,iBAAiB,CAAC,CAAA;CAC9B;AA+BD,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,wBAAwB,GAAG,iBAAiB,CAyF5F"}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { CogentaError, identifier, sql } from '@cogenta/core';
|
|
2
|
+
import { siteSettingByKey } from './site-settings-registry.js';
|
|
3
|
+
import { SITE_SETTINGS_SITE_SCOPE, SITE_SETTINGS_TABLE } from './site-settings-tables.js';
|
|
4
|
+
function text(value) {
|
|
5
|
+
return typeof value === 'string' ? value : String(value);
|
|
6
|
+
}
|
|
7
|
+
function nullableText(value) {
|
|
8
|
+
return value === null || value === undefined ? null : text(value);
|
|
9
|
+
}
|
|
10
|
+
function unknownSetting(key) {
|
|
11
|
+
return new CogentaError({
|
|
12
|
+
code: 'SITE_SETTING_UNKNOWN',
|
|
13
|
+
message: `"${key}" is not a declared site setting.`,
|
|
14
|
+
hint: 'Site settings are a closed registry (fiche 23) — check the key against SITE_SETTINGS_REGISTRY, or declare it there first.',
|
|
15
|
+
details: { key },
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
function toRecord(row) {
|
|
19
|
+
return {
|
|
20
|
+
key: text(row['key']),
|
|
21
|
+
locale: text(row['locale']),
|
|
22
|
+
value: JSON.parse(text(row['value'])),
|
|
23
|
+
updatedAt: text(row['updated_at']),
|
|
24
|
+
updatedBy: nullableText(row['updated_by']),
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
export function createSiteSettingsStore(options) {
|
|
28
|
+
const { db } = options;
|
|
29
|
+
const dialect = db.dialect;
|
|
30
|
+
const now = options.now ?? (() => new Date());
|
|
31
|
+
const table = identifier(SITE_SETTINGS_TABLE, dialect);
|
|
32
|
+
const keyColumn = identifier('key', dialect);
|
|
33
|
+
const localeColumn = identifier('locale', dialect);
|
|
34
|
+
const valueColumn = identifier('value', dialect);
|
|
35
|
+
const updatedAtColumn = identifier('updated_at', dialect);
|
|
36
|
+
const updatedByColumn = identifier('updated_by', dialect);
|
|
37
|
+
return {
|
|
38
|
+
list: async (locale) => {
|
|
39
|
+
const found = await db.query(locale === SITE_SETTINGS_SITE_SCOPE
|
|
40
|
+
? sql `select * from ${table} where ${localeColumn} = ${SITE_SETTINGS_SITE_SCOPE}`
|
|
41
|
+
: sql `select * from ${table} where ${localeColumn} in (${SITE_SETTINGS_SITE_SCOPE}, ${locale})`);
|
|
42
|
+
return found.rows.map(toRecord);
|
|
43
|
+
},
|
|
44
|
+
get: async (key, locale) => {
|
|
45
|
+
const found = await db.query(sql `select * from ${table} where ${keyColumn} = ${key} and ${localeColumn} = ${locale}`);
|
|
46
|
+
const row = found.rows[0];
|
|
47
|
+
return row === undefined ? null : toRecord(row);
|
|
48
|
+
},
|
|
49
|
+
set: async (key, locale, value, updatedBy) => {
|
|
50
|
+
const definition = siteSettingByKey(key);
|
|
51
|
+
if (definition === undefined)
|
|
52
|
+
throw unknownSetting(key);
|
|
53
|
+
const expectedLocale = definition.scope === 'site';
|
|
54
|
+
if (expectedLocale && locale !== SITE_SETTINGS_SITE_SCOPE) {
|
|
55
|
+
throw new CogentaError({
|
|
56
|
+
code: 'SITE_SETTING_INVALID',
|
|
57
|
+
message: `"${key}" is a site-wide setting; it cannot be written for a specific locale.`,
|
|
58
|
+
hint: 'Omit the locale for this key.',
|
|
59
|
+
details: { key, locale },
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
if (!expectedLocale && locale === SITE_SETTINGS_SITE_SCOPE) {
|
|
63
|
+
throw new CogentaError({
|
|
64
|
+
code: 'SITE_SETTING_INVALID',
|
|
65
|
+
message: `"${key}" is a per-locale setting; a locale is required.`,
|
|
66
|
+
hint: 'Pass the locale this value applies to.',
|
|
67
|
+
details: { key },
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
const parsed = definition.schema.safeParse(value);
|
|
71
|
+
if (!parsed.success) {
|
|
72
|
+
throw new CogentaError({
|
|
73
|
+
code: 'SITE_SETTING_INVALID',
|
|
74
|
+
message: `"${key}" received a value that does not match its declared schema: ${parsed.error.issues.map((issue) => issue.message).join('; ')}`,
|
|
75
|
+
hint: "Check the value against this setting's type in the settings screen.",
|
|
76
|
+
details: { key, issues: parsed.error.issues.map((issue) => issue.message) },
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
const at = now().toISOString();
|
|
80
|
+
const serialised = JSON.stringify(parsed.data);
|
|
81
|
+
await db.transaction(async (tx) => {
|
|
82
|
+
const existing = await tx.query(sql `select ${keyColumn} from ${table} where ${keyColumn} = ${key} and ${localeColumn} = ${locale}`);
|
|
83
|
+
if (existing.rows.length > 0) {
|
|
84
|
+
await tx.query(sql `update ${table}
|
|
85
|
+
set ${valueColumn} = ${serialised}, ${updatedAtColumn} = ${at}, ${updatedByColumn} = ${updatedBy}
|
|
86
|
+
where ${keyColumn} = ${key} and ${localeColumn} = ${locale}`);
|
|
87
|
+
}
|
|
88
|
+
else {
|
|
89
|
+
await tx.query(sql `insert into ${table} (${keyColumn}, ${localeColumn}, ${valueColumn}, ${updatedAtColumn}, ${updatedByColumn})
|
|
90
|
+
values (${key}, ${locale}, ${serialised}, ${at}, ${updatedBy})`);
|
|
91
|
+
}
|
|
92
|
+
}, { immediate: true });
|
|
93
|
+
return { key, locale, value: parsed.data, updatedAt: at, updatedBy };
|
|
94
|
+
},
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
//# sourceMappingURL=site-settings-store.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"site-settings-store.js","sourceRoot":"","sources":["../../src/store/site-settings-store.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { type DatabaseHandle } from '@cogenta/core';
|
|
2
|
+
/**
|
|
3
|
+
* Editorial site settings (fiche 23) — the third category ADR-0025 names
|
|
4
|
+
* between "infrastructure" (`cogenta.config.mjs`, read-only in the admin) and
|
|
5
|
+
* "personal preference" (`localStorage`, never on the server at all): a
|
|
6
|
+
* tagline, a homepage, a timezone — the things a rédacteur needs to change
|
|
7
|
+
* without a terminal, and that must not create a second source of truth for
|
|
8
|
+
* anything already in the config file (ADR-0025's whole point).
|
|
9
|
+
*
|
|
10
|
+
* One fixed table, exactly like `menu-tables.ts`: a site setting is not
|
|
11
|
+
* schema-declared the way a collection or a taxonomy is, so there is no
|
|
12
|
+
* per-name table to mint. `key` is the registry's own machine name
|
|
13
|
+
* (`site-settings-registry.ts`); a key outside that registry is refused by
|
|
14
|
+
* the store, never written here as a loose row.
|
|
15
|
+
*
|
|
16
|
+
* `locale` is part of the primary key and is never nullable: a site-scoped
|
|
17
|
+
* setting is stored at the empty string, the same "no locale" sentinel this
|
|
18
|
+
* column already treats as never colliding with a real one, so a plain
|
|
19
|
+
* equality lookup — `key = ? and locale = ?` — is the whole read path for
|
|
20
|
+
* both scopes, with no `is null` branch to keep in sync with `create` or
|
|
21
|
+
* `update`.
|
|
22
|
+
*/
|
|
23
|
+
export declare const SITE_SETTINGS_TABLE = "cogenta_site_settings";
|
|
24
|
+
/** The sentinel `locale` value for a site-scoped setting (never a real locale code). */
|
|
25
|
+
export declare const SITE_SETTINGS_SITE_SCOPE = "";
|
|
26
|
+
/** Long enough for any JSON value this fiche's registry stores (free text included). */
|
|
27
|
+
export declare const SITE_SETTING_VALUE_LENGTH = 8000;
|
|
28
|
+
export declare function ensureSiteSettingsTables(db: DatabaseHandle): Promise<void>;
|
|
29
|
+
//# sourceMappingURL=site-settings-tables.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"site-settings-tables.d.ts","sourceRoot":"","sources":["../../src/store/site-settings-tables.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAqC,MAAM,eAAe,CAAA;AAGtF;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,eAAO,MAAM,mBAAmB,0BAA0B,CAAA;AAE1D,wFAAwF;AACxF,eAAO,MAAM,wBAAwB,KAAK,CAAA;AAE1C,wFAAwF;AACxF,eAAO,MAAM,yBAAyB,OAAO,CAAA;AAE7C,wBAAsB,wBAAwB,CAAC,EAAE,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAoBhF"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { identifier, sql } from '@cogenta/core';
|
|
2
|
+
import { textColumn, timestampColumn } from './columns.js';
|
|
3
|
+
/**
|
|
4
|
+
* Editorial site settings (fiche 23) — the third category ADR-0025 names
|
|
5
|
+
* between "infrastructure" (`cogenta.config.mjs`, read-only in the admin) and
|
|
6
|
+
* "personal preference" (`localStorage`, never on the server at all): a
|
|
7
|
+
* tagline, a homepage, a timezone — the things a rédacteur needs to change
|
|
8
|
+
* without a terminal, and that must not create a second source of truth for
|
|
9
|
+
* anything already in the config file (ADR-0025's whole point).
|
|
10
|
+
*
|
|
11
|
+
* One fixed table, exactly like `menu-tables.ts`: a site setting is not
|
|
12
|
+
* schema-declared the way a collection or a taxonomy is, so there is no
|
|
13
|
+
* per-name table to mint. `key` is the registry's own machine name
|
|
14
|
+
* (`site-settings-registry.ts`); a key outside that registry is refused by
|
|
15
|
+
* the store, never written here as a loose row.
|
|
16
|
+
*
|
|
17
|
+
* `locale` is part of the primary key and is never nullable: a site-scoped
|
|
18
|
+
* setting is stored at the empty string, the same "no locale" sentinel this
|
|
19
|
+
* column already treats as never colliding with a real one, so a plain
|
|
20
|
+
* equality lookup — `key = ? and locale = ?` — is the whole read path for
|
|
21
|
+
* both scopes, with no `is null` branch to keep in sync with `create` or
|
|
22
|
+
* `update`.
|
|
23
|
+
*/
|
|
24
|
+
export const SITE_SETTINGS_TABLE = 'cogenta_site_settings';
|
|
25
|
+
/** The sentinel `locale` value for a site-scoped setting (never a real locale code). */
|
|
26
|
+
export const SITE_SETTINGS_SITE_SCOPE = '';
|
|
27
|
+
/** Long enough for any JSON value this fiche's registry stores (free text included). */
|
|
28
|
+
export const SITE_SETTING_VALUE_LENGTH = 8000;
|
|
29
|
+
export async function ensureSiteSettingsTables(db) {
|
|
30
|
+
const dialect = db.dialect;
|
|
31
|
+
const table = identifier(SITE_SETTINGS_TABLE, dialect);
|
|
32
|
+
const keyColumn = identifier('key', dialect);
|
|
33
|
+
const localeColumn = identifier('locale', dialect);
|
|
34
|
+
const statements = [
|
|
35
|
+
sql `create table if not exists ${table} (
|
|
36
|
+
${keyColumn} ${textColumn(dialect, 128)} not null,
|
|
37
|
+
${localeColumn} ${textColumn(dialect, 16)} not null,
|
|
38
|
+
${identifier('value', dialect)} ${textColumn(dialect, SITE_SETTING_VALUE_LENGTH)} not null,
|
|
39
|
+
${identifier('updated_at', dialect)} ${timestampColumn(dialect)} not null,
|
|
40
|
+
${identifier('updated_by', dialect)} ${textColumn(dialect, 36)},
|
|
41
|
+
primary key (${keyColumn}, ${localeColumn})
|
|
42
|
+
)`,
|
|
43
|
+
];
|
|
44
|
+
for (const statement of statements) {
|
|
45
|
+
await db.query(statement);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=site-settings-tables.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"site-settings-tables.js","sourceRoot":"","sources":["../../src/store/site-settings-tables.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,UAAU,EAAoB,GAAG,EAAE,MAAM,eAAe,CAAA;AACtF,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAE1D;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG,uBAAuB,CAAA;AAE1D,wFAAwF;AACxF,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,CAAA;AAE1C,wFAAwF;AACxF,MAAM,CAAC,MAAM,yBAAyB,GAAG,IAAI,CAAA;AAE7C,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,EAAkB;IAC/D,MAAM,OAAO,GAAG,EAAE,CAAC,OAAO,CAAA;IAC1B,MAAM,KAAK,GAAG,UAAU,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAA;IACtD,MAAM,SAAS,GAAG,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;IAC5C,MAAM,YAAY,GAAG,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;IAElD,MAAM,UAAU,GAAkB;QAChC,GAAG,CAAA,8BAA8B,KAAK;QAClC,SAAS,IAAI,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC;QACrC,YAAY,IAAI,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC;QACvC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,yBAAyB,CAAC;QAC9E,UAAU,CAAC,YAAY,EAAE,OAAO,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC;QAC7D,UAAU,CAAC,YAAY,EAAE,OAAO,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC;qBAC/C,SAAS,KAAK,YAAY;MACzC;KACH,CAAA;IAED,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,MAAM,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;IAC3B,CAAC;AACH,CAAC"}
|
package/dist/store/store.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type DatabaseHandle } from '@cogenta/core';
|
|
2
2
|
import { type CollectionDefinition } from '../types.js';
|
|
3
3
|
import { type ContentDiff } from './diff.js';
|
|
4
|
-
import type { ContentEntry, ContentValues, CreateInput, DuplicateInput, ListOptions, LocaleResolution, Page, PurgeReport, ReadOptions, ResolveLocaleOptions, TrashOptions, UpdateInput, VersionSummary } from './types.js';
|
|
4
|
+
import type { ContentEntry, ContentValues, CreateInput, DuplicateInput, ListOptions, LocaleResolution, Page, PurgeReport, ReadOptions, ResolveLocaleOptions, StatusCounts, TrashOptions, UpdateInput, VersionSummary } from './types.js';
|
|
5
5
|
/**
|
|
6
6
|
* The persistence layer of a collection.
|
|
7
7
|
*
|
|
@@ -64,17 +64,72 @@ export interface ContentStore<TValues extends ContentValues = ContentValues> {
|
|
|
64
64
|
/** Purges what has sat in the trash longer than `trash.retainDays`. */
|
|
65
65
|
purgeExpired(): Promise<PurgeReport>;
|
|
66
66
|
list(options?: ListOptions): Promise<Page<ContentEntry<TValues>>>;
|
|
67
|
+
/**
|
|
68
|
+
* Per-status row counts, and how many sit in the trash — one `GROUP BY` and
|
|
69
|
+
* one trash count, never a page walked client-side (fiche 01 tâche 4,
|
|
70
|
+
* fiche 22 tâche 1: the two features share this one implementation).
|
|
71
|
+
*/
|
|
72
|
+
count(): Promise<StatusCounts>;
|
|
67
73
|
publish(id: string, input?: {
|
|
68
74
|
readonly publishedBy?: string | null;
|
|
69
75
|
}): Promise<ContentEntry<TValues>>;
|
|
76
|
+
/**
|
|
77
|
+
* The atomic half of scheduled publication (fiche 28 task 4, ADR-free —
|
|
78
|
+
* additive to contract A, no shape changed). Publishes the entry only if
|
|
79
|
+
* it is still `status: 'scheduled'` at the moment of the write, in one
|
|
80
|
+
* guarded `UPDATE`; returns `null` — not an error — when it is not (already
|
|
81
|
+
* published by another process, or edited back to `draft` before its hour
|
|
82
|
+
* came). Two processes racing to publish the same entry therefore run the
|
|
83
|
+
* full publish side effects exactly once between them, never twice.
|
|
84
|
+
*/
|
|
85
|
+
claimForScheduledPublish(id: string): Promise<ContentEntry<TValues> | null>;
|
|
70
86
|
unpublish(id: string, input?: {
|
|
71
|
-
readonly status?: 'draft' | 'archived';
|
|
87
|
+
readonly status?: 'draft' | 'archived' | 'scheduled';
|
|
88
|
+
/**
|
|
89
|
+
* Required, and only meaningful, when `status` is `'scheduled'`: the
|
|
90
|
+
* future instant this entry becomes public. A `Date`, an ISO 8601
|
|
91
|
+
* string, or epoch milliseconds — the same three forms
|
|
92
|
+
* `schedulePublication` accepts, since this is the write that puts an
|
|
93
|
+
* entry into the state that function's caller later queues a job for.
|
|
94
|
+
*/
|
|
95
|
+
readonly publishedAt?: Date | string | number;
|
|
96
|
+
}): Promise<ContentEntry<TValues>>;
|
|
97
|
+
/**
|
|
98
|
+
* Sends an entry into the review queue (`schema@2.1`, ADR-0027).
|
|
99
|
+
*
|
|
100
|
+
* Legal from `none` (a fresh entry never reviewed) or `changes-requested`
|
|
101
|
+
* (sent back, and now resubmitted). Throws `CONTENT_REVIEW_TRANSITION_INVALID`
|
|
102
|
+
* for anything else — a pending or already-approved entry cannot be
|
|
103
|
+
* resubmitted out from under a reviewer.
|
|
104
|
+
*/
|
|
105
|
+
submitForReview(id: string, input?: {
|
|
106
|
+
readonly reviewerId?: string | null;
|
|
107
|
+
readonly by?: string | null;
|
|
108
|
+
}): Promise<ContentEntry<TValues>>;
|
|
109
|
+
/** Approves a pending entry. **Not** publication — `publish()` remains the action that makes it public. */
|
|
110
|
+
approveReview(id: string, input?: {
|
|
111
|
+
readonly by?: string | null;
|
|
72
112
|
}): Promise<ContentEntry<TValues>>;
|
|
113
|
+
/** Sends a pending entry back to its author. */
|
|
114
|
+
requestReviewChanges(id: string, input?: {
|
|
115
|
+
readonly by?: string | null;
|
|
116
|
+
}): Promise<ContentEntry<TValues>>;
|
|
117
|
+
/** Sets — or clears, with `null` — who is expected to review this entry next. */
|
|
118
|
+
assignReviewer(id: string, reviewerId: string | null): Promise<ContentEntry<TValues>>;
|
|
73
119
|
history(id: string, options?: TrashOptions): Promise<readonly VersionSummary[]>;
|
|
74
120
|
readVersion(id: string, version: number): Promise<ContentEntry<TValues> | null>;
|
|
75
121
|
restore(id: string, version: number, input?: UpdateInput<TValues>): Promise<ContentEntry<TValues>>;
|
|
76
122
|
diff(id: string, from: number, to: number): Promise<ContentDiff>;
|
|
77
123
|
translations(id: string, options?: TrashOptions): Promise<readonly ContentEntry<TValues>[]>;
|
|
124
|
+
/**
|
|
125
|
+
* The working-state translations of every root in `rootIds`, in one query
|
|
126
|
+
* (fiche 10 task 1: a translation dashboard over a thousand entries must
|
|
127
|
+
* not become a thousand `translations()` calls). Rows whose `translationOf`
|
|
128
|
+
* is not among `rootIds` are never returned — this is deliberately not
|
|
129
|
+
* "every family member", only the non-root half of it, since the caller
|
|
130
|
+
* already has the roots from `list({ translationOf: null })`.
|
|
131
|
+
*/
|
|
132
|
+
translationsOfMany(rootIds: readonly string[], options?: TrashOptions): Promise<readonly ContentEntry<TValues>[]>;
|
|
78
133
|
resolveLocale(id: string, locale: string, options: ResolveLocaleOptions): Promise<LocaleResolution<TValues>>;
|
|
79
134
|
}
|
|
80
135
|
export declare function createContentStore<TValues extends ContentValues = ContentValues>(options: ContentStoreOptions): ContentStore<TValues>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/store/store.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,cAAc,EAMpB,MAAM,eAAe,CAAA;AAEtB,OAAO,EACL,KAAK,oBAAoB,
|
|
1
|
+
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/store/store.ts"],"names":[],"mappings":"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"}
|