pointhalo a2c8e5c021 fix: fix the problem that the display is incorrect when setValue cross-updates arrayField of different levels 2 سال پیش
..
_portal 3d150d1b7f fix: remove fit-content with max-content to match chromium breakchange in 104. (#1032) 3 سال پیش
anchor 75a6baf18a fix: replace animation token with none token (#1259) 3 سال پیش
autoComplete 1ed01d9df9 fix: add vertical-align top to fix wrong height (#1508) 2 سال پیش
avatar bd83d1f9cd chore: format code 3 سال پیش
backtop bd83d1f9cd chore: format code 3 سال پیش
badge 1b9c2f04c2 chore: replace divide operator to math.div (#1130) 3 سال پیش
banner bd83d1f9cd chore: format code 3 سال پیش
base d52979c0c4 fix: [layout] Fix layout mount sider class delay (#1384) 2 سال پیش
breadcrumb b8a95944a6 style: Fix the style error when icon and text exist at the same time in BreadCrumb (#1570) 2 سال پیش
button b56708e521 fix: add animation-fill-mode: forwards to all animation (#1270) 3 سال پیش
calendar 9e27710d01 Fix/month calendar (#1571) 2 سال پیش
card dab2c08959 feat: chore backup 3 سال پیش
carousel 58bb122d0b fix: props children update carousel did no rerender and ref.play should have the highest priority (#1495) 2 سال پیش
cascader c39a5797c9 fix: change borderless api name 2 سال پیش
checkbox 75a6baf18a fix: replace animation token with none token (#1259) 3 سال پیش
collapse 14bacab9c7 feat: collapse clickHeaderToExpand api 2 سال پیش
collapsible 75a6baf18a fix: replace animation token with none token (#1259) 3 سال پیش
datePicker 2af75bca65 docs: update changelog 2 سال پیش
descriptions ce3ecd85c7 chore:changeTokenName 3 سال پیش
divider 24163ca972 chore: main merge release 3 سال پیش
dropdown 739a1fe0a4 feat: Dropdown item 新增 showTick 和 hover 属性 (#1372) 2 سال پیش
empty f76bd5879d feat: init 4 سال پیش
form a2c8e5c021 fix: fix the problem that the display is incorrect when setValue cross-updates arrayField of different levels 2 سال پیش
grid 925a0d54fb fix: Grid span = 0 not work when responsive (#1345) 3 سال پیش
highlight 868686ed9f style: update highlight, add global token 3 سال پیش
icons 626c4b9f9e Feat/support next (#245) 4 سال پیش
image d2d4e206cc fix: [ImagePreview] Fix the ratio of the new picture is incorrect after switching the ratio state of the preview picture and switching the picture (#1496) 2 سال پیش
input c39a5797c9 fix: change borderless api name 2 سال پیش
inputNumber c39a5797c9 fix: change borderless api name 2 سال پیش
keyframes d159394f03 feat: spin js2css 3 سال پیش
layout f76bd5879d feat: init 4 سال پیش
list 2a990d4ecd fix: change list empty padding token position 3 سال پیش
modal 25622bbb65 feat: modal add fullscrren top token && sidesheet add header border and size token 2 سال پیش
navigation 75a6baf18a fix: replace animation token with none token (#1259) 3 سال پیش
notification b56708e521 fix: add animation-fill-mode: forwards to all animation (#1270) 3 سال پیش
overflowList f60a9c059a perf(overflowlist): optimize collapse rendering (#684) 3 سال پیش
pagination 75a6baf18a fix: replace animation token with none token (#1259) 3 سال پیش
popconfirm db1e4eb9eb style: [Popconfirm] style optimize for close button in Popconfirm (#1520) 2 سال پیش
popover b56708e521 fix: add animation-fill-mode: forwards to all animation (#1270) 3 سال پیش
progress bd83d1f9cd chore: format code 3 سال پیش
radio 3b44c65e32 fix: radioGroup add vertical-align, close #1573 (#1574) 2 سال پیش
rating 75a6baf18a fix: replace animation token with none token (#1259) 3 سال پیش
scripts f76bd5879d feat: init 4 سال پیش
scrollList 75a6baf18a fix: replace animation token with none token (#1259) 3 سال پیش
select c39a5797c9 fix: change borderless api name 2 سال پیش
sideSheet 2f000dcae9 fix: fix sidesheet mask=false mask width not correct (#1550) 2 سال پیش
skeleton b56708e521 fix: add animation-fill-mode: forwards to all animation (#1270) 3 سال پیش
slider 3f3c962b45 feat: slider add some tokens (#1391) 2 سال پیش
space f76bd5879d feat: init 4 سال پیش
spin 1ed01d9df9 fix: add vertical-align top to fix wrong height (#1508) 2 سال پیش
steps b602ec68ad feat: add some token (#1360) 3 سال پیش
switch 0ff9442a46 fix: [Switch] Change the initial setting of the state in the constructor in the switch to prevent animations that do not meet expectations (#1501) 2 سال پیش
table b2029c4956 fix: fixed resizable Table bug #1506 (#1519) 2 سال پیش
tabs ed3f5780cc Feat/tab item (#1374) 2 سال پیش
tag 30cb2a1aa0 style: [Tag] children is string type child can be omitted, otherwise … (#1475) 2 سال پیش
tagInput a7b7e6a526 fix: [TagInput] Fix max Length judgment is wrong in composition input (#1346) 3 سال پیش
timePicker 587be99652 fix: timepicker rangeType error when select endTime first, close #1563 2 سال پیش
timeline 6511ea7423 fix: #865 3 سال پیش
toast 2d91a0bbb1 feat: toast new token (#1371) 3 سال پیش
tooltip 5c36a97b25 fix: add some lint config 2 سال پیش
transfer 685e01e0c9 Merge branch main into release 3 سال پیش
tree 1ed01d9df9 fix: add vertical-align top to fix wrong height (#1508) 2 سال پیش
treeSelect c39a5797c9 fix: change borderless api name 2 سال پیش
typography 1e0fce20a7 style: change typography copy icon from vertical-align text-bottom to middle (#1533) 2 سال پیش
upload 1ed01d9df9 fix: add vertical-align top to fix wrong height (#1508) 2 سال پیش
utils 772b9b617d docs: DatePicker add contributing doc and update date-fns-extra comment 2 سال پیش
README.md d8893466dc fix: semi-foundation/README.md gammar optimize (#165) 4 سال پیش
getBabelConfig.js 496f3db0f7 chore: remove corejs 3 سال پیش
gulpfile.js 1b9c2f04c2 chore: replace divide operator to math.div (#1130) 3 سال پیش
package.json 1810821764 v2.33.1 2 سال پیش
tsconfig.json 2f70e0bbc2 fix: ts check error of upload/witFied/fields in strict mode 4 سال پیش

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