Luxity Component Library
Includes:
Components in this Library
- Accordion
- Interests
- Checkbox
- CountryCodeSelect
- CurrencyInputFormatter
- GraphQLMultiSelector
- InterestCatSelector
- InterestItem
- LuxityGraphQLMultiSelector
- LuxityPageReady
- RadioButtons
- ReactSelectWrapper
- StyleSelector
- Tooltip
- CheckBoxButton
- GenderSelector
- GraphQLDropdownSelector
- LuxityGraphQLDropdownSelector
- MaterialSelector
- ModelSelector
- RareStepHeader
- RareStepFooter
Elements (simple Styled Components)
- Buttons
- PrimaryButton
- SecondaryButton
- TextButton
- InvertedTextButton
- WrapperButton
Helper Functions in this Library
- axios - an axios instance getter
- currency - a currency number formatter
- formatErrors - conditions a laravel validation error into something we can use in our Forms
- notify - simple wrapper to trigger
error
or success
versions of react-notify-toast
- simpleRequest - simple wrapper for configuring an axios instance
- themed - a component wrapper function to apply a
ThemeProvider
to styled-components with minial syntax - token - token helper functions for getting, and setting
_tk
named cookies
SVGs
- Accessories
- Account
- Add
- ArrowRight
- Bags
- BurgerMenu
- Calendar
- CalendarCircled
- CheckCircled
- Close
- Dot
- Edit
- Eye
- FileAttach
- FileAttachCircled
- LightBulb
- Logo
- LuxityMenu
- Minus
- MobileAvatar
- MyOrder
- MyPayment
- MyProfile
- MySale
- Notification
- PointerDown
- Search
- Shoes
- LuxityArrowLeft
- LuxityArrowRight
Commands
yarn
- install npm dependenciesyarn start
- Open Storybookyarn docs
- run both lint and testsyarn build
- generate built js filesyarn build --watch
- build and watch filesyarn test
- run both lint and testsyarn lint
- run linter onlyyarn jest --watch
- watch tests (reccomended)
Testing your local Changes in other Projects
tl;dr
- Checkout your Fork of this Repo
- Run this in the fork root folder:
yarn link
- Run this in the root folder of the project you would like to use this module:
yarn link @bonlineza/luxity-lib
You will now be able to import this module like any normal npm module like so:
import { Accordion } from '@bonlineza/luxity-lib';
or alternatively (preferred)
import Accordion from '@bonlineza/luxity-lib/Accordion';
Publish Package
- after testing is complete and your changes have been merged to master in this Library
Prerequisites
Steps:
- checkout/pull latest UPSTREAM
master
and run... yarn install
yarn test
yarn build
- Update your
Package.json
version info (according to SEMVER) - Update you
CHANGELOG.MD
and README.MD
file with additions/changes yarn login
npm publish --dry-run
- to confirm that your new files will be packaged into the npm reponpm publish
- commit the published files to the npm repoyarn docs
- generates all documentationyarn build:storybook
- ensure static stybook site is up to dateCommit
and TAG
this commit with the Tag name the same as the package version number to UPSTREAM master
- example: 'v2.1.0'