@flamingo-stack/openframe-frontend-core 0.0.270 → 0.0.271

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 (52) hide show
  1. package/dist/{chunk-37OJ53QH.js → chunk-3DYASQEL.js} +2 -2
  2. package/dist/{chunk-XOKXFW77.js → chunk-56V4MC32.js} +2 -2
  3. package/dist/{chunk-N3OPJQYI.cjs → chunk-5CTV435G.cjs} +7 -3
  4. package/dist/chunk-5CTV435G.cjs.map +1 -0
  5. package/dist/{chunk-RM7ZT3UU.js → chunk-BCPLTDRW.js} +7 -3
  6. package/dist/chunk-BCPLTDRW.js.map +1 -0
  7. package/dist/{chunk-NDSCF6LB.cjs → chunk-FC6YVRUW.cjs} +11 -11
  8. package/dist/{chunk-NDSCF6LB.cjs.map → chunk-FC6YVRUW.cjs.map} +1 -1
  9. package/dist/{chunk-EMRSIP4Q.js → chunk-J35EWU2W.js} +2 -2
  10. package/dist/{chunk-JIJEVSCC.cjs → chunk-LELTRQZV.cjs} +30 -30
  11. package/dist/{chunk-JIJEVSCC.cjs.map → chunk-LELTRQZV.cjs.map} +1 -1
  12. package/dist/{chunk-3H5TSZMU.cjs → chunk-YH74UZRG.cjs} +25 -25
  13. package/dist/{chunk-3H5TSZMU.cjs.map → chunk-YH74UZRG.cjs.map} +1 -1
  14. package/dist/components/chat/index.cjs +2 -2
  15. package/dist/components/chat/index.js +1 -1
  16. package/dist/components/contact/index.cjs +3 -3
  17. package/dist/components/contact/index.js +2 -2
  18. package/dist/components/features/index.cjs +2 -2
  19. package/dist/components/features/index.js +1 -1
  20. package/dist/components/features/status-filter-component.d.ts +6 -1
  21. package/dist/components/features/status-filter-component.d.ts.map +1 -1
  22. package/dist/components/index.cjs +47 -47
  23. package/dist/components/index.js +3 -3
  24. package/dist/components/navigation/index.cjs +2 -2
  25. package/dist/components/navigation/index.js +1 -1
  26. package/dist/components/related-content/index.cjs +3 -3
  27. package/dist/components/related-content/index.js +2 -2
  28. package/dist/components/tickets/index.cjs +53 -53
  29. package/dist/components/tickets/index.js +3 -3
  30. package/dist/components/ui/index.cjs +2 -2
  31. package/dist/components/ui/index.js +1 -1
  32. package/dist/index.cjs +2 -2
  33. package/dist/index.js +1 -1
  34. package/dist/types/marketing.d.ts +1 -1
  35. package/dist/types/marketing.d.ts.map +1 -1
  36. package/dist/types/video-processing.d.ts +2 -1
  37. package/dist/types/video-processing.d.ts.map +1 -1
  38. package/dist/utils/content-ref-groups.d.ts.map +1 -1
  39. package/dist/utils/index.cjs +2 -1
  40. package/dist/utils/index.cjs.map +1 -1
  41. package/dist/utils/index.js +2 -1
  42. package/dist/utils/index.js.map +1 -1
  43. package/package.json +1 -1
  44. package/src/components/features/status-filter-component.tsx +9 -1
  45. package/src/types/marketing.ts +1 -0
  46. package/src/types/video-processing.ts +2 -0
  47. package/src/utils/content-ref-groups.ts +1 -0
  48. package/dist/chunk-N3OPJQYI.cjs.map +0 -1
  49. package/dist/chunk-RM7ZT3UU.js.map +0 -1
  50. /package/dist/{chunk-37OJ53QH.js.map → chunk-3DYASQEL.js.map} +0 -0
  51. /package/dist/{chunk-XOKXFW77.js.map → chunk-56V4MC32.js.map} +0 -0
  52. /package/dist/{chunk-EMRSIP4Q.js.map → chunk-J35EWU2W.js.map} +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flamingo-stack/openframe-frontend-core",
3
- "version": "0.0.270",
3
+ "version": "0.0.271",
4
4
  "description": "Shared design system and components for all Flamingo platforms",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -16,6 +16,11 @@ export interface StatusFilterComponentProps {
16
16
  showCount?: boolean;
17
17
  count?: number;
18
18
  className?: string;
19
+ /** Status values (incl. `'all'`) to render but DISABLE — the buttons stay
20
+ * visible (so the full set is always shown) but are non-clickable. Lets a
21
+ * dashboard expose every status while gating which ones a given viewer may
22
+ * actually select (e.g. non-management can only pick `published`). */
23
+ disabledValues?: string[];
19
24
  }
20
25
 
21
26
  /**
@@ -29,7 +34,8 @@ export function StatusFilterComponent({
29
34
  statusOptions,
30
35
  showCount = false,
31
36
  count = 0,
32
- className = ''
37
+ className = '',
38
+ disabledValues = []
33
39
  }: StatusFilterComponentProps) {
34
40
  // Filter out 'all' from options since we render it separately
35
41
  const filteredOptions = statusOptions.filter(option => option.value !== 'all');
@@ -49,6 +55,7 @@ export function StatusFilterComponent({
49
55
  variant={selectedStatus === 'all' ? "accent" : "outline"}
50
56
  size="small-legacy"
51
57
  onClick={() => onStatusChange('all')}
58
+ disabled={disabledValues.includes('all')}
52
59
  className="text-h3"
53
60
  >
54
61
  All
@@ -62,6 +69,7 @@ export function StatusFilterComponent({
62
69
  variant={selectedStatus === option.value ? "accent" : "outline"}
63
70
  size="small-legacy"
64
71
  onClick={() => onStatusChange(option.value)}
72
+ disabled={disabledValues.includes(option.value)}
65
73
  className="text-h3"
66
74
  >
67
75
  {option.label}
@@ -346,6 +346,7 @@ export type ContentSourceType =
346
346
  | 'webinar' // Webinars
347
347
  | 'investor_update' // Investor updates
348
348
  | 'onboarding_guide' // Onboarding guides (lives on openframe platform)
349
+ | 'what_i_shipped' // What I Shipped employee check-ins (lives on people-hub)
349
350
  | 'from_scratch';
350
351
 
351
352
  export type URLInjectionPreference = 'none' | 'in_post' | 'as_comment';
@@ -95,6 +95,7 @@ export interface VideoProcessingFields {
95
95
  * - marketing_campaign: Marketing campaign content generation (autonomous workflow)
96
96
  * - case_study: Case study generation from customer interviews
97
97
  * - onboarding_guide: Step-by-step onboarding guides with optional video walkthrough
98
+ * - what_i_shipped: Monthly employee "What I Shipped" entries (people-hub) with transcription/bites/highlight
98
99
  */
99
100
  export type VideoProcessingEntityType =
100
101
  | 'customer_interview'
@@ -105,4 +106,5 @@ export type VideoProcessingEntityType =
105
106
  | 'podcast_episode'
106
107
  | 'investor_update'
107
108
  | 'onboarding_guide'
109
+ | 'what_i_shipped'
108
110
  // Fri May 15 14:58:59 EDT 2026
@@ -53,6 +53,7 @@ export const CONTENT_REF_GROUPS: Record<string, ContentRefGroupConfig> = {
53
53
  blog_post_existing: { label: 'Blog Posts', order: 7, layout: 'grid', gridSize: 'default' },
54
54
  customer_interview: { label: 'Customer Interviews', order: 8, layout: 'grid', gridSize: 'default' },
55
55
  onboarding_guide: { label: 'Onboarding Guides', order: 9, layout: 'list', gridSize: 'default' },
56
+ what_i_shipped: { label: 'What I Shipped', order: 10, layout: 'grid', gridSize: 'default' },
56
57
  }
57
58
 
58
59
  /** Human-readable label for a content_ref `type`. Returns null when the type