@oslokommune/punkt-css 13.2.0 → 13.3.0

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 (55) hide show
  1. package/CHANGELOG.md +1736 -1253
  2. package/README.md +2 -2
  3. package/dist/css/components/accordion.css +9 -0
  4. package/dist/css/components/accordion.min.css +1 -1
  5. package/dist/css/components/heading.css +3 -3
  6. package/dist/css/components/heading.min.css +1 -1
  7. package/dist/css/components/linkcard.css +2 -0
  8. package/dist/css/components/linkcard.min.css +1 -1
  9. package/dist/css/components/loader.css +1 -0
  10. package/dist/css/components/loader.min.css +1 -1
  11. package/dist/css/components/preview.css +100 -16
  12. package/dist/css/components/preview.min.css +1 -1
  13. package/dist/css/components/tabs.css +1 -1
  14. package/dist/css/components/tabs.min.css +1 -1
  15. package/dist/css/components/tag.css +5 -0
  16. package/dist/css/components/tag.min.css +1 -1
  17. package/dist/css/components/textinput.css +1 -1
  18. package/dist/css/components/textinput.min.css +1 -1
  19. package/dist/css/elements/checkbox-radio.css +2 -2
  20. package/dist/css/elements/checkbox-radio.min.css +1 -1
  21. package/dist/css/elements/input.css +1 -1
  22. package/dist/css/elements/input.min.css +1 -1
  23. package/dist/css/elements/select.css +1 -1
  24. package/dist/css/elements/select.min.css +1 -1
  25. package/dist/css/elements/table.css +2 -1
  26. package/dist/css/elements/table.min.css +1 -1
  27. package/dist/css/pkt-base.css +93 -89
  28. package/dist/css/pkt-base.min.css +1 -1
  29. package/dist/css/pkt-components.css +122 -21
  30. package/dist/css/pkt-components.min.css +1 -1
  31. package/dist/css/pkt-docs.css +220 -118
  32. package/dist/css/pkt-docs.min.css +1 -1
  33. package/dist/css/pkt-elements.css +5 -4
  34. package/dist/css/pkt-elements.min.css +1 -1
  35. package/dist/css/pkt-normalise.css +1 -1
  36. package/dist/css/pkt-normalise.min.css +1 -1
  37. package/dist/css/pkt.css +220 -114
  38. package/dist/css/pkt.min.css +1 -1
  39. package/dist/scss/abstracts/mixins/_breakpoints.scss +46 -1
  40. package/dist/scss/abstracts/variables/_index.scss +1 -1
  41. package/dist/scss/abstracts/variables/_typography.scss +1 -1
  42. package/dist/scss/base/_defaults.scss +2 -2
  43. package/dist/scss/base/_grid.scss +2 -1
  44. package/dist/scss/base/_typography.scss +5 -2
  45. package/dist/scss/components/_accordion.scss +10 -0
  46. package/dist/scss/components/_heading.scss +3 -3
  47. package/dist/scss/components/_linkcard.scss +2 -0
  48. package/dist/scss/components/_loader.scss +1 -0
  49. package/dist/scss/components/_preview.scss +102 -16
  50. package/dist/scss/components/_tabs.scss +1 -1
  51. package/dist/scss/components/_tag.scss +4 -1
  52. package/dist/scss/elements/_table.scss +2 -1
  53. package/dist/scss/normalise/_index.scss +1 -1
  54. package/dist/scss/pkt-docs.scss +0 -3
  55. package/package.json +2 -2
@@ -6,6 +6,11 @@ pkt-accordion-item {
6
6
  display: block;
7
7
  }
8
8
 
9
+ pkt-accordion,
10
+ pkt-accordion-item {
11
+ display: block;
12
+ }
13
+
9
14
  .pkt-accordion,
10
15
  pkt-accordion::part(container) {
11
16
  display: grid;
@@ -21,7 +26,9 @@ pkt-accordion::part(container):focus-visible {
21
26
 
22
27
  .pkt-accordion--borderless .pkt-accordion-item,
23
28
  pkt-accordion[skin=borderless] .pkt-accordion-item {
29
+ color: var(--pkt-color-text-body-default);
24
30
  border: none;
31
+ background-color: var(--pkt-color-background-default);
25
32
  }
26
33
  .pkt-accordion--borderless .pkt-accordion-item[open] .pkt-accordion-item__title,
27
34
  pkt-accordion[skin=borderless] .pkt-accordion-item[open] .pkt-accordion-item__title {
@@ -30,7 +37,9 @@ pkt-accordion[skin=borderless] .pkt-accordion-item[open] .pkt-accordion-item__ti
30
37
 
31
38
  .pkt-accordion--outlined .pkt-accordion-item,
32
39
  pkt-accordion[skin=outlined] .pkt-accordion-item {
40
+ color: var(--pkt-color-text-body-default);
33
41
  border: 2px solid var(--pkt-color-border-subtle);
42
+ background-color: var(--pkt-color-background-default);
34
43
  }
35
44
 
36
45
  pkt-accordion[skin=beige]::part(container),
@@ -1536,19 +1545,19 @@ pkt-heading {
1536
1545
  }
1537
1546
  .pkt-heading--medium {
1538
1547
  letter-spacing: -0.2px;
1539
- font-weight: 400;
1548
+ font-weight: 500;
1540
1549
  font-size: 1.875rem;
1541
1550
  line-height: 2.75rem;
1542
1551
  }
1543
1552
  .pkt-heading--small {
1544
1553
  letter-spacing: -0.2px;
1545
- font-weight: 400;
1554
+ font-weight: 500;
1546
1555
  font-size: 1.5rem;
1547
1556
  line-height: 2.25rem;
1548
1557
  }
1549
1558
  .pkt-heading--xsmall {
1550
1559
  letter-spacing: -0.2px;
1551
- font-weight: 400;
1560
+ font-weight: 500;
1552
1561
  font-size: 1.375rem;
1553
1562
  line-height: 2.125rem;
1554
1563
  }
@@ -1808,6 +1817,8 @@ pkt-linkcard {
1808
1817
  }
1809
1818
  .pkt-linkcard:hover .pkt-linkcard__title {
1810
1819
  text-decoration: underline;
1820
+ text-decoration-thickness: 0.12rem;
1821
+ text-underline-offset: 0.15em;
1811
1822
  }
1812
1823
  .pkt-linkcard:hover .pkt-link--external::after {
1813
1824
  filter: brightness(0) saturate(100%) invert(16%) sepia(99%) saturate(2420%) hue-rotate(222deg) brightness(93%) contrast(90%);
@@ -2088,6 +2099,7 @@ pkt-listbox {
2088
2099
  * Loader component
2089
2100
  */
2090
2101
  .pkt-loader {
2102
+ color: currentColor;
2091
2103
  width: fit-content;
2092
2104
  text-align: center;
2093
2105
  }
@@ -2611,25 +2623,61 @@ pkt-messagebox {
2611
2623
  .pkt-preview .pkt-tabs {
2612
2624
  --pkt-tabs-bg: var(--pkt-color-surface-default-gray);
2613
2625
  }
2614
- .pkt-preview__mode {
2615
- position: absolute;
2616
- top: 1rem;
2617
- right: 1rem;
2618
- }
2619
2626
  .pkt-preview__component {
2627
+ position: relative;
2620
2628
  display: flex;
2621
2629
  justify-content: space-around;
2622
2630
  align-items: center;
2623
2631
  min-height: 10rem;
2624
2632
  padding: 3rem 1rem;
2625
- margin: 1rem 0 0;
2626
- border: 0.25rem solid var(--pkt-color-surface-default-gray);
2633
+ margin: 0;
2627
2634
  background-color: var(--pkt-color-background-default);
2628
2635
  transition: background-color 0.2s linear;
2629
2636
  }
2630
2637
  .pkt-preview__component--fullwidth > div {
2631
2638
  width: 100%;
2632
2639
  }
2640
+ .pkt-preview__component-container {
2641
+ border: 2px solid var(--pkt-color-border-gray);
2642
+ display: flex;
2643
+ flex-direction: column;
2644
+ gap: 0;
2645
+ }
2646
+ @media screen and (min-width: 64rem) {
2647
+ .pkt-preview__component-container {
2648
+ flex-direction: row;
2649
+ }
2650
+ .pkt-preview__component-container .pkt-preview__component {
2651
+ flex: 1 1 0;
2652
+ min-width: 0;
2653
+ }
2654
+ .pkt-preview__component-container .pkt-preview__panel {
2655
+ flex: 0 0 auto;
2656
+ min-width: 20rem;
2657
+ max-width: 25rem;
2658
+ width: 100%;
2659
+ }
2660
+ }
2661
+ .pkt-preview__panel {
2662
+ display: flex;
2663
+ flex-direction: column;
2664
+ gap: 1rem;
2665
+ padding: 2rem 1.5rem;
2666
+ justify-content: space-between;
2667
+ align-items: stretch;
2668
+ background-color: var(--pkt-color-surface-default-gray);
2669
+ }
2670
+ .pkt-preview__panel__options {
2671
+ display: flex;
2672
+ flex-direction: column;
2673
+ gap: 1rem;
2674
+ margin-bottom: 1rem;
2675
+ }
2676
+ .pkt-preview__options {
2677
+ display: flex;
2678
+ flex-direction: column;
2679
+ gap: 1rem;
2680
+ }
2633
2681
  .pkt-preview__opts {
2634
2682
  padding: 1rem;
2635
2683
  background-color: var(--pkt-color-surface-default-gray);
@@ -2644,14 +2692,53 @@ pkt-messagebox {
2644
2692
  right: 0;
2645
2693
  padding: 0 0.25rem 0;
2646
2694
  }
2695
+ .pkt-preview .hide-code-button {
2696
+ position: absolute;
2697
+ top: 100%;
2698
+ margin-top: -1.5rem;
2699
+ left: 0;
2700
+ width: 100%;
2701
+ display: flex;
2702
+ justify-content: center;
2703
+ align-items: flex-end;
2704
+ padding-bottom: 1rem;
2705
+ z-index: 2;
2706
+ }
2647
2707
  .pkt-preview__code {
2708
+ color: var(--pkt-color-text-body-default);
2648
2709
  position: relative;
2649
- margin-bottom: 1rem;
2650
- font-size: 0.8rem;
2651
2710
  }
2652
- .pkt-preview__code > pre {
2711
+ .pkt-preview__code-container {
2712
+ position: relative;
2713
+ padding: 2rem 2rem 0;
2714
+ background-color: var(--pkt-color-grays-gray-800);
2715
+ transition: max-height 0.5s ease;
2716
+ max-height: 50rem;
2717
+ }
2718
+ .pkt-preview__code-container .pkt-tabs {
2719
+ --pkt-tabs-bg: var(--pkt-color-grays-gray-800);
2720
+ }
2721
+ .pkt-preview__code-container.hide-code {
2722
+ overflow: hidden;
2723
+ max-height: 11.7rem;
2724
+ }
2725
+ .pkt-preview__code-container.hide-code:after {
2726
+ content: "";
2727
+ display: block;
2728
+ position: absolute;
2729
+ top: 0;
2730
+ bottom: 0;
2731
+ left: 0;
2732
+ right: 0;
2733
+ background: linear-gradient(180deg, transparent 0%, transparent 93%, var(--pkt-color-grays-gray-800) 100%);
2734
+ }
2735
+ .pkt-preview__code pre {
2736
+ max-height: 30rem;
2737
+ overflow: auto;
2653
2738
  margin-top: 0 !important;
2654
- background-color: var(--pkt-color-surface-default-gray) !important;
2739
+ background-color: transparent !important;
2740
+ font-size: 1rem;
2741
+ padding: 2rem 0;
2655
2742
  }
2656
2743
  .pkt-preview__copy {
2657
2744
  position: absolute;
@@ -2661,15 +2748,24 @@ pkt-messagebox {
2661
2748
  gap: 0.5rem;
2662
2749
  align-items: center;
2663
2750
  }
2664
- .pkt-preview__specs {
2665
- background-color: var(--pkt-color-surface-default-gray);
2751
+ .pkt-preview__array-item, .pkt-preview__object-editor {
2752
+ position: relative;
2753
+ display: flex;
2754
+ flex-direction: column;
2755
+ gap: 1rem;
2756
+ }
2757
+ .pkt-preview__add-object {
2758
+ text-align: right;
2759
+ margin-top: 0.5rem;
2760
+ }
2761
+ .pkt-preview__remove-object {
2762
+ position: absolute;
2763
+ top: -2rem;
2764
+ right: -0.25rem;
2666
2765
  }
2667
2766
  .pkt-preview__specs pre {
2668
2767
  margin-top: 0 !important;
2669
2768
  }
2670
- .pkt-preview__specs h2 {
2671
- padding: 1rem;
2672
- }
2673
2769
 
2674
2770
  .astro-code.github-light {
2675
2771
  background-color: var(--pkt-color-surface-default-gray) !important;
@@ -3082,7 +3178,7 @@ pkt-messagebox {
3082
3178
  .pkt-tabs__link:focus:not(:active), .pkt-tabs__link:focus-visible:not(:active), .pkt-tabs__button:focus:not(:active), .pkt-tabs__button:focus-visible:not(:active) {
3083
3179
  border: 0;
3084
3180
  box-shadow: none;
3085
- background-color: var(--pkt-color-surface-default-gray);
3181
+ background-color: var(--pkt-tabs-bg);
3086
3182
  outline: 0.25rem solid var(--pkt-color-border-states-focus);
3087
3183
  outline-offset: 0;
3088
3184
  }
@@ -3350,6 +3446,11 @@ pkt-tag > .pkt-tag {
3350
3446
  .pkt-tag.pkt-tag--blue-dark.pkt-btn:hover, .pkt-tag.pkt-tag--blue-dark.pkt-btn:focus, .pkt-tag.pkt-tag--blue-dark.pkt-tag--hover {
3351
3447
  background-color: var(--pkt-color-brand-warm-blue-1000) !important;
3352
3448
  color: var(--pkt-color-brand-neutrals-200) !important;
3449
+ }
3450
+ .pkt-tag.pkt-tag--blue-dark.pkt-btn:hover,
3451
+ .pkt-tag.pkt-tag--blue-dark.pkt-btn:hover svg, .pkt-tag.pkt-tag--blue-dark.pkt-btn:focus,
3452
+ .pkt-tag.pkt-tag--blue-dark.pkt-btn:focus svg, .pkt-tag.pkt-tag--blue-dark.pkt-tag--hover,
3453
+ .pkt-tag.pkt-tag--blue-dark.pkt-tag--hover svg {
3353
3454
  --fg-color: var(--pkt-color-brand-neutrals-200) !important;
3354
3455
  }
3355
3456
  .pkt-tag.pkt-tag--small {
@@ -3533,7 +3634,7 @@ pkt-select {
3533
3634
  padding-right: 3rem;
3534
3635
  }
3535
3636
  .pkt-input:is(select):not([multiple]), .pkt-textinput__input:is(select):not([multiple]) {
3536
- --svg: url(https://punkt-cdn.oslo.kommune.no/13.2/icons/chevron-thin-down.svg);
3637
+ --svg: url(https://punkt-cdn.oslo.kommune.no/13.3/icons/chevron-thin-down.svg);
3537
3638
  background-image: var(--svg);
3538
3639
  background-repeat: no-repeat;
3539
3640
  background-position: right 0.7rem top 50%;