cupboard 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (130) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +10 -0
  3. data/.rspec +2 -0
  4. data/.ruby-version +1 -0
  5. data/.travis.yml +4 -0
  6. data/CODE_OF_CONDUCT.md +13 -0
  7. data/Dockerfile +19 -0
  8. data/Gemfile +6 -0
  9. data/LICENSE.txt +21 -0
  10. data/README.md +44 -0
  11. data/Rakefile +6 -0
  12. data/app/assets/images/category-cover.png +0 -0
  13. data/app/assets/images/category-default.jpg +0 -0
  14. data/app/assets/images/default-avatar.png +0 -0
  15. data/app/assets/images/favicon.ico +0 -0
  16. data/app/assets/images/icook-logo.png +0 -0
  17. data/app/assets/images/icook-logo.svg +26 -0
  18. data/app/assets/images/logo-2x.png +0 -0
  19. data/app/assets/images/no-result.png +0 -0
  20. data/app/assets/images/recipe-default.png +0 -0
  21. data/app/assets/images/section_bg.jpg +0 -0
  22. data/app/assets/images/setting-pr.jpg +0 -0
  23. data/app/assets/images/step-placeholder.jpg +0 -0
  24. data/app/assets/images/vip-icon.svg +1 -0
  25. data/app/assets/pages/atomic.md +56 -0
  26. data/app/assets/pages/index.md +101 -0
  27. data/app/assets/stylesheets/_base.scss +4 -0
  28. data/app/assets/stylesheets/_basic.scss +22 -0
  29. data/app/assets/stylesheets/_components.scss +95 -0
  30. data/app/assets/stylesheets/_forms.scss +159 -0
  31. data/app/assets/stylesheets/_global.scss +40 -0
  32. data/app/assets/stylesheets/_images.scss +125 -0
  33. data/app/assets/stylesheets/_layouts.scss +4 -0
  34. data/app/assets/stylesheets/_lists.scss +203 -0
  35. data/app/assets/stylesheets/_mixins.scss +6 -0
  36. data/app/assets/stylesheets/_tables.scss +244 -0
  37. data/app/assets/stylesheets/_typography.scss +292 -0
  38. data/app/assets/stylesheets/_variables.scss +1 -0
  39. data/app/assets/stylesheets/_widgets.scss +50 -0
  40. data/app/assets/stylesheets/base/_badge.scss +89 -0
  41. data/app/assets/stylesheets/base/_buttons.scss +217 -0
  42. data/app/assets/stylesheets/components/_accordion.scss +69 -0
  43. data/app/assets/stylesheets/components/_breadcrumbs.scss +46 -0
  44. data/app/assets/stylesheets/components/_cards.scss +12 -0
  45. data/app/assets/stylesheets/components/_grid.scss +45 -0
  46. data/app/assets/stylesheets/components/_navigations.scss +12 -0
  47. data/app/assets/stylesheets/components/_pagination.scss +166 -0
  48. data/app/assets/stylesheets/components/_search-form.scss +56 -0
  49. data/app/assets/stylesheets/components/_sorting-cards.scss +76 -0
  50. data/app/assets/stylesheets/components/_text.scss +166 -0
  51. data/app/assets/stylesheets/components/alerts/_alert-global.scss +137 -0
  52. data/app/assets/stylesheets/components/alerts/_alert-market.scss +129 -0
  53. data/app/assets/stylesheets/components/cards/_dish-card.scss +244 -0
  54. data/app/assets/stylesheets/components/cards/_list-card.scss +168 -0
  55. data/app/assets/stylesheets/components/cards/_photo-card.scss +244 -0
  56. data/app/assets/stylesheets/components/cards/_product-card.scss +104 -0
  57. data/app/assets/stylesheets/components/cards/_recipe-card.scss +96 -0
  58. data/app/assets/stylesheets/components/cards/_video-card.scss +206 -0
  59. data/app/assets/stylesheets/components/comments/_comment-form.scss +222 -0
  60. data/app/assets/stylesheets/components/medias/_blog-feeds.scss +28 -0
  61. data/app/assets/stylesheets/components/medias/_brand-cover.scss +127 -0
  62. data/app/assets/stylesheets/components/medias/_brand-product.scss +35 -0
  63. data/app/assets/stylesheets/components/medias/_business-kitchen.scss +66 -0
  64. data/app/assets/stylesheets/components/medias/_categories-cover.scss +79 -0
  65. data/app/assets/stylesheets/components/medias/_hot-categories.scss +36 -0
  66. data/app/assets/stylesheets/components/medias/_popular-categories.scss +89 -0
  67. data/app/assets/stylesheets/components/medias/_popular-recipes.scss +38 -0
  68. data/app/assets/stylesheets/components/medias/_pr-lists.scss +53 -0
  69. data/app/assets/stylesheets/components/medias/_recipe-reference.scss +45 -0
  70. data/app/assets/stylesheets/components/medias/_user-recipes.scss +46 -0
  71. data/app/assets/stylesheets/components/navigations/_blog-nav.scss +120 -0
  72. data/app/assets/stylesheets/components/navigations/_brand-tabs-nav.scss +187 -0
  73. data/app/assets/stylesheets/components/navigations/_categories-nav-responsive.scss +131 -0
  74. data/app/assets/stylesheets/components/navigations/_categories-nav.scss +307 -0
  75. data/app/assets/stylesheets/components/navigations/_recipe-nav.scss +112 -0
  76. data/app/assets/stylesheets/components/navigations/_tv-nav.scss +283 -0
  77. data/app/assets/stylesheets/components/recipes/_ingredients.scss +223 -0
  78. data/app/assets/stylesheets/components/recipes/_notes.scss +60 -0
  79. data/app/assets/stylesheets/components/recipes/_steps.scss +153 -0
  80. data/app/assets/stylesheets/components/single_comment/_single-comment.scss +251 -0
  81. data/app/assets/stylesheets/layouts/_footer-nav.scss +151 -0
  82. data/app/assets/stylesheets/layouts/_footer.scss +48 -0
  83. data/app/assets/stylesheets/layouts/_footers.scss +12 -0
  84. data/app/assets/stylesheets/layouts/_global-navbar.scss +261 -0
  85. data/app/assets/stylesheets/layouts/_headers.scss +11 -0
  86. data/app/assets/stylesheets/layouts/_sub-header-market.scss +138 -0
  87. data/app/assets/stylesheets/mixins/_mixin-alert.scss +27 -0
  88. data/app/assets/stylesheets/mixins/_mixin-animation.scss +10 -0
  89. data/app/assets/stylesheets/mixins/_mixin-badge.scss +21 -0
  90. data/app/assets/stylesheets/mixins/_mixin-buttons.scss +21 -0
  91. data/app/assets/stylesheets/mixins/_mixin-icons.scss +32 -0
  92. data/app/assets/stylesheets/mixins/_mixin-type.scss +7 -0
  93. data/app/assets/stylesheets/variables/_color-palette.scss +222 -0
  94. data/app/assets/stylesheets/widgets/_brand-sidebar-widgets.scss +11 -0
  95. data/app/assets/stylesheets/widgets/_recipe-mark.scss +55 -0
  96. data/app/assets/stylesheets/widgets/_sidebar-widgets.scss +11 -0
  97. data/app/assets/stylesheets/widgets/_tv-sidebar-widgets.scss +11 -0
  98. data/app/assets/stylesheets/widgets/_user-sidebar-widgets.scss +11 -0
  99. data/app/assets/stylesheets/widgets/_widgets.scss +11 -0
  100. data/app/assets/stylesheets/widgets/brands/_pr-ingredients.scss +154 -0
  101. data/app/assets/stylesheets/widgets/brands/_pr-latest.scss +62 -0
  102. data/app/assets/stylesheets/widgets/brands/_pr-popular-recipe-lists.scss +51 -0
  103. data/app/assets/stylesheets/widgets/brands/_pr-recent.scss +59 -0
  104. data/app/assets/stylesheets/widgets/brands/_pr-video.scss +34 -0
  105. data/app/assets/stylesheets/widgets/features/_feature-events.scss +119 -0
  106. data/app/assets/stylesheets/widgets/features/_feature-slides.scss +144 -0
  107. data/app/assets/stylesheets/widgets/feeds/_blog-feeds.scss +144 -0
  108. data/app/assets/stylesheets/widgets/feeds/_tv-feeds.scss +143 -0
  109. data/app/assets/stylesheets/widgets/modal/_modal-reset.scss +40 -0
  110. data/app/assets/stylesheets/widgets/modal/_recipe-list-modal.scss +111 -0
  111. data/app/assets/stylesheets/widgets/sidebar-widgets/_business-kitchen.scss +134 -0
  112. data/app/assets/stylesheets/widgets/sidebar-widgets/_icook-video.scss +109 -0
  113. data/app/assets/stylesheets/widgets/sidebar-widgets/_popular-recipe-lists.scss +232 -0
  114. data/app/assets/stylesheets/widgets/sidebar-widgets/_popular-recipes.scss +105 -0
  115. data/app/assets/stylesheets/widgets/sidebar-widgets/_popular-search.scss +317 -0
  116. data/app/assets/stylesheets/widgets/sidebar-widgets/_recipes-collect.scss +45 -0
  117. data/app/assets/stylesheets/widgets/sidebar-widgets/_sidebar-widget.scss +62 -0
  118. data/app/assets/stylesheets/widgets/tv/_tv-more-recipes.scss +93 -0
  119. data/app/assets/stylesheets/widgets/tv/_tv-popular-tags.scss +78 -0
  120. data/app/assets/stylesheets/widgets/users/_fav-list.scss +197 -0
  121. data/app/assets/stylesheets/widgets/users/_user-stats.scss +330 -0
  122. data/bin/console +14 -0
  123. data/bin/setup +7 -0
  124. data/config/initializers/assets.rb +5 -0
  125. data/cupboard.gemspec +40 -0
  126. data/example/.gitignore +19 -0
  127. data/lib/cupboard.rb +12 -0
  128. data/lib/cupboard/engine.rb +6 -0
  129. data/lib/cupboard/version.rb +3 -0
  130. metadata +298 -0
@@ -0,0 +1,105 @@
1
+ // ----------------------------------
2
+ // Sidebar widgets - popular recipes
3
+ // ----------------------------------
4
+
5
+ /*doc
6
+ ---
7
+ parent: 04_sidebar_widgets
8
+ title: Popular recipes
9
+ name: popular_recipes
10
+ ---
11
+
12
+ <div class="row">
13
+ <div class="col-xs-12 col-sm-6">
14
+ <div class="inner-block widget">
15
+ <div class="popular-recipes">
16
+ <h4 class="title">本日熱門食譜<span class="pull-right"><a href="#">更多</a></span>
17
+ </h4>
18
+ <ul class="clearfix">
19
+ <li>
20
+ <a href="#">
21
+ <img src="/images/recipe-default.png" alt="">
22
+ <span>鮮奶酪</span>
23
+ </a>
24
+ </li>
25
+ <li>
26
+ <a href="#">
27
+ <img src="/images/recipe-default.png" alt="">
28
+ <span>芒果奶酪</span>
29
+ </a>
30
+ </li>
31
+ </ul>
32
+ <ul class="clearfix">
33
+ <li>
34
+ <a href="#">
35
+ <img src="/images/recipe-default.png" alt="">
36
+ <span>義式鮮奶酪</span>
37
+ </a>
38
+ </li>
39
+ <li>
40
+ <a href="#">
41
+ <img src="/images/recipe-default.png" alt="">
42
+ <span>鮮奶酪</span>
43
+ </a>
44
+ </li>
45
+ </ul>
46
+ </div>
47
+ </div>
48
+ </div>
49
+ </div>
50
+
51
+ */
52
+
53
+ @import "compass/typography/text/ellipsis";
54
+
55
+ $popular-recipes-link: #ac8c85 !default;
56
+ $popular-recipes-bg: #eeede8 !default;
57
+
58
+ .popular-recipes {
59
+ .title a {
60
+ @include icon-b("\f101");
61
+
62
+ color: $popular-recipes-link;
63
+ font-size: 13px;
64
+
65
+ &::after {
66
+ margin-left: 2px;
67
+ }
68
+ }
69
+
70
+ ul:last-child li {
71
+ margin-bottom: 0;
72
+ }
73
+
74
+ li {
75
+ border-bottom: 0;
76
+ float: left;
77
+ margin-bottom: 15px;
78
+ margin-right: 3.58%;
79
+ padding-bottom: 0;
80
+ padding-top: 0;
81
+ width: 48.1%;
82
+
83
+ &:last-child {
84
+ margin-right: 0;
85
+ }
86
+ }
87
+
88
+ a,
89
+ ul span {
90
+ display: block;
91
+ width: 100%;
92
+ }
93
+
94
+ ul span {
95
+ @include ellipsis;
96
+ }
97
+
98
+ img {
99
+ background-color: $popular-recipes-bg;
100
+ height: 122px;
101
+ margin-bottom: 10px;
102
+ width: 100%;
103
+ }
104
+ }
105
+
@@ -0,0 +1,317 @@
1
+ // ---------------------------------
2
+ // Sidebar widgets - popular search
3
+ // ---------------------------------
4
+
5
+ /*doc
6
+ ---
7
+ parent: 04_sidebar_widgets
8
+ title: Popular search
9
+ name: popular_search
10
+ ---
11
+
12
+ <div class="row">
13
+ <div class="col-xs-12 col-sm-6">
14
+ <div class="inner-block widget">
15
+ <div id="popular-search-panel" class="popular-search">
16
+ <h4 class="title">最近熱門關鍵字</h4>
17
+ <ol style="counter-reset: li" class="slats">
18
+ <li class="media clearfix">
19
+ <div class="media-left">
20
+ <a href="#" title="馬鈴薯">馬鈴薯</a>
21
+ <i class="icon-minus">&nbsp;</i>
22
+ </div>
23
+ <div class="media-body hidden-xs hidden-sm">
24
+ <ul class="clearfix pull-right">
25
+ <li>
26
+ <a href="#">
27
+ <div class="img">
28
+ <img alt="馬鈴薯" class="img-responsive" src="/images/recipe-default.png" width="80" height="60">
29
+ </div>
30
+ </a>
31
+ </li>
32
+ <li>
33
+ <a href="#">
34
+ <div class="img">
35
+ <img alt="馬鈴薯" class="img-responsive" src="/images/recipe-default.png" width="80" height="60">
36
+ </div>
37
+ </a>
38
+ </li>
39
+ </ul>
40
+ </div>
41
+ </li>
42
+ <li class="media clearfix hot">
43
+ <div class="media-left">
44
+ <a href="#" title="地瓜">地瓜</a>
45
+ <i class="icon-arrow-up">&nbsp;</i>
46
+ </div>
47
+ <div class="media-body hidden-xs hidden-sm">
48
+ <ul class="clearfix pull-right">
49
+ <li>
50
+ <a href="#">
51
+ <div class="img">
52
+ <img alt="地瓜" class="img-responsive" src="/images/recipe-default.png" width="80" height="60">
53
+ </div>
54
+ </a>
55
+ </li>
56
+ <li>
57
+ <a href="#">
58
+ <div class="img">
59
+ <img alt="地瓜" class="img-responsive" src="/images/recipe-default.png" width="80" height="60">
60
+ </div>
61
+ </a>
62
+ </li>
63
+ </ul>
64
+ </div>
65
+ </li>
66
+ <li class="media clearfix">
67
+ <div class="media-left">
68
+ <a href="#" title="蛋糕">蛋糕</a>
69
+ <i class="icon-arrow-down">&nbsp;</i>
70
+ </div>
71
+ <div class="media-body hidden-xs hidden-sm">
72
+ <ul class="clearfix pull-right">
73
+ <li>
74
+ <a href="#">
75
+ <div class="img">
76
+ <img alt="蛋糕" class="img-responsive" src="/images/recipe-default.png" width="80" height="60">
77
+ </div>
78
+ </a>
79
+ </li>
80
+ <li>
81
+ <a href="#">
82
+ <div class="img">
83
+ <img alt="蛋糕" class="img-responsive" src="/images/recipe-default.png" width="80" height="60">
84
+ </div>
85
+ </a>
86
+ </li>
87
+ </ul>
88
+ </div>
89
+ </li>
90
+ <li class="media clearfix">
91
+ <div class="media-left">
92
+ <a href="#" title="洋蔥">洋蔥</a>
93
+ <i class="icon-arrow-up">&nbsp;</i>
94
+ </div>
95
+ <div class="media-body hidden-xs hidden-sm">
96
+ <ul class="clearfix pull-right">
97
+ <li>
98
+ <a href="#">
99
+ <div class="img">
100
+ <img alt="洋蔥" class="img-responsive" src="/images/recipe-default.png" width="80" height="60">
101
+ </div>
102
+ </a>
103
+ </li>
104
+ <li>
105
+ <a href="#">
106
+ <div class="img">
107
+ <img alt="洋蔥" class="img-responsive" src="/images/recipe-default.png" width="80" height="60">
108
+ </div>
109
+ </a>
110
+ </li>
111
+ </ul>
112
+ </div>
113
+ </li>
114
+ <li class="media clearfix">
115
+ <div class="media-left">
116
+ <a href="#" title="起司早餐">起司早餐</a>
117
+ <span class="badge-support"></span>
118
+ </div>
119
+ <div class="media-body hidden-xs hidden-sm">
120
+ <ul class="clearfix pull-right">
121
+ <li>
122
+ <a href="#">
123
+ <div class="img">
124
+ <img alt="起司早餐" class="img-responsive" src="/images/recipe-default.png" width="80" height="60">
125
+ </div>
126
+ </a>
127
+ </li>
128
+ <li>
129
+ <a href="#">
130
+ <div class="img">
131
+ <img alt="起司早餐" class="img-responsive" src="/images/recipe-default.png" width="80" height="60">
132
+ </div>
133
+ </a>
134
+ </li>
135
+ </ul>
136
+ </div>
137
+ </li>
138
+ </ol>
139
+ </div>
140
+ </div>
141
+ </div>
142
+ </div>
143
+ */
144
+
145
+ .popular-search {
146
+ .title {
147
+ margin-bottom: 5px;
148
+ }
149
+
150
+ ol > li:before {
151
+ background-color: transparent;
152
+ color: #564e4a;
153
+ content: counter(li);
154
+ counter-increment: li;
155
+ font-size: 18px;
156
+ font-weight: bold;
157
+ height: 30px;
158
+ left: 0;
159
+ line-height: 49px;
160
+ margin-right: 8px;
161
+ position: absolute;
162
+ top: 15px;
163
+ text-align: center;
164
+ width: 30px;
165
+ }
166
+
167
+ li {
168
+ margin-bottom: 0;
169
+ padding-left: 27px;
170
+ position: relative;
171
+
172
+ &:first-child {
173
+ padding-top: 10px;
174
+ }
175
+
176
+ a:hover {
177
+ color: #999;
178
+ }
179
+ }
180
+
181
+ li.hot {
182
+ position: relative;
183
+ overflow: hidden;
184
+
185
+ &:after {
186
+ -webkit-text-size-adjust: none;
187
+ content: "HOT";
188
+ color: #aa0000;
189
+ font-size: 10px;
190
+ font-weight: 700;
191
+ left: 129px;
192
+ position: absolute;
193
+ top: 14px;
194
+ }
195
+ }
196
+
197
+ .media-left {
198
+ @include ellipsis;
199
+
200
+ line-height: 60px;
201
+ margin-right: 0;
202
+ margin-top: 0;
203
+ width: 41.7%;
204
+
205
+ a {
206
+ color: #888;
207
+ float: left;
208
+ font-size: 16px;
209
+ }
210
+ }
211
+
212
+ .media-body {
213
+ li {
214
+ border-bottom: 0;
215
+ float: left;
216
+ height: 100%;
217
+ padding: 0;
218
+ width: 80px;
219
+
220
+ & + li {
221
+ margin-left: 10px;
222
+ }
223
+ }
224
+
225
+ a {
226
+ @include ellipsis;
227
+
228
+ display: block;
229
+ width: 80px;
230
+ }
231
+
232
+ .img {
233
+ height: 60px;
234
+ overflow: hidden;
235
+ width: 80px;
236
+ }
237
+
238
+ img {
239
+ width: 100%;
240
+ height: 100%;
241
+ }
242
+ }
243
+
244
+ .icon-arrow-up {
245
+ @include icon("\f176");
246
+
247
+ &:before {
248
+ color: #aa0000;
249
+ }
250
+ }
251
+
252
+ .icon-arrow-down {
253
+ @include icon("\f175");
254
+
255
+ &:before {
256
+ color: #1c959e;
257
+ }
258
+ }
259
+
260
+ .icon-minus {
261
+ @include icon("\f068");
262
+
263
+ &:before {
264
+ color: #999;
265
+ position: relative;
266
+ right: -2px;
267
+ }
268
+ }
269
+
270
+ .icon-arrow-up,
271
+ .icon-arrow-down,
272
+ .icon-minus {
273
+ float: right;
274
+
275
+ &:before {
276
+ font-weight: bold;
277
+ font-size: 16px;
278
+ margin-right: 0;
279
+ text-align: center;
280
+ }
281
+ }
282
+ }
283
+
284
+ @media only screen and (min-width: 992px) and (max-width: 1199px) {
285
+ .popular-search {
286
+ ol > li {
287
+ padding-left: 17px;
288
+
289
+ &:before {
290
+ width: 10px;
291
+ }
292
+ }
293
+
294
+ .media-left {
295
+ width: 25%;
296
+ }
297
+ }
298
+ }
299
+
300
+ @media only screen and (max-width: 992px) {
301
+ .popular-search {
302
+ ol > li:before {
303
+ line-height: 7px;
304
+ width: 17px;
305
+ }
306
+
307
+ .media-left {
308
+ display: block;
309
+ line-height: 18px;
310
+ width: 100%;
311
+ }
312
+
313
+ .badge-support:after {
314
+ right: -58px;
315
+ }
316
+ }
317
+ }
@@ -0,0 +1,45 @@
1
+ // ----------------------------------
2
+ // Sidebar widgets - recipes collect
3
+ // ----------------------------------
4
+
5
+ /*doc
6
+ ---
7
+ parent: 04_sidebar_widgets
8
+ title: Recipes collect
9
+ name: recipes_collect
10
+ ---
11
+ <div class="row">
12
+ <div class="col-xs-12 col-sm-6">
13
+ <div class="inner-block widget">
14
+ <div class="recipes-collect">
15
+ <h4 class="title badge-pr">食譜料理募集中</h4>
16
+ <ul>
17
+ <li><a target="_blank" href="#">iCook 愛料理暖心食譜募集中</a></li>
18
+ <li><a target="_blank" href="#">iCook 愛料理暖心食譜募集中</a></li>
19
+ <li><a target="_blank" href="#">iCook 愛料理暖心食譜募集中</a></li>
20
+ </ul>
21
+ </div>
22
+ </div>
23
+ </div>
24
+ </div>
25
+ */
26
+
27
+ $recipes-collect-icon: $orange !default;
28
+
29
+ .recipes-collect {
30
+ li {
31
+ position: relative;
32
+ }
33
+
34
+ a {
35
+ @include icon-b("\f0a9");
36
+
37
+ &::after {
38
+ color: $recipes-collect-icon;
39
+ line-height: 19px;
40
+ margin-left: 0;
41
+ position: absolute;
42
+ right: 0;
43
+ }
44
+ }
45
+ }