├── .gitignore ├── .vscode ├── .jsbeautifyrc ├── .sass-lint.yml ├── extensions.json ├── settings.json └── tslint.json ├── LICENSE ├── README.md ├── assets ├── doc │ ├── assert.d.ts │ ├── doc.js │ ├── doc.scss │ ├── fonts │ │ ├── doc-icon.json │ │ └── doc-icon.ttf │ ├── images │ │ ├── favicon.ico │ │ ├── localization.png │ │ ├── logo.svg │ │ ├── moduler.png │ │ └── palette.png │ ├── index.scss │ ├── qunit.css │ └── qunit.js ├── mockup │ ├── detail.html │ └── index.html ├── resources │ ├── 100x100.png │ ├── 150x150.png │ ├── 200x150.png │ ├── 200x200.png │ ├── avatar.png │ ├── horse.ogg │ └── snow.swf └── tpl │ ├── default │ ├── package.json │ ├── tpl.md │ └── tpl.ts │ ├── typo │ ├── package.json │ ├── tpl.md │ └── tpl.scss │ ├── ui │ ├── package.json │ ├── tpl.md │ ├── tpl.scss │ └── tpl.tsx │ └── util │ ├── package.json │ ├── tpl-test.ts │ ├── tpl.md │ └── tpl.ts ├── components ├── configs.scss ├── index.yml ├── require.js ├── service │ ├── forkMeOnGithub │ │ ├── forkMeOnGithub.md │ │ ├── forkMeOnGithub.scss │ │ ├── old │ │ │ └── forkMeOnGithub.md │ │ └── package.json │ ├── googleMap │ │ ├── googleMap.md │ │ ├── old │ │ │ ├── googleMap.less │ │ │ └── googleMap.md │ │ └── package.json │ └── weather │ │ ├── old │ │ ├── weather.less │ │ └── weather.md │ │ ├── package.json │ │ └── weather.md ├── tsconfig.json ├── typo │ ├── accessibility │ │ ├── accessibility.md │ │ ├── accessibility.scss │ │ └── package.json │ ├── arrow │ │ ├── arrow.md │ │ ├── arrow.scss │ │ └── package.json │ ├── article │ │ ├── article.md │ │ ├── article.scss │ │ └── package.json │ ├── articleList │ │ ├── articleList.md │ │ ├── articleList.scss │ │ └── package.json │ ├── avatar │ │ ├── avatar.md │ │ ├── avatar.scss │ │ └── package.json │ ├── badge │ │ ├── badge.md │ │ ├── badge.scss │ │ └── package.json │ ├── blockquote │ │ ├── blockquote.md │ │ ├── blockquote.scss │ │ └── package.json │ ├── breadcrumb │ │ ├── breadcrumb.md │ │ ├── breadcrumb.scss │ │ └── package.json │ ├── buttonGroup │ │ ├── buttonGroup.md │ │ ├── buttonGroup.scss │ │ └── package.json │ ├── close │ │ ├── close.md │ │ ├── close.scss │ │ └── package.json │ ├── column │ │ ├── column.md │ │ ├── column.scss │ │ └── package.json │ ├── fieldset │ │ ├── fieldset.md │ │ ├── fieldset.scss │ │ └── package.json │ ├── grid │ │ ├── grid.md │ │ ├── grid.scss │ │ └── package.json │ ├── hover │ │ ├── hover.md │ │ ├── hover.scss │ │ └── package.json │ ├── icon │ │ ├── fonts │ │ │ ├── icon.json │ │ │ ├── icon.svg │ │ │ ├── icon.ttf │ │ │ └── icon.woff │ │ ├── icon-class.scss │ │ ├── icon.md │ │ ├── icon.scss │ │ └── package.json │ ├── linkButton │ │ ├── linkButton.md │ │ ├── linkButton.scss │ │ ├── old │ │ │ ├── linkButton (2).md │ │ │ ├── linkButton (3).md │ │ │ └── linkButton.md │ │ └── package.json │ ├── list │ │ ├── list.md │ │ ├── list.scss │ │ └── package.json │ ├── mask │ │ ├── mask.md │ │ ├── mask.scss │ │ └── package.json │ ├── media │ │ ├── media.md │ │ ├── media.scss │ │ └── package.json │ ├── money │ │ ├── money.md │ │ ├── money.scss │ │ └── package.json │ ├── nav │ │ ├── nav.md │ │ ├── nav.scss │ │ ├── old │ │ │ ├── nav.md │ │ │ └── nav.scss │ │ └── package.json │ ├── print │ │ ├── package.json │ │ ├── print.md │ │ └── print.scss │ ├── reset │ │ ├── package.json │ │ ├── reset-more.md │ │ ├── reset-more.scss │ │ ├── reset.md │ │ └── reset.scss │ ├── spin │ │ ├── package.json │ │ ├── spin.md │ │ └── spin.scss │ ├── summary │ │ ├── package.json │ │ ├── summary.md │ │ └── summary.scss │ ├── table │ │ ├── package.json │ │ ├── table-more.md │ │ ├── table-more.scss │ │ ├── table.md │ │ └── table.scss │ ├── tag │ │ ├── package.json │ │ ├── tag.md │ │ └── tag.scss │ ├── textBoxGroup │ │ ├── old │ │ │ ├── inputGroup.md │ │ │ └── inputGroup.scss │ │ ├── package.json │ │ ├── textBoxGroup.md │ │ └── textBoxGroup.scss │ ├── thumbnail │ │ ├── package.json │ │ ├── thumbnail.md │ │ └── thumbnail.scss │ ├── tip │ │ ├── package.json │ │ ├── tip.md │ │ └── tip.scss │ ├── toolBar │ │ ├── package.json │ │ ├── toolBar.md │ │ └── toolBar.scss │ ├── util │ │ ├── package.json │ │ ├── util-more.md │ │ ├── util-more.scss │ │ ├── util.md │ │ └── util.scss │ └── videoPlaceholder │ │ ├── package.json │ │ ├── videoPlaceholder.md │ │ └── videoPlaceholder.scss ├── ui │ ├── accordion │ │ ├── accordion.md │ │ ├── accordion.scss │ │ ├── accordion.tsx │ │ └── package.json │ ├── addToHomeScreen │ │ ├── addToHomeScreen.md │ │ ├── addToHomeScreen.scss │ │ ├── addToHomeScreen.tsx │ │ ├── addToHomeScreen2.md │ │ └── package.json │ ├── balloonTip │ │ ├── balloonTip.md │ │ ├── balloonTip.scss │ │ ├── balloonTip.tsx │ │ └── package.json │ ├── button │ │ ├── button.md │ │ ├── button.scss │ │ ├── button.tsx │ │ └── package.json │ ├── butttonGroup │ │ ├── butttonGroup.md │ │ ├── butttonGroup.scss │ │ ├── butttonGroup.tsx │ │ └── package.json │ ├── calender │ │ ├── calender.md │ │ ├── calender.scss │ │ ├── calender.tsx │ │ ├── old │ │ │ ├── calender.less │ │ │ ├── calender.md │ │ │ └── calender.ts │ │ └── package.json │ ├── carousel │ │ ├── carousel.md │ │ ├── carousel.scss │ │ ├── carousel.tsx │ │ └── package.json │ ├── charCounter │ │ ├── charCounter.md │ │ ├── charCounter.scss │ │ ├── charCounter.tsx │ │ ├── old │ │ │ ├── charCounter.md │ │ │ └── charCounter.ts │ │ └── package.json │ ├── checkBox │ │ ├── checkBox.md │ │ ├── checkBox.scss │ │ ├── checkBox.tsx │ │ └── package.json │ ├── checkBoxGroup │ │ ├── checkBoxGroup.md │ │ ├── checkBoxGroup.scss │ │ ├── checkBoxGroup.tsx │ │ └── package.json │ ├── cityPicker │ │ ├── cityPicker.md │ │ ├── cityPicker.scss │ │ ├── cityPicker.tsx │ │ ├── old │ │ │ ├── cityPicker.md │ │ │ └── cityPicker.ts │ │ └── package.json │ ├── codeEditor │ │ ├── codeEditor.md │ │ ├── codeEditor.scss │ │ ├── codeEditor.tsx │ │ └── package.json │ ├── colorPicker │ │ ├── colorPicker.md │ │ ├── colorPicker.scss │ │ ├── colorPicker.tsx │ │ ├── old │ │ │ ├── colorPicker.less │ │ │ └── colorPicker.md │ │ └── package.json │ ├── comboBox │ │ ├── comboBox.md │ │ ├── comboBox.scss │ │ ├── comboBox.tsx │ │ └── package.json │ ├── contextMenu │ │ ├── contextMenu.md │ │ ├── contextMenu.scss │ │ ├── contextMenu.tsx │ │ ├── index.md │ │ ├── old │ │ │ ├── contextMenu (2).md │ │ │ ├── contextMenu.md │ │ │ └── images │ │ │ │ ├── icon-error (2).gif │ │ │ │ ├── icon-error.gif │ │ │ │ ├── icon-info (2).gif │ │ │ │ ├── icon-info.gif │ │ │ │ ├── icon-question (2).gif │ │ │ │ ├── icon-question.gif │ │ │ │ ├── icon-success (2).png │ │ │ │ ├── icon-success.png │ │ │ │ ├── icon-warning (2).gif │ │ │ │ └── icon-warning.gif │ │ └── package.json │ ├── control │ │ ├── control.md │ │ ├── control.tsx │ │ ├── jsx.d.ts │ │ └── package.json │ ├── dataGridView │ │ ├── dataGridView.md │ │ ├── dataGridView.scss │ │ ├── dataGridView.tsx │ │ ├── package.json │ │ └── table │ │ │ ├── index.md │ │ │ ├── table.less │ │ │ ├── table.ts │ │ │ └── test.ts │ ├── datePicker │ │ ├── datePicker.md │ │ ├── datePicker.scss │ │ ├── datePicker.tsx │ │ ├── old │ │ │ ├── datePicker.md │ │ │ └── datePicker.ts │ │ └── package.json │ ├── dialog │ │ ├── dialog.md │ │ ├── dialog.scss │ │ ├── dialog.tsx │ │ └── package.json │ ├── emailSuggest │ │ ├── emailSuggest.md │ │ ├── emailSuggest.scss │ │ ├── emailSuggest.tsx │ │ ├── old │ │ │ ├── emailSuggest.md │ │ │ └── emailSuggest.ts │ │ └── package.json │ ├── fileUpload │ │ ├── fileUpload.md │ │ ├── fileUpload.scss │ │ ├── fileUpload.tsx │ │ ├── old │ │ │ ├── fileUpload.less │ │ │ ├── fileUpload.md │ │ │ └── fileUpload.ts │ │ └── package.json │ ├── form │ │ ├── form.md │ │ ├── form.scss │ │ ├── form.tsx │ │ ├── form │ │ │ ├── form (2).md │ │ │ ├── form (2).scss │ │ │ ├── form (2).tsx │ │ │ ├── form (3).scss │ │ │ ├── form (3).tsx │ │ │ ├── form.less │ │ │ ├── form.md │ │ │ ├── form.scss │ │ │ ├── form.ts │ │ │ ├── form.tsx │ │ │ └── index.md │ │ └── package.json │ ├── formLayout │ │ ├── formLayout.md │ │ ├── formLayout.scss │ │ ├── formLayout.tsx │ │ └── package.json │ ├── highligher │ │ ├── highligher.md │ │ ├── highligher.scss │ │ ├── highligher.tsx │ │ └── package.json │ ├── htmlEditor │ │ ├── htmlEditor.md │ │ ├── htmlEditor.scss │ │ ├── htmlEditor.tsx │ │ └── package.json │ ├── imageEditor │ │ ├── imageEditor.md │ │ ├── imageEditor.scss │ │ ├── imageEditor.tsx │ │ └── package.json │ ├── imageViewer │ │ ├── imageViewer.md │ │ ├── imageViewer.scss │ │ ├── imageViewer.tsx │ │ └── package.json │ ├── input │ │ ├── input.md │ │ ├── input.tsx │ │ └── package.json │ ├── inputGroup │ │ ├── inputGroup.md │ │ ├── inputGroup.scss │ │ ├── inputGroup.tsx │ │ └── package.json │ ├── listBox │ │ ├── listBox.md │ │ ├── listBox.scss │ │ ├── listBox.tsx │ │ └── package.json │ ├── listView │ │ ├── listView.md │ │ ├── listView.scss │ │ ├── listView.tsx │ │ ├── old │ │ │ ├── listView (2).md │ │ │ └── listView.md │ │ └── package.json │ ├── markdownEditor │ │ ├── markdownEditor.md │ │ ├── markdownEditor.scss │ │ ├── markdownEditor.tsx │ │ └── package.json │ ├── menu │ │ ├── menu.md │ │ ├── menu.scss │ │ ├── menu.tsx │ │ └── package.json │ ├── menuButtton │ │ ├── menuButtton.md │ │ ├── menuButtton.scss │ │ ├── menuButtton.tsx │ │ └── package.json │ ├── messageBox │ │ ├── messageBox.md │ │ ├── messageBox.scss │ │ ├── messageBox.tsx │ │ └── package.json │ ├── multiListBox │ │ ├── multiListBox.md │ │ ├── multiListBox.tsx │ │ └── package.json │ ├── navMenu │ │ ├── images │ │ │ └── chevron-right.svg │ │ ├── navMenu.md │ │ ├── navMenu.scss │ │ ├── navMenu.tsx │ │ └── package.json │ ├── navTab │ │ ├── navTab.md │ │ ├── navTab.scss │ │ ├── navTab.tsx │ │ └── package.json │ ├── navTree │ │ ├── navTree.md │ │ ├── navTree.scss │ │ ├── navTree.tsx │ │ └── package.json │ ├── notification │ │ ├── notification.md │ │ ├── notification.scss │ │ ├── notification.tsx │ │ └── package.json │ ├── numericUpDown │ │ ├── numericUpDown.md │ │ ├── numericUpDown.scss │ │ ├── numericUpDown.tsx │ │ ├── old │ │ │ ├── numericUpDown.md │ │ │ └── numericUpDown.ts │ │ └── package.json │ ├── pagination │ │ ├── old │ │ │ ├── index.md │ │ │ ├── pager (2).scss │ │ │ ├── pager (2).ts │ │ │ ├── pager-full.ts │ │ │ ├── pager-simple.ts │ │ │ ├── pager.md │ │ │ ├── pager.scss │ │ │ ├── pager.ts │ │ │ └── pager.tsx │ │ ├── package.json │ │ ├── pagination.md │ │ ├── pagination.scss │ │ └── pagination.tsx │ ├── palette │ │ ├── old │ │ │ ├── palette.less │ │ │ ├── palette.md │ │ │ └── palette.ts │ │ ├── package.json │ │ ├── palette.md │ │ ├── palette.scss │ │ └── palette.tsx │ ├── panel │ │ ├── package.json │ │ ├── panel.md │ │ ├── panel.scss │ │ └── panel.tsx │ ├── picker │ │ ├── package.json │ │ ├── picker.md │ │ ├── picker.scss │ │ └── picker.tsx │ ├── popup │ │ ├── package.json │ │ ├── popup.md │ │ ├── popup.scss │ │ └── popup.tsx │ ├── progressBar │ │ ├── package.json │ │ ├── progressBar.md │ │ ├── progressBar.scss │ │ └── progressBar.tsx │ ├── progressCircle │ │ ├── package.json │ │ ├── progressCircle.md │ │ ├── progressCircle.scss │ │ └── progressCircle.tsx │ ├── radioButton │ │ ├── package.json │ │ ├── radioButton.md │ │ ├── radioButton.scss │ │ ├── radioButton.tsx │ │ └── radioButton2.md │ ├── radioButtonGroup │ │ ├── package.json │ │ ├── radioButtonGroup.md │ │ ├── radioButtonGroup.scss │ │ └── radioButtonGroup.tsx │ ├── richTextBox │ │ ├── package.json │ │ ├── richTextBox.md │ │ ├── richTextBox.scss │ │ └── richTextBox.tsx │ ├── safeLink │ │ ├── package.json │ │ ├── safeLink.md │ │ ├── safeLink.scss │ │ └── safeLink.tsx │ ├── scrollToTop │ │ ├── package.json │ │ ├── scrollToTop.md │ │ ├── scrollToTop.scss │ │ └── scrollToTop.tsx │ ├── searchBox │ │ ├── package.json │ │ ├── searchBox.md │ │ ├── searchBox.scss │ │ ├── searchBox.tsx │ │ └── searchTextBox │ │ │ ├── package.json │ │ │ ├── searchTextBox (2).md │ │ │ ├── searchTextBox.less │ │ │ ├── searchTextBox.md │ │ │ ├── searchTextBox.scss │ │ │ └── searchTextBox.tsx │ ├── select │ │ ├── package.json │ │ ├── select.md │ │ ├── select.scss │ │ └── select.tsx │ ├── shareTo │ │ ├── old │ │ │ ├── shareTo.less │ │ │ ├── shareTo.md │ │ │ └── shareTo.ts │ │ ├── package.json │ │ ├── shareTo.md │ │ ├── shareTo.scss │ │ └── shareTo.tsx │ ├── slider │ │ ├── old │ │ │ ├── slider.less │ │ │ ├── slider.md │ │ │ └── slider.ts │ │ ├── package.json │ │ ├── slider.md │ │ ├── slider.scss │ │ └── slider.tsx │ ├── splitButton │ │ ├── old │ │ │ ├── splitButton.less │ │ │ ├── splitButton.md │ │ │ └── splitButton.ts │ │ ├── package.json │ │ ├── splitButton.md │ │ ├── splitButton.scss │ │ └── splitButton.tsx │ ├── splitter │ │ ├── package.json │ │ ├── splitter.md │ │ ├── splitter.scss │ │ └── splitter.tsx │ ├── starRating │ │ ├── images │ │ │ ├── icon-starrating-big (2).gif │ │ │ ├── icon-starrating-big.gif │ │ │ ├── star (2).png │ │ │ └── star.png │ │ ├── package.json │ │ ├── starRating.md │ │ ├── starRating.scss │ │ └── starRating.tsx │ ├── suggest │ │ ├── package.json │ │ ├── suggest.md │ │ ├── suggest.scss │ │ └── suggest.tsx │ ├── tabControl │ │ ├── package.json │ │ ├── tab │ │ │ ├── old │ │ │ │ ├── tab-more.scss │ │ │ │ └── tab.scss │ │ │ ├── tab-more.md │ │ │ ├── tab-more.scss │ │ │ ├── tab.md │ │ │ └── tab.scss │ │ ├── tabControl.md │ │ ├── tabControl.scss │ │ └── tabControl.tsx │ ├── tagChooser │ │ ├── package.json │ │ ├── tagChooser.md │ │ ├── tagChooser.scss │ │ └── tagChooser.tsx │ ├── textArea │ │ ├── package.json │ │ ├── textArea.md │ │ └── textArea.tsx │ ├── textBox │ │ ├── package.json │ │ ├── textBox.md │ │ ├── textBox.scss │ │ └── textBox.tsx │ ├── timePicker │ │ ├── package.json │ │ ├── timePicker.md │ │ ├── timePicker.scss │ │ └── timePicker.tsx │ ├── tipBox │ │ ├── package.json │ │ ├── tipBox.md │ │ ├── tipBox.scss │ │ └── tipBox.tsx │ ├── toast │ │ ├── package.json │ │ ├── toast.md │ │ ├── toast.scss │ │ └── toast.tsx │ ├── toolTip │ │ ├── package.json │ │ ├── toolTip.md │ │ ├── toolTip.scss │ │ └── toolTip.tsx │ ├── treeView │ │ ├── old │ │ │ ├── tree.md │ │ │ ├── tree.scss │ │ │ ├── tree.ts │ │ │ ├── treeView (2).less │ │ │ ├── treeView (2).md │ │ │ ├── treeView (2).ts │ │ │ ├── treeView.less │ │ │ ├── treeView.md │ │ │ └── treeView.ts │ │ ├── package.json │ │ ├── treeView.md │ │ ├── treeView.scss │ │ └── treeView.tsx │ ├── ubbEditor │ │ ├── package.json │ │ ├── ubbEditor.md │ │ ├── ubbEditor.scss │ │ └── ubbEditor.tsx │ └── upDown │ │ ├── old │ │ ├── upDown-traditional.less │ │ ├── upDown-traditional.md │ │ ├── upDown.less │ │ ├── upDown.md │ │ └── upDown.ts │ │ ├── package.json │ │ ├── upDown-tradional.scss │ │ ├── upDown.md │ │ ├── upDown.scss │ │ └── upDown.tsx ├── util │ ├── array │ │ ├── array-test.ts │ │ ├── array.md │ │ ├── array.ts │ │ └── package.json │ ├── asyncQueue │ │ ├── asyncQueue-test.ts │ │ ├── asyncQueue.md │ │ ├── asyncQueue.ts │ │ └── package.json │ ├── base64 │ │ ├── base64-test.ts │ │ ├── base64.md │ │ ├── base64.ts │ │ └── package.json │ ├── bigInteger │ │ ├── bigInteger-test.ts │ │ ├── bigInteger.md │ │ ├── bigInteger.ts │ │ └── package.json │ ├── bigNumber │ │ ├── bigNumber.js │ │ ├── bigNumber.md │ │ └── package.json │ ├── boolean │ │ ├── boolean-test.ts │ │ ├── boolean.md │ │ ├── boolean.ts │ │ └── package.json │ ├── bresenham │ │ ├── bresenham-test.ts │ │ ├── bresenham.md │ │ ├── bresenham.ts │ │ └── package.json │ ├── check │ │ ├── check-test.ts │ │ ├── check.md │ │ ├── check.ts │ │ └── package.json │ ├── chineseId │ │ ├── chineseId-test.ts │ │ ├── chineseId.md │ │ ├── chineseId.ts │ │ └── package.json │ ├── class │ │ ├── class-test.ts │ │ ├── class.md │ │ ├── class.ts │ │ └── package.json │ ├── color │ │ ├── color-test.ts │ │ ├── color.md │ │ ├── color.ts │ │ ├── knownColors.ts │ │ └── package.json │ ├── currency │ │ ├── currency-test.ts │ │ ├── currency.md │ │ ├── currency.ts │ │ └── package.json │ ├── dataTable │ │ ├── dataTable-test.ts │ │ ├── dataTable.md │ │ ├── dataTable.ts │ │ └── package.json │ ├── date │ │ ├── date-test.ts │ │ ├── date.md │ │ ├── date.ts │ │ └── package.json │ ├── delegate │ │ ├── delegate-test.ts │ │ ├── delegate.md │ │ ├── delegate.ts │ │ └── package.json │ ├── des │ │ ├── des-test.ts │ │ ├── des.md │ │ ├── des.ts │ │ └── package.json │ ├── encryptString │ │ ├── encryptString-test.ts │ │ ├── encryptString.md │ │ ├── encryptString.ts │ │ └── package.json │ ├── enum │ │ ├── enum-test.ts │ │ ├── enum.md │ │ ├── enum.ts │ │ └── package.json │ ├── events │ │ ├── events-test.ts │ │ ├── events.md │ │ ├── events.ts │ │ └── package.json │ ├── formatCurrencyToChinese │ │ ├── formatCurrencyToChinese-test.ts │ │ ├── formatCurrencyToChinese.md │ │ ├── formatCurrencyToChinese.ts │ │ └── package.json │ ├── formatTimeToChinese │ │ ├── formatTimeToChinese-test.ts │ │ ├── formatTimeToChinese.md │ │ ├── formatTimeToChinese.ts │ │ └── package.json │ ├── function │ │ ├── function-test.ts │ │ ├── function.md │ │ ├── function.ts │ │ └── package.json │ ├── gb2312 │ │ ├── gb2312-test.ts │ │ ├── gb2312.md │ │ ├── gb2312.ts │ │ └── package.json │ ├── html │ │ ├── html-test.ts │ │ ├── html.md │ │ ├── html.ts │ │ └── package.json │ ├── jjencode │ │ ├── jjencode-test.ts │ │ ├── jjencode.js │ │ ├── jjencode.md │ │ └── package.json │ ├── markdown │ │ ├── markdown.js │ │ ├── markdown.md │ │ └── package.json │ ├── md5 │ │ ├── md5-more.md │ │ ├── md5-more.ts │ │ ├── md5-test.ts │ │ ├── md5.md │ │ ├── md5.ts │ │ └── package.json │ ├── namespace │ │ ├── namespace-test.ts │ │ ├── namespace.md │ │ ├── namespace.ts │ │ └── package.json │ ├── number │ │ ├── number-test.ts │ │ ├── number.md │ │ ├── number.ts │ │ └── package.json │ ├── obfuscator │ │ ├── obfuscator.js │ │ ├── obfuscator.md │ │ └── package.json │ ├── object │ │ ├── object-test.ts │ │ ├── object.md │ │ ├── object.ts │ │ └── package.json │ ├── password │ │ ├── package.json │ │ ├── password-test.ts │ │ ├── password.md │ │ └── password.ts │ ├── path │ │ ├── package.json │ │ ├── path-test.ts │ │ ├── path.md │ │ └── path.ts │ ├── pinyin │ │ ├── package.json │ │ ├── pinyin-gbk.md │ │ ├── pinyin-gbk.ts │ │ ├── pinyin-test.ts │ │ ├── pinyin.md │ │ └── pinyin.ts │ ├── qrcode │ │ ├── package.json │ │ ├── qrcode-test.ts │ │ ├── qrcode.md │ │ └── qrcode.ts │ ├── query │ │ ├── package.json │ │ ├── query-test.ts │ │ ├── query.md │ │ └── query.ts │ ├── queue │ │ ├── package.json │ │ ├── queue-test.ts │ │ ├── queue.md │ │ └── queue.ts │ ├── rect │ │ ├── package.json │ │ ├── rect-test.ts │ │ ├── rect.md │ │ └── rect.ts │ ├── regexp │ │ ├── package.json │ │ ├── regexp-lib.md │ │ ├── regexp-lib.ts │ │ ├── regexp-test.ts │ │ ├── regexp.md │ │ └── regexp.ts │ ├── searchPinYin │ │ ├── package.json │ │ ├── searchPinYin-test.ts │ │ ├── searchPinYin.md │ │ └── searchPinYin.ts │ ├── sha1 │ │ ├── package.json │ │ ├── sha1-test.ts │ │ ├── sha1.md │ │ └── sha1.ts │ ├── shim │ │ ├── atob-shim.js │ │ ├── es5-shim.ts │ │ ├── es6-shim.ts │ │ ├── es7-shim.ts │ │ ├── json-shim.js │ │ ├── package.json │ │ ├── promise-shim.js │ │ ├── shim-test.ts │ │ ├── shim.md │ │ └── shim.ts │ ├── sort │ │ ├── package.json │ │ ├── sort-test.ts │ │ ├── sort.md │ │ └── sort.ts │ ├── sqlike │ │ ├── package.json │ │ ├── sqlike.js │ │ └── sqlike.md │ ├── string │ │ ├── package.json │ │ ├── string-test.ts │ │ ├── string.md │ │ └── string.ts │ ├── tpl │ │ ├── old │ │ │ ├── asp.ts │ │ │ ├── curly.ts │ │ │ ├── tpl.md │ │ │ └── tpl.ts │ │ ├── package.json │ │ ├── tpl-test.ts │ │ ├── tpl.md │ │ └── tpl.ts │ ├── tradionalChinese │ │ ├── package.json │ │ ├── tradionalChinese-test.ts │ │ ├── tradionalChinese.md │ │ └── tradionalChinese.ts │ ├── tween │ │ ├── package.json │ │ ├── transitions.md │ │ ├── transitions.ts │ │ ├── tween-test.ts │ │ ├── tween.md │ │ └── tween.ts │ ├── url │ │ ├── package.json │ │ ├── url-test.ts │ │ ├── url.md │ │ └── url.ts │ ├── utf8 │ │ ├── package.json │ │ ├── utf8-test.ts │ │ ├── utf8.md │ │ └── utf8.ts │ └── xRegExp │ │ ├── package.json │ │ ├── xRegExp.js │ │ └── xRegExp.md └── ux │ ├── active │ ├── active.md │ ├── active.ts │ └── package.json │ ├── addFavorite │ ├── addFavorite.md │ ├── addFavorite.ts │ └── package.json │ ├── ajax │ ├── ajax-more.ts │ ├── ajax-test.ts │ ├── ajax.md │ ├── ajax.ts │ └── package.json │ ├── ajaxSubmit │ ├── ajaxSubmit-test.ts │ ├── ajaxSubmit.md │ ├── ajaxSubmit.ts │ └── package.json │ ├── animate │ ├── animate.md │ ├── animate.ts │ ├── old │ │ ├── tween.md │ │ └── tween.ts │ └── package.json │ ├── animateText │ ├── animateText.md │ ├── animateText.ts │ ├── old │ │ ├── animateText.md │ │ └── animateText.ts │ └── package.json │ ├── at │ ├── at.md │ ├── at.ts │ └── package.json │ ├── autoResize │ ├── autoResize.md │ ├── autoResize.ts │ └── package.json │ ├── autoScroll │ ├── autoScroll.md │ ├── autoScroll.ts │ └── package.json │ ├── borderLayout │ ├── borderLayout.md │ ├── borderLayout.ts │ ├── old │ │ ├── borderLayoutEngine.md │ │ ├── layoutEngine.md │ │ └── layoutEngine.ts │ └── package.json │ ├── clipboard │ ├── clipboard-more.ts │ ├── clipboard-test.ts │ ├── clipboard.md │ ├── clipboard.ts │ ├── package.json │ ├── resources │ │ └── ZeroClipboard.swf │ └── zeroClipboard.js │ ├── cookie │ ├── cookie-more.md │ ├── cookie-more.ts │ ├── cookie-test.ts │ ├── cookie.md │ ├── cookie.ts │ └── package.json │ ├── copy │ ├── copy.md │ ├── copy.ts │ └── package.json │ ├── countDown │ ├── countDown.md │ ├── countDown.ts │ └── package.json │ ├── crashBrowser │ ├── crashBrowser-test.ts │ ├── crashBrowser.md │ ├── crashBrowser.ts │ └── package.json │ ├── ctrlEnter │ ├── ctrlEnter.md │ ├── ctrlEnter.ts │ └── package.json │ ├── disableTab │ ├── disableTab.md │ ├── disableTab.ts │ └── package.json │ ├── dom │ ├── dom-test.ts │ ├── dom.md │ ├── dom.ts │ └── package.json │ ├── drag │ ├── drag.md │ ├── drag.ts │ └── package.json │ ├── drop │ ├── drop.md │ ├── drop.ts │ └── package.json │ ├── fixed │ ├── fixed.md │ ├── fixed.ts │ ├── old │ │ ├── fixed.md │ │ └── fixed.ts │ └── package.json │ ├── flash │ ├── flash-test.ts │ ├── flash.md │ ├── flash.ts │ ├── package.json │ └── swfObject.js │ ├── flexible │ ├── flexible.md │ ├── flexible.ts │ ├── flexible │ │ ├── flexible.ts │ │ └── index.md │ └── package.json │ ├── floating │ ├── floating.md │ ├── floating.ts │ ├── old │ │ ├── floating.md │ │ └── floating.ts │ └── package.json │ ├── forceOpen │ ├── forceOpen.md │ ├── forceOpen.ts │ └── package.json │ ├── gray │ ├── gray.md │ ├── gray.ts │ └── package.json │ ├── hashChange │ ├── hashChange.md │ ├── hashChange.ts │ └── package.json │ ├── highlight │ ├── highlight.md │ ├── highlight.ts │ ├── old │ │ ├── highlight.md │ │ ├── highlight.ts │ │ ├── highlightKeywords.md │ │ └── highlightKeywords.ts │ └── package.json │ ├── hover │ ├── hover.md │ ├── hover.ts │ └── package.json │ ├── ieShim │ ├── ie-shim.ts │ ├── ieShim-test.ts │ ├── ieShim.md │ ├── ieShim.ts │ ├── old │ │ └── shim.md │ └── package.json │ ├── iframe │ ├── iframe-test.ts │ ├── iframe.md │ ├── iframe.ts │ ├── old │ │ ├── iframe.md │ │ └── iframe.ts │ └── package.json │ ├── include │ ├── include-test.ts │ ├── include.md │ ├── include.ts │ └── package.json │ ├── keyPress │ ├── keyPress.md │ ├── keyPress.ts │ └── package.json │ ├── keys │ ├── editing.md │ ├── keys-test.ts │ ├── keys.md │ ├── keys.ts │ └── package.json │ ├── killIE │ ├── killIE.md │ └── package.json │ ├── lazyLoad │ ├── lazyLoad.md │ ├── lazyLoad.ts │ └── package.json │ ├── load │ ├── load-test.ts │ ├── load.md │ ├── load.ts │ ├── old │ │ ├── loadHtml.ts │ │ ├── loadImage.ts │ │ ├── loadScript.ts │ │ ├── loadStyle.ts │ │ └── loading.md │ └── package.json │ ├── marquee │ ├── marquee.md │ ├── marquee.ts │ ├── old │ │ ├── marquee.md │ │ └── marquee.ts │ └── package.json │ ├── messager │ ├── messager-test.ts │ ├── messager.md │ ├── messager.ts │ └── package.json │ ├── morph │ ├── morph.md │ ├── morph.ts │ ├── old │ │ ├── morph.md │ │ └── morph.ts │ └── package.json │ ├── multiFade │ ├── multiFade.md │ ├── multiFade.ts │ ├── old │ │ ├── multiFade.md │ │ └── multiFade.ts │ └── package.json │ ├── navigator │ ├── navigator-test.ts │ ├── navigator.md │ ├── navigator.ts │ └── package.json │ ├── nextTick │ ├── nextTick-test.ts │ ├── nextTick.md │ ├── nextTick.ts │ └── package.json │ ├── noContextMenu │ ├── noContextMenu.md │ ├── noContextMenu.ts │ └── package.json │ ├── noIFrame │ ├── noIFrame.md │ ├── noIFrame.ts │ └── package.json │ ├── outerHTML │ ├── outerHTML-test.ts │ ├── outerHTML.md │ ├── outerHTML.ts │ └── package.json │ ├── pin │ ├── package.json │ ├── pin.md │ └── pin.ts │ ├── placeholder │ ├── old │ │ ├── placeholder (2).ts │ │ ├── placeholder.less │ │ ├── placeholder.md │ │ └── placeholder.ts │ ├── package.json │ ├── placeholder.md │ └── placeholder.ts │ ├── popup │ ├── package.json │ ├── popup.md │ └── popup.ts │ ├── preload │ ├── package.json │ ├── preload.md │ └── preload.ts │ ├── preventMaskScroll │ ├── package.json │ ├── preventMaskScroll.md │ └── preventMaskScroll.ts │ ├── resize │ ├── package.json │ ├── resize.md │ └── resize.ts │ ├── scroll │ ├── package.json │ ├── scroll.md │ └── scroll.ts │ ├── scrollSpy │ ├── old │ │ ├── scrollSpy (2).md │ │ ├── scrollSpy (2).ts │ │ ├── scrollSpy.md │ │ └── scrollSpy.ts │ ├── package.json │ ├── scrollSpy.md │ └── scrollSpy.ts │ ├── scrollbar │ ├── old │ │ ├── scrollbar.less │ │ ├── scrollbar.md │ │ └── scrollbar.ts │ ├── package.json │ ├── scrollbar.md │ └── scrollbar.ts │ ├── selection │ ├── old │ │ ├── selection.md │ │ └── selection.ts │ ├── package.json │ ├── selection-test.ts │ ├── selection.md │ └── selection.ts │ ├── sort │ ├── old │ │ ├── sort.ts │ │ └── sortable.md │ ├── package.json │ ├── sort.md │ └── sort.ts │ ├── splitter │ ├── old │ │ └── splitter.md │ ├── package.json │ ├── splitter.md │ ├── splitter.scss │ └── splitter.ts │ ├── status │ ├── package.json │ ├── status.md │ └── status.ts │ ├── stylesheet │ ├── old │ │ ├── stylesheet.md │ │ └── stylesheet.ts │ ├── package.json │ ├── stylesheet-test.ts │ ├── stylesheet.md │ └── stylesheet.ts │ ├── swipe │ ├── package.json │ ├── swipe.md │ ├── swipe.ts │ ├── swipe2.ts │ ├── xswipe.md │ └── xswipe.ts │ ├── tab │ ├── package.json │ ├── tab.md │ └── tab.ts │ ├── tableLayout │ ├── old │ │ └── tableLayoutEngine.md │ ├── package.json │ ├── tableLayout.md │ └── tableLayout.ts │ ├── toggleFullScreen │ ├── package.json │ ├── toggleFullScreen.md │ └── toggleFullScreen.ts │ ├── touch │ ├── old │ │ ├── touchRefresh.ts │ │ ├── touchRotate.ts │ │ ├── touchScroll (2).md │ │ ├── touchScroll (2).ts │ │ ├── touchScroll (3).ts │ │ ├── touchScroll (4).md │ │ ├── touchScroll (4).ts │ │ ├── touchScroll.md │ │ ├── touchScroll.ts │ │ └── touching.md │ ├── package.json │ ├── touch.md │ └── touch.ts │ ├── url │ ├── package.json │ ├── url-test.ts │ ├── url.md │ └── url.ts │ ├── waterfall │ ├── package.json │ ├── waterfall.md │ └── waterfall.ts │ ├── within │ ├── package.json │ ├── within-test.ts │ ├── within.md │ └── within.ts │ └── xml │ ├── package.json │ ├── xml-test.ts │ ├── xml.md │ └── xml.ts ├── digofile.js ├── docs └── index.yml ├── package.json └── tools └── index.yml /.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | "recommendations": [ 3 | "HookyQR.beautify", 4 | "eg2.tslint", 5 | "glen-84.sass-lint", 6 | "xuld.digo", 7 | "mrmlnc.vscode-scss" 8 | ] 9 | } -------------------------------------------------------------------------------- /assets/doc/fonts/doc-icon.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Teal/TealUI/f27df2e60cb02bdb603eca80bc7c1d3b764d8150/assets/doc/fonts/doc-icon.ttf -------------------------------------------------------------------------------- /assets/doc/images/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Teal/TealUI/f27df2e60cb02bdb603eca80bc7c1d3b764d8150/assets/doc/images/favicon.ico -------------------------------------------------------------------------------- /assets/doc/images/localization.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Teal/TealUI/f27df2e60cb02bdb603eca80bc7c1d3b764d8150/assets/doc/images/localization.png -------------------------------------------------------------------------------- /assets/doc/images/moduler.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Teal/TealUI/f27df2e60cb02bdb603eca80bc7c1d3b764d8150/assets/doc/images/moduler.png -------------------------------------------------------------------------------- /assets/doc/images/palette.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Teal/TealUI/f27df2e60cb02bdb603eca80bc7c1d3b764d8150/assets/doc/images/palette.png -------------------------------------------------------------------------------- /assets/resources/100x100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Teal/TealUI/f27df2e60cb02bdb603eca80bc7c1d3b764d8150/assets/resources/100x100.png -------------------------------------------------------------------------------- /assets/resources/150x150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Teal/TealUI/f27df2e60cb02bdb603eca80bc7c1d3b764d8150/assets/resources/150x150.png -------------------------------------------------------------------------------- /assets/resources/200x150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Teal/TealUI/f27df2e60cb02bdb603eca80bc7c1d3b764d8150/assets/resources/200x150.png -------------------------------------------------------------------------------- /assets/resources/200x200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Teal/TealUI/f27df2e60cb02bdb603eca80bc7c1d3b764d8150/assets/resources/200x200.png -------------------------------------------------------------------------------- /assets/resources/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Teal/TealUI/f27df2e60cb02bdb603eca80bc7c1d3b764d8150/assets/resources/avatar.png -------------------------------------------------------------------------------- /assets/resources/horse.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Teal/TealUI/f27df2e60cb02bdb603eca80bc7c1d3b764d8150/assets/resources/horse.ogg -------------------------------------------------------------------------------- /assets/resources/snow.swf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Teal/TealUI/f27df2e60cb02bdb603eca80bc7c1d3b764d8150/assets/resources/snow.swf -------------------------------------------------------------------------------- /assets/tpl/default/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "__nameLower__", 3 | "description": "__description__", 4 | "version": "__version__", 5 | "author": "__author__ <__email__>", 6 | "types": "./__name__.ts" 7 | } -------------------------------------------------------------------------------- /assets/tpl/default/tpl.md: -------------------------------------------------------------------------------- 1 | --- 2 | version: __version__ 3 | author: __author__ <__email__> 4 | --- 5 | # __displayName__ 6 | __description__ 7 | -------------------------------------------------------------------------------- /assets/tpl/default/tpl.ts: -------------------------------------------------------------------------------- 1 | /** 2 | * __description__。 3 | */ 4 | export default function __name__() { 5 | 6 | } 7 | -------------------------------------------------------------------------------- /assets/tpl/typo/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "__nameLower__", 3 | "description": "__description__", 4 | "version": "__version__", 5 | "author": "__author__ <__email__>", 6 | "types": "./__name__.scss" 7 | } -------------------------------------------------------------------------------- /assets/tpl/typo/tpl.md: -------------------------------------------------------------------------------- 1 | --- 2 | version: __version__ 3 | author: __author__ <__email__> 4 | import: 5 | - typo/reset 6 | --- 7 | # __displayName__ 8 | __description__ 9 | 10 | ## 基本用法 11 | 12 | ```html demo 13 |
14 | ``` 15 | -------------------------------------------------------------------------------- /assets/tpl/typo/tpl.scss: -------------------------------------------------------------------------------- 1 | @import "configs"; 2 | 3 | .x-__nameLower__ { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /assets/tpl/ui/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "__nameLower__", 3 | "description": "__description__", 4 | "version": "__version__", 5 | "author": "__author__ <__email__>", 6 | "types": "./__name__.tsx" 7 | } -------------------------------------------------------------------------------- /assets/tpl/ui/tpl.md: -------------------------------------------------------------------------------- 1 | --- 2 | version: __version__ 3 | author: __author__ <__email__> 4 | import: 5 | - typo/reset 6 | --- 7 | # __displayName__ 8 | __description__ 9 | 10 | ## 基本用法 11 | 12 | ```jsx demo 13 | import { VNode, render } from "ui/control"; 14 | import __namePascal__ from "__path__"; 15 | 16 | render( 17 | __root__, 18 | <__namePascal__> 19 | ); 20 | ``` 21 | -------------------------------------------------------------------------------- /assets/tpl/ui/tpl.scss: -------------------------------------------------------------------------------- 1 | @import "configs"; 2 | 3 | .x-__nameLower__ { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /assets/tpl/ui/tpl.tsx: -------------------------------------------------------------------------------- 1 | import * as dom from "ux/dom"; 2 | import Control, { VNode, bind } from "ui/control"; 3 | import "./__name__.scss"; 4 | 5 | /** 6 | * 表示一个__displayName__。 7 | */ 8 | export default class __namePascal__ extends Control { 9 | 10 | protected render() { 11 | return ; 12 | } 13 | 14 | } 15 | -------------------------------------------------------------------------------- /assets/tpl/util/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "__nameLower__", 3 | "description": "__description__", 4 | "version": "__version__", 5 | "author": "__author__ <__email__>", 6 | "types": "./__name__.ts" 7 | } -------------------------------------------------------------------------------- /assets/tpl/util/tpl-test.ts: -------------------------------------------------------------------------------- 1 | import * as assert from "assert"; 2 | import * as __name__ from "./__name__"; 3 | 4 | export function __name__Test() { 5 | 6 | } 7 | -------------------------------------------------------------------------------- /assets/tpl/util/tpl.md: -------------------------------------------------------------------------------- 1 | --- 2 | version: __version__ 3 | author: __author__ <__email__> 4 | --- 5 | # __displayName__ 6 | __description__ 7 | -------------------------------------------------------------------------------- /assets/tpl/util/tpl.ts: -------------------------------------------------------------------------------- 1 | /** 2 | * __description__。 3 | */ 4 | export default function __name__() { 5 | 6 | } 7 | -------------------------------------------------------------------------------- /components/service/forkMeOnGithub/forkMeOnGithub.md: -------------------------------------------------------------------------------- 1 | --- 2 | version: 0.0.1 3 | author: xuld12 |17 | ``` 18 | -------------------------------------------------------------------------------- /components/typo/blockquote/blockquote.scss: -------------------------------------------------------------------------------- 1 | @import "configs"; 2 | 3 | .x-blockquote { 4 | border-left: 5px solid $border-color; 5 | padding-left: $margin-x; 6 | 7 | > p { 8 | margin: 0; 9 | font-family: $font-family-scripts; 10 | } 11 | 12 | > footer { 13 | color: $text-color-light; 14 | font-size: $font-size-small; 15 | font-weight: $font-weight-small; 16 | text-align: right; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /components/typo/blockquote/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "types": "./blockquote.scss" 3 | } -------------------------------------------------------------------------------- /components/typo/breadcrumb/breadcrumb.scss: -------------------------------------------------------------------------------- 1 | @import "configs"; 2 | 3 | .x-breadcrumb { 4 | margin: 0 0 $margin-y; 5 | color: $text-color-light; 6 | font-size: 95%; 7 | 8 | &-divider { 9 | margin: 0 $spacer-small; 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /components/typo/breadcrumb/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "types": "./breadcrumb.scss" 3 | } -------------------------------------------------------------------------------- /components/typo/buttonGroup/buttonGroup.md: -------------------------------------------------------------------------------- 1 | --- 2 | version: 0.0.1 3 | author: xuld13 | 土地是以它的肥沃和收获而被估价的;才能也是土地,不过它生产的不是粮食,而是真理。如果只能滋生瞑想和幻想的话,即使再大的才能也只是砂地或盐池,那上面连小草也长不出来的。 14 |
15 | 16 |