@unhead/schema-org 2.0.19 → 2.1.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/chunks/index.mjs +23 -0
- package/dist/chunks/index10.mjs +63 -0
- package/dist/chunks/index11.mjs +35 -0
- package/dist/chunks/index12.mjs +48 -0
- package/dist/chunks/index13.mjs +36 -0
- package/dist/chunks/index14.mjs +25 -0
- package/dist/chunks/index15.mjs +37 -0
- package/dist/chunks/index16.mjs +27 -0
- package/dist/chunks/index17.mjs +34 -0
- package/dist/chunks/index18.mjs +32 -0
- package/dist/chunks/index19.mjs +31 -0
- package/dist/chunks/index2.mjs +12 -0
- package/dist/chunks/index20.mjs +31 -0
- package/dist/chunks/index21.mjs +30 -0
- package/dist/chunks/index22.mjs +30 -0
- package/dist/chunks/index23.mjs +82 -0
- package/dist/chunks/index24.mjs +14 -0
- package/dist/chunks/index25.mjs +33 -0
- package/dist/chunks/index26.mjs +31 -0
- package/dist/chunks/index27.mjs +29 -0
- package/dist/chunks/index28.mjs +12 -0
- package/dist/chunks/index29.mjs +46 -0
- package/dist/chunks/index3.mjs +317 -0
- package/dist/chunks/index30.mjs +53 -0
- package/dist/chunks/index31.mjs +41 -0
- package/dist/chunks/index32.mjs +26 -0
- package/dist/chunks/index33.mjs +47 -0
- package/dist/chunks/index34.mjs +29 -0
- package/dist/chunks/index35.mjs +34 -0
- package/dist/chunks/index36.mjs +33 -0
- package/dist/chunks/index37.mjs +34 -0
- package/dist/chunks/index38.mjs +51 -0
- package/dist/chunks/index39.mjs +17 -0
- package/dist/chunks/index4.mjs +54 -0
- package/dist/chunks/index40.mjs +29 -0
- package/dist/chunks/index5.mjs +31 -0
- package/dist/chunks/index6.mjs +29 -0
- package/dist/chunks/index7.mjs +35 -0
- package/dist/chunks/index8.mjs +18 -0
- package/dist/chunks/index9.mjs +20 -0
- package/dist/index.d.mts +6 -11
- package/dist/index.d.ts +6 -11
- package/dist/index.mjs +43 -3
- package/dist/react.d.mts +3 -3
- package/dist/react.d.ts +3 -3
- package/dist/react.mjs +3 -5
- package/dist/shared/schema-org.40UJYB57.mjs +19 -0
- package/dist/shared/{schema-org.B3f2mYF6.d.ts → schema-org.BR4WcSqZ.d.ts} +3 -3
- package/dist/shared/schema-org.CAKsqzbX.d.ts +1022 -0
- package/dist/shared/{schema-org.D5CDiwX5.d.ts → schema-org.CFcsqFfN.d.mts} +215 -15
- package/dist/shared/{schema-org.D5CDiwX5.d.mts → schema-org.CFcsqFfN.d.ts} +215 -15
- package/dist/shared/{schema-org.q010LqYD.mjs → schema-org.CHbRCiep.mjs} +12 -0
- package/dist/shared/schema-org.Cp6bpwL2.mjs +875 -0
- package/dist/shared/schema-org.Dg61qWpa.mjs +27 -0
- package/dist/shared/schema-org.UT1u1UYq.d.mts +1022 -0
- package/dist/shared/{schema-org.jGJJYnRv.d.mts → schema-org.oFHFm6my.d.mts} +3 -3
- package/dist/solid-js.d.mts +3 -3
- package/dist/solid-js.d.ts +3 -3
- package/dist/solid-js.mjs +3 -5
- package/dist/svelte.d.mts +3 -3
- package/dist/svelte.d.ts +3 -3
- package/dist/svelte.mjs +3 -5
- package/dist/vue.d.mts +3 -3
- package/dist/vue.d.ts +3 -3
- package/dist/vue.mjs +6 -7
- package/package.json +12 -14
- package/dist/shared/schema-org.B8mOT8YC.d.ts +0 -44
- package/dist/shared/schema-org.CWjoIjIr.d.mts +0 -44
- package/dist/shared/schema-org.DoKdjnca.mjs +0 -1690
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { d as defineSchemaOrgResolver, e as resolveRelation, a8 as resolvableDateToIso } from '../shared/schema-org.Cp6bpwL2.mjs';
|
|
2
|
+
import { aggregateRatingResolver } from './index2.mjs';
|
|
3
|
+
import { p as personResolver } from './index3.mjs';
|
|
4
|
+
import 'unhead/plugins';
|
|
5
|
+
import 'unhead/utils';
|
|
6
|
+
import 'ufo';
|
|
7
|
+
import './index16.mjs';
|
|
8
|
+
import './index28.mjs';
|
|
9
|
+
import './index40.mjs';
|
|
10
|
+
import './index39.mjs';
|
|
11
|
+
|
|
12
|
+
const podcastSeriesResolver = defineSchemaOrgResolver({
|
|
13
|
+
defaults: {
|
|
14
|
+
"@type": "PodcastSeries"
|
|
15
|
+
},
|
|
16
|
+
resolve(node, ctx) {
|
|
17
|
+
node.author = resolveRelation(node.author, ctx, personResolver);
|
|
18
|
+
node.aggregateRating = resolveRelation(node.aggregateRating, ctx, aggregateRatingResolver);
|
|
19
|
+
if (node.datePublished)
|
|
20
|
+
node.datePublished = resolvableDateToIso(node.datePublished);
|
|
21
|
+
if (node.startDate)
|
|
22
|
+
node.startDate = resolvableDateToIso(node.startDate);
|
|
23
|
+
if (node.endDate)
|
|
24
|
+
node.endDate = resolvableDateToIso(node.endDate);
|
|
25
|
+
return node;
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
export { podcastSeriesResolver };
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { d as defineSchemaOrgResolver } from '../shared/schema-org.Cp6bpwL2.mjs';
|
|
2
|
+
import 'unhead/plugins';
|
|
3
|
+
import 'unhead/utils';
|
|
4
|
+
import 'ufo';
|
|
5
|
+
|
|
6
|
+
const addressResolver = defineSchemaOrgResolver({
|
|
7
|
+
defaults: {
|
|
8
|
+
"@type": "PostalAddress"
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
|
|
12
|
+
export { addressResolver };
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { d as defineSchemaOrgResolver, a9 as IdentityId, a6 as setIfEmpty, a7 as idReference, e as resolveRelation } from '../shared/schema-org.Cp6bpwL2.mjs';
|
|
2
|
+
import { aggregateOfferResolver } from './index.mjs';
|
|
3
|
+
import { aggregateRatingResolver } from './index2.mjs';
|
|
4
|
+
import { offerResolver } from './index23.mjs';
|
|
5
|
+
import { reviewResolver } from './index32.mjs';
|
|
6
|
+
import { d as PrimaryWebPageId } from './index3.mjs';
|
|
7
|
+
import 'unhead/plugins';
|
|
8
|
+
import 'unhead/utils';
|
|
9
|
+
import 'ufo';
|
|
10
|
+
import '../shared/schema-org.Dg61qWpa.mjs';
|
|
11
|
+
import '../shared/schema-org.40UJYB57.mjs';
|
|
12
|
+
import './index16.mjs';
|
|
13
|
+
import './index28.mjs';
|
|
14
|
+
import './index40.mjs';
|
|
15
|
+
import './index39.mjs';
|
|
16
|
+
|
|
17
|
+
const ProductId = "#product";
|
|
18
|
+
const productResolver = defineSchemaOrgResolver({
|
|
19
|
+
defaults: {
|
|
20
|
+
"@type": "Product"
|
|
21
|
+
},
|
|
22
|
+
inheritMeta: [
|
|
23
|
+
"description",
|
|
24
|
+
"image",
|
|
25
|
+
{ meta: "title", key: "name" }
|
|
26
|
+
],
|
|
27
|
+
idPrefix: ["url", ProductId],
|
|
28
|
+
resolve(node, ctx) {
|
|
29
|
+
node.aggregateOffer = resolveRelation(node.aggregateOffer, ctx, aggregateOfferResolver);
|
|
30
|
+
node.aggregateRating = resolveRelation(node.aggregateRating, ctx, aggregateRatingResolver);
|
|
31
|
+
node.offers = resolveRelation(node.offers, ctx, offerResolver);
|
|
32
|
+
node.review = resolveRelation(node.review, ctx, reviewResolver);
|
|
33
|
+
return node;
|
|
34
|
+
},
|
|
35
|
+
resolveRootNode(product, { find }) {
|
|
36
|
+
const webPage = find(PrimaryWebPageId);
|
|
37
|
+
const identity = find(IdentityId);
|
|
38
|
+
if (identity)
|
|
39
|
+
setIfEmpty(product, "brand", idReference(identity));
|
|
40
|
+
if (webPage)
|
|
41
|
+
setIfEmpty(product, "mainEntityOfPage", idReference(webPage));
|
|
42
|
+
return product;
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
|
|
46
|
+
export { ProductId, productResolver };
|
|
@@ -0,0 +1,317 @@
|
|
|
1
|
+
import { d as defineSchemaOrgResolver, a6 as setIfEmpty, a7 as idReference, e as resolveRelation, af as resolveAsGraphKey, a9 as IdentityId, a8 as resolvableDateToIso, ag as prefixId, a5 as imageResolver, aa as resolveDefaultType, ad as resolveWithBase, ac as asArray, ah as trimLength } from '../shared/schema-org.Cp6bpwL2.mjs';
|
|
2
|
+
import { withoutTrailingSlash } from 'ufo';
|
|
3
|
+
import { listItemResolver } from './index16.mjs';
|
|
4
|
+
import { addressResolver } from './index28.mjs';
|
|
5
|
+
import { searchActionResolver } from './index40.mjs';
|
|
6
|
+
import { readActionResolver } from './index39.mjs';
|
|
7
|
+
|
|
8
|
+
const PrimaryBreadcrumbId = "#breadcrumb";
|
|
9
|
+
const breadcrumbResolver = defineSchemaOrgResolver({
|
|
10
|
+
defaults: {
|
|
11
|
+
"@type": "BreadcrumbList"
|
|
12
|
+
},
|
|
13
|
+
idPrefix: ["url", PrimaryBreadcrumbId],
|
|
14
|
+
resolve(breadcrumb, ctx) {
|
|
15
|
+
if (breadcrumb.itemListElement) {
|
|
16
|
+
let index = 1;
|
|
17
|
+
breadcrumb.itemListElement = resolveRelation(breadcrumb.itemListElement, ctx, listItemResolver, {
|
|
18
|
+
array: true,
|
|
19
|
+
afterResolve(node) {
|
|
20
|
+
setIfEmpty(node, "position", index++);
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
return breadcrumb;
|
|
25
|
+
},
|
|
26
|
+
resolveRootNode(node, { find }) {
|
|
27
|
+
const webPage = find(PrimaryWebPageId);
|
|
28
|
+
if (webPage)
|
|
29
|
+
setIfEmpty(webPage, "breadcrumb", idReference(node));
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
const index$5 = {
|
|
34
|
+
__proto__: null,
|
|
35
|
+
PrimaryBreadcrumbId: PrimaryBreadcrumbId,
|
|
36
|
+
breadcrumbResolver: breadcrumbResolver
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
const PrimaryWebSiteId = "#website";
|
|
40
|
+
const webSiteResolver = defineSchemaOrgResolver({
|
|
41
|
+
defaults: {
|
|
42
|
+
"@type": "WebSite"
|
|
43
|
+
},
|
|
44
|
+
inheritMeta: [
|
|
45
|
+
"inLanguage",
|
|
46
|
+
{ meta: "host", key: "url" }
|
|
47
|
+
],
|
|
48
|
+
idPrefix: ["host", PrimaryWebSiteId],
|
|
49
|
+
resolve(node, ctx) {
|
|
50
|
+
node.potentialAction = resolveRelation(node.potentialAction, ctx, searchActionResolver, {
|
|
51
|
+
array: true
|
|
52
|
+
});
|
|
53
|
+
node.publisher = resolveRelation(node.publisher, ctx);
|
|
54
|
+
node.dateModified = resolvableDateToIso(node.dateModified);
|
|
55
|
+
node.datePublished = resolvableDateToIso(node.datePublished);
|
|
56
|
+
return node;
|
|
57
|
+
},
|
|
58
|
+
resolveRootNode(node, { find }) {
|
|
59
|
+
if (resolveAsGraphKey(node["@id"]) === PrimaryWebSiteId) {
|
|
60
|
+
const identity = find(IdentityId);
|
|
61
|
+
if (identity)
|
|
62
|
+
setIfEmpty(node, "publisher", idReference(identity));
|
|
63
|
+
const webPage = find(PrimaryWebPageId);
|
|
64
|
+
if (webPage)
|
|
65
|
+
setIfEmpty(webPage, "isPartOf", idReference(node));
|
|
66
|
+
}
|
|
67
|
+
return node;
|
|
68
|
+
}
|
|
69
|
+
});
|
|
70
|
+
|
|
71
|
+
const index$4 = {
|
|
72
|
+
__proto__: null,
|
|
73
|
+
PrimaryWebSiteId: PrimaryWebSiteId,
|
|
74
|
+
searchActionResolver: searchActionResolver,
|
|
75
|
+
webSiteResolver: webSiteResolver
|
|
76
|
+
};
|
|
77
|
+
|
|
78
|
+
const organizationResolver = defineSchemaOrgResolver({
|
|
79
|
+
defaults: {
|
|
80
|
+
"@type": "Organization"
|
|
81
|
+
},
|
|
82
|
+
idPrefix: ["host", IdentityId],
|
|
83
|
+
inheritMeta: [
|
|
84
|
+
{ meta: "host", key: "url" }
|
|
85
|
+
],
|
|
86
|
+
resolve(node, ctx) {
|
|
87
|
+
resolveDefaultType(node, "Organization");
|
|
88
|
+
node.address = resolveRelation(node.address, ctx, addressResolver);
|
|
89
|
+
return node;
|
|
90
|
+
},
|
|
91
|
+
resolveRootNode(node, ctx) {
|
|
92
|
+
const isIdentity = resolveAsGraphKey(node["@id"]) === IdentityId;
|
|
93
|
+
const webPage = ctx.find(PrimaryWebPageId);
|
|
94
|
+
if (node.logo && isIdentity) {
|
|
95
|
+
if (!ctx.find("#organization")) {
|
|
96
|
+
const logoNode = resolveRelation(node.logo, ctx, imageResolver, {
|
|
97
|
+
root: true,
|
|
98
|
+
afterResolve(logo) {
|
|
99
|
+
logo["@id"] = prefixId(ctx.meta.host, "#logo");
|
|
100
|
+
setIfEmpty(logo, "caption", node.name);
|
|
101
|
+
}
|
|
102
|
+
});
|
|
103
|
+
if (webPage && logoNode)
|
|
104
|
+
setIfEmpty(webPage, "primaryImageOfPage", idReference(logoNode));
|
|
105
|
+
ctx.nodes.push({
|
|
106
|
+
// we want to make a simple node that has the essentials, this will allow parent nodes to inject
|
|
107
|
+
// as well without inserting invalid data (i.e LocalBusiness operatingHours)
|
|
108
|
+
"@type": "Organization",
|
|
109
|
+
"name": node.name,
|
|
110
|
+
"url": node.url,
|
|
111
|
+
"sameAs": node.sameAs,
|
|
112
|
+
// 'image': idReference(logoNode),
|
|
113
|
+
"address": node.address,
|
|
114
|
+
// needs to be a URL
|
|
115
|
+
"logo": resolveRelation(node.logo, ctx, imageResolver, { root: false }).url,
|
|
116
|
+
"_priority": -1,
|
|
117
|
+
"@id": prefixId(ctx.meta.host, "#organization")
|
|
118
|
+
// avoid the id so nothing can link to it
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
delete node.logo;
|
|
122
|
+
}
|
|
123
|
+
if (isIdentity && webPage)
|
|
124
|
+
setIfEmpty(webPage, "about", idReference(node));
|
|
125
|
+
const webSite = ctx.find(PrimaryWebSiteId);
|
|
126
|
+
if (webSite)
|
|
127
|
+
setIfEmpty(webSite, "publisher", idReference(node));
|
|
128
|
+
}
|
|
129
|
+
});
|
|
130
|
+
|
|
131
|
+
const index$3 = {
|
|
132
|
+
__proto__: null,
|
|
133
|
+
organizationResolver: organizationResolver
|
|
134
|
+
};
|
|
135
|
+
|
|
136
|
+
const PrimaryWebPageId = "#webpage";
|
|
137
|
+
const webPageResolver = defineSchemaOrgResolver({
|
|
138
|
+
defaults({ meta }) {
|
|
139
|
+
const endPath = withoutTrailingSlash(meta.url.substring(meta.url.lastIndexOf("/") + 1));
|
|
140
|
+
let type = "WebPage";
|
|
141
|
+
switch (endPath) {
|
|
142
|
+
case "about":
|
|
143
|
+
case "about-us":
|
|
144
|
+
type = "AboutPage";
|
|
145
|
+
break;
|
|
146
|
+
case "search":
|
|
147
|
+
type = "SearchResultsPage";
|
|
148
|
+
break;
|
|
149
|
+
case "checkout":
|
|
150
|
+
type = "CheckoutPage";
|
|
151
|
+
break;
|
|
152
|
+
case "contact":
|
|
153
|
+
case "get-in-touch":
|
|
154
|
+
case "contact-us":
|
|
155
|
+
type = "ContactPage";
|
|
156
|
+
break;
|
|
157
|
+
case "faq":
|
|
158
|
+
type = "FAQPage";
|
|
159
|
+
break;
|
|
160
|
+
}
|
|
161
|
+
const defaults = {
|
|
162
|
+
"@type": type
|
|
163
|
+
};
|
|
164
|
+
return defaults;
|
|
165
|
+
},
|
|
166
|
+
idPrefix: ["url", PrimaryWebPageId],
|
|
167
|
+
inheritMeta: [
|
|
168
|
+
{ meta: "title", key: "name" },
|
|
169
|
+
"description",
|
|
170
|
+
"datePublished",
|
|
171
|
+
"dateModified",
|
|
172
|
+
"url"
|
|
173
|
+
],
|
|
174
|
+
resolve(node, ctx) {
|
|
175
|
+
node.dateModified = resolvableDateToIso(node.dateModified);
|
|
176
|
+
node.datePublished = resolvableDateToIso(node.datePublished);
|
|
177
|
+
resolveDefaultType(node, "WebPage");
|
|
178
|
+
node.about = resolveRelation(node.about, ctx, organizationResolver);
|
|
179
|
+
node.breadcrumb = resolveRelation(node.breadcrumb, ctx, breadcrumbResolver);
|
|
180
|
+
node.author = resolveRelation(node.author, ctx, personResolver);
|
|
181
|
+
node.primaryImageOfPage = resolveRelation(node.primaryImageOfPage, ctx, imageResolver);
|
|
182
|
+
node.potentialAction = resolveRelation(node.potentialAction, ctx, readActionResolver);
|
|
183
|
+
if (node["@type"] === "WebPage" && ctx.meta.url) {
|
|
184
|
+
setIfEmpty(node, "potentialAction", [
|
|
185
|
+
{
|
|
186
|
+
"@type": "ReadAction",
|
|
187
|
+
"target": [ctx.meta.url]
|
|
188
|
+
}
|
|
189
|
+
]);
|
|
190
|
+
}
|
|
191
|
+
return node;
|
|
192
|
+
},
|
|
193
|
+
resolveRootNode(webPage, { find, meta }) {
|
|
194
|
+
const identity = find(IdentityId);
|
|
195
|
+
const webSite = find(PrimaryWebSiteId);
|
|
196
|
+
const logo = find("#logo");
|
|
197
|
+
if (identity && meta.url === meta.host)
|
|
198
|
+
setIfEmpty(webPage, "about", idReference(identity));
|
|
199
|
+
if (logo)
|
|
200
|
+
setIfEmpty(webPage, "primaryImageOfPage", idReference(logo));
|
|
201
|
+
if (webSite)
|
|
202
|
+
setIfEmpty(webPage, "isPartOf", idReference(webSite));
|
|
203
|
+
const breadcrumb = find(PrimaryBreadcrumbId);
|
|
204
|
+
if (breadcrumb)
|
|
205
|
+
setIfEmpty(webPage, "breadcrumb", idReference(breadcrumb));
|
|
206
|
+
return webPage;
|
|
207
|
+
}
|
|
208
|
+
});
|
|
209
|
+
|
|
210
|
+
const index$2 = {
|
|
211
|
+
__proto__: null,
|
|
212
|
+
PrimaryWebPageId: PrimaryWebPageId,
|
|
213
|
+
readActionResolver: readActionResolver,
|
|
214
|
+
webPageResolver: webPageResolver
|
|
215
|
+
};
|
|
216
|
+
|
|
217
|
+
const personResolver = defineSchemaOrgResolver({
|
|
218
|
+
cast(node) {
|
|
219
|
+
if (typeof node === "string") {
|
|
220
|
+
return {
|
|
221
|
+
name: node
|
|
222
|
+
};
|
|
223
|
+
}
|
|
224
|
+
return node;
|
|
225
|
+
},
|
|
226
|
+
defaults: {
|
|
227
|
+
"@type": "Person"
|
|
228
|
+
},
|
|
229
|
+
idPrefix: ["host", IdentityId],
|
|
230
|
+
resolve(node, ctx) {
|
|
231
|
+
if (node.url)
|
|
232
|
+
node.url = resolveWithBase(ctx.meta.host, node.url);
|
|
233
|
+
return node;
|
|
234
|
+
},
|
|
235
|
+
resolveRootNode(node, { find, meta }) {
|
|
236
|
+
if (resolveAsGraphKey(node["@id"]) === IdentityId) {
|
|
237
|
+
setIfEmpty(node, "url", meta.host);
|
|
238
|
+
const webPage = find(PrimaryWebPageId);
|
|
239
|
+
if (webPage)
|
|
240
|
+
setIfEmpty(webPage, "about", idReference(node));
|
|
241
|
+
const webSite = find(PrimaryWebSiteId);
|
|
242
|
+
if (webSite)
|
|
243
|
+
setIfEmpty(webSite, "publisher", idReference(node));
|
|
244
|
+
}
|
|
245
|
+
const article = find(PrimaryArticleId);
|
|
246
|
+
if (article)
|
|
247
|
+
setIfEmpty(article, "author", idReference(node));
|
|
248
|
+
}
|
|
249
|
+
});
|
|
250
|
+
|
|
251
|
+
const index$1 = {
|
|
252
|
+
__proto__: null,
|
|
253
|
+
personResolver: personResolver
|
|
254
|
+
};
|
|
255
|
+
|
|
256
|
+
const PrimaryArticleId = "#article";
|
|
257
|
+
const articleResolver = defineSchemaOrgResolver({
|
|
258
|
+
defaults: {
|
|
259
|
+
"@type": "Article"
|
|
260
|
+
},
|
|
261
|
+
inheritMeta: [
|
|
262
|
+
"inLanguage",
|
|
263
|
+
"description",
|
|
264
|
+
"image",
|
|
265
|
+
"dateModified",
|
|
266
|
+
"datePublished",
|
|
267
|
+
{ meta: "title", key: "headline" }
|
|
268
|
+
],
|
|
269
|
+
idPrefix: ["url", PrimaryArticleId],
|
|
270
|
+
resolve(node, ctx) {
|
|
271
|
+
node.author = resolveRelation(node.author, ctx, personResolver, {
|
|
272
|
+
root: true
|
|
273
|
+
});
|
|
274
|
+
node.publisher = resolveRelation(node.publisher, ctx);
|
|
275
|
+
node.dateModified = resolvableDateToIso(node.dateModified);
|
|
276
|
+
node.datePublished = resolvableDateToIso(node.datePublished);
|
|
277
|
+
resolveDefaultType(node, "Article");
|
|
278
|
+
node.headline = trimLength(node.headline, 110);
|
|
279
|
+
return node;
|
|
280
|
+
},
|
|
281
|
+
resolveRootNode(node, { find, meta }) {
|
|
282
|
+
const webPage = find(PrimaryWebPageId);
|
|
283
|
+
const identity = find(IdentityId);
|
|
284
|
+
if (node.image && !node.thumbnailUrl) {
|
|
285
|
+
const firstImage = asArray(node.image)[0];
|
|
286
|
+
if (typeof firstImage === "string")
|
|
287
|
+
setIfEmpty(node, "thumbnailUrl", resolveWithBase(meta.host, firstImage));
|
|
288
|
+
else if (firstImage?.["@id"])
|
|
289
|
+
setIfEmpty(node, "thumbnailUrl", find(firstImage["@id"])?.url);
|
|
290
|
+
}
|
|
291
|
+
if (identity) {
|
|
292
|
+
setIfEmpty(node, "publisher", idReference(identity));
|
|
293
|
+
setIfEmpty(node, "author", idReference(identity));
|
|
294
|
+
}
|
|
295
|
+
if (webPage) {
|
|
296
|
+
setIfEmpty(node, "isPartOf", idReference(webPage));
|
|
297
|
+
setIfEmpty(node, "mainEntityOfPage", idReference(webPage));
|
|
298
|
+
setIfEmpty(webPage, "potentialAction", [
|
|
299
|
+
{
|
|
300
|
+
"@type": "ReadAction",
|
|
301
|
+
"target": [meta.url]
|
|
302
|
+
}
|
|
303
|
+
]);
|
|
304
|
+
setIfEmpty(webPage, "dateModified", node.dateModified);
|
|
305
|
+
setIfEmpty(webPage, "datePublished", node.datePublished);
|
|
306
|
+
}
|
|
307
|
+
return node;
|
|
308
|
+
}
|
|
309
|
+
});
|
|
310
|
+
|
|
311
|
+
const index = {
|
|
312
|
+
__proto__: null,
|
|
313
|
+
PrimaryArticleId: PrimaryArticleId,
|
|
314
|
+
articleResolver: articleResolver
|
|
315
|
+
};
|
|
316
|
+
|
|
317
|
+
export { PrimaryArticleId as P, articleResolver as a, PrimaryBreadcrumbId as b, breadcrumbResolver as c, PrimaryWebPageId as d, PrimaryWebSiteId as e, webSiteResolver as f, index$4 as g, index$3 as h, index$5 as i, index$2 as j, index$1 as k, index as l, organizationResolver as o, personResolver as p, webPageResolver as w };
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { d as defineSchemaOrgResolver, ac as asArray, ae as dedupeMerge, a7 as idReference, e as resolveRelation, a8 as resolvableDateToIso } from '../shared/schema-org.Cp6bpwL2.mjs';
|
|
2
|
+
import { d as PrimaryWebPageId } from './index3.mjs';
|
|
3
|
+
import 'unhead/plugins';
|
|
4
|
+
import 'unhead/utils';
|
|
5
|
+
import 'ufo';
|
|
6
|
+
import './index16.mjs';
|
|
7
|
+
import './index28.mjs';
|
|
8
|
+
import './index40.mjs';
|
|
9
|
+
import './index39.mjs';
|
|
10
|
+
|
|
11
|
+
const answerResolver = defineSchemaOrgResolver({
|
|
12
|
+
cast(node) {
|
|
13
|
+
if (typeof node === "string") {
|
|
14
|
+
return {
|
|
15
|
+
text: node
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
return node;
|
|
19
|
+
},
|
|
20
|
+
defaults: {
|
|
21
|
+
"@type": "Answer"
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
const questionResolver = defineSchemaOrgResolver({
|
|
26
|
+
defaults: {
|
|
27
|
+
"@type": "Question"
|
|
28
|
+
},
|
|
29
|
+
inheritMeta: [
|
|
30
|
+
"inLanguage"
|
|
31
|
+
],
|
|
32
|
+
idPrefix: "url",
|
|
33
|
+
resolve(question, ctx) {
|
|
34
|
+
if (question.question) {
|
|
35
|
+
question.name = question.question;
|
|
36
|
+
delete question.question;
|
|
37
|
+
}
|
|
38
|
+
if (question.answer) {
|
|
39
|
+
question.acceptedAnswer = question.answer;
|
|
40
|
+
delete question.answer;
|
|
41
|
+
}
|
|
42
|
+
question.acceptedAnswer = resolveRelation(question.acceptedAnswer, ctx, answerResolver);
|
|
43
|
+
question.dateCreated = resolvableDateToIso(question.dateCreated);
|
|
44
|
+
return question;
|
|
45
|
+
},
|
|
46
|
+
resolveRootNode(question, { find }) {
|
|
47
|
+
const webPage = find(PrimaryWebPageId);
|
|
48
|
+
if (webPage && asArray(webPage["@type"]).includes("FAQPage"))
|
|
49
|
+
dedupeMerge(webPage, "mainEntity", idReference(question));
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
|
|
53
|
+
export { questionResolver };
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { d as defineSchemaOrgResolver, a6 as setIfEmpty, a7 as idReference, e as resolveRelation } from '../shared/schema-org.Cp6bpwL2.mjs';
|
|
2
|
+
import { P as PrimaryArticleId, d as PrimaryWebPageId } from './index3.mjs';
|
|
3
|
+
import { h as howToStepResolver } from './index12.mjs';
|
|
4
|
+
import 'unhead/plugins';
|
|
5
|
+
import 'unhead/utils';
|
|
6
|
+
import 'ufo';
|
|
7
|
+
import './index16.mjs';
|
|
8
|
+
import './index28.mjs';
|
|
9
|
+
import './index40.mjs';
|
|
10
|
+
import './index39.mjs';
|
|
11
|
+
|
|
12
|
+
const RecipeId = "#recipe";
|
|
13
|
+
const recipeResolver = defineSchemaOrgResolver({
|
|
14
|
+
defaults: {
|
|
15
|
+
"@type": "Recipe"
|
|
16
|
+
},
|
|
17
|
+
inheritMeta: [
|
|
18
|
+
{ meta: "title", key: "name" },
|
|
19
|
+
"description",
|
|
20
|
+
"image",
|
|
21
|
+
"datePublished"
|
|
22
|
+
],
|
|
23
|
+
idPrefix: ["url", RecipeId],
|
|
24
|
+
resolve(node, ctx) {
|
|
25
|
+
node.recipeInstructions = resolveRelation(node.recipeInstructions, ctx, howToStepResolver);
|
|
26
|
+
return node;
|
|
27
|
+
},
|
|
28
|
+
resolveRootNode(node, { find }) {
|
|
29
|
+
const article = find(PrimaryArticleId);
|
|
30
|
+
const webPage = find(PrimaryWebPageId);
|
|
31
|
+
if (article)
|
|
32
|
+
setIfEmpty(node, "mainEntityOfPage", idReference(article));
|
|
33
|
+
else if (webPage)
|
|
34
|
+
setIfEmpty(node, "mainEntityOfPage", idReference(webPage));
|
|
35
|
+
if (article?.author)
|
|
36
|
+
setIfEmpty(node, "author", article.author);
|
|
37
|
+
return node;
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
|
|
41
|
+
export { RecipeId, recipeResolver };
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { p as personResolver } from './index3.mjs';
|
|
2
|
+
import { r as ratingResolver } from '../shared/schema-org.40UJYB57.mjs';
|
|
3
|
+
import { d as defineSchemaOrgResolver, e as resolveRelation } from '../shared/schema-org.Cp6bpwL2.mjs';
|
|
4
|
+
import 'ufo';
|
|
5
|
+
import './index16.mjs';
|
|
6
|
+
import 'unhead/plugins';
|
|
7
|
+
import 'unhead/utils';
|
|
8
|
+
import './index28.mjs';
|
|
9
|
+
import './index40.mjs';
|
|
10
|
+
import './index39.mjs';
|
|
11
|
+
|
|
12
|
+
const reviewResolver = defineSchemaOrgResolver({
|
|
13
|
+
defaults: {
|
|
14
|
+
"@type": "Review"
|
|
15
|
+
},
|
|
16
|
+
inheritMeta: [
|
|
17
|
+
"inLanguage"
|
|
18
|
+
],
|
|
19
|
+
resolve(review, ctx) {
|
|
20
|
+
review.reviewRating = resolveRelation(review.reviewRating, ctx, ratingResolver);
|
|
21
|
+
review.author = resolveRelation(review.author, ctx, personResolver);
|
|
22
|
+
return review;
|
|
23
|
+
}
|
|
24
|
+
});
|
|
25
|
+
|
|
26
|
+
export { reviewResolver };
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { d as defineSchemaOrgResolver, a9 as IdentityId, a6 as setIfEmpty, a7 as idReference, aa as resolveDefaultType, e as resolveRelation } from '../shared/schema-org.Cp6bpwL2.mjs';
|
|
2
|
+
import { aggregateRatingResolver } from './index2.mjs';
|
|
3
|
+
import { offerResolver } from './index23.mjs';
|
|
4
|
+
import { reviewResolver } from './index32.mjs';
|
|
5
|
+
import { d as PrimaryWebPageId } from './index3.mjs';
|
|
6
|
+
import 'unhead/plugins';
|
|
7
|
+
import 'unhead/utils';
|
|
8
|
+
import 'ufo';
|
|
9
|
+
import '../shared/schema-org.Dg61qWpa.mjs';
|
|
10
|
+
import '../shared/schema-org.40UJYB57.mjs';
|
|
11
|
+
import './index16.mjs';
|
|
12
|
+
import './index28.mjs';
|
|
13
|
+
import './index40.mjs';
|
|
14
|
+
import './index39.mjs';
|
|
15
|
+
|
|
16
|
+
const ServiceId = "#service";
|
|
17
|
+
const serviceResolver = defineSchemaOrgResolver({
|
|
18
|
+
defaults: {
|
|
19
|
+
"@type": "Service"
|
|
20
|
+
},
|
|
21
|
+
inheritMeta: [
|
|
22
|
+
"description",
|
|
23
|
+
"image",
|
|
24
|
+
{ meta: "title", key: "name" }
|
|
25
|
+
],
|
|
26
|
+
idPrefix: ["url", ServiceId],
|
|
27
|
+
resolve(node, ctx) {
|
|
28
|
+
resolveDefaultType(node, "Service");
|
|
29
|
+
node.offers = resolveRelation(node.offers, ctx, offerResolver);
|
|
30
|
+
node.aggregateRating = resolveRelation(node.aggregateRating, ctx, aggregateRatingResolver);
|
|
31
|
+
node.review = resolveRelation(node.review, ctx, reviewResolver);
|
|
32
|
+
return node;
|
|
33
|
+
},
|
|
34
|
+
resolveRootNode(service, { find }) {
|
|
35
|
+
const webPage = find(PrimaryWebPageId);
|
|
36
|
+
const identity = find(IdentityId);
|
|
37
|
+
if (identity)
|
|
38
|
+
setIfEmpty(service, "provider", idReference(identity));
|
|
39
|
+
if (identity)
|
|
40
|
+
setIfEmpty(service, "brand", idReference(identity));
|
|
41
|
+
if (webPage)
|
|
42
|
+
setIfEmpty(service, "mainEntityOfPage", idReference(webPage));
|
|
43
|
+
return service;
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
|
|
47
|
+
export { ServiceId, serviceResolver };
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { d as defineSchemaOrgResolver, aa as resolveDefaultType, e as resolveRelation } from '../shared/schema-org.Cp6bpwL2.mjs';
|
|
2
|
+
import { aggregateRatingResolver } from './index2.mjs';
|
|
3
|
+
import { offerResolver } from './index23.mjs';
|
|
4
|
+
import { reviewResolver } from './index32.mjs';
|
|
5
|
+
import 'unhead/plugins';
|
|
6
|
+
import 'unhead/utils';
|
|
7
|
+
import 'ufo';
|
|
8
|
+
import '../shared/schema-org.Dg61qWpa.mjs';
|
|
9
|
+
import './index3.mjs';
|
|
10
|
+
import './index16.mjs';
|
|
11
|
+
import './index28.mjs';
|
|
12
|
+
import './index40.mjs';
|
|
13
|
+
import './index39.mjs';
|
|
14
|
+
import '../shared/schema-org.40UJYB57.mjs';
|
|
15
|
+
|
|
16
|
+
const softwareAppResolver = defineSchemaOrgResolver({
|
|
17
|
+
defaults: {
|
|
18
|
+
"@type": "SoftwareApplication"
|
|
19
|
+
},
|
|
20
|
+
resolve(node, ctx) {
|
|
21
|
+
resolveDefaultType(node, "SoftwareApplication");
|
|
22
|
+
node.offers = resolveRelation(node.offers, ctx, offerResolver);
|
|
23
|
+
node.aggregateRating = resolveRelation(node.aggregateRating, ctx, aggregateRatingResolver);
|
|
24
|
+
node.review = resolveRelation(node.review, ctx, reviewResolver);
|
|
25
|
+
return node;
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
export { softwareAppResolver };
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { d as defineSchemaOrgResolver, e as resolveRelation, a8 as resolvableDateToIso } from '../shared/schema-org.Cp6bpwL2.mjs';
|
|
2
|
+
import { aggregateRatingResolver } from './index2.mjs';
|
|
3
|
+
import { p as personResolver } from './index3.mjs';
|
|
4
|
+
import { reviewResolver } from './index32.mjs';
|
|
5
|
+
import { videoResolver } from './index38.mjs';
|
|
6
|
+
import 'unhead/plugins';
|
|
7
|
+
import 'unhead/utils';
|
|
8
|
+
import 'ufo';
|
|
9
|
+
import './index16.mjs';
|
|
10
|
+
import './index28.mjs';
|
|
11
|
+
import './index40.mjs';
|
|
12
|
+
import './index39.mjs';
|
|
13
|
+
import '../shared/schema-org.40UJYB57.mjs';
|
|
14
|
+
|
|
15
|
+
const tvEpisodeResolver = defineSchemaOrgResolver({
|
|
16
|
+
defaults: {
|
|
17
|
+
"@type": "TVEpisode"
|
|
18
|
+
},
|
|
19
|
+
resolve(node, ctx) {
|
|
20
|
+
node.actor = resolveRelation(node.actor, ctx, personResolver);
|
|
21
|
+
node.director = resolveRelation(node.director, ctx, personResolver);
|
|
22
|
+
node.musicBy = resolveRelation(node.musicBy, ctx, personResolver);
|
|
23
|
+
node.video = resolveRelation(node.video, ctx, videoResolver);
|
|
24
|
+
node.aggregateRating = resolveRelation(node.aggregateRating, ctx, aggregateRatingResolver);
|
|
25
|
+
node.review = resolveRelation(node.review, ctx, reviewResolver);
|
|
26
|
+
if (node.datePublished)
|
|
27
|
+
node.datePublished = resolvableDateToIso(node.datePublished);
|
|
28
|
+
if (node.uploadDate)
|
|
29
|
+
node.uploadDate = resolvableDateToIso(node.uploadDate);
|
|
30
|
+
return node;
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
export { tvEpisodeResolver };
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { d as defineSchemaOrgResolver, e as resolveRelation, a8 as resolvableDateToIso } from '../shared/schema-org.Cp6bpwL2.mjs';
|
|
2
|
+
import { aggregateRatingResolver } from './index2.mjs';
|
|
3
|
+
import { p as personResolver, o as organizationResolver } from './index3.mjs';
|
|
4
|
+
import { videoResolver } from './index38.mjs';
|
|
5
|
+
import 'unhead/plugins';
|
|
6
|
+
import 'unhead/utils';
|
|
7
|
+
import 'ufo';
|
|
8
|
+
import './index16.mjs';
|
|
9
|
+
import './index28.mjs';
|
|
10
|
+
import './index40.mjs';
|
|
11
|
+
import './index39.mjs';
|
|
12
|
+
|
|
13
|
+
const tvSeasonResolver = defineSchemaOrgResolver({
|
|
14
|
+
defaults: {
|
|
15
|
+
"@type": "TVSeason"
|
|
16
|
+
},
|
|
17
|
+
resolve(node, ctx) {
|
|
18
|
+
node.actor = resolveRelation(node.actor, ctx, personResolver);
|
|
19
|
+
node.director = resolveRelation(node.director, ctx, personResolver);
|
|
20
|
+
node.productionCompany = resolveRelation(node.productionCompany, ctx, organizationResolver);
|
|
21
|
+
node.aggregateRating = resolveRelation(node.aggregateRating, ctx, aggregateRatingResolver);
|
|
22
|
+
node.trailer = resolveRelation(node.trailer, ctx, videoResolver);
|
|
23
|
+
if (node.datePublished)
|
|
24
|
+
node.datePublished = resolvableDateToIso(node.datePublished);
|
|
25
|
+
if (node.startDate)
|
|
26
|
+
node.startDate = resolvableDateToIso(node.startDate);
|
|
27
|
+
if (node.endDate)
|
|
28
|
+
node.endDate = resolvableDateToIso(node.endDate);
|
|
29
|
+
return node;
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
export { tvSeasonResolver };
|