@@ -238,32 +238,27 @@ class SimpleAdaptiveContainer extends StatelessWidget {
238238 @override
239239 Widget build (BuildContext context) {
240240 final adaptive = AdaptiveContainer (
241- width: {
242- if (widthXs != null ) Breakpoint .xs: widthXs! ,
243- if (widthSm != null ) Breakpoint .sm: widthSm! ,
244- if (widthMd != null ) Breakpoint .md: widthMd! ,
245- if (widthLg != null ) Breakpoint .lg: widthLg! ,
246- if (widthXl != null ) Breakpoint .xl: widthXl! ,
247- },
248- height: {
249- if (heightXs != null ) Breakpoint .xs: heightXs! ,
250- if (heightSm != null ) Breakpoint .sm: heightSm! ,
251- if (heightMd != null ) Breakpoint .md: heightMd! ,
252- if (heightLg != null ) Breakpoint .lg: heightLg! ,
253- if (heightXl != null ) Breakpoint .xl: heightXl! ,
254- },
255- padding: {
256- if (paddingXs != null )
257- Breakpoint .xs: EdgeInsets .all (paddingXs! .toDouble ()),
258- if (paddingSm != null )
259- Breakpoint .sm: EdgeInsets .all (paddingSm! .toDouble ()),
260- if (paddingMd != null )
261- Breakpoint .md: EdgeInsets .all (paddingMd! .toDouble ()),
262- if (paddingLg != null )
263- Breakpoint .lg: EdgeInsets .all (paddingLg! .toDouble ()),
264- if (paddingXl != null )
265- Breakpoint .xl: EdgeInsets .all (paddingXl! .toDouble ()),
266- },
241+ width: _createBreakpointMap (
242+ xs: widthXs,
243+ sm: widthSm,
244+ md: widthMd,
245+ lg: widthLg,
246+ xl: widthXl,
247+ ),
248+ height: _createBreakpointMap (
249+ xs: heightXs,
250+ sm: heightSm,
251+ md: heightMd,
252+ lg: heightLg,
253+ xl: heightXl,
254+ ),
255+ padding: _createBreakpointMap (
256+ xs: paddingXs != null ? EdgeInsets .all (paddingXs! .toDouble ()) : null ,
257+ sm: paddingSm != null ? EdgeInsets .all (paddingSm! .toDouble ()) : null ,
258+ md: paddingMd != null ? EdgeInsets .all (paddingMd! .toDouble ()) : null ,
259+ lg: paddingLg != null ? EdgeInsets .all (paddingLg! .toDouble ()) : null ,
260+ xl: paddingXl != null ? EdgeInsets .all (paddingXl! .toDouble ()) : null ,
261+ ),
267262 color: color,
268263 decoration: decoration,
269264 breakpoints: breakpoints,
@@ -272,4 +267,23 @@ class SimpleAdaptiveContainer extends StatelessWidget {
272267
273268 return adaptive;
274269 }
270+
271+ Map <Breakpoint , T >? _createBreakpointMap <T >({
272+ T ? xs,
273+ T ? sm,
274+ T ? md,
275+ T ? lg,
276+ T ? xl,
277+ }) {
278+ if (xs == null && sm == null && md == null && lg == null && xl == null ) {
279+ return null ;
280+ }
281+ return {
282+ if (xs != null ) Breakpoint .xs: xs,
283+ if (sm != null ) Breakpoint .sm: sm,
284+ if (md != null ) Breakpoint .md: md,
285+ if (lg != null ) Breakpoint .lg: lg,
286+ if (xl != null ) Breakpoint .xl: xl,
287+ };
288+ }
275289}
0 commit comments