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