@wippy-fe/theme 0.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. package/README.md +64 -0
  2. package/THEMING.md +316 -0
  3. package/package.json +35 -0
  4. package/primevue/accordion.css +58 -0
  5. package/primevue/autocomplete.css +144 -0
  6. package/primevue/avatar.css +50 -0
  7. package/primevue/badge.css +53 -0
  8. package/primevue/blockui.css +15 -0
  9. package/primevue/breadcrumb.css +41 -0
  10. package/primevue/button.css +341 -0
  11. package/primevue/buttongroup.css +19 -0
  12. package/primevue/card.css +22 -0
  13. package/primevue/carousel.css +64 -0
  14. package/primevue/cascadeselect.css +169 -0
  15. package/primevue/checkbox.css +84 -0
  16. package/primevue/chip.css +27 -0
  17. package/primevue/colorpicker.css +47 -0
  18. package/primevue/common.css +81 -0
  19. package/primevue/confirmdialog.css +10 -0
  20. package/primevue/confirmpopup.css +66 -0
  21. package/primevue/contextmenu.css +101 -0
  22. package/primevue/datatable.css +408 -0
  23. package/primevue/dataview.css +29 -0
  24. package/primevue/datepicker.css +211 -0
  25. package/primevue/dialog.css +125 -0
  26. package/primevue/divider.css +52 -0
  27. package/primevue/dock.css +84 -0
  28. package/primevue/drawer.css +94 -0
  29. package/primevue/fieldset.css +45 -0
  30. package/primevue/fileupload.css +57 -0
  31. package/primevue/floatlabel.css +73 -0
  32. package/primevue/galleria.css +244 -0
  33. package/primevue/iconfield.css +23 -0
  34. package/primevue/iftalabel.css +32 -0
  35. package/primevue/image.css +56 -0
  36. package/primevue/imagecompare.css +38 -0
  37. package/primevue/inplace.css +13 -0
  38. package/primevue/inputgroup.css +67 -0
  39. package/primevue/inputnumber.css +84 -0
  40. package/primevue/inputotp.css +9 -0
  41. package/primevue/inputtext.css +38 -0
  42. package/primevue/knob.css +37 -0
  43. package/primevue/listbox.css +79 -0
  44. package/primevue/megamenu.css +207 -0
  45. package/primevue/menu.css +51 -0
  46. package/primevue/menubar.css +169 -0
  47. package/primevue/message.css +228 -0
  48. package/primevue/metergroup.css +67 -0
  49. package/primevue/multiselect.css +143 -0
  50. package/primevue/orderlist.css +10 -0
  51. package/primevue/organizationchart.css +71 -0
  52. package/primevue/overlaybadge.css +13 -0
  53. package/primevue/paginator.css +58 -0
  54. package/primevue/panel.css +27 -0
  55. package/primevue/panelmenu.css +94 -0
  56. package/primevue/password.css +61 -0
  57. package/primevue/picklist.css +18 -0
  58. package/primevue/popover.css +46 -0
  59. package/primevue/progressbar.css +67 -0
  60. package/primevue/progressspinner.css +58 -0
  61. package/primevue/radiobutton.css +93 -0
  62. package/primevue/rating.css +23 -0
  63. package/primevue/ripple.css +7 -0
  64. package/primevue/scrollpanel.css +41 -0
  65. package/primevue/scrolltop.css +25 -0
  66. package/primevue/select.css +144 -0
  67. package/primevue/selectbutton.css +25 -0
  68. package/primevue/skeleton.css +11 -0
  69. package/primevue/slider.css +42 -0
  70. package/primevue/speeddial.css +48 -0
  71. package/primevue/splitbutton.css +34 -0
  72. package/primevue/splitter.css +56 -0
  73. package/primevue/stepper.css +102 -0
  74. package/primevue/tabs.css +84 -0
  75. package/primevue/tag.css +38 -0
  76. package/primevue/tailwind.css +104 -0
  77. package/primevue/terminal.css +22 -0
  78. package/primevue/textarea.css +42 -0
  79. package/primevue/tieredmenu.css +105 -0
  80. package/primevue/timeline.css +113 -0
  81. package/primevue/toast.css +172 -0
  82. package/primevue/togglebutton.css +63 -0
  83. package/primevue/toggleswitch.css +66 -0
  84. package/primevue/toolbar.css +12 -0
  85. package/primevue/tooltip.css +38 -0
  86. package/primevue/tree.css +103 -0
  87. package/primevue/treeselect.css +116 -0
  88. package/primevue/treetable.css +300 -0
  89. package/primevue-plugin.ts +8 -0
  90. package/tailwind.config.ts +28 -0
  91. package/theme-config.css +124 -0
@@ -0,0 +1,61 @@
1
+ @import './inputtext';
2
+
3
+ .p-password {
4
+ @apply inline-flex relative
5
+ }
6
+
7
+ .p-password .p-password-overlay {
8
+ @apply min-w-full
9
+ }
10
+
11
+ .p-password-meter {
12
+ @apply h-3 bg-surface-200 dark:bg-surface-700 rounded-md
13
+ }
14
+
15
+ .p-password-meter-label {
16
+ @apply h-full w-0 transition-[width] duration-1000 ease-in-out rounded-md
17
+ }
18
+
19
+ .p-password-meter-weak {
20
+ @apply bg-red-500 dark:bg-red-400
21
+ }
22
+
23
+ .p-password-meter-medium {
24
+ @apply bg-amber-500 dark:bg-amber-400
25
+ }
26
+
27
+ .p-password-meter-strong {
28
+ @apply bg-green-500 dark:bg-green-400
29
+ }
30
+
31
+ .p-password-fluid {
32
+ @apply flex
33
+ }
34
+
35
+ .p-password-fluid .p-password-input {
36
+ @apply w-full
37
+ }
38
+
39
+ .p-password-input::-ms-reveal,
40
+ .p-password-input::-ms-clear {
41
+ @apply hidden
42
+ }
43
+
44
+ .p-password-overlay {
45
+ @apply p-3 rounded-md bg-surface-0 dark:bg-surface-900
46
+ border border-surface-200 dark:border-surface-700
47
+ text-surface-700 dark:text-surface-0
48
+ shadow-[0_4px_6px_-1px_rgba(0,0,0,0.1),0_2px_4px_-2px_rgba(0,0,0,0.1)]
49
+ }
50
+
51
+ .p-password-content {
52
+ @apply flex flex-col gap-2
53
+ }
54
+
55
+ .p-password-toggle-mask-icon {
56
+ @apply end-3 text-surface-500 dark:text-surface-400 absolute top-1/2 -mt-2 w-4 h-4
57
+ }
58
+
59
+ .p-password:has(.p-password-toggle-mask-icon) .p-password-input {
60
+ @apply pe-10
61
+ }
@@ -0,0 +1,18 @@
1
+ @import './button';
2
+ @import './listbox';
3
+
4
+ .p-picklist {
5
+ @apply flex gap-[1.125rem]
6
+ }
7
+
8
+ .p-picklist-controls {
9
+ @apply flex flex-col justify-center gap-2
10
+ }
11
+
12
+ .p-picklist-list-container {
13
+ @apply flex-grow flex-shrink basis-1/2
14
+ }
15
+
16
+ .p-picklist .p-listbox {
17
+ @apply h-full
18
+ }
@@ -0,0 +1,46 @@
1
+ .p-popover {
2
+ @apply mt-[10px] bg-surface-0 dark:bg-surface-900 text-surface-700 dark:text-surface-0
3
+ border border-surface-200 dark:border-surface-700
4
+ rounded-md shadow-[0_4px_6px_-1px_rgba(0,0,0,0.1),0_2px_4px_-2px_rgba(0,0,0,0.1)]
5
+ before:bottom-full before:left-5 before:h-0 before:w-0 before:absolute before:pointer-events-none
6
+ before:border-[10px] before:-ms-[10px] before:border-transparent before:border-b-surface-200 dark:before:border-b-surface-700
7
+ after:bottom-full after:left-5 after:h-0 after:w-0 after:absolute after:pointer-events-none
8
+ after:border-[8px] after:-ms-[8px] after:border-transparent after:border-b-surface-0 dark:after:border-b-surface-900
9
+ }
10
+
11
+ .p-popover-content {
12
+ @apply p-3
13
+ }
14
+
15
+ .p-popover-flipped {
16
+ @apply -mt-[10px] mb-[10px]
17
+ }
18
+
19
+ .p-popover-enter-from {
20
+ @apply opacity-0 scale-y-75
21
+ }
22
+
23
+ .p-popover-leave-to {
24
+ @apply opacity-0
25
+ }
26
+
27
+ .p-popover-enter-active {
28
+ @apply [transition:transform_120ms_cubic-bezier(0,0,0.2,1),opacity_120ms_cubic-bezier(0,0,0.2,1)]
29
+ }
30
+
31
+ .p-popover-leave-active {
32
+ @apply transition-opacity duration-100 ease-linear
33
+ }
34
+
35
+ .p-popover-flipped:after,
36
+ .p-popover-flipped:before {
37
+ @apply bottom-auto top-full
38
+ }
39
+
40
+ .p-popover.p-popover-flipped:after {
41
+ @apply border-b-transparent border-t-surface-0 dark:border-t-surface-900
42
+ }
43
+
44
+ .p-popover.p-popover-flipped:before {
45
+ @apply border-b-transparent border-t-surface-200 dark:border-t-surface-700
46
+ }
@@ -0,0 +1,67 @@
1
+ .p-progressbar {
2
+ @apply relative overflow-hidden h-5 bg-surface-200 dark:bg-surface-700 rounded-md
3
+ }
4
+
5
+ .p-progressbar-value {
6
+ @apply m-0 bg-primary
7
+ }
8
+
9
+ .p-progressbar-label {
10
+ @apply text-primary-contrast text-xs font-semibold
11
+ }
12
+
13
+ .p-progressbar-determinate .p-progressbar-value {
14
+ @apply h-full w-0 absolute flex items-center justify-center overflow-hidden transition-[width] duration-1000 ease-in-out
15
+ }
16
+
17
+ .p-progressbar-determinate .p-progressbar-label {
18
+ @apply inline-flex
19
+ }
20
+
21
+ .p-progressbar-indeterminate .p-progressbar-value::before {
22
+ @apply content-[''] absolute bg-inherit top-0 start-0 bottom-0 will-change-[inset-inline-start,inset-inline-end];
23
+ }
24
+
25
+ .p-progressbar-indeterminate .p-progressbar-value::before {
26
+ animation: p-progressbar-indeterminate-anim 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;
27
+ }
28
+
29
+ .p-progressbar-indeterminate .p-progressbar-value::after {
30
+ @apply content-[''] absolute bg-inherit top-0 start-0 bottom-0 will-change-[inset-inline-start,inset-inline-end];
31
+
32
+ }
33
+
34
+ .p-progressbar-indeterminate .p-progressbar-value::after {
35
+ animation: p-progressbar-indeterminate-anim-short 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) infinite;
36
+ animation-delay: 1.15s;
37
+ }
38
+
39
+ @keyframes p-progressbar-indeterminate-anim {
40
+ 0% {
41
+ inset-inline-start: -35%;
42
+ inset-inline-end: 100%;
43
+ }
44
+ 60% {
45
+ inset-inline-start: 100%;
46
+ inset-inline-end: -90%;
47
+ }
48
+ 100% {
49
+ inset-inline-start: 100%;
50
+ inset-inline-end: -90%;
51
+ }
52
+ }
53
+
54
+ @keyframes p-progressbar-indeterminate-anim-short {
55
+ 0% {
56
+ inset-inline-start: -200%;
57
+ inset-inline-end: 100%;
58
+ }
59
+ 60% {
60
+ inset-inline-start: 107%;
61
+ inset-inline-end: -8%;
62
+ }
63
+ 100% {
64
+ inset-inline-start: 107%;
65
+ inset-inline-end: -8%;
66
+ }
67
+ }
@@ -0,0 +1,58 @@
1
+ .p-progressspinner {
2
+ @apply relative my-0 mx-auto w-[100px] h-[100px] inline-block
3
+ before:block before:pt-[100%]
4
+ }
5
+
6
+ .p-progressspinner-spin {
7
+ @apply h-full origin-center w-full absolute top-0 bottom-0 start-0 end-0 m-auto;
8
+ }
9
+
10
+ .p-progressspinner-spin {
11
+ animation: p-progressspinner-rotate 2s linear infinite;
12
+ }
13
+
14
+ .p-progressspinner-circle {
15
+ stroke-dasharray: 89, 200;
16
+ stroke-dashoffset: 0;
17
+ stroke: theme(colors.red.500);
18
+ stroke-linecap: round;
19
+ animation: p-progressspinner-dash 1.5s ease-in-out infinite, p-progressspinner-color 6s ease-in-out infinite;
20
+ }
21
+
22
+ @keyframes p-progressspinner-rotate {
23
+ 100% {
24
+ transform: rotate(360deg);
25
+ }
26
+ }
27
+
28
+ @keyframes p-progressspinner-dash {
29
+ 0% {
30
+ stroke-dasharray: 1, 200;
31
+ stroke-dashoffset: 0;
32
+ }
33
+ 50% {
34
+ stroke-dasharray: 89, 200;
35
+ stroke-dashoffset: -35px;
36
+ }
37
+ 100% {
38
+ stroke-dasharray: 89, 200;
39
+ stroke-dashoffset: -124px;
40
+ }
41
+ }
42
+
43
+ @keyframes p-progressspinner-color {
44
+ 100%,
45
+ 0% {
46
+ stroke: theme(colors.red.500);
47
+ }
48
+ 40% {
49
+ stroke: theme(colors.blue.500);
50
+ }
51
+ 66% {
52
+ stroke: theme(colors.green.500);
53
+ }
54
+ 80%,
55
+ 90% {
56
+ stroke: theme(colors.yellow.500);
57
+ }
58
+ }
@@ -0,0 +1,93 @@
1
+ .p-radiobutton {
2
+ @apply relative inline-flex select-none w-5 h-5
3
+ }
4
+
5
+ .p-radiobutton-input {
6
+ @apply cursor-pointer disabled:cursor-default appearance-none absolute start-0 top-0 w-full h-full m-0 p-0 opacity-0 z-10
7
+ border border-transparent rounded-full
8
+ }
9
+
10
+ .p-radiobutton-box {
11
+ @apply flex justify-center items-center rounded-full
12
+ border border-surface-300 dark:border-surface-700
13
+ bg-surface-0 dark:bg-surface-950
14
+ w-5 h-5
15
+ transition-colors duration-200
16
+ shadow-[0_1px_2px_0_rgba(18,18,23,0.05)]
17
+ }
18
+
19
+ .p-radiobutton-icon {
20
+ @apply bg-transparent text-xs w-3 h-3 rounded-full
21
+ transition-all duration-200 backface-hidden
22
+ }
23
+
24
+ .p-radiobutton-icon {
25
+ @apply scale-[0.1]
26
+ }
27
+
28
+ .p-radiobutton:not(.p-disabled):has(.p-radiobutton-input:hover) .p-radiobutton-box {
29
+ @apply border-surface-400 dark:border-surface-600
30
+ }
31
+
32
+ .p-radiobutton-checked .p-radiobutton-box {
33
+ @apply border-primary bg-primary
34
+ }
35
+
36
+ .p-radiobutton-checked .p-radiobutton-box .p-radiobutton-icon {
37
+ @apply bg-primary-contrast visible
38
+ }
39
+
40
+ .p-radiobutton-checked .p-radiobutton-box .p-radiobutton-icon {
41
+ @apply scale-100
42
+ }
43
+
44
+ .p-radiobutton-checked:not(.p-disabled):has(.p-radiobutton-input:hover) .p-radiobutton-box {
45
+ @apply border-primary-emphasis bg-primary-emphasis
46
+ }
47
+
48
+ .p-radiobutton:not(.p-disabled):has(.p-radiobutton-input:hover).p-radiobutton-checked .p-radiobutton-box .p-radiobutton-icon {
49
+ @apply bg-primary-contrast
50
+ }
51
+
52
+ .p-radiobutton:not(.p-disabled):has(.p-radiobutton-input:focus-visible) .p-radiobutton-box {
53
+ @apply outline outline-1 outline-offset-2 outline-primary
54
+ }
55
+
56
+ .p-radiobutton.p-invalid > .p-radiobutton-box {
57
+ @apply border-red-400 dark:border-red-300
58
+ }
59
+
60
+ .p-radiobutton.p-variant-filled .p-radiobutton-box {
61
+ @apply bg-surface-50 dark:bg-surface-800
62
+ }
63
+
64
+ .p-radiobutton.p-disabled {
65
+ @apply opacity-100
66
+ }
67
+
68
+ .p-radiobutton.p-disabled .p-radiobutton-box {
69
+ @apply bg-surface-200 dark:bg-surface-400
70
+ border-surface-300 dark:border-surface-700
71
+ }
72
+
73
+ .p-radiobutton-checked.p-disabled .p-radiobutton-box .p-radiobutton-icon {
74
+ @apply bg-surface-700 dark:bg-surface-400
75
+ }
76
+
77
+ .p-radiobutton-sm,
78
+ .p-radiobutton-sm .p-radiobutton-box {
79
+ @apply w-4 h-4
80
+ }
81
+
82
+ .p-radiobutton-sm .p-radiobutton-icon {
83
+ @apply w-2 h-2
84
+ }
85
+
86
+ .p-radiobutton-lg,
87
+ .p-radiobutton-lg .p-radiobutton-box {
88
+ @apply w-6 h-6
89
+ }
90
+
91
+ .p-radiobutton-lg .p-radiobutton-icon {
92
+ @apply w-4 h-4
93
+ }
@@ -0,0 +1,23 @@
1
+ .p-rating {
2
+ @apply relative flex items-center gap-1
3
+ }
4
+
5
+ .p-rating-option {
6
+ @apply inline-flex items-center cursor-pointer rounded-full
7
+ }
8
+
9
+ .p-rating-option.p-focus-visible {
10
+ @apply outline outline-1 outline-offset-2 outline-primary
11
+ }
12
+
13
+ .p-rating-icon {
14
+ @apply text-surface-500 dark:text-surface-400 text-base w-4 h-4 transition-colors duration-200
15
+ }
16
+
17
+ .p-rating:not(.p-disabled):not(.p-readonly) .p-rating-option:hover .p-rating-icon {
18
+ @apply text-primary
19
+ }
20
+
21
+ .p-rating-option-active .p-rating-icon {
22
+ @apply text-primary
23
+ }
@@ -0,0 +1,7 @@
1
+ .p-ink {
2
+ @apply block absolute bg-black/10 dark:bg-white/30 scale-0 rounded-[100%] pointer-events-none
3
+ }
4
+
5
+ .p-ink-active {
6
+ @apply transition-[opacity,transform] duration-500 scale-[2.5] opacity-0 ease-linear
7
+ }
@@ -0,0 +1,41 @@
1
+ .p-scrollpanel-content-container {
2
+ @apply overflow-hidden w-full h-full relative z-10 float-left
3
+ }
4
+
5
+ .p-scrollpanel-content {
6
+ @apply relative overflow-auto
7
+ h-[calc(100%+18px)] w-[calc(100%+18px)]
8
+ pt-0 ps-0 pr-[18px] pb-[18px] [scrollbar-width:none]
9
+ }
10
+
11
+ .p-scrollpanel-content::-webkit-scrollbar {
12
+ @apply hidden
13
+ }
14
+
15
+ .p-scrollpanel-bar {
16
+ @apply relative rounded-sm z-20 cursor-pointer opacity-0
17
+ bg-surface-100 dark:bg-surface-800
18
+ transition-opacity duration-200 border-none
19
+ focus-visible:outline focus-visible:outline-1 focus-visible:outline-offset-2 focus-visible:outline-primary
20
+ }
21
+
22
+ .p-scrollpanel-bar-y {
23
+ @apply w-[9px] top-0
24
+ }
25
+
26
+ .p-scrollpanel-bar-x {
27
+ @apply h-[9px] bottom-0
28
+ }
29
+
30
+ .p-scrollpanel-hidden {
31
+ @apply invisible
32
+ }
33
+
34
+ .p-scrollpanel:hover .p-scrollpanel-bar,
35
+ .p-scrollpanel:active .p-scrollpanel-bar {
36
+ @apply opacity-100
37
+ }
38
+
39
+ .p-scrollpanel-grabbed {
40
+ @apply select-none
41
+ }
@@ -0,0 +1,25 @@
1
+ @import './button';
2
+
3
+ .p-scrolltop.p-button {
4
+ @apply fixed bottom-5 end-5
5
+ }
6
+
7
+ .p-scrolltop-sticky.p-button {
8
+ @apply sticky flex ms-auto
9
+ }
10
+
11
+ .p-scrolltop-enter-from {
12
+ @apply opacity-0
13
+ }
14
+
15
+ .p-scrolltop-enter-active {
16
+ @apply transition-opacity duration-150
17
+ }
18
+
19
+ .p-scrolltop.p-scrolltop-leave-to {
20
+ @apply opacity-0
21
+ }
22
+
23
+ .p-scrolltop-leave-active {
24
+ @apply transition-opacity duration-150
25
+ }
@@ -0,0 +1,144 @@
1
+ @import './button';
2
+ @import './inputtext';
3
+ @import './iconfield';
4
+
5
+ .p-select {
6
+ @apply inline-flex cursor-pointer relative select-none rounded-md
7
+ bg-surface-0 dark:bg-surface-800
8
+ border border-surface-300 dark:border-surface-700
9
+ shadow-[0_1px_2px_0_rgba(18,18,23,0.05)]
10
+ transition-colors duration-200
11
+ }
12
+
13
+ .p-select:not(.p-disabled):hover {
14
+ @apply border-surface-400 dark:border-surface-600
15
+ }
16
+
17
+ .p-select:not(.p-disabled).p-focus {
18
+ @apply border-primary
19
+ }
20
+
21
+ .p-select.p-variant-filled {
22
+ @apply bg-surface-50 dark:bg-surface-800
23
+ }
24
+
25
+ .p-select.p-invalid {
26
+ @apply border-red-400 dark:border-red-300
27
+ }
28
+
29
+ .p-select.p-disabled {
30
+ @apply bg-surface-200 text-surface-500 dark:bg-surface-700 dark:text-surface-400 opacity-100 cursor-default
31
+ }
32
+
33
+ .p-select-clear-icon {
34
+ @apply absolute top-1/2 -mt-2 text-surface-500 dark:text-surface-400 end-10
35
+ }
36
+
37
+ .p-select-dropdown {
38
+ @apply flex items-center justify-center shrink-0 bg-transparent
39
+ text-surface-500 dark:text-surface-400 w-10 rounded-e-md
40
+ }
41
+
42
+ .p-select-label {
43
+ @apply block whitespace-nowrap overflow-hidden flex-auto w-[1%]
44
+ py-2 px-3 overflow-ellipsis
45
+ text-surface-700 dark:text-surface-0 bg-transparent border-none outline-none
46
+ }
47
+
48
+ .p-select-label.p-placeholder {
49
+ @apply text-surface-500 dark:text-surface-400
50
+ }
51
+
52
+ .p-select:has(.p-select-clear-icon) .p-select-label {
53
+ @apply pe-7
54
+ }
55
+
56
+ .p-select.p-disabled .p-select-label {
57
+ @apply text-surface-500 dark:text-surface-400
58
+ }
59
+
60
+ .p-select-label-empty {
61
+ @apply overflow-hidden opacity-0
62
+ }
63
+
64
+ input.p-select-label {
65
+ @apply cursor-default
66
+ }
67
+
68
+ .p-select .p-select-overlay {
69
+ @apply min-w-full
70
+ }
71
+
72
+ .p-select-overlay {
73
+ @apply absolute top-0 left-0 rounded-md
74
+ bg-surface-0 dark:bg-surface-900
75
+ border border-surface-200 dark:border-surface-700
76
+ text-surface-700 dark:text-surface-0
77
+ shadow-[0_4px_6px_-1px_rgba(0,0,0,0.1),0_2px_4px_-2px_rgba(0,0,0,0.1)]
78
+ }
79
+
80
+ .p-select-header {
81
+ @apply pt-2 pb-1 px-4
82
+ }
83
+
84
+ .p-select-filter {
85
+ @apply w-full
86
+ }
87
+
88
+ .p-select-list-container {
89
+ @apply overflow-auto
90
+ }
91
+
92
+ .p-select-option-group {
93
+ @apply m-0 px-3 py-2 bg-transparent text-surface-500 dark:text-surface-400 font-semibold
94
+ }
95
+
96
+ .p-select-list {
97
+ @apply m-0 p-1 list-none gap-[2px] flex flex-col
98
+ }
99
+
100
+ .p-select-option {
101
+ @apply cursor-pointer font-normal whitespace-nowrap relative overflow-hidden flex items-center
102
+ px-3 py-2 border-none text-surface-700 dark:text-surface-0 bg-transparent rounded-sm
103
+ transition-colors duration-200
104
+ }
105
+
106
+ .p-select-option:not(.p-select-option-selected):not(.p-disabled).p-focus {
107
+ @apply bg-surface-100 dark:bg-surface-800 text-surface-800 dark:text-surface-0
108
+ }
109
+
110
+ .p-select-option.p-select-option-selected {
111
+ @apply bg-highlight
112
+ }
113
+
114
+ .p-select-option.p-select-option-selected.p-focus {
115
+ @apply bg-highlight-emphasis
116
+ }
117
+
118
+ .p-select-option-check-icon {
119
+ @apply relative -ms-[0.375rem] me-[0.375rem] text-surface-700 dark:text-surface-0
120
+ }
121
+
122
+ .p-select-empty-message {
123
+ @apply px-3 py-2
124
+ }
125
+
126
+ .p-select-fluid {
127
+ @apply flex
128
+ }
129
+
130
+ .p-select-sm .p-select-label {
131
+ @apply text-sm px-[0.625rem] py-[0.375rem]
132
+ }
133
+
134
+ .p-select-sm .p-select-dropdown .p-icon {
135
+ @apply text-sm w-[0.875rem] h-[0.875rem]
136
+ }
137
+
138
+ .p-select-lg .p-select-label {
139
+ @apply text-lg px-[0.875rem] py-[0.625rem]
140
+ }
141
+
142
+ .p-select-lg .p-select-dropdown .p-icon {
143
+ @apply text-lg w-[1.125rem] h-[1.125rem]
144
+ }
@@ -0,0 +1,25 @@
1
+ @import './togglebutton';
2
+
3
+ .p-selectbutton {
4
+ @apply inline-flex select-none rounded-md
5
+ }
6
+
7
+ .p-selectbutton .p-togglebutton {
8
+ @apply rounded-none border-y border-r border-s-0
9
+ }
10
+
11
+ .p-selectbutton .p-togglebutton:focus-visible {
12
+ @apply relative z-10
13
+ }
14
+
15
+ .p-selectbutton .p-togglebutton:first-child {
16
+ @apply border-s rounded-s-md
17
+ }
18
+
19
+ .p-selectbutton .p-togglebutton:last-child {
20
+ @apply rounded-e-md
21
+ }
22
+
23
+ .p-selectbutton.p-invalid {
24
+ @apply outline outline-offset-0 outline-red-400 dark:outline-red-300
25
+ }
@@ -0,0 +1,11 @@
1
+ .p-skeleton {
2
+ @apply overflow-hidden bg-surface-200 dark:bg-surface-700 animate-pulse rounded-md
3
+ }
4
+
5
+ .p-skeleton-circle {
6
+ @apply rounded-full
7
+ }
8
+
9
+ .p-skeleton-animation-none::after {
10
+ @apply animate-none
11
+ }
@@ -0,0 +1,42 @@
1
+ .p-slider {
2
+ @apply relative bg-surface-200 dark:bg-surface-700 rounded-sm
3
+ }
4
+
5
+ .p-slider-handle {
6
+ @apply cursor-grab touch-none flex items-center justify-center h-[20px] w-[20px]
7
+ bg-surface-200 dark:bg-surface-700 rounded-full
8
+ transition-colors duration-200
9
+ focus-visible:outline focus-visible:outline-1 focus-visible:outline-offset-2 focus-visible:outline-primary
10
+ before:w-[16px] before:h-[16px] before:block before:rounded-full
11
+ before:bg-surface-0 dark:before:bg-surface-950
12
+ before:shadow-[0px_0.5px_0px_0px_rgba(0,0,0,0.08),0px_1px_1px_0px_rgba(0,0,0,0.14)]
13
+ before:transition-colors before:duration-200
14
+ }
15
+
16
+ .p-slider-range {
17
+ @apply block bg-primary rounded-sm
18
+ }
19
+
20
+ .p-slider.p-slider-horizontal {
21
+ @apply h-[3px]
22
+ }
23
+
24
+ .p-slider-horizontal .p-slider-range {
25
+ @apply top-0 start-0 h-full
26
+ }
27
+
28
+ .p-slider-horizontal .p-slider-handle {
29
+ @apply top-1/2 -mt-[10px] -ms-[10px]
30
+ }
31
+
32
+ .p-slider-vertical {
33
+ @apply min-h-[100px] w-[3px]
34
+ }
35
+
36
+ .p-slider-vertical .p-slider-handle {
37
+ @apply start-1/2 -mb-[10px] -ms-[10px]
38
+ }
39
+
40
+ .p-slider-vertical .p-slider-range {
41
+ @apply bottom-0 start-0 w-full
42
+ }