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

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