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 🙏

© 2026 – Pkg Stats / Ryan Hefner

@xelto.npm/xc2-lib

v1.0.50

Published

React component library based on MUI

Readme

@xelto.npm/xc2-lib

Biblioteka komponentów React dla aplikacji XC (XC-EFE, XC-FAK i pokrewne), zbudowana na MUI 5.

Paczka jest publikowana na npm jako @xelto.npm/xc2-lib.

Rozwijasz tę bibliotekę? Proces instalacji, testowania i wydawania wersji opisuje CONTRIBUTING.md.

Instalacja

npm i @xelto.npm/xc2-lib

Wymagane peer dependencies: react@^18.2.0 i react-dom@^18.2.0. MUI i emotion są wbudowane w paczkę — nie musisz ich instalować osobno.

Użycie

Wszystkie komponenty są eksportowane z korzenia paczki:

import { Button, DatePicker, TableMobile } from '@xelto.npm/xc2-lib'

Same komponenty nie wymagają importu CSS — stylują się przez emotion.

Paczka dostarcza natomiast opcjonalny arkusz globalny:

import '@xelto.npm/xc2-lib/dist/styles.global.css'

styles.global.css ustawia font Barlow (pobierany z Google Fonts), height: 100% na html/body/#root oraz zeruje margines body. Zaimportuj go, jeśli aplikacja nie zapewnia tego sama. XC-EFE tego nie robi — hostuje Barlow lokalnie z własnych plików .ttf (src/styles/fonts.css), co pozwala mu działać bez dostępu do Google Fonts. Komponenty biblioteki zakładają, że font Barlow jest dostępny, więc jedną z tych dróg trzeba wybrać.

W dist/ leży też styles.module.css — to niemal duplikat pliku globalnego, nieużywany ani przez bibliotekę, ani przez żadną aplikację. Nie importuj go.

Dostępne komponenty

AppTile, BottomBar, BottomInfoBar, Button, Checkbox, DatePicker, Icon, IconButton, Illustration, InfoBar, Logo, Modal, ModuleTile, MultiSelect, Radio, SearchBar, Select, Steps, Switch, Table, TableMobile, TextField, TimePicker, Tooltip, Topbar, Typography

Źródłem prawdy o propsach każdego komponentu jest Storybook — patrz CONTRIBUTING.md.

Lokalizacja DatePickera

To jedyne miejsce w bibliotece, które wymaga wyjaśnienia, bo MUI X ma dwie niezależne warstwy tłumaczeń i łatwo ustawić jedną, zapominając o drugiej.

| warstwa | co tłumaczy | skąd pochodzi | |---|---|---| | adapter daty | nazwy miesięcy i dni, pierwszy dzień tygodnia | date-fns/locale/* | | teksty UI | przyciski Anuluj / Zatwierdź / Wyczyść / Dzisiaj, aria-labels | @mui/x-date-pickers/locales |

DatePicker obsługuje obie warstwy przez jeden props locale:

<DatePicker
  locale="pl"
  inputFormat="dd.MM.yyyy"
  value={date}
  onChange={setDate}
  label="Data od"
/>

Obsługiwane wartości: pl, de, en-gb (domyślna), en-us, zh-cn.

Trzy rzeczy, o które łatwo się potknąć:

  • locale trzeba przekazać jawnie. Domyślną wartością jest en-gb, więc komponent bez tego propsa będzie po angielsku, nawet jeśli cała aplikacja jest po polsku.
  • inputFormat nie wynika z locale. Format wpisywanej daty ustawia się osobno; domyślny to dd/MM/yyyy.
  • Przyciski Anuluj/Zatwierdź widać tylko w trybie mobilnym. Powyżej 1020 px szerokości okna picker działa w trybie desktop, gdzie tych przycisków w ogóle nie ma — datę zatwierdza się kliknięciem w dzień.

Jeśli aplikacja trzyma język w innym formacie niż klucze date-fns, trzeba go zmapować. Przykład z XC-EFE, gdzie JDE zwraca PL/EN:

const datePickerLocale = language === 'PL' ? 'pl' : 'en-gb'

TimePicker nie obsługuje jeszcze lokalizacji — jest zawsze po angielsku.