diff options
Diffstat (limited to 'node_modules/montage')
5 files changed, 105 insertions, 42 deletions
diff --git a/node_modules/montage/examples/feed-reader/main.reel/main.html b/node_modules/montage/examples/feed-reader/main.reel/main.html index 50bac601..1313219f 100644 --- a/node_modules/montage/examples/feed-reader/main.reel/main.html +++ b/node_modules/montage/examples/feed-reader/main.reel/main.html | |||
@@ -45,8 +45,8 @@ | |||
45 | "name": "FeedReader", | 45 | "name": "FeedReader", |
46 | "properties": { | 46 | "properties": { |
47 | "element": {"#": "feed-reader"}, | 47 | "element": {"#": "feed-reader"}, |
48 | "feedDisplayMode": "timed", | 48 | "feedDisplayMode": "animation", |
49 | "interval": "5" | 49 | "interval": "3" |
50 | } | 50 | } |
51 | }, | 51 | }, |
52 | 52 | ||
@@ -170,6 +170,7 @@ | |||
170 | margin-top: 10px; | 170 | margin-top: 10px; |
171 | } | 171 | } |
172 | 172 | ||
173 | |||
173 | /* | 174 | /* |
174 | .feed-reader .feed-entry { | 175 | .feed-reader .feed-entry { |
175 | visibility:hidden; | 176 | visibility:hidden; |
@@ -182,7 +183,42 @@ | |||
182 | transition-delay:0s; | 183 | transition-delay:0s; |
183 | } | 184 | } |
184 | */ | 185 | */ |
186 | |||
187 | @-webkit-keyframes rotateWithAlphaKeyframes { | ||
188 | 0% { | ||
189 | opacity: 0; | ||
190 | -webkit-transform: perspective(1000) rotateY(95deg); | ||
191 | } | ||
192 | 1% { | ||
193 | opacity: 0; | ||
194 | -webkit-transform: perspective(1000) rotateY(-90deg); | ||
195 | } | ||
196 | 15% { | ||
197 | opacity: 1; | ||
198 | -webkit-transform: perspective(1000) rotateY(0deg); | ||
199 | } | ||
200 | 85% { | ||
201 | opacity: 1; | ||
202 | -webkit-transform: perspective(1000) rotateY(0deg); | ||
203 | } | ||
204 | 100% { | ||
205 | opacity: 0; | ||
206 | -webkit-transform: perspective(1000) rotateY(95deg); | ||
207 | } | ||
208 | } | ||
209 | |||
210 | .rotateWithAlphaAnimation { | ||
211 | -webkit-animation-name: rotateWithAlphaKeyframes; | ||
212 | -webkit-animation-duration: 5s; | ||
213 | -webkit-animation-iteration-count: infinite; | ||
214 | -webkit-animation-direction: normal; | ||
215 | -webkit-animation-timing-function: ease-out; | ||
216 | -webkit-transform-origin: 200% 50%; | ||
217 | -webkit-transform-style: preserve-3d; | ||
218 | -webkit-transform: perspective(1000); | ||
219 | } | ||
185 | 220 | ||
221 | |||
186 | </style> | 222 | </style> |
187 | 223 | ||
188 | 224 | ||
@@ -201,7 +237,7 @@ | |||
201 | <input type="button" id="btn-go" class="btn primary" value="OK"></button> | 237 | <input type="button" id="btn-go" class="btn primary" value="OK"></button> |
202 | </form> | 238 | </form> |
203 | </div> | 239 | </div> |
204 | <div class="feed-reader" id="feed-reader"></div> | 240 | <div class="feed-reader rotateWithAlphaAnimation" id="feed-reader" ></div> |
205 | </section> | 241 | </section> |
206 | 242 | ||
207 | <section class="map-container"> | 243 | <section class="map-container"> |
diff --git a/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.html b/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.html index e5251e0a..21f3d4ee 100644 --- a/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.html +++ b/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.html | |||
@@ -52,7 +52,9 @@ | |||
52 | 52 | ||
53 | <style> | 53 | <style> |
54 | div.feed-reader { | 54 | div.feed-reader { |
55 | padding: 10px; | 55 | padding: 10px; |
56 | height: 250px; | ||
57 | width: 350px; | ||
56 | } | 58 | } |
57 | 59 | ||
58 | .feed-entry { | 60 | .feed-entry { |
diff --git a/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.js b/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.js index 8fd9ae22..0d5d7bb1 100644 --- a/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.js +++ b/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.js | |||
@@ -40,35 +40,39 @@ exports.FeedReader = Montage.create(Component, { | |||
40 | this._fetchFeed(); | 40 | this._fetchFeed(); |
41 | } | 41 | } |
42 | }, | 42 | }, |
43 | 43 | ||
44 | // time in ms between slides | 44 | // time in ms between slides |
45 | interval: {value: 3, distinct: true}, | 45 | interval: {value: 3, distinct: true}, |
46 | 46 | ||
47 | maxEntries: {value: 10, distinct: true}, | 47 | maxEntries: {value: 10, distinct: true}, |
48 | 48 | ||
49 | entries: {value: null}, | 49 | entries: {value: null}, |
50 | 50 | ||
51 | _feedDisplayMode: {value: null}, | 51 | _feedDisplayMode: {value: null}, |
52 | feedDisplayMode: { | 52 | feedDisplayMode: { |
53 | get: function() { | 53 | get: function() { |
54 | return this._feedDisplayMode; | 54 | return this._feedDisplayMode; |
55 | }, | 55 | }, |
56 | set: function(value) { | 56 | set: function(value) { |
57 | this._feedDisplayMode = value; | 57 | |
58 | this.removeEntryAnimation(); | ||
59 | this._feedDisplayMode = value; | ||
60 | |||
61 | this.addEntryAnimation(); | ||
58 | } | 62 | } |
59 | }, | 63 | }, |
60 | 64 | ||
61 | 65 | ||
62 | feedEntryTimer: {enumerable: false, value: null}, | 66 | feedEntryTimer: {enumerable: false, value: null}, |
63 | 67 | ||
64 | 68 | ||
65 | activeFeedEntry: {value: null}, | 69 | activeFeedEntry: {value: null}, |
66 | _activeIndex: {value: null}, | 70 | _activeIndex: {value: null}, |
67 | activeIndex: { | 71 | activeIndex: { |
68 | get: function() { | 72 | get: function() { |
69 | return this._activeIndex || 0; | 73 | return this._activeIndex || 0; |
70 | }, | 74 | }, |
71 | set: function(index) { | 75 | set: function(index) { |
72 | if(this.entries) { | 76 | if(this.entries) { |
73 | var max = this.entries.length-1; | 77 | var max = this.entries.length-1; |
74 | if(index > max) { | 78 | if(index > max) { |
@@ -77,17 +81,17 @@ exports.FeedReader = Montage.create(Component, { | |||
77 | if(index < 0) { | 81 | if(index < 0) { |
78 | index = 0; | 82 | index = 0; |
79 | } | 83 | } |
80 | this._activeIndex = index; | 84 | this._activeIndex = index; |
81 | this.activeFeedEntry = this.entries[this._activeIndex]; | 85 | this.activeFeedEntry = this.entries[this._activeIndex]; |
82 | } else { | 86 | } else { |
83 | this._activeIndex = 0; | 87 | this._activeIndex = 0; |
84 | } | 88 | } |
85 | } | 89 | } |
86 | }, | 90 | }, |
87 | 91 | ||
88 | _fetchFeed: { | 92 | _fetchFeed: { |
89 | value: function() { | 93 | value: function() { |
90 | 94 | ||
91 | var url = this.feedURL; | 95 | var url = this.feedURL; |
92 | var feed = new google.feeds.Feed(url); | 96 | var feed = new google.feeds.Feed(url); |
93 | feed.setNumEntries(10); | 97 | feed.setNumEntries(10); |
@@ -96,38 +100,44 @@ exports.FeedReader = Montage.create(Component, { | |||
96 | self.entries = []; | 100 | self.entries = []; |
97 | 101 | ||
98 | feed.load(function(result) { | 102 | feed.load(function(result) { |
99 | //self.removeEntryAnimation(); | 103 | self.removeEntryAnimation(); |
100 | if(result.error) { | 104 | if(result.error) { |
101 | self.entries = []; | 105 | self.entries = []; |
102 | } else { | 106 | } else { |
103 | //console.log('entries: ', result.feed.entries); | 107 | //console.log('entries: ', result.feed.entries); |
108 | self.addEntryAnimation(); | ||
104 | self.entries = result.feed.entries; | 109 | self.entries = result.feed.entries; |
105 | this._activeIndex = 0; | 110 | this._activeIndex = 0; |
106 | } | 111 | } |