@flamingo-stack/openframe-frontend-core 0.0.565-1861.5100.1 → 0.0.565

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 (204) hide show
  1. package/dist/chat-protocol/index.cjs.map +1 -1
  2. package/dist/chat-protocol/index.js.map +1 -1
  3. package/dist/{chunk-TA5P2M7V.cjs → chunk-26LZFWY6.cjs} +732 -812
  4. package/dist/chunk-26LZFWY6.cjs.map +1 -0
  5. package/dist/{chunk-KHEOXHF4.cjs → chunk-32QBTN5L.cjs} +5 -5
  6. package/dist/{chunk-KHEOXHF4.cjs.map → chunk-32QBTN5L.cjs.map} +1 -1
  7. package/dist/{chunk-GG6CAELN.js → chunk-3FBPPKV2.js} +4 -4
  8. package/dist/{chunk-MSUSONUK.js → chunk-5JYX2GOP.js} +3233 -3313
  9. package/dist/chunk-5JYX2GOP.js.map +1 -0
  10. package/dist/{chunk-EQEMZU45.js → chunk-5K3F5AZX.js} +4 -4
  11. package/dist/{chunk-YVOMHB73.js → chunk-5MVE77D5.js} +21 -35
  12. package/dist/chunk-5MVE77D5.js.map +1 -0
  13. package/dist/{chunk-H4RCJ4IB.js → chunk-6F47STCR.js} +3 -7
  14. package/dist/{chunk-H4RCJ4IB.js.map → chunk-6F47STCR.js.map} +1 -1
  15. package/dist/{chunk-XPLZB74T.js → chunk-6RILRC7X.js} +2 -2
  16. package/dist/{chunk-BKDSNVGH.cjs → chunk-7FH6MZ6M.cjs} +9 -9
  17. package/dist/{chunk-BKDSNVGH.cjs.map → chunk-7FH6MZ6M.cjs.map} +1 -1
  18. package/dist/{chunk-ZUVVJ24E.js → chunk-7IR5LKYC.js} +2 -2
  19. package/dist/{chunk-GG2HJQW3.cjs → chunk-AN7YK35P.cjs} +26 -26
  20. package/dist/{chunk-GG2HJQW3.cjs.map → chunk-AN7YK35P.cjs.map} +1 -1
  21. package/dist/{chunk-PZH3CZTJ.cjs → chunk-CCFBL7JU.cjs} +75 -89
  22. package/dist/chunk-CCFBL7JU.cjs.map +1 -0
  23. package/dist/{chunk-OEN3GTRL.js → chunk-DEYRHTLD.js} +2 -2
  24. package/dist/{chunk-MIKGZY7V.js → chunk-GCMASPSW.js} +5 -5
  25. package/dist/{chunk-ZYC4O76Y.js → chunk-HJ7OVIR7.js} +2 -2
  26. package/dist/{chunk-BWMVI2KD.cjs → chunk-HVS56KQE.cjs} +7 -7
  27. package/dist/{chunk-BWMVI2KD.cjs.map → chunk-HVS56KQE.cjs.map} +1 -1
  28. package/dist/{chunk-GZL5SAUI.cjs → chunk-HWQ5HMJN.cjs} +15 -19
  29. package/dist/chunk-HWQ5HMJN.cjs.map +1 -0
  30. package/dist/{chunk-NAYXROCV.cjs → chunk-ISK6LRRY.cjs} +3 -3
  31. package/dist/{chunk-NAYXROCV.cjs.map → chunk-ISK6LRRY.cjs.map} +1 -1
  32. package/dist/{chunk-4H7L4OSR.cjs → chunk-LOLVMAT3.cjs} +4 -4
  33. package/dist/{chunk-4H7L4OSR.cjs.map → chunk-LOLVMAT3.cjs.map} +1 -1
  34. package/dist/{chunk-XZNKPEWB.js → chunk-MIBKEMZY.js} +2 -2
  35. package/dist/chunk-MVWSLZG7.js +2 -0
  36. package/dist/{chunk-QWVON3LG.cjs → chunk-NCJUIT3Q.cjs} +20 -20
  37. package/dist/{chunk-QWVON3LG.cjs.map → chunk-NCJUIT3Q.cjs.map} +1 -1
  38. package/dist/{chunk-OTDVQBLI.cjs → chunk-NM5NBMMD.cjs} +31 -31
  39. package/dist/{chunk-OTDVQBLI.cjs.map → chunk-NM5NBMMD.cjs.map} +1 -1
  40. package/dist/{chunk-SQ53GVCG.js → chunk-QQFUJ6MS.js} +2 -2
  41. package/dist/{chunk-PBH2BQYR.cjs → chunk-TFEL2C6I.cjs} +86 -86
  42. package/dist/{chunk-PBH2BQYR.cjs.map → chunk-TFEL2C6I.cjs.map} +1 -1
  43. package/dist/{chunk-DLSDYLY3.cjs → chunk-TFRJ7B4X.cjs} +11 -11
  44. package/dist/{chunk-DLSDYLY3.cjs.map → chunk-TFRJ7B4X.cjs.map} +1 -1
  45. package/dist/{chunk-Y6IGG6RZ.cjs → chunk-TGT3JHVU.cjs} +39 -39
  46. package/dist/{chunk-Y6IGG6RZ.cjs.map → chunk-TGT3JHVU.cjs.map} +1 -1
  47. package/dist/{chunk-XSK7ZQ3C.js → chunk-TXLUKQBI.js} +2 -2
  48. package/dist/{chunk-LOWWLH2W.js → chunk-UK6SSMUR.js} +2 -2
  49. package/dist/chunk-ZTM35Q76.cjs +2 -0
  50. package/dist/{chunk-UGAHDPNU.cjs.map → chunk-ZTM35Q76.cjs.map} +1 -1
  51. package/dist/components/case-studies/index.cjs +8 -8
  52. package/dist/components/case-studies/index.js +2 -2
  53. package/dist/components/chat/chat-message-enhanced.d.ts.map +1 -1
  54. package/dist/components/chat/entity-cards/employee-entry-card.d.ts.map +1 -1
  55. package/dist/components/chat/index.cjs +2 -2
  56. package/dist/components/chat/index.js +1 -1
  57. package/dist/components/chat/stream/chat-stream-reducer.d.ts.map +1 -1
  58. package/dist/components/chat/types/message.types.d.ts +8 -0
  59. package/dist/components/chat/types/message.types.d.ts.map +1 -1
  60. package/dist/components/chat/utils/message-segment-accumulator.d.ts +1 -1
  61. package/dist/components/chat/utils/message-segment-accumulator.d.ts.map +1 -1
  62. package/dist/components/chat/utils/process-historical-messages.d.ts.map +1 -1
  63. package/dist/components/comment-card.d.ts +2 -18
  64. package/dist/components/comment-card.d.ts.map +1 -1
  65. package/dist/components/contact/index.cjs +3 -3
  66. package/dist/components/contact/index.js +2 -2
  67. package/dist/components/docs/index.cjs +5 -5
  68. package/dist/components/docs/index.js +4 -4
  69. package/dist/components/embeds/index.cjs +4 -6
  70. package/dist/components/embeds/index.cjs.map +1 -1
  71. package/dist/components/embeds/index.d.ts +0 -2
  72. package/dist/components/embeds/index.d.ts.map +1 -1
  73. package/dist/components/embeds/index.js +3 -5
  74. package/dist/components/faq/index.cjs +3 -3
  75. package/dist/components/faq/index.js +2 -2
  76. package/dist/components/features/array-entry-manager.d.ts.map +1 -1
  77. package/dist/components/features/clickup-tasks-manager.d.ts +1 -6
  78. package/dist/components/features/clickup-tasks-manager.d.ts.map +1 -1
  79. package/dist/components/features/index.cjs +2 -2
  80. package/dist/components/features/index.js +1 -1
  81. package/dist/components/help-center-pages/index.cjs +22 -22
  82. package/dist/components/help-center-pages/index.js +13 -13
  83. package/dist/components/index.cjs +204 -281
  84. package/dist/components/index.cjs.map +1 -1
  85. package/dist/components/index.d.ts +0 -1
  86. package/dist/components/index.d.ts.map +1 -1
  87. package/dist/components/index.js +570 -647
  88. package/dist/components/index.js.map +1 -1
  89. package/dist/components/meeting-scheduler/index.cjs +30 -30
  90. package/dist/components/meeting-scheduler/index.js +3 -3
  91. package/dist/components/navigation/index.cjs +2 -2
  92. package/dist/components/navigation/index.js +1 -1
  93. package/dist/components/onboarding-guides/index.cjs +5 -5
  94. package/dist/components/onboarding-guides/index.js +4 -4
  95. package/dist/components/related-content/index.cjs +3 -3
  96. package/dist/components/related-content/index.js +2 -2
  97. package/dist/components/shared/delivery/delivery-row.d.ts +1 -5
  98. package/dist/components/shared/delivery/delivery-row.d.ts.map +1 -1
  99. package/dist/components/shared/roadmap/roadmap-grid.d.ts +1 -10
  100. package/dist/components/shared/roadmap/roadmap-grid.d.ts.map +1 -1
  101. package/dist/components/tickets/index.cjs +6 -6
  102. package/dist/components/tickets/index.js +5 -5
  103. package/dist/components/ui/card.d.ts.map +1 -1
  104. package/dist/components/ui/index.cjs +2 -4
  105. package/dist/components/ui/index.cjs.map +1 -1
  106. package/dist/components/ui/index.d.ts +1 -1
  107. package/dist/components/ui/index.d.ts.map +1 -1
  108. package/dist/components/ui/index.js +1 -3
  109. package/dist/components/ui/markdown/rich/embed-overrides.d.ts.map +1 -1
  110. package/dist/components/ui/markdown/rich/shortcodes.d.ts.map +1 -1
  111. package/dist/components/ui/table/index.d.ts +1 -1
  112. package/dist/components/ui/table/index.d.ts.map +1 -1
  113. package/dist/components/ui/table/table-row.d.ts.map +1 -1
  114. package/dist/components/ui/table/table-skeleton.d.ts +2 -15
  115. package/dist/components/ui/table/table-skeleton.d.ts.map +1 -1
  116. package/dist/components/ui/table/table.d.ts.map +1 -1
  117. package/dist/components/ui/table/types.d.ts +0 -2
  118. package/dist/components/ui/table/types.d.ts.map +1 -1
  119. package/dist/index.cjs +2 -6
  120. package/dist/index.cjs.map +1 -1
  121. package/dist/index.js +1 -5
  122. package/dist/types/employee.d.ts +2 -25
  123. package/dist/types/employee.d.ts.map +1 -1
  124. package/dist/types/index.d.ts +0 -2
  125. package/dist/types/index.d.ts.map +1 -1
  126. package/dist/types/marketing.d.ts +1 -1
  127. package/dist/types/marketing.d.ts.map +1 -1
  128. package/dist/types/profile.d.ts +1 -2
  129. package/dist/types/profile.d.ts.map +1 -1
  130. package/dist/types/team.d.ts +1 -15
  131. package/dist/types/team.d.ts.map +1 -1
  132. package/dist/types/user.d.ts +1 -3
  133. package/dist/types/user.d.ts.map +1 -1
  134. package/dist/utils/embed-url-converters.d.ts +0 -17
  135. package/dist/utils/embed-url-converters.d.ts.map +1 -1
  136. package/dist/utils/index.cjs +0 -12
  137. package/dist/utils/index.cjs.map +1 -1
  138. package/dist/utils/index.js +1 -12
  139. package/dist/utils/index.js.map +1 -1
  140. package/package.json +1 -1
  141. package/src/components/.comment-card.md +5 -4
  142. package/src/components/chat/__tests__/ticket-event.test.ts +86 -0
  143. package/src/components/chat/chat-message-enhanced.tsx +3 -1
  144. package/src/components/chat/entity-cards/employee-entry-card.tsx +0 -6
  145. package/src/components/chat/stream/chat-stream-reducer.ts +7 -1
  146. package/src/components/chat/types/message.types.ts +8 -0
  147. package/src/components/chat/utils/message-segment-accumulator.ts +10 -3
  148. package/src/components/chat/utils/process-historical-messages.ts +17 -8
  149. package/src/components/comment-card.tsx +17 -42
  150. package/src/components/embeds/index.ts +0 -2
  151. package/src/components/features/array-entry-manager.tsx +1 -2
  152. package/src/components/features/clickup-tasks-manager.tsx +1 -8
  153. package/src/components/index.ts +0 -1
  154. package/src/components/shared/delivery/delivery-row.tsx +1 -17
  155. package/src/components/shared/roadmap/roadmap-grid.tsx +1 -21
  156. package/src/components/ui/card.tsx +1 -4
  157. package/src/components/ui/index.ts +0 -1
  158. package/src/components/ui/markdown/rich/__tests__/shortcodes.test.ts +0 -44
  159. package/src/components/ui/markdown/rich/embed-overrides.tsx +0 -4
  160. package/src/components/ui/markdown/rich/shortcodes.ts +0 -12
  161. package/src/components/ui/table/index.ts +1 -1
  162. package/src/components/ui/table/table-row.tsx +2 -7
  163. package/src/components/ui/table/table-skeleton.tsx +3 -20
  164. package/src/components/ui/table/table.tsx +0 -1
  165. package/src/components/ui/table/types.ts +0 -2
  166. package/src/types/employee.ts +2 -27
  167. package/src/types/index.ts +0 -2
  168. package/src/types/marketing.ts +0 -1
  169. package/src/types/profile.ts +1 -3
  170. package/src/types/team.ts +1 -17
  171. package/src/types/user.ts +1 -4
  172. package/src/utils/embed-url-converters.ts +0 -32
  173. package/dist/chunk-5I3BSQ6D.js +0 -2
  174. package/dist/chunk-GZL5SAUI.cjs.map +0 -1
  175. package/dist/chunk-MSUSONUK.js.map +0 -1
  176. package/dist/chunk-PZH3CZTJ.cjs.map +0 -1
  177. package/dist/chunk-TA5P2M7V.cjs.map +0 -1
  178. package/dist/chunk-UGAHDPNU.cjs +0 -2
  179. package/dist/chunk-YVOMHB73.js.map +0 -1
  180. package/dist/components/comment-composer.d.ts +0 -42
  181. package/dist/components/comment-composer.d.ts.map +0 -1
  182. package/dist/components/embeds/claude-embed.d.ts +0 -31
  183. package/dist/components/embeds/claude-embed.d.ts.map +0 -1
  184. package/dist/types/department.d.ts +0 -41
  185. package/dist/types/department.d.ts.map +0 -1
  186. package/dist/types/design-doc.d.ts +0 -247
  187. package/dist/types/design-doc.d.ts.map +0 -1
  188. package/src/components/comment-composer.tsx +0 -117
  189. package/src/components/embeds/claude-embed.tsx +0 -84
  190. package/src/types/department.ts +0 -44
  191. package/src/types/design-doc.ts +0 -295
  192. package/src/utils/__tests__/claude-embed-url.test.ts +0 -42
  193. /package/dist/{chunk-GG6CAELN.js.map → chunk-3FBPPKV2.js.map} +0 -0
  194. /package/dist/{chunk-EQEMZU45.js.map → chunk-5K3F5AZX.js.map} +0 -0
  195. /package/dist/{chunk-XPLZB74T.js.map → chunk-6RILRC7X.js.map} +0 -0
  196. /package/dist/{chunk-ZUVVJ24E.js.map → chunk-7IR5LKYC.js.map} +0 -0
  197. /package/dist/{chunk-OEN3GTRL.js.map → chunk-DEYRHTLD.js.map} +0 -0
  198. /package/dist/{chunk-MIKGZY7V.js.map → chunk-GCMASPSW.js.map} +0 -0
  199. /package/dist/{chunk-ZYC4O76Y.js.map → chunk-HJ7OVIR7.js.map} +0 -0
  200. /package/dist/{chunk-XZNKPEWB.js.map → chunk-MIBKEMZY.js.map} +0 -0
  201. /package/dist/{chunk-5I3BSQ6D.js.map → chunk-MVWSLZG7.js.map} +0 -0
  202. /package/dist/{chunk-SQ53GVCG.js.map → chunk-QQFUJ6MS.js.map} +0 -0
  203. /package/dist/{chunk-XSK7ZQ3C.js.map → chunk-TXLUKQBI.js.map} +0 -0
  204. /package/dist/{chunk-LOWWLH2W.js.map → chunk-UK6SSMUR.js.map} +0 -0
@@ -1,10 +1,10 @@
1
1
  "use client";
2
2
  "use client";
3
- import "../chunk-5I3BSQ6D.js";
3
+ import "../chunk-MVWSLZG7.js";
4
4
  import {
5
5
  GROUP_PAGE_SIZE,
6
6
  RelatedContentSection
7
- } from "../chunk-LOWWLH2W.js";
7
+ } from "../chunk-UK6SSMUR.js";
8
8
  import {
9
9
  DeliveryLists,
10
10
  DeliveryTable,
@@ -18,7 +18,7 @@ import {
18
18
  RoadmapView,
19
19
  useLegalDocs,
20
20
  useRoadmapVoting
21
- } from "../chunk-YVOMHB73.js";
21
+ } from "../chunk-5MVE77D5.js";
22
22
  import {
23
23
  AnnouncementBarSkeleton,
24
24
  ArticleLayoutSkeleton,
@@ -51,22 +51,22 @@ import {
51
51
  useDocNavigation,
52
52
  useDocumentTree,
53
53
  useScrollSpy
54
- } from "../chunk-GG6CAELN.js";
54
+ } from "../chunk-3FBPPKV2.js";
55
55
  import {
56
56
  FileDownloadCard,
57
57
  GoogleSheetsViewer,
58
58
  PdfViewer
59
- } from "../chunk-OEN3GTRL.js";
59
+ } from "../chunk-DEYRHTLD.js";
60
60
  import {
61
61
  PersistentPagination,
62
62
  PersistentPaginationWrapper,
63
63
  usePaginationLoading
64
- } from "../chunk-XSK7ZQ3C.js";
64
+ } from "../chunk-TXLUKQBI.js";
65
65
  import {
66
66
  FaqAccordion,
67
67
  FaqDocumentPage,
68
68
  FaqSection
69
- } from "../chunk-SQ53GVCG.js";
69
+ } from "../chunk-QQFUJ6MS.js";
70
70
  import {
71
71
  DeliveryRow,
72
72
  DevCardRowContent,
@@ -74,16 +74,16 @@ import {
74
74
  DevCardRowSkeletonList,
75
75
  DevSectionPage,
76
76
  DevSectionView
77
- } from "../chunk-H4RCJ4IB.js";
77
+ } from "../chunk-6F47STCR.js";
78
78
  import {
79
79
  EmptyState,
80
80
  UnifiedPagination,
81
81
  init_unified_pagination
82
- } from "../chunk-XPLZB74T.js";
82
+ } from "../chunk-6RILRC7X.js";
83
83
  import {
84
84
  ArticleAuthorByline,
85
85
  DetailPageSkeleton
86
- } from "../chunk-ZUVVJ24E.js";
86
+ } from "../chunk-7IR5LKYC.js";
87
87
  import {
88
88
  DocSearchBar,
89
89
  DocSearchResultRow,
@@ -91,7 +91,7 @@ import {
91
91
  mapDocSearchResults,
92
92
  resolveSearchResultAction,
93
93
  useDocSearch
94
- } from "../chunk-XZNKPEWB.js";
94
+ } from "../chunk-MIBKEMZY.js";
95
95
  import {
96
96
  useSelfFetch
97
97
  } from "../chunk-KL6ZDLDF.js";
@@ -209,7 +209,6 @@ import {
209
209
  COMPACT_CARD_TEXT_COL,
210
210
  COMPACT_CARD_TITLE,
211
211
  COMPACT_CARD_TITLE_ROW,
212
- COMPACT_ROW_MIN_HEIGHT_PX,
213
212
  CONNECTION_STATUS,
214
213
  CONTEXT_BACK_CLASS,
215
214
  CONTEXT_ICON_CLASS,
@@ -269,7 +268,6 @@ import {
269
268
  CheckboxWithDescription,
270
269
  ChevronButton,
271
270
  CircularProgress,
272
- ClaudeEmbed,
273
271
  ClickUpTasksManager,
274
272
  ClientOnlyHeader,
275
273
  ColorPickerInput,
@@ -1003,7 +1001,7 @@ import {
1003
1001
  useVideoWarmup,
1004
1002
  useWalkthroughVideo,
1005
1003
  usesCanonicalStatusStyle
1006
- } from "../chunk-MSUSONUK.js";
1004
+ } from "../chunk-5JYX2GOP.js";
1007
1005
  import "../chunk-7EUIW46X.js";
1008
1006
  import {
1009
1007
  next_image_default
@@ -1851,10 +1849,7 @@ function CommentCard({
1851
1849
  onDeleteComment,
1852
1850
  showVendorInfo = true,
1853
1851
  compact = false,
1854
- leadWith = "commenter",
1855
- fullBody = false,
1856
- footer,
1857
- children
1852
+ context = "profile"
1858
1853
  }) {
1859
1854
  const { user: currentUser } = useAuth();
1860
1855
  const formatActivityTime = (timestamp) => {
@@ -1862,158 +1857,89 @@ function CommentCard({
1862
1857
  };
1863
1858
  const canUserDeleteComment = () => {
1864
1859
  if (!currentUser) return false;
1865
- if (typeof comment.canDelete === "boolean") return comment.canDelete;
1866
- return !!comment.user && currentUser.id === comment.user.id;
1860
+ if (context === "profile") {
1861
+ return comment.canDelete !== false;
1862
+ }
1863
+ if (context === "vendor" && comment.user) {
1864
+ return currentUser.id === comment.user.id;
1865
+ }
1866
+ return false;
1867
1867
  };
1868
1868
  const showDeleteButton = canUserDeleteComment();
1869
- return /* @__PURE__ */ jsxs6(Fragment, { children: [
1870
- /* @__PURE__ */ jsxs6("div", { className: "bg-ods-card border border-ods-border rounded-lg p-4 hover:border-ods-accent transition-all group overflow-hidden w-full max-w-full box-border", style: { maxWidth: "100%", wordBreak: "break-word" }, children: [
1871
- /* @__PURE__ */ jsxs6("div", { className: "flex flex-col gap-3 mb-3 min-[420px]:flex-row min-[420px]:items-center min-[420px]:justify-between min-[420px]:gap-2 w-full", children: [
1872
- /* @__PURE__ */ jsx8("div", { className: "flex items-center gap-2 min-w-0 flex-1", children: leadWith === "vendor" && comment.vendor ? /* @__PURE__ */ jsxs6(Fragment, { children: [
1873
- /* @__PURE__ */ jsx8(
1874
- VendorDisplayButton,
1875
- {
1876
- vendor: comment.vendor,
1877
- onClick: onViewProduct || (() => {
1878
- })
1879
- }
1880
- ),
1881
- /* @__PURE__ */ jsx8("span", { className: "text-h6 text-ods-text-secondary whitespace-nowrap flex-shrink-0", children: formatActivityTime(comment.createdAt) })
1882
- ] }) : comment.user ? /* @__PURE__ */ jsx8(
1883
- UserSummary,
1884
- {
1885
- name: comment.user.name,
1886
- email: "",
1887
- compact: true,
1888
- avatarSize: 48,
1889
- subtitle: formatActivityTime(comment.createdAt),
1890
- avatarUrl: comment.user.profilePicture ?? null,
1891
- mspPreview: comment.user.msp ? {
1892
- name: comment.user.msp.name ?? null,
1893
- logoUrl: comment.user.msp.icon_url ?? null,
1894
- seatCount: null,
1895
- technicianCount: null,
1896
- annualRevenue: null
1897
- } : null,
1898
- showEditButton: false,
1899
- authProviders: []
1900
- }
1901
- ) : null }),
1902
- /* @__PURE__ */ jsx8("div", { className: "flex gap-2 justify-start min-[420px]:justify-end", children: showDeleteButton && onDeleteComment && /* @__PURE__ */ jsx8(
1903
- Button,
1904
- {
1905
- onClick: () => onDeleteComment(comment.id),
1906
- variant: "outline",
1907
- size: "icon",
1908
- className: "text-ods-text-primary",
1909
- children: /* @__PURE__ */ jsxs6("svg", { width: "22", height: "24", viewBox: "0 0 22 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", className: "text-ods-text-primary", children: [
1910
- /* @__PURE__ */ jsx8("path", { d: "M18.6025 4.37939C19.221 4.43597 19.6768 4.98399 19.6206 5.60254L18.5176 17.7358C18.4492 18.4886 18.3924 19.1183 18.3052 19.6299C18.2155 20.1552 18.0809 20.6447 17.8101 21.1021C17.4444 21.7195 16.9245 22.2292 16.3042 22.583L16.0317 22.7251C15.5519 22.9533 15.0526 23.0438 14.5215 23.0854C14.0042 23.126 13.3727 23.125 12.6172 23.125H9.38281C8.62726 23.125 7.9958 23.126 7.47852 23.0854C7.01357 23.049 6.57289 22.975 6.14844 22.8042L5.96826 22.7251C5.32037 22.4169 4.76543 21.9454 4.35693 21.3599L4.18994 21.1021C3.91912 20.6447 3.78445 20.1552 3.69482 19.6299C3.65123 19.3743 3.61556 19.0894 3.58203 18.7744L3.48242 17.7358L2.37939 5.60254L2.375 5.48682C2.38099 4.91684 2.81768 4.43244 3.39746 4.37939C3.97776 4.32664 4.496 4.72462 4.60449 5.28467L4.62061 5.39746L5.72363 17.5322C5.79528 18.3203 5.84358 18.8475 5.9126 19.252C5.97923 19.6424 6.05232 19.8298 6.12646 19.9551L6.28467 20.1836C6.45963 20.3987 6.68118 20.5732 6.93359 20.6934L7.04639 20.7388C7.17478 20.7822 7.35781 20.8195 7.6543 20.8428C8.06325 20.8749 8.59186 20.875 9.38281 20.875H12.6172C13.4081 20.875 13.9367 20.8749 14.3457 20.8428C14.7409 20.8117 14.9349 20.7559 15.0664 20.6934L15.3066 20.5557C15.5369 20.4008 15.7309 20.1958 15.8735 19.9551C15.9477 19.8298 16.0208 19.6424 16.0874 19.252C16.1564 18.8475 16.2047 18.3203 16.2764 17.5322L17.3794 5.39746C17.436 4.77903 17.984 4.32316 18.6025 4.37939Z", fill: "currentColor" }),
1911
- /* @__PURE__ */ jsx8("path", { d: "M7.37451 15.9995V11C7.37451 10.3788 7.87842 9.87526 8.49951 9.875C9.12083 9.875 9.62451 10.3787 9.62451 11V15.9995C9.62451 16.6208 9.12083 17.1245 8.49951 17.1245C7.87842 17.1242 7.37451 16.6207 7.37451 15.9995ZM12.3755 15.9995V11C12.3755 10.3787 12.8792 9.875 13.5005 9.875C14.1216 9.87526 14.6255 10.3788 14.6255 11V15.9995C14.6255 16.6207 14.1216 17.1242 13.5005 17.1245C12.8792 17.1245 12.3755 16.6208 12.3755 15.9995ZM12.585 0.875C13.0174 0.879157 13.425 0.903301 13.8096 1.02881L14.1157 1.14746C14.4155 1.28159 14.6931 1.46221 14.9375 1.68359L15.0811 1.82568C15.4034 2.16872 15.6379 2.59872 15.8984 3.05469L16.6528 4.37451H20L20.1157 4.38037C20.6825 4.43826 21.1248 4.91747 21.125 5.49951C21.125 6.08174 20.6827 6.5607 20.1157 6.61865L20 6.62451H2C1.37868 6.62451 0.875 6.12083 0.875 5.49951C0.875264 4.87842 1.37884 4.37451 2 4.37451H5.34717L6.32129 2.6709C6.53952 2.29735 6.76267 1.95525 7.0625 1.68359L7.31738 1.47705C7.58262 1.28327 7.87687 1.1312 8.19043 1.02881L8.38525 0.974609C8.71199 0.896341 9.05467 0.878464 9.41504 0.875H12.585ZM9.85742 3.125C9.29191 3.125 9.08123 3.13201 8.97266 3.14844L8.88916 3.16748C8.83075 3.18655 8.77503 3.21301 8.72217 3.24365L8.57275 3.35205C8.53704 3.38448 8.50137 3.42629 8.42773 3.54102L8.05566 4.1709L7.93848 4.37451H14.0615L13.9443 4.1709C13.6645 3.68114 13.554 3.50141 13.4858 3.41504L13.4272 3.35205C13.3815 3.31062 13.3309 3.27443 13.2778 3.24365L13.1108 3.16748C13.019 3.13753 12.8946 3.125 12.1426 3.125H9.85742Z", fill: "currentColor" })
1912
- ] })
1913
- }
1914
- ) })
1915
- ] }),
1916
- /* @__PURE__ */ jsxs6("div", { className: "space-y-2 w-full max-w-full overflow-hidden", style: { maxWidth: "100%", wordBreak: "break-word" }, children: [
1917
- comment.title && /* @__PURE__ */ jsx8("div", { className: compact ? "h-[20px] flex items-center" : "h-[24px] flex items-center", children: /* @__PURE__ */ jsx8("h4", { className: "text-h3 tracking-[-0.02em] text-ods-text-primary group-hover:text-ods-accent transition-colors line-clamp-1", style: {
1918
- wordBreak: "break-word",
1919
- overflowWrap: "break-word",
1920
- maxWidth: "100%",
1921
- textOverflow: "ellipsis",
1922
- overflow: "hidden",
1923
- display: "-webkit-box",
1924
- WebkitBoxOrient: "vertical",
1925
- WebkitLineClamp: 1
1926
- }, children: comment.title }) }),
1927
- fullBody ? (
1928
- // Thread bodies are read in full — no fixed height, no clamp.
1929
- /* @__PURE__ */ jsx8("p", { className: "text-h4 text-ods-text-primary whitespace-pre-wrap", style: { wordBreak: "break-word", overflowWrap: "break-word", maxWidth: "100%" }, children: comment.content })
1930
- ) : /* @__PURE__ */ jsx8("div", { className: compact ? "h-[60px] flex items-center" : "h-[72px] flex items-center", children: /* @__PURE__ */ jsx8("p", { className: "text-h4 text-ods-text-primary line-clamp-3", style: {
1931
- wordBreak: "break-word",
1932
- overflowWrap: "break-word",
1933
- maxWidth: "100%",
1934
- textOverflow: "ellipsis",
1935
- overflow: "hidden",
1936
- display: "-webkit-box",
1937
- WebkitBoxOrient: "vertical",
1938
- WebkitLineClamp: 3
1939
- }, children: comment.content }) }),
1940
- footer ? /* @__PURE__ */ jsx8("div", { className: "pt-2 flex flex-wrap items-center gap-2", children: footer }) : null
1941
- ] })
1942
- ] }),
1943
- children
1944
- ] });
1945
- }
1946
-
1947
- // src/components/comment-composer.tsx
1948
- import { useState as useState2 } from "react";
1949
- import { jsx as jsx9, jsxs as jsxs7 } from "react/jsx-runtime";
1950
- function CommentComposer({
1951
- withTitle = false,
1952
- titleLabel = "Title",
1953
- titlePlaceholder = "Your comment title here",
1954
- titleRef,
1955
- bodyLabel = "Description",
1956
- placeholder = "Write your comment...",
1957
- extras,
1958
- submitLabel = "Send",
1959
- cancelLabel = "Cancel",
1960
- onCancel,
1961
- pending = false,
1962
- ariaLabel,
1963
- onSubmit
1964
- }) {
1965
- const [title, setTitle] = useState2("");
1966
- const [body, setBody] = useState2("");
1967
- const canSubmit = body.trim().length > 0 && (!withTitle || title.trim().length > 0) && !pending;
1968
- const submit = async () => {
1969
- if (!canSubmit) return;
1970
- const kept = await onSubmit({ title: title.trim(), body: body.trim() });
1971
- if (kept === false) return;
1972
- setTitle("");
1973
- setBody("");
1974
- };
1975
- return /* @__PURE__ */ jsxs7("div", { className: "flex flex-col gap-[var(--spacing-system-xsf)]", children: [
1976
- /* @__PURE__ */ jsxs7("div", { className: "flex flex-col gap-[var(--spacing-system-sf)] md:flex-row", children: [
1977
- /* @__PURE__ */ jsxs7("div", { className: "flex-1 overflow-hidden rounded-lg border border-ods-border bg-ods-bg", children: [
1978
- withTitle ? /* @__PURE__ */ jsxs7("div", { className: "border-b border-ods-border", children: [
1979
- /* @__PURE__ */ jsx9(Label, { className: "text-badge text-ods-text-secondary px-3 pt-2 pb-1", children: titleLabel }),
1980
- /* @__PURE__ */ jsx9(
1981
- Input,
1982
- {
1983
- ref: titleRef,
1984
- value: title,
1985
- onChange: (e) => setTitle(e.target.value),
1986
- placeholder: titlePlaceholder,
1987
- disabled: pending,
1988
- className: "rounded-none border-0 bg-transparent focus-visible:ring-0"
1989
- }
1990
- )
1991
- ] }) : null,
1992
- withTitle ? /* @__PURE__ */ jsx9(Label, { className: "text-badge text-ods-text-secondary px-3 pt-2 pb-1", children: bodyLabel }) : null,
1993
- /* @__PURE__ */ jsx9(
1994
- Textarea,
1869
+ return /* @__PURE__ */ jsxs6("div", { className: "bg-ods-card border border-ods-border rounded-lg p-4 hover:border-ods-accent transition-all group overflow-hidden w-full max-w-full box-border", style: { maxWidth: "100%", wordBreak: "break-word" }, children: [
1870
+ /* @__PURE__ */ jsxs6("div", { className: "flex flex-col gap-3 mb-3 min-[420px]:flex-row min-[420px]:items-center min-[420px]:justify-between min-[420px]:gap-2 w-full", children: [
1871
+ /* @__PURE__ */ jsx8("div", { className: "flex items-center gap-2 min-w-0 flex-1", children: context === "profile" && comment.vendor ? /* @__PURE__ */ jsxs6(Fragment, { children: [
1872
+ /* @__PURE__ */ jsx8(
1873
+ VendorDisplayButton,
1995
1874
  {
1996
- value: body,
1997
- onChange: (e) => setBody(e.target.value),
1998
- placeholder,
1999
- disabled: pending,
2000
- "aria-label": ariaLabel ?? (withTitle ? bodyLabel : submitLabel),
2001
- className: "min-h-[64px] rounded-none border-0 bg-transparent focus-visible:ring-0"
1875
+ vendor: comment.vendor,
1876
+ onClick: onViewProduct || (() => {
1877
+ })
2002
1878
  }
2003
- )
2004
- ] }),
2005
- /* @__PURE__ */ jsxs7("div", { className: "flex items-start gap-[var(--spacing-system-xsf)]", children: [
2006
- onCancel ? /* @__PURE__ */ jsx9(Button, { type: "button", variant: "outline", size: "small-legacy", onClick: onCancel, disabled: pending, children: cancelLabel }) : null,
2007
- /* @__PURE__ */ jsx9(Button, { type: "button", variant: "accent", size: "small-legacy", onClick: submit, disabled: !canSubmit, loading: pending, children: submitLabel })
2008
- ] })
1879
+ ),
1880
+ /* @__PURE__ */ jsx8("span", { className: "text-h6 text-ods-text-secondary whitespace-nowrap flex-shrink-0", children: formatActivityTime(comment.createdAt) })
1881
+ ] }) : context === "vendor" && comment.user ? /* @__PURE__ */ jsx8(
1882
+ UserSummary,
1883
+ {
1884
+ name: comment.user.name,
1885
+ email: "",
1886
+ compact: true,
1887
+ avatarSize: 48,
1888
+ subtitle: formatActivityTime(comment.createdAt),
1889
+ avatarUrl: comment.user.profilePicture ?? null,
1890
+ mspPreview: comment.user.msp ? {
1891
+ name: comment.user.msp.name ?? null,
1892
+ logoUrl: comment.user.msp.icon_url ?? null,
1893
+ seatCount: null,
1894
+ technicianCount: null,
1895
+ annualRevenue: null
1896
+ } : null,
1897
+ showEditButton: false,
1898
+ authProviders: []
1899
+ }
1900
+ ) : null }),
1901
+ /* @__PURE__ */ jsx8("div", { className: "flex gap-2 justify-start min-[420px]:justify-end", children: showDeleteButton && onDeleteComment && /* @__PURE__ */ jsx8(
1902
+ Button,
1903
+ {
1904
+ onClick: () => onDeleteComment(comment.id),
1905
+ variant: "outline",
1906
+ size: "icon",
1907
+ className: "text-ods-text-primary",
1908
+ children: /* @__PURE__ */ jsxs6("svg", { width: "22", height: "24", viewBox: "0 0 22 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", className: "text-ods-text-primary", children: [
1909
+ /* @__PURE__ */ jsx8("path", { d: "M18.6025 4.37939C19.221 4.43597 19.6768 4.98399 19.6206 5.60254L18.5176 17.7358C18.4492 18.4886 18.3924 19.1183 18.3052 19.6299C18.2155 20.1552 18.0809 20.6447 17.8101 21.1021C17.4444 21.7195 16.9245 22.2292 16.3042 22.583L16.0317 22.7251C15.5519 22.9533 15.0526 23.0438 14.5215 23.0854C14.0042 23.126 13.3727 23.125 12.6172 23.125H9.38281C8.62726 23.125 7.9958 23.126 7.47852 23.0854C7.01357 23.049 6.57289 22.975 6.14844 22.8042L5.96826 22.7251C5.32037 22.4169 4.76543 21.9454 4.35693 21.3599L4.18994 21.1021C3.91912 20.6447 3.78445 20.1552 3.69482 19.6299C3.65123 19.3743 3.61556 19.0894 3.58203 18.7744L3.48242 17.7358L2.37939 5.60254L2.375 5.48682C2.38099 4.91684 2.81768 4.43244 3.39746 4.37939C3.97776 4.32664 4.496 4.72462 4.60449 5.28467L4.62061 5.39746L5.72363 17.5322C5.79528 18.3203 5.84358 18.8475 5.9126 19.252C5.97923 19.6424 6.05232 19.8298 6.12646 19.9551L6.28467 20.1836C6.45963 20.3987 6.68118 20.5732 6.93359 20.6934L7.04639 20.7388C7.17478 20.7822 7.35781 20.8195 7.6543 20.8428C8.06325 20.8749 8.59186 20.875 9.38281 20.875H12.6172C13.4081 20.875 13.9367 20.8749 14.3457 20.8428C14.7409 20.8117 14.9349 20.7559 15.0664 20.6934L15.3066 20.5557C15.5369 20.4008 15.7309 20.1958 15.8735 19.9551C15.9477 19.8298 16.0208 19.6424 16.0874 19.252C16.1564 18.8475 16.2047 18.3203 16.2764 17.5322L17.3794 5.39746C17.436 4.77903 17.984 4.32316 18.6025 4.37939Z", fill: "currentColor" }),
1910
+ /* @__PURE__ */ jsx8("path", { d: "M7.37451 15.9995V11C7.37451 10.3788 7.87842 9.87526 8.49951 9.875C9.12083 9.875 9.62451 10.3787 9.62451 11V15.9995C9.62451 16.6208 9.12083 17.1245 8.49951 17.1245C7.87842 17.1242 7.37451 16.6207 7.37451 15.9995ZM12.3755 15.9995V11C12.3755 10.3787 12.8792 9.875 13.5005 9.875C14.1216 9.87526 14.6255 10.3788 14.6255 11V15.9995C14.6255 16.6207 14.1216 17.1242 13.5005 17.1245C12.8792 17.1245 12.3755 16.6208 12.3755 15.9995ZM12.585 0.875C13.0174 0.879157 13.425 0.903301 13.8096 1.02881L14.1157 1.14746C14.4155 1.28159 14.6931 1.46221 14.9375 1.68359L15.0811 1.82568C15.4034 2.16872 15.6379 2.59872 15.8984 3.05469L16.6528 4.37451H20L20.1157 4.38037C20.6825 4.43826 21.1248 4.91747 21.125 5.49951C21.125 6.08174 20.6827 6.5607 20.1157 6.61865L20 6.62451H2C1.37868 6.62451 0.875 6.12083 0.875 5.49951C0.875264 4.87842 1.37884 4.37451 2 4.37451H5.34717L6.32129 2.6709C6.53952 2.29735 6.76267 1.95525 7.0625 1.68359L7.31738 1.47705C7.58262 1.28327 7.87687 1.1312 8.19043 1.02881L8.38525 0.974609C8.71199 0.896341 9.05467 0.878464 9.41504 0.875H12.585ZM9.85742 3.125C9.29191 3.125 9.08123 3.13201 8.97266 3.14844L8.88916 3.16748C8.83075 3.18655 8.77503 3.21301 8.72217 3.24365L8.57275 3.35205C8.53704 3.38448 8.50137 3.42629 8.42773 3.54102L8.05566 4.1709L7.93848 4.37451H14.0615L13.9443 4.1709C13.6645 3.68114 13.554 3.50141 13.4858 3.41504L13.4272 3.35205C13.3815 3.31062 13.3309 3.27443 13.2778 3.24365L13.1108 3.16748C13.019 3.13753 12.8946 3.125 12.1426 3.125H9.85742Z", fill: "currentColor" })
1911
+ ] })
1912
+ }
1913
+ ) })
2009
1914
  ] }),
2010
- extras ? /* @__PURE__ */ jsx9("div", { className: "flex flex-wrap items-center gap-[var(--spacing-system-xsf)]", children: extras }) : null
1915
+ /* @__PURE__ */ jsxs6("div", { className: "space-y-2 w-full max-w-full overflow-hidden", style: { maxWidth: "100%", wordBreak: "break-word" }, children: [
1916
+ comment.title && /* @__PURE__ */ jsx8("div", { className: compact ? "h-[20px] flex items-center" : "h-[24px] flex items-center", children: /* @__PURE__ */ jsx8("h4", { className: "text-h3 tracking-[-0.02em] text-ods-text-primary group-hover:text-ods-accent transition-colors line-clamp-1", style: {
1917
+ wordBreak: "break-word",
1918
+ overflowWrap: "break-word",
1919
+ maxWidth: "100%",
1920
+ textOverflow: "ellipsis",
1921
+ overflow: "hidden",
1922
+ display: "-webkit-box",
1923
+ WebkitBoxOrient: "vertical",
1924
+ WebkitLineClamp: 1
1925
+ }, children: comment.title }) }),
1926
+ /* @__PURE__ */ jsx8("div", { className: compact ? "h-[60px] flex items-center" : "h-[72px] flex items-center", children: /* @__PURE__ */ jsx8("p", { className: "text-h4 text-ods-text-primary line-clamp-3", style: {
1927
+ wordBreak: "break-word",
1928
+ overflowWrap: "break-word",
1929
+ maxWidth: "100%",
1930
+ textOverflow: "ellipsis",
1931
+ overflow: "hidden",
1932
+ display: "-webkit-box",
1933
+ WebkitBoxOrient: "vertical",
1934
+ WebkitLineClamp: 3
1935
+ }, children: comment.content }) })
1936
+ ] })
2011
1937
  ] });
2012
1938
  }
2013
1939
 
2014
1940
  // src/components/content-loading-container.tsx
2015
1941
  init_cn();
2016
- import { jsx as jsx10, jsxs as jsxs8 } from "react/jsx-runtime";
1942
+ import { jsx as jsx9, jsxs as jsxs7 } from "react/jsx-runtime";
2017
1943
  function ContentLoadingContainer({
2018
1944
  isLoading,
2019
1945
  children,
@@ -2023,7 +1949,7 @@ function ContentLoadingContainer({
2023
1949
  loadingOpacity = 1,
2024
1950
  transitionDuration = 300
2025
1951
  }) {
2026
- return /* @__PURE__ */ jsxs8(
1952
+ return /* @__PURE__ */ jsxs7(
2027
1953
  "div",
2028
1954
  {
2029
1955
  className: cn(
@@ -2038,7 +1964,7 @@ function ContentLoadingContainer({
2038
1964
  "aria-label": isLoading ? "Loading content" : "Content loaded",
2039
1965
  "aria-live": "polite",
2040
1966
  children: [
2041
- isLoading && /* @__PURE__ */ jsx10(
1967
+ isLoading && /* @__PURE__ */ jsx9(
2042
1968
  "div",
2043
1969
  {
2044
1970
  className: "absolute inset-0 z-10 bg-ods-bg",
@@ -2051,7 +1977,7 @@ function ContentLoadingContainer({
2051
1977
  children: skeletonComponent
2052
1978
  }
2053
1979
  ),
2054
- /* @__PURE__ */ jsx10(
1980
+ /* @__PURE__ */ jsx9(
2055
1981
  "div",
2056
1982
  {
2057
1983
  className: cn(
@@ -2104,7 +2030,7 @@ function useThemeAware() {
2104
2030
  }
2105
2031
 
2106
2032
  // src/components/dynamic-skeleton.tsx
2107
- import { Fragment as Fragment2, jsx as jsx11, jsxs as jsxs9 } from "react/jsx-runtime";
2033
+ import { Fragment as Fragment2, jsx as jsx10, jsxs as jsxs8 } from "react/jsx-runtime";
2108
2034
  var sizePresets = {
2109
2035
  sm: { width: "4rem", height: "1rem" },
2110
2036
  md: { width: "8rem", height: "1.5rem" },
@@ -2169,14 +2095,14 @@ function DynamicSkeleton({
2169
2095
  className
2170
2096
  );
2171
2097
  if (variant === "text" && lines > 1) {
2172
- return /* @__PURE__ */ jsx11(
2098
+ return /* @__PURE__ */ jsx10(
2173
2099
  "div",
2174
2100
  {
2175
2101
  className: "space-y-2",
2176
2102
  style: platformStyles,
2177
2103
  role: "status",
2178
2104
  "aria-label": includeAriaLabel ? "Loading content..." : void 0,
2179
- children: Array.from({ length: lines }, (_, index) => /* @__PURE__ */ jsx11(
2105
+ children: Array.from({ length: lines }, (_, index) => /* @__PURE__ */ jsx10(
2180
2106
  "div",
2181
2107
  {
2182
2108
  className: cn(
@@ -2194,7 +2120,7 @@ function DynamicSkeleton({
2194
2120
  }
2195
2121
  );
2196
2122
  }
2197
- return /* @__PURE__ */ jsx11(
2123
+ return /* @__PURE__ */ jsx10(
2198
2124
  "div",
2199
2125
  {
2200
2126
  className: baseClasses,
@@ -2209,72 +2135,72 @@ var SkeletonPresets = {
2209
2135
  /**
2210
2136
  * Card skeleton with header, content, and actions
2211
2137
  */
2212
- Card: ({ showActions = true, showImage = false }) => /* @__PURE__ */ jsxs9("div", { className: "bg-ods-card border border-ods-border rounded-lg p-6 space-y-4", children: [
2213
- showImage && /* @__PURE__ */ jsx11(DynamicSkeleton, { variant: "image", className: "w-full h-40" }),
2214
- /* @__PURE__ */ jsxs9("div", { className: "space-y-2", children: [
2215
- /* @__PURE__ */ jsx11(DynamicSkeleton, { variant: "text", size: "lg" }),
2216
- /* @__PURE__ */ jsx11(DynamicSkeleton, { variant: "text", lines: 2, size: "md" })
2138
+ Card: ({ showActions = true, showImage = false }) => /* @__PURE__ */ jsxs8("div", { className: "bg-ods-card border border-ods-border rounded-lg p-6 space-y-4", children: [
2139
+ showImage && /* @__PURE__ */ jsx10(DynamicSkeleton, { variant: "image", className: "w-full h-40" }),
2140
+ /* @__PURE__ */ jsxs8("div", { className: "space-y-2", children: [
2141
+ /* @__PURE__ */ jsx10(DynamicSkeleton, { variant: "text", size: "lg" }),
2142
+ /* @__PURE__ */ jsx10(DynamicSkeleton, { variant: "text", lines: 2, size: "md" })
2217
2143
  ] }),
2218
- showActions && /* @__PURE__ */ jsxs9("div", { className: "flex gap-2 pt-2", children: [
2219
- /* @__PURE__ */ jsx11(DynamicSkeleton, { variant: "button", width: "6rem", height: "2.5rem" }),
2220
- /* @__PURE__ */ jsx11(DynamicSkeleton, { variant: "button", width: "4rem", height: "2.5rem" })
2144
+ showActions && /* @__PURE__ */ jsxs8("div", { className: "flex gap-2 pt-2", children: [
2145
+ /* @__PURE__ */ jsx10(DynamicSkeleton, { variant: "button", width: "6rem", height: "2.5rem" }),
2146
+ /* @__PURE__ */ jsx10(DynamicSkeleton, { variant: "button", width: "4rem", height: "2.5rem" })
2221
2147
  ] })
2222
2148
  ] }),
2223
2149
  /**
2224
2150
  * User profile skeleton
2225
2151
  */
2226
- Profile: () => /* @__PURE__ */ jsxs9("div", { className: "flex items-start gap-4 p-4", children: [
2227
- /* @__PURE__ */ jsx11(DynamicSkeleton, { variant: "avatar", size: "lg" }),
2228
- /* @__PURE__ */ jsxs9("div", { className: "flex-1 space-y-2", children: [
2229
- /* @__PURE__ */ jsx11(DynamicSkeleton, { variant: "text", size: "lg", width: "8rem" }),
2230
- /* @__PURE__ */ jsx11(DynamicSkeleton, { variant: "text", size: "sm", width: "12rem" }),
2231
- /* @__PURE__ */ jsx11(DynamicSkeleton, { variant: "text", lines: 2, size: "md" })
2152
+ Profile: () => /* @__PURE__ */ jsxs8("div", { className: "flex items-start gap-4 p-4", children: [
2153
+ /* @__PURE__ */ jsx10(DynamicSkeleton, { variant: "avatar", size: "lg" }),
2154
+ /* @__PURE__ */ jsxs8("div", { className: "flex-1 space-y-2", children: [
2155
+ /* @__PURE__ */ jsx10(DynamicSkeleton, { variant: "text", size: "lg", width: "8rem" }),
2156
+ /* @__PURE__ */ jsx10(DynamicSkeleton, { variant: "text", size: "sm", width: "12rem" }),
2157
+ /* @__PURE__ */ jsx10(DynamicSkeleton, { variant: "text", lines: 2, size: "md" })
2232
2158
  ] })
2233
2159
  ] }),
2234
2160
  /**
2235
2161
  * Navigation skeleton
2236
2162
  */
2237
- Navigation: ({ items = 5 }) => /* @__PURE__ */ jsx11("nav", { className: "space-y-2 p-4", children: Array.from({ length: items }, (_, index) => /* @__PURE__ */ jsxs9("div", { className: "flex items-center gap-3", children: [
2238
- /* @__PURE__ */ jsx11(DynamicSkeleton, { variant: "avatar", size: "sm" }),
2239
- /* @__PURE__ */ jsx11(DynamicSkeleton, { variant: "text", size: "md" })
2163
+ Navigation: ({ items = 5 }) => /* @__PURE__ */ jsx10("nav", { className: "space-y-2 p-4", children: Array.from({ length: items }, (_, index) => /* @__PURE__ */ jsxs8("div", { className: "flex items-center gap-3", children: [
2164
+ /* @__PURE__ */ jsx10(DynamicSkeleton, { variant: "avatar", size: "sm" }),
2165
+ /* @__PURE__ */ jsx10(DynamicSkeleton, { variant: "text", size: "md" })
2240
2166
  ] }, index)) }),
2241
2167
  /**
2242
2168
  * Table skeleton
2243
2169
  */
2244
- Table: ({ rows = 5, columns = 4 }) => /* @__PURE__ */ jsxs9("div", { className: "space-y-3", children: [
2245
- /* @__PURE__ */ jsx11("div", { className: "grid gap-4", style: { gridTemplateColumns: `repeat(${columns}, 1fr)` }, children: Array.from({ length: columns }, (_, index) => /* @__PURE__ */ jsx11(DynamicSkeleton, { variant: "text", size: "md" }, `header-${index}`)) }),
2246
- Array.from({ length: rows }, (_, rowIndex) => /* @__PURE__ */ jsx11("div", { className: "grid gap-4", style: { gridTemplateColumns: `repeat(${columns}, 1fr)` }, children: Array.from({ length: columns }, (_2, colIndex) => /* @__PURE__ */ jsx11(DynamicSkeleton, { variant: "text", size: "sm" }, `cell-${rowIndex}-${colIndex}`)) }, `row-${rowIndex}`))
2170
+ Table: ({ rows = 5, columns = 4 }) => /* @__PURE__ */ jsxs8("div", { className: "space-y-3", children: [
2171
+ /* @__PURE__ */ jsx10("div", { className: "grid gap-4", style: { gridTemplateColumns: `repeat(${columns}, 1fr)` }, children: Array.from({ length: columns }, (_, index) => /* @__PURE__ */ jsx10(DynamicSkeleton, { variant: "text", size: "md" }, `header-${index}`)) }),
2172
+ Array.from({ length: rows }, (_, rowIndex) => /* @__PURE__ */ jsx10("div", { className: "grid gap-4", style: { gridTemplateColumns: `repeat(${columns}, 1fr)` }, children: Array.from({ length: columns }, (_2, colIndex) => /* @__PURE__ */ jsx10(DynamicSkeleton, { variant: "text", size: "sm" }, `cell-${rowIndex}-${colIndex}`)) }, `row-${rowIndex}`))
2247
2173
  ] }),
2248
2174
  /**
2249
2175
  * Vendor grid skeleton (specific to the app)
2250
2176
  */
2251
- VendorGrid: ({ items = 6 }) => /* @__PURE__ */ jsx11("div", { className: "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6", children: Array.from({ length: items }, (_, index) => /* @__PURE__ */ jsxs9("div", { className: "bg-ods-card border border-ods-border rounded-lg p-4 space-y-3", children: [
2252
- /* @__PURE__ */ jsxs9("div", { className: "flex items-center gap-3", children: [
2253
- /* @__PURE__ */ jsx11(DynamicSkeleton, { variant: "avatar", size: "md" }),
2254
- /* @__PURE__ */ jsxs9("div", { className: "flex-1", children: [
2255
- /* @__PURE__ */ jsx11(DynamicSkeleton, { variant: "text", size: "md", width: "6rem" }),
2256
- /* @__PURE__ */ jsx11(DynamicSkeleton, { variant: "text", size: "sm", width: "4rem", className: "mt-1" })
2177
+ VendorGrid: ({ items = 6 }) => /* @__PURE__ */ jsx10("div", { className: "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6", children: Array.from({ length: items }, (_, index) => /* @__PURE__ */ jsxs8("div", { className: "bg-ods-card border border-ods-border rounded-lg p-4 space-y-3", children: [
2178
+ /* @__PURE__ */ jsxs8("div", { className: "flex items-center gap-3", children: [
2179
+ /* @__PURE__ */ jsx10(DynamicSkeleton, { variant: "avatar", size: "md" }),
2180
+ /* @__PURE__ */ jsxs8("div", { className: "flex-1", children: [
2181
+ /* @__PURE__ */ jsx10(DynamicSkeleton, { variant: "text", size: "md", width: "6rem" }),
2182
+ /* @__PURE__ */ jsx10(DynamicSkeleton, { variant: "text", size: "sm", width: "4rem", className: "mt-1" })
2257
2183
  ] })
2258
2184
  ] }),
2259
- /* @__PURE__ */ jsx11(DynamicSkeleton, { variant: "text", lines: 2, size: "sm" }),
2260
- /* @__PURE__ */ jsxs9("div", { className: "flex gap-2", children: [
2261
- /* @__PURE__ */ jsx11(DynamicSkeleton, { variant: "custom", width: "3rem", height: "1.25rem", className: "rounded-full" }),
2262
- /* @__PURE__ */ jsx11(DynamicSkeleton, { variant: "custom", width: "4rem", height: "1.25rem", className: "rounded-full" })
2185
+ /* @__PURE__ */ jsx10(DynamicSkeleton, { variant: "text", lines: 2, size: "sm" }),
2186
+ /* @__PURE__ */ jsxs8("div", { className: "flex gap-2", children: [
2187
+ /* @__PURE__ */ jsx10(DynamicSkeleton, { variant: "custom", width: "3rem", height: "1.25rem", className: "rounded-full" }),
2188
+ /* @__PURE__ */ jsx10(DynamicSkeleton, { variant: "custom", width: "4rem", height: "1.25rem", className: "rounded-full" })
2263
2189
  ] })
2264
2190
  ] }, index)) }),
2265
2191
  /**
2266
2192
  * Blog post skeleton
2267
2193
  */
2268
- BlogPost: () => /* @__PURE__ */ jsxs9("article", { className: "space-y-6", children: [
2269
- /* @__PURE__ */ jsxs9("div", { className: "space-y-2", children: [
2270
- /* @__PURE__ */ jsx11(DynamicSkeleton, { variant: "text", size: "xl", width: "75%" }),
2271
- /* @__PURE__ */ jsxs9("div", { className: "flex gap-4 text-sm", children: [
2272
- /* @__PURE__ */ jsx11(DynamicSkeleton, { variant: "text", size: "sm", width: "4rem" }),
2273
- /* @__PURE__ */ jsx11(DynamicSkeleton, { variant: "text", size: "sm", width: "6rem" })
2194
+ BlogPost: () => /* @__PURE__ */ jsxs8("article", { className: "space-y-6", children: [
2195
+ /* @__PURE__ */ jsxs8("div", { className: "space-y-2", children: [
2196
+ /* @__PURE__ */ jsx10(DynamicSkeleton, { variant: "text", size: "xl", width: "75%" }),
2197
+ /* @__PURE__ */ jsxs8("div", { className: "flex gap-4 text-sm", children: [
2198
+ /* @__PURE__ */ jsx10(DynamicSkeleton, { variant: "text", size: "sm", width: "4rem" }),
2199
+ /* @__PURE__ */ jsx10(DynamicSkeleton, { variant: "text", size: "sm", width: "6rem" })
2274
2200
  ] })
2275
2201
  ] }),
2276
- /* @__PURE__ */ jsx11(DynamicSkeleton, { variant: "image", className: "w-full h-64" }),
2277
- /* @__PURE__ */ jsx11("div", { className: "space-y-3", children: Array.from({ length: 4 }, (_, index) => /* @__PURE__ */ jsx11(DynamicSkeleton, { variant: "text", lines: 3, size: "md" }, index)) })
2202
+ /* @__PURE__ */ jsx10(DynamicSkeleton, { variant: "image", className: "w-full h-64" }),
2203
+ /* @__PURE__ */ jsx10("div", { className: "space-y-3", children: Array.from({ length: 4 }, (_, index) => /* @__PURE__ */ jsx10(DynamicSkeleton, { variant: "text", lines: 3, size: "md" }, index)) })
2278
2204
  ] })
2279
2205
  };
2280
2206
  function PlatformSkeletonContainer({
@@ -2285,10 +2211,10 @@ function PlatformSkeletonContainer({
2285
2211
  }) {
2286
2212
  const { platform } = useThemeAware();
2287
2213
  if (!isLoading) {
2288
- return /* @__PURE__ */ jsx11(Fragment2, { children });
2214
+ return /* @__PURE__ */ jsx10(Fragment2, { children });
2289
2215
  }
2290
2216
  const SkeletonComponent = SkeletonPresets[skeletonType];
2291
- return /* @__PURE__ */ jsx11("div", { className: `platform-skeleton skeleton-${platform}`, children: /* @__PURE__ */ jsx11(SkeletonComponent, { ...skeletonProps }) });
2217
+ return /* @__PURE__ */ jsx10("div", { className: `platform-skeleton skeleton-${platform}`, children: /* @__PURE__ */ jsx10(SkeletonComponent, { ...skeletonProps }) });
2292
2218
  }
2293
2219
  function ProgressiveSkeleton({
2294
2220
  stages = ["basic", "detailed", "interactive"],
@@ -2303,7 +2229,7 @@ function ProgressiveSkeleton({
2303
2229
  2: { animation: "wave", variant: "custom" }
2304
2230
  };
2305
2231
  const config = stageConfig[currentStage] || stageConfig[0];
2306
- return /* @__PURE__ */ jsx11(
2232
+ return /* @__PURE__ */ jsx10(
2307
2233
  DynamicSkeleton,
2308
2234
  {
2309
2235
  ...props,
@@ -2321,7 +2247,7 @@ function ProgressiveSkeleton({
2321
2247
  // src/components/filter-chip.tsx
2322
2248
  init_cn();
2323
2249
  import { X as X2 } from "lucide-react";
2324
- import { jsx as jsx12, jsxs as jsxs10 } from "react/jsx-runtime";
2250
+ import { jsx as jsx11, jsxs as jsxs9 } from "react/jsx-runtime";
2325
2251
  function FilterChip({
2326
2252
  id,
2327
2253
  label,
@@ -2354,7 +2280,7 @@ function FilterChip({
2354
2280
  subcategory: "bg-ods-bg-surface text-ods-text-primary border border-ods-accent/60 hover:bg-ods-border hover:border-ods-accent/80 hover:text-ods-text-primary focus:ring-ods-accent/60 focus:ring-offset-ods-bg",
2355
2281
  tag: "bg-ods-bg-surface text-ods-text-primary border border-ods-accent/20 hover:bg-ods-border hover:border-ods-accent/30 hover:text-ods-text-primary focus:ring-ods-accent/20 focus:ring-offset-ods-bg"
2356
2282
  };
2357
- return /* @__PURE__ */ jsxs10(
2283
+ return /* @__PURE__ */ jsxs9(
2358
2284
  "div",
2359
2285
  {
2360
2286
  className: cn(baseClasses, variantClasses[variant], className),
@@ -2368,11 +2294,11 @@ function FilterChip({
2368
2294
  "aria-pressed": onClick && variant === "selected" ? true : void 0,
2369
2295
  "aria-disabled": disabled,
2370
2296
  children: [
2371
- /* @__PURE__ */ jsx12("span", { className: cn(
2297
+ /* @__PURE__ */ jsx11("span", { className: cn(
2372
2298
  "truncate font-body font-medium leading-none text-center",
2373
2299
  size === "sm" ? "max-w-[100px] md:max-w-[120px]" : "max-w-[120px] md:max-w-[140px]"
2374
2300
  ), title: label, children: label }),
2375
- removable && onRemove && /* @__PURE__ */ jsx12(
2301
+ removable && onRemove && /* @__PURE__ */ jsx11(
2376
2302
  "button",
2377
2303
  {
2378
2304
  type: "button",
@@ -2391,7 +2317,7 @@ function FilterChip({
2391
2317
  ),
2392
2318
  "aria-label": `Remove ${label} filter`,
2393
2319
  tabIndex: disabled ? -1 : 0,
2394
- children: /* @__PURE__ */ jsx12(X2, { className: "h-2 w-2 md:h-2 md:w-2" })
2320
+ children: /* @__PURE__ */ jsx11(X2, { className: "h-2 w-2 md:h-2 md:w-2" })
2395
2321
  }
2396
2322
  )
2397
2323
  ]
@@ -2405,7 +2331,7 @@ import { Suspense } from "react";
2405
2331
  // src/components/social-icon-row.tsx
2406
2332
  init_button();
2407
2333
  import { Mail } from "lucide-react";
2408
- import { jsx as jsx13, jsxs as jsxs11 } from "react/jsx-runtime";
2334
+ import { jsx as jsx12, jsxs as jsxs10 } from "react/jsx-runtime";
2409
2335
  var defaultLinks = [
2410
2336
  { platform: "github", href: "https://github.com/flamingo-stack", label: "GitHub" },
2411
2337
  { platform: "linkedin", href: "https://linkedin.com/company/flamingo.run", label: "LinkedIn" },
@@ -2415,51 +2341,51 @@ function renderSocialIcon(platform) {
2415
2341
  const normalizedPlatform = platform.toLowerCase().trim();
2416
2342
  switch (normalizedPlatform) {
2417
2343
  case "github":
2418
- return /* @__PURE__ */ jsx13(GitHubIcon, { className: "w-5 h-5" });
2344
+ return /* @__PURE__ */ jsx12(GitHubIcon, { className: "w-5 h-5" });
2419
2345
  case "twitter":
2420
2346
  case "x":
2421
- return /* @__PURE__ */ jsx13(XLogo, { className: "w-5 h-5" });
2347
+ return /* @__PURE__ */ jsx12(XLogo, { className: "w-5 h-5" });
2422
2348
  case "reddit":
2423
- return /* @__PURE__ */ jsx13(RedditIcon, { className: "w-5 h-5", variant: "white" });
2349
+ return /* @__PURE__ */ jsx12(RedditIcon, { className: "w-5 h-5", variant: "white" });
2424
2350
  case "linkedin":
2425
- return /* @__PURE__ */ jsx13(LinkedInIcon, { className: "w-5 h-5" });
2351
+ return /* @__PURE__ */ jsx12(LinkedInIcon, { className: "w-5 h-5" });
2426
2352
  case "luma":
2427
- return /* @__PURE__ */ jsx13(LumaIcon, { className: "w-5 h-5" });
2353
+ return /* @__PURE__ */ jsx12(LumaIcon, { className: "w-5 h-5" });
2428
2354
  case "whatsapp":
2429
- return /* @__PURE__ */ jsx13(WhatsAppIcon, { className: "w-5 h-5" });
2355
+ return /* @__PURE__ */ jsx12(WhatsAppIcon, { className: "w-5 h-5" });
2430
2356
  case "email":
2431
2357
  case "mail":
2432
- return /* @__PURE__ */ jsx13(Mail, { className: "w-5 h-5" });
2358
+ return /* @__PURE__ */ jsx12(Mail, { className: "w-5 h-5" });
2433
2359
  case "website":
2434
2360
  case "web":
2435
2361
  case "url":
2436
- return /* @__PURE__ */ jsx13(GlobeIcon, { className: "w-5 h-5" });
2362
+ return /* @__PURE__ */ jsx12(GlobeIcon, { className: "w-5 h-5" });
2437
2363
  case "slack":
2438
- return /* @__PURE__ */ jsx13(SlackIcon, { className: "w-5 h-5", injectedColor: "white" });
2364
+ return /* @__PURE__ */ jsx12(SlackIcon, { className: "w-5 h-5", injectedColor: "white" });
2439
2365
  case "discord":
2440
- return /* @__PURE__ */ jsx13(MessageCircleIcon, { className: "w-5 h-5" });
2366
+ return /* @__PURE__ */ jsx12(MessageCircleIcon, { className: "w-5 h-5" });
2441
2367
  case "telegram":
2442
- return /* @__PURE__ */ jsx13(TelegramIcon, { className: "w-5 h-5" });
2368
+ return /* @__PURE__ */ jsx12(TelegramIcon, { className: "w-5 h-5" });
2443
2369
  case "youtube":
2444
2370
  case "yt":
2445
- return /* @__PURE__ */ jsx13(YouTubeIcon, { className: "w-5 h-5" });
2371
+ return /* @__PURE__ */ jsx12(YouTubeIcon, { className: "w-5 h-5" });
2446
2372
  case "instagram":
2447
2373
  case "ig":
2448
- return /* @__PURE__ */ jsx13(InstagramIcon, { className: "w-5 h-5" });
2374
+ return /* @__PURE__ */ jsx12(InstagramIcon, { className: "w-5 h-5" });
2449
2375
  case "facebook":
2450
2376
  case "fb":
2451
- return /* @__PURE__ */ jsx13(FacebookIcon, { className: "w-5 h-5" });
2377
+ return /* @__PURE__ */ jsx12(FacebookIcon, { className: "w-5 h-5" });
2452
2378
  case "copy":
2453
- return /* @__PURE__ */ jsx13(CopyIcon, { className: "w-5 h-5", color: "var(--color-text-primary)" });
2379
+ return /* @__PURE__ */ jsx12(CopyIcon, { className: "w-5 h-5", color: "var(--color-text-primary)" });
2454
2380
  default:
2455
- return /* @__PURE__ */ jsx13(GlobeIcon, { className: "w-5 h-5" });
2381
+ return /* @__PURE__ */ jsx12(GlobeIcon, { className: "w-5 h-5" });
2456
2382
  }
2457
2383
  }
2458
2384
  function SocialIconRow({ className = "", links = defaultLinks, variant, compact = false, groupByVisibility = false }) {
2459
2385
  const resolvedVariant = variant !== void 0 ? variant : compact ? "transparent" : "outline";
2460
2386
  const renderButton = (link, index) => {
2461
2387
  const ariaLabel = link.label || link.platform;
2462
- return link.onClick ? /* @__PURE__ */ jsx13(
2388
+ return link.onClick ? /* @__PURE__ */ jsx12(
2463
2389
  Button,
2464
2390
  {
2465
2391
  type: "button",
@@ -2475,7 +2401,7 @@ function SocialIconRow({ className = "", links = defaultLinks, variant, compact
2475
2401
  // Props-based linking — Button renders the anchor itself
2476
2402
  // (openInNewTab carries target="_blank" + rel="noopener noreferrer");
2477
2403
  // no asChild/<a> nesting.
2478
- /* @__PURE__ */ jsx13(
2404
+ /* @__PURE__ */ jsx12(
2479
2405
  Button,
2480
2406
  {
2481
2407
  variant: resolvedVariant,
@@ -2495,42 +2421,42 @@ function SocialIconRow({ className = "", links = defaultLinks, variant, compact
2495
2421
  const external = links.filter((l) => l.visibility !== "internal");
2496
2422
  const internal = links.filter((l) => l.visibility === "internal");
2497
2423
  if (external.length > 0 && internal.length > 0) {
2498
- return /* @__PURE__ */ jsxs11("div", { className: rowClass, children: [
2424
+ return /* @__PURE__ */ jsxs10("div", { className: rowClass, children: [
2499
2425
  external.map((l, i) => renderButton(l, i)),
2500
- /* @__PURE__ */ jsx13("span", { "aria-hidden": true, className: "self-stretch w-px my-1 bg-ods-border shrink-0" }),
2426
+ /* @__PURE__ */ jsx12("span", { "aria-hidden": true, className: "self-stretch w-px my-1 bg-ods-border shrink-0" }),
2501
2427
  internal.map((l, i) => renderButton(l, external.length + i))
2502
2428
  ] });
2503
2429
  }
2504
2430
  }
2505
- return /* @__PURE__ */ jsx13("div", { className: rowClass, children: links.map((link, index) => renderButton(link, index)) });
2431
+ return /* @__PURE__ */ jsx12("div", { className: rowClass, children: links.map((link, index) => renderButton(link, index)) });
2506
2432
  }
2507
2433
 
2508
2434
  // src/components/footer.tsx
2509
- import { Fragment as Fragment3, jsx as jsx14, jsxs as jsxs12 } from "react/jsx-runtime";
2435
+ import { Fragment as Fragment3, jsx as jsx13, jsxs as jsxs11 } from "react/jsx-runtime";
2510
2436
  function NavLinkSkeleton() {
2511
- return /* @__PURE__ */ jsx14(Skeleton, { className: "h-5 md:h-6 w-20 md:w-24" });
2437
+ return /* @__PURE__ */ jsx13(Skeleton, { className: "h-5 md:h-6 w-20 md:w-24" });
2512
2438
  }
2513
2439
  function Footer({ config, renderLink }) {
2514
2440
  if (!config) {
2515
2441
  console.warn("Footer: No config provided");
2516
2442
  return null;
2517
2443
  }
2518
- return /* @__PURE__ */ jsx14(UniversalFooter, { config, renderLink });
2444
+ return /* @__PURE__ */ jsx13(UniversalFooter, { config, renderLink });
2519
2445
  }
2520
2446
  function UniversalFooter({ config, renderLink }) {
2521
- const defaultRenderLink = (link) => /* @__PURE__ */ jsx14("a", { href: link.href, className: "font-body font-medium text-md md:text-md leading-[1.33] text-ods-text-primary hover:text-ods-accent transition-colors", children: link.label });
2447
+ const defaultRenderLink = (link) => /* @__PURE__ */ jsx13("a", { href: link.href, className: "font-body font-medium text-md md:text-md leading-[1.33] text-ods-text-primary hover:text-ods-accent transition-colors", children: link.label });
2522
2448
  const linkRenderer = renderLink || defaultRenderLink;
2523
- return /* @__PURE__ */ jsxs12("footer", { className: `w-full flex flex-col justify-center items-center ${config.backgroundColor || "bg-ods-card"} px-6 py-10 relative gap-6 md:gap-6 min-h-[auto] md:min-h-[248px] z-[44] border-t border-ods-border`, children: [
2524
- /* @__PURE__ */ jsxs12("div", { className: "w-full grid grid-cols-2 lg:grid-cols-4 gap-6 md:gap-8 items-start", children: [
2525
- /* @__PURE__ */ jsxs12("div", { className: "flex flex-col gap-4 md:gap-6 items-start text-left col-span-2 md:col-span-1 lg:col-span-1", children: [
2526
- /* @__PURE__ */ jsxs12("div", { className: "flex items-center gap-2", children: [
2527
- config.logo && /* @__PURE__ */ jsx14(Suspense, { fallback: /* @__PURE__ */ jsx14(Skeleton, { className: "w-8 h-8" }), children: config.logo }),
2528
- config.nameElement || /* @__PURE__ */ jsx14("span", { className: "font-heading text-heading-5 font-bold text-ods-text-primary whitespace-nowrap", children: config.name })
2449
+ return /* @__PURE__ */ jsxs11("footer", { className: `w-full flex flex-col justify-center items-center ${config.backgroundColor || "bg-ods-card"} px-6 py-10 relative gap-6 md:gap-6 min-h-[auto] md:min-h-[248px] z-[44] border-t border-ods-border`, children: [
2450
+ /* @__PURE__ */ jsxs11("div", { className: "w-full grid grid-cols-2 lg:grid-cols-4 gap-6 md:gap-8 items-start", children: [
2451
+ /* @__PURE__ */ jsxs11("div", { className: "flex flex-col gap-4 md:gap-6 items-start text-left col-span-2 md:col-span-1 lg:col-span-1", children: [
2452
+ /* @__PURE__ */ jsxs11("div", { className: "flex items-center gap-2", children: [
2453
+ config.logo && /* @__PURE__ */ jsx13(Suspense, { fallback: /* @__PURE__ */ jsx13(Skeleton, { className: "w-8 h-8" }), children: config.logo }),
2454
+ config.nameElement || /* @__PURE__ */ jsx13("span", { className: "font-heading text-heading-5 font-bold text-ods-text-primary whitespace-nowrap", children: config.name })
2529
2455
  ] }),
2530
- !config.moveDescriptionToRight && /* @__PURE__ */ jsxs12(Fragment3, { children: [
2531
- /* @__PURE__ */ jsx14("p", { className: "font-body font-medium text-sm md:text-sm leading-[1.43] text-ods-text-primary", children: config.description }),
2532
- config.belowDescriptionContent && /* @__PURE__ */ jsx14(Suspense, { fallback: /* @__PURE__ */ jsx14(Skeleton, { className: "h-8 w-full" }), children: config.belowDescriptionContent }),
2533
- !config.hideSocialRow && /* @__PURE__ */ jsx14(
2456
+ !config.moveDescriptionToRight && /* @__PURE__ */ jsxs11(Fragment3, { children: [
2457
+ /* @__PURE__ */ jsx13("p", { className: "font-body font-medium text-sm md:text-sm leading-[1.43] text-ods-text-primary", children: config.description }),
2458
+ config.belowDescriptionContent && /* @__PURE__ */ jsx13(Suspense, { fallback: /* @__PURE__ */ jsx13(Skeleton, { className: "h-8 w-full" }), children: config.belowDescriptionContent }),
2459
+ !config.hideSocialRow && /* @__PURE__ */ jsx13(
2534
2460
  SocialIconRow,
2535
2461
  {
2536
2462
  className: "pt-2",
@@ -2538,22 +2464,22 @@ function UniversalFooter({ config, renderLink }) {
2538
2464
  }
2539
2465
  )
2540
2466
  ] }),
2541
- config.moveDescriptionToRight && config.keepBelowDescriptionLeft && config.belowDescriptionContent && /* @__PURE__ */ jsx14(Suspense, { fallback: /* @__PURE__ */ jsx14(Skeleton, { className: "h-8 w-full" }), children: config.belowDescriptionContent })
2467
+ config.moveDescriptionToRight && config.keepBelowDescriptionLeft && config.belowDescriptionContent && /* @__PURE__ */ jsx13(Suspense, { fallback: /* @__PURE__ */ jsx13(Skeleton, { className: "h-8 w-full" }), children: config.belowDescriptionContent })
2542
2468
  ] }),
2543
- config.sections.map((section, index) => /* @__PURE__ */ jsxs12("div", { className: "flex flex-col gap-3 items-start text-left col-span-1", children: [
2544
- /* @__PURE__ */ jsx14("h3", { className: "text-h5 tracking-[-0.02em] text-ods-text-muted", children: section.title }),
2545
- /* @__PURE__ */ jsx14("div", { className: "flex flex-col gap-3", children: section.links.map((link, linkIndex) => /* @__PURE__ */ jsx14(Suspense, { fallback: /* @__PURE__ */ jsx14(NavLinkSkeleton, {}), children: linkRenderer(link) }, linkIndex)) })
2469
+ config.sections.map((section, index) => /* @__PURE__ */ jsxs11("div", { className: "flex flex-col gap-3 items-start text-left col-span-1", children: [
2470
+ /* @__PURE__ */ jsx13("h3", { className: "text-h5 tracking-[-0.02em] text-ods-text-muted", children: section.title }),
2471
+ /* @__PURE__ */ jsx13("div", { className: "flex flex-col gap-3", children: section.links.map((link, linkIndex) => /* @__PURE__ */ jsx13(Suspense, { fallback: /* @__PURE__ */ jsx13(NavLinkSkeleton, {}), children: linkRenderer(link) }, linkIndex)) })
2546
2472
  ] }, index)),
2547
- config.customComponent && /* @__PURE__ */ jsx14("div", { className: "flex flex-col col-span-2 md:col-span-1 lg:col-span-1 justify-center", children: /* @__PURE__ */ jsx14(Suspense, { fallback: /* @__PURE__ */ jsx14(Skeleton, { className: "h-32 w-full" }), children: config.customComponent }) }),
2548
- (config.rightColumnContent || config.moveDescriptionToRight) && /* @__PURE__ */ jsxs12("div", { className: "flex flex-col col-span-2 md:col-span-1 lg:col-span-1 justify-start gap-4 md:gap-6", children: [
2549
- config.moveDescriptionToRight && /* @__PURE__ */ jsxs12(Fragment3, { children: [
2550
- /* @__PURE__ */ jsx14("p", { className: "font-body font-medium text-sm md:text-sm leading-[1.43] text-ods-text-primary", children: config.description }),
2551
- config.belowDescriptionContent && !config.keepBelowDescriptionLeft && /* @__PURE__ */ jsx14(Suspense, { fallback: /* @__PURE__ */ jsx14(Skeleton, { className: "h-8 w-full" }), children: config.belowDescriptionContent })
2473
+ config.customComponent && /* @__PURE__ */ jsx13("div", { className: "flex flex-col col-span-2 md:col-span-1 lg:col-span-1 justify-center", children: /* @__PURE__ */ jsx13(Suspense, { fallback: /* @__PURE__ */ jsx13(Skeleton, { className: "h-32 w-full" }), children: config.customComponent }) }),
2474
+ (config.rightColumnContent || config.moveDescriptionToRight) && /* @__PURE__ */ jsxs11("div", { className: "flex flex-col col-span-2 md:col-span-1 lg:col-span-1 justify-start gap-4 md:gap-6", children: [
2475
+ config.moveDescriptionToRight && /* @__PURE__ */ jsxs11(Fragment3, { children: [
2476
+ /* @__PURE__ */ jsx13("p", { className: "font-body font-medium text-sm md:text-sm leading-[1.43] text-ods-text-primary", children: config.description }),
2477
+ config.belowDescriptionContent && !config.keepBelowDescriptionLeft && /* @__PURE__ */ jsx13(Suspense, { fallback: /* @__PURE__ */ jsx13(Skeleton, { className: "h-8 w-full" }), children: config.belowDescriptionContent })
2552
2478
  ] }),
2553
- config.rightColumnContent && /* @__PURE__ */ jsx14(Suspense, { fallback: /* @__PURE__ */ jsx14(Skeleton, { className: "h-32 w-full" }), children: config.rightColumnContent })
2479
+ config.rightColumnContent && /* @__PURE__ */ jsx13(Suspense, { fallback: /* @__PURE__ */ jsx13(Skeleton, { className: "h-32 w-full" }), children: config.rightColumnContent })
2554
2480
  ] })
2555
2481
  ] }),
2556
- /* @__PURE__ */ jsxs12("p", { className: "font-body font-medium text-md md:text-md leading-[1.33] text-center w-full text-ods-text-muted pt-4 md:pt-0", children: [
2482
+ /* @__PURE__ */ jsxs11("p", { className: "font-body font-medium text-md md:text-md leading-[1.33] text-center w-full text-ods-text-muted pt-4 md:pt-0", children: [
2557
2483
  "\xA9 ",
2558
2484
  (/* @__PURE__ */ new Date()).getFullYear(),
2559
2485
  " ",
@@ -2860,19 +2786,19 @@ init_unified_pagination();
2860
2786
  init_next_navigation();
2861
2787
  import { useCallback } from "react";
2862
2788
  init_button();
2863
- import { jsx as jsx15 } from "react/jsx-runtime";
2789
+ import { jsx as jsx14 } from "react/jsx-runtime";
2864
2790
  function FooterWaitlistButton({ className }) {
2865
2791
  const router = useRouter();
2866
2792
  const runtime = useChatRuntime();
2867
2793
  const handleClick = useCallback(() => {
2868
2794
  executeNavigationImperative({ runtime, href: "/waitlist#top", fallbackNavigate: router.push });
2869
2795
  }, [router, runtime]);
2870
- return /* @__PURE__ */ jsx15(
2796
+ return /* @__PURE__ */ jsx14(
2871
2797
  Button,
2872
2798
  {
2873
2799
  onClick: handleClick,
2874
2800
  className,
2875
- leftIcon: /* @__PURE__ */ jsx15(OpenFrameLogo, {}),
2801
+ leftIcon: /* @__PURE__ */ jsx14(OpenFrameLogo, {}),
2876
2802
  children: "Join Waitlist"
2877
2803
  }
2878
2804
  );
@@ -2880,13 +2806,13 @@ function FooterWaitlistButton({ className }) {
2880
2806
 
2881
2807
  // src/components/hero-image-uploader.tsx
2882
2808
  init_button();
2883
- import { useRef as useRef2, useState as useState3 } from "react";
2809
+ import { useRef as useRef2, useState as useState2 } from "react";
2884
2810
  import { Loader2, Image as ImageIcon2, Upload, X as X3 } from "lucide-react";
2885
- import { Fragment as Fragment4, jsx as jsx16, jsxs as jsxs13 } from "react/jsx-runtime";
2811
+ import { Fragment as Fragment4, jsx as jsx15, jsxs as jsxs12 } from "react/jsx-runtime";
2886
2812
  function HeroImageUploader({ imageUrl, onChange, uploadEndpoint, height = 300, objectFit = "cover", showReplaceButton = true, deferUpload = false, onUpload, onDelete }) {
2887
2813
  const inputRef = useRef2(null);
2888
2814
  const { toast } = useToast();
2889
- const [uploading, setUploading] = useState3(false);
2815
+ const [uploading, setUploading] = useState2(false);
2890
2816
  const ALLOWED_TYPES = ["image/jpeg", "image/jpg", "image/png", "image/webp", "image/gif"];
2891
2817
  const MAX_SIZE = 5 * 1024 * 1024;
2892
2818
  const openDialog = () => inputRef.current?.click();
@@ -2958,51 +2884,51 @@ function HeroImageUploader({ imageUrl, onChange, uploadEndpoint, height = 300, o
2958
2884
  onChange(void 0);
2959
2885
  };
2960
2886
  const heightStyle = typeof height === "number" ? `${height}px` : height;
2961
- return /* @__PURE__ */ jsxs13("div", { className: "w-full h-full max-h-full space-y-2 min-h-[300px]", children: [
2962
- imageUrl ? /* @__PURE__ */ jsxs13("div", { className: "relative group w-full aspect-square md:aspect-auto h-auto md:h-full flex items-center justify-center overflow-hidden", style: { height: heightStyle }, children: [
2963
- /* @__PURE__ */ jsx16("img", { src: imageUrl, className: `absolute inset-0 w-full h-full object-${objectFit}`, alt: "Cover" }),
2964
- /* @__PURE__ */ jsxs13("div", { className: "absolute inset-0 bg-black/40 opacity-0 group-hover:opacity-100 flex items-center justify-center gap-4 transition-opacity rounded-lg", children: [
2965
- showReplaceButton && /* @__PURE__ */ jsx16(
2887
+ return /* @__PURE__ */ jsxs12("div", { className: "w-full h-full max-h-full space-y-2 min-h-[300px]", children: [
2888
+ imageUrl ? /* @__PURE__ */ jsxs12("div", { className: "relative group w-full aspect-square md:aspect-auto h-auto md:h-full flex items-center justify-center overflow-hidden", style: { height: heightStyle }, children: [
2889
+ /* @__PURE__ */ jsx15("img", { src: imageUrl, className: `absolute inset-0 w-full h-full object-${objectFit}`, alt: "Cover" }),
2890
+ /* @__PURE__ */ jsxs12("div", { className: "absolute inset-0 bg-black/40 opacity-0 group-hover:opacity-100 flex items-center justify-center gap-4 transition-opacity rounded-lg", children: [
2891
+ showReplaceButton && /* @__PURE__ */ jsx15(
2966
2892
  Button,
2967
2893
  {
2968
2894
  variant: "outline",
2969
2895
  size: "icon",
2970
2896
  onClick: openDialog,
2971
2897
  className: "bg-white text-black hover:bg-gray-100 rounded-full w-12 h-12",
2972
- children: /* @__PURE__ */ jsx16(Upload, { className: "h-5 w-5" })
2898
+ children: /* @__PURE__ */ jsx15(Upload, { className: "h-5 w-5" })
2973
2899
  }
2974
2900
  ),
2975
- /* @__PURE__ */ jsx16(
2901
+ /* @__PURE__ */ jsx15(
2976
2902
  Button,
2977
2903
  {
2978
2904
  variant: "outline",
2979
2905
  size: "icon",
2980
2906
  onClick: () => handleRemove(),
2981
2907
  className: "bg-white text-black hover:bg-gray-100 rounded-full w-12 h-12",
2982
- children: /* @__PURE__ */ jsx16(X3, { className: "h-5 w-5" })
2908
+ children: /* @__PURE__ */ jsx15(X3, { className: "h-5 w-5" })
2983
2909
  }
2984
2910
  )
2985
2911
  ] })
2986
- ] }) : /* @__PURE__ */ jsx16(
2912
+ ] }) : /* @__PURE__ */ jsx15(
2987
2913
  "div",
2988
2914
  {
2989
2915
  className: `w-full h-full border-2 border-dashed ${uploading ? "border-ods-accent" : "border-ods-border hover:border-ods-accent"} rounded-lg flex flex-col items-center justify-center cursor-pointer bg-ods-bg`,
2990
2916
  style: { height: heightStyle },
2991
2917
  onClick: openDialog,
2992
- children: uploading ? /* @__PURE__ */ jsx16(Loader2, { className: "h-8 w-8 animate-spin text-ods-accent" }) : /* @__PURE__ */ jsxs13(Fragment4, { children: [
2993
- /* @__PURE__ */ jsx16(ImageIcon2, { className: "h-12 w-12 text-ods-text-secondary" }),
2994
- /* @__PURE__ */ jsx16("span", { className: "text-ods-text-primary text-h6 mt-2", children: "Upload cover image" }),
2995
- /* @__PURE__ */ jsx16("span", { className: "text-ods-text-secondary text-h6 mt-1", children: "Click to upload or drag and drop" }),
2996
- /* @__PURE__ */ jsx16("span", { className: "text-ods-text-secondary text-h6", children: "PNG, JPEG, WebP, GIF up to 5MB" })
2918
+ children: uploading ? /* @__PURE__ */ jsx15(Loader2, { className: "h-8 w-8 animate-spin text-ods-accent" }) : /* @__PURE__ */ jsxs12(Fragment4, { children: [
2919
+ /* @__PURE__ */ jsx15(ImageIcon2, { className: "h-12 w-12 text-ods-text-secondary" }),
2920
+ /* @__PURE__ */ jsx15("span", { className: "text-ods-text-primary text-h6 mt-2", children: "Upload cover image" }),
2921
+ /* @__PURE__ */ jsx15("span", { className: "text-ods-text-secondary text-h6 mt-1", children: "Click to upload or drag and drop" }),
2922
+ /* @__PURE__ */ jsx15("span", { className: "text-ods-text-secondary text-h6", children: "PNG, JPEG, WebP, GIF up to 5MB" })
2997
2923
  ] })
2998
2924
  }
2999
2925
  ),
3000
- /* @__PURE__ */ jsx16("input", { ref: inputRef, type: "file", accept: "image/*", onChange: handleSelect, className: "hidden" })
2926
+ /* @__PURE__ */ jsx15("input", { ref: inputRef, type: "file", accept: "image/*", onChange: handleSelect, className: "hidden" })
3001
2927
  ] });
3002
2928
  }
3003
2929
 
3004
2930
  // src/components/icons-block.tsx
3005
- import { useState as useState4, useEffect as useEffect2, useRef as useRef3 } from "react";
2931
+ import { useState as useState3, useEffect as useEffect2, useRef as useRef3 } from "react";
3006
2932
 
3007
2933
  // src/components/icons-stub.tsx
3008
2934
  import { DollarSign, Code, Users, Building, GitCompare, MessageSquare } from "lucide-react";
@@ -3016,13 +2942,13 @@ var CompareIcon2 = GitCompare;
3016
2942
 
3017
2943
  // src/components/icons-block.tsx
3018
2944
  import { Sun, Moon, CheckCircle, Github, PlusCircle } from "lucide-react";
3019
- import { jsx as jsx17, jsxs as jsxs14 } from "react/jsx-runtime";
2945
+ import { jsx as jsx16, jsxs as jsxs13 } from "react/jsx-runtime";
3020
2946
  var SunIcon2 = Sun;
3021
2947
  var MoonIcon2 = Moon;
3022
2948
  var CheckCircleIcon3 = CheckCircle;
3023
2949
  var GitHubIcon2 = Github;
3024
2950
  var PlusCircleIcon2 = PlusCircle;
3025
- var OpenmspLogo2 = () => /* @__PURE__ */ jsx17("div", { children: "Logo" });
2951
+ var OpenmspLogo2 = () => /* @__PURE__ */ jsx16("div", { children: "Logo" });
3026
2952
  var availableIcons = [
3027
2953
  VendorDirectoryIcon2,
3028
2954
  OpenSourceIcon2,
@@ -3038,9 +2964,9 @@ var availableIcons = [
3038
2964
  OpenmspLogo2
3039
2965
  ];
3040
2966
  function ResponsiveIconsBlock({ loading = false }) {
3041
- const [columns, setColumns] = useState4(24);
3042
- const [iconGrid, setIconGrid] = useState4([]);
3043
- const [iconsLoaded, setIconsLoaded] = useState4(false);
2967
+ const [columns, setColumns] = useState3(24);
2968
+ const [iconGrid, setIconGrid] = useState3([]);
2969
+ const [iconsLoaded, setIconsLoaded] = useState3(false);
3044
2970
  const randomSeedRef = useRef3(0);
3045
2971
  useEffect2(() => {
3046
2972
  function calculateColumns() {
@@ -3085,17 +3011,17 @@ function ResponsiveIconsBlock({ loading = false }) {
3085
3011
  return iconGrid[row]?.[col] || availableIcons[0];
3086
3012
  };
3087
3013
  if (loading || iconGrid.length === 0) {
3088
- return /* @__PURE__ */ jsx17(
3014
+ return /* @__PURE__ */ jsx16(
3089
3015
  "div",
3090
3016
  {
3091
3017
  className: "w-full h-[80px] md:h-[112px] bg-[#1A1A1A] relative overflow-hidden",
3092
3018
  role: "presentation",
3093
3019
  "aria-hidden": "true",
3094
- children: /* @__PURE__ */ jsx17("div", { className: "absolute inset-0 animate-pulse bg-[#2A2A2A]/60" })
3020
+ children: /* @__PURE__ */ jsx16("div", { className: "absolute inset-0 animate-pulse bg-[#2A2A2A]/60" })
3095
3021
  }
3096
3022
  );
3097
3023
  }
3098
- return /* @__PURE__ */ jsxs14(
3024
+ return /* @__PURE__ */ jsxs13(
3099
3025
  "div",
3100
3026
  {
3101
3027
  className: "w-full h-[80px] md:h-[112px] overflow-hidden bg-[#1A1A1A] relative z-10",
@@ -3103,14 +3029,14 @@ function ResponsiveIconsBlock({ loading = false }) {
3103
3029
  role: "presentation",
3104
3030
  "aria-hidden": "true",
3105
3031
  children: [
3106
- /* @__PURE__ */ jsx17("style", { children: `
3032
+ /* @__PURE__ */ jsx16("style", { children: `
3107
3033
  .icons-block svg,
3108
3034
  .icons-block svg * {
3109
3035
  filter: grayscale(100%) brightness(0) invert(1) brightness(0.4) !important;
3110
3036
  fill: currentColor !important;
3111
3037
  }
3112
3038
  ` }),
3113
- /* @__PURE__ */ jsx17(
3039
+ /* @__PURE__ */ jsx16(
3114
3040
  "div",
3115
3041
  {
3116
3042
  className: "grid h-full icons-block w-full",
@@ -3122,7 +3048,7 @@ function ResponsiveIconsBlock({ loading = false }) {
3122
3048
  const col = idx % displayColumns;
3123
3049
  const row = Math.floor(idx / displayColumns);
3124
3050
  const IconComponent = getIconForIndex(idx);
3125
- return /* @__PURE__ */ jsx17(
3051
+ return /* @__PURE__ */ jsx16(
3126
3052
  "div",
3127
3053
  {
3128
3054
  className: "flex items-center justify-center w-full h-full",
@@ -3135,7 +3061,7 @@ function ResponsiveIconsBlock({ loading = false }) {
3135
3061
  boxSizing: "border-box"
3136
3062
  },
3137
3063
  role: "presentation",
3138
- children: /* @__PURE__ */ jsx17(
3064
+ children: /* @__PURE__ */ jsx16(
3139
3065
  IconComponent,
3140
3066
  {
3141
3067
  width: 16,
@@ -3157,11 +3083,11 @@ function ResponsiveIconsBlock({ loading = false }) {
3157
3083
 
3158
3084
  // src/components/image-cropper.tsx
3159
3085
  init_button();
3160
- import { useCallback as useCallback2, useState as useState5 } from "react";
3086
+ import { useCallback as useCallback2, useState as useState4 } from "react";
3161
3087
  import Cropper from "react-easy-crop";
3162
3088
  init_cn();
3163
3089
  import { Check, RotateCcw } from "lucide-react";
3164
- import { jsx as jsx18, jsxs as jsxs15 } from "react/jsx-runtime";
3090
+ import { jsx as jsx17, jsxs as jsxs14 } from "react/jsx-runtime";
3165
3091
  function loadImage(src) {
3166
3092
  return new Promise((resolve, reject) => {
3167
3093
  const img = new Image();
@@ -3180,10 +3106,10 @@ var ImageCropper = ({
3180
3106
  maxSizePx = 512,
3181
3107
  className
3182
3108
  }) => {
3183
- const [crop, setCrop] = useState5({ x: 0, y: 0 });
3184
- const [zoom, setZoom] = useState5(1);
3185
- const [rotation, setRotation] = useState5(0);
3186
- const [croppedAreaPixels, setCroppedAreaPixels] = useState5(null);
3109
+ const [crop, setCrop] = useState4({ x: 0, y: 0 });
3110
+ const [zoom, setZoom] = useState4(1);
3111
+ const [rotation, setRotation] = useState4(0);
3112
+ const [croppedAreaPixels, setCroppedAreaPixels] = useState4(null);
3187
3113
  const onCropComplete = useCallback2((_, area) => {
3188
3114
  setCroppedAreaPixels(area);
3189
3115
  }, []);
@@ -3249,7 +3175,7 @@ var ImageCropper = ({
3249
3175
  onCancel?.();
3250
3176
  }
3251
3177
  };
3252
- return /* @__PURE__ */ jsxs15(
3178
+ return /* @__PURE__ */ jsxs14(
3253
3179
  "div",
3254
3180
  {
3255
3181
  className: cn(
@@ -3260,14 +3186,14 @@ var ImageCropper = ({
3260
3186
  tabIndex: 0,
3261
3187
  "aria-label": "Image cropper",
3262
3188
  children: [
3263
- /* @__PURE__ */ jsx18(
3189
+ /* @__PURE__ */ jsx17(
3264
3190
  "div",
3265
3191
  {
3266
3192
  className: cn(
3267
3193
  "relative w-full aspect-square md:aspect-video rounded-md overflow-hidden",
3268
3194
  checkerBg
3269
3195
  ),
3270
- children: /* @__PURE__ */ jsx18(
3196
+ children: /* @__PURE__ */ jsx17(
3271
3197
  Cropper,
3272
3198
  {
3273
3199
  image: src,
@@ -3286,10 +3212,10 @@ var ImageCropper = ({
3286
3212
  )
3287
3213
  }
3288
3214
  ),
3289
- /* @__PURE__ */ jsxs15("div", { className: "flex flex-col gap-4", children: [
3290
- /* @__PURE__ */ jsxs15("div", { className: "flex items-center gap-3", children: [
3291
- /* @__PURE__ */ jsx18("span", { className: "min-w-[60px] text-h6", children: "Zoom" }),
3292
- /* @__PURE__ */ jsx18(
3215
+ /* @__PURE__ */ jsxs14("div", { className: "flex flex-col gap-4", children: [
3216
+ /* @__PURE__ */ jsxs14("div", { className: "flex items-center gap-3", children: [
3217
+ /* @__PURE__ */ jsx17("span", { className: "min-w-[60px] text-h6", children: "Zoom" }),
3218
+ /* @__PURE__ */ jsx17(
3293
3219
  Slider,
3294
3220
  {
3295
3221
  min: 1,
@@ -3302,9 +3228,9 @@ var ImageCropper = ({
3302
3228
  }
3303
3229
  )
3304
3230
  ] }),
3305
- /* @__PURE__ */ jsxs15("div", { className: "flex items-center gap-3", children: [
3306
- /* @__PURE__ */ jsx18("span", { className: "min-w-[60px] text-h6", children: "Rotate" }),
3307
- /* @__PURE__ */ jsx18(
3231
+ /* @__PURE__ */ jsxs14("div", { className: "flex items-center gap-3", children: [
3232
+ /* @__PURE__ */ jsx17("span", { className: "min-w-[60px] text-h6", children: "Rotate" }),
3233
+ /* @__PURE__ */ jsx17(
3308
3234
  Slider,
3309
3235
  {
3310
3236
  min: 0,
@@ -3316,21 +3242,21 @@ var ImageCropper = ({
3316
3242
  className: "flex-1"
3317
3243
  }
3318
3244
  ),
3319
- /* @__PURE__ */ jsx18(
3245
+ /* @__PURE__ */ jsx17(
3320
3246
  Button,
3321
3247
  {
3322
3248
  variant: "outline",
3323
3249
  size: "icon",
3324
3250
  onClick: () => setRotation(0),
3325
3251
  "aria-label": "Reset rotation",
3326
- children: /* @__PURE__ */ jsx18(RotateCcw, { className: "h-4 w-4" })
3252
+ children: /* @__PURE__ */ jsx17(RotateCcw, { className: "h-4 w-4" })
3327
3253
  }
3328
3254
  )
3329
3255
  ] })
3330
3256
  ] }),
3331
- /* @__PURE__ */ jsxs15("div", { className: "flex justify-end gap-2 mt-2", children: [
3332
- onCancel && /* @__PURE__ */ jsx18(Button, { variant: "outline", onClick: onCancel, "aria-label": "Cancel crop", children: "Cancel" }),
3333
- /* @__PURE__ */ jsx18(
3257
+ /* @__PURE__ */ jsxs14("div", { className: "flex justify-end gap-2 mt-2", children: [
3258
+ onCancel && /* @__PURE__ */ jsx17(Button, { variant: "outline", onClick: onCancel, "aria-label": "Cancel crop", children: "Cancel" }),
3259
+ /* @__PURE__ */ jsx17(
3334
3260
  Button,
3335
3261
  {
3336
3262
  variant: "accent",
@@ -3338,7 +3264,7 @@ var ImageCropper = ({
3338
3264
  const result = await exportCrop();
3339
3265
  if (result) onComplete(result);
3340
3266
  },
3341
- leftIcon: /* @__PURE__ */ jsx18(Check, { className: "h-4 w-4" }),
3267
+ leftIcon: /* @__PURE__ */ jsx17(Check, { className: "h-4 w-4" }),
3342
3268
  "aria-label": "Apply crop",
3343
3269
  children: "Apply"
3344
3270
  }
@@ -3351,20 +3277,20 @@ var ImageCropper = ({
3351
3277
 
3352
3278
  // src/components/metric-value.tsx
3353
3279
  init_cn();
3354
- import { jsx as jsx19, jsxs as jsxs16 } from "react/jsx-runtime";
3280
+ import { jsx as jsx18, jsxs as jsxs15 } from "react/jsx-runtime";
3355
3281
  function MetricValue({ value, label, className }) {
3356
- return /* @__PURE__ */ jsxs16("div", { className: cn("flex items-end gap-2 whitespace-nowrap text-h4 text-ods-text-primary", className), children: [
3282
+ return /* @__PURE__ */ jsxs15("div", { className: cn("flex items-end gap-2 whitespace-nowrap text-h4 text-ods-text-primary", className), children: [
3357
3283
  value,
3358
- /* @__PURE__ */ jsx19("span", { className: "text-h6 text-ods-text-secondary", children: label })
3284
+ /* @__PURE__ */ jsx18("span", { className: "text-h6 text-ods-text-secondary", children: label })
3359
3285
  ] });
3360
3286
  }
3361
3287
 
3362
3288
  // src/components/msp-display.tsx
3363
3289
  init_cn();
3364
- import { jsx as jsx20, jsxs as jsxs17 } from "react/jsx-runtime";
3290
+ import { jsx as jsx19, jsxs as jsxs16 } from "react/jsx-runtime";
3365
3291
  function MSPDisplay({ name, logoUrl, size = 40, className }) {
3366
- return /* @__PURE__ */ jsxs17("div", { className: cn("flex items-center gap-2 min-w-0", className), children: [
3367
- /* @__PURE__ */ jsx20(
3292
+ return /* @__PURE__ */ jsxs16("div", { className: cn("flex items-center gap-2 min-w-0", className), children: [
3293
+ /* @__PURE__ */ jsx19(
3368
3294
  SquareAvatar,
3369
3295
  {
3370
3296
  src: logoUrl ? getProxiedImageUrl(logoUrl) || logoUrl : void 0,
@@ -3373,19 +3299,19 @@ function MSPDisplay({ name, logoUrl, size = 40, className }) {
3373
3299
  sizePx: size
3374
3300
  }
3375
3301
  ),
3376
- /* @__PURE__ */ jsx20("h2", { className: "truncate pl-2", children: name })
3302
+ /* @__PURE__ */ jsx19("h2", { className: "truncate pl-2", children: name })
3377
3303
  ] });
3378
3304
  }
3379
3305
 
3380
3306
  // src/components/open-source-features.tsx
3381
3307
  import { Terminal, DollarSign as DollarSign2, Network, Users as Users2 } from "lucide-react";
3382
- import { jsx as jsx21, jsxs as jsxs18 } from "react/jsx-runtime";
3308
+ import { jsx as jsx20, jsxs as jsxs17 } from "react/jsx-runtime";
3383
3309
 
3384
3310
  // src/components/index.ts
3385
3311
  init_pagination();
3386
3312
 
3387
3313
  // src/components/pricing-display.tsx
3388
- import { jsx as jsx22, jsxs as jsxs19 } from "react/jsx-runtime";
3314
+ import { jsx as jsx21, jsxs as jsxs18 } from "react/jsx-runtime";
3389
3315
  var PRICING_STYLES = {
3390
3316
  // Comparison table style (current default)
3391
3317
  comparison: {
@@ -3421,19 +3347,19 @@ function PricingDisplay({
3421
3347
  styleConfig = PRICING_STYLES.comparison
3422
3348
  }) {
3423
3349
  if (typeof pricing === "string") {
3424
- return /* @__PURE__ */ jsx22(LegacyPricingDisplay, { pricing, className, styleConfig });
3350
+ return /* @__PURE__ */ jsx21(LegacyPricingDisplay, { pricing, className, styleConfig });
3425
3351
  }
3426
3352
  const pricingArray = Array.isArray(pricing) ? pricing : [pricing];
3427
3353
  if (!pricingArray || pricingArray.length === 0) {
3428
- return /* @__PURE__ */ jsx22("span", { className: `${styleConfig.priceTextColor} ${styleConfig.priceTextSize} ${styleConfig.fontFamily} ${className}`, children: "No pricing data" });
3354
+ return /* @__PURE__ */ jsx21("span", { className: `${styleConfig.priceTextColor} ${styleConfig.priceTextSize} ${styleConfig.fontFamily} ${className}`, children: "No pricing data" });
3429
3355
  }
3430
3356
  if (pricingArray.length === 1) {
3431
3357
  const item = pricingArray[0];
3432
3358
  const price = item.ranges?.[0]?.min || 0;
3433
3359
  const unit = item.ranges?.[0]?.unit;
3434
- return /* @__PURE__ */ jsxs19("span", { className: `${styleConfig.fontFamily} ${className}`, children: [
3435
- /* @__PURE__ */ jsx22("span", { className: `${styleConfig.priceTextColor} ${styleConfig.priceTextSize}`, children: formatPriceValue(price, styleConfig.showTildePrefix) }),
3436
- unit && /* @__PURE__ */ jsxs19("span", { className: `${styleConfig.secondaryTextColor} ${styleConfig.secondaryTextSize}`, children: [
3360
+ return /* @__PURE__ */ jsxs18("span", { className: `${styleConfig.fontFamily} ${className}`, children: [
3361
+ /* @__PURE__ */ jsx21("span", { className: `${styleConfig.priceTextColor} ${styleConfig.priceTextSize}`, children: formatPriceValue(price, styleConfig.showTildePrefix) }),
3362
+ unit && /* @__PURE__ */ jsxs18("span", { className: `${styleConfig.secondaryTextColor} ${styleConfig.secondaryTextSize}`, children: [
3437
3363
  "/",
3438
3364
  unit
3439
3365
  ] })
@@ -3441,9 +3367,9 @@ function PricingDisplay({
3441
3367
  }
3442
3368
  const priceValues = pricingArray.map((item) => formatPriceValue(item.ranges?.[0]?.min || 0, styleConfig.showTildePrefix));
3443
3369
  const itemWithUnit = pricingArray.find((item) => item.ranges?.[0]?.unit);
3444
- return /* @__PURE__ */ jsxs19("span", { className: `${styleConfig.fontFamily} ${className}`, children: [
3445
- /* @__PURE__ */ jsx22("span", { className: `${styleConfig.priceTextColor} ${styleConfig.priceTextSize}`, children: priceValues.join(" | ") }),
3446
- itemWithUnit && itemWithUnit.ranges?.[0]?.unit && /* @__PURE__ */ jsxs19("span", { className: `${styleConfig.secondaryTextColor} ${styleConfig.secondaryTextSize}`, children: [
3370
+ return /* @__PURE__ */ jsxs18("span", { className: `${styleConfig.fontFamily} ${className}`, children: [
3371
+ /* @__PURE__ */ jsx21("span", { className: `${styleConfig.priceTextColor} ${styleConfig.priceTextSize}`, children: priceValues.join(" | ") }),
3372
+ itemWithUnit && itemWithUnit.ranges?.[0]?.unit && /* @__PURE__ */ jsxs18("span", { className: `${styleConfig.secondaryTextColor} ${styleConfig.secondaryTextSize}`, children: [
3447
3373
  "/",
3448
3374
  itemWithUnit.ranges[0].unit
3449
3375
  ] })
@@ -3464,7 +3390,7 @@ function LegacyPricingDisplay({
3464
3390
  styleConfig = PRICING_STYLES.comparison
3465
3391
  }) {
3466
3392
  if (pricing === "Free" || pricing === "No pricing data") {
3467
- return /* @__PURE__ */ jsx22("span", { className: `${styleConfig.priceTextColor} ${styleConfig.priceTextSize} ${styleConfig.fontFamily} ${className}`, children: pricing });
3393
+ return /* @__PURE__ */ jsx21("span", { className: `${styleConfig.priceTextColor} ${styleConfig.priceTextSize} ${styleConfig.fontFamily} ${className}`, children: pricing });
3468
3394
  }
3469
3395
  const parsePricing = (pricingStr) => {
3470
3396
  if (pricingStr.includes(", ")) {
@@ -3520,9 +3446,9 @@ function LegacyPricingDisplay({
3520
3446
  };
3521
3447
  };
3522
3448
  const { mainValue, secondaryInfo } = parsePricing(pricing);
3523
- return /* @__PURE__ */ jsxs19("span", { className: `${styleConfig.fontFamily} ${className}`, children: [
3524
- /* @__PURE__ */ jsx22("span", { className: `${styleConfig.priceTextColor} ${styleConfig.priceTextSize}`, children: mainValue }),
3525
- secondaryInfo && /* @__PURE__ */ jsx22("span", { className: `${styleConfig.secondaryTextColor} ${styleConfig.secondaryTextSize}`, children: secondaryInfo })
3449
+ return /* @__PURE__ */ jsxs18("span", { className: `${styleConfig.fontFamily} ${className}`, children: [
3450
+ /* @__PURE__ */ jsx21("span", { className: `${styleConfig.priceTextColor} ${styleConfig.priceTextSize}`, children: mainValue }),
3451
+ secondaryInfo && /* @__PURE__ */ jsx21("span", { className: `${styleConfig.secondaryTextColor} ${styleConfig.secondaryTextSize}`, children: secondaryInfo })
3526
3452
  ] });
3527
3453
  }
3528
3454
  function formatPricingForDisplay(pricing) {
@@ -3530,7 +3456,7 @@ function formatPricingForDisplay(pricing) {
3530
3456
  }
3531
3457
 
3532
3458
  // src/components/results-count.tsx
3533
- import { Fragment as Fragment5, jsx as jsx23, jsxs as jsxs20 } from "react/jsx-runtime";
3459
+ import { Fragment as Fragment5, jsx as jsx22, jsxs as jsxs19 } from "react/jsx-runtime";
3534
3460
  function ResultsCount({
3535
3461
  currentPage,
3536
3462
  pageSize,
@@ -3546,7 +3472,7 @@ function ResultsCount({
3546
3472
  const plural = resultType === "vendors" ? "vendors" : "posts";
3547
3473
  const singular = resultType === "vendors" ? "vendor" : "post";
3548
3474
  const displayType = totalResults === 1 ? singular : plural;
3549
- return /* @__PURE__ */ jsx23("div", { className: "mb-6", children: /* @__PURE__ */ jsx23("p", { className: "text-ods-text-secondary text-h6", children: totalResults > 0 && /* @__PURE__ */ jsxs20(Fragment5, { children: [
3475
+ return /* @__PURE__ */ jsx22("div", { className: "mb-6", children: /* @__PURE__ */ jsx22("p", { className: "text-ods-text-secondary text-h6", children: totalResults > 0 && /* @__PURE__ */ jsxs19(Fragment5, { children: [
3550
3476
  "Showing ",
3551
3477
  startIndex,
3552
3478
  "-",
@@ -3555,7 +3481,7 @@ function ResultsCount({
3555
3481
  totalResults,
3556
3482
  " ",
3557
3483
  displayType,
3558
- sortingMessage && /* @__PURE__ */ jsxs20("span", { className: "ml-2 text-ods-accent", children: [
3484
+ sortingMessage && /* @__PURE__ */ jsxs19("span", { className: "ml-2 text-ods-accent", children: [
3559
3485
  "\u2022 ",
3560
3486
  sortingMessage
3561
3487
  ] })
@@ -3563,9 +3489,9 @@ function ResultsCount({
3563
3489
  }
3564
3490
 
3565
3491
  // src/components/openframe-logo.tsx
3566
- import { jsx as jsx24, jsxs as jsxs21 } from "react/jsx-runtime";
3492
+ import { jsx as jsx23, jsxs as jsxs20 } from "react/jsx-runtime";
3567
3493
  var OpenFrameLogo2 = ({ className, lowerPathColor, upperPathColor, ...props }) => {
3568
- return /* @__PURE__ */ jsx24(
3494
+ return /* @__PURE__ */ jsx23(
3569
3495
  "svg",
3570
3496
  {
3571
3497
  ...props,
@@ -3579,30 +3505,30 @@ var OpenFrameLogo2 = ({ className, lowerPathColor, upperPathColor, ...props }) =
3579
3505
  "--fill-0": "currentColor",
3580
3506
  ...props.style
3581
3507
  },
3582
- children: /* @__PURE__ */ jsxs21("g", { children: [
3583
- /* @__PURE__ */ jsxs21("g", { children: [
3584
- /* @__PURE__ */ jsx24(
3508
+ children: /* @__PURE__ */ jsxs20("g", { children: [
3509
+ /* @__PURE__ */ jsxs20("g", { children: [
3510
+ /* @__PURE__ */ jsx23(
3585
3511
  "path",
3586
3512
  {
3587
3513
  d: "M21.3333 16.5333C21.3333 16.2388 21.5721 16 21.8667 16H26.1333C26.4279 16 26.6667 16.2388 26.6667 16.5333V20.8C26.6667 21.0946 26.4279 21.3333 26.1333 21.3333H21.8667C21.5721 21.3333 21.3333 21.0946 21.3333 20.8V16.5333Z",
3588
3514
  fill: lowerPathColor ?? "#ffffff"
3589
3515
  }
3590
3516
  ),
3591
- /* @__PURE__ */ jsx24(
3517
+ /* @__PURE__ */ jsx23(
3592
3518
  "path",
3593
3519
  {
3594
3520
  d: "M16 21.8667C16 21.5721 16.2388 21.3333 16.5333 21.3333H20.8C21.0946 21.3333 21.3333 21.5721 21.3333 21.8667V26.1333C21.3333 26.4279 21.0946 26.6667 20.8 26.6667H16.5333C16.2388 26.6667 16 26.4279 16 26.1333V21.8667Z",
3595
3521
  fill: lowerPathColor ?? "#ffffff"
3596
3522
  }
3597
3523
  ),
3598
- /* @__PURE__ */ jsx24(
3524
+ /* @__PURE__ */ jsx23(
3599
3525
  "path",
3600
3526
  {
3601
3527
  d: "M26.6667 21.8667C26.6667 21.5721 26.9054 21.3333 27.2 21.3333H31.4667C31.7612 21.3333 32 21.5721 32 21.8667V26.1333C32 26.4279 31.7612 26.6667 31.4667 26.6667H27.2C26.9054 26.6667 26.6667 26.4279 26.6667 26.1333V21.8667Z",
3602
3528
  fill: lowerPathColor ?? "#ffffff"
3603
3529
  }
3604
3530
  ),
3605
- /* @__PURE__ */ jsx24(
3531
+ /* @__PURE__ */ jsx23(
3606
3532
  "path",
3607
3533
  {
3608
3534
  d: "M21.3333 27.2C21.3333 26.9054 21.5721 26.6667 21.8667 26.6667H26.1333C26.4279 26.6667 26.6667 26.9054 26.6667 27.2V31.4667C26.6667 31.7612 26.4279 32 26.1333 32H21.8667C21.5721 32 21.3333 31.7612 21.3333 31.4667V27.2Z",
@@ -3610,7 +3536,7 @@ var OpenFrameLogo2 = ({ className, lowerPathColor, upperPathColor, ...props }) =
3610
3536
  }
3611
3537
  )
3612
3538
  ] }),
3613
- /* @__PURE__ */ jsx24(
3539
+ /* @__PURE__ */ jsx23(
3614
3540
  "path",
3615
3541
  {
3616
3542
  d: "M30.9333 0H1.06667C0.477563 0 0 0.477564 0 1.06667V30.9333C0 31.5224 0.477563 32 1.06667 32H14.9333C15.5224 32 16 31.5224 16 30.9333V27.7333C16 27.1442 15.5224 26.6667 14.9333 26.6667H5.86667C5.57211 26.6667 5.33333 26.4279 5.33333 26.1333V5.86667C5.33333 5.57211 5.57211 5.33333 5.86667 5.33333H26.1333C26.4279 5.33333 26.6667 5.57212 26.6667 5.86667V14.9333C26.6667 15.5224 27.1442 16 27.7333 16H30.9333C31.5224 16 32 15.5224 32 14.9333V1.06667C32 0.477563 31.5224 0 30.9333 0Z",
@@ -3625,7 +3551,7 @@ var OpenFrameLogo2 = ({ className, lowerPathColor, upperPathColor, ...props }) =
3625
3551
  // src/components/vendor-tag.tsx
3626
3552
  init_cn();
3627
3553
  import { Boxes, Database, Hand, Plug, ShieldCheck, Sparkles } from "lucide-react";
3628
- import { jsx as jsx25, jsxs as jsxs22 } from "react/jsx-runtime";
3554
+ import { jsx as jsx24, jsxs as jsxs21 } from "react/jsx-runtime";
3629
3555
  function VendorTag({
3630
3556
  type,
3631
3557
  text,
@@ -3644,110 +3570,110 @@ function VendorTag({
3644
3570
  return {
3645
3571
  text: "Placeholder",
3646
3572
  textColor: "text-ods-text-primary",
3647
- icon: /* @__PURE__ */ jsx25("div", { className: "w-4 h-4 rounded-sm flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx25(Sparkles, { width: 10, height: 10, className: "text-ods-text-primary" }) })
3573
+ icon: /* @__PURE__ */ jsx24("div", { className: "w-4 h-4 rounded-sm flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx24(Sparkles, { width: 10, height: 10, className: "text-ods-text-primary" }) })
3648
3574
  };
3649
3575
  case "ai":
3650
3576
  return {
3651
3577
  text: "AI Selected",
3652
3578
  textColor: "text-ods-text-primary",
3653
- icon: /* @__PURE__ */ jsx25("div", { className: "w-4 h-4 rounded-sm flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx25(Sparkles, { width: 10, height: 10, className: "text-ods-text-primary" }) })
3579
+ icon: /* @__PURE__ */ jsx24("div", { className: "w-4 h-4 rounded-sm flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx24(Sparkles, { width: 10, height: 10, className: "text-ods-text-primary" }) })
3654
3580
  };
3655
3581
  case "manual":
3656
3582
  return {
3657
3583
  text: "Manually Selected",
3658
3584
  textColor: "text-ods-text-secondary",
3659
- icon: /* @__PURE__ */ jsx25("div", { className: "w-4 h-4 rounded-sm flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx25(Hand, { width: 10, height: 10, className: "text-ods-text-secondary" }) })
3585
+ icon: /* @__PURE__ */ jsx24("div", { className: "w-4 h-4 rounded-sm flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx24(Hand, { width: 10, height: 10, className: "text-ods-text-secondary" }) })
3660
3586
  };
3661
3587
  case "open-source":
3662
3588
  return {
3663
3589
  text: text || "Open Source",
3664
- icon: /* @__PURE__ */ jsx25(
3590
+ icon: /* @__PURE__ */ jsx24(
3665
3591
  "div",
3666
3592
  {
3667
3593
  className: "w-4 h-4 bg-ods-accent rounded-sm flex items-center justify-center flex-shrink-0",
3668
3594
  style: accentColor ? { backgroundColor: accentColor } : void 0,
3669
- children: /* @__PURE__ */ jsx25(OpenSourceIcon2, { width: 10, height: 10, className: "text-ods-text-on-accent" })
3595
+ children: /* @__PURE__ */ jsx24(OpenSourceIcon2, { width: 10, height: 10, className: "text-ods-text-on-accent" })
3670
3596
  }
3671
3597
  )
3672
3598
  };
3673
3599
  case "commercial":
3674
3600
  return {
3675
3601
  text: text || "Commercial Vendor",
3676
- icon: /* @__PURE__ */ jsx25("div", { className: "w-4 h-4 bg-ods-border rounded-sm flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx25(CoinsIcon2, { width: 10, height: 10, className: "text-ods-text-secondary" }) })
3602
+ icon: /* @__PURE__ */ jsx24("div", { className: "w-4 h-4 bg-ods-border rounded-sm flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx24(CoinsIcon2, { width: 10, height: 10, className: "text-ods-text-secondary" }) })
3677
3603
  };
3678
3604
  // platform-capability tags — same neutral icon-box chrome as 'commercial'
3679
3605
  case "api":
3680
3606
  return {
3681
3607
  text: text || "API",
3682
- icon: /* @__PURE__ */ jsx25("div", { className: "w-4 h-4 bg-ods-border rounded-sm flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx25(Plug, { width: 10, height: 10, className: "text-ods-text-secondary" }) })
3608
+ icon: /* @__PURE__ */ jsx24("div", { className: "w-4 h-4 bg-ods-border rounded-sm flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx24(Plug, { width: 10, height: 10, className: "text-ods-text-secondary" }) })
3683
3609
  };
3684
3610
  case "data":
3685
3611
  return {
3686
3612
  text: text || "Data",
3687
- icon: /* @__PURE__ */ jsx25("div", { className: "w-4 h-4 bg-ods-border rounded-sm flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx25(Database, { width: 10, height: 10, className: "text-ods-text-secondary" }) })
3613
+ icon: /* @__PURE__ */ jsx24("div", { className: "w-4 h-4 bg-ods-border rounded-sm flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx24(Database, { width: 10, height: 10, className: "text-ods-text-secondary" }) })
3688
3614
  };
3689
3615
  case "k8s":
3690
3616
  return {
3691
3617
  text: text || "K8s",
3692
- icon: /* @__PURE__ */ jsx25("div", { className: "w-4 h-4 bg-ods-border rounded-sm flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx25(Boxes, { width: 10, height: 10, className: "text-ods-text-secondary" }) })
3618
+ icon: /* @__PURE__ */ jsx24("div", { className: "w-4 h-4 bg-ods-border rounded-sm flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx24(Boxes, { width: 10, height: 10, className: "text-ods-text-secondary" }) })
3693
3619
  };
3694
3620
  case "secured":
3695
3621
  return {
3696
3622
  text: text || "Secured",
3697
- icon: /* @__PURE__ */ jsx25("div", { className: "w-4 h-4 bg-ods-border rounded-sm flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx25(ShieldCheck, { width: 10, height: 10, className: "text-ods-text-secondary" }) })
3623
+ icon: /* @__PURE__ */ jsx24("div", { className: "w-4 h-4 bg-ods-border rounded-sm flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx24(ShieldCheck, { width: 10, height: 10, className: "text-ods-text-secondary" }) })
3698
3624
  };
3699
3625
  case "free":
3700
3626
  return {
3701
3627
  text: text || "Free",
3702
- icon: /* @__PURE__ */ jsx25("div", { className: "w-4 h-4 bg-ods-accent rounded-sm flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx25("span", { className: "text-ods-text-on-accent text-[8px] font-bold", children: "$" }) })
3628
+ icon: /* @__PURE__ */ jsx24("div", { className: "w-4 h-4 bg-ods-accent rounded-sm flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx24("span", { className: "text-ods-text-on-accent text-[8px] font-bold", children: "$" }) })
3703
3629
  };
3704
3630
  case "freemium":
3705
3631
  return {
3706
3632
  text: text || "Freemium",
3707
- icon: /* @__PURE__ */ jsx25("div", { className: "w-4 h-4 bg-ods-accent rounded-sm flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx25("span", { className: "text-ods-text-on-accent text-[8px] font-bold", children: "$" }) })
3633
+ icon: /* @__PURE__ */ jsx24("div", { className: "w-4 h-4 bg-ods-accent rounded-sm flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx24("span", { className: "text-ods-text-on-accent text-[8px] font-bold", children: "$" }) })
3708
3634
  };
3709
3635
  case "paid":
3710
3636
  return {
3711
3637
  text: text || "Paid",
3712
- icon: /* @__PURE__ */ jsx25("div", { className: "w-4 h-4 bg-ods-border rounded-sm flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx25(CoinsIcon2, { width: 10, height: 10, className: "text-ods-text-secondary" }) })
3638
+ icon: /* @__PURE__ */ jsx24("div", { className: "w-4 h-4 bg-ods-border rounded-sm flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx24(CoinsIcon2, { width: 10, height: 10, className: "text-ods-text-secondary" }) })
3713
3639
  };
3714
3640
  case "enterprise":
3715
3641
  return {
3716
3642
  text: text || "Enterprise",
3717
- icon: /* @__PURE__ */ jsx25("div", { className: "w-4 h-4 bg-ods-accent rounded-sm flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx25("span", { className: "text-ods-text-on-accent text-[8px] font-bold", children: "E" }) })
3643
+ icon: /* @__PURE__ */ jsx24("div", { className: "w-4 h-4 bg-ods-accent rounded-sm flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx24("span", { className: "text-ods-text-on-accent text-[8px] font-bold", children: "E" }) })
3718
3644
  };
3719
3645
  case "recommended":
3720
3646
  return {
3721
3647
  text: text || "Recommended",
3722
- icon: /* @__PURE__ */ jsx25("div", { className: "w-4 h-4 bg-ods-accent rounded-sm flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx25("span", { className: "text-ods-text-on-accent text-[8px] font-bold", children: "\u2605" }) })
3648
+ icon: /* @__PURE__ */ jsx24("div", { className: "w-4 h-4 bg-ods-accent rounded-sm flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx24("span", { className: "text-ods-text-on-accent text-[8px] font-bold", children: "\u2605" }) })
3723
3649
  };
3724
3650
  case "classification":
3725
3651
  const classificationType = text?.toLowerCase();
3726
3652
  if (classificationType === "open_source") {
3727
3653
  return {
3728
3654
  text: "Open Source",
3729
- icon: /* @__PURE__ */ jsx25("div", { className: "w-4 h-4 bg-ods-accent rounded-sm flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx25(OpenSourceIcon2, { width: 10, height: 10, className: "text-ods-text-on-accent" }) })
3655
+ icon: /* @__PURE__ */ jsx24("div", { className: "w-4 h-4 bg-ods-accent rounded-sm flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx24(OpenSourceIcon2, { width: 10, height: 10, className: "text-ods-text-on-accent" }) })
3730
3656
  };
3731
3657
  } else if (classificationType === "commercial") {
3732
3658
  return {
3733
3659
  text: "Commercial Vendor",
3734
- icon: /* @__PURE__ */ jsx25("div", { className: "w-4 h-4 bg-ods-border rounded-sm flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx25(CoinsIcon2, { width: 10, height: 10, className: "text-ods-text-secondary" }) })
3660
+ icon: /* @__PURE__ */ jsx24("div", { className: "w-4 h-4 bg-ods-border rounded-sm flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx24(CoinsIcon2, { width: 10, height: 10, className: "text-ods-text-secondary" }) })
3735
3661
  };
3736
3662
  } else if (classificationType === "openframe_selected") {
3737
3663
  return {
3738
3664
  text: "OpenFrame Selected",
3739
- icon: /* @__PURE__ */ jsx25(OpenFrameLogo2, { lowerPathColor: "currentColor", upperPathColor: "currentColor", className: "h-4 w-4 text-ods-accent" })
3665
+ icon: /* @__PURE__ */ jsx24(OpenFrameLogo2, { lowerPathColor: "currentColor", upperPathColor: "currentColor", className: "h-4 w-4 text-ods-accent" })
3740
3666
  };
3741
3667
  } else {
3742
3668
  return {
3743
3669
  text: text || "Classification",
3744
- icon: /* @__PURE__ */ jsx25("div", { className: "w-4 h-4 bg-ods-accent rounded-sm flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx25("span", { className: "text-ods-text-on-accent text-[8px] font-bold", children: "C" }) })
3670
+ icon: /* @__PURE__ */ jsx24("div", { className: "w-4 h-4 bg-ods-accent rounded-sm flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx24("span", { className: "text-ods-text-on-accent text-[8px] font-bold", children: "C" }) })
3745
3671
  };
3746
3672
  }
3747
3673
  case "openframe_selected":
3748
3674
  return {
3749
3675
  text: text || "OpenFrame Selected",
3750
- icon: /* @__PURE__ */ jsx25(OpenFrameLogo2, { lowerPathColor: "currentColor", upperPathColor: "currentColor", className: "h-4 w-4 text-ods-accent" })
3676
+ icon: /* @__PURE__ */ jsx24(OpenFrameLogo2, { lowerPathColor: "currentColor", upperPathColor: "currentColor", className: "h-4 w-4 text-ods-accent" })
3751
3677
  };
3752
3678
  default:
3753
3679
  return {
@@ -3757,9 +3683,9 @@ function VendorTag({
3757
3683
  }
3758
3684
  };
3759
3685
  const { text: displayText, icon, textColor } = getTagContent();
3760
- return /* @__PURE__ */ jsxs22("div", { className: cn(baseClasses, className, hidden && "invisible"), children: [
3686
+ return /* @__PURE__ */ jsxs21("div", { className: cn(baseClasses, className, hidden && "invisible"), children: [
3761
3687
  icon,
3762
- /* @__PURE__ */ jsx25("span", { className: cn(
3688
+ /* @__PURE__ */ jsx24("span", { className: cn(
3763
3689
  "text-h5 font-semibold",
3764
3690
  textColor ? textColor : "text-ods-text-primary"
3765
3691
  ), children: displayText })
@@ -3767,12 +3693,12 @@ function VendorTag({
3767
3693
  }
3768
3694
 
3769
3695
  // src/components/selection-source-badge.tsx
3770
- import { jsx as jsx26 } from "react/jsx-runtime";
3696
+ import { jsx as jsx25 } from "react/jsx-runtime";
3771
3697
  function SelectionSourceBadge({ source, hidden = false }) {
3772
3698
  if (!source) {
3773
3699
  return null;
3774
3700
  }
3775
- return /* @__PURE__ */ jsx26(
3701
+ return /* @__PURE__ */ jsx25(
3776
3702
  VendorTag,
3777
3703
  {
3778
3704
  type: source?.toLowerCase(),
@@ -3785,13 +3711,13 @@ function SelectionSourceBadge({ source, hidden = false }) {
3785
3711
 
3786
3712
  // src/components/loading/content-skeleton.tsx
3787
3713
  init_cn();
3788
- import { jsx as jsx27, jsxs as jsxs23 } from "react/jsx-runtime";
3714
+ import { jsx as jsx26, jsxs as jsxs22 } from "react/jsx-runtime";
3789
3715
  function ParagraphSkeleton({
3790
3716
  className,
3791
3717
  lines = 4
3792
3718
  }) {
3793
3719
  const lineWidths = ["w-full", "w-full", "w-5/6", "w-3/4", "w-4/5", "w-2/3"];
3794
- return /* @__PURE__ */ jsx27("div", { className: cn("space-y-2", className), children: Array.from({ length: lines }).map((_, index) => /* @__PURE__ */ jsx27(
3720
+ return /* @__PURE__ */ jsx26("div", { className: cn("space-y-2", className), children: Array.from({ length: lines }).map((_, index) => /* @__PURE__ */ jsx26(
3795
3721
  TextSkeleton.Body,
3796
3722
  {
3797
3723
  className: lineWidths[index % lineWidths.length]
@@ -3805,14 +3731,14 @@ function ListSkeleton({
3805
3731
  showIcons = false,
3806
3732
  showActions = false
3807
3733
  }) {
3808
- return /* @__PURE__ */ jsx27("div", { className: cn("space-y-3", className), children: Array.from({ length: items }).map((_, index) => /* @__PURE__ */ jsxs23("div", { className: "flex items-center justify-between", children: [
3809
- /* @__PURE__ */ jsxs23("div", { className: "flex items-center gap-3", children: [
3810
- showIcons && /* @__PURE__ */ jsx27(MediaSkeleton.Icon, { size: "sm" }),
3811
- /* @__PURE__ */ jsx27(TextSkeleton.Body, { className: "w-32 md:w-48" })
3734
+ return /* @__PURE__ */ jsx26("div", { className: cn("space-y-3", className), children: Array.from({ length: items }).map((_, index) => /* @__PURE__ */ jsxs22("div", { className: "flex items-center justify-between", children: [
3735
+ /* @__PURE__ */ jsxs22("div", { className: "flex items-center gap-3", children: [
3736
+ showIcons && /* @__PURE__ */ jsx26(MediaSkeleton.Icon, { size: "sm" }),
3737
+ /* @__PURE__ */ jsx26(TextSkeleton.Body, { className: "w-32 md:w-48" })
3812
3738
  ] }),
3813
- showActions && /* @__PURE__ */ jsxs23("div", { className: "flex items-center gap-2", children: [
3814
- /* @__PURE__ */ jsx27(TextSkeleton.Caption, { className: "w-8" }),
3815
- /* @__PURE__ */ jsx27(UnifiedSkeleton, { variant: "default", className: "w-4 h-4" })
3739
+ showActions && /* @__PURE__ */ jsxs22("div", { className: "flex items-center gap-2", children: [
3740
+ /* @__PURE__ */ jsx26(TextSkeleton.Caption, { className: "w-8" }),
3741
+ /* @__PURE__ */ jsx26(UnifiedSkeleton, { variant: "default", className: "w-4 h-4" })
3816
3742
  ] })
3817
3743
  ] }, index)) });
3818
3744
  }
@@ -3821,14 +3747,14 @@ function TableSkeleton({
3821
3747
  rows = 5,
3822
3748
  columns = 4
3823
3749
  }) {
3824
- return /* @__PURE__ */ jsxs23("div", { className: cn("space-y-4", className), children: [
3825
- /* @__PURE__ */ jsx27("div", { className: "grid gap-4", style: { gridTemplateColumns: `repeat(${columns}, 1fr)` }, children: Array.from({ length: columns }).map((_, index) => /* @__PURE__ */ jsx27(TextSkeleton.Subheading, { className: "w-3/4" }, index)) }),
3826
- /* @__PURE__ */ jsx27("div", { className: "space-y-3", children: Array.from({ length: rows }).map((_, rowIndex) => /* @__PURE__ */ jsx27(
3750
+ return /* @__PURE__ */ jsxs22("div", { className: cn("space-y-4", className), children: [
3751
+ /* @__PURE__ */ jsx26("div", { className: "grid gap-4", style: { gridTemplateColumns: `repeat(${columns}, 1fr)` }, children: Array.from({ length: columns }).map((_, index) => /* @__PURE__ */ jsx26(TextSkeleton.Subheading, { className: "w-3/4" }, index)) }),
3752
+ /* @__PURE__ */ jsx26("div", { className: "space-y-3", children: Array.from({ length: rows }).map((_, rowIndex) => /* @__PURE__ */ jsx26(
3827
3753
  "div",
3828
3754
  {
3829
3755
  className: "grid gap-4 py-2 border-b border-ods-divider",
3830
3756
  style: { gridTemplateColumns: `repeat(${columns}, 1fr)` },
3831
- children: Array.from({ length: columns }).map((_2, colIndex) => /* @__PURE__ */ jsx27(TextSkeleton.Body, { className: "w-2/3" }, colIndex))
3757
+ children: Array.from({ length: columns }).map((_2, colIndex) => /* @__PURE__ */ jsx26(TextSkeleton.Body, { className: "w-2/3" }, colIndex))
3832
3758
  },
3833
3759
  rowIndex
3834
3760
  )) })
@@ -3838,15 +3764,15 @@ function FormSkeleton({
3838
3764
  className,
3839
3765
  fields = 4
3840
3766
  }) {
3841
- return /* @__PURE__ */ jsxs23("div", { className: cn("space-y-6", className), children: [
3842
- Array.from({ length: fields }).map((_, index) => /* @__PURE__ */ jsxs23("div", { className: "space-y-2", children: [
3843
- /* @__PURE__ */ jsx27(TextSkeleton.Body, { className: "w-24" }),
3844
- /* @__PURE__ */ jsx27(InteractiveSkeleton.Input, {}),
3845
- index % 3 === 0 && /* @__PURE__ */ jsx27(TextSkeleton.Caption, { className: "w-48" })
3767
+ return /* @__PURE__ */ jsxs22("div", { className: cn("space-y-6", className), children: [
3768
+ Array.from({ length: fields }).map((_, index) => /* @__PURE__ */ jsxs22("div", { className: "space-y-2", children: [
3769
+ /* @__PURE__ */ jsx26(TextSkeleton.Body, { className: "w-24" }),
3770
+ /* @__PURE__ */ jsx26(InteractiveSkeleton.Input, {}),
3771
+ index % 3 === 0 && /* @__PURE__ */ jsx26(TextSkeleton.Caption, { className: "w-48" })
3846
3772
  ] }, index)),
3847
- /* @__PURE__ */ jsxs23("div", { className: "flex gap-4 pt-4", children: [
3848
- /* @__PURE__ */ jsx27(InteractiveSkeleton.Button, {}),
3849
- /* @__PURE__ */ jsx27(InteractiveSkeleton.Button, { className: "bg-ods-border" })
3773
+ /* @__PURE__ */ jsxs22("div", { className: "flex gap-4 pt-4", children: [
3774
+ /* @__PURE__ */ jsx26(InteractiveSkeleton.Button, {}),
3775
+ /* @__PURE__ */ jsx26(InteractiveSkeleton.Button, { className: "bg-ods-border" })
3850
3776
  ] })
3851
3777
  ] });
3852
3778
  }
@@ -3855,7 +3781,7 @@ function NavigationSkeleton({
3855
3781
  items = 6,
3856
3782
  horizontal = true
3857
3783
  }) {
3858
- return /* @__PURE__ */ jsx27(
3784
+ return /* @__PURE__ */ jsx26(
3859
3785
  "nav",
3860
3786
  {
3861
3787
  className: cn(
@@ -3865,7 +3791,7 @@ function NavigationSkeleton({
3865
3791
  ),
3866
3792
  role: "status",
3867
3793
  "aria-label": "Loading navigation",
3868
- children: Array.from({ length: items }).map((_, index) => /* @__PURE__ */ jsx27(TextSkeleton.Body, { className: "w-16 md:w-20" }, index))
3794
+ children: Array.from({ length: items }).map((_, index) => /* @__PURE__ */ jsx26(TextSkeleton.Body, { className: "w-16 md:w-20" }, index))
3869
3795
  }
3870
3796
  );
3871
3797
  }
@@ -3874,32 +3800,32 @@ function ProfileSkeleton({
3874
3800
  showBio = true,
3875
3801
  showStats = true
3876
3802
  }) {
3877
- return /* @__PURE__ */ jsxs23("div", { className: cn("space-y-4", className), children: [
3878
- /* @__PURE__ */ jsxs23("div", { className: "flex items-start gap-4", children: [
3879
- /* @__PURE__ */ jsx27(MediaSkeleton.Avatar, { size: "lg" }),
3880
- /* @__PURE__ */ jsxs23("div", { className: "flex-1 space-y-2", children: [
3881
- /* @__PURE__ */ jsx27(TextSkeleton.Subheading, { className: "w-1/2" }),
3882
- /* @__PURE__ */ jsx27(TextSkeleton.Caption, { className: "w-1/3" }),
3883
- /* @__PURE__ */ jsx27(TextSkeleton.Body, { className: "w-2/3" })
3803
+ return /* @__PURE__ */ jsxs22("div", { className: cn("space-y-4", className), children: [
3804
+ /* @__PURE__ */ jsxs22("div", { className: "flex items-start gap-4", children: [
3805
+ /* @__PURE__ */ jsx26(MediaSkeleton.Avatar, { size: "lg" }),
3806
+ /* @__PURE__ */ jsxs22("div", { className: "flex-1 space-y-2", children: [
3807
+ /* @__PURE__ */ jsx26(TextSkeleton.Subheading, { className: "w-1/2" }),
3808
+ /* @__PURE__ */ jsx26(TextSkeleton.Caption, { className: "w-1/3" }),
3809
+ /* @__PURE__ */ jsx26(TextSkeleton.Body, { className: "w-2/3" })
3884
3810
  ] })
3885
3811
  ] }),
3886
- showBio && /* @__PURE__ */ jsxs23("div", { className: "space-y-2", children: [
3887
- /* @__PURE__ */ jsx27(TextSkeleton.Body, { className: "w-full" }),
3888
- /* @__PURE__ */ jsx27(TextSkeleton.Body, { className: "w-4/5" }),
3889
- /* @__PURE__ */ jsx27(TextSkeleton.Body, { className: "w-3/4" })
3812
+ showBio && /* @__PURE__ */ jsxs22("div", { className: "space-y-2", children: [
3813
+ /* @__PURE__ */ jsx26(TextSkeleton.Body, { className: "w-full" }),
3814
+ /* @__PURE__ */ jsx26(TextSkeleton.Body, { className: "w-4/5" }),
3815
+ /* @__PURE__ */ jsx26(TextSkeleton.Body, { className: "w-3/4" })
3890
3816
  ] }),
3891
- showStats && /* @__PURE__ */ jsxs23("div", { className: "flex gap-6", children: [
3892
- /* @__PURE__ */ jsxs23("div", { className: "text-center", children: [
3893
- /* @__PURE__ */ jsx27(TextSkeleton.Subheading, { className: "w-8 mx-auto" }),
3894
- /* @__PURE__ */ jsx27(TextSkeleton.Caption, { className: "w-12 mx-auto" })
3817
+ showStats && /* @__PURE__ */ jsxs22("div", { className: "flex gap-6", children: [
3818
+ /* @__PURE__ */ jsxs22("div", { className: "text-center", children: [
3819
+ /* @__PURE__ */ jsx26(TextSkeleton.Subheading, { className: "w-8 mx-auto" }),
3820
+ /* @__PURE__ */ jsx26(TextSkeleton.Caption, { className: "w-12 mx-auto" })
3895
3821
  ] }),
3896
- /* @__PURE__ */ jsxs23("div", { className: "text-center", children: [
3897
- /* @__PURE__ */ jsx27(TextSkeleton.Subheading, { className: "w-8 mx-auto" }),
3898
- /* @__PURE__ */ jsx27(TextSkeleton.Caption, { className: "w-16 mx-auto" })
3822
+ /* @__PURE__ */ jsxs22("div", { className: "text-center", children: [
3823
+ /* @__PURE__ */ jsx26(TextSkeleton.Subheading, { className: "w-8 mx-auto" }),
3824
+ /* @__PURE__ */ jsx26(TextSkeleton.Caption, { className: "w-16 mx-auto" })
3899
3825
  ] }),
3900
- /* @__PURE__ */ jsxs23("div", { className: "text-center", children: [
3901
- /* @__PURE__ */ jsx27(TextSkeleton.Subheading, { className: "w-8 mx-auto" }),
3902
- /* @__PURE__ */ jsx27(TextSkeleton.Caption, { className: "w-14 mx-auto" })
3826
+ /* @__PURE__ */ jsxs22("div", { className: "text-center", children: [
3827
+ /* @__PURE__ */ jsx26(TextSkeleton.Subheading, { className: "w-8 mx-auto" }),
3828
+ /* @__PURE__ */ jsx26(TextSkeleton.Caption, { className: "w-14 mx-auto" })
3903
3829
  ] })
3904
3830
  ] })
3905
3831
  ] });
@@ -3909,34 +3835,34 @@ function CommentSkeleton({
3909
3835
  showRating = false,
3910
3836
  showReplies = false
3911
3837
  }) {
3912
- return /* @__PURE__ */ jsxs23("div", { className: cn("space-y-3", className), children: [
3913
- /* @__PURE__ */ jsxs23("div", { className: "flex items-center gap-3", children: [
3914
- /* @__PURE__ */ jsx27(MediaSkeleton.Avatar, { size: "sm" }),
3915
- /* @__PURE__ */ jsxs23("div", { className: "flex-1 flex items-center gap-4", children: [
3916
- /* @__PURE__ */ jsx27(TextSkeleton.Body, { className: "w-24" }),
3917
- /* @__PURE__ */ jsx27(TextSkeleton.Caption, { className: "w-16" }),
3918
- showRating && /* @__PURE__ */ jsx27("div", { className: "flex gap-1", children: Array.from({ length: 5 }).map((_, i) => /* @__PURE__ */ jsx27(MediaSkeleton.Icon, { size: "sm" }, i)) })
3838
+ return /* @__PURE__ */ jsxs22("div", { className: cn("space-y-3", className), children: [
3839
+ /* @__PURE__ */ jsxs22("div", { className: "flex items-center gap-3", children: [
3840
+ /* @__PURE__ */ jsx26(MediaSkeleton.Avatar, { size: "sm" }),
3841
+ /* @__PURE__ */ jsxs22("div", { className: "flex-1 flex items-center gap-4", children: [
3842
+ /* @__PURE__ */ jsx26(TextSkeleton.Body, { className: "w-24" }),
3843
+ /* @__PURE__ */ jsx26(TextSkeleton.Caption, { className: "w-16" }),
3844
+ showRating && /* @__PURE__ */ jsx26("div", { className: "flex gap-1", children: Array.from({ length: 5 }).map((_, i) => /* @__PURE__ */ jsx26(MediaSkeleton.Icon, { size: "sm" }, i)) })
3919
3845
  ] })
3920
3846
  ] }),
3921
- /* @__PURE__ */ jsxs23("div", { className: "ml-11 space-y-2", children: [
3922
- /* @__PURE__ */ jsx27(TextSkeleton.Body, { className: "w-full" }),
3923
- /* @__PURE__ */ jsx27(TextSkeleton.Body, { className: "w-3/4" }),
3924
- /* @__PURE__ */ jsx27(TextSkeleton.Body, { className: "w-1/2" })
3847
+ /* @__PURE__ */ jsxs22("div", { className: "ml-11 space-y-2", children: [
3848
+ /* @__PURE__ */ jsx26(TextSkeleton.Body, { className: "w-full" }),
3849
+ /* @__PURE__ */ jsx26(TextSkeleton.Body, { className: "w-3/4" }),
3850
+ /* @__PURE__ */ jsx26(TextSkeleton.Body, { className: "w-1/2" })
3925
3851
  ] }),
3926
- /* @__PURE__ */ jsxs23("div", { className: "ml-11 flex gap-4", children: [
3927
- /* @__PURE__ */ jsx27(TextSkeleton.Caption, { className: "w-12" }),
3928
- /* @__PURE__ */ jsx27(TextSkeleton.Caption, { className: "w-16" }),
3929
- /* @__PURE__ */ jsx27(TextSkeleton.Caption, { className: "w-8" })
3852
+ /* @__PURE__ */ jsxs22("div", { className: "ml-11 flex gap-4", children: [
3853
+ /* @__PURE__ */ jsx26(TextSkeleton.Caption, { className: "w-12" }),
3854
+ /* @__PURE__ */ jsx26(TextSkeleton.Caption, { className: "w-16" }),
3855
+ /* @__PURE__ */ jsx26(TextSkeleton.Caption, { className: "w-8" })
3930
3856
  ] }),
3931
- showReplies && /* @__PURE__ */ jsx27("div", { className: "ml-11 pl-4 border-l border-ods-divider space-y-4", children: Array.from({ length: 2 }).map((_, index) => /* @__PURE__ */ jsxs23("div", { className: "space-y-2", children: [
3932
- /* @__PURE__ */ jsxs23("div", { className: "flex items-center gap-3", children: [
3933
- /* @__PURE__ */ jsx27(MediaSkeleton.Avatar, { size: "sm" }),
3934
- /* @__PURE__ */ jsx27(TextSkeleton.Body, { className: "w-20" }),
3935
- /* @__PURE__ */ jsx27(TextSkeleton.Caption, { className: "w-12" })
3857
+ showReplies && /* @__PURE__ */ jsx26("div", { className: "ml-11 pl-4 border-l border-ods-divider space-y-4", children: Array.from({ length: 2 }).map((_, index) => /* @__PURE__ */ jsxs22("div", { className: "space-y-2", children: [
3858
+ /* @__PURE__ */ jsxs22("div", { className: "flex items-center gap-3", children: [
3859
+ /* @__PURE__ */ jsx26(MediaSkeleton.Avatar, { size: "sm" }),
3860
+ /* @__PURE__ */ jsx26(TextSkeleton.Body, { className: "w-20" }),
3861
+ /* @__PURE__ */ jsx26(TextSkeleton.Caption, { className: "w-12" })
3936
3862
  ] }),
3937
- /* @__PURE__ */ jsxs23("div", { className: "ml-11", children: [
3938
- /* @__PURE__ */ jsx27(TextSkeleton.Body, { className: "w-full" }),
3939
- /* @__PURE__ */ jsx27(TextSkeleton.Body, { className: "w-2/3" })
3863
+ /* @__PURE__ */ jsxs22("div", { className: "ml-11", children: [
3864
+ /* @__PURE__ */ jsx26(TextSkeleton.Body, { className: "w-full" }),
3865
+ /* @__PURE__ */ jsx26(TextSkeleton.Body, { className: "w-2/3" })
3940
3866
  ] })
3941
3867
  ] }, index)) })
3942
3868
  ] });
@@ -3948,35 +3874,35 @@ function FeatureListSkeleton({
3948
3874
  grouped = false
3949
3875
  }) {
3950
3876
  if (grouped) {
3951
- return /* @__PURE__ */ jsx27("div", { className: cn("space-y-6", className), children: Array.from({ length: 3 }).map((_, groupIndex) => /* @__PURE__ */ jsxs23("div", { className: "space-y-3", children: [
3952
- /* @__PURE__ */ jsx27(TextSkeleton.Subheading, { className: "w-1/3" }),
3953
- /* @__PURE__ */ jsx27("div", { className: "space-y-2", children: Array.from({ length: features / 3 }).map((_2, featureIndex) => /* @__PURE__ */ jsxs23("div", { className: "flex items-center gap-3", children: [
3954
- showIcons && /* @__PURE__ */ jsx27(MediaSkeleton.Icon, { size: "sm" }),
3955
- /* @__PURE__ */ jsx27(TextSkeleton.Body, { className: "w-2/3" })
3877
+ return /* @__PURE__ */ jsx26("div", { className: cn("space-y-6", className), children: Array.from({ length: 3 }).map((_, groupIndex) => /* @__PURE__ */ jsxs22("div", { className: "space-y-3", children: [
3878
+ /* @__PURE__ */ jsx26(TextSkeleton.Subheading, { className: "w-1/3" }),
3879
+ /* @__PURE__ */ jsx26("div", { className: "space-y-2", children: Array.from({ length: features / 3 }).map((_2, featureIndex) => /* @__PURE__ */ jsxs22("div", { className: "flex items-center gap-3", children: [
3880
+ showIcons && /* @__PURE__ */ jsx26(MediaSkeleton.Icon, { size: "sm" }),
3881
+ /* @__PURE__ */ jsx26(TextSkeleton.Body, { className: "w-2/3" })
3956
3882
  ] }, featureIndex)) })
3957
3883
  ] }, groupIndex)) });
3958
3884
  }
3959
- return /* @__PURE__ */ jsx27("div", { className: cn("space-y-3", className), children: Array.from({ length: features }).map((_, index) => /* @__PURE__ */ jsxs23("div", { className: "flex items-center gap-3", children: [
3960
- showIcons && /* @__PURE__ */ jsx27(MediaSkeleton.Icon, { size: "sm" }),
3961
- /* @__PURE__ */ jsx27(TextSkeleton.Body, { className: "w-2/3" })
3885
+ return /* @__PURE__ */ jsx26("div", { className: cn("space-y-3", className), children: Array.from({ length: features }).map((_, index) => /* @__PURE__ */ jsxs22("div", { className: "flex items-center gap-3", children: [
3886
+ showIcons && /* @__PURE__ */ jsx26(MediaSkeleton.Icon, { size: "sm" }),
3887
+ /* @__PURE__ */ jsx26(TextSkeleton.Body, { className: "w-2/3" })
3962
3888
  ] }, index)) });
3963
3889
  }
3964
3890
  function TimelineSkeleton({
3965
3891
  className,
3966
3892
  items = 5
3967
3893
  }) {
3968
- return /* @__PURE__ */ jsx27("div", { className: cn("space-y-6", className), children: Array.from({ length: items }).map((_, index) => /* @__PURE__ */ jsxs23("div", { className: "flex gap-4", children: [
3969
- /* @__PURE__ */ jsxs23("div", { className: "flex flex-col items-center", children: [
3970
- /* @__PURE__ */ jsx27(MediaSkeleton.Icon, { size: "sm" }),
3971
- index < items - 1 && /* @__PURE__ */ jsx27("div", { className: "w-px h-12 bg-ods-border mt-2" })
3894
+ return /* @__PURE__ */ jsx26("div", { className: cn("space-y-6", className), children: Array.from({ length: items }).map((_, index) => /* @__PURE__ */ jsxs22("div", { className: "flex gap-4", children: [
3895
+ /* @__PURE__ */ jsxs22("div", { className: "flex flex-col items-center", children: [
3896
+ /* @__PURE__ */ jsx26(MediaSkeleton.Icon, { size: "sm" }),
3897
+ index < items - 1 && /* @__PURE__ */ jsx26("div", { className: "w-px h-12 bg-ods-border mt-2" })
3972
3898
  ] }),
3973
- /* @__PURE__ */ jsxs23("div", { className: "flex-1 space-y-2", children: [
3974
- /* @__PURE__ */ jsxs23("div", { className: "flex items-center gap-3", children: [
3975
- /* @__PURE__ */ jsx27(TextSkeleton.Body, { className: "w-1/3" }),
3976
- /* @__PURE__ */ jsx27(TextSkeleton.Caption, { className: "w-16" })
3899
+ /* @__PURE__ */ jsxs22("div", { className: "flex-1 space-y-2", children: [
3900
+ /* @__PURE__ */ jsxs22("div", { className: "flex items-center gap-3", children: [
3901
+ /* @__PURE__ */ jsx26(TextSkeleton.Body, { className: "w-1/3" }),
3902
+ /* @__PURE__ */ jsx26(TextSkeleton.Caption, { className: "w-16" })
3977
3903
  ] }),
3978
- /* @__PURE__ */ jsx27(TextSkeleton.Body, { className: "w-full" }),
3979
- /* @__PURE__ */ jsx27(TextSkeleton.Body, { className: "w-3/4" })
3904
+ /* @__PURE__ */ jsx26(TextSkeleton.Body, { className: "w-full" }),
3905
+ /* @__PURE__ */ jsx26(TextSkeleton.Body, { className: "w-3/4" })
3980
3906
  ] })
3981
3907
  ] }, index)) });
3982
3908
  }
@@ -3984,54 +3910,54 @@ function PricingSkeleton({
3984
3910
  className,
3985
3911
  plans = 3
3986
3912
  }) {
3987
- return /* @__PURE__ */ jsx27("div", { className: cn(
3913
+ return /* @__PURE__ */ jsx26("div", { className: cn(
3988
3914
  "grid gap-6",
3989
3915
  plans === 2 && "grid-cols-1 md:grid-cols-2",
3990
3916
  plans === 3 && "grid-cols-1 md:grid-cols-3",
3991
3917
  plans === 4 && "grid-cols-1 md:grid-cols-2 lg:grid-cols-4",
3992
3918
  className
3993
- ), children: Array.from({ length: plans }).map((_, index) => /* @__PURE__ */ jsx27("div", { className: "bg-ods-card border border-ods-border rounded-lg p-6", children: /* @__PURE__ */ jsxs23("div", { className: "space-y-4", children: [
3994
- /* @__PURE__ */ jsx27(TextSkeleton.Subheading, { className: "w-1/2" }),
3995
- /* @__PURE__ */ jsxs23("div", { className: "space-y-1", children: [
3996
- /* @__PURE__ */ jsx27(TextSkeleton.Heading, { className: "w-1/3" }),
3997
- /* @__PURE__ */ jsx27(TextSkeleton.Caption, { className: "w-1/4" })
3919
+ ), children: Array.from({ length: plans }).map((_, index) => /* @__PURE__ */ jsx26("div", { className: "bg-ods-card border border-ods-border rounded-lg p-6", children: /* @__PURE__ */ jsxs22("div", { className: "space-y-4", children: [
3920
+ /* @__PURE__ */ jsx26(TextSkeleton.Subheading, { className: "w-1/2" }),
3921
+ /* @__PURE__ */ jsxs22("div", { className: "space-y-1", children: [
3922
+ /* @__PURE__ */ jsx26(TextSkeleton.Heading, { className: "w-1/3" }),
3923
+ /* @__PURE__ */ jsx26(TextSkeleton.Caption, { className: "w-1/4" })
3998
3924
  ] }),
3999
- /* @__PURE__ */ jsx27("div", { className: "space-y-3 py-4", children: Array.from({ length: 5 }).map((_2, featureIndex) => /* @__PURE__ */ jsxs23("div", { className: "flex items-center gap-2", children: [
4000
- /* @__PURE__ */ jsx27(MediaSkeleton.Icon, { size: "sm" }),
4001
- /* @__PURE__ */ jsx27(TextSkeleton.Body, { className: "w-3/4" })
3925
+ /* @__PURE__ */ jsx26("div", { className: "space-y-3 py-4", children: Array.from({ length: 5 }).map((_2, featureIndex) => /* @__PURE__ */ jsxs22("div", { className: "flex items-center gap-2", children: [
3926
+ /* @__PURE__ */ jsx26(MediaSkeleton.Icon, { size: "sm" }),
3927
+ /* @__PURE__ */ jsx26(TextSkeleton.Body, { className: "w-3/4" })
4002
3928
  ] }, featureIndex)) }),
4003
- /* @__PURE__ */ jsx27(InteractiveSkeleton.Button, { className: "w-full" })
3929
+ /* @__PURE__ */ jsx26(InteractiveSkeleton.Button, { className: "w-full" })
4004
3930
  ] }) }, index)) });
4005
3931
  }
4006
3932
 
4007
3933
  // src/components/profile/ProfileLoadingSkeleton.tsx
4008
3934
  init_cn();
4009
- import { jsx as jsx28, jsxs as jsxs24 } from "react/jsx-runtime";
3935
+ import { jsx as jsx27, jsxs as jsxs23 } from "react/jsx-runtime";
4010
3936
  function ProfileLoadingSkeleton({ className }) {
4011
- return /* @__PURE__ */ jsxs24("div", { className: cn("space-y-6", className), children: [
4012
- /* @__PURE__ */ jsxs24("div", { className: "flex items-center space-x-4", children: [
4013
- /* @__PURE__ */ jsx28("div", { className: "h-16 w-16 bg-ods-skeleton rounded-full animate-pulse" }),
4014
- /* @__PURE__ */ jsxs24("div", { className: "space-y-2", children: [
4015
- /* @__PURE__ */ jsx28("div", { className: "h-4 w-32 bg-ods-skeleton rounded animate-pulse" }),
4016
- /* @__PURE__ */ jsx28("div", { className: "h-3 w-24 bg-ods-skeleton rounded animate-pulse" })
3937
+ return /* @__PURE__ */ jsxs23("div", { className: cn("space-y-6", className), children: [
3938
+ /* @__PURE__ */ jsxs23("div", { className: "flex items-center space-x-4", children: [
3939
+ /* @__PURE__ */ jsx27("div", { className: "h-16 w-16 bg-ods-skeleton rounded-full animate-pulse" }),
3940
+ /* @__PURE__ */ jsxs23("div", { className: "space-y-2", children: [
3941
+ /* @__PURE__ */ jsx27("div", { className: "h-4 w-32 bg-ods-skeleton rounded animate-pulse" }),
3942
+ /* @__PURE__ */ jsx27("div", { className: "h-3 w-24 bg-ods-skeleton rounded animate-pulse" })
4017
3943
  ] })
4018
3944
  ] }),
4019
- /* @__PURE__ */ jsxs24("div", { className: "space-y-4", children: [
4020
- /* @__PURE__ */ jsx28("div", { className: "h-4 w-full bg-ods-skeleton rounded animate-pulse" }),
4021
- /* @__PURE__ */ jsx28("div", { className: "h-4 w-3/4 bg-ods-skeleton rounded animate-pulse" }),
4022
- /* @__PURE__ */ jsx28("div", { className: "h-4 w-1/2 bg-ods-skeleton rounded animate-pulse" })
3945
+ /* @__PURE__ */ jsxs23("div", { className: "space-y-4", children: [
3946
+ /* @__PURE__ */ jsx27("div", { className: "h-4 w-full bg-ods-skeleton rounded animate-pulse" }),
3947
+ /* @__PURE__ */ jsx27("div", { className: "h-4 w-3/4 bg-ods-skeleton rounded animate-pulse" }),
3948
+ /* @__PURE__ */ jsx27("div", { className: "h-4 w-1/2 bg-ods-skeleton rounded animate-pulse" })
4023
3949
  ] })
4024
3950
  ] });
4025
3951
  }
4026
3952
 
4027
3953
  // src/components/loading/msp-profile-form-skeleton.tsx
4028
3954
  init_cn();
4029
- import { jsx as jsx29, jsxs as jsxs25 } from "react/jsx-runtime";
3955
+ import { jsx as jsx28, jsxs as jsxs24 } from "react/jsx-runtime";
4030
3956
  function MspProfileFormSkeleton({
4031
3957
  className,
4032
3958
  fields = 4
4033
3959
  }) {
4034
- return /* @__PURE__ */ jsxs25(
3960
+ return /* @__PURE__ */ jsxs24(
4035
3961
  "div",
4036
3962
  {
4037
3963
  className: cn(
@@ -4041,13 +3967,13 @@ function MspProfileFormSkeleton({
4041
3967
  role: "status",
4042
3968
  "aria-label": "Loading MSP profile form",
4043
3969
  children: [
4044
- /* @__PURE__ */ jsxs25("div", { className: "flex flex-col space-y-2 h-full", children: [
4045
- /* @__PURE__ */ jsx29(TextSkeleton.Body, { className: "w-28" }),
4046
- /* @__PURE__ */ jsx29("div", { className: "flex-1 min-h-[180px] md:min-h-full", children: /* @__PURE__ */ jsx29(UnifiedSkeleton, { className: "w-full h-full rounded-lg", "aria-label": "Loading company logo" }) })
3970
+ /* @__PURE__ */ jsxs24("div", { className: "flex flex-col space-y-2 h-full", children: [
3971
+ /* @__PURE__ */ jsx28(TextSkeleton.Body, { className: "w-28" }),
3972
+ /* @__PURE__ */ jsx28("div", { className: "flex-1 min-h-[180px] md:min-h-full", children: /* @__PURE__ */ jsx28(UnifiedSkeleton, { className: "w-full h-full rounded-lg", "aria-label": "Loading company logo" }) })
4047
3973
  ] }),
4048
- /* @__PURE__ */ jsx29("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-4", children: Array.from({ length: fields }).map((_, idx) => /* @__PURE__ */ jsxs25("div", { className: "space-y-2 flex flex-col", children: [
4049
- /* @__PURE__ */ jsx29(TextSkeleton.Body, { className: "w-40" }),
4050
- /* @__PURE__ */ jsx29(InteractiveSkeleton.Input, {})
3974
+ /* @__PURE__ */ jsx28("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-4", children: Array.from({ length: fields }).map((_, idx) => /* @__PURE__ */ jsxs24("div", { className: "space-y-2 flex flex-col", children: [
3975
+ /* @__PURE__ */ jsx28(TextSkeleton.Body, { className: "w-40" }),
3976
+ /* @__PURE__ */ jsx28(InteractiveSkeleton.Input, {})
4051
3977
  ] }, idx)) })
4052
3978
  ]
4053
3979
  }
@@ -4056,9 +3982,9 @@ function MspProfileFormSkeleton({
4056
3982
 
4057
3983
  // src/components/loading/category-card-skeleton.tsx
4058
3984
  init_cn();
4059
- import { jsx as jsx30, jsxs as jsxs26 } from "react/jsx-runtime";
3985
+ import { jsx as jsx29, jsxs as jsxs25 } from "react/jsx-runtime";
4060
3986
  function CategoryCardSkeleton({ className }) {
4061
- return /* @__PURE__ */ jsxs26(
3987
+ return /* @__PURE__ */ jsxs25(
4062
3988
  "article",
4063
3989
  {
4064
3990
  className: cn(
@@ -4068,7 +3994,7 @@ function CategoryCardSkeleton({ className }) {
4068
3994
  role: "status",
4069
3995
  "aria-label": "Loading category card",
4070
3996
  children: [
4071
- /* @__PURE__ */ jsx30("div", { className: "flex gap-6 mb-8 justify-center items-center", children: Array.from({ length: 10 }).map((_, i) => /* @__PURE__ */ jsx30(
3997
+ /* @__PURE__ */ jsx29("div", { className: "flex gap-6 mb-8 justify-center items-center", children: Array.from({ length: 10 }).map((_, i) => /* @__PURE__ */ jsx29(
4072
3998
  UnifiedSkeleton,
4073
3999
  {
4074
4000
  variant: "circular",
@@ -4077,12 +4003,12 @@ function CategoryCardSkeleton({ className }) {
4077
4003
  },
4078
4004
  i
4079
4005
  )) }),
4080
- /* @__PURE__ */ jsxs26("div", { className: "flex-1 flex flex-col space-y-3", children: [
4081
- /* @__PURE__ */ jsx30(TextSkeleton.Heading, { className: "w-3/4" }),
4082
- /* @__PURE__ */ jsx30(TextSkeleton.Body, { className: "w-1/2" }),
4083
- /* @__PURE__ */ jsx30(TextSkeleton.Body, { className: "w-full" })
4006
+ /* @__PURE__ */ jsxs25("div", { className: "flex-1 flex flex-col space-y-3", children: [
4007
+ /* @__PURE__ */ jsx29(TextSkeleton.Heading, { className: "w-3/4" }),
4008
+ /* @__PURE__ */ jsx29(TextSkeleton.Body, { className: "w-1/2" }),
4009
+ /* @__PURE__ */ jsx29(TextSkeleton.Body, { className: "w-full" })
4084
4010
  ] }),
4085
- /* @__PURE__ */ jsx30("div", { className: "mt-4 flex justify-end", children: /* @__PURE__ */ jsx30(UnifiedSkeleton, { className: "w-12 h-12 rounded-[6px]", "aria-label": "Loading button" }) })
4011
+ /* @__PURE__ */ jsx29("div", { className: "mt-4 flex justify-end", children: /* @__PURE__ */ jsx29(UnifiedSkeleton, { className: "w-12 h-12 rounded-[6px]", "aria-label": "Loading button" }) })
4086
4012
  ]
4087
4013
  }
4088
4014
  );
@@ -4090,22 +4016,22 @@ function CategoryCardSkeleton({ className }) {
4090
4016
 
4091
4017
  // src/components/loading/category-vendor-selector-skeleton.tsx
4092
4018
  init_cn();
4093
- import { jsx as jsx31, jsxs as jsxs27 } from "react/jsx-runtime";
4019
+ import { jsx as jsx30, jsxs as jsxs26 } from "react/jsx-runtime";
4094
4020
  function CategoryVendorSelectorSkeleton({ subcategories = 3, className }) {
4095
- return /* @__PURE__ */ jsxs27(
4021
+ return /* @__PURE__ */ jsxs26(
4096
4022
  "div",
4097
4023
  {
4098
4024
  className: cn("bg-ods-card border border-ods-border rounded-lg p-6", className),
4099
4025
  role: "status",
4100
4026
  "aria-label": "Loading category section",
4101
4027
  children: [
4102
- /* @__PURE__ */ jsxs27("div", { className: "mb-6 space-y-2 max-w-xl", children: [
4103
- /* @__PURE__ */ jsx31(TextSkeleton.Heading, { className: "w-1/2" }),
4104
- /* @__PURE__ */ jsx31(TextSkeleton.Body, { className: "w-3/4" })
4028
+ /* @__PURE__ */ jsxs26("div", { className: "mb-6 space-y-2 max-w-xl", children: [
4029
+ /* @__PURE__ */ jsx30(TextSkeleton.Heading, { className: "w-1/2" }),
4030
+ /* @__PURE__ */ jsx30(TextSkeleton.Body, { className: "w-3/4" })
4105
4031
  ] }),
4106
- /* @__PURE__ */ jsx31("div", { className: "space-y-6", children: Array.from({ length: subcategories }).map((_, idx) => /* @__PURE__ */ jsxs27("div", { className: "space-y-2", children: [
4107
- /* @__PURE__ */ jsx31(TextSkeleton.Subheading, { className: "w-1/3" }),
4108
- /* @__PURE__ */ jsx31("div", { className: "grid grid-cols-2 md:grid-cols-3 gap-4", children: Array.from({ length: 2 }).map((__, j) => /* @__PURE__ */ jsx31(UnifiedSkeleton, { className: "h-20 rounded-lg" }, j)) })
4032
+ /* @__PURE__ */ jsx30("div", { className: "space-y-6", children: Array.from({ length: subcategories }).map((_, idx) => /* @__PURE__ */ jsxs26("div", { className: "space-y-2", children: [
4033
+ /* @__PURE__ */ jsx30(TextSkeleton.Subheading, { className: "w-1/3" }),
4034
+ /* @__PURE__ */ jsx30("div", { className: "grid grid-cols-2 md:grid-cols-3 gap-4", children: Array.from({ length: 2 }).map((__, j) => /* @__PURE__ */ jsx30(UnifiedSkeleton, { className: "h-20 rounded-lg" }, j)) })
4109
4035
  ] }, idx)) })
4110
4036
  ]
4111
4037
  }
@@ -4114,90 +4040,90 @@ function CategoryVendorSelectorSkeleton({ subcategories = 3, className }) {
4114
4040
 
4115
4041
  // src/components/loading/wizard-layout-skeleton.tsx
4116
4042
  init_cn();
4117
- import { jsx as jsx32, jsxs as jsxs28 } from "react/jsx-runtime";
4043
+ import { jsx as jsx31, jsxs as jsxs27 } from "react/jsx-runtime";
4118
4044
  function WizardLayoutSkeleton({ steps = 6, className }) {
4119
- return /* @__PURE__ */ jsxs28("div", { className: cn("space-y-6", className), role: "status", "aria-label": "Loading wizard layout", children: [
4120
- /* @__PURE__ */ jsx32("div", { className: "flex flex-wrap items-center gap-2", children: Array.from({ length: steps }).map((_, i) => /* @__PURE__ */ jsx32(UnifiedSkeleton, { className: "h-6 w-24 rounded" }, i)) }),
4121
- /* @__PURE__ */ jsxs28("div", { className: "space-y-2 max-w-2xl", children: [
4122
- /* @__PURE__ */ jsx32(TextSkeleton.Heading, { className: "w-2/3" }),
4123
- /* @__PURE__ */ jsx32(TextSkeleton.Body, { className: "w-1/2" })
4045
+ return /* @__PURE__ */ jsxs27("div", { className: cn("space-y-6", className), role: "status", "aria-label": "Loading wizard layout", children: [
4046
+ /* @__PURE__ */ jsx31("div", { className: "flex flex-wrap items-center gap-2", children: Array.from({ length: steps }).map((_, i) => /* @__PURE__ */ jsx31(UnifiedSkeleton, { className: "h-6 w-24 rounded" }, i)) }),
4047
+ /* @__PURE__ */ jsxs27("div", { className: "space-y-2 max-w-2xl", children: [
4048
+ /* @__PURE__ */ jsx31(TextSkeleton.Heading, { className: "w-2/3" }),
4049
+ /* @__PURE__ */ jsx31(TextSkeleton.Body, { className: "w-1/2" })
4124
4050
  ] }),
4125
- /* @__PURE__ */ jsxs28("div", { className: "flex justify-between mt-10", children: [
4126
- /* @__PURE__ */ jsx32(UnifiedSkeleton, { className: "h-10 w-24 rounded" }),
4127
- /* @__PURE__ */ jsx32(UnifiedSkeleton, { className: "h-10 w-32 rounded" })
4051
+ /* @__PURE__ */ jsxs27("div", { className: "flex justify-between mt-10", children: [
4052
+ /* @__PURE__ */ jsx31(UnifiedSkeleton, { className: "h-10 w-24 rounded" }),
4053
+ /* @__PURE__ */ jsx31(UnifiedSkeleton, { className: "h-10 w-32 rounded" })
4128
4054
  ] })
4129
4055
  ] });
4130
4056
  }
4131
4057
 
4132
4058
  // src/components/loading/margin-report-skeleton.tsx
4133
- import { jsx as jsx33, jsxs as jsxs29 } from "react/jsx-runtime";
4059
+ import { jsx as jsx32, jsxs as jsxs28 } from "react/jsx-runtime";
4134
4060
  function MarginReportSkeleton({ animate = true, description, overlayContent }) {
4135
- return /* @__PURE__ */ jsxs29("main", { className: `bg-ods-bg ${animate ? "animate-pulse" : ""} relative min-h-screen`, children: [
4136
- /* @__PURE__ */ jsxs29("div", { className: "max-w-[1920px] px-6 md:px-20 py-6 md:py-10 mx-auto space-y-10", children: [
4137
- /* @__PURE__ */ jsxs29("div", { className: "space-y-3", children: [
4138
- /* @__PURE__ */ jsx33("div", { className: "h-10 w-72 bg-ods-skeleton rounded" }),
4139
- /* @__PURE__ */ jsx33("div", { className: "h-4 w-80 bg-ods-skeleton rounded" })
4061
+ return /* @__PURE__ */ jsxs28("main", { className: `bg-ods-bg ${animate ? "animate-pulse" : ""} relative min-h-screen`, children: [
4062
+ /* @__PURE__ */ jsxs28("div", { className: "max-w-[1920px] px-6 md:px-20 py-6 md:py-10 mx-auto space-y-10", children: [
4063
+ /* @__PURE__ */ jsxs28("div", { className: "space-y-3", children: [
4064
+ /* @__PURE__ */ jsx32("div", { className: "h-10 w-72 bg-ods-skeleton rounded" }),
4065
+ /* @__PURE__ */ jsx32("div", { className: "h-4 w-80 bg-ods-skeleton rounded" })
4140
4066
  ] }),
4141
- /* @__PURE__ */ jsx33("div", { className: "grid grid-cols-1 md:grid-cols-3 gap-6", children: Array.from({ length: 3 }).map((_, i) => /* @__PURE__ */ jsx33("div", { className: "h-32 bg-ods-card border border-ods-border rounded" }, i)) }),
4142
- /* @__PURE__ */ jsxs29("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-6", children: [
4143
- /* @__PURE__ */ jsxs29("div", { className: "bg-ods-card border border-ods-border rounded-lg p-6 flex items-center gap-4 animate-pulse", children: [
4144
- /* @__PURE__ */ jsx33("div", { className: "w-14 h-14 rounded-lg bg-ods-skeleton" }),
4145
- /* @__PURE__ */ jsxs29("div", { className: "flex-1 space-y-2", children: [
4146
- /* @__PURE__ */ jsx33("div", { className: "h-4 bg-ods-skeleton rounded w-3/4" }),
4147
- /* @__PURE__ */ jsx33("div", { className: "h-3 bg-ods-skeleton rounded w-1/2" })
4067
+ /* @__PURE__ */ jsx32("div", { className: "grid grid-cols-1 md:grid-cols-3 gap-6", children: Array.from({ length: 3 }).map((_, i) => /* @__PURE__ */ jsx32("div", { className: "h-32 bg-ods-card border border-ods-border rounded" }, i)) }),
4068
+ /* @__PURE__ */ jsxs28("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-6", children: [
4069
+ /* @__PURE__ */ jsxs28("div", { className: "bg-ods-card border border-ods-border rounded-lg p-6 flex items-center gap-4 animate-pulse", children: [
4070
+ /* @__PURE__ */ jsx32("div", { className: "w-14 h-14 rounded-lg bg-ods-skeleton" }),
4071
+ /* @__PURE__ */ jsxs28("div", { className: "flex-1 space-y-2", children: [
4072
+ /* @__PURE__ */ jsx32("div", { className: "h-4 bg-ods-skeleton rounded w-3/4" }),
4073
+ /* @__PURE__ */ jsx32("div", { className: "h-3 bg-ods-skeleton rounded w-1/2" })
4148
4074
  ] })
4149
4075
  ] }),
4150
- /* @__PURE__ */ jsxs29("div", { className: "bg-ods-card border border-ods-border rounded-lg p-6 flex flex-col gap-4 animate-pulse", children: [
4151
- /* @__PURE__ */ jsxs29("div", { className: "flex items-center justify-between gap-4", children: [
4152
- /* @__PURE__ */ jsxs29("div", { className: "flex items-center gap-2", children: [
4153
- /* @__PURE__ */ jsx33("div", { className: "w-10 h-10 rounded-lg bg-ods-skeleton" }),
4154
- /* @__PURE__ */ jsxs29("div", { className: "space-y-1", children: [
4155
- /* @__PURE__ */ jsx33("div", { className: "h-4 w-32 bg-ods-skeleton rounded" }),
4156
- /* @__PURE__ */ jsx33("div", { className: "h-3 w-20 bg-ods-skeleton rounded" })
4076
+ /* @__PURE__ */ jsxs28("div", { className: "bg-ods-card border border-ods-border rounded-lg p-6 flex flex-col gap-4 animate-pulse", children: [
4077
+ /* @__PURE__ */ jsxs28("div", { className: "flex items-center justify-between gap-4", children: [
4078
+ /* @__PURE__ */ jsxs28("div", { className: "flex items-center gap-2", children: [
4079
+ /* @__PURE__ */ jsx32("div", { className: "w-10 h-10 rounded-lg bg-ods-skeleton" }),
4080
+ /* @__PURE__ */ jsxs28("div", { className: "space-y-1", children: [
4081
+ /* @__PURE__ */ jsx32("div", { className: "h-4 w-32 bg-ods-skeleton rounded" }),
4082
+ /* @__PURE__ */ jsx32("div", { className: "h-3 w-20 bg-ods-skeleton rounded" })
4157
4083
  ] })
4158
4084
  ] }),
4159
- /* @__PURE__ */ jsx33("div", { className: "h-6 w-36 bg-ods-skeleton rounded" })
4085
+ /* @__PURE__ */ jsx32("div", { className: "h-6 w-36 bg-ods-skeleton rounded" })
4160
4086
  ] }),
4161
- /* @__PURE__ */ jsx33("div", { className: "h-4 w-40 bg-ods-skeleton rounded mt-4" })
4087
+ /* @__PURE__ */ jsx32("div", { className: "h-4 w-40 bg-ods-skeleton rounded mt-4" })
4162
4088
  ] })
4163
4089
  ] }),
4164
- /* @__PURE__ */ jsx33("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-6", children: ["Commercial Stack", "Open-Source Stack"].map((label, idx) => /* @__PURE__ */ jsxs29("div", { className: "bg-ods-card border border-ods-border rounded-lg overflow-hidden flex flex-col animate-pulse", children: [
4165
- /* @__PURE__ */ jsxs29("div", { className: "flex items-center justify-between px-6 py-4", children: [
4166
- /* @__PURE__ */ jsx33("div", { className: "h-6 w-40 bg-ods-skeleton rounded" }),
4167
- /* @__PURE__ */ jsxs29("div", { className: "flex items-center gap-2", children: [
4168
- /* @__PURE__ */ jsx33("div", { className: "h-5 w-20 bg-ods-skeleton rounded" }),
4169
- /* @__PURE__ */ jsx33("div", { className: "h-4 w-10 bg-ods-skeleton rounded" })
4090
+ /* @__PURE__ */ jsx32("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-6", children: ["Commercial Stack", "Open-Source Stack"].map((label, idx) => /* @__PURE__ */ jsxs28("div", { className: "bg-ods-card border border-ods-border rounded-lg overflow-hidden flex flex-col animate-pulse", children: [
4091
+ /* @__PURE__ */ jsxs28("div", { className: "flex items-center justify-between px-6 py-4", children: [
4092
+ /* @__PURE__ */ jsx32("div", { className: "h-6 w-40 bg-ods-skeleton rounded" }),
4093
+ /* @__PURE__ */ jsxs28("div", { className: "flex items-center gap-2", children: [
4094
+ /* @__PURE__ */ jsx32("div", { className: "h-5 w-20 bg-ods-skeleton rounded" }),
4095
+ /* @__PURE__ */ jsx32("div", { className: "h-4 w-10 bg-ods-skeleton rounded" })
4170
4096
  ] })
4171
4097
  ] }),
4172
- /* @__PURE__ */ jsx33("div", { className: "flex-1 flex flex-col gap-3 p-3", children: Array.from({ length: 5 }).map((_, j) => /* @__PURE__ */ jsxs29("div", { className: "bg-ods-bg border border-ods-border rounded-lg px-4 py-3 flex items-center justify-between", children: [
4173
- /* @__PURE__ */ jsxs29("div", { className: "flex items-center gap-3 min-w-0", children: [
4174
- /* @__PURE__ */ jsx33("div", { className: "w-12 h-12 bg-ods-skeleton rounded-lg flex-shrink-0" }),
4175
- /* @__PURE__ */ jsxs29("div", { className: "flex flex-col min-w-0", children: [
4176
- /* @__PURE__ */ jsx33("div", { className: "h-4 w-32 bg-ods-skeleton rounded" }),
4177
- /* @__PURE__ */ jsx33("div", { className: "hidden md:block h-3 w-24 bg-ods-skeleton rounded mt-1" })
4098
+ /* @__PURE__ */ jsx32("div", { className: "flex-1 flex flex-col gap-3 p-3", children: Array.from({ length: 5 }).map((_, j) => /* @__PURE__ */ jsxs28("div", { className: "bg-ods-bg border border-ods-border rounded-lg px-4 py-3 flex items-center justify-between", children: [
4099
+ /* @__PURE__ */ jsxs28("div", { className: "flex items-center gap-3 min-w-0", children: [
4100
+ /* @__PURE__ */ jsx32("div", { className: "w-12 h-12 bg-ods-skeleton rounded-lg flex-shrink-0" }),
4101
+ /* @__PURE__ */ jsxs28("div", { className: "flex flex-col min-w-0", children: [
4102
+ /* @__PURE__ */ jsx32("div", { className: "h-4 w-32 bg-ods-skeleton rounded" }),
4103
+ /* @__PURE__ */ jsx32("div", { className: "hidden md:block h-3 w-24 bg-ods-skeleton rounded mt-1" })
4178
4104
  ] })
4179
4105
  ] }),
4180
- /* @__PURE__ */ jsxs29("div", { className: "flex items-center gap-1 flex-shrink-0", children: [
4181
- /* @__PURE__ */ jsx33("div", { className: "h-4 w-16 bg-ods-skeleton rounded" }),
4182
- /* @__PURE__ */ jsx33("div", { className: "h-3 w-8 bg-ods-skeleton rounded" })
4106
+ /* @__PURE__ */ jsxs28("div", { className: "flex items-center gap-1 flex-shrink-0", children: [
4107
+ /* @__PURE__ */ jsx32("div", { className: "h-4 w-16 bg-ods-skeleton rounded" }),
4108
+ /* @__PURE__ */ jsx32("div", { className: "h-3 w-8 bg-ods-skeleton rounded" })
4183
4109
  ] })
4184
4110
  ] }, j)) })
4185
4111
  ] }, idx)) }),
4186
- /* @__PURE__ */ jsx33("div", { className: "h-6 w-60 bg-ods-skeleton rounded" }),
4187
- /* @__PURE__ */ jsx33("div", { className: "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6", children: Array.from({ length: 3 }).map((_, i) => /* @__PURE__ */ jsx33("div", { className: "h-48 bg-ods-card border border-ods-border rounded" }, i)) }),
4188
- /* @__PURE__ */ jsxs29("div", { className: "border border-ods-border rounded-3xl p-8 space-y-6", children: [
4189
- /* @__PURE__ */ jsxs29("div", { className: "flex items-start gap-6", children: [
4190
- /* @__PURE__ */ jsxs29("div", { className: "flex-1 space-y-2 min-w-0", children: [
4191
- /* @__PURE__ */ jsx33("div", { className: "h-8 w-72 bg-ods-skeleton rounded" }),
4192
- /* @__PURE__ */ jsx33("div", { className: "h-4 w-3/4 bg-ods-skeleton rounded" })
4112
+ /* @__PURE__ */ jsx32("div", { className: "h-6 w-60 bg-ods-skeleton rounded" }),
4113
+ /* @__PURE__ */ jsx32("div", { className: "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6", children: Array.from({ length: 3 }).map((_, i) => /* @__PURE__ */ jsx32("div", { className: "h-48 bg-ods-card border border-ods-border rounded" }, i)) }),
4114
+ /* @__PURE__ */ jsxs28("div", { className: "border border-ods-border rounded-3xl p-8 space-y-6", children: [
4115
+ /* @__PURE__ */ jsxs28("div", { className: "flex items-start gap-6", children: [
4116
+ /* @__PURE__ */ jsxs28("div", { className: "flex-1 space-y-2 min-w-0", children: [
4117
+ /* @__PURE__ */ jsx32("div", { className: "h-8 w-72 bg-ods-skeleton rounded" }),
4118
+ /* @__PURE__ */ jsx32("div", { className: "h-4 w-3/4 bg-ods-skeleton rounded" })
4193
4119
  ] }),
4194
- /* @__PURE__ */ jsx33("div", { className: "w-12 h-12 bg-ods-skeleton rounded-md shrink-0" })
4120
+ /* @__PURE__ */ jsx32("div", { className: "w-12 h-12 bg-ods-skeleton rounded-md shrink-0" })
4195
4121
  ] }),
4196
- /* @__PURE__ */ jsx33("div", { className: "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6", children: Array.from({ length: 3 }).map((_, i) => /* @__PURE__ */ jsx33("div", { className: "h-32 bg-ods-card border border-ods-border rounded" }, i)) })
4122
+ /* @__PURE__ */ jsx32("div", { className: "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6", children: Array.from({ length: 3 }).map((_, i) => /* @__PURE__ */ jsx32("div", { className: "h-32 bg-ods-card border border-ods-border rounded" }, i)) })
4197
4123
  ] })
4198
4124
  ] }),
4199
- overlayContent && /* @__PURE__ */ jsx33("div", { className: "absolute inset-0 bg-ods-card/80 z-10 rounded-lg pointer-events-none", children: /* @__PURE__ */ jsxs29("div", { className: "fixed top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 pointer-events-auto flex flex-col items-center gap-4 text-center px-4", children: [
4200
- description && /* @__PURE__ */ jsx33("h3", { children: description }),
4125
+ overlayContent && /* @__PURE__ */ jsx32("div", { className: "absolute inset-0 bg-ods-card/80 z-10 rounded-lg pointer-events-none", children: /* @__PURE__ */ jsxs28("div", { className: "fixed top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 pointer-events-auto flex flex-col items-center gap-4 text-center px-4", children: [
4126
+ description && /* @__PURE__ */ jsx32("h3", { children: description }),
4201
4127
  overlayContent
4202
4128
  ] }) })
4203
4129
  ] });
@@ -4205,18 +4131,18 @@ function MarginReportSkeleton({ animate = true, description, overlayContent }) {
4205
4131
 
4206
4132
  // src/components/loading/users-grid-skeleton.tsx
4207
4133
  init_cn();
4208
- import { jsx as jsx34, jsxs as jsxs30 } from "react/jsx-runtime";
4134
+ import { jsx as jsx33, jsxs as jsxs29 } from "react/jsx-runtime";
4209
4135
  function UsersGridSkeleton({ rows = 10, className }) {
4210
4136
  const skeletonRows = Array.from({ length: rows });
4211
- return /* @__PURE__ */ jsx34("div", { className: cn("overflow-x-auto rounded-lg border border-ods-border bg-ods-card animate-pulse", className), children: /* @__PURE__ */ jsxs30("table", { className: "min-w-full divide-y divide-ods-border", children: [
4212
- /* @__PURE__ */ jsx34("thead", { className: "bg-ods-skeleton", children: /* @__PURE__ */ jsx34("tr", { children: ["Name", "Email", "Role", "Created", "Last Sign-In"].map((h) => /* @__PURE__ */ jsx34("th", { className: "px-4 py-3 text-left text-h6 text-ods-text-primary", children: h }, h)) }) }),
4213
- /* @__PURE__ */ jsx34("tbody", { className: "divide-y divide-ods-border", children: skeletonRows.map((_, idx) => /* @__PURE__ */ jsx34("tr", { children: Array.from({ length: 5 }).map((__, cell) => /* @__PURE__ */ jsx34("td", { className: "px-4 py-3 whitespace-nowrap", children: /* @__PURE__ */ jsx34("div", { className: "h-4 bg-ods-border rounded w-full" }) }, cell)) }, idx)) })
4137
+ return /* @__PURE__ */ jsx33("div", { className: cn("overflow-x-auto rounded-lg border border-ods-border bg-ods-card animate-pulse", className), children: /* @__PURE__ */ jsxs29("table", { className: "min-w-full divide-y divide-ods-border", children: [
4138
+ /* @__PURE__ */ jsx33("thead", { className: "bg-ods-skeleton", children: /* @__PURE__ */ jsx33("tr", { children: ["Name", "Email", "Role", "Created", "Last Sign-In"].map((h) => /* @__PURE__ */ jsx33("th", { className: "px-4 py-3 text-left text-h6 text-ods-text-primary", children: h }, h)) }) }),
4139
+ /* @__PURE__ */ jsx33("tbody", { className: "divide-y divide-ods-border", children: skeletonRows.map((_, idx) => /* @__PURE__ */ jsx33("tr", { children: Array.from({ length: 5 }).map((__, cell) => /* @__PURE__ */ jsx33("td", { className: "px-4 py-3 whitespace-nowrap", children: /* @__PURE__ */ jsx33("div", { className: "h-4 bg-ods-border rounded w-full" }) }, cell)) }, idx)) })
4214
4140
  ] }) });
4215
4141
  }
4216
4142
 
4217
4143
  // src/components/loading/organization-icon-skeleton.tsx
4218
4144
  init_cn();
4219
- import { jsx as jsx35 } from "react/jsx-runtime";
4145
+ import { jsx as jsx34 } from "react/jsx-runtime";
4220
4146
  var sizeClasses2 = {
4221
4147
  xs: "w-6 h-6",
4222
4148
  sm: "w-8 h-8",
@@ -4243,27 +4169,27 @@ function OrganizationIconSkeleton({
4243
4169
  !showBackground && "overflow-hidden",
4244
4170
  className
4245
4171
  );
4246
- return /* @__PURE__ */ jsx35(
4172
+ return /* @__PURE__ */ jsx34(
4247
4173
  "div",
4248
4174
  {
4249
4175
  className: containerClasses,
4250
4176
  role: "status",
4251
4177
  "aria-label": "Loading organization icon",
4252
- children: /* @__PURE__ */ jsx35("div", { className: "w-1/2 h-1/2 bg-ods-border rounded-sm animate-pulse" })
4178
+ children: /* @__PURE__ */ jsx34("div", { className: "w-1/2 h-1/2 bg-ods-border rounded-sm animate-pulse" })
4253
4179
  }
4254
4180
  );
4255
4181
  }
4256
4182
 
4257
4183
  // src/components/loading/organization-card-skeleton.tsx
4258
4184
  init_cn();
4259
- import { jsx as jsx36, jsxs as jsxs31 } from "react/jsx-runtime";
4185
+ import { jsx as jsx35, jsxs as jsxs30 } from "react/jsx-runtime";
4260
4186
  function OrganizationCardSkeleton({
4261
4187
  className,
4262
4188
  containerClassName,
4263
4189
  showFooter = true,
4264
4190
  showDescription = true
4265
4191
  }) {
4266
- return /* @__PURE__ */ jsx36(
4192
+ return /* @__PURE__ */ jsx35(
4267
4193
  "div",
4268
4194
  {
4269
4195
  className: cn(
@@ -4273,9 +4199,9 @@ function OrganizationCardSkeleton({
4273
4199
  ),
4274
4200
  role: "status",
4275
4201
  "aria-label": "Loading organization card",
4276
- children: /* @__PURE__ */ jsxs31("div", { className: "p-4 gap-3 flex flex-col", children: [
4277
- /* @__PURE__ */ jsxs31("div", { className: "flex items-start gap-3 w-full", children: [
4278
- /* @__PURE__ */ jsx36(
4202
+ children: /* @__PURE__ */ jsxs30("div", { className: "p-4 gap-3 flex flex-col", children: [
4203
+ /* @__PURE__ */ jsxs30("div", { className: "flex items-start gap-3 w-full", children: [
4204
+ /* @__PURE__ */ jsx35(
4279
4205
  OrganizationIconSkeleton,
4280
4206
  {
4281
4207
  size: "xl",
@@ -4284,29 +4210,29 @@ function OrganizationCardSkeleton({
4284
4210
  className: "w-[60px] h-[60px]"
4285
4211
  }
4286
4212
  ),
4287
- /* @__PURE__ */ jsxs31("div", { className: "flex-1 flex flex-col justify-center py-2 min-w-0 space-y-1", children: [
4288
- /* @__PURE__ */ jsx36(TextSkeleton.Subheading, { className: "w-3/4" }),
4289
- /* @__PURE__ */ jsx36(TextSkeleton.Caption, { className: "w-1/2" })
4213
+ /* @__PURE__ */ jsxs30("div", { className: "flex-1 flex flex-col justify-center py-2 min-w-0 space-y-1", children: [
4214
+ /* @__PURE__ */ jsx35(TextSkeleton.Subheading, { className: "w-3/4" }),
4215
+ /* @__PURE__ */ jsx35(TextSkeleton.Caption, { className: "w-1/2" })
4290
4216
  ] })
4291
4217
  ] }),
4292
- showDescription && /* @__PURE__ */ jsx36("div", { className: "w-full h-12 overflow-hidden flex items-center", children: /* @__PURE__ */ jsxs31("div", { className: "space-y-1 w-full", children: [
4293
- /* @__PURE__ */ jsx36(TextSkeleton.Body, { className: "w-full" }),
4294
- /* @__PURE__ */ jsx36(TextSkeleton.Body, { className: "w-2/3" })
4218
+ showDescription && /* @__PURE__ */ jsx35("div", { className: "w-full h-12 overflow-hidden flex items-center", children: /* @__PURE__ */ jsxs30("div", { className: "space-y-1 w-full", children: [
4219
+ /* @__PURE__ */ jsx35(TextSkeleton.Body, { className: "w-full" }),
4220
+ /* @__PURE__ */ jsx35(TextSkeleton.Body, { className: "w-2/3" })
4295
4221
  ] }) }),
4296
- showFooter && /* @__PURE__ */ jsxs31("div", { className: "flex items-center justify-between gap-2 w-full min-w-0", children: [
4297
- /* @__PURE__ */ jsxs31("div", { className: "flex items-center gap-3 md:gap-4 min-w-0 flex-shrink", children: [
4298
- /* @__PURE__ */ jsxs31("div", { className: "flex items-center gap-1 flex-shrink-0", children: [
4299
- /* @__PURE__ */ jsx36(MediaSkeleton.Icon, { size: "sm", className: "w-5 h-5" }),
4300
- /* @__PURE__ */ jsx36(TextSkeleton.Caption, { className: "w-8" })
4222
+ showFooter && /* @__PURE__ */ jsxs30("div", { className: "flex items-center justify-between gap-2 w-full min-w-0", children: [
4223
+ /* @__PURE__ */ jsxs30("div", { className: "flex items-center gap-3 md:gap-4 min-w-0 flex-shrink", children: [
4224
+ /* @__PURE__ */ jsxs30("div", { className: "flex items-center gap-1 flex-shrink-0", children: [
4225
+ /* @__PURE__ */ jsx35(MediaSkeleton.Icon, { size: "sm", className: "w-5 h-5" }),
4226
+ /* @__PURE__ */ jsx35(TextSkeleton.Caption, { className: "w-8" })
4301
4227
  ] }),
4302
- /* @__PURE__ */ jsxs31("div", { className: "flex items-center gap-1 flex-shrink-0", children: [
4303
- /* @__PURE__ */ jsx36(MediaSkeleton.Icon, { size: "sm", className: "w-5 h-5" }),
4304
- /* @__PURE__ */ jsx36(TextSkeleton.Caption, { className: "w-10" })
4228
+ /* @__PURE__ */ jsxs30("div", { className: "flex items-center gap-1 flex-shrink-0", children: [
4229
+ /* @__PURE__ */ jsx35(MediaSkeleton.Icon, { size: "sm", className: "w-5 h-5" }),
4230
+ /* @__PURE__ */ jsx35(TextSkeleton.Caption, { className: "w-10" })
4305
4231
  ] })
4306
4232
  ] }),
4307
- /* @__PURE__ */ jsx36("div", { className: "flex-shrink-0", children: /* @__PURE__ */ jsxs31("div", { className: "flex items-center gap-1.5 bg-ods-bg border border-ods-border rounded px-2.5 py-1.5", children: [
4308
- /* @__PURE__ */ jsx36("div", { className: "w-4 h-4 bg-ods-border rounded-sm flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx36(MediaSkeleton.Icon, { size: "sm", className: "w-2.5 h-2.5" }) }),
4309
- /* @__PURE__ */ jsx36(TextSkeleton.Caption, { className: "w-16" })
4233
+ /* @__PURE__ */ jsx35("div", { className: "flex-shrink-0", children: /* @__PURE__ */ jsxs30("div", { className: "flex items-center gap-1.5 bg-ods-bg border border-ods-border rounded px-2.5 py-1.5", children: [
4234
+ /* @__PURE__ */ jsx35("div", { className: "w-4 h-4 bg-ods-border rounded-sm flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx35(MediaSkeleton.Icon, { size: "sm", className: "w-2.5 h-2.5" }) }),
4235
+ /* @__PURE__ */ jsx35(TextSkeleton.Caption, { className: "w-16" })
4310
4236
  ] }) })
4311
4237
  ] })
4312
4238
  ] })
@@ -4320,7 +4246,7 @@ function OrganizationCardSkeletonGrid({
4320
4246
  showFooter = true,
4321
4247
  showDescription = true
4322
4248
  }) {
4323
- return /* @__PURE__ */ jsx36(
4249
+ return /* @__PURE__ */ jsx35(
4324
4250
  "div",
4325
4251
  {
4326
4252
  className: cn(
@@ -4329,7 +4255,7 @@ function OrganizationCardSkeletonGrid({
4329
4255
  ),
4330
4256
  role: "status",
4331
4257
  "aria-label": `Loading ${count} organization cards`,
4332
- children: Array.from({ length: count }, (_, index) => /* @__PURE__ */ jsx36(
4258
+ children: Array.from({ length: count }, (_, index) => /* @__PURE__ */ jsx35(
4333
4259
  OrganizationCardSkeleton,
4334
4260
  {
4335
4261
  containerClassName,
@@ -4344,9 +4270,9 @@ function OrganizationCardSkeletonGrid({
4344
4270
 
4345
4271
  // src/components/loading/device-card-skeleton.tsx
4346
4272
  init_cn();
4347
- import { jsx as jsx37, jsxs as jsxs32 } from "react/jsx-runtime";
4273
+ import { jsx as jsx36, jsxs as jsxs31 } from "react/jsx-runtime";
4348
4274
  function DeviceCardSkeleton({ className }) {
4349
- return /* @__PURE__ */ jsxs32(
4275
+ return /* @__PURE__ */ jsxs31(
4350
4276
  "div",
4351
4277
  {
4352
4278
  className: cn(
@@ -4356,19 +4282,19 @@ function DeviceCardSkeleton({ className }) {
4356
4282
  role: "status",
4357
4283
  "aria-label": "Loading device card",
4358
4284
  children: [
4359
- /* @__PURE__ */ jsxs32("div", { className: "flex gap-4 items-center px-4 py-3", children: [
4360
- /* @__PURE__ */ jsx37("div", { className: "w-8 h-8 bg-ods-bg border border-ods-border rounded-[6px] flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx37("div", { className: "w-4 h-4 bg-ods-border rounded animate-pulse" }) }),
4361
- /* @__PURE__ */ jsx37("div", { className: "flex-1 min-w-0", children: /* @__PURE__ */ jsx37("div", { className: "h-6 w-3/4 bg-ods-border rounded animate-pulse" }) }),
4362
- /* @__PURE__ */ jsx37("div", { className: "w-12 h-12 bg-ods-border rounded-[6px] flex-shrink-0 animate-pulse" })
4285
+ /* @__PURE__ */ jsxs31("div", { className: "flex gap-4 items-center px-4 py-3", children: [
4286
+ /* @__PURE__ */ jsx36("div", { className: "w-8 h-8 bg-ods-bg border border-ods-border rounded-[6px] flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsx36("div", { className: "w-4 h-4 bg-ods-border rounded animate-pulse" }) }),
4287
+ /* @__PURE__ */ jsx36("div", { className: "flex-1 min-w-0", children: /* @__PURE__ */ jsx36("div", { className: "h-6 w-3/4 bg-ods-border rounded animate-pulse" }) }),
4288
+ /* @__PURE__ */ jsx36("div", { className: "w-12 h-12 bg-ods-border rounded-[6px] flex-shrink-0 animate-pulse" })
4363
4289
  ] }),
4364
- /* @__PURE__ */ jsxs32("div", { className: "flex gap-4 items-center px-4 py-2", children: [
4365
- /* @__PURE__ */ jsx37("div", { className: "w-24 h-6 bg-ods-border rounded flex-shrink-0 animate-pulse" }),
4366
- /* @__PURE__ */ jsx37(OrganizationIconSkeleton, { size: "sm" }),
4367
- /* @__PURE__ */ jsx37("div", { className: "flex-1 min-w-0", children: /* @__PURE__ */ jsx37("div", { className: "h-5 w-1/2 bg-ods-border rounded animate-pulse" }) })
4290
+ /* @__PURE__ */ jsxs31("div", { className: "flex gap-4 items-center px-4 py-2", children: [
4291
+ /* @__PURE__ */ jsx36("div", { className: "w-24 h-6 bg-ods-border rounded flex-shrink-0 animate-pulse" }),
4292
+ /* @__PURE__ */ jsx36(OrganizationIconSkeleton, { size: "sm" }),
4293
+ /* @__PURE__ */ jsx36("div", { className: "flex-1 min-w-0", children: /* @__PURE__ */ jsx36("div", { className: "h-5 w-1/2 bg-ods-border rounded animate-pulse" }) })
4368
4294
  ] }),
4369
- /* @__PURE__ */ jsxs32("div", { className: "flex gap-4 items-center px-4 py-2", children: [
4370
- /* @__PURE__ */ jsx37("div", { className: "w-20 h-6 bg-ods-border rounded-full flex-shrink-0 animate-pulse" }),
4371
- /* @__PURE__ */ jsx37("div", { className: "flex-1", children: /* @__PURE__ */ jsx37("div", { className: "h-5 w-40 bg-ods-border rounded animate-pulse" }) })
4295
+ /* @__PURE__ */ jsxs31("div", { className: "flex gap-4 items-center px-4 py-2", children: [
4296
+ /* @__PURE__ */ jsx36("div", { className: "w-20 h-6 bg-ods-border rounded-full flex-shrink-0 animate-pulse" }),
4297
+ /* @__PURE__ */ jsx36("div", { className: "flex-1", children: /* @__PURE__ */ jsx36("div", { className: "h-5 w-40 bg-ods-border rounded animate-pulse" }) })
4372
4298
  ] })
4373
4299
  ]
4374
4300
  }
@@ -4378,7 +4304,7 @@ function DeviceCardSkeletonGrid({
4378
4304
  count = 12,
4379
4305
  className
4380
4306
  }) {
4381
- return /* @__PURE__ */ jsx37(
4307
+ return /* @__PURE__ */ jsx36(
4382
4308
  "div",
4383
4309
  {
4384
4310
  className: cn(
@@ -4387,22 +4313,22 @@ function DeviceCardSkeletonGrid({
4387
4313
  ),
4388
4314
  role: "status",
4389
4315
  "aria-label": `Loading ${count} device cards`,
4390
- children: Array.from({ length: count }, (_, index) => /* @__PURE__ */ jsx37(DeviceCardSkeleton, {}, index))
4316
+ children: Array.from({ length: count }, (_, index) => /* @__PURE__ */ jsx36(DeviceCardSkeleton, {}, index))
4391
4317
  }
4392
4318
  );
4393
4319
  }
4394
4320
 
4395
4321
  // src/components/vendor-page-skeleton.tsx
4396
- import { jsx as jsx38 } from "react/jsx-runtime";
4322
+ import { jsx as jsx37 } from "react/jsx-runtime";
4397
4323
  function VendorPageSkeleton() {
4398
- return /* @__PURE__ */ jsx38(VendorDetailLayoutSkeleton, {});
4324
+ return /* @__PURE__ */ jsx37(VendorDetailLayoutSkeleton, {});
4399
4325
  }
4400
4326
 
4401
4327
  // src/components/why-it-matters.tsx
4402
- import { jsx as jsx39, jsxs as jsxs33 } from "react/jsx-runtime";
4328
+ import { jsx as jsx38, jsxs as jsxs32 } from "react/jsx-runtime";
4403
4329
 
4404
4330
  // src/components/yes-no-display.tsx
4405
- import { jsx as jsx40, jsxs as jsxs34 } from "react/jsx-runtime";
4331
+ import { jsx as jsx39, jsxs as jsxs33 } from "react/jsx-runtime";
4406
4332
  function YesNoDisplay({
4407
4333
  value,
4408
4334
  yesText = "Yes",
@@ -4411,20 +4337,20 @@ function YesNoDisplay({
4411
4337
  className = ""
4412
4338
  }) {
4413
4339
  if (customText) {
4414
- return /* @__PURE__ */ jsxs34("div", { className: `flex items-center gap-2 ${className}`, children: [
4415
- /* @__PURE__ */ jsx40(CheckCircleIcon2, { className: "h-6 w-6" }),
4416
- /* @__PURE__ */ jsx40("span", { className: "text-ods-text-primary text-h6", children: customText })
4340
+ return /* @__PURE__ */ jsxs33("div", { className: `flex items-center gap-2 ${className}`, children: [
4341
+ /* @__PURE__ */ jsx39(CheckCircleIcon2, { className: "h-6 w-6" }),
4342
+ /* @__PURE__ */ jsx39("span", { className: "text-ods-text-primary text-h6", children: customText })
4417
4343
  ] });
4418
4344
  }
4419
4345
  if (value) {
4420
- return /* @__PURE__ */ jsxs34("div", { className: `flex items-center gap-2 ${className}`, children: [
4421
- /* @__PURE__ */ jsx40(CheckCircleIcon2, { className: "h-6 w-6" }),
4422
- /* @__PURE__ */ jsx40("span", { className: "text-ods-text-primary text-h6", children: yesText })
4346
+ return /* @__PURE__ */ jsxs33("div", { className: `flex items-center gap-2 ${className}`, children: [
4347
+ /* @__PURE__ */ jsx39(CheckCircleIcon2, { className: "h-6 w-6" }),
4348
+ /* @__PURE__ */ jsx39("span", { className: "text-ods-text-primary text-h6", children: yesText })
4423
4349
  ] });
4424
4350
  }
4425
- return /* @__PURE__ */ jsxs34("div", { className: `flex items-center gap-2 ${className}`, children: [
4426
- /* @__PURE__ */ jsx40(XCircleIcon, { className: "h-6 w-6" }),
4427
- /* @__PURE__ */ jsx40("span", { className: "text-ods-text-secondary text-h6", children: noText })
4351
+ return /* @__PURE__ */ jsxs33("div", { className: `flex items-center gap-2 ${className}`, children: [
4352
+ /* @__PURE__ */ jsx39(XCircleIcon, { className: "h-6 w-6" }),
4353
+ /* @__PURE__ */ jsx39("span", { className: "text-ods-text-secondary text-h6", children: noText })
4428
4354
  ] });
4429
4355
  }
4430
4356
  function evaluateFeatureValue(value, dataType) {
@@ -4458,15 +4384,15 @@ function evaluateFeatureValue(value, dataType) {
4458
4384
  }
4459
4385
 
4460
4386
  // src/components/made-with-love.tsx
4461
- import { useState as useState6, useEffect as useEffect4 } from "react";
4462
- import { jsx as jsx41, jsxs as jsxs35 } from "react/jsx-runtime";
4387
+ import { useState as useState5, useEffect as useEffect4 } from "react";
4388
+ import { jsx as jsx40, jsxs as jsxs34 } from "react/jsx-runtime";
4463
4389
  function MadeWithLove({
4464
4390
  className = "",
4465
4391
  size = "md",
4466
4392
  showOnMobile = true
4467
4393
  }) {
4468
- const [isMobile, setIsMobile] = useState6(false);
4469
- const [isHovered, setIsHovered] = useState6(false);
4394
+ const [isMobile, setIsMobile] = useState5(false);
4395
+ const [isHovered, setIsHovered] = useState5(false);
4470
4396
  useEffect4(() => {
4471
4397
  const checkMobile = () => {
4472
4398
  setIsMobile(window.innerWidth < 640);
@@ -4533,14 +4459,14 @@ function MadeWithLove({
4533
4459
  marginLeft: "4px",
4534
4460
  textDecoration: "none"
4535
4461
  };
4536
- return /* @__PURE__ */ jsxs35(
4462
+ return /* @__PURE__ */ jsxs34(
4537
4463
  "div",
4538
4464
  {
4539
4465
  style: containerStyle,
4540
4466
  className,
4541
4467
  children: [
4542
4468
  "Made with love by",
4543
- /* @__PURE__ */ jsxs35(
4469
+ /* @__PURE__ */ jsxs34(
4544
4470
  "a",
4545
4471
  {
4546
4472
  href: flamingoUrl,
@@ -4550,14 +4476,14 @@ function MadeWithLove({
4550
4476
  onMouseEnter: () => setIsHovered(true),
4551
4477
  onMouseLeave: () => setIsHovered(false),
4552
4478
  children: [
4553
- /* @__PURE__ */ jsx41("div", { style: logoStyle, children: /* @__PURE__ */ jsx41(
4479
+ /* @__PURE__ */ jsx40("div", { style: logoStyle, children: /* @__PURE__ */ jsx40(
4554
4480
  FlamingoLogo2,
4555
4481
  {
4556
4482
  size: config.logoSize,
4557
4483
  color: "#f357bb"
4558
4484
  }
4559
4485
  ) }),
4560
- /* @__PURE__ */ jsx41("span", { style: textStyle, children: "Flamingo" })
4486
+ /* @__PURE__ */ jsx40("span", { style: textStyle, children: "Flamingo" })
4561
4487
  ]
4562
4488
  }
4563
4489
  )
@@ -4569,7 +4495,7 @@ function MadeWithLove({
4569
4495
  // src/components/date-time-picker.tsx
4570
4496
  init_cn();
4571
4497
  import DatePicker2 from "react-datepicker";
4572
- import { jsx as jsx42, jsxs as jsxs36 } from "react/jsx-runtime";
4498
+ import { jsx as jsx41, jsxs as jsxs35 } from "react/jsx-runtime";
4573
4499
  var inputClassName = cn(
4574
4500
  "flex h-10 w-full rounded-md border px-3 py-2 text-sm ring-offset-background",
4575
4501
  "file:border-0 file:bg-transparent file:text-sm file:font-medium",
@@ -4593,9 +4519,9 @@ function DateTimePicker({
4593
4519
  timeIntervals = 15,
4594
4520
  dateFormat = "MMMM d, yyyy h:mm aa"
4595
4521
  }) {
4596
- return /* @__PURE__ */ jsxs36("div", { className: cn("space-y-2", className), children: [
4597
- label && /* @__PURE__ */ jsx42(Label, { className: "text-h5 font-semibold text-ods-text-secondary", children: label }),
4598
- /* @__PURE__ */ jsx42("div", { className: "w-full", children: /* @__PURE__ */ jsx42(
4522
+ return /* @__PURE__ */ jsxs35("div", { className: cn("space-y-2", className), children: [
4523
+ label && /* @__PURE__ */ jsx41(Label, { className: "text-h5 font-semibold text-ods-text-secondary", children: label }),
4524
+ /* @__PURE__ */ jsx41("div", { className: "w-full", children: /* @__PURE__ */ jsx41(
4599
4525
  DatePicker2,
4600
4526
  {
4601
4527
  selected: value,
@@ -4610,7 +4536,7 @@ function DateTimePicker({
4610
4536
  className: inputClassName
4611
4537
  }
4612
4538
  ) }),
4613
- /* @__PURE__ */ jsx42("style", { dangerouslySetInnerHTML: { __html: `
4539
+ /* @__PURE__ */ jsx41("style", { dangerouslySetInnerHTML: { __html: `
4614
4540
  .react-datepicker-wrapper {
4615
4541
  width: 100% !important;
4616
4542
  display: block !important;
@@ -4715,7 +4641,7 @@ function DateTimePicker({
4715
4641
 
4716
4642
  // src/components/authors/author-detail-view.tsx
4717
4643
  init_cn();
4718
- import { jsx as jsx43, jsxs as jsxs37 } from "react/jsx-runtime";
4644
+ import { jsx as jsx42, jsxs as jsxs36 } from "react/jsx-runtime";
4719
4645
  function AuthorDetailView({
4720
4646
  author,
4721
4647
  proxyImageUrl,
@@ -4730,9 +4656,9 @@ function AuthorDetailView({
4730
4656
  }) ?? author.avatarUrl : null;
4731
4657
  const subtitle = [author.jobTitle, author.company].filter(Boolean).join(" @ ");
4732
4658
  const bioText = formatBioText(author.about);
4733
- return /* @__PURE__ */ jsxs37("div", { className: cn("flex flex-col gap-5 md:gap-6", className), children: [
4734
- /* @__PURE__ */ jsxs37("div", { className: "flex gap-6 w-full items-start", children: [
4735
- /* @__PURE__ */ jsx43("div", { className: "relative shrink-0 h-24 w-24", children: /* @__PURE__ */ jsx43("div", { className: "rounded-full overflow-hidden bg-ods-bg-surface border border-ods-border w-full h-full relative", children: proxiedAvatar ? /* @__PURE__ */ jsx43(
4659
+ return /* @__PURE__ */ jsxs36("div", { className: cn("flex flex-col gap-5 md:gap-6", className), children: [
4660
+ /* @__PURE__ */ jsxs36("div", { className: "flex gap-6 w-full items-start", children: [
4661
+ /* @__PURE__ */ jsx42("div", { className: "relative shrink-0 h-24 w-24", children: /* @__PURE__ */ jsx42("div", { className: "rounded-full overflow-hidden bg-ods-bg-surface border border-ods-border w-full h-full relative", children: proxiedAvatar ? /* @__PURE__ */ jsx42(
4736
4662
  next_image_default,
4737
4663
  {
4738
4664
  src: proxiedAvatar,
@@ -4741,12 +4667,12 @@ function AuthorDetailView({
4741
4667
  className: "object-cover",
4742
4668
  unoptimized: true
4743
4669
  }
4744
- ) : /* @__PURE__ */ jsx43("div", { className: "flex items-center justify-center h-full w-full text-3xl text-ods-text-secondary font-heading", children: author.fullName.charAt(0).toUpperCase() }) }) }),
4745
- /* @__PURE__ */ jsxs37("div", { className: "min-w-0 flex flex-col justify-center gap-2", children: [
4746
- /* @__PURE__ */ jsx43("p", { className: "text-h2 text-ods-text-primary leading-none truncate", children: author.fullName }),
4747
- subtitle && /* @__PURE__ */ jsx43("p", { className: "font-body text-lg text-ods-text-secondary leading-none truncate", children: subtitle }),
4670
+ ) : /* @__PURE__ */ jsx42("div", { className: "flex items-center justify-center h-full w-full text-3xl text-ods-text-secondary font-heading", children: author.fullName.charAt(0).toUpperCase() }) }) }),
4671
+ /* @__PURE__ */ jsxs36("div", { className: "min-w-0 flex flex-col justify-center gap-2", children: [
4672
+ /* @__PURE__ */ jsx42("p", { className: "text-h2 text-ods-text-primary leading-none truncate", children: author.fullName }),
4673
+ subtitle && /* @__PURE__ */ jsx42("p", { className: "font-body text-lg text-ods-text-secondary leading-none truncate", children: subtitle }),
4748
4674
  author.socialLinks.length > 0 && // Ghost compact row (transparent 32px) — metadata, not CTAs.
4749
- /* @__PURE__ */ jsx43(
4675
+ /* @__PURE__ */ jsx42(
4750
4676
  SocialIconRow,
4751
4677
  {
4752
4678
  compact: true,
@@ -4759,8 +4685,8 @@ function AuthorDetailView({
4759
4685
  )
4760
4686
  ] })
4761
4687
  ] }),
4762
- bioText && /* @__PURE__ */ jsx43("p", { className: "text-h6 text-ods-text-secondary", children: bioText }),
4763
- author.knowsAbout.length > 0 && /* @__PURE__ */ jsx43("div", { className: "flex flex-wrap gap-2", children: author.knowsAbout.map((topic) => /* @__PURE__ */ jsx43(StatusBadge, { text: topic, variant: "button", colorScheme: "cyan", singleLine: true }, topic)) }),
4688
+ bioText && /* @__PURE__ */ jsx42("p", { className: "text-h6 text-ods-text-secondary", children: bioText }),
4689
+ author.knowsAbout.length > 0 && /* @__PURE__ */ jsx42("div", { className: "flex flex-wrap gap-2", children: author.knowsAbout.map((topic) => /* @__PURE__ */ jsx42(StatusBadge, { text: topic, variant: "button", colorScheme: "cyan", singleLine: true }, topic)) }),
4764
4690
  children
4765
4691
  ] });
4766
4692
  }
@@ -4898,7 +4824,6 @@ export {
4898
4824
  COMPACT_CARD_TEXT_COL,
4899
4825
  COMPACT_CARD_TITLE,
4900
4826
  COMPACT_CARD_TITLE_ROW,
4901
- COMPACT_ROW_MIN_HEIGHT_PX,
4902
4827
  CONNECTION_STATUS,
4903
4828
  CONTEXT_BACK_CLASS,
4904
4829
  CONTEXT_ICON_CLASS,
@@ -4969,7 +4894,6 @@ export {
4969
4894
  CheckboxWithDescription,
4970
4895
  ChevronButton,
4971
4896
  CircularProgress,
4972
- ClaudeEmbed,
4973
4897
  ClaudeIcon,
4974
4898
  ClickUpIcon,
4975
4899
  ClickUpTasksManager,
@@ -4983,7 +4907,6 @@ export {
4983
4907
  CommandBlock,
4984
4908
  CommandBox,
4985
4909
  CommentCard,
4986
- CommentComposer,
4987
4910
  CommentSkeleton,
4988
4911
  CommunityHubIcon,
4989
4912
  CommunityIcon,