commit cd6bb20de2b36fd59bb7c0c856c4c725d15ba076
parent c155b6d02ea224abc0b58587650e0805ed4a80b8
Author: MTRNord <mtrnord1@gmail.com>
Date: Sun, 11 Feb 2018 23:06:35 +0100
Fix list components
Signed-off-by: MTRNord <mtrnord1@gmail.com>
Diffstat:
12 files changed, 42 insertions(+), 36 deletions(-)
diff --git a/.angular-cli.json b/.angular-cli.json
@@ -50,9 +50,15 @@
"testTsconfig": "tsconfig.spec.json",
"prefix": "app",
"styles": [
- "styles.scss"
+ "../node_modules/font-awesome/scss/font-awesome.scss",
+ "../node_modules/angular-bootstrap-md/scss/bootstrap/bootstrap.scss",
+ "../node_modules/angular-bootstrap-md/scss/mdb-free.scss",
+ "./styles.scss"
+ ],
+ "scripts": [
+ "../node_modules/chart.js/dist/Chart.js",
+ "../node_modules/hammerjs/hammer.min.js"
],
- "scripts": [],
"environmentSource": "environments/environment.ts",
"environments": {
"dev": "environments/environment.ts",
diff --git a/src/app/app.module.ts b/src/app/app.module.ts
@@ -47,6 +47,6 @@ export const config: GalleryConfig = {
providers: [
],
bootstrap: [AppComponent],
- schemas: [ NO_ERRORS_SCHEMA ]
+ // schemas: [ NO_ERRORS_SCHEMA ]
})
export class AppModule { }
diff --git a/src/app/paper/paper.component.html b/src/app/paper/paper.component.html
@@ -35,7 +35,7 @@
<main class="text-center py-5">
<div class="container" *ngIf="isBrowser" gallerize>
- <app-tweet-list [tweetData]="testData"></app-tweet-list>
+ <app-tweet-list [data]="chunkedData"></app-tweet-list>
</div>
</main>
diff --git a/src/app/paper/paper.component.ts b/src/app/paper/paper.component.ts
@@ -1,5 +1,6 @@
import {Component, Inject, PLATFORM_ID, ViewEncapsulation} from '@angular/core';
import {isPlatformBrowser} from '@angular/common';
+import {TweetListComponent} from '../tweet-list/tweet-list.component';
@Component({
selector: 'app-paper',
@@ -10,10 +11,19 @@ import {isPlatformBrowser} from '@angular/common';
export class PaperComponent {
paperTitle = 'Test Paper';
paperSubtitle = 'Something to test';
- testData = [{title: 'Simon Wüllhorst', 'userLink': 'https://twitter.com/des_cilla', text: 'Yaay, neue LTE-Antennen sind da. Es gibt bald endlich wieder schnelles Internet auf dem Dorf. :) #Freifunk', imageURL: 'https://pbs.twimg.com/media/DVmb2UCWsAA8oTD.jpg', createdAt: '09.02.2018', replies: 0, favs: 2, retweets: 1}, {title: 'Jason Scott', retweet: true, 'userLink': 'https://twitter.com/textfiles', imageURL: 'https://pbs.twimg.com/media/DVZ5gw0U0AA_mOu.jpg', createdAt: '07.02.2018', replies: 75, favs: 8003, retweets: 2813}, {title: 'Christian Dresel', 'userLink': 'https://twitter.com/DreselChristian', text: 'Soviel Richtfunk (blaue Linien)... soooo geiiiilllll :) @freifunk @FreifunkFranken #freifunk', imageURL: 'https://pbs.twimg.com/media/DViJcIRX0AAk1TT.jpg:large', createdAt: '08.02.2018', replies: 1, favs: 3, retweets: 0}];
+ testData: Array<object> = [{title: 'Simon Wüllhorst', 'userLink': 'https://twitter.com/des_cilla', text: 'Yaay, neue LTE-Antennen sind da. Es gibt bald endlich wieder schnelles Internet auf dem Dorf. :) #Freifunk', imageURL: 'https://pbs.twimg.com/media/DVmb2UCWsAA8oTD.jpg', createdAt: '09.02.2018', replies: 0, favs: 2, retweets: 1}, {title: 'Jason Scott', retweet: true, 'userLink': 'https://twitter.com/textfiles', imageURL: 'https://pbs.twimg.com/media/DVZ5gw0U0AA_mOu.jpg', createdAt: '07.02.2018', replies: 75, favs: 8003, retweets: 2813}, {title: 'Christian Dresel', 'userLink': 'https://twitter.com/DreselChristian', text: 'Soviel Richtfunk (blaue Linien)... soooo geiiiilllll :) @freifunk @FreifunkFranken #freifunk', imageURL: 'https://pbs.twimg.com/media/DViJcIRX0AAk1TT.jpg:large', createdAt: '08.02.2018', replies: 1, favs: 3, retweets: 0}];
+ public chunkedData = this.chunk(this.testData, 3);
isBrowser: boolean;
constructor(@Inject(PLATFORM_ID) platformId: Object) {
this.isBrowser = isPlatformBrowser(platformId);
}
+
+ chunk(arr, size) {
+ const newArr = [];
+ for (let i = 0; i < arr.length; i += size) {
+ newArr.push(arr.slice(i, i + size));
+ }
+ return newArr;
+ }
}
diff --git a/src/app/papers-list/papers-list.component.html b/src/app/papers-list/papers-list.component.html
@@ -1,4 +1,4 @@
-<div class="card-deck row" *ngFor="let rows of chunkedData">
+<div class="card-deck row" *ngFor="let rows of data">
<div class="card mx-auto" *ngFor="let item of rows" style="max-width: 33.33%">
<!--Card image-->
<div class="overlay hm-white-slight waves-light card-img-top" *ngIf="item.logoURL">
diff --git a/src/app/papers-list/papers-list.component.ts b/src/app/papers-list/papers-list.component.ts
@@ -1,5 +1,4 @@
import {Component, Input} from '@angular/core';
-import {TweetListComponent} from '../tweet-list/tweet-list.component';
@Component({
selector: 'app-papers-list',
@@ -7,16 +6,6 @@ import {TweetListComponent} from '../tweet-list/tweet-list.component';
styleUrls: ['./papers-list.component.scss']
})
export class PapersListComponent {
- @Input() papersData: object[];
- chunkedData = TweetListComponent.chunk(this.papersData, 3);
- constructor() { }
-
- static chunk(arr, size) {
- const newArr = [];
- for (let i = 0; i < arr.length; i += size) {
- newArr.push(arr.slice(i, i + size));
- }
- return newArr;
- }
+ @Input() data;
}
diff --git a/src/app/papers/papers.component.html b/src/app/papers/papers.component.html
@@ -1,5 +1,5 @@
<header>
- <mdb-navbar SideClass="navbar fixed-top navbar-expand-lg navbar-dark scrolling-navbar" [containerInside]="false">
+ <mdb-navbar *ngIf="isBrowser" SideClass="navbar fixed-top navbar-expand-lg navbar-dark scrolling-navbar" [containerInside]="false">
<logo>
<a class="logo navbar-brand" href="#"><strong>Social Networks News</strong></a>
</logo>
@@ -35,7 +35,7 @@
<main class="text-center py-5">
<div class="container">
- <app-papers-list [papersData]="testData"></app-papers-list>
+ <app-papers-list [data]="chunkedData"></app-papers-list>
</div>
</main>
diff --git a/src/app/papers/papers.component.ts b/src/app/papers/papers.component.ts
@@ -9,11 +9,20 @@ import {isPlatformBrowser} from '@angular/common';
export class PapersComponent {
pageTitle = 'Find Papers';
pageSubtitle = 'Get the full blast of different Newspapers';
- testData = [{title: 'Freifunk News', uuid: 0, logoURL: 'https://blog.freifunk.net/wp-content/uploads/2017/03/Freifunk.net_.svg_.png', description: ''}];
+ testData: Array<object> = [{title: 'Freifunk News', uuid: 0, logoURL: 'https://blog.freifunk.net/wp-content/uploads/2017/03/Freifunk.net_.svg_.png', description: ''}];
+ public chunkedData = this.chunk(this.testData, 3);
isBrowser: boolean;
constructor( @Inject(PLATFORM_ID) platformId: Object) {
this.isBrowser = isPlatformBrowser(platformId);
}
+ chunk(arr, size) {
+ const newArr = [];
+ for (let i = 0; i < arr.length; i += size) {
+ newArr.push(arr.slice(i, i + size));
+ }
+ return newArr;
+ }
+
}
diff --git a/src/app/tweet-list/tweet-list.component.html b/src/app/tweet-list/tweet-list.component.html
@@ -1,4 +1,4 @@
-<div class="card-deck row" *ngFor="let rows of chunkedData">
+<div class="card-deck row" *ngFor="let rows of data">
<div class="card card-cascade" *ngFor="let item of rows">
<!--Retweet Badge-->
<div class="card-ribbon card-ribbon-top card-ribbon-left tblue" *ngIf="item.retweet == true">
diff --git a/src/app/tweet-list/tweet-list.component.ts b/src/app/tweet-list/tweet-list.component.ts
@@ -6,16 +6,6 @@ import {Component, Input} from '@angular/core';
styleUrls: ['./tweet-list.component.scss']
})
export class TweetListComponent {
- @Input() tweetData: object[];
- chunkedData = TweetListComponent.chunk(this.tweetData, 3);
+ @Input() data;
- constructor() { }
-
- static chunk(arr, size) {
- const newArr = [];
- for (let i = 0; i < arr.length; i += size) {
- newArr.push(arr.slice(i, i + size));
- }
- return newArr;
- }
}
diff --git a/src/main.ts b/src/main.ts
@@ -10,5 +10,7 @@ if (environment.production) {
enableProdMode();
}
-platformBrowserDynamic().bootstrapModule(AppModule)
- .catch(err => console.log(err));
+document.addEventListener('DOMContentLoaded', () => {
+ platformBrowserDynamic().bootstrapModule(AppModule)
+ .catch(err => console.log(err));
+});
diff --git a/tslint.json b/tslint.json
@@ -134,7 +134,7 @@
"use-input-property-decorator": true,
"use-output-property-decorator": true,
"use-host-property-decorator": true,
- "no-input-rename": true,
+ "no-input-rename": false,
"no-output-rename": true,
"use-life-cycle-interface": true,
"use-pipe-transform-interface": true,