@flamingo-stack/openframe-frontend-core 0.0.209 → 0.0.210-snapshot.20260528032637

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 (74) hide show
  1. package/dist/{chunk-HZT4YU33.js → chunk-3E5ANY55.js} +49 -26
  2. package/dist/chunk-3E5ANY55.js.map +1 -0
  3. package/dist/{chunk-RFSBDUXD.js → chunk-5BNWGK6D.js} +2 -2
  4. package/dist/{chunk-6RZYJICV.cjs → chunk-P5EE2VJX.cjs} +1 -1
  5. package/dist/chunk-P5EE2VJX.cjs.map +1 -0
  6. package/dist/{chunk-GIKD2LWD.js → chunk-QKFBZLIR.js} +2 -2
  7. package/dist/{chunk-Y7IXGY7T.cjs → chunk-VTUIMMHO.cjs} +24 -24
  8. package/dist/{chunk-Y7IXGY7T.cjs.map → chunk-VTUIMMHO.cjs.map} +1 -1
  9. package/dist/{chunk-SJQLTQC7.cjs → chunk-WI76ZUBE.cjs} +57 -34
  10. package/dist/chunk-WI76ZUBE.cjs.map +1 -0
  11. package/dist/{chunk-S2B3UFVP.cjs → chunk-ZFBLC5GV.cjs} +17 -17
  12. package/dist/{chunk-S2B3UFVP.cjs.map → chunk-ZFBLC5GV.cjs.map} +1 -1
  13. package/dist/{chunk-7L4DWM7P.js → chunk-ZG2YY5E7.js} +1 -1
  14. package/dist/chunk-ZG2YY5E7.js.map +1 -0
  15. package/dist/components/chat/entity-cards/blog-card.d.ts.map +1 -1
  16. package/dist/components/chat/hooks/use-chat-identity.d.ts +3 -3
  17. package/dist/components/chat/hooks/use-chat-identity.d.ts.map +1 -1
  18. package/dist/components/chat/index.cjs +3 -3
  19. package/dist/components/chat/index.js +2 -2
  20. package/dist/components/contact/index.cjs +4 -4
  21. package/dist/components/contact/index.js +3 -3
  22. package/dist/components/features/index.cjs +3 -3
  23. package/dist/components/features/index.js +2 -2
  24. package/dist/components/footer-waitlist-button.d.ts +21 -2
  25. package/dist/components/footer-waitlist-button.d.ts.map +1 -1
  26. package/dist/components/index.cjs +87 -91
  27. package/dist/components/index.cjs.map +1 -1
  28. package/dist/components/index.js +12 -16
  29. package/dist/components/index.js.map +1 -1
  30. package/dist/components/navigation/index.cjs +3 -3
  31. package/dist/components/navigation/index.js +2 -2
  32. package/dist/components/navigation/sticky-section-nav.d.ts.map +1 -1
  33. package/dist/components/tickets/help-center-card.d.ts.map +1 -1
  34. package/dist/components/tickets/index.cjs +139 -98
  35. package/dist/components/tickets/index.cjs.map +1 -1
  36. package/dist/components/tickets/index.js +95 -54
  37. package/dist/components/tickets/index.js.map +1 -1
  38. package/dist/components/tickets/ticket-row.d.ts.map +1 -1
  39. package/dist/components/ui/index.cjs +3 -3
  40. package/dist/components/ui/index.js +2 -2
  41. package/dist/contexts/chat-runtime-context.d.ts +6 -3
  42. package/dist/contexts/chat-runtime-context.d.ts.map +1 -1
  43. package/dist/contexts/index.cjs +2 -2
  44. package/dist/contexts/index.js +1 -1
  45. package/dist/index.cjs +5 -3
  46. package/dist/index.cjs.map +1 -1
  47. package/dist/index.js +4 -2
  48. package/dist/utils/index.cjs +10 -0
  49. package/dist/utils/index.cjs.map +1 -1
  50. package/dist/utils/index.d.ts +1 -0
  51. package/dist/utils/index.d.ts.map +1 -1
  52. package/dist/utils/index.js +10 -1
  53. package/dist/utils/index.js.map +1 -1
  54. package/dist/utils/scroll-into-view.d.ts +63 -0
  55. package/dist/utils/scroll-into-view.d.ts.map +1 -0
  56. package/package.json +1 -1
  57. package/src/components/chat/entity-cards/blog-card.tsx +25 -16
  58. package/src/components/chat/hooks/use-chat-identity.ts +8 -7
  59. package/src/components/footer-waitlist-button.tsx +33 -16
  60. package/src/components/navigation/sticky-section-nav.tsx +6 -4
  61. package/src/components/tickets/help-center-card.tsx +55 -1
  62. package/src/components/tickets/help-center-list.tsx +9 -1
  63. package/src/components/tickets/ticket-detail-drawer.tsx +19 -4
  64. package/src/components/tickets/ticket-row.tsx +30 -19
  65. package/src/contexts/chat-runtime-context.tsx +6 -3
  66. package/src/stories/EmbeddableChat.stories.tsx +1 -1
  67. package/src/utils/index.ts +12 -0
  68. package/src/utils/scroll-into-view.ts +74 -0
  69. package/dist/chunk-6RZYJICV.cjs.map +0 -1
  70. package/dist/chunk-7L4DWM7P.js.map +0 -1
  71. package/dist/chunk-HZT4YU33.js.map +0 -1
  72. package/dist/chunk-SJQLTQC7.cjs.map +0 -1
  73. /package/dist/{chunk-RFSBDUXD.js.map → chunk-5BNWGK6D.js.map} +0 -0
  74. /package/dist/{chunk-GIKD2LWD.js.map → chunk-QKFBZLIR.js.map} +0 -0
@@ -139,7 +139,7 @@ import {
139
139
  } from "./chunk-W72U7OU7.js";
140
140
  import {
141
141
  useRequiredChatRuntime
142
- } from "./chunk-7L4DWM7P.js";
142
+ } from "./chunk-ZG2YY5E7.js";
143
143
  import {
144
144
  dynamic
145
145
  } from "./chunk-EL5YVPD5.js";
@@ -6651,6 +6651,7 @@ function ProductReleaseCardSkeleton({ className, size = "lg" }) {
6651
6651
 
6652
6652
  // src/components/chat/entity-cards/blog-card.tsx
6653
6653
  import { useState as useState14 } from "react";
6654
+ import { Eye as Eye2 } from "lucide-react";
6654
6655
  init_cn();
6655
6656
 
6656
6657
  // src/components/chat/utils/compact-card-classes.ts
@@ -6833,25 +6834,38 @@ function BlogCard({
6833
6834
  children: post.summary || ""
6834
6835
  }
6835
6836
  ) }),
6836
- /* @__PURE__ */ jsxs40("div", { className: "mt-auto flex items-center gap-2 text-sm text-ods-text-secondary", children: [
6837
- post.author_avatar ? /* @__PURE__ */ jsx53(
6838
- next_image_default,
6837
+ /* @__PURE__ */ jsxs40("div", { className: "mt-auto flex items-center justify-between gap-2 text-sm text-ods-text-secondary", children: [
6838
+ /* @__PURE__ */ jsxs40("div", { className: "flex items-center gap-2 min-w-0", children: [
6839
+ post.author_avatar ? /* @__PURE__ */ jsx53(
6840
+ next_image_default,
6841
+ {
6842
+ src: post.author_avatar,
6843
+ alt: post.author_name || "",
6844
+ width: 32,
6845
+ height: 32,
6846
+ className: "rounded-full shrink-0",
6847
+ unoptimized: true
6848
+ }
6849
+ ) : null,
6850
+ /* @__PURE__ */ jsxs40("span", { className: "truncate", children: [
6851
+ post.author_name || "Anonymous",
6852
+ dateStr ? /* @__PURE__ */ jsxs40(Fragment8, { children: [
6853
+ " \xB7 ",
6854
+ dateStr
6855
+ ] }) : null
6856
+ ] })
6857
+ ] }),
6858
+ /* @__PURE__ */ jsxs40(
6859
+ "div",
6839
6860
  {
6840
- src: post.author_avatar,
6841
- alt: post.author_name || "",
6842
- width: 32,
6843
- height: 32,
6844
- className: "rounded-full",
6845
- unoptimized: true
6861
+ className: "flex items-center gap-1 shrink-0",
6862
+ "aria-label": `View count: ${(post.view_count ?? 0).toLocaleString("en-US")} views`,
6863
+ children: [
6864
+ /* @__PURE__ */ jsx53(Eye2, { className: "w-4 h-4 shrink-0" }),
6865
+ /* @__PURE__ */ jsx53("span", { children: (post.view_count ?? 0).toLocaleString("en-US") })
6866
+ ]
6846
6867
  }
6847
- ) : null,
6848
- /* @__PURE__ */ jsxs40("span", { className: "truncate", children: [
6849
- post.author_name || "Anonymous",
6850
- dateStr ? /* @__PURE__ */ jsxs40(Fragment8, { children: [
6851
- " \xB7 ",
6852
- dateStr
6853
- ] }) : null
6854
- ] })
6868
+ )
6855
6869
  ] })
6856
6870
  ] })
6857
6871
  ]
@@ -15002,6 +15016,15 @@ var OPENFRAME_DEV_SECTIONS = {
15002
15016
  }
15003
15017
  };
15004
15018
 
15019
+ // src/utils/scroll-into-view.ts
15020
+ function scrollElementIntoView(target, options = {}) {
15021
+ if (typeof window === "undefined" || !target) return;
15022
+ const { headerOffset = 0, behavior = "smooth", adjustTargetY } = options;
15023
+ const rawTargetY = target.getBoundingClientRect().top + window.scrollY - headerOffset;
15024
+ const finalY = adjustTargetY ? adjustTargetY(rawTargetY) : rawTargetY;
15025
+ window.scrollTo({ top: Math.max(0, finalY), behavior });
15026
+ }
15027
+
15005
15028
  // src/components/ui/benefit-card.tsx
15006
15029
  import { jsx as jsx111, jsxs as jsxs87 } from "react/jsx-runtime";
15007
15030
  var BenefitCard = ({
@@ -16659,7 +16682,7 @@ function AuthProvidersList({
16659
16682
  }
16660
16683
 
16661
16684
  // src/components/features/changelog-manager.tsx
16662
- import { Trash2 as Trash22, Plus as Plus3, ChevronDown as ChevronDown7, ChevronUp as ChevronUp3, Eye as Eye2, EyeOff } from "lucide-react";
16685
+ import { Trash2 as Trash22, Plus as Plus3, ChevronDown as ChevronDown7, ChevronUp as ChevronUp3, Eye as Eye3, EyeOff } from "lucide-react";
16663
16686
  import { useState as useState36, useEffect as useEffect24 } from "react";
16664
16687
  import { jsx as jsx136, jsxs as jsxs105 } from "react/jsx-runtime";
16665
16688
  function ChangelogManager({
@@ -16760,7 +16783,7 @@ function ChangelogManager({
16760
16783
  onClick: () => toggleVisibility(index),
16761
16784
  className: "shrink-0",
16762
16785
  title: (entry.visibility ?? "public") === "public" ? "Visible to investors" : "Internal only",
16763
- children: (entry.visibility ?? "public") === "public" ? /* @__PURE__ */ jsx136(Eye2, { className: "h-4 w-4 text-ods-accent" }) : /* @__PURE__ */ jsx136(EyeOff, { className: "h-4 w-4 text-ods-text-secondary" })
16786
+ children: (entry.visibility ?? "public") === "public" ? /* @__PURE__ */ jsx136(Eye3, { className: "h-4 w-4 text-ods-accent" }) : /* @__PURE__ */ jsx136(EyeOff, { className: "h-4 w-4 text-ods-text-secondary" })
16764
16787
  }
16765
16788
  ),
16766
16789
  /* @__PURE__ */ jsx136(
@@ -23754,8 +23777,7 @@ function useSectionNavigation(sections, options) {
23754
23777
  if (!targetElement) return;
23755
23778
  isScrollingFromClick.current = true;
23756
23779
  setActiveSection(sectionId);
23757
- const top = targetElement.offsetTop - offset2;
23758
- window.scrollTo({ top, behavior: "smooth" });
23780
+ scrollElementIntoView(targetElement, { headerOffset: offset2 });
23759
23781
  setTimeout(() => {
23760
23782
  isScrollingFromClick.current = false;
23761
23783
  }, 500);
@@ -30329,7 +30351,7 @@ function RoadmapCard({
30329
30351
 
30330
30352
  // src/components/chat/entity-cards/github-activity-card.tsx
30331
30353
  import React103 from "react";
30332
- import { GitPullRequest, Eye as Eye3, ExternalLink as ExternalLink6 } from "lucide-react";
30354
+ import { GitPullRequest, Eye as Eye4, ExternalLink as ExternalLink6 } from "lucide-react";
30333
30355
  import { Fragment as Fragment45, jsx as jsx263, jsxs as jsxs212 } from "react/jsx-runtime";
30334
30356
  function parseRepoFromUrl(url) {
30335
30357
  if (!url) return null;
@@ -30347,7 +30369,7 @@ function kindIcon(kind, className = "h-4 w-4") {
30347
30369
  case "pull_request":
30348
30370
  return /* @__PURE__ */ jsx263(GitPullRequest, { className: `${className} shrink-0` });
30349
30371
  case "pr_review":
30350
- return /* @__PURE__ */ jsx263(Eye3, { className: `${className} shrink-0` });
30372
+ return /* @__PURE__ */ jsx263(Eye4, { className: `${className} shrink-0` });
30351
30373
  case "commit":
30352
30374
  default:
30353
30375
  return /* @__PURE__ */ jsx263(GitHubIcon, { className: `${className} shrink-0` });
@@ -35863,7 +35885,7 @@ var ANON_DEFAULTS = {
35863
35885
  };
35864
35886
  function useChatIdentity() {
35865
35887
  const runtime = useRequiredChatRuntime();
35866
- const url = runtime.endpoints.chatIdentityUrl;
35888
+ const url = runtime.endpoints.identityUrl;
35867
35889
  const proxyEmail = getEmbedProxyAuth()?.email ?? null;
35868
35890
  const [data, setData] = useState78(ANON_DEFAULTS);
35869
35891
  const [isLoading, setIsLoading] = useState78(true);
@@ -38985,6 +39007,7 @@ export {
38985
39007
  DELIVERY_TASK_TYPE_OPTIONS,
38986
39008
  TICKET_STATUS_OPTIONS,
38987
39009
  OPENFRAME_DEV_SECTIONS,
39010
+ scrollElementIntoView,
38988
39011
  BenefitCard,
38989
39012
  BenefitCardGrid,
38990
39013
  BrandAssociationCard,
@@ -39198,4 +39221,4 @@ export {
39198
39221
  LogsList,
39199
39222
  assets
39200
39223
  };
39201
- //# sourceMappingURL=chunk-HZT4YU33.js.map
39224
+ //# sourceMappingURL=chunk-3E5ANY55.js.map