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