@uptrademedia/site-kit 1.0.4 → 1.0.7
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 +96 -25
- package/dist/analytics/index.js +7 -7
- package/dist/analytics/index.mjs +3 -3
- package/dist/api-QUIPJJCX.js +77 -0
- package/dist/api-QUIPJJCX.js.map +1 -0
- package/dist/api-V3BA5PMX.mjs +4 -0
- package/dist/api-V3BA5PMX.mjs.map +1 -0
- package/dist/blog/index.d.mts +160 -5
- package/dist/blog/index.d.ts +160 -5
- package/dist/blog/index.js +1166 -18
- package/dist/blog/index.js.map +1 -1
- package/dist/blog/index.mjs +1156 -18
- package/dist/blog/index.mjs.map +1 -1
- package/dist/blog/server.d.mts +229 -0
- package/dist/blog/server.d.ts +229 -0
- package/dist/blog/server.js +692 -0
- package/dist/blog/server.js.map +1 -0
- package/dist/blog/server.mjs +666 -0
- package/dist/blog/server.mjs.map +1 -0
- package/dist/{chunk-FKVJOT2F.mjs → chunk-42EXHJTC.mjs} +196 -7
- package/dist/chunk-42EXHJTC.mjs.map +1 -0
- package/dist/{scanner-AZV5I6US.mjs → chunk-44OMJFCG.mjs} +354 -14
- package/dist/chunk-44OMJFCG.mjs.map +1 -0
- package/dist/chunk-4TGJYNHV.js +981 -0
- package/dist/chunk-4TGJYNHV.js.map +1 -0
- package/dist/chunk-4XPGGLVP.mjs +53 -0
- package/dist/{chunk-NYKRE2FL.mjs.map → chunk-4XPGGLVP.mjs.map} +1 -1
- package/dist/{generators-TO2FKJR6.mjs → chunk-6ONUXZDO.mjs} +26 -9
- package/dist/chunk-6ONUXZDO.mjs.map +1 -0
- package/dist/chunk-CG53ASWX.mjs +729 -0
- package/dist/chunk-CG53ASWX.mjs.map +1 -0
- package/dist/{scanner-ETJAMIT7.js → chunk-DERI27QC.js} +448 -102
- package/dist/chunk-DERI27QC.js.map +1 -0
- package/dist/chunk-DYM5ML2V.mjs +1518 -0
- package/dist/chunk-DYM5ML2V.mjs.map +1 -0
- package/dist/chunk-FLZZOX44.js +1526 -0
- package/dist/chunk-FLZZOX44.js.map +1 -0
- package/dist/{chunk-7H6I3ECV.mjs → chunk-FQVGK746.mjs} +63 -3
- package/dist/chunk-FQVGK746.mjs.map +1 -0
- package/dist/{chunk-GQ6ZOU2N.mjs → chunk-JGQPAXTL.mjs} +4 -4
- package/dist/{chunk-GQ6ZOU2N.mjs.map → chunk-JGQPAXTL.mjs.map} +1 -1
- package/dist/{chunk-V3F5J6CV.js → chunk-JUEVN4Q4.js} +196 -7
- package/dist/chunk-JUEVN4Q4.js.map +1 -0
- package/dist/chunk-KKMGTT7F.mjs +968 -0
- package/dist/chunk-KKMGTT7F.mjs.map +1 -0
- package/dist/{chunk-XQJX252G.mjs → chunk-MB3WR5KJ.mjs} +28 -18
- package/dist/chunk-MB3WR5KJ.mjs.map +1 -0
- package/dist/{chunk-2IHTEKHU.mjs → chunk-QD5CN2OI.mjs} +16 -7
- package/dist/chunk-QD5CN2OI.mjs.map +1 -0
- package/dist/chunk-QD66FTXZ.mjs +278 -0
- package/dist/chunk-QD66FTXZ.mjs.map +1 -0
- package/dist/{chunk-SBVEYCSV.js → chunk-QQB4FO4Q.js} +7 -7
- package/dist/{chunk-SBVEYCSV.js.map → chunk-QQB4FO4Q.js.map} +1 -1
- package/dist/{generators-YZWIGHCO.js → chunk-S2GXR5HY.js} +26 -9
- package/dist/chunk-S2GXR5HY.js.map +1 -0
- package/dist/{chunk-O2OHHBUD.js → chunk-TDK7DLCH.js} +30 -20
- package/dist/chunk-TDK7DLCH.js.map +1 -0
- package/dist/chunk-UJQ73OS6.js +282 -0
- package/dist/chunk-UJQ73OS6.js.map +1 -0
- package/dist/{chunk-QP5NCO2E.js → chunk-VDI7KYME.js} +67 -2
- package/dist/chunk-VDI7KYME.js.map +1 -0
- package/dist/chunk-VOR53RUR.js +753 -0
- package/dist/chunk-VOR53RUR.js.map +1 -0
- package/dist/{chunk-GAJLEDRD.js → chunk-ZKJ7JKFV.js} +16 -7
- package/dist/chunk-ZKJ7JKFV.js.map +1 -0
- package/dist/chunk-ZSMWDLMK.js +63 -0
- package/dist/{chunk-EQCVQC35.js.map → chunk-ZSMWDLMK.js.map} +1 -1
- package/dist/cli/index.js +37269 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/index.mjs +37233 -0
- package/dist/cli/index.mjs.map +1 -0
- package/dist/commerce/index.js +1 -1
- package/dist/commerce/index.mjs +1 -1
- package/dist/commerce/server.d.mts +12 -3
- package/dist/commerce/server.d.ts +12 -3
- package/dist/commerce/server.js +71 -70
- package/dist/commerce/server.js.map +1 -1
- package/dist/commerce/server.mjs +71 -70
- package/dist/commerce/server.mjs.map +1 -1
- package/dist/engage/index.d.mts +6 -4
- package/dist/engage/index.d.ts +6 -4
- package/dist/engage/index.js +8 -4
- package/dist/engage/index.mjs +2 -2
- package/dist/forms/index.js +1 -1
- package/dist/forms/index.mjs +1 -1
- package/dist/generators-5EU4PTVF.js +33 -0
- package/dist/generators-5EU4PTVF.js.map +1 -0
- package/dist/generators-TYPILCWD.mjs +4 -0
- package/dist/generators-TYPILCWD.mjs.map +1 -0
- package/dist/images/index.js +11 -11
- package/dist/images/index.mjs +4 -4
- package/dist/index.d.mts +155 -5
- package/dist/index.d.ts +155 -5
- package/dist/index.js +979 -50
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +821 -8
- package/dist/index.mjs.map +1 -1
- package/dist/llms/index.d.mts +657 -0
- package/dist/llms/index.d.ts +657 -0
- package/dist/llms/index.js +101 -0
- package/dist/llms/index.js.map +1 -0
- package/dist/llms/index.mjs +4 -0
- package/dist/llms/index.mjs.map +1 -0
- package/dist/migrator-ARLHUNB3.mjs +4 -0
- package/dist/migrator-ARLHUNB3.mjs.map +1 -0
- package/dist/migrator-VZLBH3VY.js +37 -0
- package/dist/migrator-VZLBH3VY.js.map +1 -0
- package/dist/redirects/index.js +1 -1
- package/dist/redirects/index.mjs +1 -1
- package/dist/reputation/index.d.mts +57 -0
- package/dist/reputation/index.d.ts +57 -0
- package/dist/reputation/index.js +21 -0
- package/dist/reputation/index.js.map +1 -0
- package/dist/reputation/index.mjs +4 -0
- package/dist/reputation/index.mjs.map +1 -0
- package/dist/{routing-BWjUF7lp.d.ts → routing-CF91y6NO.d.ts} +1 -1
- package/dist/{routing-CgmRi9tD.d.mts → routing-CIOFpFCB.d.mts} +1 -1
- package/dist/scanner-7ZMUM2P5.mjs +4 -0
- package/dist/scanner-7ZMUM2P5.mjs.map +1 -0
- package/dist/scanner-OY7UF3WA.js +53 -0
- package/dist/scanner-OY7UF3WA.js.map +1 -0
- package/dist/seo/index.d.mts +267 -7
- package/dist/seo/index.d.ts +267 -7
- package/dist/seo/index.js +432 -24
- package/dist/seo/index.js.map +1 -1
- package/dist/seo/index.mjs +400 -11
- package/dist/seo/index.mjs.map +1 -1
- package/dist/seo/server.d.mts +11 -4
- package/dist/seo/server.d.ts +11 -4
- package/dist/seo/server.js +17 -17
- package/dist/seo/server.mjs +3 -3
- package/dist/setup/client.js +1 -1
- package/dist/setup/client.mjs +1 -1
- package/dist/setup/index.js +3 -3
- package/dist/setup/index.mjs +2 -2
- package/dist/setup/server.js +3 -3
- package/dist/setup/server.mjs +2 -2
- package/dist/sitemap/index.js +2 -2
- package/dist/sitemap/index.js.map +1 -1
- package/dist/sitemap/index.mjs +2 -2
- package/dist/sitemap/index.mjs.map +1 -1
- package/dist/{types-C0pJGfbH.d.mts → types-D6FHAVWX.d.mts} +99 -3
- package/dist/{types-C0pJGfbH.d.ts → types-D6FHAVWX.d.ts} +99 -3
- package/dist/{types-BDojCvvL.d.mts → types-DI0jnhjJ.d.mts} +31 -8
- package/dist/{types-BDojCvvL.d.ts → types-DI0jnhjJ.d.ts} +31 -8
- package/dist/{types-BmzutFwy.d.ts → types-j8X4vUhB.d.mts} +19 -2
- package/dist/{types-BmzutFwy.d.mts → types-j8X4vUhB.d.ts} +19 -2
- package/dist/{web-vitals-BH55V7EJ.js → web-vitals-444RLW3B.js} +11 -11
- package/dist/{web-vitals-BH55V7EJ.js.map → web-vitals-444RLW3B.js.map} +1 -1
- package/dist/{web-vitals-RJYPWAR3.mjs → web-vitals-KPICZIEF.mjs} +3 -3
- package/dist/{web-vitals-RJYPWAR3.mjs.map → web-vitals-KPICZIEF.mjs.map} +1 -1
- package/package.json +22 -10
- package/dist/api-N35S3EES.js +0 -57
- package/dist/api-N35S3EES.js.map +0 -1
- package/dist/api-SYBTK7Z7.mjs +0 -4
- package/dist/api-SYBTK7Z7.mjs.map +0 -1
- package/dist/chunk-2IHTEKHU.mjs.map +0 -1
- package/dist/chunk-7H6I3ECV.mjs.map +0 -1
- package/dist/chunk-BGJLOJ7T.mjs +0 -605
- package/dist/chunk-BGJLOJ7T.mjs.map +0 -1
- package/dist/chunk-EQCVQC35.js +0 -35
- package/dist/chunk-FKVJOT2F.mjs.map +0 -1
- package/dist/chunk-GAJLEDRD.js.map +0 -1
- package/dist/chunk-NYKRE2FL.mjs +0 -31
- package/dist/chunk-O2OHHBUD.js.map +0 -1
- package/dist/chunk-QAYJV4KK.js +0 -608
- package/dist/chunk-QAYJV4KK.js.map +0 -1
- package/dist/chunk-QP5NCO2E.js.map +0 -1
- package/dist/chunk-V3F5J6CV.js.map +0 -1
- package/dist/chunk-XQJX252G.mjs.map +0 -1
- package/dist/generators-TO2FKJR6.mjs.map +0 -1
- package/dist/generators-YZWIGHCO.js.map +0 -1
- package/dist/migrator-V6KS75EA.mjs +0 -265
- package/dist/migrator-V6KS75EA.mjs.map +0 -1
- package/dist/migrator-XKM7YQCY.js +0 -272
- package/dist/migrator-XKM7YQCY.js.map +0 -1
- package/dist/scanner-AZV5I6US.mjs.map +0 -1
- package/dist/scanner-ETJAMIT7.js.map +0 -1
package/README.md
CHANGED
|
@@ -158,43 +158,114 @@ export default function CustomContactPage() {
|
|
|
158
158
|
|
|
159
159
|
### Blog (`@uptrade/site-kit/blog`)
|
|
160
160
|
|
|
161
|
-
|
|
161
|
+
Complete Portal-managed blog system with beautiful layouts, dynamic routing, categories, and SEO.
|
|
162
|
+
|
|
163
|
+
**Create posts in Portal → Automatically appear on your site.**
|
|
162
164
|
|
|
163
165
|
```tsx
|
|
164
|
-
|
|
166
|
+
// app/blog/page.tsx - Blog Index
|
|
167
|
+
import { BlogList, BlogLayout } from '@uptrade/site-kit/blog'
|
|
168
|
+
import { generateBlogIndexMetadata } from '@uptrade/site-kit/blog/server'
|
|
169
|
+
|
|
170
|
+
export const metadata = generateBlogIndexMetadata({
|
|
171
|
+
title: 'Blog',
|
|
172
|
+
siteName: 'My Company',
|
|
173
|
+
siteUrl: 'https://example.com',
|
|
174
|
+
})
|
|
165
175
|
|
|
166
|
-
|
|
167
|
-
export default function BlogPage() {
|
|
176
|
+
export default function BlogPage({ searchParams }) {
|
|
168
177
|
return (
|
|
169
|
-
<
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
+
<BlogLayout
|
|
179
|
+
hero={{ title: 'Blog', subtitle: 'Latest insights and articles' }}
|
|
180
|
+
layout="sidebar-right"
|
|
181
|
+
>
|
|
182
|
+
<BlogList
|
|
183
|
+
category={searchParams.category}
|
|
184
|
+
page={parseInt(searchParams.page || '1')}
|
|
185
|
+
showCategoryFilter
|
|
186
|
+
showPagination
|
|
187
|
+
/>
|
|
188
|
+
</BlogLayout>
|
|
178
189
|
)
|
|
179
190
|
}
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
```tsx
|
|
194
|
+
// app/blog/[slug]/page.tsx - Individual Post
|
|
195
|
+
import { BlogPost } from '@uptrade/site-kit/blog'
|
|
196
|
+
import {
|
|
197
|
+
generateBlogPostMetadata,
|
|
198
|
+
generateBlogStaticParams,
|
|
199
|
+
getBlogPost,
|
|
200
|
+
generateBlogPostSchema
|
|
201
|
+
} from '@uptrade/site-kit/blog/server'
|
|
202
|
+
|
|
203
|
+
// Pre-generate all post pages at build time
|
|
204
|
+
export const generateStaticParams = generateBlogStaticParams
|
|
205
|
+
|
|
206
|
+
// Dynamic metadata for SEO
|
|
207
|
+
export async function generateMetadata({ params }) {
|
|
208
|
+
return generateBlogPostMetadata(params.slug, {
|
|
209
|
+
siteName: 'My Company',
|
|
210
|
+
siteUrl: 'https://example.com',
|
|
211
|
+
})
|
|
212
|
+
}
|
|
180
213
|
|
|
181
|
-
|
|
182
|
-
|
|
214
|
+
export default async function PostPage({ params }) {
|
|
215
|
+
const post = await getBlogPost(params.slug)
|
|
216
|
+
|
|
183
217
|
return (
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
218
|
+
<>
|
|
219
|
+
{/* JSON-LD Schema */}
|
|
220
|
+
<script
|
|
221
|
+
type="application/ld+json"
|
|
222
|
+
dangerouslySetInnerHTML={{
|
|
223
|
+
__html: JSON.stringify(generateBlogPostSchema(post, {
|
|
224
|
+
siteUrl: 'https://example.com',
|
|
225
|
+
siteName: 'My Company',
|
|
226
|
+
})),
|
|
227
|
+
}}
|
|
228
|
+
/>
|
|
229
|
+
|
|
230
|
+
{/* Blog Post with TOC and Related Posts */}
|
|
231
|
+
<BlogPost
|
|
232
|
+
slug={params.slug}
|
|
233
|
+
showToc
|
|
234
|
+
showRelated
|
|
235
|
+
showAuthor
|
|
236
|
+
/>
|
|
237
|
+
</>
|
|
194
238
|
)
|
|
195
239
|
}
|
|
196
240
|
```
|
|
197
241
|
|
|
242
|
+
#### Available Components
|
|
243
|
+
|
|
244
|
+
| Component | Purpose |
|
|
245
|
+
|-----------|---------|
|
|
246
|
+
| `BlogList` | Grid of posts with pagination & category filter |
|
|
247
|
+
| `BlogPost` | Full post with TOC, author, related posts |
|
|
248
|
+
| `BlogLayout` | Complete layout with sidebar |
|
|
249
|
+
| `BlogSidebar` | Categories, recent posts, tags, search |
|
|
250
|
+
| `TableOfContents` | Sticky TOC from headings |
|
|
251
|
+
| `AuthorCard` | Author info with social links |
|
|
252
|
+
| `RelatedPosts` | Related posts by category |
|
|
253
|
+
|
|
254
|
+
#### Server Functions
|
|
255
|
+
|
|
256
|
+
```tsx
|
|
257
|
+
import {
|
|
258
|
+
getBlogPost, // Fetch single post
|
|
259
|
+
getAllBlogSlugs, // For generateStaticParams
|
|
260
|
+
getBlogCategories, // All categories
|
|
261
|
+
generateBlogPostMetadata, // Post page metadata
|
|
262
|
+
generateBlogIndexMetadata, // Index page metadata
|
|
263
|
+
generateBlogStaticParams, // SSG params
|
|
264
|
+
generateBlogSitemap, // Sitemap entries
|
|
265
|
+
generateBlogPostSchema, // JSON-LD
|
|
266
|
+
} from '@uptrade/site-kit/blog/server'
|
|
267
|
+
```
|
|
268
|
+
|
|
198
269
|
## Configuration
|
|
199
270
|
|
|
200
271
|
### Full Provider Options
|
package/dist/analytics/index.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
require('../chunk-
|
|
3
|
+
var chunkJUEVN4Q4_js = require('../chunk-JUEVN4Q4.js');
|
|
4
|
+
require('../chunk-ZSMWDLMK.js');
|
|
5
5
|
var react = require('react');
|
|
6
6
|
|
|
7
7
|
function useContactTracking(options = {}) {
|
|
8
8
|
const { autoTrack = true, debug = false } = options;
|
|
9
|
-
const { trackConversion } =
|
|
9
|
+
const { trackConversion } = chunkJUEVN4Q4_js.useAnalytics();
|
|
10
10
|
const trackPhoneClick = react.useCallback((phoneNumber, metadata) => {
|
|
11
11
|
if (debug) console.log("[Analytics] Phone click:", phoneNumber);
|
|
12
12
|
trackConversion({
|
|
@@ -68,19 +68,19 @@ function ContactTracking({ debug = false }) {
|
|
|
68
68
|
|
|
69
69
|
Object.defineProperty(exports, "AnalyticsProvider", {
|
|
70
70
|
enumerable: true,
|
|
71
|
-
get: function () { return
|
|
71
|
+
get: function () { return chunkJUEVN4Q4_js.AnalyticsProvider; }
|
|
72
72
|
});
|
|
73
73
|
Object.defineProperty(exports, "WebVitals", {
|
|
74
74
|
enumerable: true,
|
|
75
|
-
get: function () { return
|
|
75
|
+
get: function () { return chunkJUEVN4Q4_js.WebVitals; }
|
|
76
76
|
});
|
|
77
77
|
Object.defineProperty(exports, "useAnalytics", {
|
|
78
78
|
enumerable: true,
|
|
79
|
-
get: function () { return
|
|
79
|
+
get: function () { return chunkJUEVN4Q4_js.useAnalytics; }
|
|
80
80
|
});
|
|
81
81
|
Object.defineProperty(exports, "useTrackEvent", {
|
|
82
82
|
enumerable: true,
|
|
83
|
-
get: function () { return
|
|
83
|
+
get: function () { return chunkJUEVN4Q4_js.useTrackEvent; }
|
|
84
84
|
});
|
|
85
85
|
exports.ContactTracking = ContactTracking;
|
|
86
86
|
exports.useContactTracking = useContactTracking;
|
package/dist/analytics/index.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { useAnalytics } from '../chunk-
|
|
2
|
-
export { AnalyticsProvider, WebVitals, useAnalytics, useTrackEvent } from '../chunk-
|
|
3
|
-
import '../chunk-
|
|
1
|
+
import { useAnalytics } from '../chunk-42EXHJTC.mjs';
|
|
2
|
+
export { AnalyticsProvider, WebVitals, useAnalytics, useTrackEvent } from '../chunk-42EXHJTC.mjs';
|
|
3
|
+
import '../chunk-4XPGGLVP.mjs';
|
|
4
4
|
import { useCallback, useEffect } from 'react';
|
|
5
5
|
|
|
6
6
|
function useContactTracking(options = {}) {
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var chunkVDI7KYME_js = require('./chunk-VDI7KYME.js');
|
|
4
|
+
require('./chunk-ZSMWDLMK.js');
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
Object.defineProperty(exports, "getABTest", {
|
|
9
|
+
enumerable: true,
|
|
10
|
+
get: function () { return chunkVDI7KYME_js.getABTest; }
|
|
11
|
+
});
|
|
12
|
+
Object.defineProperty(exports, "getContentBlock", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function () { return chunkVDI7KYME_js.getContentBlock; }
|
|
15
|
+
});
|
|
16
|
+
Object.defineProperty(exports, "getEntities", {
|
|
17
|
+
enumerable: true,
|
|
18
|
+
get: function () { return chunkVDI7KYME_js.getEntities; }
|
|
19
|
+
});
|
|
20
|
+
Object.defineProperty(exports, "getEntityEnhancedSchema", {
|
|
21
|
+
enumerable: true,
|
|
22
|
+
get: function () { return chunkVDI7KYME_js.getEntityEnhancedSchema; }
|
|
23
|
+
});
|
|
24
|
+
Object.defineProperty(exports, "getFAQData", {
|
|
25
|
+
enumerable: true,
|
|
26
|
+
get: function () { return chunkVDI7KYME_js.getFAQData; }
|
|
27
|
+
});
|
|
28
|
+
Object.defineProperty(exports, "getInternalLinks", {
|
|
29
|
+
enumerable: true,
|
|
30
|
+
get: function () { return chunkVDI7KYME_js.getInternalLinks; }
|
|
31
|
+
});
|
|
32
|
+
Object.defineProperty(exports, "getManagedScripts", {
|
|
33
|
+
enumerable: true,
|
|
34
|
+
get: function () { return chunkVDI7KYME_js.getManagedScripts; }
|
|
35
|
+
});
|
|
36
|
+
Object.defineProperty(exports, "getPrimaryEntity", {
|
|
37
|
+
enumerable: true,
|
|
38
|
+
get: function () { return chunkVDI7KYME_js.getPrimaryEntity; }
|
|
39
|
+
});
|
|
40
|
+
Object.defineProperty(exports, "getRedirectData", {
|
|
41
|
+
enumerable: true,
|
|
42
|
+
get: function () { return chunkVDI7KYME_js.getRedirectData; }
|
|
43
|
+
});
|
|
44
|
+
Object.defineProperty(exports, "getRobotsData", {
|
|
45
|
+
enumerable: true,
|
|
46
|
+
get: function () { return chunkVDI7KYME_js.getRobotsData; }
|
|
47
|
+
});
|
|
48
|
+
Object.defineProperty(exports, "getSEOPageData", {
|
|
49
|
+
enumerable: true,
|
|
50
|
+
get: function () { return chunkVDI7KYME_js.getSEOPageData; }
|
|
51
|
+
});
|
|
52
|
+
Object.defineProperty(exports, "getSchemaMarkups", {
|
|
53
|
+
enumerable: true,
|
|
54
|
+
get: function () { return chunkVDI7KYME_js.getSchemaMarkups; }
|
|
55
|
+
});
|
|
56
|
+
Object.defineProperty(exports, "getSitemapEntries", {
|
|
57
|
+
enumerable: true,
|
|
58
|
+
get: function () { return chunkVDI7KYME_js.getSitemapEntries; }
|
|
59
|
+
});
|
|
60
|
+
Object.defineProperty(exports, "getVisibilityScore", {
|
|
61
|
+
enumerable: true,
|
|
62
|
+
get: function () { return chunkVDI7KYME_js.getVisibilityScore; }
|
|
63
|
+
});
|
|
64
|
+
Object.defineProperty(exports, "getVisibilitySummary", {
|
|
65
|
+
enumerable: true,
|
|
66
|
+
get: function () { return chunkVDI7KYME_js.getVisibilitySummary; }
|
|
67
|
+
});
|
|
68
|
+
Object.defineProperty(exports, "recordABImpression", {
|
|
69
|
+
enumerable: true,
|
|
70
|
+
get: function () { return chunkVDI7KYME_js.recordABImpression; }
|
|
71
|
+
});
|
|
72
|
+
Object.defineProperty(exports, "registerSitemap", {
|
|
73
|
+
enumerable: true,
|
|
74
|
+
get: function () { return chunkVDI7KYME_js.registerSitemap; }
|
|
75
|
+
});
|
|
76
|
+
//# sourceMappingURL=api-QUIPJJCX.js.map
|
|
77
|
+
//# sourceMappingURL=api-QUIPJJCX.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"api-QUIPJJCX.js"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { getABTest, getContentBlock, getEntities, getEntityEnhancedSchema, getFAQData, getInternalLinks, getManagedScripts, getPrimaryEntity, getRedirectData, getRobotsData, getSEOPageData, getSchemaMarkups, getSitemapEntries, getVisibilityScore, getVisibilitySummary, recordABImpression, registerSitemap } from './chunk-FQVGK746.mjs';
|
|
2
|
+
import './chunk-4XPGGLVP.mjs';
|
|
3
|
+
//# sourceMappingURL=api-V3BA5PMX.mjs.map
|
|
4
|
+
//# sourceMappingURL=api-V3BA5PMX.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"api-V3BA5PMX.mjs"}
|
package/dist/blog/index.d.mts
CHANGED
|
@@ -1,11 +1,166 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
-
import { B as BlogPostProps, a as BlogListProps, A as AuthorCardProps, b as BlogPost$1, T as TableOfContentsProps } from '../types-BDojCvvL.mjs';
|
|
3
|
-
export { k as BlogAnalytics, c as BlogAuthor, d as BlogCategory, f as BlogListOptions, i as BlogListRenderProps, g as BlogListResult, h as BlogPostRenderProps, e as BlogTag, R as RelatedPostsProps, j as TocItem } from '../types-BDojCvvL.mjs';
|
|
4
2
|
import React__default from 'react';
|
|
3
|
+
import { B as BlogPost$1, T as TocItem, a as BlogListResult, b as BlogCategory, A as AuthorCardProps, c as TableOfContentsProps } from '../types-DI0jnhjJ.mjs';
|
|
4
|
+
export { k as BlogAnalytics, d as BlogAuthor, f as BlogListOptions, i as BlogListProps, j as BlogListRenderProps, g as BlogPostProps, h as BlogPostRenderProps, e as BlogTag, R as RelatedPostsProps } from '../types-DI0jnhjJ.mjs';
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
interface BlogPostServerProps {
|
|
7
|
+
/** Portal API URL */
|
|
8
|
+
apiUrl?: string;
|
|
9
|
+
/** Project API key */
|
|
10
|
+
apiKey?: string;
|
|
11
|
+
/** Blog post slug */
|
|
12
|
+
slug: string;
|
|
13
|
+
/** Show table of contents sidebar */
|
|
14
|
+
showToc?: boolean;
|
|
15
|
+
/** Show related posts */
|
|
16
|
+
showRelated?: boolean;
|
|
17
|
+
/** Number of related posts */
|
|
18
|
+
relatedCount?: number;
|
|
19
|
+
/** Show author card */
|
|
20
|
+
showAuthor?: boolean;
|
|
21
|
+
/** Base URL for blog links */
|
|
22
|
+
basePath?: string;
|
|
23
|
+
/** Custom class name */
|
|
24
|
+
className?: string;
|
|
25
|
+
/** Custom render function */
|
|
26
|
+
children?: (props: {
|
|
27
|
+
post: BlogPost$1;
|
|
28
|
+
tableOfContents: TocItem[];
|
|
29
|
+
relatedPosts: BlogPost$1[];
|
|
30
|
+
}) => React__default.ReactNode;
|
|
31
|
+
}
|
|
32
|
+
declare function BlogPost({ apiUrl, apiKey, slug, showToc, showRelated, relatedCount, showAuthor, basePath, className, children, }: BlogPostServerProps): Promise<string | number | bigint | boolean | Iterable<React__default.ReactNode> | react_jsx_runtime.JSX.Element | null | undefined>;
|
|
33
|
+
|
|
34
|
+
interface BlogListServerProps {
|
|
35
|
+
/** Portal API URL */
|
|
36
|
+
apiUrl?: string;
|
|
37
|
+
/** Project API key */
|
|
38
|
+
apiKey?: string;
|
|
39
|
+
/** Filter by category slug */
|
|
40
|
+
category?: string;
|
|
41
|
+
/** Filter by tag */
|
|
42
|
+
tag?: string;
|
|
43
|
+
/** Filter by author */
|
|
44
|
+
author?: string;
|
|
45
|
+
/** Only featured posts */
|
|
46
|
+
featured?: boolean;
|
|
47
|
+
/** Search query */
|
|
48
|
+
search?: string;
|
|
49
|
+
/** Page number (1-indexed) */
|
|
50
|
+
page?: number;
|
|
51
|
+
/** Items per page */
|
|
52
|
+
perPage?: number;
|
|
53
|
+
/** Sort field */
|
|
54
|
+
orderBy?: 'published_at' | 'title' | 'view_count';
|
|
55
|
+
/** Sort direction */
|
|
56
|
+
order?: 'asc' | 'desc';
|
|
57
|
+
/** Show category filter UI */
|
|
58
|
+
showCategoryFilter?: boolean;
|
|
59
|
+
/** Show pagination */
|
|
60
|
+
showPagination?: boolean;
|
|
61
|
+
/** Custom class name */
|
|
62
|
+
className?: string;
|
|
63
|
+
/** Base URL for post links */
|
|
64
|
+
basePath?: string;
|
|
65
|
+
/** Custom render function for post card */
|
|
66
|
+
renderPost?: (post: BlogPost$1) => React__default.ReactNode;
|
|
67
|
+
/** Custom render function for entire grid */
|
|
68
|
+
children?: (props: {
|
|
69
|
+
posts: BlogPost$1[];
|
|
70
|
+
pagination: BlogListResult['pagination'];
|
|
71
|
+
categories: BlogCategory[];
|
|
72
|
+
}) => React__default.ReactNode;
|
|
73
|
+
}
|
|
74
|
+
declare function BlogList({ apiUrl, apiKey, category, tag, author, featured, search, page, perPage, orderBy, order, showCategoryFilter, showPagination, className, basePath, renderPost, children, }: BlogListServerProps): Promise<string | number | bigint | boolean | Iterable<React__default.ReactNode> | react_jsx_runtime.JSX.Element | null | undefined>;
|
|
75
|
+
|
|
76
|
+
interface BlogSidebarProps {
|
|
77
|
+
/** Portal API URL */
|
|
78
|
+
apiUrl?: string;
|
|
79
|
+
/** Project API key */
|
|
80
|
+
apiKey?: string;
|
|
81
|
+
/** Show categories widget */
|
|
82
|
+
showCategories?: boolean;
|
|
83
|
+
/** Show recent posts widget */
|
|
84
|
+
showRecentPosts?: boolean;
|
|
85
|
+
/** Number of recent posts to show */
|
|
86
|
+
recentPostsCount?: number;
|
|
87
|
+
/** Show tags widget */
|
|
88
|
+
showTags?: boolean;
|
|
89
|
+
/** Show search widget */
|
|
90
|
+
showSearch?: boolean;
|
|
91
|
+
/** Base URL for blog links */
|
|
92
|
+
basePath?: string;
|
|
93
|
+
/** Custom class name */
|
|
94
|
+
className?: string;
|
|
95
|
+
/** Current category filter (for highlighting) */
|
|
96
|
+
currentCategory?: string;
|
|
97
|
+
/** Additional widgets to render */
|
|
98
|
+
children?: React__default.ReactNode;
|
|
99
|
+
}
|
|
100
|
+
declare function BlogSidebar({ apiUrl, apiKey, showCategories, showRecentPosts, recentPostsCount, showTags, showSearch, basePath, className, currentCategory, children, }: BlogSidebarProps): Promise<react_jsx_runtime.JSX.Element | null>;
|
|
101
|
+
interface NewsletterWidgetProps {
|
|
102
|
+
title?: string;
|
|
103
|
+
description?: string;
|
|
104
|
+
buttonText?: string;
|
|
105
|
+
onSubmit?: (email: string) => Promise<void>;
|
|
106
|
+
}
|
|
107
|
+
declare function NewsletterWidget({ title, description, buttonText, }: NewsletterWidgetProps): react_jsx_runtime.JSX.Element;
|
|
7
108
|
|
|
8
|
-
|
|
109
|
+
interface BlogLayoutProps {
|
|
110
|
+
/** Portal API URL */
|
|
111
|
+
apiUrl?: string;
|
|
112
|
+
/** Project API key */
|
|
113
|
+
apiKey?: string;
|
|
114
|
+
/** Layout style: 'sidebar-right', 'sidebar-left', 'full-width' */
|
|
115
|
+
layout?: 'sidebar-right' | 'sidebar-left' | 'full-width';
|
|
116
|
+
/** Show sidebar */
|
|
117
|
+
showSidebar?: boolean;
|
|
118
|
+
/** Sidebar props */
|
|
119
|
+
sidebarProps?: Partial<BlogSidebarProps>;
|
|
120
|
+
/** Hero section config */
|
|
121
|
+
hero?: {
|
|
122
|
+
title?: string;
|
|
123
|
+
subtitle?: string;
|
|
124
|
+
backgroundImage?: string;
|
|
125
|
+
backgroundColor?: string;
|
|
126
|
+
};
|
|
127
|
+
/** Max width for content */
|
|
128
|
+
maxWidth?: number;
|
|
129
|
+
/** Base URL for blog links */
|
|
130
|
+
basePath?: string;
|
|
131
|
+
/** Custom class name */
|
|
132
|
+
className?: string;
|
|
133
|
+
/** Current category (for sidebar highlighting) */
|
|
134
|
+
currentCategory?: string;
|
|
135
|
+
/** Main content */
|
|
136
|
+
children: React__default.ReactNode;
|
|
137
|
+
}
|
|
138
|
+
declare function BlogLayout({ apiUrl, apiKey, layout, showSidebar, sidebarProps, hero, maxWidth, basePath, className, currentCategory, children, }: BlogLayoutProps): Promise<react_jsx_runtime.JSX.Element>;
|
|
139
|
+
/**
|
|
140
|
+
* Convenience wrapper for a complete blog index page
|
|
141
|
+
*/
|
|
142
|
+
interface BlogPageProps extends Omit<BlogLayoutProps, 'children'> {
|
|
143
|
+
/** List component to render */
|
|
144
|
+
listComponent: React__default.ReactNode;
|
|
145
|
+
}
|
|
146
|
+
declare function BlogPage({ listComponent, ...layoutProps }: BlogPageProps): Promise<react_jsx_runtime.JSX.Element>;
|
|
147
|
+
/**
|
|
148
|
+
* Convenience wrapper for a single blog post page
|
|
149
|
+
*/
|
|
150
|
+
interface BlogPostPageProps extends Omit<BlogLayoutProps, 'children'> {
|
|
151
|
+
/** Post component to render */
|
|
152
|
+
postComponent: React__default.ReactNode;
|
|
153
|
+
}
|
|
154
|
+
declare function BlogPostPage({ postComponent, ...layoutProps }: BlogPostPageProps): Promise<react_jsx_runtime.JSX.Element>;
|
|
155
|
+
interface CategoryPageProps extends BlogLayoutProps {
|
|
156
|
+
/** Category slug being viewed */
|
|
157
|
+
category: string;
|
|
158
|
+
/** Category display name */
|
|
159
|
+
categoryName?: string;
|
|
160
|
+
/** List component */
|
|
161
|
+
listComponent: React__default.ReactNode;
|
|
162
|
+
}
|
|
163
|
+
declare function CategoryPage({ category, categoryName, listComponent, hero, ...layoutProps }: CategoryPageProps): Promise<react_jsx_runtime.JSX.Element>;
|
|
9
164
|
|
|
10
165
|
declare function AuthorCard({ author, showBio, showSocial, className }: AuthorCardProps): react_jsx_runtime.JSX.Element;
|
|
11
166
|
|
|
@@ -21,4 +176,4 @@ declare function RelatedPosts({ apiUrl, apiKey, currentPostId, limit, className,
|
|
|
21
176
|
|
|
22
177
|
declare function TableOfContents({ content, className, maxDepth, }: TableOfContentsProps): react_jsx_runtime.JSX.Element | null;
|
|
23
178
|
|
|
24
|
-
export { AuthorCard, AuthorCardProps, BlogList,
|
|
179
|
+
export { AuthorCard, AuthorCardProps, BlogCategory, BlogLayout, type BlogLayoutProps, BlogList, BlogListResult, type BlogListServerProps, BlogPage, type BlogPageProps, BlogPost, BlogPostPage, type BlogPostPageProps, type BlogPostServerProps, BlogSidebar, type BlogSidebarProps, CategoryPage, type CategoryPageProps, NewsletterWidget, type NewsletterWidgetProps, RelatedPosts, TableOfContents, TableOfContentsProps, TocItem };
|
package/dist/blog/index.d.ts
CHANGED
|
@@ -1,11 +1,166 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
-
import { B as BlogPostProps, a as BlogListProps, A as AuthorCardProps, b as BlogPost$1, T as TableOfContentsProps } from '../types-BDojCvvL.js';
|
|
3
|
-
export { k as BlogAnalytics, c as BlogAuthor, d as BlogCategory, f as BlogListOptions, i as BlogListRenderProps, g as BlogListResult, h as BlogPostRenderProps, e as BlogTag, R as RelatedPostsProps, j as TocItem } from '../types-BDojCvvL.js';
|
|
4
2
|
import React__default from 'react';
|
|
3
|
+
import { B as BlogPost$1, T as TocItem, a as BlogListResult, b as BlogCategory, A as AuthorCardProps, c as TableOfContentsProps } from '../types-DI0jnhjJ.js';
|
|
4
|
+
export { k as BlogAnalytics, d as BlogAuthor, f as BlogListOptions, i as BlogListProps, j as BlogListRenderProps, g as BlogPostProps, h as BlogPostRenderProps, e as BlogTag, R as RelatedPostsProps } from '../types-DI0jnhjJ.js';
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
interface BlogPostServerProps {
|
|
7
|
+
/** Portal API URL */
|
|
8
|
+
apiUrl?: string;
|
|
9
|
+
/** Project API key */
|
|
10
|
+
apiKey?: string;
|
|
11
|
+
/** Blog post slug */
|
|
12
|
+
slug: string;
|
|
13
|
+
/** Show table of contents sidebar */
|
|
14
|
+
showToc?: boolean;
|
|
15
|
+
/** Show related posts */
|
|
16
|
+
showRelated?: boolean;
|
|
17
|
+
/** Number of related posts */
|
|
18
|
+
relatedCount?: number;
|
|
19
|
+
/** Show author card */
|
|
20
|
+
showAuthor?: boolean;
|
|
21
|
+
/** Base URL for blog links */
|
|
22
|
+
basePath?: string;
|
|
23
|
+
/** Custom class name */
|
|
24
|
+
className?: string;
|
|
25
|
+
/** Custom render function */
|
|
26
|
+
children?: (props: {
|
|
27
|
+
post: BlogPost$1;
|
|
28
|
+
tableOfContents: TocItem[];
|
|
29
|
+
relatedPosts: BlogPost$1[];
|
|
30
|
+
}) => React__default.ReactNode;
|
|
31
|
+
}
|
|
32
|
+
declare function BlogPost({ apiUrl, apiKey, slug, showToc, showRelated, relatedCount, showAuthor, basePath, className, children, }: BlogPostServerProps): Promise<string | number | bigint | boolean | Iterable<React__default.ReactNode> | react_jsx_runtime.JSX.Element | null | undefined>;
|
|
33
|
+
|
|
34
|
+
interface BlogListServerProps {
|
|
35
|
+
/** Portal API URL */
|
|
36
|
+
apiUrl?: string;
|
|
37
|
+
/** Project API key */
|
|
38
|
+
apiKey?: string;
|
|
39
|
+
/** Filter by category slug */
|
|
40
|
+
category?: string;
|
|
41
|
+
/** Filter by tag */
|
|
42
|
+
tag?: string;
|
|
43
|
+
/** Filter by author */
|
|
44
|
+
author?: string;
|
|
45
|
+
/** Only featured posts */
|
|
46
|
+
featured?: boolean;
|
|
47
|
+
/** Search query */
|
|
48
|
+
search?: string;
|
|
49
|
+
/** Page number (1-indexed) */
|
|
50
|
+
page?: number;
|
|
51
|
+
/** Items per page */
|
|
52
|
+
perPage?: number;
|
|
53
|
+
/** Sort field */
|
|
54
|
+
orderBy?: 'published_at' | 'title' | 'view_count';
|
|
55
|
+
/** Sort direction */
|
|
56
|
+
order?: 'asc' | 'desc';
|
|
57
|
+
/** Show category filter UI */
|
|
58
|
+
showCategoryFilter?: boolean;
|
|
59
|
+
/** Show pagination */
|
|
60
|
+
showPagination?: boolean;
|
|
61
|
+
/** Custom class name */
|
|
62
|
+
className?: string;
|
|
63
|
+
/** Base URL for post links */
|
|
64
|
+
basePath?: string;
|
|
65
|
+
/** Custom render function for post card */
|
|
66
|
+
renderPost?: (post: BlogPost$1) => React__default.ReactNode;
|
|
67
|
+
/** Custom render function for entire grid */
|
|
68
|
+
children?: (props: {
|
|
69
|
+
posts: BlogPost$1[];
|
|
70
|
+
pagination: BlogListResult['pagination'];
|
|
71
|
+
categories: BlogCategory[];
|
|
72
|
+
}) => React__default.ReactNode;
|
|
73
|
+
}
|
|
74
|
+
declare function BlogList({ apiUrl, apiKey, category, tag, author, featured, search, page, perPage, orderBy, order, showCategoryFilter, showPagination, className, basePath, renderPost, children, }: BlogListServerProps): Promise<string | number | bigint | boolean | Iterable<React__default.ReactNode> | react_jsx_runtime.JSX.Element | null | undefined>;
|
|
75
|
+
|
|
76
|
+
interface BlogSidebarProps {
|
|
77
|
+
/** Portal API URL */
|
|
78
|
+
apiUrl?: string;
|
|
79
|
+
/** Project API key */
|
|
80
|
+
apiKey?: string;
|
|
81
|
+
/** Show categories widget */
|
|
82
|
+
showCategories?: boolean;
|
|
83
|
+
/** Show recent posts widget */
|
|
84
|
+
showRecentPosts?: boolean;
|
|
85
|
+
/** Number of recent posts to show */
|
|
86
|
+
recentPostsCount?: number;
|
|
87
|
+
/** Show tags widget */
|
|
88
|
+
showTags?: boolean;
|
|
89
|
+
/** Show search widget */
|
|
90
|
+
showSearch?: boolean;
|
|
91
|
+
/** Base URL for blog links */
|
|
92
|
+
basePath?: string;
|
|
93
|
+
/** Custom class name */
|
|
94
|
+
className?: string;
|
|
95
|
+
/** Current category filter (for highlighting) */
|
|
96
|
+
currentCategory?: string;
|
|
97
|
+
/** Additional widgets to render */
|
|
98
|
+
children?: React__default.ReactNode;
|
|
99
|
+
}
|
|
100
|
+
declare function BlogSidebar({ apiUrl, apiKey, showCategories, showRecentPosts, recentPostsCount, showTags, showSearch, basePath, className, currentCategory, children, }: BlogSidebarProps): Promise<react_jsx_runtime.JSX.Element | null>;
|
|
101
|
+
interface NewsletterWidgetProps {
|
|
102
|
+
title?: string;
|
|
103
|
+
description?: string;
|
|
104
|
+
buttonText?: string;
|
|
105
|
+
onSubmit?: (email: string) => Promise<void>;
|
|
106
|
+
}
|
|
107
|
+
declare function NewsletterWidget({ title, description, buttonText, }: NewsletterWidgetProps): react_jsx_runtime.JSX.Element;
|
|
7
108
|
|
|
8
|
-
|
|
109
|
+
interface BlogLayoutProps {
|
|
110
|
+
/** Portal API URL */
|
|
111
|
+
apiUrl?: string;
|
|
112
|
+
/** Project API key */
|
|
113
|
+
apiKey?: string;
|
|
114
|
+
/** Layout style: 'sidebar-right', 'sidebar-left', 'full-width' */
|
|
115
|
+
layout?: 'sidebar-right' | 'sidebar-left' | 'full-width';
|
|
116
|
+
/** Show sidebar */
|
|
117
|
+
showSidebar?: boolean;
|
|
118
|
+
/** Sidebar props */
|
|
119
|
+
sidebarProps?: Partial<BlogSidebarProps>;
|
|
120
|
+
/** Hero section config */
|
|
121
|
+
hero?: {
|
|
122
|
+
title?: string;
|
|
123
|
+
subtitle?: string;
|
|
124
|
+
backgroundImage?: string;
|
|
125
|
+
backgroundColor?: string;
|
|
126
|
+
};
|
|
127
|
+
/** Max width for content */
|
|
128
|
+
maxWidth?: number;
|
|
129
|
+
/** Base URL for blog links */
|
|
130
|
+
basePath?: string;
|
|
131
|
+
/** Custom class name */
|
|
132
|
+
className?: string;
|
|
133
|
+
/** Current category (for sidebar highlighting) */
|
|
134
|
+
currentCategory?: string;
|
|
135
|
+
/** Main content */
|
|
136
|
+
children: React__default.ReactNode;
|
|
137
|
+
}
|
|
138
|
+
declare function BlogLayout({ apiUrl, apiKey, layout, showSidebar, sidebarProps, hero, maxWidth, basePath, className, currentCategory, children, }: BlogLayoutProps): Promise<react_jsx_runtime.JSX.Element>;
|
|
139
|
+
/**
|
|
140
|
+
* Convenience wrapper for a complete blog index page
|
|
141
|
+
*/
|
|
142
|
+
interface BlogPageProps extends Omit<BlogLayoutProps, 'children'> {
|
|
143
|
+
/** List component to render */
|
|
144
|
+
listComponent: React__default.ReactNode;
|
|
145
|
+
}
|
|
146
|
+
declare function BlogPage({ listComponent, ...layoutProps }: BlogPageProps): Promise<react_jsx_runtime.JSX.Element>;
|
|
147
|
+
/**
|
|
148
|
+
* Convenience wrapper for a single blog post page
|
|
149
|
+
*/
|
|
150
|
+
interface BlogPostPageProps extends Omit<BlogLayoutProps, 'children'> {
|
|
151
|
+
/** Post component to render */
|
|
152
|
+
postComponent: React__default.ReactNode;
|
|
153
|
+
}
|
|
154
|
+
declare function BlogPostPage({ postComponent, ...layoutProps }: BlogPostPageProps): Promise<react_jsx_runtime.JSX.Element>;
|
|
155
|
+
interface CategoryPageProps extends BlogLayoutProps {
|
|
156
|
+
/** Category slug being viewed */
|
|
157
|
+
category: string;
|
|
158
|
+
/** Category display name */
|
|
159
|
+
categoryName?: string;
|
|
160
|
+
/** List component */
|
|
161
|
+
listComponent: React__default.ReactNode;
|
|
162
|
+
}
|
|
163
|
+
declare function CategoryPage({ category, categoryName, listComponent, hero, ...layoutProps }: CategoryPageProps): Promise<react_jsx_runtime.JSX.Element>;
|
|
9
164
|
|
|
10
165
|
declare function AuthorCard({ author, showBio, showSocial, className }: AuthorCardProps): react_jsx_runtime.JSX.Element;
|
|
11
166
|
|
|
@@ -21,4 +176,4 @@ declare function RelatedPosts({ apiUrl, apiKey, currentPostId, limit, className,
|
|
|
21
176
|
|
|
22
177
|
declare function TableOfContents({ content, className, maxDepth, }: TableOfContentsProps): react_jsx_runtime.JSX.Element | null;
|
|
23
178
|
|
|
24
|
-
export { AuthorCard, AuthorCardProps, BlogList,
|
|
179
|
+
export { AuthorCard, AuthorCardProps, BlogCategory, BlogLayout, type BlogLayoutProps, BlogList, BlogListResult, type BlogListServerProps, BlogPage, type BlogPageProps, BlogPost, BlogPostPage, type BlogPostPageProps, type BlogPostServerProps, BlogSidebar, type BlogSidebarProps, CategoryPage, type CategoryPageProps, NewsletterWidget, type NewsletterWidgetProps, RelatedPosts, TableOfContents, TableOfContentsProps, TocItem };
|