@teleporthq/teleport-plugin-next-data-source 0.43.51 → 0.43.54

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 (55) hide show
  1. package/__tests__/related-items-transform.test.ts +204 -0
  2. package/dist/cjs/index.d.ts.map +1 -1
  3. package/dist/cjs/index.js +9 -0
  4. package/dist/cjs/index.js.map +1 -1
  5. package/dist/cjs/isr.d.ts +30 -0
  6. package/dist/cjs/isr.d.ts.map +1 -0
  7. package/dist/cjs/isr.js +33 -0
  8. package/dist/cjs/isr.js.map +1 -0
  9. package/dist/cjs/transformations/blog-post.d.ts.map +1 -1
  10. package/dist/cjs/transformations/blog-post.js +1 -1
  11. package/dist/cjs/transformations/blog-post.js.map +1 -1
  12. package/dist/cjs/transformations/ecommerce-product.d.ts.map +1 -1
  13. package/dist/cjs/transformations/ecommerce-product.js +1 -1
  14. package/dist/cjs/transformations/ecommerce-product.js.map +1 -1
  15. package/dist/cjs/transformations/index.d.ts.map +1 -1
  16. package/dist/cjs/transformations/index.js +15 -1
  17. package/dist/cjs/transformations/index.js.map +1 -1
  18. package/dist/cjs/transformations/shared-utils.d.ts.map +1 -1
  19. package/dist/cjs/transformations/shared-utils.js +1 -1
  20. package/dist/cjs/transformations/shared-utils.js.map +1 -1
  21. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  22. package/dist/cjs/utils.d.ts.map +1 -1
  23. package/dist/cjs/utils.js +2 -1
  24. package/dist/cjs/utils.js.map +1 -1
  25. package/dist/esm/index.d.ts.map +1 -1
  26. package/dist/esm/index.js +9 -0
  27. package/dist/esm/index.js.map +1 -1
  28. package/dist/esm/isr.d.ts +30 -0
  29. package/dist/esm/isr.d.ts.map +1 -0
  30. package/dist/esm/isr.js +30 -0
  31. package/dist/esm/isr.js.map +1 -0
  32. package/dist/esm/transformations/blog-post.d.ts.map +1 -1
  33. package/dist/esm/transformations/blog-post.js +1 -1
  34. package/dist/esm/transformations/blog-post.js.map +1 -1
  35. package/dist/esm/transformations/ecommerce-product.d.ts.map +1 -1
  36. package/dist/esm/transformations/ecommerce-product.js +1 -1
  37. package/dist/esm/transformations/ecommerce-product.js.map +1 -1
  38. package/dist/esm/transformations/index.d.ts.map +1 -1
  39. package/dist/esm/transformations/index.js +15 -1
  40. package/dist/esm/transformations/index.js.map +1 -1
  41. package/dist/esm/transformations/shared-utils.d.ts.map +1 -1
  42. package/dist/esm/transformations/shared-utils.js +1 -1
  43. package/dist/esm/transformations/shared-utils.js.map +1 -1
  44. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  45. package/dist/esm/utils.d.ts.map +1 -1
  46. package/dist/esm/utils.js +2 -1
  47. package/dist/esm/utils.js.map +1 -1
  48. package/package.json +5 -5
  49. package/src/index.ts +12 -0
  50. package/src/isr.ts +29 -0
  51. package/src/transformations/blog-post.ts +74 -0
  52. package/src/transformations/ecommerce-product.ts +88 -0
  53. package/src/transformations/index.ts +25 -2
  54. package/src/transformations/shared-utils.ts +20 -0
  55. package/src/utils.ts +5 -1
@@ -0,0 +1,204 @@
1
+ import { generateBlogPostTransformationCode } from '../src/transformations/blog-post'
2
+ import { generateEcommerceProductTransformationCode } from '../src/transformations/ecommerce-product'
3
+ import { generateSharedTransformationCode } from '../src/transformations/shared-utils'
4
+ import { getTransformWrapperCode } from '../src/transformations'
5
+
6
+ // `relatedProducts` / `relatedPosts` are what the details-page rail maps over,
7
+ // and the whole section is gated on that array being non-empty — so a transform
8
+ // that omits the field does not render a broken rail, it renders NOTHING, on a
9
+ // page that looks otherwise complete. That is exactly how the first shipped
10
+ // version failed: the canvas drew the rail, the exported site silently dropped
11
+ // it, and the deployed page went straight from the product to its reviews.
12
+ //
13
+ // These evaluate the EMITTED code, the same way the runtime does.
14
+
15
+ const evalTransform = <T>(code: string, exportName: string): T => {
16
+ const bundle = generateSharedTransformationCode() + '\n' + code
17
+ return new Function(bundle + `\nreturn ${exportName};`)() as T
18
+ }
19
+
20
+ type Build = (record: unknown, options?: Record<string, unknown>) => Record<string, unknown>
21
+
22
+ const buildEcommerceProduct = evalTransform<Build>(
23
+ generateEcommerceProductTransformationCode(),
24
+ 'buildEcommerceProduct'
25
+ )
26
+ const buildBlogPost = evalTransform<Build>(generateBlogPostTransformationCode(), 'buildBlogPost')
27
+
28
+ const product = (id: string, overrides: Record<string, unknown> = {}) => ({
29
+ id,
30
+ name: `Product ${id}`,
31
+ slug: `product-${id}`,
32
+ status: 'active',
33
+ price: 10,
34
+ currency: 'USD',
35
+ ...overrides,
36
+ })
37
+
38
+ const post = (id: string, overrides: Record<string, unknown> = {}) => ({
39
+ id,
40
+ title: `Post ${id}`,
41
+ slug: `post-${id}`,
42
+ status: 'published',
43
+ ...overrides,
44
+ })
45
+
46
+ const mapOf = (rows: Array<Record<string, unknown>>) =>
47
+ rows.reduce<Record<string, unknown>>((acc, row) => {
48
+ acc[String(row.id)] = row
49
+ return acc
50
+ }, {})
51
+
52
+ describe('ecommerce product transform — related products', () => {
53
+ it('always emits both fields, so a binding never dereferences undefined', () => {
54
+ const built = buildEcommerceProduct(product('a'))
55
+ expect(built.relatedProductIds).toEqual([])
56
+ expect(built.relatedProducts).toEqual([])
57
+ })
58
+
59
+ it('reads the raw column even with no map to resolve against', () => {
60
+ const built = buildEcommerceProduct(product('a', { related_product_ids: '["b","c"]' }))
61
+ expect(built.relatedProductIds).toEqual(['b', 'c'])
62
+ // A listing fetch resolves nothing — see the wrapper test below.
63
+ expect(built.relatedProducts).toEqual([])
64
+ })
65
+
66
+ it('resolves to transformed products, in the merchant`s order', () => {
67
+ const built = buildEcommerceProduct(product('a', { related_product_ids: '["c","b"]' }), {
68
+ relatedProductsById: mapOf([product('b'), product('c')]),
69
+ })
70
+
71
+ const related = built.relatedProducts as Array<Record<string, unknown>>
72
+ expect(related.map((entry) => entry.id)).toEqual(['c', 'b'])
73
+ // Transformed, not raw: the card binds camelCase fields.
74
+ expect(related[0]).toHaveProperty('mainImage')
75
+ expect(related[0].name).toBe('Product c')
76
+ })
77
+
78
+ it('drops related products that are not active', () => {
79
+ const built = buildEcommerceProduct(product('a', { related_product_ids: '["b","c","d"]' }), {
80
+ relatedProductsById: mapOf([
81
+ product('b', { status: 'draft' }),
82
+ product('c', { status: 'archived' }),
83
+ product('d'),
84
+ ]),
85
+ })
86
+
87
+ expect((built.relatedProducts as Array<Record<string, unknown>>).map((e) => e.id)).toEqual([
88
+ 'd',
89
+ ])
90
+ })
91
+
92
+ it('skips ids whose row was deleted', () => {
93
+ const built = buildEcommerceProduct(product('a', { related_product_ids: '["gone","b"]' }), {
94
+ relatedProductsById: mapOf([product('b')]),
95
+ })
96
+
97
+ expect((built.relatedProducts as Array<Record<string, unknown>>).map((e) => e.id)).toEqual([
98
+ 'b',
99
+ ])
100
+ })
101
+
102
+ // ⛔ Two products referencing each other is the NORMAL case — they are each
103
+ // other's accessories. Threading the map into the nested build would recurse
104
+ // until the stack ran out.
105
+ it('does not resolve a related product`s own related products', () => {
106
+ const built = buildEcommerceProduct(product('a', { related_product_ids: '["b"]' }), {
107
+ relatedProductsById: mapOf([product('b', { related_product_ids: '["a"]' })]),
108
+ })
109
+
110
+ const related = built.relatedProducts as Array<Record<string, unknown>>
111
+ expect(related).toHaveLength(1)
112
+ expect(related[0].relatedProductIds).toEqual(['a'])
113
+ expect(related[0].relatedProducts).toEqual([])
114
+ })
115
+
116
+ it('drops a self-reference', () => {
117
+ const built = buildEcommerceProduct(product('a', { related_product_ids: '["a","b"]' }), {
118
+ relatedProductsById: mapOf([product('a'), product('b')]),
119
+ })
120
+
121
+ expect((built.relatedProducts as Array<Record<string, unknown>>).map((e) => e.id)).toEqual([
122
+ 'b',
123
+ ])
124
+ })
125
+
126
+ it('carries the current language into the nested build', () => {
127
+ const built = buildEcommerceProduct(product('a', { related_product_ids: '["b"]' }), {
128
+ currentLanguage: 'fr',
129
+ mainLanguage: 'en',
130
+ relatedProductsById: mapOf([product('b', { fr_name: 'Produit B' })]),
131
+ })
132
+
133
+ expect((built.relatedProducts as Array<Record<string, unknown>>)[0].name).toBe('Produit B')
134
+ })
135
+
136
+ it('tolerates a hand-edited comma-separated cell, deduping and trimming', () => {
137
+ const built = buildEcommerceProduct(product('a', { related_product_ids: ' b , b ,, c ' }))
138
+ expect(built.relatedProductIds).toEqual(['b', 'c'])
139
+ })
140
+ })
141
+
142
+ describe('blog post transform — related posts', () => {
143
+ it('always emits both fields', () => {
144
+ const built = buildBlogPost(post('a'))
145
+ expect(built.relatedPostIds).toEqual([])
146
+ expect(built.relatedPosts).toEqual([])
147
+ })
148
+
149
+ it('resolves to transformed posts, in the author`s order', () => {
150
+ const built = buildBlogPost(post('a', { related_post_ids: '["c","b"]' }), {
151
+ relatedPostsById: mapOf([post('b'), post('c')]),
152
+ })
153
+
154
+ const related = built.relatedPosts as Array<Record<string, unknown>>
155
+ expect(related.map((entry) => entry.id)).toEqual(['c', 'b'])
156
+ expect(related[0].title).toBe('Post c')
157
+ })
158
+
159
+ /** ⛔ A draft must not reach the storefront through another post's rail. */
160
+ it('drops related posts that are not published', () => {
161
+ const built = buildBlogPost(post('a', { related_post_ids: '["b","c"]' }), {
162
+ relatedPostsById: mapOf([post('b', { status: 'draft' }), post('c')]),
163
+ })
164
+
165
+ expect((built.relatedPosts as Array<Record<string, unknown>>).map((e) => e.id)).toEqual(['c'])
166
+ })
167
+
168
+ it('drops a self-reference and does not recurse', () => {
169
+ const built = buildBlogPost(post('a', { related_post_ids: '["a","b"]' }), {
170
+ relatedPostsById: mapOf([post('a'), post('b', { related_post_ids: '["a"]' })]),
171
+ })
172
+
173
+ const related = built.relatedPosts as Array<Record<string, unknown>>
174
+ expect(related.map((entry) => entry.id)).toEqual(['b'])
175
+ expect(related[0].relatedPosts).toEqual([])
176
+ })
177
+ })
178
+
179
+ describe('the transform wrapper', () => {
180
+ /**
181
+ * ⛔ A listing fetch must NOT resolve related items: it would run an extra
182
+ * query and inline up to four fully-transformed entities per card into
183
+ * __NEXT_DATA__ that nothing on that page draws. Single record = the details
184
+ * page, which is the only surface with a rail.
185
+ */
186
+ it('only resolves related items for a single-record fetch', () => {
187
+ for (const table of ['teleport_products', 'teleport_blog_posts']) {
188
+ expect(getTransformWrapperCode(table)).toContain('records.length === 1')
189
+ }
190
+ })
191
+
192
+ it('passes the resolved map into the transform options', () => {
193
+ expect(getTransformWrapperCode('teleport_products')).toContain(
194
+ 'relatedProductsById: relatedProductsById'
195
+ )
196
+ expect(getTransformWrapperCode('teleport_blog_posts')).toContain(
197
+ 'relatedPostsById: relatedPostsById'
198
+ )
199
+ })
200
+
201
+ it('leaves a custom table alone', () => {
202
+ expect(getTransformWrapperCode('wholesale_products')).toBe('')
203
+ })
204
+ })
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,sBAAsB,EAKvB,MAAM,4BAA4B,CAAA;AA6anC,eAAO,MAAM,+BAA+B,EAAE,sBAAsB,CAAC,EAAE,CAmetE,CAAA;AAiOD,eAAO,MAAM,mCAAmC,EAAE,sBAAsB,CAAC,EAAE,CA6O1E,CAAA;AAED,cAAc,wBAAwB,CAAA;AACtC,cAAc,SAAS,CAAA;AACvB,cAAc,2BAA2B,CAAA;AACzC,cAAc,qBAAqB,CAAA;AACnC,cAAc,kBAAkB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,sBAAsB,EAKvB,MAAM,4BAA4B,CAAA;AA8anC,eAAO,MAAM,+BAA+B,EAAE,sBAAsB,CAAC,EAAE,CA8etE,CAAA;AAiOD,eAAO,MAAM,mCAAmC,EAAE,sBAAsB,CAAC,EAAE,CA6O1E,CAAA;AAED,cAAc,wBAAwB,CAAA;AACtC,cAAc,SAAS,CAAA;AACvB,cAAc,2BAA2B,CAAA;AACzC,cAAc,qBAAqB,CAAA;AACnC,cAAc,kBAAkB,CAAA"}
package/dist/cjs/index.js CHANGED
@@ -67,6 +67,7 @@ var teleport_types_1 = require("@teleporthq/teleport-types");
67
67
  var teleport_shared_1 = require("@teleporthq/teleport-shared");
68
68
  var utils_1 = require("./utils");
69
69
  var pagination_plugin_1 = require("./pagination-plugin");
70
+ var isr_1 = require("./isr");
70
71
  var types = __importStar(require("@babel/types"));
71
72
  // Prefix used to clearly differentiate wrapped data source expression props
72
73
  // from user-defined or standard renderPropIdentifier values
@@ -582,6 +583,14 @@ var createNextPagesDataSourcePlugin = function () {
582
583
  ]),
583
584
  types.returnStatement(types.objectExpression([
584
585
  types.objectProperty(types.identifier('props'), types.objectExpression([])),
586
+ // ⛔ WITHOUT THIS THE PAGE IS A BUILD-TIME SNAPSHOT FOREVER.
587
+ // The non-paginated shape in `utils.ts` has always carried
588
+ // it; this bootstrap did not, so every paginated list page
589
+ // (blog, products, orders, every admin list) served its
590
+ // build-time first page from the CDN for the life of the
591
+ // deployment — a post moved back to draft still shipped.
592
+ // See ./isr.ts.
593
+ types.objectProperty(types.identifier('revalidate'), types.numericLiteral(isr_1.DATA_SOURCE_ISR_REVALIDATE_SECONDS)),
585
594
  ])),
586
595
  ]), types.catchClause(types.identifier('error'), types.blockStatement([
587
596
  types.expressionStatement(types.callExpression(types.memberExpression(types.identifier('console'), types.identifier('error')), [
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * ISR window for pages whose `getStaticProps` reads data-source rows.
3
+ *
4
+ * ## ⛔ THE DEFECT (run c133d485, "/blog")
5
+ *
6
+ * A page with a PAGINATED or SEARCHABLE data source gets its `getStaticProps`
7
+ * bootstrapped by `index.ts` (an empty `Promise.all` + `return { props: {} }`)
8
+ * which the pagination plugin then fills in. That bootstrap shipped without a
9
+ * `revalidate`, so the page became a pure build-time snapshot — while the
10
+ * near-identical shape created by `utils.ts` (for a page whose data source is
11
+ * neither paginated nor searchable) has always carried `revalidate: 1`. Same
12
+ * kind of page, opposite caching, decided by whether a pagination control
13
+ * happened to be on it.
14
+ *
15
+ * What that cost, measured on the deployed site: the blog list fetched
16
+ * `status = 'published'` correctly and STILL showed a draft post. The row was
17
+ * published when the site was built, was later moved back to draft, and the CDN
18
+ * kept serving the build-time HTML (`x-vercel-cache: HIT`) forever. The client
19
+ * cannot correct it either — `DataProvider` is seeded with `initialData` for
20
+ * page 1, so it does not refetch. Every list page had the same hole: a new
21
+ * product, a cancelled order, a deleted review — none of them would ever reach
22
+ * the first page of the list without a redeploy.
23
+ *
24
+ * One second matches what the non-paginated path already does, so the two
25
+ * creation sites cannot drift again. Pages that are converted to
26
+ * `getServerSideProps` (admin CRUD) have this stripped by
27
+ * `entity-mutation-ssr-finalize-plugin`, where `revalidate` is invalid.
28
+ */
29
+ export declare const DATA_SOURCE_ISR_REVALIDATE_SECONDS = 1;
30
+ //# sourceMappingURL=isr.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isr.d.ts","sourceRoot":"","sources":["../../src/isr.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,eAAO,MAAM,kCAAkC,IAAI,CAAA"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DATA_SOURCE_ISR_REVALIDATE_SECONDS = void 0;
4
+ /**
5
+ * ISR window for pages whose `getStaticProps` reads data-source rows.
6
+ *
7
+ * ## ⛔ THE DEFECT (run c133d485, "/blog")
8
+ *
9
+ * A page with a PAGINATED or SEARCHABLE data source gets its `getStaticProps`
10
+ * bootstrapped by `index.ts` (an empty `Promise.all` + `return { props: {} }`)
11
+ * which the pagination plugin then fills in. That bootstrap shipped without a
12
+ * `revalidate`, so the page became a pure build-time snapshot — while the
13
+ * near-identical shape created by `utils.ts` (for a page whose data source is
14
+ * neither paginated nor searchable) has always carried `revalidate: 1`. Same
15
+ * kind of page, opposite caching, decided by whether a pagination control
16
+ * happened to be on it.
17
+ *
18
+ * What that cost, measured on the deployed site: the blog list fetched
19
+ * `status = 'published'` correctly and STILL showed a draft post. The row was
20
+ * published when the site was built, was later moved back to draft, and the CDN
21
+ * kept serving the build-time HTML (`x-vercel-cache: HIT`) forever. The client
22
+ * cannot correct it either — `DataProvider` is seeded with `initialData` for
23
+ * page 1, so it does not refetch. Every list page had the same hole: a new
24
+ * product, a cancelled order, a deleted review — none of them would ever reach
25
+ * the first page of the list without a redeploy.
26
+ *
27
+ * One second matches what the non-paginated path already does, so the two
28
+ * creation sites cannot drift again. Pages that are converted to
29
+ * `getServerSideProps` (admin CRUD) have this stripped by
30
+ * `entity-mutation-ssr-finalize-plugin`, where `revalidate` is invalid.
31
+ */
32
+ exports.DATA_SOURCE_ISR_REVALIDATE_SECONDS = 1;
33
+ //# sourceMappingURL=isr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isr.js","sourceRoot":"","sources":["../../src/isr.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACU,QAAA,kCAAkC,GAAG,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"blog-post.d.ts","sourceRoot":"","sources":["../../../src/transformations/blog-post.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,kCAAkC,QAAO,MA0HrD,CAAA"}
1
+ {"version":3,"file":"blog-post.d.ts","sourceRoot":"","sources":["../../../src/transformations/blog-post.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,kCAAkC,QAAO,MAoMrD,CAAA"}
@@ -7,7 +7,7 @@ exports.generateBlogPostTransformationCode = void 0;
7
7
  * that UIDL components expect.
8
8
  */
9
9
  var generateBlogPostTransformationCode = function () {
10
- return "\n// ============================================================\n// Blog Post Transformation\n// ============================================================\n\nfunction buildBlogPost(record, options) {\n if (!record || typeof record !== 'object') return record\n options = options || {}\n var currentLang = options.currentLanguage || null\n var mainLang = options.mainLanguage || null\n var assetMap = options.assetMap || {}\n\n var id = record.id !== undefined && record.id !== null ? record.id : null\n\n // i18n-resolved text fields\n var title = resolveI18nField(record, 'title', 'title', currentLang, mainLang) || ''\n var slug = resolveI18nField(record, 'slug', 'slug', currentLang, mainLang) || ''\n var content = resolveI18nField(record, 'content', 'content', currentLang, mainLang) || ''\n var excerpt = resolveI18nField(record, 'excerpt', 'excerpt', currentLang, mainLang) || ''\n var category = resolveI18nField(record, 'category', 'category', currentLang, mainLang) || null\n var metaTitle = resolveI18nField(record, 'meta_title', 'metaTitle', currentLang, mainLang) || null\n var metaDescription = resolveI18nField(record, 'meta_description', 'metaDescription', currentLang, mainLang) || null\n var featuredImageAlt = resolveI18nField(record, 'featured_image_alt', 'featuredImageAlt', currentLang, mainLang) || null\n\n // Status\n var status = record.status || 'draft'\n\n // Asset fields - resolve IDs to URLs\n var rawFeaturedImage = pickFirst(record.featured_image_url, record.featuredImageUrl)\n var TELEPORT_DEFAULT_FEATURED_IMG = 'https://play.teleporthq.io/static/svg/default-img.svg'\n var featuredImageUrl = resolveAssetUrl(rawFeaturedImage, assetMap)\n if (\n !featuredImageUrl ||\n rawFeaturedImage === TELEPORT_DEFAULT_FEATURED_IMG ||\n featuredImageUrl === TELEPORT_DEFAULT_FEATURED_IMG\n ) {\n featuredImageUrl =\n 'data:image/svg+xml;charset=utf-8,' +\n encodeURIComponent(\n '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"400\" height=\"240\" viewBox=\"0 0 400 240\"><rect fill=\"#e5e7eb\" width=\"400\" height=\"240\"/><text x=\"50%\" y=\"50%\" dominant-baseline=\"middle\" text-anchor=\"middle\" fill=\"#9ca3af\" font-family=\"system-ui,sans-serif\" font-size=\"13\">No image</text></svg>'\n )\n }\n\n var rawAuthorAvatar = pickFirst(record.author_avatar_url, record.authorAvatarUrl)\n var authorAvatarUrl = resolveAssetUrl(rawAuthorAvatar, assetMap)\n\n // Simple pass-through fields\n var authorName = pickFirst(record.author_name, record.authorName)\n var authorEmail = pickFirst(record.author_email, record.authorEmail)\n var readingTimeMinutes = safeNumber(pickFirst(record.reading_time_minutes, record.readingTimeMinutes), null)\n\n // Tags - i18n-resolved then parsed as JSON array\n var rawTags = resolveI18nField(record, 'tags', 'tags', currentLang, mainLang)\n var tags = parseJsonArray(rawTags)\n\n // Gallery images - parse JSON array then resolve each asset URL\n var rawGalleryImages = pickFirst(record.gallery_images, record.galleryImages)\n var parsedGalleryImages = parseJsonArray(rawGalleryImages)\n var galleryImages = resolveAssetUrls(parsedGalleryImages, assetMap)\n\n // Computed: allImages = [featuredImageUrl, ...galleryImages] (skip null featured)\n var allImages = []\n if (featuredImageUrl) allImages.push(featuredImageUrl)\n allImages = allImages.concat(galleryImages)\n\n // Boolean fields\n var isFeatured = coerceBoolean(pickFirst(record.is_featured, record.isFeatured), false)\n var allowComments = record.allow_comments !== undefined\n ? coerceBoolean(record.allow_comments, true)\n : record.allowComments !== undefined\n ? coerceBoolean(record.allowComments, true)\n : true\n\n // Timestamps\n var rawPublishedAt = pickFirst(record.published_at, record.publishedAt)\n var publishedAt = rawPublishedAt != null ? normalizeTimestamp(rawPublishedAt) : null\n\n var rawCreatedAt = pickFirst(record.created_at, record.createdAt, record.created)\n var createdAt = normalizeTimestamp(rawCreatedAt)\n\n var rawUpdatedAt = pickFirst(record.updated_at, record.updatedAt, record.updated)\n var updatedAt = rawUpdatedAt != null ? normalizeTimestamp(rawUpdatedAt) : createdAt\n\n // Computed: created = Unix seconds from createdAt milliseconds\n var created = Math.floor(createdAt / 1000)\n\n return {\n id: id,\n title: title,\n slug: slug,\n content: content,\n excerpt: excerpt,\n status: status,\n category: category,\n tags: tags,\n featuredImageUrl: featuredImageUrl,\n featuredImageAlt: featuredImageAlt,\n galleryImages: galleryImages,\n allImages: allImages,\n authorName: authorName,\n authorEmail: authorEmail,\n author_name: authorName,\n author_email: authorEmail,\n authorAvatarUrl: authorAvatarUrl,\n metaTitle: metaTitle,\n metaDescription: metaDescription,\n readingTimeMinutes: readingTimeMinutes,\n isFeatured: isFeatured,\n allowComments: allowComments,\n publishedAt: publishedAt,\n createdAt: createdAt,\n updatedAt: updatedAt,\n created: created,\n }\n}\n\nfunction transformBlogPosts(records, options) {\n if (!Array.isArray(records)) return []\n return records.map(function(record) { return buildBlogPost(record, options) })\n}\n";
10
+ return "\n// ============================================================\n// Blog Post Transformation\n// ============================================================\n\nfunction buildBlogPost(record, options) {\n if (!record || typeof record !== 'object') return record\n options = options || {}\n var currentLang = options.currentLanguage || null\n var mainLang = options.mainLanguage || null\n var assetMap = options.assetMap || {}\n\n var id = record.id !== undefined && record.id !== null ? record.id : null\n\n // i18n-resolved text fields\n var title = resolveI18nField(record, 'title', 'title', currentLang, mainLang) || ''\n var slug = resolveI18nField(record, 'slug', 'slug', currentLang, mainLang) || ''\n var content = resolveI18nField(record, 'content', 'content', currentLang, mainLang) || ''\n var excerpt = resolveI18nField(record, 'excerpt', 'excerpt', currentLang, mainLang) || ''\n var category = resolveI18nField(record, 'category', 'category', currentLang, mainLang) || null\n var metaTitle = resolveI18nField(record, 'meta_title', 'metaTitle', currentLang, mainLang) || null\n var metaDescription = resolveI18nField(record, 'meta_description', 'metaDescription', currentLang, mainLang) || null\n var featuredImageAlt = resolveI18nField(record, 'featured_image_alt', 'featuredImageAlt', currentLang, mainLang) || null\n\n // Status\n var status = record.status || 'draft'\n\n // Asset fields - resolve IDs to URLs\n var rawFeaturedImage = pickFirst(record.featured_image_url, record.featuredImageUrl)\n var TELEPORT_DEFAULT_FEATURED_IMG = 'https://play.teleporthq.io/static/svg/default-img.svg'\n var featuredImageUrl = resolveAssetUrl(rawFeaturedImage, assetMap)\n if (\n !featuredImageUrl ||\n rawFeaturedImage === TELEPORT_DEFAULT_FEATURED_IMG ||\n featuredImageUrl === TELEPORT_DEFAULT_FEATURED_IMG\n ) {\n featuredImageUrl =\n 'data:image/svg+xml;charset=utf-8,' +\n encodeURIComponent(\n '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"400\" height=\"240\" viewBox=\"0 0 400 240\"><rect fill=\"#e5e7eb\" width=\"400\" height=\"240\"/><text x=\"50%\" y=\"50%\" dominant-baseline=\"middle\" text-anchor=\"middle\" fill=\"#9ca3af\" font-family=\"system-ui,sans-serif\" font-size=\"13\">No image</text></svg>'\n )\n }\n\n var rawAuthorAvatar = pickFirst(record.author_avatar_url, record.authorAvatarUrl)\n var authorAvatarUrl = resolveAssetUrl(rawAuthorAvatar, assetMap)\n\n // Simple pass-through fields\n var authorName = pickFirst(record.author_name, record.authorName)\n var authorEmail = pickFirst(record.author_email, record.authorEmail)\n var readingTimeMinutes = safeNumber(pickFirst(record.reading_time_minutes, record.readingTimeMinutes), null)\n\n // Tags - i18n-resolved then parsed as JSON array\n var rawTags = resolveI18nField(record, 'tags', 'tags', currentLang, mainLang)\n var tags = parseJsonArray(rawTags)\n\n // Gallery images - parse JSON array then resolve each asset URL\n var rawGalleryImages = pickFirst(record.gallery_images, record.galleryImages)\n var parsedGalleryImages = parseJsonArray(rawGalleryImages)\n var galleryImages = resolveAssetUrls(parsedGalleryImages, assetMap)\n\n // Computed: allImages = [featuredImageUrl, ...galleryImages] (skip null featured)\n var allImages = []\n if (featuredImageUrl) allImages.push(featuredImageUrl)\n allImages = allImages.concat(galleryImages)\n\n // Boolean fields\n var isFeatured = coerceBoolean(pickFirst(record.is_featured, record.isFeatured), false)\n var allowComments = record.allow_comments !== undefined\n ? coerceBoolean(record.allow_comments, true)\n : record.allowComments !== undefined\n ? coerceBoolean(record.allowComments, true)\n : true\n\n // The author's related-post picks. `relatedPosts` carries the TRANSFORMED\n // rows, not ids, so the details page's related-posts rail can map over it and\n // draw an article card per entry; `relatedPostIds` keeps the raw selection.\n // The rows arrive from ONE batched query (getRelatedPostsMap) that\n // transformRecords runs, keyed by id in options.relatedPostsById.\n //\n // MUST mirror buildRelatedBlogPosts in packages/renderer/src/utils/blog-posts.ts\n // (the canvas-preview SSOT): the author's order, UNPUBLISHED posts dropped,\n // self dropped, and the nested build deliberately WITHOUT the map \u2014 two posts\n // pointing at each other is ordinary and would otherwise recurse forever.\n var relatedPostIds = parseRelatedIds(record.related_post_ids)\n var relatedPostsById = options.relatedPostsById\n var relatedPosts = []\n if (relatedPostsById && relatedPostIds.length > 0) {\n var relatedNestedOptions = {\n assetMap: assetMap,\n currentLanguage: currentLang,\n mainLanguage: mainLang,\n }\n for (var rp = 0; rp < relatedPostIds.length; rp++) {\n var relatedId = relatedPostIds[rp]\n if (id != null && relatedId === String(id)) continue\n var relatedRecord = relatedPostsById[relatedId]\n if (!relatedRecord) continue\n // A draft must not reach the storefront through another post's rail.\n // Missing status reads as 'draft', the same default as above.\n if ((relatedRecord.status || 'draft') !== 'published') continue\n relatedPosts.push(buildBlogPost(relatedRecord, relatedNestedOptions))\n }\n }\n\n // Timestamps\n var rawPublishedAt = pickFirst(record.published_at, record.publishedAt)\n var publishedAt = rawPublishedAt != null ? normalizeTimestamp(rawPublishedAt) : null\n\n var rawCreatedAt = pickFirst(record.created_at, record.createdAt, record.created)\n var createdAt = normalizeTimestamp(rawCreatedAt)\n\n var rawUpdatedAt = pickFirst(record.updated_at, record.updatedAt, record.updated)\n var updatedAt = rawUpdatedAt != null ? normalizeTimestamp(rawUpdatedAt) : createdAt\n\n // Computed: created = Unix seconds from createdAt milliseconds\n var created = Math.floor(createdAt / 1000)\n\n return {\n id: id,\n title: title,\n slug: slug,\n content: content,\n excerpt: excerpt,\n status: status,\n category: category,\n tags: tags,\n relatedPostIds: relatedPostIds,\n relatedPosts: relatedPosts,\n featuredImageUrl: featuredImageUrl,\n featuredImageAlt: featuredImageAlt,\n galleryImages: galleryImages,\n allImages: allImages,\n authorName: authorName,\n authorEmail: authorEmail,\n author_name: authorName,\n author_email: authorEmail,\n authorAvatarUrl: authorAvatarUrl,\n metaTitle: metaTitle,\n metaDescription: metaDescription,\n readingTimeMinutes: readingTimeMinutes,\n isFeatured: isFeatured,\n allowComments: allowComments,\n publishedAt: publishedAt,\n createdAt: createdAt,\n updatedAt: updatedAt,\n created: created,\n }\n}\n\nfunction transformBlogPosts(records, options) {\n if (!Array.isArray(records)) return []\n return records.map(function(record) { return buildBlogPost(record, options) })\n}\n\n// Batched fetch of the post rows a set of posts reference as \"related\", keyed by\n// id. Best-effort in the same way as the product side: a table provisioned\n// before the column yields no ids (the read is of an absent property, not of a\n// column \u2014 the SQL never names it), the map stays empty, and the rail stays\n// hidden behind its is_not_empty gate.\nasync function getRelatedPostsMap(getClientFn, records) {\n var map = {}\n if (!Array.isArray(records) || records.length === 0) return map\n\n var wantedIds = []\n for (var i = 0; i < records.length; i++) {\n var ids = parseRelatedIds(records[i] && records[i].related_post_ids)\n for (var j = 0; j < ids.length; j++) {\n if (wantedIds.indexOf(ids[j]) === -1) wantedIds.push(ids[j])\n }\n }\n if (wantedIds.length === 0) return map\n\n var client\n try {\n client = getClientFn()\n await client.connect()\n var result = await client.query('SELECT * FROM teleport_blog_posts WHERE id = ANY($1)', [\n wantedIds,\n ])\n if (result && result.rows) {\n for (var r = 0; r < result.rows.length; r++) {\n var row = result.rows[r]\n if (row && row.id != null) map[String(row.id)] = row\n }\n }\n } catch (e) {\n // Leaves relatedPosts empty rather than failing the page.\n } finally {\n if (client) {\n try { await client.end() } catch (e) { /* ignore */ }\n }\n }\n return map\n}\n";
11
11
  };
12
12
  exports.generateBlogPostTransformationCode = generateBlogPostTransformationCode;
13
13
  //# sourceMappingURL=blog-post.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"blog-post.js","sourceRoot":"","sources":["../../../src/transformations/blog-post.ts"],"names":[],"mappings":";;;AAAA;;;;GAIG;AACI,IAAM,kCAAkC,GAAG;IAChD,OAAO,orKAwHR,CAAA;AACD,CAAC,CAAA;AA1HY,QAAA,kCAAkC,sCA0H9C"}
1
+ {"version":3,"file":"blog-post.js","sourceRoot":"","sources":["../../../src/transformations/blog-post.ts"],"names":[],"mappings":";;;AAAA;;;;GAIG;AACI,IAAM,kCAAkC,GAAG;IAChD,OAAO,wtQAkMR,CAAA;AACD,CAAC,CAAA;AApMY,QAAA,kCAAkC,sCAoM9C"}
@@ -1 +1 @@
1
- {"version":3,"file":"ecommerce-product.d.ts","sourceRoot":"","sources":["../../../src/transformations/ecommerce-product.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AA2CvE;;;;GAIG;AACH,eAAO,MAAM,0CAA0C,gBACxC,qBAAqB,EAAE,KACnC,MAuiBF,CAAA"}
1
+ {"version":3,"file":"ecommerce-product.d.ts","sourceRoot":"","sources":["../../../src/transformations/ecommerce-product.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AA2CvE;;;;GAIG;AACH,eAAO,MAAM,0CAA0C,gBACxC,qBAAqB,EAAE,KACnC,MA+nBF,CAAA"}