@@ -106,59 +106,61 @@ export const groupCards = (
106
106
} ;
107
107
}
108
108
case 'flexible/general' : {
109
- const splash = curated . filter ( ( { card } ) => card . group === '1' ) ;
109
+ const hasv2Grouping = curated . some (
110
+ ( { card } ) => card . group === '3' ,
111
+ ) ;
112
+ const splashGroup = hasv2Grouping ? '3' : '1' ;
113
+ const splash = curated . filter (
114
+ ( { card } ) => card . group === splashGroup ,
115
+ ) ;
116
+
117
+ // Backfilled cards will always be treated as 'standard' cards
118
+ const standard = [
119
+ ...curated . filter ( ( { card } ) => card . group !== splashGroup ) ,
120
+ ...backfill ,
121
+ ] ;
122
+
123
+ const enhanceOptions = ( offset = 0 ) => ( {
124
+ cardInTagPage : false ,
125
+ editionId,
126
+ discussionApiUrl,
127
+ offset,
128
+ } ) ;
110
129
111
130
return {
112
131
snap : [ ] ,
113
132
huge : [ ] ,
114
133
veryBig : [ ] ,
115
134
big : [ ] ,
116
- splash : enhanceCards ( splash , {
117
- cardInTagPage : false ,
118
- editionId,
119
- discussionApiUrl,
120
- } ) ,
121
- standard : enhanceCards (
122
- // Backfilled cards will always be treated as 'standard' cards
123
- curated
124
- . filter ( ( { card } ) => card . group === '0' )
125
- . concat ( backfill ) ,
126
- {
127
- cardInTagPage : false ,
128
- offset : splash . length ,
129
- editionId,
130
- discussionApiUrl,
131
- } ,
132
- ) ,
135
+ splash : enhanceCards ( splash , enhanceOptions ( ) ) ,
136
+ standard : enhanceCards ( standard , enhanceOptions ( splash . length ) ) ,
133
137
} ;
134
138
}
135
139
case 'flexible/special' :
136
140
case 'dynamic/package' : {
137
141
const snap = curated . filter ( ( { card } ) => card . group === '1' ) ;
142
+
143
+ // Backfilled cards will always be treated as 'standard' cards
144
+ const standard = [
145
+ ...curated . filter ( ( { card } ) => card . group === '0' ) ,
146
+ ...backfill ,
147
+ ] ;
148
+ const enhanceOptions = ( offset = 0 ) => ( {
149
+ cardInTagPage : false ,
150
+ editionId,
151
+ discussionApiUrl,
152
+ offset,
153
+ } ) ;
154
+
138
155
return {
139
156
// Splash is not supported on these container types
140
157
splash : [ ] ,
141
158
huge : [ ] ,
142
159
veryBig : [ ] ,
143
160
big : [ ] ,
144
161
// Only 'snap' and 'standard' are supported by dynamic/package
145
- snap : enhanceCards ( snap , {
146
- cardInTagPage : false ,
147
- editionId,
148
- discussionApiUrl,
149
- } ) ,
150
- standard : enhanceCards (
151
- // Backfilled cards will always be treated as 'standard' cards
152
- curated
153
- . filter ( ( { card } ) => card . group === '0' )
154
- . concat ( backfill ) ,
155
- {
156
- cardInTagPage : false ,
157
- offset : snap . length ,
158
- editionId,
159
- discussionApiUrl,
160
- } ,
161
- ) ,
162
+ snap : enhanceCards ( snap , enhanceOptions ( ) ) ,
163
+ standard : enhanceCards ( standard , enhanceOptions ( snap . length ) ) ,
162
164
} ;
163
165
}
164
166
default :
0 commit comments