diff --git a/blog-cloudflare/.agents/skills/creating-plugins/references/hooks.md b/blog-cloudflare/.agents/skills/creating-plugins/references/hooks.md index c8ba16e..02fa397 100644 --- a/blog-cloudflare/.agents/skills/creating-plugins/references/hooks.md +++ b/blog-cloudflare/.agents/skills/creating-plugins/references/hooks.md @@ -189,6 +189,19 @@ Runs after content is unpublished (reverted to draft). Side effects only. Event: `{ content: Record, collection: string }` Returns: `void` +### `content:afterRestore` + +Runs after trashed content is restored. Side effects only. + +```typescript +"content:afterRestore": async (event, ctx) => { + ctx.log.info(`Restored ${event.collection}/${event.content.id}`); +} +``` + +Event: `{ content: Record, collection: string }` +Returns: `void` + ## Media Hooks ### `media:beforeUpload` @@ -430,6 +443,7 @@ Use `"continue"` for non-critical operations (analytics, notifications, external | `content:afterDelete` | After delete | `content:read` | `void` | | `content:afterPublish` | After publish | `content:read` | `void` | | `content:afterUnpublish` | After unpublish | `content:read` | `void` | +| `content:afterRestore` | After restore | `content:read` | `void` | | `media:beforeUpload` | Before upload | — | Modified file info or `void` | | `media:afterUpload` | After upload | — | `void` | | `email:beforeSend` | Before email send | `hooks.email-events:register` | Modified message or `false` | diff --git a/blog-cloudflare/package.json b/blog-cloudflare/package.json index c3f8196..40f7810 100644 --- a/blog-cloudflare/package.json +++ b/blog-cloudflare/package.json @@ -16,11 +16,11 @@ "dependencies": { "@astrojs/cloudflare": "^14.0.0", "@astrojs/react": "^6.0.0", - "@emdash-cms/cloudflare": "^0.24.1", + "@emdash-cms/cloudflare": "^0.25.1", "@emdash-cms/plugin-forms": "^0.2.4", "@emdash-cms/plugin-webhook-notifier": "^0.2.0", "astro": "^7.0.0", - "emdash": "^0.24.1", + "emdash": "^0.25.1", "react": "19.2.4", "react-dom": "19.2.4" }, diff --git a/blog/.agents/skills/creating-plugins/references/hooks.md b/blog/.agents/skills/creating-plugins/references/hooks.md index c8ba16e..02fa397 100644 --- a/blog/.agents/skills/creating-plugins/references/hooks.md +++ b/blog/.agents/skills/creating-plugins/references/hooks.md @@ -189,6 +189,19 @@ Runs after content is unpublished (reverted to draft). Side effects only. Event: `{ content: Record, collection: string }` Returns: `void` +### `content:afterRestore` + +Runs after trashed content is restored. Side effects only. + +```typescript +"content:afterRestore": async (event, ctx) => { + ctx.log.info(`Restored ${event.collection}/${event.content.id}`); +} +``` + +Event: `{ content: Record, collection: string }` +Returns: `void` + ## Media Hooks ### `media:beforeUpload` @@ -430,6 +443,7 @@ Use `"continue"` for non-critical operations (analytics, notifications, external | `content:afterDelete` | After delete | `content:read` | `void` | | `content:afterPublish` | After publish | `content:read` | `void` | | `content:afterUnpublish` | After unpublish | `content:read` | `void` | +| `content:afterRestore` | After restore | `content:read` | `void` | | `media:beforeUpload` | Before upload | — | Modified file info or `void` | | `media:afterUpload` | After upload | — | `void` | | `email:beforeSend` | Before email send | `hooks.email-events:register` | Modified message or `false` | diff --git a/blog/package.json b/blog/package.json index 4121bf2..7a31d9c 100644 --- a/blog/package.json +++ b/blog/package.json @@ -19,7 +19,7 @@ "@emdash-cms/plugin-audit-log": "^0.2.0", "astro": "^7.0.0", "better-sqlite3": "^12.8.0", - "emdash": "^0.24.1", + "emdash": "^0.25.1", "react": "19.2.4", "react-dom": "19.2.4" }, diff --git a/marketing-cloudflare/.agents/skills/creating-plugins/references/hooks.md b/marketing-cloudflare/.agents/skills/creating-plugins/references/hooks.md index c8ba16e..02fa397 100644 --- a/marketing-cloudflare/.agents/skills/creating-plugins/references/hooks.md +++ b/marketing-cloudflare/.agents/skills/creating-plugins/references/hooks.md @@ -189,6 +189,19 @@ Runs after content is unpublished (reverted to draft). Side effects only. Event: `{ content: Record, collection: string }` Returns: `void` +### `content:afterRestore` + +Runs after trashed content is restored. Side effects only. + +```typescript +"content:afterRestore": async (event, ctx) => { + ctx.log.info(`Restored ${event.collection}/${event.content.id}`); +} +``` + +Event: `{ content: Record, collection: string }` +Returns: `void` + ## Media Hooks ### `media:beforeUpload` @@ -430,6 +443,7 @@ Use `"continue"` for non-critical operations (analytics, notifications, external | `content:afterDelete` | After delete | `content:read` | `void` | | `content:afterPublish` | After publish | `content:read` | `void` | | `content:afterUnpublish` | After unpublish | `content:read` | `void` | +| `content:afterRestore` | After restore | `content:read` | `void` | | `media:beforeUpload` | Before upload | — | Modified file info or `void` | | `media:afterUpload` | After upload | — | `void` | | `email:beforeSend` | Before email send | `hooks.email-events:register` | Modified message or `false` | diff --git a/marketing-cloudflare/package.json b/marketing-cloudflare/package.json index 957ce1c..cabe9b1 100644 --- a/marketing-cloudflare/package.json +++ b/marketing-cloudflare/package.json @@ -16,11 +16,11 @@ "dependencies": { "@astrojs/cloudflare": "^14.0.0", "@astrojs/react": "^6.0.0", - "@emdash-cms/cloudflare": "^0.24.1", + "@emdash-cms/cloudflare": "^0.25.1", "@iconify-json/ph": "^1.2.2", "astro": "^7.0.0", "astro-iconset": "^0.0.4", - "emdash": "^0.24.1", + "emdash": "^0.25.1", "react": "19.2.4", "react-dom": "19.2.4" }, diff --git a/marketing/.agents/skills/creating-plugins/references/hooks.md b/marketing/.agents/skills/creating-plugins/references/hooks.md index c8ba16e..02fa397 100644 --- a/marketing/.agents/skills/creating-plugins/references/hooks.md +++ b/marketing/.agents/skills/creating-plugins/references/hooks.md @@ -189,6 +189,19 @@ Runs after content is unpublished (reverted to draft). Side effects only. Event: `{ content: Record, collection: string }` Returns: `void` +### `content:afterRestore` + +Runs after trashed content is restored. Side effects only. + +```typescript +"content:afterRestore": async (event, ctx) => { + ctx.log.info(`Restored ${event.collection}/${event.content.id}`); +} +``` + +Event: `{ content: Record, collection: string }` +Returns: `void` + ## Media Hooks ### `media:beforeUpload` @@ -430,6 +443,7 @@ Use `"continue"` for non-critical operations (analytics, notifications, external | `content:afterDelete` | After delete | `content:read` | `void` | | `content:afterPublish` | After publish | `content:read` | `void` | | `content:afterUnpublish` | After unpublish | `content:read` | `void` | +| `content:afterRestore` | After restore | `content:read` | `void` | | `media:beforeUpload` | Before upload | — | Modified file info or `void` | | `media:afterUpload` | After upload | — | `void` | | `email:beforeSend` | Before email send | `hooks.email-events:register` | Modified message or `false` | diff --git a/marketing/package.json b/marketing/package.json index 4ceef89..a689a10 100644 --- a/marketing/package.json +++ b/marketing/package.json @@ -20,7 +20,7 @@ "astro": "^7.0.0", "astro-iconset": "^0.0.4", "better-sqlite3": "^12.8.0", - "emdash": "^0.24.1", + "emdash": "^0.25.1", "react": "19.2.4", "react-dom": "19.2.4" }, diff --git a/portfolio-cloudflare/.agents/skills/creating-plugins/references/hooks.md b/portfolio-cloudflare/.agents/skills/creating-plugins/references/hooks.md index c8ba16e..02fa397 100644 --- a/portfolio-cloudflare/.agents/skills/creating-plugins/references/hooks.md +++ b/portfolio-cloudflare/.agents/skills/creating-plugins/references/hooks.md @@ -189,6 +189,19 @@ Runs after content is unpublished (reverted to draft). Side effects only. Event: `{ content: Record, collection: string }` Returns: `void` +### `content:afterRestore` + +Runs after trashed content is restored. Side effects only. + +```typescript +"content:afterRestore": async (event, ctx) => { + ctx.log.info(`Restored ${event.collection}/${event.content.id}`); +} +``` + +Event: `{ content: Record, collection: string }` +Returns: `void` + ## Media Hooks ### `media:beforeUpload` @@ -430,6 +443,7 @@ Use `"continue"` for non-critical operations (analytics, notifications, external | `content:afterDelete` | After delete | `content:read` | `void` | | `content:afterPublish` | After publish | `content:read` | `void` | | `content:afterUnpublish` | After unpublish | `content:read` | `void` | +| `content:afterRestore` | After restore | `content:read` | `void` | | `media:beforeUpload` | Before upload | — | Modified file info or `void` | | `media:afterUpload` | After upload | — | `void` | | `email:beforeSend` | Before email send | `hooks.email-events:register` | Modified message or `false` | diff --git a/portfolio-cloudflare/package.json b/portfolio-cloudflare/package.json index 513dcbb..a6bff23 100644 --- a/portfolio-cloudflare/package.json +++ b/portfolio-cloudflare/package.json @@ -16,9 +16,9 @@ "dependencies": { "@astrojs/cloudflare": "^14.0.0", "@astrojs/react": "^6.0.0", - "@emdash-cms/cloudflare": "^0.24.1", + "@emdash-cms/cloudflare": "^0.25.1", "astro": "^7.0.0", - "emdash": "^0.24.1", + "emdash": "^0.25.1", "react": "19.2.4", "react-dom": "19.2.4" }, diff --git a/portfolio/.agents/skills/creating-plugins/references/hooks.md b/portfolio/.agents/skills/creating-plugins/references/hooks.md index c8ba16e..02fa397 100644 --- a/portfolio/.agents/skills/creating-plugins/references/hooks.md +++ b/portfolio/.agents/skills/creating-plugins/references/hooks.md @@ -189,6 +189,19 @@ Runs after content is unpublished (reverted to draft). Side effects only. Event: `{ content: Record, collection: string }` Returns: `void` +### `content:afterRestore` + +Runs after trashed content is restored. Side effects only. + +```typescript +"content:afterRestore": async (event, ctx) => { + ctx.log.info(`Restored ${event.collection}/${event.content.id}`); +} +``` + +Event: `{ content: Record, collection: string }` +Returns: `void` + ## Media Hooks ### `media:beforeUpload` @@ -430,6 +443,7 @@ Use `"continue"` for non-critical operations (analytics, notifications, external | `content:afterDelete` | After delete | `content:read` | `void` | | `content:afterPublish` | After publish | `content:read` | `void` | | `content:afterUnpublish` | After unpublish | `content:read` | `void` | +| `content:afterRestore` | After restore | `content:read` | `void` | | `media:beforeUpload` | Before upload | — | Modified file info or `void` | | `media:afterUpload` | After upload | — | `void` | | `email:beforeSend` | Before email send | `hooks.email-events:register` | Modified message or `false` | diff --git a/portfolio/package.json b/portfolio/package.json index 8937edf..fd252f5 100644 --- a/portfolio/package.json +++ b/portfolio/package.json @@ -18,7 +18,7 @@ "@astrojs/react": "^6.0.0", "astro": "^7.0.0", "better-sqlite3": "^12.8.0", - "emdash": "^0.24.1", + "emdash": "^0.25.1", "react": "19.2.4", "react-dom": "19.2.4" }, diff --git a/starter-cloudflare/.agents/skills/creating-plugins/references/hooks.md b/starter-cloudflare/.agents/skills/creating-plugins/references/hooks.md index c8ba16e..02fa397 100644 --- a/starter-cloudflare/.agents/skills/creating-plugins/references/hooks.md +++ b/starter-cloudflare/.agents/skills/creating-plugins/references/hooks.md @@ -189,6 +189,19 @@ Runs after content is unpublished (reverted to draft). Side effects only. Event: `{ content: Record, collection: string }` Returns: `void` +### `content:afterRestore` + +Runs after trashed content is restored. Side effects only. + +```typescript +"content:afterRestore": async (event, ctx) => { + ctx.log.info(`Restored ${event.collection}/${event.content.id}`); +} +``` + +Event: `{ content: Record, collection: string }` +Returns: `void` + ## Media Hooks ### `media:beforeUpload` @@ -430,6 +443,7 @@ Use `"continue"` for non-critical operations (analytics, notifications, external | `content:afterDelete` | After delete | `content:read` | `void` | | `content:afterPublish` | After publish | `content:read` | `void` | | `content:afterUnpublish` | After unpublish | `content:read` | `void` | +| `content:afterRestore` | After restore | `content:read` | `void` | | `media:beforeUpload` | Before upload | — | Modified file info or `void` | | `media:afterUpload` | After upload | — | `void` | | `email:beforeSend` | Before email send | `hooks.email-events:register` | Modified message or `false` | diff --git a/starter-cloudflare/package.json b/starter-cloudflare/package.json index 0245c84..cbf8572 100644 --- a/starter-cloudflare/package.json +++ b/starter-cloudflare/package.json @@ -16,9 +16,9 @@ "dependencies": { "@astrojs/cloudflare": "^14.0.0", "@astrojs/react": "^6.0.0", - "@emdash-cms/cloudflare": "^0.24.1", + "@emdash-cms/cloudflare": "^0.25.1", "astro": "^7.0.0", - "emdash": "^0.24.1", + "emdash": "^0.25.1", "react": "19.2.4", "react-dom": "19.2.4" }, diff --git a/starter/.agents/skills/creating-plugins/references/hooks.md b/starter/.agents/skills/creating-plugins/references/hooks.md index c8ba16e..02fa397 100644 --- a/starter/.agents/skills/creating-plugins/references/hooks.md +++ b/starter/.agents/skills/creating-plugins/references/hooks.md @@ -189,6 +189,19 @@ Runs after content is unpublished (reverted to draft). Side effects only. Event: `{ content: Record, collection: string }` Returns: `void` +### `content:afterRestore` + +Runs after trashed content is restored. Side effects only. + +```typescript +"content:afterRestore": async (event, ctx) => { + ctx.log.info(`Restored ${event.collection}/${event.content.id}`); +} +``` + +Event: `{ content: Record, collection: string }` +Returns: `void` + ## Media Hooks ### `media:beforeUpload` @@ -430,6 +443,7 @@ Use `"continue"` for non-critical operations (analytics, notifications, external | `content:afterDelete` | After delete | `content:read` | `void` | | `content:afterPublish` | After publish | `content:read` | `void` | | `content:afterUnpublish` | After unpublish | `content:read` | `void` | +| `content:afterRestore` | After restore | `content:read` | `void` | | `media:beforeUpload` | Before upload | — | Modified file info or `void` | | `media:afterUpload` | After upload | — | `void` | | `email:beforeSend` | Before email send | `hooks.email-events:register` | Modified message or `false` | diff --git a/starter/package.json b/starter/package.json index cf84f2c..2d6af50 100644 --- a/starter/package.json +++ b/starter/package.json @@ -18,7 +18,7 @@ "@astrojs/react": "^6.0.0", "astro": "^7.0.0", "better-sqlite3": "^12.8.0", - "emdash": "^0.24.1", + "emdash": "^0.25.1", "react": "19.2.4", "react-dom": "19.2.4" },