1
0

icons.scss 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617
  1. /**
  2. * @copyright Copyright (c) 2016, John Molakvoæ <skjnldsv@protonmail.com>
  3. * @copyright Copyright (c) 2016, Joas Schilling <coding@schilljs.com>
  4. * @copyright Copyright (c) 2016, Lukas Reschke <lukas@statuscode.ch>
  5. * @copyright Copyright (c) 2016, Roeland Jago Douma <roeland@famdouma.nl>
  6. * @copyright Copyright (c) 2016, Vincent Chan <plus.vincchan@gmail.com>
  7. * @copyright Copyright (c) 2015, Thomas Müller <thomas.mueller@tmit.eu>
  8. * @copyright Copyright (c) 2015, Hendrik Leppelsack <hendrik@leppelsack.de>
  9. * @copyright Copyright (c) 2015, Jan-Christoph Borchardt <hey@jancborchardt.net>
  10. *
  11. * @license GNU AGPL version 3 or any later version
  12. *
  13. */
  14. /* GLOBAL ------------------------------------------------------------------- */
  15. [class^='icon-'], [class*=' icon-'] {
  16. background-repeat: no-repeat;
  17. background-position: center;
  18. min-width: 16px;
  19. min-height: 16px;
  20. }
  21. .icon-breadcrumb {
  22. background-image: url('../img/breadcrumb.svg?v=1');
  23. }
  24. /* LOADING ------------------------------------------------------------------ */
  25. .loading, .loading-small, .icon-loading, .icon-loading-dark, .icon-loading-small, .icon-loading-small-dark {
  26. position: relative;
  27. &:after {
  28. z-index: 2;
  29. content: '';
  30. height: 28px;
  31. width: 28px;
  32. margin: -16px 0 0 -16px;
  33. position: absolute;
  34. top: 50%;
  35. left: 50%;
  36. border-radius: 100%;
  37. -webkit-animation: rotate .8s infinite linear;
  38. animation: rotate .8s infinite linear;
  39. -webkit-transform-origin: center;
  40. -ms-transform-origin: center;
  41. transform-origin: center;
  42. border: 2px solid rgba($color-loading, 0.5);
  43. border-top-color: $color-loading;
  44. }
  45. }
  46. .icon-loading-dark:after,
  47. .icon-loading-small-dark:after {
  48. border: 2px solid rgba($color-loading-dark, 0.5);
  49. border-top-color: $color-loading-dark;
  50. }
  51. .icon-loading-small:after,
  52. .icon-loading-small-dark:after {
  53. height: 12px;
  54. width: 12px;
  55. margin: -8px 0 0 -8px;
  56. }
  57. /* Css replaced elements don't have ::after nor ::before */
  58. img, object, video, button, textarea, input, select, div[contenteditable=true] {
  59. .icon-loading {
  60. background-image: url('../img/loading.gif');
  61. }
  62. .icon-loading-dark {
  63. background-image: url('../img/loading-dark.gif');
  64. }
  65. .icon-loading-small {
  66. background-image: url('../img/loading-small.gif');
  67. }
  68. .icon-loading-small-dark {
  69. background-image: url('../img/loading-small-dark.gif');
  70. }
  71. }
  72. @keyframes rotate {
  73. from {
  74. transform: rotate(0deg);
  75. }
  76. to {
  77. transform: rotate(360deg);
  78. }
  79. }
  80. .icon-32 {
  81. background-size: 32px !important;
  82. }
  83. .icon-white {
  84. filter: invert(100%);
  85. &.icon-shadow {
  86. filter: invert(100%) drop-shadow(1px 1px 4px $color-box-shadow);
  87. }
  88. }
  89. /* ICONS -------------------------------------------------------------------- */
  90. .icon-add {
  91. background-image: url('../img/actions/add.svg?v=1');
  92. }
  93. .icon-address {
  94. background-image: url('../img/actions/address.svg?v=1');
  95. }
  96. .icon-audio {
  97. background-image: url('../img/actions/audio.svg?v=1');
  98. }
  99. /* TODO: to be deprecated; use .icon-audio.icon-white.icon-shadow */
  100. .icon-audio-white {
  101. background-image: url('../img/actions/audio.svg?v=2');
  102. filter: invert(100%) drop-shadow(1px 1px 4px $color-box-shadow);
  103. }
  104. .icon-audio-off {
  105. background-image: url('../img/actions/audio-off.svg?v=1');
  106. }
  107. /* TODO: to be deprecated; use .icon-audio-off.icon-white.icon-shadow */
  108. .icon-audio-off-white {
  109. background-image: url('../img/actions/audio-off.svg?v=1');
  110. filter: invert(100%) drop-shadow(1px 1px 4px $color-box-shadow);
  111. }
  112. .icon-caret {
  113. background-image: url('../img/actions/caret.svg?v=1');
  114. }
  115. .icon-caret-dark {
  116. background-image: url('../img/actions/caret-dark.svg?v=1');
  117. }
  118. .icon-checkmark {
  119. background-image: url('../img/actions/checkmark.svg?v=1');
  120. }
  121. .icon-checkmark-white {
  122. background-image: url('../img/actions/checkmark-white.svg?v=1');
  123. }
  124. .icon-checkmark-color {
  125. background-image: url('../img/actions/checkmark-color.svg?v=1');
  126. }
  127. .icon-clippy {
  128. background-image: url('../img/actions/clippy.svg?v=2');
  129. }
  130. .icon-close {
  131. background-image: url('../img/actions/close.svg?v=1');
  132. }
  133. .icon-close-white {
  134. background-image: url('../img/actions/close-white.svg?v=1');
  135. }
  136. .icon-comment {
  137. background-image: url('../img/actions/comment.svg?v=1');
  138. }
  139. .icon-confirm {
  140. background-image: url('../img/actions/confirm.svg?v=2');
  141. }
  142. .icon-confirm-fade {
  143. background-image: url('../img/actions/confirm-fade.svg?v=2');
  144. }
  145. .icon-confirm-white {
  146. background-image: url('../img/actions/confirm-white.svg?v=2');
  147. }
  148. .icon-delete {
  149. background-image: url('../img/actions/delete.svg?v=1');
  150. &.no-permission {
  151. &:hover, &:focus {
  152. background-image: url('../img/actions/delete.svg?v=1');
  153. }
  154. }
  155. &:hover, &:focus {
  156. background-image: url('../img/actions/delete-hover.svg?v=1');
  157. filter: initial;
  158. }
  159. }
  160. .icon-delete-white {
  161. background-image: url('../img/actions/delete-white.svg?v=1');
  162. &.no-permission {
  163. &:hover, &:focus {
  164. background-image: url('../img/actions/delete-white.svg?v=1');
  165. }
  166. }
  167. &:hover, &:focus {
  168. background-image: url('../img/actions/delete-hover.svg?v=1');
  169. }
  170. }
  171. .icon-details {
  172. background-image: url('../img/actions/details.svg?v=1');
  173. }
  174. .icon-download {
  175. background-image: url('../img/actions/download.svg?v=1');
  176. }
  177. .icon-download-white {
  178. background-image: url('../img/actions/download-white.svg?v=1');
  179. }
  180. .icon-edit {
  181. background-image: url('../img/actions/edit.svg?v=1');
  182. }
  183. .icon-error {
  184. background-image: url('../img/actions/error.svg?v=1');
  185. }
  186. .icon-error-white {
  187. background-image: url('../img/actions/error-white.svg?v=1');
  188. }
  189. .icon-error-color {
  190. background-image: url('../img/actions/error-color.svg?v=1');
  191. }
  192. .icon-external {
  193. background-image: url('../img/actions/external.svg?v=1');
  194. }
  195. .icon-fullscreen {
  196. background-image: url('../img/actions/fullscreen.svg?v=1');
  197. }
  198. /* TODO: to be deprecated; use .icon-fullscreen.icon-white.icon-shadow */
  199. .icon-fullscreen-white {
  200. background-image: url('../img/actions/fullscreen.svg?v=1');
  201. filter: invert(100%) drop-shadow(1px 1px 4px $color-box-shadow);
  202. }
  203. .icon-history {
  204. background-image: url('../img/actions/history.svg?v=1');
  205. }
  206. .icon-info {
  207. background-image: url('../img/actions/info.svg?v=1');
  208. }
  209. .icon-info-white {
  210. background-image: url('../img/actions/info-white.svg?v=1');
  211. }
  212. .icon-logout {
  213. background-image: url('../img/actions/logout.svg?v=1');
  214. }
  215. .icon-mail {
  216. background-image: url('../img/actions/mail.svg?v=1');
  217. }
  218. .icon-menu {
  219. background-image: url('../img/actions/menu.svg?v=1');
  220. }
  221. .icon-more {
  222. background-image: url('../img/actions/more.svg?v=1');
  223. }
  224. .icon-more-white {
  225. background-image: url('../img/actions/more-white.svg?v=1');
  226. }
  227. .icon-password {
  228. background-image: url('../img/actions/password.svg?v=1');
  229. }
  230. .icon-pause {
  231. background-image: url('../img/actions/pause.svg?v=1');
  232. }
  233. .icon-play {
  234. background-image: url('../img/actions/play.svg?v=1');
  235. }
  236. .icon-play-add {
  237. background-image: url('../img/actions/play-add.svg?v=1');
  238. }
  239. .icon-play-next {
  240. background-image: url('../img/actions/play-next.svg?v=1');
  241. }
  242. .icon-play-previous {
  243. background-image: url('../img/actions/play-previous.svg?v=1');
  244. }
  245. .icon-public {
  246. background-image: url('../img/actions/public.svg?v=1');
  247. }
  248. .icon-quota {
  249. background-image: url('../img/actions/quota.svg?v=1');
  250. }
  251. .icon-rename {
  252. background-image: url('../img/actions/rename.svg?v=1');
  253. }
  254. .icon-screen {
  255. background-image: url('../img/actions/screen.svg?v=1');
  256. }
  257. /* TODO: to be deprecated; use .icon-screen.icon-white.icon-shadow */
  258. .icon-screen-white {
  259. background-image: url('../img/actions/screen.svg?v=1');
  260. filter: invert(100%) drop-shadow(1px 1px 4px $color-box-shadow);
  261. }
  262. .icon-screen-off {
  263. background-image: url('../img/actions/screen-off.svg?v=1');
  264. }
  265. /* TODO: to be deprecated; use .icon-screen-off.icon-white.icon-shadow */
  266. .icon-screen-off-white {
  267. background-image: url('../img/actions/screen-off.svg?v=1');
  268. filter: invert(100%) drop-shadow(1px 1px 4px $color-box-shadow);
  269. }
  270. .icon-search {
  271. background-image: url('../img/actions/search.svg?v=1');
  272. }
  273. .icon-search-white {
  274. background-image: url('../img/actions/search-white.svg?v=1');
  275. }
  276. .icon-settings {
  277. background-image: url('../img/actions/settings.svg?v=1');
  278. }
  279. .icon-settings-dark {
  280. background-image: url('../img/actions/settings-dark.svg?v=1');
  281. }
  282. .icon-settings-white {
  283. background-image: url('../img/actions/settings-white.svg?v=1');
  284. }
  285. /* always use icon-shared, AdBlock blocks icon-share */
  286. .icon-shared,
  287. .icon-share {
  288. background-image: url('../img/actions/share.svg?v=1');
  289. }
  290. .icon-sound {
  291. background-image: url('../img/actions/sound.svg?v=1');
  292. }
  293. .icon-sound-off {
  294. background-image: url('../img/actions/sound-off.svg?v=1');
  295. }
  296. .icon-favorite {
  297. background-image: url('../img/actions/star-dark.svg?v=1');
  298. }
  299. .icon-star {
  300. background-image: url('../img/actions/star.svg?v=1');
  301. }
  302. .icon-star-dark {
  303. background-image: url('../img/actions/star-dark.svg?v=1');
  304. }
  305. .icon-starred {
  306. &:hover, &:focus {
  307. background-image: url('../img/actions/star.svg?v=1');
  308. }
  309. background-image: url('../img/actions/starred.svg?v=1');
  310. }
  311. .icon-star {
  312. &:hover, &:focus {
  313. background-image: url('../img/actions/starred.svg?v=1');
  314. }
  315. }
  316. .icon-tag {
  317. background-image: url('../img/actions/tag.svg?v=1');
  318. }
  319. .icon-toggle {
  320. background-image: url('../img/actions/toggle.svg?v=1');
  321. }
  322. .icon-toggle-background {
  323. background-image: url('../img/actions/toggle-background.svg?v=1');
  324. }
  325. .icon-toggle-pictures {
  326. background-image: url('../img/actions/toggle-pictures.svg?v=1');
  327. }
  328. .icon-triangle-e {
  329. background-image: url('../img/actions/triangle-e.svg?v=1');
  330. }
  331. .icon-triangle-n {
  332. background-image: url('../img/actions/triangle-n.svg?v=1');
  333. }
  334. .icon-triangle-s {
  335. background-image: url('../img/actions/triangle-s.svg?v=1');
  336. }
  337. .icon-upload {
  338. background-image: url('../img/actions/upload.svg?v=1');
  339. }
  340. .icon-upload-white {
  341. background-image: url('../img/actions/upload-white.svg?v=1');
  342. }
  343. .icon-user {
  344. background-image: url('../img/actions/user.svg?v=1');
  345. }
  346. .icon-video {
  347. background-image: url('../img/actions/video.svg?v=1');
  348. }
  349. /* TODO: to be deprecated; use .icon-video-off.icon-white.icon-shadow */
  350. .icon-video-white {
  351. background-image: url('../img/actions/video.svg?v=2');
  352. filter: invert(100%) drop-shadow(1px 1px 4px $color-box-shadow);
  353. }
  354. .icon-video-off {
  355. background-image: url('../img/actions/video-off.svg?v=1');
  356. }
  357. /* TODO: to be deprecated; use .icon-video-off.icon-white.icon-shadow */
  358. .icon-video-off-white {
  359. background-image: url('../img/actions/video-off.svg?v=1');
  360. filter: invert(100%) drop-shadow(1px 1px 4px $color-box-shadow);
  361. }
  362. .icon-video-switch {
  363. background-image: url('../img/actions/video-switch.svg?v=1');
  364. }
  365. .icon-view-close {
  366. background-image: url('../img/actions/view-close.svg?v=1');
  367. }
  368. .icon-view-download {
  369. background-image: url('../img/actions/view-download.svg?v=1');
  370. }
  371. .icon-view-next {
  372. background-image: url('../img/actions/arrow-right.svg?v=1');
  373. }
  374. .icon-view-pause {
  375. background-image: url('../img/actions/view-pause.svg?v=1');
  376. }
  377. .icon-view-play {
  378. background-image: url('../img/actions/view-play.svg?v=1');
  379. }
  380. .icon-view-previous {
  381. background-image: url('../img/actions/arrow-left.svg?v=1');
  382. }
  383. /* PLACES ------------------------------------------------------------------- */
  384. .icon-calendar {
  385. background-image: url('../img/places/calendar.svg?v=1');
  386. }
  387. .icon-calendar-dark {
  388. background-image: url('../img/places/calendar-dark.svg?v=1');
  389. }
  390. .icon-contacts {
  391. background-image: url('../img/places/contacts.svg?v=1');
  392. }
  393. .icon-contacts-dark {
  394. background-image: url('../img/places/contacts-dark.svg?v=1');
  395. }
  396. .icon-files {
  397. background-image: url('../img/places/files.svg?v=1');
  398. }
  399. .icon-files-dark {
  400. background-image: url('../img/places/files-dark.svg?v=1');
  401. }
  402. .icon-file, .icon-filetype-text {
  403. background-image: url('../img/filetypes/text.svg?v=1');
  404. }
  405. .icon-folder, .icon-filetype-folder {
  406. background-image: url('../img/filetypes/folder.svg?v=1');
  407. }
  408. .icon-filetype-folder-drag-accept {
  409. background-image: url('../img/filetypes/folder-drag-accept.svg?v=1') !important;
  410. }
  411. .icon-home {
  412. background-image: url('../img/places/home.svg?v=1');
  413. }
  414. .icon-link {
  415. background-image: url('../img/places/link.svg?v=1');
  416. }
  417. .icon-music {
  418. background-image: url('../img/places/music.svg?v=1');
  419. }
  420. .icon-picture {
  421. background-image: url('../img/places/picture.svg?v=1');
  422. }
  423. /* CLIENTS ------------------------------------------------------------------- */
  424. .icon-desktop {
  425. background-image: url('../img/clients/desktop.svg?v=1');
  426. }
  427. .icon-phone {
  428. background-image: url('../img/clients/phone.svg?v=1');
  429. }
  430. .icon-tablet {
  431. background-image: url('../img/clients/tablet.svg?v=1');
  432. }
  433. /* APP CATEGORIES ------------------------------------------------------------------- */
  434. .icon-category-installed {
  435. background-image: url('../img/actions/user.svg?v=1');
  436. }
  437. .icon-category-enabled {
  438. background-image: url('../img/actions/checkmark.svg?v=1');
  439. }
  440. .icon-category-disabled {
  441. background-image: url('../img/actions/close.svg?v=1');
  442. }
  443. .icon-category-app-bundles {
  444. background-image: url('../img/categories/bundles.svg?v=1');
  445. }
  446. .icon-category-updates {
  447. background-image: url('../img/actions/download.svg?v=1');
  448. }
  449. .icon-category-files {
  450. background-image: url('../img/categories/files.svg?v=1');
  451. }
  452. .icon-category-social {
  453. background-image: url('../img/categories/social.svg?v=1');
  454. }
  455. .icon-category-office {
  456. background-image: url('../img/categories/office.svg?v=1');
  457. }
  458. .icon-category-auth {
  459. background-image: url('../img/categories/auth.svg?v=1');
  460. }
  461. .icon-category-monitoring {
  462. background-image: url('../img/categories/monitoring.svg?v=1');
  463. }
  464. .icon-category-multimedia {
  465. background-image: url('../img/categories/multimedia.svg?v=1');
  466. }
  467. .icon-category-organization {
  468. background-image: url('../img/categories/organization.svg?v=1');
  469. }
  470. .icon-category-customization {
  471. background-image: url('../img/categories/customization.svg?v=1');
  472. }
  473. .icon-category-integration {
  474. background-image: url('../img/categories/integration.svg?v=1');
  475. }
  476. .icon-category-tools {
  477. background-image: url('../img/actions/settings-dark.svg?v=1');
  478. }
  479. .icon-category-games {
  480. background-image: url('../img/categories/games.svg?v=1');
  481. }
  482. .icon-category-security {
  483. background-image: url('../img/actions/password.svg?v=1');
  484. }
  485. .icon-category-search {
  486. background-image: url('../img/actions/search.svg?v=1');
  487. }