Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

eBayUI React components

License

NotificationsYou must be signed in to change notification settings

renka/ebayui-core-react

 
 

Repository files navigation

eBayUI React components

Demo

Requirements

eBayUI Components

Getting Started

These react components are available as@ebay/ui-core-react package onNPM.

Use npm or yarn to add the package dependency to your project:

yarn add @ebay/ui-core-react

for quick development/POC

import{EbayTextbox,EbayButton}from'@ebay/ui-core-react'<EbayTextboxplaceholder="Enter text here"/><EbayButton>Submit</EbayButton>

for smaller bundle size

import{EbayTextbox}from'@ebay/ui-core-react/ebay-textbox'import{EbayButton}from'@ebay/ui-core-react/ebay-button'<EbayTextboxplaceholder="Enter text here"/><EbayButton>Submit</EbayButton>

Notes

If you render children components dynamically and don't want to get Reactkey warnings then provide akey:

<EbayParentComponent>{items.map((item,index)=><EbayChildComponentkey={index}>{item}</EbayChildComponent>)}</EbayParentComponent>

IE-10/11 (deprecated)

You will need polyfills for IE. Recommended approach is usingcore-js with or withoutbabel.

To manually use polyfills you need to import them:

import'core-js/stable/object/values'Object.values({a:'Hello'}).map(console.log)

But we suggest to use polyfills automatically by editing your.babelrc:

{"presets": [        ["@babel/preset-env",            {"useBuiltIns":"usage","corejs":"3","targets": {"Chrome":87,"Firefox":78,"Safari":11,"Edge":103,"Opera":89,"ChromeAndroid":83,"ios_saf":12                }            }        ]    ]}

targets can also be something like "> 0.2%, not dead"

Issues

Create an issue on github

Contributing

Write an email totmanyanov@ebay.com

How to update icons onskin changes

This will updateEbaySvg andEbayIcon components:

yarn update-icons

Quick guidance for contribution:

  • Create a feature branchgit checkout -b features/new-component
  • yarn install to install dependencies
  • Add documentations:
    • README.md on component level
    • Unit test
    • Storybook file for snapshot tests and also component showcase/demo
  • Make your changes pass the:
    • yarn lint. You can doyarn lint --fix to automatically fix small lint issues (e.g indentation, whitespace, semicolons, ...)
    • yarn test. Doyarn test -u to automatically the snapshot tests.

Requirements for new component

If you implement a new component, make sure that it complies with eBay UI guidelines:

One way to comply those guidelines is to implement your new component as similiar as possible with the MarkoeBayUI Core, or port the Marko implementation to React. This means the new component should:

  • Output the same HTML structure
  • Have similiar behaviour (e.g open menu dropdown on click and keyboard)
  • Support the same attributes (e.g ebay-breadcrumba11y-heading-text, or ebay-buttonpriority)
  • Support the same events (e.g ebay-selectselect-change). Since React does not use event emitter (unlike Marko), one can implement this as a prop with Function.

Changelog

@ebay/ui-core-react

version 4.x (Skin 16, breaking changes in icon names)

version 3.x (Skin 15, some breaking changes in dialog components)

version 2.x (Skin 15)

@ebay/ebayui-core-react

version 10.x (Skin 14)

version 9.x (skin 13)

ebayui-core-react

version 8.x (skin 12)

version 6.x (skin 10)

version 5.x (removed less, changed imports to minimize bundle size)

version 3.x (skin 9, react 16.8 with hooks support)

version 2.x (skin 7, react 16.7)

legacy

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript97.6%
  • JavaScript2.4%

[8]ページ先頭

©2009-2025 Movatter.jp