@kywi-software/core 0.9.0 → 0.10.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.
Files changed (47) hide show
  1. package/dist/admin/layout-editor/column-overlay.d.ts.map +1 -1
  2. package/dist/admin/layout-editor/column-overlay.js +7 -1
  3. package/dist/admin/layout-editor/column-overlay.js.map +1 -1
  4. package/dist/admin/layout-editor/drop-indicator.d.ts +18 -1
  5. package/dist/admin/layout-editor/drop-indicator.d.ts.map +1 -1
  6. package/dist/admin/layout-editor/drop-indicator.js +23 -3
  7. package/dist/admin/layout-editor/drop-indicator.js.map +1 -1
  8. package/dist/admin/layout-editor/editor-canvas.d.ts +11 -1
  9. package/dist/admin/layout-editor/editor-canvas.d.ts.map +1 -1
  10. package/dist/admin/layout-editor/editor-canvas.js +105 -27
  11. package/dist/admin/layout-editor/editor-canvas.js.map +1 -1
  12. package/dist/admin/layout-editor/editor-state.d.ts.map +1 -1
  13. package/dist/admin/layout-editor/editor-state.js +19 -3
  14. package/dist/admin/layout-editor/editor-state.js.map +1 -1
  15. package/dist/admin/layout-editor/editor.css +19 -6
  16. package/dist/admin/layout-editor/layout-editor.d.ts.map +1 -1
  17. package/dist/admin/layout-editor/layout-editor.js +1 -1
  18. package/dist/admin/layout-editor/layout-editor.js.map +1 -1
  19. package/dist/admin/layout-editor/module-overlay.d.ts.map +1 -1
  20. package/dist/admin/layout-editor/module-overlay.js +6 -1
  21. package/dist/admin/layout-editor/module-overlay.js.map +1 -1
  22. package/dist/admin/layout-editor/overlay-shell.d.ts.map +1 -1
  23. package/dist/admin/layout-editor/overlay-shell.js +1 -1
  24. package/dist/admin/layout-editor/overlay-shell.js.map +1 -1
  25. package/dist/admin/layout-editor/use-editor-dnd.d.ts +44 -1
  26. package/dist/admin/layout-editor/use-editor-dnd.d.ts.map +1 -1
  27. package/dist/admin/layout-editor/use-editor-dnd.js +191 -3
  28. package/dist/admin/layout-editor/use-editor-dnd.js.map +1 -1
  29. package/dist/admin/styles/admin.css +8 -0
  30. package/dist/admin/surfaces/layouts/layout-editor-client.d.ts.map +1 -1
  31. package/dist/admin/surfaces/layouts/layout-editor-client.js +12 -1
  32. package/dist/admin/surfaces/layouts/layout-editor-client.js.map +1 -1
  33. package/dist/api/content-routes.d.ts.map +1 -1
  34. package/dist/api/content-routes.js +34 -7
  35. package/dist/api/content-routes.js.map +1 -1
  36. package/dist/api/index.d.ts.map +1 -1
  37. package/dist/api/index.js +7 -73
  38. package/dist/api/index.js.map +1 -1
  39. package/dist/cache/content-invalidation.d.ts +28 -0
  40. package/dist/cache/content-invalidation.d.ts.map +1 -0
  41. package/dist/cache/content-invalidation.js +72 -0
  42. package/dist/cache/content-invalidation.js.map +1 -0
  43. package/dist/db/content-restore.d.ts +5 -1
  44. package/dist/db/content-restore.d.ts.map +1 -1
  45. package/dist/db/content-restore.js +9 -2
  46. package/dist/db/content-restore.js.map +1 -1
  47. package/package.json +1 -1
@@ -0,0 +1,72 @@
1
+ import { contentKey, contentSlugKey } from './keys.js';
2
+ /**
3
+ * Build the narrow content-cache invalidation used both by the hook
4
+ * subscribers below and by mutation routes (workflow transitions, version
5
+ * restore) that update content directly rather than through the content hook
6
+ * dispatcher.
7
+ */
8
+ export function createContentCacheInvalidator(cacheProvider) {
9
+ return async (siteId, id, slug) => {
10
+ if (!siteId || !id)
11
+ return;
12
+ await cacheProvider.delete(contentKey(siteId, id));
13
+ if (slug)
14
+ await cacheProvider.delete(contentSlugKey(siteId, slug));
15
+ await cacheProvider.invalidatePattern(`feed:${siteId}:*`);
16
+ await cacheProvider.invalidatePattern(`nav:${siteId}:*`);
17
+ };
18
+ }
19
+ function readContent(payload) {
20
+ const content = payload?.content ?? {};
21
+ return {
22
+ siteId: String(content.siteId ?? ''),
23
+ id: String(content.id ?? ''),
24
+ slug: content.slug ? String(content.slug) : undefined,
25
+ };
26
+ }
27
+ /**
28
+ * Subscribe the content cache to every content mutation event, and return the
29
+ * invalidator so callers that bypass the hook chain can reuse it.
30
+ *
31
+ * #137: `content:afterDelete` used to clear only the id key, so the slug key
32
+ * kept serving the just-trashed row — delete a page, recreate the same slug,
33
+ * and the editor loaded the trashed row's (empty) layout. Every event that can
34
+ * change what a slug resolves to now clears both keys. The DB getters already
35
+ * filter `deleted_at IS NULL`; the cache was the only place a trashed row could
36
+ * still come from.
37
+ */
38
+ export function wireContentCacheInvalidation(registry, cacheProvider) {
39
+ const invalidate = createContentCacheInvalidator(cacheProvider);
40
+ const invalidateFromEvent = async (payload) => {
41
+ const { siteId, id, slug } = readContent(payload);
42
+ await invalidate(siteId, id, slug);
43
+ };
44
+ // A create can't have a stale entry of its own, but it can inherit one: a row
45
+ // recreated on a slug whose previous occupant was purged through a path that
46
+ // never invalidated (empty-trash, a direct DB write) would otherwise resolve
47
+ // to the old row. Clearing the keys the new row is about to own makes that
48
+ // self-healing. Nav is left alone — an unpublished new node isn't in it yet.
49
+ registry.on('content:afterCreate', async (payload) => {
50
+ const { siteId, id, slug } = readContent(payload);
51
+ if (!siteId)
52
+ return;
53
+ if (id)
54
+ await cacheProvider.delete(contentKey(siteId, id));
55
+ if (slug)
56
+ await cacheProvider.delete(contentSlugKey(siteId, slug));
57
+ await cacheProvider.invalidatePattern(`feed:${siteId}:*`);
58
+ });
59
+ registry.on('content:afterUpdate', invalidateFromEvent);
60
+ // Unpublish fires its own dedicated event (afterUpdate no longer fires on
61
+ // unpublish) — without this the public site keeps serving the just-unpublished
62
+ // node from stale cache.
63
+ registry.on('content:afterUnpublish', invalidateFromEvent);
64
+ registry.on('content:afterPublish', invalidateFromEvent);
65
+ registry.on('content:afterDelete', invalidateFromEvent);
66
+ // Trash transitions change what a slug resolves to just as much as a delete
67
+ // does: a restore puts the row back, a permanent delete removes it for good.
68
+ registry.on('trash:afterRestore', invalidateFromEvent);
69
+ registry.on('trash:afterPermanentDelete', invalidateFromEvent);
70
+ return invalidate;
71
+ }
72
+ //# sourceMappingURL=content-invalidation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"content-invalidation.js","sourceRoot":"","sources":["../../src/cache/content-invalidation.ts"],"names":[],"mappings":"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"}
@@ -11,8 +11,12 @@ export interface DeletedContentRow {
11
11
  }
12
12
  /**
13
13
  * Get a soft-deleted content node by ID (for hook payloads).
14
+ *
15
+ * `siteId` is an optional cross-site guard: when provided, an id belonging to
16
+ * another site resolves to null, so a trash route can't hand a foreign row to
17
+ * its hooks.
14
18
  */
15
- export declare function getDeletedContentById(db: KywiDb, id: string): Promise<Record<string, unknown> | null>;
19
+ export declare function getDeletedContentById(db: KywiDb, id: string, siteId?: string): Promise<Record<string, unknown> | null>;
16
20
  /**
17
21
  * List soft-deleted content for a specific site, sorted by deletion date (newest first).
18
22
  */
@@ -1 +1 @@
1
- {"version":3,"file":"content-restore.d.ts","sourceRoot":"","sources":["../../src/db/content-restore.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEzC,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,eAAe,EAAE,MAAM,CAAA;IACvB,SAAS,EAAE,IAAI,CAAA;IACf,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;CACxB;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,GACT,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC,CAQzC;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,MAAM,EACd,UAAU,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC5C,OAAO,CAAC;IAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CA+BvD;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,EAAE,EAAE,MAAM,EACV,UAAU,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC5C,OAAO,CAAC;IAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CA4BvD;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAOlF;AAED;;;GAGG;AACH,wBAAsB,2BAA2B,CAC/C,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,CAAC,CAmCjB;AAED;;;;GAIG;AACH,wBAAsB,0BAA0B,CAC9C,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,EACV,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC;IAAE,QAAQ,EAAE,OAAO,CAAC;IAAC,gBAAgB,EAAE,OAAO,CAAA;CAAE,CAAC,CA+C3D;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAYnF;AAED;;;GAGG;AACH,wBAAsB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAOlE"}
1
+ {"version":3,"file":"content-restore.d.ts","sourceRoot":"","sources":["../../src/db/content-restore.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEzC,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,eAAe,EAAE,MAAM,CAAA;IACvB,SAAS,EAAE,IAAI,CAAA;IACf,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;CACxB;AAED;;;;;;GAMG;AACH,wBAAsB,qBAAqB,CACzC,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,EACV,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC,CAUzC;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,MAAM,EACd,UAAU,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC5C,OAAO,CAAC;IAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CA+BvD;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,EAAE,EAAE,MAAM,EACV,UAAU,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC5C,OAAO,CAAC;IAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CA4BvD;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAOlF;AAED;;;GAGG;AACH,wBAAsB,2BAA2B,CAC/C,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,CAAC,CAmCjB;AAED;;;;GAIG;AACH,wBAAsB,0BAA0B,CAC9C,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,EACV,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC;IAAE,QAAQ,EAAE,OAAO,CAAC;IAAC,gBAAgB,EAAE,OAAO,CAAA;CAAE,CAAC,CA+C3D;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAYnF;AAED;;;GAGG;AACH,wBAAsB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAOlE"}
@@ -2,12 +2,19 @@ import { eq, and, sql, desc, count } from 'drizzle-orm';
2
2
  import { kywiContent } from '../schema/base.js';
3
3
  /**
4
4
  * Get a soft-deleted content node by ID (for hook payloads).
5
+ *
6
+ * `siteId` is an optional cross-site guard: when provided, an id belonging to
7
+ * another site resolves to null, so a trash route can't hand a foreign row to
8
+ * its hooks.
5
9
  */
6
- export async function getDeletedContentById(db, id) {
10
+ export async function getDeletedContentById(db, id, siteId) {
11
+ const conditions = [eq(kywiContent.id, id), sql `${kywiContent.deletedAt} IS NOT NULL`];
12
+ if (siteId !== undefined)
13
+ conditions.push(eq(kywiContent.siteId, siteId));
7
14
  const [row] = await db
8
15
  .select()
9
16
  .from(kywiContent)
10
- .where(and(eq(kywiContent.id, id), sql `${kywiContent.deletedAt} IS NOT NULL`))
17
+ .where(and(...conditions))
11
18
  .limit(1);
12
19
  return row ?? null;
13
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"content-restore.js","sourceRoot":"","sources":["../../src/db/content-restore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"content-restore.js","sourceRoot":"","sources":["../../src/db/content-restore.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kywi-software/core",
3
- "version": "0.9.0",
3
+ "version": "0.10.0",
4
4
  "description": "Kywi CMS core — schema generator, REST API, and admin UI for Next.js.",
5
5
  "type": "module",
6
6
  "license": "AGPL-3.0-only",