Skip to content
This repository was archived by the owner on Jan 6, 2025. It is now read-only.

Commit 3602f7b

Browse files
fix(api, flex); improve logic with flex-basis values
1 parent b9a034a commit 3602f7b

File tree

5 files changed

+8
-12
lines changed

5 files changed

+8
-12
lines changed

src/demo-app/app/github-issues/issue.135.demo.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import {Component} from '@angular/core';
1313
<div class="containerX">
1414
<div fxLayout="column" class="coloredContainerX box">
1515
<div fxFlex="auto" fxFlex.gt-sm="70"> &lt;div fxFlex="auto" fxFlex.gt-sm="70" &gt;</div>
16-
<div fxFlex="auto" fxFlex.gt-sm="14.6"> &lt;div fxFlex="auto" fxFlex.gt-sm="14.6"&gt;
16+
<div fxFlex fxFlex.gt-sm="14.6"> &lt;div fxFlex fxFlex.gt-sm="14.6"&gt;
1717
</div>
1818
<div fxFlex="auto" fxFlex.gt-sm="15.4"> &lt;div fxFlex="auto" fxFlex.gt-sm="15.4"&gt;
1919
</div>

src/demo-app/app/github-issues/issue.266.demo.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ import {Component} from '@angular/core';
2525
<i class="material-icons">&#xE25D;</i>
2626
</div>
2727
<div fxFlex="70%" ngxSplitArea>
28-
<div fxLayout="column" fxFlexFill ngxSplit="column">
28+
<div fxLayout="column" ngxSplit="column" fxFlexFill>
2929
<div fxFlex="50%" ngxSplitArea class="c2r1_body" >
3030
<div class="c2r1_header" >Column #2 - Row #1</div>
3131
<h1>Layout Dashboard</h1>

src/lib/api/flexbox/flex-offset.spec.ts

+1-4
Original file line numberDiff line numberDiff line change
@@ -58,10 +58,7 @@ describe('flex directive', () => {
5858

5959
let dom = fixture.debugElement.children[0].nativeElement;
6060
let isBox = _.hasStyle(dom, 'margin-left', '32px');
61-
let hasFlex = _.hasStyle(dom, 'flex', '1 1 1e-09px') || // IE
62-
_.hasStyle(dom, 'flex', '1 1 1e-9px') || // Chrome
63-
_.hasStyle(dom, 'flex', '1 1 0.000000001px') || // Safari
64-
_.hasStyle(dom, 'flex', '1 1 0px');
61+
let hasFlex = _.hasStyle(dom, 'flex', '1 1 auto');
6562

6663
expect(isBox).toBeTruthy();
6764
expect(hasFlex).toBe(true);

src/lib/api/flexbox/flex.spec.ts

+1-4
Original file line numberDiff line numberDiff line change
@@ -65,10 +65,7 @@ describe('flex directive', () => {
6565

6666
let dom = fixture.debugElement.children[0].nativeElement;
6767
let isBox = _.hasStyle(dom, 'box-sizing', 'border-box');
68-
let hasFlex = _.hasStyle(dom, 'flex', '1 1 1e-09px') || // IE
69-
_.hasStyle(dom, 'flex', '1 1 1e-9px') || // Chrome
70-
_.hasStyle(dom, 'flex', '1 1 0.000000001px') || // Safari
71-
_.hasStyle(dom, 'flex', '1 1 0px');
68+
let hasFlex = _.hasStyle(dom, 'flex', '1 1 auto');
7269

7370
expect(isBox).toBeTruthy();
7471
expect(hasFlex).toBeTruthy();

src/lib/api/flexbox/flex.ts

+4-2
Original file line numberDiff line numberDiff line change
@@ -232,10 +232,12 @@ export class FlexDirective extends BaseFxDirective implements OnInit, OnChanges,
232232

233233
// Set max-width = basis if using layout-wrap
234234
// tslint:disable-next-line:max-line-length
235-
// @see https://github.com/philipwalton/flexbugs#11-min-and-max-size-declarations-are-ignored-when-wrappifl-flex-items
235+
// @see https://github.com/philipwalton/flexbugs#11-min-and-max-size-declarations-are-ignored-when-wrapping-flex-items
236236

237237
css = extendObject(clearStyles, { // fix issue #5345
238-
'flex': `${grow} ${shrink} ${(isValue || this._wrap) ? basis : '100%'}`,
238+
'flex-grow' : `${grow}`,
239+
'flex-shrink' : `${shrink}`,
240+
'flex-basis' : (isValue || this._wrap) ? `${basis}` : '100%'
239241
});
240242
break;
241243
}

0 commit comments

Comments
 (0)