@ingram-tech/nk-seo 0.6.1 → 0.7.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 +126 -11
- package/dist/alternates.d.ts +19 -3
- package/dist/alternates.d.ts.map +1 -1
- package/dist/alternates.js +26 -18
- package/dist/alternates.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/metadata.d.ts +55 -1
- package/dist/metadata.d.ts.map +1 -1
- package/dist/metadata.js +31 -2
- package/dist/metadata.js.map +1 -1
- package/dist/schema.d.ts +136 -12
- package/dist/schema.d.ts.map +1 -1
- package/dist/schema.js +111 -3
- package/dist/schema.js.map +1 -1
- package/package.json +7 -7
package/README.md
CHANGED
|
@@ -5,8 +5,9 @@ keep re-implementing:
|
|
|
5
5
|
|
|
6
6
|
1. **`<JsonLd>`** + **typed schema.org builders** — `faqPage`, `breadcrumbList`,
|
|
7
7
|
`article`, `softwareApplication`, `organization`, `website`, `person`,
|
|
8
|
-
`localBusiness`, `event`,
|
|
9
|
-
paths and injects your
|
|
8
|
+
`localBusiness`, `event`, `dataset`, `definedTerm`/`definedTermSet`, and a
|
|
9
|
+
`createSeo` factory that resolves site-relative paths and injects your
|
|
10
|
+
publisher.
|
|
10
11
|
2. **`createMetadata`** — a Next `Metadata` factory: canonical + OpenGraph +
|
|
11
12
|
Twitter card from one title/description/path.
|
|
12
13
|
3. **`createSitemap` / `createRobots`** — `app/sitemap.ts` and `app/robots.ts`
|
|
@@ -75,6 +76,53 @@ or an array (e.g. `[organization(org), website(site)]` on the homepage), and
|
|
|
75
76
|
escapes `<` on serialization so CMS-sourced strings can't break out of the
|
|
76
77
|
`<script>` tag.
|
|
77
78
|
|
|
79
|
+
### Properties the builders don't cover
|
|
80
|
+
|
|
81
|
+
schema.org is much larger than any builder surface, so every builder takes an
|
|
82
|
+
`extra` object shallow-merged over the built payload (it wins on conflict).
|
|
83
|
+
Reach for it rather than dropping the whole node back to a literal:
|
|
84
|
+
|
|
85
|
+
```ts
|
|
86
|
+
website({
|
|
87
|
+
name: "Acme",
|
|
88
|
+
url: "https://example.com",
|
|
89
|
+
extra: {
|
|
90
|
+
alternateName: "ACME",
|
|
91
|
+
inLanguage: ["en", "fr"],
|
|
92
|
+
potentialAction: {
|
|
93
|
+
"@type": "SearchAction",
|
|
94
|
+
target: "https://example.com/search?q={search_term_string}",
|
|
95
|
+
"query-input": "required name=search_term_string",
|
|
96
|
+
},
|
|
97
|
+
},
|
|
98
|
+
});
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
`extra` works on nested inputs too — `publisher: { name: "Acme", extra: {…} }`.
|
|
102
|
+
Values passed this way aren't reflected in the returned node type.
|
|
103
|
+
|
|
104
|
+
For a node type no builder covers, `<JsonLd data={…} />` takes **any** object or
|
|
105
|
+
array of objects. Hand-written nodes still get the `<` / U+2028 escaping, which
|
|
106
|
+
is the security-relevant half of the package — worth preferring over
|
|
107
|
+
`dangerouslySetInnerHTML` even with no builder involved.
|
|
108
|
+
|
|
109
|
+
`article` covers `Article`, `BlogPosting`, `NewsArticle`, `ScholarlyArticle`,
|
|
110
|
+
`TechArticle` (the right type for API/developer docs) and `Report` via `type`.
|
|
111
|
+
`dataset` and `definedTerm`/`definedTermSet` mark up data and controlled
|
|
112
|
+
vocabularies:
|
|
113
|
+
|
|
114
|
+
```ts
|
|
115
|
+
<JsonLd
|
|
116
|
+
data={seo.definedTerm({
|
|
117
|
+
name: "Computer programming",
|
|
118
|
+
termCode: "62.01",
|
|
119
|
+
path: "/code/62.01",
|
|
120
|
+
inDefinedTermSet: { name: "Acme classification", path: "/", version: "2025" },
|
|
121
|
+
extra: { inLanguage: "en" },
|
|
122
|
+
})}
|
|
123
|
+
/>
|
|
124
|
+
```
|
|
125
|
+
|
|
78
126
|
## Page metadata
|
|
79
127
|
|
|
80
128
|
```ts
|
|
@@ -103,10 +151,26 @@ export const metadata = pageMetadata({
|
|
|
103
151
|
|
|
104
152
|
Produces `title`, `description`, a self-referencing `alternates.canonical`,
|
|
105
153
|
`openGraph`, and a `summary_large_image` Twitter card. Pass `noIndex`, `keywords`,
|
|
106
|
-
`type: "article"`, or per-page `openGraph`/`twitter` overrides as
|
|
154
|
+
`type: "article"`, or per-page `alternates`/`openGraph`/`twitter` overrides as
|
|
155
|
+
needed — each is merged into the generated object and wins on conflict. With
|
|
107
156
|
`titleTemplate` set, `pageMetadata.root()` emits `title.template`, so plain page
|
|
108
157
|
titles render as "Services | Acme" without every page appending the suffix.
|
|
109
158
|
|
|
159
|
+
On a localized site the per-page `alternates` and `locale` are what make the
|
|
160
|
+
factory usable — `alternates.languages` is what Next renders as
|
|
161
|
+
`<link rel="alternate" hreflang>`, and `og:locale` has to vary per page:
|
|
162
|
+
|
|
163
|
+
```ts
|
|
164
|
+
import { hreflangAlternates } from "@ingram-tech/nk-seo";
|
|
165
|
+
|
|
166
|
+
const { languages } = hreflangAlternates(HREFLANG_CONFIG, `/${locale}/about`);
|
|
167
|
+
return pageMetadata({
|
|
168
|
+
title, description, path: `/${locale}/about`,
|
|
169
|
+
alternates: { languages },
|
|
170
|
+
locale: "fr_BE", // overrides the site-wide `locale`
|
|
171
|
+
});
|
|
172
|
+
```
|
|
173
|
+
|
|
110
174
|
## Sitemap & robots
|
|
111
175
|
|
|
112
176
|
```ts
|
|
@@ -171,17 +235,50 @@ Pass `logo` (absolute URL or data URI) to replace the accent-square mark with
|
|
|
171
235
|
your logo, and `fonts` + `fontFamily` to render with the brand typeface —
|
|
172
236
|
`fonts` is forwarded to `ImageResponse`, which takes raw TTF/OTF/WOFF data.
|
|
173
237
|
|
|
238
|
+
### Two ways the generated card silently doesn't reach your pages
|
|
239
|
+
|
|
240
|
+
Both fail with a green build and no warning; only fetching each page type shows
|
|
241
|
+
them.
|
|
242
|
+
|
|
243
|
+
**A page's own `openGraph` drops the inherited image.** Next attaches a
|
|
244
|
+
file-convention image to the segment that declares it, and sibling metadata
|
|
245
|
+
objects are *replaced*, not deep-merged — so any page whose `generateMetadata`
|
|
246
|
+
returns an `openGraph` object (i.e. any page setting `og:title`/`og:url`) emits
|
|
247
|
+
no `og:image` at all. The home page, sitting in the same segment as the image
|
|
248
|
+
file, looks perfectly correct throughout. Build the list once and spread it into
|
|
249
|
+
every page:
|
|
250
|
+
|
|
251
|
+
```ts
|
|
252
|
+
import { ogImageMetadata } from "@ingram-tech/nk-seo";
|
|
253
|
+
|
|
254
|
+
const images = ogImageMetadata({ baseUrl, path: "/opengraph-image", alt: "Acme" });
|
|
255
|
+
return { title, openGraph: { title, url, images } };
|
|
256
|
+
```
|
|
257
|
+
|
|
258
|
+
`createMetadata`'s `defaultImage` / per-page `image` already do this — point
|
|
259
|
+
either at the image route and every page it builds carries the card.
|
|
260
|
+
|
|
261
|
+
**Locale-negotiating middleware eats the image route.** A site that redirects
|
|
262
|
+
any path lacking a locale prefix also redirects `/opengraph-image`, so the card
|
|
263
|
+
URL never resolves. Put the file at `app/[locale]/opengraph-image.tsx` instead:
|
|
264
|
+
it dodges the redirect and gives per-locale cards from `params`. That is the
|
|
265
|
+
better default for any localized site.
|
|
266
|
+
|
|
174
267
|
The template encodes the Satori rule that trips everyone up: every node with
|
|
175
268
|
more than one child sets `display: flex`, and text nodes are never mixed with
|
|
176
269
|
sibling elements — so the headline stays a plain string and the accent rides on
|
|
177
270
|
the mark, not a coloured `<span>` inside the title.
|
|
178
271
|
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
272
|
+
Type-check won't help here: `ImageResponse` accepts all of
|
|
273
|
+
`React.CSSProperties` and Satori silently drops what it doesn't know. Two guards
|
|
274
|
+
cover that. `@ingram-tech/nk-dev`'s oxlint plugin ships `nextkit/satori-css`,
|
|
275
|
+
which flags unsupported style properties, `calc()`, and the two structural rules
|
|
276
|
+
in files that import `next/og` or are an `opengraph-image`/`twitter-image`
|
|
277
|
+
convention. And rendering remains the final validator: this package renders its
|
|
278
|
+
template through the real satori + resvg pipeline in its own tests, so a site
|
|
279
|
+
hand-rolling extra cards should add the same guard — a vitest file (node
|
|
280
|
+
environment) that renders each `opengraph-image.tsx` and asserts a valid PNG
|
|
281
|
+
comes out.
|
|
185
282
|
|
|
186
283
|
## Hreflang & canonical
|
|
187
284
|
|
|
@@ -219,6 +316,22 @@ import { HreflangLinks } from "@ingram-tech/nk-seo/components";
|
|
|
219
316
|
/>
|
|
220
317
|
```
|
|
221
318
|
|
|
319
|
+
Sites that prefix **every** locale — where `/about` redirects to `/en/about`
|
|
320
|
+
and no bare path exists — pass `prefixDefaultLocale`, which prefixes the default
|
|
321
|
+
locale too and points `x-default` at that prefixed URL. Without it the bare path
|
|
322
|
+
is emitted for both `en` and `x-default`, annotating URLs that redirect (Google
|
|
323
|
+
wants every hreflang target to answer 200 directly).
|
|
324
|
+
|
|
325
|
+
```tsx
|
|
326
|
+
<HreflangLinks
|
|
327
|
+
baseUrl="https://example.com"
|
|
328
|
+
locales={["en", "fr", "nl"]}
|
|
329
|
+
strategy="prefix"
|
|
330
|
+
defaultLocale="en"
|
|
331
|
+
prefixDefaultLocale
|
|
332
|
+
/>
|
|
333
|
+
```
|
|
334
|
+
|
|
222
335
|
Pass `pathname` explicitly if you don't use the `x-pathname` header. When
|
|
223
336
|
neither is available the component **throws** instead of guessing — a silent
|
|
224
337
|
fallback would canonicalize every page to the homepage, the kind of site-wide
|
|
@@ -234,5 +347,7 @@ Two rules of the road:
|
|
|
234
347
|
(possibly `/fr/…`-prefixed) pathname; the query strategy can't see the query
|
|
235
348
|
string server-side, so pass `currentLocale` from your locale negotiation.
|
|
236
349
|
- Building metadata instead of rendering links? The pure `hreflangAlternates`
|
|
237
|
-
(package root) returns the same
|
|
238
|
-
`
|
|
350
|
+
(package root) returns the same links for use in `generateMetadata`:
|
|
351
|
+
`{ canonical, links, languages }`, where `languages` is already keyed by
|
|
352
|
+
hreflang for `Metadata.alternates.languages` (or `createMetadata`'s
|
|
353
|
+
per-page `alternates`).
|
package/dist/alternates.d.ts
CHANGED
|
@@ -12,13 +12,23 @@ export interface HreflangConfig {
|
|
|
12
12
|
* How locale is encoded in the alternate URLs:
|
|
13
13
|
* - `"query"` (default): `${baseUrl}${path}?${param}=${locale}` for every locale.
|
|
14
14
|
* - `"prefix"`: the default locale stays at the bare path; others get
|
|
15
|
-
* `/${locale}${path}` (matches a localized-rewrite setup).
|
|
15
|
+
* `/${locale}${path}` (matches a localized-rewrite setup). Set
|
|
16
|
+
* {@link HreflangConfig.prefixDefaultLocale} for sites that prefix every
|
|
17
|
+
* locale instead.
|
|
16
18
|
*/
|
|
17
19
|
strategy?: "query" | "prefix";
|
|
18
20
|
/** Query-param name for the `"query"` strategy. Default `"hl"`. */
|
|
19
21
|
param?: string;
|
|
20
|
-
/** Default
|
|
22
|
+
/** Default locale. Required for `"prefix"`; it is what `x-default` resolves to. */
|
|
21
23
|
defaultLocale?: string;
|
|
24
|
+
/**
|
|
25
|
+
* `"prefix"` only: prefix the default locale too (`/en/about`, never
|
|
26
|
+
* `/about`), and point `x-default` at that prefixed URL. For sites whose
|
|
27
|
+
* locale negotiation redirects every bare path — emitting the bare path as
|
|
28
|
+
* an alternate would annotate a URL that 3xx-redirects, which is the bug the
|
|
29
|
+
* mandatory `defaultLocale` exists to prevent.
|
|
30
|
+
*/
|
|
31
|
+
prefixDefaultLocale?: boolean;
|
|
22
32
|
/**
|
|
23
33
|
* Locale of the page being rendered. Determines the self-referencing
|
|
24
34
|
* canonical: a localized variant that canonicalizes to another URL makes
|
|
@@ -38,8 +48,14 @@ export interface HreflangLink {
|
|
|
38
48
|
export interface HreflangAlternates {
|
|
39
49
|
/** Self-referencing canonical URL of `pathname`. */
|
|
40
50
|
canonical: string;
|
|
41
|
-
/** One link per locale, plus the trailing `x-default
|
|
51
|
+
/** One link per locale, plus the trailing `x-default`. */
|
|
42
52
|
links: HreflangLink[];
|
|
53
|
+
/**
|
|
54
|
+
* The same links keyed by `hrefLang` (`x-default` included) — the shape Next
|
|
55
|
+
* wants for `Metadata.alternates.languages` / `createMetadata`'s
|
|
56
|
+
* `alternates`.
|
|
57
|
+
*/
|
|
58
|
+
languages: Record<string, string>;
|
|
43
59
|
}
|
|
44
60
|
/**
|
|
45
61
|
* Computes the self-referencing canonical plus per-locale hreflang alternate
|
package/dist/alternates.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"alternates.d.ts","sourceRoot":"","sources":["../src/alternates.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC9B,yDAAyD;IACzD,OAAO,EAAE,MAAM,CAAC;IAChB,+DAA+D;IAC/D,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B
|
|
1
|
+
{"version":3,"file":"alternates.d.ts","sourceRoot":"","sources":["../src/alternates.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC9B,yDAAyD;IACzD,OAAO,EAAE,MAAM,CAAC;IAChB,+DAA+D;IAC/D,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC;IAC9B,mEAAmE;IACnE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mFAAmF;IACnF,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;OAMG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,+EAA+E;IAC/E,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACtC;AAED,MAAM,WAAW,YAAY;IAC5B,gEAAgE;IAChE,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,kBAAkB;IAClC,oDAAoD;IACpD,SAAS,EAAE,MAAM,CAAC;IAClB,0DAA0D;IAC1D,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB;;;;OAIG;IACH,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CACjC,MAAM,EAAE,cAAc,EACtB,QAAQ,EAAE,MAAM,GACd,kBAAkB,CA8EpB"}
|
package/dist/alternates.js
CHANGED
|
@@ -4,10 +4,12 @@ import { absoluteUrl } from "./url.js";
|
|
|
4
4
|
* URLs (and an `x-default`) for `pathname`.
|
|
5
5
|
*/
|
|
6
6
|
export function hreflangAlternates(config, pathname) {
|
|
7
|
-
const { strategy = "query", param = "hl", defaultLocale, hrefLangTags } = config;
|
|
7
|
+
const { strategy = "query", param = "hl", defaultLocale, prefixDefaultLocale, hrefLangTags, } = config;
|
|
8
8
|
if (strategy === "prefix" && !defaultLocale) {
|
|
9
|
-
// Without it
|
|
10
|
-
//
|
|
9
|
+
// Without it canonical/x-default point at a bare path that is no
|
|
10
|
+
// locale's URL — a silent SEO bug. (With `prefixDefaultLocale` no bare
|
|
11
|
+
// path is emitted at all, but x-default still has to resolve to *some*
|
|
12
|
+
// locale, so the requirement stands.)
|
|
11
13
|
throw new Error("hreflangAlternates: `defaultLocale` is required for the prefix strategy.");
|
|
12
14
|
}
|
|
13
15
|
// Prefix strategy: accept both the bare and the locale-prefixed form of the
|
|
@@ -26,34 +28,40 @@ export function hreflangAlternates(config, pathname) {
|
|
|
26
28
|
}
|
|
27
29
|
currentLocale ??= defaultLocale;
|
|
28
30
|
}
|
|
29
|
-
/** The
|
|
30
|
-
const
|
|
31
|
+
/** The bare (locale-free) URL of the path. */
|
|
32
|
+
const bareUrl = absoluteUrl(basePath, config.baseUrl);
|
|
33
|
+
const prefixedUrl = (locale) => absoluteUrl(`/${locale}${basePath === "/" ? "" : basePath}`, config.baseUrl);
|
|
31
34
|
const hrefFor = (locale) => {
|
|
32
35
|
if (strategy === "prefix") {
|
|
33
|
-
if (locale === defaultLocale)
|
|
34
|
-
return
|
|
35
|
-
|
|
36
|
-
return absoluteUrl(`/${locale}${clean}`, config.baseUrl);
|
|
36
|
+
if (locale === defaultLocale && !prefixDefaultLocale)
|
|
37
|
+
return bareUrl;
|
|
38
|
+
return prefixedUrl(locale);
|
|
37
39
|
}
|
|
38
|
-
return `${
|
|
40
|
+
return `${bareUrl}${bareUrl.includes("?") ? "&" : "?"}${param}=${locale}`;
|
|
39
41
|
};
|
|
42
|
+
/** x-default: the default locale's own URL, prefixed or not. */
|
|
43
|
+
const defaultUrl = strategy === "prefix" && prefixDefaultLocale && defaultLocale
|
|
44
|
+
? prefixedUrl(defaultLocale)
|
|
45
|
+
: bareUrl;
|
|
40
46
|
// Self-referencing canonical: the current variant's own URL. Canonicalizing
|
|
41
47
|
// a localized variant to the bare path makes Google treat the variants as
|
|
42
48
|
// duplicates and ignore the hreflang annotations entirely.
|
|
43
49
|
const canonical = currentLocale &&
|
|
44
|
-
currentLocale !== defaultLocale &&
|
|
50
|
+
(currentLocale !== defaultLocale || prefixDefaultLocale) &&
|
|
45
51
|
config.locales.includes(currentLocale)
|
|
46
52
|
? hrefFor(currentLocale)
|
|
47
53
|
: defaultUrl;
|
|
54
|
+
const links = [
|
|
55
|
+
...config.locales.map((locale) => ({
|
|
56
|
+
hrefLang: hrefLangTags?.[locale] ?? locale,
|
|
57
|
+
href: hrefFor(locale),
|
|
58
|
+
})),
|
|
59
|
+
{ hrefLang: "x-default", href: defaultUrl },
|
|
60
|
+
];
|
|
48
61
|
return {
|
|
49
62
|
canonical,
|
|
50
|
-
links
|
|
51
|
-
|
|
52
|
-
hrefLang: hrefLangTags?.[locale] ?? locale,
|
|
53
|
-
href: hrefFor(locale),
|
|
54
|
-
})),
|
|
55
|
-
{ hrefLang: "x-default", href: defaultUrl },
|
|
56
|
-
],
|
|
63
|
+
links,
|
|
64
|
+
languages: Object.fromEntries(links.map((link) => [link.hrefLang, link.href])),
|
|
57
65
|
};
|
|
58
66
|
}
|
|
59
67
|
//# sourceMappingURL=alternates.js.map
|
package/dist/alternates.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"alternates.js","sourceRoot":"","sources":["../src/alternates.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"alternates.js","sourceRoot":"","sources":["../src/alternates.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { type AggregateOfferNode, type AggregateRatingInput, type AggregateRatingNode, article, type ArticleAuthor, type ArticleAuthorNode, type ArticleInput, type ArticleNode, breadcrumbList, type BreadcrumbItem, type BreadcrumbListNode, type BreadcrumbPath, createSeo, event, type EventInput, type EventLocationInput, type EventNode, faqPage, type FaqItem, type FaqPageNode, type GeoCoordinatesNode, type GeoInput, type ImageObjectNode, type JsonLdNode, type ListItemNode, localBusiness, type LocalBusinessInput, type LocalBusinessNode, type OfferInput, type OfferNode, organization, type OrganizationInput, type OrganizationNode, person, type PersonInput, type PersonNode, type PlaceNode, type PostalAddressInput, type PostalAddressNode, type QuestionNode, type Seo, type SeoConfig, softwareApplication, type SoftwareApplicationInput, type SoftwareApplicationNode, type VirtualLocationNode, website, type WebsiteInput, type WebsiteNode, type WithContext, } from "./schema.js";
|
|
2
|
-
export { createMetadata, type MetadataSiteConfig, type PageMetadata, type PageMetadataInput, type RootMetadataInput, } from "./metadata.js";
|
|
1
|
+
export { type AggregateOfferNode, type AggregateRatingInput, type AggregateRatingNode, article, type ArticleAuthor, type ArticleAuthorNode, type ArticleInput, type ArticleNode, type ArticleType, breadcrumbList, type BreadcrumbItem, type BreadcrumbListNode, type BreadcrumbPath, createSeo, type DataDownloadInput, type DataDownloadNode, dataset, type DatasetInput, type DatasetNode, definedTerm, type DefinedTermInput, type DefinedTermNode, definedTermSet, type DefinedTermSetInput, type DefinedTermSetNode, event, type EventInput, type EventLocationInput, type EventNode, faqPage, type FaqItem, type FaqPageNode, type GeoCoordinatesNode, type GeoInput, type ImageObjectNode, type JsonLdNode, type ListItemNode, localBusiness, type LocalBusinessInput, type LocalBusinessNode, type OfferInput, type OfferNode, organization, type OrganizationInput, type OrganizationNode, person, type PersonInput, type PersonNode, type PlaceNode, type PostalAddressInput, type PostalAddressNode, type QuestionNode, type Seo, type SeoConfig, softwareApplication, type SoftwareApplicationInput, type SoftwareApplicationNode, type VirtualLocationNode, website, type WebsiteInput, type WebsiteNode, type WithContext, type WithExtra, } from "./schema.js";
|
|
2
|
+
export { createMetadata, type MetadataSiteConfig, ogImageMetadata, type OgImageMetadataInput, type PageMetadata, type PageMetadataInput, type RootMetadataInput, } from "./metadata.js";
|
|
3
3
|
export { createRobots, createSitemap, type RobotsConfig, type SitemapConfig, type SitemapLanguages, type SitemapRoute, } from "./routes.js";
|
|
4
4
|
export { hreflangAlternates, type HreflangAlternates, type HreflangConfig, type HreflangLink, } from "./alternates.js";
|
|
5
5
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EACN,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,OAAO,EACP,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,cAAc,EACd,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,SAAS,EACT,KAAK,EACL,KAAK,UAAU,EACf,KAAK,kBAAkB,EACvB,KAAK,SAAS,EACd,OAAO,EACP,KAAK,OAAO,EACZ,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,QAAQ,EACb,KAAK,eAAe,EACpB,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,aAAa,EACb,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,UAAU,EACf,KAAK,SAAS,EACd,YAAY,EACZ,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,MAAM,EACN,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,YAAY,EACjB,KAAK,GAAG,EACR,KAAK,SAAS,EACd,mBAAmB,EACnB,KAAK,wBAAwB,EAC7B,KAAK,uBAAuB,EAC5B,KAAK,mBAAmB,EACxB,OAAO,EACP,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,WAAW,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EACN,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,OAAO,EACP,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,cAAc,EACd,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,SAAS,EACT,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,OAAO,EACP,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,WAAW,EACX,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,cAAc,EACd,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,EACL,KAAK,UAAU,EACf,KAAK,kBAAkB,EACvB,KAAK,SAAS,EACd,OAAO,EACP,KAAK,OAAO,EACZ,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,QAAQ,EACb,KAAK,eAAe,EACpB,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,aAAa,EACb,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,UAAU,EACf,KAAK,SAAS,EACd,YAAY,EACZ,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,MAAM,EACN,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,YAAY,EACjB,KAAK,GAAG,EACR,KAAK,SAAS,EACd,mBAAmB,EACnB,KAAK,wBAAwB,EAC7B,KAAK,uBAAuB,EAC5B,KAAK,mBAAmB,EACxB,OAAO,EACP,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,SAAS,GACd,MAAM,aAAa,CAAC;AACrB,OAAO,EACN,cAAc,EACd,KAAK,kBAAkB,EACvB,eAAe,EACf,KAAK,oBAAoB,EACzB,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,GACtB,MAAM,eAAe,CAAC;AACvB,OAAO,EACN,YAAY,EACZ,aAAa,EACb,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,YAAY,GACjB,MAAM,aAAa,CAAC;AACrB,OAAO,EACN,kBAAkB,EAClB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,YAAY,GACjB,MAAM,iBAAiB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
// route handlers / sitemap.ts can import these without pulling in the renderer.
|
|
3
3
|
// The <JsonLd> and <HreflangLinks> components live at
|
|
4
4
|
// "@ingram-tech/nk-seo/components".
|
|
5
|
-
export { article, breadcrumbList, createSeo, event, faqPage, localBusiness, organization, person, softwareApplication, website, } from "./schema.js";
|
|
6
|
-
export { createMetadata, } from "./metadata.js";
|
|
5
|
+
export { article, breadcrumbList, createSeo, dataset, definedTerm, definedTermSet, event, faqPage, localBusiness, organization, person, softwareApplication, website, } from "./schema.js";
|
|
6
|
+
export { createMetadata, ogImageMetadata, } from "./metadata.js";
|
|
7
7
|
export { createRobots, createSitemap, } from "./routes.js";
|
|
8
8
|
export { hreflangAlternates, } from "./alternates.js";
|
|
9
9
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,gFAAgF;AAChF,sDAAsD;AACtD,oCAAoC;AACpC,OAAO,EAIN,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,gFAAgF;AAChF,sDAAsD;AACtD,oCAAoC;AACpC,OAAO,EAIN,OAAO,EAMP,cAAc,EAId,SAAS,EAGT,OAAO,EAGP,WAAW,EAGX,cAAc,EAGd,KAAK,EAIL,OAAO,EAQP,aAAa,EAKb,YAAY,EAGZ,MAAM,EASN,mBAAmB,EAInB,OAAO,GAKP,MAAM,aAAa,CAAC;AACrB,OAAO,EACN,cAAc,EAEd,eAAe,GAKf,MAAM,eAAe,CAAC;AACvB,OAAO,EACN,YAAY,EACZ,aAAa,GAKb,MAAM,aAAa,CAAC;AACrB,OAAO,EACN,kBAAkB,GAIlB,MAAM,iBAAiB,CAAC"}
|
package/dist/metadata.d.ts
CHANGED
|
@@ -16,7 +16,10 @@ export interface MetadataSiteConfig {
|
|
|
16
16
|
defaultImage?: string;
|
|
17
17
|
defaultImageWidth?: number;
|
|
18
18
|
defaultImageHeight?: number;
|
|
19
|
-
/**
|
|
19
|
+
/**
|
|
20
|
+
* Default OpenGraph locale, e.g. "en_US". On a multilingual site set the
|
|
21
|
+
* per-page `locale` instead (or as well, as the fallback).
|
|
22
|
+
*/
|
|
20
23
|
locale?: string;
|
|
21
24
|
/** Twitter `@handle` for `site`. */
|
|
22
25
|
twitterSite?: string;
|
|
@@ -34,6 +37,18 @@ export interface PageMetadataInput {
|
|
|
34
37
|
type?: "website" | "article";
|
|
35
38
|
keywords?: Metadata["keywords"];
|
|
36
39
|
noIndex?: boolean;
|
|
40
|
+
/**
|
|
41
|
+
* OpenGraph locale for this page, e.g. "fr_BE". Overrides `site.locale` —
|
|
42
|
+
* on a multilingual site `og:locale` has to vary per page.
|
|
43
|
+
*/
|
|
44
|
+
locale?: string;
|
|
45
|
+
/**
|
|
46
|
+
* Merged into the generated `alternates` (wins on conflict). The reason it
|
|
47
|
+
* exists: `alternates.languages` is per-page on a localized site, and
|
|
48
|
+
* spreading the result to bolt it on drops the rest of the object.
|
|
49
|
+
* `hreflangAlternates()` returns a ready-made `languages` map.
|
|
50
|
+
*/
|
|
51
|
+
alternates?: Partial<NonNullable<Metadata["alternates"]>>;
|
|
37
52
|
/** Merged into the generated `openGraph` (wins on conflict). */
|
|
38
53
|
openGraph?: Partial<NonNullable<Metadata["openGraph"]>>;
|
|
39
54
|
/** Merged into the generated `twitter` (wins on conflict). */
|
|
@@ -74,4 +89,43 @@ export declare function createMetadata(site: MetadataSiteConfig): {
|
|
|
74
89
|
root: (input?: RootMetadataInput) => Metadata;
|
|
75
90
|
};
|
|
76
91
|
export type PageMetadata = ReturnType<typeof createMetadata>;
|
|
92
|
+
/** Inputs for {@link ogImageMetadata}. */
|
|
93
|
+
export interface OgImageMetadataInput {
|
|
94
|
+
/** Absolute site origin, e.g. "https://acme.example". */
|
|
95
|
+
baseUrl: string;
|
|
96
|
+
/**
|
|
97
|
+
* Path of the image route — the route the `opengraph-image.tsx` file
|
|
98
|
+
* convention serves, e.g. "/opengraph-image" or "/en/opengraph-image" when
|
|
99
|
+
* the file sits under `app/[locale]/`.
|
|
100
|
+
*/
|
|
101
|
+
path: string;
|
|
102
|
+
alt: string;
|
|
103
|
+
/** Defaults to the 1200×630 the `/og` template renders. */
|
|
104
|
+
width?: number;
|
|
105
|
+
height?: number;
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Builds the `openGraph.images` entry for a card served by Next's
|
|
109
|
+
* `opengraph-image` file convention.
|
|
110
|
+
*
|
|
111
|
+
* Next attaches a file-convention image only to the segment that declares it,
|
|
112
|
+
* and a page's own `openGraph` object *replaces* the inherited one rather than
|
|
113
|
+
* merging into it — so any page returning `openGraph` from `generateMetadata`
|
|
114
|
+
* silently loses the card. Build the list once and spread it into every page.
|
|
115
|
+
*
|
|
116
|
+
* `createMetadata`'s `defaultImage` / per-page `image` already do this; reach
|
|
117
|
+
* for the standalone helper when you assemble `Metadata` by hand.
|
|
118
|
+
*
|
|
119
|
+
* @example
|
|
120
|
+
* const images = ogImageMetadata({
|
|
121
|
+
* baseUrl, path: `/${locale}/opengraph-image`, alt: "Acme",
|
|
122
|
+
* });
|
|
123
|
+
* return { title, openGraph: { title, url, images } };
|
|
124
|
+
*/
|
|
125
|
+
export declare function ogImageMetadata(input: OgImageMetadataInput): {
|
|
126
|
+
url: string;
|
|
127
|
+
width: number;
|
|
128
|
+
height: number;
|
|
129
|
+
alt: string;
|
|
130
|
+
}[];
|
|
77
131
|
//# sourceMappingURL=metadata.d.ts.map
|
package/dist/metadata.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../src/metadata.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAGrC;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAClC,wDAAwD;IACxD,OAAO,EAAE,MAAM,CAAC;IAChB,4BAA4B;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,0DAA0D;IAC1D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B
|
|
1
|
+
{"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../src/metadata.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAGrC;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAClC,wDAAwD;IACxD,OAAO,EAAE,MAAM,CAAC;IAChB,4BAA4B;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,0DAA0D;IAC1D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,oCAAoC;IACpC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uCAAuC;IACvC,cAAc,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,6DAA6D;AAC7D,MAAM,WAAW,iBAAiB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,sFAAsF;IACtF,IAAI,EAAE,MAAM,CAAC;IACb,oEAAoE;IACpE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAC7B,QAAQ,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;IAChC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAC1D,gEAAgE;IAChE,SAAS,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IACxD,8DAA8D;IAC9D,OAAO,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;CACpD;AAED,mEAAmE;AACnE,MAAM,WAAW,iBAAiB;IACjC,2EAA2E;IAC3E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4EAA4E;IAC5E,SAAS,CAAC,EAAE,QAAQ,CAAC;CACrB;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,kBAAkB;YAGzB,iBAAiB,GAAG,QAAQ;mBAgDR,iBAAiB,KAAQ,QAAQ;EAalF;AAED,MAAM,MAAM,YAAY,GAAG,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;AAE7D,0CAA0C;AAC1C,MAAM,WAAW,oBAAoB;IACpC,yDAAyD;IACzD,OAAO,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,2DAA2D;IAC3D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,oBAAoB;;;;;IAS1D"}
|
package/dist/metadata.js
CHANGED
|
@@ -27,12 +27,13 @@ export function createMetadata(site) {
|
|
|
27
27
|
const imagePath = input.image ?? site.defaultImage;
|
|
28
28
|
const imageUrl = imagePath ? absolute(imagePath) : undefined;
|
|
29
29
|
const url = absolute(input.path);
|
|
30
|
+
const locale = input.locale ?? site.locale;
|
|
30
31
|
return {
|
|
31
32
|
metadataBase: new URL(site.baseUrl),
|
|
32
33
|
title: input.title,
|
|
33
34
|
description: input.description,
|
|
34
35
|
...(input.keywords ? { keywords: input.keywords } : {}),
|
|
35
|
-
alternates: { canonical: url },
|
|
36
|
+
alternates: { canonical: url, ...input.alternates },
|
|
36
37
|
// noindex but follow: keep link equity flowing through the page. Use a
|
|
37
38
|
// full robots override in the page's own metadata for nofollow too.
|
|
38
39
|
...(input.noIndex ? { robots: { index: false, follow: true } } : {}),
|
|
@@ -42,7 +43,7 @@ export function createMetadata(site) {
|
|
|
42
43
|
type: input.type ?? "website",
|
|
43
44
|
url,
|
|
44
45
|
siteName: site.siteName,
|
|
45
|
-
...(
|
|
46
|
+
...(locale ? { locale } : {}),
|
|
46
47
|
...(imageUrl
|
|
47
48
|
? {
|
|
48
49
|
images: [
|
|
@@ -81,4 +82,32 @@ export function createMetadata(site) {
|
|
|
81
82
|
};
|
|
82
83
|
return pageMetadata;
|
|
83
84
|
}
|
|
85
|
+
/**
|
|
86
|
+
* Builds the `openGraph.images` entry for a card served by Next's
|
|
87
|
+
* `opengraph-image` file convention.
|
|
88
|
+
*
|
|
89
|
+
* Next attaches a file-convention image only to the segment that declares it,
|
|
90
|
+
* and a page's own `openGraph` object *replaces* the inherited one rather than
|
|
91
|
+
* merging into it — so any page returning `openGraph` from `generateMetadata`
|
|
92
|
+
* silently loses the card. Build the list once and spread it into every page.
|
|
93
|
+
*
|
|
94
|
+
* `createMetadata`'s `defaultImage` / per-page `image` already do this; reach
|
|
95
|
+
* for the standalone helper when you assemble `Metadata` by hand.
|
|
96
|
+
*
|
|
97
|
+
* @example
|
|
98
|
+
* const images = ogImageMetadata({
|
|
99
|
+
* baseUrl, path: `/${locale}/opengraph-image`, alt: "Acme",
|
|
100
|
+
* });
|
|
101
|
+
* return { title, openGraph: { title, url, images } };
|
|
102
|
+
*/
|
|
103
|
+
export function ogImageMetadata(input) {
|
|
104
|
+
return [
|
|
105
|
+
{
|
|
106
|
+
url: absoluteUrl(input.path, input.baseUrl),
|
|
107
|
+
width: input.width ?? 1200,
|
|
108
|
+
height: input.height ?? 630,
|
|
109
|
+
alt: input.alt,
|
|
110
|
+
},
|
|
111
|
+
];
|
|
112
|
+
}
|
|
84
113
|
//# sourceMappingURL=metadata.js.map
|
package/dist/metadata.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metadata.js","sourceRoot":"","sources":["../src/metadata.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"metadata.js","sourceRoot":"","sources":["../src/metadata.ts"],"names":[],"mappings":"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"}
|
package/dist/schema.d.ts
CHANGED
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
/** A loosely-typed schema.org node. The builders return more precise subtypes. */
|
|
2
2
|
export type JsonLdNode = Record<string, unknown>;
|
|
3
|
+
/**
|
|
4
|
+
* Escape hatch carried by every builder input: properties shallow-merged over
|
|
5
|
+
* the built payload (they win on conflict). schema.org is far larger than any
|
|
6
|
+
* builder surface, and without this one extra property — an `inLanguage`, an
|
|
7
|
+
* `about`, a `potentialAction` — forces the whole node back to a hand-written
|
|
8
|
+
* literal. Fields passed here are not reflected in the returned node type.
|
|
9
|
+
*/
|
|
10
|
+
export interface WithExtra {
|
|
11
|
+
extra?: JsonLdNode;
|
|
12
|
+
}
|
|
3
13
|
/** A top-level schema.org node: the payload plus its `@context`. */
|
|
4
14
|
export type WithContext<T> = T & {
|
|
5
15
|
"@context": "https://schema.org";
|
|
@@ -21,7 +31,7 @@ export type FaqPageNode = {
|
|
|
21
31
|
mainEntity: QuestionNode[];
|
|
22
32
|
};
|
|
23
33
|
/** FAQPage: marks up a list of question/answer pairs for FAQ rich results. */
|
|
24
|
-
export declare function faqPage(items: FaqItem[]): WithContext<FaqPageNode>;
|
|
34
|
+
export declare function faqPage(items: FaqItem[], extra?: JsonLdNode): WithContext<FaqPageNode>;
|
|
25
35
|
export interface BreadcrumbItem {
|
|
26
36
|
name: string;
|
|
27
37
|
/** Absolute URL of the crumb. */
|
|
@@ -38,8 +48,8 @@ export type BreadcrumbListNode = {
|
|
|
38
48
|
itemListElement: ListItemNode[];
|
|
39
49
|
};
|
|
40
50
|
/** BreadcrumbList: the trail of links Google shows in place of the raw URL. */
|
|
41
|
-
export declare function breadcrumbList(items: BreadcrumbItem[]): WithContext<BreadcrumbListNode>;
|
|
42
|
-
export interface OrganizationInput {
|
|
51
|
+
export declare function breadcrumbList(items: BreadcrumbItem[], extra?: JsonLdNode): WithContext<BreadcrumbListNode>;
|
|
52
|
+
export interface OrganizationInput extends WithExtra {
|
|
43
53
|
name: string;
|
|
44
54
|
/** Absolute URL of the organization's site. */
|
|
45
55
|
url?: string;
|
|
@@ -73,7 +83,7 @@ export type OrganizationNode = {
|
|
|
73
83
|
};
|
|
74
84
|
/** Organization: the entity behind the site (for the knowledge panel). */
|
|
75
85
|
export declare function organization(input: OrganizationInput): WithContext<OrganizationNode>;
|
|
76
|
-
export interface WebsiteInput {
|
|
86
|
+
export interface WebsiteInput extends WithExtra {
|
|
77
87
|
name: string;
|
|
78
88
|
/** Absolute URL of the site root. */
|
|
79
89
|
url: string;
|
|
@@ -111,7 +121,7 @@ export type AggregateOfferNode = {
|
|
|
111
121
|
offerCount?: string;
|
|
112
122
|
url?: string;
|
|
113
123
|
};
|
|
114
|
-
export interface SoftwareApplicationInput {
|
|
124
|
+
export interface SoftwareApplicationInput extends WithExtra {
|
|
115
125
|
name: string;
|
|
116
126
|
description?: string;
|
|
117
127
|
/** Absolute URL of the app/marketing page. */
|
|
@@ -133,17 +143,22 @@ export type SoftwareApplicationNode = {
|
|
|
133
143
|
};
|
|
134
144
|
/** SoftwareApplication: marks a product page as an app for rich results. */
|
|
135
145
|
export declare function softwareApplication(input: SoftwareApplicationInput): WithContext<SoftwareApplicationNode>;
|
|
146
|
+
/**
|
|
147
|
+
* schema.org Article subtypes worth marking up. `TechArticle` is the right node
|
|
148
|
+
* for API/developer docs (`proficiencyLevel`/`dependencies` via `extra`).
|
|
149
|
+
*/
|
|
150
|
+
export type ArticleType = "Article" | "BlogPosting" | "NewsArticle" | "ScholarlyArticle" | "TechArticle" | "Report";
|
|
136
151
|
export interface ArticleAuthor {
|
|
137
152
|
name: string;
|
|
138
153
|
/** Absolute URL of the author's profile/page. */
|
|
139
154
|
url?: string;
|
|
140
155
|
}
|
|
141
|
-
export interface ArticleInput {
|
|
156
|
+
export interface ArticleInput extends WithExtra {
|
|
142
157
|
headline: string;
|
|
143
158
|
/** Absolute canonical URL of the article. */
|
|
144
159
|
url: string;
|
|
145
160
|
description?: string;
|
|
146
|
-
type?:
|
|
161
|
+
type?: ArticleType;
|
|
147
162
|
datePublished?: string;
|
|
148
163
|
/** Defaults to `datePublished` when omitted. */
|
|
149
164
|
dateModified?: string;
|
|
@@ -159,7 +174,7 @@ export type ArticleAuthorNode = {
|
|
|
159
174
|
url?: string;
|
|
160
175
|
};
|
|
161
176
|
export type ArticleNode = {
|
|
162
|
-
"@type":
|
|
177
|
+
"@type": ArticleType;
|
|
163
178
|
headline: string;
|
|
164
179
|
url: string;
|
|
165
180
|
mainEntityOfPage: string;
|
|
@@ -171,9 +186,9 @@ export type ArticleNode = {
|
|
|
171
186
|
image?: string;
|
|
172
187
|
keywords?: string[];
|
|
173
188
|
};
|
|
174
|
-
/** Article (or
|
|
189
|
+
/** Article (or one of its {@link ArticleType} subtypes) for editorial pages. */
|
|
175
190
|
export declare function article(input: ArticleInput): WithContext<ArticleNode>;
|
|
176
|
-
export interface PersonInput {
|
|
191
|
+
export interface PersonInput extends WithExtra {
|
|
177
192
|
name: string;
|
|
178
193
|
/** Absolute URL of the person's page/profile. */
|
|
179
194
|
url?: string;
|
|
@@ -222,7 +237,7 @@ export interface AggregateRatingInput {
|
|
|
222
237
|
ratingValue: string | number;
|
|
223
238
|
reviewCount: string | number;
|
|
224
239
|
}
|
|
225
|
-
export interface LocalBusinessInput {
|
|
240
|
+
export interface LocalBusinessInput extends WithExtra {
|
|
226
241
|
name: string;
|
|
227
242
|
/** Absolute URL of the business site. */
|
|
228
243
|
url?: string;
|
|
@@ -284,7 +299,7 @@ export interface EventLocationInput {
|
|
|
284
299
|
/** Set true for a fully virtual event (emits VirtualLocation). */
|
|
285
300
|
online?: boolean;
|
|
286
301
|
}
|
|
287
|
-
export interface EventInput {
|
|
302
|
+
export interface EventInput extends WithExtra {
|
|
288
303
|
name: string;
|
|
289
304
|
/** ISO 8601 start, e.g. "2026-09-30" or "2026-09-30T09:00:00+02:00". */
|
|
290
305
|
startDate: string;
|
|
@@ -328,6 +343,103 @@ export type EventNode = {
|
|
|
328
343
|
};
|
|
329
344
|
/** Event: a scheduled happening (summit, workshop, conference) for event rich results. */
|
|
330
345
|
export declare function event(input: EventInput): WithContext<EventNode>;
|
|
346
|
+
export interface DataDownloadInput {
|
|
347
|
+
/** Absolute URL of the file/endpoint. */
|
|
348
|
+
contentUrl: string;
|
|
349
|
+
/** IANA media type or a format name, e.g. "text/csv", "application/json". */
|
|
350
|
+
encodingFormat?: string;
|
|
351
|
+
name?: string;
|
|
352
|
+
}
|
|
353
|
+
export interface DatasetInput extends WithExtra {
|
|
354
|
+
name: string;
|
|
355
|
+
description: string;
|
|
356
|
+
/** Absolute URL of the dataset's landing page. */
|
|
357
|
+
url?: string;
|
|
358
|
+
/** Stable identifier(s): DOI, URI, registry code. */
|
|
359
|
+
identifier?: string | string[];
|
|
360
|
+
/** License URL, e.g. "https://creativecommons.org/licenses/by/4.0/". */
|
|
361
|
+
license?: string;
|
|
362
|
+
keywords?: string[];
|
|
363
|
+
/** BCP 47 language tag(s) of the dataset's contents. */
|
|
364
|
+
inLanguage?: string | string[];
|
|
365
|
+
/** ISO 8601 interval, e.g. "2008-01-01/2025-12-31". */
|
|
366
|
+
temporalCoverage?: string;
|
|
367
|
+
/** Place name or ISO country code the data covers. */
|
|
368
|
+
spatialCoverage?: string;
|
|
369
|
+
dateModified?: string;
|
|
370
|
+
/** Downloadable distributions of the data. */
|
|
371
|
+
distribution?: DataDownloadInput[];
|
|
372
|
+
/** Google shows a free-access badge; omit rather than guess. */
|
|
373
|
+
isAccessibleForFree?: boolean;
|
|
374
|
+
creator?: OrganizationInput;
|
|
375
|
+
publisher?: OrganizationInput;
|
|
376
|
+
}
|
|
377
|
+
export type DataDownloadNode = {
|
|
378
|
+
"@type": "DataDownload";
|
|
379
|
+
contentUrl: string;
|
|
380
|
+
encodingFormat?: string;
|
|
381
|
+
name?: string;
|
|
382
|
+
};
|
|
383
|
+
export type DatasetNode = {
|
|
384
|
+
"@type": "Dataset";
|
|
385
|
+
name: string;
|
|
386
|
+
description: string;
|
|
387
|
+
url?: string;
|
|
388
|
+
identifier?: string | string[];
|
|
389
|
+
license?: string;
|
|
390
|
+
keywords?: string[];
|
|
391
|
+
inLanguage?: string | string[];
|
|
392
|
+
temporalCoverage?: string;
|
|
393
|
+
spatialCoverage?: string;
|
|
394
|
+
dateModified?: string;
|
|
395
|
+
distribution?: DataDownloadNode[];
|
|
396
|
+
isAccessibleForFree?: boolean;
|
|
397
|
+
creator?: OrganizationNode;
|
|
398
|
+
publisher?: OrganizationNode;
|
|
399
|
+
};
|
|
400
|
+
/** Dataset: a published data collection, for Google's dataset search. */
|
|
401
|
+
export declare function dataset(input: DatasetInput): WithContext<DatasetNode>;
|
|
402
|
+
export interface DefinedTermSetInput extends WithExtra {
|
|
403
|
+
name: string;
|
|
404
|
+
/** Absolute URL of the set's landing page. */
|
|
405
|
+
url?: string;
|
|
406
|
+
description?: string;
|
|
407
|
+
/** Version/edition of the vocabulary, e.g. "2025". */
|
|
408
|
+
version?: string;
|
|
409
|
+
inLanguage?: string | string[];
|
|
410
|
+
}
|
|
411
|
+
export type DefinedTermSetNode = {
|
|
412
|
+
"@type": "DefinedTermSet";
|
|
413
|
+
name: string;
|
|
414
|
+
url?: string;
|
|
415
|
+
description?: string;
|
|
416
|
+
version?: string;
|
|
417
|
+
inLanguage?: string | string[];
|
|
418
|
+
};
|
|
419
|
+
/** DefinedTermSet: the vocabulary/classification a term belongs to. */
|
|
420
|
+
export declare function definedTermSet(input: DefinedTermSetInput): WithContext<DefinedTermSetNode>;
|
|
421
|
+
export interface DefinedTermInput extends WithExtra {
|
|
422
|
+
name: string;
|
|
423
|
+
description?: string;
|
|
424
|
+
/** Absolute URL of the term's own page. */
|
|
425
|
+
url?: string;
|
|
426
|
+
/** The code identifying the term inside its set, e.g. "62.01". */
|
|
427
|
+
termCode?: string;
|
|
428
|
+
inLanguage?: string | string[];
|
|
429
|
+
/** The vocabulary this term belongs to — its absolute URL, or a full set. */
|
|
430
|
+
inDefinedTermSet?: string | DefinedTermSetInput;
|
|
431
|
+
}
|
|
432
|
+
export type DefinedTermNode = {
|
|
433
|
+
"@type": "DefinedTerm";
|
|
434
|
+
name: string;
|
|
435
|
+
description?: string;
|
|
436
|
+
url?: string;
|
|
437
|
+
termCode?: string;
|
|
438
|
+
inLanguage?: string | string[];
|
|
439
|
+
inDefinedTermSet?: string | DefinedTermSetNode;
|
|
440
|
+
};
|
|
441
|
+
/** DefinedTerm: one entry of a controlled vocabulary or classification. */
|
|
442
|
+
export declare function definedTerm(input: DefinedTermInput): WithContext<DefinedTermNode>;
|
|
331
443
|
export interface SeoConfig {
|
|
332
444
|
/** Absolute site origin, e.g. "https://acme.example". */
|
|
333
445
|
baseUrl: string;
|
|
@@ -374,6 +486,18 @@ export declare function createSeo(config: SeoConfig): {
|
|
|
374
486
|
image?: string;
|
|
375
487
|
publisher?: OrganizationInput;
|
|
376
488
|
}): WithContext<ArticleNode>;
|
|
489
|
+
/** Dataset; `path` is resolved and the configured org becomes publisher. */
|
|
490
|
+
dataset(input: Omit<DatasetInput, "url" | "publisher"> & {
|
|
491
|
+
path?: string;
|
|
492
|
+
publisher?: OrganizationInput;
|
|
493
|
+
}): WithContext<DatasetNode>;
|
|
494
|
+
/** DefinedTerm; `path` and the term set's `path` are resolved. */
|
|
495
|
+
definedTerm(input: Omit<DefinedTermInput, "url" | "inDefinedTermSet"> & {
|
|
496
|
+
path?: string;
|
|
497
|
+
inDefinedTermSet?: string | (Omit<DefinedTermSetInput, "url"> & {
|
|
498
|
+
path?: string;
|
|
499
|
+
});
|
|
500
|
+
}): WithContext<DefinedTermNode>;
|
|
377
501
|
};
|
|
378
502
|
export type Seo = ReturnType<typeof createSeo>;
|
|
379
503
|
//# sourceMappingURL=schema.d.ts.map
|
package/dist/schema.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
|
package/dist/schema.js
CHANGED
|
@@ -11,7 +11,7 @@ import { absoluteUrl } from "./url.js";
|
|
|
11
11
|
*/
|
|
12
12
|
const CONTEXT = "https://schema.org";
|
|
13
13
|
/** FAQPage: marks up a list of question/answer pairs for FAQ rich results. */
|
|
14
|
-
export function faqPage(items) {
|
|
14
|
+
export function faqPage(items, extra) {
|
|
15
15
|
return {
|
|
16
16
|
"@context": CONTEXT,
|
|
17
17
|
"@type": "FAQPage",
|
|
@@ -20,10 +20,11 @@ export function faqPage(items) {
|
|
|
20
20
|
name: item.question,
|
|
21
21
|
acceptedAnswer: { "@type": "Answer", text: item.answer },
|
|
22
22
|
})),
|
|
23
|
+
...extra,
|
|
23
24
|
};
|
|
24
25
|
}
|
|
25
26
|
/** BreadcrumbList: the trail of links Google shows in place of the raw URL. */
|
|
26
|
-
export function breadcrumbList(items) {
|
|
27
|
+
export function breadcrumbList(items, extra) {
|
|
27
28
|
return {
|
|
28
29
|
"@context": CONTEXT,
|
|
29
30
|
"@type": "BreadcrumbList",
|
|
@@ -33,6 +34,7 @@ export function breadcrumbList(items) {
|
|
|
33
34
|
name: item.name,
|
|
34
35
|
item: item.url,
|
|
35
36
|
})),
|
|
37
|
+
...extra,
|
|
36
38
|
};
|
|
37
39
|
}
|
|
38
40
|
/** Organization node without `@context`, for embedding as publisher/provider. */
|
|
@@ -49,6 +51,7 @@ function organizationNode(input) {
|
|
|
49
51
|
? { address: { "@type": "PostalAddress", ...input.address } }
|
|
50
52
|
: {}),
|
|
51
53
|
...(input.sameAs?.length ? { sameAs: input.sameAs } : {}),
|
|
54
|
+
...input.extra,
|
|
52
55
|
};
|
|
53
56
|
}
|
|
54
57
|
/** Organization: the entity behind the site (for the knowledge panel). */
|
|
@@ -63,6 +66,7 @@ export function website(input) {
|
|
|
63
66
|
name: input.name,
|
|
64
67
|
url: input.url,
|
|
65
68
|
...(input.publisher ? { publisher: organizationNode(input.publisher) } : {}),
|
|
69
|
+
...input.extra,
|
|
66
70
|
};
|
|
67
71
|
}
|
|
68
72
|
function offerNode(offer) {
|
|
@@ -103,9 +107,10 @@ export function softwareApplication(input) {
|
|
|
103
107
|
...(input.url ? { url: input.url } : {}),
|
|
104
108
|
...(input.description ? { description: input.description } : {}),
|
|
105
109
|
...(input.offers ? { offers: offerNode(input.offers) } : {}),
|
|
110
|
+
...input.extra,
|
|
106
111
|
};
|
|
107
112
|
}
|
|
108
|
-
/** Article (or
|
|
113
|
+
/** Article (or one of its {@link ArticleType} subtypes) for editorial pages. */
|
|
109
114
|
export function article(input) {
|
|
110
115
|
const dateModified = input.dateModified ?? input.datePublished;
|
|
111
116
|
return {
|
|
@@ -129,6 +134,7 @@ export function article(input) {
|
|
|
129
134
|
...(dateModified ? { dateModified } : {}),
|
|
130
135
|
...(input.image ? { image: input.image } : {}),
|
|
131
136
|
...(input.keywords?.length ? { keywords: input.keywords } : {}),
|
|
137
|
+
...input.extra,
|
|
132
138
|
};
|
|
133
139
|
}
|
|
134
140
|
/** Person: identifies an individual as an entity (portfolio, team, author bios). */
|
|
@@ -152,6 +158,7 @@ export function person(input) {
|
|
|
152
158
|
...(input.homeLocation
|
|
153
159
|
? { homeLocation: { "@type": "Place", name: input.homeLocation } }
|
|
154
160
|
: {}),
|
|
161
|
+
...input.extra,
|
|
155
162
|
};
|
|
156
163
|
}
|
|
157
164
|
/** LocalBusiness (or a subtype): a physical business for local/maps SEO. */
|
|
@@ -193,6 +200,7 @@ export function localBusiness(input) {
|
|
|
193
200
|
}
|
|
194
201
|
: {}),
|
|
195
202
|
...(input.sameAs?.length ? { sameAs: input.sameAs } : {}),
|
|
203
|
+
...input.extra,
|
|
196
204
|
};
|
|
197
205
|
}
|
|
198
206
|
const ATTENDANCE_MODE = {
|
|
@@ -234,6 +242,77 @@ export function event(input) {
|
|
|
234
242
|
...(input.location ? { location: eventLocationNode(input.location) } : {}),
|
|
235
243
|
...(input.organizer ? { organizer: organizationNode(input.organizer) } : {}),
|
|
236
244
|
...(input.offers ? { offers: offerNode(input.offers) } : {}),
|
|
245
|
+
...input.extra,
|
|
246
|
+
};
|
|
247
|
+
}
|
|
248
|
+
/** Dataset: a published data collection, for Google's dataset search. */
|
|
249
|
+
export function dataset(input) {
|
|
250
|
+
return {
|
|
251
|
+
"@context": CONTEXT,
|
|
252
|
+
"@type": "Dataset",
|
|
253
|
+
name: input.name,
|
|
254
|
+
description: input.description,
|
|
255
|
+
...(input.url ? { url: input.url } : {}),
|
|
256
|
+
...(input.identifier ? { identifier: input.identifier } : {}),
|
|
257
|
+
...(input.license ? { license: input.license } : {}),
|
|
258
|
+
...(input.keywords?.length ? { keywords: input.keywords } : {}),
|
|
259
|
+
...(input.inLanguage ? { inLanguage: input.inLanguage } : {}),
|
|
260
|
+
...(input.temporalCoverage ? { temporalCoverage: input.temporalCoverage } : {}),
|
|
261
|
+
...(input.spatialCoverage ? { spatialCoverage: input.spatialCoverage } : {}),
|
|
262
|
+
...(input.dateModified ? { dateModified: input.dateModified } : {}),
|
|
263
|
+
...(input.distribution?.length
|
|
264
|
+
? {
|
|
265
|
+
distribution: input.distribution.map((item) => ({
|
|
266
|
+
"@type": "DataDownload",
|
|
267
|
+
contentUrl: item.contentUrl,
|
|
268
|
+
...(item.encodingFormat
|
|
269
|
+
? { encodingFormat: item.encodingFormat }
|
|
270
|
+
: {}),
|
|
271
|
+
...(item.name ? { name: item.name } : {}),
|
|
272
|
+
})),
|
|
273
|
+
}
|
|
274
|
+
: {}),
|
|
275
|
+
...(input.isAccessibleForFree !== undefined
|
|
276
|
+
? { isAccessibleForFree: input.isAccessibleForFree }
|
|
277
|
+
: {}),
|
|
278
|
+
...(input.creator ? { creator: organizationNode(input.creator) } : {}),
|
|
279
|
+
...(input.publisher ? { publisher: organizationNode(input.publisher) } : {}),
|
|
280
|
+
...input.extra,
|
|
281
|
+
};
|
|
282
|
+
}
|
|
283
|
+
/** DefinedTermSet node without `@context`, for embedding as inDefinedTermSet. */
|
|
284
|
+
function definedTermSetNode(input) {
|
|
285
|
+
return {
|
|
286
|
+
"@type": "DefinedTermSet",
|
|
287
|
+
name: input.name,
|
|
288
|
+
...(input.url ? { url: input.url } : {}),
|
|
289
|
+
...(input.description ? { description: input.description } : {}),
|
|
290
|
+
...(input.version ? { version: input.version } : {}),
|
|
291
|
+
...(input.inLanguage ? { inLanguage: input.inLanguage } : {}),
|
|
292
|
+
...input.extra,
|
|
293
|
+
};
|
|
294
|
+
}
|
|
295
|
+
/** DefinedTermSet: the vocabulary/classification a term belongs to. */
|
|
296
|
+
export function definedTermSet(input) {
|
|
297
|
+
return { "@context": CONTEXT, ...definedTermSetNode(input) };
|
|
298
|
+
}
|
|
299
|
+
/** DefinedTerm: one entry of a controlled vocabulary or classification. */
|
|
300
|
+
export function definedTerm(input) {
|
|
301
|
+
const set = typeof input.inDefinedTermSet === "string"
|
|
302
|
+
? input.inDefinedTermSet
|
|
303
|
+
: input.inDefinedTermSet
|
|
304
|
+
? definedTermSetNode(input.inDefinedTermSet)
|
|
305
|
+
: undefined;
|
|
306
|
+
return {
|
|
307
|
+
"@context": CONTEXT,
|
|
308
|
+
"@type": "DefinedTerm",
|
|
309
|
+
name: input.name,
|
|
310
|
+
...(input.description ? { description: input.description } : {}),
|
|
311
|
+
...(input.url ? { url: input.url } : {}),
|
|
312
|
+
...(input.termCode ? { termCode: input.termCode } : {}),
|
|
313
|
+
...(input.inLanguage ? { inLanguage: input.inLanguage } : {}),
|
|
314
|
+
...(set ? { inDefinedTermSet: set } : {}),
|
|
315
|
+
...input.extra,
|
|
237
316
|
};
|
|
238
317
|
}
|
|
239
318
|
/**
|
|
@@ -308,6 +387,35 @@ export function createSeo(config) {
|
|
|
308
387
|
: {}),
|
|
309
388
|
});
|
|
310
389
|
},
|
|
390
|
+
/** Dataset; `path` is resolved and the configured org becomes publisher. */
|
|
391
|
+
dataset(input) {
|
|
392
|
+
const { path, publisher, ...rest } = input;
|
|
393
|
+
const resolvedPublisher = publisher ?? config.organization;
|
|
394
|
+
return dataset({
|
|
395
|
+
...rest,
|
|
396
|
+
...(path ? { url: absolute(path) } : {}),
|
|
397
|
+
...(resolvedPublisher
|
|
398
|
+
? { publisher: resolveOrg(resolvedPublisher) }
|
|
399
|
+
: {}),
|
|
400
|
+
});
|
|
401
|
+
},
|
|
402
|
+
/** DefinedTerm; `path` and the term set's `path` are resolved. */
|
|
403
|
+
definedTerm(input) {
|
|
404
|
+
const { path, inDefinedTermSet, ...rest } = input;
|
|
405
|
+
let set;
|
|
406
|
+
if (typeof inDefinedTermSet === "string") {
|
|
407
|
+
set = absolute(inDefinedTermSet);
|
|
408
|
+
}
|
|
409
|
+
else if (inDefinedTermSet) {
|
|
410
|
+
const { path: setPath, ...setRest } = inDefinedTermSet;
|
|
411
|
+
set = { ...setRest, ...(setPath ? { url: absolute(setPath) } : {}) };
|
|
412
|
+
}
|
|
413
|
+
return definedTerm({
|
|
414
|
+
...rest,
|
|
415
|
+
...(path ? { url: absolute(path) } : {}),
|
|
416
|
+
...(set ? { inDefinedTermSet: set } : {}),
|
|
417
|
+
});
|
|
418
|
+
},
|
|
311
419
|
};
|
|
312
420
|
}
|
|
313
421
|
//# sourceMappingURL=schema.js.map
|
package/dist/schema.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ingram-tech/nk-seo",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.7.0",
|
|
4
4
|
"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.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -31,16 +31,16 @@
|
|
|
31
31
|
}
|
|
32
32
|
},
|
|
33
33
|
"scripts": {
|
|
34
|
-
"build": "tsc -p tsconfig.json",
|
|
34
|
+
"build": "tsc -p tsconfig.build.json",
|
|
35
35
|
"type-check": "tsc -p tsconfig.json --noEmit",
|
|
36
36
|
"test": "vitest run"
|
|
37
37
|
},
|
|
38
38
|
"devDependencies": {
|
|
39
|
-
"@ingram-tech/nk-dev": "0.
|
|
40
|
-
"@types/node": "^26.1.
|
|
41
|
-
"@types/react": "^19.2.
|
|
42
|
-
"next": "^16.2.
|
|
43
|
-
"react": "^19.2.
|
|
39
|
+
"@ingram-tech/nk-dev": "0.10.0",
|
|
40
|
+
"@types/node": "^26.1.2",
|
|
41
|
+
"@types/react": "^19.2.18",
|
|
42
|
+
"next": "^16.2.12",
|
|
43
|
+
"react": "^19.2.8",
|
|
44
44
|
"typescript": "^7.0.2",
|
|
45
45
|
"vitest": "^4.1.10"
|
|
46
46
|
},
|