@burdenoff/microfe-proserviceworld 2026.525.1 → 2026.625.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.
Files changed (31) hide show
  1. package/dist/proserviceworld/pages/AdminReportsPage.js +368 -335
  2. package/dist/proserviceworld/pages/AdminReportsPage.js.map +1 -1
  3. package/dist/proserviceworld/pages/AdminUsersPage.js +262 -242
  4. package/dist/proserviceworld/pages/AdminUsersPage.js.map +1 -1
  5. package/dist/proserviceworld/pages/AnalyticsPage.js +346 -318
  6. package/dist/proserviceworld/pages/AnalyticsPage.js.map +1 -1
  7. package/dist/proserviceworld/pages/BookingsPage.js +202 -185
  8. package/dist/proserviceworld/pages/BookingsPage.js.map +1 -1
  9. package/dist/proserviceworld/pages/DashboardPage.js +400 -363
  10. package/dist/proserviceworld/pages/DashboardPage.js.map +1 -1
  11. package/dist/proserviceworld/pages/DocumentsPage.js +389 -324
  12. package/dist/proserviceworld/pages/DocumentsPage.js.map +1 -1
  13. package/dist/proserviceworld/pages/MessagesPage.js +77 -82
  14. package/dist/proserviceworld/pages/MessagesPage.js.map +1 -1
  15. package/dist/proserviceworld/pages/PaymentsPage.js +373 -346
  16. package/dist/proserviceworld/pages/PaymentsPage.js.map +1 -1
  17. package/dist/proserviceworld/pages/ProjectsPage.js +432 -385
  18. package/dist/proserviceworld/pages/ProjectsPage.js.map +1 -1
  19. package/dist/proserviceworld/pages/ProviderDetailPage.js +396 -352
  20. package/dist/proserviceworld/pages/ProviderDetailPage.js.map +1 -1
  21. package/dist/proserviceworld/pages/ProvidersPage.js +245 -244
  22. package/dist/proserviceworld/pages/ProvidersPage.js.map +1 -1
  23. package/dist/proserviceworld/pages/ReviewsPage.js +31 -31
  24. package/dist/proserviceworld/pages/ReviewsPage.js.map +1 -1
  25. package/dist/proserviceworld/pages/ServiceDetailsPage.js +349 -316
  26. package/dist/proserviceworld/pages/ServiceDetailsPage.js.map +1 -1
  27. package/dist/proserviceworld/pages/ServicesPage.js +163 -160
  28. package/dist/proserviceworld/pages/ServicesPage.js.map +1 -1
  29. package/dist/proserviceworld/pages/VerificationPage.js +265 -256
  30. package/dist/proserviceworld/pages/VerificationPage.js.map +1 -1
  31. package/package.json +2 -2
@@ -1,176 +1,196 @@
1
1
  import { useProServiceWorldStore as e } from "../store/proserviceworldStore.js";
2
2
  import { useMemo as t, useState as n } from "react";
3
- import { ArrowUpDown as r, ChevronRight as i, Clock as a, Download as o, File as s, FileText as c, FolderOpen as l, FolderPlus as u, Grid3x3 as d, HardDrive as f, Image as p, List as m, MoreHorizontal as h, Search as g, Share2 as _, Star as v, Upload as y, Users as b } from "lucide-react";
4
- import { Fragment as x, jsx as S, jsxs as C } from "react/jsx-runtime";
5
- import { Button as w, Card as T, CardContent as E, CardHeader as D, CardTitle as O, Input as k } from "@burdenoff/fe-libs/ui";
3
+ import { ArrowUpDown as ee, ChevronRight as te, Clock as r, Download as i, File as a, FileText as o, FolderOpen as s, FolderPlus as c, Grid3x3 as l, HardDrive as u, Image as d, List as f, MoreHorizontal as p, Search as m, Share2 as h, Star as g, Upload as _, Users as v } from "lucide-react";
4
+ import { Fragment as ne, jsx as y, jsxs as b } from "react/jsx-runtime";
5
+ import { AuroraBackground as x, Button as S, CTAOverflowMenu as C, Card as w, CardContent as T, CardHeader as E, CardTitle as D, GlassCard as O, GradientText as k, IllustratedEmptyState as A, Input as j } from "@burdenoff/fe-libs/ui";
6
6
  //#region src/proserviceworld/pages/DocumentsPage.tsx
7
- var A = {
8
- pdf: c,
9
- docx: s,
10
- doc: s,
11
- txt: c,
12
- image: p,
13
- video: s,
14
- audio: s,
15
- other: s
16
- }, j = {
17
- pdf: "text-red-500",
18
- docx: "text-blue-500",
19
- doc: "text-blue-500",
20
- txt: "text-gray-500",
21
- image: "text-green-500",
22
- video: "text-purple-500",
23
- audio: "text-orange-500",
24
- other: "text-gray-400"
25
- }, M = {
26
- blue: "text-blue-500",
27
- green: "text-green-500",
28
- purple: "text-purple-500",
29
- yellow: "text-yellow-500",
30
- red: "text-red-500"
7
+ var M = {
8
+ pdf: o,
9
+ docx: a,
10
+ doc: a,
11
+ txt: o,
12
+ image: d,
13
+ video: a,
14
+ audio: a,
15
+ other: a
16
+ }, N = {
17
+ pdf: "text-status-error-text",
18
+ docx: "text-accent-blue",
19
+ doc: "text-accent-blue",
20
+ txt: "text-text-secondary",
21
+ image: "text-status-success-text",
22
+ video: "text-accent-purple",
23
+ audio: "text-status-warning-text",
24
+ other: "text-text-secondary"
25
+ }, re = {
26
+ blue: "text-accent-blue",
27
+ green: "text-status-success-text",
28
+ purple: "text-accent-purple",
29
+ yellow: "text-status-warning-text",
30
+ red: "text-status-error-text"
31
31
  };
32
- function N(e) {
32
+ function P(e) {
33
33
  return e < 1024 ? `${e} B` : e < 1024 * 1024 ? `${(e / 1024).toFixed(1)} KB` : `${(e / (1024 * 1024)).toFixed(1)} MB`;
34
34
  }
35
- function P() {
36
- let { documents: p, folders: P } = e(), [F, I] = n("grid"), [L, R] = n(""), [z, B] = n("all"), [V, H] = n("date"), [U, W] = n(!1), [G, K] = n(null), [q, J] = n(!1), [Y, X] = n(!1), Z = t(() => {
37
- let e = [...p];
38
- if (G && (e = e.filter((e) => e.folderId === G)), z === "starred" ? e = e.filter((e) => e.isStarred) : z !== "all" && (e = e.filter((e) => e.type === z)), L.trim()) {
39
- let t = L.toLowerCase();
35
+ function F() {
36
+ let { documents: d, folders: F } = e(), [I, L] = n("grid"), [R, z] = n(""), [B, V] = n("all"), [H, U] = n("date"), [W, G] = n(!1), [K, q] = n(null), [J, Y] = n(!1), [X, Z] = n(!1), Q = t(() => {
37
+ let e = [...d];
38
+ if (K && (e = e.filter((e) => e.folderId === K)), B === "starred" ? e = e.filter((e) => e.isStarred) : B !== "all" && (e = e.filter((e) => e.type === B)), R.trim()) {
39
+ let t = R.toLowerCase();
40
40
  e = e.filter((e) => e.name.toLowerCase().includes(t) || e.tags.some((e) => e.toLowerCase().includes(t)));
41
41
  }
42
42
  return e.sort((e, t) => {
43
- let n = V === "name" ? e.name.localeCompare(t.name) : V === "date" ? new Date(t.modifiedAt).getTime() - new Date(e.modifiedAt).getTime() : t.size - e.size;
44
- return U ? -n : n;
43
+ let n = H === "name" ? e.name.localeCompare(t.name) : H === "date" ? new Date(t.modifiedAt).getTime() - new Date(e.modifiedAt).getTime() : t.size - e.size;
44
+ return W ? -n : n;
45
45
  }), e;
46
46
  }, [
47
- p,
48
- G,
49
- z,
50
- L,
51
- V,
52
- U
53
- ]), Q = p.reduce((e, t) => e + t.size, 0), ee = p.filter((e) => e.isStarred).length, $ = G ? P.find((e) => e.id === G) : null, te = (e) => {
54
- V === e ? W(!U) : (H(e), W(!1));
47
+ d,
48
+ K,
49
+ B,
50
+ R,
51
+ H,
52
+ W
53
+ ]), ie = d.reduce((e, t) => e + t.size, 0), ae = d.filter((e) => e.isStarred).length, $ = K ? F.find((e) => e.id === K) : null, oe = (e) => {
54
+ H === e ? G(!W) : (U(e), G(!1));
55
55
  };
56
- return /* @__PURE__ */ C("div", {
57
- className: "space-y-6 p-6",
56
+ return /* @__PURE__ */ b("div", {
57
+ className: "space-y-6 p-6 bg-bg-canvas min-h-screen",
58
58
  children: [
59
- /* @__PURE__ */ C("div", {
60
- className: "flex flex-col gap-4 sm:flex-row sm:items-center sm:justify-between",
61
- children: [/* @__PURE__ */ C("div", { children: [/* @__PURE__ */ S("h1", {
62
- className: "text-2xl font-semibold",
63
- children: "Documents"
64
- }), /* @__PURE__ */ S("p", {
65
- className: "text-sm text-muted-foreground",
66
- children: "Manage files, folders, and shared documents."
67
- })] }), /* @__PURE__ */ C("div", {
68
- className: "flex gap-2",
69
- children: [/* @__PURE__ */ C(w, {
70
- variant: "outline",
71
- size: "sm",
72
- onClick: () => X(!0),
73
- children: [/* @__PURE__ */ S(u, { className: "mr-2 h-4 w-4" }), " New Folder"]
74
- }), /* @__PURE__ */ C(w, {
75
- size: "sm",
76
- onClick: () => J(!0),
77
- children: [/* @__PURE__ */ S(y, { className: "mr-2 h-4 w-4" }), " Upload"]
59
+ /* @__PURE__ */ b("div", {
60
+ className: "relative overflow-hidden rounded-card -mx-2 px-2 pt-1",
61
+ children: [/* @__PURE__ */ y(x, { intensity: "subtle" }), /* @__PURE__ */ b("div", {
62
+ className: "flex flex-col gap-4 sm:flex-row sm:items-center sm:justify-between",
63
+ children: [/* @__PURE__ */ b("div", { children: [/* @__PURE__ */ y("h1", {
64
+ className: "text-2xl font-semibold tracking-tight",
65
+ children: /* @__PURE__ */ y(k, { children: "Documents" })
66
+ }), /* @__PURE__ */ y("p", {
67
+ className: "text-sm text-text-secondary",
68
+ children: "Manage files, folders, and shared documents."
69
+ })] }), /* @__PURE__ */ y(C, {
70
+ primary: {
71
+ label: "Upload",
72
+ onSelect: () => Y(!0),
73
+ icon: /* @__PURE__ */ y(_, { className: "h-4 w-4" })
74
+ },
75
+ actions: [{
76
+ label: "New Folder",
77
+ onSelect: () => Z(!0),
78
+ icon: /* @__PURE__ */ y(c, { className: "h-4 w-4" })
79
+ }]
78
80
  })]
79
81
  })]
80
82
  }),
81
- /* @__PURE__ */ C("div", {
83
+ /* @__PURE__ */ b("div", {
82
84
  className: "grid gap-4 sm:grid-cols-2 lg:grid-cols-4",
83
85
  children: [
84
- /* @__PURE__ */ S(T, { children: /* @__PURE__ */ S(E, {
85
- className: "pt-4",
86
- children: /* @__PURE__ */ C("div", {
87
- className: "flex items-center gap-3",
88
- children: [/* @__PURE__ */ S("div", {
89
- className: "rounded-lg bg-blue-100 p-2 dark:bg-blue-950",
90
- children: /* @__PURE__ */ S(c, { className: "h-5 w-5 text-blue-600" })
91
- }), /* @__PURE__ */ C("div", { children: [/* @__PURE__ */ S("p", {
92
- className: "text-2xl font-bold",
93
- children: p.length
94
- }), /* @__PURE__ */ S("p", {
95
- className: "text-xs text-muted-foreground",
96
- children: "Total Files"
97
- })] })]
86
+ /* @__PURE__ */ y(O, {
87
+ treatment: "metric",
88
+ className: "border-border-seam",
89
+ children: /* @__PURE__ */ y(T, {
90
+ className: "pt-4",
91
+ children: /* @__PURE__ */ b("div", {
92
+ className: "flex items-center gap-3",
93
+ children: [/* @__PURE__ */ y("div", {
94
+ className: "rounded-lg bg-accent-blue-subtle p-2",
95
+ children: /* @__PURE__ */ y(o, { className: "h-5 w-5 text-accent-blue" })
96
+ }), /* @__PURE__ */ b("div", { children: [/* @__PURE__ */ y("p", {
97
+ className: "text-2xl font-bold tabular-nums",
98
+ children: d.length
99
+ }), /* @__PURE__ */ y("p", {
100
+ className: "text-xs text-text-secondary",
101
+ children: "Total Files"
102
+ })] })]
103
+ })
98
104
  })
99
- }) }),
100
- /* @__PURE__ */ S(T, { children: /* @__PURE__ */ S(E, {
101
- className: "pt-4",
102
- children: /* @__PURE__ */ C("div", {
103
- className: "flex items-center gap-3",
104
- children: [/* @__PURE__ */ S("div", {
105
- className: "rounded-lg bg-purple-100 p-2 dark:bg-purple-950",
106
- children: /* @__PURE__ */ S(l, { className: "h-5 w-5 text-purple-600" })
107
- }), /* @__PURE__ */ C("div", { children: [/* @__PURE__ */ S("p", {
108
- className: "text-2xl font-bold",
109
- children: P.length
110
- }), /* @__PURE__ */ S("p", {
111
- className: "text-xs text-muted-foreground",
112
- children: "Folders"
113
- })] })]
105
+ }),
106
+ /* @__PURE__ */ y(O, {
107
+ treatment: "metric",
108
+ className: "border-border-seam",
109
+ children: /* @__PURE__ */ y(T, {
110
+ className: "pt-4",
111
+ children: /* @__PURE__ */ b("div", {
112
+ className: "flex items-center gap-3",
113
+ children: [/* @__PURE__ */ y("div", {
114
+ className: "rounded-lg bg-accent-purple-subtle p-2",
115
+ children: /* @__PURE__ */ y(s, { className: "h-5 w-5 text-accent-purple" })
116
+ }), /* @__PURE__ */ b("div", { children: [/* @__PURE__ */ y("p", {
117
+ className: "text-2xl font-bold tabular-nums",
118
+ children: F.length
119
+ }), /* @__PURE__ */ y("p", {
120
+ className: "text-xs text-text-secondary",
121
+ children: "Folders"
122
+ })] })]
123
+ })
114
124
  })
115
- }) }),
116
- /* @__PURE__ */ S(T, { children: /* @__PURE__ */ S(E, {
117
- className: "pt-4",
118
- children: /* @__PURE__ */ C("div", {
119
- className: "flex items-center gap-3",
120
- children: [/* @__PURE__ */ S("div", {
121
- className: "rounded-lg bg-yellow-100 p-2 dark:bg-yellow-950",
122
- children: /* @__PURE__ */ S(v, { className: "h-5 w-5 text-yellow-600" })
123
- }), /* @__PURE__ */ C("div", { children: [/* @__PURE__ */ S("p", {
124
- className: "text-2xl font-bold",
125
- children: ee
126
- }), /* @__PURE__ */ S("p", {
127
- className: "text-xs text-muted-foreground",
128
- children: "Starred"
129
- })] })]
125
+ }),
126
+ /* @__PURE__ */ y(O, {
127
+ treatment: "metric",
128
+ className: "border-border-seam",
129
+ children: /* @__PURE__ */ y(T, {
130
+ className: "pt-4",
131
+ children: /* @__PURE__ */ b("div", {
132
+ className: "flex items-center gap-3",
133
+ children: [/* @__PURE__ */ y("div", {
134
+ className: "rounded-lg bg-status-warning-bg-subtle p-2",
135
+ children: /* @__PURE__ */ y(g, { className: "h-5 w-5 text-status-warning-text" })
136
+ }), /* @__PURE__ */ b("div", { children: [/* @__PURE__ */ y("p", {
137
+ className: "text-2xl font-bold tabular-nums",
138
+ children: ae
139
+ }), /* @__PURE__ */ y("p", {
140
+ className: "text-xs text-text-secondary",
141
+ children: "Starred"
142
+ })] })]
143
+ })
130
144
  })
131
- }) }),
132
- /* @__PURE__ */ S(T, { children: /* @__PURE__ */ S(E, {
133
- className: "pt-4",
134
- children: /* @__PURE__ */ C("div", {
135
- className: "flex items-center gap-3",
136
- children: [/* @__PURE__ */ S("div", {
137
- className: "rounded-lg bg-green-100 p-2 dark:bg-green-950",
138
- children: /* @__PURE__ */ S(f, { className: "h-5 w-5 text-green-600" })
139
- }), /* @__PURE__ */ C("div", { children: [/* @__PURE__ */ S("p", {
140
- className: "text-2xl font-bold",
141
- children: N(Q)
142
- }), /* @__PURE__ */ S("p", {
143
- className: "text-xs text-muted-foreground",
144
- children: "Total Size"
145
- })] })]
145
+ }),
146
+ /* @__PURE__ */ y(O, {
147
+ treatment: "glass",
148
+ glow: !0,
149
+ className: "border-border-seam",
150
+ children: /* @__PURE__ */ y(T, {
151
+ className: "pt-4",
152
+ children: /* @__PURE__ */ b("div", {
153
+ className: "flex items-center gap-3",
154
+ children: [/* @__PURE__ */ y("div", {
155
+ className: "rounded-lg bg-status-success-bg-subtle p-2",
156
+ children: /* @__PURE__ */ y(u, { className: "h-5 w-5 text-status-success-text" })
157
+ }), /* @__PURE__ */ b("div", { children: [/* @__PURE__ */ y("p", {
158
+ className: "text-2xl font-bold tabular-nums",
159
+ children: P(ie)
160
+ }), /* @__PURE__ */ y("p", {
161
+ className: "text-xs text-text-secondary",
162
+ children: "Total Size"
163
+ })] })]
164
+ })
146
165
  })
147
- }) })
166
+ })
148
167
  ]
149
168
  }),
150
- /* @__PURE__ */ C("div", {
169
+ /* @__PURE__ */ b("div", {
151
170
  className: "flex items-center gap-2 text-sm",
152
- children: [/* @__PURE__ */ S("button", {
153
- onClick: () => K(null),
154
- className: `font-medium ${G ? "text-muted-foreground hover:text-foreground" : "text-primary"}`,
171
+ children: [/* @__PURE__ */ y("button", {
172
+ onClick: () => q(null),
173
+ className: `font-medium focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-border-focus rounded ${K ? "text-text-secondary hover:text-text-primary" : "text-accent-blue"}`,
155
174
  children: "All Files"
156
- }), $ && /* @__PURE__ */ C(x, { children: [/* @__PURE__ */ S(i, { className: "h-4 w-4 text-muted-foreground" }), /* @__PURE__ */ S("span", {
157
- className: "font-medium text-primary",
175
+ }), $ && /* @__PURE__ */ b(ne, { children: [/* @__PURE__ */ y(te, { className: "h-4 w-4 text-text-secondary" }), /* @__PURE__ */ y("span", {
176
+ className: "font-medium text-accent-blue",
158
177
  children: $.name
159
178
  })] })]
160
179
  }),
161
- /* @__PURE__ */ C("div", {
180
+ /* @__PURE__ */ b("div", {
162
181
  className: "flex flex-col gap-4 sm:flex-row sm:items-center",
163
- children: [/* @__PURE__ */ C("div", {
182
+ children: [/* @__PURE__ */ b("div", {
164
183
  className: "relative flex-1",
165
- children: [/* @__PURE__ */ S(g, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground" }), /* @__PURE__ */ S(k, {
184
+ children: [/* @__PURE__ */ y(m, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-text-secondary" }), /* @__PURE__ */ y(j, {
166
185
  placeholder: "Search documents...",
167
- value: L,
168
- onChange: (e) => R(e.target.value),
186
+ "aria-label": "Search documents",
187
+ value: R,
188
+ onChange: (e) => z(e.target.value),
169
189
  className: "pl-10"
170
190
  })]
171
- }), /* @__PURE__ */ C("div", {
172
- className: "flex items-center gap-2",
173
- children: [/* @__PURE__ */ S("div", {
191
+ }), /* @__PURE__ */ b("div", {
192
+ className: "flex flex-wrap items-center gap-2",
193
+ children: [/* @__PURE__ */ y("div", {
174
194
  className: "flex flex-wrap gap-1",
175
195
  children: [
176
196
  "all",
@@ -178,26 +198,31 @@ function P() {
178
198
  "docx",
179
199
  "txt",
180
200
  "starred"
181
- ].map((e) => /* @__PURE__ */ S("button", {
182
- onClick: () => B(e),
183
- className: `rounded px-2 py-1 text-xs font-medium transition-colors ${z === e ? "bg-primary text-primary-foreground" : "bg-muted text-muted-foreground hover:bg-muted/80"}`,
201
+ ].map((e) => /* @__PURE__ */ y("button", {
202
+ onClick: () => V(e),
203
+ "aria-pressed": B === e,
204
+ className: `rounded px-2 py-1 text-xs font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-border-focus ${B === e ? "bg-accent-blue text-action-primary-text" : "bg-bg-sunken text-text-secondary hover:text-text-primary"}`,
184
205
  children: e === "all" ? "All" : e === "starred" ? "Starred" : e.toUpperCase()
185
206
  }, e))
186
- }), /* @__PURE__ */ C("div", {
187
- className: "flex rounded border",
188
- children: [/* @__PURE__ */ S("button", {
189
- onClick: () => I("grid"),
190
- className: `p-1.5 ${F === "grid" ? "bg-primary text-primary-foreground" : "text-muted-foreground"}`,
191
- children: /* @__PURE__ */ S(d, { className: "h-4 w-4" })
192
- }), /* @__PURE__ */ S("button", {
193
- onClick: () => I("list"),
194
- className: `p-1.5 ${F === "list" ? "bg-primary text-primary-foreground" : "text-muted-foreground"}`,
195
- children: /* @__PURE__ */ S(m, { className: "h-4 w-4" })
207
+ }), /* @__PURE__ */ b("div", {
208
+ className: "flex rounded border border-border-seam",
209
+ children: [/* @__PURE__ */ y("button", {
210
+ onClick: () => L("grid"),
211
+ "aria-label": "Grid view",
212
+ "aria-pressed": I === "grid",
213
+ className: `p-1.5 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-border-focus ${I === "grid" ? "bg-accent-blue text-action-primary-text" : "text-text-secondary"}`,
214
+ children: /* @__PURE__ */ y(l, { className: "h-4 w-4" })
215
+ }), /* @__PURE__ */ y("button", {
216
+ onClick: () => L("list"),
217
+ "aria-label": "List view",
218
+ "aria-pressed": I === "list",
219
+ className: `p-1.5 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-border-focus ${I === "list" ? "bg-accent-blue text-action-primary-text" : "text-text-secondary"}`,
220
+ children: /* @__PURE__ */ y(f, { className: "h-4 w-4" })
196
221
  })]
197
222
  })]
198
223
  })]
199
224
  }),
200
- /* @__PURE__ */ S("div", {
225
+ /* @__PURE__ */ y("div", {
201
226
  className: "flex gap-2",
202
227
  children: [
203
228
  {
@@ -212,29 +237,33 @@ function P() {
212
237
  field: "size",
213
238
  label: "Size"
214
239
  }
215
- ].map(({ field: e, label: t }) => /* @__PURE__ */ C("button", {
216
- onClick: () => te(e),
217
- className: `flex items-center gap-1 rounded border px-3 py-1 text-xs ${V === e ? "border-primary bg-primary/5 text-primary" : "text-muted-foreground hover:bg-muted/50"}`,
218
- children: [/* @__PURE__ */ S(r, { className: "h-3 w-3" }), t]
240
+ ].map(({ field: e, label: t }) => /* @__PURE__ */ b("button", {
241
+ onClick: () => oe(e),
242
+ "aria-pressed": H === e,
243
+ className: `flex items-center gap-1 rounded border px-3 py-1 text-xs focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-border-focus ${H === e ? "border-accent-blue bg-accent-blue-subtle text-accent-blue" : "border-border-seam text-text-secondary hover:text-text-primary"}`,
244
+ children: [/* @__PURE__ */ y(ee, { className: "h-3 w-3" }), t]
219
245
  }, e))
220
246
  }),
221
- !G && /* @__PURE__ */ C("div", { children: [/* @__PURE__ */ S("h3", {
222
- className: "mb-3 text-sm font-medium text-muted-foreground",
247
+ !K && /* @__PURE__ */ b("div", { children: [/* @__PURE__ */ y("h3", {
248
+ className: "mb-3 text-sm font-medium text-text-secondary",
223
249
  children: "Folders"
224
- }), /* @__PURE__ */ S("div", {
250
+ }), /* @__PURE__ */ y("div", {
225
251
  className: "grid gap-3 sm:grid-cols-2 lg:grid-cols-4",
226
- children: P.map((e) => /* @__PURE__ */ C("button", {
227
- onClick: () => K(e.id),
228
- className: "flex items-center gap-3 rounded-lg border p-3 text-left transition-colors hover:bg-muted/50",
229
- children: [/* @__PURE__ */ S(l, { className: `h-8 w-8 ${M[e.color] ?? "text-gray-500"}` }), /* @__PURE__ */ C("div", {
252
+ children: F.map((e) => /* @__PURE__ */ b("button", {
253
+ onClick: () => q(e.id),
254
+ className: "flex items-center gap-3 rounded-lg border border-border-seam p-3 text-left transition-shadow hover:shadow-pop focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-border-focus",
255
+ children: [/* @__PURE__ */ y(s, { className: `h-8 w-8 ${re[e.color] ?? "text-text-secondary"}` }), /* @__PURE__ */ b("div", {
230
256
  className: "min-w-0 flex-1",
231
- children: [/* @__PURE__ */ S("p", {
257
+ children: [/* @__PURE__ */ y("p", {
232
258
  className: "truncate font-medium text-sm",
233
259
  children: e.name
234
- }), /* @__PURE__ */ C("p", {
235
- className: "text-xs text-muted-foreground",
260
+ }), /* @__PURE__ */ b("p", {
261
+ className: "text-xs text-text-secondary",
236
262
  children: [
237
- e.documentsCount,
263
+ /* @__PURE__ */ y("span", {
264
+ className: "tabular-nums",
265
+ children: e.documentsCount
266
+ }),
238
267
  " files",
239
268
  e.isPublic && " - Public"
240
269
  ]
@@ -242,206 +271,237 @@ function P() {
242
271
  })]
243
272
  }, e.id))
244
273
  })] }),
245
- /* @__PURE__ */ C("div", { children: [/* @__PURE__ */ C("h3", {
246
- className: "mb-3 text-sm font-medium text-muted-foreground",
247
- children: ["Files ", Z.length > 0 && `(${Z.length})`]
248
- }), Z.length === 0 ? /* @__PURE__ */ S(T, { children: /* @__PURE__ */ S(E, {
249
- className: "py-12 text-center text-muted-foreground",
250
- children: "No files found. Try adjusting your filters."
251
- }) }) : F === "grid" ? /* @__PURE__ */ S("div", {
274
+ /* @__PURE__ */ b("div", { children: [/* @__PURE__ */ b("h3", {
275
+ className: "mb-3 text-sm font-medium text-text-secondary",
276
+ children: ["Files ", Q.length > 0 && `(${Q.length})`]
277
+ }), Q.length === 0 ? /* @__PURE__ */ y(w, {
278
+ className: "border-border-seam",
279
+ children: /* @__PURE__ */ y(T, {
280
+ className: "py-6",
281
+ children: /* @__PURE__ */ y(A, {
282
+ illustration: R || B !== "all" ? "empty-search" : "empty-files",
283
+ title: "No files found",
284
+ description: "Try adjusting your filters or upload a new document.",
285
+ action: /* @__PURE__ */ b(S, {
286
+ size: "sm",
287
+ onClick: () => Y(!0),
288
+ children: [/* @__PURE__ */ y(_, { className: "mr-2 h-4 w-4" }), " Upload"]
289
+ })
290
+ })
291
+ })
292
+ }) : I === "grid" ? /* @__PURE__ */ y("div", {
252
293
  className: "grid gap-3 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4",
253
- children: Z.map((e) => /* @__PURE__ */ S(T, {
254
- className: "hover:bg-muted/30 transition-colors",
255
- children: /* @__PURE__ */ C(E, {
294
+ children: Q.map((e) => /* @__PURE__ */ y(O, {
295
+ treatment: "plain",
296
+ className: "border-border-seam transition-shadow hover:shadow-pop",
297
+ children: /* @__PURE__ */ b(T, {
256
298
  className: "pt-4",
257
299
  children: [
258
- /* @__PURE__ */ C("div", {
300
+ /* @__PURE__ */ b("div", {
259
301
  className: "flex items-start justify-between",
260
- children: [/* @__PURE__ */ S(A[e.type] ?? s, { className: `h-10 w-10 ${j[e.type] ?? "text-gray-400"}` }), /* @__PURE__ */ C("div", {
302
+ children: [/* @__PURE__ */ y(M[e.type] ?? a, { className: `h-10 w-10 ${N[e.type] ?? "text-text-secondary"}` }), /* @__PURE__ */ b("div", {
261
303
  className: "flex items-center gap-1",
262
- children: [e.isStarred && /* @__PURE__ */ S(v, { className: "h-4 w-4 fill-yellow-400 text-yellow-400" }), e.sharedWith > 0 && /* @__PURE__ */ S(_, { className: "h-4 w-4 text-muted-foreground" })]
304
+ children: [e.isStarred && /* @__PURE__ */ y(g, { className: "h-4 w-4 fill-status-warning-text text-status-warning-text" }), e.sharedWith > 0 && /* @__PURE__ */ y(h, { className: "h-4 w-4 text-text-secondary" })]
263
305
  })]
264
306
  }),
265
- /* @__PURE__ */ S("h4", {
307
+ /* @__PURE__ */ y("h4", {
266
308
  className: "mt-3 truncate font-medium text-sm",
267
309
  children: e.name
268
310
  }),
269
- /* @__PURE__ */ C("div", {
270
- className: "mt-1 flex items-center gap-2 text-xs text-muted-foreground",
271
- children: [/* @__PURE__ */ S("span", { children: N(e.size) }), /* @__PURE__ */ C("span", { children: ["v", e.version] })]
311
+ /* @__PURE__ */ b("div", {
312
+ className: "mt-1 flex items-center gap-2 text-xs text-text-secondary",
313
+ children: [/* @__PURE__ */ y("span", {
314
+ className: "tabular-nums",
315
+ children: P(e.size)
316
+ }), /* @__PURE__ */ b("span", {
317
+ className: "tabular-nums",
318
+ children: ["v", e.version]
319
+ })]
272
320
  }),
273
- /* @__PURE__ */ C("div", {
274
- className: "mt-2 flex items-center gap-1 text-xs text-muted-foreground",
321
+ /* @__PURE__ */ b("div", {
322
+ className: "mt-2 flex items-center gap-1 text-xs text-text-secondary",
275
323
  children: [
276
- /* @__PURE__ */ S(a, { className: "h-3 w-3" }),
324
+ /* @__PURE__ */ y(r, { className: "h-3 w-3" }),
277
325
  " ",
278
326
  e.modifiedAt
279
327
  ]
280
328
  }),
281
- /* @__PURE__ */ C("div", {
329
+ /* @__PURE__ */ b("div", {
282
330
  className: "mt-3 flex gap-1",
283
- children: [/* @__PURE__ */ C(w, {
331
+ children: [/* @__PURE__ */ b(S, {
284
332
  variant: "outline",
285
333
  size: "sm",
286
334
  className: "flex-1 text-xs",
287
- children: [/* @__PURE__ */ S(o, { className: "mr-1 h-3 w-3" }), " Download"]
288
- }), /* @__PURE__ */ S(w, {
335
+ children: [/* @__PURE__ */ y(i, { className: "mr-1 h-3 w-3" }), " Download"]
336
+ }), /* @__PURE__ */ y(S, {
289
337
  variant: "outline",
290
338
  size: "sm",
291
- children: /* @__PURE__ */ S(h, { className: "h-3 w-3" })
339
+ "aria-label": "More actions",
340
+ children: /* @__PURE__ */ y(p, { className: "h-3 w-3" })
292
341
  })]
293
342
  })
294
343
  ]
295
344
  })
296
345
  }, e.id))
297
- }) : /* @__PURE__ */ S(T, { children: /* @__PURE__ */ S(E, {
298
- className: "pt-4",
299
- children: /* @__PURE__ */ S("div", {
300
- className: "overflow-x-auto",
301
- children: /* @__PURE__ */ C("table", {
302
- className: "w-full text-sm",
303
- children: [/* @__PURE__ */ S("thead", { children: /* @__PURE__ */ C("tr", {
304
- className: "border-b text-left text-muted-foreground",
305
- children: [
306
- /* @__PURE__ */ S("th", {
307
- className: "p-3",
308
- children: "Name"
309
- }),
310
- /* @__PURE__ */ S("th", {
311
- className: "p-3",
312
- children: "Type"
313
- }),
314
- /* @__PURE__ */ S("th", {
315
- className: "p-3",
316
- children: "Size"
317
- }),
318
- /* @__PURE__ */ S("th", {
319
- className: "p-3",
320
- children: "Modified"
321
- }),
322
- /* @__PURE__ */ S("th", {
323
- className: "p-3",
324
- children: "Uploaded By"
325
- }),
326
- /* @__PURE__ */ S("th", {
327
- className: "p-3 text-right",
328
- children: "Actions"
329
- })
330
- ]
331
- }) }), /* @__PURE__ */ S("tbody", { children: Z.map((e) => /* @__PURE__ */ C("tr", {
332
- className: "border-b hover:bg-muted/50",
333
- children: [
334
- /* @__PURE__ */ S("td", {
335
- className: "p-3",
336
- children: /* @__PURE__ */ C("div", {
337
- className: "flex items-center gap-2",
338
- children: [
339
- /* @__PURE__ */ S(A[e.type] ?? s, { className: `h-5 w-5 ${j[e.type] ?? "text-gray-400"}` }),
340
- /* @__PURE__ */ S("span", {
341
- className: "font-medium",
342
- children: e.name
343
- }),
344
- e.isStarred && /* @__PURE__ */ S(v, { className: "h-3 w-3 fill-yellow-400 text-yellow-400" }),
345
- e.sharedWith > 0 && /* @__PURE__ */ C("span", {
346
- className: "flex items-center gap-0.5 text-xs text-muted-foreground",
347
- children: [
348
- /* @__PURE__ */ S(b, { className: "h-3 w-3" }),
349
- " ",
350
- e.sharedWith
351
- ]
352
- })
353
- ]
346
+ }) : /* @__PURE__ */ y(w, {
347
+ className: "border-border-seam",
348
+ children: /* @__PURE__ */ y(T, {
349
+ className: "pt-4",
350
+ children: /* @__PURE__ */ y("div", {
351
+ className: "overflow-x-auto",
352
+ children: /* @__PURE__ */ b("table", {
353
+ className: "w-full text-sm",
354
+ children: [/* @__PURE__ */ y("thead", { children: /* @__PURE__ */ b("tr", {
355
+ className: "border-b border-border-seam text-left text-text-secondary",
356
+ children: [
357
+ /* @__PURE__ */ y("th", {
358
+ className: "p-3",
359
+ children: "Name"
360
+ }),
361
+ /* @__PURE__ */ y("th", {
362
+ className: "p-3",
363
+ children: "Type"
364
+ }),
365
+ /* @__PURE__ */ y("th", {
366
+ className: "p-3",
367
+ children: "Size"
368
+ }),
369
+ /* @__PURE__ */ y("th", {
370
+ className: "p-3",
371
+ children: "Modified"
372
+ }),
373
+ /* @__PURE__ */ y("th", {
374
+ className: "p-3",
375
+ children: "Uploaded By"
376
+ }),
377
+ /* @__PURE__ */ y("th", {
378
+ className: "p-3 text-right",
379
+ children: "Actions"
354
380
  })
355
- }),
356
- /* @__PURE__ */ S("td", {
357
- className: "p-3 uppercase text-xs",
358
- children: e.type
359
- }),
360
- /* @__PURE__ */ S("td", {
361
- className: "p-3",
362
- children: N(e.size)
363
- }),
364
- /* @__PURE__ */ S("td", {
365
- className: "p-3 text-muted-foreground",
366
- children: e.modifiedAt
367
- }),
368
- /* @__PURE__ */ S("td", {
369
- className: "p-3 text-muted-foreground",
370
- children: e.uploadedBy
371
- }),
372
- /* @__PURE__ */ S("td", {
373
- className: "p-3",
374
- children: /* @__PURE__ */ C("div", {
375
- className: "flex justify-end gap-1",
376
- children: [/* @__PURE__ */ S(w, {
377
- variant: "outline",
378
- size: "sm",
379
- children: /* @__PURE__ */ S(o, { className: "h-3 w-3" })
380
- }), /* @__PURE__ */ S(w, {
381
- variant: "outline",
382
- size: "sm",
383
- children: /* @__PURE__ */ S(_, { className: "h-3 w-3" })
384
- })]
381
+ ]
382
+ }) }), /* @__PURE__ */ y("tbody", { children: Q.map((e) => /* @__PURE__ */ b("tr", {
383
+ className: "border-b border-border-seam hover:bg-bg-sunken",
384
+ children: [
385
+ /* @__PURE__ */ y("td", {
386
+ className: "p-3",
387
+ children: /* @__PURE__ */ b("div", {
388
+ className: "flex items-center gap-2",
389
+ children: [
390
+ /* @__PURE__ */ y(M[e.type] ?? a, { className: `h-5 w-5 ${N[e.type] ?? "text-text-secondary"}` }),
391
+ /* @__PURE__ */ y("span", {
392
+ className: "font-medium",
393
+ children: e.name
394
+ }),
395
+ e.isStarred && /* @__PURE__ */ y(g, { className: "h-3 w-3 fill-status-warning-text text-status-warning-text" }),
396
+ e.sharedWith > 0 && /* @__PURE__ */ b("span", {
397
+ className: "flex items-center gap-0.5 text-xs text-text-secondary",
398
+ children: [
399
+ /* @__PURE__ */ y(v, { className: "h-3 w-3" }),
400
+ " ",
401
+ /* @__PURE__ */ y("span", {
402
+ className: "tabular-nums",
403
+ children: e.sharedWith
404
+ })
405
+ ]
406
+ })
407
+ ]
408
+ })
409
+ }),
410
+ /* @__PURE__ */ y("td", {
411
+ className: "p-3 uppercase text-xs",
412
+ children: e.type
413
+ }),
414
+ /* @__PURE__ */ y("td", {
415
+ className: "p-3 tabular-nums",
416
+ children: P(e.size)
417
+ }),
418
+ /* @__PURE__ */ y("td", {
419
+ className: "p-3 text-text-secondary",
420
+ children: e.modifiedAt
421
+ }),
422
+ /* @__PURE__ */ y("td", {
423
+ className: "p-3 text-text-secondary",
424
+ children: e.uploadedBy
425
+ }),
426
+ /* @__PURE__ */ y("td", {
427
+ className: "p-3",
428
+ children: /* @__PURE__ */ b("div", {
429
+ className: "flex justify-end gap-1",
430
+ children: [/* @__PURE__ */ y(S, {
431
+ variant: "outline",
432
+ size: "sm",
433
+ "aria-label": "Download",
434
+ children: /* @__PURE__ */ y(i, { className: "h-3 w-3" })
435
+ }), /* @__PURE__ */ y(S, {
436
+ variant: "outline",
437
+ size: "sm",
438
+ "aria-label": "Share",
439
+ children: /* @__PURE__ */ y(h, { className: "h-3 w-3" })
440
+ })]
441
+ })
385
442
  })
386
- })
387
- ]
388
- }, e.id)) })]
443
+ ]
444
+ }, e.id)) })]
445
+ })
389
446
  })
390
447
  })
391
- }) })] }),
392
- q && /* @__PURE__ */ S("div", {
393
- className: "fixed inset-0 z-50 flex items-center justify-center bg-black/50",
394
- children: /* @__PURE__ */ C(T, {
395
- className: "mx-4 w-full max-w-md",
396
- children: [/* @__PURE__ */ S(D, { children: /* @__PURE__ */ C("div", {
448
+ })] }),
449
+ J && /* @__PURE__ */ y("div", {
450
+ className: "fixed inset-0 z-50 flex items-center justify-center bg-bg-overlay",
451
+ children: /* @__PURE__ */ b(O, {
452
+ treatment: "glass",
453
+ className: "mx-4 w-full max-w-md border-border-seam",
454
+ children: [/* @__PURE__ */ y(E, { children: /* @__PURE__ */ b("div", {
397
455
  className: "flex items-center justify-between",
398
- children: [/* @__PURE__ */ S(O, { children: "Upload Files" }), /* @__PURE__ */ S(w, {
456
+ children: [/* @__PURE__ */ y(D, { children: "Upload Files" }), /* @__PURE__ */ y(S, {
399
457
  variant: "outline",
400
458
  size: "sm",
401
- onClick: () => J(!1),
459
+ onClick: () => Y(!1),
402
460
  children: "Close"
403
461
  })]
404
- }) }), /* @__PURE__ */ C(E, {
462
+ }) }), /* @__PURE__ */ b(T, {
405
463
  className: "space-y-4",
406
464
  children: [
407
- /* @__PURE__ */ C("div", {
408
- className: "flex flex-col items-center justify-center rounded-lg border-2 border-dashed p-8",
465
+ /* @__PURE__ */ b("div", {
466
+ className: "flex flex-col items-center justify-center rounded-lg border-2 border-dashed border-border-seam p-8",
409
467
  children: [
410
- /* @__PURE__ */ S(y, { className: "h-10 w-10 text-muted-foreground" }),
411
- /* @__PURE__ */ S("p", {
468
+ /* @__PURE__ */ y(_, { className: "h-10 w-10 text-text-secondary" }),
469
+ /* @__PURE__ */ y("p", {
412
470
  className: "mt-2 text-sm font-medium",
413
471
  children: "Drag & drop files here"
414
472
  }),
415
- /* @__PURE__ */ S("p", {
416
- className: "text-xs text-muted-foreground",
473
+ /* @__PURE__ */ y("p", {
474
+ className: "text-xs text-text-secondary",
417
475
  children: "or click to browse"
418
476
  })
419
477
  ]
420
478
  }),
421
- /* @__PURE__ */ C("div", {
479
+ /* @__PURE__ */ b("div", {
422
480
  className: "space-y-2",
423
- children: [/* @__PURE__ */ S("label", {
481
+ children: [/* @__PURE__ */ y("label", {
424
482
  className: "text-sm font-medium",
483
+ htmlFor: "upload-folder",
425
484
  children: "Destination Folder"
426
- }), /* @__PURE__ */ C("select", {
427
- className: "w-full rounded border bg-background px-3 py-2 text-sm",
428
- children: [/* @__PURE__ */ S("option", {
485
+ }), /* @__PURE__ */ b("select", {
486
+ id: "upload-folder",
487
+ className: "w-full rounded border border-border-seam bg-bg-surface px-3 py-2 text-sm focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-border-focus",
488
+ children: [/* @__PURE__ */ y("option", {
429
489
  value: "",
430
490
  children: "Root"
431
- }), P.map((e) => /* @__PURE__ */ S("option", {
491
+ }), F.map((e) => /* @__PURE__ */ y("option", {
432
492
  value: e.id,
433
493
  children: e.name
434
494
  }, e.id))]
435
495
  })]
436
496
  }),
437
- /* @__PURE__ */ C("div", {
497
+ /* @__PURE__ */ b("div", {
438
498
  className: "flex gap-2",
439
- children: [/* @__PURE__ */ S(w, {
499
+ children: [/* @__PURE__ */ y(S, {
440
500
  variant: "outline",
441
501
  className: "flex-1",
442
- onClick: () => J(!1),
502
+ onClick: () => Y(!1),
443
503
  children: "Cancel"
444
- }), /* @__PURE__ */ S(w, {
504
+ }), /* @__PURE__ */ y(S, {
445
505
  className: "flex-1",
446
506
  children: "Upload"
447
507
  })]
@@ -450,34 +510,39 @@ function P() {
450
510
  })]
451
511
  })
452
512
  }),
453
- Y && /* @__PURE__ */ S("div", {
454
- className: "fixed inset-0 z-50 flex items-center justify-center bg-black/50",
455
- children: /* @__PURE__ */ C(T, {
456
- className: "mx-4 w-full max-w-md",
457
- children: [/* @__PURE__ */ S(D, { children: /* @__PURE__ */ C("div", {
513
+ X && /* @__PURE__ */ y("div", {
514
+ className: "fixed inset-0 z-50 flex items-center justify-center bg-bg-overlay",
515
+ children: /* @__PURE__ */ b(O, {
516
+ treatment: "glass",
517
+ className: "mx-4 w-full max-w-md border-border-seam",
518
+ children: [/* @__PURE__ */ y(E, { children: /* @__PURE__ */ b("div", {
458
519
  className: "flex items-center justify-between",
459
- children: [/* @__PURE__ */ S(O, { children: "Create Folder" }), /* @__PURE__ */ S(w, {
520
+ children: [/* @__PURE__ */ y(D, { children: "Create Folder" }), /* @__PURE__ */ y(S, {
460
521
  variant: "outline",
461
522
  size: "sm",
462
- onClick: () => X(!1),
523
+ onClick: () => Z(!1),
463
524
  children: "Close"
464
525
  })]
465
- }) }), /* @__PURE__ */ C(E, {
526
+ }) }), /* @__PURE__ */ b(T, {
466
527
  className: "space-y-4",
467
- children: [/* @__PURE__ */ C("div", {
528
+ children: [/* @__PURE__ */ b("div", {
468
529
  className: "space-y-2",
469
- children: [/* @__PURE__ */ S("label", {
530
+ children: [/* @__PURE__ */ y("label", {
470
531
  className: "text-sm font-medium",
532
+ htmlFor: "folder-name",
471
533
  children: "Folder Name"
472
- }), /* @__PURE__ */ S(k, { placeholder: "Enter folder name..." })]
473
- }), /* @__PURE__ */ C("div", {
534
+ }), /* @__PURE__ */ y(j, {
535
+ id: "folder-name",
536
+ placeholder: "Enter folder name..."
537
+ })]
538
+ }), /* @__PURE__ */ b("div", {
474
539
  className: "flex gap-2",
475
- children: [/* @__PURE__ */ S(w, {
540
+ children: [/* @__PURE__ */ y(S, {
476
541
  variant: "outline",
477
542
  className: "flex-1",
478
- onClick: () => X(!1),
543
+ onClick: () => Z(!1),
479
544
  children: "Cancel"
480
- }), /* @__PURE__ */ S(w, {
545
+ }), /* @__PURE__ */ y(S, {
481
546
  className: "flex-1",
482
547
  children: "Create"
483
548
  })]
@@ -489,6 +554,6 @@ function P() {
489
554
  });
490
555
  }
491
556
  //#endregion
492
- export { P as DocumentsPage };
557
+ export { F as DocumentsPage };
493
558
 
494
559
  //# sourceMappingURL=DocumentsPage.js.map