Skip to content

Commit 92b121c

Browse files
pdanpdanrstoenescu
authored andcommitted
QStepper: allow imbricated QSteppers with different orientation (quasarframework#2624)
close quasarframework#2620
1 parent afb4ce0 commit 92b121c

File tree

3 files changed

+176
-130
lines changed

3 files changed

+176
-130
lines changed

dev/components/components/stepper.vue

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,50 @@
8888
</q-stepper-navigation>
8989
</q-step>
9090
</q-stepper>
91+
92+
<q-stepper class="q-my-md" :no-header-navigation="!backnav" :alternative-labels="alt" :contractable="contractable">
93+
<q-step default title="First Step" subtitle="Here we go">
94+
<q-stepper vertical :no-header-navigation="!backnav" :alternative-labels="alt" :contractable="contractable">
95+
<q-step default title="First Step" subtitle="Here we go">
96+
...Step content, components, ...
97+
</q-step>
98+
<q-step title="Step 2">...</q-step>
99+
<q-step title="Step 3" subtitle="Review and submit">...</q-step>
100+
<q-stepper-navigation>
101+
<q-btn :color="color" flat >Back</q-btn>
102+
<q-btn :color="color" class="q-ml-sm">Next</q-btn>
103+
</q-stepper-navigation>
104+
</q-stepper>
105+
</q-step>
106+
<q-step title="Step 2">...</q-step>
107+
<q-step title="Step 3" subtitle="Review and submit">...</q-step>
108+
<q-stepper-navigation>
109+
<q-btn :color="color" flat >Back</q-btn>
110+
<q-btn :color="color" class="q-ml-sm">Next</q-btn>
111+
</q-stepper-navigation>
112+
</q-stepper>
113+
114+
<q-stepper vertical class="q-my-md" :no-header-navigation="!backnav" :alternative-labels="alt" :contractable="contractable">
115+
<q-step default title="First Step" subtitle="Here we go">
116+
<q-stepper :no-header-navigation="!backnav" :alternative-labels="alt" :contractable="contractable">
117+
<q-step default title="First Step" subtitle="Here we go">
118+
...Step content, components, ...
119+
</q-step>
120+
<q-step title="Step 2">...</q-step>
121+
<q-step title="Step 3" subtitle="Review and submit">...</q-step>
122+
<q-stepper-navigation>
123+
<q-btn :color="color" flat >Back</q-btn>
124+
<q-btn :color="color" class="q-ml-sm">Next</q-btn>
125+
</q-stepper-navigation>
126+
</q-stepper>
127+
</q-step>
128+
<q-step title="Step 2">...</q-step>
129+
<q-step title="Step 3" subtitle="Review and submit">...</q-step>
130+
<q-stepper-navigation>
131+
<q-btn :color="color" flat >Back</q-btn>
132+
<q-btn :color="color" class="q-ml-sm">Next</q-btn>
133+
</q-stepper-navigation>
134+
</q-stepper>
91135
</div>
92136
</div>
93137
</template>

src/components/stepper/stepper.ios.styl

Lines changed: 66 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -73,86 +73,87 @@
7373
.q-stepper-step-content
7474
color black
7575

76-
.q-stepper-horizontal
77-
.q-stepper-step-inner
78-
padding 24px
76+
.q-stepper-horizontal >
77+
.q-stepper-header
78+
.q-stepper-tab
79+
overflow hidden
80+
.q-stepper-first .q-stepper-dot:before,
81+
.q-stepper-last .q-stepper-label:after,
82+
.q-stepper-last .q-stepper-dot:after
83+
display none
84+
.q-stepper-line
85+
&:before, &:after
86+
position absolute
87+
top 50%
88+
height 1px
89+
width 100vw
90+
background $stepper-divider-color
91+
.q-stepper-label:after, .q-stepper-dot:after
92+
content ''
93+
left 100%
94+
margin-left 8px
95+
.q-stepper-dot:before
96+
content ''
97+
right 100%
98+
margin-right 8px
7999
.q-stepper-nav
80100
margin 0 16px 8px
81-
.q-stepper-step .q-stepper-nav
82-
margin 16px 0 0
83-
> div.col
84-
display none
85-
86-
.q-stepper-first .q-stepper-dot:before,
87-
.q-stepper-last .q-stepper-label:after,
88-
.q-stepper-last .q-stepper-dot:after
89-
display none
90-
.q-stepper-tab
91-
overflow hidden
92-
.q-stepper-line
93-
&:before, &:after
94-
position absolute
95-
top 50%
96-
height 1px
97-
width 100vw
98-
background $stepper-divider-color
99-
.q-stepper-label:after, .q-stepper-dot:after
100-
content ''
101-
left 100%
102-
margin-left 8px
103-
.q-stepper-dot:before
104-
content ''
105-
right 100%
106-
margin-right 8px
101+
.q-stepper-step
102+
.q-stepper-nav
103+
margin 16px 0 0
104+
> div.col
105+
display none
106+
> .q-stepper-step-content > .q-stepper-step-inner
107+
padding 24px
107108

108109
.q-stepper-vertical
109110
padding 8px 0 18px
110-
.q-stepper-tab
111-
padding 12px 16px
112-
.q-stepper-label
113-
padding-top 4px
114-
.q-stepper-title
115-
line-height 18px
116-
.q-stepper-step-inner
117-
padding 0 24px 24px 48px
111+
.q-stepper-vertical >
118112
.q-stepper-nav
119113
margin-top 16px
120114
> div.col
121115
display none
122-
123-
.q-stepper-first .q-stepper-dot:before,
124-
.q-stepper-last .q-stepper-dot:after
125-
display none
126116
.q-stepper-step
127117
overflow hidden
128-
.q-stepper-dot
129-
&:before, &:after
130-
content ''
131-
position absolute
132-
left 50%
133-
width 1px
134-
height 100vh
135-
background $stepper-divider-color
136-
.q-stepper-dot:before
137-
bottom 100%
138-
margin-bottom 8px
139-
.q-stepper-dot:after
140-
top 100%
141-
margin-top 8px
118+
> .q-stepper-step-content > .q-stepper-step-inner
119+
padding 0 24px 24px 48px
120+
> .q-stepper-tab
121+
padding 12px 16px
122+
.q-stepper-dot
123+
&:before, &:after
124+
content ''
125+
position absolute
126+
left 50%
127+
width 1px
128+
height 100vh
129+
background $stepper-divider-color
130+
.q-stepper-dot:before
131+
bottom 100%
132+
margin-bottom 8px
133+
.q-stepper-dot:after
134+
top 100%
135+
margin-top 8px
136+
.q-stepper-label
137+
padding-top 4px
138+
.q-stepper-title
139+
line-height 18px
140+
&.q-stepper-first .q-stepper-dot:before,
141+
&.q-stepper-last .q-stepper-dot:after
142+
display none
142143

143144
body.desktop .q-stepper-tab.step-navigation:hover
144145
background $stepper-hover-background
145146

146147
@media (max-width $breakpoint-sm-max)
147-
.q-stepper-horizontal.q-stepper-contractable
148+
.q-stepper-horizontal.q-stepper-contractable >
148149
.q-stepper-header
149150
min-height 72px
150-
.q-stepper-tab
151-
padding 24px 0
152-
.q-stepper-tab:not(:last-child)
153-
.q-stepper-dot:after
154-
display block !important
155-
.q-stepper-dot
156-
margin 0
157-
.q-stepper-label
158-
display none
151+
.q-stepper-tab
152+
padding 24px 0
153+
&:not(:last-child)
154+
.q-stepper-dot:after
155+
display block !important
156+
.q-stepper-dot
157+
margin 0
158+
.q-stepper-label
159+
display none

src/components/stepper/stepper.mat.styl

Lines changed: 66 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -71,86 +71,87 @@
7171
.q-stepper-step-content
7272
color black
7373

74-
.q-stepper-horizontal
75-
.q-stepper-step-inner
76-
padding 24px
74+
.q-stepper-horizontal >
75+
.q-stepper-header
76+
.q-stepper-tab
77+
overflow hidden
78+
.q-stepper-first .q-stepper-dot:before,
79+
.q-stepper-last .q-stepper-label:after,
80+
.q-stepper-last .q-stepper-dot:after
81+
display none
82+
.q-stepper-line
83+
&:before, &:after
84+
position absolute
85+
top 50%
86+
height 1px
87+
width 100vw
88+
background $stepper-divider-color
89+
.q-stepper-label:after, .q-stepper-dot:after
90+
content ''
91+
left 100%
92+
margin-left 8px
93+
.q-stepper-dot:before
94+
content ''
95+
right 100%
96+
margin-right 8px
7797
.q-stepper-nav
7898
margin 0 16px 8px
79-
.q-stepper-step .q-stepper-nav
80-
margin 16px 0 0
81-
> div.col
82-
display none
83-
84-
.q-stepper-first .q-stepper-dot:before,
85-
.q-stepper-last .q-stepper-label:after,
86-
.q-stepper-last .q-stepper-dot:after
87-
display none
88-
.q-stepper-tab
89-
overflow hidden
90-
.q-stepper-line
91-
&:before, &:after
92-
position absolute
93-
top 50%
94-
height 1px
95-
width 100vw
96-
background $stepper-divider-color
97-
.q-stepper-label:after, .q-stepper-dot:after
98-
content ''
99-
left 100%
100-
margin-left 8px
101-
.q-stepper-dot:before
102-
content ''
103-
right 100%
104-
margin-right 8px
99+
.q-stepper-step
100+
.q-stepper-nav
101+
margin 16px 0 0
102+
> div.col
103+
display none
104+
> .q-stepper-step-content > .q-stepper-step-inner
105+
padding 24px
105106

106107
.q-stepper-vertical
107108
padding 8px 0 18px
108-
.q-stepper-tab
109-
padding 12px 16px
110-
.q-stepper-label
111-
padding-top 4px
112-
.q-stepper-title
113-
line-height 18px
114-
.q-stepper-step-inner
115-
padding 0 24px 24px 48px
109+
.q-stepper-vertical >
116110
.q-stepper-nav
117111
margin-top 16px
118112
> div.col
119113
display none
120-
121-
.q-stepper-first .q-stepper-dot:before,
122-
.q-stepper-last .q-stepper-dot:after
123-
display none
124114
.q-stepper-step
125115
overflow hidden
126-
.q-stepper-dot
127-
&:before, &:after
128-
content ''
129-
position absolute
130-
left 50%
131-
width 1px
132-
height 100vh
133-
background $stepper-divider-color
134-
.q-stepper-dot:before
135-
bottom 100%
136-
margin-bottom 8px
137-
.q-stepper-dot:after
138-
top 100%
139-
margin-top 8px
116+
> .q-stepper-step-content > .q-stepper-step-inner
117+
padding 0 24px 24px 48px
118+
> .q-stepper-tab
119+
padding 12px 16px
120+
.q-stepper-dot
121+
&:before, &:after
122+
content ''
123+
position absolute
124+
left 50%
125+
width 1px
126+
height 100vh
127+
background $stepper-divider-color
128+
.q-stepper-dot:before
129+
bottom 100%
130+
margin-bottom 8px
131+
.q-stepper-dot:after
132+
top 100%
133+
margin-top 8px
134+
.q-stepper-label
135+
padding-top 4px
136+
.q-stepper-title
137+
line-height 18px
138+
&.q-stepper-first .q-stepper-dot:before,
139+
&.q-stepper-last .q-stepper-dot:after
140+
display none
140141

141142
body.desktop .q-stepper-tab.step-navigation:hover
142143
background $stepper-hover-background
143144

144145
@media (max-width $breakpoint-sm-max)
145-
.q-stepper-horizontal.q-stepper-contractable
146+
.q-stepper-horizontal.q-stepper-contractable >
146147
.q-stepper-header
147148
min-height 72px
148-
.q-stepper-tab
149-
padding 24px 0
150-
.q-stepper-tab:not(:last-child)
151-
.q-stepper-dot:after
152-
display block !important
153-
.q-stepper-dot
154-
margin 0
155-
.q-stepper-label
156-
display none
149+
.q-stepper-tab
150+
padding 24px 0
151+
&:not(:last-child)
152+
.q-stepper-dot:after
153+
display block !important
154+
.q-stepper-dot
155+
margin 0
156+
.q-stepper-label
157+
display none

0 commit comments

Comments
 (0)