semi-bot c69c466ecd v2.4.1 3 سال پیش
..
_portal f76bd5879d feat: init 4 سال پیش
anchor 626c4b9f9e Feat/support next (#245) 3 سال پیش
autoComplete 626c4b9f9e Feat/support next (#245) 3 سال پیش
avatar f76bd5879d feat: init 4 سال پیش
backtop f76bd5879d feat: init 4 سال پیش
badge f76bd5879d feat: init 4 سال پیش
banner f76bd5879d feat: init 4 سال پیش
base 626c4b9f9e Feat/support next (#245) 3 سال پیش
breadcrumb ef7f7b5608 feat: [Breadcrumb] add a11y aria-* (#489) 3 سال پیش
button c33c463ed9 style: add some Sass variables to Button, Input, Modal, Select, ScrollList and TreeSelect components(#570) 3 سال پیش
calendar ef2531c8be Fix strict ts (#314) 3 سال پیش
card f76bd5879d feat: init 4 سال پیش
cascader fb157a0607 feat: [Cascader] support separator #408 (#409) 3 سال پیش
checkbox cd95ebb1b3 chore: feat/a11y-aira rebase master v2.2 3 سال پیش
collapse ef2531c8be Fix strict ts (#314) 3 سال پیش
collapsible f76bd5879d feat: init 4 سال پیش
datePicker 5566d3973f fix(datepicker): can not close panel when preset dates is null or undefined #388 3 سال پیش
descriptions f76bd5879d feat: init 4 سال پیش
dropdown f76bd5879d feat: init 4 سال پیش
empty f76bd5879d feat: init 4 سال پیش
form 4aa11c3076 Merge branch 'main' of https://github.com/DouyinFE/semi-design into release 3 سال پیش
grid f76bd5879d feat: init 4 سال پیش
icons 626c4b9f9e Feat/support next (#245) 3 سال پیش
input c33c463ed9 style: add some Sass variables to Button, Input, Modal, Select, ScrollList and TreeSelect components(#570) 3 سال پیش
inputNumber f426adce1f fix(inputnumber): button right click bug (#540) 3 سال پیش
keyframes f76bd5879d feat: init 4 سال پیش
layout f76bd5879d feat: init 4 سال پیش
list f76bd5879d feat: init 4 سال پیش
modal c33c463ed9 style: add some Sass variables to Button, Input, Modal, Select, ScrollList and TreeSelect components(#570) 3 سال پیش
navigation cd95ebb1b3 chore: feat/a11y-aira rebase master v2.2 3 سال پیش
notification 5452012214 fix: fix notification show and hide order (#531) 3 سال پیش
overflowList 626c4b9f9e Feat/support next (#245) 3 سال پیش
pagination ef2531c8be Fix strict ts (#314) 3 سال پیش
popconfirm b6ce00f945 Feat click out side (#273) 3 سال پیش
popover f76bd5879d feat: init 4 سال پیش
progress f76bd5879d feat: init 4 سال پیش
radio cd95ebb1b3 chore: feat/a11y-aira rebase master v2.2 3 سال پیش
rating 1301e6199f fix(rating): half star ui error when set parant element line-height (#355) 3 سال پیش
scripts f76bd5879d feat: init 4 سال پیش
scrollList c33c463ed9 style: add some Sass variables to Button, Input, Modal, Select, ScrollList and TreeSelect components(#570) 3 سال پیش
select c33c463ed9 style: add some Sass variables to Button, Input, Modal, Select, ScrollList and TreeSelect components(#570) 3 سال پیش
sideSheet cd95ebb1b3 chore: feat/a11y-aira rebase master v2.2 3 سال پیش
skeleton f76bd5879d feat: init 4 سال پیش
slider 22bb17ca0f Merge branch 'milestone-2.3' of https://github.com/DouyinFE/semi-design into release 3 سال پیش
space f76bd5879d feat: init 4 سال پیش
spin f76bd5879d feat: init 4 سال پیش
steps f76bd5879d feat: init 4 سال پیش
switch 81f421ec49 style: [switch] add token $color-switch_disabled-bg-hover/ $color-switch_disabled-bg-active, close #115 (#185) 4 سال پیش
table a3595dc8c7 Merge branch 'main' into release 3 سال پیش
tabs 626c4b9f9e Feat/support next (#245) 3 سال پیش
tag f76bd5879d feat: init 4 سال پیش
tagInput 46b8737b9d fix(taginput): update TagInput Sass variable reference relationship (#615) 3 سال پیش
timePicker c2745eedfc feat: add support for `onChangeWithDateFirst` API (#571) 3 سال پیش
timeline 648beea4ff style: fix timeline custom dot props not align (#395) 3 سال پیش
toast 626c4b9f9e Feat/support next (#245) 3 سال پیش
tooltip bd532cf837 fix: (tooltip) adjustOverflow not include spacing & auto just cause splash screen 3 سال پیش
transfer 9375fc6d6d feat: a11y transfer (#420) 3 سال پیش
tree 00597dab17 fix: [TreeSelect] value will be cleared unexpectedly when uncontrolled single selection mode #515 (#590) 3 سال پیش
treeSelect c33c463ed9 style: add some Sass variables to Button, Input, Modal, Select, ScrollList and TreeSelect components(#570) 3 سال پیش
typography f76bd5879d feat: init 4 سال پیش
upload a2c5dfa8a5 Merge branch 'main' into release 3 سال پیش
utils 075fce8673 feat(a11y): remove useless aria-label #205 (#536) 3 سال پیش
README.md d8893466dc fix: semi-foundation/README.md gammar optimize (#165) 4 سال پیش
getBabelConfig.js 626c4b9f9e Feat/support next (#245) 3 سال پیش
gulpfile.js 9498eead2b feat: upgrade sass to 1.45.0 and set the option charset to false (#440) 3 سال پیش
package.json c69c466ecd v2.4.1 3 سال پیش
tsconfig.json 2f70e0bbc2 fix: ts check error of upload/witFied/fields in strict mode 3 سال پیش

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