@fremtind/jokul 0.27.6 → 0.28.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (142) hide show
  1. package/build/build-stats.html +1 -1
  2. package/build/cjs/components/file-input/File.cjs +2 -0
  3. package/build/cjs/components/file-input/File.cjs.map +1 -0
  4. package/build/cjs/components/file-input/File.d.cts +15 -0
  5. package/build/cjs/components/file-input/FileInput.cjs +2 -0
  6. package/build/cjs/components/file-input/FileInput.cjs.map +1 -0
  7. package/build/cjs/components/file-input/FileInput.d.cts +26 -0
  8. package/build/cjs/components/file-input/index.cjs +2 -0
  9. package/build/cjs/components/file-input/index.cjs.map +1 -0
  10. package/build/cjs/components/file-input/index.d.cts +4 -0
  11. package/build/cjs/components/file-input/internal/Dropzone.cjs +2 -0
  12. package/build/cjs/components/file-input/internal/Dropzone.cjs.map +1 -0
  13. package/build/cjs/components/file-input/internal/Dropzone.d.cts +6 -0
  14. package/build/cjs/components/file-input/internal/Input.cjs +2 -0
  15. package/build/cjs/components/file-input/internal/Input.cjs.map +1 -0
  16. package/build/cjs/components/file-input/internal/Input.d.cts +8 -0
  17. package/build/cjs/components/file-input/internal/Thumbnail.cjs +2 -0
  18. package/build/cjs/components/file-input/internal/Thumbnail.cjs.map +1 -0
  19. package/build/cjs/components/file-input/internal/Thumbnail.d.cts +11 -0
  20. package/build/cjs/components/file-input/internal/fileInputContext.cjs +2 -0
  21. package/build/cjs/components/file-input/internal/fileInputContext.cjs.map +1 -0
  22. package/build/cjs/components/file-input/internal/fileInputContext.d.cts +15 -0
  23. package/build/cjs/components/file-input/internal/validateFile.cjs +2 -0
  24. package/build/cjs/components/file-input/internal/validateFile.cjs.map +1 -0
  25. package/build/cjs/components/file-input/internal/validateFile.d.cts +2 -0
  26. package/build/cjs/components/file-input/types.cjs +2 -0
  27. package/build/cjs/components/file-input/types.cjs.map +1 -0
  28. package/build/cjs/components/file-input/types.d.cts +11 -0
  29. package/build/cjs/components/file-input/utils.cjs +2 -0
  30. package/build/cjs/components/file-input/utils.cjs.map +1 -0
  31. package/build/cjs/components/file-input/utils.d.cts +11 -0
  32. package/build/cjs/components/select/Select.cjs +1 -1
  33. package/build/cjs/components/select/Select.cjs.map +1 -1
  34. package/build/cjs/core/tokens.cjs +1 -1
  35. package/build/cjs/core/tokens.cjs.map +1 -1
  36. package/build/cjs/core/tokens.d.cts +5 -1
  37. package/build/es/components/file-input/File.d.ts +15 -0
  38. package/build/es/components/file-input/File.js +2 -0
  39. package/build/es/components/file-input/File.js.map +1 -0
  40. package/build/es/components/file-input/FileInput.d.ts +26 -0
  41. package/build/es/components/file-input/FileInput.js +2 -0
  42. package/build/es/components/file-input/FileInput.js.map +1 -0
  43. package/build/es/components/file-input/index.d.ts +4 -0
  44. package/build/es/components/file-input/index.js +2 -0
  45. package/build/es/components/file-input/index.js.map +1 -0
  46. package/build/es/components/file-input/internal/Dropzone.d.ts +6 -0
  47. package/build/es/components/file-input/internal/Dropzone.js +2 -0
  48. package/build/es/components/file-input/internal/Dropzone.js.map +1 -0
  49. package/build/es/components/file-input/internal/Input.d.ts +8 -0
  50. package/build/es/components/file-input/internal/Input.js +2 -0
  51. package/build/es/components/file-input/internal/Input.js.map +1 -0
  52. package/build/es/components/file-input/internal/Thumbnail.d.ts +11 -0
  53. package/build/es/components/file-input/internal/Thumbnail.js +2 -0
  54. package/build/es/components/file-input/internal/Thumbnail.js.map +1 -0
  55. package/build/es/components/file-input/internal/fileInputContext.d.ts +15 -0
  56. package/build/es/components/file-input/internal/fileInputContext.js +2 -0
  57. package/build/es/components/file-input/internal/fileInputContext.js.map +1 -0
  58. package/build/es/components/file-input/internal/validateFile.d.ts +2 -0
  59. package/build/es/components/file-input/internal/validateFile.js +2 -0
  60. package/build/es/components/file-input/internal/validateFile.js.map +1 -0
  61. package/build/es/components/file-input/types.d.ts +11 -0
  62. package/build/es/components/file-input/types.js +2 -0
  63. package/build/es/components/file-input/types.js.map +1 -0
  64. package/build/es/components/file-input/utils.d.ts +11 -0
  65. package/build/es/components/file-input/utils.js +2 -0
  66. package/build/es/components/file-input/utils.js.map +1 -0
  67. package/build/es/components/select/Select.js +1 -1
  68. package/build/es/components/select/Select.js.map +1 -1
  69. package/build/es/core/tokens.d.ts +5 -1
  70. package/build/es/core/tokens.js +1 -1
  71. package/build/es/core/tokens.js.map +1 -1
  72. package/package.json +12 -2
  73. package/styles/components/accordion/accordion.css +1 -1
  74. package/styles/components/breadcrumb/breadcrumb.css +1 -1
  75. package/styles/components/button/button.css +3 -3
  76. package/styles/components/button/button.min.css +1 -1
  77. package/styles/components/card/card.css +1 -1
  78. package/styles/components/checkbox/checkbox.css +5 -5
  79. package/styles/components/checkbox/checkbox.min.css +1 -1
  80. package/styles/components/combobox/combobox.css +1 -1
  81. package/styles/components/cookie-consent/cookie-consent.css +1 -1
  82. package/styles/components/datepicker/datepicker.css +1 -1
  83. package/styles/components/description-list/description-list.css +1 -1
  84. package/styles/components/expander/expander.css +1 -1
  85. package/styles/components/feedback/feedback.css +3 -3
  86. package/styles/components/feedback/feedback.min.css +1 -1
  87. package/styles/components/file-input/_file.scss +172 -0
  88. package/styles/components/file-input/_index.scss +1 -0
  89. package/styles/components/file-input/file-input.css +290 -0
  90. package/styles/components/file-input/file-input.min.css +1 -0
  91. package/styles/components/file-input/file-input.scss +119 -0
  92. package/styles/components/icon/icon.css +1 -1
  93. package/styles/components/icon-button/icon-button.css +1 -1
  94. package/styles/components/image/image.css +1 -1
  95. package/styles/components/input-group/input-group.css +3 -3
  96. package/styles/components/input-group/input-group.min.css +1 -1
  97. package/styles/components/link/link.css +1 -1
  98. package/styles/components/link-list/link-list.css +1 -1
  99. package/styles/components/list/list.css +1 -1
  100. package/styles/components/loader/loader.css +7 -7
  101. package/styles/components/loader/loader.min.css +1 -1
  102. package/styles/components/loader/skeleton-loader.css +6 -6
  103. package/styles/components/loader/skeleton-loader.min.css +1 -1
  104. package/styles/components/logo/logo.css +1 -1
  105. package/styles/components/menu/menu.css +1 -1
  106. package/styles/components/message/message.css +3 -3
  107. package/styles/components/message/message.min.css +1 -1
  108. package/styles/components/modal/modal.css +1 -1
  109. package/styles/components/pagination/pagination.css +1 -1
  110. package/styles/components/popover/popover.css +1 -1
  111. package/styles/components/progress-bar/progress-bar.css +3 -3
  112. package/styles/components/progress-bar/progress-bar.min.css +1 -1
  113. package/styles/components/radio-button/radio-button.css +3 -3
  114. package/styles/components/radio-button/radio-button.min.css +1 -1
  115. package/styles/components/radio-panel/radio-panel.css +3 -3
  116. package/styles/components/radio-panel/radio-panel.min.css +1 -1
  117. package/styles/components/select/select.css +55 -145
  118. package/styles/components/select/select.min.css +1 -1
  119. package/styles/components/select/select.scss +62 -119
  120. package/styles/components/summary-table/summary-table.css +1 -1
  121. package/styles/components/system-message/system-message.css +3 -3
  122. package/styles/components/system-message/system-message.min.css +1 -1
  123. package/styles/components/table/table.css +1 -1
  124. package/styles/components/tabs/tabs.css +1 -1
  125. package/styles/components/tag/tag.css +1 -1
  126. package/styles/components/text-input/text-input.css +3 -3
  127. package/styles/components/text-input/text-input.min.css +1 -1
  128. package/styles/components/text-input/text-input.scss +1 -1
  129. package/styles/components/toast/toast.css +5 -5
  130. package/styles/components/toast/toast.min.css +1 -1
  131. package/styles/components/toggle-switch/toggle-switch.css +1 -1
  132. package/styles/components/tooltip/tooltip.css +1 -1
  133. package/styles/core/_color-tokens.scss +3 -1
  134. package/styles/core/_legacy-tokens.scss +1 -1
  135. package/styles/core/_tokens.scss +1 -1
  136. package/styles/core/core.css +8 -4
  137. package/styles/core/core.min.css +1 -1
  138. package/styles/core/jkl/_legacy-tokens.scss +1 -1
  139. package/styles/core/jkl/_tokens.scss +2 -1
  140. package/styles/styles.css +91 -181
  141. package/styles/styles.min.css +1 -1
  142. package/styles/vind/vind.css +1 -1
package/styles/styles.css CHANGED
@@ -1,7 +1,7 @@
1
1
  @charset "UTF-8";
2
2
  /**
3
3
  * Do not edit directly
4
- * Generated on Mon, 23 Sep 2024 08:51:40 GMT
4
+ * Generated on Mon, 28 Oct 2024 14:22:00 GMT
5
5
  */
6
6
  .jkl-accordion {
7
7
  width: 100%;
@@ -617,7 +617,7 @@
617
617
  height: 1rem;
618
618
  }
619
619
  html[data-touchnavigation] .jkl-button.jkl-button--pressed::before {
620
- animation: cubic-bezier(0.6, 0.2, 0.35, 1) 250ms jkl-tertiary-flash-u9a13d9;
620
+ animation: cubic-bezier(0.6, 0.2, 0.35, 1) 250ms jkl-tertiary-flash-uo3srdx;
621
621
  }
622
622
  :not([data-touchnavigation]) .jkl-button--primary:hover, :not([data-touchnavigation]) .jkl-button--secondary:hover, :not([data-touchnavigation]) .jkl-button--tertiary:hover {
623
623
  scale: 1.05;
@@ -661,7 +661,7 @@ html[data-touchnavigation] .jkl-button.jkl-button--pressed::before {
661
661
  --background-color: var(--jkl-color-background-interactive-hover);
662
662
  }
663
663
 
664
- @keyframes jkl-tertiary-flash-u9a13d9 {
664
+ @keyframes jkl-tertiary-flash-uo3srdx {
665
665
  0% {
666
666
  opacity: 0.5;
667
667
  scale: 1;
@@ -686,15 +686,15 @@ html[data-touchnavigation] .jkl-button.jkl-button--pressed::before {
686
686
  animation: 2500ms linear infinite;
687
687
  }
688
688
  .jkl-loader__dot--left {
689
- animation-name: jkl-loader-left-spin-u9a13e8;
689
+ animation-name: jkl-loader-left-spin-uo3srei;
690
690
  margin-right: 1.71em;
691
691
  }
692
692
  .jkl-loader__dot--middle {
693
- animation-name: jkl-loader-middle-spin-u9a13f1;
693
+ animation-name: jkl-loader-middle-spin-uo3sret;
694
694
  margin-right: 1.9em;
695
695
  }
696
696
  .jkl-loader__dot--right {
697
- animation-name: jkl-loader-right-spin-u9a13fy;
697
+ animation-name: jkl-loader-right-spin-uo3srew;
698
698
  }
699
699
  @media screen and (forced-colors: active) {
700
700
  .jkl-loader__dot {
@@ -722,7 +722,7 @@ html[data-touchnavigation] .jkl-button.jkl-button--pressed::before {
722
722
  margin-right: 0.3em;
723
723
  }
724
724
 
725
- @keyframes jkl-loader-left-spin-u9a13e8 {
725
+ @keyframes jkl-loader-left-spin-uo3srei {
726
726
  0% {
727
727
  transform: rotate(0) scale(0);
728
728
  }
@@ -736,7 +736,7 @@ html[data-touchnavigation] .jkl-button.jkl-button--pressed::before {
736
736
  transform: rotate(180deg) scale(0);
737
737
  }
738
738
  }
739
- @keyframes jkl-loader-middle-spin-u9a13f1 {
739
+ @keyframes jkl-loader-middle-spin-uo3sret {
740
740
  0% {
741
741
  transform: rotate(20deg) scale(0);
742
742
  }
@@ -753,7 +753,7 @@ html[data-touchnavigation] .jkl-button.jkl-button--pressed::before {
753
753
  transform: rotate(200deg) scale(0);
754
754
  }
755
755
  }
756
- @keyframes jkl-loader-right-spin-u9a13fy {
756
+ @keyframes jkl-loader-right-spin-uo3srew {
757
757
  0% {
758
758
  transform: rotate(40deg) scale(0);
759
759
  }
@@ -801,7 +801,7 @@ html[data-touchnavigation] .jkl-button.jkl-button--pressed::before {
801
801
  bottom: 0;
802
802
  width: 12.5rem;
803
803
  background: linear-gradient(89.17deg, rgba(249, 249, 249, 0) 0.8%, var(--jkl-skeleton-sweeper-color) 50.09%, rgba(249, 249, 249, 0) 96.31%);
804
- animation: var(--jkl-skeleton-sweep-duration) ease infinite jkl-sweep-u9a13gw;
804
+ animation: var(--jkl-skeleton-sweep-duration) ease infinite jkl-sweep-uo3srey;
805
805
  }
806
806
  @media (width >= 0) and (max-width: 679px) {
807
807
  .jkl-skeleton-animation {
@@ -832,7 +832,7 @@ html[data-touchnavigation] .jkl-button.jkl-button--pressed::before {
832
832
  @media screen and (forced-colors: active) {
833
833
  .jkl-skeleton-element {
834
834
  border: 1px solid CanvasText;
835
- animation: 2s ease infinite jkl-blink-u9a13ho;
835
+ animation: 2s ease infinite jkl-blink-uo3srfy;
836
836
  }
837
837
  }
838
838
 
@@ -888,11 +888,11 @@ html[data-touchnavigation] .jkl-button.jkl-button--pressed::before {
888
888
  }
889
889
  @media screen and (forced-colors: active) {
890
890
  .jkl-skeleton-table {
891
- animation: 2s ease-in-out infinite jkl-blink-u9a13ho;
891
+ animation: 2s ease-in-out infinite jkl-blink-uo3srfy;
892
892
  }
893
893
  }
894
894
 
895
- @keyframes jkl-sweep-u9a13gw {
895
+ @keyframes jkl-sweep-uo3srey {
896
896
  0% {
897
897
  transform: translateX(calc(0vw - 200px));
898
898
  }
@@ -900,7 +900,7 @@ html[data-touchnavigation] .jkl-button.jkl-button--pressed::before {
900
900
  transform: translateX(calc(100vw + 400px));
901
901
  }
902
902
  }
903
- @keyframes jkl-blink-u9a13ho {
903
+ @keyframes jkl-blink-uo3srfy {
904
904
  0% {
905
905
  opacity: 1;
906
906
  }
@@ -1465,7 +1465,7 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) .jkl-nav-card:focus
1465
1465
  --jkl-checkbox-line-height: 1.5rem;
1466
1466
  }
1467
1467
 
1468
- @keyframes jkl-checkbox-checked-u9a13ic {
1468
+ @keyframes jkl-checkbox-checked-uo3srgk {
1469
1469
  0% {
1470
1470
  width: 0;
1471
1471
  height: 0;
@@ -1479,7 +1479,7 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) .jkl-nav-card:focus
1479
1479
  height: 58%;
1480
1480
  }
1481
1481
  }
1482
- @keyframes jkl-checkbox-indeterminate-u9a13iq {
1482
+ @keyframes jkl-checkbox-indeterminate-uo3srh7 {
1483
1483
  0% {
1484
1484
  width: 0;
1485
1485
  }
@@ -1507,11 +1507,11 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) .jkl-nav-card:focus
1507
1507
  top: -6px;
1508
1508
  }
1509
1509
  .jkl-checkbox__input:checked + .jkl-checkbox__label .jkl-checkbox__check-mark::after {
1510
- animation: jkl-checkbox-checked-u9a13ic 150ms ease-in-out forwards;
1510
+ animation: jkl-checkbox-checked-uo3srgk 150ms ease-in-out forwards;
1511
1511
  opacity: 1;
1512
1512
  }
1513
1513
  .jkl-checkbox__input:indeterminate:not(:checked) + .jkl-checkbox__label .jkl-checkbox__indeterminate-mark::after {
1514
- animation: jkl-checkbox-indeterminate-u9a13iq 150ms ease-in-out forwards;
1514
+ animation: jkl-checkbox-indeterminate-uo3srh7 150ms ease-in-out forwards;
1515
1515
  opacity: 1;
1516
1516
  }
1517
1517
  .jkl-checkbox__input:focus-visible + .jkl-checkbox__label {
@@ -2037,7 +2037,7 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) .jkl-nav-card:focus
2037
2037
  --color: var(--jkl-color-text-default);
2038
2038
  }
2039
2039
  .jkl-form-support-label--error .jkl-form-support-label__icon, .jkl-form-support-label--warning .jkl-form-support-label__icon, .jkl-form-support-label--success .jkl-form-support-label__icon {
2040
- animation: 400ms cubic-bezier(0, 0, 0.3, 1) 250ms jkl-support-icon-entrance-u9a13iy forwards;
2040
+ animation: 400ms cubic-bezier(0, 0, 0.3, 1) 250ms jkl-support-icon-entrance-uo3srhb forwards;
2041
2041
  }
2042
2042
  .jkl-form-support-label--sr-only {
2043
2043
  border: 0 !important;
@@ -2112,7 +2112,7 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) .jkl-nav-card:focus
2112
2112
  white-space: nowrap !important; /* 3 */
2113
2113
  }
2114
2114
 
2115
- @keyframes jkl-support-icon-entrance-u9a13iy {
2115
+ @keyframes jkl-support-icon-entrance-uo3srhb {
2116
2116
  0% {
2117
2117
  margin-right: 0;
2118
2118
  opacity: 0;
@@ -3194,7 +3194,7 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) .jkl-text-input-act
3194
3194
  background-color: var(--jkl-text-input-error-selection-color);
3195
3195
  }
3196
3196
  .jkl-text-input__input[aria-invalid=true] ~ .jkl-text-input-action-button {
3197
- color: var(--jkl-text-input-error-placeholder-color);
3197
+ color: var(--jkl-color-text-on-alert);
3198
3198
  }
3199
3199
  .jkl-text-input__input[aria-invalid=true] ~ .jkl-text-input-action-button:hover {
3200
3200
  color: var(--jkl-text-input-error-text-color);
@@ -3291,7 +3291,7 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) .jkl-text-input__in
3291
3291
  background-color: var(--jkl-text-input-error-selection-color);
3292
3292
  }
3293
3293
  .jkl-text-area__text-area[aria-invalid=true] ~ .jkl-text-input-action-button {
3294
- color: var(--jkl-text-input-error-placeholder-color);
3294
+ color: var(--jkl-color-text-on-alert);
3295
3295
  }
3296
3296
  .jkl-text-area__text-area[aria-invalid=true] ~ .jkl-text-input-action-button:hover {
3297
3297
  color: var(--jkl-text-input-error-text-color);
@@ -3560,7 +3560,7 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) .jkl-text-area__tex
3560
3560
  padding: 1rem 0 2.5rem 0;
3561
3561
  }
3562
3562
 
3563
- @keyframes jkl-show-u9a13jf {
3563
+ @keyframes jkl-show-uo3sri7 {
3564
3564
  from {
3565
3565
  transform: translate3d(0, 0.5rem, 0);
3566
3566
  opacity: 0;
@@ -3595,7 +3595,7 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) .jkl-text-area__tex
3595
3595
  }
3596
3596
  }
3597
3597
  .jkl-feedback__fade-in {
3598
- animation: jkl-show-u9a13jf 0.25s ease-out;
3598
+ animation: jkl-show-uo3sri7 0.25s ease-out;
3599
3599
  }
3600
3600
 
3601
3601
  .jkl-feedback-smileys {
@@ -3830,7 +3830,7 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) input:focus + .jkl-
3830
3830
  --background-color: var(--jkl-color-background-alert-success);
3831
3831
  }
3832
3832
  .jkl-message--dismissed {
3833
- animation: jkl-dismiss-u9a13ke 400ms ease-in-out forwards;
3833
+ animation: jkl-dismiss-uo3srii 400ms ease-in-out forwards;
3834
3834
  transition: visibility 0ms 400ms;
3835
3835
  visibility: hidden;
3836
3836
  }
@@ -3850,7 +3850,7 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) input:focus + .jkl-
3850
3850
  }
3851
3851
  }
3852
3852
 
3853
- @keyframes jkl-dismiss-u9a13ke {
3853
+ @keyframes jkl-dismiss-uo3srii {
3854
3854
  from {
3855
3855
  opacity: 1;
3856
3856
  transform: translate3d(0, 0, 0);
@@ -3906,7 +3906,7 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) input:focus + .jkl-
3906
3906
  --jkl-radio-button-label-font-weight: var(--jkl-small-font-weight);
3907
3907
  }
3908
3908
 
3909
- @keyframes jkl-dot-in-u9a13ld {
3909
+ @keyframes jkl-dot-in-uo3srj6 {
3910
3910
  0% {
3911
3911
  transform: scale(0.8);
3912
3912
  }
@@ -3949,7 +3949,7 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) input:focus + .jkl-
3949
3949
  }
3950
3950
  .jkl-radio-button__input:checked + .jkl-radio-button__label > .jkl-radio-button__dot::after {
3951
3951
  --dot-color: var(--jkl-color-border-action);
3952
- animation: jkl-dot-in-u9a13ld 150ms ease;
3952
+ animation: jkl-dot-in-uo3srj6 150ms ease;
3953
3953
  }
3954
3954
  @media screen and (forced-colors: active) {
3955
3955
  .jkl-radio-button__input:checked + .jkl-radio-button__label > .jkl-radio-button__dot::after {
@@ -4494,83 +4494,32 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) input:focus + .jkl-
4494
4494
  width: 2rem;
4495
4495
  }
4496
4496
 
4497
- @media screen and (prefers-color-scheme: light) {
4498
- :root {
4499
- --jkl-select-border-color: #636060;
4500
- --jkl-select-text-color: #636060;
4501
- --jkl-select-text-disabled-color: #636060;
4502
- --jkl-select-text-active-value-color: #1b1917;
4503
- --jkl-select-background-color: transparent;
4504
- --jkl-select-open-background-color: #ffffff;
4505
- --jkl-select-focus-color: #1b1917;
4506
- --jkl-select-error-background-color: #f6b3b3;
4507
- --jkl-select-error-text-color: #636060;
4508
- --jkl-select-hover-option-color: #1b1917;
4509
- --jkl-select-hover-option-background-color: #e0dbd4;
4510
- --jkl-select-option-description-color: #636060;
4511
- --jkl-select-search-input-selection-color: rgba(27, 25, 23, 0.2);
4512
- --jkl-select-search-input-error-selection-color: rgba(27, 25, 23, 0.2);
4513
- --jkl-select-arrow-color: #1b1917;
4514
- }
4497
+ .jkl-select {
4498
+ display: block;
4499
+ position: relative;
4500
+ outline: 0;
4501
+ border-style: none;
4502
+ outline-style: none;
4503
+ /* --------
4504
+ VARIANTS
4505
+ -------- */
4515
4506
  }
4516
- [data-theme=light] {
4517
- --jkl-select-border-color: #636060;
4518
- --jkl-select-text-color: #636060;
4519
- --jkl-select-text-disabled-color: #636060;
4520
- --jkl-select-text-active-value-color: #1b1917;
4521
- --jkl-select-background-color: transparent;
4522
- --jkl-select-open-background-color: #ffffff;
4523
- --jkl-select-focus-color: #1b1917;
4524
- --jkl-select-error-background-color: #f6b3b3;
4525
- --jkl-select-error-text-color: #636060;
4526
- --jkl-select-hover-option-color: #1b1917;
4527
- --jkl-select-hover-option-background-color: #e0dbd4;
4528
- --jkl-select-option-description-color: #636060;
4529
- --jkl-select-search-input-selection-color: rgba(27, 25, 23, 0.2);
4530
- --jkl-select-search-input-error-selection-color: rgba(27, 25, 23, 0.2);
4531
- --jkl-select-arrow-color: #1b1917;
4507
+ .jkl-select:active, .jkl-select:hover, .jkl-select:focus {
4508
+ outline: 0;
4509
+ outline-style: none;
4532
4510
  }
4533
-
4534
- @media screen and (prefers-color-scheme: dark) {
4535
- :root {
4536
- --jkl-select-border-color: #c8c5c3;
4537
- --jkl-select-text-color: #c8c5c3;
4538
- --jkl-select-text-disabled-color: #c8c5c3;
4539
- --jkl-select-text-active-value-color: #f9f9f9;
4540
- --jkl-select-background-color: transparent;
4541
- --jkl-select-open-background-color: #313030;
4542
- --jkl-select-focus-color: #f9f9f9;
4543
- --jkl-select-error-background-color: #f6b3b3;
4544
- --jkl-select-error-text-color: #636060;
4545
- --jkl-select-hover-option-color: #f9f9f9;
4546
- --jkl-select-hover-option-background-color: #444141;
4547
- --jkl-select-option-description-color: #ece9e5;
4548
- --jkl-select-search-input-selection-color: rgba(249, 249, 249, 0.25);
4549
- --jkl-select-search-input-error-selection-color: rgba(27, 25, 23, 0.2);
4550
- --jkl-select-arrow-color: #f9f9f9;
4511
+ @media screen and (forced-colors: active) {
4512
+ .jkl-select {
4513
+ outline: revert;
4514
+ border-style: revert;
4515
+ outline-style: revert;
4516
+ }
4517
+ .jkl-select:active, .jkl-select:hover, .jkl-select:focus {
4518
+ outline: revert;
4519
+ outline-style: revert;
4551
4520
  }
4552
4521
  }
4553
- [data-theme=dark] {
4554
- --jkl-select-border-color: #c8c5c3;
4555
- --jkl-select-text-color: #c8c5c3;
4556
- --jkl-select-text-disabled-color: #c8c5c3;
4557
- --jkl-select-text-active-value-color: #f9f9f9;
4558
- --jkl-select-background-color: transparent;
4559
- --jkl-select-open-background-color: #313030;
4560
- --jkl-select-focus-color: #f9f9f9;
4561
- --jkl-select-error-background-color: #f6b3b3;
4562
- --jkl-select-error-text-color: #636060;
4563
- --jkl-select-hover-option-color: #f9f9f9;
4564
- --jkl-select-hover-option-background-color: #444141;
4565
- --jkl-select-option-description-color: #ece9e5;
4566
- --jkl-select-search-input-selection-color: rgba(249, 249, 249, 0.25);
4567
- --jkl-select-search-input-error-selection-color: rgba(27, 25, 23, 0.2);
4568
- --jkl-select-arrow-color: #f9f9f9;
4569
- }
4570
-
4571
- :root,
4572
- [data-layout-density=comfortable],
4573
- [data-density=comfortable] {
4522
+ .jkl .jkl-select, .jkl-select[data-layout-density=comfortable], .jkl-select[data-density=comfortable], [data-layout-density=comfortable] .jkl-select, [data-density=comfortable] .jkl-select {
4574
4523
  --jkl-select-input-height: 3rem;
4575
4524
  --jkl-select-arrow-right: 0.5rem;
4576
4525
  --jkl-select-button-padding: 0.5rem 2.25rem 0.5rem
@@ -4583,15 +4532,11 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) input:focus + .jkl-
4583
4532
  --jkl-select-font-weight: var(--jkl-body-font-weight);
4584
4533
  }
4585
4534
  @media (width >= 0) and (max-width: 679px) {
4586
- :root,
4587
- [data-layout-density=comfortable],
4588
- [data-density=comfortable] {
4535
+ .jkl .jkl-select, .jkl-select[data-layout-density=comfortable], .jkl-select[data-density=comfortable], [data-layout-density=comfortable] .jkl-select, [data-density=comfortable] .jkl-select {
4589
4536
  --jkl-select-input-height: 2.75rem;
4590
4537
  }
4591
4538
  }
4592
-
4593
- [data-layout-density=compact],
4594
- [data-density=compact] {
4539
+ .jkl-select[data-layout-density=compact], .jkl-select[data-density=compact], [data-layout-density=compact] .jkl-select, [data-density=compact] .jkl-select {
4595
4540
  --jkl-select-input-height: 2rem;
4596
4541
  --jkl-select-arrow-right: 0.25rem;
4597
4542
  --jkl-select-button-padding: 0.25rem 2rem 0.25rem
@@ -4604,32 +4549,6 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) input:focus + .jkl-
4604
4549
  --jkl-select-line-height: var(--jkl-small-line-height);
4605
4550
  --jkl-select-font-weight: var(--jkl-small-font-weight);
4606
4551
  }
4607
-
4608
- .jkl-select {
4609
- display: block;
4610
- position: relative;
4611
- outline: 0;
4612
- border-style: none;
4613
- outline-style: none;
4614
- /* --------
4615
- VARIANTS
4616
- -------- */
4617
- }
4618
- .jkl-select:active, .jkl-select:hover, .jkl-select:focus {
4619
- outline: 0;
4620
- outline-style: none;
4621
- }
4622
- @media screen and (forced-colors: active) {
4623
- .jkl-select {
4624
- outline: revert;
4625
- border-style: revert;
4626
- outline-style: revert;
4627
- }
4628
- .jkl-select:active, .jkl-select:hover, .jkl-select:focus {
4629
- outline: revert;
4630
- outline-style: revert;
4631
- }
4632
- }
4633
4552
  .jkl-select *:focus {
4634
4553
  outline: none;
4635
4554
  }
@@ -4641,16 +4560,13 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) input:focus + .jkl-
4641
4560
  }
4642
4561
  .jkl-select select:-moz-focusring {
4643
4562
  color: transparent;
4644
- text-shadow: 0 0 0 var(--jkl-select-text-color);
4563
+ text-shadow: 0 0 0 var(--jkl-color-text-subdued);
4645
4564
  }
4646
4565
  .jkl-select select option {
4647
4566
  font-weight: normal;
4648
4567
  font-family: sans-serif;
4649
- color: var(--jkl-select-text-color);
4650
- background-color: var(--jkl-select-open-background-color);
4651
- }
4652
- .jkl-select select option:disabled {
4653
- color: var(--jkl-select-text-disabled-color);
4568
+ color: var(--jkl-color-text-subdued);
4569
+ background-color: var(--jkl-color-background-container-high);
4654
4570
  }
4655
4571
  .jkl-select__outer-wrapper {
4656
4572
  position: relative;
@@ -4661,24 +4577,21 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) input:focus + .jkl-
4661
4577
  .jkl-select__search-input {
4662
4578
  box-sizing: border-box;
4663
4579
  padding: var(--jkl-select-search-input-padding);
4664
- color: var(--jkl-select-text-color);
4580
+ color: var(--jkl-color-text-subdued);
4665
4581
  }
4666
4582
  .jkl-select__search-input::selection {
4667
- background-color: var(--jkl-select-search-input-selection-color);
4668
- }
4669
- [data-theme=dark] .jkl-select__search-input::selection {
4670
- background-color: var(--jkl-select-search-input-selection-color);
4583
+ background-color: color-mix(in oklab, var(--jkl-color-text-subdued) 25%, var(--jkl-color-background-container) 15%);
4671
4584
  }
4672
4585
  .jkl-select__search-input, .jkl-select__button {
4673
4586
  overflow: hidden;
4674
4587
  text-overflow: ellipsis;
4675
4588
  white-space: nowrap;
4676
- background-color: var(--jkl-select-background-color);
4677
- color: var(--jkl-select-text-color);
4589
+ background-color: transparent;
4590
+ color: var(--jkl-color-text-subdued);
4678
4591
  cursor: pointer;
4679
4592
  height: var(--jkl-select-input-height);
4680
4593
  border-radius: 0.1875rem;
4681
- border: 0.0625rem solid var(--jkl-select-border-color);
4594
+ border: 0.0625rem solid var(--jkl-color-border-input);
4682
4595
  box-shadow: 0 0 0 0.0625rem transparent;
4683
4596
  text-align: left;
4684
4597
  width: 100%;
@@ -4690,17 +4603,17 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) input:focus + .jkl-
4690
4603
  font-weight: var(--jkl-select-font-weight);
4691
4604
  }
4692
4605
  .jkl-select__search-input--active-value, .jkl-select__button--active-value {
4693
- color: var(--jkl-select-text-active-value-color);
4606
+ color: var(--jkl-color-text-default);
4694
4607
  }
4695
4608
  .jkl-select__search-input:focus, .jkl-select__button:focus {
4696
- border-color: var(--jkl-select-focus-color);
4697
- color: var(--jkl-select-focus-color);
4698
- box-shadow: 0 0 0 0.0625rem var(--jkl-select-focus-color);
4699
- background-color: var(--jkl-select-open-background-color);
4609
+ border-color: var(--jkl-color-border-input-focus);
4610
+ color: var(--jkl-color-border-input-focus);
4611
+ box-shadow: 0 0 0 0.0625rem var(--jkl-color-border-input-focus);
4612
+ background-color: var(--jkl-color-background-container-high);
4700
4613
  }
4701
4614
  .jkl-select__search-input:hover, .jkl-select__button:hover {
4702
- border-color: var(--jkl-select-focus-color);
4703
- box-shadow: 0 0 0 0.0625rem var(--jkl-select-focus-color);
4615
+ border-color: var(--jkl-color-border-input-focus);
4616
+ box-shadow: 0 0 0 0.0625rem var(--jkl-color-border-input-focus);
4704
4617
  }
4705
4618
  .jkl-select__search-input:hover ~ .jkl-select__arrow, .jkl-select__button:hover ~ .jkl-select__arrow {
4706
4619
  transform: translateY(calc(-50% + 0.1875rem));
@@ -4716,7 +4629,7 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) input:focus + .jkl-
4716
4629
  position: absolute;
4717
4630
  right: var(--jkl-select-arrow-right);
4718
4631
  top: 50%;
4719
- color: var(--jkl-select-arrow-color);
4632
+ color: var(--jkl-color-text-default);
4720
4633
  transform: translateY(-50%);
4721
4634
  transition-property: transform, color;
4722
4635
  transition-timing-function: ease;
@@ -4732,14 +4645,17 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) input:focus + .jkl-
4732
4645
  fill: CanvasText;
4733
4646
  }
4734
4647
  }
4648
+ :has([aria-invalid=true]) .jkl-select__arrow {
4649
+ color: var(--jkl-color-text-on-alert);
4650
+ }
4735
4651
  .jkl-select__options-menu {
4736
4652
  position: absolute;
4737
4653
  left: -0.0625rem;
4738
4654
  right: -0.0625rem;
4739
4655
  top: 100%;
4740
4656
  z-index: 7000;
4741
- background-color: var(--jkl-select-open-background-color);
4742
- border: 0.125rem solid var(--jkl-select-focus-color);
4657
+ background-color: var(--jkl-color-background-container-high);
4658
+ border: 0.125rem solid var(--jkl-color-border-input-focus);
4743
4659
  border-top: none;
4744
4660
  border-radius: 0 0 0.1875rem 0.1875rem;
4745
4661
  box-sizing: border-box;
@@ -4776,11 +4692,11 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) input:focus + .jkl-
4776
4692
  markeres ved hover som normalt. */
4777
4693
  }
4778
4694
  .jkl-select__option:focus, :not([data-focus=controlled]) > .jkl-select__option:hover {
4779
- color: var(--jkl-select-hover-option-color);
4780
- background-color: var(--jkl-select-hover-option-background-color);
4695
+ color: var(--jkl-color-text-default);
4696
+ background-color: var(--jkl-color-background-interactive-hover);
4781
4697
  }
4782
4698
  .jkl-select__option-description {
4783
- color: var(--jkl-select-option-description-color);
4699
+ color: var(--jkl-color-text-subdued);
4784
4700
  display: block;
4785
4701
  width: 100%;
4786
4702
  font-size: 1rem;
@@ -4798,29 +4714,23 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) input:focus + .jkl-
4798
4714
  .jkl-select--open .jkl-select__button {
4799
4715
  border-bottom-left-radius: 0;
4800
4716
  border-bottom-right-radius: 0;
4801
- border-color: var(--jkl-select-focus-color);
4802
- background-color: var(--jkl-select-open-background-color);
4803
- box-shadow: 0 0 0 0.0625rem var(--jkl-select-focus-color);
4717
+ border-color: var(--jkl-color-border-input-focus);
4718
+ background-color: var(--jkl-color-background-container-high);
4719
+ box-shadow: 0 0 0 0.0625rem var(--jkl-color-border-input-focus);
4804
4720
  }
4805
4721
  .jkl-select--open .jkl-select__search-input:hover ~ .jkl-select__arrow,
4806
4722
  .jkl-select--open .jkl-select__button:hover ~ .jkl-select__arrow {
4807
4723
  transform: translateY(calc(-50% + -0.1875rem));
4808
4724
  }
4809
- .jkl-select--invalid {
4810
- /* Color of text selection */
4811
- }
4812
4725
  .jkl-select--invalid .jkl-select__search-input,
4813
4726
  .jkl-select--invalid .jkl-select__button {
4814
- background-color: var(--jkl-select-error-background-color);
4815
- color: var(--jkl-select-error-text-color);
4727
+ background-color: var(--jkl-color-background-alert-error);
4728
+ color: var(--jkl-color-text-on-alert-subdued);
4816
4729
  }
4817
4730
  .jkl-select--invalid .jkl-select__search-input--active-value,
4818
4731
  .jkl-select--invalid .jkl-select__button--active-value {
4819
4732
  color: revert;
4820
4733
  }
4821
- .jkl-select--invalid .jkl-select__search-input::selection {
4822
- background-color: var(--jkl-select-search-input-error-selection-color);
4823
- }
4824
4734
  @media screen and (forced-colors: active) {
4825
4735
  .jkl-select .jkl-select__button, .jkl-select .jkl-select__search-input {
4826
4736
  color: CanvasText;
@@ -4887,11 +4797,11 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) input:focus + .jkl-
4887
4797
  }
4888
4798
 
4889
4799
  .jkl-countdown__tracker {
4890
- animation: jkl-downcount-u9a13m0 var(--duration) linear forwards;
4800
+ animation: jkl-downcount-uo3srjy var(--duration) linear forwards;
4891
4801
  animation-play-state: var(--play-state, running);
4892
4802
  }
4893
4803
 
4894
- @keyframes jkl-downcount-u9a13m0 {
4804
+ @keyframes jkl-downcount-uo3srjy {
4895
4805
  from {
4896
4806
  width: 100%;
4897
4807
  }
@@ -4899,7 +4809,7 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) input:focus + .jkl-
4899
4809
  width: 0%;
4900
4810
  }
4901
4811
  }
4902
- @keyframes jkl-dot-in-u9a13mh {
4812
+ @keyframes jkl-dot-in-uo3srk0 {
4903
4813
  0% {
4904
4814
  transform: scale(0.8);
4905
4815
  }
@@ -4965,7 +4875,7 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) input:focus + .jkl-
4965
4875
  }
4966
4876
  }
4967
4877
  .jkl-radio-panel__input:checked + .jkl-radio-panel__dot::after {
4968
- animation: jkl-dot-in-u9a13mh 150ms ease;
4878
+ animation: jkl-dot-in-uo3srk0 150ms ease;
4969
4879
  }
4970
4880
  .jkl-radio-panel__main-label {
4971
4881
  padding-block: 1.5rem;
@@ -5197,7 +5107,7 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) .jkl-system-message
5197
5107
  margin-bottom: 0;
5198
5108
  }
5199
5109
  .jkl-system-message--dismissed {
5200
- animation: jkl-dismiss-u9a13n9 400ms ease-in forwards;
5110
+ animation: jkl-dismiss-uo3srkd 400ms ease-in forwards;
5201
5111
  transition: visibility 0ms 400ms;
5202
5112
  visibility: hidden;
5203
5113
  }
@@ -5229,7 +5139,7 @@ html:not([data-mousenavigation]):not([data-touchnavigation]) .jkl-system-message
5229
5139
  }
5230
5140
  }
5231
5141
 
5232
- @keyframes jkl-dismiss-u9a13n9 {
5142
+ @keyframes jkl-dismiss-uo3srkd {
5233
5143
  from {
5234
5144
  opacity: 1;
5235
5145
  transform: translate3d(0, 0, 0);
@@ -6104,14 +6014,14 @@ html:not([data-mousenavigation]) .jkl-table-pagination__previous:focus, html:not
6104
6014
 
6105
6015
  .jkl-toast[data-animation=entering],
6106
6016
  .jkl-toast[data-animation=queued] {
6107
- animation: jkl-entering-u9a13nl 200ms ease-out forwards;
6017
+ animation: jkl-entering-uo3srl1 200ms ease-out forwards;
6108
6018
  }
6109
6019
 
6110
6020
  .jkl-toast[data-animation=exiting] {
6111
- animation: jkl-exiting-u9a13ny 150ms ease-in forwards;
6021
+ animation: jkl-exiting-uo3srle 150ms ease-in forwards;
6112
6022
  }
6113
6023
 
6114
- @keyframes jkl-entering-u9a13nl {
6024
+ @keyframes jkl-entering-uo3srl1 {
6115
6025
  from {
6116
6026
  opacity: 0;
6117
6027
  transform: translate3d(0, 50%, 0);
@@ -6121,7 +6031,7 @@ html:not([data-mousenavigation]) .jkl-table-pagination__previous:focus, html:not
6121
6031
  transform: translate3d(0, 0, 0);
6122
6032
  }
6123
6033
  }
6124
- @keyframes jkl-exiting-u9a13ny {
6034
+ @keyframes jkl-exiting-uo3srle {
6125
6035
  from {
6126
6036
  opacity: 1;
6127
6037
  transform: translate3d(0, 0, 0);