@burdenoff/website-sdk 2026.720.4 → 2026.720.6

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.
@@ -728,7 +728,7 @@ function SectionHead({
728
728
  )
729
729
  ] });
730
730
  }
731
- var TYPE_FILTERS = [
731
+ var DEFAULT_TYPE_FILTERS = [
732
732
  { type: "NODE", label: "Nodes" },
733
733
  { type: "WORKFLOW", label: "Workflows" },
734
734
  { type: "TEMPLATE", label: "Templates" },
@@ -738,9 +738,10 @@ var TYPE_FILTERS = [
738
738
  ];
739
739
  function TypeFilters({
740
740
  browsePath,
741
- onNavigate
741
+ onNavigate,
742
+ typeFilters
742
743
  }) {
743
- return /* @__PURE__ */ jsx("div", { className: "flex flex-wrap gap-2 justify-center", children: TYPE_FILTERS.map((f) => /* @__PURE__ */ jsx(
744
+ return /* @__PURE__ */ jsx("div", { className: "flex flex-wrap gap-2 justify-center", children: typeFilters.map((f) => /* @__PURE__ */ jsx(
744
745
  "button",
745
746
  {
746
747
  type: "button",
@@ -792,6 +793,7 @@ function StoreHomePage({
792
793
  compatibleWith,
793
794
  appLoginUrl,
794
795
  onNavigate,
796
+ terminology,
795
797
  productName,
796
798
  heroTitle,
797
799
  heroSubtitle,
@@ -846,6 +848,10 @@ function StoreHomePage({
846
848
  const hasNoItems = !loading && !error && featuredItems.length === 0 && popularItems.length === 0 && freeItems.length === 0;
847
849
  const resolvedTitle = heroTitle ?? `${productName ? `${productName} ` : ""}Store`;
848
850
  const resolvedSubtitle = heroSubtitle ?? "Discover workflows, nodes, integrations, and templates built by the community.";
851
+ const typeFilters = terminology?.typeFilters ?? DEFAULT_TYPE_FILTERS;
852
+ const searchPlaceholder = terminology?.searchPlaceholder ?? "Search nodes, workflows, templates\u2026";
853
+ const emptyStateDescription = terminology?.emptyStateDescription ?? "As the community ships workflows, templates, and integrations, they will show up right here.";
854
+ const publisherCtaDescription = terminology?.publisherCtaDescription ?? `Share your workflows, nodes, and integrations with ${productName ? "the " : ""}community. Earn from your work or contribute for free.`;
849
855
  return /* @__PURE__ */ jsxs("div", { className: "w-full", children: [
850
856
  /* @__PURE__ */ jsx(
851
857
  PageHead,
@@ -937,7 +943,7 @@ function StoreHomePage({
937
943
  {
938
944
  name: "q",
939
945
  type: "search",
940
- placeholder: "Search nodes, workflows, templates\u2026",
946
+ placeholder: searchPlaceholder,
941
947
  className: "flex-1 h-12 rounded-xl border border-border bg-background px-4 text-sm text-foreground placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-primary/40 shadow-sm"
942
948
  }
943
949
  ),
@@ -952,7 +958,14 @@ function StoreHomePage({
952
958
  ]
953
959
  }
954
960
  ),
955
- /* @__PURE__ */ jsx(TypeFilters, { browsePath, onNavigate: navigate })
961
+ /* @__PURE__ */ jsx(
962
+ TypeFilters,
963
+ {
964
+ browsePath,
965
+ onNavigate: navigate,
966
+ typeFilters
967
+ }
968
+ )
956
969
  ] })
957
970
  ] }),
958
971
  /* @__PURE__ */ jsxs("div", { className: "max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 pb-20 space-y-14 pt-4", children: [
@@ -1075,7 +1088,8 @@ function StoreHomePage({
1075
1088
  "No items have been published for ",
1076
1089
  productName ?? "this product",
1077
1090
  " ",
1078
- "yet. As the community ships workflows, templates, and integrations, they will show up right here."
1091
+ "yet. ",
1092
+ emptyStateDescription
1079
1093
  ] }),
1080
1094
  /* @__PURE__ */ jsxs("div", { className: "flex flex-wrap items-center justify-center gap-3", children: [
1081
1095
  /* @__PURE__ */ jsx(
@@ -1127,12 +1141,7 @@ function StoreHomePage({
1127
1141
  "Become a publisher"
1128
1142
  ] }),
1129
1143
  /* @__PURE__ */ jsx("h2", { className: "text-2xl sm:text-3xl font-bold text-foreground mb-3", children: "Built something useful?" }),
1130
- /* @__PURE__ */ jsxs("p", { className: "text-muted-foreground mb-8 max-w-lg mx-auto leading-relaxed", children: [
1131
- "Share your workflows, nodes, and integrations with",
1132
- " ",
1133
- productName ?? "the",
1134
- " community. Earn from your work or contribute for free."
1135
- ] }),
1144
+ /* @__PURE__ */ jsx("p", { className: "text-muted-foreground mb-8 max-w-lg mx-auto leading-relaxed", children: publisherCtaDescription }),
1136
1145
  /* @__PURE__ */ jsxs("div", { className: "flex flex-col sm:flex-row gap-3 justify-center", children: [
1137
1146
  /* @__PURE__ */ jsx(
1138
1147
  "a",
@@ -1167,16 +1176,18 @@ var SORT_OPTIONS = [
1167
1176
  { value: "PRICE_HIGH", label: "Price: High to Low" },
1168
1177
  { value: "NAME_ASC", label: "Name A\u2013Z" }
1169
1178
  ];
1170
- var TYPE_OPTIONS = [
1171
- { value: "", label: "All types" },
1172
- { value: "APP", label: "Apps" },
1173
- { value: "NODE", label: "Nodes" },
1174
- { value: "WORKFLOW", label: "Workflows" },
1175
- { value: "TEMPLATE", label: "Templates" },
1176
- { value: "INTEGRATION", label: "Integrations" },
1177
- { value: "EXTENSION", label: "Extensions" },
1178
- { value: "THEME", label: "Themes" }
1179
+ var DEFAULT_TYPE_OPTIONS = [
1180
+ { type: "APP", label: "Apps" },
1181
+ { type: "NODE", label: "Nodes" },
1182
+ { type: "WORKFLOW", label: "Workflows" },
1183
+ { type: "TEMPLATE", label: "Templates" },
1184
+ { type: "INTEGRATION", label: "Integrations" },
1185
+ { type: "EXTENSION", label: "Extensions" },
1186
+ { type: "THEME", label: "Themes" }
1179
1187
  ];
1188
+ function buildTypeOptions(typeFilters) {
1189
+ return [{ type: "", label: "All types" }, ...typeFilters];
1190
+ }
1180
1191
  var PRICING_OPTIONS = [
1181
1192
  { value: "", label: "All pricing" },
1182
1193
  { value: "FREE", label: "Free" },
@@ -1229,11 +1240,15 @@ function FacetList({
1229
1240
  function StoreBrowsePage({
1230
1241
  compatibleWith,
1231
1242
  onNavigate,
1243
+ terminology,
1232
1244
  productName,
1233
1245
  seoTitle,
1234
1246
  seoDescription
1235
1247
  }) {
1236
1248
  const client = useWebSDK();
1249
+ const typeFilters = terminology?.typeFilters ?? DEFAULT_TYPE_OPTIONS;
1250
+ const typeOptions = buildTypeOptions(typeFilters);
1251
+ const browseDescription = terminology?.browseDescription ?? "Browse all apps, workflows, nodes, and templates.";
1237
1252
  const initial = parseUrlParams();
1238
1253
  const [search, setSearch] = useState(initial.q);
1239
1254
  const [inputValue, setInputValue] = useState(initial.q);
@@ -1353,15 +1368,15 @@ function StoreBrowsePage({
1353
1368
  const sidebarContent = /* @__PURE__ */ jsxs("div", { className: "space-y-6", children: [
1354
1369
  /* @__PURE__ */ jsxs("div", { children: [
1355
1370
  /* @__PURE__ */ jsx("p", { className: "text-xs font-semibold uppercase tracking-wider text-muted-foreground mb-2", children: "Type" }),
1356
- /* @__PURE__ */ jsx("div", { className: "space-y-1", children: TYPE_OPTIONS.map((opt) => /* @__PURE__ */ jsx(
1371
+ /* @__PURE__ */ jsx("div", { className: "space-y-1", children: typeOptions.map((opt) => /* @__PURE__ */ jsx(
1357
1372
  "button",
1358
1373
  {
1359
1374
  type: "button",
1360
- onClick: () => setType(opt.value),
1361
- className: `w-full text-left text-sm px-2 py-1.5 rounded transition-colors ${type === opt.value ? "bg-primary/10 text-primary font-medium" : "text-muted-foreground hover:text-foreground hover:bg-muted/50"}`,
1375
+ onClick: () => setType(opt.type),
1376
+ className: `w-full text-left text-sm px-2 py-1.5 rounded transition-colors ${type === opt.type ? "bg-primary/10 text-primary font-medium" : "text-muted-foreground hover:text-foreground hover:bg-muted/50"}`,
1362
1377
  children: opt.label
1363
1378
  },
1364
- opt.value
1379
+ opt.type
1365
1380
  )) })
1366
1381
  ] }),
1367
1382
  /* @__PURE__ */ jsxs("div", { children: [
@@ -1431,7 +1446,7 @@ function StoreBrowsePage({
1431
1446
  PageHead,
1432
1447
  {
1433
1448
  title: seoTitle ?? `Browse Store${productName ? ` \u2013 ${productName}` : ""}`,
1434
- description: seoDescription ?? "Browse all apps, workflows, nodes, and templates.",
1449
+ description: seoDescription ?? browseDescription,
1435
1450
  productName
1436
1451
  }
1437
1452
  ),