titon-toolkit 1.0.0.rc1 → 1.0.0.rc.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/readme.md +17 -10
- data/roadmap.md +25 -0
- data/scss/toolkit/_common.scss +18 -12
- data/scss/toolkit/components/breadcrumbs.scss +2 -2
- data/scss/toolkit/components/icon.scss +2 -0
- data/scss/toolkit/components/pagination.scss +14 -12
- data/scss/toolkit/components/pin.scss +6 -2
- data/scss/toolkit/layout/responsive.scss +13 -1
- data/scss/toolkit/layout/typography.scss +2 -0
- data/scss/toolkit/mixins/_grid.scss +28 -3
- data/scss/toolkit/mixins/_layout.scss +28 -0
- data/scss/toolkit/mixins/_responsive.scss +9 -0
- data/version.md +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: fc30641f32e37d76624fe6ad5b150e5813da1286
|
4
|
+
data.tar.gz: 2611239a2d146aa078fee9fd5f9c1f4c581a1c07
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 21871c29c0afb5e6f976fefa941547429220db7ab65ce79ed5f74504aca057dbb7012c6d1075026f3865d25f40ec24a49a044808797e44ad8356860336e19ab0
|
7
|
+
data.tar.gz: 1f7851607db03b0070ef94f2c91566377e37df6915f8ad205235d8fdbe0aa6fa387cbf3519c7d37cc495573e7d436f1cfe25dcca23e503c5be209aa74f35048c
|
data/readme.md
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# Toolkit v1.0.0
|
1
|
+
# Toolkit v1.0.0 RC2 #
|
2
2
|
|
3
3
|
Titon Toolkit is a collection of very powerful user-interface components and utility classes.
|
4
4
|
Each component represents encapsulated HTML, CSS and JS functionality for role specific page elements.
|
@@ -6,11 +6,22 @@ Each component represents encapsulated HTML, CSS and JS functionality for role s
|
|
6
6
|
Titon makes use of the latest and greatest technology. This includes CSS3 for animation (fade, slide, etc),
|
7
7
|
Sass for CSS pre-processing, and Grunt for task and package management.
|
8
8
|
|
9
|
+
#### Why Toolkit? ####
|
10
|
+
|
11
|
+
Toolkit was built from the ground up with the following concepts and philosophies in mind.
|
12
|
+
If any of these concepts align with your thought process or your projects requirements, than Toolkit is right for you.
|
13
|
+
|
14
|
+
* Mobile first design philosophy
|
15
|
+
* Progressive enhancement and graceful degradation
|
16
|
+
* Cascading CSS inheritance
|
17
|
+
* Configuration over convention
|
18
|
+
* Responsive and fluid as first class
|
19
|
+
* Relative scaling with `em` and `rem`
|
20
|
+
* Animations and transitions purely with CSS
|
21
|
+
|
9
22
|
#### Demo ####
|
10
23
|
A temporary demo can be found here: http://titon.io/toolkit
|
11
24
|
|
12
|
-
It's literally the examples folder within this repository.
|
13
|
-
|
14
25
|
#### Requirements ####
|
15
26
|
* **HTML5**
|
16
27
|
* **CSS3**
|
@@ -22,7 +33,7 @@ It's literally the examples folder within this repository.
|
|
22
33
|
* More/Element.Shortcuts
|
23
34
|
* More/Element.Measure
|
24
35
|
* More/Drag (optional for Modal)
|
25
|
-
* More/Element.Event.Pseudos (for Tooltip)
|
36
|
+
* More/Element.Event.Pseudos (for LazyLoad, Pin, Stalker, Tooltip)
|
26
37
|
|
27
38
|
#### Browser Support ####
|
28
39
|
|
@@ -63,6 +74,7 @@ Furthermore, the following Toolkit components do not work in IE8: Input, Matrix.
|
|
63
74
|
* `Pin` - Pin an element in a container that stays within the viewport while scrolling
|
64
75
|
* `Popover` - Displays dynamic notification elements over an element
|
65
76
|
* `Showcase` - Provides a lightbox style image gallery
|
77
|
+
* `Stalker` - Monitors the scroll of an element and notifies a target when a marker is reached
|
66
78
|
* `Tabs` - Provides tabbed support to an element containing navigation tabs and sections
|
67
79
|
* `Tooltip` - Displays dynamic tooltips over an element or the mouse cursor
|
68
80
|
* `TypeAhead` - Displays a list of possible options below an input while typing
|
@@ -108,9 +120,4 @@ Titon also provides classes that build upon MooTools itself. These classes do no
|
|
108
120
|
## Known Issues ##
|
109
121
|
* Zepto is currently not supported (too different of an API)
|
110
122
|
* Slide in modal animations do not work correctly in Chrome/IE
|
111
|
-
* Flip modal animations do not work in Opera
|
112
|
-
|
113
|
-
## To Do ##
|
114
|
-
* Guide component
|
115
|
-
* Marquee component
|
116
|
-
* Custom inputs component
|
123
|
+
* Flip modal animations do not work in Opera
|
data/roadmap.md
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
# Toolkit Roadmap #
|
2
|
+
|
3
|
+
All releases will contain bug fixing and polishing for current features.
|
4
|
+
|
5
|
+
### 1.1.0 - December 2013 ###
|
6
|
+
* Guide - A component that displays introduction guides (popovers) in a sequential order. Useful for show casing new features and functionality.
|
7
|
+
* Divider - A component for dividing content horizontally or vertically.
|
8
|
+
|
9
|
+
### 1.2.0 - January 2014 ###
|
10
|
+
* Marquee - A component that displays multiple slides at once and allows for cycling through a variable amount. A sister component to the carousel.
|
11
|
+
* Mask - A component that will mask a target element with a blackout.
|
12
|
+
|
13
|
+
### 1.3.0 - February 2014 ###
|
14
|
+
* Step - A component that highlights a step in a series of consecutive steps (represented by an arrow based navigation).
|
15
|
+
* Dialog - A component that prompts the user for an action. Sister to the modal component.
|
16
|
+
|
17
|
+
### 2.0.0 - TBD ###
|
18
|
+
* Remove the MooTools port.
|
19
|
+
* Drop IE 8/9 support and upgrade to jQuery 2.
|
20
|
+
* Replace JS option callbacks with namespaced element events.
|
21
|
+
* Refactor the JS component layer and reduce complex implementation.
|
22
|
+
* Move component options from the jQuery plugin to the Toolkit component.
|
23
|
+
* Separate component transitions into a stand alone layer that can be used anywhere.
|
24
|
+
* Refactor in-between loading states. Possibly into a new component? CSS or JS based?
|
25
|
+
* Replace examples with unit tests.
|
data/scss/toolkit/_common.scss
CHANGED
@@ -1,15 +1,4 @@
|
|
1
1
|
|
2
|
-
//-------------------- Imports --------------------//
|
3
|
-
|
4
|
-
@import "mixins/layout";
|
5
|
-
@import "mixins/grid";
|
6
|
-
@import "mixins/responsive";
|
7
|
-
@import "compass/css3/box-sizing";
|
8
|
-
@import "compass/css3/images";
|
9
|
-
@import "compass/css3/transition";
|
10
|
-
@import "compass/css3/transform";
|
11
|
-
@import "compass/css3/filter";
|
12
|
-
|
13
2
|
//-------------------- Compass --------------------//
|
14
3
|
|
15
4
|
$experimental-support-for-mozilla: true !default;
|
@@ -33,6 +22,9 @@ $foreground-color: #2d2d2d !default;
|
|
33
22
|
|
34
23
|
//-------------------- Sizes --------------------//
|
35
24
|
|
25
|
+
$base-size: 14px !default;
|
26
|
+
$base-size-width: ($base-size * 100) / 1px;
|
27
|
+
|
36
28
|
$padding: .75rem !default;
|
37
29
|
$margin: 1.25rem !default;
|
38
30
|
|
@@ -132,4 +124,18 @@ $grid-columns-small: 6 !default;
|
|
132
124
|
|
133
125
|
$grid-columns-desktop: 12 !default;
|
134
126
|
$grid-columns-tablet: 6 !default;
|
135
|
-
$grid-columns-mobile: 3 !default;
|
127
|
+
$grid-columns-mobile: 3 !default;
|
128
|
+
|
129
|
+
$grid-width: 100% !default;
|
130
|
+
$grid-gutter: 0 !default;
|
131
|
+
|
132
|
+
//-------------------- Imports --------------------//
|
133
|
+
|
134
|
+
@import "mixins/layout";
|
135
|
+
@import "mixins/grid";
|
136
|
+
@import "mixins/responsive";
|
137
|
+
@import "compass/css3/box-sizing";
|
138
|
+
@import "compass/css3/images";
|
139
|
+
@import "compass/css3/transition";
|
140
|
+
@import "compass/css3/transform";
|
141
|
+
@import "compass/css3/filter";
|
@@ -10,26 +10,27 @@
|
|
10
10
|
display: block;
|
11
11
|
margin: $margin 0;
|
12
12
|
|
13
|
-
ul,
|
14
|
-
|
15
|
-
|
16
|
-
|
13
|
+
ul, ol {
|
14
|
+
margin: 0;
|
15
|
+
padding: 0;
|
16
|
+
|
17
|
+
@include clear-fix;
|
17
18
|
}
|
18
19
|
|
19
20
|
li {
|
21
|
+
position: relative;
|
22
|
+
list-style: none;
|
20
23
|
float: left;
|
21
24
|
margin-right: $padding / 2;
|
22
25
|
|
23
|
-
|
24
|
-
|
26
|
+
> a {
|
27
|
+
display: block;
|
25
28
|
}
|
26
29
|
|
27
30
|
&.is-active {
|
28
31
|
z-index: 1;
|
29
32
|
}
|
30
33
|
}
|
31
|
-
|
32
|
-
@include clear-fix;
|
33
34
|
}
|
34
35
|
|
35
36
|
//-------------------- Modifiers --------------------//
|
@@ -40,10 +41,11 @@
|
|
40
41
|
margin-right: 0;
|
41
42
|
|
42
43
|
&:first-child { margin-left: 0; }
|
44
|
+
|
43
45
|
&:hover,
|
44
|
-
|
46
|
+
> a:hover { z-index: 1; }
|
45
47
|
|
46
|
-
|
48
|
+
> a {
|
47
49
|
margin: 0;
|
48
50
|
border-radius: 0;
|
49
51
|
}
|
@@ -54,12 +56,12 @@
|
|
54
56
|
border-radius: $round;
|
55
57
|
}
|
56
58
|
|
57
|
-
li:first-child
|
59
|
+
li:first-child > a {
|
58
60
|
border-top-left-radius: $round;
|
59
61
|
border-bottom-left-radius: $round;
|
60
62
|
}
|
61
63
|
|
62
|
-
li:last-child
|
64
|
+
li:last-child > a {
|
63
65
|
border-top-right-radius: $round;
|
64
66
|
border-bottom-right-radius: $round;
|
65
67
|
}
|
@@ -6,6 +6,10 @@
|
|
6
6
|
|
7
7
|
@import "../common";
|
8
8
|
|
9
|
-
.pin {
|
10
|
-
@include transition(top 1s, right .5s, left .5s);
|
9
|
+
.pin.sticky {
|
10
|
+
@include transition(top 1s ease-in-out, right .5s ease-in-out, left .5s ease-in-out);
|
11
|
+
}
|
12
|
+
|
13
|
+
.pin.slide {
|
14
|
+
@include transition(top .5s linear, right .5s linear, left .5s linear);
|
11
15
|
}
|
@@ -12,6 +12,7 @@ img, video, canvas {
|
|
12
12
|
height: auto;
|
13
13
|
}
|
14
14
|
|
15
|
+
.show-retina,
|
15
16
|
.show-print { display: none; }
|
16
17
|
|
17
18
|
@if $responsive-size == "device" or $responsive-size == "both" {
|
@@ -72,7 +73,18 @@ img, video, canvas {
|
|
72
73
|
}
|
73
74
|
|
74
75
|
// Type states
|
76
|
+
@include if-retina {
|
77
|
+
.hide-retina { display: none; }
|
78
|
+
.show-retina { display: block; }
|
79
|
+
tr.show-retina { display: table-row; }
|
80
|
+
td.show-retina,
|
81
|
+
th.show-retina { display: table-cell; }
|
82
|
+
}
|
83
|
+
|
75
84
|
@media print {
|
76
|
-
.show-print { display: block; }
|
77
85
|
.hide-print { display: none; }
|
86
|
+
.show-print { display: block; }
|
87
|
+
tr.show-print { display: table-row; }
|
88
|
+
td.show-print,
|
89
|
+
th.show-print { display: table-cell; }
|
78
90
|
}
|
@@ -1,14 +1,31 @@
|
|
1
1
|
|
2
|
+
//$gutter-width: if($grid-gutter, to-percent($grid-gutter), 0);
|
3
|
+
|
2
4
|
// Calculate a width using a grid cell
|
3
5
|
@function grid-span($columns, $n) {
|
4
|
-
|
6
|
+
$row-width: 100%;
|
7
|
+
|
8
|
+
// If a gutter is set, remove width based on the sum of the gutter columns
|
9
|
+
/*@if $grid-gutter {
|
10
|
+
$row-width: $row-width - ($gutter-width * ($columns - 1));
|
11
|
+
}*/
|
12
|
+
|
13
|
+
// The column width should span a division of the total width
|
14
|
+
$span-width: ($row-width / $columns) * $n;
|
15
|
+
|
16
|
+
// If a gutter is set, increase the column width to fill in the missing gaps
|
17
|
+
/*@if $grid-gutter and $n > 1 {
|
18
|
+
$span-width: $span-width + (($n - 1) * $gutter-width);
|
19
|
+
}*/
|
20
|
+
|
21
|
+
@return $span-width;
|
5
22
|
}
|
6
23
|
|
7
24
|
// Styles for the row containing the columns
|
8
25
|
@mixin grid-row() {
|
9
26
|
text-align: left;
|
10
|
-
width:
|
11
|
-
max-width:
|
27
|
+
width: $grid-width;
|
28
|
+
max-width: $grid-width;
|
12
29
|
|
13
30
|
@include clear-fix;
|
14
31
|
}
|
@@ -18,4 +35,12 @@
|
|
18
35
|
position: relative;
|
19
36
|
min-height: 1px;
|
20
37
|
float: left;
|
38
|
+
|
39
|
+
/*@if $grid-gutter {
|
40
|
+
margin-right: $gutter-width;
|
41
|
+
|
42
|
+
&:last-child {
|
43
|
+
margin-right: 0;
|
44
|
+
}
|
45
|
+
}*/
|
21
46
|
}
|
@@ -76,4 +76,32 @@
|
|
76
76
|
|
77
77
|
@function white($opacity){
|
78
78
|
@return rgba(255, 255, 255, $opacity);
|
79
|
+
}
|
80
|
+
|
81
|
+
//-------------------- Conversions --------------------//
|
82
|
+
|
83
|
+
// Remove the unit and return the integer
|
84
|
+
@function strip-unit($value) {
|
85
|
+
@return ($value / ($value * 0 + 1));
|
86
|
+
}
|
87
|
+
|
88
|
+
// Convert a unit value to a percentage while using $base-size as the reference
|
89
|
+
@function to-percent($from) {
|
90
|
+
$from-unit: unit($from);
|
91
|
+
$value: $from;
|
92
|
+
|
93
|
+
@if $from-unit == '%' {
|
94
|
+
@return $from;
|
95
|
+
|
96
|
+
} @else if $from-unit == 'px' {
|
97
|
+
// Do nothing
|
98
|
+
|
99
|
+
} @else if $from-unit == 'em' or $from-unit == 'rem' {
|
100
|
+
$value: (strip-unit($from) * strip-unit($base-size)) * 1px;
|
101
|
+
|
102
|
+
} @else {
|
103
|
+
@warn 'Unknown conversion unit type.';
|
104
|
+
}
|
105
|
+
|
106
|
+
@return percentage(($value / $base-size) / 100);
|
79
107
|
}
|
@@ -29,6 +29,15 @@
|
|
29
29
|
}
|
30
30
|
}
|
31
31
|
|
32
|
+
@mixin if-retina {
|
33
|
+
@media
|
34
|
+
only screen and (-webkit-min-device-pixel-ratio: 2),
|
35
|
+
only screen and (-moz-min-device-pixel-ratio: 2),
|
36
|
+
only screen and (min-device-pixel-ratio: 2) {
|
37
|
+
@content;
|
38
|
+
}
|
39
|
+
}
|
40
|
+
|
32
41
|
// Either support desktop-first or mobile-first responsive pattern
|
33
42
|
@mixin do-responsive($desktop, $mobile) {
|
34
43
|
@if $responsive-design == "desktop" {
|
data/version.md
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.0.0-
|
1
|
+
1.0.0-rc.2
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: titon-toolkit
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.0.
|
4
|
+
version: 1.0.0.rc.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Titon
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-11-
|
12
|
+
date: 2013-11-16 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: sass
|
@@ -92,6 +92,7 @@ files:
|
|
92
92
|
- scss/toolkit.scss
|
93
93
|
- license.md
|
94
94
|
- readme.md
|
95
|
+
- roadmap.md
|
95
96
|
- version.md
|
96
97
|
homepage: http://titon.io
|
97
98
|
licenses:
|