boomboomchen 193e7acb32 fix: [Checkbox/Cascader] add stopImmediatePropagation for the event parameter of checkbox onChange and Cascader stop propagation in multiple selection #343 (#350) 3 years ago
..
_portal f76bd5879d feat: init 4 years ago
anchor 626c4b9f9e Feat/support next (#245) 3 years ago
autoComplete 626c4b9f9e Feat/support next (#245) 3 years ago
avatar f76bd5879d feat: init 4 years ago
backtop f76bd5879d feat: init 4 years ago
badge f76bd5879d feat: init 4 years ago
banner f76bd5879d feat: init 4 years ago
base 626c4b9f9e Feat/support next (#245) 3 years ago
breadcrumb f76bd5879d feat: init 4 years ago
button f76bd5879d feat: init 4 years ago
calendar ef2531c8be Fix strict ts (#314) 3 years ago
card f76bd5879d feat: init 4 years ago
cascader 626c4b9f9e Feat/support next (#245) 3 years ago
checkbox 193e7acb32 fix: [Checkbox/Cascader] add stopImmediatePropagation for the event parameter of checkbox onChange and Cascader stop propagation in multiple selection #343 (#350) 3 years ago
collapse ef2531c8be Fix strict ts (#314) 3 years ago
collapsible f76bd5879d feat: init 4 years ago
datePicker 626c4b9f9e Feat/support next (#245) 3 years ago
descriptions f76bd5879d feat: init 4 years ago
dropdown f76bd5879d feat: init 4 years ago
empty f76bd5879d feat: init 4 years ago
form 626c4b9f9e Feat/support next (#245) 3 years ago
grid f76bd5879d feat: init 4 years ago
icons 626c4b9f9e Feat/support next (#245) 3 years ago
input 626c4b9f9e Feat/support next (#245) 3 years ago
inputNumber 626c4b9f9e Feat/support next (#245) 3 years ago
keyframes f76bd5879d feat: init 4 years ago
layout f76bd5879d feat: init 4 years ago
list f76bd5879d feat: init 4 years ago
modal 4ccc9de021 chore: format code 4 years ago
navigation 626c4b9f9e Feat/support next (#245) 3 years ago
notification 626c4b9f9e Feat/support next (#245) 3 years ago
overflowList 626c4b9f9e Feat/support next (#245) 3 years ago
pagination ef2531c8be Fix strict ts (#314) 3 years ago
popconfirm b6ce00f945 Feat click out side (#273) 4 years ago
popover f76bd5879d feat: init 4 years ago
progress f76bd5879d feat: init 4 years ago
radio 6fe51306cd style: -radio_inner_min: -base-loose -> 20px, fix radio min-height will effected by different semi theme, maybe not align in vertical direction 4 years ago
rating 7e1a0ac5c2 fix: rating repeated click is not update (#112) 4 years ago
scripts f76bd5879d feat: init 4 years ago
scrollList 626c4b9f9e Feat/support next (#245) 3 years ago
select 626c4b9f9e Feat/support next (#245) 3 years ago
sideSheet 626c4b9f9e Feat/support next (#245) 3 years ago
skeleton f76bd5879d feat: init 4 years ago
slider 224ff874d0 fix(slider): when `value` is controlled, click on track not trigger `onAfterChange` 4 years ago
space f76bd5879d feat: init 4 years ago
spin f76bd5879d feat: init 4 years ago
steps f76bd5879d feat: init 4 years ago
switch 81f421ec49 style: [switch] add token $color-switch_disabled-bg-hover/ $color-switch_disabled-bg-active, close #115 (#185) 4 years ago
table 626c4b9f9e Feat/support next (#245) 3 years ago
tabs 626c4b9f9e Feat/support next (#245) 3 years ago
tag f76bd5879d feat: init 4 years ago
tagInput 626c4b9f9e Feat/support next (#245) 3 years ago
timePicker 626c4b9f9e Feat/support next (#245) 3 years ago
timeline d08dba9619 docs(darkmode): add demo and Timeline content add color scss variable (#313) 3 years ago
toast 626c4b9f9e Feat/support next (#245) 3 years ago
tooltip 626c4b9f9e Feat/support next (#245) 3 years ago
transfer 626c4b9f9e Feat/support next (#245) 3 years ago
tree 8370eec162 chore: [Tree] fix treeUtil type when strict ts 3 years ago
treeSelect 626c4b9f9e Feat/support next (#245) 3 years ago
typography f76bd5879d feat: init 4 years ago
upload f76bd5879d feat: init 4 years ago
utils 626c4b9f9e Feat/support next (#245) 3 years ago
README.md d8893466dc fix: semi-foundation/README.md gammar optimize (#165) 4 years ago
getBabelConfig.js 626c4b9f9e Feat/support next (#245) 3 years ago
gulpfile.js 626c4b9f9e Feat/support next (#245) 3 years ago
package.json a11f15ed64 v2.1.3 3 years ago
tsconfig.json 2f70e0bbc2 fix: ts check error of upload/witFied/fields in strict mode 3 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