@proveanything/smartlinks-utils-ui 0.1.6 → 0.1.7

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,5 +1,5 @@
1
1
  import { cn } from './chunk-L7FQ52F5.js';
2
- import { useState, useCallback } from 'react';
2
+ import { useState, useCallback, useRef, useMemo, useEffect } from 'react';
3
3
  import { GitBranch, Plus, Filter, ChevronRight, X, RefreshCw, Trash2, ChevronDown, ToggleLeft, Package, MapPin, Tag, Monitor, Calendar, User, Hash, Globe, Tags } from 'lucide-react';
4
4
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
5
5
 
@@ -202,14 +202,336 @@ var ConditionTypePicker = ({ onSelect }) => {
202
202
  }) })
203
203
  ] });
204
204
  };
205
- var ContainsToggle = ({ value = true, onChange, trueLabel = "Is One Of", falseLabel = "Is Not One Of", disabled }) => /* @__PURE__ */ jsx("div", { className: "flex gap-1 bg-gray-100 dark:bg-gray-800 rounded-md p-0.5 w-fit", children: [{ v: true, label: trueLabel }, { v: false, label: falseLabel }].map((opt) => /* @__PURE__ */ jsx(
205
+
206
+ // src/components/ConditionsEditor/countries.ts
207
+ var COUNTRIES = [
208
+ { code: "AF", name: "Afghanistan" },
209
+ { code: "AL", name: "Albania" },
210
+ { code: "DZ", name: "Algeria" },
211
+ { code: "AD", name: "Andorra" },
212
+ { code: "AO", name: "Angola" },
213
+ { code: "AG", name: "Antigua and Barbuda" },
214
+ { code: "AR", name: "Argentina" },
215
+ { code: "AM", name: "Armenia" },
216
+ { code: "AU", name: "Australia" },
217
+ { code: "AT", name: "Austria" },
218
+ { code: "AZ", name: "Azerbaijan" },
219
+ { code: "BS", name: "Bahamas" },
220
+ { code: "BH", name: "Bahrain" },
221
+ { code: "BD", name: "Bangladesh" },
222
+ { code: "BB", name: "Barbados" },
223
+ { code: "BY", name: "Belarus" },
224
+ { code: "BE", name: "Belgium" },
225
+ { code: "BZ", name: "Belize" },
226
+ { code: "BJ", name: "Benin" },
227
+ { code: "BT", name: "Bhutan" },
228
+ { code: "BO", name: "Bolivia" },
229
+ { code: "BA", name: "Bosnia and Herzegovina" },
230
+ { code: "BW", name: "Botswana" },
231
+ { code: "BR", name: "Brazil" },
232
+ { code: "BN", name: "Brunei" },
233
+ { code: "BG", name: "Bulgaria" },
234
+ { code: "BF", name: "Burkina Faso" },
235
+ { code: "BI", name: "Burundi" },
236
+ { code: "CV", name: "Cabo Verde" },
237
+ { code: "KH", name: "Cambodia" },
238
+ { code: "CM", name: "Cameroon" },
239
+ { code: "CA", name: "Canada" },
240
+ { code: "CF", name: "Central African Republic" },
241
+ { code: "TD", name: "Chad" },
242
+ { code: "CL", name: "Chile" },
243
+ { code: "CN", name: "China" },
244
+ { code: "CO", name: "Colombia" },
245
+ { code: "KM", name: "Comoros" },
246
+ { code: "CG", name: "Congo" },
247
+ { code: "CD", name: "Congo (DRC)" },
248
+ { code: "CR", name: "Costa Rica" },
249
+ { code: "CI", name: "C\xF4te d'Ivoire" },
250
+ { code: "HR", name: "Croatia" },
251
+ { code: "CU", name: "Cuba" },
252
+ { code: "CY", name: "Cyprus" },
253
+ { code: "CZ", name: "Czechia" },
254
+ { code: "DK", name: "Denmark" },
255
+ { code: "DJ", name: "Djibouti" },
256
+ { code: "DM", name: "Dominica" },
257
+ { code: "DO", name: "Dominican Republic" },
258
+ { code: "EC", name: "Ecuador" },
259
+ { code: "EG", name: "Egypt" },
260
+ { code: "SV", name: "El Salvador" },
261
+ { code: "GQ", name: "Equatorial Guinea" },
262
+ { code: "ER", name: "Eritrea" },
263
+ { code: "EE", name: "Estonia" },
264
+ { code: "SZ", name: "Eswatini" },
265
+ { code: "ET", name: "Ethiopia" },
266
+ { code: "FJ", name: "Fiji" },
267
+ { code: "FI", name: "Finland" },
268
+ { code: "FR", name: "France" },
269
+ { code: "GA", name: "Gabon" },
270
+ { code: "GM", name: "Gambia" },
271
+ { code: "GE", name: "Georgia" },
272
+ { code: "DE", name: "Germany" },
273
+ { code: "GH", name: "Ghana" },
274
+ { code: "GR", name: "Greece" },
275
+ { code: "GD", name: "Grenada" },
276
+ { code: "GT", name: "Guatemala" },
277
+ { code: "GN", name: "Guinea" },
278
+ { code: "GW", name: "Guinea-Bissau" },
279
+ { code: "GY", name: "Guyana" },
280
+ { code: "HT", name: "Haiti" },
281
+ { code: "HN", name: "Honduras" },
282
+ { code: "HU", name: "Hungary" },
283
+ { code: "IS", name: "Iceland" },
284
+ { code: "IN", name: "India" },
285
+ { code: "ID", name: "Indonesia" },
286
+ { code: "IR", name: "Iran" },
287
+ { code: "IQ", name: "Iraq" },
288
+ { code: "IE", name: "Ireland" },
289
+ { code: "IL", name: "Israel" },
290
+ { code: "IT", name: "Italy" },
291
+ { code: "JM", name: "Jamaica" },
292
+ { code: "JP", name: "Japan" },
293
+ { code: "JO", name: "Jordan" },
294
+ { code: "KZ", name: "Kazakhstan" },
295
+ { code: "KE", name: "Kenya" },
296
+ { code: "KI", name: "Kiribati" },
297
+ { code: "KP", name: "North Korea" },
298
+ { code: "KR", name: "South Korea" },
299
+ { code: "KW", name: "Kuwait" },
300
+ { code: "KG", name: "Kyrgyzstan" },
301
+ { code: "LA", name: "Laos" },
302
+ { code: "LV", name: "Latvia" },
303
+ { code: "LB", name: "Lebanon" },
304
+ { code: "LS", name: "Lesotho" },
305
+ { code: "LR", name: "Liberia" },
306
+ { code: "LY", name: "Libya" },
307
+ { code: "LI", name: "Liechtenstein" },
308
+ { code: "LT", name: "Lithuania" },
309
+ { code: "LU", name: "Luxembourg" },
310
+ { code: "MG", name: "Madagascar" },
311
+ { code: "MW", name: "Malawi" },
312
+ { code: "MY", name: "Malaysia" },
313
+ { code: "MV", name: "Maldives" },
314
+ { code: "ML", name: "Mali" },
315
+ { code: "MT", name: "Malta" },
316
+ { code: "MH", name: "Marshall Islands" },
317
+ { code: "MR", name: "Mauritania" },
318
+ { code: "MU", name: "Mauritius" },
319
+ { code: "MX", name: "Mexico" },
320
+ { code: "FM", name: "Micronesia" },
321
+ { code: "MD", name: "Moldova" },
322
+ { code: "MC", name: "Monaco" },
323
+ { code: "MN", name: "Mongolia" },
324
+ { code: "ME", name: "Montenegro" },
325
+ { code: "MA", name: "Morocco" },
326
+ { code: "MZ", name: "Mozambique" },
327
+ { code: "MM", name: "Myanmar" },
328
+ { code: "NA", name: "Namibia" },
329
+ { code: "NR", name: "Nauru" },
330
+ { code: "NP", name: "Nepal" },
331
+ { code: "NL", name: "Netherlands" },
332
+ { code: "NZ", name: "New Zealand" },
333
+ { code: "NI", name: "Nicaragua" },
334
+ { code: "NE", name: "Niger" },
335
+ { code: "NG", name: "Nigeria" },
336
+ { code: "MK", name: "North Macedonia" },
337
+ { code: "NO", name: "Norway" },
338
+ { code: "OM", name: "Oman" },
339
+ { code: "PK", name: "Pakistan" },
340
+ { code: "PW", name: "Palau" },
341
+ { code: "PS", name: "Palestine" },
342
+ { code: "PA", name: "Panama" },
343
+ { code: "PG", name: "Papua New Guinea" },
344
+ { code: "PY", name: "Paraguay" },
345
+ { code: "PE", name: "Peru" },
346
+ { code: "PH", name: "Philippines" },
347
+ { code: "PL", name: "Poland" },
348
+ { code: "PT", name: "Portugal" },
349
+ { code: "QA", name: "Qatar" },
350
+ { code: "RO", name: "Romania" },
351
+ { code: "RU", name: "Russia" },
352
+ { code: "RW", name: "Rwanda" },
353
+ { code: "KN", name: "Saint Kitts and Nevis" },
354
+ { code: "LC", name: "Saint Lucia" },
355
+ { code: "VC", name: "Saint Vincent and the Grenadines" },
356
+ { code: "WS", name: "Samoa" },
357
+ { code: "SM", name: "San Marino" },
358
+ { code: "ST", name: "S\xE3o Tom\xE9 and Pr\xEDncipe" },
359
+ { code: "SA", name: "Saudi Arabia" },
360
+ { code: "SN", name: "Senegal" },
361
+ { code: "RS", name: "Serbia" },
362
+ { code: "SC", name: "Seychelles" },
363
+ { code: "SL", name: "Sierra Leone" },
364
+ { code: "SG", name: "Singapore" },
365
+ { code: "SK", name: "Slovakia" },
366
+ { code: "SI", name: "Slovenia" },
367
+ { code: "SB", name: "Solomon Islands" },
368
+ { code: "SO", name: "Somalia" },
369
+ { code: "ZA", name: "South Africa" },
370
+ { code: "SS", name: "South Sudan" },
371
+ { code: "ES", name: "Spain" },
372
+ { code: "LK", name: "Sri Lanka" },
373
+ { code: "SD", name: "Sudan" },
374
+ { code: "SR", name: "Suriname" },
375
+ { code: "SE", name: "Sweden" },
376
+ { code: "CH", name: "Switzerland" },
377
+ { code: "SY", name: "Syria" },
378
+ { code: "TW", name: "Taiwan" },
379
+ { code: "TJ", name: "Tajikistan" },
380
+ { code: "TZ", name: "Tanzania" },
381
+ { code: "TH", name: "Thailand" },
382
+ { code: "TL", name: "Timor-Leste" },
383
+ { code: "TG", name: "Togo" },
384
+ { code: "TO", name: "Tonga" },
385
+ { code: "TT", name: "Trinidad and Tobago" },
386
+ { code: "TN", name: "Tunisia" },
387
+ { code: "TR", name: "Turkey" },
388
+ { code: "TM", name: "Turkmenistan" },
389
+ { code: "TV", name: "Tuvalu" },
390
+ { code: "UG", name: "Uganda" },
391
+ { code: "UA", name: "Ukraine" },
392
+ { code: "AE", name: "United Arab Emirates" },
393
+ { code: "GB", name: "United Kingdom" },
394
+ { code: "US", name: "United States" },
395
+ { code: "UY", name: "Uruguay" },
396
+ { code: "UZ", name: "Uzbekistan" },
397
+ { code: "VU", name: "Vanuatu" },
398
+ { code: "VA", name: "Vatican City" },
399
+ { code: "VE", name: "Venezuela" },
400
+ { code: "VN", name: "Vietnam" },
401
+ { code: "YE", name: "Yemen" },
402
+ { code: "ZM", name: "Zambia" },
403
+ { code: "ZW", name: "Zimbabwe" }
404
+ ];
405
+ function getCountryName(code) {
406
+ return COUNTRIES.find((c) => c.code === code.toUpperCase())?.name || code;
407
+ }
408
+ var CountryPicker = ({
409
+ selected,
410
+ onChange,
411
+ disabled,
412
+ placeholder = "Search countries\u2026"
413
+ }) => {
414
+ const [open, setOpen] = useState(false);
415
+ const [search, setSearch] = useState("");
416
+ const containerRef = useRef(null);
417
+ const inputRef = useRef(null);
418
+ const filtered = useMemo(() => {
419
+ if (!search) return COUNTRIES;
420
+ const q = search.toLowerCase();
421
+ return COUNTRIES.filter(
422
+ (c) => c.name.toLowerCase().includes(q) || c.code.toLowerCase().includes(q)
423
+ );
424
+ }, [search]);
425
+ useEffect(() => {
426
+ if (!open) return;
427
+ const handler = (e) => {
428
+ if (containerRef.current && !containerRef.current.contains(e.target)) {
429
+ setOpen(false);
430
+ setSearch("");
431
+ }
432
+ };
433
+ document.addEventListener("mousedown", handler);
434
+ return () => document.removeEventListener("mousedown", handler);
435
+ }, [open]);
436
+ const toggle = (code) => {
437
+ if (disabled) return;
438
+ onChange(
439
+ selected.includes(code) ? selected.filter((c) => c !== code) : [...selected, code]
440
+ );
441
+ };
442
+ const remove = (code) => {
443
+ if (disabled) return;
444
+ onChange(selected.filter((c) => c !== code));
445
+ };
446
+ return /* @__PURE__ */ jsxs("div", { ref: containerRef, className: "relative", children: [
447
+ /* @__PURE__ */ jsxs(
448
+ "div",
449
+ {
450
+ className: cn(
451
+ "min-h-[38px] w-full flex flex-wrap items-center gap-1.5 px-2.5 py-1.5",
452
+ "rounded-md border border-gray-300 dark:border-gray-600 bg-transparent",
453
+ "cursor-pointer transition-colors",
454
+ open && "ring-1 ring-blue-500 border-blue-500",
455
+ disabled && "opacity-50 cursor-not-allowed"
456
+ ),
457
+ onClick: () => {
458
+ if (disabled) return;
459
+ setOpen(true);
460
+ setTimeout(() => inputRef.current?.focus(), 0);
461
+ },
462
+ children: [
463
+ selected.map((code) => /* @__PURE__ */ jsxs(
464
+ "span",
465
+ {
466
+ className: "inline-flex items-center gap-1 px-2 py-0.5 rounded-full text-xs font-medium bg-blue-100 dark:bg-blue-900/40 text-blue-700 dark:text-blue-300 border border-blue-200 dark:border-blue-800",
467
+ children: [
468
+ getCountryName(code),
469
+ " (",
470
+ code,
471
+ ")",
472
+ !disabled && /* @__PURE__ */ jsx(
473
+ "button",
474
+ {
475
+ onClick: (e) => {
476
+ e.stopPropagation();
477
+ remove(code);
478
+ },
479
+ className: "hover:text-blue-900 dark:hover:text-blue-100",
480
+ children: /* @__PURE__ */ jsx(X, { className: "w-3 h-3" })
481
+ }
482
+ )
483
+ ]
484
+ },
485
+ code
486
+ )),
487
+ selected.length === 0 && !open && /* @__PURE__ */ jsx("span", { className: "text-sm text-gray-400", children: placeholder }),
488
+ open && /* @__PURE__ */ jsx(
489
+ "input",
490
+ {
491
+ ref: inputRef,
492
+ value: search,
493
+ onChange: (e) => setSearch(e.target.value),
494
+ className: "flex-1 min-w-[120px] text-sm bg-transparent outline-none text-gray-900 dark:text-gray-100 placeholder:text-gray-400",
495
+ placeholder,
496
+ onClick: (e) => e.stopPropagation()
497
+ }
498
+ ),
499
+ /* @__PURE__ */ jsx(ChevronDown, { className: cn("w-4 h-4 text-gray-400 ml-auto flex-shrink-0 transition-transform", open && "rotate-180") })
500
+ ]
501
+ }
502
+ ),
503
+ open && /* @__PURE__ */ jsx("div", { className: "absolute z-50 mt-1 w-full max-h-[200px] overflow-y-auto rounded-md border border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-900 shadow-lg", children: filtered.length === 0 ? /* @__PURE__ */ jsx("div", { className: "px-3 py-2 text-sm text-gray-400", children: "No countries found" }) : filtered.map((country) => {
504
+ const isSelected = selected.includes(country.code);
505
+ return /* @__PURE__ */ jsxs(
506
+ "button",
507
+ {
508
+ onClick: () => toggle(country.code),
509
+ className: cn(
510
+ "w-full flex items-center gap-2 px-3 py-1.5 text-sm text-left transition-colors",
511
+ isSelected ? "bg-blue-50 dark:bg-blue-900/30 text-blue-700 dark:text-blue-300" : "text-gray-700 dark:text-gray-300 hover:bg-gray-50 dark:hover:bg-gray-800"
512
+ ),
513
+ children: [
514
+ /* @__PURE__ */ jsx("span", { className: cn(
515
+ "w-4 h-4 rounded border flex items-center justify-center flex-shrink-0 transition-colors",
516
+ isSelected ? "bg-blue-500 border-blue-500 text-white" : "border-gray-300 dark:border-gray-600"
517
+ ), children: isSelected && /* @__PURE__ */ jsx("svg", { className: "w-3 h-3", viewBox: "0 0 12 12", fill: "none", children: /* @__PURE__ */ jsx("path", { d: "M2 6l3 3 5-5", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }) }) }),
518
+ /* @__PURE__ */ jsx("span", { className: "flex-1", children: country.name }),
519
+ /* @__PURE__ */ jsx("span", { className: "text-xs text-gray-400 font-mono", children: country.code })
520
+ ]
521
+ },
522
+ country.code
523
+ );
524
+ }) })
525
+ ] });
526
+ };
527
+ var ContainsToggle = ({ value = true, onChange, trueLabel = "Is One Of", falseLabel = "Is Not One Of", disabled }) => /* @__PURE__ */ jsx("div", { className: "flex gap-1 bg-gray-100 dark:bg-gray-800 rounded-md p-1 w-fit", children: [{ v: true, label: trueLabel }, { v: false, label: falseLabel }].map((opt) => /* @__PURE__ */ jsx(
206
528
  "button",
207
529
  {
208
530
  onClick: () => onChange(opt.v),
209
531
  disabled,
210
532
  className: cn(
211
- "px-2.5 py-1 text-xs font-medium rounded transition-colors",
212
- value === opt.v ? "bg-white dark:bg-gray-700 text-gray-900 dark:text-gray-100 shadow-sm" : "text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-300"
533
+ "px-3 py-1.5 text-xs font-semibold rounded transition-all",
534
+ value === opt.v ? "bg-blue-500 text-white shadow-sm" : "text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-300 hover:bg-gray-200 dark:hover:bg-gray-700"
213
535
  ),
214
536
  children: opt.label
215
537
  },
@@ -262,23 +584,23 @@ var ConditionConfig = ({
262
584
  case "country":
263
585
  return /* @__PURE__ */ jsxs("div", { className: "space-y-3", children: [
264
586
  /* @__PURE__ */ jsx(ContainsToggle, { value: cond.contains, onChange: (v) => update({ contains: v }), disabled: readOnly }),
265
- /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
266
- /* @__PURE__ */ jsx("label", { className: "text-xs text-gray-500 dark:text-gray-400", children: "Use regions" }),
587
+ /* @__PURE__ */ jsxs("label", { className: "flex items-center gap-2 text-xs font-medium text-gray-600 dark:text-gray-300 cursor-pointer select-none", children: [
267
588
  /* @__PURE__ */ jsx(
268
589
  "button",
269
590
  {
270
591
  onClick: () => update({ useRegions: !cond.useRegions }),
271
592
  disabled: readOnly,
272
593
  className: cn(
273
- "w-8 h-5 rounded-full transition-colors relative",
594
+ "w-9 h-5 rounded-full transition-colors relative flex-shrink-0",
274
595
  cond.useRegions ? "bg-blue-500" : "bg-gray-300 dark:bg-gray-600"
275
596
  ),
276
597
  children: /* @__PURE__ */ jsx("span", { className: cn(
277
598
  "absolute top-0.5 w-4 h-4 rounded-full bg-white shadow transition-transform",
278
- cond.useRegions ? "translate-x-3.5" : "translate-x-0.5"
599
+ cond.useRegions ? "translate-x-4" : "translate-x-0.5"
279
600
  ) })
280
601
  }
281
- )
602
+ ),
603
+ "Use regions"
282
604
  ] }),
283
605
  cond.useRegions ? /* @__PURE__ */ jsx(
284
606
  ChipSelect,
@@ -289,12 +611,10 @@ var ConditionConfig = ({
289
611
  disabled: readOnly
290
612
  }
291
613
  ) : /* @__PURE__ */ jsx(
292
- "input",
614
+ CountryPicker,
293
615
  {
294
- className: inputClass,
295
- value: (cond.countries || []).join(", "),
296
- onChange: (e) => update({ countries: e.target.value.split(",").map((s) => s.trim()).filter(Boolean) }),
297
- placeholder: "US, GB, DE, \u2026",
616
+ selected: cond.countries || [],
617
+ onChange: (codes) => update({ countries: codes }),
298
618
  disabled: readOnly
299
619
  }
300
620
  )
@@ -348,14 +668,14 @@ var ConditionConfig = ({
348
668
  // ─── DATE ─────────────────────────────────────
349
669
  case "date":
350
670
  return /* @__PURE__ */ jsxs("div", { className: "space-y-3", children: [
351
- /* @__PURE__ */ jsx("div", { className: "flex gap-1 bg-gray-100 dark:bg-gray-800 rounded-md p-0.5 w-fit", children: ["before", "after", "between"].map((dt) => /* @__PURE__ */ jsxs(
671
+ /* @__PURE__ */ jsx("div", { className: "flex gap-1 bg-gray-100 dark:bg-gray-800 rounded-md p-1 w-fit", children: ["before", "after", "between"].map((dt) => /* @__PURE__ */ jsxs(
352
672
  "button",
353
673
  {
354
674
  onClick: () => update({ dateTest: dt }),
355
675
  disabled: readOnly,
356
676
  className: cn(
357
- "px-2.5 py-1 text-xs font-medium rounded transition-colors capitalize",
358
- cond.dateTest === dt ? "bg-white dark:bg-gray-700 text-gray-900 dark:text-gray-100 shadow-sm" : "text-gray-500 dark:text-gray-400"
677
+ "px-3 py-1.5 text-xs font-semibold rounded transition-all capitalize",
678
+ cond.dateTest === dt ? "bg-blue-500 text-white shadow-sm" : "text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-300 hover:bg-gray-200 dark:hover:bg-gray-700"
359
679
  ),
360
680
  children: [
361
681
  "Is ",
@@ -457,14 +777,14 @@ var ConditionConfig = ({
457
777
  /* @__PURE__ */ jsx("option", { value: "", children: "Select a condition\u2026" }),
458
778
  editorProps.savedConditions.map((c) => /* @__PURE__ */ jsx("option", { value: c.value, children: c.title }, c.value))
459
779
  ] }) : /* @__PURE__ */ jsx("input", { className: inputClass, value: cond.conditionId || "", onChange: (e) => update({ conditionId: e.target.value }), placeholder: "Condition ID", disabled: readOnly }),
460
- /* @__PURE__ */ jsx("div", { className: "flex gap-1 bg-gray-100 dark:bg-gray-800 rounded-md p-0.5 w-fit", children: [{ v: true, l: "Passes" }, { v: false, l: "Fails" }].map((opt) => /* @__PURE__ */ jsx(
780
+ /* @__PURE__ */ jsx("div", { className: "flex gap-1 bg-gray-100 dark:bg-gray-800 rounded-md p-1 w-fit", children: [{ v: true, l: "Passes" }, { v: false, l: "Fails" }].map((opt) => /* @__PURE__ */ jsx(
461
781
  "button",
462
782
  {
463
783
  onClick: () => update({ passes: opt.v }),
464
784
  disabled: readOnly,
465
785
  className: cn(
466
- "px-2.5 py-1 text-xs font-medium rounded transition-colors",
467
- cond.passes === opt.v ? "bg-white dark:bg-gray-700 text-gray-900 dark:text-gray-100 shadow-sm" : "text-gray-500 dark:text-gray-400"
786
+ "px-3 py-1.5 text-xs font-semibold rounded transition-all",
787
+ cond.passes === opt.v ? "bg-blue-500 text-white shadow-sm" : "text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-300 hover:bg-gray-200 dark:hover:bg-gray-700"
468
788
  ),
469
789
  children: opt.l
470
790
  },
@@ -691,15 +1011,15 @@ var ConditionsEditorContent = ({
691
1011
  /* @__PURE__ */ jsx(GitBranch, { className: "w-3.5 h-3.5" }),
692
1012
  "Logic Type"
693
1013
  ] }),
694
- /* @__PURE__ */ jsxs("div", { className: "flex gap-1 bg-gray-100 dark:bg-gray-800 rounded-md p-0.5", children: [
1014
+ /* @__PURE__ */ jsxs("div", { className: "flex gap-1 bg-gray-100 dark:bg-gray-800 rounded-md p-1", children: [
695
1015
  /* @__PURE__ */ jsx(
696
1016
  "button",
697
1017
  {
698
1018
  onClick: () => toggleLogic("and"),
699
1019
  disabled: readOnly,
700
1020
  className: cn(
701
- "flex-1 px-3 py-2 text-sm font-medium rounded transition-colors",
702
- value.type === "and" ? "bg-white dark:bg-gray-700 text-gray-900 dark:text-gray-100 shadow-sm" : "text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-300"
1021
+ "flex-1 px-3 py-2 text-sm font-semibold rounded transition-all",
1022
+ value.type === "and" ? "bg-blue-500 text-white shadow-sm" : "text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-300 hover:bg-gray-200 dark:hover:bg-gray-700"
703
1023
  ),
704
1024
  children: "Match ALL (AND)"
705
1025
  }
@@ -710,8 +1030,8 @@ var ConditionsEditorContent = ({
710
1030
  onClick: () => toggleLogic("or"),
711
1031
  disabled: readOnly,
712
1032
  className: cn(
713
- "flex-1 px-3 py-2 text-sm font-medium rounded transition-colors",
714
- value.type === "or" ? "bg-white dark:bg-gray-700 text-gray-900 dark:text-gray-100 shadow-sm" : "text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-300"
1033
+ "flex-1 px-3 py-2 text-sm font-semibold rounded transition-all",
1034
+ value.type === "or" ? "bg-blue-500 text-white shadow-sm" : "text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-300 hover:bg-gray-200 dark:hover:bg-gray-700"
715
1035
  ),
716
1036
  children: "Match ANY (OR)"
717
1037
  }
@@ -776,5 +1096,5 @@ var ConditionsEditor = (props) => {
776
1096
  };
777
1097
 
778
1098
  export { ConditionsEditor };
779
- //# sourceMappingURL=chunk-IVUFK6SS.js.map
780
- //# sourceMappingURL=chunk-IVUFK6SS.js.map
1099
+ //# sourceMappingURL=chunk-YVHF5JBL.js.map
1100
+ //# sourceMappingURL=chunk-YVHF5JBL.js.map