ui-thing 0.1.3 → 0.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -2329,7 +2329,7 @@ export const buttonStyles = tv({
2329
2329
 
2330
2330
  const props = defineProps<ContextMenuTriggerProps>();
2331
2331
  </script>
2332
- `}],utils:[],composables:[],plugins:[]},{name:"DataTables.net",value:"datatable",deps:["datatables.net-buttons-dt@^2.4.3","datatables.net-responsive-dt@^2.5.1","datatables.net-searchbuilder-dt@^1.7.0","datatables.net-select-dt@^1.7.1","datatables.net-vue3@^2.1.3","jszip"],overrides:{"datatables.net":"1.13.10","datatables.net-dt":"1.13.10"},plugins:[{fileName:"datatables.client.ts",dirPath:"plugins",fileContent:`import DataTablesCore from "datatables.net";
2332
+ `}],utils:[],composables:[],plugins:[]},{name:"DataTables.net",value:"datatable",deps:["datatables.net-buttons-dt@^2.4.3","datatables.net-responsive-dt@^2.5.1","datatables.net-searchbuilder-dt@^1.7.0","datatables.net-select-dt@^1.7.1","datatables.net-vue3","jszip"],overrides:{"datatables.net":"1.13.11","datatables.net-dt":"1.13.11"},plugins:[{fileName:"datatables.client.ts",dirPath:"plugins",fileContent:`import DataTablesCore from "datatables.net";
2333
2333
  import DataTable from "datatables.net-vue3";
2334
2334
  import JSZip from "jszip";
2335
2335
 
@@ -2350,995 +2350,995 @@ DataTable.use(DataTablesCore);
2350
2350
  export default defineNuxtPlugin((nuxtApp) => {
2351
2351
  nuxtApp.vueApp.component("DataTable", DataTable);
2352
2352
  });
2353
- `}],files:[{fileName:"Datatable.client.vue",dirPath:"components/UI",fileContent:`<template>\r
2354
- <DataTable ref="table" :data="data" :class="props.class" :options="options">\r
2355
- <slot></slot>\r
2356
- </DataTable>\r
2357
- </template>\r
2358
- \r
2359
- <script lang="ts" setup generic="T">\r
2360
- import type DataTableRef from "datatables.net";\r
2361
- import type { Config } from "datatables.net/types/types";\r
2362
- \r
2363
- const table = shallowRef<{ dt: InstanceType<typeof DataTableRef<T[]>> } | null>(null);\r
2364
- \r
2365
- const props = withDefaults(\r
2366
- defineProps<{\r
2367
- data?: Config["data"];\r
2368
- class?: any;\r
2369
- options?: Config;\r
2370
- }>(),\r
2371
- {\r
2372
- data: () => [],\r
2373
- class: "nowrap hover order-column row-border stripe display",\r
2374
- options: () => ({}),\r
2375
- }\r
2376
- );\r
2377
- \r
2378
- const emits = defineEmits<{\r
2379
- ready: [any];\r
2380
- }>();\r
2381
- \r
2382
- onMounted(() => {\r
2383
- nextTick(() => {\r
2384
- emits("ready", table.value?.dt);\r
2385
- });\r
2386
- });\r
2387
- </script>\r
2388
- \r
2389
- <style>\r
2390
- :root {\r
2391
- --dt-row-selected: 262.1, 83.3%, 57.8%;\r
2392
- --dt-row-selected-text: 210, 20%, 98%;\r
2393
- --dt-row-selected-link: 262.1, 83.3%, 57.8%;\r
2394
- --dt-row-stripe: 0, 0%, 100%;\r
2395
- --dt-row-hover: 0, 0%, 100%;\r
2396
- --dt-column-ordering: 0, 0%, 100%;\r
2397
- --dt-border: 220, 13%, 91%;\r
2398
- --dt-foreground: 224, 71.4%, 4.1%;\r
2399
- }\r
2400
- \r
2401
- .dark {\r
2402
- --dt-row-selected: 263.4, 70%, 50.4%;\r
2403
- --dt-row-selected-text: 210, 20%, 98%;\r
2404
- --dt-row-selected-link: 263.4, 70%, 50.4%;\r
2405
- --dt-row-stripe: 224, 71.4%, 4.1%;\r
2406
- --dt-row-hover: 224, 71.4%, 4.1%;\r
2407
- --dt-column-ordering: 224, 71.4%, 4.1%;\r
2408
- --dt-border: 215, 27.9%, 16.9%;\r
2409
- --dt-foreground: 224, 71.4%, 4.1%;\r
2410
- }\r
2411
- \r
2412
- table.dataTable td.dt-control {\r
2413
- text-align: center;\r
2414
- cursor: pointer;\r
2415
- }\r
2416
- table.dataTable td.dt-control:before {\r
2417
- display: inline-block;\r
2418
- color: hsla(var(--dt-foreground), 0.5);\r
2419
- content: "\u25BA";\r
2420
- }\r
2421
- table.dataTable tr.dt-hasChild td.dt-control:before {\r
2422
- content: "\u25BC";\r
2423
- }\r
2424
- \r
2425
- table.dataTable thead > tr > th.sorting,\r
2426
- table.dataTable thead > tr > th.sorting_asc,\r
2427
- table.dataTable thead > tr > th.sorting_desc,\r
2428
- table.dataTable thead > tr > th.sorting_asc_disabled,\r
2429
- table.dataTable thead > tr > th.sorting_desc_disabled,\r
2430
- table.dataTable thead > tr > td.sorting,\r
2431
- table.dataTable thead > tr > td.sorting_asc,\r
2432
- table.dataTable thead > tr > td.sorting_desc,\r
2433
- table.dataTable thead > tr > td.sorting_asc_disabled,\r
2434
- table.dataTable thead > tr > td.sorting_desc_disabled {\r
2435
- @apply relative cursor-pointer pr-7;\r
2436
- }\r
2437
- table.dataTable thead > tr > th.sorting:before,\r
2438
- table.dataTable thead > tr > th.sorting:after,\r
2439
- table.dataTable thead > tr > th.sorting_asc:before,\r
2440
- table.dataTable thead > tr > th.sorting_asc:after,\r
2441
- table.dataTable thead > tr > th.sorting_desc:before,\r
2442
- table.dataTable thead > tr > th.sorting_desc:after,\r
2443
- table.dataTable thead > tr > th.sorting_asc_disabled:before,\r
2444
- table.dataTable thead > tr > th.sorting_asc_disabled:after,\r
2445
- table.dataTable thead > tr > th.sorting_desc_disabled:before,\r
2446
- table.dataTable thead > tr > th.sorting_desc_disabled:after,\r
2447
- table.dataTable thead > tr > td.sorting:before,\r
2448
- table.dataTable thead > tr > td.sorting:after,\r
2449
- table.dataTable thead > tr > td.sorting_asc:before,\r
2450
- table.dataTable thead > tr > td.sorting_asc:after,\r
2451
- table.dataTable thead > tr > td.sorting_desc:before,\r
2452
- table.dataTable thead > tr > td.sorting_desc:after,\r
2453
- table.dataTable thead > tr > td.sorting_asc_disabled:before,\r
2454
- table.dataTable thead > tr > td.sorting_asc_disabled:after,\r
2455
- table.dataTable thead > tr > td.sorting_desc_disabled:before,\r
2456
- table.dataTable thead > tr > td.sorting_desc_disabled:after {\r
2457
- @apply absolute right-2.5 block text-xs leading-3 opacity-25;\r
2458
- }\r
2459
- table.dataTable thead > tr > th.sorting:before,\r
2460
- table.dataTable thead > tr > th.sorting_asc:before,\r
2461
- table.dataTable thead > tr > th.sorting_desc:before,\r
2462
- table.dataTable thead > tr > th.sorting_asc_disabled:before,\r
2463
- table.dataTable thead > tr > th.sorting_desc_disabled:before,\r
2464
- table.dataTable thead > tr > td.sorting:before,\r
2465
- table.dataTable thead > tr > td.sorting_asc:before,\r
2466
- table.dataTable thead > tr > td.sorting_desc:before,\r
2467
- table.dataTable thead > tr > td.sorting_asc_disabled:before,\r
2468
- table.dataTable thead > tr > td.sorting_desc_disabled:before {\r
2469
- @apply bottom-[43%] h-4 w-4 bg-[url('https://api.iconify.design/lucide:chevron-up.svg')] bg-contain bg-center bg-no-repeat content-[''] dark:bg-[url('https://api.iconify.design/lucide:chevron-up.svg?color=white')];\r
2470
- }\r
2471
- table.dataTable thead > tr > th.sorting:after,\r
2472
- table.dataTable thead > tr > th.sorting_asc:after,\r
2473
- table.dataTable thead > tr > th.sorting_desc:after,\r
2474
- table.dataTable thead > tr > th.sorting_asc_disabled:after,\r
2475
- table.dataTable thead > tr > th.sorting_desc_disabled:after,\r
2476
- table.dataTable thead > tr > td.sorting:after,\r
2477
- table.dataTable thead > tr > td.sorting_asc:after,\r
2478
- table.dataTable thead > tr > td.sorting_desc:after,\r
2479
- table.dataTable thead > tr > td.sorting_asc_disabled:after,\r
2480
- table.dataTable thead > tr > td.sorting_desc_disabled:after {\r
2481
- @apply top-[43%] h-4 w-4 bg-[url('https://api.iconify.design/lucide:chevron-down.svg')] bg-contain bg-center bg-no-repeat content-[''] dark:bg-[url('https://api.iconify.design/lucide:chevron-down.svg?color=white')];\r
2482
- }\r
2483
- table.dataTable thead > tr > th.sorting_asc:before,\r
2484
- table.dataTable thead > tr > th.sorting_desc:after,\r
2485
- table.dataTable thead > tr > td.sorting_asc:before,\r
2486
- table.dataTable thead > tr > td.sorting_desc:after {\r
2487
- @apply opacity-80;\r
2488
- }\r
2489
- table.dataTable thead > tr > th.sorting_desc_disabled:after,\r
2490
- table.dataTable thead > tr > th.sorting_asc_disabled:before,\r
2491
- table.dataTable thead > tr > td.sorting_desc_disabled:after,\r
2492
- table.dataTable thead > tr > td.sorting_asc_disabled:before {\r
2493
- @apply hidden;\r
2494
- }\r
2495
- table.dataTable thead > tr > th:active,\r
2496
- table.dataTable thead > tr > td:active {\r
2497
- @apply outline-none;\r
2498
- }\r
2499
- \r
2500
- div.dataTables_scrollBody > table.dataTable > thead > tr > th:before,\r
2501
- div.dataTables_scrollBody > table.dataTable > thead > tr > th:after,\r
2502
- div.dataTables_scrollBody > table.dataTable > thead > tr > td:before,\r
2503
- div.dataTables_scrollBody > table.dataTable > thead > tr > td:after {\r
2504
- @apply hidden;\r
2505
- }\r
2506
- \r
2507
- div.dataTables_processing {\r
2508
- @apply absolute left-[50%] top-[50%] ml-[-100px] mt-[-26px] w-[200px] p-0.5 text-center;\r
2509
- }\r
2510
- div.dataTables_processing > div:last-child {\r
2511
- @apply relative mx-auto my-4 h-4 w-20;\r
2512
- }\r
2513
- div.dataTables_processing > div:last-child > div {\r
2514
- @apply absolute top-0 h-3.5 w-3.5 rounded-full;\r
2515
- background: hsl(var(--dt-row-selected));\r
2516
- animation-timing-function: cubic-bezier(0, 1, 1, 0);\r
2517
- }\r
2518
- div.dataTables_processing > div:last-child > div:nth-child(1) {\r
2519
- left: 8px;\r
2520
- animation: datatables-loader-1 0.6s infinite;\r
2521
- }\r
2522
- div.dataTables_processing > div:last-child > div:nth-child(2) {\r
2523
- left: 8px;\r
2524
- animation: datatables-loader-2 0.6s infinite;\r
2525
- }\r
2526
- div.dataTables_processing > div:last-child > div:nth-child(3) {\r
2527
- left: 32px;\r
2528
- animation: datatables-loader-2 0.6s infinite;\r
2529
- }\r
2530
- div.dataTables_processing > div:last-child > div:nth-child(4) {\r
2531
- left: 56px;\r
2532
- animation: datatables-loader-3 0.6s infinite;\r
2533
- }\r
2534
- \r
2535
- @keyframes datatables-loader-1 {\r
2536
- 0% {\r
2537
- transform: scale(0);\r
2538
- }\r
2539
- 100% {\r
2540
- transform: scale(1);\r
2541
- }\r
2542
- }\r
2543
- @keyframes datatables-loader-3 {\r
2544
- 0% {\r
2545
- transform: scale(1);\r
2546
- }\r
2547
- 100% {\r
2548
- transform: scale(0);\r
2549
- }\r
2550
- }\r
2551
- @keyframes datatables-loader-2 {\r
2552
- 0% {\r
2553
- transform: translate(0, 0);\r
2554
- }\r
2555
- 100% {\r
2556
- transform: translate(24px, 0);\r
2557
- }\r
2558
- }\r
2559
- table.dataTable.nowrap th,\r
2560
- table.dataTable.nowrap td {\r
2561
- white-space: nowrap;\r
2562
- }\r
2563
- table.dataTable th.dt-left,\r
2564
- table.dataTable td.dt-left {\r
2565
- text-align: left;\r
2566
- }\r
2567
- table.dataTable th.dt-center,\r
2568
- table.dataTable td.dt-center,\r
2569
- table.dataTable td.dataTables_empty {\r
2570
- text-align: center;\r
2571
- }\r
2572
- table.dataTable th.dt-right,\r
2573
- table.dataTable td.dt-right {\r
2574
- text-align: right;\r
2575
- }\r
2576
- table.dataTable th.dt-justify,\r
2577
- table.dataTable td.dt-justify {\r
2578
- text-align: justify;\r
2579
- }\r
2580
- table.dataTable th.dt-nowrap,\r
2581
- table.dataTable td.dt-nowrap {\r
2582
- white-space: nowrap;\r
2583
- }\r
2584
- table.dataTable thead th,\r
2585
- table.dataTable thead td,\r
2586
- table.dataTable tfoot th,\r
2587
- table.dataTable tfoot td {\r
2588
- text-align: left;\r
2589
- }\r
2590
- table.dataTable thead th.dt-head-left,\r
2591
- table.dataTable thead td.dt-head-left,\r
2592
- table.dataTable tfoot th.dt-head-left,\r
2593
- table.dataTable tfoot td.dt-head-left {\r
2594
- text-align: left;\r
2595
- }\r
2596
- table.dataTable thead th.dt-head-center,\r
2597
- table.dataTable thead td.dt-head-center,\r
2598
- table.dataTable tfoot th.dt-head-center,\r
2599
- table.dataTable tfoot td.dt-head-center {\r
2600
- text-align: center;\r
2601
- }\r
2602
- table.dataTable thead th.dt-head-right,\r
2603
- table.dataTable thead td.dt-head-right,\r
2604
- table.dataTable tfoot th.dt-head-right,\r
2605
- table.dataTable tfoot td.dt-head-right {\r
2606
- text-align: right;\r
2607
- }\r
2608
- table.dataTable thead th.dt-head-justify,\r
2609
- table.dataTable thead td.dt-head-justify,\r
2610
- table.dataTable tfoot th.dt-head-justify,\r
2611
- table.dataTable tfoot td.dt-head-justify {\r
2612
- text-align: justify;\r
2613
- }\r
2614
- table.dataTable thead th.dt-head-nowrap,\r
2615
- table.dataTable thead td.dt-head-nowrap,\r
2616
- table.dataTable tfoot th.dt-head-nowrap,\r
2617
- table.dataTable tfoot td.dt-head-nowrap {\r
2618
- white-space: nowrap;\r
2619
- }\r
2620
- table.dataTable tbody th.dt-body-left,\r
2621
- table.dataTable tbody td.dt-body-left {\r
2622
- text-align: left;\r
2623
- }\r
2624
- table.dataTable tbody th.dt-body-center,\r
2625
- table.dataTable tbody td.dt-body-center {\r
2626
- text-align: center;\r
2627
- }\r
2628
- table.dataTable tbody th.dt-body-right,\r
2629
- table.dataTable tbody td.dt-body-right {\r
2630
- text-align: right;\r
2631
- }\r
2632
- table.dataTable tbody th.dt-body-justify,\r
2633
- table.dataTable tbody td.dt-body-justify {\r
2634
- text-align: justify;\r
2635
- }\r
2636
- table.dataTable tbody th.dt-body-nowrap,\r
2637
- table.dataTable tbody td.dt-body-nowrap {\r
2638
- white-space: nowrap;\r
2639
- }\r
2640
- \r
2641
- /* Table Styles */\r
2642
- \r
2643
- table.dataTable {\r
2644
- @apply w-full table-auto border-collapse;\r
2645
- }\r
2646
- \r
2647
- /* Table header styles */\r
2648
- table.dataTable thead th,\r
2649
- table.dataTable tfoot th {\r
2650
- @apply text-left text-sm font-medium text-muted-foreground;\r
2651
- }\r
2652
- \r
2653
- table.dataTable > thead > tr > th {\r
2654
- @apply border-b border-t-0 px-6 py-3;\r
2655
- }\r
2656
- table.dataTable > thead > tr > td {\r
2657
- @apply border-b px-6 py-3 text-sm;\r
2658
- }\r
2659
- table.dataTable > thead > tr > th:active,\r
2660
- table.dataTable > thead > tr > td:active {\r
2661
- @apply outline-none;\r
2662
- }\r
2663
- table.dataTable > tfoot > tr > th,\r
2664
- table.dataTable > tfoot > tr > td {\r
2665
- @apply border-t px-6 py-3;\r
2666
- }\r
2667
- table.dataTable tbody tr {\r
2668
- @apply bg-transparent;\r
2669
- }\r
2670
- table.dataTable tbody tr.selected > * {\r
2671
- @apply bg-primary/10;\r
2672
- }\r
2673
- table.dataTable tbody tr.selected a {\r
2674
- @apply text-primary;\r
2675
- }\r
2676
- table.dataTable tbody th,\r
2677
- table.dataTable tbody td {\r
2678
- @apply px-6 py-3 text-sm;\r
2679
- }\r
2680
- table.dataTable.row-border > tbody > tr > th,\r
2681
- table.dataTable.row-border > tbody > tr > td,\r
2682
- table.dataTable.display > tbody > tr > th,\r
2683
- table.dataTable.display > tbody > tr > td {\r
2684
- @apply border-t;\r
2685
- }\r
2686
- table.dataTable.row-border > tbody > tr:first-child > th,\r
2687
- table.dataTable.row-border > tbody > tr:first-child > td,\r
2688
- table.dataTable.display > tbody > tr:first-child > th,\r
2689
- table.dataTable.display > tbody > tr:first-child > td {\r
2690
- @apply border-t-0;\r
2691
- }\r
2692
- table.dataTable.row-border > tbody > tr.selected + tr.selected > td,\r
2693
- table.dataTable.display > tbody > tr.selected + tr.selected > td {\r
2694
- @apply border-t-primary/30;\r
2695
- }\r
2696
- table.dataTable.cell-border > tbody > tr > th,\r
2697
- table.dataTable.cell-border > tbody > tr > td {\r
2698
- @apply border-r border-t;\r
2699
- }\r
2700
- table.dataTable.cell-border > tbody > tr > th:first-child,\r
2701
- table.dataTable.cell-border > tbody > tr > td:first-child {\r
2702
- @apply border-l;\r
2703
- }\r
2704
- table.dataTable.cell-border > tbody > tr:first-child > th,\r
2705
- table.dataTable.cell-border > tbody > tr:first-child > td {\r
2706
- @apply border-t-0;\r
2707
- }\r
2708
- table.dataTable.stripe > tbody > tr.odd > *,\r
2709
- table.dataTable.display > tbody > tr.odd > * {\r
2710
- @apply bg-muted/50;\r
2711
- }\r
2712
- table.dataTable.stripe > tbody > tr.odd.selected > *,\r
2713
- table.dataTable.display > tbody > tr.odd.selected > * {\r
2714
- @apply bg-primary/10;\r
2715
- }\r
2716
- table.dataTable.hover > tbody > tr:hover > *,\r
2717
- table.dataTable.display > tbody > tr:hover > * {\r
2718
- @apply bg-muted;\r
2719
- }\r
2720
- table.dataTable.hover > tbody > tr.selected:hover > *,\r
2721
- table.dataTable.display > tbody > tr.selected:hover > * {\r
2722
- @apply !bg-primary/10;\r
2723
- }\r
2724
- table.dataTable.order-column > tbody tr > .sorting_1,\r
2725
- table.dataTable.order-column > tbody tr > .sorting_2,\r
2726
- table.dataTable.order-column > tbody tr > .sorting_3,\r
2727
- table.dataTable.display > tbody tr > .sorting_1,\r
2728
- table.dataTable.display > tbody tr > .sorting_2,\r
2729
- table.dataTable.display > tbody tr > .sorting_3 {\r
2730
- @apply bg-muted;\r
2731
- }\r
2732
- table.dataTable.order-column > tbody tr.selected > .sorting_1,\r
2733
- table.dataTable.order-column > tbody tr.selected > .sorting_2,\r
2734
- table.dataTable.order-column > tbody tr.selected > .sorting_3,\r
2735
- table.dataTable.display > tbody tr.selected > .sorting_1,\r
2736
- table.dataTable.display > tbody tr.selected > .sorting_2,\r
2737
- table.dataTable.display > tbody tr.selected > .sorting_3 {\r
2738
- @apply !bg-primary/10;\r
2739
- }\r
2740
- table.dataTable.display > tbody > tr.odd > .sorting_1,\r
2741
- table.dataTable.order-column.stripe > tbody > tr.odd > .sorting_1 {\r
2742
- @apply bg-muted/50;\r
2743
- }\r
2744
- table.dataTable.display > tbody > tr.odd > .sorting_2,\r
2745
- table.dataTable.order-column.stripe > tbody > tr.odd > .sorting_2 {\r
2746
- @apply bg-muted/30;\r
2747
- }\r
2748
- table.dataTable.display > tbody > tr.odd > .sorting_3,\r
2749
- table.dataTable.order-column.stripe > tbody > tr.odd > .sorting_3 {\r
2750
- @apply bg-muted/10;\r
2751
- }\r
2752
- table.dataTable.display > tbody > tr.odd.selected > .sorting_1,\r
2753
- table.dataTable.order-column.stripe > tbody > tr.odd.selected > .sorting_1 {\r
2754
- @apply bg-muted/50;\r
2755
- }\r
2756
- table.dataTable.display > tbody > tr.odd.selected > .sorting_2,\r
2757
- table.dataTable.order-column.stripe > tbody > tr.odd.selected > .sorting_2 {\r
2758
- @apply bg-muted/30;\r
2759
- }\r
2760
- table.dataTable.display > tbody > tr.odd.selected > .sorting_3,\r
2761
- table.dataTable.order-column.stripe > tbody > tr.odd.selected > .sorting_3 {\r
2762
- @apply bg-muted/10;\r
2763
- }\r
2764
- table.dataTable.display > tbody > tr.even > .sorting_1,\r
2765
- table.dataTable.order-column.stripe > tbody > tr.even > .sorting_1 {\r
2766
- @apply bg-muted/50;\r
2767
- }\r
2768
- table.dataTable.display > tbody > tr.even > .sorting_2,\r
2769
- table.dataTable.order-column.stripe > tbody > tr.even > .sorting_2 {\r
2770
- @apply bg-muted/30;\r
2771
- }\r
2772
- table.dataTable.display > tbody > tr.even > .sorting_3,\r
2773
- table.dataTable.order-column.stripe > tbody > tr.even > .sorting_3 {\r
2774
- @apply bg-muted/10;\r
2775
- }\r
2776
- table.dataTable.display > tbody > tr.even.selected > .sorting_1,\r
2777
- table.dataTable.order-column.stripe > tbody > tr.even.selected > .sorting_1 {\r
2778
- @apply bg-primary/10;\r
2779
- }\r
2780
- table.dataTable.display > tbody > tr.even.selected > .sorting_2,\r
2781
- table.dataTable.order-column.stripe > tbody > tr.even.selected > .sorting_2 {\r
2782
- @apply bg-primary/10;\r
2783
- }\r
2784
- table.dataTable.display > tbody > tr.even.selected > .sorting_3,\r
2785
- table.dataTable.order-column.stripe > tbody > tr.even.selected > .sorting_3 {\r
2786
- @apply bg-primary/10;\r
2787
- }\r
2788
- table.dataTable.display tbody tr:hover > .sorting_1,\r
2789
- table.dataTable.order-column.hover tbody tr:hover > .sorting_1 {\r
2790
- @apply bg-muted;\r
2791
- }\r
2792
- table.dataTable.display tbody tr:hover > .sorting_2,\r
2793
- table.dataTable.order-column.hover tbody tr:hover > .sorting_2 {\r
2794
- @apply bg-muted;\r
2795
- }\r
2796
- table.dataTable.display tbody tr:hover > .sorting_3,\r
2797
- table.dataTable.order-column.hover tbody tr:hover > .sorting_3 {\r
2798
- @apply bg-muted;\r
2799
- }\r
2800
- table.dataTable.display tbody tr:hover.selected > .sorting_1,\r
2801
- table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_1 {\r
2802
- @apply bg-primary/10;\r
2803
- }\r
2804
- table.dataTable.display tbody tr:hover.selected > .sorting_2,\r
2805
- table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_2 {\r
2806
- @apply bg-primary/10;\r
2807
- }\r
2808
- table.dataTable.display tbody tr:hover.selected > .sorting_3,\r
2809
- table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_3 {\r
2810
- @apply bg-primary/10;\r
2811
- }\r
2812
- table.dataTable.no-footer {\r
2813
- @apply border-b-0;\r
2814
- }\r
2815
- table.dataTable.compact thead th,\r
2816
- table.dataTable.compact thead td,\r
2817
- table.dataTable.compact tfoot th,\r
2818
- table.dataTable.compact tfoot td,\r
2819
- table.dataTable.compact tbody th,\r
2820
- table.dataTable.compact tbody td {\r
2821
- @apply px-4 py-2;\r
2822
- }\r
2823
- \r
2824
- table.dataTable th,\r
2825
- table.dataTable td {\r
2826
- @apply box-content border-y;\r
2827
- }\r
2828
- \r
2829
- table.dataTable tr:last-child td {\r
2830
- @apply !border-b-0;\r
2831
- }\r
2832
- \r
2833
- /* Control feature layout */\r
2834
- .dataTables_wrapper {\r
2835
- @apply w-full overflow-x-auto;\r
2836
- }\r
2837
- \r
2838
- /* Export button styles */\r
2839
- .dataTables_wrapper .dt-buttons {\r
2840
- @apply inline-flex flex-wrap items-center gap-2;\r
2841
- button {\r
2842
- @apply inline-flex h-9 items-center gap-2 whitespace-nowrap rounded-md border bg-background px-3 text-sm text-muted-foreground hover:bg-muted focus:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background;\r
2843
- }\r
2844
- }\r
2845
- \r
2846
- /* Copy modal */\r
2847
- .dt-button-info {\r
2848
- @apply fixed inset-0 z-50 flex flex-col items-center justify-center bg-background/50 backdrop-blur;\r
2849
- }\r
2850
- \r
2851
- .dataTables_wrapper .dataTables_length {\r
2852
- label {\r
2853
- @apply inline-flex items-center gap-2 text-sm font-normal text-muted-foreground;\r
2854
- select {\r
2855
- @apply h-9 w-[70px] cursor-pointer rounded-md border border-border bg-background px-2 py-1 transition focus:border-primary focus:outline-none focus-visible:border-input focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background sm:text-sm;\r
2856
- }\r
2857
- }\r
2858
- }\r
2859
- .dataTables_wrapper .dataTables_filter {\r
2860
- label {\r
2861
- @apply inline-flex w-full cursor-pointer items-center gap-2 text-sm font-normal text-muted-foreground;\r
2862
- input {\r
2863
- @apply h-9 w-full rounded-md border border-border bg-background px-2 py-1 transition focus:border-primary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:ring-offset-background focus-visible:border-input sm:text-sm;\r
2864
- }\r
2865
- }\r
2866
- }\r
2867
- .dataTables_wrapper .dataTables_info {\r
2868
- @apply flex items-center gap-3 text-sm !text-muted-foreground;\r
2869
- }\r
2870
- .dataTables_wrapper .dataTables_paginate {\r
2871
- .paginate_button {\r
2872
- @apply ml-1 box-border inline-flex h-9 min-w-[36px] cursor-pointer items-center justify-center rounded bg-transparent px-3 py-2 text-center text-sm focus:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background;\r
2873
- }\r
2874
- }\r
2875
- .dataTables_wrapper .dataTables_paginate .paginate_button.current,\r
2876
- .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {\r
2877
- @apply bg-muted;\r
2878
- }\r
2879
- .dataTables_wrapper .dataTables_paginate .paginate_button.disabled,\r
2880
- .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover,\r
2881
- .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:active {\r
2882
- @apply pointer-events-none opacity-50;\r
2883
- }\r
2884
- .dataTables_wrapper .dataTables_paginate .paginate_button:hover {\r
2885
- @apply bg-muted;\r
2886
- }\r
2887
- .dataTables_wrapper .dataTables_paginate .paginate_button:active {\r
2888
- @apply bg-muted;\r
2889
- }\r
2890
- .dataTables_wrapper .dataTables_paginate .ellipsis {\r
2891
- @apply inline-flex h-8 min-w-[32px] items-start justify-center text-sm;\r
2892
- }\r
2893
- .dataTables_wrapper .dataTables_scroll {\r
2894
- clear: both;\r
2895
- }\r
2896
- .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody {\r
2897
- -webkit-overflow-scrolling: touch;\r
2898
- }\r
2899
- .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > th,\r
2900
- .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > td,\r
2901
- .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > th,\r
2902
- .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > td {\r
2903
- vertical-align: middle;\r
2904
- }\r
2905
- .dataTables_wrapper\r
2906
- .dataTables_scroll\r
2907
- div.dataTables_scrollBody\r
2908
- > table\r
2909
- > thead\r
2910
- > tr\r
2911
- > th\r
2912
- > div.dataTables_sizing,\r
2913
- .dataTables_wrapper\r
2914
- .dataTables_scroll\r
2915
- div.dataTables_scrollBody\r
2916
- > table\r
2917
- > thead\r
2918
- > tr\r
2919
- > td\r
2920
- > div.dataTables_sizing,\r
2921
- .dataTables_wrapper\r
2922
- .dataTables_scroll\r
2923
- div.dataTables_scrollBody\r
2924
- > table\r
2925
- > tbody\r
2926
- > tr\r
2927
- > th\r
2928
- > div.dataTables_sizing,\r
2929
- .dataTables_wrapper\r
2930
- .dataTables_scroll\r
2931
- div.dataTables_scrollBody\r
2932
- > table\r
2933
- > tbody\r
2934
- > tr\r
2935
- > td\r
2936
- > div.dataTables_sizing {\r
2937
- height: 0;\r
2938
- overflow: hidden;\r
2939
- margin: 0 !important;\r
2940
- padding: 0 !important;\r
2941
- }\r
2942
- .dataTables_wrapper.no-footer .dataTables_scrollBody {\r
2943
- @apply border-b;\r
2944
- }\r
2945
- .dataTables_wrapper.no-footer div.dataTables_scrollHead table.dataTable,\r
2946
- .dataTables_wrapper.no-footer div.dataTables_scrollBody > table {\r
2947
- border-bottom: none;\r
2948
- }\r
2949
- .dataTables_wrapper:after {\r
2950
- visibility: hidden;\r
2951
- display: block;\r
2952
- content: "";\r
2953
- clear: both;\r
2954
- height: 0;\r
2955
- }\r
2956
- \r
2957
- /* \r
2958
- responsive styles\r
2959
- */\r
2960
- table.dataTable.dtr-inline.collapsed > tbody > tr > td.child,\r
2961
- table.dataTable.dtr-inline.collapsed > tbody > tr > th.child,\r
2962
- table.dataTable.dtr-inline.collapsed > tbody > tr > td.dataTables_empty {\r
2963
- cursor: default !important;\r
2964
- }\r
2965
- table.dataTable.dtr-inline.collapsed > tbody > tr > td.child:before,\r
2966
- table.dataTable.dtr-inline.collapsed > tbody > tr > th.child:before,\r
2967
- table.dataTable.dtr-inline.collapsed > tbody > tr > td.dataTables_empty:before {\r
2968
- display: none !important;\r
2969
- }\r
2970
- table.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control,\r
2971
- table.dataTable.dtr-inline.collapsed > tbody > tr > th.dtr-control {\r
2972
- cursor: pointer;\r
2973
- }\r
2974
- \r
2975
- table.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control:before,\r
2976
- table.dataTable.dtr-inline.collapsed > tbody > tr > th.dtr-control:before {\r
2977
- @apply mr-2 inline-flex h-4 w-4 bg-[url('https://api.iconify.design/lucide:chevron-right.svg')] bg-contain bg-center bg-no-repeat pb-[3px] content-[''] dark:bg-[url('https://api.iconify.design/lucide:chevron-right.svg?color=white')];\r
2978
- }\r
2979
- table.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control.arrow-right::before,\r
2980
- table.dataTable.dtr-inline.collapsed > tbody > tr > th.dtr-control.arrow-right::before {\r
2981
- content: "\u25C4";\r
2982
- }\r
2983
- table.dataTable.dtr-inline.collapsed > tbody > tr.parent > td.dtr-control:before,\r
2984
- table.dataTable.dtr-inline.collapsed > tbody > tr.parent > th.dtr-control:before {\r
2985
- @apply mr-2 inline-block h-4 w-4 bg-[url('https://api.iconify.design/lucide:chevron-down.svg')] bg-contain bg-center bg-no-repeat content-[''] dark:bg-[url('https://api.iconify.design/lucide:chevron-down.svg?color=white')];\r
2986
- }\r
2987
- table.dataTable.dtr-inline.collapsed.compact > tbody > tr > td.dtr-control,\r
2988
- table.dataTable.dtr-inline.collapsed.compact > tbody > tr > th.dtr-control {\r
2989
- padding-left: 0.333em;\r
2990
- }\r
2991
- table.dataTable.dtr-column > tbody > tr > td.dtr-control,\r
2992
- table.dataTable.dtr-column > tbody > tr > th.dtr-control,\r
2993
- table.dataTable.dtr-column > tbody > tr > td.control,\r
2994
- table.dataTable.dtr-column > tbody > tr > th.control {\r
2995
- cursor: pointer;\r
2996
- }\r
2997
- table.dataTable.dtr-column > tbody > tr > td.dtr-control:before,\r
2998
- table.dataTable.dtr-column > tbody > tr > th.dtr-control:before,\r
2999
- table.dataTable.dtr-column > tbody > tr > td.control:before,\r
3000
- table.dataTable.dtr-column > tbody > tr > th.control:before {\r
3001
- @apply mr-2 inline-flex h-4 w-4 bg-[url('https://api.iconify.design/lucide:chevron-right.svg')] bg-contain bg-center bg-no-repeat pb-[3px] content-[''] dark:bg-[url('https://api.iconify.design/lucide:chevron-right.svg?color=white')];\r
3002
- }\r
3003
- table.dataTable.dtr-column > tbody > tr > td.dtr-control.arrow-right::before,\r
3004
- table.dataTable.dtr-column > tbody > tr > th.dtr-control.arrow-right::before,\r
3005
- table.dataTable.dtr-column > tbody > tr > td.control.arrow-right::before,\r
3006
- table.dataTable.dtr-column > tbody > tr > th.control.arrow-right::before {\r
3007
- content: "\u25C4";\r
3008
- }\r
3009
- table.dataTable.dtr-column > tbody > tr.parent td.dtr-control:before,\r
3010
- table.dataTable.dtr-column > tbody > tr.parent th.dtr-control:before,\r
3011
- table.dataTable.dtr-column > tbody > tr.parent td.control:before,\r
3012
- table.dataTable.dtr-column > tbody > tr.parent th.control:before {\r
3013
- @apply mr-2 inline-block h-4 w-4 bg-[url('https://api.iconify.design/lucide:chevron-down.svg')] bg-contain bg-center bg-no-repeat content-[''] dark:bg-[url('https://api.iconify.design/lucide:chevron-down.svg?color=white')];\r
3014
- }\r
3015
- \r
3016
- table.dataTable > tbody td.child {\r
3017
- @apply p-0;\r
3018
- }\r
3019
- table.dataTable > tbody > tr.child:hover,\r
3020
- table.dataTable > tbody > tr.child:hover > td.child {\r
3021
- background: transparent !important;\r
3022
- }\r
3023
- table.dataTable > tbody > tr.child ul.dtr-details {\r
3024
- @apply m-0 block w-full list-none p-0;\r
3025
- }\r
3026
- table.dataTable > tbody > tr.child ul.dtr-details > li {\r
3027
- @apply border-b p-3 px-7 hover:bg-muted;\r
3028
- }\r
3029
- \r
3030
- table.dataTable > tbody > tr.child ul.dtr-details > li:last-child {\r
3031
- @apply border-b-0;\r
3032
- }\r
3033
- table.dataTable > tbody > tr.child span.dtr-title {\r
3034
- @apply inline-block min-w-[80px] font-bold;\r
3035
- }\r
3036
- div.dtr-modal {\r
3037
- position: fixed;\r
3038
- box-sizing: border-box;\r
3039
- top: 0;\r
3040
- left: 0;\r
3041
- height: 100%;\r
3042
- width: 100%;\r
3043
- z-index: 100;\r
3044
- padding: 10em 1em;\r
3045
- }\r
3046
- div.dtr-modal div.dtr-modal-display {\r
3047
- position: absolute;\r
3048
- top: 0;\r
3049
- left: 0;\r
3050
- bottom: 0;\r
3051
- right: 0;\r
3052
- width: 50%;\r
3053
- height: fit-content;\r
3054
- max-height: 75%;\r
3055
- overflow: auto;\r
3056
- margin: auto;\r
3057
- z-index: 102;\r
3058
- overflow: auto;\r
3059
- background-color: #f5f5f7;\r
3060
- border: 1px solid black;\r
3061
- border-radius: 0.5em;\r
3062
- box-shadow: 0 12px 30px rgba(0, 0, 0, 0.6);\r
3063
- }\r
3064
- div.dtr-modal div.dtr-modal-content {\r
3065
- position: relative;\r
3066
- padding: 2.5em;\r
3067
- }\r
3068
- div.dtr-modal div.dtr-modal-content h2 {\r
3069
- margin-top: 0;\r
3070
- }\r
3071
- div.dtr-modal div.dtr-modal-close {\r
3072
- position: absolute;\r
3073
- top: 6px;\r
3074
- right: 6px;\r
3075
- width: 22px;\r
3076
- height: 22px;\r
3077
- text-align: center;\r
3078
- border-radius: 3px;\r
3079
- cursor: pointer;\r
3080
- z-index: 12;\r
3081
- }\r
3082
- div.dtr-modal div.dtr-modal-background {\r
3083
- position: fixed;\r
3084
- top: 0;\r
3085
- left: 0;\r
3086
- right: 0;\r
3087
- bottom: 0;\r
3088
- z-index: 101;\r
3089
- background: rgba(0, 0, 0, 0.6);\r
3090
- }\r
3091
- \r
3092
- /* Search Builder Styles */\r
3093
- div.dt-button-collection {\r
3094
- overflow: visible !important;\r
3095
- z-index: 2002 !important;\r
3096
- }\r
3097
- div.dt-button-collection div.dtsb-searchBuilder {\r
3098
- padding-left: 1em !important;\r
3099
- padding-right: 1em !important;\r
3100
- }\r
3101
- div.dt-button-collection.dtb-collection-closeable div.dtsb-titleRow {\r
3102
- padding-right: 40px;\r
3103
- }\r
3104
- .dtsb-greyscale {\r
3105
- @apply !border;\r
3106
- }\r
3107
- div.dtsb-logicContainer .dtsb-greyscale {\r
3108
- border: none !important;\r
3109
- }\r
3110
- div.dtsb-searchBuilder {\r
3111
- @apply mb-4 cursor-default justify-evenly text-left;\r
3112
- }\r
3113
- div.dtsb-searchBuilder button.dtsb-button,\r
3114
- div.dtsb-searchBuilder select {\r
3115
- @apply text-sm;\r
3116
- }\r
3117
- div.dtsb-searchBuilder div.dtsb-titleRow {\r
3118
- @apply mb-3 flex items-center justify-between;\r
3119
- }\r
3120
- div.dtsb-searchBuilder div.dtsb-titleRow div.dtsb-title {\r
3121
- @apply inline-block text-sm font-normal;\r
3122
- }\r
3123
- div.dtsb-searchBuilder div.dtsb-titleRow div.dtsb-title:empty {\r
3124
- display: inline;\r
3125
- }\r
3126
- div.dtsb-searchBuilder div.dtsb-vertical .dtsb-value,\r
3127
- div.dtsb-searchBuilder div.dtsb-vertical .dtsb-data,\r
3128
- div.dtsb-searchBuilder div.dtsb-vertical .dtsb-condition {\r
3129
- display: block;\r
3130
- }\r
3131
- div.dtsb-searchBuilder div.dtsb-group {\r
3132
- @apply relative clear-both mb-4;\r
3133
- }\r
3134
- div.dtsb-searchBuilder div.dtsb-group button.dtsb-search {\r
3135
- float: right;\r
3136
- }\r
3137
- div.dtsb-searchBuilder div.dtsb-group button.dtsb-clearGroup {\r
3138
- margin: 2px;\r
3139
- text-align: center;\r
3140
- padding: 0;\r
3141
- }\r
3142
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-logicContainer {\r
3143
- -webkit-transform: rotate(90deg);\r
3144
- -moz-transform: rotate(90deg);\r
3145
- -o-transform: rotate(90deg);\r
3146
- -ms-transform: rotate(90deg);\r
3147
- transform: rotate(90deg);\r
3148
- position: absolute;\r
3149
- margin-top: 0.8em;\r
3150
- margin-right: 0.8em;\r
3151
- }\r
3152
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria {\r
3153
- margin-bottom: 0.8em;\r
3154
- display: flex;\r
3155
- justify-content: flex-start;\r
3156
- flex-flow: row wrap;\r
3157
- }\r
3158
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria select.dtsb-dropDown,\r
3159
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria input.dtsb-input {\r
3160
- padding: 0.4em;\r
3161
- margin-right: 0.8em;\r
3162
- min-width: 5em;\r
3163
- max-width: 20em;\r
3164
- color: inherit;\r
3165
- }\r
3166
- div.dtsb-searchBuilder\r
3167
- div.dtsb-group\r
3168
- div.dtsb-criteria\r
3169
- select.dtsb-dropDown\r
3170
- option.dtsb-notItalic,\r
3171
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria input.dtsb-input option.dtsb-notItalic {\r
3172
- font-style: normal;\r
3173
- }\r
3174
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria select.dtsb-italic {\r
3175
- font-style: italic;\r
3176
- }\r
3177
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-inputCont {\r
3178
- flex: 1;\r
3179
- white-space: nowrap;\r
3180
- }\r
3181
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-inputCont span.dtsp-joiner {\r
3182
- margin-right: 0.8em;\r
3183
- }\r
3184
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-inputCont input.dtsb-value {\r
3185
- width: 33%;\r
3186
- }\r
3187
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-inputCont select,\r
3188
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-inputCont input {\r
3189
- height: 100%;\r
3190
- box-sizing: border-box;\r
3191
- }\r
3192
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-buttonContainer {\r
3193
- margin-left: auto;\r
3194
- display: inline-block;\r
3195
- }\r
3196
- div.dtsb-searchBuilder\r
3197
- div.dtsb-group\r
3198
- div.dtsb-criteria\r
3199
- div.dtsb-buttonContainer\r
3200
- button.dtsb-delete,\r
3201
- div.dtsb-searchBuilder\r
3202
- div.dtsb-group\r
3203
- div.dtsb-criteria\r
3204
- div.dtsb-buttonContainer\r
3205
- button.dtsb-right,\r
3206
- div.dtsb-searchBuilder\r
3207
- div.dtsb-group\r
3208
- div.dtsb-criteria\r
3209
- div.dtsb-buttonContainer\r
3210
- button.dtsb-left {\r
3211
- margin-right: 0.8em;\r
3212
- }\r
3213
- div.dtsb-searchBuilder\r
3214
- div.dtsb-group\r
3215
- div.dtsb-criteria\r
3216
- div.dtsb-buttonContainer\r
3217
- button.dtsb-delete:last-child,\r
3218
- div.dtsb-searchBuilder\r
3219
- div.dtsb-group\r
3220
- div.dtsb-criteria\r
3221
- div.dtsb-buttonContainer\r
3222
- button.dtsb-right:last-child,\r
3223
- div.dtsb-searchBuilder\r
3224
- div.dtsb-group\r
3225
- div.dtsb-criteria\r
3226
- div.dtsb-buttonContainer\r
3227
- button.dtsb-left:last-child {\r
3228
- margin-right: 0;\r
3229
- }\r
3230
- @media screen and (max-width: 550px) {\r
3231
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria {\r
3232
- display: flex;\r
3233
- flex-flow: none;\r
3234
- flex-direction: column;\r
3235
- justify-content: flex-start;\r
3236
- padding-right: calc(35px + 0.8em);\r
3237
- margin-bottom: 0px;\r
3238
- }\r
3239
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria:not(:first-child),\r
3240
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria:not(:nth-child(2)),\r
3241
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria:not(:last-child) {\r
3242
- padding-top: 0.8em;\r
3243
- }\r
3244
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria:first-child,\r
3245
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria:nth-child(2),\r
3246
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria:last-child {\r
3247
- padding-top: 0em;\r
3248
- }\r
3249
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria select.dtsb-dropDown,\r
3250
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria input.dtsb-input {\r
3251
- max-width: none;\r
3252
- width: 100%;\r
3253
- margin-bottom: 0.8em;\r
3254
- margin-right: 0.8em;\r
3255
- }\r
3256
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-inputCont {\r
3257
- margin-right: 0.8em;\r
3258
- }\r
3259
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-buttonContainer {\r
3260
- position: absolute;\r
3261
- width: 35px;\r
3262
- display: flex;\r
3263
- flex-wrap: wrap-reverse;\r
3264
- right: 0;\r
3265
- }\r
3266
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-buttonContainer button {\r
3267
- margin-right: 0px !important;\r
3268
- }\r
3269
- }\r
3270
- div.dtsb-searchBuilder button,\r
3271
- div.dtsb-searchBuilder select.dtsb-dropDown,\r
3272
- div.dtsb-searchBuilder input {\r
3273
- @apply bg-background;\r
3274
- }\r
3275
- div.dtsb-searchBuilder button.dtsb-button {\r
3276
- @apply relative box-border inline-flex h-9 cursor-pointer select-none items-center justify-center overflow-hidden text-ellipsis whitespace-nowrap rounded-md border bg-background px-3 py-2 text-sm font-normal text-muted-foreground focus:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background;\r
3277
- }\r
3278
- div.dtsb-searchBuilder button.dtsb-button:hover {\r
3279
- @apply cursor-pointer bg-muted;\r
3280
- }\r
3281
- div.dtsb-searchBuilder div.dtsb-logicContainer {\r
3282
- @apply overflow-hidden rounded-none border;\r
3283
- }\r
3284
- div.dtsb-searchBuilder div.dtsb-logicContainer button {\r
3285
- @apply rounded-md border-transparent bg-transparent;\r
3286
- }\r
3287
- div.dtsb-searchBuilder button.dtsb-clearGroup {\r
3288
- min-width: 2em;\r
3289
- padding: 0;\r
3290
- }\r
3291
- div.dtsb-searchBuilder button.dtsb-iptbtn {\r
3292
- min-width: 100px;\r
3293
- text-align: left;\r
3294
- }\r
3295
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-logicContainer {\r
3296
- @apply flex flex-row content-start items-start justify-start rounded-md;\r
3297
- }\r
3298
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-logicContainer button.dtsb-logic {\r
3299
- @apply m-0 shrink-0 grow rounded-none border-0;\r
3300
- flex-basis: 3em;\r
3301
- }\r
3302
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-logicContainer button.dtsb-clearGroup {\r
3303
- border: none;\r
3304
- border-radius: 0px;\r
3305
- width: 2em;\r
3306
- margin: 0px;\r
3307
- }\r
3308
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria select.dtsb-dropDown,\r
3309
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria input.dtsb-input {\r
3310
- @apply rounded-md border;\r
3311
- }\r
3312
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria select.dtsb-condition,\r
3313
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria select.dtsb-data,\r
3314
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria select.dtsb-value {\r
3315
- @apply rounded-md border border-input bg-background text-sm transition focus:border-primary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:ring-offset-background focus-visible:border-input;\r
3316
- }\r
3317
- \r
3318
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria input.dtsb-value {\r
3319
- @apply rounded-md border border-input bg-background text-sm transition focus:border-primary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:ring-offset-background focus-visible:border-input;\r
3320
- }\r
3321
- \r
3322
- /* Col vis styles */\r
3323
- .dt-button-background {\r
3324
- @apply fixed inset-0 z-50 flex flex-col items-center justify-center bg-background/50 backdrop-blur-sm;\r
3325
- }\r
3326
- .dt-button-down-arrow {\r
3327
- @apply text-[10px];\r
3328
- }\r
3329
- .dt-button-collection {\r
3330
- @apply relative;\r
3331
- [role="menu"] {\r
3332
- @apply absolute -left-40 top-7 flex w-[300px] flex-wrap gap-x-3 gap-y-2 rounded-md border bg-background p-2 shadow lg:w-[500px];\r
3333
- button {\r
3334
- @apply h-7 px-2 text-xs;\r
3335
- }\r
3336
- .dt-button.buttons-columnVisibility.dt-button-active {\r
3337
- @apply bg-primary text-primary-foreground;\r
3338
- }\r
3339
- }\r
3340
- }\r
3341
- </style>\r
2353
+ `}],files:[{fileName:"Datatable.client.vue",dirPath:"components/UI",fileContent:`<template>
2354
+ <DataTable ref="table" :data="data" :class="props.class" :options="options">
2355
+ <slot></slot>
2356
+ </DataTable>
2357
+ </template>
2358
+
2359
+ <script lang="ts" setup generic="T">
2360
+ import type DataTableRef from "datatables.net";
2361
+ import type { Config } from "datatables.net/types/types";
2362
+
2363
+ const table = shallowRef<{ dt: InstanceType<typeof DataTableRef<T[]>> } | null>(null);
2364
+
2365
+ const props = withDefaults(
2366
+ defineProps<{
2367
+ data?: Config["data"];
2368
+ class?: any;
2369
+ options?: Config;
2370
+ }>(),
2371
+ {
2372
+ data: () => [],
2373
+ class: "nowrap hover order-column row-border stripe display",
2374
+ options: () => ({}),
2375
+ }
2376
+ );
2377
+
2378
+ const emits = defineEmits<{
2379
+ ready: [any];
2380
+ }>();
2381
+
2382
+ onMounted(() => {
2383
+ nextTick(() => {
2384
+ emits("ready", table.value?.dt);
2385
+ });
2386
+ });
2387
+ </script>
2388
+
2389
+ <style>
2390
+ :root {
2391
+ --dt-row-selected: 262.1, 83.3%, 57.8%;
2392
+ --dt-row-selected-text: 210, 20%, 98%;
2393
+ --dt-row-selected-link: 262.1, 83.3%, 57.8%;
2394
+ --dt-row-stripe: 0, 0%, 100%;
2395
+ --dt-row-hover: 0, 0%, 100%;
2396
+ --dt-column-ordering: 0, 0%, 100%;
2397
+ --dt-border: 220, 13%, 91%;
2398
+ --dt-foreground: 224, 71.4%, 4.1%;
2399
+ }
2400
+
2401
+ .dark {
2402
+ --dt-row-selected: 263.4, 70%, 50.4%;
2403
+ --dt-row-selected-text: 210, 20%, 98%;
2404
+ --dt-row-selected-link: 263.4, 70%, 50.4%;
2405
+ --dt-row-stripe: 224, 71.4%, 4.1%;
2406
+ --dt-row-hover: 224, 71.4%, 4.1%;
2407
+ --dt-column-ordering: 224, 71.4%, 4.1%;
2408
+ --dt-border: 215, 27.9%, 16.9%;
2409
+ --dt-foreground: 224, 71.4%, 4.1%;
2410
+ }
2411
+
2412
+ table.dataTable td.dt-control {
2413
+ text-align: center;
2414
+ cursor: pointer;
2415
+ }
2416
+ table.dataTable td.dt-control:before {
2417
+ display: inline-block;
2418
+ color: hsla(var(--dt-foreground), 0.5);
2419
+ content: "\u25BA";
2420
+ }
2421
+ table.dataTable tr.dt-hasChild td.dt-control:before {
2422
+ content: "\u25BC";
2423
+ }
2424
+
2425
+ table.dataTable thead > tr > th.sorting,
2426
+ table.dataTable thead > tr > th.sorting_asc,
2427
+ table.dataTable thead > tr > th.sorting_desc,
2428
+ table.dataTable thead > tr > th.sorting_asc_disabled,
2429
+ table.dataTable thead > tr > th.sorting_desc_disabled,
2430
+ table.dataTable thead > tr > td.sorting,
2431
+ table.dataTable thead > tr > td.sorting_asc,
2432
+ table.dataTable thead > tr > td.sorting_desc,
2433
+ table.dataTable thead > tr > td.sorting_asc_disabled,
2434
+ table.dataTable thead > tr > td.sorting_desc_disabled {
2435
+ @apply relative cursor-pointer pr-7;
2436
+ }
2437
+ table.dataTable thead > tr > th.sorting:before,
2438
+ table.dataTable thead > tr > th.sorting:after,
2439
+ table.dataTable thead > tr > th.sorting_asc:before,
2440
+ table.dataTable thead > tr > th.sorting_asc:after,
2441
+ table.dataTable thead > tr > th.sorting_desc:before,
2442
+ table.dataTable thead > tr > th.sorting_desc:after,
2443
+ table.dataTable thead > tr > th.sorting_asc_disabled:before,
2444
+ table.dataTable thead > tr > th.sorting_asc_disabled:after,
2445
+ table.dataTable thead > tr > th.sorting_desc_disabled:before,
2446
+ table.dataTable thead > tr > th.sorting_desc_disabled:after,
2447
+ table.dataTable thead > tr > td.sorting:before,
2448
+ table.dataTable thead > tr > td.sorting:after,
2449
+ table.dataTable thead > tr > td.sorting_asc:before,
2450
+ table.dataTable thead > tr > td.sorting_asc:after,
2451
+ table.dataTable thead > tr > td.sorting_desc:before,
2452
+ table.dataTable thead > tr > td.sorting_desc:after,
2453
+ table.dataTable thead > tr > td.sorting_asc_disabled:before,
2454
+ table.dataTable thead > tr > td.sorting_asc_disabled:after,
2455
+ table.dataTable thead > tr > td.sorting_desc_disabled:before,
2456
+ table.dataTable thead > tr > td.sorting_desc_disabled:after {
2457
+ @apply absolute right-2.5 block text-xs leading-3 opacity-25;
2458
+ }
2459
+ table.dataTable thead > tr > th.sorting:before,
2460
+ table.dataTable thead > tr > th.sorting_asc:before,
2461
+ table.dataTable thead > tr > th.sorting_desc:before,
2462
+ table.dataTable thead > tr > th.sorting_asc_disabled:before,
2463
+ table.dataTable thead > tr > th.sorting_desc_disabled:before,
2464
+ table.dataTable thead > tr > td.sorting:before,
2465
+ table.dataTable thead > tr > td.sorting_asc:before,
2466
+ table.dataTable thead > tr > td.sorting_desc:before,
2467
+ table.dataTable thead > tr > td.sorting_asc_disabled:before,
2468
+ table.dataTable thead > tr > td.sorting_desc_disabled:before {
2469
+ @apply bottom-[43%] h-4 w-4 bg-[url('https://api.iconify.design/lucide:chevron-up.svg')] bg-contain bg-center bg-no-repeat content-[''] dark:bg-[url('https://api.iconify.design/lucide:chevron-up.svg?color=white')];
2470
+ }
2471
+ table.dataTable thead > tr > th.sorting:after,
2472
+ table.dataTable thead > tr > th.sorting_asc:after,
2473
+ table.dataTable thead > tr > th.sorting_desc:after,
2474
+ table.dataTable thead > tr > th.sorting_asc_disabled:after,
2475
+ table.dataTable thead > tr > th.sorting_desc_disabled:after,
2476
+ table.dataTable thead > tr > td.sorting:after,
2477
+ table.dataTable thead > tr > td.sorting_asc:after,
2478
+ table.dataTable thead > tr > td.sorting_desc:after,
2479
+ table.dataTable thead > tr > td.sorting_asc_disabled:after,
2480
+ table.dataTable thead > tr > td.sorting_desc_disabled:after {
2481
+ @apply top-[43%] h-4 w-4 bg-[url('https://api.iconify.design/lucide:chevron-down.svg')] bg-contain bg-center bg-no-repeat content-[''] dark:bg-[url('https://api.iconify.design/lucide:chevron-down.svg?color=white')];
2482
+ }
2483
+ table.dataTable thead > tr > th.sorting_asc:before,
2484
+ table.dataTable thead > tr > th.sorting_desc:after,
2485
+ table.dataTable thead > tr > td.sorting_asc:before,
2486
+ table.dataTable thead > tr > td.sorting_desc:after {
2487
+ @apply opacity-80;
2488
+ }
2489
+ table.dataTable thead > tr > th.sorting_desc_disabled:after,
2490
+ table.dataTable thead > tr > th.sorting_asc_disabled:before,
2491
+ table.dataTable thead > tr > td.sorting_desc_disabled:after,
2492
+ table.dataTable thead > tr > td.sorting_asc_disabled:before {
2493
+ @apply hidden;
2494
+ }
2495
+ table.dataTable thead > tr > th:active,
2496
+ table.dataTable thead > tr > td:active {
2497
+ @apply outline-none;
2498
+ }
2499
+
2500
+ div.dataTables_scrollBody > table.dataTable > thead > tr > th:before,
2501
+ div.dataTables_scrollBody > table.dataTable > thead > tr > th:after,
2502
+ div.dataTables_scrollBody > table.dataTable > thead > tr > td:before,
2503
+ div.dataTables_scrollBody > table.dataTable > thead > tr > td:after {
2504
+ @apply hidden;
2505
+ }
2506
+
2507
+ div.dataTables_processing {
2508
+ @apply absolute left-[50%] top-[50%] ml-[-100px] mt-[-26px] w-[200px] p-0.5 text-center;
2509
+ }
2510
+ div.dataTables_processing > div:last-child {
2511
+ @apply relative mx-auto my-4 h-4 w-20;
2512
+ }
2513
+ div.dataTables_processing > div:last-child > div {
2514
+ @apply absolute top-0 h-3.5 w-3.5 rounded-full;
2515
+ background: hsl(var(--dt-row-selected));
2516
+ animation-timing-function: cubic-bezier(0, 1, 1, 0);
2517
+ }
2518
+ div.dataTables_processing > div:last-child > div:nth-child(1) {
2519
+ left: 8px;
2520
+ animation: datatables-loader-1 0.6s infinite;
2521
+ }
2522
+ div.dataTables_processing > div:last-child > div:nth-child(2) {
2523
+ left: 8px;
2524
+ animation: datatables-loader-2 0.6s infinite;
2525
+ }
2526
+ div.dataTables_processing > div:last-child > div:nth-child(3) {
2527
+ left: 32px;
2528
+ animation: datatables-loader-2 0.6s infinite;
2529
+ }
2530
+ div.dataTables_processing > div:last-child > div:nth-child(4) {
2531
+ left: 56px;
2532
+ animation: datatables-loader-3 0.6s infinite;
2533
+ }
2534
+
2535
+ @keyframes datatables-loader-1 {
2536
+ 0% {
2537
+ transform: scale(0);
2538
+ }
2539
+ 100% {
2540
+ transform: scale(1);
2541
+ }
2542
+ }
2543
+ @keyframes datatables-loader-3 {
2544
+ 0% {
2545
+ transform: scale(1);
2546
+ }
2547
+ 100% {
2548
+ transform: scale(0);
2549
+ }
2550
+ }
2551
+ @keyframes datatables-loader-2 {
2552
+ 0% {
2553
+ transform: translate(0, 0);
2554
+ }
2555
+ 100% {
2556
+ transform: translate(24px, 0);
2557
+ }
2558
+ }
2559
+ table.dataTable.nowrap th,
2560
+ table.dataTable.nowrap td {
2561
+ white-space: nowrap;
2562
+ }
2563
+ table.dataTable th.dt-left,
2564
+ table.dataTable td.dt-left {
2565
+ text-align: left;
2566
+ }
2567
+ table.dataTable th.dt-center,
2568
+ table.dataTable td.dt-center,
2569
+ table.dataTable td.dataTables_empty {
2570
+ text-align: center;
2571
+ }
2572
+ table.dataTable th.dt-right,
2573
+ table.dataTable td.dt-right {
2574
+ text-align: right;
2575
+ }
2576
+ table.dataTable th.dt-justify,
2577
+ table.dataTable td.dt-justify {
2578
+ text-align: justify;
2579
+ }
2580
+ table.dataTable th.dt-nowrap,
2581
+ table.dataTable td.dt-nowrap {
2582
+ white-space: nowrap;
2583
+ }
2584
+ table.dataTable thead th,
2585
+ table.dataTable thead td,
2586
+ table.dataTable tfoot th,
2587
+ table.dataTable tfoot td {
2588
+ text-align: left;
2589
+ }
2590
+ table.dataTable thead th.dt-head-left,
2591
+ table.dataTable thead td.dt-head-left,
2592
+ table.dataTable tfoot th.dt-head-left,
2593
+ table.dataTable tfoot td.dt-head-left {
2594
+ text-align: left;
2595
+ }
2596
+ table.dataTable thead th.dt-head-center,
2597
+ table.dataTable thead td.dt-head-center,
2598
+ table.dataTable tfoot th.dt-head-center,
2599
+ table.dataTable tfoot td.dt-head-center {
2600
+ text-align: center;
2601
+ }
2602
+ table.dataTable thead th.dt-head-right,
2603
+ table.dataTable thead td.dt-head-right,
2604
+ table.dataTable tfoot th.dt-head-right,
2605
+ table.dataTable tfoot td.dt-head-right {
2606
+ text-align: right;
2607
+ }
2608
+ table.dataTable thead th.dt-head-justify,
2609
+ table.dataTable thead td.dt-head-justify,
2610
+ table.dataTable tfoot th.dt-head-justify,
2611
+ table.dataTable tfoot td.dt-head-justify {
2612
+ text-align: justify;
2613
+ }
2614
+ table.dataTable thead th.dt-head-nowrap,
2615
+ table.dataTable thead td.dt-head-nowrap,
2616
+ table.dataTable tfoot th.dt-head-nowrap,
2617
+ table.dataTable tfoot td.dt-head-nowrap {
2618
+ white-space: nowrap;
2619
+ }
2620
+ table.dataTable tbody th.dt-body-left,
2621
+ table.dataTable tbody td.dt-body-left {
2622
+ text-align: left;
2623
+ }
2624
+ table.dataTable tbody th.dt-body-center,
2625
+ table.dataTable tbody td.dt-body-center {
2626
+ text-align: center;
2627
+ }
2628
+ table.dataTable tbody th.dt-body-right,
2629
+ table.dataTable tbody td.dt-body-right {
2630
+ text-align: right;
2631
+ }
2632
+ table.dataTable tbody th.dt-body-justify,
2633
+ table.dataTable tbody td.dt-body-justify {
2634
+ text-align: justify;
2635
+ }
2636
+ table.dataTable tbody th.dt-body-nowrap,
2637
+ table.dataTable tbody td.dt-body-nowrap {
2638
+ white-space: nowrap;
2639
+ }
2640
+
2641
+ /* Table Styles */
2642
+
2643
+ table.dataTable {
2644
+ @apply w-full table-auto border-collapse;
2645
+ }
2646
+
2647
+ /* Table header styles */
2648
+ table.dataTable thead th,
2649
+ table.dataTable tfoot th {
2650
+ @apply text-left text-sm font-medium text-muted-foreground;
2651
+ }
2652
+
2653
+ table.dataTable > thead > tr > th {
2654
+ @apply border-b border-t-0 px-6 py-3;
2655
+ }
2656
+ table.dataTable > thead > tr > td {
2657
+ @apply border-b px-6 py-3 text-sm;
2658
+ }
2659
+ table.dataTable > thead > tr > th:active,
2660
+ table.dataTable > thead > tr > td:active {
2661
+ @apply outline-none;
2662
+ }
2663
+ table.dataTable > tfoot > tr > th,
2664
+ table.dataTable > tfoot > tr > td {
2665
+ @apply border-t px-6 py-3;
2666
+ }
2667
+ table.dataTable tbody tr {
2668
+ @apply bg-transparent;
2669
+ }
2670
+ table.dataTable tbody tr.selected > * {
2671
+ @apply bg-primary/10;
2672
+ }
2673
+ table.dataTable tbody tr.selected a {
2674
+ @apply text-primary;
2675
+ }
2676
+ table.dataTable tbody th,
2677
+ table.dataTable tbody td {
2678
+ @apply px-6 py-3 text-sm;
2679
+ }
2680
+ table.dataTable.row-border > tbody > tr > th,
2681
+ table.dataTable.row-border > tbody > tr > td,
2682
+ table.dataTable.display > tbody > tr > th,
2683
+ table.dataTable.display > tbody > tr > td {
2684
+ @apply border-t;
2685
+ }
2686
+ table.dataTable.row-border > tbody > tr:first-child > th,
2687
+ table.dataTable.row-border > tbody > tr:first-child > td,
2688
+ table.dataTable.display > tbody > tr:first-child > th,
2689
+ table.dataTable.display > tbody > tr:first-child > td {
2690
+ @apply border-t-0;
2691
+ }
2692
+ table.dataTable.row-border > tbody > tr.selected + tr.selected > td,
2693
+ table.dataTable.display > tbody > tr.selected + tr.selected > td {
2694
+ @apply border-t-primary/30;
2695
+ }
2696
+ table.dataTable.cell-border > tbody > tr > th,
2697
+ table.dataTable.cell-border > tbody > tr > td {
2698
+ @apply border-r border-t;
2699
+ }
2700
+ table.dataTable.cell-border > tbody > tr > th:first-child,
2701
+ table.dataTable.cell-border > tbody > tr > td:first-child {
2702
+ @apply border-l;
2703
+ }
2704
+ table.dataTable.cell-border > tbody > tr:first-child > th,
2705
+ table.dataTable.cell-border > tbody > tr:first-child > td {
2706
+ @apply border-t-0;
2707
+ }
2708
+ table.dataTable.stripe > tbody > tr.odd > *,
2709
+ table.dataTable.display > tbody > tr.odd > * {
2710
+ @apply bg-muted/50;
2711
+ }
2712
+ table.dataTable.stripe > tbody > tr.odd.selected > *,
2713
+ table.dataTable.display > tbody > tr.odd.selected > * {
2714
+ @apply bg-primary/10;
2715
+ }
2716
+ table.dataTable.hover > tbody > tr:hover > *,
2717
+ table.dataTable.display > tbody > tr:hover > * {
2718
+ @apply bg-muted;
2719
+ }
2720
+ table.dataTable.hover > tbody > tr.selected:hover > *,
2721
+ table.dataTable.display > tbody > tr.selected:hover > * {
2722
+ @apply !bg-primary/10;
2723
+ }
2724
+ table.dataTable.order-column > tbody tr > .sorting_1,
2725
+ table.dataTable.order-column > tbody tr > .sorting_2,
2726
+ table.dataTable.order-column > tbody tr > .sorting_3,
2727
+ table.dataTable.display > tbody tr > .sorting_1,
2728
+ table.dataTable.display > tbody tr > .sorting_2,
2729
+ table.dataTable.display > tbody tr > .sorting_3 {
2730
+ @apply bg-muted;
2731
+ }
2732
+ table.dataTable.order-column > tbody tr.selected > .sorting_1,
2733
+ table.dataTable.order-column > tbody tr.selected > .sorting_2,
2734
+ table.dataTable.order-column > tbody tr.selected > .sorting_3,
2735
+ table.dataTable.display > tbody tr.selected > .sorting_1,
2736
+ table.dataTable.display > tbody tr.selected > .sorting_2,
2737
+ table.dataTable.display > tbody tr.selected > .sorting_3 {
2738
+ @apply !bg-primary/10;
2739
+ }
2740
+ table.dataTable.display > tbody > tr.odd > .sorting_1,
2741
+ table.dataTable.order-column.stripe > tbody > tr.odd > .sorting_1 {
2742
+ @apply bg-muted/50;
2743
+ }
2744
+ table.dataTable.display > tbody > tr.odd > .sorting_2,
2745
+ table.dataTable.order-column.stripe > tbody > tr.odd > .sorting_2 {
2746
+ @apply bg-muted/30;
2747
+ }
2748
+ table.dataTable.display > tbody > tr.odd > .sorting_3,
2749
+ table.dataTable.order-column.stripe > tbody > tr.odd > .sorting_3 {
2750
+ @apply bg-muted/10;
2751
+ }
2752
+ table.dataTable.display > tbody > tr.odd.selected > .sorting_1,
2753
+ table.dataTable.order-column.stripe > tbody > tr.odd.selected > .sorting_1 {
2754
+ @apply bg-muted/50;
2755
+ }
2756
+ table.dataTable.display > tbody > tr.odd.selected > .sorting_2,
2757
+ table.dataTable.order-column.stripe > tbody > tr.odd.selected > .sorting_2 {
2758
+ @apply bg-muted/30;
2759
+ }
2760
+ table.dataTable.display > tbody > tr.odd.selected > .sorting_3,
2761
+ table.dataTable.order-column.stripe > tbody > tr.odd.selected > .sorting_3 {
2762
+ @apply bg-muted/10;
2763
+ }
2764
+ table.dataTable.display > tbody > tr.even > .sorting_1,
2765
+ table.dataTable.order-column.stripe > tbody > tr.even > .sorting_1 {
2766
+ @apply bg-muted/50;
2767
+ }
2768
+ table.dataTable.display > tbody > tr.even > .sorting_2,
2769
+ table.dataTable.order-column.stripe > tbody > tr.even > .sorting_2 {
2770
+ @apply bg-muted/30;
2771
+ }
2772
+ table.dataTable.display > tbody > tr.even > .sorting_3,
2773
+ table.dataTable.order-column.stripe > tbody > tr.even > .sorting_3 {
2774
+ @apply bg-muted/10;
2775
+ }
2776
+ table.dataTable.display > tbody > tr.even.selected > .sorting_1,
2777
+ table.dataTable.order-column.stripe > tbody > tr.even.selected > .sorting_1 {
2778
+ @apply bg-primary/10;
2779
+ }
2780
+ table.dataTable.display > tbody > tr.even.selected > .sorting_2,
2781
+ table.dataTable.order-column.stripe > tbody > tr.even.selected > .sorting_2 {
2782
+ @apply bg-primary/10;
2783
+ }
2784
+ table.dataTable.display > tbody > tr.even.selected > .sorting_3,
2785
+ table.dataTable.order-column.stripe > tbody > tr.even.selected > .sorting_3 {
2786
+ @apply bg-primary/10;
2787
+ }
2788
+ table.dataTable.display tbody tr:hover > .sorting_1,
2789
+ table.dataTable.order-column.hover tbody tr:hover > .sorting_1 {
2790
+ @apply bg-muted;
2791
+ }
2792
+ table.dataTable.display tbody tr:hover > .sorting_2,
2793
+ table.dataTable.order-column.hover tbody tr:hover > .sorting_2 {
2794
+ @apply bg-muted;
2795
+ }
2796
+ table.dataTable.display tbody tr:hover > .sorting_3,
2797
+ table.dataTable.order-column.hover tbody tr:hover > .sorting_3 {
2798
+ @apply bg-muted;
2799
+ }
2800
+ table.dataTable.display tbody tr:hover.selected > .sorting_1,
2801
+ table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_1 {
2802
+ @apply bg-primary/10;
2803
+ }
2804
+ table.dataTable.display tbody tr:hover.selected > .sorting_2,
2805
+ table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_2 {
2806
+ @apply bg-primary/10;
2807
+ }
2808
+ table.dataTable.display tbody tr:hover.selected > .sorting_3,
2809
+ table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_3 {
2810
+ @apply bg-primary/10;
2811
+ }
2812
+ table.dataTable.no-footer {
2813
+ @apply border-b-0;
2814
+ }
2815
+ table.dataTable.compact thead th,
2816
+ table.dataTable.compact thead td,
2817
+ table.dataTable.compact tfoot th,
2818
+ table.dataTable.compact tfoot td,
2819
+ table.dataTable.compact tbody th,
2820
+ table.dataTable.compact tbody td {
2821
+ @apply px-4 py-2;
2822
+ }
2823
+
2824
+ table.dataTable th,
2825
+ table.dataTable td {
2826
+ @apply box-content border-y;
2827
+ }
2828
+
2829
+ table.dataTable tr:last-child td {
2830
+ @apply !border-b-0;
2831
+ }
2832
+
2833
+ /* Control feature layout */
2834
+ .dataTables_wrapper {
2835
+ @apply w-full overflow-x-auto;
2836
+ }
2837
+
2838
+ /* Export button styles */
2839
+ .dataTables_wrapper .dt-buttons {
2840
+ @apply inline-flex flex-wrap items-center gap-2;
2841
+ button {
2842
+ @apply inline-flex h-9 items-center gap-2 whitespace-nowrap rounded-md border bg-background px-3 text-sm text-muted-foreground hover:bg-muted focus:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background;
2843
+ }
2844
+ }
2845
+
2846
+ /* Copy modal */
2847
+ .dt-button-info {
2848
+ @apply fixed inset-0 z-50 flex flex-col items-center justify-center bg-background/50 backdrop-blur;
2849
+ }
2850
+
2851
+ .dataTables_wrapper .dataTables_length {
2852
+ label {
2853
+ @apply inline-flex items-center gap-2 text-sm font-normal text-muted-foreground;
2854
+ select {
2855
+ @apply h-9 w-[70px] cursor-pointer rounded-md border border-border bg-background px-2 py-1 transition focus:border-primary focus:outline-none focus-visible:border-input focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background sm:text-sm;
2856
+ }
2857
+ }
2858
+ }
2859
+ .dataTables_wrapper .dataTables_filter {
2860
+ label {
2861
+ @apply inline-flex w-full cursor-pointer items-center gap-2 text-sm font-normal text-muted-foreground;
2862
+ input {
2863
+ @apply h-9 w-full rounded-md border border-border bg-background px-2 py-1 transition focus:border-primary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:ring-offset-background focus-visible:border-input sm:text-sm;
2864
+ }
2865
+ }
2866
+ }
2867
+ .dataTables_wrapper .dataTables_info {
2868
+ @apply flex items-center gap-3 text-sm !text-muted-foreground;
2869
+ }
2870
+ .dataTables_wrapper .dataTables_paginate {
2871
+ .paginate_button {
2872
+ @apply ml-1 box-border inline-flex h-9 min-w-[36px] cursor-pointer items-center justify-center rounded bg-transparent px-3 py-2 text-center text-sm focus:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background;
2873
+ }
2874
+ }
2875
+ .dataTables_wrapper .dataTables_paginate .paginate_button.current,
2876
+ .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
2877
+ @apply bg-muted;
2878
+ }
2879
+ .dataTables_wrapper .dataTables_paginate .paginate_button.disabled,
2880
+ .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover,
2881
+ .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:active {
2882
+ @apply pointer-events-none opacity-50;
2883
+ }
2884
+ .dataTables_wrapper .dataTables_paginate .paginate_button:hover {
2885
+ @apply bg-muted;
2886
+ }
2887
+ .dataTables_wrapper .dataTables_paginate .paginate_button:active {
2888
+ @apply bg-muted;
2889
+ }
2890
+ .dataTables_wrapper .dataTables_paginate .ellipsis {
2891
+ @apply inline-flex h-8 min-w-[32px] items-start justify-center text-sm;
2892
+ }
2893
+ .dataTables_wrapper .dataTables_scroll {
2894
+ clear: both;
2895
+ }
2896
+ .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody {
2897
+ -webkit-overflow-scrolling: touch;
2898
+ }
2899
+ .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > th,
2900
+ .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > td,
2901
+ .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > th,
2902
+ .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > td {
2903
+ vertical-align: middle;
2904
+ }
2905
+ .dataTables_wrapper
2906
+ .dataTables_scroll
2907
+ div.dataTables_scrollBody
2908
+ > table
2909
+ > thead
2910
+ > tr
2911
+ > th
2912
+ > div.dataTables_sizing,
2913
+ .dataTables_wrapper
2914
+ .dataTables_scroll
2915
+ div.dataTables_scrollBody
2916
+ > table
2917
+ > thead
2918
+ > tr
2919
+ > td
2920
+ > div.dataTables_sizing,
2921
+ .dataTables_wrapper
2922
+ .dataTables_scroll
2923
+ div.dataTables_scrollBody
2924
+ > table
2925
+ > tbody
2926
+ > tr
2927
+ > th
2928
+ > div.dataTables_sizing,
2929
+ .dataTables_wrapper
2930
+ .dataTables_scroll
2931
+ div.dataTables_scrollBody
2932
+ > table
2933
+ > tbody
2934
+ > tr
2935
+ > td
2936
+ > div.dataTables_sizing {
2937
+ height: 0;
2938
+ overflow: hidden;
2939
+ margin: 0 !important;
2940
+ padding: 0 !important;
2941
+ }
2942
+ .dataTables_wrapper.no-footer .dataTables_scrollBody {
2943
+ @apply border-b;
2944
+ }
2945
+ .dataTables_wrapper.no-footer div.dataTables_scrollHead table.dataTable,
2946
+ .dataTables_wrapper.no-footer div.dataTables_scrollBody > table {
2947
+ border-bottom: none;
2948
+ }
2949
+ .dataTables_wrapper:after {
2950
+ visibility: hidden;
2951
+ display: block;
2952
+ content: "";
2953
+ clear: both;
2954
+ height: 0;
2955
+ }
2956
+
2957
+ /*
2958
+ responsive styles
2959
+ */
2960
+ table.dataTable.dtr-inline.collapsed > tbody > tr > td.child,
2961
+ table.dataTable.dtr-inline.collapsed > tbody > tr > th.child,
2962
+ table.dataTable.dtr-inline.collapsed > tbody > tr > td.dataTables_empty {
2963
+ cursor: default !important;
2964
+ }
2965
+ table.dataTable.dtr-inline.collapsed > tbody > tr > td.child:before,
2966
+ table.dataTable.dtr-inline.collapsed > tbody > tr > th.child:before,
2967
+ table.dataTable.dtr-inline.collapsed > tbody > tr > td.dataTables_empty:before {
2968
+ display: none !important;
2969
+ }
2970
+ table.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control,
2971
+ table.dataTable.dtr-inline.collapsed > tbody > tr > th.dtr-control {
2972
+ cursor: pointer;
2973
+ }
2974
+
2975
+ table.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control:before,
2976
+ table.dataTable.dtr-inline.collapsed > tbody > tr > th.dtr-control:before {
2977
+ @apply mr-2 inline-flex h-4 w-4 bg-[url('https://api.iconify.design/lucide:chevron-right.svg')] bg-contain bg-center bg-no-repeat pb-[3px] content-[''] dark:bg-[url('https://api.iconify.design/lucide:chevron-right.svg?color=white')];
2978
+ }
2979
+ table.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control.arrow-right::before,
2980
+ table.dataTable.dtr-inline.collapsed > tbody > tr > th.dtr-control.arrow-right::before {
2981
+ content: "\u25C4";
2982
+ }
2983
+ table.dataTable.dtr-inline.collapsed > tbody > tr.parent > td.dtr-control:before,
2984
+ table.dataTable.dtr-inline.collapsed > tbody > tr.parent > th.dtr-control:before {
2985
+ @apply mr-2 inline-block h-4 w-4 bg-[url('https://api.iconify.design/lucide:chevron-down.svg')] bg-contain bg-center bg-no-repeat content-[''] dark:bg-[url('https://api.iconify.design/lucide:chevron-down.svg?color=white')];
2986
+ }
2987
+ table.dataTable.dtr-inline.collapsed.compact > tbody > tr > td.dtr-control,
2988
+ table.dataTable.dtr-inline.collapsed.compact > tbody > tr > th.dtr-control {
2989
+ padding-left: 0.333em;
2990
+ }
2991
+ table.dataTable.dtr-column > tbody > tr > td.dtr-control,
2992
+ table.dataTable.dtr-column > tbody > tr > th.dtr-control,
2993
+ table.dataTable.dtr-column > tbody > tr > td.control,
2994
+ table.dataTable.dtr-column > tbody > tr > th.control {
2995
+ cursor: pointer;
2996
+ }
2997
+ table.dataTable.dtr-column > tbody > tr > td.dtr-control:before,
2998
+ table.dataTable.dtr-column > tbody > tr > th.dtr-control:before,
2999
+ table.dataTable.dtr-column > tbody > tr > td.control:before,
3000
+ table.dataTable.dtr-column > tbody > tr > th.control:before {
3001
+ @apply mr-2 inline-flex h-4 w-4 bg-[url('https://api.iconify.design/lucide:chevron-right.svg')] bg-contain bg-center bg-no-repeat pb-[3px] content-[''] dark:bg-[url('https://api.iconify.design/lucide:chevron-right.svg?color=white')];
3002
+ }
3003
+ table.dataTable.dtr-column > tbody > tr > td.dtr-control.arrow-right::before,
3004
+ table.dataTable.dtr-column > tbody > tr > th.dtr-control.arrow-right::before,
3005
+ table.dataTable.dtr-column > tbody > tr > td.control.arrow-right::before,
3006
+ table.dataTable.dtr-column > tbody > tr > th.control.arrow-right::before {
3007
+ content: "\u25C4";
3008
+ }
3009
+ table.dataTable.dtr-column > tbody > tr.parent td.dtr-control:before,
3010
+ table.dataTable.dtr-column > tbody > tr.parent th.dtr-control:before,
3011
+ table.dataTable.dtr-column > tbody > tr.parent td.control:before,
3012
+ table.dataTable.dtr-column > tbody > tr.parent th.control:before {
3013
+ @apply mr-2 inline-block h-4 w-4 bg-[url('https://api.iconify.design/lucide:chevron-down.svg')] bg-contain bg-center bg-no-repeat content-[''] dark:bg-[url('https://api.iconify.design/lucide:chevron-down.svg?color=white')];
3014
+ }
3015
+
3016
+ table.dataTable > tbody td.child {
3017
+ @apply p-0;
3018
+ }
3019
+ table.dataTable > tbody > tr.child:hover,
3020
+ table.dataTable > tbody > tr.child:hover > td.child {
3021
+ background: transparent !important;
3022
+ }
3023
+ table.dataTable > tbody > tr.child ul.dtr-details {
3024
+ @apply m-0 block w-full list-none p-0;
3025
+ }
3026
+ table.dataTable > tbody > tr.child ul.dtr-details > li {
3027
+ @apply border-b p-3 px-7 hover:bg-muted;
3028
+ }
3029
+
3030
+ table.dataTable > tbody > tr.child ul.dtr-details > li:last-child {
3031
+ @apply border-b-0;
3032
+ }
3033
+ table.dataTable > tbody > tr.child span.dtr-title {
3034
+ @apply inline-block min-w-[80px] font-bold;
3035
+ }
3036
+ div.dtr-modal {
3037
+ position: fixed;
3038
+ box-sizing: border-box;
3039
+ top: 0;
3040
+ left: 0;
3041
+ height: 100%;
3042
+ width: 100%;
3043
+ z-index: 100;
3044
+ padding: 10em 1em;
3045
+ }
3046
+ div.dtr-modal div.dtr-modal-display {
3047
+ position: absolute;
3048
+ top: 0;
3049
+ left: 0;
3050
+ bottom: 0;
3051
+ right: 0;
3052
+ width: 50%;
3053
+ height: fit-content;
3054
+ max-height: 75%;
3055
+ overflow: auto;
3056
+ margin: auto;
3057
+ z-index: 102;
3058
+ overflow: auto;
3059
+ background-color: #f5f5f7;
3060
+ border: 1px solid black;
3061
+ border-radius: 0.5em;
3062
+ box-shadow: 0 12px 30px rgba(0, 0, 0, 0.6);
3063
+ }
3064
+ div.dtr-modal div.dtr-modal-content {
3065
+ position: relative;
3066
+ padding: 2.5em;
3067
+ }
3068
+ div.dtr-modal div.dtr-modal-content h2 {
3069
+ margin-top: 0;
3070
+ }
3071
+ div.dtr-modal div.dtr-modal-close {
3072
+ position: absolute;
3073
+ top: 6px;
3074
+ right: 6px;
3075
+ width: 22px;
3076
+ height: 22px;
3077
+ text-align: center;
3078
+ border-radius: 3px;
3079
+ cursor: pointer;
3080
+ z-index: 12;
3081
+ }
3082
+ div.dtr-modal div.dtr-modal-background {
3083
+ position: fixed;
3084
+ top: 0;
3085
+ left: 0;
3086
+ right: 0;
3087
+ bottom: 0;
3088
+ z-index: 101;
3089
+ background: rgba(0, 0, 0, 0.6);
3090
+ }
3091
+
3092
+ /* Search Builder Styles */
3093
+ div.dt-button-collection {
3094
+ overflow: visible !important;
3095
+ z-index: 2002 !important;
3096
+ }
3097
+ div.dt-button-collection div.dtsb-searchBuilder {
3098
+ padding-left: 1em !important;
3099
+ padding-right: 1em !important;
3100
+ }
3101
+ div.dt-button-collection.dtb-collection-closeable div.dtsb-titleRow {
3102
+ padding-right: 40px;
3103
+ }
3104
+ .dtsb-greyscale {
3105
+ @apply !border;
3106
+ }
3107
+ div.dtsb-logicContainer .dtsb-greyscale {
3108
+ border: none !important;
3109
+ }
3110
+ div.dtsb-searchBuilder {
3111
+ @apply mb-4 cursor-default justify-evenly text-left;
3112
+ }
3113
+ div.dtsb-searchBuilder button.dtsb-button,
3114
+ div.dtsb-searchBuilder select {
3115
+ @apply text-sm;
3116
+ }
3117
+ div.dtsb-searchBuilder div.dtsb-titleRow {
3118
+ @apply mb-3 flex items-center justify-between;
3119
+ }
3120
+ div.dtsb-searchBuilder div.dtsb-titleRow div.dtsb-title {
3121
+ @apply inline-block text-sm font-normal;
3122
+ }
3123
+ div.dtsb-searchBuilder div.dtsb-titleRow div.dtsb-title:empty {
3124
+ display: inline;
3125
+ }
3126
+ div.dtsb-searchBuilder div.dtsb-vertical .dtsb-value,
3127
+ div.dtsb-searchBuilder div.dtsb-vertical .dtsb-data,
3128
+ div.dtsb-searchBuilder div.dtsb-vertical .dtsb-condition {
3129
+ display: block;
3130
+ }
3131
+ div.dtsb-searchBuilder div.dtsb-group {
3132
+ @apply relative clear-both mb-4;
3133
+ }
3134
+ div.dtsb-searchBuilder div.dtsb-group button.dtsb-search {
3135
+ float: right;
3136
+ }
3137
+ div.dtsb-searchBuilder div.dtsb-group button.dtsb-clearGroup {
3138
+ margin: 2px;
3139
+ text-align: center;
3140
+ padding: 0;
3141
+ }
3142
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-logicContainer {
3143
+ -webkit-transform: rotate(90deg);
3144
+ -moz-transform: rotate(90deg);
3145
+ -o-transform: rotate(90deg);
3146
+ -ms-transform: rotate(90deg);
3147
+ transform: rotate(90deg);
3148
+ position: absolute;
3149
+ margin-top: 0.8em;
3150
+ margin-right: 0.8em;
3151
+ }
3152
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria {
3153
+ margin-bottom: 0.8em;
3154
+ display: flex;
3155
+ justify-content: flex-start;
3156
+ flex-flow: row wrap;
3157
+ }
3158
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria select.dtsb-dropDown,
3159
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria input.dtsb-input {
3160
+ padding: 0.4em;
3161
+ margin-right: 0.8em;
3162
+ min-width: 5em;
3163
+ max-width: 20em;
3164
+ color: inherit;
3165
+ }
3166
+ div.dtsb-searchBuilder
3167
+ div.dtsb-group
3168
+ div.dtsb-criteria
3169
+ select.dtsb-dropDown
3170
+ option.dtsb-notItalic,
3171
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria input.dtsb-input option.dtsb-notItalic {
3172
+ font-style: normal;
3173
+ }
3174
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria select.dtsb-italic {
3175
+ font-style: italic;
3176
+ }
3177
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-inputCont {
3178
+ flex: 1;
3179
+ white-space: nowrap;
3180
+ }
3181
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-inputCont span.dtsp-joiner {
3182
+ margin-right: 0.8em;
3183
+ }
3184
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-inputCont input.dtsb-value {
3185
+ width: 33%;
3186
+ }
3187
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-inputCont select,
3188
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-inputCont input {
3189
+ height: 100%;
3190
+ box-sizing: border-box;
3191
+ }
3192
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-buttonContainer {
3193
+ margin-left: auto;
3194
+ display: inline-block;
3195
+ }
3196
+ div.dtsb-searchBuilder
3197
+ div.dtsb-group
3198
+ div.dtsb-criteria
3199
+ div.dtsb-buttonContainer
3200
+ button.dtsb-delete,
3201
+ div.dtsb-searchBuilder
3202
+ div.dtsb-group
3203
+ div.dtsb-criteria
3204
+ div.dtsb-buttonContainer
3205
+ button.dtsb-right,
3206
+ div.dtsb-searchBuilder
3207
+ div.dtsb-group
3208
+ div.dtsb-criteria
3209
+ div.dtsb-buttonContainer
3210
+ button.dtsb-left {
3211
+ margin-right: 0.8em;
3212
+ }
3213
+ div.dtsb-searchBuilder
3214
+ div.dtsb-group
3215
+ div.dtsb-criteria
3216
+ div.dtsb-buttonContainer
3217
+ button.dtsb-delete:last-child,
3218
+ div.dtsb-searchBuilder
3219
+ div.dtsb-group
3220
+ div.dtsb-criteria
3221
+ div.dtsb-buttonContainer
3222
+ button.dtsb-right:last-child,
3223
+ div.dtsb-searchBuilder
3224
+ div.dtsb-group
3225
+ div.dtsb-criteria
3226
+ div.dtsb-buttonContainer
3227
+ button.dtsb-left:last-child {
3228
+ margin-right: 0;
3229
+ }
3230
+ @media screen and (max-width: 550px) {
3231
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria {
3232
+ display: flex;
3233
+ flex-flow: none;
3234
+ flex-direction: column;
3235
+ justify-content: flex-start;
3236
+ padding-right: calc(35px + 0.8em);
3237
+ margin-bottom: 0px;
3238
+ }
3239
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria:not(:first-child),
3240
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria:not(:nth-child(2)),
3241
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria:not(:last-child) {
3242
+ padding-top: 0.8em;
3243
+ }
3244
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria:first-child,
3245
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria:nth-child(2),
3246
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria:last-child {
3247
+ padding-top: 0em;
3248
+ }
3249
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria select.dtsb-dropDown,
3250
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria input.dtsb-input {
3251
+ max-width: none;
3252
+ width: 100%;
3253
+ margin-bottom: 0.8em;
3254
+ margin-right: 0.8em;
3255
+ }
3256
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-inputCont {
3257
+ margin-right: 0.8em;
3258
+ }
3259
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-buttonContainer {
3260
+ position: absolute;
3261
+ width: 35px;
3262
+ display: flex;
3263
+ flex-wrap: wrap-reverse;
3264
+ right: 0;
3265
+ }
3266
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-buttonContainer button {
3267
+ margin-right: 0px !important;
3268
+ }
3269
+ }
3270
+ div.dtsb-searchBuilder button,
3271
+ div.dtsb-searchBuilder select.dtsb-dropDown,
3272
+ div.dtsb-searchBuilder input {
3273
+ @apply bg-background;
3274
+ }
3275
+ div.dtsb-searchBuilder button.dtsb-button {
3276
+ @apply relative box-border inline-flex h-9 cursor-pointer select-none items-center justify-center overflow-hidden text-ellipsis whitespace-nowrap rounded-md border bg-background px-3 py-2 text-sm font-normal text-muted-foreground focus:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background;
3277
+ }
3278
+ div.dtsb-searchBuilder button.dtsb-button:hover {
3279
+ @apply cursor-pointer bg-muted;
3280
+ }
3281
+ div.dtsb-searchBuilder div.dtsb-logicContainer {
3282
+ @apply overflow-hidden rounded-none border;
3283
+ }
3284
+ div.dtsb-searchBuilder div.dtsb-logicContainer button {
3285
+ @apply rounded-md border-transparent bg-transparent;
3286
+ }
3287
+ div.dtsb-searchBuilder button.dtsb-clearGroup {
3288
+ min-width: 2em;
3289
+ padding: 0;
3290
+ }
3291
+ div.dtsb-searchBuilder button.dtsb-iptbtn {
3292
+ min-width: 100px;
3293
+ text-align: left;
3294
+ }
3295
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-logicContainer {
3296
+ @apply flex flex-row content-start items-start justify-start rounded-md;
3297
+ }
3298
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-logicContainer button.dtsb-logic {
3299
+ @apply m-0 shrink-0 grow rounded-none border-0;
3300
+ flex-basis: 3em;
3301
+ }
3302
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-logicContainer button.dtsb-clearGroup {
3303
+ border: none;
3304
+ border-radius: 0px;
3305
+ width: 2em;
3306
+ margin: 0px;
3307
+ }
3308
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria select.dtsb-dropDown,
3309
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria input.dtsb-input {
3310
+ @apply rounded-md border;
3311
+ }
3312
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria select.dtsb-condition,
3313
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria select.dtsb-data,
3314
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria select.dtsb-value {
3315
+ @apply rounded-md border border-input bg-background text-sm transition focus:border-primary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:ring-offset-background focus-visible:border-input;
3316
+ }
3317
+
3318
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria input.dtsb-value {
3319
+ @apply rounded-md border border-input bg-background text-sm transition focus:border-primary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:ring-offset-background focus-visible:border-input;
3320
+ }
3321
+
3322
+ /* Col vis styles */
3323
+ .dt-button-background {
3324
+ @apply fixed inset-0 z-50 flex flex-col items-center justify-center bg-background/50 backdrop-blur-sm;
3325
+ }
3326
+ .dt-button-down-arrow {
3327
+ @apply text-[10px];
3328
+ }
3329
+ .dt-button-collection {
3330
+ @apply relative;
3331
+ [role="menu"] {
3332
+ @apply absolute -left-40 top-7 flex w-[300px] flex-wrap gap-x-3 gap-y-2 rounded-md border bg-background p-2 shadow lg:w-[500px];
3333
+ button {
3334
+ @apply h-7 px-2 text-xs;
3335
+ }
3336
+ .dt-button.buttons-columnVisibility.dt-button-active {
3337
+ @apply bg-primary text-primary-foreground;
3338
+ }
3339
+ }
3340
+ }
3341
+ </style>
3342
3342
  `}],utils:[],composables:[]},{name:"Date Field",value:"date-field",devDeps:["@internationalized/date"],files:[{fileName:"DateField.vue",dirPath:"components/UI",fileContent:`<template>
3343
3343
  <DateFieldRoot
3344
3344
  v-slot="{ segments, modelValue, isInvalid }"
@@ -3839,155 +3839,155 @@ export default defineNuxtPlugin((nuxtApp) => {
3839
3839
 
3840
3840
  const { base, border, container, icon: iconClass, label: labelClass } = style();
3841
3841
  </script>
3842
- `}],utils:[],composables:[],plugins:[]},{name:"Drawer",value:"drawer",deps:["vaul-vue"],files:[{fileName:"Drawer/Close.vue",dirPath:"components/UI",fileContent:`<template>\r
3843
- <DrawerClose v-bind="props">\r
3844
- <slot />\r
3845
- </DrawerClose>\r
3846
- </template>\r
3847
- \r
3848
- <script lang="ts" setup>\r
3849
- import { DrawerClose } from "vaul-vue";\r
3850
- \r
3851
- interface Props\r
3852
- extends /* @vue-ignore */ Partial<Pick<InstanceType<typeof DrawerClose>, "$props">> {}\r
3853
- const props = defineProps<Props>();\r
3854
- </script>\r
3855
- `},{fileName:"Drawer/Content.vue",dirPath:"components/UI",fileContent:`<template>\r
3856
- <UiDrawerPortal>\r
3857
- <slot name="overlay">\r
3858
- <UiDrawerOverlay />\r
3859
- </slot>\r
3860
- <slot name="content">\r
3861
- <DrawerContent v-bind="{ ...props, ...$attrs }" :class="styles({ class: props.class })">\r
3862
- <slot name="knob">\r
3863
- <div\r
3864
- className="mx-auto shrink-0 cursor-grab active:cursor-grabbing my-5 h-2 w-[60px] rounded-full bg-muted"\r
3865
- />\r
3866
- </slot>\r
3867
- <slot />\r
3868
- </DrawerContent>\r
3869
- </slot>\r
3870
- </UiDrawerPortal>\r
3871
- </template>\r
3872
- \r
3873
- <script lang="ts" setup>\r
3874
- import { DrawerContent } from "vaul-vue";\r
3875
- \r
3876
- defineOptions({ inheritAttrs: false });\r
3877
- \r
3878
- interface Props\r
3879
- extends /* @vue-ignore */ Partial<Pick<InstanceType<typeof DrawerContent>, "$props">> {}\r
3880
- \r
3881
- const props = defineProps<Props & { class?: any }>();\r
3882
- const styles = tv({\r
3883
- base: "fixed bottom-0 left-0 right-0 z-50 mt-24 flex h-auto max-h-[95%] flex-col rounded-t-[10px] border bg-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-primary/40",\r
3884
- });\r
3885
- </script>\r
3886
- `},{fileName:"Drawer/Description.vue",dirPath:"components/UI",fileContent:`<template>\r
3887
- <DrawerDescription v-bind="props" :class="styles({ class: props.class })">\r
3888
- <slot>\r
3889
- {{ props.text }}\r
3890
- </slot>\r
3891
- </DrawerDescription>\r
3892
- </template>\r
3893
- \r
3894
- <script lang="ts" setup>\r
3895
- import { DrawerDescription } from "vaul-vue";\r
3896
- \r
3897
- interface Props\r
3898
- extends /* @vue-ignore */ Partial<Pick<InstanceType<typeof DrawerDescription>, "$props">> {\r
3899
- class?: any;\r
3900
- text?: string;\r
3901
- }\r
3902
- \r
3903
- const props = defineProps<Props>();\r
3904
- \r
3905
- const styles = tv({\r
3906
- base: "text-sm text-muted-foreground",\r
3907
- });\r
3908
- </script>\r
3909
- `},{fileName:"Drawer/Drawer.vue",dirPath:"components/UI",fileContent:`<template>\r
3910
- <DrawerRoot v-bind="forwarded">\r
3911
- <slot />\r
3912
- </DrawerRoot>\r
3913
- </template>\r
3914
- \r
3915
- <script lang="ts" setup>\r
3916
- import { useForwardPropsEmits } from "radix-vue";\r
3917
- import { DrawerRoot } from "vaul-vue";\r
3918
- import type { DrawerRootEmits, DrawerRootProps } from "vaul-vue";\r
3919
- \r
3920
- const props = defineProps<DrawerRootProps>();\r
3921
- const emits = defineEmits<DrawerRootEmits>();\r
3922
- const forwarded = useForwardPropsEmits(props, emits);\r
3923
- </script>\r
3924
- `},{fileName:"Drawer/Overlay.vue",dirPath:"components/UI",fileContent:`<template>\r
3925
- <DrawerOverlay v-bind="props" :class="styles({ class: props.class })" />\r
3926
- </template>\r
3927
- \r
3928
- <script lang="ts" setup>\r
3929
- import { DrawerOverlay } from "vaul-vue";\r
3930
- \r
3931
- interface Props\r
3932
- extends /* @vue-ignore */ Partial<Pick<InstanceType<typeof DrawerOverlay>, "$props">> {}\r
3933
- \r
3934
- const props = defineProps<Props & { class?: any }>();\r
3935
- \r
3936
- const styles = tv({\r
3937
- base: "fixed inset-0 z-50 bg-black/40 backdrop-blur",\r
3938
- });\r
3939
- </script>\r
3940
- `},{fileName:"Drawer/Portal.vue",dirPath:"components/UI",fileContent:`<template>\r
3941
- <DrawerPortal v-bind="props">\r
3942
- <slot />\r
3943
- </DrawerPortal>\r
3944
- </template>\r
3945
- \r
3946
- <script lang="ts" setup>\r
3947
- import { DrawerPortal } from "vaul-vue";\r
3948
- \r
3949
- interface Props\r
3950
- extends /* @vue-ignore */ Partial<Pick<InstanceType<typeof DrawerPortal>, "$props">> {}\r
3951
- \r
3952
- const props = defineProps<Props>();\r
3953
- </script>\r
3954
- `},{fileName:"Drawer/Title.vue",dirPath:"components/UI",fileContent:`<template>\r
3955
- <DrawerTitle v-bind="props" :class="styles({ class: props.class })">\r
3956
- <slot>\r
3957
- {{ props.text }}\r
3958
- </slot>\r
3959
- </DrawerTitle>\r
3960
- </template>\r
3961
- \r
3962
- <script lang="ts" setup>\r
3963
- import { DrawerTitle } from "vaul-vue";\r
3964
- \r
3965
- interface Props\r
3966
- extends /* @vue-ignore */ Partial<Pick<InstanceType<typeof DrawerTitle>, "$props">> {\r
3967
- class?: any;\r
3968
- text?: string;\r
3969
- }\r
3970
- \r
3971
- const props = defineProps<Props>();\r
3972
- \r
3973
- const styles = tv({\r
3974
- base: "text-lg font-semibold leading-none tracking-tight",\r
3975
- });\r
3976
- </script>\r
3977
- `},{fileName:"Drawer/Trigger.vue",dirPath:"components/UI",fileContent:`<template>\r
3978
- <DrawerTrigger v-bind="props">\r
3979
- <slot />\r
3980
- </DrawerTrigger>\r
3981
- </template>\r
3982
- \r
3983
- <script lang="ts" setup>\r
3984
- import { DrawerTrigger } from "vaul-vue";\r
3985
- \r
3986
- interface Props\r
3987
- extends /* @vue-ignore */ Partial<Pick<InstanceType<typeof DrawerTrigger>, "$props">> {}\r
3988
- \r
3989
- const props = defineProps<Props>();\r
3990
- </script>\r
3842
+ `}],utils:[],composables:[],plugins:[]},{name:"Drawer",value:"drawer",deps:["vaul-vue"],files:[{fileName:"Drawer/Close.vue",dirPath:"components/UI",fileContent:`<template>
3843
+ <DrawerClose v-bind="props">
3844
+ <slot />
3845
+ </DrawerClose>
3846
+ </template>
3847
+
3848
+ <script lang="ts" setup>
3849
+ import { DrawerClose } from "vaul-vue";
3850
+
3851
+ interface Props
3852
+ extends /* @vue-ignore */ Partial<Pick<InstanceType<typeof DrawerClose>, "$props">> {}
3853
+ const props = defineProps<Props>();
3854
+ </script>
3855
+ `},{fileName:"Drawer/Content.vue",dirPath:"components/UI",fileContent:`<template>
3856
+ <UiDrawerPortal>
3857
+ <slot name="overlay">
3858
+ <UiDrawerOverlay />
3859
+ </slot>
3860
+ <slot name="content">
3861
+ <DrawerContent v-bind="{ ...props, ...$attrs }" :class="styles({ class: props.class })">
3862
+ <slot name="knob">
3863
+ <div
3864
+ className="mx-auto shrink-0 cursor-grab active:cursor-grabbing my-5 h-2 w-[60px] rounded-full bg-muted"
3865
+ />
3866
+ </slot>
3867
+ <slot />
3868
+ </DrawerContent>
3869
+ </slot>
3870
+ </UiDrawerPortal>
3871
+ </template>
3872
+
3873
+ <script lang="ts" setup>
3874
+ import { DrawerContent } from "vaul-vue";
3875
+
3876
+ defineOptions({ inheritAttrs: false });
3877
+
3878
+ interface Props
3879
+ extends /* @vue-ignore */ Partial<Pick<InstanceType<typeof DrawerContent>, "$props">> {}
3880
+
3881
+ const props = defineProps<Props & { class?: any }>();
3882
+ const styles = tv({
3883
+ base: "fixed bottom-0 left-0 right-0 z-50 mt-24 flex h-auto max-h-[95%] flex-col rounded-t-[10px] border bg-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-primary/40",
3884
+ });
3885
+ </script>
3886
+ `},{fileName:"Drawer/Description.vue",dirPath:"components/UI",fileContent:`<template>
3887
+ <DrawerDescription v-bind="props" :class="styles({ class: props.class })">
3888
+ <slot>
3889
+ {{ props.text }}
3890
+ </slot>
3891
+ </DrawerDescription>
3892
+ </template>
3893
+
3894
+ <script lang="ts" setup>
3895
+ import { DrawerDescription } from "vaul-vue";
3896
+
3897
+ interface Props
3898
+ extends /* @vue-ignore */ Partial<Pick<InstanceType<typeof DrawerDescription>, "$props">> {
3899
+ class?: any;
3900
+ text?: string;
3901
+ }
3902
+
3903
+ const props = defineProps<Props>();
3904
+
3905
+ const styles = tv({
3906
+ base: "text-sm text-muted-foreground",
3907
+ });
3908
+ </script>
3909
+ `},{fileName:"Drawer/Drawer.vue",dirPath:"components/UI",fileContent:`<template>
3910
+ <DrawerRoot v-bind="forwarded">
3911
+ <slot />
3912
+ </DrawerRoot>
3913
+ </template>
3914
+
3915
+ <script lang="ts" setup>
3916
+ import { useForwardPropsEmits } from "radix-vue";
3917
+ import { DrawerRoot } from "vaul-vue";
3918
+ import type { DrawerRootEmits, DrawerRootProps } from "vaul-vue";
3919
+
3920
+ const props = defineProps<DrawerRootProps>();
3921
+ const emits = defineEmits<DrawerRootEmits>();
3922
+ const forwarded = useForwardPropsEmits(props, emits);
3923
+ </script>
3924
+ `},{fileName:"Drawer/Overlay.vue",dirPath:"components/UI",fileContent:`<template>
3925
+ <DrawerOverlay v-bind="props" :class="styles({ class: props.class })" />
3926
+ </template>
3927
+
3928
+ <script lang="ts" setup>
3929
+ import { DrawerOverlay } from "vaul-vue";
3930
+
3931
+ interface Props
3932
+ extends /* @vue-ignore */ Partial<Pick<InstanceType<typeof DrawerOverlay>, "$props">> {}
3933
+
3934
+ const props = defineProps<Props & { class?: any }>();
3935
+
3936
+ const styles = tv({
3937
+ base: "fixed inset-0 z-50 bg-black/40 backdrop-blur",
3938
+ });
3939
+ </script>
3940
+ `},{fileName:"Drawer/Portal.vue",dirPath:"components/UI",fileContent:`<template>
3941
+ <DrawerPortal v-bind="props">
3942
+ <slot />
3943
+ </DrawerPortal>
3944
+ </template>
3945
+
3946
+ <script lang="ts" setup>
3947
+ import { DrawerPortal } from "vaul-vue";
3948
+
3949
+ interface Props
3950
+ extends /* @vue-ignore */ Partial<Pick<InstanceType<typeof DrawerPortal>, "$props">> {}
3951
+
3952
+ const props = defineProps<Props>();
3953
+ </script>
3954
+ `},{fileName:"Drawer/Title.vue",dirPath:"components/UI",fileContent:`<template>
3955
+ <DrawerTitle v-bind="props" :class="styles({ class: props.class })">
3956
+ <slot>
3957
+ {{ props.text }}
3958
+ </slot>
3959
+ </DrawerTitle>
3960
+ </template>
3961
+
3962
+ <script lang="ts" setup>
3963
+ import { DrawerTitle } from "vaul-vue";
3964
+
3965
+ interface Props
3966
+ extends /* @vue-ignore */ Partial<Pick<InstanceType<typeof DrawerTitle>, "$props">> {
3967
+ class?: any;
3968
+ text?: string;
3969
+ }
3970
+
3971
+ const props = defineProps<Props>();
3972
+
3973
+ const styles = tv({
3974
+ base: "text-lg font-semibold leading-none tracking-tight",
3975
+ });
3976
+ </script>
3977
+ `},{fileName:"Drawer/Trigger.vue",dirPath:"components/UI",fileContent:`<template>
3978
+ <DrawerTrigger v-bind="props">
3979
+ <slot />
3980
+ </DrawerTrigger>
3981
+ </template>
3982
+
3983
+ <script lang="ts" setup>
3984
+ import { DrawerTrigger } from "vaul-vue";
3985
+
3986
+ interface Props
3987
+ extends /* @vue-ignore */ Partial<Pick<InstanceType<typeof DrawerTrigger>, "$props">> {}
3988
+
3989
+ const props = defineProps<Props>();
3990
+ </script>
3991
3991
  `}],utils:[],composables:[],plugins:[]},{name:"Dropdown Menu",value:"dropdown-menu",files:[{fileName:"DropdownMenu/Arrow.vue",dirPath:"components/UI",fileContent:`<template>
3992
3992
  <DropdownMenuArrow
3993
3993
  v-bind="reactiveOmit(props, 'class')"
@@ -4508,10 +4508,12 @@ export default defineNuxtPlugin((nuxtApp) => {
4508
4508
  accept: props.accept,
4509
4509
  });
4510
4510
 
4511
- onChange((files: FileList) => {
4512
- handleDrop(Array.from(files || []));
4513
- reset();
4514
- });
4511
+ onChange((files: FileList | null) => {
4512
+ if (files?.length) {
4513
+ handleDrop(Array.from(files || []))
4514
+ reset()
4515
+ }
4516
+ })
4515
4517
 
4516
4518
  const dropZoneRef = ref<HTMLDivElement>();
4517
4519
  const emits = defineEmits<{