acemyjob-ui 0.16.0 → 0.17.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.
@@ -1,10 +1,8 @@
1
- import * as _ from "react";
2
- import z, { useState as $, useCallback as O, createContext as Ce, useEffect as J, useContext as ke, useRef as Ve } from "react";
3
- import { Dialog as $e, DialogBackdrop as Te, DialogPanel as Ee, TransitionChild as Re } from "@headlessui/react";
4
- import { XMarkIcon as Ae, Bars3Icon as _e, ChevronDownIcon as re, InformationCircleIcon as ve, ExclamationCircleIcon as ge, XCircleIcon as be, CheckCircleIcon as pe } from "@heroicons/react/24/outline";
5
- import { useSortable as Be } from "@dnd-kit/sortable";
6
- import { CSS as Oe } from "@dnd-kit/utilities";
7
- const fr = {
1
+ import * as W from "react";
2
+ import B, { useState as $, useCallback as R, createContext as je, useEffect as K, useContext as we } from "react";
3
+ import { ChevronDownIcon as Q, InformationCircleIcon as me, ExclamationCircleIcon as xe, XCircleIcon as fe, CheckCircleIcon as he, XMarkIcon as ye, Bars3Icon as Ne } from "@heroicons/react/24/outline";
4
+ import { Dialog as Ce, DialogBackdrop as ke, DialogPanel as Ve, TransitionChild as $e } from "@headlessui/react";
5
+ const ar = {
8
6
  required: (r = "This field is required") => ({
9
7
  validate: (s) => typeof s == "string" ? s.trim().length > 0 : Array.isArray(s) ? s.length > 0 : s != null,
10
8
  message: r
@@ -59,124 +57,124 @@ const fr = {
59
57
  message: s
60
58
  })
61
59
  };
62
- function Se(r, s) {
60
+ function Te(r, s) {
63
61
  for (const t of s)
64
62
  if (!t.validate(r))
65
63
  return t.message;
66
64
  return null;
67
65
  }
68
- function Q(r, s) {
66
+ function Z(r, s) {
69
67
  const t = {};
70
68
  for (const [a, l] of Object.entries(s)) {
71
- const n = r[a], i = Se(n, l);
69
+ const n = r[a], i = Te(n, l);
72
70
  t[a] = i;
73
71
  }
74
72
  return t;
75
73
  }
76
- function De(r) {
74
+ function Ee(r) {
77
75
  return Object.values(r).some((s) => s !== null);
78
76
  }
79
- function hr(r) {
77
+ function tr(r) {
80
78
  for (const s of Object.values(r))
81
79
  if (s !== null)
82
80
  return s;
83
81
  return null;
84
82
  }
85
- function vr(r, s) {
83
+ function nr(r, s) {
86
84
  return {
87
85
  ...r,
88
86
  [s]: null
89
87
  };
90
88
  }
91
- function gr(r) {
89
+ function lr(r) {
92
90
  const s = {};
93
91
  for (const t of Object.keys(r))
94
92
  s[t] = null;
95
93
  return s;
96
94
  }
97
- function br({
95
+ function or({
98
96
  initialValues: r,
99
97
  validationRules: s = {},
100
98
  onSubmit: t
101
99
  }) {
102
- const [a, l] = $(r), [n, i] = $({}), [c, u] = $({}), [x, d] = $(!1), m = JSON.stringify(a) !== JSON.stringify(r), f = O(
100
+ const [a, l] = $(r), [n, i] = $({}), [c, u] = $({}), [f, d] = $(!1), m = JSON.stringify(a) !== JSON.stringify(r), h = R(
103
101
  (p) => {
104
- const { name: b, value: w, type: A } = p.target;
105
- let L = w;
106
- if (A === "checkbox" ? L = p.target.checked : A === "number" && (L = w ? Number(w) : ""), l((M) => ({
107
- ...M,
108
- [b]: L
109
- })), s[b]) {
110
- const M = Q({ [b]: L }, { [b]: s[b] });
111
- i((W) => ({
112
- ...W,
113
- [b]: M[b]
102
+ const { name: v, value: w, type: V } = p.target;
103
+ let M = w;
104
+ if (V === "checkbox" ? M = p.target.checked : V === "number" && (M = w ? Number(w) : ""), l((S) => ({
105
+ ...S,
106
+ [v]: M
107
+ })), s[v]) {
108
+ const S = Z({ [v]: M }, { [v]: s[v] });
109
+ i((Y) => ({
110
+ ...Y,
111
+ [v]: S[v]
114
112
  }));
115
113
  }
116
114
  },
117
115
  [s]
118
- ), v = O(
116
+ ), g = R(
119
117
  (p) => {
120
- const { name: b } = p.target;
118
+ const { name: v } = p.target;
121
119
  u((w) => ({
122
120
  ...w,
123
- [b]: !0
121
+ [v]: !0
124
122
  }));
125
123
  },
126
124
  []
127
- ), g = O((p, b) => {
125
+ ), b = R((p, v) => {
128
126
  if (l((w) => ({
129
127
  ...w,
130
- [p]: b
128
+ [p]: v
131
129
  })), s[p]) {
132
- const w = Q({ [p]: b }, { [p]: s[p] });
133
- i((A) => ({
134
- ...A,
130
+ const w = Z({ [p]: v }, { [p]: s[p] });
131
+ i((V) => ({
132
+ ...V,
135
133
  [p]: w[p]
136
134
  }));
137
135
  }
138
- }, [s]), y = O((p, b) => {
136
+ }, [s]), C = R((p, v) => {
139
137
  i((w) => ({
140
138
  ...w,
141
- [p]: b
139
+ [p]: v
142
140
  }));
143
- }, []), V = O(
141
+ }, []), _ = R(
144
142
  async (p) => {
145
143
  p.preventDefault();
146
- const b = Q(a, s);
147
- i(b);
144
+ const v = Z(a, s);
145
+ i(v);
148
146
  const w = {};
149
- for (const A of Object.keys(a))
150
- w[A] = !0;
151
- if (u(w), !De(b) && t) {
147
+ for (const V of Object.keys(a))
148
+ w[V] = !0;
149
+ if (u(w), !Ee(v) && t) {
152
150
  d(!0);
153
151
  try {
154
152
  await t(a);
155
- } catch (A) {
156
- console.error("Form submission error:", A);
153
+ } catch (V) {
154
+ console.error("Form submission error:", V);
157
155
  } finally {
158
156
  d(!1);
159
157
  }
160
158
  }
161
159
  },
162
160
  [a, s, t]
163
- ), T = O(() => {
161
+ ), A = R(() => {
164
162
  l(r), i({}), u({}), d(!1);
165
- }, [r]), R = O(
163
+ }, [r]), T = R(
166
164
  (p) => ({
167
165
  name: p,
168
166
  value: a[p] || "",
169
- onChange: f,
170
- onBlur: v
167
+ onChange: h,
168
+ onBlur: g
171
169
  }),
172
- [a, f, v]
173
- ), N = O(
170
+ [a, h, g]
171
+ ), P = R(
174
172
  (p) => n[p] || null,
175
173
  [n]
176
- ), D = O(
174
+ ), z = R(
177
175
  (p) => c[p] || !1,
178
176
  [c]
179
- ), I = O(
177
+ ), D = R(
180
178
  (p) => a[p] !== r[p],
181
179
  [a, r]
182
180
  );
@@ -184,21 +182,21 @@ function br({
184
182
  values: a,
185
183
  errors: n,
186
184
  touched: c,
187
- isSubmitting: x,
185
+ isSubmitting: f,
188
186
  isDirty: m,
189
- handleChange: f,
190
- handleBlur: v,
191
- setFieldValue: g,
192
- setFieldError: y,
193
- handleSubmit: V,
194
- resetForm: T,
195
- getFieldProps: R,
196
- getFieldError: N,
197
- isFieldTouched: D,
198
- isFieldDirty: I
187
+ handleChange: h,
188
+ handleBlur: g,
189
+ setFieldValue: b,
190
+ setFieldError: C,
191
+ handleSubmit: _,
192
+ resetForm: A,
193
+ getFieldProps: T,
194
+ getFieldError: P,
195
+ isFieldTouched: z,
196
+ isFieldDirty: D
199
197
  };
200
198
  }
201
- var H = { exports: {} }, U = {};
199
+ var U = { exports: {} }, L = {};
202
200
  /**
203
201
  * @license React
204
202
  * react-jsx-runtime.production.js
@@ -208,10 +206,10 @@ var H = { exports: {} }, U = {};
208
206
  * This source code is licensed under the MIT license found in the
209
207
  * LICENSE file in the root directory of this source tree.
210
208
  */
211
- var oe;
212
- function Pe() {
213
- if (oe) return U;
214
- oe = 1;
209
+ var ne;
210
+ function Re() {
211
+ if (ne) return L;
212
+ ne = 1;
215
213
  var r = Symbol.for("react.transitional.element"), s = Symbol.for("react.fragment");
216
214
  function t(a, l, n) {
217
215
  var i = null;
@@ -228,9 +226,9 @@ function Pe() {
228
226
  props: n
229
227
  };
230
228
  }
231
- return U.Fragment = s, U.jsx = t, U.jsxs = t, U;
229
+ return L.Fragment = s, L.jsx = t, L.jsxs = t, L;
232
230
  }
233
- var Y = {};
231
+ var I = {};
234
232
  /**
235
233
  * @license React
236
234
  * react-jsx-runtime.development.js
@@ -240,47 +238,47 @@ var Y = {};
240
238
  * This source code is licensed under the MIT license found in the
241
239
  * LICENSE file in the root directory of this source tree.
242
240
  */
243
- var ce;
244
- function ze() {
245
- return ce || (ce = 1, process.env.NODE_ENV !== "production" && function() {
241
+ var le;
242
+ function Ae() {
243
+ return le || (le = 1, process.env.NODE_ENV !== "production" && function() {
246
244
  function r(o) {
247
245
  if (o == null) return null;
248
246
  if (typeof o == "function")
249
- return o.$$typeof === L ? null : o.displayName || o.name || null;
247
+ return o.$$typeof === M ? null : o.displayName || o.name || null;
250
248
  if (typeof o == "string") return o;
251
249
  switch (o) {
252
- case y:
250
+ case C:
253
251
  return "Fragment";
254
- case T:
252
+ case A:
255
253
  return "Profiler";
256
- case V:
254
+ case _:
257
255
  return "StrictMode";
258
- case I:
256
+ case D:
259
257
  return "Suspense";
260
258
  case p:
261
259
  return "SuspenseList";
262
- case A:
260
+ case V:
263
261
  return "Activity";
264
262
  }
265
263
  if (typeof o == "object")
266
264
  switch (typeof o.tag == "number" && console.error(
267
265
  "Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."
268
266
  ), o.$$typeof) {
269
- case g:
267
+ case b:
270
268
  return "Portal";
271
- case N:
269
+ case P:
272
270
  return (o.displayName || "Context") + ".Provider";
273
- case R:
271
+ case T:
274
272
  return (o._context.displayName || "Context") + ".Consumer";
275
- case D:
276
- var h = o.render;
277
- return o = o.displayName, o || (o = h.displayName || h.name || "", o = o !== "" ? "ForwardRef(" + o + ")" : "ForwardRef"), o;
278
- case b:
279
- return h = o.displayName || null, h !== null ? h : r(o.type) || "Memo";
273
+ case z:
274
+ var x = o.render;
275
+ return o = o.displayName, o || (o = x.displayName || x.name || "", o = o !== "" ? "ForwardRef(" + o + ")" : "ForwardRef"), o;
276
+ case v:
277
+ return x = o.displayName || null, x !== null ? x : r(o.type) || "Memo";
280
278
  case w:
281
- h = o._payload, o = o._init;
279
+ x = o._payload, o = o._init;
282
280
  try {
283
- return r(o(h));
281
+ return r(o(x));
284
282
  } catch {
285
283
  }
286
284
  }
@@ -292,50 +290,50 @@ function ze() {
292
290
  function t(o) {
293
291
  try {
294
292
  s(o);
295
- var h = !1;
293
+ var x = !1;
296
294
  } catch {
297
- h = !0;
295
+ x = !0;
298
296
  }
299
- if (h) {
300
- h = console;
301
- var j = h.error, C = typeof Symbol == "function" && Symbol.toStringTag && o[Symbol.toStringTag] || o.constructor.name || "Object";
297
+ if (x) {
298
+ x = console;
299
+ var j = x.error, y = typeof Symbol == "function" && Symbol.toStringTag && o[Symbol.toStringTag] || o.constructor.name || "Object";
302
300
  return j.call(
303
- h,
301
+ x,
304
302
  "The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",
305
- C
303
+ y
306
304
  ), s(o);
307
305
  }
308
306
  }
309
307
  function a(o) {
310
- if (o === y) return "<>";
308
+ if (o === C) return "<>";
311
309
  if (typeof o == "object" && o !== null && o.$$typeof === w)
312
310
  return "<...>";
313
311
  try {
314
- var h = r(o);
315
- return h ? "<" + h + ">" : "<...>";
312
+ var x = r(o);
313
+ return x ? "<" + x + ">" : "<...>";
316
314
  } catch {
317
315
  return "<...>";
318
316
  }
319
317
  }
320
318
  function l() {
321
- var o = M.A;
319
+ var o = S.A;
322
320
  return o === null ? null : o.getOwner();
323
321
  }
324
322
  function n() {
325
323
  return Error("react-stack-top-frame");
326
324
  }
327
325
  function i(o) {
328
- if (W.call(o, "key")) {
329
- var h = Object.getOwnPropertyDescriptor(o, "key").get;
330
- if (h && h.isReactWarning) return !1;
326
+ if (Y.call(o, "key")) {
327
+ var x = Object.getOwnPropertyDescriptor(o, "key").get;
328
+ if (x && x.isReactWarning) return !1;
331
329
  }
332
330
  return o.key !== void 0;
333
331
  }
334
- function c(o, h) {
332
+ function c(o, x) {
335
333
  function j() {
336
- se || (se = !0, console.error(
334
+ ee || (ee = !0, console.error(
337
335
  "%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",
338
- h
336
+ x
339
337
  ));
340
338
  }
341
339
  j.isReactWarning = !0, Object.defineProperty(o, "key", {
@@ -345,17 +343,17 @@ function ze() {
345
343
  }
346
344
  function u() {
347
345
  var o = r(this.type);
348
- return ae[o] || (ae[o] = !0, console.error(
346
+ return re[o] || (re[o] = !0, console.error(
349
347
  "Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release."
350
348
  )), o = this.props.ref, o !== void 0 ? o : null;
351
349
  }
352
- function x(o, h, j, C, P, B, q, Z) {
353
- return j = B.ref, o = {
354
- $$typeof: v,
350
+ function f(o, x, j, y, O, E, J, q) {
351
+ return j = E.ref, o = {
352
+ $$typeof: g,
355
353
  type: o,
356
- key: h,
357
- props: B,
358
- _owner: P
354
+ key: x,
355
+ props: E,
356
+ _owner: O
359
357
  }, (j !== void 0 ? j : null) !== null ? Object.defineProperty(o, "ref", {
360
358
  enumerable: !1,
361
359
  get: u
@@ -373,288 +371,118 @@ function ze() {
373
371
  configurable: !1,
374
372
  enumerable: !1,
375
373
  writable: !0,
376
- value: q
374
+ value: J
377
375
  }), Object.defineProperty(o, "_debugTask", {
378
376
  configurable: !1,
379
377
  enumerable: !1,
380
378
  writable: !0,
381
- value: Z
379
+ value: q
382
380
  }), Object.freeze && (Object.freeze(o.props), Object.freeze(o)), o;
383
381
  }
384
- function d(o, h, j, C, P, B, q, Z) {
385
- var k = h.children;
386
- if (k !== void 0)
387
- if (C)
388
- if (Ne(k)) {
389
- for (C = 0; C < k.length; C++)
390
- m(k[C]);
391
- Object.freeze && Object.freeze(k);
382
+ function d(o, x, j, y, O, E, J, q) {
383
+ var N = x.children;
384
+ if (N !== void 0)
385
+ if (y)
386
+ if (be(N)) {
387
+ for (y = 0; y < N.length; y++)
388
+ m(N[y]);
389
+ Object.freeze && Object.freeze(N);
392
390
  } else
393
391
  console.error(
394
392
  "React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead."
395
393
  );
396
- else m(k);
397
- if (W.call(h, "key")) {
398
- k = r(o);
399
- var F = Object.keys(h).filter(function(ye) {
400
- return ye !== "key";
394
+ else m(N);
395
+ if (Y.call(x, "key")) {
396
+ N = r(o);
397
+ var F = Object.keys(x).filter(function(pe) {
398
+ return pe !== "key";
401
399
  });
402
- C = 0 < F.length ? "{key: someKey, " + F.join(": ..., ") + ": ...}" : "{key: someKey}", le[k + C] || (F = 0 < F.length ? "{" + F.join(": ..., ") + ": ...}" : "{}", console.error(
400
+ y = 0 < F.length ? "{key: someKey, " + F.join(": ..., ") + ": ...}" : "{key: someKey}", te[N + y] || (F = 0 < F.length ? "{" + F.join(": ..., ") + ": ...}" : "{}", console.error(
403
401
  `A props object containing a "key" prop is being spread into JSX:
404
402
  let props = %s;
405
403
  <%s {...props} />
406
404
  React keys must be passed directly to JSX without using spread:
407
405
  let props = %s;
408
406
  <%s key={someKey} {...props} />`,
409
- C,
410
- k,
407
+ y,
408
+ N,
411
409
  F,
412
- k
413
- ), le[k + C] = !0);
410
+ N
411
+ ), te[N + y] = !0);
414
412
  }
415
- if (k = null, j !== void 0 && (t(j), k = "" + j), i(h) && (t(h.key), k = "" + h.key), "key" in h) {
413
+ if (N = null, j !== void 0 && (t(j), N = "" + j), i(x) && (t(x.key), N = "" + x.key), "key" in x) {
416
414
  j = {};
417
- for (var K in h)
418
- K !== "key" && (j[K] = h[K]);
419
- } else j = h;
420
- return k && c(
415
+ for (var X in x)
416
+ X !== "key" && (j[X] = x[X]);
417
+ } else j = x;
418
+ return N && c(
421
419
  j,
422
420
  typeof o == "function" ? o.displayName || o.name || "Unknown" : o
423
- ), x(
421
+ ), f(
424
422
  o,
425
- k,
426
- B,
427
- P,
423
+ N,
424
+ E,
425
+ O,
428
426
  l(),
429
427
  j,
430
- q,
431
- Z
428
+ J,
429
+ q
432
430
  );
433
431
  }
434
432
  function m(o) {
435
- typeof o == "object" && o !== null && o.$$typeof === v && o._store && (o._store.validated = 1);
433
+ typeof o == "object" && o !== null && o.$$typeof === g && o._store && (o._store.validated = 1);
436
434
  }
437
- var f = z, v = Symbol.for("react.transitional.element"), g = Symbol.for("react.portal"), y = Symbol.for("react.fragment"), V = Symbol.for("react.strict_mode"), T = Symbol.for("react.profiler"), R = Symbol.for("react.consumer"), N = Symbol.for("react.context"), D = Symbol.for("react.forward_ref"), I = Symbol.for("react.suspense"), p = Symbol.for("react.suspense_list"), b = Symbol.for("react.memo"), w = Symbol.for("react.lazy"), A = Symbol.for("react.activity"), L = Symbol.for("react.client.reference"), M = f.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, W = Object.prototype.hasOwnProperty, Ne = Array.isArray, X = console.createTask ? console.createTask : function() {
435
+ var h = B, g = Symbol.for("react.transitional.element"), b = Symbol.for("react.portal"), C = Symbol.for("react.fragment"), _ = Symbol.for("react.strict_mode"), A = Symbol.for("react.profiler"), T = Symbol.for("react.consumer"), P = Symbol.for("react.context"), z = Symbol.for("react.forward_ref"), D = Symbol.for("react.suspense"), p = Symbol.for("react.suspense_list"), v = Symbol.for("react.memo"), w = Symbol.for("react.lazy"), V = Symbol.for("react.activity"), M = Symbol.for("react.client.reference"), S = h.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, Y = Object.prototype.hasOwnProperty, be = Array.isArray, G = console.createTask ? console.createTask : function() {
438
436
  return null;
439
437
  };
440
- f = {
438
+ h = {
441
439
  "react-stack-bottom-frame": function(o) {
442
440
  return o();
443
441
  }
444
442
  };
445
- var se, ae = {}, te = f["react-stack-bottom-frame"].bind(
446
- f,
443
+ var ee, re = {}, se = h["react-stack-bottom-frame"].bind(
444
+ h,
447
445
  n
448
- )(), ne = X(a(n)), le = {};
449
- Y.Fragment = y, Y.jsx = function(o, h, j, C, P) {
450
- var B = 1e4 > M.recentlyCreatedOwnerStacks++;
446
+ )(), ae = G(a(n)), te = {};
447
+ I.Fragment = C, I.jsx = function(o, x, j, y, O) {
448
+ var E = 1e4 > S.recentlyCreatedOwnerStacks++;
451
449
  return d(
452
450
  o,
453
- h,
451
+ x,
454
452
  j,
455
453
  !1,
456
- C,
457
- P,
458
- B ? Error("react-stack-top-frame") : te,
459
- B ? X(a(o)) : ne
454
+ y,
455
+ O,
456
+ E ? Error("react-stack-top-frame") : se,
457
+ E ? G(a(o)) : ae
460
458
  );
461
- }, Y.jsxs = function(o, h, j, C, P) {
462
- var B = 1e4 > M.recentlyCreatedOwnerStacks++;
459
+ }, I.jsxs = function(o, x, j, y, O) {
460
+ var E = 1e4 > S.recentlyCreatedOwnerStacks++;
463
461
  return d(
464
462
  o,
465
- h,
463
+ x,
466
464
  j,
467
465
  !0,
468
- C,
469
- P,
470
- B ? Error("react-stack-top-frame") : te,
471
- B ? X(a(o)) : ne
466
+ y,
467
+ O,
468
+ E ? Error("react-stack-top-frame") : se,
469
+ E ? G(a(o)) : ae
472
470
  );
473
471
  };
474
- }()), Y;
475
- }
476
- var ie;
477
- function Me() {
478
- return ie || (ie = 1, process.env.NODE_ENV === "production" ? H.exports = Pe() : H.exports = ze()), H.exports;
479
- }
480
- var e = Me();
481
- const Ie = {
482
- bg: "bg-indigo-600",
483
- activeBg: "bg-indigo-700",
484
- text: "text-indigo-200",
485
- activeText: "text-white",
486
- hoverBg: "hover:bg-indigo-700",
487
- hoverText: "hover:text-white"
488
- };
489
- function E(...r) {
490
- return r.filter(Boolean).join(" ");
491
- }
492
- function de({ item: r, colorScheme: s }) {
493
- const [t, a] = $(r.current || r.children?.some((n) => n.current)), l = r.children && r.children.length > 0;
494
- return /* @__PURE__ */ e.jsxs("li", { children: [
495
- /* @__PURE__ */ e.jsx("div", { children: /* @__PURE__ */ e.jsxs(
496
- "a",
497
- {
498
- href: l ? void 0 : r.href,
499
- onClick: (n) => {
500
- l && (n.preventDefault(), a(!t));
501
- },
502
- className: E(
503
- r.current ? `${s.activeBg} ${s.activeText}` : `${s.text} ${s.hoverBg} ${s.hoverText}`,
504
- "group flex items-center justify-between gap-x-3 rounded-md p-2 text-sm/6 font-semibold",
505
- l ? "cursor-pointer" : ""
506
- ),
507
- children: [
508
- /* @__PURE__ */ e.jsxs("div", { className: "flex items-center gap-x-3", children: [
509
- /* @__PURE__ */ e.jsx(
510
- r.icon,
511
- {
512
- "aria-hidden": "true",
513
- className: E(
514
- r.current ? s.activeText : `${s.text} group-${s.hoverText}`,
515
- "size-6 shrink-0"
516
- )
517
- }
518
- ),
519
- r.name
520
- ] }),
521
- l && /* @__PURE__ */ e.jsx(
522
- re,
523
- {
524
- className: E(
525
- "size-5 shrink-0 transition-transform",
526
- t ? "rotate-180" : "",
527
- r.current ? s.activeText : s.text
528
- )
529
- }
530
- )
531
- ]
532
- }
533
- ) }),
534
- l && t && /* @__PURE__ */ e.jsx("ul", { className: "mt-1 ml-9 space-y-1", children: r.children.map((n) => /* @__PURE__ */ e.jsx("li", { children: /* @__PURE__ */ e.jsxs(
535
- "a",
536
- {
537
- href: n.href,
538
- className: E(
539
- n.current ? `${s.activeBg} ${s.activeText}` : `${s.text} ${s.hoverBg} ${s.hoverText}`,
540
- "group flex gap-x-3 rounded-md p-2 text-sm/6 font-semibold"
541
- ),
542
- children: [
543
- /* @__PURE__ */ e.jsx(
544
- n.icon,
545
- {
546
- "aria-hidden": "true",
547
- className: E(
548
- n.current ? s.activeText : `${s.text} group-${s.hoverText}`,
549
- "size-5 shrink-0"
550
- )
551
- }
552
- ),
553
- n.name
554
- ]
555
- }
556
- ) }, n.name)) })
557
- ] });
472
+ }()), I;
558
473
  }
559
- function pr({ company: r, profile: s, navigation: t, colorScheme: a = Ie }) {
560
- const [l, n] = $(!1);
561
- return /* @__PURE__ */ e.jsx(e.Fragment, { children: /* @__PURE__ */ e.jsxs("div", { children: [
562
- /* @__PURE__ */ e.jsxs($e, { open: l, onClose: n, className: "relative z-50 lg:hidden", children: [
563
- /* @__PURE__ */ e.jsx(
564
- Te,
565
- {
566
- transition: !0,
567
- className: "fixed inset-0 bg-gray-900/80 transition-opacity duration-300 ease-linear data-closed:opacity-0"
568
- }
569
- ),
570
- /* @__PURE__ */ e.jsx("div", { className: "fixed inset-0 flex", children: /* @__PURE__ */ e.jsxs(
571
- Ee,
572
- {
573
- transition: !0,
574
- className: "relative mr-16 flex w-full max-w-xs flex-1 transform transition duration-300 ease-in-out data-closed:-translate-x-full",
575
- children: [
576
- /* @__PURE__ */ e.jsx(Re, { children: /* @__PURE__ */ e.jsx("div", { className: "absolute top-0 left-full flex w-16 justify-center pt-5 duration-300 ease-in-out data-closed:opacity-0", children: /* @__PURE__ */ e.jsxs("button", { type: "button", onClick: () => n(!1), className: "-m-2.5 p-2.5", children: [
577
- /* @__PURE__ */ e.jsx("span", { className: "sr-only", children: "Close sidebar" }),
578
- /* @__PURE__ */ e.jsx(Ae, { "aria-hidden": "true", className: "size-6 text-white" })
579
- ] }) }) }),
580
- /* @__PURE__ */ e.jsxs("div", { className: E("flex grow flex-col gap-y-5 overflow-y-auto px-6 pb-2", a.bg), children: [
581
- /* @__PURE__ */ e.jsx("div", { className: "flex h-16 shrink-0 items-center", children: /* @__PURE__ */ e.jsx(
582
- "img",
583
- {
584
- alt: r.name,
585
- src: r.logo,
586
- className: "h-8 w-auto"
587
- }
588
- ) }),
589
- /* @__PURE__ */ e.jsx("nav", { className: "flex flex-1 flex-col", children: /* @__PURE__ */ e.jsx("ul", { role: "list", className: "flex flex-1 flex-col gap-y-7", children: /* @__PURE__ */ e.jsx("li", { children: /* @__PURE__ */ e.jsx("ul", { role: "list", className: "-mx-2 space-y-1", children: t.map((i) => /* @__PURE__ */ e.jsx(de, { item: i, colorScheme: a }, i.name)) }) }) }) })
590
- ] })
591
- ]
592
- }
593
- ) })
594
- ] }),
595
- /* @__PURE__ */ e.jsx("div", { className: "hidden lg:fixed lg:inset-y-0 lg:z-50 lg:flex lg:w-72 lg:flex-col", children: /* @__PURE__ */ e.jsxs("div", { className: E("flex grow flex-col gap-y-5 overflow-y-auto px-6", a.bg), children: [
596
- /* @__PURE__ */ e.jsx("div", { className: "flex h-16 shrink-0 items-center", children: /* @__PURE__ */ e.jsx(
597
- "img",
598
- {
599
- alt: r.name,
600
- src: r.logo,
601
- className: "h-8 w-auto"
602
- }
603
- ) }),
604
- /* @__PURE__ */ e.jsx("nav", { className: "flex flex-1 flex-col", children: /* @__PURE__ */ e.jsxs("ul", { role: "list", className: "flex flex-1 flex-col gap-y-7", children: [
605
- /* @__PURE__ */ e.jsx("li", { children: /* @__PURE__ */ e.jsx("ul", { role: "list", className: "-mx-2 space-y-1", children: t.map((i) => /* @__PURE__ */ e.jsx(de, { item: i, colorScheme: a }, i.name)) }) }),
606
- /* @__PURE__ */ e.jsx("li", { className: "-mx-6 mt-auto", children: /* @__PURE__ */ e.jsxs(
607
- "a",
608
- {
609
- href: "#",
610
- className: E(
611
- "flex items-center gap-x-4 px-6 py-3 text-sm/6 font-semibold",
612
- a.activeText,
613
- a.hoverBg
614
- ),
615
- children: [
616
- /* @__PURE__ */ e.jsx(
617
- "img",
618
- {
619
- alt: s.name,
620
- src: s.image,
621
- className: E("size-8 rounded-full", a.activeBg)
622
- }
623
- ),
624
- /* @__PURE__ */ e.jsx("span", { className: "sr-only", children: "Your profile" }),
625
- /* @__PURE__ */ e.jsx("span", { "aria-hidden": "true", children: s.name })
626
- ]
627
- }
628
- ) })
629
- ] }) })
630
- ] }) }),
631
- /* @__PURE__ */ e.jsxs("div", { className: E("sticky top-0 z-40 flex items-center gap-x-6 px-4 py-4 shadow-xs sm:px-6 lg:hidden", a.bg), children: [
632
- /* @__PURE__ */ e.jsxs("button", { type: "button", onClick: () => n(!0), className: E("-m-2.5 p-2.5 lg:hidden", a.text), children: [
633
- /* @__PURE__ */ e.jsx("span", { className: "sr-only", children: "Open sidebar" }),
634
- /* @__PURE__ */ e.jsx(_e, { "aria-hidden": "true", className: "size-6" })
635
- ] }),
636
- /* @__PURE__ */ e.jsx("div", { className: E("flex-1 text-sm/6 font-semibold", a.activeText), children: "Dashboard" }),
637
- /* @__PURE__ */ e.jsxs("a", { href: "#", children: [
638
- /* @__PURE__ */ e.jsx("span", { className: "sr-only", children: "Your profile" }),
639
- /* @__PURE__ */ e.jsx(
640
- "img",
641
- {
642
- alt: s.name,
643
- src: s.image,
644
- className: E("size-8 rounded-full", a.activeBg)
645
- }
646
- )
647
- ] })
648
- ] })
649
- ] }) });
474
+ var oe;
475
+ function _e() {
476
+ return oe || (oe = 1, process.env.NODE_ENV === "production" ? U.exports = Re() : U.exports = Ae()), U.exports;
650
477
  }
651
- const je = (r) => r.replace("--color-", "bg-"), Le = ({ name: r, cssVar: s, value: t }) => {
478
+ var e = _e();
479
+ const ve = (r) => r.replace("--color-", "bg-"), Oe = ({ name: r, cssVar: s, value: t }) => {
652
480
  const a = `rgb(${t})`;
653
481
  return /* @__PURE__ */ e.jsxs("div", { className: "flex flex-col items-center space-y-2 p-3 rounded-lg border border-border-subtle bg-surface hover:bg-surface-variant transition-colors", children: [
654
482
  /* @__PURE__ */ e.jsx(
655
483
  "div",
656
484
  {
657
- className: `w-16 h-16 rounded-lg border border-border shadow-sm ${je(s)}`
485
+ className: `w-16 h-16 rounded-lg border border-border shadow-sm ${ve(s)}`
658
486
  }
659
487
  ),
660
488
  /* @__PURE__ */ e.jsxs("div", { className: "text-center", children: [
@@ -663,10 +491,10 @@ const je = (r) => r.replace("--color-", "bg-"), Le = ({ name: r, cssVar: s, valu
663
491
  /* @__PURE__ */ e.jsx("div", { className: "text-xs text-text-secondary", children: a })
664
492
  ] })
665
493
  ] });
666
- }, ue = ({ title: r, colors: s }) => /* @__PURE__ */ e.jsxs("div", { className: "space-y-4", children: [
494
+ }, ce = ({ title: r, colors: s }) => /* @__PURE__ */ e.jsxs("div", { className: "space-y-4", children: [
667
495
  /* @__PURE__ */ e.jsx("h3", { className: "text-lg font-semibold text-text-primary border-b border-border-subtle pb-2", children: r }),
668
- /* @__PURE__ */ e.jsx("div", { className: "grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 lg:grid-cols-6 xl:grid-cols-11 gap-4", children: s.map((t) => /* @__PURE__ */ e.jsx(Le, { ...t }, t.name)) })
669
- ] }), Fe = () => {
496
+ /* @__PURE__ */ e.jsx("div", { className: "grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 lg:grid-cols-6 xl:grid-cols-11 gap-4", children: s.map((t) => /* @__PURE__ */ e.jsx(Oe, { ...t }, t.name)) })
497
+ ] }), Be = () => {
670
498
  const r = [
671
499
  {
672
500
  title: "Success Colors (Green)",
@@ -882,15 +710,15 @@ const je = (r) => r.replace("--color-", "bg-"), Le = ({ name: r, cssVar: s, valu
882
710
  /* @__PURE__ */ e.jsx("h1", { className: "text-3xl font-bold text-text-primary", children: "AceMyJob Color Palette" }),
883
711
  /* @__PURE__ */ e.jsx("p", { className: "text-text-secondary", children: "Your complete design system color reference" })
884
712
  ] }),
885
- s.map((a) => /* @__PURE__ */ e.jsx(ue, { ...a }, a.title)),
886
- r.map((a) => /* @__PURE__ */ e.jsx(ue, { ...a }, a.title)),
713
+ s.map((a) => /* @__PURE__ */ e.jsx(ce, { ...a }, a.title)),
714
+ r.map((a) => /* @__PURE__ */ e.jsx(ce, { ...a }, a.title)),
887
715
  /* @__PURE__ */ e.jsxs("div", { className: "space-y-4", children: [
888
716
  /* @__PURE__ */ e.jsx("h3", { className: "text-lg font-semibold text-text-primary border-b border-border-subtle pb-2", children: "Semantic Colors (Theme-aware)" }),
889
717
  /* @__PURE__ */ e.jsx("div", { className: "grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 gap-4", children: t.map((a) => /* @__PURE__ */ e.jsxs("div", { className: "flex flex-col items-center space-y-2 p-3 rounded-lg border border-border-subtle bg-surface hover:bg-surface-variant transition-colors", children: [
890
718
  /* @__PURE__ */ e.jsx(
891
719
  "div",
892
720
  {
893
- className: `w-16 h-16 rounded-lg border border-border shadow-sm ${je(a.cssVar)}`
721
+ className: `w-16 h-16 rounded-lg border border-border shadow-sm ${ve(a.cssVar)}`
894
722
  }
895
723
  ),
896
724
  /* @__PURE__ */ e.jsxs("div", { className: "text-center", children: [
@@ -901,42 +729,42 @@ const je = (r) => r.replace("--color-", "bg-"), Le = ({ name: r, cssVar: s, valu
901
729
  ] }),
902
730
  /* @__PURE__ */ e.jsx("div", { className: "text-center pt-8 border-t border-border-subtle", children: /* @__PURE__ */ e.jsx("p", { className: "text-text-muted text-sm", children: "Toggle between light and dark themes to see how semantic colors adapt" }) })
903
731
  ] });
904
- }, we = Ce(void 0), Ue = ({
732
+ }, ge = je(void 0), Se = ({
905
733
  children: r,
906
734
  defaultTheme: s = "system",
907
735
  storageKey: t = "acemyjob-ui-theme"
908
736
  }) => {
909
737
  const [a, l] = $(s), [n, i] = $("light"), [c, u] = $(!1);
910
- J(() => {
738
+ K(() => {
911
739
  const d = localStorage.getItem(t);
912
740
  d && l(d), u(!0);
913
- }, [t]), J(() => {
741
+ }, [t]), K(() => {
914
742
  if (!c) return;
915
743
  const d = window.document.documentElement, m = () => {
916
- let f;
917
- a === "system" ? f = window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light" : f = a, i(f), d.classList.remove("light", "dark"), d.classList.add(f);
744
+ let h;
745
+ a === "system" ? h = window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light" : h = a, i(h), d.classList.remove("light", "dark"), d.classList.add(h);
918
746
  };
919
747
  if (m(), a === "system") {
920
- const f = window.matchMedia("(prefers-color-scheme: dark)"), v = () => m();
921
- return f.addEventListener("change", v), () => f.removeEventListener("change", v);
748
+ const h = window.matchMedia("(prefers-color-scheme: dark)"), g = () => m();
749
+ return h.addEventListener("change", g), () => h.removeEventListener("change", g);
922
750
  }
923
751
  }, [a, c]);
924
- const x = {
752
+ const f = {
925
753
  theme: a,
926
754
  setTheme: (d) => {
927
755
  localStorage.setItem(t, d), l(d);
928
756
  },
929
757
  resolvedTheme: n
930
758
  };
931
- return /* @__PURE__ */ e.jsx(we.Provider, { value: x, children: r });
932
- }, Ye = () => {
933
- const r = ke(we);
759
+ return /* @__PURE__ */ e.jsx(ge.Provider, { value: f, children: r });
760
+ }, Pe = () => {
761
+ const r = we(ge);
934
762
  if (r === void 0)
935
763
  throw new Error("useTheme must be used within a ThemeProvider");
936
764
  return r;
937
- }, We = () => {
938
- const { theme: r, setTheme: s } = Ye(), [t, a] = $(!1);
939
- if (J(() => {
765
+ }, ze = () => {
766
+ const { theme: r, setTheme: s } = Pe(), [t, a] = $(!1);
767
+ if (K(() => {
940
768
  a(!0);
941
769
  }, []), !t)
942
770
  return /* @__PURE__ */ e.jsxs(
@@ -983,300 +811,91 @@ const je = (r) => r.replace("--color-", "bg-"), Le = ({ name: r, cssVar: s, valu
983
811
  ]
984
812
  }
985
813
  );
986
- }, He = () => /* @__PURE__ */ e.jsxs("div", { className: "relative", children: [
987
- /* @__PURE__ */ e.jsx("div", { className: "fixed top-4 right-4 z-10", children: /* @__PURE__ */ e.jsx(We, {}) }),
988
- /* @__PURE__ */ e.jsx(Fe, {})
989
- ] }), jr = () => /* @__PURE__ */ e.jsx(Ue, { defaultTheme: "system", storageKey: "acemyjob-demo-theme", children: /* @__PURE__ */ e.jsx(He, {}) }), me = {
990
- variant: {
991
- default: "bg-reseda-green-500 text-white hover:bg-reseda-green-600 focus-visible:ring-reseda-green-500",
992
- destructive: "bg-error-500 text-white hover:bg-error-600 focus-visible:ring-error-500",
993
- outline: "border border-border bg-background hover:bg-surface-variant hover:text-text-primary focus-visible:ring-reseda-green-500",
994
- secondary: "bg-khaki-500 text-white hover:bg-khaki-600 focus-visible:ring-khaki-500",
995
- ghost: "hover:bg-surface-variant hover:text-text-primary focus-visible:ring-reseda-green-500",
996
- link: "text-reseda-green-500 underline-offset-4 hover:underline focus-visible:ring-reseda-green-500",
997
- none: ""
998
- // No default styles, allows full customization
999
- },
1000
- size: {
1001
- default: "h-10 px-4 py-2",
1002
- sm: "h-9 rounded-md px-3",
1003
- lg: "h-11 rounded-md px-8",
1004
- xl: "h-12 rounded-md px-10 text-base",
1005
- icon: "h-10 w-10"
814
+ }, De = () => /* @__PURE__ */ e.jsxs("div", { className: "relative", children: [
815
+ /* @__PURE__ */ e.jsx("div", { className: "fixed top-4 right-4 z-10", children: /* @__PURE__ */ e.jsx(ze, {}) }),
816
+ /* @__PURE__ */ e.jsx(Be, {})
817
+ ] }), cr = () => /* @__PURE__ */ e.jsx(Se, { defaultTheme: "system", storageKey: "acemyjob-demo-theme", children: /* @__PURE__ */ e.jsx(De, {}) });
818
+ function ir({
819
+ label: r,
820
+ children: s,
821
+ helperText: t,
822
+ errorText: a,
823
+ required: l = !1,
824
+ className: n = ""
825
+ }) {
826
+ return /* @__PURE__ */ e.jsxs("div", { className: `space-y-2 ${n}`, children: [
827
+ /* @__PURE__ */ e.jsxs("label", { className: "block text-sm font-medium text-text-primary", children: [
828
+ r,
829
+ l && /* @__PURE__ */ e.jsx("span", { className: "text-error-500 ml-1", children: "*" })
830
+ ] }),
831
+ s,
832
+ a && /* @__PURE__ */ e.jsx("p", { className: "text-xs text-error-600", children: a }),
833
+ t && !a && /* @__PURE__ */ e.jsx("p", { className: "text-xs text-text-muted", children: t })
834
+ ] });
835
+ }
836
+ const Me = B.forwardRef(
837
+ ({
838
+ className: r = "",
839
+ leftIcon: s,
840
+ rightIcon: t,
841
+ error: a = !1,
842
+ fullWidth: l = !0,
843
+ disabled: n,
844
+ ...i
845
+ }, c) => {
846
+ const u = "px-3 py-2 border rounded-lg transition-colors text-sm", f = a ? "border-error-300 focus:ring-2 focus:ring-error-500 focus:border-transparent" : "border-border focus:ring-2 focus:ring-reseda-green-500 focus:border-transparent", d = n ? "bg-surface-variant text-text-muted cursor-not-allowed" : "bg-surface text-text-primary", m = l ? "w-full" : "", h = s || t ? "relative flex items-center" : "", g = `${u} ${f} ${d} ${m} ${s ? "pl-10" : ""} ${t ? "pr-10" : ""} ${r}`;
847
+ return /* @__PURE__ */ e.jsxs("div", { className: h, children: [
848
+ s && /* @__PURE__ */ e.jsx("div", { className: "absolute left-3 flex items-center pointer-events-none text-text-muted", children: s }),
849
+ /* @__PURE__ */ e.jsx(
850
+ "input",
851
+ {
852
+ ref: c,
853
+ className: g,
854
+ disabled: n,
855
+ ...i
856
+ }
857
+ ),
858
+ t && /* @__PURE__ */ e.jsx("div", { className: "absolute right-3 flex items-center pointer-events-none text-text-muted", children: t })
859
+ ] });
1006
860
  }
1007
- }, Ge = "inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50", Je = (...r) => r.filter(Boolean).join(" "), S = z.forwardRef(
861
+ );
862
+ Me.displayName = "Input";
863
+ const Fe = B.forwardRef(
1008
864
  ({
1009
- className: r,
1010
- variant: s = "default",
1011
- size: t = "default",
1012
- fullWidth: a = !1,
1013
- loading: l = !1,
1014
- leftIcon: n,
1015
- rightIcon: i,
1016
- children: c,
1017
- disabled: u,
1018
- ...x
1019
- }, d) => {
1020
- const m = u || l, f = Je(
1021
- Ge,
1022
- me.variant[s],
1023
- me.size[t],
1024
- a ? "w-full" : "",
1025
- r
1026
- );
1027
- return /* @__PURE__ */ e.jsxs(
1028
- "button",
1029
- {
1030
- className: f,
1031
- ref: d,
1032
- disabled: m,
1033
- ...x,
1034
- children: [
1035
- l && /* @__PURE__ */ e.jsxs(
1036
- "svg",
1037
- {
1038
- className: "mr-2 h-4 w-4 animate-spin",
1039
- xmlns: "http://www.w3.org/2000/svg",
1040
- fill: "none",
1041
- viewBox: "0 0 24 24",
1042
- children: [
1043
- /* @__PURE__ */ e.jsx(
1044
- "circle",
1045
- {
1046
- className: "opacity-25",
1047
- cx: "12",
1048
- cy: "12",
1049
- r: "10",
1050
- stroke: "currentColor",
1051
- strokeWidth: "4"
1052
- }
1053
- ),
1054
- /* @__PURE__ */ e.jsx(
1055
- "path",
1056
- {
1057
- className: "opacity-75",
1058
- fill: "currentColor",
1059
- d: "m4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"
1060
- }
1061
- )
1062
- ]
1063
- }
1064
- ),
1065
- !l && n && /* @__PURE__ */ e.jsx("span", { className: "mr-2", children: n }),
1066
- c,
1067
- !l && i && /* @__PURE__ */ e.jsx("span", { className: "ml-2", children: i })
1068
- ]
1069
- }
1070
- );
1071
- }
1072
- );
1073
- S.displayName = "Button";
1074
- const xe = {
1075
- provider: {
1076
- linkedin: "bg-[#0077B5] hover:bg-[#005885] text-white focus-visible:ring-[#0077B5]"
1077
- },
1078
- iconPosition: {
1079
- left: "flex-row",
1080
- right: "flex-row-reverse",
1081
- only: "justify-center"
1082
- }
1083
- }, Xe = (...r) => r.filter(Boolean).join(" "), qe = z.forwardRef(
1084
- ({
1085
- className: r,
1086
- provider: s,
1087
- iconPosition: t = "left",
1088
- icon: a,
1089
- showText: l = !0,
1090
- children: n,
1091
- size: i = "default",
1092
- fullWidth: c = !0,
1093
- ...u
1094
- }, x) => {
1095
- const m = a || {
1096
- linkedin: /* @__PURE__ */ e.jsx("svg", { className: "w-5 h-5", viewBox: "0 0 24 24", fill: "currentColor", children: /* @__PURE__ */ e.jsx("path", { d: "M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433c-1.144 0-2.063-.926-2.063-2.065 0-1.138.92-2.063 2.063-2.063 1.14 0 2.064.925 2.064 2.063 0 1.139-.925 2.065-2.064 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z" }) })
1097
- }[s], v = n || (l ? {
1098
- linkedin: "Continue with LinkedIn"
1099
- }[s] : ""), g = Xe(
1100
- "relative overflow-hidden transition-all duration-200",
1101
- xe.provider[s],
1102
- xe.iconPosition[t],
1103
- r
1104
- );
1105
- return /* @__PURE__ */ e.jsxs(
1106
- S,
1107
- {
1108
- ref: x,
1109
- variant: "none",
1110
- className: g,
1111
- size: i,
1112
- fullWidth: c,
1113
- leftIcon: t === "left" ? m : void 0,
1114
- rightIcon: t === "right" ? m : void 0,
1115
- ...u,
1116
- children: [
1117
- t === "only" && m,
1118
- t !== "only" && v
1119
- ]
1120
- }
1121
- );
865
+ options: r,
866
+ placeholder: s,
867
+ className: t = "",
868
+ error: a = !1,
869
+ fullWidth: l = !0,
870
+ disabled: n,
871
+ ...i
872
+ }, c) => {
873
+ const h = `px-3 py-2 border rounded-lg transition-colors text-sm appearance-none ${a ? "border-error-300 focus:ring-2 focus:ring-error-500 focus:border-transparent" : "border-border focus:ring-2 focus:ring-reseda-green-500 focus:border-transparent"} ${n ? "bg-surface-variant text-text-muted cursor-not-allowed" : "bg-surface text-text-primary"} ${l ? "w-full" : ""} pr-10 ${t}`;
874
+ return /* @__PURE__ */ e.jsxs("div", { className: "relative flex items-center", children: [
875
+ /* @__PURE__ */ e.jsxs(
876
+ "select",
877
+ {
878
+ ref: c,
879
+ className: h,
880
+ disabled: n,
881
+ ...i,
882
+ children: [
883
+ s && /* @__PURE__ */ e.jsx("option", { value: "", disabled: !0, children: s }),
884
+ r.map((g) => /* @__PURE__ */ e.jsx("option", { value: g.value, children: g.label }, g.value))
885
+ ]
886
+ }
887
+ ),
888
+ /* @__PURE__ */ e.jsx(Q, { className: "absolute right-3 w-4 h-4 text-text-muted pointer-events-none" })
889
+ ] });
1122
890
  }
1123
891
  );
1124
- qe.displayName = "SocialButton";
1125
- function wr({
1126
- children: r,
1127
- variant: s = "default",
1128
- isActive: t = !1,
1129
- onClick: a,
1130
- className: l = ""
1131
- }) {
1132
- const n = "rounded-lg transition-all", i = {
1133
- default: "border border-border p-4",
1134
- surface: "bg-surface-variant p-4",
1135
- elevated: "bg-surface shadow-md p-6",
1136
- interactive: `border-2 p-4 cursor-pointer ${t ? "border-success-500 bg-success-50" : "border-border bg-surface hover:border-border-subtle"}`
1137
- };
1138
- return /* @__PURE__ */ e.jsx(
1139
- "div",
1140
- {
1141
- className: `${n} ${i[s]} ${l}`,
1142
- onClick: a,
1143
- role: a ? "button" : void 0,
1144
- tabIndex: a ? 0 : void 0,
1145
- onKeyDown: a ? (c) => {
1146
- (c.key === "Enter" || c.key === " ") && a();
1147
- } : void 0,
1148
- children: r
1149
- }
1150
- );
1151
- }
1152
- function Nr({
1153
- title: r,
1154
- children: s,
1155
- subtitle: t,
1156
- spacing: a = "normal",
1157
- className: l = ""
1158
- }) {
1159
- const n = {
1160
- compact: "space-y-3",
1161
- normal: "space-y-6",
1162
- spacious: "space-y-8"
1163
- };
1164
- return /* @__PURE__ */ e.jsxs("div", { className: `${n[a]} ${l}`, children: [
1165
- /* @__PURE__ */ e.jsxs("div", { children: [
1166
- /* @__PURE__ */ e.jsx("h3", { className: "text-lg font-semibold text-text-primary", children: r }),
1167
- t && /* @__PURE__ */ e.jsx("p", { className: "text-sm text-text-secondary mt-1", children: t })
1168
- ] }),
1169
- s
1170
- ] });
1171
- }
1172
- function G({
1173
- variant: r,
1174
- title: s,
1175
- message: t,
1176
- icon: a,
1177
- onClose: l,
1178
- className: n = ""
1179
- }) {
1180
- const c = {
1181
- success: {
1182
- bg: "bg-success-50",
1183
- border: "border-success-200",
1184
- text: "text-success-700",
1185
- icon: /* @__PURE__ */ e.jsx(pe, { className: "h-5 w-5" })
1186
- },
1187
- error: {
1188
- bg: "bg-error-50",
1189
- border: "border-error-200",
1190
- text: "text-error-700",
1191
- icon: /* @__PURE__ */ e.jsx(be, { className: "h-5 w-5" })
1192
- },
1193
- warning: {
1194
- bg: "bg-warning-50",
1195
- border: "border-warning-200",
1196
- text: "text-warning-700",
1197
- icon: /* @__PURE__ */ e.jsx(ge, { className: "h-5 w-5" })
1198
- },
1199
- info: {
1200
- bg: "bg-info-50",
1201
- border: "border-info-200",
1202
- text: "text-info-700",
1203
- icon: /* @__PURE__ */ e.jsx(ve, { className: "h-5 w-5" })
1204
- }
1205
- }[r];
1206
- return /* @__PURE__ */ e.jsx(
1207
- "div",
1208
- {
1209
- className: `${c.bg} border ${c.border} rounded-md p-3 ${n}`,
1210
- role: "alert",
1211
- children: /* @__PURE__ */ e.jsxs("div", { className: "flex items-start gap-3", children: [
1212
- /* @__PURE__ */ e.jsx("div", { className: `flex-shrink-0 ${c.text}`, children: a || c.icon }),
1213
- /* @__PURE__ */ e.jsxs("div", { className: "flex-1", children: [
1214
- s && /* @__PURE__ */ e.jsx("p", { className: `text-sm font-medium ${c.text}`, children: s }),
1215
- /* @__PURE__ */ e.jsx("p", { className: `text-sm ${c.text}`, children: t })
1216
- ] }),
1217
- l && /* @__PURE__ */ e.jsx(
1218
- "button",
1219
- {
1220
- onClick: l,
1221
- className: `flex-shrink-0 ${c.text} hover:opacity-70`,
1222
- "aria-label": "Close alert",
1223
- children: "✕"
1224
- }
1225
- )
1226
- ] })
1227
- }
1228
- );
1229
- }
1230
- function Ze({
1231
- title: r,
1232
- titleId: s,
1233
- ...t
1234
- }, a) {
1235
- return /* @__PURE__ */ _.createElement("svg", Object.assign({
1236
- xmlns: "http://www.w3.org/2000/svg",
1237
- viewBox: "0 0 20 20",
1238
- fill: "currentColor",
1239
- "aria-hidden": "true",
1240
- "data-slot": "icon",
1241
- ref: a,
1242
- "aria-labelledby": s
1243
- }, t), r ? /* @__PURE__ */ _.createElement("title", {
1244
- id: s
1245
- }, r) : null, /* @__PURE__ */ _.createElement("path", {
1246
- fillRule: "evenodd",
1247
- d: "M2 6.75A.75.75 0 0 1 2.75 6h14.5a.75.75 0 0 1 0 1.5H2.75A.75.75 0 0 1 2 6.75Zm0 6.5a.75.75 0 0 1 .75-.75h14.5a.75.75 0 0 1 0 1.5H2.75a.75.75 0 0 1-.75-.75Z",
1248
- clipRule: "evenodd"
1249
- }));
1250
- }
1251
- const fe = /* @__PURE__ */ _.forwardRef(Ze);
1252
- function Ke({
1253
- title: r,
1254
- titleId: s,
1255
- ...t
1256
- }, a) {
1257
- return /* @__PURE__ */ _.createElement("svg", Object.assign({
1258
- xmlns: "http://www.w3.org/2000/svg",
1259
- viewBox: "0 0 20 20",
1260
- fill: "currentColor",
1261
- "aria-hidden": "true",
1262
- "data-slot": "icon",
1263
- ref: a,
1264
- "aria-labelledby": s
1265
- }, t), r ? /* @__PURE__ */ _.createElement("title", {
1266
- id: s
1267
- }, r) : null, /* @__PURE__ */ _.createElement("path", {
1268
- fillRule: "evenodd",
1269
- d: "M8.22 5.22a.75.75 0 0 1 1.06 0l4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.75.75 0 0 1-1.06-1.06L11.94 10 8.22 6.28a.75.75 0 0 1 0-1.06Z",
1270
- clipRule: "evenodd"
1271
- }));
1272
- }
1273
- const he = /* @__PURE__ */ _.forwardRef(Ke);
1274
- function Qe({
892
+ Fe.displayName = "Select";
893
+ function Le({
1275
894
  title: r,
1276
895
  titleId: s,
1277
896
  ...t
1278
897
  }, a) {
1279
- return /* @__PURE__ */ _.createElement("svg", Object.assign({
898
+ return /* @__PURE__ */ W.createElement("svg", Object.assign({
1280
899
  xmlns: "http://www.w3.org/2000/svg",
1281
900
  viewBox: "0 0 20 20",
1282
901
  fill: "currentColor",
@@ -1284,14 +903,14 @@ function Qe({
1284
903
  "data-slot": "icon",
1285
904
  ref: a,
1286
905
  "aria-labelledby": s
1287
- }, t), r ? /* @__PURE__ */ _.createElement("title", {
906
+ }, t), r ? /* @__PURE__ */ W.createElement("title", {
1288
907
  id: s
1289
- }, r) : null, /* @__PURE__ */ _.createElement("path", {
908
+ }, r) : null, /* @__PURE__ */ W.createElement("path", {
1290
909
  d: "M6.28 5.22a.75.75 0 0 0-1.06 1.06L8.94 10l-3.72 3.72a.75.75 0 1 0 1.06 1.06L10 11.06l3.72 3.72a.75.75 0 1 0 1.06-1.06L11.06 10l3.72-3.72a.75.75 0 0 0-1.06-1.06L10 8.94 6.28 5.22Z"
1291
910
  }));
1292
911
  }
1293
- const ee = /* @__PURE__ */ _.forwardRef(Qe);
1294
- function er({
912
+ const Ie = /* @__PURE__ */ W.forwardRef(Le);
913
+ function Ye({
1295
914
  children: r,
1296
915
  variant: s = "default",
1297
916
  size: t = "md",
@@ -1307,7 +926,7 @@ function er({
1307
926
  error: "bg-error-50 text-error-700",
1308
927
  warning: "bg-warning-50 text-warning-700",
1309
928
  info: "bg-info-50 text-info-700"
1310
- }, x = {
929
+ }, f = {
1311
930
  sm: "px-2 py-0.5 text-xs",
1312
931
  md: "px-3 py-1 text-sm",
1313
932
  lg: "px-4 py-1.5 text-base"
@@ -1315,7 +934,7 @@ function er({
1315
934
  return /* @__PURE__ */ e.jsxs(
1316
935
  "span",
1317
936
  {
1318
- className: `inline-flex items-center gap-1 rounded-full ${d} ${x[t]} ${n}`,
937
+ className: `inline-flex items-center gap-1 rounded-full ${d} ${f[t]} ${n}`,
1319
938
  style: i,
1320
939
  children: [
1321
940
  r,
@@ -1325,202 +944,61 @@ function er({
1325
944
  onClick: l,
1326
945
  className: "ml-1 hover:opacity-70",
1327
946
  "aria-label": "Remove badge",
1328
- children: /* @__PURE__ */ e.jsx(ee, { className: "w-3 h-3" })
947
+ children: /* @__PURE__ */ e.jsx(Ie, { className: "w-3 h-3" })
1329
948
  }
1330
949
  )
1331
950
  ]
1332
951
  }
1333
952
  );
1334
953
  }
1335
- function yr({
1336
- status: r,
1337
- title: s,
1338
- message: t,
1339
- action: a,
1340
- progress: l,
1341
- className: n = ""
1342
- }) {
1343
- const c = {
1344
- success: {
1345
- bg: "bg-success-50",
1346
- border: "border-success-200",
1347
- text: "text-success-700",
1348
- icon: /* @__PURE__ */ e.jsx(pe, { className: "h-5 w-5" })
1349
- },
1350
- error: {
1351
- bg: "bg-error-50",
1352
- border: "border-error-200",
1353
- text: "text-error-700",
1354
- icon: /* @__PURE__ */ e.jsx(be, { className: "h-5 w-5" })
1355
- },
1356
- warning: {
1357
- bg: "bg-warning-50",
1358
- border: "border-warning-200",
1359
- text: "text-warning-700",
1360
- icon: /* @__PURE__ */ e.jsx(ge, { className: "h-5 w-5" })
1361
- },
1362
- info: {
1363
- bg: "bg-info-50",
1364
- border: "border-info-200",
1365
- text: "text-info-700",
1366
- icon: /* @__PURE__ */ e.jsx(ve, { className: "h-5 w-5" })
1367
- },
1368
- loading: {
1369
- bg: "bg-blue-50",
1370
- border: "border-blue-200",
1371
- text: "text-blue-700",
1372
- icon: null
1373
- }
1374
- }[r];
1375
- return /* @__PURE__ */ e.jsx("div", { className: `${c.bg} border ${c.border} rounded-lg p-4 ${n}`, children: /* @__PURE__ */ e.jsxs("div", { className: "flex items-start gap-3", children: [
1376
- r === "loading" ? /* @__PURE__ */ e.jsxs("svg", { className: "animate-spin h-5 w-5 flex-shrink-0", viewBox: "0 0 24 24", children: [
1377
- /* @__PURE__ */ e.jsx("circle", { className: "opacity-25", cx: "12", cy: "12", r: "10", fill: "none", stroke: "currentColor", strokeWidth: "4" }),
1378
- /* @__PURE__ */ e.jsx("path", { className: "opacity-75", fill: "currentColor", d: "M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z" })
1379
- ] }) : /* @__PURE__ */ e.jsx("div", { className: `flex-shrink-0 ${c.text}`, children: c.icon }),
1380
- /* @__PURE__ */ e.jsxs("div", { className: "flex-1", children: [
1381
- /* @__PURE__ */ e.jsx("p", { className: `text-sm font-medium ${c.text}`, children: s }),
1382
- t && /* @__PURE__ */ e.jsx("p", { className: `text-xs ${c.text} mt-1`, children: t }),
1383
- l !== void 0 && /* @__PURE__ */ e.jsx("div", { className: "mt-2 w-full bg-gray-200 rounded-full h-2", children: /* @__PURE__ */ e.jsx(
1384
- "div",
1385
- {
1386
- className: `h-2 rounded-full transition-all ${c.bg}`,
1387
- style: { width: `${l}%` }
1388
- }
1389
- ) })
1390
- ] }),
1391
- a && /* @__PURE__ */ e.jsx(
1392
- "button",
1393
- {
1394
- onClick: a.onClick,
1395
- className: `text-sm font-medium ${c.text} hover:opacity-70 flex-shrink-0`,
1396
- children: a.label
1397
- }
1398
- )
1399
- ] }) });
1400
- }
1401
- function Cr({
1402
- label: r,
1403
- children: s,
1404
- helperText: t,
1405
- errorText: a,
1406
- required: l = !1,
1407
- className: n = ""
1408
- }) {
1409
- return /* @__PURE__ */ e.jsxs("div", { className: `space-y-2 ${n}`, children: [
1410
- /* @__PURE__ */ e.jsxs("label", { className: "block text-sm font-medium text-text-primary", children: [
1411
- r,
1412
- l && /* @__PURE__ */ e.jsx("span", { className: "text-error-500 ml-1", children: "*" })
1413
- ] }),
1414
- s,
1415
- a && /* @__PURE__ */ e.jsx("p", { className: "text-xs text-error-600", children: a }),
1416
- t && !a && /* @__PURE__ */ e.jsx("p", { className: "text-xs text-text-muted", children: t })
1417
- ] });
1418
- }
1419
- const rr = z.forwardRef(
1420
- ({
1421
- className: r = "",
1422
- leftIcon: s,
1423
- rightIcon: t,
1424
- error: a = !1,
1425
- fullWidth: l = !0,
1426
- disabled: n,
1427
- ...i
1428
- }, c) => {
1429
- const u = "px-3 py-2 border rounded-lg transition-colors text-sm", x = a ? "border-error-300 focus:ring-2 focus:ring-error-500 focus:border-transparent" : "border-border focus:ring-2 focus:ring-reseda-green-500 focus:border-transparent", d = n ? "bg-surface-variant text-text-muted cursor-not-allowed" : "bg-surface text-text-primary", m = l ? "w-full" : "", f = s || t ? "relative flex items-center" : "", v = `${u} ${x} ${d} ${m} ${s ? "pl-10" : ""} ${t ? "pr-10" : ""} ${r}`;
1430
- return /* @__PURE__ */ e.jsxs("div", { className: f, children: [
1431
- s && /* @__PURE__ */ e.jsx("div", { className: "absolute left-3 flex items-center pointer-events-none text-text-muted", children: s }),
1432
- /* @__PURE__ */ e.jsx(
1433
- "input",
1434
- {
1435
- ref: c,
1436
- className: v,
1437
- disabled: n,
1438
- ...i
1439
- }
1440
- ),
1441
- t && /* @__PURE__ */ e.jsx("div", { className: "absolute right-3 flex items-center pointer-events-none text-text-muted", children: t })
1442
- ] });
1443
- }
1444
- );
1445
- rr.displayName = "Input";
1446
- const sr = z.forwardRef(
1447
- ({
1448
- options: r,
1449
- placeholder: s,
1450
- className: t = "",
1451
- error: a = !1,
1452
- fullWidth: l = !0,
1453
- disabled: n,
1454
- ...i
1455
- }, c) => {
1456
- const f = `px-3 py-2 border rounded-lg transition-colors text-sm appearance-none ${a ? "border-error-300 focus:ring-2 focus:ring-error-500 focus:border-transparent" : "border-border focus:ring-2 focus:ring-reseda-green-500 focus:border-transparent"} ${n ? "bg-surface-variant text-text-muted cursor-not-allowed" : "bg-surface text-text-primary"} ${l ? "w-full" : ""} pr-10 ${t}`;
1457
- return /* @__PURE__ */ e.jsxs("div", { className: "relative flex items-center", children: [
1458
- /* @__PURE__ */ e.jsxs(
1459
- "select",
1460
- {
1461
- ref: c,
1462
- className: f,
1463
- disabled: n,
1464
- ...i,
1465
- children: [
1466
- s && /* @__PURE__ */ e.jsx("option", { value: "", disabled: !0, children: s }),
1467
- r.map((v) => /* @__PURE__ */ e.jsx("option", { value: v.value, children: v.label }, v.value))
1468
- ]
1469
- }
1470
- ),
1471
- /* @__PURE__ */ e.jsx(re, { className: "absolute right-3 w-4 h-4 text-text-muted pointer-events-none" })
1472
- ] });
1473
- }
1474
- );
1475
- sr.displayName = "Select";
1476
- const ar = z.forwardRef(
1477
- ({
1478
- tags: r,
1479
- onTagsChange: s,
1480
- onAddTag: t,
1481
- onRemoveTag: a,
1482
- placeholder: l = "Add a tag and press Enter",
1483
- error: n = !1,
1484
- fullWidth: i = !0,
1485
- maxTags: c,
1486
- duplicateCheck: u = !0,
1487
- disabled: x,
1488
- className: d = "",
1489
- ...m
1490
- }, f) => {
1491
- const [v, g] = $(""), y = (b) => {
1492
- b.key === "Enter" && v.trim() ? (b.preventDefault(), V(v.trim())) : b.key === "Backspace" && !v && r.length > 0 && T(r[r.length - 1]);
1493
- }, V = (b) => {
1494
- if (c && r.length >= c || u && r.includes(b))
1495
- return;
1496
- const w = [...r, b];
1497
- s(w), t?.(b), g("");
1498
- }, T = (b) => {
1499
- const w = r.filter((A) => A !== b);
1500
- s(w), a?.(b);
1501
- }, p = `w-full px-3 py-2 border rounded-lg transition-colors text-sm ${n ? "border-error-300 focus:ring-2 focus:ring-error-500 focus:border-transparent" : "border-border focus:ring-2 focus:ring-reseda-green-500 focus:border-transparent"} ${x ? "bg-surface-variant text-text-muted cursor-not-allowed" : "bg-surface text-text-primary"} ${i ? "w-full" : ""} ${d}`;
1502
- return /* @__PURE__ */ e.jsxs("div", { className: "space-y-2", children: [
1503
- /* @__PURE__ */ e.jsx("div", { className: "flex flex-wrap gap-2 mb-2", children: r.map((b) => /* @__PURE__ */ e.jsx(
1504
- er,
954
+ const Ue = B.forwardRef(
955
+ ({
956
+ tags: r,
957
+ onTagsChange: s,
958
+ onAddTag: t,
959
+ onRemoveTag: a,
960
+ placeholder: l = "Add a tag and press Enter",
961
+ error: n = !1,
962
+ fullWidth: i = !0,
963
+ maxTags: c,
964
+ duplicateCheck: u = !0,
965
+ disabled: f,
966
+ className: d = "",
967
+ ...m
968
+ }, h) => {
969
+ const [g, b] = $(""), C = (v) => {
970
+ v.key === "Enter" && g.trim() ? (v.preventDefault(), _(g.trim())) : v.key === "Backspace" && !g && r.length > 0 && A(r[r.length - 1]);
971
+ }, _ = (v) => {
972
+ if (c && r.length >= c || u && r.includes(v))
973
+ return;
974
+ const w = [...r, v];
975
+ s(w), t?.(v), b("");
976
+ }, A = (v) => {
977
+ const w = r.filter((V) => V !== v);
978
+ s(w), a?.(v);
979
+ }, p = `w-full px-3 py-2 border rounded-lg transition-colors text-sm ${n ? "border-error-300 focus:ring-2 focus:ring-error-500 focus:border-transparent" : "border-border focus:ring-2 focus:ring-reseda-green-500 focus:border-transparent"} ${f ? "bg-surface-variant text-text-muted cursor-not-allowed" : "bg-surface text-text-primary"} ${i ? "w-full" : ""} ${d}`;
980
+ return /* @__PURE__ */ e.jsxs("div", { className: "space-y-2", children: [
981
+ /* @__PURE__ */ e.jsx("div", { className: "flex flex-wrap gap-2 mb-2", children: r.map((v) => /* @__PURE__ */ e.jsx(
982
+ Ye,
1505
983
  {
1506
984
  removable: !0,
1507
- onRemove: () => T(b),
985
+ onRemove: () => A(v),
1508
986
  variant: "default",
1509
- children: b
987
+ children: v
1510
988
  },
1511
- b
989
+ v
1512
990
  )) }),
1513
991
  /* @__PURE__ */ e.jsx(
1514
992
  "input",
1515
993
  {
1516
- ref: f,
994
+ ref: h,
1517
995
  type: "text",
1518
996
  className: p,
1519
997
  placeholder: l,
1520
- value: v,
1521
- onChange: (b) => g(b.target.value),
1522
- onKeyDown: y,
1523
- disabled: x || (c ? r.length >= c : !1),
998
+ value: g,
999
+ onChange: (v) => b(v.target.value),
1000
+ onKeyDown: C,
1001
+ disabled: f || (c ? r.length >= c : !1),
1524
1002
  ...m
1525
1003
  }
1526
1004
  ),
@@ -1532,8 +1010,8 @@ const ar = z.forwardRef(
1532
1010
  ] });
1533
1011
  }
1534
1012
  );
1535
- ar.displayName = "TagInput";
1536
- const tr = z.forwardRef(
1013
+ Ue.displayName = "TagInput";
1014
+ const We = B.forwardRef(
1537
1015
  ({
1538
1016
  className: r = "",
1539
1017
  error: s = !1,
@@ -1544,34 +1022,34 @@ const tr = z.forwardRef(
1544
1022
  disabled: i,
1545
1023
  value: c,
1546
1024
  onChange: u,
1547
- ...x
1025
+ ...f
1548
1026
  }, d) => {
1549
- const y = `px-3 py-2 border rounded-lg transition-colors text-sm font-normal resize-none ${s ? "border-error-300 focus:ring-2 focus:ring-error-500 focus:border-transparent" : "border-border focus:ring-2 focus:ring-reseda-green-500 focus:border-transparent"} ${i ? "bg-surface-variant text-text-muted cursor-not-allowed" : "bg-surface text-text-primary"} ${t ? "w-full" : ""} ${r}`, V = (R) => {
1550
- a && (R.target.style.height = "auto", R.target.style.height = `${R.target.scrollHeight}px`), u?.(R);
1551
- }, T = typeof c == "string" ? c.length : 0;
1027
+ const C = `px-3 py-2 border rounded-lg transition-colors text-sm font-normal resize-none ${s ? "border-error-300 focus:ring-2 focus:ring-error-500 focus:border-transparent" : "border-border focus:ring-2 focus:ring-reseda-green-500 focus:border-transparent"} ${i ? "bg-surface-variant text-text-muted cursor-not-allowed" : "bg-surface text-text-primary"} ${t ? "w-full" : ""} ${r}`, _ = (T) => {
1028
+ a && (T.target.style.height = "auto", T.target.style.height = `${T.target.scrollHeight}px`), u?.(T);
1029
+ }, A = typeof c == "string" ? c.length : 0;
1552
1030
  return /* @__PURE__ */ e.jsxs("div", { className: "space-y-1", children: [
1553
1031
  /* @__PURE__ */ e.jsx(
1554
1032
  "textarea",
1555
1033
  {
1556
1034
  ref: d,
1557
- className: y,
1035
+ className: C,
1558
1036
  disabled: i,
1559
1037
  value: c,
1560
- onChange: V,
1038
+ onChange: _,
1561
1039
  maxLength: l,
1562
- ...x
1040
+ ...f
1563
1041
  }
1564
1042
  ),
1565
1043
  n && l && /* @__PURE__ */ e.jsxs("p", { className: "text-xs text-text-muted text-right", children: [
1566
- T,
1044
+ A,
1567
1045
  " / ",
1568
1046
  l
1569
1047
  ] })
1570
1048
  ] });
1571
1049
  }
1572
1050
  );
1573
- tr.displayName = "Textarea";
1574
- function kr({
1051
+ We.displayName = "Textarea";
1052
+ function dr({
1575
1053
  options: r,
1576
1054
  selectedValues: s,
1577
1055
  onSelectionChange: t,
@@ -1581,25 +1059,25 @@ function kr({
1581
1059
  error: i = !1
1582
1060
  }) {
1583
1061
  const c = (m) => {
1584
- const f = s.includes(m) ? s.filter((v) => v !== m) : [...s, m];
1585
- t(f);
1062
+ const h = s.includes(m) ? s.filter((g) => g !== m) : [...s, m];
1063
+ t(h);
1586
1064
  }, u = {
1587
1065
  vertical: "space-y-3",
1588
1066
  horizontal: "flex flex-wrap gap-3",
1589
1067
  grid: `grid grid-cols-${l} gap-3`
1590
- }, x = a === "grid" ? "grid gap-3" : u[a], d = a === "grid" ? `md:grid-cols-${l}` : "";
1591
- return /* @__PURE__ */ e.jsx("div", { className: `${x} ${d}`, children: r.map((m) => {
1592
- const f = s.includes(m.value), g = f ? "border-reseda-green-500 bg-reseda-green-50 ring-2 ring-reseda-green-200" : `border-${i ? "border-error-300" : "border-border"} hover:border-border-subtle hover:bg-surface-variant`;
1068
+ }, f = a === "grid" ? "grid gap-3" : u[a], d = a === "grid" ? `md:grid-cols-${l}` : "";
1069
+ return /* @__PURE__ */ e.jsx("div", { className: `${f} ${d}`, children: r.map((m) => {
1070
+ const h = s.includes(m.value), b = h ? "border-reseda-green-500 bg-reseda-green-50 ring-2 ring-reseda-green-200" : `border-${i ? "border-error-300" : "border-border"} hover:border-border-subtle hover:bg-surface-variant`;
1593
1071
  return /* @__PURE__ */ e.jsxs(
1594
1072
  "label",
1595
1073
  {
1596
- className: `relative flex items-start p-3 border rounded-lg cursor-pointer transition-all ${g} ${n ? "opacity-50 cursor-not-allowed" : ""}`,
1074
+ className: `relative flex items-start p-3 border rounded-lg cursor-pointer transition-all ${b} ${n ? "opacity-50 cursor-not-allowed" : ""}`,
1597
1075
  children: [
1598
1076
  /* @__PURE__ */ e.jsx(
1599
1077
  "input",
1600
1078
  {
1601
1079
  type: "checkbox",
1602
- checked: f,
1080
+ checked: h,
1603
1081
  onChange: () => c(m.value),
1604
1082
  disabled: n,
1605
1083
  className: "sr-only"
@@ -1610,14 +1088,14 @@ function kr({
1610
1088
  /* @__PURE__ */ e.jsx("div", { className: "font-medium text-text-primary", children: m.label }),
1611
1089
  m.description && /* @__PURE__ */ e.jsx("div", { className: "text-sm text-text-secondary", children: m.description })
1612
1090
  ] }),
1613
- f && /* @__PURE__ */ e.jsx("div", { className: "text-reseda-green-500 flex-shrink-0", children: /* @__PURE__ */ e.jsx("svg", { className: "w-5 h-5", fill: "currentColor", viewBox: "0 0 20 20", children: /* @__PURE__ */ e.jsx("path", { fillRule: "evenodd", d: "M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z", clipRule: "evenodd" }) }) })
1091
+ h && /* @__PURE__ */ e.jsx("div", { className: "text-reseda-green-500 flex-shrink-0", children: /* @__PURE__ */ e.jsx("svg", { className: "w-5 h-5", fill: "currentColor", viewBox: "0 0 20 20", children: /* @__PURE__ */ e.jsx("path", { fillRule: "evenodd", d: "M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z", clipRule: "evenodd" }) }) })
1614
1092
  ]
1615
1093
  },
1616
1094
  m.value
1617
1095
  );
1618
1096
  }) });
1619
1097
  }
1620
- function Vr({
1098
+ function ur({
1621
1099
  options: r,
1622
1100
  selectedValue: s,
1623
1101
  onSelectionChange: t,
@@ -1627,17 +1105,17 @@ function Vr({
1627
1105
  error: i = !1,
1628
1106
  name: c = "radio-group"
1629
1107
  }) {
1630
- const x = a === "grid" ? `grid gap-3 md:grid-cols-${l}` : {
1108
+ const f = a === "grid" ? `grid gap-3 md:grid-cols-${l}` : {
1631
1109
  vertical: "space-y-3",
1632
1110
  horizontal: "flex flex-wrap gap-3",
1633
1111
  grid: "grid gap-3"
1634
1112
  }[a];
1635
- return /* @__PURE__ */ e.jsx("div", { className: x, children: r.map((d) => {
1636
- const m = s === d.value, v = m ? "border-reseda-green-500 bg-reseda-green-50 ring-2 ring-reseda-green-200" : `border-${i ? "border-error-300" : "border-border"} hover:border-border-subtle hover:bg-surface-variant`;
1113
+ return /* @__PURE__ */ e.jsx("div", { className: f, children: r.map((d) => {
1114
+ const m = s === d.value, g = m ? "border-reseda-green-500 bg-reseda-green-50 ring-2 ring-reseda-green-200" : `border-${i ? "border-error-300" : "border-border"} hover:border-border-subtle hover:bg-surface-variant`;
1637
1115
  return /* @__PURE__ */ e.jsxs(
1638
1116
  "label",
1639
1117
  {
1640
- className: `relative flex items-start p-3 border rounded-lg cursor-pointer transition-all ${v} ${n ? "opacity-50 cursor-not-allowed" : ""}`,
1118
+ className: `relative flex items-start p-3 border rounded-lg cursor-pointer transition-all ${g} ${n ? "opacity-50 cursor-not-allowed" : ""}`,
1641
1119
  children: [
1642
1120
  /* @__PURE__ */ e.jsx(
1643
1121
  "input",
@@ -1663,7 +1141,27 @@ function Vr({
1663
1141
  );
1664
1142
  }) });
1665
1143
  }
1666
- function $r({
1144
+ function mr({ stats: r, columns: s = 4, className: t = "" }) {
1145
+ const a = {
1146
+ 2: "grid-cols-2",
1147
+ 3: "grid-cols-3",
1148
+ 4: "grid-cols-4"
1149
+ }[s], l = {
1150
+ "moss-green": { bg: "bg-moss-green-50", text: "text-reseda-green-700", value: "text-reseda-green-100" },
1151
+ success: { bg: "bg-khaki-50", text: "text-success-600", value: "text-success-900" },
1152
+ warning: { bg: "bg-peach-yellow-50", text: "text-warning-600", value: "text-warning-900" },
1153
+ "earth-yellow": { bg: "bg-sunglow-50", text: "text-earth-yellow-700", value: "text-earth-yellow-100" }
1154
+ };
1155
+ return /* @__PURE__ */ e.jsx("div", { className: `grid ${a} gap-4 mb-6 bg-surface p-6 rounded-lg ${t}`, children: r.map((n, i) => {
1156
+ const c = l[n.color || "moss-green"];
1157
+ return /* @__PURE__ */ e.jsxs("div", { className: `${c.bg} rounded-lg p-4`, children: [
1158
+ n.icon && /* @__PURE__ */ e.jsx("div", { className: "mb-2", children: n.icon }),
1159
+ /* @__PURE__ */ e.jsx("p", { className: `text-sm ${c.text} font-medium`, children: n.label }),
1160
+ /* @__PURE__ */ e.jsx("p", { className: `text-2xl font-bold ${c.value} mt-1`, children: n.value })
1161
+ ] }, i);
1162
+ }) });
1163
+ }
1164
+ function xr({
1667
1165
  items: r,
1668
1166
  allowMultiple: s = !1,
1669
1167
  defaultOpenId: t,
@@ -1671,11 +1169,11 @@ function $r({
1671
1169
  className: l = ""
1672
1170
  }) {
1673
1171
  const [n, i] = $(() => t ? Array.isArray(t) ? t : [t] : []), c = (u) => {
1674
- let x;
1675
- s ? x = n.includes(u) ? n.filter((d) => d !== u) : [...n, u] : x = n.includes(u) ? [] : [u], i(x), a?.(x);
1172
+ let f;
1173
+ s ? f = n.includes(u) ? n.filter((d) => d !== u) : [...n, u] : f = n.includes(u) ? [] : [u], i(f), a?.(f);
1676
1174
  };
1677
1175
  return /* @__PURE__ */ e.jsx("div", { className: `space-y-2 ${l}`, children: r.map((u) => {
1678
- const x = n.includes(u.id);
1176
+ const f = n.includes(u.id);
1679
1177
  return /* @__PURE__ */ e.jsxs(
1680
1178
  "div",
1681
1179
  {
@@ -1692,461 +1190,158 @@ function $r({
1692
1190
  /* @__PURE__ */ e.jsx("h3", { className: "font-medium text-text-primary", children: u.title })
1693
1191
  ] }),
1694
1192
  /* @__PURE__ */ e.jsx(
1695
- re,
1193
+ Q,
1696
1194
  {
1697
- className: `w-5 h-5 text-text-secondary transition-transform flex-shrink-0 ${x ? "rotate-180" : ""}`
1195
+ className: `w-5 h-5 text-text-secondary transition-transform flex-shrink-0 ${f ? "rotate-180" : ""}`
1698
1196
  }
1699
1197
  )
1700
1198
  ]
1701
1199
  }
1702
1200
  ),
1703
- x && /* @__PURE__ */ e.jsx("div", { className: "border-t border-border px-4 py-3 bg-surface-variant text-text-primary", children: u.content })
1201
+ f && /* @__PURE__ */ e.jsx("div", { className: "border-t border-border px-4 py-3 bg-surface-variant text-text-primary", children: u.content })
1704
1202
  ]
1705
1203
  },
1706
1204
  u.id
1707
1205
  );
1708
1206
  }) });
1709
1207
  }
1710
- const nr = z.forwardRef(
1208
+ const ie = {
1209
+ variant: {
1210
+ default: "bg-reseda-green-500 text-white hover:bg-reseda-green-600 focus-visible:ring-reseda-green-500",
1211
+ destructive: "bg-error-500 text-white hover:bg-error-600 focus-visible:ring-error-500",
1212
+ outline: "border border-border bg-background hover:bg-surface-variant hover:text-text-primary focus-visible:ring-reseda-green-500",
1213
+ secondary: "bg-khaki-500 text-white hover:bg-khaki-600 focus-visible:ring-khaki-500",
1214
+ ghost: "hover:bg-surface-variant hover:text-text-primary focus-visible:ring-reseda-green-500",
1215
+ link: "text-reseda-green-500 underline-offset-4 hover:underline focus-visible:ring-reseda-green-500",
1216
+ none: ""
1217
+ // No default styles, allows full customization
1218
+ },
1219
+ size: {
1220
+ default: "h-10 px-4 py-2",
1221
+ sm: "h-9 rounded-md px-3",
1222
+ lg: "h-11 rounded-md px-8",
1223
+ xl: "h-12 rounded-md px-10 text-base",
1224
+ icon: "h-10 w-10"
1225
+ }
1226
+ }, He = "inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50", Ge = (...r) => r.filter(Boolean).join(" "), H = B.forwardRef(
1711
1227
  ({
1712
- value: r,
1713
- onChange: s,
1714
- min: t = 0,
1715
- max: a = 100,
1716
- step: l = 1,
1717
- showValue: n = !0,
1718
- showLabels: i = !1,
1719
- minLabel: c,
1720
- maxLabel: u,
1721
- error: x = !1,
1722
- fullWidth: d = !0,
1723
- disabled: m,
1724
- className: f = "",
1725
- ...v
1726
- }, g) => {
1727
- const N = `w-full h-2 rounded-lg appearance-none cursor-pointer ${x ? "bg-error-200 accent-error-500" : "bg-border accent-reseda-green-500"} ${m ? "opacity-50 cursor-not-allowed" : ""} ${d ? "w-full" : ""} ${f}`, D = (r - t) / (a - t) * 100;
1728
- return /* @__PURE__ */ e.jsxs("div", { className: "space-y-2", children: [
1729
- i && (c || u) && /* @__PURE__ */ e.jsxs("div", { className: "flex justify-between text-xs text-text-muted", children: [
1730
- c && /* @__PURE__ */ e.jsx("span", { children: c }),
1731
- u && /* @__PURE__ */ e.jsx("span", { children: u })
1732
- ] }),
1733
- /* @__PURE__ */ e.jsxs("div", { className: "flex items-center gap-3", children: [
1734
- /* @__PURE__ */ e.jsx(
1735
- "input",
1736
- {
1737
- ref: g,
1738
- type: "range",
1739
- min: t,
1740
- max: a,
1741
- step: l,
1742
- value: r,
1743
- onChange: (I) => s(Number(I.target.value)),
1744
- disabled: m,
1745
- className: N,
1746
- ...v
1747
- }
1748
- ),
1749
- n && /* @__PURE__ */ e.jsx("span", { className: "text-sm font-medium text-text-primary min-w-[3rem] text-right", children: r })
1750
- ] }),
1751
- /* @__PURE__ */ e.jsx("div", { className: "h-1 bg-border rounded-full overflow-hidden", children: /* @__PURE__ */ e.jsx(
1752
- "div",
1753
- {
1754
- className: "h-full bg-reseda-green-500 transition-all",
1755
- style: { width: `${D}%` }
1756
- }
1757
- ) })
1758
- ] });
1228
+ className: r,
1229
+ variant: s = "default",
1230
+ size: t = "default",
1231
+ fullWidth: a = !1,
1232
+ loading: l = !1,
1233
+ leftIcon: n,
1234
+ rightIcon: i,
1235
+ children: c,
1236
+ disabled: u,
1237
+ ...f
1238
+ }, d) => {
1239
+ const m = u || l, h = Ge(
1240
+ He,
1241
+ ie.variant[s],
1242
+ ie.size[t],
1243
+ a ? "w-full" : "",
1244
+ r
1245
+ );
1246
+ return /* @__PURE__ */ e.jsxs(
1247
+ "button",
1248
+ {
1249
+ className: h,
1250
+ ref: d,
1251
+ disabled: m,
1252
+ ...f,
1253
+ children: [
1254
+ l && /* @__PURE__ */ e.jsxs(
1255
+ "svg",
1256
+ {
1257
+ className: "mr-2 h-4 w-4 animate-spin",
1258
+ xmlns: "http://www.w3.org/2000/svg",
1259
+ fill: "none",
1260
+ viewBox: "0 0 24 24",
1261
+ children: [
1262
+ /* @__PURE__ */ e.jsx(
1263
+ "circle",
1264
+ {
1265
+ className: "opacity-25",
1266
+ cx: "12",
1267
+ cy: "12",
1268
+ r: "10",
1269
+ stroke: "currentColor",
1270
+ strokeWidth: "4"
1271
+ }
1272
+ ),
1273
+ /* @__PURE__ */ e.jsx(
1274
+ "path",
1275
+ {
1276
+ className: "opacity-75",
1277
+ fill: "currentColor",
1278
+ d: "m4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"
1279
+ }
1280
+ )
1281
+ ]
1282
+ }
1283
+ ),
1284
+ !l && n && /* @__PURE__ */ e.jsx("span", { className: "mr-2", children: n }),
1285
+ c,
1286
+ !l && i && /* @__PURE__ */ e.jsx("span", { className: "ml-2", children: i })
1287
+ ]
1288
+ }
1289
+ );
1759
1290
  }
1760
1291
  );
1761
- nr.displayName = "Slider";
1762
- function Tr({
1763
- icon: r,
1764
- title: s,
1765
- description: t,
1766
- isSelected: a = !1,
1767
- onClick: l,
1768
- disabled: n = !1,
1769
- className: i = ""
1770
- }) {
1771
- const c = "p-4 border rounded-lg transition-all text-center cursor-pointer", u = a ? "border-reseda-green-500 bg-reseda-green-50 ring-2 ring-reseda-green-200" : "border-border hover:border-border-subtle hover:bg-surface-variant", x = n ? "opacity-50 cursor-not-allowed" : "";
1772
- return /* @__PURE__ */ e.jsxs(
1773
- "div",
1774
- {
1775
- className: `${c} ${u} ${x} ${i}`,
1776
- onClick: () => !n && l?.(),
1777
- role: "button",
1778
- tabIndex: n ? -1 : 0,
1779
- onKeyDown: (d) => {
1780
- !n && (d.key === "Enter" || d.key === " ") && l?.();
1781
- },
1782
- children: [
1783
- r && /* @__PURE__ */ e.jsx("div", { className: "mb-3 flex justify-center", children: /* @__PURE__ */ e.jsx("div", { className: "text-text-secondary", children: r }) }),
1784
- /* @__PURE__ */ e.jsx("h3", { className: "font-medium text-text-primary mb-1", children: s }),
1785
- t && /* @__PURE__ */ e.jsx("p", { className: "text-xs text-text-secondary", children: t }),
1786
- a && /* @__PURE__ */ e.jsx("div", { className: "mt-3 flex justify-center", children: /* @__PURE__ */ e.jsx("div", { className: "text-reseda-green-500", children: /* @__PURE__ */ e.jsx("svg", { className: "w-5 h-5", fill: "currentColor", viewBox: "0 0 20 20", children: /* @__PURE__ */ e.jsx("path", { fillRule: "evenodd", d: "M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z", clipRule: "evenodd" }) }) }) })
1787
- ]
1788
- }
1789
- );
1790
- }
1791
- const lr = {
1792
- activeText: "text-reseda-green-700",
1793
- activeBorder: "border-reseda-green-700",
1794
- inactiveText: "text-text-secondary",
1795
- inactiveHoverText: "hover:text-text-primary",
1796
- disabledText: "text-text-disabled"
1797
- };
1798
- function Er({ tabs: r, activeTab: s, disabled: t = !1, onChange: a, colorConfig: l }) {
1799
- const n = l || lr;
1800
- return /* @__PURE__ */ e.jsx("div", { className: "flex border-b border-border mb-6", children: r.map((i) => {
1801
- const c = s === i.id;
1802
- return /* @__PURE__ */ e.jsx(
1803
- S,
1804
- {
1805
- variant: "ghost",
1806
- onClick: () => !t && a(i.id),
1807
- disabled: t && !c,
1808
- className: `px-4 py-2.5 text-sm font-medium whitespace-nowrap transition-colors border-b-2 -mb-px ${c ? `${n.activeBorder} ${n.activeText}` : t ? `border-transparent ${n.disabledText} cursor-not-allowed` : `border-transparent ${n.inactiveText} ${n.inactiveHoverText}`}`,
1809
- children: i.label
1810
- },
1811
- i.id
1292
+ H.displayName = "Button";
1293
+ const de = {
1294
+ provider: {
1295
+ linkedin: "bg-[#0077B5] hover:bg-[#005885] text-white focus-visible:ring-[#0077B5]"
1296
+ },
1297
+ iconPosition: {
1298
+ left: "flex-row",
1299
+ right: "flex-row-reverse",
1300
+ only: "justify-center"
1301
+ }
1302
+ }, Je = (...r) => r.filter(Boolean).join(" "), qe = B.forwardRef(
1303
+ ({
1304
+ className: r,
1305
+ provider: s,
1306
+ iconPosition: t = "left",
1307
+ icon: a,
1308
+ showText: l = !0,
1309
+ children: n,
1310
+ size: i = "default",
1311
+ fullWidth: c = !0,
1312
+ ...u
1313
+ }, f) => {
1314
+ const m = a || {
1315
+ linkedin: /* @__PURE__ */ e.jsx("svg", { className: "w-5 h-5", viewBox: "0 0 24 24", fill: "currentColor", children: /* @__PURE__ */ e.jsx("path", { d: "M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433c-1.144 0-2.063-.926-2.063-2.065 0-1.138.92-2.063 2.063-2.063 1.14 0 2.064.925 2.064 2.063 0 1.139-.925 2.065-2.064 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z" }) })
1316
+ }[s], g = n || (l ? {
1317
+ linkedin: "Continue with LinkedIn"
1318
+ }[s] : ""), b = Je(
1319
+ "relative overflow-hidden transition-all duration-200",
1320
+ de.provider[s],
1321
+ de.iconPosition[t],
1322
+ r
1812
1323
  );
1813
- }) });
1814
- }
1815
- const or = {
1816
- activeBg: "bg-reseda-green-700",
1817
- activeText: "text-white",
1818
- completedBg: "bg-success-500",
1819
- completedText: "text-white",
1820
- incompleteBorder: "border-border",
1821
- incompleteText: "text-text-muted",
1822
- labelActiveText: "text-reseda-green-800",
1823
- labelInactiveText: "text-text-muted",
1824
- connectorBg: "bg-border"
1825
- };
1826
- function Rr({ currentStep: r, steps: s, colorConfig: t }) {
1827
- const a = t || or;
1828
- return /* @__PURE__ */ e.jsx("nav", { className: "mb-10", children: /* @__PURE__ */ e.jsx("ol", { className: "flex items-center w-full", children: s.map((l, n) => /* @__PURE__ */ e.jsxs("li", { className: `flex items-center ${n < s.length - 1 ? "flex-1" : ""}`, children: [
1829
- /* @__PURE__ */ e.jsxs("div", { className: "flex items-center", children: [
1830
- /* @__PURE__ */ e.jsx(
1831
- "span",
1832
- {
1833
- className: `flex items-center justify-center w-9 h-9 rounded-full text-sm font-semibold shrink-0 ${r === l.number ? `${a.activeBg} ${a.activeText}` : r > l.number ? `${a.completedBg} ${a.completedText}` : `border-2 ${a.incompleteBorder} ${a.incompleteText}`}`,
1834
- children: l.number
1835
- }
1836
- ),
1837
- /* @__PURE__ */ e.jsx(
1838
- "span",
1839
- {
1840
- className: `ml-3 text-sm font-medium whitespace-nowrap ${r >= l.number ? a.labelActiveText : a.labelInactiveText}`,
1841
- children: l.label
1842
- }
1843
- )
1844
- ] }),
1845
- n < s.length - 1 && /* @__PURE__ */ e.jsx("div", { className: `flex-1 h-0.5 mx-4 ${a.connectorBg}` })
1846
- ] }, l.number)) }) });
1847
- }
1848
- function cr({
1849
- id: r,
1850
- index: s,
1851
- previewText: t,
1852
- defaultExpanded: a = !1,
1853
- children: l,
1854
- tooltipContent: n,
1855
- onRemove: i,
1856
- className: c = ""
1857
- }) {
1858
- const [u, x] = $(a), { attributes: d, listeners: m, setNodeRef: f, transform: v, transition: g, isDragging: y } = Be({ id: r }), V = {
1859
- transform: Oe.Transform.toString(v),
1860
- transition: g,
1861
- opacity: y ? 0.5 : 1
1862
- };
1863
- return /* @__PURE__ */ e.jsx(
1864
- "div",
1865
- {
1866
- ref: f,
1867
- style: V,
1868
- className: `border border-border rounded-md bg-surface-variant ${c}`,
1869
- children: u ? (
1870
- // ── Expanded ──────────────────────────────────────────────────────────
1871
- /* @__PURE__ */ e.jsxs("div", { className: "p-3", children: [
1872
- /* @__PURE__ */ e.jsxs("div", { className: "flex justify-between items-center mb-2", children: [
1873
- /* @__PURE__ */ e.jsx(
1874
- "button",
1875
- {
1876
- type: "button",
1877
- ...d,
1878
- ...m,
1879
- className: "h-auto w-auto p-1 cursor-grab active:cursor-grabbing rounded hover:bg-surface-variant inline-flex items-center justify-center",
1880
- "aria-label": "Drag to reorder",
1881
- children: /* @__PURE__ */ e.jsx(fe, { className: "w-4 h-4" })
1882
- }
1883
- ),
1884
- /* @__PURE__ */ e.jsxs(
1885
- "span",
1886
- {
1887
- className: "text-sm font-medium text-text-secondary flex-1 cursor-pointer select-none",
1888
- onClick: () => x(!1),
1889
- children: [
1890
- "Item ",
1891
- s + 1
1892
- ]
1893
- }
1894
- ),
1895
- /* @__PURE__ */ e.jsx(
1896
- S,
1897
- {
1898
- type: "button",
1899
- variant: "ghost",
1900
- size: "icon",
1901
- onClick: () => x(!1),
1902
- className: "h-auto w-auto p-1",
1903
- "aria-label": "Collapse",
1904
- leftIcon: /* @__PURE__ */ e.jsx(he, { className: "w-4 h-4 transition-transform rotate-90" })
1905
- }
1906
- ),
1907
- /* @__PURE__ */ e.jsx(
1908
- S,
1909
- {
1910
- type: "button",
1911
- variant: "ghost",
1912
- size: "icon",
1913
- onClick: i,
1914
- className: "h-auto w-auto p-1 text-error-600 hover:text-error-800",
1915
- "aria-label": "Remove",
1916
- leftIcon: /* @__PURE__ */ e.jsx(ee, { className: "w-4 h-4" })
1917
- }
1918
- )
1919
- ] }),
1920
- l
1921
- ] })
1922
- ) : (
1923
- // ── Collapsed ─────────────────────────────────────────────────────────
1924
- /* @__PURE__ */ e.jsxs("div", { className: "relative group", children: [
1925
- /* @__PURE__ */ e.jsxs("div", { className: "flex items-center gap-2 px-3 py-2", children: [
1926
- /* @__PURE__ */ e.jsx(
1927
- "button",
1928
- {
1929
- type: "button",
1930
- ...d,
1931
- ...m,
1932
- className: "h-auto w-auto p-1 cursor-grab active:cursor-grabbing flex-shrink-0 rounded hover:bg-surface-variant inline-flex items-center justify-center",
1933
- "aria-label": "Drag to reorder",
1934
- children: /* @__PURE__ */ e.jsx(fe, { className: "w-4 h-4" })
1935
- }
1936
- ),
1937
- /* @__PURE__ */ e.jsx(
1938
- "span",
1939
- {
1940
- className: "flex-1 text-sm text-text-secondary truncate cursor-pointer select-none",
1941
- onClick: () => x(!0),
1942
- children: t
1943
- }
1944
- ),
1945
- /* @__PURE__ */ e.jsx(
1946
- S,
1947
- {
1948
- type: "button",
1949
- variant: "ghost",
1950
- size: "icon",
1951
- onClick: () => x(!0),
1952
- className: "h-auto w-auto p-1 flex-shrink-0",
1953
- "aria-label": "Expand",
1954
- leftIcon: /* @__PURE__ */ e.jsx(he, { className: "w-4 h-4 transition-transform" })
1955
- }
1956
- ),
1957
- /* @__PURE__ */ e.jsx(
1958
- S,
1959
- {
1960
- type: "button",
1961
- variant: "ghost",
1962
- size: "icon",
1963
- onClick: i,
1964
- className: "h-auto w-auto p-1 text-error-600 hover:text-error-800 flex-shrink-0",
1965
- "aria-label": "Remove",
1966
- leftIcon: /* @__PURE__ */ e.jsx(ee, { className: "w-4 h-4" })
1967
- }
1968
- )
1969
- ] }),
1970
- n && /* @__PURE__ */ e.jsx("div", { className: "absolute left-0 top-full mt-1 z-10 w-80 bg-gray-900 text-white text-xs rounded-md p-3 shadow-lg opacity-0 group-hover:opacity-100 pointer-events-none transition-opacity duration-150", children: n })
1971
- ] })
1972
- )
1973
- }
1974
- );
1975
- }
1976
- cr.displayName = "SortableItem";
1977
- function Ar({
1978
- onFileChange: r,
1979
- onAnalyze: s,
1980
- uploadedFile: t,
1981
- fileError: a,
1982
- onCancelUpload: l,
1983
- isAnalyzing: n = !1,
1984
- analyzeError: i,
1985
- analyzeSuccess: c,
1986
- accept: u = ".pdf,.docx",
1987
- label: x = "Upload File",
1988
- description: d = "PDF, DOCX up to 5MB",
1989
- analyzeButtonLabel: m = "Analyze",
1990
- disabled: f = !1,
1991
- showAnalyzeButton: v = !0
1992
- }) {
1993
- const g = Ve(null), [y, V] = $(!1);
1994
- J(() => {
1995
- !t && g.current && (g.current.value = "");
1996
- }, [t]);
1997
- const T = (N) => {
1998
- N.preventDefault(), N.stopPropagation(), N.type === "dragenter" || N.type === "dragover" ? V(!0) : N.type === "dragleave" && V(!1);
1999
- }, R = (N) => {
2000
- if (N.preventDefault(), N.stopPropagation(), V(!1), N.dataTransfer.files && N.dataTransfer.files[0]) {
2001
- const D = {
2002
- target: {
2003
- files: N.dataTransfer.files
2004
- }
2005
- };
2006
- r(D);
2007
- }
2008
- };
2009
- return /* @__PURE__ */ e.jsxs("div", { className: "mt-6 pt-6 border-t border-border", children: [
2010
- /* @__PURE__ */ e.jsx("h3", { className: "text-sm font-medium text-text-primary mb-3", children: x }),
2011
- /* @__PURE__ */ e.jsxs("label", { className: "block", children: [
2012
- /* @__PURE__ */ e.jsx(
2013
- "input",
2014
- {
2015
- ref: g,
2016
- type: "file",
2017
- accept: u,
2018
- onChange: r,
2019
- className: "hidden",
2020
- id: "file-upload",
2021
- disabled: f
2022
- }
2023
- ),
2024
- /* @__PURE__ */ e.jsx(
2025
- "div",
2026
- {
2027
- onDragEnter: T,
2028
- onDragLeave: T,
2029
- onDragOver: T,
2030
- onDrop: R,
2031
- className: `border-2 border-dashed rounded-lg p-6 text-center transition cursor-pointer ${y ? "border-reseda-green-700 bg-reseda-green-50" : "border-border hover:border-reseda-green-700"} ${f ? "opacity-50 cursor-not-allowed" : ""}`,
2032
- children: t && !a ? /* @__PURE__ */ e.jsxs("div", { children: [
2033
- /* @__PURE__ */ e.jsx(
2034
- "svg",
2035
- {
2036
- className: "mx-auto h-12 w-12 text-success-500",
2037
- fill: "currentColor",
2038
- viewBox: "0 0 20 20",
2039
- children: /* @__PURE__ */ e.jsx(
2040
- "path",
2041
- {
2042
- fillRule: "evenodd",
2043
- d: "M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z",
2044
- clipRule: "evenodd"
2045
- }
2046
- )
2047
- }
2048
- ),
2049
- /* @__PURE__ */ e.jsx("div", { className: "mt-3", children: /* @__PURE__ */ e.jsx(G, { variant: "success", message: "File uploaded successfully" }) }),
2050
- /* @__PURE__ */ e.jsx("p", { className: "text-sm text-text-secondary mt-2 break-words", children: t.name }),
2051
- /* @__PURE__ */ e.jsxs("p", { className: "text-xs text-text-muted mt-1", children: [
2052
- (t.size / (1024 * 1024)).toFixed(2),
2053
- "MB"
2054
- ] }),
2055
- /* @__PURE__ */ e.jsx(
2056
- S,
2057
- {
2058
- variant: "link",
2059
- type: "button",
2060
- onClick: (N) => {
2061
- N.preventDefault(), l?.();
2062
- },
2063
- className: "mt-3 text-error-600 hover:text-error-700 h-auto p-0",
2064
- children: "✕ Cancel"
2065
- }
2066
- )
2067
- ] }) : /* @__PURE__ */ e.jsxs("div", { children: [
2068
- /* @__PURE__ */ e.jsx(
2069
- "svg",
2070
- {
2071
- className: "mx-auto h-12 w-12 text-text-muted",
2072
- stroke: "currentColor",
2073
- fill: "none",
2074
- viewBox: "0 0 48 48",
2075
- children: /* @__PURE__ */ e.jsx(
2076
- "path",
2077
- {
2078
- d: "M28 8H12a4 4 0 00-4 4v20m32-12v8m0 0v8a4 4 0 01-4 4H12a4 4 0 01-4-4v-4m32-4l-3.172-3.172a4 4 0 00-5.656 0L28 28M8 32l9.172-9.172a4 4 0 015.656 0L28 28m0 0l4 4m4-24h8m-4-4v8m-12 4h.02",
2079
- strokeWidth: "2",
2080
- strokeLinecap: "round",
2081
- strokeLinejoin: "round"
2082
- }
2083
- )
2084
- }
2085
- ),
2086
- /* @__PURE__ */ e.jsxs("p", { className: "mt-2 text-sm text-text-secondary", children: [
2087
- /* @__PURE__ */ e.jsx("span", { className: "font-medium text-reseda-green-700", children: "Upload a file" }),
2088
- " ",
2089
- "or drag and drop"
2090
- ] }),
2091
- /* @__PURE__ */ e.jsx("p", { className: "text-xs text-text-muted mt-1", children: d })
2092
- ] })
2093
- }
2094
- )
2095
- ] }),
2096
- a && /* @__PURE__ */ e.jsx("div", { className: "mt-3", children: /* @__PURE__ */ e.jsx(G, { variant: "error", message: a }) }),
2097
- i && /* @__PURE__ */ e.jsx("div", { className: "mt-3", children: /* @__PURE__ */ e.jsx(G, { variant: "error", message: i }) }),
2098
- c && /* @__PURE__ */ e.jsx("div", { className: "mt-3", children: /* @__PURE__ */ e.jsx(G, { variant: "success", message: c }) }),
2099
- v && /* @__PURE__ */ e.jsx(
2100
- S,
1324
+ return /* @__PURE__ */ e.jsxs(
1325
+ H,
2101
1326
  {
2102
- variant: "default",
2103
- onClick: s,
2104
- disabled: !t || n || f,
2105
- loading: n,
2106
- fullWidth: !0,
2107
- className: "mt-3",
2108
- children: m
1327
+ ref: f,
1328
+ variant: "none",
1329
+ className: b,
1330
+ size: i,
1331
+ fullWidth: c,
1332
+ leftIcon: t === "left" ? m : void 0,
1333
+ rightIcon: t === "right" ? m : void 0,
1334
+ ...u,
1335
+ children: [
1336
+ t === "only" && m,
1337
+ t !== "only" && g
1338
+ ]
2109
1339
  }
2110
- )
2111
- ] });
2112
- }
2113
- function _r({ stats: r, columns: s = 4, className: t = "" }) {
2114
- const a = {
2115
- 2: "grid-cols-2",
2116
- 3: "grid-cols-3",
2117
- 4: "grid-cols-4"
2118
- }[s], l = {
2119
- "moss-green": { bg: "bg-moss-green-50", text: "text-reseda-green-700", value: "text-reseda-green-100" },
2120
- success: { bg: "bg-khaki-50", text: "text-success-600", value: "text-success-900" },
2121
- warning: { bg: "bg-peach-yellow-50", text: "text-warning-600", value: "text-warning-900" },
2122
- "earth-yellow": { bg: "bg-sunglow-50", text: "text-earth-yellow-700", value: "text-earth-yellow-100" }
2123
- };
2124
- return /* @__PURE__ */ e.jsx("div", { className: `grid ${a} gap-4 mb-6 bg-surface p-6 rounded-lg ${t}`, children: r.map((n, i) => {
2125
- const c = l[n.color || "moss-green"];
2126
- return /* @__PURE__ */ e.jsxs("div", { className: `${c.bg} rounded-lg p-4`, children: [
2127
- n.icon && /* @__PURE__ */ e.jsx("div", { className: "mb-2", children: n.icon }),
2128
- /* @__PURE__ */ e.jsx("p", { className: `text-sm ${c.text} font-medium`, children: n.label }),
2129
- /* @__PURE__ */ e.jsx("p", { className: `text-2xl font-bold ${c.value} mt-1`, children: n.value })
2130
- ] }, i);
2131
- }) });
2132
- }
2133
- function Br({
2134
- title: r,
2135
- description: s,
2136
- centered: t = !1,
2137
- titleSize: a = "md"
2138
- }) {
2139
- const l = {
2140
- sm: "text-2xl",
2141
- md: "text-3xl",
2142
- lg: "text-4xl"
2143
- }, n = t ? "text-center" : "", i = t ? "max-w-2xl mx-auto" : "";
2144
- return /* @__PURE__ */ e.jsxs("div", { className: `mb-8 ${n}`, children: [
2145
- /* @__PURE__ */ e.jsx("h1", { className: `${l[a]} font-bold text-text-primary`, children: r }),
2146
- /* @__PURE__ */ e.jsx("p", { className: `mt-2 text-text-secondary ${i}`, children: s })
2147
- ] });
2148
- }
2149
- function Or({
1340
+ );
1341
+ }
1342
+ );
1343
+ qe.displayName = "SocialButton";
1344
+ function fr({
2150
1345
  icon: r,
2151
1346
  title: s,
2152
1347
  subtitle: t,
@@ -2156,12 +1351,12 @@ function Or({
2156
1351
  variant: i = "default",
2157
1352
  actions: c,
2158
1353
  onClick: u,
2159
- className: x = ""
1354
+ className: f = ""
2160
1355
  }) {
2161
- const d = (g) => {
2162
- const y = g.target;
2163
- y.tagName === "BUTTON" || y.closest("button") || u?.(g);
2164
- }, f = (() => {
1356
+ const d = (b) => {
1357
+ const C = b.target;
1358
+ C.tagName === "BUTTON" || C.closest("button") || u?.(b);
1359
+ }, h = (() => {
2165
1360
  if (n)
2166
1361
  switch (i) {
2167
1362
  case "success":
@@ -2174,12 +1369,12 @@ function Or({
2174
1369
  return "border-2 border-reseda-green-700 bg-success-50";
2175
1370
  }
2176
1371
  return "border border-border hover:border-border-subtle hover:bg-surface-variant";
2177
- })(), v = l ? "ring-2 ring-reseda-green-700" : "";
1372
+ })(), g = l ? "ring-2 ring-reseda-green-700" : "";
2178
1373
  return /* @__PURE__ */ e.jsx(
2179
1374
  "div",
2180
1375
  {
2181
1376
  onClick: d,
2182
- className: `rounded-lg p-4 cursor-pointer transition ${f} ${v} ${x}`,
1377
+ className: `rounded-lg p-4 cursor-pointer transition ${h} ${g} ${f}`,
2183
1378
  children: /* @__PURE__ */ e.jsxs("div", { className: "flex items-start justify-between", children: [
2184
1379
  /* @__PURE__ */ e.jsxs("div", { className: "flex-1 flex items-start gap-3", children: [
2185
1380
  r && /* @__PURE__ */ e.jsx("div", { className: "shrink-0", children: r }),
@@ -2189,62 +1384,577 @@ function Or({
2189
1384
  a && /* @__PURE__ */ e.jsx("div", { className: "mt-2", children: a })
2190
1385
  ] })
2191
1386
  ] }),
2192
- /* @__PURE__ */ e.jsx("div", { className: "ml-2 flex items-center gap-1 shrink-0", children: c.map((g, y) => /* @__PURE__ */ e.jsx(
2193
- S,
1387
+ /* @__PURE__ */ e.jsx("div", { className: "ml-2 flex items-center gap-1 shrink-0", children: c.map((b, C) => /* @__PURE__ */ e.jsx(
1388
+ H,
2194
1389
  {
2195
- variant: g.variant || "ghost",
2196
- size: g.size || "sm",
2197
- onClick: g.onClick,
2198
- disabled: g.disabled,
2199
- loading: g.loading,
2200
- title: g.label,
2201
- className: g.className,
2202
- leftIcon: g.icon && g.size !== "icon" ? g.icon : void 0,
2203
- children: g.size === "icon" ? g.icon : g.label
1390
+ variant: b.variant || "ghost",
1391
+ size: b.size || "sm",
1392
+ onClick: b.onClick,
1393
+ disabled: b.disabled,
1394
+ loading: b.loading,
1395
+ title: b.label,
1396
+ className: b.className,
1397
+ leftIcon: b.icon && b.size !== "icon" ? b.icon : void 0,
1398
+ children: b.size === "icon" ? b.icon : b.label
2204
1399
  },
2205
- y
1400
+ C
2206
1401
  )) })
2207
1402
  ] })
2208
1403
  }
2209
1404
  );
2210
1405
  }
1406
+ function hr({
1407
+ children: r,
1408
+ variant: s = "default",
1409
+ isActive: t = !1,
1410
+ onClick: a,
1411
+ className: l = ""
1412
+ }) {
1413
+ const n = "rounded-lg transition-all", i = {
1414
+ default: "border border-border p-4",
1415
+ surface: "bg-surface-variant p-4",
1416
+ elevated: "bg-surface shadow-md p-6",
1417
+ interactive: `border-2 p-4 cursor-pointer ${t ? "border-success-500 bg-success-50" : "border-border bg-surface hover:border-border-subtle"}`
1418
+ };
1419
+ return /* @__PURE__ */ e.jsx(
1420
+ "div",
1421
+ {
1422
+ className: `${n} ${i[s]} ${l}`,
1423
+ onClick: a,
1424
+ role: a ? "button" : void 0,
1425
+ tabIndex: a ? 0 : void 0,
1426
+ onKeyDown: a ? (c) => {
1427
+ (c.key === "Enter" || c.key === " ") && a();
1428
+ } : void 0,
1429
+ children: r
1430
+ }
1431
+ );
1432
+ }
1433
+ function vr({
1434
+ title: r,
1435
+ children: s,
1436
+ subtitle: t,
1437
+ spacing: a = "normal",
1438
+ className: l = ""
1439
+ }) {
1440
+ const n = {
1441
+ compact: "space-y-3",
1442
+ normal: "space-y-6",
1443
+ spacious: "space-y-8"
1444
+ };
1445
+ return /* @__PURE__ */ e.jsxs("div", { className: `${n[a]} ${l}`, children: [
1446
+ /* @__PURE__ */ e.jsxs("div", { children: [
1447
+ /* @__PURE__ */ e.jsx("h3", { className: "text-lg font-semibold text-text-primary", children: r }),
1448
+ t && /* @__PURE__ */ e.jsx("p", { className: "text-sm text-text-secondary mt-1", children: t })
1449
+ ] }),
1450
+ s
1451
+ ] });
1452
+ }
1453
+ function gr({
1454
+ title: r,
1455
+ subtitle: s,
1456
+ metadata: t,
1457
+ sections: a,
1458
+ className: l = ""
1459
+ }) {
1460
+ return /* @__PURE__ */ e.jsxs("div", { className: `space-y-6 ${l}`, children: [
1461
+ /* @__PURE__ */ e.jsxs("div", { children: [
1462
+ /* @__PURE__ */ e.jsxs("div", { className: "flex items-start justify-between mb-1", children: [
1463
+ /* @__PURE__ */ e.jsx("h2", { className: "text-xl font-semibold text-text-primary", children: r }),
1464
+ t && /* @__PURE__ */ e.jsx("div", { className: "text-sm text-text-secondary", children: t })
1465
+ ] }),
1466
+ s && /* @__PURE__ */ e.jsx("p", { className: "text-sm text-text-secondary", children: s })
1467
+ ] }),
1468
+ a.map((n, i) => /* @__PURE__ */ e.jsxs("div", { children: [
1469
+ /* @__PURE__ */ e.jsx("h3", { className: "text-lg font-semibold text-text-primary mb-3", children: n.heading }),
1470
+ n.content
1471
+ ] }, i))
1472
+ ] });
1473
+ }
1474
+ function br({
1475
+ title: r,
1476
+ description: s,
1477
+ centered: t = !1,
1478
+ titleSize: a = "md"
1479
+ }) {
1480
+ const l = {
1481
+ sm: "text-2xl",
1482
+ md: "text-3xl",
1483
+ lg: "text-4xl"
1484
+ }, n = t ? "text-center" : "", i = t ? "max-w-2xl mx-auto" : "";
1485
+ return /* @__PURE__ */ e.jsxs("div", { className: `mb-8 ${n}`, children: [
1486
+ /* @__PURE__ */ e.jsx("h1", { className: `${l[a]} font-bold text-text-primary`, children: r }),
1487
+ /* @__PURE__ */ e.jsx("p", { className: `mt-2 text-text-secondary ${i}`, children: s })
1488
+ ] });
1489
+ }
1490
+ function pr({
1491
+ icon: r,
1492
+ title: s,
1493
+ description: t,
1494
+ isSelected: a = !1,
1495
+ onClick: l,
1496
+ disabled: n = !1,
1497
+ className: i = ""
1498
+ }) {
1499
+ const c = "p-4 border rounded-lg transition-all text-center cursor-pointer", u = a ? "border-reseda-green-500 bg-reseda-green-50 ring-2 ring-reseda-green-200" : "border-border hover:border-border-subtle hover:bg-surface-variant", f = n ? "opacity-50 cursor-not-allowed" : "";
1500
+ return /* @__PURE__ */ e.jsxs(
1501
+ "div",
1502
+ {
1503
+ className: `${c} ${u} ${f} ${i}`,
1504
+ onClick: () => !n && l?.(),
1505
+ role: "button",
1506
+ tabIndex: n ? -1 : 0,
1507
+ onKeyDown: (d) => {
1508
+ !n && (d.key === "Enter" || d.key === " ") && l?.();
1509
+ },
1510
+ children: [
1511
+ r && /* @__PURE__ */ e.jsx("div", { className: "mb-3 flex justify-center", children: /* @__PURE__ */ e.jsx("div", { className: "text-text-secondary", children: r }) }),
1512
+ /* @__PURE__ */ e.jsx("h3", { className: "font-medium text-text-primary mb-1", children: s }),
1513
+ t && /* @__PURE__ */ e.jsx("p", { className: "text-xs text-text-secondary", children: t }),
1514
+ a && /* @__PURE__ */ e.jsx("div", { className: "mt-3 flex justify-center", children: /* @__PURE__ */ e.jsx("div", { className: "text-reseda-green-500", children: /* @__PURE__ */ e.jsx("svg", { className: "w-5 h-5", fill: "currentColor", viewBox: "0 0 20 20", children: /* @__PURE__ */ e.jsx("path", { fillRule: "evenodd", d: "M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z", clipRule: "evenodd" }) }) }) })
1515
+ ]
1516
+ }
1517
+ );
1518
+ }
1519
+ const Xe = B.forwardRef(
1520
+ ({
1521
+ value: r,
1522
+ onChange: s,
1523
+ min: t = 0,
1524
+ max: a = 100,
1525
+ step: l = 1,
1526
+ showValue: n = !0,
1527
+ showLabels: i = !1,
1528
+ minLabel: c,
1529
+ maxLabel: u,
1530
+ error: f = !1,
1531
+ fullWidth: d = !0,
1532
+ disabled: m,
1533
+ className: h = "",
1534
+ ...g
1535
+ }, b) => {
1536
+ const P = `w-full h-2 rounded-lg appearance-none cursor-pointer ${f ? "bg-error-200 accent-error-500" : "bg-border accent-reseda-green-500"} ${m ? "opacity-50 cursor-not-allowed" : ""} ${d ? "w-full" : ""} ${h}`, z = (r - t) / (a - t) * 100;
1537
+ return /* @__PURE__ */ e.jsxs("div", { className: "space-y-2", children: [
1538
+ i && (c || u) && /* @__PURE__ */ e.jsxs("div", { className: "flex justify-between text-xs text-text-muted", children: [
1539
+ c && /* @__PURE__ */ e.jsx("span", { children: c }),
1540
+ u && /* @__PURE__ */ e.jsx("span", { children: u })
1541
+ ] }),
1542
+ /* @__PURE__ */ e.jsxs("div", { className: "flex items-center gap-3", children: [
1543
+ /* @__PURE__ */ e.jsx(
1544
+ "input",
1545
+ {
1546
+ ref: b,
1547
+ type: "range",
1548
+ min: t,
1549
+ max: a,
1550
+ step: l,
1551
+ value: r,
1552
+ onChange: (D) => s(Number(D.target.value)),
1553
+ disabled: m,
1554
+ className: P,
1555
+ ...g
1556
+ }
1557
+ ),
1558
+ n && /* @__PURE__ */ e.jsx("span", { className: "text-sm font-medium text-text-primary min-w-[3rem] text-right", children: r })
1559
+ ] }),
1560
+ /* @__PURE__ */ e.jsx("div", { className: "h-1 bg-border rounded-full overflow-hidden", children: /* @__PURE__ */ e.jsx(
1561
+ "div",
1562
+ {
1563
+ className: "h-full bg-reseda-green-500 transition-all",
1564
+ style: { width: `${z}%` }
1565
+ }
1566
+ ) })
1567
+ ] });
1568
+ }
1569
+ );
1570
+ Xe.displayName = "Slider";
1571
+ function jr({
1572
+ variant: r,
1573
+ title: s,
1574
+ message: t,
1575
+ icon: a,
1576
+ onClose: l,
1577
+ className: n = ""
1578
+ }) {
1579
+ const c = {
1580
+ success: {
1581
+ bg: "bg-success-50",
1582
+ border: "border-success-200",
1583
+ text: "text-success-700",
1584
+ icon: /* @__PURE__ */ e.jsx(he, { className: "h-5 w-5" })
1585
+ },
1586
+ error: {
1587
+ bg: "bg-error-50",
1588
+ border: "border-error-200",
1589
+ text: "text-error-700",
1590
+ icon: /* @__PURE__ */ e.jsx(fe, { className: "h-5 w-5" })
1591
+ },
1592
+ warning: {
1593
+ bg: "bg-warning-50",
1594
+ border: "border-warning-200",
1595
+ text: "text-warning-700",
1596
+ icon: /* @__PURE__ */ e.jsx(xe, { className: "h-5 w-5" })
1597
+ },
1598
+ info: {
1599
+ bg: "bg-info-50",
1600
+ border: "border-info-200",
1601
+ text: "text-info-700",
1602
+ icon: /* @__PURE__ */ e.jsx(me, { className: "h-5 w-5" })
1603
+ }
1604
+ }[r];
1605
+ return /* @__PURE__ */ e.jsx(
1606
+ "div",
1607
+ {
1608
+ className: `${c.bg} border ${c.border} rounded-md p-3 ${n}`,
1609
+ role: "alert",
1610
+ children: /* @__PURE__ */ e.jsxs("div", { className: "flex items-start gap-3", children: [
1611
+ /* @__PURE__ */ e.jsx("div", { className: `flex-shrink-0 ${c.text}`, children: a || c.icon }),
1612
+ /* @__PURE__ */ e.jsxs("div", { className: "flex-1", children: [
1613
+ s && /* @__PURE__ */ e.jsx("p", { className: `text-sm font-medium ${c.text}`, children: s }),
1614
+ /* @__PURE__ */ e.jsx("p", { className: `text-sm ${c.text}`, children: t })
1615
+ ] }),
1616
+ l && /* @__PURE__ */ e.jsx(
1617
+ "button",
1618
+ {
1619
+ onClick: l,
1620
+ className: `flex-shrink-0 ${c.text} hover:opacity-70`,
1621
+ "aria-label": "Close alert",
1622
+ children: "✕"
1623
+ }
1624
+ )
1625
+ ] })
1626
+ }
1627
+ );
1628
+ }
1629
+ const Ze = {
1630
+ bg: "bg-indigo-600",
1631
+ activeBg: "bg-indigo-700",
1632
+ text: "text-indigo-200",
1633
+ activeText: "text-white",
1634
+ hoverBg: "hover:bg-indigo-700",
1635
+ hoverText: "hover:text-white"
1636
+ };
1637
+ function k(...r) {
1638
+ return r.filter(Boolean).join(" ");
1639
+ }
1640
+ function ue({ item: r, colorScheme: s }) {
1641
+ const [t, a] = $(r.current || r.children?.some((n) => n.current)), l = r.children && r.children.length > 0;
1642
+ return /* @__PURE__ */ e.jsxs("li", { children: [
1643
+ /* @__PURE__ */ e.jsx("div", { children: /* @__PURE__ */ e.jsxs(
1644
+ "a",
1645
+ {
1646
+ href: l ? void 0 : r.href,
1647
+ onClick: (n) => {
1648
+ l && (n.preventDefault(), a(!t));
1649
+ },
1650
+ className: k(
1651
+ r.current ? `${s.activeBg} ${s.activeText}` : `${s.text} ${s.hoverBg} ${s.hoverText}`,
1652
+ "group flex items-center justify-between gap-x-3 rounded-md p-2 text-sm/6 font-semibold",
1653
+ l ? "cursor-pointer" : ""
1654
+ ),
1655
+ children: [
1656
+ /* @__PURE__ */ e.jsxs("div", { className: "flex items-center gap-x-3", children: [
1657
+ /* @__PURE__ */ e.jsx(
1658
+ r.icon,
1659
+ {
1660
+ "aria-hidden": "true",
1661
+ className: k(
1662
+ r.current ? s.activeText : `${s.text} group-${s.hoverText}`,
1663
+ "size-6 shrink-0"
1664
+ )
1665
+ }
1666
+ ),
1667
+ r.name
1668
+ ] }),
1669
+ l && /* @__PURE__ */ e.jsx(
1670
+ Q,
1671
+ {
1672
+ className: k(
1673
+ "size-5 shrink-0 transition-transform",
1674
+ t ? "rotate-180" : "",
1675
+ r.current ? s.activeText : s.text
1676
+ )
1677
+ }
1678
+ )
1679
+ ]
1680
+ }
1681
+ ) }),
1682
+ l && t && /* @__PURE__ */ e.jsx("ul", { className: "mt-1 ml-9 space-y-1", children: r.children.map((n) => /* @__PURE__ */ e.jsx("li", { children: /* @__PURE__ */ e.jsxs(
1683
+ "a",
1684
+ {
1685
+ href: n.href,
1686
+ className: k(
1687
+ n.current ? `${s.activeBg} ${s.activeText}` : `${s.text} ${s.hoverBg} ${s.hoverText}`,
1688
+ "group flex gap-x-3 rounded-md p-2 text-sm/6 font-semibold"
1689
+ ),
1690
+ children: [
1691
+ /* @__PURE__ */ e.jsx(
1692
+ n.icon,
1693
+ {
1694
+ "aria-hidden": "true",
1695
+ className: k(
1696
+ n.current ? s.activeText : `${s.text} group-${s.hoverText}`,
1697
+ "size-5 shrink-0"
1698
+ )
1699
+ }
1700
+ ),
1701
+ n.name
1702
+ ]
1703
+ }
1704
+ ) }, n.name)) })
1705
+ ] });
1706
+ }
1707
+ function wr({ company: r, profile: s, navigation: t, colorScheme: a = Ze }) {
1708
+ const [l, n] = $(!1);
1709
+ return /* @__PURE__ */ e.jsx(e.Fragment, { children: /* @__PURE__ */ e.jsxs("div", { children: [
1710
+ /* @__PURE__ */ e.jsxs(Ce, { open: l, onClose: n, className: "relative z-50 lg:hidden", children: [
1711
+ /* @__PURE__ */ e.jsx(
1712
+ ke,
1713
+ {
1714
+ transition: !0,
1715
+ className: "fixed inset-0 bg-gray-900/80 transition-opacity duration-300 ease-linear data-closed:opacity-0"
1716
+ }
1717
+ ),
1718
+ /* @__PURE__ */ e.jsx("div", { className: "fixed inset-0 flex", children: /* @__PURE__ */ e.jsxs(
1719
+ Ve,
1720
+ {
1721
+ transition: !0,
1722
+ className: "relative mr-16 flex w-full max-w-xs flex-1 transform transition duration-300 ease-in-out data-closed:-translate-x-full",
1723
+ children: [
1724
+ /* @__PURE__ */ e.jsx($e, { children: /* @__PURE__ */ e.jsx("div", { className: "absolute top-0 left-full flex w-16 justify-center pt-5 duration-300 ease-in-out data-closed:opacity-0", children: /* @__PURE__ */ e.jsxs("button", { type: "button", onClick: () => n(!1), className: "-m-2.5 p-2.5", children: [
1725
+ /* @__PURE__ */ e.jsx("span", { className: "sr-only", children: "Close sidebar" }),
1726
+ /* @__PURE__ */ e.jsx(ye, { "aria-hidden": "true", className: "size-6 text-white" })
1727
+ ] }) }) }),
1728
+ /* @__PURE__ */ e.jsxs("div", { className: k("flex grow flex-col gap-y-5 overflow-y-auto px-6 pb-2", a.bg), children: [
1729
+ /* @__PURE__ */ e.jsx("div", { className: "flex h-16 shrink-0 items-center", children: /* @__PURE__ */ e.jsx(
1730
+ "img",
1731
+ {
1732
+ alt: r.name,
1733
+ src: r.logo,
1734
+ className: "h-8 w-auto"
1735
+ }
1736
+ ) }),
1737
+ /* @__PURE__ */ e.jsx("nav", { className: "flex flex-1 flex-col", children: /* @__PURE__ */ e.jsx("ul", { role: "list", className: "flex flex-1 flex-col gap-y-7", children: /* @__PURE__ */ e.jsx("li", { children: /* @__PURE__ */ e.jsx("ul", { role: "list", className: "-mx-2 space-y-1", children: t.map((i) => /* @__PURE__ */ e.jsx(ue, { item: i, colorScheme: a }, i.name)) }) }) }) })
1738
+ ] })
1739
+ ]
1740
+ }
1741
+ ) })
1742
+ ] }),
1743
+ /* @__PURE__ */ e.jsx("div", { className: "hidden lg:fixed lg:inset-y-0 lg:z-50 lg:flex lg:w-72 lg:flex-col", children: /* @__PURE__ */ e.jsxs("div", { className: k("flex grow flex-col gap-y-5 overflow-y-auto px-6", a.bg), children: [
1744
+ /* @__PURE__ */ e.jsx("div", { className: "flex h-16 shrink-0 items-center", children: /* @__PURE__ */ e.jsx(
1745
+ "img",
1746
+ {
1747
+ alt: r.name,
1748
+ src: r.logo,
1749
+ className: "h-8 w-auto"
1750
+ }
1751
+ ) }),
1752
+ /* @__PURE__ */ e.jsx("nav", { className: "flex flex-1 flex-col", children: /* @__PURE__ */ e.jsxs("ul", { role: "list", className: "flex flex-1 flex-col gap-y-7", children: [
1753
+ /* @__PURE__ */ e.jsx("li", { children: /* @__PURE__ */ e.jsx("ul", { role: "list", className: "-mx-2 space-y-1", children: t.map((i) => /* @__PURE__ */ e.jsx(ue, { item: i, colorScheme: a }, i.name)) }) }),
1754
+ /* @__PURE__ */ e.jsx("li", { className: "-mx-6 mt-auto", children: /* @__PURE__ */ e.jsxs(
1755
+ "a",
1756
+ {
1757
+ href: "#",
1758
+ className: k(
1759
+ "flex items-center gap-x-4 px-6 py-3 text-sm/6 font-semibold",
1760
+ a.activeText,
1761
+ a.hoverBg
1762
+ ),
1763
+ children: [
1764
+ /* @__PURE__ */ e.jsx(
1765
+ "img",
1766
+ {
1767
+ alt: s.name,
1768
+ src: s.image,
1769
+ className: k("size-8 rounded-full", a.activeBg)
1770
+ }
1771
+ ),
1772
+ /* @__PURE__ */ e.jsx("span", { className: "sr-only", children: "Your profile" }),
1773
+ /* @__PURE__ */ e.jsx("span", { "aria-hidden": "true", children: s.name })
1774
+ ]
1775
+ }
1776
+ ) })
1777
+ ] }) })
1778
+ ] }) }),
1779
+ /* @__PURE__ */ e.jsxs("div", { className: k("sticky top-0 z-40 flex items-center gap-x-6 px-4 py-4 shadow-xs sm:px-6 lg:hidden", a.bg), children: [
1780
+ /* @__PURE__ */ e.jsxs("button", { type: "button", onClick: () => n(!0), className: k("-m-2.5 p-2.5 lg:hidden", a.text), children: [
1781
+ /* @__PURE__ */ e.jsx("span", { className: "sr-only", children: "Open sidebar" }),
1782
+ /* @__PURE__ */ e.jsx(Ne, { "aria-hidden": "true", className: "size-6" })
1783
+ ] }),
1784
+ /* @__PURE__ */ e.jsx("div", { className: k("flex-1 text-sm/6 font-semibold", a.activeText), children: "Dashboard" }),
1785
+ /* @__PURE__ */ e.jsxs("a", { href: "#", children: [
1786
+ /* @__PURE__ */ e.jsx("span", { className: "sr-only", children: "Your profile" }),
1787
+ /* @__PURE__ */ e.jsx(
1788
+ "img",
1789
+ {
1790
+ alt: s.name,
1791
+ src: s.image,
1792
+ className: k("size-8 rounded-full", a.activeBg)
1793
+ }
1794
+ )
1795
+ ] })
1796
+ ] })
1797
+ ] }) });
1798
+ }
1799
+ const Ke = {
1800
+ activeBg: "bg-reseda-green-700",
1801
+ activeText: "text-white",
1802
+ completedBg: "bg-success-500",
1803
+ completedText: "text-white",
1804
+ incompleteBorder: "border-border",
1805
+ incompleteText: "text-text-muted",
1806
+ labelActiveText: "text-reseda-green-800",
1807
+ labelInactiveText: "text-text-muted",
1808
+ connectorBg: "bg-border"
1809
+ };
1810
+ function yr({ currentStep: r, steps: s, colorConfig: t }) {
1811
+ const a = t || Ke;
1812
+ return /* @__PURE__ */ e.jsx("nav", { className: "mb-10", children: /* @__PURE__ */ e.jsx("ol", { className: "flex items-center w-full", children: s.map((l, n) => /* @__PURE__ */ e.jsxs("li", { className: `flex items-center ${n < s.length - 1 ? "flex-1" : ""}`, children: [
1813
+ /* @__PURE__ */ e.jsxs("div", { className: "flex items-center", children: [
1814
+ /* @__PURE__ */ e.jsx(
1815
+ "span",
1816
+ {
1817
+ className: `flex items-center justify-center w-9 h-9 rounded-full text-sm font-semibold shrink-0 ${r === l.number ? `${a.activeBg} ${a.activeText}` : r > l.number ? `${a.completedBg} ${a.completedText}` : `border-2 ${a.incompleteBorder} ${a.incompleteText}`}`,
1818
+ children: l.number
1819
+ }
1820
+ ),
1821
+ /* @__PURE__ */ e.jsx(
1822
+ "span",
1823
+ {
1824
+ className: `ml-3 text-sm font-medium whitespace-nowrap ${r >= l.number ? a.labelActiveText : a.labelInactiveText}`,
1825
+ children: l.label
1826
+ }
1827
+ )
1828
+ ] }),
1829
+ n < s.length - 1 && /* @__PURE__ */ e.jsx("div", { className: `flex-1 h-0.5 mx-4 ${a.connectorBg}` })
1830
+ ] }, l.number)) }) });
1831
+ }
1832
+ const Qe = {
1833
+ activeText: "text-reseda-green-700",
1834
+ activeBorder: "border-reseda-green-700",
1835
+ inactiveText: "text-text-secondary",
1836
+ inactiveHoverText: "hover:text-text-primary",
1837
+ disabledText: "text-text-disabled"
1838
+ };
1839
+ function Nr({ tabs: r, activeTab: s, disabled: t = !1, onChange: a, colorConfig: l }) {
1840
+ const n = l || Qe;
1841
+ return /* @__PURE__ */ e.jsx("div", { className: "flex border-b border-border mb-6", children: r.map((i) => {
1842
+ const c = s === i.id;
1843
+ return /* @__PURE__ */ e.jsx(
1844
+ H,
1845
+ {
1846
+ variant: "ghost",
1847
+ onClick: () => !t && a(i.id),
1848
+ disabled: t && !c,
1849
+ className: `px-4 py-2.5 text-sm font-medium whitespace-nowrap transition-colors border-b-2 -mb-px ${c ? `${n.activeBorder} ${n.activeText}` : t ? `border-transparent ${n.disabledText} cursor-not-allowed` : `border-transparent ${n.inactiveText} ${n.inactiveHoverText}`}`,
1850
+ children: i.label
1851
+ },
1852
+ i.id
1853
+ );
1854
+ }) });
1855
+ }
1856
+ function Cr({
1857
+ status: r,
1858
+ title: s,
1859
+ message: t,
1860
+ action: a,
1861
+ progress: l,
1862
+ className: n = ""
1863
+ }) {
1864
+ const c = {
1865
+ success: {
1866
+ bg: "bg-success-50",
1867
+ border: "border-success-200",
1868
+ text: "text-success-700",
1869
+ icon: /* @__PURE__ */ e.jsx(he, { className: "h-5 w-5" })
1870
+ },
1871
+ error: {
1872
+ bg: "bg-error-50",
1873
+ border: "border-error-200",
1874
+ text: "text-error-700",
1875
+ icon: /* @__PURE__ */ e.jsx(fe, { className: "h-5 w-5" })
1876
+ },
1877
+ warning: {
1878
+ bg: "bg-warning-50",
1879
+ border: "border-warning-200",
1880
+ text: "text-warning-700",
1881
+ icon: /* @__PURE__ */ e.jsx(xe, { className: "h-5 w-5" })
1882
+ },
1883
+ info: {
1884
+ bg: "bg-info-50",
1885
+ border: "border-info-200",
1886
+ text: "text-info-700",
1887
+ icon: /* @__PURE__ */ e.jsx(me, { className: "h-5 w-5" })
1888
+ },
1889
+ loading: {
1890
+ bg: "bg-blue-50",
1891
+ border: "border-blue-200",
1892
+ text: "text-blue-700",
1893
+ icon: null
1894
+ }
1895
+ }[r];
1896
+ return /* @__PURE__ */ e.jsx("div", { className: `${c.bg} border ${c.border} rounded-lg p-4 ${n}`, children: /* @__PURE__ */ e.jsxs("div", { className: "flex items-start gap-3", children: [
1897
+ r === "loading" ? /* @__PURE__ */ e.jsxs("svg", { className: "animate-spin h-5 w-5 flex-shrink-0", viewBox: "0 0 24 24", children: [
1898
+ /* @__PURE__ */ e.jsx("circle", { className: "opacity-25", cx: "12", cy: "12", r: "10", fill: "none", stroke: "currentColor", strokeWidth: "4" }),
1899
+ /* @__PURE__ */ e.jsx("path", { className: "opacity-75", fill: "currentColor", d: "M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z" })
1900
+ ] }) : /* @__PURE__ */ e.jsx("div", { className: `flex-shrink-0 ${c.text}`, children: c.icon }),
1901
+ /* @__PURE__ */ e.jsxs("div", { className: "flex-1", children: [
1902
+ /* @__PURE__ */ e.jsx("p", { className: `text-sm font-medium ${c.text}`, children: s }),
1903
+ t && /* @__PURE__ */ e.jsx("p", { className: `text-xs ${c.text} mt-1`, children: t }),
1904
+ l !== void 0 && /* @__PURE__ */ e.jsx("div", { className: "mt-2 w-full bg-gray-200 rounded-full h-2", children: /* @__PURE__ */ e.jsx(
1905
+ "div",
1906
+ {
1907
+ className: `h-2 rounded-full transition-all ${c.bg}`,
1908
+ style: { width: `${l}%` }
1909
+ }
1910
+ ) })
1911
+ ] }),
1912
+ a && /* @__PURE__ */ e.jsx(
1913
+ "button",
1914
+ {
1915
+ onClick: a.onClick,
1916
+ className: `text-sm font-medium ${c.text} hover:opacity-70 flex-shrink-0`,
1917
+ children: a.label
1918
+ }
1919
+ )
1920
+ ] }) });
1921
+ }
2211
1922
  export {
2212
- $r as Accordion,
2213
- Or as ActionCard,
2214
- G as Alert,
2215
- er as Badge,
2216
- S as Button,
2217
- wr as Card,
2218
- kr as CheckboxGroup,
2219
- Fe as ColorPalette,
2220
- jr as Demo,
2221
- Ar as FileUpload,
2222
- Cr as FormField,
2223
- rr as Input,
2224
- Tr as OptionCard,
2225
- Br as PageHeader,
2226
- Vr as RadioGroup,
2227
- Nr as Section,
2228
- sr as Select,
2229
- pr as Sidebar,
2230
- nr as Slider,
1923
+ xr as Accordion,
1924
+ fr as ActionCard,
1925
+ jr as Alert,
1926
+ Ye as Badge,
1927
+ H as Button,
1928
+ hr as Card,
1929
+ dr as CheckboxGroup,
1930
+ Be as ColorPalette,
1931
+ cr as Demo,
1932
+ gr as DetailPanel,
1933
+ ir as FormField,
1934
+ Me as Input,
1935
+ pr as OptionCard,
1936
+ br as PageHeader,
1937
+ ur as RadioGroup,
1938
+ vr as Section,
1939
+ Fe as Select,
1940
+ wr as Sidebar,
1941
+ Xe as Slider,
2231
1942
  qe as SocialButton,
2232
- cr as SortableItem,
2233
- _r as StatsGrid,
2234
- yr as StatusBanner,
2235
- Rr as Stepper,
2236
- Er as TabBar,
2237
- ar as TagInput,
2238
- tr as Textarea,
2239
- Ue as ThemeProvider,
2240
- We as ThemeToggle,
2241
- gr as clearAllErrors,
2242
- vr as clearFieldError,
2243
- hr as getFirstError,
2244
- De as hasErrors,
2245
- br as useForm,
2246
- Ye as useTheme,
2247
- Se as validateField,
2248
- Q as validateForm,
2249
- fr as validators
1943
+ mr as StatsGrid,
1944
+ Cr as StatusBanner,
1945
+ yr as Stepper,
1946
+ Nr as TabBar,
1947
+ Ue as TagInput,
1948
+ We as Textarea,
1949
+ Se as ThemeProvider,
1950
+ ze as ThemeToggle,
1951
+ lr as clearAllErrors,
1952
+ nr as clearFieldError,
1953
+ tr as getFirstError,
1954
+ Ee as hasErrors,
1955
+ or as useForm,
1956
+ Pe as useTheme,
1957
+ Te as validateField,
1958
+ Z as validateForm,
1959
+ ar as validators
2250
1960
  };