@burdenoff/website-sdk 2026.802.1 → 2026.7203.0

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.
@@ -54,7 +54,7 @@ function TypeBadge({ type }) {
54
54
  EXTENSION: "Extension",
55
55
  THEME: "Theme"
56
56
  };
57
- return /* @__PURE__ */ jsx("span", { className: "inline-block text-xs px-2 py-0.5 rounded-full bg-primary/10 text-foreground font-medium", children: labels[type] ?? type });
57
+ return /* @__PURE__ */ jsx("span", { className: "inline-block text-xs px-2 py-0.5 rounded-full bg-primary/10 text-primary font-medium", children: labels[type] ?? type });
58
58
  }
59
59
  function ProductCard({ product, onClick, href }) {
60
60
  const priceLabel = formatPrice(
@@ -128,7 +128,7 @@ function ProductCard({ product, onClick, href }) {
128
128
  /* @__PURE__ */ jsx(
129
129
  "span",
130
130
  {
131
- className: `text-xs font-semibold ${priceLabel === "Free" ? "text-emerald-700" : "text-foreground"}`,
131
+ className: `text-xs font-semibold ${priceLabel === "Free" ? "text-emerald-500" : "text-foreground"}`,
132
132
  children: priceLabel
133
133
  }
134
134
  )
@@ -567,7 +567,7 @@ function FeaturedHeroCard({
567
567
  }
568
568
  )
569
569
  ] }),
570
- /* @__PURE__ */ jsx("span", { className: "absolute top-3 left-3 text-xs font-semibold px-2.5 py-1 rounded-full border border-primary/30 bg-primary/10 text-foreground shadow-sm", children: "Featured" }),
570
+ /* @__PURE__ */ jsx("span", { className: "absolute top-3 left-3 text-xs font-semibold px-2.5 py-1 rounded-full bg-primary text-primary-foreground shadow-sm", children: "Featured" }),
571
571
  /* @__PURE__ */ jsx("div", { className: "absolute bottom-4 left-4 w-14 h-14 rounded-xl shadow-lg overflow-hidden border-2 border-background", children: product.icon ? /* @__PURE__ */ jsx(
572
572
  "img",
573
573
  {
@@ -625,7 +625,7 @@ function FeaturedHeroCard({
625
625
  /* @__PURE__ */ jsx(
626
626
  "span",
627
627
  {
628
- className: `text-sm font-bold flex-shrink-0 ${priceLabel === "Free" ? "text-emerald-700" : "text-foreground"}`,
628
+ className: `text-sm font-bold flex-shrink-0 ${priceLabel === "Free" ? "text-emerald-500" : "text-foreground"}`,
629
629
  children: priceLabel
630
630
  }
631
631
  )
@@ -816,10 +816,8 @@ function StoreHomePage({
816
816
  const [grouped, setGrouped] = useState(null);
817
817
  const [loading, setLoading] = useState(true);
818
818
  const [error, setError] = useState(null);
819
- const [retryKey, setRetryKey] = useState(0);
820
819
  useEffect(() => {
821
820
  let cancelled = false;
822
- let autoRetryTimer = null;
823
821
  async function load() {
824
822
  setLoading(true);
825
823
  try {
@@ -833,15 +831,7 @@ function StoreHomePage({
833
831
  setGrouped(res.data.homeGroupedProducts);
834
832
  setError(null);
835
833
  } catch {
836
- if (!cancelled) {
837
- if (retryKey < 1) {
838
- autoRetryTimer = setTimeout(() => {
839
- if (!cancelled) setRetryKey(1);
840
- }, 2e3);
841
- } else {
842
- setError("Failed to load store. Please try again.");
843
- }
844
- }
834
+ if (!cancelled) setError("Failed to load store. Please try again.");
845
835
  } finally {
846
836
  if (!cancelled) setLoading(false);
847
837
  }
@@ -849,9 +839,8 @@ function StoreHomePage({
849
839
  load();
850
840
  return () => {
851
841
  cancelled = true;
852
- if (autoRetryTimer) clearTimeout(autoRetryTimer);
853
842
  };
854
- }, [client, compatibleWith, retryKey]);
843
+ }, [client, compatibleWith]);
855
844
  function navigate(path) {
856
845
  if (onNavigate) {
857
846
  onNavigate(path);
@@ -935,7 +924,7 @@ function StoreHomePage({
935
924
  }
936
925
  ),
937
926
  /* @__PURE__ */ jsxs("div", { className: "relative max-w-4xl mx-auto px-4 sm:px-6 lg:px-8 text-center", children: [
938
- /* @__PURE__ */ jsxs("div", { className: "inline-flex items-center gap-2 px-3 py-1 rounded-full border border-primary/30 bg-primary/10 text-xs font-semibold text-foreground mb-5", children: [
927
+ /* @__PURE__ */ jsxs("div", { className: "inline-flex items-center gap-2 px-3 py-1 rounded-full border border-primary/30 bg-primary/10 text-xs font-semibold text-primary mb-5", children: [
939
928
  /* @__PURE__ */ jsx(
940
929
  "span",
941
930
  {
@@ -1009,7 +998,7 @@ function StoreHomePage({
1009
998
  "button",
1010
999
  {
1011
1000
  type: "button",
1012
- onClick: () => setRetryKey((k) => k + 1),
1001
+ onClick: () => window.location.reload(),
1013
1002
  className: "text-sm text-primary hover:underline",
1014
1003
  children: "Retry"
1015
1004
  }
@@ -1151,7 +1140,7 @@ function StoreHomePage({
1151
1140
  }
1152
1141
  ),
1153
1142
  /* @__PURE__ */ jsxs("div", { className: "relative max-w-2xl mx-auto px-4 py-16 text-center", children: [
1154
- /* @__PURE__ */ jsxs("div", { className: "inline-flex items-center gap-2 px-3 py-1 rounded-full border border-primary/30 bg-primary/10 text-xs font-semibold text-foreground mb-5", children: [
1143
+ /* @__PURE__ */ jsxs("div", { className: "inline-flex items-center gap-2 px-3 py-1 rounded-full border border-primary/30 bg-primary/10 text-xs font-semibold text-primary mb-5", children: [
1155
1144
  /* @__PURE__ */ jsx(
1156
1145
  "span",
1157
1146
  {
@@ -1183,21 +1172,6 @@ function StoreHomePage({
1183
1172
  children: "Browse the store"
1184
1173
  }
1185
1174
  )
1186
- ] }),
1187
- /* @__PURE__ */ jsxs("p", { className: "mt-4 text-xs text-muted-foreground", children: [
1188
- "By submitting a listing you agree to the",
1189
- " ",
1190
- /* @__PURE__ */ jsx(
1191
- "a",
1192
- {
1193
- href: "https://burdenoff.com/developer-agreement",
1194
- target: "_blank",
1195
- rel: "noopener noreferrer",
1196
- className: "underline hover:text-foreground",
1197
- children: "Marketplace & Developer Agreement"
1198
- }
1199
- ),
1200
- "."
1201
1175
  ] })
1202
1176
  ] })
1203
1177
  ] })
@@ -1487,10 +1461,6 @@ function StoreBrowsePage({
1487
1461
  }
1488
1462
  ),
1489
1463
  /* @__PURE__ */ jsxs("div", { className: "max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-8", children: [
1490
- /* @__PURE__ */ jsxs("header", { className: "mb-6", children: [
1491
- /* @__PURE__ */ jsx("h1", { className: "text-3xl font-bold tracking-tight", children: productName ? `Browse the ${productName} Store` : "Browse the Store" }),
1492
- /* @__PURE__ */ jsx("p", { className: "mt-2 text-muted-foreground", children: browseDescription })
1493
- ] }),
1494
1464
  /* @__PURE__ */ jsxs("div", { className: "flex flex-col sm:flex-row gap-3 mb-6", children: [
1495
1465
  /* @__PURE__ */ jsxs("form", { className: "flex-1 flex gap-2", onSubmit: handleSearchSubmit, children: [
1496
1466
  /* @__PURE__ */ jsx(
@@ -1756,182 +1726,6 @@ createContext({
1756
1726
  refetch: () => {
1757
1727
  }
1758
1728
  });
1759
- var PROSE_CSS = `
1760
- .boff-prose {
1761
- max-width: none;
1762
- }
1763
-
1764
- .boff-prose h1 {
1765
- font-size: 2.25rem;
1766
- font-weight: 800;
1767
- line-height: 1.2;
1768
- margin-top: 0;
1769
- margin-bottom: 1rem;
1770
- color: hsl(var(--foreground));
1771
- }
1772
-
1773
- .boff-prose h2 {
1774
- font-size: 1.75rem;
1775
- font-weight: 700;
1776
- line-height: 1.3;
1777
- margin-top: 2rem;
1778
- margin-bottom: 1rem;
1779
- color: hsl(var(--foreground));
1780
- }
1781
-
1782
- .boff-prose h3 {
1783
- font-size: 1.5rem;
1784
- font-weight: 600;
1785
- line-height: 1.4;
1786
- margin-top: 1.5rem;
1787
- margin-bottom: 0.75rem;
1788
- color: hsl(var(--foreground));
1789
- }
1790
-
1791
- .boff-prose h4 {
1792
- font-size: 1.25rem;
1793
- font-weight: 600;
1794
- line-height: 1.5;
1795
- margin-top: 1.25rem;
1796
- margin-bottom: 0.5rem;
1797
- color: hsl(var(--foreground));
1798
- }
1799
-
1800
- .boff-prose p {
1801
- margin-bottom: 1rem;
1802
- line-height: 1.75;
1803
- color: hsl(var(--foreground));
1804
- }
1805
-
1806
- .boff-prose ul,
1807
- .boff-prose ol {
1808
- margin-bottom: 1rem;
1809
- padding-left: 1.5rem;
1810
- }
1811
-
1812
- .boff-prose ul {
1813
- list-style-type: disc;
1814
- }
1815
-
1816
- .boff-prose ol {
1817
- list-style-type: decimal;
1818
- }
1819
-
1820
- .boff-prose li {
1821
- margin-bottom: 0.25rem;
1822
- line-height: 1.75;
1823
- color: hsl(var(--foreground));
1824
- }
1825
-
1826
- .boff-prose li > ul,
1827
- .boff-prose li > ol {
1828
- margin-top: 0.25rem;
1829
- margin-bottom: 0.25rem;
1830
- }
1831
-
1832
- .boff-prose a {
1833
- color: hsl(var(--primary));
1834
- text-decoration: underline;
1835
- text-underline-offset: 2px;
1836
- }
1837
-
1838
- .boff-prose a:hover {
1839
- opacity: 0.8;
1840
- }
1841
-
1842
- .boff-prose hr {
1843
- border: none;
1844
- height: 1px;
1845
- background-color: hsl(var(--border));
1846
- margin: 2rem 0;
1847
- }
1848
-
1849
- .boff-prose blockquote {
1850
- border-left: 4px solid hsl(var(--border));
1851
- padding-left: 1rem;
1852
- margin: 1.5rem 0;
1853
- font-style: italic;
1854
- color: hsl(var(--muted-foreground));
1855
- }
1856
-
1857
- .boff-prose strong {
1858
- font-weight: 700;
1859
- color: hsl(var(--foreground));
1860
- }
1861
-
1862
- .boff-prose code {
1863
- background-color: hsl(var(--muted));
1864
- padding: 0.125rem 0.25rem;
1865
- border-radius: 0.25rem;
1866
- font-size: 0.875em;
1867
- font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
1868
- }
1869
-
1870
- .boff-prose pre {
1871
- background-color: hsl(var(--muted));
1872
- padding: 1rem;
1873
- border-radius: 0.5rem;
1874
- overflow-x: auto;
1875
- margin-bottom: 1rem;
1876
- }
1877
-
1878
- .boff-prose pre code {
1879
- background-color: transparent;
1880
- padding: 0;
1881
- }
1882
-
1883
- .boff-prose img {
1884
- max-width: 100%;
1885
- height: auto;
1886
- }
1887
-
1888
- .boff-prose table {
1889
- width: 100%;
1890
- border-collapse: collapse;
1891
- margin-bottom: 1rem;
1892
- }
1893
-
1894
- .boff-prose th,
1895
- .boff-prose td {
1896
- border: 1px solid hsl(var(--border));
1897
- padding: 0.5rem;
1898
- text-align: left;
1899
- }
1900
-
1901
- .boff-prose th {
1902
- font-weight: 600;
1903
- background-color: hsl(var(--muted));
1904
- }
1905
-
1906
- /* Smaller variant used inside cards and compact panels */
1907
- .boff-prose-sm {
1908
- font-size: 0.875rem;
1909
- }
1910
-
1911
- .boff-prose-sm h1 {
1912
- font-size: 1.75rem;
1913
- }
1914
-
1915
- .boff-prose-sm h2 {
1916
- font-size: 1.5rem;
1917
- }
1918
-
1919
- .boff-prose-sm h3 {
1920
- font-size: 1.25rem;
1921
- }
1922
-
1923
- .boff-prose-sm h4 {
1924
- font-size: 1.125rem;
1925
- }
1926
-
1927
- .boff-prose-sm p,
1928
- .boff-prose-sm li {
1929
- line-height: 1.625;
1930
- }
1931
- `;
1932
- function ProseStyles() {
1933
- return /* @__PURE__ */ jsx("style", { dangerouslySetInnerHTML: { __html: PROSE_CSS } });
1934
- }
1935
1729
  function cn(...inputs) {
1936
1730
  return twMerge(clsx(inputs));
1937
1731
  }
@@ -2202,7 +1996,6 @@ function StoreProductDetailPage({
2202
1996
  const totalRatings = ratingDistribution ? ratingDistribution.fiveStars + ratingDistribution.fourStars + ratingDistribution.threeStars + ratingDistribution.twoStars + ratingDistribution.oneStar : 0;
2203
1997
  return /* @__PURE__ */ jsxs("div", { className: "w-full", children: [
2204
1998
  /* @__PURE__ */ jsx("style", { dangerouslySetInnerHTML: { __html: ANIM_STYLES } }),
2205
- /* @__PURE__ */ jsx(ProseStyles, {}),
2206
1999
  /* @__PURE__ */ jsx(
2207
2000
  PageHead,
2208
2001
  {
@@ -2370,7 +2163,7 @@ function StoreProductDetailPage({
2370
2163
  ] }),
2371
2164
  product.longDescription && /* @__PURE__ */ jsxs("div", { className: "sd-fu sd-d4 mb-8", children: [
2372
2165
  /* @__PURE__ */ jsx("h2", { className: "text-lg font-bold text-foreground mb-3", children: "About" }),
2373
- /* @__PURE__ */ jsx(Markdown, { className: "boff-prose boff-prose-sm max-w-none text-muted-foreground leading-relaxed", children: product.longDescription })
2166
+ /* @__PURE__ */ jsx(Markdown, { className: "prose prose-sm max-w-none text-muted-foreground leading-relaxed", children: product.longDescription })
2374
2167
  ] }),
2375
2168
  publisher && /* @__PURE__ */ jsxs("div", { className: "sd-fu sd-d5 mb-8 p-4 rounded-xl border border-border bg-card hover:border-primary/30 transition-colors duration-300", children: [
2376
2169
  /* @__PURE__ */ jsx("h2", { className: "text-sm font-semibold text-foreground mb-3", children: "Publisher" }),
@@ -2458,7 +2251,7 @@ function StoreProductDetailPage({
2458
2251
  children: [
2459
2252
  /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between gap-2 mb-2", children: [
2460
2253
  /* @__PURE__ */ jsx(StarRating, { rating: review.rating }),
2461
- review.verifiedPurchase && /* @__PURE__ */ jsx("span", { className: "text-xs text-emerald-700 font-medium", children: "Verified" })
2254
+ review.verifiedPurchase && /* @__PURE__ */ jsx("span", { className: "text-xs text-emerald-500 font-medium", children: "Verified" })
2462
2255
  ] }),
2463
2256
  review.title && /* @__PURE__ */ jsx("p", { className: "font-semibold text-sm text-foreground mb-1", children: review.title }),
2464
2257
  review.comment && /* @__PURE__ */ jsx(Markdown, { className: "text-sm text-muted-foreground leading-relaxed", children: review.comment }),
@@ -2492,7 +2285,7 @@ function StoreProductDetailPage({
2492
2285
  /* @__PURE__ */ jsx(
2493
2286
  "div",
2494
2287
  {
2495
- className: `text-3xl font-extrabold ${priceLabel === "Free" ? "text-emerald-700" : "text-foreground"}`,
2288
+ className: `text-3xl font-extrabold ${priceLabel === "Free" ? "text-emerald-500" : "text-foreground"}`,
2496
2289
  children: priceLabel
2497
2290
  }
2498
2291
  ),