@flamingo-stack/openframe-frontend-core 0.0.337-snapshot.20260629165153 → 0.0.337

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 (113) hide show
  1. package/dist/{chunk-N7MH2OSW.js → chunk-3B6JQUCN.js} +2 -2
  2. package/dist/{chunk-QJR7QLNW.cjs → chunk-3YN5ZRHG.cjs} +31 -31
  3. package/dist/{chunk-QJR7QLNW.cjs.map → chunk-3YN5ZRHG.cjs.map} +1 -1
  4. package/dist/{chunk-JI7EPGRA.js → chunk-43LYMONR.js} +4 -4
  5. package/dist/{chunk-3BWH262F.js → chunk-6G4NIF4Y.js} +4 -4
  6. package/dist/{chunk-YHDF4WMG.cjs → chunk-6OA77Y55.cjs} +15 -15
  7. package/dist/{chunk-YHDF4WMG.cjs.map → chunk-6OA77Y55.cjs.map} +1 -1
  8. package/dist/{chunk-IBCTHO3A.cjs → chunk-6XIB47I2.cjs} +5 -5
  9. package/dist/{chunk-IBCTHO3A.cjs.map → chunk-6XIB47I2.cjs.map} +1 -1
  10. package/dist/{chunk-DPFJPCFL.cjs → chunk-75I2PDDE.cjs} +7 -7
  11. package/dist/{chunk-DPFJPCFL.cjs.map → chunk-75I2PDDE.cjs.map} +1 -1
  12. package/dist/{chunk-FDKTAOEO.cjs → chunk-7JZFRSMF.cjs} +37 -37
  13. package/dist/{chunk-FDKTAOEO.cjs.map → chunk-7JZFRSMF.cjs.map} +1 -1
  14. package/dist/{chunk-RLHOSQ7X.cjs → chunk-A3AMVJDJ.cjs} +9 -9
  15. package/dist/{chunk-RLHOSQ7X.cjs.map → chunk-A3AMVJDJ.cjs.map} +1 -1
  16. package/dist/{chunk-DPU7VTTV.js → chunk-AAPECG2D.js} +8 -8
  17. package/dist/chunk-AAPECG2D.js.map +1 -0
  18. package/dist/{chunk-2FDRZIX2.cjs → chunk-ASMOZBD6.cjs} +359 -337
  19. package/dist/chunk-ASMOZBD6.cjs.map +1 -0
  20. package/dist/{chunk-IOEGV4DP.js → chunk-EX5IVHLS.js} +2 -2
  21. package/dist/{chunk-A4X3DZSS.js → chunk-F77UFU5A.js} +2 -2
  22. package/dist/{chunk-IJ2OYHRH.cjs → chunk-HKAOAKPW.cjs} +12 -12
  23. package/dist/{chunk-IJ2OYHRH.cjs.map → chunk-HKAOAKPW.cjs.map} +1 -1
  24. package/dist/{chunk-GFBCUSFN.js → chunk-IZ72DTGG.js} +4 -4
  25. package/dist/{chunk-BG44XQB2.js → chunk-KNTKGT4X.js} +3133 -3111
  26. package/dist/chunk-KNTKGT4X.js.map +1 -0
  27. package/dist/{chunk-RSA7DPZN.cjs → chunk-LF2BC2Z6.cjs} +60 -60
  28. package/dist/chunk-LF2BC2Z6.cjs.map +1 -0
  29. package/dist/{chunk-FGVYJPT4.js → chunk-OKPYF6AI.js} +2 -2
  30. package/dist/{chunk-IVY5R6L2.cjs → chunk-SKK3C6RE.cjs} +25 -25
  31. package/dist/{chunk-IVY5R6L2.cjs.map → chunk-SKK3C6RE.cjs.map} +1 -1
  32. package/dist/{chunk-Y2VDAVIX.cjs → chunk-SZJLJWWO.cjs} +62 -62
  33. package/dist/{chunk-Y2VDAVIX.cjs.map → chunk-SZJLJWWO.cjs.map} +1 -1
  34. package/dist/{chunk-FNPF5OQS.cjs → chunk-TXVO2E5C.cjs} +26 -26
  35. package/dist/{chunk-FNPF5OQS.cjs.map → chunk-TXVO2E5C.cjs.map} +1 -1
  36. package/dist/{chunk-GOTCZBP2.js → chunk-WQZPEEFC.js} +2 -2
  37. package/dist/{chunk-HKBV4OJK.js → chunk-X5DAKNSR.js} +2 -2
  38. package/dist/{chunk-HI367AS3.js → chunk-XB5LZ2YF.js} +2 -2
  39. package/dist/components/case-studies/index.cjs +8 -8
  40. package/dist/components/case-studies/index.js +2 -2
  41. package/dist/components/chat/index.cjs +2 -2
  42. package/dist/components/chat/index.js +1 -1
  43. package/dist/components/contact/index.cjs +3 -3
  44. package/dist/components/contact/index.js +2 -2
  45. package/dist/components/docs/index.cjs +5 -5
  46. package/dist/components/docs/index.js +4 -4
  47. package/dist/components/embeds/index.cjs +3 -3
  48. package/dist/components/embeds/index.js +2 -2
  49. package/dist/components/faq/index.cjs +3 -3
  50. package/dist/components/faq/index.js +2 -2
  51. package/dist/components/features/entity-summary-editor.d.ts.map +1 -1
  52. package/dist/components/features/highlight-video-combined-section.d.ts.map +1 -1
  53. package/dist/components/features/highlight-video-preview.d.ts.map +1 -1
  54. package/dist/components/features/highlight-video-section.d.ts.map +1 -1
  55. package/dist/components/features/index.cjs +2 -2
  56. package/dist/components/features/index.js +1 -1
  57. package/dist/components/features/seo-editor-preview.d.ts.map +1 -1
  58. package/dist/components/features/transcript-summary-editor.d.ts.map +1 -1
  59. package/dist/components/features/video-source-selector.d.ts.map +1 -1
  60. package/dist/components/help-center-pages/index.cjs +20 -20
  61. package/dist/components/help-center-pages/index.js +11 -11
  62. package/dist/components/index.cjs +121 -123
  63. package/dist/components/index.cjs.map +1 -1
  64. package/dist/components/index.js +9 -11
  65. package/dist/components/index.js.map +1 -1
  66. package/dist/components/navigation/index.cjs +2 -2
  67. package/dist/components/navigation/index.js +1 -1
  68. package/dist/components/onboarding-guides/index.cjs +5 -5
  69. package/dist/components/onboarding-guides/index.js +4 -4
  70. package/dist/components/related-content/index.cjs +3 -3
  71. package/dist/components/related-content/index.js +2 -2
  72. package/dist/components/tickets/index.cjs +5 -5
  73. package/dist/components/tickets/index.js +4 -4
  74. package/dist/components/ui/index.cjs +2 -4
  75. package/dist/components/ui/index.cjs.map +1 -1
  76. package/dist/components/ui/index.d.ts +0 -1
  77. package/dist/components/ui/index.d.ts.map +1 -1
  78. package/dist/components/ui/index.js +1 -3
  79. package/dist/components/ui/release-changelog-section.d.ts +2 -2
  80. package/dist/components/ui/release-changelog-section.d.ts.map +1 -1
  81. package/dist/components/ui/table/table-skeleton.d.ts.map +1 -1
  82. package/dist/index.cjs +2 -4
  83. package/dist/index.cjs.map +1 -1
  84. package/dist/index.js +1 -3
  85. package/package.json +1 -1
  86. package/src/components/features/entity-summary-editor.tsx +4 -2
  87. package/src/components/features/highlight-video-combined-section.tsx +4 -2
  88. package/src/components/features/highlight-video-preview.tsx +4 -2
  89. package/src/components/features/highlight-video-section.tsx +4 -2
  90. package/src/components/features/seo-editor-preview.tsx +12 -4
  91. package/src/components/features/transcript-summary-editor.tsx +8 -3
  92. package/src/components/features/video-source-selector.tsx +4 -2
  93. package/src/components/shared/product-release/release-detail-page.tsx +4 -4
  94. package/src/components/ui/index.ts +0 -1
  95. package/src/components/ui/release-changelog-section.tsx +14 -19
  96. package/src/components/ui/table/table-skeleton.tsx +2 -6
  97. package/dist/chunk-2FDRZIX2.cjs.map +0 -1
  98. package/dist/chunk-BG44XQB2.js.map +0 -1
  99. package/dist/chunk-DPU7VTTV.js.map +0 -1
  100. package/dist/chunk-RSA7DPZN.cjs.map +0 -1
  101. package/dist/components/ui/ai-generated-badge.d.ts +0 -10
  102. package/dist/components/ui/ai-generated-badge.d.ts.map +0 -1
  103. package/src/components/ui/ai-generated-badge.tsx +0 -17
  104. /package/dist/{chunk-N7MH2OSW.js.map → chunk-3B6JQUCN.js.map} +0 -0
  105. /package/dist/{chunk-JI7EPGRA.js.map → chunk-43LYMONR.js.map} +0 -0
  106. /package/dist/{chunk-3BWH262F.js.map → chunk-6G4NIF4Y.js.map} +0 -0
  107. /package/dist/{chunk-IOEGV4DP.js.map → chunk-EX5IVHLS.js.map} +0 -0
  108. /package/dist/{chunk-A4X3DZSS.js.map → chunk-F77UFU5A.js.map} +0 -0
  109. /package/dist/{chunk-GFBCUSFN.js.map → chunk-IZ72DTGG.js.map} +0 -0
  110. /package/dist/{chunk-FGVYJPT4.js.map → chunk-OKPYF6AI.js.map} +0 -0
  111. /package/dist/{chunk-GOTCZBP2.js.map → chunk-WQZPEEFC.js.map} +0 -0
  112. /package/dist/{chunk-HKBV4OJK.js.map → chunk-X5DAKNSR.js.map} +0 -0
  113. /package/dist/{chunk-HI367AS3.js.map → chunk-XB5LZ2YF.js.map} +0 -0
@@ -2,7 +2,6 @@
2
2
 
3
3
  import React, { useState, useCallback, useEffect } from 'react';
4
4
  import { Upload, Sparkles, X, Video, Loader2 } from 'lucide-react';
5
- import { AIGeneratedBadge } from '../ui/ai-generated-badge';
6
5
  import { Button } from '../ui/button';
7
6
  import { Input } from '../ui/input';
8
7
  import { Label } from '../ui/label';
@@ -202,7 +201,10 @@ export function VideoSourceSelector({
202
201
  <div className="flex items-center gap-2">
203
202
  <Label>{uploadLabel}</Label>
204
203
  {showAIBadge && isAIGenerated && (
205
- <AIGeneratedBadge />
204
+ <Badge variant="secondary" className="flex items-center gap-1">
205
+ <Sparkles className="h-3 w-3" />
206
+ AI Generated
207
+ </Badge>
206
208
  )}
207
209
  </div>
208
210
  <Button
@@ -402,7 +402,7 @@ export function ReleaseDetailPage({
402
402
  isBreaking
403
403
  hideTitle
404
404
  icon={<AlertTriangle className="h-6 w-6" />}
405
- MarkdownRenderer={MarkdownRenderer}
405
+ SimpleMarkdownRenderer={MarkdownRenderer}
406
406
  />
407
407
  {/* Features / Bugs / Improvements use `previewFirst` — same
408
408
  progressive-disclosure pattern as the investor-update detail
@@ -415,21 +415,21 @@ export function ReleaseDetailPage({
415
415
  entries={featuresAdded || []}
416
416
  icon={<Sparkles className="h-6 w-6" />}
417
417
  previewFirst
418
- MarkdownRenderer={MarkdownRenderer}
418
+ SimpleMarkdownRenderer={MarkdownRenderer}
419
419
  />
420
420
  <ReleaseChangelogSection
421
421
  title="Bugs Fixed"
422
422
  entries={bugFixed || []}
423
423
  icon={<Wrench className="h-6 w-6" />}
424
424
  previewFirst
425
- MarkdownRenderer={MarkdownRenderer}
425
+ SimpleMarkdownRenderer={MarkdownRenderer}
426
426
  />
427
427
  <ReleaseChangelogSection
428
428
  title="Improvements"
429
429
  entries={improvements || []}
430
430
  icon={<TrendingUp className="h-6 w-6" />}
431
431
  previewFirst
432
- MarkdownRenderer={MarkdownRenderer}
432
+ SimpleMarkdownRenderer={MarkdownRenderer}
433
433
  />
434
434
 
435
435
  {/* Video Bites Section - Only when VideoDisplaySection is not handling it */}
@@ -52,7 +52,6 @@ export * from './tab-navigation'
52
52
  // Feedback components
53
53
  export * from './alert'
54
54
  export * from './badge'
55
- export * from './ai-generated-badge'
56
55
  export * from './progress'
57
56
  export * from './release-changelog-section'
58
57
  export * from './status-badge'
@@ -36,7 +36,7 @@ interface ReleaseChangelogSectionProps {
36
36
  * the lib's `RichMarkdownRenderer` so changelog rich-link previews
37
37
  * (YouTube, OG cards, etc.) work out of the box. Hosts that already
38
38
  * wrap with a Supabase-aware preset can keep passing their own. */
39
- MarkdownRenderer?: React.ComponentType<{ content: string }>;
39
+ SimpleMarkdownRenderer?: React.ComponentType<{ content: string }>;
40
40
  }
41
41
 
42
42
  // Collapsed height for the preview-first mode. ~120px shows the first
@@ -52,7 +52,7 @@ export function ReleaseChangelogSection({
52
52
  defaultCollapsed = true,
53
53
  previewFirst = false,
54
54
  icon,
55
- MarkdownRenderer = RichMarkdownRenderer,
55
+ SimpleMarkdownRenderer = RichMarkdownRenderer,
56
56
  }: ReleaseChangelogSectionProps) {
57
57
  const [collapsed, setCollapsed] = useState(collapsible ? defaultCollapsed : false);
58
58
  const [previewExpanded, setPreviewExpanded] = useState(false);
@@ -126,7 +126,7 @@ export function ReleaseChangelogSection({
126
126
  } : {}),
127
127
  }}
128
128
  >
129
- <ChangelogEntryList entries={entries} MarkdownRenderer={MarkdownRenderer} />
129
+ <ChangelogEntryList entries={entries} SimpleMarkdownRenderer={SimpleMarkdownRenderer} />
130
130
  </div>
131
131
  {previewNeedsFade && (
132
132
  <button
@@ -142,7 +142,7 @@ export function ReleaseChangelogSection({
142
142
  )}
143
143
  </div>
144
144
  ) : (
145
- <ChangelogEntryList entries={entries} MarkdownRenderer={MarkdownRenderer} />
145
+ <ChangelogEntryList entries={entries} SimpleMarkdownRenderer={SimpleMarkdownRenderer} />
146
146
  )
147
147
  )}
148
148
  </div>
@@ -156,36 +156,31 @@ export function ReleaseChangelogSection({
156
156
  */
157
157
  function ChangelogEntryList({
158
158
  entries,
159
- MarkdownRenderer,
159
+ SimpleMarkdownRenderer,
160
160
  }: {
161
161
  entries: ChangelogEntry[];
162
- MarkdownRenderer: React.ComponentType<{ content: string }>;
162
+ SimpleMarkdownRenderer: React.ComponentType<{ content: string }>;
163
163
  }) {
164
164
  return (
165
165
  <ul className="space-y-6">
166
166
  {entries.map((entry, index) => (
167
167
  <li key={index} className="border-l-2 border-ods-border pl-4 ml-0">
168
- {/* Entry title — run through the SAME markdown renderer as the
169
- description so inline markdown (links like `[label](url)`,
170
- emphasis) renders instead of showing as raw text, then pinned
171
- back to the `text-h3` body+BOLD scale (per ODS tokens:
172
- `--font-h3-weight: var(--font-weight-bold)`, 14/18px responsive)
173
- so plain-text titles look exactly as before. `[&_p]:!my-0`
174
- strips the renderer's paragraph margins; `mb-2` keeps the gap to
175
- the description. */}
176
- <div className="text-h3 text-ods-text-primary mb-2 [&_p]:!text-[length:var(--font-size-h3-body)] [&_p]:!leading-[var(--font-line-space-h3-body)] [&_p]:!font-bold [&_p]:!my-0 [&_p+p]:!mt-2">
177
- <MarkdownRenderer content={entry.title} />
178
- </div>
168
+ {/* Entry title — `text-h3` is body family + BOLD weight (per
169
+ ODS tokens: `--font-h3-weight: var(--font-weight-bold)`)
170
+ at 14/18px responsive. Same body size as the description
171
+ below, distinguished by weight clean visual hierarchy
172
+ without inflating the body scale. */}
173
+ <p className="text-h3 text-ods-text-primary mb-2">{entry.title}</p>
179
174
  {entry.description && (
180
175
  /* Entry description — body text matches the main release
181
176
  summary at the SAME 14/18px responsive `text-h4` scale.
182
- The `MarkdownRenderer` forces its own `<p>` typography
177
+ The `SimpleMarkdownRenderer` forces its own `<p>` typography
183
178
  which would override `text-h4` on `lg+` viewports and
184
179
  inflate the changelog body to 20px. The `[&_p]:!` overrides
185
180
  pin every descendant `<p>` back to the h4 responsive tokens
186
181
  so the breakpoints stay aligned with the rest of the page. */
187
182
  <div className="text-h4 text-ods-text-primary [&_p]:!text-[length:var(--font-size-h4-body)] [&_p]:!leading-[var(--font-line-space-h4-body)] [&_p]:!font-medium">
188
- <MarkdownRenderer content={entry.description} />
183
+ <SimpleMarkdownRenderer content={entry.description} />
189
184
  </div>
190
185
  )}
191
186
  </li>
@@ -16,10 +16,6 @@ export function TableCardSkeleton({
16
16
  className,
17
17
  rowClassName
18
18
  }: TableCardSkeletonProps) {
19
- // The multi-line placeholder belongs to the primary text column — the wide,
20
- // GROWING one (`flex-1` / `flex-[n]`), not necessarily the first column, which
21
- // may be a narrow leading action/icon column. Falls back to the first column.
22
- const primaryKey = (columns.find((c) => /flex-(1|\[)/.test(c.width || '')) ?? columns[0])?.key
23
19
  return (
24
20
  <>
25
21
  {Array.from({ length: rows }).map((_, index) => (
@@ -45,8 +41,8 @@ export function TableCardSkeleton({
45
41
  )}
46
42
  >
47
43
  <div className="h-5 bg-ods-bg-surface rounded w-3/4 mb-1" />
48
- {/* second line simulates multi-line content on the primary column */}
49
- {index % 2 === 0 && column.key === primaryKey && (
44
+ {/* Add second line for some columns to simulate multi-line content */}
45
+ {index % 2 === 0 && column.key === columns[0].key && (
50
46
  <div className="h-4 bg-ods-bg-surface rounded w-1/2 opacity-60" />
51
47
  )}
52
48
  </div>