semi-bot 9d7513d744 v2.22.2 3 lat temu
..
_portal 3d150d1b7f fix: remove fit-content with max-content to match chromium breakchange in 104. (#1032) 3 lat temu
anchor bd83d1f9cd chore: format code 3 lat temu
autoComplete 2b2a8fbe42 chore: fix merge conflict 3 lat temu
avatar bd83d1f9cd chore: format code 3 lat temu
backtop bd83d1f9cd chore: format code 3 lat temu
badge 1b9c2f04c2 chore: replace divide operator to math.div (#1130) 3 lat temu
banner bd83d1f9cd chore: format code 3 lat temu
base 2b2a8fbe42 chore: fix merge conflict 3 lat temu
breadcrumb bd83d1f9cd chore: format code 3 lat temu
button 70b121b99d chore: change animation scss import order (#1122) 3 lat temu
calendar bd83d1f9cd chore: format code 3 lat temu
card dab2c08959 feat: chore backup 3 lat temu
carousel b82bd23183 fix: [carousel] Fix the problem that the timer is not updated when carousel switches the index through the left and right buttons or methods (#1165) 3 lat temu
cascader 11902fdde5 fix: Fixed the flickering problem when the pop-up window closes after searching in cascader 3 lat temu
checkbox 2b2a8fbe42 chore: fix merge conflict 3 lat temu
collapse d865d8d03a fix: change motion type to boolean 3 lat temu
collapsible cf091e52d8 fix: fix new collapsible collapseHeight 3 lat temu
datePicker 871b126094 fix: datepicker make the same width under wheel and normal mode (#1222) 3 lat temu
descriptions f76bd5879d feat: init 4 lat temu
divider 24163ca972 chore: main merge release 3 lat temu
dropdown c90fcaefd5 fix: fix popover content autoFocus (#1223) 3 lat temu
empty f76bd5879d feat: init 4 lat temu
form 2b2a8fbe42 chore: fix merge conflict 3 lat temu
grid 1b9c2f04c2 chore: replace divide operator to math.div (#1130) 3 lat temu
icons 626c4b9f9e Feat/support next (#245) 3 lat temu
image 2b2a8fbe42 chore: fix merge conflict 3 lat temu
input 2b2a8fbe42 chore: fix merge conflict 3 lat temu
inputNumber 2b2a8fbe42 chore: fix merge conflict 3 lat temu
keyframes d159394f03 feat: spin js2css 3 lat temu
layout f76bd5879d feat: init 4 lat temu
list 2a990d4ecd fix: change list empty padding token position 3 lat temu
modal d865d8d03a fix: change motion type to boolean 3 lat temu
navigation 2b2a8fbe42 chore: fix merge conflict 3 lat temu
notification d865d8d03a fix: change motion type to boolean 3 lat temu
overflowList bd83d1f9cd chore: format code 3 lat temu
pagination bd83d1f9cd chore: format code 3 lat temu
popconfirm bd83d1f9cd chore: format code 3 lat temu
popover c90fcaefd5 fix: fix popover content autoFocus (#1223) 3 lat temu
progress bd83d1f9cd chore: format code 3 lat temu
radio bd83d1f9cd chore: format code 3 lat temu
rating 2b2a8fbe42 chore: fix merge conflict 3 lat temu
scripts f76bd5879d feat: init 4 lat temu
scrollList 557fd13490 Merge branch 'release' into js2css 3 lat temu
select ac9385e4ce Feat: [Select] Added showRestTagsPopover and restTagsPopoverProps to support displaying redundant tags through popover (#1212) 3 lat temu
sideSheet d865d8d03a fix: change motion type to boolean 3 lat temu
skeleton 178251c04f feat: skeleton js2css 3 lat temu
slider 2b2a8fbe42 chore: fix merge conflict 3 lat temu
space f76bd5879d feat: init 4 lat temu
spin bd83d1f9cd chore: format code 3 lat temu
steps 70b121b99d chore: change animation scss import order (#1122) 3 lat temu
switch bd83d1f9cd chore: format code 3 lat temu
table 2b2a8fbe42 chore: fix merge conflict 3 lat temu
tabs bd83d1f9cd chore: format code 3 lat temu
tag 1b9c2f04c2 chore: replace divide operator to math.div (#1130) 3 lat temu
tagInput bd83d1f9cd chore: format code 3 lat temu
timePicker 30ea4a0362 Merge pull request #1214 from DouyinFE/fix-timpicker-scrollbar 3 lat temu
timeline 6511ea7423 fix: #865 3 lat temu
toast bd83d1f9cd chore: format code 3 lat temu
tooltip c90fcaefd5 fix: fix popover content autoFocus (#1223) 3 lat temu
transfer bd83d1f9cd chore: format code 3 lat temu
tree bd83d1f9cd chore: format code 3 lat temu
treeSelect eadc7a15f9 Feat: [TreeSelect] adds showRestTagsPopover and restTagsPopoverProps parameters (#1210) 3 lat temu
typography dcc200e5ef fix: Putting unstable properties on the to-do list 3 lat temu
upload fdbaf7bf8d Merge branch 'release' into js2css 3 lat temu
utils 46e2d4027e fix: js2css fix 3 lat temu
README.md d8893466dc fix: semi-foundation/README.md gammar optimize (#165) 4 lat temu
getBabelConfig.js 496f3db0f7 chore: remove corejs 3 lat temu
gulpfile.js 1b9c2f04c2 chore: replace divide operator to math.div (#1130) 3 lat temu
package.json 9d7513d744 v2.22.2 3 lat temu
tsconfig.json 2f70e0bbc2 fix: ts check error of upload/witFied/fields in strict mode 3 lat temu

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