@rhtml/modifiers 0.0.115 → 0.0.116

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,7 @@
1
1
  import { MediaQueryAttribute, MediaQueryEvent } from '@rhtml/custom-attributes';
2
2
  interface Styles {
3
3
  margin: string;
4
- flex: string;
4
+ flex?: string;
5
5
  }
6
6
  export declare class LayoutGap extends MediaQueryAttribute<Styles> {
7
7
  private prevValue;
@@ -45,20 +45,28 @@ let LayoutGap = class LayoutGap extends custom_attributes_1.MediaQueryAttribute
45
45
  }
46
46
  modify() {
47
47
  const layout = this.element.getAttribute('fxlayout');
48
- let margin = `0px ${this.value} ${this.value} 0px`;
49
- if (layout === 'row') {
50
- margin = `0px ${this.value} 0px 0px`;
48
+ const isRow = layout === 'row';
49
+ const isColumn = layout === 'column';
50
+ let margin = [this.value];
51
+ if (isRow) {
52
+ margin = [0, this.value, 0, 0];
51
53
  }
52
- if (layout === 'column') {
53
- margin = `0px 0px ${this.value} 0px`;
54
+ if (isColumn) {
55
+ margin = [0, 0, this.value, 0];
54
56
  }
55
57
  const divs = this.element.children;
56
58
  for (const div of divs) {
57
59
  this.setStyles({
58
60
  flex: '1 1 25%',
59
- margin,
61
+ margin: margin.join(' '),
60
62
  })(div);
61
63
  }
64
+ const lastElement = this.element.children[this.element.children.length - 1];
65
+ if (lastElement && isRow) {
66
+ this.setStyles({
67
+ margin: null,
68
+ })(lastElement);
69
+ }
62
70
  }
63
71
  };
64
72
  LayoutGap = __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"layout-gap.js","sourceRoot":"","sources":["../../src/layout/layout-gap.ts"],"names":[],"mappings":";;;;;;;;;AAAA,gEAKkC;AAgBlC,IAAa,SAAS,GAAtB,MAAa,SAAU,SAAQ,uCAA2B;IAGxD,MAAM;QACJ,IAAI,CAAC,MAAM,EAAE,CAAC;QACd,KAAK,CAAC,MAAM,EAAE,CAAC;IACjB,CAAC;IAED,SAAS;QACP,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,KAAK,CAAC,SAAS,EAAE,CAAC;IACpB,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,MAAM,EAAE,CAAC;IAChB,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,MAAM,EAAE,CAAC;IAChB,CAAC;IAED,iBAAiB,CAAC,CAAC,EAAE,SAAS,CAAkB;;QAC9C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC;QAC5B,IAAI,CAAC,KAAK,GAAG,MAAA,SAAS,CAAC,KAAK,mCAAI,IAAI,CAAC,KAAK,CAAC;QAC3C,IAAI,CAAC,MAAM,EAAE,CAAC;IAChB,CAAC;IAED,gBAAgB;;QACd,IAAI,CAAC,KAAK,GAAG,MAAA,IAAI,CAAC,SAAS,mCAAI,IAAI,CAAC,KAAK,CAAC;QAC1C,IAAI,CAAC,MAAM,EAAE,CAAC;IAChB,CAAC;IAEO,KAAK;QACX,MAAM,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAkB,CAAC;QACzD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;YACtB,IAAI,CAAC,SAAS,CAAC;gBACb,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,IAAI;aACb,CAAC,CAAC,GAAG,CAAC,CAAC;SACT;IACH,CAAC;IAEO,MAAM;QACZ,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;QACrD,IAAI,MAAM,GAAG,OAAO,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,MAAM,CAAC;QACnD,IAAI,MAAM,KAAK,KAAK,EAAE;YACpB,MAAM,GAAG,OAAO,IAAI,CAAC,KAAK,UAAU,CAAC;SACtC;QACD,IAAI,MAAM,KAAK,QAAQ,EAAE;YACvB,MAAM,GAAG,WAAW,IAAI,CAAC,KAAK,MAAM,CAAC;SACtC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;QACnC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;YACtB,IAAI,CAAC,SAAS,CAAC;gBACb,IAAI,EAAE,SAAS;gBACf,MAAM;aACP,CAAC,CAAC,GAAG,CAAC,CAAC;SACT;IACH,CAAC;CACF,CAAA;AA3DY,SAAS;IATrB,IAAA,4BAAQ,EAAC;QACR,QAAQ,EAAE,aAAa;QACvB,OAAO,EAAE;YACP,SAAS,EAAE,IAAI;YACf,OAAO,EAAE,IAAI;YACb,UAAU,EAAE,IAAI;YAChB,eAAe,EAAE,IAAA,6CAAyB,EAAC,UAAU,CAAC;SACvD;KACF,CAAC;GACW,SAAS,CA2DrB;AA3DY,8BAAS"}
1
+ {"version":3,"file":"layout-gap.js","sourceRoot":"","sources":["../../src/layout/layout-gap.ts"],"names":[],"mappings":";;;;;;;;;AAAA,gEAKkC;AAgBlC,IAAa,SAAS,GAAtB,MAAa,SAAU,SAAQ,uCAA2B;IAGxD,MAAM;QACJ,IAAI,CAAC,MAAM,EAAE,CAAC;QACd,KAAK,CAAC,MAAM,EAAE,CAAC;IACjB,CAAC;IAED,SAAS;QACP,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,KAAK,CAAC,SAAS,EAAE,CAAC;IACpB,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,MAAM,EAAE,CAAC;IAChB,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,MAAM,EAAE,CAAC;IAChB,CAAC;IAED,iBAAiB,CAAC,CAAC,EAAE,SAAS,CAAkB;;QAC9C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC;QAC5B,IAAI,CAAC,KAAK,GAAG,MAAA,SAAS,CAAC,KAAK,mCAAI,IAAI,CAAC,KAAK,CAAC;QAC3C,IAAI,CAAC,MAAM,EAAE,CAAC;IAChB,CAAC;IAED,gBAAgB;;QACd,IAAI,CAAC,KAAK,GAAG,MAAA,IAAI,CAAC,SAAS,mCAAI,IAAI,CAAC,KAAK,CAAC;QAC1C,IAAI,CAAC,MAAM,EAAE,CAAC;IAChB,CAAC;IAEO,KAAK;QACX,MAAM,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAkB,CAAC;QACzD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;YACtB,IAAI,CAAC,SAAS,CAAC;gBACb,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,IAAI;aACb,CAAC,CAAC,GAAG,CAAC,CAAC;SACT;IACH,CAAC;IAEO,MAAM;QACZ,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;QACrD,MAAM,KAAK,GAAG,MAAM,KAAK,KAAK,CAAC;QAC/B,MAAM,QAAQ,GAAG,MAAM,KAAK,QAAQ,CAAC;QACrC,IAAI,MAAM,GAAwB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/C,IAAI,KAAK,EAAE;YACT,MAAM,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;SAChC;QACD,IAAI,QAAQ,EAAE;YACZ,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;SAChC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;QACnC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;YACtB,IAAI,CAAC,SAAS,CAAC;gBACb,IAAI,EAAE,SAAS;gBACf,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;aACzB,CAAC,CAAC,GAAG,CAAC,CAAC;SACT;QACD,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC5E,IAAI,WAAW,IAAI,KAAK,EAAE;YACxB,IAAI,CAAC,SAAS,CAAC;gBACb,MAAM,EAAE,IAAI;aACb,CAAC,CAAC,WAAW,CAAC,CAAC;SACjB;IACH,CAAC;CACF,CAAA;AAnEY,SAAS;IATrB,IAAA,4BAAQ,EAAC;QACR,QAAQ,EAAE,aAAa;QACvB,OAAO,EAAE;YACP,SAAS,EAAE,IAAI;YACf,OAAO,EAAE,IAAI;YACb,UAAU,EAAE,IAAI;YAChB,eAAe,EAAE,IAAA,6CAAyB,EAAC,UAAU,CAAC;SACvD;KACF,CAAC;GACW,SAAS,CAmErB;AAnEY,8BAAS"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rhtml/modifiers",
3
- "version": "0.0.115",
3
+ "version": "0.0.116",
4
4
  "description": "Reactive HyperText Markup Language",
5
5
  "scripts": {
6
6
  "start": "npx parcel ./examples/index.html --out-dir build/examples",
@@ -17,7 +17,7 @@
17
17
  },
18
18
  "dependencies": {
19
19
  "@rxdi/lit-html": "^0.7.133",
20
- "@rhtml/custom-attributes": "0.0.115"
20
+ "@rhtml/custom-attributes": "0.0.116"
21
21
  },
22
22
  "devDependencies": {},
23
23
  "author": "Kristiyan Tachev",
@@ -7,7 +7,7 @@ import {
7
7
 
8
8
  interface Styles {
9
9
  margin: string;
10
- flex: string;
10
+ flex?: string;
11
11
  }
12
12
 
13
13
  @Modifier({
@@ -63,19 +63,27 @@ export class LayoutGap extends MediaQueryAttribute<Styles> {
63
63
 
64
64
  private modify() {
65
65
  const layout = this.element.getAttribute('fxlayout');
66
- let margin = `0px ${this.value} ${this.value} 0px`;
67
- if (layout === 'row') {
68
- margin = `0px ${this.value} 0px 0px`;
66
+ const isRow = layout === 'row';
67
+ const isColumn = layout === 'column';
68
+ let margin: (string | number)[] = [this.value];
69
+ if (isRow) {
70
+ margin = [0, this.value, 0, 0];
69
71
  }
70
- if (layout === 'column') {
71
- margin = `0px 0px ${this.value} 0px`;
72
+ if (isColumn) {
73
+ margin = [0, 0, this.value, 0];
72
74
  }
73
75
  const divs = this.element.children;
74
76
  for (const div of divs) {
75
77
  this.setStyles({
76
78
  flex: '1 1 25%',
77
- margin,
79
+ margin: margin.join(' '),
78
80
  })(div);
79
81
  }
82
+ const lastElement = this.element.children[this.element.children.length - 1];
83
+ if (lastElement && isRow) {
84
+ this.setStyles({
85
+ margin: null,
86
+ })(lastElement);
87
+ }
80
88
  }
81
89
  }