Compare commits

...
Author SHA1 Message Date
github-actions[bot] 8c4c73cc2e Lerna versionbump [ci skip]
- @navikt/ds-icons@0.6.2
 - @navikt/ds-react@0.12.2
 - @navikt/ds-react-internal@0.7.2
2021-11-03 10:23:10 +00:00
KenandKenAJoh 324eb29f02 [FIX] Ikonsynk Figma (#1319)
Co-authored-by: KenAJoh <KenAJoh@users.noreply.github.com>
2021-11-03 11:05:24 +01:00
github-actions[bot] ce0bde9ea3 Lerna versionbump [ci skip]
- @navikt/ds-icons@0.6.1
 - @navikt/ds-react@0.12.1
 - @navikt/ds-react-internal@0.7.1
2021-11-02 12:30:06 +00:00
KenandGitHub 4c26512709 [FIX] Ikonsynk fra Figma (Automatisk PR) (#1317)
Co-authored-by: GitHub <noreply@github.com>
2021-11-02 13:13:29 +01:00
Ken 17f5f9e379 github bot som Pr author 2021-11-02 11:39:39 +01:00
Ken 95eeb92a4e Update update-icons.yml 2021-11-02 11:10:10 +01:00
github-actions[bot] 0673ab670f Lerna versionbump [ci skip]
- @navikt/ds-icons@0.6.0
 - @navikt/ds-react@0.12.0
 - @navikt/ds-react-internal@0.7.0
2021-11-01 11:54:29 +00:00
KenandKenAJoh 68d5e81076 [FEATURE] Automatisk PR for ikoner (#1314)
Co-authored-by: KenAJoh <KenAJoh@users.noreply.github.com>
2021-11-01 12:39:54 +01:00
Ken b775a84493 oppdatert automatisk PR tekst 2021-11-01 10:53:02 +01:00
Ken 27f491d452 bedre feilmeldinger 2021-11-01 10:21:36 +01:00
Ken 129d159570 fikset update build script 2021-11-01 10:10:38 +01:00
github-actions[bot] b5d1eb0105 Lerna versionbump [ci skip]
- @navikt/ds-icons@0.5.10
 - @navikt/ds-react@0.11.10
 - @navikt/ds-react-internal@0.6.11
2021-10-29 13:19:58 +00:00
Ken 0f03d9c538 [FIX] Fjernet tabindex fra ikoner (#1313) 2021-10-29 15:01:07 +02:00
Ken 29f1567601 Lerna versionbump [ci skip]
- @navikt/ds-icons@0.5.9
 - @navikt/ds-react@0.11.9
 - @navikt/ds-react-internal@0.6.10
2021-10-29 14:30:16 +02:00
Ken 2bd4fd52ff fjernet test-sjekk i icon-update workflow 2021-10-28 16:46:31 +02:00
Ken 9af1c3b5d2 [FIX] Automatisk PR for ikon-oppdateringer (#1312) 2021-10-28 16:32:24 +02:00
github-actions[bot] b1eebe5228 Lerna versionbump [ci skip]
- @navikt/ds-icons@0.5.8
 - @navikt/ds-react@0.11.8
 - @navikt/ds-react-internal@0.6.9
2021-10-26 13:41:08 +00:00
Andreas Nordahl 804a24f631 [fix] Icons uu (#1310)
* add role=img to icon svgs

* use svgr config file

* add svgr template to default titleId to uuid-v4

* clean icon cjs and esm

* set tabIndex to -1 for ie11 compat

* update icons props to reflect icon updates
2021-10-26 15:20:40 +02:00
Ken 6918e1695b Hotjar for verktøykassen (#1311) 2021-10-26 14:47:33 +02:00
github-actions[bot] cffc4b6539 Lerna versionbump [ci skip]
- @navikt/ds-react-internal@0.6.8
2021-10-26 12:14:28 +00:00
Ken b575e39000 [FIX] Kjøre onClick og onClose i header/dropdow (#1309) 2021-10-26 13:54:04 +02:00
Ken ced2b9b46b @storybook/addon-a11y for storybook (#1308) 2021-10-26 13:53:58 +02:00
github-actions[bot] f19ea3d0fe Lerna versionbump [ci skip]
- @navikt/ds-react@0.11.7
 - @navikt/ds-react-internal@0.6.7
2021-10-26 09:08:48 +00:00
Andreas Nordahl 260ee43f09 [fix] input className only on field container (#1307) 2021-10-26 10:54:34 +02:00
github-actions[bot] a1bdcd4df5 Lerna versionbump [ci skip]
- @navikt/ds-icons@0.5.7
 - @navikt/ds-react@0.11.6
 - @navikt/ds-react-internal@0.6.6
2021-10-25 15:54:41 +00:00
Ken 5669efc0dd [FIX] Gjør ikoner default focusable={false} (#1304) 2021-10-25 17:36:52 +02:00
Karl O 00a02fa8ae [FIX] bruk camelCase isteden for kebab-case i react svg (#1306) 2021-10-25 17:36:41 +02:00
github-actions[bot] 93f1d199cd Lerna versionbump [ci skip]
- @navikt/ds-react@0.11.5
 - @navikt/ds-react-internal@0.6.5
2021-10-25 08:07:17 +00:00
Ken a69db74d79 [FIX] Fjernet alt-tag fra alert-ikon, trenger bare aria-label (#1302) 2021-10-25 09:49:56 +02:00
Ken 717b70a011 Litt dokumentasjon om forwardedAs (#1303) 2021-10-25 09:49:49 +02:00
github-actions[bot] ed937f68c5 Lerna versionbump [ci skip]
- @navikt/ds-react@0.11.4
 - @navikt/ds-react-internal@0.6.4
2021-10-21 08:11:19 +00:00
Ken 47c4f9aa26 [FIX] Bugfix loader-id (#1301) 2021-10-21 09:52:47 +02:00
github-actions[bot] b166e5e5df Lerna versionbump [ci skip]
- @navikt/ds-react@0.11.3
 - @navikt/ds-react-internal@0.6.3
2021-10-20 14:49:50 +00:00
KenandAndreas Nordahl e150b4f264 [FIX] State-handling og warnings i Checkbox (#1295)
Co-authored-by: Andreas Nordahl <andnorda@gmail.com>
2021-10-20 16:34:53 +02:00
github-actions[bot] be9660948c Lerna versionbump [ci skip]
- @navikt/ds-react@0.11.2
 - @navikt/ds-react-internal@0.6.2
2021-10-20 14:06:48 +00:00
Andreas Nordahl 26023c888b [fix] remove aria-controls (#1300) 2021-10-20 15:50:19 +02:00
github-actions[bot] 79b85169d1 Lerna versionbump [ci skip]
- @navikt/ds-react@0.11.1
 - @navikt/ds-react-internal@0.6.1
2021-10-20 12:40:42 +00:00
Andreas Nordahl 4e5d410f9f [fix] remove aria-live from popover (#1299) 2021-10-20 14:22:20 +02:00
github-actions[bot] 83ba659219 Lerna versionbump [ci skip]
- @navikt/ds-css@0.10.0
 - @navikt/ds-react@0.11.0
 - @navikt/ds-css-internal@0.6.0
 - @navikt/ds-react-internal@0.6.0
2021-10-19 13:17:42 +00:00
Ken af12f5aa47 [FEATURE] Flyttet CopyToClipboard to internal-pakke 1/3 (#1296) 2021-10-19 15:01:32 +02:00
github-actions[bot] 7548ef086f Lerna versionbump [ci skip]
- @navikt/ds-react@0.10.7
 - @navikt/ds-react-internal@0.5.5
2021-10-19 12:41:18 +00:00
Ken 077ccb81cb [FIX] Fjernet ubrukt dot.notation i Alert (#1294) 2021-10-19 14:24:22 +02:00
github-actions[bot] fc6bdd70c7 Lerna versionbump [ci skip]
- @navikt/ds-icons@0.5.6
 - @navikt/ds-react@0.10.6
 - @navikt/ds-react-internal@0.5.4
2021-10-19 11:53:52 +00:00
Andreas Nordahl 998f0c7752 [fix] simplify tsconfig of @navikt/ds-react-internal (#1285)
* simplify tsconfig of @navikt/ds-react-internal

* new tsconfig for core react

* new tsconfig in icons

* rename tsconfig-esm to tsconfig.esm
2021-10-19 13:39:30 +02:00
Andreas NordahlandKen 900525fecf Typo migration guide (#1293)
* Typo migration guide draft

* Update @navikt/core/react/src/typography/stories/typography.stories.mdx

Co-authored-by: Ken <26967723+KenAJoh@users.noreply.github.com>

Co-authored-by: Ken <26967723+KenAJoh@users.noreply.github.com>
2021-10-18 17:37:22 +02:00
github-actions[bot] b20fa69869 Lerna versionbump [ci skip]
- @navikt/ds-css@0.9.3
 - @navikt/ds-react@0.10.5
 - @navikt/ds-tokens@0.5.3
 - @navikt/ds-react-internal@0.5.3
2021-10-18 13:21:09 +00:00
Andreas Nordahl 1367a628d2 [fix] fix size naming of some classes and tokens (#1291) 2021-10-18 15:04:26 +02:00
Ken bf99605db2 Oppdaterte storybook-docs, Roadmap (#1288)
* oppdatert docs

* oppdatert comment

* oppdatert tekst

* fikset table
2021-10-18 14:50:32 +02:00
github-actions[bot] f954bca955 Lerna versionbump [ci skip]
- @navikt/ds-icons@0.5.5
 - @navikt/ds-react@0.10.4
 - @navikt/ds-react-internal@0.5.2
2021-10-18 08:53:03 +00:00
Ken 887a76259e [fix] oppdaterte ikoner (#1290) 2021-10-18 10:38:07 +02:00
Ida 90114923c4 [fix] fikser eksempel (#1289) 2021-10-18 09:34:32 +02:00
github-actions[bot] a170ca8998 Lerna versionbump [ci skip]
- @navikt/ds-css@0.9.2
 - @navikt/ds-react@0.10.3
 - @navikt/ds-react-internal@0.5.1
2021-10-15 13:24:12 +00:00
347427c6e6 [fix] Table component (#1286)
* simplify tsconfig of @navikt/ds-react-internal

* placeholder-componenter for tabell

* split into headercell and normal cell

* varianter av tabell

* støtter både zebra og vertikale striper

* midlertidig fix for exluding av stories

* litt endringer i api og props etter diskusjon med andreas

* fjerner styling-props

* rydder

* rydder

* flytter til core

* rydder

Co-authored-by: Andreas Nordahl <andnorda@gmail.com>
Co-authored-by: Ken <ken.aleksander@gmail.com>
2021-10-15 15:11:29 +02:00
Ken 35aab3b672 [FIX] Workflow fungerer nå, la tilbake build-steps 2021-10-15 12:28:26 +02:00
Ken 5f4c0a7a2d [FIX] publish med no-verify-access 2021-10-15 12:20:17 +02:00
Ken fd120b65e0 [FIX] tester alternativt oppsett av node for npm publish2 2021-10-15 12:10:44 +02:00
Ken 3ae1be923e [FIX] tester alternativt oppsett av node for npm publish 2021-10-15 12:06:22 +02:00
Ken dab2c3f2c2 [FIX] temp fjernet test for å gjøre build raskere 2021-10-15 11:37:56 +02:00
Ken c0f1b8401e oppdatert workflow 2021-10-15 11:36:06 +02:00
Ken 8ba8936fdd [FIX] Oppdatert Readme 2021-10-14 15:09:09 +02:00
Andreas Nordahl 15c5845465 delete unused util scripts (#1284) 2021-10-12 20:16:37 +02:00
github-actions[bot] f6bc0c612f Lerna versionbump [ci skip]
- @navikt/ds-css-internal@0.5.0
 - @navikt/ds-react-internal@0.5.0
2021-10-12 12:51:44 +00:00
Andreas NordahlandIda Onshus b796e306d5 [feature] Dropdown menu with description list for heading hierarchy (#1283)
* header dl wip

* header dl wip

* legger til descriptionlist-komponenter i dropdown menu for internflateheader

* some cleanup

* use new dropdown api in header stories

* rename and restructure grouped lsit

* change dropdown menu api to contain toggle and context

* wip

* complete implementation of new dropdown api

* use dropdown directly in header

* unused imports

* remove uneccesary dropdownId

Co-authored-by: Ida Onshus <25682301+idaons@users.noreply.github.com>
2021-10-12 14:38:28 +02:00
IdaandAndreas Nordahl 0e9680dab9 oppdaterer readme for yarn install med mac m1 (#1282)
* oppdaterer readme for yarn install med macm1

* Update CONTRIBUTING.md

Co-authored-by: Andreas Nordahl <andnorda@gmail.com>

* Update CONTRIBUTING.md

Co-authored-by: Andreas Nordahl <andnorda@gmail.com>

* Update CONTRIBUTING.md

Co-authored-by: Andreas Nordahl <andnorda@gmail.com>

Co-authored-by: Andreas Nordahl <andnorda@gmail.com>
2021-10-11 11:13:03 +02:00
Ken 6d2858c6e1 whoami 2021-10-11 10:52:05 +02:00
Ken 9294410ed8 forsøk på npm fix 2021-10-11 10:51:03 +02:00
github-actions[bot] e3653580e6 Lerna versionbump [ci skip]
- @navikt/ds-css-internal@0.4.0
 - @navikt/ds-react-internal@0.4.0
2021-10-08 07:50:38 +00:00
Andreas Nordahl c9ab2e1516 [feature] remove unused header button (#1281) 2021-10-08 09:35:51 +02:00
Andreas Nordahl bb1876df43 remove list component from dropdown to simplify API (#1280) 2021-10-08 09:21:27 +02:00
github-actions[bot] d98bff30f6 Lerna versionbump [ci skip]
- @navikt/ds-css-internal@0.3.1
 - @navikt/ds-react-internal@0.3.1
2021-10-07 14:45:58 +00:00
Andreas Nordahl 7f53011d91 [fix] Header uu (#1279)
* render user name and desc as div

* dont use heading for menu title

* unused import
2021-10-07 16:29:29 +02:00
github-actions[bot] 4a451fe84a Lerna versionbump [ci skip]
- @navikt/ds-css-internal@0.3.0
 - @navikt/ds-react-internal@0.3.0
2021-10-07 13:01:29 +00:00
Andreas Nordahl 01adced0e7 [feature] Internal header dropdown menus (#1276)
* dot notation

* refactor HeaderTitle

* WIP

* separate story

* header dropdown

* add generic dropdown and divider

* some cleanup

* initial draft complete

* unused import

* revert overridable component

* width hover and focus

* wrap items in list and add roles

* delete outdated mdx stories

* new Header.dropdown api

* some cleanup

* height

* some cleanup

* lots of styling fixes

* user button component

* rename classes

* spacing fix

* title

* dropdown max-height

* color cleanup

* fix typo
2021-10-07 14:45:43 +02:00
Ken e2bae872cf [FIX] registry fix 2 2021-10-05 19:25:21 +02:00
Ken aff8f00ade registry fix 2 2021-10-05 19:24:47 +02:00
Ken ad28279bd3 [FIX] Endret npm registry til https fra http (#1278) 2021-10-05 17:30:48 +02:00
github-actions[bot] 9ec5d6a48e Lerna versionbump [ci skip]
- @navikt/ds-css@0.9.1
 - @navikt/ds-react@0.10.2
 - @navikt/ds-react-internal@0.2.1
2021-10-05 11:16:02 +00:00
Ken 755cb409be [FIX] La til ClearButton i import/export, fikset styling (#1274) 2021-10-05 13:00:38 +02:00
github-actions[bot] 7a9820ffa6 Lerna versionbump [ci skip]
- nav-frontend-skjema@4.0.5
2021-10-04 14:06:10 +00:00
Ken 812e93a354 [FIX] Oppdatert subtext for radiopanel og checkboxpanel (#1275) 2021-10-04 15:49:47 +02:00
github-actions[bot] 00e1e254f2 Lerna versionbump [ci skip]
- @navikt/ds-css-internal@0.2.0
 - @navikt/ds-react-internal@0.2.0
2021-10-01 13:13:45 +00:00
Andreas Nordahl ee389a9497 [feature] Refactor internal header (#1272)
* dot notation

* refactor HeaderTitle

* use heading component in header title

* use typo components in header user

* update header.stories.mdx
2021-10-01 15:00:10 +02:00
github-actions[bot] 4751e8048d Lerna versionbump [ci skip]
- @navikt/ds-react@0.10.1
2021-09-29 15:57:16 +00:00
Andreas Nordahl 78c29f06d5 [fix] make popover anchor element more generic (#1273) 2021-09-29 17:41:26 +02:00
Terje Karlsen 58a25bbc00 Korrigerer garpegenitiv og div tekstforbedring (#1271) 2021-09-29 13:00:19 +02:00
Ken 4048a0aba6 Update README.md 2021-09-29 10:57:11 +02:00
github-actions[bot] 006bd6f9ac Lerna versionbump [ci skip]
- @navikt/ds-css@0.9.0
 - @navikt/ds-react@0.10.0
 - @navikt/ds-css-internal@0.1.0
 - @navikt/ds-react-internal@0.1.0
2021-09-28 10:43:10 +00:00
Andreas NordahlandKen 58c3351d2f [feature] Internal header in separate package (#1268)
* add internal css package

* ds-react-internal package and move internal header

* remove placeholder style!

* move mdx story

* oppdatert typo-styling

* oppdatert lerna config

* lurte inn oppdatering av scripts

Co-authored-by: Ken <ken.aleksander@gmail.com>
2021-09-28 12:24:02 +02:00
Ken 27e11acc33 oppdatert tekst for god-praksis 2021-09-28 11:53:50 +02:00
Ken e52a23fee9 Update build-publish.yml 2021-09-28 11:43:42 +02:00
Ken 017deefd77 Delete .specifyrc.json 2021-09-28 10:16:31 +02:00
Andreas Nordahl 99a4212f54 [FIX] force postinstall in workflow (#1267) 2021-09-24 16:01:35 +02:00
Per Jørgen Walstrøm 12da298e87 [FIX] Mobilnummer bør følge Språkrådets formatanbefaling (#1266)
Ref https://navno.sharepoint.com/sites/intranett-kommunikasjon/SitePages/Datoer,-symboler,-tall-og-valuta.aspx
2021-09-24 15:31:30 +02:00
github-actions[bot] e9f4f721bb Lerna versionbump [ci skip]
- @navikt/ds-css@0.8.4
 - @navikt/ds-icons@0.5.4
 - @navikt/ds-react@0.9.3
 - @navikt/ds-tokens@0.5.2
2021-09-24 11:43:37 +00:00
Andreas NordahlandKen 2c5ff8d702 [FIX] move @navikt/ds-* to @navikt/core/* (#1265)
* move @navikt/ds to @navikt/core

* fix linting errors

* oppdatert lerna config for github components

* fjernet png folder

* update lockfile

* oppdatert react-docgen

Co-authored-by: Ken <ken.aleksander@gmail.com>
2021-09-24 13:21:57 +02:00
712 changed files with 3696 additions and 3218 deletions

No files matched your search

+11 -14
View File
@@ -30,12 +30,15 @@ jobs:
- name: install
if: steps.node-cache.outputs.cache-hit != 'true'
run: yarn install
- name: test
run: yarn test
- name: postinstall
if: steps.node-cache.outputs.cache-hit == 'true'
run: yarn postinstall
- name: Boot
run: yarn boot
- name: Eslint and Stylelint
run: yarn lint
- name: Test
run: yarn test
- name: add access token to .env
run: echo "ACCESS_TOKEN=${{ secrets.VERKTOYKASSE_INNHOLD_TOKEN }}" >> website/.env
- name: add branch token to .env
@@ -52,15 +55,17 @@ jobs:
publish-npm:
needs: test-build
runs-on: ubuntu-latest
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_AUTOMATION }}
if: github.event_name == 'push' && contains(github.event.head_commit.message, '[fix]') || contains(github.event.head_commit.message, '[feature]') || contains(github.event.head_commit.message, '[breaking]')
steps:
- uses: actions/checkout@v2
with:
fetch-depth: "0"
token: ${{secrets.GIT_REPO}}
- uses: actions/setup-node@v1
- uses: actions/setup-node@v2
with:
registry-url: http://registry.npmjs.org
registry-url: https://registry.npmjs.org
node-version: 14
- name: Node-modules cache
uses: actions/cache@v2
@@ -90,17 +95,9 @@ jobs:
- name: Update changed packages with MAJOR
if: "contains(github.event.head_commit.message, '[breaking]')"
run: yarn lerna version major --include-merged-tags --yes
- name: Create a .npmrc file for NPM
run: |
echo "//registry.npmjs.org/:_authToken=$NPM_TOKEN" >> .npmrc
npm whoami
env:
NPM_TOKEN: ${{secrets.NPM_AUTOMATION}}
- name: Publish to NPM registry
run: |
yarn lerna publish from-package --yes
rm .npmrc
run: yarn lerna publish --no-verify-access from-package --yes
- name: Create a .npmrc file for the github package repository
uses: FerLuisxd/create-npmrc@3
with:
+42
View File
@@ -0,0 +1,42 @@
name: Update Icons
on:
schedule:
- cron: 0 0 * * *
workflow_dispatch:
jobs:
update:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
with:
node-version: 14
- name: Node-modules cache
uses: actions/cache@v2
id: node-cache
with:
path: "**/node_modules"
key: ${{ runner.os }}-modules-${{ hashFiles('**/yarn.lock') }}
- name: install
if: steps.node-cache.outputs.cache-hit != 'true'
run: yarn install
- name: postinstall
if: steps.node-cache.outputs.cache-hit == 'true'
run: yarn postinstall
- name: Update Icons
run: yarn update:icons
env:
FIGMA_TOKEN: ${{ secrets.FIGMA_IKONER_API }}
- name: Create Pull Request
uses: peter-evans/create-pull-request@v3
with:
token: ${{ secrets.GIT_REPO }}
commit-message: "Ikoner synket fra figma"
branch: figma-icons-sync
committer: GitHub <noreply@github.com>
author: ${{ github.actor }} <${{ github.actor }}@users.noreply.github.com>
signoff: false
delete-branch: true
title: "[FIX] Ikonsynk Figma"
+2 -3
View File
@@ -100,7 +100,6 @@ examples/webpack/out
*.d.ts
*-exports.less
**/css/
*/figma-api/icons
*/ds-icons/png
packages/**/css
@@ -108,8 +107,8 @@ utilities/**/css
*/static/*.zip
*/static/png
@navikt/ds-icons/NAV-ikonpakke-png.zip
@navikt/ds-icons/NAV-ikonpakke-svg.zip
@navikt/core/icons/NAV-ikonpakke-png.zip
@navikt/core/icons/NAV-ikonpakke-svg.zip
*/**/NAV-ikonpakke-png.zip
*/**/NAV-ikonpakke-svg.zip
-46
View File
@@ -1,46 +0,0 @@
{
"repository": "@nav/designsystem",
"head": "specify-sync",
"base": "specify-token-parsing",
"rules": [
{
"name": "Color sync",
"path": "@navikt/ds-tokens/src/colors.js",
"filter": {
"types": ["color"]
},
"parsers": [
{
"name": "to-theme-ui",
"options": {
"formatConfig": {
"module": "commonjs"
},
"formatTokens": {
"colorFormat": {
"format": "rgb"
}
}
}
}
]
},
{
"name": "Spacing sync",
"path": "@navikt/ds-tokens/src/spacing.js",
"filter": {
"types": ["measurement"]
},
"parsers": [
{
"name": "to-theme-ui",
"options": {
"formatConfig": {
"module": "commonjs"
}
}
}
]
}
]
}
+1
View File
@@ -11,6 +11,7 @@ module.exports = {
],
addons: [
"@storybook/addon-docs",
"@storybook/addon-a11y",
{
name: "@storybook/addon-storysource",
options: {
+1
View File
@@ -1,5 +1,6 @@
import "nav-frontend-core";
import "@navikt/ds-css/index.css";
import "@navikt/ds-css-internal/index.css";
export const parameters = {
actions: { argTypesRegex: "^on[A-Z].*" },
@@ -20,3 +20,16 @@ import "@navikt/ds-css"
Dette vil også legge css-variabler på :root. For å få dette til å fungere med IE11, kan denne pakken tas i bruk: https://jhildenbiddle.github.io/css-vars-ponyfill/#/
Note: Disse komponentene kan ikke garanteres at fungerer som forventet i IE11 da vi har valgt og ikke unngå styling-valg basert på IE11 støtte eller ikke.
## Bruke styled-components eller emotion
Flere av våre komponenter er implementert med OverridableComponent. Dette vil si at komponenten tar i mot en prop, `as` som lar deg endre hvilken tag som blir satt.
Bruk for dette er eks hvis du ønsker `Heading` stilen, men ikke en heading-tag. Da kan man lett skrive `<Heading as="div">` og man vil få en `div`-tag istedenfor.
Flere css-in-js bibliotek har også denne funksjonaliteten bygd inne, noe som kan komplisere ting når alle bruker samme navn `as` for dette.
### Løsninger
[Styled-components](https://styled-components.com/docs/api#forwardedas-prop)
> TLDR: Bruk `forwardedAs` istendenfor `as` på komponentene, SD fikser resten.
+27 -1
View File
@@ -2,7 +2,33 @@ import { Meta } from "@storybook/addon-docs";
<Meta title="ds-react/Migration" />
# Migrering til ds-react, ds-css v0.8.0
# Migreringsguider
## Migrering til ds-react v0.11, ds-css v0.10
### ErrorSummary
- ErrorSummaryItem -> ErrorSummary.Item
Må da slette import "ErrorSummaryItem" da denne ikke er eksponert alene lengre
### SearchField
- SearchFieldButton -> SearchField.Button
- SearchFieldClearButton -> SearchField.Clear
- SearchFieldInput -> SearchField.Input
SearchFieldButton, SearchFieldClearButton og SearchFieldInput må da slettes fra imports da de ikke er eksponert lengre.
### CopyToClipBoard
Komponenten er flyttet til pakkene "@navikt/ds-react-internal" og "@navikt/ds-css-internal". API er ikke endret
så fikses med
```bash
yarn install @navikt/ds-react-internal @navikt/ds-css-internal
```
## Migrering til ds-react, ds-css v0.8.0
Denne guiden vil være til hjelp for de som allerede har begynt å ta i bruk de nye pakkene våre tidligere enn v0.8.0.
For de som ikke har begynt å ta i bruk pakkene kan man se bort fra denne.
+269
View File
@@ -0,0 +1,269 @@
import { Table as DsTable } from "@navikt/ds-react";
import {
SuccessFilled as SuccessIcon,
ErrorFilled as ErrorIcon,
} from "@navikt/ds-icons";
import styled from "styled-components";
const Success = styled(SuccessIcon)`
color: var(--navds-color-green-50);
`;
const Error = styled(ErrorIcon)`
color: var(--navds-color-red-50);
`;
const Table = styled(DsTable)`
.navds-table__cell > svg,
.navds-table__cell > span {
vertical-align: middle;
margin-left: 50%;
transform: translateX(-50%);
}
`;
type CompT = {
name: string;
status: Partial<[boolean, boolean, boolean]>;
desc?: React.ReactNode;
};
const Components: CompT[] = [
{
name: "Alertstriper",
status: [true, true, true],
desc: "Navn: Alert",
},
{ name: "Chevron", status: [false], desc: "" },
{
name: "Core",
status: [true, true, false],
desc: <code>@navikt/ds-css</code>,
},
{
name: "Ekspanderbartpanel",
status: [true, true, true],
desc: "Navn: Accordion, styling ikke oppdatert til nyeste versjon",
},
{ name: "Etiketter", status: [true, true, false], desc: "Navn: Tag" },
{
name: "Fullbreddeknapp-style",
status: [false],
desc: "",
},
{ name: "Grid", status: [true, true, false], desc: "Navn: Grid" },
{ name: "Hjelpetekst", status: [true, true, true], desc: "Navn: HelpText" },
{
name: "Ikoner-assets",
status: [true, true, true],
desc: <code>@navikt/ds-icons</code>,
},
{
name: "js-utils",
status: [true, true, false],
desc:
"Diverse util-funksjoner blir eksponert gjennom ds-react, men tar for det meste i bruk npm pakker",
},
{ name: "Knapper", status: [true, true, true], desc: "Navn: Button" },
{ name: "Lenkepanel", status: [true, true, true], desc: "Navn: LinkPanel" },
{ name: "Lenker", status: [true, true, true], desc: "Navn: Link" },
{ name: "Lesmerpanel", status: [false], desc: "" },
{ name: "Lukknapp", status: [false], desc: `Bruk Button med "Close"-ikon` },
{ name: "Modal", status: [true, true, true], desc: "Navn: Modal" },
{ name: "Paneler", status: [true, true, true], desc: "Navn: Panel" },
{
name: "Bekrefcheckbokspanel",
status: [true, true, true],
desc: "Navn: ConfirmationPanel",
},
{
name: "Checkbokspanel-gruppe",
status: [false],
desc: "Panel-versjon vil ikke tas videre i nytt system",
},
{
name: "Checkbokspanel",
status: [false],
desc: "Panel-versjon vil ikke tas videre i nytt system",
},
{
name: "Checkbox-gruppe",
status: [true, true, true],
desc: "Navn: CheckboxGroup",
},
{ name: "Checkbox", status: [true, true, true], desc: "Navn: Checkbox" },
{
name: "Feiloppsummering",
status: [true, true, false],
desc: "Navn: ErrorSummary, API vil bli endret for denne",
},
{
name: "Fnr-input",
status: [false],
desc:
"Skjema-elementer med validering vil ikke bli lagt til med det første, men vil diskuteres i fremtiden",
},
{ name: "Input", status: [true, true, true], desc: "Navn: TextField" },
{
name: "Label",
status: [false],
desc: "Skjema-elementer fikser dette selv",
},
{ name: "Radio-Gruppe", status: [true, true, true], desc: "RadioGroup" },
{ name: "Radio", status: [true, true, true], desc: "Navn: Radio" },
{
name: "Radiopanel-gruppe",
status: [false],
desc: "Panel-versjon vil ikke tas videre i nytt system",
},
{
name: "Radio-panel",
status: [false],
desc: "Panel-versjon vil ikke tas videre i nytt system",
},
{ name: "Select", status: [true, true, true], desc: "Navn: Select" },
{ name: "Skjema-gruppe", status: [true, true, true], desc: "Navn: Fieldset" },
{
name: "Skjemaelement-feilemelding",
status: [false],
desc: "",
},
{ name: "Textarea", status: [true, true, true], desc: "Navn: Textarea" },
{ name: "Togglegruppe", status: [true, false, false], desc: "" },
{ name: "ToggleKnapp", status: [true, false, false], desc: "" },
{
name: "Toggle",
status: [true, false, false],
desc: "Vil bli samme komponent som ToggleKnapp",
},
{ name: "Popover", status: [true, true, true], desc: "Navn: Popover" },
{ name: "Snakkeboble", status: [true, true, true], desc: "SpeechBubble" },
{ name: "Spinner", status: [true, true, true], desc: "Navn: Loader" },
{ name: "Stegindikator", status: [true, false, false], desc: "" },
{
name: "Tabell-style",
status: [true, true, false],
desc: "Navn: Table, Er nå publisert som React-component",
},
{ name: "Tabs", status: [true, false, false], desc: "" },
{ name: "Tekstomrade", status: [false], desc: "" },
{
name: "Typografi",
status: [true, true, true],
desc: "Navn: se typography-mappen i storybook",
},
{ name: "veileder", status: [false], desc: "" },
{
name: "Veilederpanel",
status: [true, true, true],
desc: "Navn: GuidePanel",
},
];
const NewComps: CompT[] = [
{
name: "AccordionMenu",
status: [true, true, true],
desc: "",
},
{
name: "SearcField",
status: [true, true, false],
desc: "Denne vil undergå større endringer",
},
{
name: "MicroCard",
status: [true, true, false],
desc: "Vil flyttes over i egen navno pakke for eksterne sider",
},
{
name: "PageHeader",
status: [true, true, false],
desc: "Vil flyttes over i egen navno pakke for eksterne sider",
},
{
name: "CopyToClipboard",
status: [true, true, false],
desc: "Vil flyttes over til @navikt/ds-react-internal pakke",
},
{
name: "Table",
status: [true, true, false],
desc:
"Implementer stylingen til nav-frontend-table-styles, API vil videreutvikles",
},
{
name: "Switch",
status: [true, false, false],
desc: "",
},
{
name: "Tooltip",
status: [true, false, false],
desc: "",
},
{
name: "Timeline",
status: [true, false, false],
desc: "",
},
];
const CompTable = ({ list }) => (
<Table>
<Table.Header>
<Table.Row>
<Table.HeaderCell>Komponent</Table.HeaderCell>
<Table.HeaderCell>Med i nytt system</Table.HeaderCell>
<Table.HeaderCell>Publisert i pakker</Table.HeaderCell>
<Table.HeaderCell>Fullført**</Table.HeaderCell>
<Table.HeaderCell>Info</Table.HeaderCell>
</Table.Row>
</Table.Header>
<Table.Body>
{list.map((comp) => {
return (
<Table.Row>
<Table.HeaderCell>{comp.name}</Table.HeaderCell>
<Table.DataCell>
{comp.status?.[0] === undefined ? (
<span>-</span>
) : comp.status?.[0] ? (
<Success />
) : (
<Error />
)}
</Table.DataCell>
<Table.DataCell>
{comp.status?.[1] === undefined ? (
<span>-</span>
) : comp.status?.[1] ? (
<Success />
) : (
<Error />
)}
</Table.DataCell>
<Table.DataCell>
{comp.status?.[2] === undefined ? (
<span>-</span>
) : comp.status?.[1] ? (
<Success />
) : (
<Error />
)}
</Table.DataCell>
<Table.DataCell>{comp.desc ? comp.desc : "-"}</Table.DataCell>
</Table.Row>
);
})}
</Table.Body>
</Table>
);
export const NewCompTable = () => {
return <CompTable list={NewComps} />;
};
export const OldCompTable = () => {
return <CompTable list={Components} />;
};
+24 -11
View File
@@ -1,16 +1,30 @@
import { Meta } from "@storybook/addon-docs";
import { NewCompTable, OldCompTable } from "./roadmap-table.tsx";
<Meta title="ds-react/Roadmap" />
# Plan videre
# Roadmap
Arbeidet med det nye pakke-oppsettet har nå foregått en stund og skulle egentlig vært
lengre på vei en det er nå. Men arbeidet har på ingen måte stoppet opp! Vi jobber kontinuerlig med
å finne bedre løsninger for å kunne bygge systemet opp fra bunnen av. Dette innegår da
ny dokumentasjons-side bygd med Sanity, nye byggeblokker helt fra token-nivå og bedre sizing for eksterne/interne sider. Dette vil da forhåpentligvis la oss
bygge mer robuste og fleksible løsninger for fremtiden.
## Komponenter
(Rekkefølgen representer ikke faktisk tidsline eller prioritet)
\*\* Fullført betyr i denne konteksten at vi føler API-et er ok og da kan forvente mindre breaking changes.
Komponenten kan fortsatt bli utsatt for endringer i selve designet.
### Nye komponenter / wip
<NewCompTable />
### Migrering av gamle komponenter
<OldCompTable />
## Plan videre
Vi jobber kontinuerlig med å finne bedre løsninger for å kunne bygge systemet opp fra bunnen av. Dette innegår da
ny dokumentasjon-side under Verktøykassen, nye byggeblokker helt fra token-nivå og bedre sizing for eksterne/interne sider.
Dette vil la oss bygge mer robuste og fleksible løsninger for fremtiden som skal være bedre tilpasset produktene våre.
(Rekkefølgen representer ikke faktisk tidslinje)
## Tokens
@@ -20,12 +34,11 @@ Dette vil gjøre styling og overriding av komponenter enklere da man kan bruke c
## Intern / Ekstern sizing
Komponenter tilpasses og standariseres bedre for skillet mellom interne/eksterne flater.
Løsning er ikke fast bestemt, men eksempel på dette er `size="small" -> 32px, size="medium"-> 48px`.
Dette vil da eksempelvis kunne være en standard som er gjennomgående for de fleste komponentene.
Eksempel på dette er `size="small" -> 32px, size="medium"-> 48px`.
## Ny dokumentasjon-side
Vi bygger en ny side for å dokumentere systemet, og mer rundt utvikling/design i nav med "Verktøykassen"
Vi bygger en ny side for å dokumentere systemet, og mer rundt utvikling/design i NAV med "Verktøykassen"
## Migrere komponenter/styling fra nav-frontend-\* -> `@navikt/ds-css / @navikt/ds-react`
@@ -46,6 +59,6 @@ noe vi kunne ta en titt på hvis vi ser at det trengs.
## Versjonering
To av de nye pakkene under `@navikt`, da `ds-css` og `ds-react` er nå versjonert under to store pakker med alle komponentene. I fremtiden vil vi se på å
De nye pakkene under `@navikt`, da `ds-css` og `ds-react` er nå versjonert under to store pakker med alle komponentene. I fremtiden vil vi se på å
ha både samversjonering (alle pakker under en eks ds-react versjon) og induvduell verjsonering da eks ds-react/button har en egen versjon
slik at man kan ha mer finkontroll over komponentbruk på siden sin.
+1 -1
View File
@@ -6,7 +6,7 @@ module.exports = (baseConfig) => {
test: /\.css$/,
use: ["style-loader", "css-loader"],
include: [
path.resolve(__dirname, "../node_modules/@navikt/ds-css/index.css"),
path.resolve(__dirname, "../node_modules/@navikt/core/css/index.css"),
],
},
{
File renamed without changes.
File renamed without changes.
@@ -44,12 +44,12 @@
flex-shrink: 0;
font-size: 1.5rem;
align-self: flex-start;
height: var(--navds-font-line-height-xl);
height: var(--navds-font-line-height-xlarge);
}
.navds-alert--small > .navds-alert__icon {
font-size: 1.25rem;
height: var(--navds-font-line-height-l);
height: var(--navds-font-line-height-large);
}
.navds-alert--error {
@@ -7,6 +7,7 @@
@import "utility.css";
/* Disabled because of UU concerns */
/* @import "smooth-scroll.css"; */
html {
@@ -14,8 +15,8 @@ html {
}
*,
*:before,
*:after {
*::before,
*::after {
box-sizing: inherit;
}
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
@@ -74,7 +74,6 @@
border: 1px solid var(--navds-radio-color-border);
width: 1.5rem;
height: 1.5rem;
border-radius: 4px;
flex-shrink: 0;
border-radius: 50%;
}
@@ -29,6 +29,10 @@
border-bottom-left-radius: 0;
}
.navds-search-field__input-wrapper > :last-child:first-child {
border-radius: 4px;
}
.navds-search-field__input-wrapper :focus {
z-index: var(--navds-z-index-focus);
}
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
@@ -7,8 +7,6 @@
@import "alert.css";
@import "button.css";
@import "content-container.css";
@import "copy-to-clipboard.css";
@import "internal-header.css";
@import "guide-panel.css";
@import "form/index.css";
@import "help-text.css";
@@ -20,6 +18,7 @@
@import "panel.css";
@import "link-panel.css";
@import "speech-bubble.css";
@import "table.css";
/* Navno spesific packages */
@import "page-header.css";
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
@@ -1,6 +1,6 @@
{
"name": "@navikt/ds-css",
"version": "0.8.3",
"version": "0.10.0",
"private": false,
"description": "Css for NAV Designsystem components",
"author": "NAV Designsystem team",
@@ -21,7 +21,7 @@
"watch": "postcss --watch --use postcss-import -o dist/index.css index.css"
},
"devDependencies": {
"@navikt/ds-tokens": "^0.5.1",
"@navikt/ds-tokens": "^0.5.3",
"normalize.css": "^8.0.1",
"postcss": "^8.3.6",
"postcss-cli": "^8.3.1",
@@ -65,6 +65,6 @@
height: 3rem;
}
.navds-page-header__title {
font-size: var(--navds-font-size-title-xl);
font-size: var(--navds-font-size-heading-xlarge);
}
}
File renamed without changes.
File renamed without changes.
File renamed without changes.
+28
View File
@@ -0,0 +1,28 @@
.navds-table {
border-collapse: collapse;
width: 100%;
display: table;
}
.navds-table__header {
display: table-header-group;
}
.navds-table__body {
display: table-row-group;
}
.navds-table__row {
display: table-row;
}
.navds-table__cell {
display: table-cell;
padding: var(--navds-spacing-4);
text-align: left;
border-bottom: var(--navds-border-default);
}
.navds-table--small .navds-table__cell {
padding: var(--navds-spacing-2);
}
File renamed without changes.
@@ -5,9 +5,9 @@
}
.navds-heading--2xlarge {
font-size: var(--navds-font-size-heading-2xl);
font-size: var(--navds-font-size-heading-2xlarge);
letter-spacing: -0.01em;
line-height: var(--navds-font-line-height-heading-2xl);
line-height: var(--navds-font-line-height-heading-2xlarge);
}
.navds-heading--2xlarge.navds-typo--spacing {
@@ -15,9 +15,9 @@
}
.navds-heading--xlarge {
font-size: var(--navds-font-size-heading-xl);
font-size: var(--navds-font-size-heading-xlarge);
letter-spacing: -0.008em;
line-height: var(--navds-font-line-height-heading-xl);
line-height: var(--navds-font-line-height-heading-xlarge);
}
.navds-heading--xlarge.navds-typo--spacing {
@@ -25,9 +25,9 @@
}
.navds-heading--large {
font-size: var(--navds-font-size-heading-l);
font-size: var(--navds-font-size-heading-large);
letter-spacing: -0.004em;
line-height: var(--navds-font-line-height-heading-l);
line-height: var(--navds-font-line-height-heading-large);
}
.navds-heading--large.navds-typo--spacing {
@@ -35,9 +35,9 @@
}
.navds-heading--medium {
font-size: var(--navds-font-size-heading-m);
font-size: var(--navds-font-size-heading-medium);
letter-spacing: -0.002em;
line-height: var(--navds-font-line-height-heading-m);
line-height: var(--navds-font-line-height-heading-medium);
}
.navds-heading--medium.navds-typo--spacing {
@@ -45,9 +45,9 @@
}
.navds-heading--small {
font-size: var(--navds-font-size-heading-s);
font-size: var(--navds-font-size-heading-small);
letter-spacing: -0.001em;
line-height: var(--navds-font-line-height-heading-s);
line-height: var(--navds-font-line-height-heading-small);
}
.navds-heading--small.navds-typo--spacing {
@@ -55,9 +55,9 @@
}
.navds-heading--xsmall {
font-size: var(--navds-font-size-heading-xs);
font-size: var(--navds-font-size-heading-xsmall);
letter-spacing: -0.001em;
line-height: var(--navds-font-line-height-heading-xs);
line-height: var(--navds-font-line-height-heading-xsmall);
}
.navds-heading--xsmall.navds-typo--spacing {
@@ -66,10 +66,10 @@
/* Ingress */
.navds-ingress {
font-size: var(--navds-font-size-xl);
font-size: var(--navds-font-size-xlarge);
font-weight: var(--navds-font-weight-regular);
letter-spacing: -0.001em;
line-height: var(--navds-font-line-height-xl);
line-height: var(--navds-font-line-height-xlarge);
margin: 0;
}
@@ -79,10 +79,10 @@
/* Body */
.navds-body-long {
font-size: var(--navds-font-size-l);
font-size: var(--navds-font-size-large);
font-weight: var(--navds-font-weight-regular);
letter-spacing: 0;
line-height: var(--navds-font-line-height-xl);
line-height: var(--navds-font-line-height-xlarge);
margin: 0;
}
@@ -91,9 +91,9 @@
}
.navds-body-long--small {
font-size: var(--navds-font-size-m);
font-size: var(--navds-font-size-medium);
letter-spacing: 0.002em;
line-height: var(--navds-font-line-height-l);
line-height: var(--navds-font-line-height-large);
}
.navds-body-long--small.navds-typo--spacing {
@@ -101,10 +101,10 @@
}
.navds-body-short {
font-size: var(--navds-font-size-l);
font-size: var(--navds-font-size-large);
font-weight: var(--navds-font-weight-regular);
letter-spacing: 0;
line-height: var(--navds-font-line-height-l);
line-height: var(--navds-font-line-height-large);
margin: 0;
}
@@ -113,9 +113,9 @@
}
.navds-body-short--small {
font-size: var(--navds-font-size-m);
font-size: var(--navds-font-size-medium);
letter-spacing: 0.002em;
line-height: var(--navds-font-line-height-m);
line-height: var(--navds-font-line-height-medium);
}
.navds-body-short--small.navds-typo--spacing {
@@ -124,10 +124,10 @@
/* Label */
.navds-label {
font-size: var(--navds-font-size-l);
font-size: var(--navds-font-size-large);
font-weight: var(--navds-font-weight-bold);
letter-spacing: 0;
line-height: var(--navds-font-line-height-l);
line-height: var(--navds-font-line-height-large);
margin: 0;
}
@@ -136,9 +136,9 @@
}
.navds-label--small {
font-size: var(--navds-font-size-m);
font-size: var(--navds-font-size-medium);
letter-spacing: 0.002em;
line-height: var(--navds-font-line-height-m);
line-height: var(--navds-font-line-height-medium);
}
.navds-label--small.navds-typo--spacing {
@@ -147,10 +147,10 @@
/* Small text */
.navds-detail {
font-size: var(--navds-font-size-s);
font-size: var(--navds-font-size-small);
font-weight: var(--navds-font-weight-bold);
letter-spacing: 0.004em;
line-height: var(--navds-font-line-height-m);
line-height: var(--navds-font-line-height-medium);
margin: 0;
}
+2
View File
@@ -0,0 +1,2 @@
/src
/png
+16
View File
@@ -0,0 +1,16 @@
const template = require("./template");
module.exports = {
typescript: true,
ref: true,
icon: true,
titleProp: true,
svgProps: {
focusable: false,
role: "img",
},
replaceAttrValues: {
"#262626": "currentColor",
},
template,
};
+28
View File
@@ -0,0 +1,28 @@
# @navikt/ds-icons
Leverer [NAVs ikoner](https://design.nav.no/resources/icons) i React og SVG.
## Installering
```sh
// yarn
yarn add @navikt/ds-icons
// npm
npm install @navikt/ds-icons
```
## Bruk
```jsx
/* ESM (anbefalt for tree-shaking)*/
import { Down } from "@navikt/ds-icons";
/* CJS */
import { Down } from "@navikt/cjs/ds-icons";
<Down aria-label="Åpne meny" />;
```
## Dokumentasjon
- [Ikonsøk](https://design.nav.no/resources/icons)
+48
View File
@@ -0,0 +1,48 @@
import Axios from "axios";
const { create, get } = Axios;
const FILE_KEY = "UmEVH3pZ71uJPsSz9ilP3Y";
const FigmaAxion = (token?: string) =>
create({
headers: {
"X-FIGMA-TOKEN": token,
},
});
/**
* Published Figma-components
* https://www.figma.com/file/UmEVH3pZ71uJPsSz9ilP3Y/%F0%9F%92%A0NAV-ikoner-2.5-Figma
*/
export const getPublishedIcons = async () => {
const { data } = await FigmaAxion(process.env.FIGMA_TOKEN)
.get(`https://api.figma.com/v1/files/${FILE_KEY}/components`)
.catch((e) => {
console.log("Failed getPublishedIcons ");
throw e;
});
return data?.meta?.components;
};
/**
* Downloadable link to each icon in SVG-format
*/
export const getIconsDownloadableUrl = async (nodeIds: string) => {
const {
data: { images },
} = await FigmaAxion(process.env.FIGMA_TOKEN)
.get(
`https://api.figma.com/v1/images/${FILE_KEY}/?ids=${nodeIds}&format=svg`
)
.catch((e) => {
console.log("Failed getIconsDownloadableUrl ");
throw e;
});
return Object.values(images) as string[];
};
/**
* Download icon @url
*/
export const getIconContent = async (url: string) => get(url);
+85
View File
@@ -0,0 +1,85 @@
import {
getPublishedIcons,
getIconsDownloadableUrl,
getIconContent,
} from "./api";
import { existsSync, writeFileSync, mkdirSync } from "fs";
import { resolve } from "path";
import pLimit from "p-limit";
import rimraf from "rimraf";
import startCase from "lodash.startcase";
import { writeMeta } from "./write-meta";
import dotenv from "dotenv";
dotenv.config();
export type ComponentT = {
key: string;
file_key: string;
node_id: string;
thumbnail_url: string;
name: string;
description: string;
updated_at: string;
created_at: string;
user: any;
containing_frame: any;
};
const main = async () => {
if (!process.env.FIGMA_TOKEN) {
throw new Error("FIGMA_TOKEN not set in .env");
}
const iconFolder = "./svg";
// Limiting to ~20 concurrent downloads seems to lead to less errors
const limit = pLimit(20);
const publishedIconNodes: ComponentT[] = await getPublishedIcons();
writeMeta(publishedIconNodes);
/* Get all urls in one fetch rather than 300+ */
const iconUrls: string[] = await getIconsDownloadableUrl(
publishedIconNodes.map((node) => node.node_id).join(",")
);
if (existsSync(iconFolder)) {
rimraf.sync(iconFolder);
}
mkdirSync(iconFolder);
console.log("Total icons: " + publishedIconNodes.length);
await Promise.all(
iconUrls.map((url, x) =>
limit(() =>
getIconContent(url)
.then(({ data }) => {
writeFileSync(
resolve(
iconFolder,
`${startCase(publishedIconNodes[x].name).replace(
/\s/g,
""
)}.svg`
),
data,
{
encoding: "utf8",
}
);
})
.catch((e) => {
throw e;
})
)
)
);
console.log("\nDownloaded all icons from Figma!\n");
};
try {
main();
} catch (e) {
throw e;
}
+35
View File
@@ -0,0 +1,35 @@
import { existsSync, unlinkSync, writeFileSync } from "fs";
import startCase from "lodash.startcase";
import { ComponentT } from ".";
const generateMetadata = (publishedIconNodes: ComponentT[]) => {
return publishedIconNodes
.map(({ name, description, created_at, containing_frame }) => {
return {
name: startCase(name).replace(/\s/g, ""),
description,
created_at,
// strip emojis
pageName: containing_frame.pageName.replace(
/([\u2700-\u27BF]|[\uE000-\uF8FF]|\uD83C[\uDC00-\uDFFF]|\uD83D[\uDC00-\uDFFF]|[\u2011-\u26FF]|\uD83E[\uDD10-\uDDFF])/g,
""
),
};
})
.sort((a, b) => a.name.localeCompare(b.name));
};
export const writeMeta = (publishedIconNodes: ComponentT[]) => {
const metadataFileName = "./meta.json";
if (existsSync(metadataFileName)) {
unlinkSync(metadataFileName);
}
writeFileSync(
metadataFileName,
JSON.stringify(generateMetadata(publishedIconNodes)),
{
encoding: "utf8",
}
);
};
File diff suppressed because it is too large. Load diff
@@ -1,6 +1,6 @@
{
"name": "@navikt/ds-icons",
"version": "0.5.3",
"version": "0.6.2",
"private": false,
"description": "NAVs egne ikoner i SVG og React format",
"repository": {
@@ -22,22 +22,28 @@
"/cjs",
"/esm",
"/src",
"/svg"
"/svg",
"/meta.json"
],
"scripts": {
"create-package-json-pointers-to-esm": "node ../../utilities/scripts/createPackageJsonsWithESMPointers.js",
"dl-icons": "FILE_KEY=UmEVH3pZ71uJPsSz9ilP3Y node --experimental-modules --es-module-specifier-resolution=node -r dotenv/config figma-api/index.mjs dotenv_config_path=figma-api/.env",
"create-icons": "svgr --silent --typescript --ref --icon --title-prop --replace-attr-values \"#262626=currentColor\" -d src svg",
"convert-icons": "node figma-api/pngConverter.mjs",
"clean": "rimraf src png NAV-ikonpakke-png.zip NAV-ikonpakke-svg.zip",
"zip-icons": "node figma-api/zipIcons.mjs",
"build": "yarn clean && yarn create-icons && tsc && tsc -p tsconfig-esm.json && yarn create-package-json-pointers-to-esm && yarn run convert-icons && yarn zip-icons"
"create-package-json-pointers-to-esm": "node ../../../utilities/scripts/createPackageJsonsWithESMPointers.js",
"create-icons": "svgr --out-dir src svg",
"convert-icons": "node scripts/pngConverter.mjs",
"clean": "rimraf src cjs esm png NAV-ikonpakke-png.zip NAV-ikonpakke-svg.zip",
"zip-icons": "node scripts/zipIcons.mjs",
"build": "yarn clean && yarn create-icons && tsc && tsc -p tsconfig.esm.json && yarn create-package-json-pointers-to-esm && yarn run convert-icons && yarn zip-icons",
"update": "ts-node figma/index.ts dotenv/config"
},
"dependencies": {
"uuid": "^8.3.2"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0"
},
"devDependencies": {
"@svgr/cli": "^5.5.0",
"@types/lodash.startcase": "^4.4.6",
"@types/uuid": "^8.3.1",
"copyfiles": "^2.4.1",
"dotenv": "^10.0.0",
"lodash.kebabcase": "^4.1.1",
@@ -45,6 +51,7 @@
"react": "^16.8.0 || ^17.0.0",
"rimraf": "3.0.2",
"sharp": "0.29.1",
"ts-node": "^10.4.0",
"zip-dir": "^2.0.0"
}
}
@@ -16,9 +16,7 @@ yarn add @navikt/ds-icons
Import { Expand } from `@navikt/ds-icons`;
<Expand
aria-label="Åpne meny"
role="img"
focusable="false"
title="Åpne meny"
/>
```
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
@@ -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="M19.4858 7.11888C20.7324 5.94771 20.7324 4.04887 19.4858 2.87769C18.2838 1.74835 16.3616 1.70802 15.1081 2.75669L14.9716 2.87769L3.6862 13.4807L3.52649 13.6372C1.61004 15.5983 1.66328 18.6487 3.6862 20.5493C4.61095 21.4181 5.79143 21.9002 7 21.9956V22H24V24L7 24C5.24586 23.9013 3.52179 23.2223 2.18147 21.963C-0.666561 19.2872 -0.725895 14.9835 2.00347 12.2399L2.18147 12.0669L13.4669 1.46396C15.5445 -0.487988 18.913 -0.487988 20.9905 1.46396C23.0135 3.36455 23.0667 6.41493 21.1502 8.37603L20.9905 8.53261L9.7051 19.1356L9.56865 19.2566C8.31517 20.3053 6.39296 20.2649 5.19092 19.1356C3.98889 18.0062 3.94596 16.2003 5.06213 15.0226L5.19092 14.8944L16.4764 4.29142L17.9811 5.70515L6.69565 16.3081L6.61297 16.3953C6.28225 16.7877 6.30981 17.3593 6.69565 17.7219C7.08149 18.0844 7.68993 18.1103 8.10757 17.7995L8.20038 17.7219L19.4858 7.11888Z" fill="#262626"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M19.4858 7.11888C20.7324 5.94771 20.7324 4.04887 19.4858 2.87769C18.2838 1.74835 16.3616 1.70802 15.1081 2.75669L14.9716 2.87769L3.6862 13.4807L3.52649 13.6372C1.61004 15.5983 1.66328 18.6487 3.6862 20.5493C4.61095 21.4181 5.79143 21.9002 7 21.9956V22H24V24L7 24C5.24586 23.9013 3.52179 23.2223 2.18147 21.963C-0.666561 19.2872 -0.725895 14.9835 2.00347 12.2399L2.18147 12.0669L13.4669 1.46396C15.5445 -0.487988 18.913 -0.487988 20.9905 1.46396C23.0135 3.36455 23.0667 6.41493 21.1503 8.37603L20.9905 8.53261L9.7051 19.1356L9.56865 19.2566C8.31517 20.3053 6.39296 20.2649 5.19092 19.1356C3.98889 18.0062 3.94596 16.2003 5.06214 15.0226L5.19092 14.8944L16.4764 4.29142L17.9811 5.70515L6.69565 16.3081L6.61297 16.3953C6.28225 16.7877 6.30981 17.3593 6.69565 17.7219C7.08149 18.0844 7.68993 18.1103 8.10757 17.7995L8.20038 17.7219L19.4858 7.11888Z" fill="#262626"/>
</svg>
@@ -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 3C13 4.65685 11.6569 6 10 6C8.34315 6 7 4.65685 7 3C7 1.34315 8.34315 0 10 0C11.6569 0 13 1.34315 13 3ZM24 14.5C24 15.3284 23.3284 16 22.5 16C21.6716 16 21 15.3284 21 14.5C21 13.6716 21.6716 13 22.5 13C23.3284 13 24 13.6716 24 14.5ZM5.68636 6C4.98108 6 4.36366 6.47353 4.18079 7.15469L1.00073 19H2H4.25773V24H6.25773V19H8.25773V24H10.2577V19H12H13.0018L11.1893 11H14C14.5523 11 15 10.5523 15 10C15 9.44771 14.5523 9 14 9H10.5682C9.65406 7.19312 7.78502 6 5.68636 6ZM21 12C21 11.4477 20.5523 11 20 11C19.4477 11 19 11.4477 19 12V14H17.618L17.1708 13.1056C16.832 12.428 16.1395 12 15.382 12H15C14.4477 12 14 12.4477 14 13C14 13.5523 14.4477 14 15 14H15.382L15.8292 14.8944C16.168 15.572 16.8605 16 17.618 16H19C20.1046 16 21 15.1046 21 14V12ZM14 18C14 17.4477 14.4477 17 15 17H23C23.5523 17 24 17.4477 24 18C24 18.5523 23.5523 19 23 19H15C14.4477 19 14 18.5523 14 18Z" fill="#262626"/>
</svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Loaded 100 of 712 files, more files were not shown because too many files have changed in this diff. Show more