@yimingliao/cms 0.0.246 → 0.0.248

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (80) hide show
  1. package/dist/export/client/index.js +11 -0
  2. package/dist/export/index.js +1 -0
  3. package/dist/export/server/index.js +0 -2
  4. package/dist/src/client/applications/web/structured-data/build/build-breadcrumb.js +30 -0
  5. package/dist/src/client/applications/web/structured-data/build/build-content.js +70 -0
  6. package/dist/src/client/applications/web/structured-data/build/build-publisher.js +81 -0
  7. package/dist/src/client/applications/web/structured-data/build/build-topic-item-list.js +44 -0
  8. package/dist/src/client/applications/web/structured-data/build/build-web-page.js +49 -0
  9. package/dist/src/client/applications/web/structured-data/build/build-website.js +20 -0
  10. package/dist/src/client/applications/web/structured-data/create-graph.js +18 -0
  11. package/dist/src/client/applications/web/structured-data/get-page-identity.js +44 -0
  12. package/dist/src/client/applications/web/structured-data/resolve-topic-item-list/map-category-item.js +25 -0
  13. package/dist/src/client/applications/web/structured-data/resolve-topic-item-list/map-post-item.js +32 -0
  14. package/dist/src/client/applications/web/structured-data/resolve-topic-item-list/resolve-topic-item-list.js +26 -0
  15. package/dist/src/server/applications/web/metadata/build-metadata.js +1 -1
  16. package/dist/src/server/applications/web/metadata/resolve-urls.js +3 -4
  17. package/dist/types/export/client/index.d.ts +1 -1
  18. package/dist/types/export/client/index.d.ts.map +1 -1
  19. package/dist/types/export/index.d.ts +1 -1
  20. package/dist/types/export/index.d.ts.map +1 -1
  21. package/dist/types/export/server/index.d.ts +1 -1
  22. package/dist/types/export/server/index.d.ts.map +1 -1
  23. package/dist/types/src/client/applications/index.d.ts +1 -0
  24. package/dist/types/src/client/applications/index.d.ts.map +1 -1
  25. package/dist/types/src/client/applications/web/index.d.ts +2 -0
  26. package/dist/types/src/client/applications/web/index.d.ts.map +1 -0
  27. package/dist/types/src/client/applications/web/structured-data/build/build-breadcrumb.d.ts +11 -0
  28. package/dist/types/src/client/applications/web/structured-data/build/build-breadcrumb.d.ts.map +1 -0
  29. package/dist/types/src/client/applications/web/structured-data/build/build-content.d.ts +42 -0
  30. package/dist/types/src/client/applications/web/structured-data/build/build-content.d.ts.map +1 -0
  31. package/dist/types/src/client/applications/web/structured-data/build/build-publisher.d.ts +45 -0
  32. package/dist/types/src/client/applications/web/structured-data/build/build-publisher.d.ts.map +1 -0
  33. package/dist/types/src/client/applications/web/structured-data/build/build-topic-item-list.d.ts +7 -0
  34. package/dist/types/src/client/applications/web/structured-data/build/build-topic-item-list.d.ts.map +1 -0
  35. package/dist/types/src/client/applications/web/structured-data/build/build-web-page.d.ts +11 -0
  36. package/dist/types/src/client/applications/web/structured-data/build/build-web-page.d.ts.map +1 -0
  37. package/dist/types/src/client/applications/web/structured-data/build/build-website.d.ts +7 -0
  38. package/dist/types/src/client/applications/web/structured-data/build/build-website.d.ts.map +1 -0
  39. package/dist/types/src/client/applications/web/structured-data/build/index.d.ts +7 -0
  40. package/dist/types/src/client/applications/web/structured-data/build/index.d.ts.map +1 -0
  41. package/dist/types/src/client/applications/web/structured-data/create-graph.d.ts +11 -0
  42. package/dist/types/src/client/applications/web/structured-data/create-graph.d.ts.map +1 -0
  43. package/dist/types/src/client/applications/web/structured-data/get-page-identity.d.ts +23 -0
  44. package/dist/types/src/client/applications/web/structured-data/get-page-identity.d.ts.map +1 -0
  45. package/dist/types/src/client/applications/web/structured-data/index.d.ts +5 -0
  46. package/dist/types/src/client/applications/web/structured-data/index.d.ts.map +1 -0
  47. package/dist/types/src/client/applications/web/structured-data/resolve-topic-item-list/index.d.ts +5 -0
  48. package/dist/types/src/client/applications/web/structured-data/resolve-topic-item-list/index.d.ts.map +1 -0
  49. package/dist/types/src/client/applications/web/structured-data/resolve-topic-item-list/map-category-item.d.ts +11 -0
  50. package/dist/types/src/client/applications/web/structured-data/resolve-topic-item-list/map-category-item.d.ts.map +1 -0
  51. package/dist/types/src/client/applications/web/structured-data/resolve-topic-item-list/map-post-item.d.ts +12 -0
  52. package/dist/types/src/client/applications/web/structured-data/resolve-topic-item-list/map-post-item.d.ts.map +1 -0
  53. package/dist/types/src/client/applications/web/structured-data/resolve-topic-item-list/resolve-topic-item-list.d.ts +19 -0
  54. package/dist/types/src/client/applications/web/structured-data/resolve-topic-item-list/resolve-topic-item-list.d.ts.map +1 -0
  55. package/dist/types/src/client/applications/web/structured-data/resolve-topic-item-list/types.d.ts +20 -0
  56. package/dist/types/src/client/applications/web/structured-data/resolve-topic-item-list/types.d.ts.map +1 -0
  57. package/dist/types/src/client/index.d.ts +1 -1
  58. package/dist/types/src/client/index.d.ts.map +1 -1
  59. package/dist/types/src/server/applications/index.d.ts +1 -1
  60. package/dist/types/src/server/applications/index.d.ts.map +1 -1
  61. package/dist/types/src/server/applications/web/index.d.ts +1 -1
  62. package/dist/types/src/server/applications/web/index.d.ts.map +1 -1
  63. package/dist/types/src/server/applications/web/metadata/index.d.ts +0 -2
  64. package/dist/types/src/server/applications/web/metadata/index.d.ts.map +1 -1
  65. package/dist/types/src/server/applications/web/metadata/resolve-urls.d.ts +1 -4
  66. package/dist/types/src/server/applications/web/metadata/resolve-urls.d.ts.map +1 -1
  67. package/dist/types/src/server/index.d.ts +1 -1
  68. package/dist/types/src/server/index.d.ts.map +1 -1
  69. package/dist/types/src/shared/index.d.ts +1 -1
  70. package/dist/types/src/shared/index.d.ts.map +1 -1
  71. package/dist/types/src/shared/utils/index.d.ts +1 -0
  72. package/dist/types/src/shared/utils/index.d.ts.map +1 -1
  73. package/dist/types/src/shared/utils/to-iso-time.d.ts.map +1 -0
  74. package/package.json +2 -1
  75. package/dist/src/server/applications/web/metadata/normalize-search.js +0 -10
  76. package/dist/types/src/server/applications/web/metadata/normalize-search.d.ts +0 -2
  77. package/dist/types/src/server/applications/web/metadata/normalize-search.d.ts.map +0 -1
  78. package/dist/types/src/server/applications/web/metadata/utils/to-iso-time.d.ts.map +0 -1
  79. /package/dist/src/{server/applications/web/metadata → shared}/utils/to-iso-time.js +0 -0
  80. /package/dist/types/src/{server/applications/web/metadata → shared}/utils/to-iso-time.d.ts +0 -0
@@ -20,3 +20,14 @@ export { cn } from '../../src/client/applications/cms/shadcn/utils.js';
20
20
  import 'next/navigation';
21
21
  export { isConfirm } from '../../src/client/applications/cms/ui/is-confirm.js';
22
22
  export { buildPagination } from '../../src/client/applications/cms/ui/build-pagination.js';
23
+ export { createGraph } from '../../src/client/applications/web/structured-data/create-graph.js';
24
+ export { createGetPageIdentity } from '../../src/client/applications/web/structured-data/get-page-identity.js';
25
+ export { createResolveTopicItemList } from '../../src/client/applications/web/structured-data/resolve-topic-item-list/resolve-topic-item-list.js';
26
+ export { createMapCategoryItem } from '../../src/client/applications/web/structured-data/resolve-topic-item-list/map-category-item.js';
27
+ export { createMapPostItem } from '../../src/client/applications/web/structured-data/resolve-topic-item-list/map-post-item.js';
28
+ export { createBuildWebsite } from '../../src/client/applications/web/structured-data/build/build-website.js';
29
+ export { createBuildPublisher } from '../../src/client/applications/web/structured-data/build/build-publisher.js';
30
+ export { createBuildWebPage } from '../../src/client/applications/web/structured-data/build/build-web-page.js';
31
+ export { buildTopicItemList } from '../../src/client/applications/web/structured-data/build/build-topic-item-list.js';
32
+ export { createBuildContent } from '../../src/client/applications/web/structured-data/build/build-content.js';
33
+ export { createBuildBreadcrumb } from '../../src/client/applications/web/structured-data/build/build-breadcrumb.js';
@@ -30,5 +30,6 @@ export { formatDateTime } from '../src/shared/utils/format-date-time.js';
30
30
  export { joinUrl } from '../src/shared/utils/join-url.js';
31
31
  export { normalizeSlug } from '../src/shared/utils/normalize-slug.js';
32
32
  export { parsePositiveInt } from '../src/shared/utils/parse-positive-int.js';
33
+ export { toIsoTime } from '../src/shared/utils/to-iso-time.js';
33
34
  export { DO_NOT_FETCH_KEY } from '../src/shared/list-items.js';
34
35
  export { SIZE } from '../src/shared/units.js';
@@ -97,8 +97,6 @@ export { createLoadPosts } from '../../src/server/applications/web/loaders/load-
97
97
  export { createLoadPost } from '../../src/server/applications/web/loaders/load-post.js';
98
98
  export { createLoadConfig } from '../../src/server/applications/web/loaders/load-config.js';
99
99
  export { createBuildMetadata } from '../../src/server/applications/web/metadata/build-metadata.js';
100
- export { toIsoTime } from '../../src/server/applications/web/metadata/utils/to-iso-time.js';
101
100
  export { createBuildAlternatePathnames } from '../../src/server/applications/web/metadata/build-alternates.js';
102
- export { createNormalizeSearch } from '../../src/server/applications/web/metadata/normalize-search.js';
103
101
  export { createResolveUrls } from '../../src/server/applications/web/metadata/resolve-urls.js';
104
102
  export { ServerError } from '../../src/server/server-error.js';
@@ -0,0 +1,30 @@
1
+ function createBuildBreadcrumb({
2
+ getPageIdentity
3
+ }) {
4
+ return function buildBreadcrumb(pageIdentity, items) {
5
+ if (items.length === 0) return void 0;
6
+ const { locale, breadcrumbId } = pageIdentity;
7
+ const listItems = items.map((item, index) => {
8
+ const itemIdentity = getPageIdentity(item.pathname, locale);
9
+ return {
10
+ "@type": "ListItem",
11
+ position: index + 1,
12
+ name: item.name,
13
+ item: {
14
+ "@id": itemIdentity.webpageId,
15
+ url: itemIdentity.pageUrl,
16
+ name: item.name
17
+ }
18
+ };
19
+ });
20
+ return {
21
+ "@type": "BreadcrumbList",
22
+ "@id": breadcrumbId,
23
+ itemListOrder: "ItemListOrderAscending",
24
+ numberOfItems: listItems.length,
25
+ itemListElement: listItems
26
+ };
27
+ };
28
+ }
29
+
30
+ export { createBuildBreadcrumb };
@@ -0,0 +1,70 @@
1
+ import 'mime-types';
2
+ import { findTranslation } from '../../../../../shared/translation/find-translation.js';
3
+ import { joinUrl } from '../../../../../shared/utils/join-url.js';
4
+ import { toIsoTime } from '../../../../../shared/utils/to-iso-time.js';
5
+
6
+ function createBuildContent({ storageUrl }) {
7
+ return function buildContent(pageIdentity, params) {
8
+ const { locale, pageUrl, siteUrl, publisherId } = pageIdentity;
9
+ const { type, post, authorId } = params;
10
+ const { translations, seoMetadatas, author, coverImage } = post || {};
11
+ const postT = findTranslation(translations, locale);
12
+ const seoMetadata = findTranslation(seoMetadatas, locale);
13
+ const authorT = findTranslation(author?.translations, locale);
14
+ const coverImageT = findTranslation(coverImage?.translations, locale);
15
+ const title = seoMetadata?.title ?? postT?.title;
16
+ const description = seoMetadata?.description ?? postT?.description;
17
+ const publishedAt = seoMetadata?.ogArticlePublishedTime ? toIsoTime(seoMetadata.ogArticlePublishedTime) : void 0;
18
+ const modifiedAt = seoMetadata?.ogArticleModifiedTime ? toIsoTime(seoMetadata.ogArticleModifiedTime) : void 0;
19
+ const entityId = `${pageUrl}#${type.toLowerCase()}`;
20
+ return {
21
+ "@type": type,
22
+ "@id": entityId,
23
+ url: pageUrl,
24
+ // --------------------------------------------------
25
+ // identity
26
+ // --------------------------------------------------
27
+ ...type === "Article" && title && { headline: title },
28
+ ...type === "CreativeWork" && title && { name: title },
29
+ ...description && { description },
30
+ ...locale && { inLanguage: locale },
31
+ // --------------------------------------------------
32
+ // relation
33
+ // --------------------------------------------------
34
+ publisher: {
35
+ "@id": publisherId
36
+ },
37
+ // --------------------------------------------------
38
+ // image
39
+ // --------------------------------------------------
40
+ ...coverImage && {
41
+ image: {
42
+ "@type": "ImageObject",
43
+ "@id": `image:${coverImage.id}`,
44
+ url: joinUrl(storageUrl, coverImage.key),
45
+ ...coverImageT.alt && { caption: coverImageT.alt },
46
+ ...coverImage.width && { width: coverImage.width },
47
+ ...coverImage.height && { height: coverImage.height }
48
+ }
49
+ },
50
+ // --------------------------------------------------
51
+ // author
52
+ // --------------------------------------------------
53
+ ...authorId && { author: { "@id": authorId } },
54
+ ...!authorId && authorT?.authorName && post?.author?.id && {
55
+ author: {
56
+ "@type": "Person",
57
+ "@id": `${siteUrl}#author-${author?.id}`,
58
+ name: authorT.authorName
59
+ }
60
+ },
61
+ // --------------------------------------------------
62
+ // date
63
+ // --------------------------------------------------
64
+ ...publishedAt && { datePublished: publishedAt },
65
+ ...modifiedAt && { dateModified: modifiedAt }
66
+ };
67
+ };
68
+ }
69
+
70
+ export { createBuildContent };
@@ -0,0 +1,81 @@
1
+ function createBuildPublisher({
2
+ siteConfig
3
+ }) {
4
+ return function buildPublisher(pageIdentity) {
5
+ const { locale, publisherId } = pageIdentity;
6
+ const { publisher } = siteConfig;
7
+ if (publisher.type === "person") {
8
+ const { name: publisherName2, sameAs: sameAs2, avatar } = publisher;
9
+ const name2 = publisherName2[locale];
10
+ return {
11
+ "@type": "Person",
12
+ "@id": publisherId,
13
+ url: siteConfig.site.url,
14
+ ...name2 && { name: name2 },
15
+ ...sameAs2 && { sameAs: sameAs2 },
16
+ ...avatar && {
17
+ image: {
18
+ "@type": "ImageObject",
19
+ "@id": `${publisherId}/avatar`,
20
+ url: avatar.url,
21
+ ...avatar.alt && { caption: avatar.alt },
22
+ ...avatar.width && { width: avatar.width },
23
+ ...avatar.height && { height: avatar.height }
24
+ }
25
+ }
26
+ };
27
+ }
28
+ const {
29
+ url,
30
+ name: publisherName,
31
+ description: publisherDescription,
32
+ sameAs,
33
+ email,
34
+ telephone,
35
+ address,
36
+ logo
37
+ } = publisher;
38
+ const name = publisherName[locale];
39
+ const description = publisherDescription?.[locale];
40
+ return {
41
+ "@type": "Organization",
42
+ "@id": publisherId,
43
+ url: url ?? siteConfig.site.url,
44
+ ...name && { name },
45
+ ...description && { description },
46
+ ...sameAs && { sameAs },
47
+ ...email && { email },
48
+ ...telephone && { telephone },
49
+ ...address && {
50
+ address: {
51
+ "@type": "PostalAddress",
52
+ ...address.streetAddress && {
53
+ streetAddress: address.streetAddress
54
+ },
55
+ ...address.addressLocality && {
56
+ addressLocality: address.addressLocality
57
+ },
58
+ ...address.addressRegion && {
59
+ addressRegion: address.addressRegion
60
+ },
61
+ ...address.postalCode && { postalCode: address.postalCode },
62
+ ...address.addressCountry && {
63
+ addressCountry: address.addressCountry
64
+ }
65
+ }
66
+ },
67
+ ...logo && {
68
+ logo: {
69
+ "@type": "ImageObject",
70
+ "@id": `${publisherId}/logo`,
71
+ url: logo.url,
72
+ ...logo.alt && { caption: logo.alt },
73
+ ...logo.width && { width: logo.width },
74
+ ...logo.height && { height: logo.height }
75
+ }
76
+ }
77
+ };
78
+ };
79
+ }
80
+
81
+ export { createBuildPublisher };
@@ -0,0 +1,44 @@
1
+ function buildTopicItemList({
2
+ id,
3
+ items
4
+ }) {
5
+ return {
6
+ "@type": "ItemList",
7
+ "@id": id,
8
+ numberOfItems: items.length,
9
+ itemListElement: items.map(
10
+ (item, index) => ({
11
+ "@type": "ListItem",
12
+ position: index + 1,
13
+ item: (() => {
14
+ if ("type" in item && item.type === "CollectionPage") {
15
+ const { id: id3, url: url2, name: name2 } = item;
16
+ return {
17
+ "@type": "CollectionPage",
18
+ "@id": id3,
19
+ url: url2,
20
+ ...name2 && { name: name2 }
21
+ };
22
+ }
23
+ const { entity, id: id2, url, name } = item;
24
+ return {
25
+ "@type": "WebPage",
26
+ "@id": id2,
27
+ url,
28
+ ...name && { name },
29
+ mainEntity: {
30
+ "@type": entity.type,
31
+ "@id": entity.id,
32
+ ...entity.name && { name: entity.name },
33
+ ...entity.description && {
34
+ description: entity.description
35
+ }
36
+ }
37
+ };
38
+ })()
39
+ })
40
+ )
41
+ };
42
+ }
43
+
44
+ export { buildTopicItemList };
@@ -0,0 +1,49 @@
1
+ import 'mime-types';
2
+ import { findTranslation } from '../../../../../shared/translation/find-translation.js';
3
+ import { joinUrl } from '../../../../../shared/utils/join-url.js';
4
+
5
+ function createBuildWebPage({ storageUrl }) {
6
+ return function buildWebPage(pageIdentity, params) {
7
+ const {
8
+ locale,
9
+ webpageId,
10
+ pageUrl: url,
11
+ websiteId,
12
+ breadcrumbId
13
+ } = pageIdentity;
14
+ const { type = "WebPage", page, mainEntity } = params;
15
+ const { coverImage } = page || {};
16
+ const pageT = findTranslation(page?.translations, locale);
17
+ const seoMetadata = findTranslation(page?.seoMetadatas, locale);
18
+ const coverImageT = findTranslation(coverImage?.translations, locale);
19
+ const name = seoMetadata?.title ?? pageT?.title;
20
+ const description = seoMetadata?.description ?? pageT?.description;
21
+ return {
22
+ "@type": type,
23
+ "@id": webpageId,
24
+ url,
25
+ inLanguage: locale,
26
+ ...name && { name },
27
+ ...description && { description },
28
+ ...coverImage && {
29
+ primaryImageOfPage: {
30
+ "@type": "ImageObject",
31
+ "@id": `image:${coverImage.id}`,
32
+ url: joinUrl(storageUrl, coverImage.key),
33
+ ...coverImageT.alt && { caption: coverImageT.alt },
34
+ ...coverImage.width && { width: coverImage.width },
35
+ ...coverImage.height && { height: coverImage.height }
36
+ }
37
+ },
38
+ isPartOf: {
39
+ "@id": websiteId
40
+ },
41
+ breadcrumb: {
42
+ "@id": breadcrumbId
43
+ },
44
+ ...mainEntity && { mainEntity }
45
+ };
46
+ };
47
+ }
48
+
49
+ export { createBuildWebPage };
@@ -0,0 +1,20 @@
1
+ function createBuildWebsite({ siteConfig }) {
2
+ return function buildWebsite(pageIdentity) {
3
+ const { locale, websiteId, siteUrl } = pageIdentity;
4
+ const { name: siteName, description: siteDescription } = siteConfig.site;
5
+ const name = siteName[locale];
6
+ const description = siteDescription?.[locale];
7
+ return {
8
+ "@type": "WebSite",
9
+ "@id": websiteId,
10
+ url: String(siteUrl),
11
+ ...name && { name },
12
+ ...description && { description },
13
+ publisher: {
14
+ "@id": pageIdentity.publisherId
15
+ }
16
+ };
17
+ };
18
+ }
19
+
20
+ export { createBuildWebsite };
@@ -0,0 +1,18 @@
1
+ function createGraph(...inputs) {
2
+ const nodes = inputs.flat().filter(Boolean);
3
+ const map = /* @__PURE__ */ new Map();
4
+ for (const [index, node] of nodes.entries()) {
5
+ const id = node["@id"];
6
+ if (id) {
7
+ if (!map.has(id)) map.set(id, node);
8
+ } else {
9
+ map.set(`__anonymous_node_${index}`, node);
10
+ }
11
+ }
12
+ return {
13
+ "@context": "https://schema.org",
14
+ "@graph": Array.from(map.values())
15
+ };
16
+ }
17
+
18
+ export { createGraph };
@@ -0,0 +1,44 @@
1
+ import 'mime-types';
2
+ import { joinUrl } from '../../../../shared/utils/join-url.js';
3
+
4
+ function createGetPageIdentity({
5
+ siteConfig,
6
+ intorConfig,
7
+ localizePathname
8
+ }) {
9
+ return function getPageIdentity(rawPathname, locale) {
10
+ const siteUrl = String(siteConfig.site.url);
11
+ const pathnameMap = /* @__PURE__ */ new Map();
12
+ for (const locale2 of siteConfig.locales) {
13
+ const { pathname: pathname2 } = localizePathname(rawPathname, intorConfig, locale2);
14
+ pathnameMap.set(locale2, pathname2);
15
+ }
16
+ const pathname = pathnameMap.get(locale);
17
+ const alternateUrlMap = {};
18
+ for (const [locale2, pathname2] of pathnameMap) {
19
+ alternateUrlMap[locale2] = joinUrl(siteUrl, pathname2);
20
+ }
21
+ const pageUrl = joinUrl(siteUrl, pathname);
22
+ const alternateUrls = {
23
+ default: alternateUrlMap[siteConfig.defaultLocale],
24
+ locales: alternateUrlMap
25
+ };
26
+ return {
27
+ // routing
28
+ pathname: pathnameMap.get(locale),
29
+ locale,
30
+ // urls
31
+ siteUrl,
32
+ pageUrl,
33
+ alternateUrls,
34
+ // global (use siteUrl)
35
+ websiteId: `${siteUrl}#website`,
36
+ publisherId: `${siteUrl}#publisher`,
37
+ // page
38
+ webpageId: `${pageUrl}#webpage`,
39
+ breadcrumbId: `${pageUrl}#breadcrumb`
40
+ };
41
+ };
42
+ }
43
+
44
+ export { createGetPageIdentity };
@@ -0,0 +1,25 @@
1
+ import 'mime-types';
2
+ import { findTranslation } from '../../../../../shared/translation/find-translation.js';
3
+ import { joinUrl } from '../../../../../shared/utils/join-url.js';
4
+
5
+ function createMapCategoryItem({
6
+ getPageIdentity
7
+ }) {
8
+ return function mapCategoryItem({
9
+ item,
10
+ locale,
11
+ pagePathname
12
+ }) {
13
+ const t = findTranslation(item.translations, locale);
14
+ const name = t?.title;
15
+ const identity = getPageIdentity(joinUrl(pagePathname, item.slug), locale);
16
+ return {
17
+ type: "CollectionPage",
18
+ id: identity.webpageId,
19
+ url: identity.pageUrl,
20
+ ...name && { name }
21
+ };
22
+ };
23
+ }
24
+
25
+ export { createMapCategoryItem };
@@ -0,0 +1,32 @@
1
+ import 'mime-types';
2
+ import { findTranslation } from '../../../../../shared/translation/find-translation.js';
3
+ import { joinUrl } from '../../../../../shared/utils/join-url.js';
4
+
5
+ function createMapPostItem({
6
+ getPageIdentity
7
+ }) {
8
+ return function mapPostItem({
9
+ item,
10
+ locale,
11
+ pagePathname,
12
+ entityType
13
+ }) {
14
+ const t = findTranslation(item.translations, locale);
15
+ const name = t?.title;
16
+ const description = t?.description;
17
+ const identity = getPageIdentity(joinUrl(pagePathname, item.slug), locale);
18
+ return {
19
+ id: identity.webpageId,
20
+ url: identity.pageUrl,
21
+ ...name && { name },
22
+ entity: {
23
+ type: entityType,
24
+ id: `${identity.pageUrl}#${entityType.toLowerCase()}`,
25
+ ...name && { name },
26
+ ...description && { description }
27
+ }
28
+ };
29
+ };
30
+ }
31
+
32
+ export { createMapPostItem };
@@ -0,0 +1,26 @@
1
+ function createResolveTopicItemList({
2
+ mapCategoryItem,
3
+ mapPostItem
4
+ }) {
5
+ return function resolveTopicItemList({
6
+ listMode,
7
+ entityType = "Article",
8
+ pageIdentity,
9
+ rawItems,
10
+ pagePathname
11
+ }) {
12
+ const { pageUrl, locale } = pageIdentity;
13
+ const itemListId = `${pageUrl}#${listMode === "category" ? "category-list" : "post-list"}`;
14
+ const items = listMode === "category" ? rawItems.map(
15
+ (item) => mapCategoryItem({ item, locale, pagePathname })
16
+ ) : rawItems.map(
17
+ (item) => mapPostItem({ item, locale, pagePathname, entityType })
18
+ );
19
+ return {
20
+ itemListId,
21
+ items
22
+ };
23
+ };
24
+ }
25
+
26
+ export { createResolveTopicItemList };
@@ -1,12 +1,12 @@
1
1
  import 'mime-types';
2
2
  import { findTranslation } from '../../../../shared/translation/find-translation.js';
3
3
  import { joinUrl } from '../../../../shared/utils/join-url.js';
4
+ import { toIsoTime } from '../../../../shared/utils/to-iso-time.js';
4
5
  import { buildAlternateMap } from './utils/build-alternate-map.js';
5
6
  import { buildOgImages } from './utils/build-og-image.js';
6
7
  import { ensureOgType } from './utils/ensure-og-type.js';
7
8
  import { ensureTwitterCard } from './utils/ensure-twitter-card.js';
8
9
  import { sanitizeStringArray } from './utils/sanitize-string-array.js';
9
- import { toIsoTime } from './utils/to-iso-time.js';
10
10
  import { toOgLocale } from './utils/to-og-locale.js';
11
11
 
12
12
  function createBuildMetadata(siteConfig, storageUrl) {
@@ -2,15 +2,14 @@ function createResolveUrls({
2
2
  readIntorUrlState,
3
3
  localizePathname,
4
4
  buildAlternatePathnames,
5
- normalizeSearch,
6
5
  intorConfig,
7
6
  defaultLocale,
8
7
  locales
9
8
  }) {
10
9
  return async function resolveUrls(locale) {
11
- const { pathname: rawPathname, search } = await readIntorUrlState();
10
+ const { pathname: rawPathname } = await readIntorUrlState();
12
11
  if (!rawPathname) throw new Error("[metadata] Missing x-intor-pathname");
13
- const canonicalPath = localizePathname(
12
+ const canonicalPathname = localizePathname(
14
13
  rawPathname,
15
14
  intorConfig,
16
15
  locale ?? defaultLocale
@@ -22,7 +21,7 @@ function createResolveUrls({
22
21
  locales
23
22
  });
24
23
  return {
25
- canonical: `${canonicalPath}${normalizeSearch(search)}`,
24
+ canonical: canonicalPathname,
26
25
  alternates
27
26
  };
28
27
  };
@@ -1,2 +1,2 @@
1
- export { AdminProvider, useAdmin, ThemeProvider, createSmartFetch, createRequestInterceptor, createResponseInterceptor, createFileUploadApi, createMultiFilesUploadApi, createUseCommand, createUseQuery, handleToast, type ShowToastOption, NAVBAR_HEIGHT, SIDEBAR_WIDTH, PAGE_HEADER_HEIGHT, getControlMeta, usePickItems, getImgIdsFromHtmls, createProcessContentHtml, createUseSeoMetadataUpsertFormData, cn, isConfirm, buildPagination, } from "../../src/client";
1
+ export { AdminProvider, useAdmin, ThemeProvider, createSmartFetch, createRequestInterceptor, createResponseInterceptor, createFileUploadApi, createMultiFilesUploadApi, createUseCommand, createUseQuery, handleToast, type ShowToastOption, NAVBAR_HEIGHT, SIDEBAR_WIDTH, PAGE_HEADER_HEIGHT, getControlMeta, usePickItems, getImgIdsFromHtmls, createProcessContentHtml, createUseSeoMetadataUpsertFormData, cn, isConfirm, buildPagination, buildTopicItemList, createBuildBreadcrumb, createBuildContent, createBuildPublisher, createBuildWebPage, createBuildWebsite, createGetPageIdentity, createGraph, createMapCategoryItem, createMapPostItem, createResolveTopicItemList, } from "../../src/client";
2
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../export/client/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,aAAa,EACb,QAAQ,EACR,aAAa,EAEb,gBAAgB,EAChB,wBAAwB,EACxB,yBAAyB,EAEzB,mBAAmB,EACnB,yBAAyB,EAEzB,gBAAgB,EAChB,cAAc,EAEd,WAAW,EACX,KAAK,eAAe,EAMpB,aAAa,EACb,aAAa,EACb,kBAAkB,EAOlB,cAAc,EACd,YAAY,EACZ,kBAAkB,EAClB,wBAAwB,EAExB,kCAAkC,EAElC,EAAE,EAEF,SAAS,EACT,eAAe,GAChB,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../export/client/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,aAAa,EACb,QAAQ,EACR,aAAa,EAEb,gBAAgB,EAChB,wBAAwB,EACxB,yBAAyB,EAEzB,mBAAmB,EACnB,yBAAyB,EAEzB,gBAAgB,EAChB,cAAc,EAEd,WAAW,EACX,KAAK,eAAe,EAMpB,aAAa,EACb,aAAa,EACb,kBAAkB,EAOlB,cAAc,EACd,YAAY,EACZ,kBAAkB,EAClB,wBAAwB,EAExB,kCAAkC,EAElC,EAAE,EAEF,SAAS,EACT,eAAe,EAEf,kBAAkB,EAClB,qBAAqB,EACrB,kBAAkB,EAClB,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,qBAAqB,EACrB,WAAW,EACX,qBAAqB,EACrB,iBAAiB,EACjB,0BAA0B,GAC3B,MAAM,kBAAkB,CAAC"}
@@ -1,4 +1,4 @@
1
1
  export { type MultiItems, type SingleItem, type BaseTranslation, type Translation, ADMIN_ROLES, type AdminRole, type Admin, type AdminTranslation, type AdminFull, type AdminCard, type AdminSafe, ADMIN_ROLE_ARRAY, ADMIN_ROLE_I18N_MAP, type AdminRefreshToken, type DeviceInfo, FILE_TYPES, type FileType, type File, type FileTranslation, type FileFull, type FileCard, isFileLocked, type Folder, type FolderFull, isFolderLocked, normalizeFolderKey, fileManagerDoubleClick, POST_TYPES, type PostType, type Post, type PostTranslation, type PostFull, type PostListCard, type ExternalLink, type Faq, type TocItem, type SeoMetadata, type Alternate, type Config, type ConfigTranslation, type ConfigFull, type Inquiry, type InquiryFields, ROOT_FOLDER, ROOT_FOLDER_ID, ROOT_FOLDER_NAME, SIMPLE_UPLOAD_FOLDER_KEY, SIMPLE_UPLOAD_FOLDER_NAME, type StaticTopics, type StaticPages, type StaticInquiry, type StaticConfigs, type StaticSeoMetadata, type SeoMetadataField, type PostField, type SiteConfig, } from "../src/domain";
2
2
  export { CACHE_KEYS, KEYS, PATHS, PROTECTED_PATHS, LOGGED_IN_SKIP_PATHS, NEW_TAB_REL, NEW_TAB_TARGET, } from "../src/constants";
3
- export { mimeToExtension, classifyFileType, getMediaInfo, formatFileSize, type BlobFile, result, type SuccessResultParams, type ErrorResultParams, type Result, type SuccessResult, type ErrorResult, type ErrorDetail, OG_TYPE_ARRAY, type OgType, TWITTER_CARD_ARRAY, type TwitterCard, findTranslation, createBuildTranslations, datetimeToDb, datetimeToUi, jsonArrayToDb, jsonArrayToUi, type UIStates, type FormData, type FormFieldController, debounce, ensureArray, formatDateTime, joinUrl, normalizeSlug, parsePositiveInt, DO_NOT_FETCH_KEY, type ListItemsState, SIZE, type SizeUnit, } from "../src/shared";
3
+ export { mimeToExtension, classifyFileType, getMediaInfo, formatFileSize, type BlobFile, result, type SuccessResultParams, type ErrorResultParams, type Result, type SuccessResult, type ErrorResult, type ErrorDetail, OG_TYPE_ARRAY, type OgType, TWITTER_CARD_ARRAY, type TwitterCard, findTranslation, createBuildTranslations, datetimeToDb, datetimeToUi, jsonArrayToDb, jsonArrayToUi, type UIStates, type FormData, type FormFieldController, debounce, ensureArray, formatDateTime, joinUrl, normalizeSlug, parsePositiveInt, toIsoTime, DO_NOT_FETCH_KEY, type ListItemsState, SIZE, type SizeUnit, } from "../src/shared";
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../export/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAIL,KAAK,UAAU,EACf,KAAK,UAAU,EAIf,KAAK,eAAe,EACpB,KAAK,WAAW,EAKhB,WAAW,EACX,KAAK,SAAS,EACd,KAAK,KAAK,EACV,KAAK,gBAAgB,EACrB,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,SAAS,EACd,gBAAgB,EAChB,mBAAmB,EAEnB,KAAK,iBAAiB,EACtB,KAAK,UAAU,EAEf,UAAU,EACV,KAAK,QAAQ,EACb,KAAK,IAAI,EACT,KAAK,eAAe,EACpB,KAAK,QAAQ,EACb,KAAK,QAAQ,EACb,YAAY,EAEZ,KAAK,MAAM,EACX,KAAK,UAAU,EACf,cAAc,EACd,kBAAkB,EAClB,sBAAsB,EAEtB,UAAU,EACV,KAAK,QAAQ,EACb,KAAK,IAAI,EACT,KAAK,eAAe,EACpB,KAAK,QAAQ,EACb,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,GAAG,EACR,KAAK,OAAO,EAEZ,KAAK,WAAW,EAChB,KAAK,SAAS,EAEd,KAAK,MAAM,EACX,KAAK,iBAAiB,EACtB,KAAK,UAAU,EAEf,KAAK,OAAO,EACZ,KAAK,aAAa,EAElB,WAAW,EACX,cAAc,EACd,gBAAgB,EAChB,wBAAwB,EACxB,yBAAyB,EAIzB,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,SAAS,EACd,KAAK,UAAU,GAChB,MAAM,eAAe,CAAC;AAKvB,OAAO,EACL,UAAU,EACV,IAAI,EACJ,KAAK,EACL,eAAe,EACf,oBAAoB,EACpB,WAAW,EACX,cAAc,GACf,MAAM,kBAAkB,CAAC;AAK1B,OAAO,EAEL,eAAe,EACf,gBAAgB,EAChB,YAAY,EACZ,cAAc,EACd,KAAK,QAAQ,EAGb,MAAM,EACN,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EACtB,KAAK,MAAM,EACX,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,WAAW,EAGhB,aAAa,EACb,KAAK,MAAM,EACX,kBAAkB,EAClB,KAAK,WAAW,EAGhB,eAAe,EACf,uBAAuB,EAGvB,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,aAAa,EACb,KAAK,QAAQ,EACb,KAAK,QAAQ,EACb,KAAK,mBAAmB,EAGxB,QAAQ,EACR,WAAW,EACX,cAAc,EACd,OAAO,EACP,aAAa,EACb,gBAAgB,EAGhB,gBAAgB,EAChB,KAAK,cAAc,EAGnB,IAAI,EACJ,KAAK,QAAQ,GACd,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../export/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAIL,KAAK,UAAU,EACf,KAAK,UAAU,EAIf,KAAK,eAAe,EACpB,KAAK,WAAW,EAKhB,WAAW,EACX,KAAK,SAAS,EACd,KAAK,KAAK,EACV,KAAK,gBAAgB,EACrB,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,SAAS,EACd,gBAAgB,EAChB,mBAAmB,EAEnB,KAAK,iBAAiB,EACtB,KAAK,UAAU,EAEf,UAAU,EACV,KAAK,QAAQ,EACb,KAAK,IAAI,EACT,KAAK,eAAe,EACpB,KAAK,QAAQ,EACb,KAAK,QAAQ,EACb,YAAY,EAEZ,KAAK,MAAM,EACX,KAAK,UAAU,EACf,cAAc,EACd,kBAAkB,EAClB,sBAAsB,EAEtB,UAAU,EACV,KAAK,QAAQ,EACb,KAAK,IAAI,EACT,KAAK,eAAe,EACpB,KAAK,QAAQ,EACb,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,GAAG,EACR,KAAK,OAAO,EAEZ,KAAK,WAAW,EAChB,KAAK,SAAS,EAEd,KAAK,MAAM,EACX,KAAK,iBAAiB,EACtB,KAAK,UAAU,EAEf,KAAK,OAAO,EACZ,KAAK,aAAa,EAElB,WAAW,EACX,cAAc,EACd,gBAAgB,EAChB,wBAAwB,EACxB,yBAAyB,EAIzB,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,SAAS,EACd,KAAK,UAAU,GAChB,MAAM,eAAe,CAAC;AAKvB,OAAO,EACL,UAAU,EACV,IAAI,EACJ,KAAK,EACL,eAAe,EACf,oBAAoB,EACpB,WAAW,EACX,cAAc,GACf,MAAM,kBAAkB,CAAC;AAK1B,OAAO,EAEL,eAAe,EACf,gBAAgB,EAChB,YAAY,EACZ,cAAc,EACd,KAAK,QAAQ,EAGb,MAAM,EACN,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EACtB,KAAK,MAAM,EACX,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,WAAW,EAGhB,aAAa,EACb,KAAK,MAAM,EACX,kBAAkB,EAClB,KAAK,WAAW,EAGhB,eAAe,EACf,uBAAuB,EAGvB,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,aAAa,EACb,KAAK,QAAQ,EACb,KAAK,QAAQ,EACb,KAAK,mBAAmB,EAGxB,QAAQ,EACR,WAAW,EACX,cAAc,EACd,OAAO,EACP,aAAa,EACb,gBAAgB,EAChB,SAAS,EAGT,gBAAgB,EAChB,KAAK,cAAc,EAGnB,IAAI,EACJ,KAAK,QAAQ,GACd,MAAM,eAAe,CAAC"}
@@ -1,2 +1,2 @@
1
- export { createJwtService, createArgon2Service, createCryptoService, createCookieService, createCache, createCacheResult, createIpRateLimiter, normalizeCacheKey, type RawCacheKey, createZod, createUnique, createExist, createSchemas, createFileSchema, createMultiFileSchema, createTocItemSchema, createTransporter, createSendEmail, createRenderEmailTemplate, createAdminCommandRepository, createAdminQueryRepository, createAdminRefreshTokenCommandRepository, createAdminRefreshTokenQueryRepository, createFileCommandRepository, createFileQueryRepository, createFolderCommandRepository, createFolderQueryRepository, createPostCommandRepository, createPostQueryRepository, POST_LIST_CARD_INCLUDE, createSeoMetadataCommandRepository, createConfigCommandRepository, createConfigQueryRepository, createInquiryCommandRepository, createInquiryQueryRepository, ORDER_BY, ADMIN_ORDER_BY, POST_ORDER_BY, createExecuteAction, createExecuteApi, createRunAction, createAuthMiddleware, createVerifyAccessToken, createVerifyRefreshToken, type ActionContext, createSignInAction, createSignOutAction, createVerifyAction, createChangePasswordAction, createVerifyEmailAction, createEmailUnverifiedAction, createForgotPasswordAction, createResetPasswordAction, createAdminCreateAction, type AdminCreateFormData, createAdminUpdateAction, type AdminUpdateFormData, createAdminDeleteAction, createAdminFindFullAction, createAdminFindListCardsAction, createAdminRefreshTokenDeleteAction, createAdminRefreshTokenFindManyAction, createFileCreateAction, type FileCreateFormData, createFileUpdateAction, type FileUpdateFormData, createFileCreateManyAction, type FileCreateManyFormData, createFilePurgeManyAction, createFileRestoreManyAction, createFileSoftDeleteAction, createFileSoftDeleteManyAction, createFileFindFullAction, createFileFindListCardsAction, createFolderCreateAction, type FolderCreateFormData, createFolderUpdateAction, type FolderUpdateFormData, createFolderDeleteAction, createFolderFindFullAction, createFolderFindListCardsAction, createPostCreateAction, type PostCreateFormData, createPostUpdateAction, type PostUpdateFormData, createPostDeleteAction, createPostFindAction, createPostFindFullAction, createPostFindListCardsAction, createPostFindManyAction, createSeoMetadataUpsertAction, type SeoMetadataUpsertFormData, createConfigUpdateAction, type ConfigUpdateFormData, createConfigFindAction, createConfigFindManyAction, createInquiryCreateAction, type InquiryCreateFormData, createInquiryDeleteAction, createInquiryFindAction, createInquiryFindListCardsAction, type ApiContext, type FileUploadRequestDto, type FileUploadResponseDto, createFileUploadApi, type MultiFilesUploadRequestDto, type MultiFilesUploadResponseDto, createMultiFilesUploadApi, createEmailsApi, createPreviewEmailApi, createAuthUseCases, createEmailVerificationEmail, createForgotPasswordEmail, createNewInquiryEmail, createLoadPage, createLoadCategories, createLoadCategory, createLoadPosts, createLoadPost, createLoadConfig, createBuildMetadata, toIsoTime, createBuildAlternatePathnames, createNormalizeSearch, createResolveUrls, ServerError, } from "../../src/server";
1
+ export { createJwtService, createArgon2Service, createCryptoService, createCookieService, createCache, createCacheResult, createIpRateLimiter, normalizeCacheKey, type RawCacheKey, createZod, createUnique, createExist, createSchemas, createFileSchema, createMultiFileSchema, createTocItemSchema, createTransporter, createSendEmail, createRenderEmailTemplate, createAdminCommandRepository, createAdminQueryRepository, createAdminRefreshTokenCommandRepository, createAdminRefreshTokenQueryRepository, createFileCommandRepository, createFileQueryRepository, createFolderCommandRepository, createFolderQueryRepository, createPostCommandRepository, createPostQueryRepository, POST_LIST_CARD_INCLUDE, createSeoMetadataCommandRepository, createConfigCommandRepository, createConfigQueryRepository, createInquiryCommandRepository, createInquiryQueryRepository, ORDER_BY, ADMIN_ORDER_BY, POST_ORDER_BY, createExecuteAction, createExecuteApi, createRunAction, createAuthMiddleware, createVerifyAccessToken, createVerifyRefreshToken, type ActionContext, createSignInAction, createSignOutAction, createVerifyAction, createChangePasswordAction, createVerifyEmailAction, createEmailUnverifiedAction, createForgotPasswordAction, createResetPasswordAction, createAdminCreateAction, type AdminCreateFormData, createAdminUpdateAction, type AdminUpdateFormData, createAdminDeleteAction, createAdminFindFullAction, createAdminFindListCardsAction, createAdminRefreshTokenDeleteAction, createAdminRefreshTokenFindManyAction, createFileCreateAction, type FileCreateFormData, createFileUpdateAction, type FileUpdateFormData, createFileCreateManyAction, type FileCreateManyFormData, createFilePurgeManyAction, createFileRestoreManyAction, createFileSoftDeleteAction, createFileSoftDeleteManyAction, createFileFindFullAction, createFileFindListCardsAction, createFolderCreateAction, type FolderCreateFormData, createFolderUpdateAction, type FolderUpdateFormData, createFolderDeleteAction, createFolderFindFullAction, createFolderFindListCardsAction, createPostCreateAction, type PostCreateFormData, createPostUpdateAction, type PostUpdateFormData, createPostDeleteAction, createPostFindAction, createPostFindFullAction, createPostFindListCardsAction, createPostFindManyAction, createSeoMetadataUpsertAction, type SeoMetadataUpsertFormData, createConfigUpdateAction, type ConfigUpdateFormData, createConfigFindAction, createConfigFindManyAction, createInquiryCreateAction, type InquiryCreateFormData, createInquiryDeleteAction, createInquiryFindAction, createInquiryFindListCardsAction, type ApiContext, type FileUploadRequestDto, type FileUploadResponseDto, createFileUploadApi, type MultiFilesUploadRequestDto, type MultiFilesUploadResponseDto, createMultiFilesUploadApi, createEmailsApi, createPreviewEmailApi, createAuthUseCases, createEmailVerificationEmail, createForgotPasswordEmail, createNewInquiryEmail, createLoadPage, createLoadCategories, createLoadCategory, createLoadPosts, createLoadPost, createLoadConfig, createBuildMetadata, createBuildAlternatePathnames, createResolveUrls, ServerError, } from "../../src/server";
2
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../export/server/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EAGnB,WAAW,EACX,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,KAAK,WAAW,EAGhB,SAAS,EACT,YAAY,EACZ,WAAW,EACX,aAAa,EACb,gBAAgB,EAChB,qBAAqB,EACrB,mBAAmB,EAGnB,iBAAiB,EACjB,eAAe,EACf,yBAAyB,EAIzB,4BAA4B,EAC5B,0BAA0B,EAE1B,wCAAwC,EACxC,sCAAsC,EAEtC,2BAA2B,EAC3B,yBAAyB,EAEzB,6BAA6B,EAC7B,2BAA2B,EAE3B,2BAA2B,EAC3B,yBAAyB,EACzB,sBAAsB,EAEtB,kCAAkC,EAElC,6BAA6B,EAC7B,2BAA2B,EAE3B,8BAA8B,EAC9B,4BAA4B,EAE5B,QAAQ,EACR,cAAc,EACd,aAAa,EAMb,mBAAmB,EACnB,gBAAgB,EAChB,eAAe,EAEf,oBAAoB,EACpB,uBAAuB,EACvB,wBAAwB,EAGxB,KAAK,aAAa,EAElB,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,0BAA0B,EAC1B,uBAAuB,EACvB,2BAA2B,EAC3B,0BAA0B,EAC1B,yBAAyB,EAGzB,uBAAuB,EACvB,KAAK,mBAAmB,EACxB,uBAAuB,EACvB,KAAK,mBAAmB,EACxB,uBAAuB,EACvB,yBAAyB,EACzB,8BAA8B,EAE9B,mCAAmC,EACnC,qCAAqC,EAErC,sBAAsB,EACtB,KAAK,kBAAkB,EACvB,sBAAsB,EACtB,KAAK,kBAAkB,EACvB,0BAA0B,EAC1B,KAAK,sBAAsB,EAC3B,yBAAyB,EACzB,2BAA2B,EAC3B,0BAA0B,EAC1B,8BAA8B,EAC9B,wBAAwB,EACxB,6BAA6B,EAE7B,wBAAwB,EACxB,KAAK,oBAAoB,EACzB,wBAAwB,EACxB,KAAK,oBAAoB,EACzB,wBAAwB,EACxB,0BAA0B,EAC1B,+BAA+B,EAE/B,sBAAsB,EACtB,KAAK,kBAAkB,EACvB,sBAAsB,EACtB,KAAK,kBAAkB,EACvB,sBAAsB,EACtB,oBAAoB,EACpB,wBAAwB,EACxB,6BAA6B,EAC7B,wBAAwB,EAExB,6BAA6B,EAC7B,KAAK,yBAAyB,EAE9B,wBAAwB,EACxB,KAAK,oBAAoB,EACzB,sBAAsB,EACtB,0BAA0B,EAE1B,yBAAyB,EACzB,KAAK,qBAAqB,EAC1B,yBAAyB,EACzB,uBAAuB,EACvB,gCAAgC,EAEhC,KAAK,UAAU,EACf,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,EAC1B,mBAAmB,EACnB,KAAK,0BAA0B,EAC/B,KAAK,2BAA2B,EAChC,yBAAyB,EACzB,eAAe,EACf,qBAAqB,EAOrB,kBAAkB,EAGlB,4BAA4B,EAC5B,yBAAyB,EACzB,qBAAqB,EAIrB,cAAc,EACd,oBAAoB,EACpB,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,gBAAgB,EAEhB,mBAAmB,EACnB,SAAS,EACT,6BAA6B,EAC7B,qBAAqB,EACrB,iBAAiB,EAKjB,WAAW,GACZ,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../export/server/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EAGnB,WAAW,EACX,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,KAAK,WAAW,EAGhB,SAAS,EACT,YAAY,EACZ,WAAW,EACX,aAAa,EACb,gBAAgB,EAChB,qBAAqB,EACrB,mBAAmB,EAGnB,iBAAiB,EACjB,eAAe,EACf,yBAAyB,EAIzB,4BAA4B,EAC5B,0BAA0B,EAE1B,wCAAwC,EACxC,sCAAsC,EAEtC,2BAA2B,EAC3B,yBAAyB,EAEzB,6BAA6B,EAC7B,2BAA2B,EAE3B,2BAA2B,EAC3B,yBAAyB,EACzB,sBAAsB,EAEtB,kCAAkC,EAElC,6BAA6B,EAC7B,2BAA2B,EAE3B,8BAA8B,EAC9B,4BAA4B,EAE5B,QAAQ,EACR,cAAc,EACd,aAAa,EAMb,mBAAmB,EACnB,gBAAgB,EAChB,eAAe,EAEf,oBAAoB,EACpB,uBAAuB,EACvB,wBAAwB,EAGxB,KAAK,aAAa,EAElB,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,0BAA0B,EAC1B,uBAAuB,EACvB,2BAA2B,EAC3B,0BAA0B,EAC1B,yBAAyB,EAGzB,uBAAuB,EACvB,KAAK,mBAAmB,EACxB,uBAAuB,EACvB,KAAK,mBAAmB,EACxB,uBAAuB,EACvB,yBAAyB,EACzB,8BAA8B,EAE9B,mCAAmC,EACnC,qCAAqC,EAErC,sBAAsB,EACtB,KAAK,kBAAkB,EACvB,sBAAsB,EACtB,KAAK,kBAAkB,EACvB,0BAA0B,EAC1B,KAAK,sBAAsB,EAC3B,yBAAyB,EACzB,2BAA2B,EAC3B,0BAA0B,EAC1B,8BAA8B,EAC9B,wBAAwB,EACxB,6BAA6B,EAE7B,wBAAwB,EACxB,KAAK,oBAAoB,EACzB,wBAAwB,EACxB,KAAK,oBAAoB,EACzB,wBAAwB,EACxB,0BAA0B,EAC1B,+BAA+B,EAE/B,sBAAsB,EACtB,KAAK,kBAAkB,EACvB,sBAAsB,EACtB,KAAK,kBAAkB,EACvB,sBAAsB,EACtB,oBAAoB,EACpB,wBAAwB,EACxB,6BAA6B,EAC7B,wBAAwB,EAExB,6BAA6B,EAC7B,KAAK,yBAAyB,EAE9B,wBAAwB,EACxB,KAAK,oBAAoB,EACzB,sBAAsB,EACtB,0BAA0B,EAE1B,yBAAyB,EACzB,KAAK,qBAAqB,EAC1B,yBAAyB,EACzB,uBAAuB,EACvB,gCAAgC,EAEhC,KAAK,UAAU,EACf,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,EAC1B,mBAAmB,EACnB,KAAK,0BAA0B,EAC/B,KAAK,2BAA2B,EAChC,yBAAyB,EACzB,eAAe,EACf,qBAAqB,EAOrB,kBAAkB,EAGlB,4BAA4B,EAC5B,yBAAyB,EACzB,qBAAqB,EAIrB,cAAc,EACd,oBAAoB,EACpB,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,gBAAgB,EAEhB,mBAAmB,EACnB,6BAA6B,EAC7B,iBAAiB,EAKjB,WAAW,GACZ,MAAM,kBAAkB,CAAC"}
@@ -1,2 +1,3 @@
1
1
  export { useDeviceInfo, usePickItems, getControlMeta, getImgIdsFromHtmls, createProcessContentHtml, createUseSeoMetadataUpsertFormData, cn, useIsMobile, useCountdown, useParentPathname, isConfirm, buildPagination, } from "./cms";
2
+ export { buildTopicItemList, createBuildBreadcrumb, createBuildContent, createBuildPublisher, createBuildWebPage, createBuildWebsite, createGetPageIdentity, createGraph, createMapCategoryItem, createMapPostItem, createResolveTopicItemList, } from "./web";
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/client/applications/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,aAAa,EAEb,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,wBAAwB,EAExB,kCAAkC,EAElC,EAAE,EACF,WAAW,EAEX,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,eAAe,GAChB,MAAM,OAAO,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/client/applications/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,aAAa,EAEb,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,wBAAwB,EAExB,kCAAkC,EAElC,EAAE,EACF,WAAW,EAEX,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,eAAe,GAChB,MAAM,OAAO,CAAC;AAEf,OAAO,EACL,kBAAkB,EAClB,qBAAqB,EACrB,kBAAkB,EAClB,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,qBAAqB,EACrB,WAAW,EACX,qBAAqB,EACrB,iBAAiB,EACjB,0BAA0B,GAC3B,MAAM,OAAO,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { buildTopicItemList, createBuildBreadcrumb, createBuildContent, createBuildPublisher, createBuildWebPage, createBuildWebsite, createGetPageIdentity, createGraph, createMapCategoryItem, createMapPostItem, createResolveTopicItemList, } from "./structured-data";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/client/applications/web/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,qBAAqB,EACrB,kBAAkB,EAClB,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,qBAAqB,EACrB,WAAW,EACX,qBAAqB,EACrB,iBAAiB,EACjB,0BAA0B,GAC3B,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,11 @@
1
+ import type { createGetPageIdentity, PageIdentity } from "../get-page-identity";
2
+ import type { BreadcrumbList } from "schema-dts";
3
+ interface BreadcrumbItem {
4
+ name: string;
5
+ pathname: string;
6
+ }
7
+ export declare function createBuildBreadcrumb({ getPageIdentity, }: {
8
+ getPageIdentity: ReturnType<typeof createGetPageIdentity>;
9
+ }): (pageIdentity: PageIdentity, items: BreadcrumbItem[]) => BreadcrumbList | undefined;
10
+ export {};
11
+ //# sourceMappingURL=build-breadcrumb.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-breadcrumb.d.ts","sourceRoot":"","sources":["../../../../../../../../src/client/applications/web/structured-data/build/build-breadcrumb.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAChF,OAAO,KAAK,EAAE,cAAc,EAAY,MAAM,YAAY,CAAC;AAE3D,UAAU,cAAc;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,qBAAqB,CAAC,EACpC,eAAe,GAChB,EAAE;IACD,eAAe,EAAE,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC;CAC3D,IAEG,cAAc,YAAY,EAC1B,OAAO,cAAc,EAAE,KACtB,cAAc,GAAG,SAAS,CA2B9B"}