Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 0 additions & 6 deletions .changeset/hreflang-from-metadata.md

This file was deleted.

18 changes: 0 additions & 18 deletions .changeset/merge-bot-protection.md

This file was deleted.

5 changes: 0 additions & 5 deletions .changeset/nk-i18n-locale-union-types.md

This file was deleted.

7 changes: 7 additions & 0 deletions packages/nk-blog/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,12 @@
# @ingram-tech/nk-blog

## 0.1.8

### Patch Changes

- Updated dependencies [a589e0b]
- @ingram-tech/nk-seo@0.10.0

## 0.1.7

### Patch Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/nk-blog/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@ingram-tech/nk-blog",
"version": "0.1.7",
"version": "0.1.8",
"description": "File-based blog foundation for Next.js sites: frontmatter schema, build-time reader, limited-MDX rendering, a typed component contract with unstyled defaults, GitHub read/publish, and RSS.",
"license": "MIT",
"type": "module",
Expand Down
19 changes: 19 additions & 0 deletions packages/nk-forms/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,24 @@
# @ingram-tech/nk-forms

## 0.3.0

### Minor Changes

- bdc28df: Absorb `@ingram-tech/bot-protection` into nk-forms. Nothing in the fleet
depended on it directly — nk-forms was its only consumer and already re-exported
its whole surface — so the separate package bought a second version number,
changelog and release for 600 lines that were already an implementation detail.

Additive for nk-forms: `verifyHuman`, `checkBot`, `createFormToken`,
`verifyFormToken`, `HONEYPOT_FIELD`, `TOKEN_FIELD` and `isConfigured` now come
from the root, with `<HoneypotField>` at `/honeypot` and the field names at
`/fields`. `BOT_PROTECTION_SECRET` keeps its name, so no site config changes.
`botid` becomes an optional peer dependency of nk-forms.

Sites importing `@ingram-tech/bot-protection` directly (none known) should
switch the specifier to `@ingram-tech/nk-forms`; that package is deprecated on
npm.

## 0.2.7

### Patch Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/nk-forms/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@ingram-tech/nk-forms",
"version": "0.2.7",
"version": "0.3.0",
"description": "Contact/signup form pipeline for Next.js sites — invisible bot protection (honeypot + signed timing token + Vercel BotID), validation, and escaped email notifications in one handler.",
"license": "MIT",
"type": "module",
Expand Down
7 changes: 7 additions & 0 deletions packages/nk-i18n/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,12 @@
# @ingram-tech/nk-i18n

## 0.5.1

### Patch Changes

- a589e0b: nk-seo: `createMetadata({ hreflang })` emits the locale cluster from metadata. Set it once on the site config (the nk-i18n routing object fits directly) and every `pageMetadata()` call gains `alternates.languages` (with `x-default`) and a canonical that follows the address; pass `urlLocale` on dynamic pages so a localized URL canonicalizes to itself. Because this goes through metadata rather than the `x-pathname` request header, it works on statically rendered routes (`force-static`), where `<HreflangLinks>` has no header to read and throws — the READMEs now say so and point at the metadata wiring as the preferred one. nk-i18n: docs only.
- 8cb32be: `LocaleRouting.hrefLangTags` and `hreflangConfigFor()`'s result keep the locale union (`L`) instead of widening to `string`; still assignable to nk-seo's `HreflangConfig`.

## 0.5.0

### Minor Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/nk-i18n/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@ingram-tech/nk-i18n",
"version": "0.5.0",
"version": "0.5.1",
"description": "Type-safe, English-as-key i18n for Ingram Next.js sites — ICU translator, scopes, locale config, Accept-Language negotiation, and locale URL routing.",
"license": "MIT",
"type": "module",
Expand Down
6 changes: 6 additions & 0 deletions packages/nk-seo/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
# @ingram-tech/nk-seo

## 0.10.0

### Minor Changes

- a589e0b: nk-seo: `createMetadata({ hreflang })` emits the locale cluster from metadata. Set it once on the site config (the nk-i18n routing object fits directly) and every `pageMetadata()` call gains `alternates.languages` (with `x-default`) and a canonical that follows the address; pass `urlLocale` on dynamic pages so a localized URL canonicalizes to itself. Because this goes through metadata rather than the `x-pathname` request header, it works on statically rendered routes (`force-static`), where `<HreflangLinks>` has no header to read and throws — the READMEs now say so and point at the metadata wiring as the preferred one. nk-i18n: docs only.

## 0.9.0

### Minor Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/nk-seo/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@ingram-tech/nk-seo",
"version": "0.9.0",
"version": "0.10.0",
"description": "SEO primitives for Next.js sites: typed schema.org JSON-LD builders, a <JsonLd> tag, a Metadata factory (canonical + OG + Twitter), and configurable hreflang alternates.",
"license": "MIT",
"type": "module",
Expand Down