Compare commits

...
Author SHA1 Message Date
github-actions[bot] 3e41d0e6c5 Lerna versionbump [ci skip]
- @navikt/ds-react@0.5.3
2021-06-04 16:12:35 +00:00
Ken d304309962 Update index.ts 2021-06-04 17:57:19 +02:00
github-actions[bot] 360294cab3 Lerna versionbump [ci skip]
- @navikt/ds-css@0.5.3
 - @navikt/ds-tokens@0.3.2
2021-06-04 09:55:02 +00:00
Andreas NordahlandKen cac9c5d1ed spacing as tokens (#1114)
* spacing as token

* missed a few

* fikset typo spacing

* fikset button sizing

Co-authored-by: Ken <ken.aleksander@gmail.com>
2021-06-04 11:40:23 +02:00
github-actions[bot] 909e431714 Lerna versionbump [ci skip]
- @navikt/ds-css@0.5.2
 - @navikt/ds-react@0.5.2
2021-06-02 11:49:55 +00:00
KenandAndreas Nordahl c57ebc6d31 Vnext: Lenkepanel -> LinkPanel (#1107)
Co-authored-by: Andreas Nordahl <andnorda@gmail.com>
2021-06-02 13:35:30 +02:00
Ken 59d3b86d25 Update CHANGELOG.md 2021-06-02 12:32:00 +02:00
github-actions[bot] 3795a1e8fa Lerna versionbump [ci skip]
- @navikt/ds-css@0.5.1
 - @navikt/ds-react@0.5.1
 - @navikt/ds-tokens@0.3.1
2021-06-02 09:19:08 +00:00
KenandAndreas Nordahl c526873cd3 Vnext: Nytt Typo-oppsett(#1079)
Co-authored-by: Andreas Nordahl <andnorda@gmail.com>
2021-06-02 11:04:12 +02:00
github-actions[bot] 8ee6ce93e4 Lerna versionbump [ci skip]
- @navikt/ds-css@0.4.2
 - @navikt/ds-react@0.4.3
2021-05-28 11:23:29 +00:00
KenandAndreas Nordahl a086727d19 Vnext: paneler komponent (#1108)
* laget panel komponent

* default panel border to false

Co-authored-by: Andreas Nordahl <andnorda@gmail.com>
2021-05-28 13:08:14 +02:00
Ken 2e9099c1a9 Update Panel.overview.mdx 2021-05-26 13:27:17 +02:00
github-actions[bot] 7d4e866a7c Lerna versionbump [ci skip]
- @navikt/ds-icons@0.3.2
 - @navikt/ds-react@0.4.2
2021-05-25 19:01:21 +00:00
Ken b01c67f2a6 Oppdatert ikoner (#1105) 2021-05-25 20:47:29 +02:00
Ken a583f69c83 Oppdatert changelog for April + Mai 2021-05-25 10:45:14 +02:00
github-actions[bot] d2675e0767 Lerna versionbump [ci skip]
- nav-frontend-hjelpetekst@3.0.2
 - nav-frontend-popover@2.0.2
2021-05-21 09:40:52 +00:00
Ken 1464aca19e popover-position updates nå onMount (#1104) 2021-05-21 11:27:08 +02:00
Ken 39fdcadabe Oppdatert lenker til Figma på design.nav.no (#1103) 2021-05-21 09:28:01 +02:00
github-actions[bot] efc45667b0 Lerna versionbump [ci skip]
- @navikt/ds-css@0.4.1
 - @navikt/ds-react@0.4.1
 - @navikt/ds-tokens@0.2.1
 - nav-frontend-alertstriper-style@3.0.1
 - nav-frontend-alertstriper@4.0.1
 - nav-frontend-chevron@1.0.30
 - nav-frontend-core@6.0.1
 - nav-frontend-ekspanderbartpanel-style@2.0.1
 - nav-frontend-ekspanderbartpanel@4.0.1
 - nav-frontend-etiketter-style@2.0.1
 - nav-frontend-etiketter@3.0.1
 - nav-frontend-grid@2.0.1
 - nav-frontend-hjelpetekst-style@3.0.1
 - nav-frontend-hjelpetekst@3.0.1
 - nav-frontend-ikoner-assets@3.0.1
 - nav-frontend-ikonknapper@2.0.1
 - nav-frontend-knapper-style@2.0.1
 - nav-frontend-knapper@3.0.1
 - nav-frontend-lenkepanel-style@2.0.1
 - nav-frontend-lenkepanel@2.0.1
 - nav-frontend-lenker-style@2.0.1
 - nav-frontend-lenker@2.0.1
 - nav-frontend-lesmerpanel-style@2.0.1
 - nav-frontend-lesmerpanel@2.0.1
 - nav-frontend-lukknapp-style@2.0.1
 - nav-frontend-lukknapp@2.0.1
 - nav-frontend-modal-style@2.0.1
 - nav-frontend-modal@2.0.1
 - nav-frontend-paneler-style@2.0.1
 - nav-frontend-paneler@3.0.1
 - nav-frontend-popover-style@2.0.1
 - nav-frontend-popover@2.0.1
 - nav-frontend-skjema-style@3.0.1
 - nav-frontend-skjema@4.0.1
 - nav-frontend-snakkeboble-style@2.0.1
 - nav-frontend-snakkeboble@3.0.1
 - nav-frontend-spinner@3.0.1
 - nav-frontend-stegindikator-style@2.0.1
 - nav-frontend-stegindikator@2.0.1
 - nav-frontend-tabell-style@2.0.1
 - nav-frontend-tabs-style@2.0.1
 - nav-frontend-tabs@2.0.1
 - nav-frontend-tekstomrade@3.0.1
 - nav-frontend-toggle-style@2.0.1
 - nav-frontend-toggle@2.0.1
 - nav-frontend-typografi-style@2.0.1
 - nav-frontend-typografi@4.0.1
 - nav-frontend-veileder-style@3.0.1
 - nav-frontend-veileder@3.0.1
 - nav-frontend-veilederpanel-style@2.0.1
 - nav-frontend-veilederpanel@2.0.1
2021-05-20 08:10:18 +00:00
KenandAndreas Nordahl c04db248fb Oppdatert fargepalett for nav-frontend-core + ds-tokens (#1092)
Co-authored-by: Ken <26967723+KenAJoh@users.noreply.github.com>
Co-authored-by: Andreas Nordahl <andnorda@gmail.com>
2021-05-20 09:55:47 +02:00
github-actions[bot] c4f279accd Lerna versionbump [ci skip]
- @navikt/ds-css@0.3.4
 - @navikt/ds-tokens@0.1.5
 - nav-frontend-alertstriper@3.1.2
 - nav-frontend-chevron@1.0.29
 - nav-frontend-ekspanderbartpanel@3.1.4
 - nav-frontend-etiketter@2.1.3
 - nav-frontend-grid@1.1.2
 - nav-frontend-hjelpetekst@2.1.4
 - nav-frontend-ikonknapper@1.1.4
 - nav-frontend-js-utils@1.0.19
 - nav-frontend-knapper@2.1.4
 - nav-frontend-lenkepanel@1.1.2
 - nav-frontend-lenker@1.1.2
 - nav-frontend-lesmerpanel@1.1.3
 - nav-frontend-lukknapp@1.2.2
 - nav-frontend-modal@1.2.2
 - nav-frontend-paneler@2.1.2
 - nav-frontend-popover@1.1.4
 - nav-frontend-skjema@3.2.6
 - nav-frontend-snakkeboble@2.1.2
 - nav-frontend-spinner@2.0.17
 - nav-frontend-stegindikator@1.1.3
 - nav-frontend-tabs@1.1.3
 - nav-frontend-tekstomrade@2.1.3
 - nav-frontend-toggle@1.1.4
 - nav-frontend-typografi@3.1.2
 - nav-frontend-veileder-style@2.1.2
 - nav-frontend-veileder@2.1.4
 - nav-frontend-veilederpanel@1.1.4
2021-05-19 13:10:13 +00:00
Ken b7b567a040 Prop for hvit bakgrunn på veileder sin snakkeboble (#1099) 2021-05-19 14:53:43 +02:00
Ken cd80c11deb Fikset problem med build (#1100)
* fikset problem med build

* fikset eventhrottle error for chromatic
2021-05-19 14:53:19 +02:00
Ken 9169c87c62 Oppdatert bakgrunnsfarger tag for å synce med etikett og figma (#1097) 2021-05-18 12:25:35 +02:00
github-actions[bot] f735ae608b Lerna versionbump [ci skip]
- nav-frontend-skjema@3.2.5
2021-05-18 09:16:53 +00:00
Ida 22e1f0bf98 Update textarea-controlled.tsx (#1098) 2021-05-18 10:19:03 +02:00
github-actions[bot] ed87b47750 Lerna versionbump [ci skip]
- @navikt/ds-css@0.3.3
 - @navikt/ds-tokens@0.1.4
 - nav-frontend-etiketter-style@1.1.2
 - nav-frontend-etiketter@2.1.2
 - nav-frontend-skjema-style@2.2.3
 - nav-frontend-skjema@3.2.4
2021-05-18 07:58:06 +00:00
Andreas Nordahl 983c2c1def Bakgrunnsfarger på etiketter stemmer nå overens med Figma (#1094) 2021-05-18 09:19:39 +02:00
Andreas Nordahl 436c1d559c always underline bekreftCheckboksPanel label on hover (#1095) 2021-05-18 09:19:14 +02:00
Andreas Nordahl be2905ba02 cjs tokens (#1096) 2021-05-14 16:11:10 +02:00
github-actions[bot] d48cd874b2 Lerna versionbump [ci skip]
- @navikt/ds-icons@0.3.1
 - @navikt/ds-react@0.3.5
2021-05-10 12:11:17 +00:00
Ken 522ee6cd61 Oppdatert ikoner (#1090) 2021-05-10 13:58:14 +02:00
Ken c0aca464ea oppdatert storybook (#1088) 2021-05-10 13:19:30 +02:00
github-actions[bot] 746943014d Lerna versionbump [ci skip]
- @navikt/ds-react@0.3.3
 - nav-frontend-ekspanderbartpanel@3.1.3
 - nav-frontend-hjelpetekst@2.1.3
 - nav-frontend-ikonknapper@1.1.3
 - nav-frontend-js-utils@1.0.18
 - nav-frontend-knapper@2.1.3
 - nav-frontend-lesmerpanel@1.1.2
 - nav-frontend-lukknapp@1.2.1
 - nav-frontend-modal@1.2.1
 - nav-frontend-popover@1.1.3
 - nav-frontend-skjema@3.2.3
 - nav-frontend-stegindikator@1.1.2
 - nav-frontend-tabs@1.1.2
 - nav-frontend-tekstomrade@2.1.2
 - nav-frontend-toggle@1.1.3
 - nav-frontend-veileder@2.1.3
 - nav-frontend-veilederpanel@1.1.3
2021-05-10 08:32:44 +00:00
Terje KarlsenandKen 9fc9ca6666 Legger til typeguard for children i Tekstomrade-komponenten (#1089)
* legger til typeguard dersom children er falsy

* Tsconfig strict + fixes (#1087)

* fikset ts errors i nav-frontend

* oppdatert versjoner for modal og lukknapp

* sjekket endringer i storybook

Co-authored-by: Ken <26967723+KenAJoh@users.noreply.github.com>
2021-05-10 10:18:54 +02:00
github-actions[bot] f9766fd7ca Lerna versionbump [ci skip]
- @navikt/ds-css@0.3.2
2021-05-04 07:32:04 +00:00
Ken 15bb29a346 fikset sticky scroll (#1084) 2021-05-04 09:18:06 +02:00
github-actions[bot] 3d80ac7c11 Lerna versionbump [ci skip]
- @navikt/ds-react@0.3.2
2021-04-30 07:59:47 +00:00
Anders Bråthen Nomerstad aba747c7de Beholder state-objektet ved scrolling med anchor-menu. Bruker replaceState for å gi en mer forventet back funksjonalitet. (#1085) 2021-04-30 09:46:21 +02:00
226 changed files with 4498 additions and 3745 deletions

No files matched your search

+1 -1
View File
@@ -16,7 +16,7 @@ module.exports = (baseConfig) => {
}
);
baseConfig.config.resolve.alias = {
...baseConfig.config.resolve?.alias,
...baseConfig.config.resolve.alias,
"./normalize.css": path.resolve(
__dirname,
"../node_modules/normalize.css/normalize.css"
+3 -3
View File
@@ -1,8 +1,8 @@
.navds-accordion-anchor-menu {
padding: 1rem 0;
padding: var(--navds-spacing-4) 0;
}
.navds-accordion-anchor-menu__title {
margin-left: 1rem;
margin-right: 1rem;
margin-left: var(--navds-spacing-4);
margin-right: var(--navds-spacing-4);
}
+5 -5
View File
@@ -32,7 +32,7 @@
.navds-accordion-menu-item,
.navds-accordion-menu-collapsable__button {
display: flex;
padding: 0.75rem 1rem;
padding: var(--navds-spacing-3) var(--navds-spacing-4);
line-height: 1.5rem; /* TODO: fix typography. */
}
@@ -40,7 +40,7 @@
font-size: 1.5rem;
color: var(--navds-color-text-link);
flex-shrink: 0;
margin-left: 0.5rem;
margin-left: var(--navds-spacing-2);
}
.navds-accordion-menu-collapsable--open
@@ -53,7 +53,7 @@
.navds-accordion-menu-collapsable
.navds-accordion-menu-collapsable
.navds-accordion-menu-collapsable__button {
padding-left: 2rem;
padding-left: var(--navds-spacing-8);
}
.navds-accordion-menu-collapsable
@@ -63,7 +63,7 @@
.navds-accordion-menu-collapsable
.navds-accordion-menu-collapsable
.navds-accordion-menu-collapsable__button {
padding-left: 3rem;
padding-left: var(--navds-spacing-12);
}
.navds-accordion-menu-collapsable
@@ -75,7 +75,7 @@
.navds-accordion-menu-collapsable
.navds-accordion-menu-collapsable
.navds-accordion-menu-collapsable__button {
padding-left: 4rem;
padding-left: var(--navds-spacing-16);
}
.navds-accordion-menu-item:focus,
+3 -9
View File
@@ -26,7 +26,7 @@
height: 1.25em;
transform: rotateZ(0deg);
flex-shrink: 0;
margin-left: 1rem;
margin-left: var(--navds-spacing-4);
}
.navds-accordion__chevron--up {
@@ -38,7 +38,7 @@
}
.navds-accordion__button {
padding: 1rem;
padding: var(--navds-spacing-4);
border-radius: 4px;
background: transparent;
border: 0;
@@ -51,19 +51,13 @@
align-items: center;
}
.navds-accordion__button .navds-accordion__heading {
font-size: var(--navds-font-size-large);
font-weight: var(--navds-font-weight-bold);
line-height: var(--navds-font-line-height-large);
}
.navds-accordion__button:hover .navds-accordion__heading {
text-decoration: underline;
color: var(--navds-color-text-link);
}
.navds-accordion__content {
padding: 0.5rem 1rem 1rem;
padding: var(--navds-spacing-2) var(--navds-spacing-4) var(--navds-spacing-4);
}
.navds-accordion--open .navds-accordion__content {
+2 -4
View File
@@ -3,18 +3,16 @@
border: var(--navds-border-default);
/* Padding calculated based on 16px font for 64px tall alert */
padding: 1.1875em 1em;
padding: 1.1875rem var(--navds-spacing-4);
display: grid;
grid-auto-flow: column;
column-gap: 0.75rem;
justify-content: start;
font-size: var(--navds-font-size-small);
line-height: var(--navds-font-line-height-small);
}
.navds-alert--small {
border-radius: 0;
padding: 0.5em 1em;
padding: var(--navds-spacing-2) var(--navds-spacing-4);
}
.navds-alert > svg {
+22 -25
View File
@@ -3,24 +3,21 @@
cursor: pointer;
background-color: var(--navds-color-background);
color: var(--navds-color-action-default);
font: inherit;
margin: 0;
text-align: center;
text-decoration: none;
font-size: var(--navds-font-size-small);
line-height: var(--navds-font-line-height-small);
border-color: var(--navds-color-action-default);
border-radius: 2px;
border-style: solid;
border-width: 2px;
/* Padding calculated based on 16px font for 40px tall button */
padding: calc(0.5625em - 2px) calc(2em - 2px);
/* Padding calculated based on 18px font for 44px tall button */
padding: calc(0.625rem - 2px) calc(var(--navds-spacing-8) - 2px);
}
.navds-button.navds-button--small {
.navds-button--small {
/* Padding calculated based on 16px font for 32px tall button */
padding: calc(0.3125em - 2px) calc(1.11em - 2px);
padding: calc(0.3125rem - 2px) calc(var(--navds-spacing-4) - 2px);
}
.navds-button:focus {
@@ -38,14 +35,14 @@
background-color: var(--navds-color-action-hover);
border-width: 0;
/* Padding calculated based on 16px font for 40px tall button */
padding: 0.5625em 2em;
/* Padding calculated based on 18px font for 44px tall button */
padding: 0.625rem var(--navds-spacing-8);
}
.navds-button--primary:hover.navds-button--small,
.navds-button--primary:active.navds-button--small {
/* Padding calculated based on 16px font for 32px tall button */
padding: 0.3125em 1.11em;
padding: 0.3125rem var(--navds-spacing-4);
}
.navds-button--primary:active {
@@ -89,8 +86,8 @@
.navds-button--action,
.navds-button--danger {
/* Padding calculated based on 16px font for 40px tall button */
padding: 0.5625em 2em;
/* Padding calculated based on 18px font for 44px tall button */
padding: 0.625rem var(--navds-spacing-8);
border-width: 0;
transform: translateY(calc(-1 * 2px));
position: relative;
@@ -100,7 +97,7 @@
.navds-button--action.navds-button--small,
.navds-button--danger.navds-button--small {
/* Padding calculated based on 16px font for 32px tall button */
padding: 0.3125em 1.11em;
padding: 0.3125rem var(--navds-spacing-4);
}
.navds-button--action:not(:focus),
@@ -158,8 +155,8 @@
.navds-button--danger:focus,
.navds-button--action:focus {
/* Padding calculated based on 16px font for 40px tall button */
padding: calc(0.5625em - 2px) calc(2em - 2px);
/* Padding calculated based on 18px font for 44px tall button */
padding: calc(0.625rem - 2px) calc(var(--navds-spacing-8) - 2px);
transform: translateY(calc(-1 * 2px));
position: relative;
border-width: 2px;
@@ -168,7 +165,7 @@
.navds-button--action:focus.navds-button--small,
.navds-button--danger:focus.navds-button--small {
/* Padding calculated based on 16px font for 32px tall button */
padding: calc(0.3125em - 2px) calc(1.11em - 2px);
padding: calc(0.3125rem - 2px) calc(var(--navds-spacing-4) - 2px);
}
.navds-button--action:hover:focus {
@@ -181,8 +178,8 @@
.navds-button--action:hover:focus,
.navds-button--danger:hover:focus {
/* Padding calculated based on 16px font for 40px tall button */
padding: 0.5625em 2em;
/* Padding calculated based on 18px font for 44px tall button */
padding: 0.625rem var(--navds-spacing-8);
border-width: 0;
color: var(--navds-color-text-inverse);
}
@@ -190,7 +187,7 @@
.navds-button--action:hover:focus.navds-button--small,
.navds-button--danger:hover:focus.navds-button--small {
/* Padding calculated based on 16px font for 32px tall button */
padding: 0.3125em 1.11em;
padding: 0.3125rem var(--navds-spacing-4);
}
.navds-button--action:active:focus {
@@ -205,8 +202,8 @@
.navds-button--action:active:focus,
.navds-button--danger:active:focus {
/* Padding calculated based on 16px font for 40px tall button */
padding: calc(0.5625em - 2px) calc(2em - 2px);
/* Padding calculated based on 18px font for 44px tall button */
padding: calc(0.625rem - 2px) calc(var(--navds-spacing-8) - 2px);
transform: translateY(0);
position: relative;
border-width: 2px;
@@ -216,7 +213,7 @@
.navds-button--action:active:focus.navds-button--small,
.navds-button--danger:active:focus.navds-button--small {
/* Padding calculated based on 16px font for 32px tall button */
padding: calc(0.3125em - 2px) calc(1.11em - 2px);
padding: calc(0.3125rem - 2px) calc(var(--navds-spacing-4) - 2px);
}
.navds-button--action:hover:focus:active {
@@ -267,8 +264,8 @@
**************************/
.navds-button:disabled:disabled {
/* Padding calculated based on 16px font for 40px tall button */
padding: 0.5625em 2em;
/* Padding calculated based on 18px font for 44px tall button */
padding: 0.625rem var(--navds-spacing-8);
background-color: var(--navds-color-disabled);
color: var(--navds-color-text-inverse);
cursor: not-allowed;
@@ -279,5 +276,5 @@
.navds-button:disabled:disabled.navds-button--small {
/* Padding calculated based on 16px font for 32px tall button */
padding: 0.3125em 1.11em;
padding: 0.3125rem var(--navds-spacing-4);
}
+2 -2
View File
@@ -2,9 +2,9 @@
display: inline-flex;
align-items: center;
column-gap: 0.5em;
padding: 0.25em;
padding: var(--navds-spacing-1);
}
.navds-copy-to-clipboard__popover {
padding: 0.25rem;
padding: var(--navds-spacing-1);
}
+6 -3
View File
@@ -1,4 +1,8 @@
@import "baseline/baseline.css";
@import "typography.css";
@import "grid.css";
@import "layouts.css";
@import "accordion.css";
@import "accordion-anchor-menu.css";
@import "accordion-menu.css";
@@ -6,11 +10,10 @@
@import "button.css";
@import "content-container.css";
@import "copy-to-clipboard.css";
@import "grid.css";
@import "internal-header.css";
@import "layouts.css";
@import "link.css";
@import "modal.css";
@import "popover.css";
@import "tag.css";
@import "typography.css";
@import "panel.css";
@import "link-panel.css";
+4 -16
View File
@@ -21,7 +21,7 @@
**************************/
.navds-header__title {
padding: 0 1.5rem 0 1.5rem;
padding: 0 var(--navds-spacing-6);
border-right: 1px solid var(--navds-color-gray-40);
display: flex;
align-self: stretch;
@@ -29,9 +29,6 @@
text-decoration: none;
margin: 0;
color: var(--navds-color-text-inverse);
font-size: var(--navds-font-size-medium);
font-weight: var(--navds-font-weight-bold);
line-height: var(--navds-font-line-height-medium);
}
.navds-header__title > span > a {
@@ -50,7 +47,7 @@
.navds-header__user {
color: var(--navds-color-text-inverse);
padding: 0 1.5rem 0 1.5rem;
padding: 0 var(--navds-spacing-6);
margin-left: auto;
border-left: 1px solid var(--navds-color-gray-40);
display: flex;
@@ -58,15 +55,6 @@
align-items: center;
}
.navds-header__name {
margin-right: 1rem;
font-size: var(--navds-font-size-small);
font-weight: var(--navds-font-weight-bold);
line-height: var(--navds-font-line-height-small);
}
.navds-header__ident {
font-size: var(--navds-font-size-xs);
font-weight: var(--navds-font-weight-bold);
line-height: var(--navds-font-line-height-xs);
.navds-header__name.navds-body-short {
margin-right: var(--navds-spacing-4);
}
+34 -37
View File
@@ -27,27 +27,6 @@
padding: var(--navds-layout-padding-small);
}
/* prettier-ignore */
.navds-layout__section--sticky {
/* TEMP Solution until dekratøren has updated */
--navds-sidebar-sticky-offset: var(--decorator-sticky-offset);
top: calc(var(--navds-grid-gutter-small) + var(--navds-sidebar-sticky-offset));
position: sticky;
max-height: calc(100vh - var(--navds-grid-gutter-small) * 2 - var(--navds-sidebar-sticky-offset));
overflow-y: auto;
}
.navds-layout__container--3-columns
> .navds-layout__section--left.navds-layout__section--sticky {
position: sticky;
}
.navds-layout__container--2-columns
> .navds-layout__section--left.navds-layout__section--sticky {
position: sticky;
}
.navds-layout__section > *:not(:last-child) {
margin-bottom: var(--navds-layout-padding-small);
}
@@ -74,21 +53,23 @@
}
}
@media (max-width: 959px) {
.navds-layout__container--3-columns
> .navds-layout__section--left.navds-layout__section--sticky {
position: inherit;
}
}
@media (max-width: 647px) {
.navds-layout__container--2-columns
> .navds-layout__section--left.navds-layout__section--sticky {
position: inherit;
}
}
@media (min-width: 648px) {
/* prettier-ignore */
.navds-layout__container--2-columns > .navds-layout__section--left.navds-layout__section--sticky {
/* TEMP Solution until dekratøren has updated */
--navds-sidebar-sticky-offset: var(--decorator-sticky-offset);
top: calc(
var(--navds-grid-gutter-small) + var(--navds-sidebar-sticky-offset)
);
position: sticky;
max-height: calc(
100vh - var(--navds-grid-gutter-small) * 2 -
var(--navds-sidebar-sticky-offset)
);
overflow-y: auto;
}
.navds-layout__container {
grid-gap: var(--navds-grid-gutter-medium-and-larger);
}
@@ -134,6 +115,22 @@
}
@media (min-width: 960px) {
/* prettier-ignore */
.navds-layout__container--3-columns > .navds-layout__section--left.navds-layout__section--sticky {
/* TEMP Solution until dekratøren has updated */
--navds-sidebar-sticky-offset: var(--decorator-sticky-offset);
top: calc(
var(--navds-grid-gutter-small) + var(--navds-sidebar-sticky-offset)
);
position: sticky;
max-height: calc(
100vh - var(--navds-grid-gutter-small) * 2 -
var(--navds-sidebar-sticky-offset)
);
overflow-y: auto;
}
.navds-layout__section--padding.navds-layout__section--left > * {
padding: var(--navds-layout-padding-small);
}
@@ -171,12 +168,12 @@
}
.navds-layout__header-title {
margin: 0.25rem 0.85rem;
margin: var(--navds-spacing-1) var(--navds-spacing-3);
}
@media (min-width: 448px) {
.navds-layout__header-title {
margin: 0.25rem 0;
margin: var(--navds-spacing-1) 0;
}
}
+32
View File
@@ -0,0 +1,32 @@
.navds-link-panel {
display: flex;
justify-content: space-between;
align-items: center;
text-decoration: none;
color: var(--navds-color-gray-90);
}
.navds-link-panel:hover .navds-link-panel-title {
text-decoration: underline;
color: var(--navds-color-text-link);
}
.navds-link-panel:hover {
box-shadow: var(--navds-shadow-hover);
border-color: var(--navds-color-blue-50);
}
.navds-link-panel:focus {
box-shadow: var(--navds-shadow-focus);
outline: none;
}
.navds-link-panel__chevron {
font-size: 1.5rem;
transition: transform 200ms;
}
.navds-link-panel:hover > .navds-link-panel__chevron,
.navds-link-panel:focus-within > .navds-link-panel__chevron {
transform: translateX(4px);
}
+5 -4
View File
@@ -6,7 +6,7 @@
background-color: var(--navds-color-background);
display: block;
position: relative;
padding: 1rem;
padding: var(--navds-spacing-4);
border-radius: 4px;
overflow: auto;
max-height: 100%;
@@ -29,7 +29,7 @@
left: 0;
right: 0;
background-color: var(--navds-color-modal-overlay);
padding: 1rem;
padding: var(--navds-spacing-4);
}
.navds-modal__button--shake {
@@ -45,9 +45,10 @@
.navds-modal__button {
position: fixed;
top: 1rem;
right: 1rem;
top: var(--navds-spacing-4);
right: var(--navds-spacing-4);
display: flex;
padding: var(--navds-spacing-2);
}
.navds-modal__button svg {
+2 -2
View File
@@ -1,6 +1,6 @@
{
"name": "@navikt/ds-css",
"version": "0.3.1",
"version": "0.5.3",
"private": false,
"description": "Css for NAV Designsystem components",
"author": "NAV Designsystem team",
@@ -21,7 +21,7 @@
"watch-css": "postcss -w --use postcss-import -o dist/index.css index.css"
},
"devDependencies": {
"@navikt/ds-tokens": "^0.1.3",
"@navikt/ds-tokens": "^0.3.2",
"normalize.css": "^8.0.1",
"postcss": "^8.2.7",
"postcss-cli": "^8.3.1",
+11
View File
@@ -0,0 +1,11 @@
.navds-panel {
background-color: var(--navds-color-white);
display: block;
padding: var(--navds-spacing-4);
border-radius: var(--navds-border-radius);
border: 1px solid transparent;
}
.navds-panel--border {
border-color: var(--navds-color-border);
}
+1 -3
View File
@@ -3,12 +3,10 @@
border: var(--navds-border-default);
background-color: var(--navds-color-tag-info-background);
border-color: var(--navds-color-tag-info-border);
font-size: var(--navds-font-size-xs);
line-height: var(--navds-font-line-height-xs);
display: inline-block;
/* Padding calculated based on 16px font for 24px tall tag */
padding: 0.0625rem 0.5rem;
padding: 0.0625rem var(--navds-spacing-2);
}
.navds-tag--error {
+123 -38
View File
@@ -1,63 +1,148 @@
/*
* Heading
*/
.navds-heading {
/* Title */
.navds-title {
font-weight: var(--navds-font-weight-bold);
line-height: calc(1em + 0.25rem);
margin: 0;
}
.navds-heading--xxl {
font-size: var(--navds-font-size-heading-xxl);
.navds-title--2xl {
font-size: var(--navds-font-size-title-2xl);
letter-spacing: -0.01em;
line-height: var(--navds-font-line-height-2xl);
}
.navds-heading--xl {
font-size: var(--navds-font-size-heading-xl);
.navds-title--2xl.navds-typo--spacing {
margin-bottom: var(--navds-spacing-5);
}
.navds-heading--large {
font-size: var(--navds-font-size-heading-large);
.navds-title--xl {
font-size: var(--navds-font-size-title-xl);
letter-spacing: -0.008em;
line-height: var(--navds-font-line-height-xl);
}
.navds-heading--medium {
font-size: var(--navds-font-size-heading-medium);
.navds-title--xl.navds-typo--spacing {
margin-bottom: var(--navds-spacing-4);
}
.navds-heading--small {
font-size: var(--navds-font-size-heading-small);
.navds-title--l {
font-size: var(--navds-font-size-title-l);
letter-spacing: -0.004em;
line-height: var(--navds-font-line-height-l);
}
/*
* Text
*/
.navds-text--large {
font-size: var(--navds-font-size-large);
line-height: var(--navds-font-line-height-large);
.navds-title--l.navds-typo--spacing {
margin-bottom: var(--navds-spacing-3);
}
.navds-text--medium {
font-size: var(--navds-font-size-medium);
line-height: var(--navds-font-line-height-medium);
.navds-title--m {
font-size: var(--navds-font-size-title-m);
letter-spacing: -0.002em;
line-height: var(--navds-font-line-height-m);
}
.navds-text--small {
font-size: var(--navds-font-size-small);
line-height: var(--navds-font-line-height-small);
.navds-title--m.navds-typo--spacing {
margin-bottom: var(--navds-spacing-3);
}
.navds-text--xs {
font-size: var(--navds-font-size-xs);
.navds-title--s {
font-size: var(--navds-font-size-title-s);
letter-spacing: -0.001em;
line-height: var(--navds-font-line-height-s);
}
.navds-title--s.navds-typo--spacing {
margin-bottom: var(--navds-spacing-3);
}
/* Ingress */
.navds-ingress {
font-size: var(--navds-font-size-xl);
letter-spacing: -0.001em;
line-height: var(--navds-font-line-height-s);
margin: 0;
}
.navds-ingress.navds-typo--spacing {
margin-bottom: var(--navds-spacing-10);
}
/* Body */
.navds-body-long {
font-size: var(--navds-font-size-l);
letter-spacing: 0;
line-height: var(--navds-font-line-height-s);
margin: 0;
}
.navds-body-short {
font-size: var(--navds-font-size-l);
letter-spacing: 0;
line-height: var(--navds-font-line-height-xs);
margin: 0;
}
.navds-body-long.navds-typo--spacing {
margin-bottom: var(--navds-spacing-7);
}
.navds-body-short.navds-typo--spacing {
margin-bottom: var(--navds-spacing-3);
}
.navds-body--s {
font-size: var(--navds-font-size-m);
letter-spacing: 0.002em;
line-height: var(--navds-font-line-height-xs);
}
/*
* Article typography
*/
.navds-article__lead {
font-size: var(--navds-font-size-article-lead);
line-height: var(--navds-font-line-height-large);
.navds-body-long.navds-body--s.navds-typo--spacing {
margin-bottom: var(--navds-spacing-6);
}
.navds-article__paragraph {
font-size: var(--navds-font-size-article-paragraph);
line-height: var(--navds-font-line-height-medium);
.navds-body-short.navds-body--s.navds-typo--spacing {
margin-bottom: var(--navds-spacing-2);
}
/* Label */
.navds-label {
font-size: var(--navds-font-size-l);
letter-spacing: 0;
line-height: var(--navds-font-line-height-xs);
font-weight: var(--navds-font-weight-bold);
margin: 0;
}
.navds-label.navds-typo--spacing {
margin-bottom: var(--navds-spacing-3);
}
.navds-label--s {
font-size: var(--navds-font-size-m);
letter-spacing: 0.002em;
line-height: var(--navds-font-line-height-2xs);
}
.navds-label--s.navds-typo--spacing {
margin-bottom: var(--navds-spacing-2);
}
/* Small text */
.navds-detail {
font-size: var(--navds-font-size-s);
letter-spacing: 0.004em;
line-height: var(--navds-font-line-height-2xs);
font-weight: var(--navds-font-weight-bold);
margin: 0;
}
.navds-detail.navds-typo--spacing {
margin-bottom: var(--navds-spacing-2);
}
.navds-detail--s {
font-weight: var(--navds-font-weight-regular);
}
.navds-detail--s.navds-typo--spacing {
margin-bottom: var(--navds-spacing-2);
}
+171 -43
View File
@@ -34,16 +34,8 @@
{
"name": "Applicant",
"description": "",
"created_at": "2021-04-26T09:24:38.029Z",
"updated_at": "2021-04-26T09:24:38.029Z",
"pageName": "People",
"visible": true
},
{
"name": "ApplicantFilled",
"description": "",
"created_at": "2021-04-26T09:24:37.963Z",
"updated_at": "2021-04-26T09:24:37.963Z",
"created_at": "2021-04-30T08:02:00.034Z",
"updated_at": "2021-04-30T08:02:00.034Z",
"pageName": "People",
"visible": true
},
@@ -67,16 +59,16 @@
"name": "AutomaticSystem",
"description": "",
"created_at": "2021-04-26T09:24:37.967Z",
"updated_at": "2021-04-26T09:24:37.967Z",
"pageName": "People",
"updated_at": "2021-04-30T10:55:32.848Z",
"pageName": "Settings",
"visible": true
},
{
"name": "AutomaticSystemFilled",
"description": "",
"created_at": "2021-04-26T09:24:38.021Z",
"updated_at": "2021-04-26T09:24:38.021Z",
"pageName": "People",
"updated_at": "2021-04-30T10:55:32.843Z",
"pageName": "Settings",
"visible": true
},
{
@@ -219,7 +211,7 @@
"name": "BowlFilled",
"description": "",
"created_at": "2021-01-28T14:00:38.658Z",
"updated_at": "2021-04-27T15:19:17.267Z",
"updated_at": "2021-04-28T06:44:52.410Z",
"pageName": "Fyrstikkalleen",
"visible": true
},
@@ -352,18 +344,18 @@
"visible": true
},
{
"name": "CaseWorker",
"name": "Caseworker",
"description": "",
"created_at": "2021-04-26T09:24:37.955Z",
"updated_at": "2021-04-26T09:24:37.955Z",
"created_at": "2021-04-28T14:10:50.983Z",
"updated_at": "2021-04-30T07:23:11.918Z",
"pageName": "People",
"visible": true
},
{
"name": "CaseWorkerFilled",
"name": "CaseworkerFilled",
"description": "",
"created_at": "2021-04-26T09:24:37.951Z",
"updated_at": "2021-04-26T09:24:37.951Z",
"created_at": "2021-04-28T14:11:08.212Z",
"updated_at": "2021-04-29T18:47:14.999Z",
"pageName": "People",
"visible": true
},
@@ -415,6 +407,22 @@
"pageName": "Interface",
"visible": true
},
{
"name": "CoApplicant",
"description": "",
"created_at": "2021-04-30T10:55:32.823Z",
"updated_at": "2021-04-30T10:55:32.823Z",
"pageName": "People",
"visible": true
},
{
"name": "CoApplicantFilled",
"description": "",
"created_at": "2021-04-30T10:55:32.819Z",
"updated_at": "2021-04-30T10:55:32.819Z",
"pageName": "People",
"visible": true
},
{
"name": "Cognition",
"description": "",
@@ -479,6 +487,22 @@
"pageName": "Fyrstikkalleen",
"visible": true
},
{
"name": "Copy",
"description": "",
"created_at": "2020-07-01T10:37:42.619Z",
"updated_at": "2021-05-05T12:44:31.388Z",
"pageName": "File",
"visible": true
},
{
"name": "CopyFilled",
"description": "",
"created_at": "2021-01-11T13:37:55.595Z",
"updated_at": "2021-05-05T12:44:31.392Z",
"pageName": "File",
"visible": true
},
{
"name": "Coronavirus",
"description": "",
@@ -528,18 +552,26 @@
"visible": true
},
{
"name": "DecitionPeople",
"name": "DecisionCheck",
"description": "",
"created_at": "2021-04-26T09:24:38.003Z",
"updated_at": "2021-04-26T11:35:36.406Z",
"created_at": "2021-04-28T14:44:00.530Z",
"updated_at": "2021-04-30T09:54:17.432Z",
"pageName": "People",
"visible": true
},
{
"name": "DecitionPeopleFilled",
"name": "DecisionCheckFilled",
"description": "",
"created_at": "2021-04-26T09:24:37.959Z",
"updated_at": "2021-04-26T11:35:36.411Z",
"created_at": "2021-04-28T14:44:00.534Z",
"updated_at": "2021-04-30T09:54:17.436Z",
"pageName": "People",
"visible": true
},
{
"name": "DecisionCross",
"description": "",
"created_at": "2021-04-30T09:54:17.420Z",
"updated_at": "2021-04-30T09:54:17.420Z",
"pageName": "People",
"visible": true
},
@@ -895,6 +927,22 @@
"pageName": "Privacy",
"visible": true
},
{
"name": "Facilitet",
"description": "",
"created_at": "2021-04-28T08:56:11.930Z",
"updated_at": "2021-04-28T08:56:11.930Z",
"pageName": "Jobs",
"visible": true
},
{
"name": "FacilitetFilled",
"description": "",
"created_at": "2021-04-28T08:56:11.927Z",
"updated_at": "2021-04-28T08:56:11.927Z",
"pageName": "Jobs",
"visible": true
},
{
"name": "Family",
"description": "",
@@ -976,18 +1024,18 @@
"visible": true
},
{
"name": "Files",
"name": "FileFolder",
"description": "",
"created_at": "2020-07-01T10:37:42.619Z",
"updated_at": "2021-04-09T13:32:23.449Z",
"created_at": "2021-04-26T09:24:37.955Z",
"updated_at": "2021-04-30T10:55:32.840Z",
"pageName": "File",
"visible": true
},
{
"name": "FilesFilled",
"name": "FileFolderFilled",
"description": "",
"created_at": "2021-01-11T13:37:55.595Z",
"updated_at": "2021-04-09T13:32:23.586Z",
"created_at": "2021-04-26T09:24:37.951Z",
"updated_at": "2021-04-30T10:55:32.854Z",
"pageName": "File",
"visible": true
},
@@ -1023,6 +1071,22 @@
"pageName": "Interface",
"visible": true
},
{
"name": "Findout",
"description": "",
"created_at": "2021-05-05T13:04:25.502Z",
"updated_at": "2021-05-05T13:04:25.502Z",
"pageName": "File",
"visible": true
},
{
"name": "FindoutFilled",
"description": "",
"created_at": "2021-05-05T13:04:25.498Z",
"updated_at": "2021-05-05T13:04:25.498Z",
"pageName": "File",
"visible": true
},
{
"name": "FlowerBladeFall",
"description": "",
@@ -1131,7 +1195,7 @@
"name": "GlobeFilled",
"description": "",
"created_at": "2021-01-11T13:37:55.388Z",
"updated_at": "2021-04-27T15:19:17.262Z",
"updated_at": "2021-04-28T06:44:52.407Z",
"pageName": "International",
"visible": true
},
@@ -1183,11 +1247,27 @@
"pageName": "Health",
"visible": true
},
{
"name": "HandsHeart",
"description": "",
"created_at": "2021-04-28T08:56:11.933Z",
"updated_at": "2021-04-28T10:18:45.912Z",
"pageName": "Jobs",
"visible": true
},
{
"name": "HandsHeartFilled",
"description": "",
"created_at": "2021-04-28T08:56:11.937Z",
"updated_at": "2021-04-28T10:18:45.907Z",
"pageName": "Jobs",
"visible": true
},
{
"name": "Hanger",
"description": "",
"created_at": "2020-07-01T10:37:43.096Z",
"updated_at": "2021-04-27T15:19:17.276Z",
"updated_at": "2021-04-28T06:44:52.416Z",
"pageName": "Family",
"visible": true
},
@@ -1195,7 +1275,7 @@
"name": "HangerFilled",
"description": "",
"created_at": "2021-01-11T13:37:55.218Z",
"updated_at": "2021-04-27T15:19:17.280Z",
"updated_at": "2021-04-28T06:44:52.419Z",
"pageName": "Family",
"visible": true
},
@@ -1443,7 +1523,7 @@
"name": "LightBulb",
"description": "",
"created_at": "2020-07-01T10:37:43.067Z",
"updated_at": "2021-04-27T15:19:17.285Z",
"updated_at": "2021-04-28T06:44:52.422Z",
"pageName": "Reminder",
"visible": true
},
@@ -1683,7 +1763,7 @@
"name": "Mute",
"description": "",
"created_at": "2020-11-23T16:49:12.549Z",
"updated_at": "2021-04-27T15:19:17.252Z",
"updated_at": "2021-04-28T06:44:52.400Z",
"pageName": "Fyrstikkalleen",
"visible": true
},
@@ -1691,7 +1771,7 @@
"name": "MuteFilled",
"description": "",
"created_at": "2021-01-28T14:00:38.578Z",
"updated_at": "2021-04-27T15:19:17.271Z",
"updated_at": "2021-04-28T06:44:52.413Z",
"pageName": "Fyrstikkalleen",
"visible": true
},
@@ -1999,6 +2079,22 @@
"pageName": "Attachment",
"visible": true
},
{
"name": "Profile",
"description": "",
"created_at": "2021-04-26T09:24:38.029Z",
"updated_at": "2021-04-30T10:55:32.846Z",
"pageName": "File",
"visible": true
},
{
"name": "ProfileFilled",
"description": "",
"created_at": "2021-04-26T09:24:37.963Z",
"updated_at": "2021-04-30T10:55:32.851Z",
"pageName": "File",
"visible": true
},
{
"name": "Quiet",
"description": "",
@@ -2399,6 +2495,22 @@
"pageName": "Handicap",
"visible": true
},
{
"name": "SignLanguageTwoHands",
"description": "",
"created_at": "2021-05-20T14:35:02.839Z",
"updated_at": "2021-05-20T14:35:02.839Z",
"pageName": "Handicap",
"visible": true
},
{
"name": "SignLanguageTwoHandsFilled",
"description": "",
"created_at": "2021-05-20T14:35:02.835Z",
"updated_at": "2021-05-21T11:39:15.041Z",
"pageName": "Handicap",
"visible": true
},
{
"name": "SingleParent",
"description": "",
@@ -2479,6 +2591,22 @@
"pageName": "Social media",
"visible": true
},
{
"name": "StopWatch",
"description": "",
"created_at": "2021-04-28T10:15:22.558Z",
"updated_at": "2021-04-28T10:15:22.558Z",
"pageName": "Jobs",
"visible": true
},
{
"name": "StopWatchFilled",
"description": "",
"created_at": "2021-04-28T10:15:22.563Z",
"updated_at": "2021-04-28T10:15:22.563Z",
"pageName": "Jobs",
"visible": true
},
{
"name": "Stroller",
"description": "",
@@ -2731,7 +2859,7 @@
"name": "VolumeDown",
"description": "",
"created_at": "2020-11-23T16:49:12.544Z",
"updated_at": "2021-04-27T15:19:17.237Z",
"updated_at": "2021-04-28T06:44:52.390Z",
"pageName": "Fyrstikkalleen",
"visible": true
},
@@ -2739,7 +2867,7 @@
"name": "VolumeDownFilled",
"description": "",
"created_at": "2021-01-28T14:00:38.534Z",
"updated_at": "2021-04-27T15:19:17.242Z",
"updated_at": "2021-04-28T06:44:52.394Z",
"pageName": "Fyrstikkalleen",
"visible": true
},
@@ -2747,7 +2875,7 @@
"name": "VolumeUp",
"description": "",
"created_at": "2020-11-23T16:49:12.553Z",
"updated_at": "2021-04-27T15:19:17.257Z",
"updated_at": "2021-04-28T06:44:52.404Z",
"pageName": "Fyrstikkalleen",
"visible": true
},
@@ -2755,7 +2883,7 @@
"name": "VolumeUpFilled",
"description": "",
"created_at": "2021-01-28T14:00:38.541Z",
"updated_at": "2021-04-27T15:19:17.247Z",
"updated_at": "2021-04-28T06:44:52.397Z",
"pageName": "Fyrstikkalleen",
"visible": true
},
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@navikt/ds-icons",
"version": "0.2.2",
"version": "0.3.2",
"private": false,
"description": "NAVs egne ikoner i SVG og React format",
"repository": {
+1 -1
View File
@@ -1,3 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M5 2H19V22H5V2ZM3 24V0H21V24H3ZM12 7C12.5523 7 13 6.55228 13 6C13 5.44772 12.5523 5 12 5C11.4477 5 11 5.44772 11 6C11 6.55228 11.4477 7 12 7ZM15 6C15 6.98512 14.5252 7.85933 13.7919 8.40627C14.1761 8.59438 14.5286 8.84629 14.8352 9.15885C15.5388 9.87616 15.9518 10.8623 15.996 12H16V12.2051H14C14 11.4468 13.7476 10.9062 13.4074 10.5594C13.0647 10.21 12.5777 10 12 10C11.4223 10 10.9353 10.21 10.5926 10.5594C10.2524 10.9062 10 11.4468 10 12.2051H8V12H8.00397C8.04822 10.8623 8.46117 9.87616 9.16479 9.15885C9.47138 8.84629 9.82392 8.59438 10.2081 8.40627C9.47482 7.85933 9 6.98512 9 6C9 4.34315 10.3431 3 12 3C13.6569 3 15 4.34315 15 6ZM14 16H7V14H14V16ZM7 18V20H17V18H7Z" fill="#262626"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M15 5C15 6.65685 13.6569 8 12 8C10.3431 8 9 6.65685 9 5C9 3.34315 10.3431 2 12 2C13.6569 2 15 3.34315 15 5ZM17 5C17 7.76142 14.7614 10 12 10C9.23858 10 7 7.76142 7 5C7 2.23858 9.23858 0 12 0C14.7614 0 17 2.23858 17 5ZM18 15.6034L20.517 17.7009L18 18.456L15.483 17.7009L18 15.6034ZM18 20.544L22 19.344V22H14V19.344L18 20.544ZM12 18.4684C12 18.1716 12.1318 17.8901 12.3598 17.7002L17.3598 13.5335C17.7307 13.2244 18.2693 13.2244 18.6402 13.5335L23.6402 17.7002C23.8682 17.8901 24 18.1716 24 18.4684V23C24 23.5523 23.5523 24 23 24H13C12.4477 24 12 23.5523 12 23V18.4684ZM12 13C9.23858 13 7 15.2386 7 18H5C5 14.134 8.13401 11 12 11C13.4274 11 14.7549 11.4272 15.8619 12.1608L14.2297 13.5235C13.5584 13.1885 12.8012 13 12 13Z" fill="#262626"/>
</svg>

Before

Width:  |  Height:  |  Size: 843 B

After

Width:  |  Height:  |  Size: 891 B

-3
View File
@@ -1,3 +0,0 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M3 0V24H21V0H3ZM13.7919 8.40627C14.5252 7.85933 15 6.98512 15 6C15 4.34315 13.6569 3 12 3C10.3431 3 9 4.34315 9 6C9 6.98512 9.47482 7.85933 10.2081 8.40627C9.82391 8.59437 9.47138 8.84629 9.16479 9.15885C8.46117 9.87616 8.04822 10.8623 8.00397 12H15.996C15.9518 10.8623 15.5388 9.87616 14.8352 9.15885C14.5286 8.84629 14.1761 8.59437 13.7919 8.40627ZM14 16H7V14H14V16ZM7 18V20H17V18H7Z" fill="#262626"/>
</svg>

Before

Width:  |  Height:  |  Size: 556 B

-3
View File
@@ -1,3 +0,0 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M7 6C7 7.10457 6.10457 8 5 8C3.89543 8 3 7.10457 3 6C3 4.89543 3.89543 4 5 4C6.10457 4 7 4.89543 7 6ZM9 6C9 8.20914 7.20914 10 5 10C2.79086 10 1 8.20914 1 6C1 3.79086 2.79086 2 5 2C7.20914 2 9 3.79086 9 6ZM2 16.3651C2 15.2417 2.36855 14.4086 2.89284 13.8627C3.4182 13.3156 4.15299 13 5 13C5.84701 13 6.5818 13.3156 7.10716 13.8627C7.63145 14.4086 8 15.2417 8 16.3651V23H10V16.3651C10 14.7884 9.47312 13.4389 8.5497 12.4774C7.62734 11.5169 6.36213 11 5 11C3.63787 11 2.37266 11.5169 1.4503 12.4774C0.526881 13.4389 0 14.7884 0 16.3651V23H2V16.3651ZM17 16V14H14V20H22V16H17ZM12 13V21C12 21.5523 12.4477 22 13 22H23C23.5523 22 24 21.5523 24 21V15C24 14.4477 23.5523 14 23 14H19V13C19 12.4477 18.5523 12 18 12H13C12.4477 12 12 12.4477 12 13ZM23 3H13V10H15V5H21V12H23V3Z" fill="#262626"/>
</svg>

Before

Width:  |  Height:  |  Size: 936 B

@@ -1,3 +0,0 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M9 6C9 8.20914 7.20914 10 5 10C2.79086 10 1 8.20914 1 6C1 3.79086 2.79086 2 5 2C7.20914 2 9 3.79086 9 6ZM0 16.3651V23H10V16.3651C10 14.7884 9.47312 13.4389 8.5497 12.4774C7.62734 11.5169 6.36213 11 5 11C3.63787 11 2.37266 11.5169 1.4503 12.4774C0.526881 13.4389 0 14.7884 0 16.3651ZM12 13V21C12 21.5523 12.4477 22 13 22H23C23.5523 22 24 21.5523 24 21V15C24 14.4477 23.5523 14 23 14H19V13C19 12.4477 18.5523 12 18 12H13C12.4477 12 12 12.4477 12 13ZM23 3H13V10H15H18H19C20.1046 10 21 10.8954 21 12H23V3Z" fill="#262626"/>
</svg>

Before

Width:  |  Height:  |  Size: 672 B

+3
View File
@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M12 8C13.6569 8 15 6.65685 15 5C15 3.34315 13.6569 2 12 2C10.3431 2 9 3.34315 9 5C9 6.65685 10.3431 8 12 8ZM12 10C14.7614 10 17 7.76142 17 5C17 2.23858 14.7614 0 12 0C9.23858 0 7 2.23858 7 5C7 7.76142 9.23858 10 12 10ZM17.0997 13.2048C15.823 11.8476 14.0105 11 12 11C8.13401 11 5 14.134 5 18H7C7 15.2386 9.23858 13 12 13C13.4582 13 14.7706 13.6242 15.6845 14.62L17.0997 13.2048ZM21.689 16.8125L17.2773 21.2243L15.4587 21.5413L15.7757 19.7227L20.1875 15.311C20.6021 14.8963 21.2744 14.8963 21.689 15.311C22.1037 15.7256 22.1037 16.3979 21.689 16.8125ZM23.1032 18.2267L18.2441 23.0859L13 24L13.9141 18.7559L18.7733 13.8968C19.969 12.7011 21.9076 12.7011 23.1032 13.8968C24.2989 15.0924 24.2989 17.031 23.1032 18.2267Z" fill="#262626"/>
</svg>

After

Width:  |  Height:  |  Size: 886 B

@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M17 4.99999C17 7.7614 14.7614 9.99998 12 9.99998C9.23855 9.99998 6.99998 7.7614 6.99998 4.99999C6.99998 2.23857 9.23855 0 12 0C14.7614 0 17 2.23857 17 4.99999ZM12 11C8.13399 11 4.99999 14.134 4.99999 18H14.6289L18.0873 14.5415C16.883 12.4263 14.6081 11 12 11ZM23.2663 15.7337C22.288 14.7554 20.7019 14.7554 19.7236 15.7337L15.4573 20L15 23.9999L19 23.5426L23.2663 19.2764C24.2446 18.2981 24.2446 16.712 23.2663 15.7337Z" fill="#262626"/>
</svg>

After

Width:  |  Height:  |  Size: 590 B

+3
View File
@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M13 6C13 8.20914 11.2091 10 9 10C6.79086 10 5 8.20914 5 6C5 3.79086 6.79086 2 9 2C11.2091 2 13 3.79086 13 6ZM15 6C15 9.31371 12.3137 12 9 12C5.68629 12 3 9.31371 3 6C3 2.68629 5.68629 0 9 0C12.3137 0 15 2.68629 15 6ZM2 22C2 18.134 5.13401 15 9 15C12.866 15 16 18.134 16 22V24H18V22C18 17.0294 13.9706 13 9 13C4.02944 13 0 17.0294 0 22V24H2V22ZM19 7C19 5.34315 17.6569 4 16 4V2C18.7614 2 21 4.23858 21 7C21 8.90071 19.9394 10.5537 18.3778 11.3995C21.6942 12.5511 24 16.0483 24 20H22C22 16.0044 19.1925 13 16 13V12V11V10C17.6569 10 19 8.65685 19 7Z" fill="#262626"/>
</svg>

After

Width:  |  Height:  |  Size: 717 B

@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M15 6C15 9.31371 12.3137 12 9 12C5.68629 12 3 9.31371 3 6C3 2.68629 5.68629 0 9 0C12.3137 0 15 2.68629 15 6ZM0 22V24H18V22C18 17.0294 13.9706 13 9 13C4.02944 13 0 17.0294 0 22ZM19 7C19 5.34315 17.6569 4 16 4V2C18.7614 2 21 4.23858 21 7C21 8.90071 19.9394 10.5537 18.3778 11.3995C21.6942 12.5511 24 16.0483 24 20H22C22 16.0044 19.1925 13 16 13V12V11V10C17.6569 10 19 8.65685 19 7Z" fill="#262626"/>
</svg>

After

Width:  |  Height:  |  Size: 550 B

File renamed without changes.
File renamed without changes.
+3
View File
@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M12 8C13.6569 8 15 6.65685 15 5C15 3.34315 13.6569 2 12 2C10.3431 2 9 3.34315 9 5C9 6.65685 10.3431 8 12 8ZM12 10C14.7614 10 17 7.76142 17 5C17 2.23858 14.7614 0 12 0C9.23858 0 7 2.23858 7 5C7 7.76142 9.23858 10 12 10ZM14.0829 21.0029L21.2929 13.7929L22.7071 15.2071L13.9171 23.9971L11.2191 20.6247L12.7809 19.3753L14.0829 21.0029ZM12 13C9.23858 13 7 15.2386 7 18H5C5 14.134 8.13401 11 12 11C14.5234 11 16.735 12.3353 17.9667 14.3378L16.4956 15.8089C15.6835 14.1457 13.9755 13 12 13Z" fill="#262626"/>
</svg>

After

Width:  |  Height:  |  Size: 654 B

@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M17 5C17 7.76142 14.7614 10 12 10C9.23858 10 7 7.76142 7 5C7 2.23858 9.23858 0 12 0C14.7614 0 17 2.23858 17 5ZM12 11C8.13401 11 5 14.134 5 18H14.3045L17.9667 14.3378C16.735 12.3353 14.5234 11 12 11ZM21.2929 13.7929L14.0829 21.0029L12.7809 19.3753L11.2191 20.6247L13.9171 23.9971L22.7071 15.2071L21.2929 13.7929Z" fill="#262626"/>
</svg>

After

Width:  |  Height:  |  Size: 482 B

+3
View File
@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M11.9997 7.99978C13.6565 7.99978 14.9996 6.65667 14.9996 4.99986C14.9996 3.34305 13.6565 1.99995 11.9997 1.99995C10.3429 1.99995 8.99975 3.34305 8.99975 4.99986C8.99975 6.65667 10.3429 7.99978 11.9997 7.99978ZM11.9997 9.99973C14.761 9.99973 16.9995 7.76121 16.9995 4.99986C16.9995 2.23851 14.761 0 11.9997 0C9.23832 0 6.99981 2.23851 6.99981 4.99986C6.99981 7.76121 9.23832 9.99973 11.9997 9.99973ZM18.4436 18.8862L15.4212 15.0002L16.9998 13.7724L19.7104 17.2574L22.421 13.7724L23.9996 15.0002L20.9772 18.8862L23.9996 22.7721L22.421 24L19.7104 20.515L16.9998 24L15.4211 22.7722L18.4436 18.8862ZM14.1342 13.4769L15.8355 12.1433C14.7339 11.4203 13.4159 10.9997 11.9997 10.9997C8.13378 10.9997 4.99986 14.1336 4.99986 17.9995H6.99981C6.99981 15.2382 9.23832 12.9996 11.9997 12.9996C12.7632 12.9996 13.4868 13.1708 14.1342 13.4769Z" fill="#262626"/>
</svg>

After

Width:  |  Height:  |  Size: 998 B

-3
View File
@@ -1,3 +0,0 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M3.35447 4.79411L7.95487 0L9.39794 1.38476L3.44279 7.59065L0 4.42891L1.35281 2.95585L3.35447 4.79411ZM14 10C14 11.1046 13.1046 12 12 12C10.8954 12 10 11.1046 10 10C10 8.89543 10.8954 8 12 8C13.1046 8 14 8.89543 14 10ZM16 10C16 12.2091 14.2091 14 12 14C9.79086 14 8 12.2091 8 10C8 7.79086 9.79086 6 12 6C14.2091 6 16 7.79086 16 10ZM9 20.4444C9 19.2913 9.37201 18.4362 9.89905 17.8774C10.426 17.3188 11.1589 17 12 17C12.8411 17 13.574 17.3188 14.101 17.8774C14.628 18.4362 15 19.2913 15 20.4444V24H17V20.4444C17 18.8484 16.4766 17.4813 15.5559 16.5052C14.6351 15.5289 13.3681 15 12 15C10.6319 15 9.36488 15.5289 8.4441 16.5052C7.52342 17.4813 7 18.8484 7 20.4444V24H9V20.4444ZM18.0446 7.64282L20.2852 5.29046L22.5258 7.64282L24 6.25L21.6826 3.82336L23.9922 1.39844L22.5391 0L20.2852 2.36014L18.0312 0L16.5781 1.39844L18.8878 3.82336L16.5704 6.25L18.0446 7.64282Z" fill="#262626"/>
</svg>

Before

Width:  |  Height:  |  Size: 1.0 KiB

@@ -1,3 +0,0 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M3.35447 4.79411L7.95487 0L9.39794 1.38476L3.44279 7.59065L0 4.42891L1.35281 2.95585L3.35447 4.79411ZM15.9844 10C15.9844 12.2091 14.1935 14 11.9844 14C9.77524 14 7.98438 12.2091 7.98438 10C7.98438 7.79086 9.77524 6 11.9844 6C14.1935 6 15.9844 7.79086 15.9844 10ZM6.98438 20.4444V24H16.9844V20.4444C16.9844 18.8484 16.461 17.4813 15.5403 16.5052C14.6195 15.5289 13.3524 15 11.9844 15C10.6163 15 9.34926 15.5289 8.42847 16.5052C7.50779 17.4813 6.98438 18.8484 6.98438 20.4444ZM18.0446 7.64282L20.2852 5.29046L22.5258 7.64282L24 6.25L21.6826 3.82336L23.9922 1.39844L22.5391 0L20.2852 2.36014L18.0312 0L16.5781 1.39844L18.8878 3.82336L16.5704 6.25L18.0446 7.64282Z" fill="#262626"/>
</svg>

Before

Width:  |  Height:  |  Size: 831 B

+3
View File
@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M17.0007 7.2676C16.3815 6.91044 16 6.24996 16 5.53513V2H13.6291C13.4207 4.37363 11.4277 6.23529 9 6.23529C6.57226 6.23529 4.57934 4.37363 4.37093 2H2V16H5.53513C6.24996 16 6.91044 16.3815 7.2676 17.0007C7.62475 17.6199 7.62428 18.3827 7.26634 19.0015C7.09735 19.2936 7 19.6324 7 20C7 21.1046 7.89543 22 9 22C10.1046 22 11 21.1046 11 20C11 19.6324 10.9027 19.2936 10.7337 19.0015C10.3757 18.3827 10.3752 17.6199 10.7324 17.0007C11.0896 16.3815 11.75 16 12.4649 16H16V12.4649C16 11.75 16.3815 11.0896 17.0007 10.7324C17.6199 10.3752 18.3827 10.3757 19.0015 10.7337C19.2936 10.9027 19.6324 11 20 11C21.1046 11 22 10.1046 22 9C22 7.89543 21.1046 7 20 7C19.6324 7 19.2936 7.09735 19.0015 7.26634C18.3827 7.62428 17.6199 7.62475 17.0007 7.2676ZM13.6479 1.619C13.6479 1.61901 13.6478 1.61946 13.6473 1.62036L13.6479 1.619ZM18 1.05882C18 0.474051 17.5259 0 16.9412 0H12.8214C12.1198 0 11.6471 0.886695 11.6471 1.58824C11.6471 3.05017 10.4619 4.23529 9 4.23529C7.53807 4.23529 6.35294 3.05017 6.35294 1.58824C6.35294 0.886695 5.88017 0 5.17863 0H1.05882C0.474051 0 0 0.474051 0 1.05882V16.9412C0 17.5259 0.474051 18 1.05882 18H5.53513C5.19479 18.5883 5 19.2714 5 20C5 22.2091 6.79086 24 9 24C11.2091 24 13 22.2091 13 20C13 19.2714 12.8052 18.5883 12.4649 18H16.9412C17.5259 18 18 17.5259 18 16.9412V12.4649C18.5883 12.8052 19.2714 13 20 13C22.2091 13 24 11.2091 24 9C24 6.79086 22.2091 5 20 5C19.2714 5 18.5883 5.19479 18 5.53513V1.05882Z" fill="#262626"/>
</svg>

After

Width:  |  Height:  |  Size: 1.6 KiB

+3
View File
@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M9 4.23529C10.4619 4.23529 11.6471 3.05017 11.6471 1.58824C11.6471 0.886695 12.1198 0 12.8214 0H16.9412C17.5259 0 18 0.474052 18 1.05882V5.53513C18.5883 5.19479 19.2714 5 20 5C22.2091 5 24 6.79086 24 9C24 11.2091 22.2091 13 20 13C19.2714 13 18.5883 12.8052 18 12.4649V16.9412C18 17.5259 17.5259 18 16.9412 18H12.4649C12.8052 18.5883 13 19.2714 13 20C13 22.2091 11.2091 24 9 24C6.79086 24 5 22.2091 5 20C5 19.2714 5.19479 18.5883 5.53513 18H1.05882C0.474051 18 0 17.5259 0 16.9412V1.05882C0 0.474051 0.474052 0 1.05882 0H5.17863C5.88017 0 6.35294 0.886695 6.35294 1.58824C6.35294 3.05017 7.53807 4.23529 9 4.23529Z" fill="#262626"/>
</svg>

After

Width:  |  Height:  |  Size: 784 B

+3
View File
@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M4 0H20V10H18V2H6V7H4V0ZM10.5556 14V11H4V22H20V14H10.5556ZM2 10V23C2 23.5523 2.44772 24 3 24H21C21.5523 24 22 23.5523 22 23V13C22 12.4477 21.5523 12 21 12H12.5556V10C12.5556 9.44772 12.1078 9 11.5556 9H3C2.44772 9 2 9.44772 2 10ZM8 6H16V4H8V6Z" fill="#262626"/>
</svg>

After

Width:  |  Height:  |  Size: 414 B

@@ -0,0 +1,4 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M2 23V10C2 9.44772 2.44772 9 3 9H11.5556C12.1078 9 12.5556 9.44772 12.5556 10V12H21C21.5523 12 22 12.4477 22 13V23C22 23.5523 21.5523 24 21 24H3C2.44772 24 2 23.5523 2 23Z" fill="#262626"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M4 0H20V10H14V9C14 7.89543 13.1046 7 12 7H4V0ZM8 5H16V3H8V5Z" fill="#262626"/>
</svg>

After

Width:  |  Height:  |  Size: 430 B

+3
View File
@@ -0,0 +1,3 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M4.13102 0H14.8325L21.6878 5.71281V16.0077C21.6878 17.2031 21.3186 18.3123 20.6879 19.2273L25 23.5395L23.5395 25L19.2273 20.6879C18.3123 21.3186 17.2031 21.6878 16.0077 21.6878H4.13102V0ZM19.6223 8.26204V11.6259C18.6402 10.8148 17.3809 10.3275 16.0077 10.3275C12.8706 10.3275 10.3275 12.8706 10.3275 16.0077C10.3275 17.3809 10.8148 18.6402 11.6259 19.6223H6.19653V2.06551H12.3931V8.26204H19.6223ZM19.6223 16.0077C19.6223 18.004 18.004 19.6223 16.0077 19.6223C14.0114 19.6223 12.3931 18.004 12.3931 16.0077C12.3931 14.0114 14.0114 12.3931 16.0077 12.3931C18.004 12.3931 19.6223 14.0114 19.6223 16.0077ZM14.4586 2.3771V6.19653H19.0419L14.4586 2.3771Z" fill="#262626"/>
</svg>

After

Width:  |  Height:  |  Size: 819 B

+3
View File
@@ -0,0 +1,3 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M4.13102 0H14.8325L21.6878 5.71281V16.0077C21.6878 17.2031 21.3186 18.3123 20.6879 19.2273L25 23.5395L23.5395 25L19.2273 20.6879C18.3123 21.3186 17.2031 21.6878 16.0077 21.6878H4.13102V0ZM19.6223 16.0077C19.6223 14.0114 18.004 12.3931 16.0077 12.3931C14.0114 12.3931 12.3931 14.0114 12.3931 16.0077C12.3931 18.004 14.0114 19.6223 16.0077 19.6223C18.004 19.6223 19.6223 18.004 19.6223 16.0077ZM14.4586 2.3771V6.19653H19.0419L14.4586 2.3771Z" fill="#262626"/>
</svg>

After

Width:  |  Height:  |  Size: 610 B

+3
View File
@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M11.8782 2.55164C14.5221 0.525043 18.2832 0.44271 21.04 2.54645C24.7767 5.39801 25.0135 10.9328 21.5339 14.092L21.4473 14.1707C21.3995 14.7825 21.138 15.3811 20.6615 15.8449C20.2053 16.289 19.6274 16.5344 19.0367 16.5805C18.9509 17.0274 18.7398 17.4559 18.401 17.8101L18.3569 17.8562C17.9703 18.2603 17.4774 18.502 16.9637 18.5789C16.8949 19.0522 16.6898 19.5108 16.3457 19.892C15.9127 20.3716 15.3375 20.6435 14.7435 20.7036C14.663 21.2227 14.431 21.7241 14.0421 22.1374C13.0077 23.2366 11.2735 23.286 10.178 22.2474L2.63895 15.1011C-0.334695 12.2823 -0.84583 7.72291 1.36331 4.29332C3.68982 0.681511 8.63769 -0.0622641 11.8782 2.55164ZM20.6808 12.1031C22.7043 9.73581 22.376 6.08317 19.8237 4.13548C17.4612 2.33267 14.0942 2.71641 12.1994 5.00442L8.82301 9.0816L9.98237 10.1215C10.3854 10.483 11.0033 10.4589 11.3769 10.0672L14.7099 6.57259L15.4284 7.25576L15.4465 7.23622L20.6177 12.0425C20.6392 12.0625 20.6602 12.0827 20.6808 12.1031ZM14.8063 9.37162L19.2561 13.5075C19.5176 13.7505 19.5223 14.1628 19.2666 14.4117C19.0262 14.6456 18.644 14.6478 18.4011 14.4165L16.2833 12.4006L14.9044 13.8492L16.9302 15.7776L16.9294 15.7786C17.1204 15.9484 17.1324 16.2429 16.9557 16.4277L16.9116 16.4737C16.7494 16.6433 16.4808 16.6505 16.3098 16.4898L16.3031 16.497C16.2672 16.4592 16.2299 16.4224 16.1912 16.3864L14.2118 14.5484L12.8509 16.014L14.8303 17.852C15.0302 18.0376 15.0439 18.3494 14.8611 18.5518C14.696 18.7347 14.4274 18.7663 14.2268 18.641C14.13 18.5125 14.0205 18.391 13.8985 18.2782L13.8693 18.3097L12.165 16.657L10.7727 18.0928L12.705 19.9666C12.8302 20.2315 12.7885 20.5551 12.5835 20.7729C12.3085 21.0652 11.8473 21.0784 11.556 20.8022L4.01698 13.6558C1.74961 11.5065 1.34735 8.00822 3.04612 5.37095C4.6914 2.81673 8.13134 2.26339 10.4532 3.97454L7.2793 7.80714C6.5947 8.63383 6.68519 9.85258 7.48442 10.5694L8.64378 11.6093C9.85292 12.6938 11.7066 12.6216 12.8275 11.4464L14.8063 9.37162Z" fill="#262626"/>
</svg>

After

Width:  |  Height:  |  Size: 2.0 KiB

@@ -0,0 +1,3 @@
<svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M7.00966 7.69902L10.4929 3.17357C10.7697 2.81386 11.0777 2.49229 11.41 2.20971C8.17802 0.018759 3.5804 0.85612 1.36332 4.29804C-0.845834 7.72765 -0.334697 12.287 2.63896 15.1058L10.178 22.2522C11.2736 23.2908 13.0078 23.2414 14.0421 22.1422C14.431 21.7289 14.6631 21.2275 14.7436 20.7084C15.3376 20.6483 15.9128 20.3764 16.3457 19.8968C16.6899 19.5156 16.895 19.057 16.9637 18.5837C17.4775 18.5068 17.9704 18.2651 18.357 17.861L18.401 17.8149C18.7399 17.4607 18.951 17.0321 19.0368 16.5853C19.6275 16.5392 20.2054 16.2938 20.6616 15.8497C21.1381 15.3859 21.4259 14.8774 21.4474 14.1754C21.4689 13.4734 21.0626 13.0359 21.0626 13.0359L17.5861 9.06919L16.375 7.71875L13.5162 10.7833C12.4104 11.9687 10.5628 12.0612 9.34409 10.992L7.14262 9.06068C6.74616 8.71287 6.68797 8.11695 7.00966 7.69902ZM11.8334 3.67844L9.00765 7.43908C8.70103 7.84714 8.75094 8.42061 9.12342 8.76958L9.97504 9.56741C10.7823 10.3237 12.05 10.2811 12.8047 9.47234L16.4531 5.5625L22.0625 12.1875C24.8854 9.47881 24.5841 4.87943 21.4319 2.5622L21.0946 2.31429C18.1555 0.153665 14.0247 0.762115 11.8334 3.67844Z" fill="#262626"/>
</svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

+3
View File
@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M19 2H5V22H19V2ZM3 0V24H21V0H3ZM13 7C13 7.55228 12.5523 8 12 8C11.4477 8 11 7.55228 11 7C11 6.44772 11.4477 6 12 6C12.5523 6 13 6.44772 13 7ZM15 7C15 8.65685 13.6569 10 12 10C10.3431 10 9 8.65685 9 7C9 5.34315 10.3431 4 12 4C13.6569 4 15 5.34315 15 7ZM12 10C13.0792 10 14.0921 10.4013 14.8352 11.1588C15.5388 11.8762 15.9518 12.8623 15.996 14H16V14.2051H14C14 13.4468 13.7476 12.9062 13.4074 12.5594C13.0647 12.21 12.5777 12 12 12C11.4223 12 10.9353 12.21 10.5926 12.5594C10.2524 12.9062 10 13.4468 10 14.2051H8V14H8.00397C8.04822 12.8623 8.46117 11.8762 9.16479 11.1588C9.90787 10.4013 10.9208 10 12 10ZM7 17V19H17V17H7Z" fill="#262626"/>
</svg>

After

Width:  |  Height:  |  Size: 792 B

+3
View File
@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M3 0V24H21V0H3ZM12 10C13.6569 10 15 8.65685 15 7C15 5.34315 13.6569 4 12 4C10.3431 4 9 5.34315 9 7C9 8.65685 10.3431 10 12 10ZM12 10C10.9208 10 9.90787 10.4013 9.16479 11.1588C8.46117 11.8762 8.04822 12.8623 8.00397 14H15.996C15.9518 12.8623 15.5388 11.8762 14.8352 11.1588C14.0921 10.4013 13.0792 10 12 10ZM7 17V19H17V17H7Z" fill="#262626"/>
</svg>

After

Width:  |  Height:  |  Size: 495 B

@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M17.2759 0.794191C16.307 -0.244097 14.667 -0.26221 13.6754 0.754417L9.74143 4.78747C9.649 3.25296 8.37333 2 6.77509 2C5.8588 2 5.06149 2.62698 4.84543 3.51743L4.0564 6.76929C4.01893 6.9237 4 7.08201 4 7.24089V12H6V7.24089L6.78636 4.00006C7.36372 4.00658 7.80905 4.51343 7.73931 5.08828L7.50726 7.00087C7.46893 7.31686 7.58332 7.63224 7.81533 7.85018L7.85281 7.88538C8.73673 8.71568 9.02192 10.0026 8.57152 11.1286L10.4285 11.8714C11.0294 10.3691 10.8502 8.69616 10.0063 7.37311C10.0317 7.35181 10.0562 7.32906 10.0798 7.30485L15.1071 2.15093C15.3017 1.9514 15.6236 1.95495 15.8137 2.15873C15.9899 2.34745 15.9887 2.64064 15.8111 2.82797L12.8809 5.91858C12.5009 6.31936 12.5178 6.9523 12.9186 7.33229C13.3194 7.71227 13.9523 7.69541 14.3323 7.29462L14.9911 6.59976L15.009 6.61825L19.1448 2.6177C19.352 2.41722 19.6799 2.41381 19.8912 2.60994C20.1205 2.82265 20.123 3.18461 19.8967 3.40048L15.3097 7.77646C14.9226 8.14579 14.8947 8.75443 15.2465 9.15755L16.3105 10.3767C17.0272 11.1979 16.9544 12.4418 16.1467 13.1737L15.3284 13.9153L16.6715 15.3973L17.4897 14.6557C19.1051 13.1918 19.2508 10.7041 17.8174 9.06162L17.3824 8.56324L21.2773 4.84759C22.3374 3.83619 22.3257 2.1404 21.2516 1.14381C20.2612 0.224952 18.7253 0.24092 17.7543 1.18017L17.6377 1.29292C17.5403 1.11595 17.4197 0.948242 17.2759 0.794191ZM2 17.6C2 16.195 3.18687 15 4.72128 15C5.75299 15 6.65937 15.5443 7.11914 16.3132L7.41022 16.8H12.1638C12.6707 16.8 13.0245 17.1891 13.0245 17.6C13.0245 18.0109 12.6707 18.4 12.1638 18.4H8.44257V20.4H12.1638C13.254 20.4 14.2271 19.794 14.7076 18.8848L21.2144 17.6647C21.4524 17.6201 21.6958 17.7091 21.8489 17.8968C22.1318 18.2435 21.996 18.7652 21.58 18.93L13.9948 21.9361C13.8883 21.9783 13.7747 22 13.6601 22H2V17.6ZM20.8458 15.699L14.9105 16.8119C14.5597 15.6334 13.4423 14.8 12.1638 14.8H8.49893C7.62226 13.6954 6.23291 13 4.72128 13C2.14528 13 0 15.0285 0 17.6V24H13.6601C14.027 24 14.3906 23.9306 14.7317 23.7954L22.3169 20.7893C23.9904 20.1261 24.5366 18.0274 23.3987 16.6325C22.7827 15.8775 21.8035 15.5194 20.8458 15.699Z" fill="#262626"/>
</svg>

After

Width:  |  Height:  |  Size: 2.2 KiB

@@ -0,0 +1,4 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M14.6641 5.80415L17.8422 2.51184C18.3901 1.94435 18.3975 1.04755 17.8592 0.47103C17.2817 -0.147543 16.3041 -0.158336 15.713 0.447334L10.6778 5.60681L10.6838 5.61275L10.5592 5.73844L10.3805 7.06235C11.7946 8.32246 12.5209 10.1515 12.3976 11.9956H11.3944C11.4081 11.8237 11.4131 11.6519 11.4093 11.4808C11.3789 10.0731 10.7615 8.71373 9.66169 7.76072C9.47276 7.597 9.36744 7.35937 9.3703 7.11283C9.37077 7.07911 9.37325 7.04523 9.37782 7.01135L9.70581 4.58006C9.86396 3.40852 8.95297 2.36629 7.7708 2.36629C7.3203 2.36629 6.9283 2.67454 6.82205 3.11233L6.03079 6.37284C6.01205 6.45005 6.00258 6.52922 6.00258 6.60867V14.166C7.00096 14.4358 7.88069 15.0135 8.50257 15.7969H10.38L10.3809 15.7938H11.4246L11.4237 15.7969H12.1694C13.3803 15.7969 14.4469 16.5442 14.8549 17.6241L14.9727 17.6054L18.0422 14.6519C19.7068 13.0502 19.6718 10.376 17.9657 8.81844L17.2628 8.17671L22.3435 2.88855C22.8886 2.32118 22.895 1.42691 22.3581 0.851822C21.7795 0.23219 20.7997 0.223126 20.2098 0.831949L15.0503 6.15674L14.6641 5.80415Z" fill="#262626"/>
<path d="M12.1696 16.7973H7.98101C7.33725 15.7209 6.10132 14.9967 4.72321 14.9967C2.66694 14.9967 1 16.609 1 18.5979V23.9999H13.6667C13.9076 23.9999 14.1462 23.9543 14.3701 23.8656L21.9393 20.8664C22.9944 20.4483 23.3388 19.1251 22.6213 18.2457C22.2434 17.7825 21.6476 17.5554 21.0573 17.6494L15.101 18.5979C15.101 20.1656 13.8302 21.4365 12.2625 21.4365H8.44641V20.3986H12.1696C13.1978 20.3986 14.0312 19.5924 14.0312 18.5979C14.0312 17.6035 13.1978 16.7973 12.1696 16.7973Z" fill="#262626"/>
</svg>

After

Width:  |  Height:  |  Size: 1.6 KiB

+3
View File
@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M15 2H13V4.04938C18.0533 4.5511 22 8.81465 22 14C22 19.5228 17.5228 24 12 24C6.47715 24 2 19.5228 2 14C2 8.81465 5.94668 4.5511 11 4.04938V2H9V0H15V2ZM20 14C20 18.4183 16.4183 22 12 22C7.58172 22 4 18.4183 4 14C4 9.58172 7.58172 6 12 6C16.4183 6 20 9.58172 20 14ZM19 4L22 7L23.4142 5.58579L20.4142 2.58579L19 4ZM9 10H11V18H9L9 10ZM15 10H13V18H15V10Z" fill="#262626"/>
</svg>

After

Width:  |  Height:  |  Size: 520 B

+3
View File
@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M13 2H15V0H9V2H11V4.04938C5.94668 4.5511 2 8.81465 2 14C2 19.5228 6.47715 24 12 24C17.5228 24 22 19.5228 22 14C22 8.81465 18.0533 4.5511 13 4.04938V2ZM22 7L19 4L20.4142 2.58578L23.4142 5.58578L22 7ZM9 18H11V10H9V18ZM13 18H15V10H13V18Z" fill="#262626"/>
</svg>

After

Width:  |  Height:  |  Size: 405 B

+2 -2
View File
@@ -1,6 +1,6 @@
{
"name": "@navikt/ds-react",
"version": "0.3.1",
"version": "0.5.3",
"private": false,
"description": "NAV designsystem react components",
"author": "NAV Designsystem team",
@@ -34,7 +34,7 @@
"watch": "tsc --watch -p tsconfig-esm.json"
},
"dependencies": {
"@navikt/ds-icons": "^0.2.2",
"@navikt/ds-icons": "^0.3.2",
"@popperjs/core": "^2.5.4",
"classnames": "^2.2.6",
"copy-to-clipboard": "^3.3.1",
@@ -1,6 +1,6 @@
import React, { forwardRef, HTMLAttributes } from "react";
import { AccordionMenu as BaseAccordionMenu } from "../accordion-menu";
import { Heading } from "../index";
import { Title } from "../index";
import { ActiveAnchorProvider } from "./ActiveAnchorStore";
import cl from "classnames";
@@ -21,13 +21,9 @@ const AccordionAnchorMenu = forwardRef<
{...rest}
>
{title && (
<Heading
level={2}
size="medium"
className="navds-accordion-anchor-menu__title"
>
<Title level={2} size="m" className="navds-accordion-anchor-menu__title">
{title}
</Heading>
</Title>
)}
<ActiveAnchorProvider>
<BaseAccordionMenu aria-label={title || "Meny"}>
@@ -13,7 +13,11 @@ export interface ActiveAnchorStore {
}
export const ActiveAnchorContext = createContext({} as ActiveAnchorStore);
export const ActiveAnchorProvider = ({ children }) => {
export const ActiveAnchorProvider = ({
children,
}: {
children: React.ReactNode;
}) => {
const [anchors, setAnchors] = useState<string[]>([]);
const [activeAnchor, setActiveAnchor] = useState<string>();
@@ -21,7 +25,7 @@ export const ActiveAnchorProvider = ({ children }) => {
const scrollListener = () => {
const offset = 100;
const lastPassedAnchor = anchors
.map((anchor) => document.getElementById(anchor))
.map((anchor) => document.getElementById(anchor) as HTMLElement)
.map((element: HTMLElement) => ({
id: element.id,
top: element.getBoundingClientRect().top - offset,
@@ -40,7 +44,7 @@ export const ActiveAnchorProvider = ({ children }) => {
const urlWithoutHash = href.replace(hash, "");
const urlWithAnchor = `${urlWithoutHash}#${lastPassedAnchor}`;
const title = document.title;
window.history.pushState(lastPassedAnchor, title, urlWithAnchor);
window.history.replaceState(window.history.state, title, urlWithAnchor);
setActiveAnchor(lastPassedAnchor);
}
};
@@ -3,7 +3,7 @@ import React from "react";
/**
* @ignore
*/
const MenuItems = ({ children }) => (
const MenuItems = ({ children }: { children: React.ReactNode }) => (
<ul className="navds-accordion-menu__list">
{React.Children.toArray(children).map((child, i) => (
<li key={i} className="navds-accordion-menu__list-item">
+3 -1
View File
@@ -78,7 +78,9 @@ const Accordion = forwardRef<HTMLDivElement, AccordionProps>(
onClick={onClick ? onClick : () => setInternalOpen((open) => !open)}
{...rest}
>
<span className="navds-accordion__heading">{heading}</span>
<span className="navds-accordion__heading navds-title navds-title--s">
{heading}
</span>
<Expand
className={cl(
"navds-accordion__chevron",
+3 -1
View File
@@ -50,7 +50,9 @@ const Alert = forwardRef<HTMLDivElement, AlertProps>(
className,
"navds-alert",
`navds-alert--${variant}`,
`navds-alert--${size}`
`navds-alert--${size}`,
"navds-body-long",
"navds-body--s"
)}
{...rest}
>
+2 -1
View File
@@ -35,7 +35,8 @@ const Button = forwardRef<HTMLButtonElement, ButtonProps>(
className,
"navds-button",
`navds-button--${variant}`,
`navds-button--${size}`
`navds-button--${size}`,
"navds-body-short"
)}
{...rest}
/>
@@ -1,6 +1,6 @@
import * as React from "react";
import { ContentContainer } from "../index";
import { Text } from "../../index";
import { BodyLong } from "../../index";
import "./style.css";
import { useEffect } from "react";
@@ -41,7 +41,7 @@ export default {
export const All = () => {
return (
<ContentContainer className={"navds-story-content-container"}>
<Text size="medium">-- Innhold --</Text>
<BodyLong size="m">-- Innhold --</BodyLong>
</ContentContainer>
);
};
@@ -1,4 +1,4 @@
import { Files } from "@navikt/ds-icons";
import { Copy } from "@navikt/ds-icons";
import copy from "copy-to-clipboard";
import cl from "classnames";
import React, {
@@ -32,14 +32,16 @@ const CopyToClipboard = forwardRef<HTMLButtonElement, CopyToClipboardProps>(
({ children, text, label, icon, className, ...rest }, ref) => {
const buttonRef = useRef<HTMLButtonElement>(null);
const mergedRef = mergeRefs([buttonRef, ref]);
const timeoutRef = useRef<NodeJS.Timeout>();
const timeoutRef = useRef<number | null>();
const [openPopover, setOpenPopover] = useState(false);
useEffect(() => {
if (openPopover) {
timeoutRef.current = setTimeout(() => setOpenPopover(false), 2000);
return () => timeoutRef.current && clearTimeout(timeoutRef.current);
}
timeoutRef.current = openPopover
? window.setTimeout(() => setOpenPopover(false), 2000)
: null;
return () => {
timeoutRef.current && clearTimeout(timeoutRef.current);
};
}, [openPopover]);
const title = `Kopier ${label} (${text})`;
@@ -59,7 +61,7 @@ const CopyToClipboard = forwardRef<HTMLButtonElement, CopyToClipboardProps>(
onClick={handleClick}
{...rest}
>
{icon ? <>{icon}</> : <Files aria-label="Fil ikon for kopiering" />}
{icon ? <>{icon}</> : <Copy aria-label="Fil ikon for kopiering" />}
{children ? children : <span className="sr-only">{title}</span>}
</Button>
<Popover
@@ -1,65 +0,0 @@
import * as React from "react";
import { forwardRef, HTMLAttributes, useEffect, useRef, useState } from "react";
import { Files } from "@navikt/ds-icons";
import "@navikt/ds-css/baseline/utility.css";
import "./style.css";
export interface CopyToClipboardProps
extends HTMLAttributes<HTMLButtonElement> {
/** Verdi som skal kopieres */
value: string;
/** Beskrivelse av verdien, feks "personnummer", "navn", "epost" etc. */
label: string;
}
const CopyToClipboard = forwardRef<HTMLButtonElement, CopyToClipboardProps>(
(props, ref) => {
const { value, label, className, ...rest } = props;
const textAreaRef = useRef<HTMLTextAreaElement>(null);
const [showSuccess, setShowSuccess] = useState(false);
useEffect(() => {
const timeout = setTimeout(() => setShowSuccess(false), 3000);
return () => clearTimeout(timeout);
}, [showSuccess]);
const copyToClipboard = (event: React.MouseEvent) => {
event.stopPropagation();
textAreaRef.current?.select();
document.execCommand("copy");
setShowSuccess(true);
};
const title = `Kopier ${label} (${value})`;
return (
<span className={`${className} navds-copyToClipboard-wrapper`}>
<button
ref={ref}
title={title}
{...rest}
className="navds-copyToClipboard-button"
onClick={copyToClipboard}
>
<Files />
<span className="sr-only">{title}</span>
</button>
{showSuccess && (
<span role="alert" className="navds-copyToClipboard-success">
{label}
</span>
)}
<textarea
className="sr-only"
tabIndex={-1}
aria-hidden={true}
ref={textAreaRef}
value={value}
readOnly
/>
</span>
);
}
);
export default CopyToClipboard;
+8 -6
View File
@@ -34,12 +34,14 @@ export { Link, LinkProps } from "./link/index";
export { Modal, ModalProps } from "./modal/index";
export { Popover, PopoverProps } from "./popover/index";
export { Tag, TagProps } from "./tag/index";
export { LinkPanel, LinkPanelProps, LinkPanelTitle } from "./link-panel/index";
export { Panel, PanelProps } from "./panel/index";
export {
Heading,
HeadingProps,
Lead,
Paragraph,
Text,
TextProps,
Title,
Ingress,
BodyLong,
BodyShort,
Label,
Detail,
} from "./typography/index";
export { OverridableComponent } from "./util/index";
@@ -22,7 +22,7 @@ const InternalHeaderTitle = forwardRef<HTMLElement, InternalHeaderTitleProps>(
createElement(element, {
...rest,
ref,
className: cl("navds-header__title", className),
className: cl("navds-header__title", "navds-label", className),
children: <span>{children}</span>,
})
);
@@ -20,8 +20,10 @@ export interface InternalHeaderUserProps
const InternalHeaderUser = forwardRef<HTMLDivElement, InternalHeaderUserProps>(
({ className, name, ident, ...rest }, ref) => (
<div ref={ref} className={cl("navds-header__user", className)} {...rest}>
<span className="navds-header__name">{name}</span>
<span className="navds-header__ident">{ident}</span>
<span className="navds-header__name navds-body-short navds-body--s">
{name}
</span>
<span className="navds-detail navds-detail--s">{ident}</span>
</div>
)
);
@@ -1,6 +1,6 @@
import cl from "classnames";
import React, { Children, forwardRef, HTMLAttributes, useEffect } from "react";
import { ContentContainer, Heading } from "../../index";
import { ContentContainer, Title } from "../../index";
const cls = (className, columns) =>
cl(
@@ -35,13 +35,13 @@ const ProductPageLayout = forwardRef<HTMLDivElement, ProductPageLayoutProps>(
<ContentContainer>
<div className={cls(className, columns)} {...rest}>
<div className={cl("navds-layout__header-content")}>
<Heading
size={"xxl"}
<Title
size="2xl"
className={cl("navds-layout__header-title")}
level={1}
>
{title}
</Heading>
</Title>
</div>
</div>
</ContentContainer>
@@ -1,7 +1,7 @@
import React, { useEffect, useRef } from "react";
import { forwardRef, ReactNode } from "react";
import cl from "classnames";
import { Heading, CopyToClipboard } from "../../";
import { Title, CopyToClipboard } from "../../";
import { Attachment } from "@navikt/ds-icons";
export interface ProductPagePanelProps
@@ -50,9 +50,9 @@ const ProductPagePanel = forwardRef<HTMLDivElement, ProductPagePanelProps>(
/>
</div>
{icon && <div className={"navds-layout__panel-icon"}>{icon}</div>}
<Heading size={"xl"} className={"navds-layout__panel-title"} level={2}>
<Title size={"xl"} className={"navds-layout__panel-title"} level={2}>
{title}
</Heading>
</Title>
<CopyToClipboard
className="navds-layout__panel-copy"
@@ -1,12 +1,5 @@
import * as React from "react";
import {
Button,
Cell,
Grid,
Heading,
Link,
Paragraph,
} from "../../../../index";
import { Button, Cell, Grid, Title, Link, BodyLong } from "../../../../index";
export const Main = ({ title = true }) => (
<>
@@ -19,30 +12,30 @@ export const Main = ({ title = true }) => (
export const MainOne = ({ title = true }) => (
<div>
{title && (
<Heading level={1} size={"xl"} id={"leo-quis"}>
<Title level={1} size={"xl"} id={"leo-quis"}>
Leo quis
</Heading>
</Title>
)}
<Paragraph>
<BodyLong>
Sed ullamcorper quam eget lorem volutpat, quis cursus risus fermentum.
Quisque varius ornare nulla, ut condimentum sapien dapibus non. Nullam
eget interdum nibh
</Paragraph>
</BodyLong>
</div>
);
export const MainTwo = ({ title = true }) => (
<div>
{title && (
<Heading level={1} size={"xl"} id={"proin-accumsan"}>
<Title level={1} size={"xl"} id={"proin-accumsan"}>
Proin accumsan
</Heading>
</Title>
)}
<Paragraph className={"section"}>
<BodyLong className={"section"}>
Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium
doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo
inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo.
</Paragraph>
</BodyLong>
<Grid className={"section"}>
<Cell xs={6}>
<Link href={"#"}>Ea voluptate</Link>
@@ -51,17 +44,17 @@ export const MainTwo = ({ title = true }) => (
<Link href={"#"}>Quis autem</Link>
</Cell>
</Grid>
<Paragraph className={"section"}>
<BodyLong className={"section"}>
Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet,
consectetur, adipisci velit, sed quia non numquam eius modi tempora.
</Paragraph>
<Heading level={2} size={"large"} id={"nulla-pariatur"}>
</BodyLong>
<Title level={2} size={"l"} id={"nulla-pariatur"}>
Nulla pariatur?
</Heading>
<Paragraph className={"section"}>
</Title>
<BodyLong className={"section"}>
Etiam viverra neque sit amet libero dapibus tincidunt. Pellentesque quis
imperdiet erat. Morbi sodales bibendum volutpat.
</Paragraph>
</BodyLong>
<table className={"section tabell tabell--stripet"}>
<thead>
<tr>
@@ -92,18 +85,18 @@ export const MainTwo = ({ title = true }) => (
</tr>
</tbody>
</table>
<Paragraph className={"section"}>
<BodyLong className={"section"}>
Curabitur a purus pretium, condimentum magna ac, pellentesque diam. Nulla
facilisi. Nullam consequat, dui sed bibendum faucibus, metus mauris
commodo tortor.
</Paragraph>
<Heading level={2} size={"large"} id={"luctus-justo"}>
</BodyLong>
<Title level={2} size={"l"} id={"luctus-justo"}>
Luctus justo
</Heading>
<Paragraph className={"section"}>
</Title>
<BodyLong className={"section"}>
Nunc eget consectetur felis, id scelerisque sapien. Ut id feugiat nulla,
ut cursus sem. In viverra felis vitae aliquet finibus.
</Paragraph>
</BodyLong>
<Button>Søk ...</Button>
</div>
);
@@ -111,30 +104,30 @@ export const MainTwo = ({ title = true }) => (
export const MainThree = ({ title = true }) => (
<div>
{title && (
<Heading level={1} size={"xl"} id={"maecenas-in-pretium"}>
<Title level={1} size={"xl"} id={"maecenas-in-pretium"}>
Maecenas in pretium
</Heading>
</Title>
)}
<Paragraph>
<BodyLong>
Sed ullamcorper quam eget lorem volutpat, quis cursus risus fermentum.
Quisque varius ornare nulla, ut condimentum sapien dapibus non. Nullam
eget interdum nibh
</Paragraph>
<Paragraph>
</BodyLong>
<BodyLong>
Cras tempor eros sed dapibus egestas. Curabitur bibendum quam quis lectus
pretium lacinia. Nunc consequat ac augue quis laoreet. Donec porta, erat
vitae blandit egestas, arcu metus pharetra nulla, et laoreet risus purus
convallis turpis.
</Paragraph>
<Paragraph>
</BodyLong>
<BodyLong>
Suspendisse potenti. Praesent at elit interdum, porttitor sem eget,
blandit dolor. Nunc eget consectetur felis, id scelerisque sapien. Ut id
feugiat nulla, ut cursus sem. In viverra felis vitae aliquet finibus.
</Paragraph>
<Paragraph>
</BodyLong>
<BodyLong>
Vivamus id mi lectus. Duis ac augue magna. Aliquam ut euismod dui. Duis
consectetur, magna a malesuada tempus, elit urna fermentum arcu, at
porttitor magna sapien id enim.
</Paragraph>
</BodyLong>
</div>
);
@@ -0,0 +1,65 @@
import React, { forwardRef } from "react";
import { OverridableComponent } from "../util";
import { Panel } from "../index";
import { Next } from "@navikt/ds-icons";
import cl from "classnames";
export type LinkPanelType = OverridableComponent<LinkPanelProps>;
export interface LinkPanelProps {
props: {
children?: React.ReactNode;
className?: string;
noHeading?: boolean;
border?: boolean;
} & React.HTMLAttributes<HTMLAnchorElement>;
defaultComponent: "a";
}
const LinkPanel: LinkPanelType = forwardRef(
({ children, component = "a", border = true, className, ...rest }, ref) => {
return (
<Panel
component={component}
border={border}
ref={ref}
className={cl("navds-link-panel", className)}
{...rest}
>
{typeof children === "string" ? (
<LinkPanelTitle>{children}</LinkPanelTitle>
) : (
<span className="navds-link-panel__content">{children}</span>
)}
<Next
className="navds-link-panel__chevron"
aria-label="arrow-icon pointing right"
/>
</Panel>
);
}
);
interface LinkPanelTitleProps {
props: {
children: React.ReactNode;
} & React.HTMLAttributes<HTMLSpanElement>;
defaultComponent: "span";
}
export const LinkPanelTitle: OverridableComponent<LinkPanelTitleProps> = forwardRef(
({ className, component: Component = "span", ...rest }, ref) => (
<Component
ref={ref}
className={cl(
"navds-link-panel-title",
"navds-title",
"navds-title--m",
className
)}
{...rest}
/>
)
);
export default LinkPanel;
+2
View File
@@ -0,0 +1,2 @@
export { default as LinkPanel } from "./LinkPanel";
export * from "./LinkPanel";
@@ -0,0 +1,166 @@
import React from "react";
import { LinkPanel, LinkPanelTitle } from "../index";
export default {
title: "ds-react/linkPanel",
component: LinkPanel,
};
export const All = () => {
return (
<>
<h1>Link</h1>
<LinkPanel href="#">Dette er en tekstlenke</LinkPanel>
<h1>No border</h1>
<LinkPanel href="#" border={false}>
Dette er en tekstlenke
</LinkPanel>
<h1>Custom styling</h1>
<LinkPanel href="#" style={{ textDecoration: "none" }}>
<div
style={{
padding: "1rem",
display: "grid",
gridAutoFlow: "column",
gap: "2rem",
alignItems: "center",
}}
>
<Illustration />
<div>
<LinkPanelTitle>Dagpenger</LinkPanelTitle>
<p>
Du kan få dagpenger når du er arbeidsledig og har mistet inntekten
din.
</p>
</div>
</div>
</LinkPanel>
</>
);
};
const Illustration = () => (
<svg xmlns="http://www.w3.org/2000/svg" width="110" height="110">
<defs>
<path id="a" d="M.686.654h4.399v5.852H.686z"></path>
</defs>
<g fill="none" fillRule="evenodd">
<path fill="transparent" d="M-287-1518H993V543H-287z"></path>
<rect
width="796"
height="181"
fill="transparent"
rx="8"
transform="translate(-45 -36)"
></rect>
<circle cx="55" cy="55" r="55" fill="#CCDEE6"></circle>
<g fill="#D8D8D8">
<path
fill="#337C9B"
d="M32.034 5.834l-11.606 3.11-9.517 2.55-4.637 1.242 1.284 4.794 9.069 33.843 1.284 4.795 4.637-1.243 9.518-2.55 11.605-3.11c2.561-.686 4.063-3.389 3.353-6.037L37.956 9.385c-.71-2.648-3.361-4.238-5.922-3.551"
></path>
<path
fill="#38363A"
d="M38.322 51.833l1.77-.474-12.12-45.233-1.77.474z"
></path>
<path
fill="#CE2128"
d="M26.593 57.996l-1.179-.613-.713 1.12-.93-3.47 1.892-.507z"
></path>
</g>
<path
fill="#FFF"
d="M61.773 69.14l8.95 38.112a2.524 2.524 0 0 0 3.036 1.881l32.913-7.745a2.528 2.528 0 0 0 1.88-3.04L98.279 54.591a2.526 2.526 0 0 0-3.037-1.883L68.425 59.02l-6.652 10.12z"
></path>
<path
fill="#C0C0BE"
d="M68.425 59.02l1.326 5.645a2.527 2.527 0 0 1-1.88 3.038l-6.098 1.436 6.652-10.12z"
></path>
<path
stroke="#8E9294"
strokeLinecap="round"
strokeWidth="2.152"
d="M68.902 74.197l11.982-2.82m-10.721 8.19l24.874-5.853M71.424 84.937l24.873-5.853"
></path>
<path
stroke="#8E9294"
strokeLinecap="round"
strokeWidth="2.264"
d="M72.685 90.307l24.873-5.854M73.857 95.297l24.873-5.853M75.021 100.7l24.874-5.853"
></path>
<path
fill="#CCDEE6"
d="M21.698 86.68c-5.726-3.643-7.42-11.243-3.78-16.976 3.64-5.733 11.231-7.427 16.958-3.784 5.727 3.643 7.42 11.243 3.78 16.976-3.639 5.733-11.231 7.427-16.958 3.784z"
></path>
<path
fill="#C42B34"
d="M9.283 106.905a2.772 2.772 0 0 1-.851-3.823l8.759-13.798a2.765 2.765 0 0 1 3.817-.852 2.77 2.77 0 0 1 .851 3.822l-8.758 13.799a2.764 2.764 0 0 1-3.818.852"
></path>
<path
fill="#2E3137"
d="M19.032 90.912c-.86-.547-1.348-1.318-.801-2.179l1.826-2.877a1.841 1.841 0 0 1 2.546-.567 1.847 1.847 0 0 1 .566 2.547l-1.826 2.878c-.547.86-1.452.744-2.31.198"
></path>
<path
fill="#D84B55"
d="M16.41 91l-8.266 13.021a.925.925 0 0 0 .283 1.275.92.92 0 0 0 1.272-.284l7.912-12.463c-.713-.47-1.083-1.039-1.2-1.549"
></path>
<path
fill="#2E3137"
d="M27.811 87.523a11.115 11.115 0 0 1-1.117-.196 11.283 11.283 0 0 1-3.577-1.48c-5.295-3.369-6.866-10.423-3.502-15.723 3.366-5.301 10.412-6.874 15.709-3.504 5.296 3.368 6.866 10.422 3.5 15.723a11.317 11.317 0 0 1-2.86 3.053 11.4 11.4 0 0 1-4.72 2.029c-1.127.203-2.284.24-3.433.098m12.57-4.19c3.911-6.16 2.085-14.358-4.069-18.271-6.154-3.915-14.342-2.089-18.253 4.072-3.91 6.16-2.085 14.356 4.07 18.271 6.153 3.915 14.343 2.09 18.252-4.072"
></path>
<path
fill="#FFD399"
d="M93.445 12.554c2.45 5.367.088 11.707-5.274 14.159-5.361 2.452-11.695.088-14.145-5.279-2.449-5.368-.088-11.707 5.275-14.16 5.361-2.452 11.695-.088 14.144 5.28"
></path>
<path
fill="#FFD399"
d="M91.45 28.239l-4.274 1.954a2.697 2.697 0 0 1-3.574-1.334l-2.775-6.08a2.7 2.7 0 0 1 1.333-3.578l4.274-1.955a2.696 2.696 0 0 1 3.575 1.334l2.775 6.08a2.702 2.702 0 0 1-1.333 3.579"
></path>
<path
fill="#5A5C5D"
d="M94.1 30.6l-6.9 3.156a1.255 1.255 0 0 1-1.043-2.284l6.902-3.155a1.253 1.253 0 1 1 1.04 2.282m1.275 2.794l-6.9 3.156a1.254 1.254 0 1 1-1.041-2.283l6.9-3.156a1.254 1.254 0 0 1 1.041 2.283m-1.682 1.387l-3.044 1.392c-.458.21-.4.889.09 1.006.685.164 1.425.11 2.115-.207a3.25 3.25 0 0 0 1.54-1.464c.233-.449-.241-.936-.701-.727"
></path>
<g transform="rotate(-69 92.268 -44.056)">
<mask id="b" fill="#fff">
<use xlinkHref="#a"></use>
</mask>
<path
fill="#C42B34"
d="M.732 4.08l.397-1.844a1.999 1.999 0 1 1 3.91.842l-.396 1.846A2 2 0 1 1 .732 4.08"
mask="url(#b)"
></path>
</g>
<path
fill="#E1CFB4"
d="M86.458 79.011l-1.334 7.43 6.268-4.21-2.12-2.355z"
></path>
<path
fill="#FECB86"
d="M103.266 56.87l-1.644-1.073-14.841 22.72 1.643 1.072z"
></path>
<path
fill="#FAA736"
d="M104.912 57.945l-1.644-1.074-14.841 22.72 1.644 1.073z"
></path>
<path
fill="#FECB86"
d="M90.071 80.664l1.644 1.072 14.842-22.72-1.645-1.072zm-3.306-.951c.31.203.774-.055 1.188.215a.513.513 0 0 1 .152.15l.32-.488-1.644-1.073-.297.453s-.028.542.281.743"
></path>
<path
fill="#FAA736"
d="M88.106 80.078c.205.277.111.67.548.956.44.286.764.042 1.098.118l.32-.488-1.648-1.075-.318.489z"
></path>
<path
fill="#FECB86"
d="M89.752 81.152a.507.507 0 0 1 .198.08c.414.27.365.797.675 1 .311.204.794-.041.794-.041l.296-.454-1.644-1.073-.32.488z"
></path>
<path
fill="#535756"
d="M85.123 86.44l2.22-1.488-1.749-1.14zm21.434-27.423l-4.935-3.22.437-.67 4.935 3.22z"
></path>
</g>
</svg>
);
+51
View File
@@ -0,0 +1,51 @@
import React, { forwardRef } from "react";
import cl from "classnames";
import { OverridableComponent } from "../util";
export type PanelType = OverridableComponent<PanelProps>;
export interface PanelProps {
props: {
/**
* Component content
*/
children: React.ReactNode;
/**
* @ignore
*/
className?: string;
/**
* Adds a border to the panel
* @default false
*/
border?: boolean;
} & React.HTMLAttributes<HTMLElement>;
defaultComponent: "div";
}
const Panel: PanelType = forwardRef(
(
{
children,
className,
border = false,
component: Component = "div",
...rest
},
ref
) => {
return (
<Component
ref={ref}
className={cl("navds-panel", className, {
"navds-panel--border": border,
})}
{...rest}
>
{children}
</Component>
);
}
);
export default Panel;
+2
View File
@@ -0,0 +1,2 @@
export { default as Panel } from "./Panel";
export * from "./Panel";
@@ -0,0 +1,38 @@
import React from "react";
import { Panel } from "../index";
import { Meta } from "@storybook/react/types-6-0";
export default {
title: "ds-react/panel",
component: Panel,
} as Meta;
export const All = () => {
return (
<div>
<h1>Panel</h1>
<Panel>
Eu quis exercitation voluptate ex. Aute irure esse occaecat minim
cupidatat velit minim duis sint culpa anim laboris. Consectetur nulla eu
commodo ea culpa velit commodo incididunt sunt ipsum. Amet anim
adipisicing minim ipsum do. Non laborum culpa reprehenderit est sint
officia quis excepteur. Fugiat eiusmod eiusmod commodo incididunt nisi
minim ex eu cupidatat quis ex. Lorem irure ea ea enim consectetur ea
aliqua cupidatat. Officia aute veniam aute exercitation ipsum aliqua
adipisicing. Est aliqua ad ullamco aute nostrud amet ea adipisicing
consequat id officia irure pariatur. Eu mollit amet culpa culpa velit.
</Panel>
<h2>With border</h2>
<Panel border>
Eu quis exercitation voluptate ex. Aute irure esse occaecat minim
cupidatat velit minim duis sint culpa anim laboris. Consectetur nulla eu
commodo ea culpa velit commodo incididunt sunt ipsum. Amet anim
adipisicing minim ipsum do. Non laborum culpa reprehenderit est sint
officia quis excepteur. Fugiat eiusmod eiusmod commodo incididunt nisi
minim ex eu cupidatat quis ex. Lorem irure ea ea enim consectetur ea
aliqua cupidatat. Officia aute veniam aute exercitation ipsum aliqua
adipisicing. Est aliqua ad ullamco aute nostrud amet ea adipisicing
consequat id officia irure pariatur. Eu mollit amet culpa culpa velit.
</Panel>
</div>
);
};
+7 -1
View File
@@ -21,7 +21,13 @@ const Tag = forwardRef<HTMLSpanElement, TagProps>(
return (
<span
ref={ref}
className={cl("navds-tag", className, `navds-tag--${variant}`)}
className={cl(
"navds-tag",
className,
"navds-detail",
"navds-detail--s",
`navds-tag--${variant}`
)}
{...rest}
>
{children}
@@ -0,0 +1,44 @@
import React, { forwardRef } from "react";
import cl from "classnames";
import { OverridableComponent } from "../util";
export interface BodyLongProps {
props: {
/**
* M: 18px, S: 16px
* @default "m"
*/
size?: "m" | "s";
/**
* Component content
*/
children: React.ReactNode;
/**
* Custom styling on element
*/
className?: string;
/**
* Adds margins to typo
*/
spacing?: boolean;
} & React.HTMLAttributes<HTMLParagraphElement>;
defaultComponent: "p";
}
const BodyLong: OverridableComponent<BodyLongProps> = forwardRef(
(
{ className, size = "m", spacing, component: Component = "p", ...rest },
ref
) => (
<Component
{...rest}
ref={ref}
className={cl(className, "navds-body-long", {
"navds-body--s": size === "s",
"navds-typo--spacing": !!spacing,
})}
/>
)
);
export default BodyLong;
@@ -0,0 +1,44 @@
import React, { forwardRef } from "react";
import cl from "classnames";
import { OverridableComponent } from "../util/OverridableComponent";
export interface BodyShortProps {
props: {
/**
* M: 18px, S: 16px
* @default "m"
*/
size?: "m" | "s";
/**
* Component content
*/
children: React.ReactNode;
/**
* Custom styling on element
*/
className?: string;
/**
* Adds margins to typo
*/
spacing?: boolean;
} & React.HTMLAttributes<HTMLParagraphElement>;
defaultComponent: "p";
}
const BodyShort: OverridableComponent<BodyShortProps> = forwardRef(
(
{ className, size = "m", spacing, component: Component = "p", ...rest },
ref
) => (
<Component
{...rest}
ref={ref}
className={cl(className, "navds-body-short", {
"navds-body--s": size === "s",
"navds-typo--spacing": !!spacing,
})}
/>
)
);
export default BodyShort;
@@ -0,0 +1,44 @@
import React, { forwardRef } from "react";
import cl from "classnames";
import { OverridableComponent } from "../util";
export interface DetailProps {
props: {
/**
* M: 18px, S: 16px
* @default "m"
*/
size?: "m" | "s";
/**
* Component content
*/
children: React.ReactNode;
/**
* Custom styling on element
*/
className?: string;
/**
* Adds margins to typo
*/
spacing?: boolean;
} & React.HTMLAttributes<HTMLParagraphElement>;
defaultComponent: "p";
}
const Detail: OverridableComponent<DetailProps> = forwardRef(
(
{ className, size = "m", spacing, component: Component = "p", ...rest },
ref
) => (
<Component
{...rest}
ref={ref}
className={cl(className, "navds-detail", {
"navds-detail--s": size === "s",
"navds-typo--spacing": !!spacing,
})}
/>
)
);
export default Detail;
@@ -1,26 +0,0 @@
import React, { forwardRef } from "react";
import cl from "classnames";
export interface HeadingProps extends React.HTMLAttributes<HTMLHeadingElement> {
level: 1 | 2 | 3 | 4 | 5 | 6;
size: "xxl" | "xl" | "large" | "medium" | "small";
children: React.ReactNode;
}
const Heading = forwardRef<HTMLHeadingElement, HeadingProps>(
({ level, size, className, children, ...rest }, ref) => {
let HeadingTag = `h${level}` as React.ElementType;
return (
<HeadingTag
{...rest}
ref={ref}
className={cl(className, "navds-heading", `navds-heading--${size}`)}
>
{children}
</HeadingTag>
);
}
);
export default Heading;
@@ -0,0 +1,35 @@
import React, { forwardRef } from "react";
import cl from "classnames";
import { OverridableComponent } from "../util";
export interface IngressProps {
props: {
/**
* Component content
*/
children: React.ReactNode;
/**
* Custom styling on element
*/
className?: string;
/**
* Adds margins to typo
*/
spacing?: boolean;
} & React.HTMLAttributes<HTMLParagraphElement>;
defaultComponent: "p";
}
const Ingress: OverridableComponent<IngressProps> = forwardRef(
({ className, spacing, component: Component = "p", ...rest }, ref) => (
<Component
{...rest}
ref={ref}
className={cl(className, "navds-ingress", {
"navds-typo--spacing": !!spacing,
})}
/>
)
);
export default Ingress;
+44
View File
@@ -0,0 +1,44 @@
import React, { forwardRef } from "react";
import cl from "classnames";
import { OverridableComponent } from "../util";
export interface LabelProps {
props: {
/**
* M: 18px, S: 16px
* @default "m"
*/
size?: "m" | "s";
/**
* Component content
*/
children: React.ReactNode;
/**
* Custom styling on element
*/
className?: string;
/**
* Adds margins to typo
*/
spacing?: boolean;
} & React.HTMLAttributes<HTMLParagraphElement>;
defaultComponent: "p";
}
const Label: OverridableComponent<LabelProps> = forwardRef(
(
{ className, size = "m", spacing, component: Component = "p", ...rest },
ref
) => (
<Component
{...rest}
ref={ref}
className={cl(className, "navds-label", {
"navds-label--s": size === "s",
"navds-typo--spacing": !!spacing,
})}
/>
)
);
export default Label;
-11
View File
@@ -1,11 +0,0 @@
import React, { forwardRef } from "react";
import cl from "classnames";
const Lead = forwardRef<
HTMLParagraphElement,
React.HTMLAttributes<HTMLParagraphElement>
>(({ className, ...rest }, ref) => (
<p {...rest} ref={ref} className={cl(className, "navds-article__lead")} />
));
export default Lead;
@@ -1,15 +0,0 @@
import React, { forwardRef } from "react";
import cl from "classnames";
const Paragraph = forwardRef<
HTMLParagraphElement,
React.HTMLAttributes<HTMLParagraphElement>
>(({ className, ...rest }, ref) => (
<p
{...rest}
ref={ref}
className={cl(className, "navds-article__paragraph")}
/>
));
export default Paragraph;
-21
View File
@@ -1,21 +0,0 @@
import React, { forwardRef } from "react";
import cl from "classnames";
export interface TextProps extends React.HTMLAttributes<HTMLSpanElement> {
size: "large" | "medium" | "small" | "xs";
children: React.ReactNode;
}
const Text = forwardRef<HTMLSpanElement, TextProps>(
({ size, className, children, ...rest }, ref) => (
<span
{...rest}
ref={ref}
className={cl(className, "navds-text", `navds-text--${size}`)}
>
{children}
</span>
)
);
export default Text;
+49
View File
@@ -0,0 +1,49 @@
import React, { forwardRef } from "react";
import cl from "classnames";
import { OverridableComponent } from "../util";
export interface TitleProps extends React.HTMLAttributes<HTMLHeadingElement> {
props: {
/**
* Heading level
*/
level: 1 | 2 | 3 | 4 | 5;
/**
* Sizes from largest "2xl" to smallest "s"
*/
size: "2xl" | "xl" | "l" | "m" | "s";
/**
* Heading to render
*/
children: React.ReactNode;
/**
* Custom styling on element
*/
className?: string;
/**
* Adds margins to typo
*/
spacing?: boolean;
} & React.HTMLAttributes<HTMLParagraphElement>;
defaultComponent: "h1";
}
const Title: OverridableComponent<TitleProps> = forwardRef(
({ level, size, spacing, className, children, component, ...rest }, ref) => {
let HeadingTag = component ?? (`h${level}` as React.ElementType);
return (
<HeadingTag
{...rest}
ref={ref}
className={cl(className, "navds-title", `navds-title--${size}`, {
"navds-typo--spacing": !!spacing,
})}
>
{children}
</HeadingTag>
);
}
);
export default Title;
+6 -8
View File
@@ -1,8 +1,6 @@
export { default as Heading } from "./Heading";
export * from "./Heading";
export { default as Text } from "./Text";
export * from "./Text";
export { default as Paragraph } from "./Paragraph";
export * from "./Paragraph";
export { default as Lead } from "./Lead";
export * from "./Lead";
export { default as Title } from "./Title";
export { default as Ingress } from "./Ingress";
export { default as BodyLong } from "./BodyLong";
export { default as BodyShort } from "./BodyShort";
export { default as Detail } from "./Detail";
export { default as Label } from "./Label";
@@ -0,0 +1,3 @@
.typo-story > div:nth-child(even) {
background: var(--navds-color-gray-20);
}
@@ -1,116 +1,137 @@
import React from "react";
import { Heading, Text, Paragraph, Lead } from "../index";
import { Title, BodyShort, BodyLong, Detail, Ingress, Label } from "../index";
import "./index.css";
export default {
title: "ds-react/typography",
component: Heading,
component: BodyLong,
};
export const heading = () => {
return (
export const TypoMedSpacing = () => <TypoMal spacing={true} />;
export const TypoUtenSpacing = () => <TypoMal spacing={false} />;
const TypoMal = ({ ...rest }) => {
const lorem = (text) => (
<>
<Heading level={1} size="xxl">
xxl
</Heading>
<Heading level={2} size="xl">
xl
</Heading>
<Heading level={3} size="large">
large
</Heading>
<Heading level={4} size="medium">
medium
</Heading>
<Heading level={5} size="small">
small
</Heading>
{text} <br /> Veniam consequat cillum pariatur officia duis aute labore
anim labore. Pariatur ad duis do nulla.
</>
);
};
export const text = () => {
return (
<div style={{ display: "flex", flexDirection: "column" }}>
<Text size="large">large</Text>
<Text size="medium">medium</Text>
<Text size="small">small</Text>
<Text size="xs">xs</Text>
<div
className="typo-story"
style={{
display: "flex",
flexDirection: "column",
}}
>
<div>
<Title {...rest} level={1} size="2xl">
{lorem("Title 2xl")}
</Title>
<Title {...rest} level={2} size="xl">
{lorem("Title xl")}
</Title>
<Title {...rest} level={3} size="l">
{lorem("Title l")}
</Title>
<Title {...rest} level={4} size="m">
{lorem("Title m")}
</Title>
<Title {...rest} level={5} size="s">
{lorem("Title s")}
</Title>
</div>
<div>
<Ingress {...rest}>{lorem("Ingress")}</Ingress>
</div>
<div>
<BodyLong {...rest}>{lorem("BodyLong")}</BodyLong>
<BodyLong {...rest} size="s">
{lorem("BodyLong small")}
</BodyLong>
</div>
<div>
<BodyShort component="span" {...rest} {...rest}>
{lorem("BodyShort")}
</BodyShort>
<BodyShort {...rest} size="s">
{lorem("BodyShort small")}
</BodyShort>
</div>
<div>
<Label {...rest}>{lorem("Label")}</Label>
<Label {...rest} size="s">
{lorem("Label small")}
</Label>
</div>
<div>
<Detail {...rest}>{lorem("Detail")}</Detail>
<Detail {...rest} size="s">
{lorem("Detail small")}
</Detail>
</div>
</div>
);
};
export const article = () => {
export const SideInnholdEksempel = () => {
return (
<article>
<Heading level={1} size="xxl">
Uføretrygd
</Heading>
<Lead>
Uføretrygd kan være aktuelt for deg som har varig nedsatt inntektsevne
på grunn av sykdom eller skade.
</Lead>
<Paragraph>
Uføretrygden erstatter den delen av inntektsevnen du har tapt på grunn
av varig sykdom eller skade.
</Paragraph>
<Paragraph>
Om du har rett til 100 prosent uføretrygd eller gradert (delvis)
uføretrygd, er avhengig av inntektsevnen din. Har du mulighet til å
jobbe for eksempel 40 prosent, kan du ha rett til 60 prosent uføretrygd.{" "}
</Paragraph>
<p>
Anim duis aliqua ad culpa amet ad. Anim deserunt veniam laborum commodo
in excepteur reprehenderit. Sunt occaecat velit fugiat qui Lorem officia
reprehenderit elit cillum occaecat. Lorem laborum adipisicing non qui
consectetur do minim nostrud adipisicing qui. Sint et dolore commodo
cillum elit magna reprehenderit labore consequat reprehenderit magna
consequat qui. Ullamco eu sunt cupidatat laborum. Velit eu ex culpa
voluptate proident tempor deserunt. Do pariatur consequat incididunt ad
ut velit. Ea nisi eiusmod aliquip laboris nulla in ipsum amet sunt
magna. Laboris pariatur nisi in culpa adipisicing sit esse esse. Ullamco
dolore mollit minim dolor reprehenderit. Velit ipsum proident nostrud
laborum non. Sunt consequat aute quis minim reprehenderit ipsum sunt
ipsum.
</p>
<Heading level={2} size="xl">
Hvem kan få uføretrygd?
</Heading>
<Paragraph>
For å ha rett til å få uføretrygd må du som hovedregel oppfylle disse
vilkårene:
</Paragraph>
<ul>
<li>Du må være mellom 18 og 67 år.</li>
<li>
Du må ha vært medlem av folketrygden i de siste tre årene før du ble
syk.
</li>
<li>
Sykdom og/eller skade må være hovedårsaken til at inntektsevnen din er
nedsatt.
</li>
<li>
Hensiktsmessig behandling og arbeidsrettede tiltak må være
gjennomført.
</li>
<li>
Inntektsevnen din må være varig nedsatt med minst 50 prosent på grunn
av sykdom og/eller skade.
</li>
</ul>
<Paragraph>
Mottar du{" "}
<a href="https://www.nav.no/no/person/arbeid/arbeidsavklaringspenger/arbeidsavklaringspenger-aap">
arbeidsavklaringspenger
</a>{" "}
på søknadstidspunktet er det tilstrekkelig at inntektsevnen din er varig
nedsatt med minst 40 prosent. Skyldes uførheten en godkjent{" "}
<a href="https://www.nav.no/no/person/arbeid/yrkesskade-og-yrkessykdom">
yrkesskade eller yrkessykdom
</a>
, er det tilstrekkelig at inntektsevnen din er varig nedsatt med minst
30 prosent.
</Paragraph>
</article>
<div style={{ maxWidth: 600 }}>
<Title level={1} size="2xl" spacing>
Title lvl 1 2xl
</Title>
<BodyLong spacing>
BodyLong: Aliqua ad et nisi commodo sit excepteur in commodo proident
proident. Nostrud consectetur dolore eu nostrud aliqua. Adipisicing
labore aliqua qui velit amet ea amet do. Magna anim velit et incididunt.
Lorem ad pariatur pariatur quis magna cupidatat. Exercitation officia
occaecat occaecat id nulla fugiat laborum elit laboris non est ex
nostrud occaecat. Commodo laboris veniam cillum in aute.
</BodyLong>
<BodyLong spacing>
BodyLong: Cillum consequat velit est ea voluptate. Et elit irure magna
sit consequat mollit excepteur ad non excepteur velit exercitation aute.
Fugiat deserunt quis nulla cupidatat esse quis ex. Laborum eiusmod culpa
labore eu irure quis laborum. Irure veniam et nostrud do. Quis ut ea est
culpa tempor anim.
</BodyLong>
<BodyLong spacing>
BodyLong: Dolore commodo ad veniam commodo aute voluptate est officia
sunt proident irure consectetur excepteur.
</BodyLong>
<Title level={2} size="xl" spacing>
Title lvl 2 xl
</Title>
<Ingress spacing>
Ingress: Mollit incididunt incididunt officia amet est et non aliqua
officia nulla et aute aliqua culpa.
</Ingress>
<BodyLong spacing>
BodyLong: Commodo veniam enim laborum pariatur excepteur commodo do
cillum. Nisi elit sunt commodo id in adipisicing cupidatat dolore dolore
et tempor cupidatat. Cillum quis sunt in dolor occaecat.
</BodyLong>
<BodyLong spacing>
BodyLong: Irure dolore laborum amet occaecat ex laboris mollit
reprehenderit nisi laborum voluptate laborum. Ipsum eu sint laborum
adipisicing ut incididunt laborum laborum. Ipsum non amet laboris quis
Lorem est laborum qui pariatur ex eu. Eiusmod proident amet esse ex.
</BodyLong>
<BodyLong size="s" spacing>
BodyLong small: Irure dolore laborum amet occaecat ex laboris mollit
reprehenderit nisi laborum voluptate laborum. Ipsum eu sint laborum
adipisicing ut incididunt laborum laborum. Ipsum non amet laboris quis
Lorem est laborum qui pariatur ex eu. Eiusmod proident amet esse ex.
</BodyLong>
<BodyShort spacing>
BodyShort: Id consectetur velit sunt laboris consequat ullamco
incididunt.
</BodyShort>
<BodyShort size="s" spacing>
BodyShort small: Sunt amet officia sit excepteur sit pariatur sit
reprehenderit irure ipsum.
</BodyShort>
</div>
);
};
+14
View File
@@ -0,0 +1,14 @@
const StyleDictionary = require("style-dictionary");
const kebabCase = require("./kebabCase");
StyleDictionary.registerTransform({
name: "name/cti/kebab",
type: "name",
transformer: (prop, options) =>
kebabCase([options.prefix].concat(prop.path).join(" ")),
});
const StyleDictionaryExtended = StyleDictionary.extend(
__dirname + "/config.json"
);
StyleDictionaryExtended.buildAllPlatforms();
+4
View File
@@ -38,6 +38,10 @@
{
"destination": "tokens.js",
"format": "javascript/es6"
},
{
"destination": "tokens-cjs.js",
"format": "javascript/module"
}
]
}
+4
View File
@@ -0,0 +1,4 @@
const _ = require("lodash");
module.exports = (string) =>
_.kebabCase(string).replace(/(^|-)(\d+)-(x[ls])/g, "$1$2$3");
+26
View File
@@ -0,0 +1,26 @@
const kebabCase = require("./kebabCase");
describe("kebabCase", () => {
[
"foo bar",
"Foo bar",
"foo Bar",
"Foo Bar",
"FOO BAR",
"fooBar",
"--foo-bar--",
"__foo_bar__",
].forEach((string) =>
test(`${string} is converted to foo-bar`, () => {
expect(kebabCase(string)).toBe("foo-bar");
})
);
test(`spacing 3xl is converted to spacing-3xl`, () => {
expect(kebabCase("spacing 3xl")).toBe("spacing-3xl");
});
test(`3xs is converted to 3xs`, () => {
expect(kebabCase("3xs")).toBe("3xs");
});
});
+6 -3
View File
@@ -1,6 +1,6 @@
{
"name": "@navikt/ds-tokens",
"version": "0.1.3",
"version": "0.3.2",
"private": false,
"description": "Auto-generated design-tokens for NAV design-systems framework",
"author": "NAV Designsystem team",
@@ -17,9 +17,10 @@
"/src"
],
"scripts": {
"build": "style-dictionary build",
"build": "node ./build.js",
"watch": "nodemon --watch src/index.js --exec \"yarn build\"",
"token": "style-dictionary build"
"token": "style-dictionary build",
"test": "jest"
},
"repository": {
"type": "git",
@@ -28,6 +29,8 @@
},
"devDependencies": {
"color": "^3.1.3",
"jest": "^26.6.3",
"lodash": "^4.17.21",
"nodemon": "^2.0.6",
"style-dictionary": "^2.10.2"
}
+92 -70
View File
@@ -1,5 +1,23 @@
const Color = require("color");
const baseFontSize = 16;
const getFontSize = (size) => `${size / baseFontSize}rem`;
// https://github.com/hihayk/scale/blob/69b766bba2db046d3e8cb4026ae32a32c897f9ff/src/utils.js#L44
const mixColors = (color, step, amount, mixColor) => {
const saturation = Math.round(Color(color).hsl().color[1]);
// Setting directly to hex returns different result...
return Color(
Color(color)
.saturate(((step + 1) / 5) * (saturation / 100))
.mix(Color(mixColor), ((amount / 100) * (step + 1)) / 5)
.string()
).hex();
};
const lightColor = (color, step) => mixColors(color, step, 100, "white");
const darkColor = (color, step) => mixColors(color, step, 85, "black");
const baseColors = {
blue: "#0067c5",
deepblue: "#005B82",
@@ -7,17 +25,15 @@ const baseColors = {
orange: "#FF9100",
green: "#06893A",
red: "#BA3A26",
purple: "#634689",
limegreen: "#a2ad00",
};
const white = "#ffffff";
const darkgray = "#3e3832";
const darkgray = "#262626";
const lightgray = "#F1F1F1";
const mix = (a, b, percentage) =>
Color(a)
.mix(Color(b), percentage / 100)
.hex();
const darken = (color, percentage) => mix(color, darkgray, percentage);
const lighten = (color, percentage) => mix(color, white, percentage);
const gray = (n) => Color(lightgray).mix(Color(darkgray), n).hex();
module.exports = {
navds: {
@@ -25,26 +41,26 @@ module.exports = {
white: { value: white },
darkgray: { value: darkgray },
gray: {
90: { value: "#262626" },
80: { value: "#4F4F4F" },
60: { value: "#6A6A6A" },
40: { value: "#A0A0A0" },
20: { value: "#C9C9C9" },
10: { value: "#F1F1F1" },
90: { value: gray(1) },
80: { value: gray(0.8) },
60: { value: gray(0.6667) },
40: { value: gray(0.4) },
20: { value: gray(0.196) },
10: { value: gray(0) },
},
...Object.entries(baseColors).reduce(
(colors, [name, color]) => ({
...colors,
[name]: {
90: { value: darken(color, 80) },
80: { value: darken(color, 60) },
70: { value: darken(color, 40) },
60: { value: darken(color, 20) },
90: { value: darkColor(color, 3) },
80: { value: darkColor(color, 2) },
70: { value: darkColor(color, 1) },
60: { value: darkColor(color, 0) },
50: { value: color },
40: { value: lighten(color, 20) },
30: { value: lighten(color, 40) },
20: { value: lighten(color, 60) },
10: { value: lighten(color, 80) },
40: { value: lightColor(color, 0) },
30: { value: lightColor(color, 1) },
20: { value: lightColor(color, 2) },
10: { value: lightColor(color, 3) },
},
}),
{}
@@ -52,12 +68,12 @@ module.exports = {
disabled: { value: "{navds.color.gray.40.value}" },
action: {
default: { value: "{navds.color.blue.50.value}" },
hover: { value: lighten(baseColors.blue, 5) },
hover: { value: Color(baseColors.blue).lighten(0.1) },
active: { value: "{navds.color.deepblue.50.value}" },
},
danger: {
default: { value: "{navds.color.red.50.value}" },
hover: { value: lighten(baseColors.red, 5) },
hover: { value: Color(baseColors.red).lighten(0.1) },
active: { value: "{navds.color.red.70.value}" },
},
error: {
@@ -79,7 +95,7 @@ module.exports = {
border: { value: "{navds.color.gray.40.value}" },
background: { value: "{navds.color.white.value}" },
text: {
primary: { value: "{navds.color.darkgray.value}" },
primary: { value: "{navds.color.gray.90}" },
inverse: { value: "{navds.color.white.value}" },
disabled: { value: "{navds.color.gray.60.value}" },
link: { value: "{navds.color.blue.50.value}" },
@@ -89,24 +105,24 @@ module.exports = {
tag: {
error: {
border: { value: "{navds.color.red.50.value}" },
background: { value: "{navds.color.red.20.value}" },
background: { value: "{navds.color.red.10.value}" },
},
warning: {
border: { value: "{navds.color.orange.60.value}" },
background: { value: "{navds.color.orange.20.value}" },
background: { value: "{navds.color.orange.10.value}" },
},
info: {
border: { value: "{navds.color.lightblue.70.value}" },
background: { value: "{navds.color.lightblue.20.value}" },
background: { value: "{navds.color.lightblue.10.value}" },
},
success: {
border: { value: "{navds.color.green.50.value}" },
background: { value: "{navds.color.green.20.value}" },
background: { value: "{navds.color.green.10.value}" },
},
},
modal: {
overlay: {
value: "rgba(61, 56, 49, 0.7)",
value: "rgba(38, 38, 38, 0.7)",
},
},
},
@@ -121,35 +137,34 @@ module.exports = {
},
font: {
family: { value: '"Source Sans Pro", Arial, sans-serif' },
line: {
height: {
"2xl": { value: getFontSize(52) },
xl: { value: getFontSize(40) },
l: { value: getFontSize(36) },
m: { value: getFontSize(32) },
s: { value: getFontSize(28) },
xs: { value: getFontSize(24) },
"2xs": { value: getFontSize(20) },
},
},
size: {
heading: {
xxl: { value: "2.5rem" },
xl: { value: "2rem" },
large: { value: "1.5rem" },
medium: { value: "1.25rem" },
small: { value: "1.125rem" },
},
large: { value: "1.25rem" },
medium: { value: "1.125rem" },
small: { value: "1rem" },
xs: { value: "0.875rem" },
article: {
lead: { value: "1.25rem" },
paragraph: { value: "1.125rem" },
title: {
"2xl": { value: getFontSize(40) },
xl: { value: getFontSize(32) },
l: { value: getFontSize(28) },
m: { value: getFontSize(24) },
s: { value: getFontSize(20) },
},
xl: { value: getFontSize(20) },
l: { value: getFontSize(18) },
m: { value: getFontSize(16) },
s: { value: getFontSize(14) },
},
weight: {
bold: { value: "600" },
regular: { value: "400" },
},
line: {
height: {
large: { value: "1.625rem" },
medium: { value: "1.5rem" },
small: { value: "1.375rem" },
xs: { value: "1.25rem" },
},
},
},
shadow: {
focus: { value: "0 0 0 3px {navds.color.blue.80.value}" },
@@ -163,36 +178,34 @@ module.exports = {
contentContainer: {
maxWidth: { value: "79.5rem" },
padding: {
small: { value: "1rem" },
mediumAndLarger: { value: "1.5rem" },
small: { value: "{navds.spacing.4.value}" },
mediumAndLarger: { value: "{navds.spacing.6.value}" },
},
},
grid: {
gutter: {
small: { value: "1rem" },
mediumAndLarger: { value: "1.5rem" },
small: { value: "{navds.spacing.4.value}" },
mediumAndLarger: { value: "{navds.spacing.6.value}" },
},
},
layout: {
background: {
white: { value: "#FFFFFF" },
gray: { value: "#F1F1F1" },
white: { value: white },
gray: { value: "{navds.color.gray.10.value}" },
},
padding: {
small: { value: "1rem" },
mediumAndLarger: { value: "2.5rem" },
small: { value: "{navds.spacing.4.value}" },
mediumAndLarger: { value: "{navds.spacing.10.value}" },
},
},
z: {
index: {
modal: {
content: { value: "1010" },
overlay: { value: "1000" },
},
popover: {
default: { value: "2000" },
arrow: { value: "-1" },
},
"z-index": {
modal: {
content: { value: "1010" },
overlay: { value: "1000" },
},
popover: {
default: { value: "2000" },
arrow: { value: "-1" },
},
},
sidebar: {
@@ -200,5 +213,14 @@ module.exports = {
offset: { value: "0" },
},
},
spacing: Array(24)
.fill(0)
.reduce(
(spacing, _, index) => ({
...spacing,
[index + 1]: { value: `${(index + 1) / 4}rem` },
}),
{}
),
},
};
+148
View File
@@ -1,5 +1,153 @@
# Endringslogg
## 02. Juni 2021
### Nytt typo-oppsett for ds-react, ds-css og ds-tokens
[#1079](https://github.com/navikt/nav-frontend-moduler/pull/1079)
[Typo med spacing](https://navikt.github.io/Designsystemet/?path=/story/ds-react-typography--typo-med-spacing)
[Typo uten spacing](https://navikt.github.io/Designsystemet/?path=/story/ds-react-typography--typo-uten-spacing)
[Bruks eksempel](https://navikt.github.io/Designsystemet/?path=/story/ds-react-typography--side-innhold-eksempel)
Ds-react, ds-css og ds-tokens er alle minor-bumpet
Nye komponenter for typografi:
- Title: Heading
- Ingress
- BodyLong: Lengre tekster, tenk en vanlig paragraf
- BodyShort: Mindre tekster, tenk teksten på en knapp eller label
- Label
- Detail: Detaljetekst på 14px
Ds-css og ds-tokens er endret for å tilrettelegge for disse. Diverse komponenter i ds-react bruker nå også typo-stilene for å sikre riktig typo.
## 21. Mai 2021
### Popover-position oppdateres nå onMount
[#1104](https://github.com/navikt/nav-frontend-moduler/pull/1104)
- Hvis popover mountes med `ankerEl` så vil posisjon oppdateres riktig nå.
- OPS! Tilfeller ved bruk av useRef som `ankerEl` kan føre til feil i posisjonering da Popover mountes med `ankerEl == null`, og da oppdatering av ref ikke fører til props oppdatering siden det er en ref. Anbefales å ta i bruk state for `ankerEl`
## 19. Mai 2021
### Oppdatert fargepalett
[#1092](https://github.com/navikt/nav-frontend-moduler/pull/1092)
- Alle nav-frontend pakker som `nav-frontend-core` berører vil major bumpes, inkludert `na v-frontend-core`.
- `@navikt/ds-tokens`, `@navikt/ds-css` og `@navikt/ds-react` vil minor bumpes
- `orangeFocus` og alle variantene av denne fargen er fjernet fra `nav-frontend-core`
- `navRod`sine lighten/darken varianter er fjernet fra `nav-frontend-core`. Bruk `redError` som erstattning.
- `@navikt/ds-tokens` har nå `purple` og `limegreen` farger tilgjengelige
### Prop for hvit bakgrunn på veileder sin snakkeboble
[#1099](https://github.com/navikt/nav-frontend-moduler/pull/1099)
- Kan nå bruke prop `hvitSnakkeboble` for å setteakgrunnen på snakkeboble til hvit.
## 18. Mai 2021
### Oppdatert bakgrunnsfarge på Tag/Etikett for å synke med figma
[#1097](https://github.com/navikt/nav-frontend-moduler/pull/1097)
[#1094](https://github.com/navikt/nav-frontend-moduler/pull/1094)
- Bakgrunnene til de fire komponent-variasjonenen er nå endret til `Lighten80` istedenfor `Lighten60`
### Oppdatert textareaRef prop for textarea-controlled
[#1098](https://github.com/navikt/nav-frontend-moduler/pull/1098)
- Legger på optional argument i textareaRef-propen på samme måte som i Textarea-componenten.
### BekreftCheckboksPanel label har nå underline onHover
[#1095](https://github.com/navikt/nav-frontend-moduler/pull/1095)
- Fikser en uu-feil hvor forskjellen på default og hover stil ikke var stor nok.
## 14. Mai 2021
### @navikt/ds-tokens eksporteres nå også i CommonJs format
## 13. Mai 2021
### Typeguard for children i Tekstomrade-komponenten
[#1089](https://github.com/navikt/nav-frontend-moduler/pull/1089)
- Sjekker at children == string, hvis ikke return null
## 04. Mai 2021
### Forbedret scroll-behavior for sticky-panel
[#1084](https://github.com/navikt/nav-frontend-moduler/pull/1084)
- Oppførselen til menyen scrollet separat på mobil-skjermer (< 648px), noe som førte til en litt rar interaksjon. Menyen og innholdet under flyter nå naturlig uten noen overflow og max-height.
## 30. April 2021
### xxxl -> 3xl etc
[#1086](https://github.com/navikt/nav-frontend-moduler/pull/1086)
### AnchorMenu history-state fiks
[#1085](https://github.com/navikt/nav-frontend-moduler/pull/1085)
- Beholder state-objektet når history oppdateres ved scrolling med anchor-menu. Dette benyttes ved async navigering mellom sider i bl.a. next.js, og denne vil brekke dersom state'en overskrives.
- Bruker replaceState istedenfor pushState slik at frem/tilbake-knapper i browser oppfører seg mer som forventet
## 27. April 2021
### Kan nå bruke className på `Popover`-komponent
[#1082](https://github.com/navikt/nav-frontend-moduler/pull/1082)
- Bruker kan nå bruke className som en prop på `<Popover />` uten at den overskriver komponentens styling
### Fikser Checkbokspanel focus+feil markering
[#1081](https://github.com/navikt/nav-frontend-moduler/pull/1081)
- Fokusmarkering vises nå når man har focus + feil
## 21. April 2021
## Active stil for secondary/normal-knapp er endret for å skille seg fra hover
[#1062](https://github.com/navikt/nav-frontend-moduler/pull/1062)
## 19. April 2021
### Modal-overlay klasse for @navikt/ds-css er nå `fixed
[#1074](https://github.com/navikt/nav-frontend-moduler/pull/1074)
- `absolute -> fixed`
## 16. April 2021
### Fokusmarkering forsvinner ikke nå onHover
[#1072](https://github.com/navikt/nav-frontend-moduler/pull/1072)
### Scroll er nå bare "smooth" onFocus
[#1071](https://github.com/navikt/nav-frontend-moduler/pull/1071)
Smooth-scroll bare satt i html:focus-within
Slipper da at det er smooth-scroll når man gjør eks ctrl + f søk på siden.
Takk for tips @winsvold !
## 08. April 2021
### Gråskala er endret i `nav-frontend-core`
+6 -6
View File
@@ -1,5 +1,5 @@
import { ErrorFilled, Settings, SuccessFilled } from "@navikt/ds-icons";
import { Alert, Heading, Link, Paragraph } from "@navikt/ds-react";
import { Alert, Title, Link, BodyLong } from "@navikt/ds-react";
import Alertstripe from "nav-frontend-alertstriper";
import Chevron from "nav-frontend-chevron";
import Ekspanderbartpanel from "nav-frontend-ekspanderbartpanel";
@@ -94,11 +94,11 @@ import Proptable from "./props/Proptable";
import TableOfContents from "./table-of-contents/TableOfContents";
const components = {
h1: (props) => <Heading size="xxl" level={1} {...props} />,
h2: (props) => <Heading size="large" level={2} {...props} />,
h3: (props) => <Heading size="small" level={3} {...props} />,
h4: (props) => <Heading size="small" level={4} {...props} />,
p: (props) => <Paragraph size="medium" {...props} />,
h1: (props) => <Title size="2xl" level={1} spacing {...props} />,
h2: (props) => <Title size="l" level={2} spacing {...props} />,
h3: (props) => <Title size="s" level={3} spacing {...props} />,
h4: (props) => <Title size="s" level={4} spacing {...props} />,
p: (props) => <BodyLong size="m" spacing {...props} />,
a: (props) => <Link {...props} />,
code: (props) => <Inline {...props} />,
SuccessIcon: () => (
+1 -1
View File
@@ -584,7 +584,7 @@ export const Edit = (props) => {
fillRule="evenodd"
clipRule="evenodd"
d="M22.835 1.165a3.976 3.976 0 010 5.623L8.073 21.549.682 24 0 23.318l2.45-7.392L17.21 1.165a3.977 3.977 0 015.624 0zm-4.218 7.029l-2.811-2.812L4.188 17l-1.393 4.205 4.207-1.395L18.618 8.194zM21.43 2.57a1.989 1.989 0 00-2.703-.1l-.108.1-1.406 1.406 2.811 2.812 1.406-1.406a1.988 1.988 0 00.101-2.703l-.1-.109z"
fill="#3E3832"
fill="#262626"
focusable="false"
/>
</svg>
-1
View File
@@ -5,7 +5,6 @@ import Bash from "../code/Bash";
import Prettier from "prettier/standalone";
import ParserBabel from "prettier/parser-babel";
import "./preview.css";
import OverflowDetector from "../overflow-detector/OverflowDetector";
import cl from "classnames";
const prettierOptions = {
+2 -2
View File
@@ -1,7 +1,7 @@
import copy from "copy-to-clipboard";
import Prism from "prismjs";
import cl from "classnames";
import { ErrorFilled, Files, SuccessFilled } from "@navikt/ds-icons";
import { ErrorFilled, Copy, SuccessFilled } from "@navikt/ds-icons";
import { Popover } from "@navikt/ds-react";
import { useEffect, useRef, useState } from "react";
import "prismjs/components/prism-jsx.min";
@@ -92,7 +92,7 @@ const Bash = ({
className={"bash__copyButton"}
onClick={() => handleCopy()}
>
<Files />
<Copy />
</button>
</>
)}
+3 -1
View File
@@ -30,7 +30,9 @@ const Header = ({
<Link href="/">
<button className={"header__link"}>
<NavLogo />
<span className={"header__link-title"}>NAV Designsystem</span>
<span className="header__link-title navds-title navds-title--m">
NAV Designsystem
</span>
</button>
</Link>
</header>
-3
View File
@@ -67,9 +67,6 @@
.header__link-title {
color: white;
font-size: var(--navds-font-size-heading-large);
font-weight: var(--navds-font-weight-bold);
line-height: var(--navds-font-line-height-large);
}
.sidebar {
@@ -1,6 +1,6 @@
import { useContext } from "react";
import { Next } from "@navikt/ds-icons";
import { Heading } from "@navikt/ds-react";
import { Title } from "@navikt/ds-react";
import { PagePropsContext } from "../../pages/_app";
import "./tableOfContents.css";
@@ -9,12 +9,12 @@ const TableOfContents = () => {
return (
<>
<Heading size="large" level={2}>
<Title size="l" spacing level={2}>
Innhold
</Heading>
</Title>
<ul className={"toc__ul"}>
{tableOfContents?.map(({ heading, slug }) => (
<li key={slug} className={"toc__li"}>
<li key={slug} className={"toc__li navds-body-short"}>
<Next
aria-label="Pil peker på lenke"
focusable="false"
@@ -7,8 +7,6 @@
.toc__li {
list-style: none;
margin: 0;
font-size: var(--navds-font-size-medium);
line-height: var(--navds-font-line-height-medium);
color: var(--navds-color-blue-50);
display: flex;
align-items: center;
@@ -13,7 +13,6 @@ const ColorPalette = ({ onClick }: PaletteProps) => (
{[
"redError",
"navOransje",
"orangeFocus",
"navLimeGronn",
"navGronn",
"navLilla",
+2 -2
View File
@@ -250,11 +250,11 @@ const IconPage = () => {
<Systemtittel>{selectedIcon.name}</Systemtittel>
<div className="iconPage__modal--wrapper">
<div>
<p className="iconPage__modalTitle">Fargevelger</p>
<p className="iconPage__modalTitle navds-label">Fargevelger</p>
<ColorSwitch onChange={(c) => setColor(c)} />
</div>
<div style={{ marginLeft: "2rem" }}>
<p className="iconPage__modalTitle">Last ned</p>
<p className="iconPage__modalTitle navds-label">Last ned</p>
<div className="iconPage__modalButton--wrapper">
<Button
size="small"
Loaded 100 of 226 files, more files were not shown because too many files have changed in this diff. Show more