41 Commits

Author SHA1 Message Date
Vinícius Biavatti
fc5c9aec58 added resource images for new features 2021-06-04 19:19:07 +01:00
Vinicius Reif Biavatti
b7ef555db5 Merge pull request #25 from vinibiavatti1/develop
Develop to Master
2021-06-04 19:13:43 +01:00
Vinicius Reif Biavatti
5dbfa6dccf Merge branch 'master' into develop 2021-06-04 19:13:33 +01:00
Vinicius Reif Biavatti
b214b7edb7 Merge pull request #21 from vinibiavatti1/dependabot/npm_and_yarn/y18n-3.2.2
Bump y18n from 3.2.1 to 3.2.2
2021-06-04 19:09:15 +01:00
Vinicius Reif Biavatti
dfa31f3d68 Merge pull request #23 from vinibiavatti1/dependabot/npm_and_yarn/lodash-4.17.21
Bump lodash from 4.17.20 to 4.17.21
2021-06-04 19:08:36 +01:00
Vinícius Biavatti
5066e216bb Update dependencies version 2021-06-04 19:07:03 +01:00
Vinicius Reif Biavatti
d8add7642d Merge pull request #22 from ellisgl/master
Package updates.
2021-06-04 19:00:25 +01:00
dependabot[bot]
3b92c8b92b Bump lodash from 4.17.20 to 4.17.21
Bumps [lodash](https://github.com/lodash/lodash) from 4.17.20 to 4.17.21.
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.17.20...4.17.21)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-10 12:25:12 +00:00
Ellis
b1c1466ae2 Merge pull request #3 from ellisgl/dependabot/npm_and_yarn/hosted-git-info-2.8.9
Bump hosted-git-info from 2.8.4 to 2.8.9
2021-05-08 15:30:32 -05:00
Ellis
4ed8daf5f7 Merge pull request #1 from ellisgl/dependabot/npm_and_yarn/yargs-parser-5.0.1
Bump yargs-parser from 5.0.0 to 5.0.1
2021-05-08 15:29:54 -05:00
dependabot[bot]
44aa556f2d Bump hosted-git-info from 2.8.4 to 2.8.9
Bumps [hosted-git-info](https://github.com/npm/hosted-git-info) from 2.8.4 to 2.8.9.
- [Release notes](https://github.com/npm/hosted-git-info/releases)
- [Changelog](https://github.com/npm/hosted-git-info/blob/v2.8.9/CHANGELOG.md)
- [Commits](https://github.com/npm/hosted-git-info/compare/v2.8.4...v2.8.9)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-08 20:24:51 +00:00
dependabot[bot]
c8a12f96c8 Bump yargs-parser from 5.0.0 to 5.0.1
Bumps [yargs-parser](https://github.com/yargs/yargs-parser) from 5.0.0 to 5.0.1.
- [Release notes](https://github.com/yargs/yargs-parser/releases)
- [Changelog](https://github.com/yargs/yargs-parser/blob/v5.0.1/CHANGELOG.md)
- [Commits](https://github.com/yargs/yargs-parser/compare/v5.0.0...v5.0.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-08 20:24:41 +00:00
dependabot[bot]
83adac6c0a Bump y18n from 3.2.1 to 3.2.2
Bumps [y18n](https://github.com/yargs/y18n) from 3.2.1 to 3.2.2.
- [Release notes](https://github.com/yargs/y18n/releases)
- [Changelog](https://github.com/yargs/y18n/blob/master/CHANGELOG.md)
- [Commits](https://github.com/yargs/y18n/commits)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-31 01:31:57 +00:00
Vinícius Biavatti
d91cd6a15a Border radius fix, forecast example, disabled classes, tabs example, buttons example 2021-01-06 20:34:44 +00:00
Vinicius Reif Biavatti
120b5d8ce1 Merge pull request #14 from vinibiavatti1/develop
Develop
2020-12-31 19:11:01 +00:00
vinibiavatti
2fcb4261e9 Merge branch 'develop' of https://github.com/vinibiavatti1/TuiCss into develop 2020-12-31 19:09:37 +00:00
vinibiavatti
4e8cbbab79 Changed version 2020-12-31 19:09:26 +00:00
Vinicius Reif Biavatti
e70a06ccf4 Update README.md 2020-12-31 19:07:59 +00:00
vinibiavatti
01d76178df Merge branch 'develop' of https://github.com/vinibiavatti1/TuiCss into develop 2020-12-31 18:53:45 +00:00
vinibiavatti
c217b0a499 gulp rename update 2020-12-31 18:53:34 +00:00
Vinicius Reif Biavatti
2594e1252c Update README.md 2020-12-31 18:44:08 +00:00
Vinicius Reif Biavatti
2ad89f2a9a Update README.md 2020-12-31 18:43:55 +00:00
Vinicius Reif Biavatti
e110177a79 Update README.md 2020-12-31 18:40:58 +00:00
Vinicius Reif Biavatti
2b45410389 Update README.md 2020-12-31 18:40:40 +00:00
Vinicius Reif Biavatti
4502b3a16a Update README.md 2020-12-31 18:39:47 +00:00
vinibiavatti
94ab44a568 Add contributing.md 2020-12-31 17:35:10 +00:00
vinibiavatti
eb471ba142 Merge branch 'develop' of https://github.com/vinibiavatti1/TuiCss into develop 2020-12-31 17:27:13 +00:00
vinibiavatti
49a78e22d6 update package 2020-12-31 17:26:59 +00:00
Vinicius Reif Biavatti
579b0dcfb7 Update README.md 2020-12-31 17:10:48 +00:00
Vinicius Reif Biavatti
f98dd2abf9 Update README.md 2020-12-31 17:08:10 +00:00
vinibiavatti
20b1670d56 Merge branch 'develop' of https://github.com/vinibiavatti1/TuiCss into develop 2020-12-31 16:56:42 +00:00
vinibiavatti
e91dfcf5e5 Changed the keywords of package 2020-12-31 16:56:28 +00:00
Vinicius Reif Biavatti
ba740a766b Update README.md 2020-12-28 13:28:08 +00:00
Vinicius Reif Biavatti
139be101a4 Update README.md 2020-12-28 13:26:16 +00:00
vinibiavatti
1007d5c1a0 Merge branch 'develop' of https://github.com/vinibiavatti1/TuiCss into develop 2020-12-28 13:23:38 +00:00
vinibiavatti
993dd0d2f3 Demo image updated 2020-12-28 13:23:28 +00:00
Vinicius Reif Biavatti
a2a39a113e Update README.md 2020-12-28 12:47:00 +00:00
Vinicius Reif Biavatti
f7faecd33e Update README.md 2020-12-28 12:45:32 +00:00
Vinicius Reif Biavatti
5a415e1bd7 Update README.md 2020-12-28 12:39:54 +00:00
vinibiavatti
c08398bf63 Created logo 2020-12-28 12:38:56 +00:00
vinibiavatti
4fd7f76200 Chart (Part 1) 2020-12-28 00:35:22 +00:00
35 changed files with 640 additions and 169 deletions

51
CHANGELOG.md Normal file
View File

@@ -0,0 +1,51 @@
# TuiCss ChangeLog
### This is the change log of TuiCss. Here you can find the documentations of the feature of each released version
#### 2.1.0
- .disabled classes
- Fixed the default radius border of inputs
- Removed pointer events of checkbox and radio button
- Tabs and buttons example pages
- Remove padding of inputs
- .no-border util
- Forecast example
#### 2.0.0
- Jquery removed (Now use vanilla Javascript)
- Chart example page
- Readme update
- Changelog markdown
- Chart component
- NPM Package
#### 1.0.0
- Utilities
- Examples
- DOS font
- Wiki documentation
- Button component
- Checkbox component
- Divider component
- Dropdown component
- Fieldset component
- Input component
- Navbar component
- Panel component
- Progressbar component
- Radio component
- Scrollbar component
- Sidenav component
- Statusbar component
- Table component
- Tablegrid component
- Tabs component
- Textarea component
- Window component
- Screen component
- Datetime component
- Shortcut component
- Shadow component
- Background component
- Border component
- Grid component
- Modal component

1
CONTRIBUTING.md Normal file
View File

@@ -0,0 +1 @@
Click [here](https://github.com/vinibiavatti1/TuiCss/wiki/Contributing) to access the contributing page on the wiki!

View File

@@ -1,9 +1,35 @@
# TuiCss
### Text-based user interface CSS library
<p align="center">
<a href="https://github.com/vinibiavatti1/TuiCss">
<img src="https://raw.githubusercontent.com/vinibiavatti1/TuiCss/develop/resources/TUICSS%20Logo%20160x160%20transparent.png" />
</a>
</p>
TuiCss is a library focused to create web applications using an interface based in ASCII table, like MS-DOS applications. This kind of interface is very eligible because the ultra-contrast colors used and the less effects of the elements. The main framework thats is following to develop TuiCss is <a href="https://en.wikipedia.org/wiki/Turbo_Vision">Turbo Vision Framework</a> with some techniques with [box-drawing characters](https://en.wikipedia.org/wiki/Box-drawing_character), but some others frameworks were checked too, like [curses](https://en.wikipedia.org/wiki/Curses_(programming_library)), [ncurses](https://en.wikipedia.org/wiki/Ncurses), [Newt](https://en.wikipedia.org/wiki/Newt_(programming_library)), etc. Check the examples page in the wiki to see some creations!
<h3 align="center">TuiCss</h3>
<img src="https://i.ibb.co/zhJMy1h/Tui-Css-home.png" width="600">
<p align="center">
Text-based user interface CSS library
<br>
<a href="https://github.com/vinibiavatti1/TuiCss/wiki"><strong>-- Documentation --</strong></a>
<br><br>
<a href="https://badge.fury.io/js/tuicss">
<img src="https://badge.fury.io/js/tuicss.svg" alt="npm version badge">
</a>
</p>
### About
TuiCss is a library focused to create web applications using an interface based on ASCII table, like the old MS-DOS applications. This kind of interface is very eligible because the ultra-contrast colors used and because the reduced effects used on the components in the view. The base of this project is <a href="https://en.wikipedia.org/wiki/Turbo_Vision">Turbo Vision Framework</a>, but some other frameworks were checked also to introduce some features to TuiCss, like [curses](https://en.wikipedia.org/wiki/Curses_(programming_library)), [ncurses](https://en.wikipedia.org/wiki/Ncurses), [Newt](https://en.wikipedia.org/wiki/Newt_(programming_library)), etc. Check the examples page in the wiki to stay on top of some creations, or check the getting started page to start use this library!
<img src="https://raw.githubusercontent.com/vinibiavatti1/TuiCss/develop/resources/TUICSS%20Demo.png" width="676">
### Getting Started
To start to use the TuiCss in your project, you can just download the repository content and import the files that are in the dist folder with the html directives. On the other hand, you can install the package with NPM using the following command:
```bash
$ npm install tuicss
```
For more details, visit the [Getting Started Page](https://github.com/vinibiavatti1/TuiCss/wiki/Getting-Started) in the respoitory wiki.
### Documentation
Check the [repository wiki](https://github.com/vinibiavatti1/TuiCss/wiki) to access the documentation, getting started, components index, examples, styles, or to know how to contribute for this project.
Check the [repository wiki](https://github.com/vinibiavatti1/TuiCss/wiki) to access the documentation, components index, examples, styles, or to know how to contribute for this project.

140
dist/tuicss.css vendored
View File

@@ -587,6 +587,9 @@ input, select, textarea {
.no-padding {
padding: 0px !important; }
.no-border {
border: none !important; }
.content {
padding: 12px; }
@@ -603,6 +606,9 @@ input, select, textarea {
.cursor-default {
cursor: default !important; }
.disabled {
cursor: not-allowed !important; }
/* Components */
.tui-button {
display: inline-block;
@@ -614,11 +620,14 @@ input, select, textarea {
cursor: pointer;
text-align: center;
box-shadow: 10px 10px black;
border-radius: 0px;
user-select: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none; }
.tui-button.disabled {
text-decoration: line-through; }
.tui-button:active {
background-color: #00a8a8 !important;
@@ -648,13 +657,16 @@ input[type=button] {
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none; }
.tui-checkbox.disabled {
color: #a8a8a8; }
.tui-checkbox input {
position: absolute;
opacity: 0;
cursor: pointer;
top: 0px;
left: 0px; }
left: 0px;
pointer-events: none; }
.tui-checkbox span {
position: absolute;
@@ -745,7 +757,12 @@ input[type=button] {
border: none;
cursor: pointer;
outline: 0;
padding: 2px; }
padding: 2px;
user-select: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none; }
.tui-fieldset-button.left {
right: initial;
left: 16px !important; }
@@ -782,7 +799,10 @@ input[type=button] {
color: white;
outline: 0;
border: none;
padding: 1px; }
border-radius: 0px; }
.tui-input.disabled {
background-color: #a8a8a8;
color: black; }
.tui-input:focus {
background-color: yellow !important;
@@ -883,13 +903,16 @@ input[type=button] {
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none; }
.tui-radio.disabled {
color: #a8a8a8; }
.tui-radio input {
position: absolute;
opacity: 0;
cursor: pointer;
top: 0px;
left: 0px; }
left: 0px;
pointer-events: none; }
.tui-radio span {
position: absolute;
@@ -1167,6 +1190,8 @@ input[type=button] {
.tui-tab.active {
background-color: #a8a8a8;
color: #0000a8; }
.tui-tab.disabled {
text-decoration: line-through; }
.tui-tab-content {
display: none; }
@@ -1177,6 +1202,9 @@ input[type=button] {
padding: 0px;
color: yellow;
outline: none; }
.tui-textarea.disabled {
background-color: #a8a8a8;
color: black; }
.tui-window {
background-color: #0000a8;
@@ -1201,7 +1229,8 @@ input[type=button] {
.tui-screen-640-480,
.tui-screen-800-600,
.tui-screen-1024-768 {
position: relative; }
position: relative;
overflow: hidden; }
.tui-screen-640-480.bordered,
.tui-screen-800-600.bordered,
.tui-screen-1024-768.bordered {
@@ -1925,3 +1954,104 @@ input[type=button] {
display: none; }
.tui-overlap.active {
display: block !important; }
/* Chart container */
.tui-chart-vertical {
position: relative;
background-color: black; }
.tui-chart-horizontal {
position: relative;
background-color: black; }
/* Chart display */
.tui-chart-vertical .tui-chart-display {
display: flex;
position: absolute;
top: 0px;
left: 50px;
right: 0px;
bottom: 30px;
align-items: flex-end;
border-bottom: 2px solid white;
border-left: 2px solid white; }
.tui-chart-vertical .tui-chart-display.no-x-axis {
bottom: 0px; }
.tui-chart-vertical .tui-chart-display.no-y-axis {
left: 0px; }
.tui-chart-horizontal .tui-chart-display {
display: flex;
position: absolute;
flex-direction: column;
top: 0px;
left: 50px;
right: 0px;
bottom: 30px;
align-items: stretch;
border-bottom: 2px solid white;
border-left: 2px solid white; }
.tui-chart-horizontal .tui-chart-display.no-x-axis {
bottom: 0px; }
.tui-chart-horizontal .tui-chart-display.no-y-axis {
left: 0px; }
/* Chart X axis */
.tui-chart-x-axis {
display: flex;
position: absolute;
height: 30px;
left: 50px;
right: 0px;
bottom: 0px;
line-height: 30px; }
/* Chart Y axis */
.tui-chart-y-axis {
display: flex;
flex-direction: column;
position: absolute;
top: 0px;
left: 0px;
bottom: 30px;
width: 50px; }
/* Chart legends */
.tui-chart-vertical .tui-chart-x-axis .tui-chart-legend {
flex: 0 1 100%;
text-align: center; }
.tui-chart-vertical .tui-chart-y-axis .tui-chart-legend {
flex: 1;
text-align: right;
padding-right: 2px;
display: flex;
align-items: flex-start;
justify-content: flex-end; }
.tui-chart-horizontal .tui-chart-x-axis .tui-chart-legend {
flex: 0 1 100%;
text-align: right; }
.tui-chart-horizontal .tui-chart-y-axis .tui-chart-legend {
flex: 1;
text-align: right;
padding-right: 2px;
display: flex;
align-items: center;
justify-content: flex-end; }
/* Chart value */
.tui-chart-vertical .tui-chart-display .tui-chart-value {
flex: 0 1 100%;
text-align: center;
overflow: hidden; }
.tui-chart-horizontal .tui-chart-display .tui-chart-value {
flex: 1;
text-align: right;
display: flex;
align-items: center;
align-content: flex-start;
justify-content: flex-end;
overflow: hidden; }

6
dist/tuicss.js vendored
View File

@@ -30,6 +30,12 @@ function tabsController() {
for (const tab of tabs) {
// Add click listeners to them.
tab.addEventListener('click', function (e) {
// Check if the clicked tab is disabled
if(e.target.classList.contains("disabled")) {
return;
}
// Remove the 'active' class from any and all tabs.
for (const otherTab of tabs) {
otherTab.classList.remove('active');

2
dist/tuicss.min.css vendored

File diff suppressed because one or more lines are too long

2
dist/tuicss.min.js vendored
View File

@@ -1 +1 @@
function domReady(t){document.addEventListener("DOMContentLoaded",t),"interactive"!==document.readyState&&"complete"!==document.readyState||t()}function tabsController(){const t=document.getElementsByClassName("tui-tab");if(!t.length)return;for(const e of t)e.addEventListener("click",function(e){for(const e of t)e.classList.remove("active");const o=document.getElementsByClassName("tui-tab-content");if(!o)throw"No tab content elements found.";for(const t of o)t.style.display="none";const n=e.target.getAttribute("data-tab-content");if(n){const t=document.getElementById(n);if(!t)throw'No tab content element with id "'+n+'" found.';t.style.display="block"}e.target.classList.add("active")});const e=document.querySelector(".tui-tab.active");e?e.click():t[0].click()}function datetimeController(){const t=document.getElementsByClassName("tui-datetime");function e(){for(const e of t){const t=setInterval(()=>{if(null===e)return void clearInterval(t);let o=e.getAttribute("data-format");const n=new Date,a=2===(n.getMonth()+"").length?n.getMonth()+1:"0"+(n.getMonth()+1),s=2===(n.getDay()+"").length?n.getDay()+1:"0"+(n.getDay()+1),c=n.getFullYear()+"",l=2===(n.getHours()+"").length?n.getHours():"0"+n.getHours(),i=(parseInt(l)+24)%"12"||"12",r=2===(n.getMinutes()+"").length?n.getMinutes():"0"+n.getMinutes(),d=2===(n.getSeconds()+"").length?n.getSeconds():"0"+n.getSeconds(),u=parseInt(l)>=12?"PM":"AM";o=(o=(o=(o=(o=(o=(o=(o=o.replace("M",a)).replace("d",s)).replace("y",c)).replace("H",l)).replace("h",i)).replace("m",r)).replace("s",d)).replace("a",u),e.innerHTML=o})}}t.length&&(e(),setInterval(e,1e3))}function sidenavController(){const t=document.querySelector(".tui-sidenav-button");t&&t.addEventListener("click",()=>{const t=document.querySelector(".tui-sidenav");if(!t)throw"No sidenav element found.";t.classList.contains("active")?t.classList.remove("active"):t.classList.add("active")})}function modalController(){const t=document.querySelector(".tui-overlap");if(!t)return;const e=document.getElementsByClassName("tui-modal-button");for(const o of e)o.addEventListener("click",e=>{t.classList.add("active");const o=e.target.getAttribute("data-modal");if(!o)throw"Modal close button data-modal attribute is empty or not set.";{const t=document.getElementById(o);if(!t)throw'No modal element with id of "'+o+'" found.';t.classList.add("active")}});const o=document.getElementsByClassName("tui-modal-close-button");if(e.length>0&&!o.length)throw"No modal close buttons found.";for(const e of o)e.addEventListener("click",e=>{t.classList.remove("active");const o=e.target.getAttribute("data-modal");if(!o)throw"Modal close button data-modal attribute is empty or not set.";{const t=document.getElementById(o);if(!t)throw'No modal element with id of "'+o+'" found.';t.classList.remove("active")}})}domReady(function(){tabsController(),datetimeController(),sidenavController(),modalController()});
function domReady(t){document.addEventListener("DOMContentLoaded",t),"interactive"!==document.readyState&&"complete"!==document.readyState||t()}function tabsController(){const t=document.getElementsByClassName("tui-tab");if(!t.length)return;for(const e of t)e.addEventListener("click",function(e){if(e.target.classList.contains("disabled"))return;for(const e of t)e.classList.remove("active");const o=document.getElementsByClassName("tui-tab-content");if(!o)throw"No tab content elements found.";for(const t of o)t.style.display="none";const n=e.target.getAttribute("data-tab-content");if(n){const t=document.getElementById(n);if(!t)throw'No tab content element with id "'+n+'" found.';t.style.display="block"}e.target.classList.add("active")});const e=document.querySelector(".tui-tab.active");e?e.click():t[0].click()}function datetimeController(){const t=document.getElementsByClassName("tui-datetime");function e(){for(const e of t){const t=setInterval(()=>{if(null===e)return void clearInterval(t);let o=e.getAttribute("data-format");const n=new Date,a=2===(n.getMonth()+"").length?n.getMonth()+1:"0"+(n.getMonth()+1),s=2===(n.getDay()+"").length?n.getDay()+1:"0"+(n.getDay()+1),c=n.getFullYear()+"",l=2===(n.getHours()+"").length?n.getHours():"0"+n.getHours(),i=(parseInt(l)+24)%"12"||"12",r=2===(n.getMinutes()+"").length?n.getMinutes():"0"+n.getMinutes(),d=2===(n.getSeconds()+"").length?n.getSeconds():"0"+n.getSeconds(),u=parseInt(l)>=12?"PM":"AM";o=(o=(o=(o=(o=(o=(o=(o=o.replace("M",a)).replace("d",s)).replace("y",c)).replace("H",l)).replace("h",i)).replace("m",r)).replace("s",d)).replace("a",u),e.innerHTML=o})}}t.length&&(e(),setInterval(e,1e3))}function sidenavController(){const t=document.querySelector(".tui-sidenav-button");t&&t.addEventListener("click",()=>{const t=document.querySelector(".tui-sidenav");if(!t)throw"No sidenav element found.";t.classList.contains("active")?t.classList.remove("active"):t.classList.add("active")})}function modalController(){const t=document.querySelector(".tui-overlap");if(!t)return;const e=document.getElementsByClassName("tui-modal-button");for(const o of e)o.addEventListener("click",e=>{t.classList.add("active");const o=e.target.getAttribute("data-modal");if(!o)throw"Modal close button data-modal attribute is empty or not set.";{const t=document.getElementById(o);if(!t)throw'No modal element with id of "'+o+'" found.';t.classList.add("active")}});const o=document.getElementsByClassName("tui-modal-close-button");if(e.length>0&&!o.length)throw"No modal close buttons found.";for(const e of o)e.addEventListener("click",e=>{t.classList.remove("active");const o=e.target.getAttribute("data-modal");if(!o)throw"Modal close button data-modal attribute is empty or not set.";{const t=document.getElementById(o);if(!t)throw'No modal element with id of "'+o+'" found.';t.classList.remove("active")}})}domReady(function(){tabsController(),datetimeController(),sidenavController(),modalController()});

View File

@@ -24,22 +24,22 @@
<tbody>
<tr>
<td rowspan="2" width="60%" class="blue-168-text">
<br>System Time.........:<input type="text" class="tui-input white-168 black-text" value="[09:21:30]" style="width: 135px" />
<br>System Date.........:<input type="text" class="tui-input white-168 black-text" value="[15/09/1994]" style="width: 135px" />
<br>System Time.........:<input type="text" class="tui-input white-168 black-text" value="[09:21:30]" style="width: 150px" />
<br>System Date.........:<input type="text" class="tui-input white-168 black-text" value="[15/09/1994]" style="width: 150px" />
<br>
<br>Legacy Diskette A...:<input type="text" class="tui-input white-168 black-text" value="[1.44/1.25 MB]" style="width: 135px" />]
<br>Legacy Diskette B...:<input type="text" class="tui-input white-168 black-text" value="[disabeld]" style="width: 135px" />
<br>Legacy Diskette A...:<input type="text" class="tui-input white-168 black-text" value="[1.44/1.25 MB]" style="width: 150px" />
<br>Legacy Diskette B...:<input type="text" class="tui-input white-168 black-text" value="[disabeld]" style="width: 150px" />
<br>
<br>Primary Master......:<input type="text" class="tui-input white-168 black-text" value="[None]" style="width: 135px" />
<br>Primary Slave.......:<input type="text" class="tui-input white-168 black-text" value="[None]" style="width: 135px" />
<br>Secondary Master....:<input type="text" class="tui-input white-168 black-text" value="[CD-ROM]" style="width: 135px" />
<br>Secondary Slave.....:<input type="text" class="tui-input white-168 black-text" value="[None]" style="width: 135px" />
<br>Primary Master......:<input type="text" class="tui-input white-168 black-text" value="[None]" style="width: 150px" />
<br>Primary Slave.......:<input type="text" class="tui-input white-168 black-text" value="[None]" style="width: 150px" />
<br>Secondary Master....:<input type="text" class="tui-input white-168 black-text" value="[CD-ROM]" style="width: 150px" />
<br>Secondary Slave.....:<input type="text" class="tui-input white-168 black-text" value="[None]" style="width: 150px" />
<br>
<br>Keyboard Features...:<input type="text" class="tui-input white-168 black-text" value="[Enter]" style="width: 135px" />
<br>Keyboard Features...:<input type="text" class="tui-input white-168 black-text" value="[Enter]" style="width: 150px" />
<br>
<br>System Memory.......:<input type="text" class="tui-input white-168 black-text" value="[640 KB]" style="width: 135px" />
<br>Extended Memory.....:<input type="text" class="tui-input white-168 black-text" value="[3568410 KB]" style="width: 135px" />
<br>Boot-time Diagnostic:<input type="text" class="tui-input white-168 black-text" value="[Enabled]" style="width: 135px" />
<br>System Memory.......:<input type="text" class="tui-input white-168 black-text" value="[640 KB]" style="width: 150px" />
<br>Extended Memory.....:<input type="text" class="tui-input white-168 black-text" value="[3568410 KB]" style="width: 150px" />
<br>Boot-time Diagnostic:<input type="text" class="tui-input white-168 black-text" value="[Enabled]" style="width: 150px" />
</td>
<td width="40%" class="center">Item Specified Help</td>
</tr>

33
examples/buttons.html Normal file
View File

@@ -0,0 +1,33 @@
<!DOCTYPE html>
<html lang="en" class="tui-bg-blue-black">
<head>
<meta charset="UTF-8">
<title>Buttons Example</title>
<script src="../dist/tuicss.min.js"></script>
<link rel="stylesheet" href="../dist/tuicss.min.css">
<style>
.tui-button {
width: 100% !important;
margin-bottom: 20px;
}
</style>
</head>
<style>
</style>
<body>
<div class="center" style="margin-top: 100px;">
<div class="tui-window blue-168" style="width: 200px;">
<fieldset class="tui-fieldset">
<legend>Buttons</legend>
<button class="tui-button">Button</button><br>
<input type="button" class="tui-button" value="Input" /><br>
<a href="#!" class="tui-button">Anchor</a><br>
<button class="tui-button red-168">Custom</button><br>
<button class="tui-button red-168 disabled" disabled style="margin-bottom: 5px;">Disabled</button><br>
</fieldset>
</div>
</div>
</body>
</html>

View File

@@ -4,100 +4,8 @@
<head>
<meta charset="UTF-8">
<title>Chart Example</title>
<script src="plugins/jquery-3.4.1.min.js"></script>
<script src="../dist/tuicss.min.js"></script>
<link rel="stylesheet" href="../dist/tuicss.min.css">
<style>
.tui-chart-vertical {
position: relative;
background-color: black;
}
.tui-chart-horizontal {
position: relative;
background-color: black;
}
.tui-chart-vertical .tui-chart-display {
display: flex;
position: absolute;
top: 0px;
left: 50px;
right: 0px;
bottom: 30px;
align-items: flex-end;
border-bottom: 2px solid white;
border-left: 2px solid white;
}
.tui-chart-horizontal .tui-chart-display {
display: flex;
position: absolute;
flex-direction: column;
top: 0px;
left: 50px;
right: 0px;
bottom: 30px;
align-items: stretch;
border-bottom: 2px solid white;
border-left: 2px solid white;
}
.tui-chart-x-axis {
display: flex;
position: absolute;
height: 30px;
left: 50px;
right: 0px;
bottom: 0px;
line-height: 30px;
}
.tui-chart-y-axis {
display: flex;
flex-direction: column;
position: absolute;
top: 0px;
left: 0px;
bottom: 30px;
width: 50px;
}
.tui-chart-vertical .tui-chart-x-axis .tui-chart-legend {
flex-basis: 100%;
text-align: center;
}
.tui-chart-vertical .tui-chart-y-axis .tui-chart-legend {
flex: 1;
text-align: right;
padding-right: 2px;
display: flex;
align-items: flex-start;
justify-content: flex-end;
}
.tui-chart-horizontal .tui-chart-x-axis .tui-chart-legend {
flex-basis: 100%;
text-align: right;
}
.tui-chart-horizontal .tui-chart-y-axis .tui-chart-legend {
flex: 1;
text-align: right;
padding-right: 2px;
display: flex;
align-items: center;
justify-content: flex-end;
}
.tui-chart-vertical .tui-chart-display .tui-chart-value {
margin: 0px 30px;
flex-basis: 100%;
text-align: center;
}
.tui-chart-horizontal .tui-chart-display .tui-chart-value {
margin: 5px 0px;
flex: 1;
text-align: right;
display: flex;
align-items: center;
align-content: flex-start;
justify-content: flex-end;
}
</style>
</head>
<body class="center">
@@ -105,23 +13,34 @@
<div class="tui-window black-168 left-align">
<fieldset class="tui-fieldset">
<legend class="">Vertical Bar Chart</legend>
<legend class="">Vertical Chart</legend>
<div class="tui-chart-vertical" style="width: 500px; height: 200px;">
<div class="tui-chart-display">
<div class="tui-chart-value red-168" style="height: 80%;">80%</div>
<div class="tui-chart-value green-168" style="height: 60%;">60%</div>
<div class="tui-chart-value blue-168" style="height: 100%;">100%</div>
<div class="tui-chart-value red-168 animated" style="height: 80%;">80%</div>
<div class="tui-chart-value green-168" style="height: 30%;">30%</div>
<div class="tui-chart-value blue-168" style="height: 50%;">50%</div>
<div class="tui-chart-value yellow-168" style="height: 90%;">90%</div>
<div class="tui-chart-value purple-168" style="height: 60%;">60%</div>
<div class="tui-chart-value orange-168" style="height: 100%;">100%</div>
<div class="tui-chart-value cyan-168" style="height: 10%;">10%</div>
<div class="tui-chart-value red-168" style="height: 75%;">75%</div>
</div>
<div class="tui-chart-y-axis">
<div class="tui-chart-legend">100%</div>
<div class="tui-chart-legend">75%</div>
<div class="tui-chart-legend">50%</div>
<div class="tui-chart-legend">25%</div>
<div class="tui-chart-legend">80%</div>
<div class="tui-chart-legend">60%</div>
<div class="tui-chart-legend">40%</div>
<div class="tui-chart-legend">20%</div>
</div>
<div class="tui-chart-x-axis">
<div class="tui-chart-legend">2018</div>
<div class="tui-chart-legend">2019</div>
<div class="tui-chart-legend">2020</div>
<div class="tui-chart-legend">s1</div>
<div class="tui-chart-legend">s2</div>
<div class="tui-chart-legend">s3</div>
<div class="tui-chart-legend">s4</div>
<div class="tui-chart-legend">s5</div>
<div class="tui-chart-legend">s6</div>
<div class="tui-chart-legend">s7</div>
<div class="tui-chart-legend">s8</div>
</div>
</div>
</fieldset>
@@ -130,7 +49,7 @@
<div class="tui-window black-168 left-align">
<fieldset class="tui-fieldset">
<legend class="">Horizontal Bar Chart</legend>
<legend class="">Horizontal Chart</legend>
<div class="tui-chart-horizontal" style="width: 500px; height: 200px;">
<div class="tui-chart-display">
<div class="tui-chart-value red-168" style="width: 80%;">80%</div>
@@ -151,5 +70,22 @@
</div>
</fieldset>
</div>
<br><br>
<div class="tui-window black-168 left-align">
<fieldset class="tui-fieldset">
<legend class="">Chart (no axis legend)</legend>
<div class="tui-chart-vertical" style="width: 500px; height: 200px;">
<div class="tui-chart-display no-x-axis no-y-axis">
<div class="tui-chart-value red-168 animated" style="height: 50%;">50%</div>
<div class="tui-chart-value green-168" style="height: 70%;">70%</div>
<div class="tui-chart-value blue-168" style="height: 30%;">30%</div>
<div class="tui-chart-value yellow-168" style="height: 100%;">100%</div>
</div>
</div>
</fieldset>
</div>
<br><br>
</body>
</html>

172
examples/forecast.html Normal file
View File

@@ -0,0 +1,172 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Forecast Example</title>
<script src="../dist/tuicss.min.js"></script>
<link rel="stylesheet" href="../dist/tuicss.min.css">
<style>
th, td {
padding: 10px!important;
border: none!important;
}
.tui-progress-bar {
margin-bottom: -4px;
}
</style>
</head>
<body>
<div class="tui-screen-800-600 bordered black-255" style="padding: 2px;">
<div class="red-168 full-width white-text" style="padding: 0px 10px;">
FORECAST 1.0
</div>
<br>
<table class="tui-table full-width no-border">
<thead class="white-255-text tui-border-double orange-168-border" style="margin-bottom: 5px;">
<tr class="left-align">
<th>#</th>
<th>LOCATION</th>
<th>TEMPERATURE</th>
<th>STATUS</th>
</tr>
</thead>
<tbody class="tui-border-double orange-168-border">
<tr>
<td class="red-168-text">1</td>
<td>Lisbon</td>
<td>
<span class="green-168-text">&nbsp;8.0</span>
[
<div class="tui-progress-bar inline-block tui-bg-red-black" style="width: 350px;">
<span class="tui-progress red-255" style="width: 58%"></span>
</div>
]
</td>
<td class="blue-255-text">COLD</td>
</tr>
<tr>
<td class="red-168-text">2</td>
<td>Vancouver</td>
<td>
<span class="green-168-text">&nbsp;9.0</span>
[
<div class="tui-progress-bar inline-block tui-bg-red-black" style="width: 350px;">
<span class="tui-progress red-255" style="width: 59%"></span>
</div>
]
</td>
<td class="blue-255-text">COLD</td>
</tr>
<tr>
<td class="red-168-text">3</td>
<td>Rio</td>
<td>
<span class="green-168-text">31.0</span>
[
<div class="tui-progress-bar inline-block tui-bg-red-black" style="width: 350px;">
<span class="tui-progress red-255" style="width: 81%"></span>
</div>
]
</td>
<td class="yellow-255-text">WARM</td>
</tr>
<tr>
<td class="red-168-text">4</td>
<td>Sydney</td>
<td>
<span class="green-168-text">22.0</span>
[
<div class="tui-progress-bar inline-block tui-bg-red-black" style="width: 350px;">
<span class="tui-progress red-255" style="width: 72%"></span>
</div>
]
</td>
<td class="yellow-255-text">WARM</td>
</tr>
<tr>
<td class="red-168-text">5</td>
<td>New York</td>
<td>
<span class="green-168-text">&nbsp;7.0</span>
[
<div class="tui-progress-bar inline-block tui-bg-red-black" style="width: 350px;">
<span class="tui-progress red-255" style="width: 57%"></span>
</div>
]
</td>
<td class="blue-255-text">COLD</td>
</tr>
<tr>
<td class="red-168-text">6</td>
<td>London</td>
<td>
<span class="green-168-text">&nbsp;6.0</span>
[
<div class="tui-progress-bar inline-block tui-bg-red-black" style="width: 350px;">
<span class="tui-progress red-255" style="width: 56%"></span>
</div>
]
</td>
<td class="blue-255-text">COLD</td>
</tr>
<tr>
<td class="red-168-text">7</td>
<td>Paris</td>
<td>
<span class="green-168-text">&nbsp;4.0</span>
[
<div class="tui-progress-bar inline-block tui-bg-red-black" style="width: 350px;">
<span class="tui-progress red-255" style="width: 54%"></span>
</div>
]
</td>
<td class="cyan-255-text">VERY COLD</td>
</tr>
<tr>
<td class="red-168-text">8</td>
<td>Casablanca</td>
<td>
<span class="green-168-text">17.0</span>
[
<div class="tui-progress-bar inline-block tui-bg-red-black" style="width: 350px;">
<span class="tui-progress red-255" style="width: 67%"></span>
</div>
]
</td>
<td class="green-168-text">NORMAL</td>
</tr>
<tr>
<td class="red-168-text">9</td>
<td>Reykjavik</td>
<td>
<span class="green-168-text">-1.0</span>
[
<div class="tui-progress-bar inline-block tui-bg-red-black" style="width: 350px;">
<span class="tui-progress red-255" style="width: 49%"></span>
</div>
]
</td>
<td class="cyan-255-text">VERY COLD</td>
</tr>
</tbody>
</table>
<div class="purple-168 full-width white-text" style="padding: 0px 10px; margin-top: 2px;">
<span class="red-168">HIGH</span>: Rio 31.0<br>
<span class="cyan-168">LESS</span>: Reykjavik -1.0
</div>
<br>
<div class="tui-window full-width no-shadow black">
<fieldset class="tui-fieldset center">
<button class="tui-button left">Previous</button>
<span class="center">9/201 records</span>
<button class="tui-button right">Next</button>
</fieldset>
</div>
<div class="red-168 full-width white-text" style="padding: 0px 10px;">
FORECAST 1.0
</div>
</div>
</body>
</html>

View File

@@ -1,14 +1,14 @@
<!DOCTYPE html>
<html lang="en" class="tui-bg-blue-black">
<html lang="en" class="tui-bg-blue-black tui-cursor">
<head>
<meta charset="UTF-8">
<title>Inputs Example</title>
<title>Input Example</title>
<script src="../dist/tuicss.min.js"></script>
<link rel="stylesheet" href="../dist/tuicss.min.css">
<style>
.tui-input {
width: 300px;
width: 430px;
}
</style>
</head>
@@ -18,6 +18,7 @@
<fieldset class="tui-fieldset">
<legend class="center">Form</legend>
Text.......: <input class="tui-input" value="text" /><br>
Disabled...: <input class="tui-input disabled" disabled value="disabled" /><br>
Number.....: <input class="tui-input" type="number" value="25" /><br>
Password...: <input class="tui-input" type="password" value="12345" /><br>
Color......: <input class="tui-input" type="color" value="#00FF00" /><br>
@@ -25,6 +26,11 @@
<option>First</option>
<option>Second</option>
<option>Third</option>
<optgroup label="Group">
<option>First</option>
<option>Second</option>
<option>Third</option>
</optgroup>
</select><br>
Date.......: <input class="tui-input" type="date" value="2019-01-01" /><br>
Time.......: <input class="tui-input" type="datetime-local" value="2019-01-01T12:00" />
@@ -39,8 +45,8 @@
<input type="checkbox" />
<span></span>
</label>
<label class="tui-checkbox">Third
<input type="checkbox" />
<label class="tui-checkbox disabled">Disabled
<input type="checkbox" disabled />
<span></span>
</label>
</fieldset>
@@ -55,14 +61,17 @@
<input type="radio" name="radio" />
<span></span>
</label>
<label class="tui-radio">Third
<input type="radio" name="radio" />
<label class="tui-radio disabled">Disabled
<input type="radio" name="radio" disabled />
<span></span>
</label>
</fieldset>
<br>
Textarea<br>
<textarea class="tui-input" style="width: 100%"></textarea>
<textarea class="tui-input" style="width: 100%">Content ...</textarea>
<br>
Disabled Textarea<br>
<textarea class="tui-input disabled" disabled style="width: 100%">Disabled</textarea>
<br>
Multiple<br>
<select multiple class="tui-input" style="width: 100%">
@@ -70,6 +79,11 @@
<option>First</option>
<option>Second</option>
<option>Third</option>
<optgroup label="Group">
<option>First</option>
<option>Second</option>
<option>Third</option>
</optgroup>
</select><br>
File <input class="tui-input full-width" type="file" />
</fieldset>

40
examples/tabs.html Normal file
View File

@@ -0,0 +1,40 @@
<!DOCTYPE html>
<html lang="en" class="tui-bg-blue-black">
<head>
<meta charset="UTF-8">
<title>Tabs Example</title>
<script src="../dist/tuicss.min.js"></script>
<link rel="stylesheet" href="../dist/tuicss.min.css">
</head>
<style>
</style>
<body>
<div class="center" style="margin-top: 100px; margin-bottom: 100px;">
<div class="tui-panel white-168" style="width: 400px;">
<div class="tui-tabs red-168">
<ul>
<li><a class="tui-tab active" data-tab-content="tab-1-content">Tab 1</a></li>
<li><a class="tui-tab" data-tab-content="tab-2-content">Tab 2</a></li>
<li><a class="tui-tab disabled" data-tab-content="tab-3-content">Disabled</a></li>
</ul>
</div>
<div class="content black-255-text">
<div class="tui-tab-content" id="tab-1-content">
<h3>Content 1</h3>
Lorem ipsum dolor sit amet consectetur adipisicing elit. Sit incidunt ullam nemo ad id. Temporibus, impedit reiciendis quidem ea quasi fugiat! Illum unde eaque porro sint voluptates corporis reiciendis tempora?
</div>
<div class="tui-tab-content" id="tab-2-content">
<h3>Content 2</h3>
Lorem ipsum dolor sit amet consectetur adipisicing elit. Sit incidunt ullam nemo ad id.
</div>
<div class="tui-tab-content" id="tab-3-content">
<h3>Content 3</h3>
You could not see it!
</div>
</div>
</div>
</div>
</body>
</html>

View File

@@ -156,8 +156,7 @@ int main()
About
</div>
<div class="tui-panel-content">
Lorem ipsum dolor sit amet, consectetur adipiscing elit.<br>
Curabitur id vestibulum libero, id fermentum lorem.
TuiCss v2.0.0 Made with ♥
<br><br>
<div class="center">
<button class="tui-button white-255" style="width: 80px">OK</button>

View File

@@ -1,4 +1,3 @@
const { series, src, dest } = require('gulp');
const sass = require('gulp-sass');
const gulpClean = require('gulp-clean');
@@ -13,13 +12,14 @@ function clean() {
.pipe(gulpClean());
}
// Compile scss
// Compile scss and copy to dist folder (.css)
function sassCompile() {
return src('src/tuicss.scss')
.pipe(sass())
.pipe(dest(distPath));
}
// Minify css and copy to dist folder (.min.css)
function minifyCss() {
return src(distPath + '/tuicss.css')
.pipe(cleanCss())
@@ -29,11 +29,13 @@ function minifyCss() {
.pipe(dest(distPath));
}
// Copy js script to dist folder (.js)
function copyScript() {
return src('src/js/tuicss.js')
.pipe(dest(distPath));
}
// Minify js script and copy to dist folder (.min.js)
function minifyJs() {
return src(distPath + '/tuicss.js')
.pipe(gulpMinify({
@@ -44,16 +46,19 @@ function minifyJs() {
.pipe(dest(distPath));
}
// Copy images to dist folder (/images)
function copyImages() {
return src('src/images/*')
.pipe(dest(distPath + "/images"));
}
// Copy fonts to dist folder (/fonts)
function copyFonts() {
return src('src/fonts/*')
.pipe(dest(distPath + "/fonts"));
}
// Export
exports.default = series(clean, sassCompile, minifyCss, copyScript, minifyJs, copyImages, copyFonts);

35
package-lock.json generated
View File

@@ -1,6 +1,6 @@
{
"name": "tuicss",
"version": "1.0.0",
"version": "2.0.1",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
@@ -2301,9 +2301,9 @@
}
},
"gulp-rename": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/gulp-rename/-/gulp-rename-1.4.0.tgz",
"integrity": "sha512-swzbIGb/arEoFK89tPY58vg3Ok1bw+d35PfUNwWqdo7KM4jkmuGA78JiDNqR+JeZFaeeHnRg9N7aihX3YPmsyg==",
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/gulp-rename/-/gulp-rename-2.0.0.tgz",
"integrity": "sha512-97Vba4KBzbYmR5VBs9mWmK+HwIf5mj+/zioxfZhOKeXtx5ZjBk57KFlePf5nxq9QsTtFl0ejnHE3zTC9MHXqyQ==",
"dev": true
},
"gulp-sass": {
@@ -2433,9 +2433,9 @@
}
},
"hosted-git-info": {
"version": "2.8.4",
"resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.4.tgz",
"integrity": "sha512-pzXIvANXEFrc5oFFXRMkbLPQ2rXRoDERwDLyrcUxGhaZhgP54BBSl9Oheh7Vv0T090cszWBxPjkQQ5Sq1PbBRQ==",
"version": "2.8.9",
"resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz",
"integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==",
"dev": true
},
"http-signature": {
@@ -2870,9 +2870,9 @@
}
},
"lodash": {
"version": "4.17.20",
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz",
"integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==",
"version": "4.17.21",
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
"dev": true
},
"loud-rejection": {
@@ -4846,9 +4846,9 @@
"dev": true
},
"y18n": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz",
"integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=",
"version": "3.2.2",
"resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.2.tgz",
"integrity": "sha512-uGZHXkHnhF0XeeAPgnKfPv1bgKAYyVvmNL1xlKsPYZPaIHxGti2hHqvOCQv71XMsLxu1QjergkqogUnms5D3YQ==",
"dev": true
},
"yallist": {
@@ -4879,12 +4879,13 @@
}
},
"yargs-parser": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0.tgz",
"integrity": "sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo=",
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.1.tgz",
"integrity": "sha512-wpav5XYiddjXxirPoCTUPbqM0PXvJ9hiBMvuJgInvo4/lAOTZzUprArw17q2O1P2+GHhbBr18/iQwjL5Z9BqfA==",
"dev": true,
"requires": {
"camelcase": "^3.0.0"
"camelcase": "^3.0.0",
"object.assign": "^4.1.0"
}
}
}

View File

@@ -1,12 +1,18 @@
{
"name": "tuicss",
"version": "1.0.0",
"description": "TuiCss is a framework made to develop text-based user interface applications (TUI)",
"version": "2.0.1",
"description": "TuiCss is a library for developing Web applications that uses text-based user interface applications (TUI) as a style",
"keywords": [
"TUI",
"Text based user interface",
"Turbo vision",
"TuiCss"
"tui",
"text based user interface",
"frontend",
"css",
"frameword",
"turbo vision",
"tuicss",
"ncurses",
"msdos",
"ascii"
],
"main": "dist/tuicss.min.css",
"scripts": {
@@ -28,7 +34,7 @@
"gulp-clean-css": "^4.3.0",
"gulp-copy": "^4.0.1",
"gulp-minify": "^3.1.0",
"gulp-rename": "^1.4.0",
"gulp-rename": "^2.0.0",
"gulp-sass": "^4.1.0"
}
}

BIN
resources/TUICSS Demo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 827 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 585 B

BIN
resources/TUICSS Logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 528 B

BIN
resources/TuiCss Form.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

BIN
resources/TuiCss Tabs.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

BIN
resources/forecast.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 49 KiB

View File

@@ -10,7 +10,11 @@
cursor: pointer;
text-align: center;
box-shadow: 10px 10px black;
border-radius: 0px;
@include disable-select;
&.disabled {
text-decoration: line-through;
}
}
.tui-button:active {
background-color: rgb(0, 168, 168)!important;

View File

@@ -19,6 +19,13 @@
align-items: flex-end;
border-bottom: 2px solid white;
border-left: 2px solid white;
&.no-x-axis {
bottom: 0px;
}
&.no-y-axis {
left: 0px;
}
}
.tui-chart-horizontal .tui-chart-display {
display: flex;
@@ -31,6 +38,13 @@
align-items: stretch;
border-bottom: 2px solid white;
border-left: 2px solid white;
&.no-x-axis {
bottom: 0px;
}
&.no-y-axis {
left: 0px;
}
}
/* Chart X axis */
@@ -57,7 +71,7 @@
/* Chart legends */
.tui-chart-vertical .tui-chart-x-axis .tui-chart-legend {
flex-basis: 100%;
flex: 0 1 100%;
text-align: center;
}
.tui-chart-vertical .tui-chart-y-axis .tui-chart-legend {
@@ -69,7 +83,7 @@
justify-content: flex-end;
}
.tui-chart-horizontal .tui-chart-x-axis .tui-chart-legend {
flex-basis: 100%;
flex: 0 1 100%;
text-align: right;
}
.tui-chart-horizontal .tui-chart-y-axis .tui-chart-legend {
@@ -83,16 +97,16 @@
/* Chart value */
.tui-chart-vertical .tui-chart-display .tui-chart-value {
margin: 0px 30px;
flex-basis: 100%;
flex: 0 1 100%;
text-align: center;
overflow: hidden;
}
.tui-chart-horizontal .tui-chart-display .tui-chart-value {
margin: 5px 0px;
flex: 1;
text-align: right;
display: flex;
align-items: center;
align-content: flex-start;
justify-content: flex-end;
overflow: hidden;
}

View File

@@ -8,6 +8,9 @@
color: white;
padding-left: 30px;
@include disable-select;
&.disabled {
color: rgb(168, 168, 168)
}
}
.tui-checkbox input {
position: absolute;
@@ -15,6 +18,7 @@
cursor: pointer;
top: 0px;
left: 0px;
pointer-events: none;
}
.tui-checkbox span {
position: absolute;

View File

@@ -3,7 +3,11 @@
color: white;
outline:0;
border: none;
padding: 1px;
border-radius: 0px;
&.disabled {
background-color: rgb(168, 168, 168);
color: black;
}
}
.tui-input:focus {
background-color: rgb(255, 255, 0)!important;

View File

@@ -8,6 +8,9 @@
color: white;
padding-left: 30px;
@include disable-select;
&.disabled {
color: rgb(168, 168, 168)
}
}
.tui-radio input {
position: absolute;
@@ -15,6 +18,7 @@
cursor: pointer;
top: 0px;
left: 0px;
pointer-events: none;
}
.tui-radio span {
position: absolute;

View File

@@ -15,6 +15,7 @@
.tui-screen-800-600,
.tui-screen-1024-768 {
position: relative;
overflow: hidden;
&.bordered{
border: 2px solid black;
}

View File

@@ -20,6 +20,9 @@
background-color: rgb(168, 168, 168);
color: rgb(0, 0, 168);
}
&.disabled {
text-decoration: line-through;
}
}
.tui-tab-content {
display: none;

View File

@@ -4,4 +4,8 @@
padding: 0px;
color: rgb(255, 255, 0);
outline: none;
&.disabled {
background-color: rgb(168, 168, 168);
color: black;
}
}

View File

@@ -30,6 +30,12 @@ function tabsController() {
for (const tab of tabs) {
// Add click listeners to them.
tab.addEventListener('click', function (e) {
// Check if the clicked tab is disabled
if(e.target.classList.contains("disabled")) {
return;
}
// Remove the 'active' class from any and all tabs.
for (const otherTab of tabs) {
otherTab.classList.remove('active');

View File

@@ -65,6 +65,9 @@
.no-padding {
padding: 0px!important;
}
.no-border {
border: none!important;
}
.content {
padding: 12px;
}
@@ -77,4 +80,8 @@
}
.cursor-default {
cursor: default !important;
}
.disabled {
cursor: not-allowed!important;
}