titon-toolkit 1.0.0.rc1 → 1.0.0.rc.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 642d038256be3a9201f7a28cbc2aaa5f3458f42a
4
- data.tar.gz: 609d7970a0d8e4bc24af97dfc7349811ae9f20ea
3
+ metadata.gz: fc30641f32e37d76624fe6ad5b150e5813da1286
4
+ data.tar.gz: 2611239a2d146aa078fee9fd5f9c1f4c581a1c07
5
5
  SHA512:
6
- metadata.gz: e5a8d74277b44630e6ad4b1ea20a0c17a961a2813dff0e7a46870ed6c3dbc6793849135a41f52ee672c1045ca401d12e534d23db5ef4d9e18a8ee25a62cedf04
7
- data.tar.gz: 333f1c3974501a0a7469b6b54ebd7b6230241fe7619fff9bae50cac1cea2679aa83f363c45771110b6ac414f1b29951d57bb58566f8483f816450eeebb6ece5b
6
+ metadata.gz: 21871c29c0afb5e6f976fefa941547429220db7ab65ce79ed5f74504aca057dbb7012c6d1075026f3865d25f40ec24a49a044808797e44ad8356860336e19ab0
7
+ data.tar.gz: 1f7851607db03b0070ef94f2c91566377e37df6915f8ad205235d8fdbe0aa6fa387cbf3519c7d37cc495573e7d436f1cfe25dcca23e503c5be209aa74f35048c
data/readme.md CHANGED
@@ -1,4 +1,4 @@
1
- # Toolkit v1.0.0 RC1 #
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.
@@ -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";
@@ -15,6 +15,8 @@
15
15
  ul, ol {
16
16
  margin: 0;
17
17
  padding: 0;
18
+
19
+ @include clear-fix;
18
20
  }
19
21
 
20
22
  li {
@@ -54,6 +56,4 @@
54
56
 
55
57
  .divider { margin-left: $large-padding; }
56
58
  }
57
-
58
- @include clear-fix;
59
59
  }
@@ -8,6 +8,8 @@
8
8
 
9
9
  [class*="icon-"] {
10
10
  @include reset-inline-block;
11
+ background-repeat: no-repeat;
12
+
11
13
  @include disabled-state { opacity: $disabled-opacity; }
12
14
  }
13
15
 
@@ -10,26 +10,27 @@
10
10
  display: block;
11
11
  margin: $margin 0;
12
12
 
13
- ul,
14
- li {
15
- @include reset-inline-block;
16
- list-style: none;
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
- .button {
24
- float: left;
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
- .button:hover { z-index: 1; }
46
+ > a:hover { z-index: 1; }
45
47
 
46
- .button {
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 .button {
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 .button {
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
  }
@@ -6,6 +6,8 @@
6
6
 
7
7
  @import "../common";
8
8
 
9
+ html { font-size: $base-size; }
10
+
9
11
  h1 { font-size: 3rem; }
10
12
  h2 { font-size: 2.5rem; }
11
13
  h3 { font-size: 2.1rem; }
@@ -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
- @return (100% / $columns) * $n;
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: 100%;
11
- max-width: 100%;
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-rc1
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.rc1
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-05 00:00:00.000000000 Z
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: