npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@politiet/pds

v1.3.21

Published

Politiets Designsystem er retningslinjer, anbefalinger og komponenter for alle digitale løsninger.

Downloads

1,061

Readme

Politiets Designsystem (PDS)

Politiets Designsystem er retningslinjer, anbefalinger og komponenter for publikumsrettede tjenester og applikasjoner på politiet.no.

Er du designer kan du ta en titt på installguide for designere

Forutsetninger (Requirements)

installasjon (Installation)

npm install @politiet/pds

Oppstart og bruk (Usage)

Komponenter

Støtte for React (JavaScript og TypeScript).

import {<komponent>} from '@politiet/pds';

Hvor <komponent> kan være Accordion, Autocomplete, Breadcrumbs, Button, Checkbox, CallToAction, Campaign, Card, ErrorMessage, EventMessage, Fieldset, FormReview, FormStepIndicator, Icon, LanguageSelector, Link, List, MessageCard, Modal, Notification, RadioButton, Select, Spinner, Text, TextArea, eller TextField.

Styling

Styling til komponenter må importeres manuelt. Importer filen(e) i den globale stylingsfilen.

For CSS/SCSS/LESS:

// Enten
@use '@politiet/pds/dist/style/<komponent>/pds-<komponent>';

// Eller
@import '@politiet/pds/dist/style/<komponent>/pds-<komponent>';

For javaScript/TypeScript:

import '@politiet/pds/dist/style/<komponent>/pds-<komponent>.css';

Hvor <komponent> er en av komponentene over i snake-case.

Det er også mulig å ta i bruk all styling fra alle komponentene:

// Enten
@use '@politiet/pds/dist/style/index';
@use '@politiet/pds/dist/style/core/pds-core';

// Eller
@import '@politiet/pds/dist/style/index';
@import '@politiet/pds/dist/style/core/pds-core';

Testing

For å visuelt regresjonsteste komponentene i storybook, har vi innført lokijs. Konfigurasjonen til loki er under eget avsnitt i package.json, og er p.t. kun avgrenset til historier for Checkbox.

Testene kjøres browserless via chrome.docker, og krever at storybook kjører (ref. ##### Første gang). Dette er WIP. Hensikten er at man skal kunne gjøre kontrollerte endringer av komponentene. Man oppfordres derfor til å utvide loki.storiesFilter til å inkludere komponenter fortløpende ved endringer.

Testene kjøres ved

npm run test:loki

PS: Det er viktig å ta snapshots av komponentene før man gjør endringer for å ha et sammenlikningsgrunnlag.

Hvis man gjør endringer av komponenter før de tilhørende snapshots blir oppdatert vil snapshot feile. For å løse dette kjør

npm run test:ci

trykk "a" for å kjøre alle tester, deretter "u" for å oppdatere feilende snapshots.

https://jestjs.io/docs/snapshot-testing

Design tokens

Støtte for CSS, SCSS, LESS og CSS-in-JS.

// Enten
@use '@politiet/pds/dist/tokens/<variable>';

.example {
  attribute: <variable>.$<token>
}

// Eller
@import '@politiet/pds/dist/tokens/<variable>';

Hvor <variable> kan være css, js, less eller scss.

Konstanter og hjelpefunksjoner

For utviklere finnes det i tillegg enn rekke funksjoner som kan være til hjelp i utviklingen.

Hjelpefunksjoner:
capitalize(), isExternalLink() and classNames().

Konstanter:
Keyboard().

Innspill og bidrag (Contributing)

Teknisk

Trengs det en endring kan man opprette en issue. Eventuelt kan man også opprette en egen branch, gjøre endringen selv og lage pull request som vil godkjennes av en på Team politiet.no. Si gjerne fra i Teams-kanalen eller til et av medlemmene i Team politiet.no. Her er det også mulig å komme med spørsmål og kommentarer som ikke egner seg like godt under issues på Github.

Versjonering

Vi følger Semantic Versioning. Følgende tommelfingerregler gjelder ved inkrementering av versjonsnummer:

  • Patch (x.x.x): Feilrettinger som ikke bryter med eksisterende kode.
  • Minor (x.x.x): Ny funksjonalitet eller mindre endringer som ikke bryter med eksisterende kode.
  • Major (x.x.x): Endringer som bryter med eksisterende kode, eller større pakker med ny funksjonalitet.

Generelt

Har du innspill eller behov om design kan du sende en epost til [email protected] Har du laget eller endret en komponent? Lag en pull request og ta kontakt med innloggede tjenester

Lisens (License)

Opphavsrett Politiet 2022. Til bruk i alle interne og eksterne løsninger finansiert av Politiet.

Installguide for designere

Last ned Github desktop Last ned Visual studio code

  • Åpne GitHub Desktop
  • Logg på med din politietbruker
  • Velg "pds" i "Current Reposoitory"

Install Homebrew for mac ved å åpne Terminal (i apper) på din Mac. Lim inn og trykk enter: /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

Det kan hende du må taste passord. Det er da passordet du bruker for å låse opp din Mac etter dvale (ikke PIT-passordet). I terminal vil ikke markøren flytte seg for å vise hva du har tastet. Dette er normalt, og du må bare trykke enter etter at du har skrevet det ferdig. Instalasjon tar litt tid, finn deg en kopp kaffe mens du venter.

Ikke lukk Terminal enda. For at maskinen skal kunne finne brew må lime inn og trykke enter: echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> /Users/stinegronstadskar/.zprofile etterfulgt av: eval "$(/opt/homebrew/bin/brew shellenv)"

For å sjekke at alt er OK med Brew, kan du skrive inn brew doctor

For å kunne kjøre storybook, skal du installere Node og NPM med (home)brew. Lim inn og tykk enter: brew install node

Gratulerer, du kan nå lukke Terminal.

Start GitHub desktop. Dette er verktøyet for å laste ned kode, og laste opp endringer. Legg til reposotory pds (https-github-com-politiet/pds) i Github Desktop etter at du er logget inn med din politiet-github bruker. (Eget passord, ikke PIT-passord)

Bruke Visual studio code

Første gang

Åpne Visual Studio Code Naviger på venstre side (ikonet øverst til venstre med to ark) til mappa PDS (Typisk Documents/GitHub/pds) Finn README.md (denne filen) Velg "Terminal" i menyen øverst. Trykk på "New Terminal"

Du får nå en terminal nederst i vinduet, du kan bruke for å kjøre kommandoer relatert til prosjektet du står i.

npm install Når det er fullført kan du kjøre npm run storybook Gå til http://localhost:6006/ i nettleseren, hvis den ikke starter automatisk.

Kjør på Mac etter install

Åpne Visual Studio Code. Pass på at du har åpnet rett mappe på høyre side. Hvis ikke terminal er åpnet nederst, gjør dette i menyen. Lim inn og trykk enter, eller bruk pil opp i terminalen for å bla i siste brukte kommandoer.

npm run storybook

Gå til http://localhost:6006/ i nettleseren, hvis den ikke starter automatisk.