zhangyumei.0319 547b8beb7b fix: [Input] Fix other Input class components derived from Input that click before/suffix will not focus properly 3 years ago
..
_portal 3d150d1b7f fix: remove fit-content with max-content to match chromium breakchange in 104. (#1032) 3 years ago
anchor 75a6baf18a fix: replace animation token with none token (#1259) 3 years ago
autoComplete 75a6baf18a fix: replace animation token with none token (#1259) 3 years ago
avatar bd83d1f9cd chore: format code 3 years ago
backtop bd83d1f9cd chore: format code 3 years ago
badge 1b9c2f04c2 chore: replace divide operator to math.div (#1130) 3 years ago
banner bd83d1f9cd chore: format code 3 years ago
base 2b2a8fbe42 chore: fix merge conflict 3 years ago
breadcrumb 75a6baf18a fix: replace animation token with none token (#1259) 3 years ago
button 75a6baf18a fix: replace animation token with none token (#1259) 3 years ago
calendar bd83d1f9cd chore: format code 3 years ago
card dab2c08959 feat: chore backup 3 years ago
carousel 75a6baf18a fix: replace animation token with none token (#1259) 3 years ago
cascader 75a6baf18a fix: replace animation token with none token (#1259) 3 years ago
checkbox 75a6baf18a fix: replace animation token with none token (#1259) 3 years ago
collapse d865d8d03a fix: change motion type to boolean 3 years ago
collapsible 75a6baf18a fix: replace animation token with none token (#1259) 3 years ago
datePicker 75a6baf18a fix: replace animation token with none token (#1259) 3 years ago
descriptions f76bd5879d feat: init 4 years ago
divider 24163ca972 chore: main merge release 3 years ago
dropdown 75a6baf18a fix: replace animation token with none token (#1259) 3 years ago
empty f76bd5879d feat: init 4 years ago
form ac16e490fc chore: interface import & export add keyword type 3 years ago
grid 1b9c2f04c2 chore: replace divide operator to math.div (#1130) 3 years ago
icons 626c4b9f9e Feat/support next (#245) 4 years ago
image f8d62f4c66 test: [Image] add test cases for Image (#1236) 3 years ago
input 547b8beb7b fix: [Input] Fix other Input class components derived from Input that click before/suffix will not focus properly 3 years ago
inputNumber 547b8beb7b fix: [Input] Fix other Input class components derived from Input that click before/suffix will not focus properly 3 years ago
keyframes d159394f03 feat: spin js2css 3 years ago
layout f76bd5879d feat: init 4 years ago
list 2a990d4ecd fix: change list empty padding token position 3 years ago
modal 4d7399b787 fix: fix form in sidesheet, form constructor not mount at first trick (#1255) 3 years ago
navigation 75a6baf18a fix: replace animation token with none token (#1259) 3 years ago
notification d865d8d03a fix: change motion type to boolean 3 years ago
overflowList bd83d1f9cd chore: format code 3 years ago
pagination 75a6baf18a fix: replace animation token with none token (#1259) 3 years ago
popconfirm bd83d1f9cd chore: format code 3 years ago
popover c90fcaefd5 fix: fix popover content autoFocus (#1223) 3 years ago
progress bd83d1f9cd chore: format code 3 years ago
radio 75a6baf18a fix: replace animation token with none token (#1259) 3 years ago
rating 75a6baf18a fix: replace animation token with none token (#1259) 3 years ago
scripts f76bd5879d feat: init 4 years ago
scrollList 75a6baf18a fix: replace animation token with none token (#1259) 3 years ago
select b00a1f377b fix: fix select option scss variables not use theme local.scss 3 years ago
sideSheet 4d7399b787 fix: fix form in sidesheet, form constructor not mount at first trick (#1255) 3 years ago
skeleton 178251c04f feat: skeleton js2css 3 years ago
slider 75a6baf18a fix: replace animation token with none token (#1259) 3 years ago
space f76bd5879d feat: init 4 years ago
spin bd83d1f9cd chore: format code 3 years ago
steps 75a6baf18a fix: replace animation token with none token (#1259) 3 years ago
switch 2faf2c8f63 chore: update switch token descripton 3 years ago
table 75a6baf18a fix: replace animation token with none token (#1259) 3 years ago
tabs 75a6baf18a fix: replace animation token with none token (#1259) 3 years ago
tag 1b9c2f04c2 chore: replace divide operator to math.div (#1130) 3 years ago
tagInput 3180f096c4 style: [tagInput] Modify the height of Input in TagInput (#1263) 3 years ago
timePicker 75a6baf18a fix: replace animation token with none token (#1259) 3 years ago
timeline 6511ea7423 fix: #865 3 years ago
toast bd83d1f9cd chore: format code 3 years ago
tooltip 7cf21e374c fix: fix click dropdown make screen scroll after tooltip add off screen render, #1254 (#1260) 3 years ago
transfer 685e01e0c9 Merge branch main into release 3 years ago
tree 75a6baf18a fix: replace animation token with none token (#1259) 3 years ago
treeSelect eadc7a15f9 Feat: [TreeSelect] adds showRestTagsPopover and restTagsPopoverProps parameters (#1210) 3 years ago
typography dcc200e5ef fix: Putting unstable properties on the to-do list 3 years ago
upload fdbaf7bf8d Merge branch 'release' into js2css 3 years ago
utils 46e2d4027e fix: js2css fix 3 years ago
README.md d8893466dc fix: semi-foundation/README.md gammar optimize (#165) 4 years ago
getBabelConfig.js 496f3db0f7 chore: remove corejs 3 years ago
gulpfile.js 1b9c2f04c2 chore: replace divide operator to math.div (#1130) 3 years ago
package.json 39123342dc v2.23.4 3 years ago
tsconfig.json 2f70e0bbc2 fix: ts check error of upload/witFied/fields in strict mode 4 years ago

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