_BasemapToggle.scss 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. $basemap_toggle_offset: 5px !default;
  2. $basemap_toggle_size: $button-width--double !default;
  3. @mixin basemapToggle() {
  4. .esri-basemap-toggle {
  5. cursor: pointer;
  6. position: relative;
  7. overflow: visible;
  8. width: $basemap_toggle_size + $basemap_toggle_offset;
  9. height: $basemap_toggle_size + $basemap_toggle_offset;
  10. background-color: transparent;
  11. @include boxShadow("none");
  12. display: flex;
  13. flex-flow: row nowrap;
  14. justify-content: center;
  15. align-items: center;
  16. &:hover {
  17. background-color: transparent;
  18. }
  19. }
  20. .esri-basemap-toggle__container,
  21. .esri-basemap-toggle__image {
  22. width: $basemap_toggle_size;
  23. height: $basemap_toggle_size;
  24. position: absolute;
  25. top: 0;
  26. left: 0;
  27. overflow: hidden;
  28. }
  29. .esri-basemap-toggle__container {
  30. @include defaultBoxShadow();
  31. }
  32. .esri-basemap-toggle__image {
  33. background-color: $background-color;
  34. background-size: cover;
  35. background-repeat: no-repeat;
  36. background-position: 50% 50%;
  37. background-image: url(../base/images/basemap-toggle-64.svg);
  38. }
  39. .esri-basemap-toggle__image--loading {
  40. background-image: unset;
  41. align-items: center;
  42. display: flex;
  43. justify-content: center;
  44. }
  45. .esri-basemap-toggle__image--secondary {
  46. margin-top: $basemap_toggle_offset;
  47. margin-left: $basemap_toggle_offset;
  48. @include defaultBoxShadow();
  49. animation: esri-basemap-slide 2000ms ease-in-out;
  50. }
  51. .esri-basemap-thumbnail__overlay-scrim {
  52. --calcite-scrim-background: rgba(0, 0, 0, 0.5);
  53. color: var(--calcite-ui-text-inverse);
  54. }
  55. .esri-basemap-toggle__image-overlay {
  56. position: absolute;
  57. width: 100%;
  58. height: 100%;
  59. transition: background-color 125ms ease-in-out;
  60. background-color: rgba(255, 255, 255, 0);
  61. display: flex;
  62. align-items: flex-end;
  63. justify-content: center;
  64. .esri-basemap-toggle:hover {
  65. background-color: rgba($interactive-font-color--hover, 0.4);
  66. }
  67. }
  68. .esri-basemap-toggle__title {
  69. flex: 1 0 100%;
  70. height: auto;
  71. font-size: 9px;
  72. font-weight: $font-weight--medium;
  73. line-height: $line-height;
  74. padding: 0.5em;
  75. background-color: rgba(255, 255, 255, 0.7);
  76. text-align: center;
  77. }
  78. .esri-basemap-toggle.esri-disabled {
  79. cursor: auto;
  80. }
  81. .esri-widget.esri-basemap-toggle,
  82. .esri-ui-corner {
  83. .esri-widget.esri-basemap-toggle {
  84. background-color: transparent;
  85. @include boxShadow("none");
  86. }
  87. }
  88. }
  89. ////////////////////////////////////////
  90. // ANIMATIONS
  91. @keyframes esri-basemap-slide {
  92. 0% {
  93. margin-top: 0;
  94. margin-left: 0;
  95. opacity: 0;
  96. }
  97. 75% {
  98. margin-top: 0;
  99. margin-left: 0;
  100. opacity: 0;
  101. }
  102. 100% {
  103. margin-top: $basemap_toggle_offset;
  104. margin-left: $basemap_toggle_offset;
  105. opacity: 1;
  106. }
  107. }
  108. @if $include_BasemapToggle == true {
  109. @include basemapToggle();
  110. }