diff --git a/app/controllers/application.js b/app/controllers/application.js index f42ae2e3..2fd1cc7b 100644 --- a/app/controllers/application.js +++ b/app/controllers/application.js @@ -4,6 +4,7 @@ import { computed, action } from '@ember/object'; import { inject as service } from '@ember/service'; import QueryParams from '@nycplanning/ember-parachute'; import config from 'labs-zola/config/environment'; +import { tracked } from '@glimmer/tracking'; const { defaultLayerGroupState, @@ -87,6 +88,8 @@ export default class ApplicationController extends Controller.extend( @service mainMap; + @tracked leftSideMenuVisibilty = true; + // this action extracts query-param-friendly state of layer groups // for various paramable layers @action @@ -112,4 +115,10 @@ export default class ApplicationController extends Controller.extend( const values = Object.values(state); return values.every(({ changed }) => changed === false); } + + @action + toggleLeftSideMenuVisibility() { + this.leftSideMenuVisibilty = !this.leftSideMenuVisibilty; + console.log('new layer visibility', this.leftSideMenuVisibilty); + } } diff --git a/app/styles/layouts/_l-default.scss b/app/styles/layouts/_l-default.scss index afddf475..605615ba 100644 --- a/app/styles/layouts/_l-default.scss +++ b/app/styles/layouts/_l-default.scss @@ -214,6 +214,51 @@ body.index { } } +.content-toggle-layer-palette-container { + position: relative; + z-index: 3; + box-shadow: 0 2px 0 rgba(0,0,0,0.1); + background-color: $white; + text-align: left; + + @include breakpoint(small down) { + display: none; + } + + @include breakpoint(medium down) { + @include xy-cell( + $size: full, + $output: (base size), + $gutters: 0 + ); + } + + & > .close-button { + position: relative; + margin: 0; + max-inline-size: max-content; + border: 2px solid rgba(0,0,0,0.25); + border-left: none; + border-top-right-radius: 5px; + border-bottom-right-radius: 5px; + + @include breakpoint(large) { + display: block; + position: fixed; + z-index: 3; + top: 50%; + left: 18rem; + background-color: $white; + margin-left: -4px; + padding: 0 rem-calc(6) rem-calc(3); + // box-shadow: -4px 4px 0 rgba(0,0,0,0.1); + } + @include breakpoint(xxlarge) { + left: 18rem; + } + } +} + .content-is-closed { .navigation-area { diff --git a/app/styles/layouts/_l-print.scss b/app/styles/layouts/_l-print.scss index 5ddc940c..8a17104a 100644 --- a/app/styles/layouts/_l-print.scss +++ b/app/styles/layouts/_l-print.scss @@ -154,6 +154,7 @@ // -------------------------------------------------- .hide-for-print, // Hide everything that doesn't print .content-close-button-container, + .content-toggle-layer-palette-container, .layer-groups-container:not(.has-active-layer-groups), .layer-groups-container:not(.open), .layer-groups-container-title > .badge, diff --git a/app/templates/application.hbs b/app/templates/application.hbs index c929e8df..141ade0f 100644 --- a/app/templates/application.hbs +++ b/app/templates/application.hbs @@ -8,7 +8,17 @@ {{/if}}
{{outlet}}