fumidesign 93eb42812d feat: animation před 3 roky
..
_portal f76bd5879d feat: init před 4 roky
anchor 93eb42812d feat: animation před 3 roky
autoComplete 036bc41d87 feat(a11y): optimize keyboard event to autoComplete (#909) před 3 roky
avatar 58cb9fca3b fix: avatar outline syntax style (#934) před 3 roky
backtop f76bd5879d feat: init před 4 roky
badge f76bd5879d feat: init před 4 roky
banner f76bd5879d feat: init před 4 roky
base 591051eb86 test: add istanbul ignore to some file and update jest exclude config před 3 roky
breadcrumb 93eb42812d feat: animation před 3 roky
button 93eb42812d feat: animation před 3 roky
calendar c3fe5796b0 fix: remove react interface from semi-foundation #923 (#925) před 3 roky
card f76bd5879d feat: init před 4 roky
carousel be6f513256 fix: remove throttle in indicator change and arrow click (#819) před 3 roky
cascader 93eb42812d feat: animation před 3 roky
checkbox 93eb42812d feat: animation před 3 roky
collapse ef2531c8be Fix strict ts (#314) před 3 roky
collapsible f76bd5879d feat: init před 4 roky
datePicker b314de9ad5 feat: css transition mifu před 3 roky
descriptions f76bd5879d feat: init před 4 roky
divider 24163ca972 chore: main merge release před 3 roky
dropdown 34d4811907 feat(a11y): add keyboard and focus event to dropdown (#881) před 3 roky
empty f76bd5879d feat: init před 4 roky
form 29f1ad30bb chore: fix 933 před 3 roky
grid f76bd5879d feat: init před 4 roky
icons 626c4b9f9e Feat/support next (#245) před 3 roky
input 93eb42812d feat: animation před 3 roky
inputNumber 93eb42812d feat: animation před 3 roky
keyframes f76bd5879d feat: init před 4 roky
layout f76bd5879d feat: init před 4 roky
list 2a990d4ecd fix: change list empty padding token position před 3 roky
modal 5972b84ecc feat: support preventScroll to focus methods (#953) před 3 roky
navigation 93eb42812d feat: animation před 3 roky
notification 5452012214 fix: fix notification show and hide order (#531) před 3 roky
overflowList 5509240454 fix: fix tabs when vertical scroll and collapse shows extra arrow (#927) před 3 roky
pagination 93eb42812d feat: animation před 3 roky
popconfirm b6ce00f945 Feat click out side (#273) před 3 roky
popover 1e9d1b5955 fix: scss optimize, add unit in scss (#749) před 3 roky
progress f76bd5879d feat: init před 4 roky
radio 93eb42812d feat: animation před 3 roky
rating 93eb42812d feat: animation před 3 roky
scripts f76bd5879d feat: init před 4 roky
scrollList 1e9d1b5955 fix: scss optimize, add unit in scss (#749) před 3 roky
select 93eb42812d feat: animation před 3 roky
sideSheet cd95ebb1b3 chore: feat/a11y-aira rebase master v2.2 před 3 roky
skeleton f76bd5879d feat: init před 4 roky
slider 93eb42812d feat: animation před 3 roky
space f76bd5879d feat: init před 4 roky
spin f76bd5879d feat: init před 4 roky
steps 93eb42812d feat: animation před 3 roky
switch 93eb42812d feat: animation před 3 roky
table fad9785c79 Merge branch 'milestone-2.6' into release před 3 roky
tabs 93eb42812d feat: animation před 3 roky
tag b1fb629a38 style: update avatar, button, radio, steps, switch, tag white color t… (#894) před 3 roky
tagInput 93eb42812d feat: animation před 3 roky
timePicker 93eb42812d feat: animation před 3 roky
timeline 6511ea7423 fix: #865 před 3 roky
toast 626c4b9f9e Feat/support next (#245) před 3 roky
tooltip 5972b84ecc feat: support preventScroll to focus methods (#953) před 3 roky
transfer b314de9ad5 feat: css transition mifu před 3 roky
tree 93eb42812d feat: animation před 3 roky
treeSelect dcae8b4ed2 fix: [treeSelect] fix the click problem when the search box is in the trigger (#955) před 3 roky
typography f76bd5879d feat: init před 4 roky
upload f6fcac2a61 Merge branch 'release' into main před 3 roky
utils 5972b84ecc feat: support preventScroll to focus methods (#953) před 3 roky
README.md d8893466dc fix: semi-foundation/README.md gammar optimize (#165) před 4 roky
getBabelConfig.js 626c4b9f9e Feat/support next (#245) před 3 roky
gulpfile.js 9498eead2b feat: upgrade sass to 1.45.0 and set the option charset to false (#440) před 3 roky
package.json 236be8e528 v2.15.0 před 3 roky
tsconfig.json 2f70e0bbc2 fix: ts check error of upload/witFied/fields in strict mode před 3 roky

README.md

The infrastructure layer is used to build modern component libraries.

Semi UI adopts a set of cross-front-end framework technical solutions to split the JavaScript of each component into two parts: Foundation and Adapter. This allows us to reuse Foundation code across frameworks by only re-implementing the adapter, e.g, React and Vue. Quickly build common component libraries on different platforms.

  • Foundation

    Foundation contains the business logic that best represents Semi Design without actually referencing any DOM elements. Foundation delegates Adapter methods for any logic that requires DOM manipulation

  • Adapter

    Adapter is an interface that has all the methods needed by Foundation to implement Semi Design business logic. Adapter can have many implementations, allowing interoperability with different frameworks.

Directory Structure

  ├── semi-foundation         // Foundation and Stylesheet of component
  │   ├── utils
  │   └── tooltip
  │       ├── constants.js    // Constant definition, including numbers, strings, cssClass
  │       ├── foundation.js   // Core foundation
  │       ├── tooltip.scss    // Stylesheet
  │       ├── mixin.scss      // Scss mixin
  │       ├── rtl.scss        // Rtl 
  │       ├── variables.scss  // Scss variable

Related documents

Technical solutions

image

License

MIT