@burdenoff/microfe-store 2026.916.1 → 2026.916.2

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.
@@ -8,13 +8,13 @@ import { PricingModel as o, ProductNature as s, StoreSortBy as c } from "../gene
8
8
  import { CartDrawer as te } from "../components/cart/CartDrawer.js";
9
9
  import { useCallback as ne, useEffect as re, useId as ie, useMemo as l, useRef as ae, useState as u } from "react";
10
10
  import { useNavigate as oe } from "react-router";
11
- import { AlertCircle as d, Bot as f, Box as p, Brain as se, ChevronDown as m, ChevronRight as ce, Clock as le, Database as ue, Download as de, FileCode2 as fe, Filter as pe, Gift as me, GitBranch as h, LayoutDashboard as g, Loader2 as he, Puzzle as _, Search as ge, ShoppingCart as _e, SlidersHorizontal as ve, Sparkles as v, Star as y, TrendingUp as ye, X as b } from "lucide-react";
12
- import { Fragment as be, jsx as x, jsxs as S } from "react/jsx-runtime";
13
- import { AuroraBackground as xe, GlassCard as Se, GradientText as Ce, IllustratedEmptyState as we, PagePurpose as Te } from "@burdenoff/fe-libs/ui";
14
- import { useEventBus as Ee } from "@burdenoff/fe-libs/shared/events";
15
- import { useDebounce as De } from "@burdenoff/fe-libs/shared/hooks";
11
+ import { AlertCircle as d, Bot as f, Box as p, Brain as se, ChevronDown as m, ChevronRight as ce, Clock as le, Database as ue, Download as de, FileCode2 as fe, Filter as pe, Gift as me, GitBranch as h, LayoutDashboard as g, Loader2 as he, Puzzle as _, Search as ge, ShoppingBag as _e, ShoppingCart as ve, SlidersHorizontal as ye, Sparkles as v, Star as be, TrendingUp as xe, X as y } from "lucide-react";
12
+ import { Fragment as Se, jsx as b, jsxs as x } from "react/jsx-runtime";
13
+ import { AuroraBackground as Ce, GlassCard as we, GradientText as Te, IllustratedEmptyState as Ee, PagePurpose as De } from "@burdenoff/fe-libs/ui";
14
+ import { useEventBus as Oe } from "@burdenoff/fe-libs/shared/events";
15
+ import { useDebounce as ke } from "@burdenoff/fe-libs/shared/hooks";
16
16
  //#region src/pages/MarketplaceHomePage.tsx
17
- var Oe = (e) => e >= 1e6 ? `${(e / 1e6).toFixed(1)}M` : e >= 1e3 ? `${(e / 1e3).toFixed(1)}K` : e.toString(), C = (e, t) => e.pricingModel === "FREE" || e.price === 0 ? t ? t("pages.marketplace.free", "Free") : "Free" : r(e.price, e.currency), w = (e) => ({
17
+ var S = (e) => e >= 1e6 ? `${(e / 1e6).toFixed(1)}M` : e >= 1e3 ? `${(e / 1e3).toFixed(1)}K` : e.toString(), C = (e, t) => e.pricingModel === "FREE" || e.price === 0 ? t ? t("pages.marketplace.free", "Free") : "Free" : r(e.price, e.currency), w = (e) => ({
18
18
  BOTAPP: "var(--color-accent-blue)",
19
19
  AGENT: "var(--color-accent-purple)",
20
20
  CONSOLE: "var(--color-accent-teal)",
@@ -50,93 +50,96 @@ var Oe = (e) => e >= 1e6 ? `${(e / 1e6).toFixed(1)}M` : e >= 1e3 ? `${(e / 1e3).
50
50
  THEME: _,
51
51
  PLUGIN: _,
52
52
  COMPONENT: p
53
- }, D = ({ type: e, className: t, style: n }) => /* @__PURE__ */ x(E[e] || p, {
53
+ }, D = ({ type: e, className: t, style: n }) => /* @__PURE__ */ b(E[e] || p, {
54
54
  className: t,
55
55
  style: n
56
56
  }), O = ({ product: e, onClick: t, variant: n = "default" }) => {
57
57
  let r = a(), i = w(e.type);
58
- return n === "featured" ? /* @__PURE__ */ S("button", {
58
+ return n === "featured" ? /* @__PURE__ */ x("button", {
59
59
  type: "button",
60
60
  onClick: t,
61
61
  className: "group relative flex size-full cursor-pointer flex-col overflow-hidden rounded-2xl border border-border-seam bg-gradient-to-br from-bg-surface to-bg-sunken p-6 text-left shadow-elevation-1 transition-[box-shadow,border-color,color] hover:border-border-strong hover:shadow-[var(--shadow-pop)]",
62
62
  children: [
63
- e.featured && /* @__PURE__ */ S("div", {
63
+ e.featured && /* @__PURE__ */ x("div", {
64
64
  className: "absolute right-4 top-4 flex items-center gap-1 rounded-full bg-status-warning-bg-subtle px-2 py-1 text-xs font-medium text-status-warning-text",
65
- children: [/* @__PURE__ */ x(v, { className: "size-3" }), r("pages.marketplace.featured", "Featured")]
65
+ children: [/* @__PURE__ */ b(v, { className: "size-3" }), r("pages.marketplace.featured", "Featured")]
66
66
  }),
67
- /* @__PURE__ */ S("div", {
67
+ /* @__PURE__ */ x("div", {
68
68
  className: "flex items-start gap-4",
69
- children: [/* @__PURE__ */ x("div", {
69
+ children: [/* @__PURE__ */ b("div", {
70
70
  className: "flex size-16 flex-shrink-0 items-center justify-center rounded-2xl",
71
71
  style: { backgroundColor: T(e.type) },
72
- children: e.icon ? /* @__PURE__ */ x("img", {
72
+ children: e.icon ? /* @__PURE__ */ b("img", {
73
73
  src: e.icon,
74
74
  alt: e.name,
75
75
  className: "size-10 rounded-lg object-cover"
76
- }) : /* @__PURE__ */ x(D, {
76
+ }) : /* @__PURE__ */ b(D, {
77
77
  type: e.type,
78
78
  className: "size-10",
79
79
  style: { color: i }
80
80
  })
81
- }), /* @__PURE__ */ S("div", {
81
+ }), /* @__PURE__ */ x("div", {
82
82
  className: "flex-1 overflow-hidden",
83
- children: [/* @__PURE__ */ x("h3", {
83
+ children: [/* @__PURE__ */ b("h3", {
84
84
  className: "truncate text-lg font-semibold text-text-primary group-hover:text-text-link",
85
85
  children: e.name
86
- }), /* @__PURE__ */ S("p", {
86
+ }), /* @__PURE__ */ x("p", {
87
87
  className: "flex items-center gap-2 text-sm text-text-muted",
88
- children: [/* @__PURE__ */ x(D, {
88
+ children: [/* @__PURE__ */ b(D, {
89
89
  type: e.type,
90
90
  className: "size-3.5"
91
91
  }), e.category || e.type]
92
92
  })]
93
93
  })]
94
94
  }),
95
- /* @__PURE__ */ x("p", {
95
+ /* @__PURE__ */ b("p", {
96
96
  className: "mt-4 line-clamp-2 flex-1 text-sm text-text-muted",
97
97
  children: e.description || r("pages.productDetail.noDesc", "No description available")
98
98
  }),
99
- /* @__PURE__ */ S("div", {
99
+ /* @__PURE__ */ x("div", {
100
100
  className: "mt-4 flex items-center justify-between border-t border-border-seam pt-4",
101
- children: [/* @__PURE__ */ S("div", {
101
+ children: [/* @__PURE__ */ x("div", {
102
102
  className: "flex items-center gap-3",
103
- children: [/* @__PURE__ */ S("span", {
103
+ children: [/* @__PURE__ */ x("span", {
104
+ className: "flex items-center gap-1 text-sm text-text-muted",
105
+ children: [/* @__PURE__ */ b(be, { className: "size-4 fill-current text-status-warning-text" }), (e.rating ?? 0).toFixed(1)]
106
+ }), e.nature === "PHYSICAL" ? /* @__PURE__ */ x("span", {
104
107
  className: "flex items-center gap-1 text-sm text-text-muted",
105
- children: [/* @__PURE__ */ x(y, { className: "size-4 fill-current text-status-warning-text" }), (e.rating ?? 0).toFixed(1)]
106
- }), /* @__PURE__ */ S("span", {
108
+ children: [/* @__PURE__ */ b(_e, { className: "size-4" }), S(e.purchaseCount)]
109
+ }) : /* @__PURE__ */ x("span", {
107
110
  className: "flex items-center gap-1 text-sm text-text-muted",
108
- children: [/* @__PURE__ */ x(de, { className: "size-4" }), Oe(e.downloads)]
111
+ children: [/* @__PURE__ */ b(de, { className: "size-4" }), S(e.downloads)]
109
112
  })]
110
- }), /* @__PURE__ */ x("span", {
113
+ }), /* @__PURE__ */ b("span", {
111
114
  className: "rounded-full bg-action-primary-bg/10 px-3 py-1 text-sm font-medium text-text-link",
112
115
  children: C(e, r)
113
116
  })]
114
117
  })
115
118
  ]
116
- }) : n === "compact" ? /* @__PURE__ */ S("button", {
119
+ }) : n === "compact" ? /* @__PURE__ */ x("button", {
117
120
  type: "button",
118
121
  onClick: t,
119
122
  className: "group flex cursor-pointer items-center gap-3 rounded-xl border border-transparent p-3 text-left transition-[background-color,border-color] hover:border-border-seam hover:bg-bg-surface",
120
123
  children: [
121
- /* @__PURE__ */ x("div", {
124
+ /* @__PURE__ */ b("div", {
122
125
  className: "flex size-12 flex-shrink-0 items-center justify-center rounded-xl",
123
126
  style: { backgroundColor: T(e.type) },
124
- children: e.icon ? /* @__PURE__ */ x("img", {
127
+ children: e.icon ? /* @__PURE__ */ b("img", {
125
128
  src: e.icon,
126
129
  alt: e.name,
127
130
  className: "size-8 rounded-lg object-cover"
128
- }) : /* @__PURE__ */ x(D, {
131
+ }) : /* @__PURE__ */ b(D, {
129
132
  type: e.type,
130
133
  className: "size-8",
131
134
  style: { color: i }
132
135
  })
133
136
  }),
134
- /* @__PURE__ */ S("div", {
137
+ /* @__PURE__ */ x("div", {
135
138
  className: "flex-1 overflow-hidden",
136
- children: [/* @__PURE__ */ x("h4", {
139
+ children: [/* @__PURE__ */ b("h4", {
137
140
  className: "truncate font-medium text-text-primary group-hover:text-text-link",
138
141
  children: e.name
139
- }), /* @__PURE__ */ S("p", {
142
+ }), /* @__PURE__ */ x("p", {
140
143
  className: "truncate text-xs text-text-muted",
141
144
  children: [
142
145
  e.category || e.type,
@@ -146,213 +149,216 @@ var Oe = (e) => e >= 1e6 ? `${(e / 1e6).toFixed(1)}M` : e >= 1e3 ? `${(e / 1e3).
146
149
  ]
147
150
  })]
148
151
  }),
149
- /* @__PURE__ */ x("span", {
152
+ /* @__PURE__ */ b("span", {
150
153
  className: "text-xs font-medium text-text-muted",
151
154
  children: C(e, r)
152
155
  })
153
156
  ]
154
- }) : /* @__PURE__ */ S("button", {
157
+ }) : /* @__PURE__ */ x("button", {
155
158
  type: "button",
156
159
  onClick: t,
157
160
  className: "group flex cursor-pointer flex-col overflow-hidden rounded-xl border border-border-seam bg-bg-surface p-4 text-left shadow-elevation-1 transition-[box-shadow,border-color,color] hover:border-border-strong hover:shadow-[var(--shadow-pop)]",
158
161
  children: [
159
- /* @__PURE__ */ S("div", {
162
+ /* @__PURE__ */ x("div", {
160
163
  className: "flex items-start gap-3",
161
- children: [/* @__PURE__ */ x("div", {
164
+ children: [/* @__PURE__ */ b("div", {
162
165
  className: "flex size-14 flex-shrink-0 items-center justify-center rounded-xl",
163
166
  style: { backgroundColor: T(e.type) },
164
- children: e.icon ? /* @__PURE__ */ x("img", {
167
+ children: e.icon ? /* @__PURE__ */ b("img", {
165
168
  src: e.icon,
166
169
  alt: e.name,
167
170
  className: "size-9 rounded-lg object-cover"
168
- }) : /* @__PURE__ */ x(D, {
171
+ }) : /* @__PURE__ */ b(D, {
169
172
  type: e.type,
170
173
  className: "size-9",
171
174
  style: { color: i }
172
175
  })
173
- }), /* @__PURE__ */ S("div", {
176
+ }), /* @__PURE__ */ x("div", {
174
177
  className: "flex-1 overflow-hidden",
175
- children: [/* @__PURE__ */ x("h4", {
178
+ children: [/* @__PURE__ */ b("h4", {
176
179
  className: "truncate font-semibold text-text-primary group-hover:text-text-link",
177
180
  children: e.name
178
- }), /* @__PURE__ */ S("p", {
181
+ }), /* @__PURE__ */ x("p", {
179
182
  className: "flex items-center gap-1.5 text-xs text-text-muted",
180
- children: [/* @__PURE__ */ x(D, {
183
+ children: [/* @__PURE__ */ b(D, {
181
184
  type: e.type,
182
185
  className: "size-3"
183
186
  }), e.category || e.type]
184
187
  })]
185
188
  })]
186
189
  }),
187
- /* @__PURE__ */ x("p", {
190
+ /* @__PURE__ */ b("p", {
188
191
  className: "mt-3 line-clamp-2 text-sm text-text-muted",
189
192
  children: e.description || r("pages.productDetail.noDesc", "No description available")
190
193
  }),
191
- /* @__PURE__ */ S("div", {
194
+ /* @__PURE__ */ x("div", {
192
195
  className: "mt-3 flex items-center justify-between",
193
- children: [/* @__PURE__ */ S("div", {
196
+ children: [/* @__PURE__ */ x("div", {
194
197
  className: "flex items-center gap-2",
195
198
  children: [
196
- /* @__PURE__ */ S("span", {
199
+ /* @__PURE__ */ x("span", {
197
200
  className: "flex items-center gap-0.5 text-xs text-text-muted",
198
- children: [/* @__PURE__ */ x(y, { className: "size-3.5 fill-current text-status-warning-text" }), (e.rating ?? 0).toFixed(1)]
201
+ children: [/* @__PURE__ */ b(be, { className: "size-3.5 fill-current text-status-warning-text" }), (e.rating ?? 0).toFixed(1)]
199
202
  }),
200
- /* @__PURE__ */ x("span", {
203
+ /* @__PURE__ */ b("span", {
201
204
  className: "text-xs text-text-muted",
202
205
  children: "·"
203
206
  }),
204
- /* @__PURE__ */ x("span", {
207
+ /* @__PURE__ */ b("span", {
205
208
  className: "text-xs text-text-muted",
206
- children: r("pages.marketplace.downloads", "{{count}} downloads", { count: Oe(e.downloads) })
209
+ children: e.nature === "PHYSICAL" ? r("pages.marketplace.purchases", "{{count}} purchases", { count: S(e.purchaseCount) }) : r("pages.marketplace.downloads", "{{count}} downloads", { count: S(e.downloads) })
207
210
  })
208
211
  ]
209
- }), /* @__PURE__ */ x("span", {
212
+ }), /* @__PURE__ */ b("span", {
210
213
  className: "text-xs font-semibold text-text-link",
211
214
  children: C(e, r)
212
215
  })]
213
216
  })
214
217
  ]
215
218
  });
216
- }, ke = ({ product: e, onClick: t }) => {
219
+ }, Ae = ({ product: e, onClick: t }) => {
217
220
  let n = a();
218
- return /* @__PURE__ */ S("button", {
221
+ return /* @__PURE__ */ x("button", {
219
222
  type: "button",
220
223
  onClick: t,
221
224
  className: "group flex cursor-pointer items-center gap-3 rounded-xl border border-status-warning-border/30 bg-bg-surface p-4 text-left shadow-elevation-1 transition-all hover:border-status-warning-border/60 hover:shadow-[var(--shadow-pop)]",
222
- children: [/* @__PURE__ */ S("div", {
225
+ children: [/* @__PURE__ */ x("div", {
223
226
  className: "relative flex size-14 flex-shrink-0 items-center justify-center rounded-xl bg-status-warning-bg-subtle",
224
- children: [e.icon ? /* @__PURE__ */ x("img", {
227
+ children: [e.icon ? /* @__PURE__ */ b("img", {
225
228
  src: e.icon,
226
229
  alt: e.name,
227
230
  className: "size-9 rounded-lg object-cover grayscale"
228
- }) : /* @__PURE__ */ x(p, { className: "size-9 text-status-warning-text/50" }), /* @__PURE__ */ x("span", {
231
+ }) : /* @__PURE__ */ b(p, { className: "size-9 text-status-warning-text/50" }), /* @__PURE__ */ b("span", {
229
232
  className: "absolute -right-1 -top-1 flex size-4 items-center justify-center rounded-full bg-status-warning-bg-subtle border border-status-warning-border/40",
230
- children: /* @__PURE__ */ x(d, { className: "size-2.5 text-status-warning-text" })
233
+ children: /* @__PURE__ */ b(d, { className: "size-2.5 text-status-warning-text" })
231
234
  })]
232
- }), /* @__PURE__ */ S("div", {
235
+ }), /* @__PURE__ */ x("div", {
233
236
  className: "min-w-0 flex-1",
234
- children: [/* @__PURE__ */ x("h4", {
237
+ children: [/* @__PURE__ */ b("h4", {
235
238
  className: "truncate font-semibold text-text-secondary group-hover:text-text-link",
236
239
  children: e.name
237
- }), /* @__PURE__ */ S("span", {
240
+ }), /* @__PURE__ */ x("span", {
238
241
  title: n("pages.marketplace.deprecatedHint", "This node is no longer supported. We encourage you to migrate to newer alternatives."),
239
242
  className: "mt-1 inline-flex cursor-help items-center gap-1 rounded-full bg-status-warning-bg-subtle px-2 py-0.5 text-xs font-medium text-status-warning-text",
240
- children: [/* @__PURE__ */ x(d, { className: "size-3" }), n("pages.marketplace.deprecated", "No Longer Supported")]
243
+ children: [/* @__PURE__ */ b(d, { className: "size-3" }), n("pages.marketplace.deprecated", "No Longer Supported")]
241
244
  })]
242
245
  })]
243
246
  });
244
247
  }, k = ({ icon: e, title: t, subtitle: n, onViewAll: r }) => {
245
248
  let i = a();
246
- return /* @__PURE__ */ S("div", {
249
+ return /* @__PURE__ */ x("div", {
247
250
  className: "mb-4 flex items-center justify-between",
248
- children: [/* @__PURE__ */ S("div", {
251
+ children: [/* @__PURE__ */ x("div", {
249
252
  className: "flex items-center gap-3",
250
- children: [/* @__PURE__ */ x("div", {
253
+ children: [/* @__PURE__ */ b("div", {
251
254
  className: "flex size-10 items-center justify-center rounded-xl bg-action-primary-bg/10",
252
- children: /* @__PURE__ */ x(e, { className: "size-5 text-text-link" })
253
- }), /* @__PURE__ */ S("div", { children: [/* @__PURE__ */ x("h2", {
255
+ children: /* @__PURE__ */ b(e, { className: "size-5 text-text-link" })
256
+ }), /* @__PURE__ */ x("div", { children: [/* @__PURE__ */ b("h2", {
254
257
  className: "text-lg font-semibold text-text-primary",
255
258
  children: t
256
- }), n && /* @__PURE__ */ x("p", {
259
+ }), n && /* @__PURE__ */ b("p", {
257
260
  className: "text-sm text-text-muted",
258
261
  children: n
259
262
  })] })]
260
- }), r && /* @__PURE__ */ S("button", {
263
+ }), r && /* @__PURE__ */ x("button", {
261
264
  type: "button",
262
265
  onClick: r,
263
266
  className: "cursor-pointer flex items-center gap-1 text-sm font-medium text-text-link hover:underline",
264
- children: [i("pages.marketplace.viewAll", "View all"), /* @__PURE__ */ x(ce, { className: "size-4" })]
267
+ children: [i("pages.marketplace.viewAll", "View all"), /* @__PURE__ */ b(ce, { className: "size-4" })]
265
268
  })]
266
269
  });
267
- }, Ae = ({ typeId: e, name: t, count: n, active: r, onClick: i }) => /* @__PURE__ */ S("button", {
270
+ }, je = ({ typeId: e, name: t, count: n, active: r, onClick: i }) => /* @__PURE__ */ x("button", {
268
271
  type: "button",
269
272
  onClick: i,
270
273
  className: `flex cursor-pointer items-center gap-2 rounded-full px-4 py-2 text-sm font-medium transition-all ${r ? "bg-action-primary-bg text-action-primary-text" : "bg-bg-surface text-text-primary hover:bg-bg-sunken"}`,
271
274
  children: [
272
- /* @__PURE__ */ x(D, {
275
+ /* @__PURE__ */ b(D, {
273
276
  type: e,
274
277
  className: "size-4"
275
278
  }),
276
279
  t,
277
- /* @__PURE__ */ x("span", {
280
+ /* @__PURE__ */ b("span", {
278
281
  className: `rounded-full px-1.5 py-0.5 text-xs ${r ? "bg-bg-surface/20" : "bg-bg-sunken"}`,
279
282
  children: n
280
283
  })
281
284
  ]
282
- }), je = ({ featuredProducts: e, onProductClick: t, dataTour: n }) => {
285
+ }), Me = ({ featuredProducts: e, onProductClick: t, dataTour: n }) => {
283
286
  let r = a(), [i, ee] = u(0), o = e[i] || e[0];
284
287
  if (!o) return null;
285
288
  let s = w(o.type);
286
- return /* @__PURE__ */ S(Se, {
289
+ return /* @__PURE__ */ x(we, {
287
290
  treatment: "glass",
288
291
  glow: !0,
289
292
  "data-tour": n,
290
293
  className: "relative overflow-hidden rounded-2xl p-8",
291
294
  children: [
292
- /* @__PURE__ */ x("div", {
295
+ /* @__PURE__ */ b("div", {
293
296
  className: "absolute inset-0 opacity-10",
294
297
  style: { background: `linear-gradient(135deg, ${s} 0%, transparent 50%)` }
295
298
  }),
296
- /* @__PURE__ */ S("div", {
299
+ /* @__PURE__ */ x("div", {
297
300
  className: "relative z-10 flex items-center gap-8",
298
- children: [/* @__PURE__ */ S("div", {
301
+ children: [/* @__PURE__ */ x("div", {
299
302
  className: "flex-1",
300
303
  children: [
301
- /* @__PURE__ */ S("div", {
304
+ /* @__PURE__ */ x("div", {
302
305
  className: "mb-4 flex items-center gap-2",
303
- children: [/* @__PURE__ */ S("span", {
306
+ children: [/* @__PURE__ */ x("span", {
304
307
  className: "flex items-center gap-1 rounded-full bg-status-warning-bg-subtle px-3 py-1 text-xs font-semibold text-status-warning-text motion-safe:animate-vc-glow-pulse",
305
- children: [/* @__PURE__ */ x(v, { className: "size-3" }), r("pages.marketplace.featuredApp", "Featured App")]
306
- }), /* @__PURE__ */ x("span", {
308
+ children: [/* @__PURE__ */ b(v, { className: "size-3" }), r("pages.marketplace.featuredApp", "Featured App")]
309
+ }), /* @__PURE__ */ b("span", {
307
310
  className: "rounded-full bg-action-primary-bg/10 px-3 py-1 text-xs font-medium text-text-link",
308
311
  children: o.category || o.type
309
312
  })]
310
313
  }),
311
- /* @__PURE__ */ x("h1", {
314
+ /* @__PURE__ */ b("h1", {
312
315
  className: "mb-3 text-3xl font-bold text-text-primary",
313
316
  children: o.name
314
317
  }),
315
- /* @__PURE__ */ x("p", {
318
+ /* @__PURE__ */ b("p", {
316
319
  className: "mb-6 max-w-xl text-text-muted",
317
320
  children: o.description || r("pages.productDetail.noDesc", "No description available")
318
321
  }),
319
- /* @__PURE__ */ S("div", {
322
+ /* @__PURE__ */ x("div", {
320
323
  className: "mb-6 flex items-center gap-4",
321
- children: [/* @__PURE__ */ S("span", {
324
+ children: [/* @__PURE__ */ x("span", {
322
325
  className: "flex items-center gap-1 text-sm",
323
326
  children: [
324
- /* @__PURE__ */ x(y, { className: "size-5 fill-current text-status-warning-text" }),
325
- /* @__PURE__ */ x("span", {
327
+ /* @__PURE__ */ b(be, { className: "size-5 fill-current text-status-warning-text" }),
328
+ /* @__PURE__ */ b("span", {
326
329
  className: "font-semibold text-text-primary",
327
330
  children: (o.rating ?? 0).toFixed(1)
328
331
  }),
329
- /* @__PURE__ */ x("span", {
332
+ /* @__PURE__ */ b("span", {
330
333
  className: "text-text-muted",
331
334
  children: r("pages.productDetail.reviews_count", "({{count}} reviews)", { count: o.reviewCount })
332
335
  })
333
336
  ]
334
- }), /* @__PURE__ */ S("span", {
337
+ }), o.nature === "PHYSICAL" ? /* @__PURE__ */ x("span", {
338
+ className: "flex items-center gap-1 text-sm text-text-muted",
339
+ children: [/* @__PURE__ */ b(_e, { className: "size-4" }), r("pages.marketplace.purchasesCount", "{{count}} purchases", { count: o.purchaseCount.toLocaleString() })]
340
+ }) : /* @__PURE__ */ x("span", {
335
341
  className: "flex items-center gap-1 text-sm text-text-muted",
336
- children: [/* @__PURE__ */ x(de, { className: "size-4" }), r("pages.marketplace.downloadsCount", "{{count}} downloads", { count: o.downloads.toLocaleString() })]
342
+ children: [/* @__PURE__ */ b(de, { className: "size-4" }), r("pages.marketplace.downloadsCount", "{{count}} downloads", { count: o.downloads.toLocaleString() })]
337
343
  })]
338
344
  }),
339
- /* @__PURE__ */ x("button", {
345
+ /* @__PURE__ */ b("button", {
340
346
  type: "button",
341
347
  onClick: () => t(o),
342
348
  className: "cursor-pointer rounded-lg bg-action-primary-bg px-6 py-3 font-semibold text-action-primary-text transition-opacity hover:opacity-90",
343
349
  children: r("pages.marketplace.viewDetails", "View Details")
344
350
  })
345
351
  ]
346
- }), /* @__PURE__ */ x("div", {
352
+ }), /* @__PURE__ */ b("div", {
347
353
  className: "hidden flex-shrink-0 lg:block",
348
- children: /* @__PURE__ */ x("div", {
354
+ children: /* @__PURE__ */ b("div", {
349
355
  className: "flex size-48 items-center justify-center rounded-3xl shadow-lg",
350
356
  style: { backgroundColor: T(o.type) },
351
- children: o.icon ? /* @__PURE__ */ x("img", {
357
+ children: o.icon ? /* @__PURE__ */ b("img", {
352
358
  src: o.icon,
353
359
  alt: o.name,
354
360
  className: "size-32 rounded-2xl object-cover"
355
- }) : /* @__PURE__ */ x(D, {
361
+ }) : /* @__PURE__ */ b(D, {
356
362
  type: o.type,
357
363
  className: "size-32",
358
364
  style: { color: s }
@@ -360,9 +366,9 @@ var Oe = (e) => e >= 1e6 ? `${(e / 1e6).toFixed(1)}M` : e >= 1e3 ? `${(e / 1e3).
360
366
  })
361
367
  })]
362
368
  }),
363
- e.length > 1 && /* @__PURE__ */ x("div", {
369
+ e.length > 1 && /* @__PURE__ */ b("div", {
364
370
  className: "relative z-10 mt-6 flex gap-2",
365
- children: e.map((e, t) => /* @__PURE__ */ x("button", {
371
+ children: e.map((e, t) => /* @__PURE__ */ b("button", {
366
372
  type: "button",
367
373
  onClick: () => ee(t),
368
374
  className: `h-2 w-8 rounded-full transition-all ${t === i ? "bg-action-primary-bg" : "bg-border-default hover:bg-action-primary-border"}`,
@@ -371,66 +377,66 @@ var Oe = (e) => e >= 1e6 ? `${(e / 1e6).toFixed(1)}M` : e >= 1e3 ? `${(e / 1e3).
371
377
  })
372
378
  ]
373
379
  });
374
- }, A = ({ variant: e = "default" }) => e === "featured" ? /* @__PURE__ */ S("div", {
380
+ }, A = ({ variant: e = "default" }) => e === "featured" ? /* @__PURE__ */ x("div", {
375
381
  className: "h-full animate-pulse rounded-2xl border border-border-seam bg-bg-surface p-6",
376
- children: [/* @__PURE__ */ S("div", {
382
+ children: [/* @__PURE__ */ x("div", {
377
383
  className: "flex items-start gap-4",
378
- children: [/* @__PURE__ */ x("div", { className: "size-16 rounded-2xl bg-bg-sunken" }), /* @__PURE__ */ S("div", {
384
+ children: [/* @__PURE__ */ b("div", { className: "size-16 rounded-2xl bg-bg-sunken" }), /* @__PURE__ */ x("div", {
379
385
  className: "flex-1 space-y-2",
380
- children: [/* @__PURE__ */ x("div", { className: "h-5 w-3/4 rounded bg-bg-sunken" }), /* @__PURE__ */ x("div", { className: "h-4 w-1/2 rounded bg-bg-sunken" })]
386
+ children: [/* @__PURE__ */ b("div", { className: "h-5 w-3/4 rounded bg-bg-sunken" }), /* @__PURE__ */ b("div", { className: "h-4 w-1/2 rounded bg-bg-sunken" })]
381
387
  })]
382
- }), /* @__PURE__ */ S("div", {
388
+ }), /* @__PURE__ */ x("div", {
383
389
  className: "mt-4 space-y-2",
384
- children: [/* @__PURE__ */ x("div", { className: "h-4 w-full rounded bg-bg-sunken" }), /* @__PURE__ */ x("div", { className: "h-4 w-2/3 rounded bg-bg-sunken" })]
390
+ children: [/* @__PURE__ */ b("div", { className: "h-4 w-full rounded bg-bg-sunken" }), /* @__PURE__ */ b("div", { className: "h-4 w-2/3 rounded bg-bg-sunken" })]
385
391
  })]
386
- }) : e === "compact" ? /* @__PURE__ */ S("div", {
392
+ }) : e === "compact" ? /* @__PURE__ */ x("div", {
387
393
  className: "flex animate-pulse items-center gap-3 p-3",
388
- children: [/* @__PURE__ */ x("div", { className: "size-12 rounded-xl bg-bg-sunken" }), /* @__PURE__ */ S("div", {
394
+ children: [/* @__PURE__ */ b("div", { className: "size-12 rounded-xl bg-bg-sunken" }), /* @__PURE__ */ x("div", {
389
395
  className: "flex-1 space-y-2",
390
- children: [/* @__PURE__ */ x("div", { className: "h-4 w-3/4 rounded bg-bg-sunken" }), /* @__PURE__ */ x("div", { className: "h-3 w-1/2 rounded bg-bg-sunken" })]
396
+ children: [/* @__PURE__ */ b("div", { className: "h-4 w-3/4 rounded bg-bg-sunken" }), /* @__PURE__ */ b("div", { className: "h-3 w-1/2 rounded bg-bg-sunken" })]
391
397
  })]
392
- }) : /* @__PURE__ */ S("div", {
398
+ }) : /* @__PURE__ */ x("div", {
393
399
  className: "animate-pulse rounded-xl border border-border-seam bg-bg-surface p-4",
394
- children: [/* @__PURE__ */ S("div", {
400
+ children: [/* @__PURE__ */ x("div", {
395
401
  className: "flex items-start gap-3",
396
- children: [/* @__PURE__ */ x("div", { className: "size-14 rounded-xl bg-bg-sunken" }), /* @__PURE__ */ S("div", {
402
+ children: [/* @__PURE__ */ b("div", { className: "size-14 rounded-xl bg-bg-sunken" }), /* @__PURE__ */ x("div", {
397
403
  className: "flex-1 space-y-2",
398
- children: [/* @__PURE__ */ x("div", { className: "h-4 w-3/4 rounded bg-bg-sunken" }), /* @__PURE__ */ x("div", { className: "h-3 w-1/2 rounded bg-bg-sunken" })]
404
+ children: [/* @__PURE__ */ b("div", { className: "h-4 w-3/4 rounded bg-bg-sunken" }), /* @__PURE__ */ b("div", { className: "h-3 w-1/2 rounded bg-bg-sunken" })]
399
405
  })]
400
- }), /* @__PURE__ */ S("div", {
406
+ }), /* @__PURE__ */ x("div", {
401
407
  className: "mt-3 space-y-2",
402
- children: [/* @__PURE__ */ x("div", { className: "h-3 w-full rounded bg-bg-sunken" }), /* @__PURE__ */ x("div", { className: "h-3 w-2/3 rounded bg-bg-sunken" })]
408
+ children: [/* @__PURE__ */ b("div", { className: "h-3 w-full rounded bg-bg-sunken" }), /* @__PURE__ */ b("div", { className: "h-3 w-2/3 rounded bg-bg-sunken" })]
403
409
  })]
404
- }), j = () => /* @__PURE__ */ S("div", {
410
+ }), j = () => /* @__PURE__ */ x("div", {
405
411
  className: "animate-pulse rounded-2xl bg-gradient-to-r from-bg-surface via-bg-sunken to-bg-surface p-8",
406
- children: [/* @__PURE__ */ S("div", {
412
+ children: [/* @__PURE__ */ x("div", {
407
413
  className: "flex items-center gap-8",
408
- children: [/* @__PURE__ */ S("div", {
414
+ children: [/* @__PURE__ */ x("div", {
409
415
  className: "flex-1 space-y-4",
410
416
  children: [
411
- /* @__PURE__ */ S("div", {
417
+ /* @__PURE__ */ x("div", {
412
418
  className: "flex gap-2",
413
- children: [/* @__PURE__ */ x("div", { className: "h-6 w-24 rounded-full bg-bg-sunken" }), /* @__PURE__ */ x("div", { className: "h-6 w-20 rounded-full bg-bg-sunken" })]
419
+ children: [/* @__PURE__ */ b("div", { className: "h-6 w-24 rounded-full bg-bg-sunken" }), /* @__PURE__ */ b("div", { className: "h-6 w-20 rounded-full bg-bg-sunken" })]
414
420
  }),
415
- /* @__PURE__ */ x("div", { className: "h-9 w-3/4 rounded bg-bg-sunken" }),
416
- /* @__PURE__ */ S("div", {
421
+ /* @__PURE__ */ b("div", { className: "h-9 w-3/4 rounded bg-bg-sunken" }),
422
+ /* @__PURE__ */ x("div", {
417
423
  className: "space-y-2",
418
- children: [/* @__PURE__ */ x("div", { className: "h-4 w-full rounded bg-bg-sunken" }), /* @__PURE__ */ x("div", { className: "h-4 w-5/6 rounded bg-bg-sunken" })]
424
+ children: [/* @__PURE__ */ b("div", { className: "h-4 w-full rounded bg-bg-sunken" }), /* @__PURE__ */ b("div", { className: "h-4 w-5/6 rounded bg-bg-sunken" })]
419
425
  }),
420
- /* @__PURE__ */ S("div", {
426
+ /* @__PURE__ */ x("div", {
421
427
  className: "flex gap-4",
422
- children: [/* @__PURE__ */ x("div", { className: "h-5 w-24 rounded bg-bg-sunken" }), /* @__PURE__ */ x("div", { className: "h-5 w-32 rounded bg-bg-sunken" })]
428
+ children: [/* @__PURE__ */ b("div", { className: "h-5 w-24 rounded bg-bg-sunken" }), /* @__PURE__ */ b("div", { className: "h-5 w-32 rounded bg-bg-sunken" })]
423
429
  }),
424
- /* @__PURE__ */ x("div", { className: "h-12 w-36 rounded-lg bg-bg-sunken" })
430
+ /* @__PURE__ */ b("div", { className: "h-12 w-36 rounded-lg bg-bg-sunken" })
425
431
  ]
426
- }), /* @__PURE__ */ x("div", { className: "hidden size-48 rounded-3xl bg-bg-sunken lg:block" })]
427
- }), /* @__PURE__ */ x("div", {
432
+ }), /* @__PURE__ */ b("div", { className: "hidden size-48 rounded-3xl bg-bg-sunken lg:block" })]
433
+ }), /* @__PURE__ */ b("div", {
428
434
  className: "mt-6 flex gap-2",
429
435
  children: [...[
430
436
  ,
431
437
  ,
432
438
  ,
433
- ]].map((e, t) => /* @__PURE__ */ x("div", { className: "h-2 w-8 rounded-full bg-bg-sunken" }, t))
439
+ ]].map((e, t) => /* @__PURE__ */ b("div", { className: "h-2 w-8 rounded-full bg-bg-sunken" }, t))
434
440
  })]
435
441
  }), M = [
436
442
  100,
@@ -441,30 +447,30 @@ var Oe = (e) => e >= 1e6 ? `${(e / 1e6).toFixed(1)}M` : e >= 1e3 ? `${(e / 1e3).
441
447
  95,
442
448
  115,
443
449
  105
444
- ], N = () => /* @__PURE__ */ S("div", {
450
+ ], N = () => /* @__PURE__ */ x("div", {
445
451
  className: "space-y-4",
446
- children: [/* @__PURE__ */ x("div", { className: "h-6 w-32 animate-pulse rounded bg-bg-sunken" }), /* @__PURE__ */ x("div", {
452
+ children: [/* @__PURE__ */ b("div", { className: "h-6 w-32 animate-pulse rounded bg-bg-sunken" }), /* @__PURE__ */ b("div", {
447
453
  className: "flex flex-wrap gap-2",
448
- children: M.map((e, t) => /* @__PURE__ */ x("div", {
454
+ children: M.map((e, t) => /* @__PURE__ */ b("div", {
449
455
  className: "h-9 animate-pulse rounded-full bg-bg-sunken",
450
456
  style: { width: `${e}px` }
451
457
  }, t))
452
458
  })]
453
- }), P = () => /* @__PURE__ */ S("div", {
459
+ }), P = () => /* @__PURE__ */ x("div", {
454
460
  className: "mb-4 flex items-center justify-between",
455
- children: [/* @__PURE__ */ S("div", {
461
+ children: [/* @__PURE__ */ x("div", {
456
462
  className: "flex items-center gap-3",
457
- children: [/* @__PURE__ */ x("div", { className: "size-10 animate-pulse rounded-xl bg-bg-sunken" }), /* @__PURE__ */ S("div", {
463
+ children: [/* @__PURE__ */ b("div", { className: "size-10 animate-pulse rounded-xl bg-bg-sunken" }), /* @__PURE__ */ x("div", {
458
464
  className: "space-y-1",
459
- children: [/* @__PURE__ */ x("div", { className: "h-5 w-40 animate-pulse rounded bg-bg-sunken" }), /* @__PURE__ */ x("div", { className: "h-4 w-32 animate-pulse rounded bg-bg-sunken" })]
465
+ children: [/* @__PURE__ */ b("div", { className: "h-5 w-40 animate-pulse rounded bg-bg-sunken" }), /* @__PURE__ */ b("div", { className: "h-4 w-32 animate-pulse rounded bg-bg-sunken" })]
460
466
  })]
461
- }), /* @__PURE__ */ x("div", { className: "h-4 w-16 animate-pulse rounded bg-bg-sunken" })]
462
- }), Me = () => /* @__PURE__ */ S("div", {
467
+ }), /* @__PURE__ */ b("div", { className: "h-4 w-16 animate-pulse rounded bg-bg-sunken" })]
468
+ }), Ne = () => /* @__PURE__ */ x("div", {
463
469
  className: "mx-auto max-w-7xl space-y-8 p-6",
464
470
  children: [
465
- /* @__PURE__ */ x(j, {}),
466
- /* @__PURE__ */ x(N, {}),
467
- /* @__PURE__ */ S("div", { children: [/* @__PURE__ */ x(P, {}), /* @__PURE__ */ x("div", {
471
+ /* @__PURE__ */ b(j, {}),
472
+ /* @__PURE__ */ b(N, {}),
473
+ /* @__PURE__ */ x("div", { children: [/* @__PURE__ */ b(P, {}), /* @__PURE__ */ b("div", {
468
474
  className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3",
469
475
  children: [...[
470
476
  ,
@@ -473,9 +479,9 @@ var Oe = (e) => e >= 1e6 ? `${(e / 1e6).toFixed(1)}M` : e >= 1e3 ? `${(e / 1e3).
473
479
  ,
474
480
  ,
475
481
  ,
476
- ]].map((e, t) => /* @__PURE__ */ x(A, {}, t))
482
+ ]].map((e, t) => /* @__PURE__ */ b(A, {}, t))
477
483
  })] }),
478
- /* @__PURE__ */ S("div", { children: [/* @__PURE__ */ x(P, {}), /* @__PURE__ */ x("div", {
484
+ /* @__PURE__ */ x("div", { children: [/* @__PURE__ */ b(P, {}), /* @__PURE__ */ b("div", {
479
485
  className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3",
480
486
  children: [...[
481
487
  ,
@@ -484,9 +490,9 @@ var Oe = (e) => e >= 1e6 ? `${(e / 1e6).toFixed(1)}M` : e >= 1e3 ? `${(e / 1e3).
484
490
  ,
485
491
  ,
486
492
  ,
487
- ]].map((e, t) => /* @__PURE__ */ x(A, {}, t))
493
+ ]].map((e, t) => /* @__PURE__ */ b(A, {}, t))
488
494
  })] }),
489
- /* @__PURE__ */ S("div", { children: [/* @__PURE__ */ x(P, {}), /* @__PURE__ */ x("div", {
495
+ /* @__PURE__ */ x("div", { children: [/* @__PURE__ */ b(P, {}), /* @__PURE__ */ b("div", {
490
496
  className: "grid grid-cols-2 gap-2 sm:grid-cols-3 lg:grid-cols-6",
491
497
  children: [...[
492
498
  ,
@@ -495,39 +501,39 @@ var Oe = (e) => e >= 1e6 ? `${(e / 1e6).toFixed(1)}M` : e >= 1e3 ? `${(e / 1e3).
495
501
  ,
496
502
  ,
497
503
  ,
498
- ]].map((e, t) => /* @__PURE__ */ x(A, { variant: "compact" }, t))
504
+ ]].map((e, t) => /* @__PURE__ */ b(A, { variant: "compact" }, t))
499
505
  })] })
500
506
  ]
501
507
  }), F = ({ label: e, value: t, options: n, onChange: r }) => {
502
508
  let i = ie();
503
- return /* @__PURE__ */ S("label", {
509
+ return /* @__PURE__ */ x("label", {
504
510
  htmlFor: i,
505
511
  className: "relative inline-flex items-center gap-2 rounded-lg border border-border-default bg-bg-surface px-3 py-2 text-sm font-medium text-text-primary transition-colors hover:bg-bg-sunken focus-within:border-action-primary-border focus-within:ring-2 focus-within:ring-action-primary-border/20",
506
512
  children: [
507
- /* @__PURE__ */ x("span", {
513
+ /* @__PURE__ */ b("span", {
508
514
  className: "sr-only",
509
515
  children: e
510
516
  }),
511
- /* @__PURE__ */ S("span", {
517
+ /* @__PURE__ */ x("span", {
512
518
  className: "text-text-muted",
513
519
  children: [e, ":"]
514
520
  }),
515
- /* @__PURE__ */ x("select", {
521
+ /* @__PURE__ */ b("select", {
516
522
  id: i,
517
523
  "aria-label": e,
518
524
  value: t,
519
525
  onChange: (e) => r(e.target.value),
520
526
  className: "min-w-[8rem] appearance-none bg-transparent pr-6 text-sm font-medium text-text-primary focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-focus-ring)]",
521
- children: n.map((e) => /* @__PURE__ */ x("option", {
527
+ children: n.map((e) => /* @__PURE__ */ b("option", {
522
528
  value: e.value,
523
529
  children: e.label
524
530
  }, e.value))
525
531
  }),
526
- /* @__PURE__ */ x(m, { className: "pointer-events-none absolute right-3 size-4 text-text-muted" })
532
+ /* @__PURE__ */ b(m, { className: "pointer-events-none absolute right-3 size-4 text-text-muted" })
527
533
  ]
528
534
  });
529
535
  }, I = () => {
530
- let r = oe(), { basePath: f, user: se } = e(), m = a(), ce = ie(), ue = Ee(), { cart: de, cartOpen: fe, closeCart: h, itemCount: g, cartItems: _, subtotal: Se, tax: Oe, total: C, updateQuantity: w, removeProduct: T } = n(), [E, D] = u(""), [A, j] = u("all"), [M, N] = u("all"), [P, I] = u("any"), [L, Ne] = u("all"), [R, Pe] = u("all"), [z, Fe] = u("all"), [B, Ie] = u(!1), [V, Le] = u("relevance"), [Re, ze] = u(!1), H = De(E, 1500), Be = [
536
+ let r = oe(), { basePath: f, user: se } = e(), m = a(), ce = ie(), ue = Oe(), { cart: de, cartOpen: fe, closeCart: h, itemCount: g, cartItems: _, subtotal: _e, tax: we, total: S, updateQuantity: C, removeProduct: w } = n(), [T, E] = u(""), [D, A] = u("all"), [j, M] = u("all"), [N, P] = u("any"), [I, Pe] = u("all"), [L, Fe] = u("all"), [R, Ie] = u("all"), [z, Le] = u(!1), [B, Re] = u("relevance"), [ze, Be] = u(!1), V = ke(T, 1500), Ve = [
531
537
  {
532
538
  value: "all",
533
539
  label: m("pages.marketplace.pricingAll", "All Prices")
@@ -544,7 +550,7 @@ var Oe = (e) => e >= 1e6 ? `${(e / 1e6).toFixed(1)}M` : e >= 1e3 ? `${(e / 1e3).
544
550
  value: "subscription",
545
551
  label: m("pages.marketplace.pricingSubscription", "Subscription")
546
552
  }
547
- ], Ve = [
553
+ ], He = [
548
554
  {
549
555
  value: "any",
550
556
  label: m("pages.marketplace.ratingAny", "Any Rating")
@@ -565,7 +571,7 @@ var Oe = (e) => e >= 1e6 ? `${(e / 1e6).toFixed(1)}M` : e >= 1e3 ? `${(e / 1e3).
565
571
  value: "4.5",
566
572
  label: m("pages.marketplace.rating4_5", "4.5+ Stars")
567
573
  }
568
- ], He = [
574
+ ], Ue = [
569
575
  {
570
576
  value: "all",
571
577
  label: m("pages.marketplace.natureAll", "All Types")
@@ -578,7 +584,7 @@ var Oe = (e) => e >= 1e6 ? `${(e / 1e6).toFixed(1)}M` : e >= 1e3 ? `${(e / 1e3).
578
584
  value: "physical",
579
585
  label: m("pages.marketplace.naturePhysical", "Physical")
580
586
  }
581
- ], Ue = [
587
+ ], We = [
582
588
  {
583
589
  value: "relevance",
584
590
  label: m("pages.marketplace.sortRelevance", "Relevance")
@@ -607,7 +613,7 @@ var Oe = (e) => e >= 1e6 ? `${(e / 1e6).toFixed(1)}M` : e >= 1e3 ? `${(e / 1e3).
607
613
  value: "name-asc",
608
614
  label: m("pages.marketplace.sortNameAsc", "Name A-Z")
609
615
  }
610
- ], We = (e) => ({
616
+ ], Ge = (e) => ({
611
617
  relevance: c.Relevance,
612
618
  rating: c.Rating,
613
619
  downloads: c.Downloads,
@@ -615,59 +621,59 @@ var Oe = (e) => e >= 1e6 ? `${(e / 1e6).toFixed(1)}M` : e >= 1e3 ? `${(e / 1e3).
615
621
  "price-low": c.PriceLow,
616
622
  "price-high": c.PriceHigh,
617
623
  "name-asc": c.NameAsc
618
- })[e], Ge = (e) => {
624
+ })[e], Ke = (e) => {
619
625
  if (e !== "all") return {
620
626
  free: o.Free,
621
627
  paid: o.PaidOnetime,
622
628
  subscription: o.Subscription
623
629
  }[e];
624
- }, U = H.trim() !== "" || M !== "all" || P !== "any" || L !== "all" || R !== "all" || z !== "all" || B || A !== "all" || V !== "relevance", Ke = E.trim() !== "" && E !== H, qe = () => {
625
- D(""), N("all"), I("any"), Ne("all"), Pe("all"), Fe("all"), Ie(!1), Le("relevance"), j("all");
626
- }, W = (M === "all" ? 0 : 1) + (P === "any" ? 0 : 1) + (L === "all" ? 0 : 1) + (R === "all" ? 0 : 1) + (z === "all" ? 0 : 1) + +!!B + (A === "all" ? 0 : 1), Je = l(() => {
630
+ }, H = V.trim() !== "" || j !== "all" || N !== "any" || I !== "all" || L !== "all" || R !== "all" || z || D !== "all" || B !== "relevance", qe = T.trim() !== "" && T !== V, Je = () => {
631
+ E(""), M("all"), P("any"), Pe("all"), Fe("all"), Ie("all"), Le(!1), Re("relevance"), A("all");
632
+ }, U = (j === "all" ? 0 : 1) + (N === "any" ? 0 : 1) + (I === "all" ? 0 : 1) + (L === "all" ? 0 : 1) + (R === "all" ? 0 : 1) + +!!z + (D === "all" ? 0 : 1), Ye = l(() => {
627
633
  let e = {
628
- sortBy: We(V),
634
+ sortBy: Ge(B),
629
635
  pagination: { limit: 50 }
630
636
  };
631
- if (U) {
632
- e.filter = {}, H.trim() && (e.filter.search = H.trim()), A !== "all" && (e.filter.type = A), R !== "all" && (e.filter.category = R), L !== "all" && (e.filter.nature = L === "digital" ? s.Digital : s.Physical);
633
- let t = Ge(M);
634
- t && (e.filter.pricingModel = t), P !== "any" && (e.filter.minRating = parseFloat(P)), B && (e.filter.featured = !0), z !== "all" && (e.filter.license = z);
637
+ if (H) {
638
+ e.filter = {}, V.trim() && (e.filter.search = V.trim()), D !== "all" && (e.filter.type = D), L !== "all" && (e.filter.category = L), I !== "all" && (e.filter.nature = I === "digital" ? s.Digital : s.Physical);
639
+ let t = Ke(j);
640
+ t && (e.filter.pricingModel = t), N !== "any" && (e.filter.minRating = parseFloat(N)), z && (e.filter.featured = !0), R !== "all" && (e.filter.license = R);
635
641
  }
636
642
  return e;
637
643
  }, [
638
- H,
639
- A,
640
- R,
644
+ V,
645
+ D,
641
646
  L,
642
- M,
643
- P,
644
- B,
647
+ I,
648
+ j,
649
+ N,
645
650
  z,
646
- V,
647
- U
648
- ]), { featured: G, mostDownloaded: K, recentlyAdded: q, freeItems: J, loading: Ye, error: Xe, refetch: Ze } = ee({ skip: U }), { products: Qe, totalCount: Y, facets: X, loading: Z, error: $e, refetch: et } = i(U ? Je : {}, { skip: !U }), tt = U ? Z : Ye, nt = U ? $e : Xe, rt = U ? et : Ze, it = U ? Qe : [], at = ae(Y);
649
- at.current = Y;
651
+ R,
652
+ B,
653
+ H
654
+ ]), { featured: W, mostDownloaded: G, recentlyAdded: K, freeItems: q, loading: Xe, error: Ze, refetch: Qe } = ee({ skip: H }), { products: $e, totalCount: J, facets: Y, loading: X, error: et, refetch: tt } = i(H ? Ye : {}, { skip: !H }), nt = H ? X : Xe, Z = H ? et : Ze, rt = H ? tt : Qe, it = H ? $e : [], at = ae(J);
655
+ at.current = J;
650
656
  let ot = ae(ue);
651
657
  ot.current = ue, re(() => {
652
- !H.trim() || Z || ot.current.emit("store.marketplace.searched", {
653
- query: H,
658
+ !V.trim() || X || ot.current.emit("store.marketplace.searched", {
659
+ query: V,
654
660
  resultCount: at.current
655
661
  });
656
- }, [H, Z]);
662
+ }, [V, X]);
657
663
  let Q = ne((e) => {
658
664
  r(`${f}/marketplace/product/${e.id}`);
659
665
  }, [r, f]), st = () => {
660
666
  h(), r(`${f}/cart`);
661
667
  }, $ = l(() => [...new Map([
668
+ ...W,
662
669
  ...G,
663
670
  ...K,
664
- ...q,
665
- ...J
671
+ ...q
666
672
  ].map((e) => [e.id, e])).values()], [
673
+ W,
667
674
  G,
668
675
  K,
669
- q,
670
- J
676
+ q
671
677
  ]), ct = !!se?.id, { data: lt } = t({
672
678
  variables: { limit: 100 },
673
679
  skip: !ct,
@@ -682,11 +688,11 @@ var Oe = (e) => e >= 1e6 ? `${(e / 1e6).toFixed(1)}M` : e >= 1e3 ? `${(e / 1e3).
682
688
  }));
683
689
  return t;
684
690
  }, [lt]), dt = l(() => {
685
- if (X?.types && X.types.length > 0) return [{
691
+ if (Y?.types && Y.types.length > 0) return [{
686
692
  id: "all",
687
693
  name: m("pages.marketplace.typeAll", "All Apps"),
688
- count: Y
689
- }, ...X.types.map((e) => ({
694
+ count: J
695
+ }, ...Y.types.map((e) => ({
690
696
  id: e.value,
691
697
  name: e.value.charAt(0) + e.value.slice(1).toLowerCase().replace(/_/g, " "),
692
698
  count: e.count
@@ -702,14 +708,14 @@ var Oe = (e) => e >= 1e6 ? `${(e / 1e6).toFixed(1)}M` : e >= 1e3 ? `${(e / 1e3).
702
708
  count: $.length
703
709
  }, ...t];
704
710
  }, [
705
- X,
706
- $,
707
711
  Y,
712
+ $,
713
+ J,
708
714
  m
709
- ]), ft = l(() => X?.categories && X.categories.length > 0 ? [{
715
+ ]), ft = l(() => Y?.categories && Y.categories.length > 0 ? [{
710
716
  value: "all",
711
717
  label: m("pages.marketplace.allCategories", "All Categories")
712
- }, ...X.categories.map((e) => ({
718
+ }, ...Y.categories.map((e) => ({
713
719
  value: e.value,
714
720
  label: e.value
715
721
  }))] : [{
@@ -719,340 +725,340 @@ var Oe = (e) => e >= 1e6 ? `${(e / 1e6).toFixed(1)}M` : e >= 1e3 ? `${(e / 1e3).
719
725
  value: e,
720
726
  label: e
721
727
  })).sort((e, t) => e.label.localeCompare(t.label))], [
722
- X,
728
+ Y,
723
729
  $,
724
730
  m
725
- ]), pt = l(() => X?.licenses && X.licenses.length > 0 ? [{
731
+ ]), pt = l(() => Y?.licenses && Y.licenses.length > 0 ? [{
726
732
  value: "all",
727
733
  label: m("pages.marketplace.allLicenses", "All Licenses")
728
- }, ...X.licenses.map((e) => ({
734
+ }, ...Y.licenses.map((e) => ({
729
735
  value: e.value,
730
736
  label: e.value
731
737
  }))] : [{
732
738
  value: "all",
733
739
  label: m("pages.marketplace.allLicenses", "All Licenses")
734
- }], [X, m]);
735
- return /* @__PURE__ */ S("div", {
740
+ }], [Y, m]);
741
+ return /* @__PURE__ */ x("div", {
736
742
  className: "flex h-full flex-col",
737
743
  children: [
738
- /* @__PURE__ */ S("header", {
744
+ /* @__PURE__ */ x("header", {
739
745
  className: "relative overflow-hidden border-b border-border-seam bg-bg-surface px-6 py-4",
740
746
  children: [
741
- /* @__PURE__ */ x(xe, { intensity: "subtle" }),
742
- /* @__PURE__ */ S("div", {
747
+ /* @__PURE__ */ b(Ce, { intensity: "subtle" }),
748
+ /* @__PURE__ */ x("div", {
743
749
  className: "flex items-center justify-between",
744
- children: [/* @__PURE__ */ S("div", { children: [/* @__PURE__ */ S("h1", {
750
+ children: [/* @__PURE__ */ x("div", { children: [/* @__PURE__ */ x("h1", {
745
751
  className: "text-2xl font-bold text-text-primary",
746
752
  children: [
747
753
  m("pages.marketplace.appTitle", "App"),
748
754
  " ",
749
- /* @__PURE__ */ x(Ce, { children: m("pages.marketplace.title", "Marketplace") })
755
+ /* @__PURE__ */ b(Te, { children: m("pages.marketplace.title", "Marketplace") })
750
756
  ]
751
- }), /* @__PURE__ */ x("p", {
757
+ }), /* @__PURE__ */ b("p", {
752
758
  className: "text-sm text-text-muted",
753
759
  children: m("pages.marketplace.subtitle", "Discover apps, workflows, and integrations for your workspace")
754
- })] }), /* @__PURE__ */ S("button", {
760
+ })] }), /* @__PURE__ */ x("button", {
755
761
  type: "button",
756
762
  "data-tour": "store-marketplace-cart-button",
757
763
  onClick: () => r(`${f}/cart`),
758
764
  className: "cursor-pointer relative flex items-center gap-2 rounded-lg border border-border-default bg-bg-surface px-4 py-2 text-sm font-medium text-text-primary transition-colors hover:bg-bg-sunken",
759
765
  children: [
760
- /* @__PURE__ */ x(_e, { className: "size-5" }),
766
+ /* @__PURE__ */ b(ve, { className: "size-5" }),
761
767
  m("pages.marketplace.cart", "Cart"),
762
- g > 0 && /* @__PURE__ */ x("span", {
768
+ g > 0 && /* @__PURE__ */ b("span", {
763
769
  className: "absolute -right-2 -top-2 flex size-5 items-center justify-center rounded-full bg-action-primary-bg text-xs font-bold text-action-primary-text",
764
770
  children: g
765
771
  })
766
772
  ]
767
773
  })]
768
774
  }),
769
- /* @__PURE__ */ S("div", {
775
+ /* @__PURE__ */ x("div", {
770
776
  className: "mt-4",
771
- children: [/* @__PURE__ */ S("div", {
777
+ children: [/* @__PURE__ */ x("div", {
772
778
  className: "relative",
773
779
  children: [
774
- /* @__PURE__ */ x("label", {
780
+ /* @__PURE__ */ b("label", {
775
781
  htmlFor: ce,
776
782
  className: "sr-only",
777
783
  children: m("pages.marketplace.search.label", "Search marketplace products")
778
784
  }),
779
- /* @__PURE__ */ x(ge, { className: "absolute left-4 top-1/2 size-5 -translate-y-1/2 text-text-muted" }),
780
- /* @__PURE__ */ x("input", {
785
+ /* @__PURE__ */ b(ge, { className: "absolute left-4 top-1/2 size-5 -translate-y-1/2 text-text-muted" }),
786
+ /* @__PURE__ */ b("input", {
781
787
  id: ce,
782
788
  "data-tour": "store-marketplace-search-input",
783
789
  "aria-label": m("pages.marketplace.search.label", "Search marketplace products"),
784
790
  type: "text",
785
- value: E,
786
- onChange: (e) => D(e.target.value),
791
+ value: T,
792
+ onChange: (e) => E(e.target.value),
787
793
  placeholder: m("pages.marketplace.search.placeholder", "Search apps, workflows, integrations..."),
788
794
  className: "w-full rounded-xl border border-border-default bg-bg-sunken py-3 pl-12 pr-4 text-text-primary placeholder-text-muted focus:border-action-primary-border focus:bg-bg-surface focus:outline-none focus:ring-2 focus:ring-action-primary-border/20"
789
795
  }),
790
- E && /* @__PURE__ */ x("button", {
796
+ T && /* @__PURE__ */ b("button", {
791
797
  type: "button",
792
- onClick: () => D(""),
798
+ onClick: () => E(""),
793
799
  "aria-label": m("pages.marketplace.search.clear", "Clear search"),
794
800
  className: "cursor-pointer absolute right-4 top-1/2 -translate-y-1/2 text-text-muted transition-colors hover:text-text-primary",
795
- children: /* @__PURE__ */ x(b, {
801
+ children: /* @__PURE__ */ b(y, {
796
802
  className: "size-4",
797
803
  "aria-hidden": "true"
798
804
  })
799
805
  })
800
806
  ]
801
- }), E.trim() && /* @__PURE__ */ x("div", {
807
+ }), T.trim() && /* @__PURE__ */ b("div", {
802
808
  "aria-live": "polite",
803
809
  className: "mt-2 flex items-center gap-2 text-sm text-text-muted",
804
- children: Ke || Z ? /* @__PURE__ */ S(be, { children: [/* @__PURE__ */ x(he, { className: "size-4 animate-spin" }), /* @__PURE__ */ x("span", { children: m("pages.marketplace.search.searching", "Searching...") })] }) : /* @__PURE__ */ x("span", { children: m("pages.marketplace.search.resultCount", "{{count}} result{{plural}} for \"{{query}}\"", {
805
- count: Y,
806
- plural: Y === 1 ? "" : "s",
807
- query: H
810
+ children: qe || X ? /* @__PURE__ */ x(Se, { children: [/* @__PURE__ */ b(he, { className: "size-4 animate-spin" }), /* @__PURE__ */ b("span", { children: m("pages.marketplace.search.searching", "Searching...") })] }) : /* @__PURE__ */ b("span", { children: m("pages.marketplace.search.resultCount", "{{count}} result{{plural}} for \"{{query}}\"", {
811
+ count: J,
812
+ plural: J === 1 ? "" : "s",
813
+ query: V
808
814
  }) })
809
815
  })]
810
816
  }),
811
- /* @__PURE__ */ S("div", {
817
+ /* @__PURE__ */ x("div", {
812
818
  className: "mt-4 flex flex-wrap items-center gap-3",
813
819
  children: [
814
- /* @__PURE__ */ S("button", {
820
+ /* @__PURE__ */ x("button", {
815
821
  type: "button",
816
822
  "data-tour": "store-marketplace-filters-button",
817
- onClick: () => ze(!Re),
818
- className: `cursor-pointer flex items-center gap-2 rounded-lg border px-3 py-2 text-sm font-medium transition-colors ${Re || W > 0 ? "border-action-primary-border bg-action-primary-bg/10 text-text-link" : "border-border-default bg-bg-surface text-text-primary transition-colors hover:bg-bg-sunken"}`,
823
+ onClick: () => Be(!ze),
824
+ className: `cursor-pointer flex items-center gap-2 rounded-lg border px-3 py-2 text-sm font-medium transition-colors ${ze || U > 0 ? "border-action-primary-border bg-action-primary-bg/10 text-text-link" : "border-border-default bg-bg-surface text-text-primary transition-colors hover:bg-bg-sunken"}`,
819
825
  children: [
820
- /* @__PURE__ */ x(ve, { className: "size-4" }),
826
+ /* @__PURE__ */ b(ye, { className: "size-4" }),
821
827
  m("pages.marketplace.filters", "Filters"),
822
- W > 0 && /* @__PURE__ */ x("span", {
828
+ U > 0 && /* @__PURE__ */ b("span", {
823
829
  className: "flex size-5 items-center justify-center rounded-full bg-action-primary-bg text-xs text-action-primary-text",
824
- children: W
830
+ children: U
825
831
  })
826
832
  ]
827
833
  }),
828
- /* @__PURE__ */ S("div", {
834
+ /* @__PURE__ */ x("div", {
829
835
  className: "flex flex-wrap items-center gap-2",
830
836
  "data-tour": "store-marketplace-quick-filters",
831
837
  children: [
832
- /* @__PURE__ */ S("button", {
838
+ /* @__PURE__ */ x("button", {
833
839
  type: "button",
834
- onClick: () => N(M === "free" ? "all" : "free"),
835
- className: `cursor-pointer flex items-center gap-1.5 rounded-full px-3 py-1.5 text-sm font-medium transition-colors ${M === "free" ? "bg-action-primary-bg text-action-primary-text" : "bg-bg-sunken text-text-primary transition-colors hover:bg-bg-surface"}`,
836
- children: [/* @__PURE__ */ x(me, { className: "size-3.5" }), m("pages.marketplace.quickFilterFree", "Free")]
840
+ onClick: () => M(j === "free" ? "all" : "free"),
841
+ className: `cursor-pointer flex items-center gap-1.5 rounded-full px-3 py-1.5 text-sm font-medium transition-colors ${j === "free" ? "bg-action-primary-bg text-action-primary-text" : "bg-bg-sunken text-text-primary transition-colors hover:bg-bg-surface"}`,
842
+ children: [/* @__PURE__ */ b(me, { className: "size-3.5" }), m("pages.marketplace.quickFilterFree", "Free")]
837
843
  }),
838
- /* @__PURE__ */ S("button", {
844
+ /* @__PURE__ */ x("button", {
839
845
  type: "button",
840
- onClick: () => I(P === "4" ? "any" : "4"),
841
- className: `cursor-pointer flex items-center gap-1.5 rounded-full px-3 py-1.5 text-sm font-medium transition-colors ${P === "4" ? "bg-action-primary-bg text-action-primary-text" : "bg-bg-sunken text-text-primary transition-colors hover:bg-bg-surface"}`,
842
- children: [/* @__PURE__ */ x(y, { className: "size-3.5" }), m("pages.marketplace.quickFilterRating", "4+ Stars")]
846
+ onClick: () => P(N === "4" ? "any" : "4"),
847
+ className: `cursor-pointer flex items-center gap-1.5 rounded-full px-3 py-1.5 text-sm font-medium transition-colors ${N === "4" ? "bg-action-primary-bg text-action-primary-text" : "bg-bg-sunken text-text-primary transition-colors hover:bg-bg-surface"}`,
848
+ children: [/* @__PURE__ */ b(be, { className: "size-3.5" }), m("pages.marketplace.quickFilterRating", "4+ Stars")]
843
849
  }),
844
- /* @__PURE__ */ S("button", {
850
+ /* @__PURE__ */ x("button", {
845
851
  type: "button",
846
- onClick: () => Ie(!B),
847
- className: `cursor-pointer flex items-center gap-1.5 rounded-full px-3 py-1.5 text-sm font-medium transition-colors ${B ? "bg-action-primary-bg text-action-primary-text" : "bg-bg-sunken text-text-primary transition-colors hover:bg-bg-surface"}`,
848
- children: [/* @__PURE__ */ x(v, { className: "size-3.5" }), m("pages.marketplace.quickFilterFeatured", "Featured")]
852
+ onClick: () => Le(!z),
853
+ className: `cursor-pointer flex items-center gap-1.5 rounded-full px-3 py-1.5 text-sm font-medium transition-colors ${z ? "bg-action-primary-bg text-action-primary-text" : "bg-bg-sunken text-text-primary transition-colors hover:bg-bg-surface"}`,
854
+ children: [/* @__PURE__ */ b(v, { className: "size-3.5" }), m("pages.marketplace.quickFilterFeatured", "Featured")]
849
855
  })
850
856
  ]
851
857
  }),
852
- U && /* @__PURE__ */ S("button", {
858
+ H && /* @__PURE__ */ x("button", {
853
859
  type: "button",
854
- onClick: qe,
860
+ onClick: Je,
855
861
  className: "cursor-pointer flex items-center gap-1 text-sm text-text-muted transition-colors hover:text-text-primary",
856
- children: [/* @__PURE__ */ x(b, {
862
+ children: [/* @__PURE__ */ b(y, {
857
863
  className: "size-4",
858
864
  "aria-hidden": "true"
859
865
  }), m("pages.marketplace.clearAll", "Clear all")]
860
866
  }),
861
- /* @__PURE__ */ x("div", {
867
+ /* @__PURE__ */ b("div", {
862
868
  className: "ml-auto",
863
869
  "data-tour": "store-marketplace-section-sort",
864
- children: /* @__PURE__ */ x(F, {
870
+ children: /* @__PURE__ */ b(F, {
865
871
  label: m("pages.marketplace.sortLabel", "Sort"),
866
- value: V,
867
- options: Ue,
868
- onChange: (e) => Le(e)
872
+ value: B,
873
+ options: We,
874
+ onChange: (e) => Re(e)
869
875
  })
870
876
  })
871
877
  ]
872
878
  }),
873
- Re && /* @__PURE__ */ S("div", {
879
+ ze && /* @__PURE__ */ x("div", {
874
880
  className: "mt-4 rounded-lg border border-border-seam bg-bg-surface p-4",
875
- children: [/* @__PURE__ */ S("div", {
881
+ children: [/* @__PURE__ */ x("div", {
876
882
  className: "flex flex-wrap items-start gap-6",
877
883
  children: [
878
- /* @__PURE__ */ S("div", {
884
+ /* @__PURE__ */ x("div", {
879
885
  className: "flex flex-col gap-2",
880
- children: [/* @__PURE__ */ x("span", {
886
+ children: [/* @__PURE__ */ b("span", {
881
887
  className: "text-xs font-medium uppercase tracking-wider text-text-muted",
882
888
  children: m("pages.marketplace.filterPricing", "Pricing")
883
- }), /* @__PURE__ */ x(F, {
889
+ }), /* @__PURE__ */ b(F, {
884
890
  label: m("pages.marketplace.filterPrice", "Price"),
885
- value: M,
886
- options: Be,
887
- onChange: (e) => N(e)
891
+ value: j,
892
+ options: Ve,
893
+ onChange: (e) => M(e)
888
894
  })]
889
895
  }),
890
- /* @__PURE__ */ S("div", {
896
+ /* @__PURE__ */ x("div", {
891
897
  className: "flex flex-col gap-2",
892
- children: [/* @__PURE__ */ x("span", {
898
+ children: [/* @__PURE__ */ b("span", {
893
899
  className: "text-xs font-medium uppercase tracking-wider text-text-muted",
894
900
  children: m("pages.marketplace.filterMinRating", "Min Rating")
895
- }), /* @__PURE__ */ x(F, {
901
+ }), /* @__PURE__ */ b(F, {
896
902
  label: m("pages.marketplace.filterRating", "Rating"),
897
- value: P,
898
- options: Ve,
899
- onChange: (e) => I(e)
903
+ value: N,
904
+ options: He,
905
+ onChange: (e) => P(e)
900
906
  })]
901
907
  }),
902
- ft.length > 1 && /* @__PURE__ */ S("div", {
908
+ ft.length > 1 && /* @__PURE__ */ x("div", {
903
909
  className: "flex flex-col gap-2",
904
- children: [/* @__PURE__ */ x("span", {
910
+ children: [/* @__PURE__ */ b("span", {
905
911
  className: "text-xs font-medium uppercase tracking-wider text-text-muted",
906
912
  children: m("pages.marketplace.filterCategory", "Category")
907
- }), /* @__PURE__ */ x(F, {
913
+ }), /* @__PURE__ */ b(F, {
908
914
  label: m("pages.marketplace.filterCategory", "Category"),
909
- value: R,
915
+ value: L,
910
916
  options: ft,
911
- onChange: Pe
917
+ onChange: Fe
912
918
  })]
913
919
  }),
914
- /* @__PURE__ */ S("div", {
920
+ /* @__PURE__ */ x("div", {
915
921
  className: "flex flex-col gap-2",
916
- children: [/* @__PURE__ */ x("span", {
922
+ children: [/* @__PURE__ */ b("span", {
917
923
  className: "text-xs font-medium uppercase tracking-wider text-text-muted",
918
924
  children: m("pages.marketplace.filterNature", "Nature")
919
- }), /* @__PURE__ */ x(F, {
925
+ }), /* @__PURE__ */ b(F, {
920
926
  label: m("pages.marketplace.filterNature", "Nature"),
921
- value: L,
922
- options: He,
923
- onChange: (e) => Ne(e)
927
+ value: I,
928
+ options: Ue,
929
+ onChange: (e) => Pe(e)
924
930
  })]
925
931
  }),
926
- pt.length > 1 && /* @__PURE__ */ S("div", {
932
+ pt.length > 1 && /* @__PURE__ */ x("div", {
927
933
  className: "flex flex-col gap-2",
928
- children: [/* @__PURE__ */ x("span", {
934
+ children: [/* @__PURE__ */ b("span", {
929
935
  className: "text-xs font-medium uppercase tracking-wider text-text-muted",
930
936
  children: m("pages.marketplace.filterLicense", "License")
931
- }), /* @__PURE__ */ x(F, {
937
+ }), /* @__PURE__ */ b(F, {
932
938
  label: m("pages.marketplace.filterLicense", "License"),
933
- value: z,
939
+ value: R,
934
940
  options: pt,
935
- onChange: Fe
941
+ onChange: Ie
936
942
  })]
937
943
  })
938
944
  ]
939
- }), W > 0 && /* @__PURE__ */ S("div", {
945
+ }), U > 0 && /* @__PURE__ */ x("div", {
940
946
  className: "mt-4 flex flex-wrap items-center gap-2 border-t border-border-default pt-4",
941
947
  children: [
942
- /* @__PURE__ */ x("span", {
948
+ /* @__PURE__ */ b("span", {
943
949
  className: "text-xs font-medium text-text-muted",
944
950
  children: m("pages.marketplace.activeFilters", "Active filters:")
945
951
  }),
946
- A !== "all" && /* @__PURE__ */ S("button", {
952
+ D !== "all" && /* @__PURE__ */ x("button", {
947
953
  type: "button",
948
- onClick: () => j("all"),
954
+ onClick: () => A("all"),
949
955
  className: "inline-flex cursor-pointer items-center gap-1.5 rounded-full border border-action-primary-border bg-action-primary-bg/5 px-3 py-1.5 text-xs font-medium text-text-link shadow-sm transition-colors hover:bg-action-primary-bg/15",
950
956
  children: [
951
- /* @__PURE__ */ x("span", {
957
+ /* @__PURE__ */ b("span", {
952
958
  className: "text-text-muted",
953
959
  children: m("pages.marketplace.activeFilterType", "Type:")
954
960
  }),
955
961
  " ",
956
- A,
957
- /* @__PURE__ */ x(b, {
962
+ D,
963
+ /* @__PURE__ */ b(y, {
958
964
  className: "size-3",
959
965
  "aria-hidden": "true"
960
966
  })
961
967
  ]
962
968
  }),
963
- M !== "all" && /* @__PURE__ */ S("button", {
969
+ j !== "all" && /* @__PURE__ */ x("button", {
964
970
  type: "button",
965
- onClick: () => N("all"),
971
+ onClick: () => M("all"),
966
972
  className: "inline-flex cursor-pointer items-center gap-1.5 rounded-full border border-action-primary-border bg-action-primary-bg/5 px-3 py-1.5 text-xs font-medium text-text-link shadow-sm transition-colors hover:bg-action-primary-bg/15",
967
973
  children: [
968
- /* @__PURE__ */ x("span", {
974
+ /* @__PURE__ */ b("span", {
969
975
  className: "text-text-muted",
970
976
  children: m("pages.marketplace.activeFilterPrice", "Price:")
971
977
  }),
972
978
  " ",
973
- Be.find((e) => e.value === M)?.label,
974
- /* @__PURE__ */ x(b, {
979
+ Ve.find((e) => e.value === j)?.label,
980
+ /* @__PURE__ */ b(y, {
975
981
  className: "size-3",
976
982
  "aria-hidden": "true"
977
983
  })
978
984
  ]
979
985
  }),
980
- P !== "any" && /* @__PURE__ */ S("button", {
986
+ N !== "any" && /* @__PURE__ */ x("button", {
981
987
  type: "button",
982
- onClick: () => I("any"),
988
+ onClick: () => P("any"),
983
989
  className: "inline-flex cursor-pointer items-center gap-1.5 rounded-full border border-action-primary-border bg-action-primary-bg/5 px-3 py-1.5 text-xs font-medium text-text-link shadow-sm transition-colors hover:bg-action-primary-bg/15",
984
990
  children: [
985
- /* @__PURE__ */ x("span", {
991
+ /* @__PURE__ */ b("span", {
986
992
  className: "text-text-muted",
987
993
  children: m("pages.marketplace.activeFilterRating", "Rating:")
988
994
  }),
989
995
  " ",
990
- Ve.find((e) => e.value === P)?.label,
991
- /* @__PURE__ */ x(b, {
996
+ He.find((e) => e.value === N)?.label,
997
+ /* @__PURE__ */ b(y, {
992
998
  className: "size-3",
993
999
  "aria-hidden": "true"
994
1000
  })
995
1001
  ]
996
1002
  }),
997
- R !== "all" && /* @__PURE__ */ S("button", {
1003
+ L !== "all" && /* @__PURE__ */ x("button", {
998
1004
  type: "button",
999
- onClick: () => Pe("all"),
1005
+ onClick: () => Fe("all"),
1000
1006
  className: "inline-flex cursor-pointer items-center gap-1.5 rounded-full border border-action-primary-border bg-action-primary-bg/5 px-3 py-1.5 text-xs font-medium text-text-link shadow-sm transition-colors hover:bg-action-primary-bg/15",
1001
1007
  children: [
1002
- /* @__PURE__ */ x("span", {
1008
+ /* @__PURE__ */ b("span", {
1003
1009
  className: "text-text-muted",
1004
1010
  children: m("pages.marketplace.activeFilterCategory", "Category:")
1005
1011
  }),
1006
1012
  " ",
1007
- R,
1008
- /* @__PURE__ */ x(b, {
1013
+ L,
1014
+ /* @__PURE__ */ b(y, {
1009
1015
  className: "size-3",
1010
1016
  "aria-hidden": "true"
1011
1017
  })
1012
1018
  ]
1013
1019
  }),
1014
- L !== "all" && /* @__PURE__ */ S("button", {
1020
+ I !== "all" && /* @__PURE__ */ x("button", {
1015
1021
  type: "button",
1016
- onClick: () => Ne("all"),
1022
+ onClick: () => Pe("all"),
1017
1023
  className: "inline-flex cursor-pointer items-center gap-1.5 rounded-full border border-action-primary-border bg-action-primary-bg/5 px-3 py-1.5 text-xs font-medium text-text-link shadow-sm transition-colors hover:bg-action-primary-bg/15",
1018
1024
  children: [
1019
- /* @__PURE__ */ x("span", {
1025
+ /* @__PURE__ */ b("span", {
1020
1026
  className: "text-text-muted",
1021
1027
  children: m("pages.marketplace.activeFilterNature", "Nature:")
1022
1028
  }),
1023
1029
  " ",
1024
- He.find((e) => e.value === L)?.label,
1025
- /* @__PURE__ */ x(b, {
1030
+ Ue.find((e) => e.value === I)?.label,
1031
+ /* @__PURE__ */ b(y, {
1026
1032
  className: "size-3",
1027
1033
  "aria-hidden": "true"
1028
1034
  })
1029
1035
  ]
1030
1036
  }),
1031
- z !== "all" && /* @__PURE__ */ S("button", {
1037
+ R !== "all" && /* @__PURE__ */ x("button", {
1032
1038
  type: "button",
1033
- onClick: () => Fe("all"),
1039
+ onClick: () => Ie("all"),
1034
1040
  className: "inline-flex cursor-pointer items-center gap-1.5 rounded-full border border-action-primary-border bg-action-primary-bg/5 px-3 py-1.5 text-xs font-medium text-text-link shadow-sm transition-colors hover:bg-action-primary-bg/15",
1035
1041
  children: [
1036
- /* @__PURE__ */ x("span", {
1042
+ /* @__PURE__ */ b("span", {
1037
1043
  className: "text-text-muted",
1038
1044
  children: m("pages.marketplace.activeFilterLicense", "License:")
1039
1045
  }),
1040
1046
  " ",
1041
- pt.find((e) => e.value === z)?.label,
1042
- /* @__PURE__ */ x(b, {
1047
+ pt.find((e) => e.value === R)?.label,
1048
+ /* @__PURE__ */ b(y, {
1043
1049
  className: "size-3",
1044
1050
  "aria-hidden": "true"
1045
1051
  })
1046
1052
  ]
1047
1053
  }),
1048
- B && /* @__PURE__ */ S("button", {
1054
+ z && /* @__PURE__ */ x("button", {
1049
1055
  type: "button",
1050
- onClick: () => Ie(!1),
1056
+ onClick: () => Le(!1),
1051
1057
  className: "inline-flex cursor-pointer items-center gap-1.5 rounded-full border border-action-primary-border bg-action-primary-bg/5 px-3 py-1.5 text-xs font-medium text-text-link shadow-sm transition-colors hover:bg-action-primary-bg/15",
1052
1058
  children: [
1053
- /* @__PURE__ */ x(v, { className: "size-3" }),
1059
+ /* @__PURE__ */ b(v, { className: "size-3" }),
1054
1060
  m("pages.marketplace.activeFilterFeatured", "Featured Only"),
1055
- /* @__PURE__ */ x(b, {
1061
+ /* @__PURE__ */ b(y, {
1056
1062
  className: "size-3",
1057
1063
  "aria-hidden": "true"
1058
1064
  })
@@ -1063,26 +1069,26 @@ var Oe = (e) => e >= 1e6 ? `${(e / 1e6).toFixed(1)}M` : e >= 1e3 ? `${(e / 1e3).
1063
1069
  })
1064
1070
  ]
1065
1071
  }),
1066
- /* @__PURE__ */ x("main", {
1072
+ /* @__PURE__ */ b("main", {
1067
1073
  className: "flex-1 overflow-y-auto",
1068
- children: /* @__PURE__ */ S("div", {
1074
+ children: /* @__PURE__ */ x("div", {
1069
1075
  className: "mx-auto max-w-7xl space-y-8 p-6",
1070
1076
  children: [
1071
- /* @__PURE__ */ x(Te, { children: m("pages.marketplace.pagePurpose", "The marketplace is where you discover and install apps, agents, workflows, nodes and widgets that extend your workspaces. Browse featured and trending picks, filter by type or category, search for something specific, then open any product to view pricing and reviews before adding it to your cart.") }),
1072
- nt && /* @__PURE__ */ S("div", {
1077
+ /* @__PURE__ */ b(De, { children: m("pages.marketplace.pagePurpose", "The marketplace is where you discover and install apps, agents, workflows, nodes and widgets that extend your workspaces. Browse featured and trending picks, filter by type or category, search for something specific, then open any product to view pricing and reviews before adding it to your cart.") }),
1078
+ Z && /* @__PURE__ */ x("div", {
1073
1079
  role: "alert",
1074
1080
  className: "flex flex-col items-center justify-center rounded-xl border border-status-error-border bg-status-error-bg-subtle p-8 text-center",
1075
1081
  children: [
1076
- /* @__PURE__ */ x(d, { className: "mb-4 size-12 text-status-error-text" }),
1077
- /* @__PURE__ */ x("h3", {
1082
+ /* @__PURE__ */ b(d, { className: "mb-4 size-12 text-status-error-text" }),
1083
+ /* @__PURE__ */ b("h3", {
1078
1084
  className: "mb-2 text-lg font-semibold text-status-error-text-emphasis",
1079
1085
  children: m("pages.marketplace.errorTitle", "Failed to load marketplace")
1080
1086
  }),
1081
- /* @__PURE__ */ x("p", {
1087
+ /* @__PURE__ */ b("p", {
1082
1088
  className: "mb-4 text-sm text-status-error-text",
1083
- children: nt.message || m("pages.marketplace.errorDescription", "An error occurred while fetching products")
1089
+ children: Z.message || m("pages.marketplace.errorDescription", "An error occurred while fetching products")
1084
1090
  }),
1085
- /* @__PURE__ */ x("button", {
1091
+ /* @__PURE__ */ b("button", {
1086
1092
  type: "button",
1087
1093
  onClick: () => rt(),
1088
1094
  className: "cursor-pointer rounded-lg bg-status-error-bg px-4 py-2 text-sm font-medium text-status-error-text transition-colors hover:bg-status-error-bg-emphasis",
@@ -1090,112 +1096,112 @@ var Oe = (e) => e >= 1e6 ? `${(e / 1e6).toFixed(1)}M` : e >= 1e3 ? `${(e / 1e3).
1090
1096
  })
1091
1097
  ]
1092
1098
  }),
1093
- tt && !nt && /* @__PURE__ */ x(Me, {}),
1094
- !tt && !nt && /* @__PURE__ */ S(be, { children: [
1095
- !U && A === "all" && G.length > 0 && /* @__PURE__ */ x(je, {
1099
+ nt && !Z && /* @__PURE__ */ b(Ne, {}),
1100
+ !nt && !Z && /* @__PURE__ */ x(Se, { children: [
1101
+ !H && D === "all" && W.length > 0 && /* @__PURE__ */ b(Me, {
1096
1102
  dataTour: "store-marketplace-hero-section",
1097
- featuredProducts: G,
1103
+ featuredProducts: W,
1098
1104
  onProductClick: Q
1099
1105
  }),
1100
- dt.length > 1 && /* @__PURE__ */ S("div", { children: [/* @__PURE__ */ x("h2", {
1106
+ dt.length > 1 && /* @__PURE__ */ x("div", { children: [/* @__PURE__ */ b("h2", {
1101
1107
  className: "mb-4 text-lg font-semibold text-text-primary",
1102
1108
  children: m("pages.marketplace.browseByType", "Browse by Type")
1103
- }), /* @__PURE__ */ x("div", {
1109
+ }), /* @__PURE__ */ b("div", {
1104
1110
  className: "flex flex-wrap gap-2",
1105
1111
  "data-tour": "store-marketplace-type-categories",
1106
- children: dt.map((e) => /* @__PURE__ */ x(Ae, {
1112
+ children: dt.map((e) => /* @__PURE__ */ b(je, {
1107
1113
  typeId: e.id,
1108
1114
  name: e.name,
1109
1115
  count: e.count,
1110
- active: A === e.id,
1111
- onClick: () => j(e.id)
1116
+ active: D === e.id,
1117
+ onClick: () => A(e.id)
1112
1118
  }, e.id))
1113
1119
  })] }),
1114
- U && /* @__PURE__ */ S("section", { children: [/* @__PURE__ */ x(k, {
1120
+ H && /* @__PURE__ */ x("section", { children: [/* @__PURE__ */ b(k, {
1115
1121
  icon: pe,
1116
- title: H ? m("pages.marketplace.searchResults", "Search Results") : m("pages.marketplace.filteredResults", "Filtered Results"),
1122
+ title: V ? m("pages.marketplace.searchResults", "Search Results") : m("pages.marketplace.filteredResults", "Filtered Results"),
1117
1123
  subtitle: m("pages.marketplace.appsFound", "{{count}} app{{plural}} found", {
1118
- count: Y,
1119
- plural: Y === 1 ? "" : "s"
1124
+ count: J,
1125
+ plural: J === 1 ? "" : "s"
1120
1126
  })
1121
- }), it.length > 0 ? /* @__PURE__ */ x("div", {
1127
+ }), it.length > 0 ? /* @__PURE__ */ b("div", {
1122
1128
  className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-4",
1123
1129
  "data-tour": "store-marketplace-product-grid",
1124
- children: it.map((e) => /* @__PURE__ */ x(O, {
1130
+ children: it.map((e) => /* @__PURE__ */ b(O, {
1125
1131
  product: e,
1126
1132
  onClick: () => Q(e)
1127
1133
  }, e.id))
1128
- }) : /* @__PURE__ */ x(we, {
1134
+ }) : /* @__PURE__ */ b(Ee, {
1129
1135
  illustration: "empty-search",
1130
1136
  title: m("pages.marketplace.noFilterMatch", "No apps match your filters"),
1131
1137
  description: m("pages.marketplace.noFilterMatchDescription", "Try adjusting your filter criteria or clearing filters to see more results."),
1132
- action: /* @__PURE__ */ x("button", {
1138
+ action: /* @__PURE__ */ b("button", {
1133
1139
  type: "button",
1134
- onClick: qe,
1140
+ onClick: Je,
1135
1141
  className: "cursor-pointer rounded-lg bg-action-primary-bg px-4 py-2 text-sm font-medium text-action-primary-text transition-opacity hover:opacity-90",
1136
1142
  children: m("pages.marketplace.clearAllFilters", "Clear All Filters")
1137
1143
  })
1138
1144
  })] }),
1139
- !U && A === "all" && /* @__PURE__ */ S(be, { children: [
1140
- K.length > 0 && /* @__PURE__ */ S("section", { children: [/* @__PURE__ */ x(k, {
1141
- icon: ye,
1145
+ !H && D === "all" && /* @__PURE__ */ x(Se, { children: [
1146
+ G.length > 0 && /* @__PURE__ */ x("section", { children: [/* @__PURE__ */ b(k, {
1147
+ icon: xe,
1142
1148
  title: m("pages.marketplace.mostDownloaded", "Most Downloaded"),
1143
1149
  subtitle: m("pages.marketplace.mostDownloadedSubtitle", "Top picks by our community")
1144
- }), /* @__PURE__ */ x("div", {
1150
+ }), /* @__PURE__ */ b("div", {
1145
1151
  className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3",
1146
1152
  "data-tour": "store-marketplace-most-downloaded",
1147
- children: K.slice(0, 6).map((e) => /* @__PURE__ */ x(O, {
1153
+ children: G.slice(0, 6).map((e) => /* @__PURE__ */ b(O, {
1148
1154
  product: e,
1149
1155
  onClick: () => Q(e)
1150
1156
  }, e.id))
1151
1157
  })] }),
1152
- q.length > 0 && /* @__PURE__ */ S("section", { children: [/* @__PURE__ */ x(k, {
1158
+ K.length > 0 && /* @__PURE__ */ x("section", { children: [/* @__PURE__ */ b(k, {
1153
1159
  icon: le,
1154
1160
  title: m("pages.marketplace.newReleases", "New Releases"),
1155
1161
  subtitle: m("pages.marketplace.newReleasesSubtitle", "Recently published apps")
1156
- }), /* @__PURE__ */ x("div", {
1162
+ }), /* @__PURE__ */ b("div", {
1157
1163
  className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3",
1158
- children: q.slice(0, 6).map((e) => /* @__PURE__ */ x(O, {
1164
+ children: K.slice(0, 6).map((e) => /* @__PURE__ */ b(O, {
1159
1165
  product: e,
1160
1166
  onClick: () => Q(e)
1161
1167
  }, e.id))
1162
1168
  })] }),
1163
- J.length > 0 && /* @__PURE__ */ S("section", { children: [/* @__PURE__ */ x(k, {
1169
+ q.length > 0 && /* @__PURE__ */ x("section", { children: [/* @__PURE__ */ b(k, {
1164
1170
  icon: me,
1165
1171
  title: m("pages.marketplace.freeApps", "Free Apps"),
1166
1172
  subtitle: m("pages.marketplace.freeAppsSubtitle", "No cost, full functionality")
1167
- }), /* @__PURE__ */ x("div", {
1173
+ }), /* @__PURE__ */ b("div", {
1168
1174
  className: "grid grid-cols-2 gap-2 sm:grid-cols-3 lg:grid-cols-6",
1169
- children: J.slice(0, 6).map((e) => /* @__PURE__ */ x(O, {
1175
+ children: q.slice(0, 6).map((e) => /* @__PURE__ */ b(O, {
1170
1176
  product: e,
1171
1177
  onClick: () => Q(e),
1172
1178
  variant: "compact"
1173
1179
  }, e.id))
1174
1180
  })] }),
1175
- $.length > 0 && /* @__PURE__ */ S("section", { children: [/* @__PURE__ */ x(k, {
1181
+ $.length > 0 && /* @__PURE__ */ x("section", { children: [/* @__PURE__ */ b(k, {
1176
1182
  icon: p,
1177
1183
  title: m("pages.marketplace.allApps", "All Apps"),
1178
1184
  subtitle: m("pages.marketplace.allAppsSubtitle", "{{count}} apps available", { count: $.length })
1179
- }), /* @__PURE__ */ x("div", {
1185
+ }), /* @__PURE__ */ b("div", {
1180
1186
  className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-4",
1181
- children: $.map((e) => /* @__PURE__ */ x(O, {
1187
+ children: $.map((e) => /* @__PURE__ */ b(O, {
1182
1188
  product: e,
1183
1189
  onClick: () => Q(e)
1184
1190
  }, e.id))
1185
1191
  })] })
1186
1192
  ] }),
1187
- ct && ut.length > 0 && /* @__PURE__ */ S("section", { children: [/* @__PURE__ */ x(k, {
1193
+ ct && ut.length > 0 && /* @__PURE__ */ x("section", { children: [/* @__PURE__ */ b(k, {
1188
1194
  icon: d,
1189
1195
  title: m("pages.marketplace.deprecatedApps", "Deprecated Apps You've Installed"),
1190
1196
  subtitle: m("pages.marketplace.deprecatedAppsSubtitle", "These apps are no longer supported — hover the badge for details")
1191
- }), /* @__PURE__ */ x("div", {
1197
+ }), /* @__PURE__ */ b("div", {
1192
1198
  className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3",
1193
- children: ut.map((e) => /* @__PURE__ */ x(ke, {
1199
+ children: ut.map((e) => /* @__PURE__ */ b(Ae, {
1194
1200
  product: e,
1195
1201
  onClick: () => r(`${f}/marketplace/product/${e.id}`)
1196
1202
  }, e.id))
1197
1203
  })] }),
1198
- $.length === 0 && /* @__PURE__ */ x(we, {
1204
+ $.length === 0 && /* @__PURE__ */ b(Ee, {
1199
1205
  illustration: "onboarding",
1200
1206
  title: m("pages.marketplace.noAppsTitle", "No apps available yet"),
1201
1207
  description: m("pages.marketplace.noAppsDescription", "The marketplace is empty. Check back soon for new apps, workflows, and integrations.")
@@ -1204,18 +1210,18 @@ var Oe = (e) => e >= 1e6 ? `${(e / 1e6).toFixed(1)}M` : e >= 1e3 ? `${(e / 1e3).
1204
1210
  ]
1205
1211
  })
1206
1212
  }),
1207
- /* @__PURE__ */ x(te, {
1213
+ /* @__PURE__ */ b(te, {
1208
1214
  isOpen: fe,
1209
1215
  onClose: h,
1210
1216
  onCheckout: st,
1211
1217
  cartItems: _,
1212
1218
  itemCount: g,
1213
1219
  currency: de?.currency || "USD",
1214
- subtotal: Se,
1215
- tax: Oe,
1216
- total: C,
1217
- updateQuantity: w,
1218
- removeProduct: T
1220
+ subtotal: _e,
1221
+ tax: we,
1222
+ total: S,
1223
+ updateQuantity: C,
1224
+ removeProduct: w
1219
1225
  })
1220
1226
  ]
1221
1227
  });