走鹃 3b2384524c feat: add getUuidShort function 3 lat temu
..
_portal f76bd5879d feat: init 4 lat temu
anchor 626c4b9f9e Feat/support next (#245) 4 lat temu
autoComplete 626c4b9f9e Feat/support next (#245) 4 lat temu
avatar f76bd5879d feat: init 4 lat temu
backtop f76bd5879d feat: init 4 lat temu
badge f76bd5879d feat: init 4 lat temu
banner f76bd5879d feat: init 4 lat temu
base 626c4b9f9e Feat/support next (#245) 4 lat temu
breadcrumb f76bd5879d feat: init 4 lat temu
button f76bd5879d feat: init 4 lat temu
calendar ef2531c8be Fix strict ts (#314) 4 lat temu
card f76bd5879d feat: init 4 lat temu
cascader 626c4b9f9e Feat/support next (#245) 4 lat temu
checkbox 139008655d feat(a11y): checkbox aria #205 4 lat temu
collapse ef2531c8be Fix strict ts (#314) 4 lat temu
collapsible f76bd5879d feat: init 4 lat temu
datePicker 626c4b9f9e Feat/support next (#245) 4 lat temu
descriptions f76bd5879d feat: init 4 lat temu
dropdown f76bd5879d feat: init 4 lat temu
empty f76bd5879d feat: init 4 lat temu
form 626c4b9f9e Feat/support next (#245) 4 lat temu
grid f76bd5879d feat: init 4 lat temu
icons 626c4b9f9e Feat/support next (#245) 4 lat temu
input c7085c9ecf chore: merge feat/a11y 3 lat temu
inputNumber 626c4b9f9e Feat/support next (#245) 4 lat temu
keyframes f76bd5879d feat: init 4 lat temu
layout f76bd5879d feat: init 4 lat temu
list f76bd5879d feat: init 4 lat temu
modal 6cbfacc9cb feat(a11y): modal #205 4 lat temu
navigation c7085c9ecf chore: merge feat/a11y 3 lat temu
notification 626c4b9f9e Feat/support next (#245) 4 lat temu
overflowList 626c4b9f9e Feat/support next (#245) 4 lat temu
pagination ef2531c8be Fix strict ts (#314) 4 lat temu
popconfirm b6ce00f945 Feat click out side (#273) 4 lat temu
popover f76bd5879d feat: init 4 lat temu
progress f76bd5879d feat: init 4 lat temu
radio d3a263f3f1 feat(a11y): radio #205 4 lat temu
rating 7e1a0ac5c2 fix: rating repeated click is not update (#112) 4 lat temu
scripts f76bd5879d feat: init 4 lat temu
scrollList 626c4b9f9e Feat/support next (#245) 4 lat temu
select c7085c9ecf chore: merge feat/a11y 3 lat temu
sideSheet 886a960bd4 a11y:sidesheet (#415) 3 lat temu
skeleton f76bd5879d feat: init 4 lat temu
slider 224ff874d0 fix(slider): when `value` is controlled, click on track not trigger `onAfterChange` 4 lat temu
space f76bd5879d feat: init 4 lat temu
spin f76bd5879d feat: init 4 lat temu
steps f76bd5879d feat: init 4 lat temu
switch 81f421ec49 style: [switch] add token $color-switch_disabled-bg-hover/ $color-switch_disabled-bg-active, close #115 (#185) 4 lat temu
table c7085c9ecf chore: merge feat/a11y 3 lat temu
tabs 626c4b9f9e Feat/support next (#245) 4 lat temu
tag f76bd5879d feat: init 4 lat temu
tagInput 626c4b9f9e Feat/support next (#245) 4 lat temu
timePicker 626c4b9f9e Feat/support next (#245) 4 lat temu
timeline d08dba9619 docs(darkmode): add demo and Timeline content add color scss variable (#313) 4 lat temu
toast 626c4b9f9e Feat/support next (#245) 4 lat temu
tooltip 626c4b9f9e Feat/support next (#245) 4 lat temu
transfer 626c4b9f9e Feat/support next (#245) 4 lat temu
tree 626c4b9f9e Feat/support next (#245) 4 lat temu
treeSelect 626c4b9f9e Feat/support next (#245) 4 lat temu
typography f76bd5879d feat: init 4 lat temu
upload f76bd5879d feat: init 4 lat temu
utils 3b2384524c feat: add getUuidShort function 3 lat temu
README.md d8893466dc fix: semi-foundation/README.md gammar optimize (#165) 4 lat temu
getBabelConfig.js 626c4b9f9e Feat/support next (#245) 4 lat temu
gulpfile.js 626c4b9f9e Feat/support next (#245) 4 lat temu
package.json a11f15ed64 v2.1.3 4 lat temu
tsconfig.json f76bd5879d feat: init 4 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