11<template >
22 <q-layout view =" hHh lpR fFf" >
3+ <q-resize-observer v-on:resize =" onResize" />
34 <q-header id =" header-inner" >
45 <a
56 class =" skip-to-main-content-link"
1213 Skip to main content
1314 </a >
1415 <Header
15- v-on:togglePreview =" onTogglePreview"
16+ v-bind:show-open-preview-button =" isPreviewDrawer"
17+ v-on:togglePreview =" togglePreview"
1618 />
1719 </q-header >
1820
1921 <q-drawer
2022 id =" preview-drawer"
21- elevated
22- overlay
2323 side =" right"
24- v-model =" isPreviewDrawerEnabled"
24+ v-bind:breakpoint =" 1440"
25+ v-bind:overlay =" isPreviewDrawer"
26+ v-model =" isPreviewDrawerOpen"
2527 v-bind:width =" 600"
2628 >
27- <div id =" preview-button-close" >
29+ <div
30+ v-if =" isPreviewDrawer"
31+ id =" preview-button-close"
32+ >
2833 <q-btn
2934 icon =" close"
30- v-on:click =" onTogglePreview "
35+ v-on:click =" togglePreview "
3136 >
3237 Close preview
3338 </q-btn >
4449
4550 <q-page-container >
4651 <q-page
47- class =" row"
52+ class =" row bg-secondary "
4853 id =" main"
4954 role =" main"
5055 tabindex =" 0"
6469 <StepperActions />
6570 </div >
6671 </div >
67- <div
68- id =" preview-static"
69- class =" col-12 col-lg-5 gt-md"
70- >
71- <div id =" preview-content" >
72- <Preview />
73- </div >
74-
75- <div id =" preview-button-bar" >
76- <DownloadButton v-if =" isNotFinish" />
77- </div >
78- </div >
7972 </q-page >
8073 </q-page-container >
8174
@@ -93,6 +86,7 @@ import Header from 'components/Header.vue'
9386import Preview from ' components/Preview.vue'
9487import Stepper from ' components/Stepper.vue'
9588import StepperActions from ' components/StepperActions.vue'
89+ import { useQuasar } from ' quasar'
9690import { useRoute } from ' vue-router'
9791
9892export default defineComponent ({
@@ -106,7 +100,10 @@ export default defineComponent({
106100 StepperActions
107101 },
108102 setup () {
109- const isPreviewDrawerEnabled = ref (false )
103+ const q = useQuasar ()
104+ const screenIsBigEnough = computed (() => q .screen .lg || q .screen .xl )
105+ const isPreviewDrawerOpen = ref (screenIsBigEnough .value )
106+ const onResize = () => { isPreviewDrawerOpen .value = false }
110107 return {
111108 focusMain : () => {
112109 const element = window .document .getElementById (' main' )
@@ -117,8 +114,10 @@ export default defineComponent({
117114 const currentPath = useRoute ().path
118115 return currentPath !== ' /finish'
119116 }),
120- isPreviewDrawerEnabled ,
121- onTogglePreview : () => { isPreviewDrawerEnabled .value = ! isPreviewDrawerEnabled .value },
117+ isPreviewDrawerOpen ,
118+ onResize ,
119+ togglePreview : () => { isPreviewDrawerOpen .value = ! isPreviewDrawerOpen .value },
120+ isPreviewDrawer: computed (() => q .screen .sm || q .screen .md ),
122121 skipToMainFocused: ref (false )
123122 }
124123 }
@@ -131,15 +130,15 @@ export default defineComponent({
131130.skip-to-main-content-link {
132131 position : absolute ;
133132 left : -9999px ;
134- z-index : 999 ;
135- padding : 1em ;
136- background-color : black ;
137- color : white ;
138- opacity : 0 ;
133+ z-index : 999 ;
134+ padding : 1em ;
135+ background-color : black ;
136+ color : white ;
137+ opacity : 0 ;
139138}
140139.skip-to-main-content-link :focus {
141- left : 50% ;
142- transform : translateX (-50% );
143- opacity : 1 ;
140+ left : 50% ;
141+ transform : translateX (-50% );
142+ opacity : 1 ;
144143}
145144 </style >
0 commit comments