app-todo.scss 8.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327
  1. // Core variables and mixins
  2. @import "../bootstrap/functions";
  3. @import "../bootstrap/mixins";
  4. @import "../bootstrap-extended/mixins";
  5. // Load variable overrides
  6. @import "../core/variables/variables";
  7. @import "../bootstrap/variables";
  8. // Overrides user variable
  9. @import "../core/variables/components-variables";
  10. // Todo Application css starts
  11. .todo-application{
  12. // Content area wrapper border
  13. .content-area-wrapper{
  14. border: 1px solid $gray-300;
  15. border-radius: $border-radius-sm;
  16. // Sidebar area starts
  17. .sidebar{
  18. .todo-sidebar{
  19. width: $menu-expanded-width;
  20. height: calc(100vh - 13rem);
  21. height: calc(var(--vh, 1vh) * 100 - 13rem);
  22. background-color: $white;
  23. border-top-left-radius: $border-radius-sm;
  24. border-bottom-left-radius: $border-radius-sm;
  25. transition: all .3s ease;
  26. // Close Icon
  27. .sidebar-close-icon{
  28. position: absolute;
  29. right: .25rem;
  30. top: .25rem;
  31. cursor: pointer;
  32. font-size: 1.25rem;
  33. z-index: 5;
  34. visibility: hidden;
  35. }
  36. .todo-app-menu{
  37. width: 100%;
  38. box-shadow: 0 0 15px 0 rgba($pure_black,.05);
  39. padding: .5rem 0;
  40. z-index: 3;
  41. .add-task{
  42. padding: 1px 1.5rem;
  43. margin-bottom: 0.25rem;
  44. }
  45. .sidebar-menu-list{
  46. padding: 0 1.5rem;
  47. position: relative;
  48. overflow: scroll;
  49. height: calc(100% - 5.4rem);
  50. }
  51. .list-group .list-group-item {
  52. padding-left: 0;
  53. padding-right: 0;
  54. &:focus {
  55. background-color: transparent;
  56. }
  57. &:hover{
  58. background-color: transparent;
  59. color: $body_color;
  60. }
  61. &.active {
  62. background-color: transparent;
  63. color: $primary;
  64. }
  65. i{
  66. top: 3px;
  67. }
  68. }
  69. hr{
  70. margin-left: -1.5rem;
  71. margin-right: -1.5rem;
  72. }
  73. }
  74. }
  75. }
  76. // Sidebar area ends
  77. //
  78. // Todo Item Action
  79. .modal{
  80. .todo-item-action {
  81. display: flex;
  82. align-items: center;
  83. justify-content: space-between;
  84. width: 6rem;
  85. margin-bottom: 1.25rem;
  86. .todo-item-info, .todo-item-favorite, .dropdown{
  87. cursor: pointer;
  88. font-size: 1.2rem;
  89. line-height: 1.5;
  90. }
  91. .dropdown .dropdown-menu .dropdown-item {
  92. padding: .14rem 1.428rem;
  93. }
  94. .dropdown-toggle::after{
  95. display: none;
  96. }
  97. }
  98. }
  99. // Todo list wrapper
  100. .app-content{
  101. .content-area-wrapper{
  102. position: relative;
  103. }
  104. }
  105. .completed {
  106. .todo-title, .todo-desc{
  107. text-decoration: line-through;
  108. }
  109. }
  110. // Right content area common css starts
  111. .content-right {
  112. width: calc(100% - #{$menu-expanded-width});
  113. .content-wrapper{
  114. padding: 0;
  115. }
  116. .todo-app-list-wrapper{
  117. border-left: 1px solid $gray-300;
  118. }
  119. // Todo Fixed search
  120. .app-fixed-search{
  121. padding: .35rem .1rem;
  122. border-bottom: 1px solid $gray-300;
  123. background-color: $white;
  124. border-top-right-radius: $border-radius;
  125. .form-control-position{
  126. font-size: calc(#{$spacer} * 1.1);
  127. }
  128. input{
  129. border:0;
  130. background-color: transparent;
  131. &:focus {
  132. border-color: transparent;
  133. box-shadow: none;
  134. }
  135. }
  136. }
  137. // Sidebar toggle icon
  138. .sidebar-toggle{
  139. cursor: pointer;
  140. margin: 0.5rem 0.99rem;
  141. float: left;
  142. line-height: 1;
  143. i{
  144. font-size: 1.75rem;
  145. }
  146. }
  147. // Content area overlay
  148. .app-content-overlay{
  149. top: 0;
  150. left: 0;
  151. right: 0;
  152. bottom: 0;
  153. position: absolute;
  154. display: block;
  155. z-index: 2;
  156. visibility: hidden;
  157. opacity: 0;
  158. transition: all .3s ease;
  159. &.show{
  160. visibility: visible;
  161. transition: all .3s ease;
  162. opacity: 1;
  163. background-color: rgba(0, 0, 0, 0.2);
  164. border-radius: .25rem;
  165. }
  166. }
  167. // ToDo task list area
  168. .todo-task-list{
  169. position: relative;
  170. height: calc(100vh - 16.35rem);
  171. height: calc(var(--vh, 1vh) * 100 - 16.35rem);
  172. .todo-task-list-wrapper{
  173. padding: 0;
  174. margin: 0;
  175. li{
  176. cursor: pointer;
  177. transition: all .2s;
  178. animation: fadeIn 0.5s linear;
  179. animation-fill-mode: both;
  180. position: relative;
  181. padding: 1.1rem 3rem 1.2rem 2rem;
  182. border-top: 1px solid $gray-300;
  183. &:hover {
  184. transform: translateY(-4px);
  185. box-shadow: 0 3px 10px 0 #ccc;
  186. transition: all .2s;
  187. }
  188. .chip-wrapper{
  189. display: flex;
  190. .chip{
  191. margin-right: 0.25rem;
  192. }
  193. }
  194. }
  195. // Set delay per List Item
  196. @for $i from 1 through 5000 {
  197. li:nth-child(#{$i}) {
  198. animation-delay: .1s * $i;
  199. }
  200. }
  201. // Todo Item Action
  202. .todo-item-action {
  203. display: flex;
  204. align-items: center;
  205. justify-content: space-between;
  206. width: 5.75rem;
  207. a{
  208. cursor: pointer;
  209. font-size: 1.2rem;
  210. line-height: 1.5;
  211. }
  212. }
  213. }
  214. // When we search, no-results
  215. .no-results{
  216. display: none;
  217. padding: 1.5rem;
  218. text-align: center;
  219. &.show{
  220. display: block;
  221. }
  222. }
  223. }
  224. }
  225. // Right content area common css End
  226. }
  227. }
  228. // Keyframe animation
  229. @-webkit-keyframes fadeIn {
  230. 0% {
  231. opacity: 0;
  232. top: 100px;
  233. }
  234. 75% {
  235. opacity: 0.5;
  236. top: 0px;
  237. }
  238. 100% {
  239. opacity: 1;
  240. }
  241. }
  242. @include media-breakpoint-down(xs) {
  243. .todo-application .app-content .sidebar-left .todo-sidebar{
  244. left: -1.12rem !important;
  245. }
  246. }
  247. @include media-breakpoint-down(sm) {
  248. .todo-application{
  249. .sidebar-content{
  250. .sidebar-close-icon{
  251. visibility: visible !important;
  252. }
  253. }
  254. }
  255. }
  256. @include media-breakpoint-down(md) {
  257. .todo-application{
  258. .app-content{
  259. .sidebar-left{
  260. // position: relative;
  261. .todo-sidebar{
  262. transform: translateX(-110%);
  263. transition: all .3s ease-in-out;
  264. // transition: transform .25s;
  265. left: 0;
  266. position: fixed;
  267. z-index: 5;
  268. left: -2px;
  269. }
  270. &.show{
  271. .todo-sidebar{
  272. transform: translateX(13%);
  273. transition: all .3s ease;
  274. // transition: transform .25s;
  275. display: block;
  276. }
  277. }
  278. }
  279. .content-right{
  280. width: 100%;
  281. .todo-app-list-wrapper{
  282. border-left: 0;
  283. }
  284. .app-fixed-search{
  285. border-top-left-radius: $border-radius;
  286. }
  287. }
  288. }
  289. }
  290. }
  291. @include media-breakpoint-down(xs) {
  292. .content-right .todo-task-list .todo-title-wrapper, .todo-title-area{
  293. display: block !important;
  294. }
  295. .content-right .todo-task-list .todo-title-wrapper .todo-item-action{
  296. float: none !important;
  297. width: 100% !important;
  298. display: block !important;
  299. margin-top: .5rem;
  300. a{
  301. margin-right: 1rem;
  302. }
  303. }
  304. }
  305. @media (max-width: 349.98px){
  306. .todo-application .content-area-wrapper .sidebar .todo-sidebar{
  307. width: 230px;
  308. }
  309. }
  310. // IE Specific
  311. @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  312. .todo-application .content-area-wrapper .content-right .todo-task-list .todo-task-list-wrapper li{
  313. padding-top: 0;
  314. }
  315. }