ngx-firebase-cms
Version:
Angular Content Management System using Google Firebase (Authentication, Storage & Firestore)
115 lines • 8.1 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { Component } from '@angular/core';
import { AuthService } from '../../service/auth.service';
import { AngularFirestore } from '@angular/fire/firestore';
import { HelperService } from '../../service/helper.service';
import { mergeMap, map } from 'rxjs/operators';
export class FormsComponent {
/**
* @param {?} auth
* @param {?} afs
* @param {?} helper
*/
constructor(auth, afs, helper) {
this.auth = auth;
this.afs = afs;
this.helper = helper;
this.titlebar = {
title: "Form Builder",
description: "Form builder helps you to create form for your other users",
breadcrumbs: [
{
title: "Form Builder",
icon: 'hdd'
}
]
};
this.header = [
{
label: "Title",
key: "title"
},
{
label: "Author",
key: "author",
pipe: "user",
pipeParameter: {
"keys": ["displayName"],
"separator": ","
}
},
{
label: "Last Update",
key: "updatedTime",
pipe: "date",
pipeParameter: "medium"
}
];
}
/**
* @return {?}
*/
ngOnInit() {
this.items = this.auth.user$.pipe(mergeMap((/**
* @param {?} user
* @return {?}
*/
user => this.afs.collection(`posts`, (/**
* @param {?} ref
* @return {?}
*/
ref => this.helper.roleFilter(ref, user.roles, user.uid, "form"))).snapshotChanges())), map((/**
* @param {?} actions
* @return {?}
*/
actions => actions.map((/**
* @param {?} action
* @return {?}
*/
action => (Object.assign({ $key: action.payload.doc.id }, action.payload.doc.data())))))));
}
/**
* @return {?}
*/
ngOnDestroy() { }
}
FormsComponent.decorators = [
{ type: Component, args: [{
selector: 'aq-forms',
template: "<aq-title-bar [data]=\"titlebar\"></aq-title-bar>\n<aq-table [data]=\"(items | async) || []\" [headers]=\"header\"></aq-table>",
styles: [""]
}] }
];
/** @nocollapse */
FormsComponent.ctorParameters = () => [
{ type: AuthService },
{ type: AngularFirestore },
{ type: HelperService }
];
if (false) {
/** @type {?} */
FormsComponent.prototype.titlebar;
/** @type {?} */
FormsComponent.prototype.items;
/** @type {?} */
FormsComponent.prototype.header;
/**
* @type {?}
* @private
*/
FormsComponent.prototype.auth;
/**
* @type {?}
* @private
*/
FormsComponent.prototype.afs;
/**
* @type {?}
* @private
*/
FormsComponent.prototype.helper;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWZpcmViYXNlLWNtcy8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnQvZm9ybXMvZm9ybXMuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQU03RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDekQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzdELE9BQU8sRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFPL0MsTUFBTSxPQUFPLGNBQWM7Ozs7OztJQW9DekIsWUFDVSxJQUFpQixFQUNqQixHQUFxQixFQUNyQixNQUFxQjtRQUZyQixTQUFJLEdBQUosSUFBSSxDQUFhO1FBQ2pCLFFBQUcsR0FBSCxHQUFHLENBQWtCO1FBQ3JCLFdBQU0sR0FBTixNQUFNLENBQWU7UUFyQy9CLGFBQVEsR0FBYTtZQUNuQixLQUFLLEVBQUUsY0FBYztZQUNyQixXQUFXLEVBQUUsNERBQTREO1lBQ3pFLFdBQVcsRUFBRTtnQkFDWDtvQkFDRSxLQUFLLEVBQUUsY0FBYztvQkFDckIsSUFBSSxFQUFFLEtBQUs7aUJBQ1o7YUFDRjtTQUNGLENBQUE7UUFHRCxXQUFNLEdBQUc7WUFDUDtnQkFDRSxLQUFLLEVBQUUsT0FBTztnQkFDZCxHQUFHLEVBQUUsT0FBTzthQUNiO1lBQ0Q7Z0JBQ0UsS0FBSyxFQUFFLFFBQVE7Z0JBQ2YsR0FBRyxFQUFFLFFBQVE7Z0JBQ2IsSUFBSSxFQUFFLE1BQU07Z0JBQ1osYUFBYSxFQUFFO29CQUNiLE1BQU0sRUFBRSxDQUFDLGFBQWEsQ0FBQztvQkFDdkIsV0FBVyxFQUFFLEdBQUc7aUJBQ2pCO2FBQ0Y7WUFDRDtnQkFDRSxLQUFLLEVBQUUsYUFBYTtnQkFDcEIsR0FBRyxFQUFFLGFBQWE7Z0JBQ2xCLElBQUksRUFBRSxNQUFNO2dCQUNaLGFBQWEsRUFBRSxRQUFRO2FBQ3hCO1NBQ0YsQ0FBQTtJQU1HLENBQUM7Ozs7SUFFTCxRQUFRO1FBQ04sSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQy9CLFFBQVE7Ozs7UUFBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLE9BQU87Ozs7UUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxHQUFHLEVBQUUsTUFBTSxDQUFDLEVBQUMsQ0FBQyxlQUFlLEVBQUUsRUFBQyxFQUNsSSxHQUFHOzs7O1FBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsR0FBRzs7OztRQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsaUJBQUcsSUFBSSxFQUFFLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsSUFBSyxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsRUFBRyxFQUFDLEVBQUMsQ0FDdkcsQ0FBQTtJQUNILENBQUM7Ozs7SUFFRCxXQUFXLEtBQUssQ0FBQzs7O1lBdERsQixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLFVBQVU7Z0JBQ3BCLDBJQUFxQzs7YUFFdEM7Ozs7WUFUUSxXQUFXO1lBQ1gsZ0JBQWdCO1lBQ2hCLGFBQWE7Ozs7SUFVcEIsa0NBU0M7O0lBRUQsK0JBQThDOztJQUM5QyxnQ0FvQkM7Ozs7O0lBR0MsOEJBQXlCOzs7OztJQUN6Qiw2QkFBNkI7Ozs7O0lBQzdCLGdDQUE2QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFVuc3Vic2NyaXB0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2UvdW5zdWJzY3JpcHRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBCcmVhZGNydW1iIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlL2JyZWFkY3J1bWInO1xuaW1wb3J0IHsgVGl0bGViYXIgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2UvdGl0bGViYXInO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgUG9zdCB9IGZyb20gJy4uLy4uL2ludGVyZmFjZS9wb3N0JztcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZS9hdXRoLnNlcnZpY2UnO1xuaW1wb3J0IHsgQW5ndWxhckZpcmVzdG9yZSB9IGZyb20gJ0Bhbmd1bGFyL2ZpcmUvZmlyZXN0b3JlJztcbmltcG9ydCB7IEhlbHBlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlL2hlbHBlci5zZXJ2aWNlJztcbmltcG9ydCB7IG1lcmdlTWFwLCBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FxLWZvcm1zJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Zvcm1zLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZm9ybXMuY29tcG9uZW50LmNzcyddXG59KVxuZXhwb3J0IGNsYXNzIEZvcm1zQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gIHRpdGxlYmFyOiBUaXRsZWJhciA9IHtcbiAgICB0aXRsZTogXCJGb3JtIEJ1aWxkZXJcIixcbiAgICBkZXNjcmlwdGlvbjogXCJGb3JtIGJ1aWxkZXIgaGVscHMgeW91IHRvIGNyZWF0ZSBmb3JtIGZvciB5b3VyIG90aGVyIHVzZXJzXCIsXG4gICAgYnJlYWRjcnVtYnM6IFtcbiAgICAgIHtcbiAgICAgICAgdGl0bGU6IFwiRm9ybSBCdWlsZGVyXCIsXG4gICAgICAgIGljb246ICdoZGQnXG4gICAgICB9XG4gICAgXVxuICB9XG5cbiAgaXRlbXM6IE9ic2VydmFibGU8UG9zdFtdIHwgeyAka2V5OiBzdHJpbmcgfVtdPlxuICBoZWFkZXIgPSBbXG4gICAge1xuICAgICAgbGFiZWw6IFwiVGl0bGVcIixcbiAgICAgIGtleTogXCJ0aXRsZVwiXG4gICAgfSxcbiAgICB7XG4gICAgICBsYWJlbDogXCJBdXRob3JcIixcbiAgICAgIGtleTogXCJhdXRob3JcIixcbiAgICAgIHBpcGU6IFwidXNlclwiLFxuICAgICAgcGlwZVBhcmFtZXRlcjoge1xuICAgICAgICBcImtleXNcIjogW1wiZGlzcGxheU5hbWVcIl0sXG4gICAgICAgIFwic2VwYXJhdG9yXCI6IFwiLFwiXG4gICAgICB9XG4gICAgfSxcbiAgICB7XG4gICAgICBsYWJlbDogXCJMYXN0IFVwZGF0ZVwiLFxuICAgICAga2V5OiBcInVwZGF0ZWRUaW1lXCIsXG4gICAgICBwaXBlOiBcImRhdGVcIixcbiAgICAgIHBpcGVQYXJhbWV0ZXI6IFwibWVkaXVtXCJcbiAgICB9XG4gIF1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGF1dGg6IEF1dGhTZXJ2aWNlLFxuICAgIHByaXZhdGUgYWZzOiBBbmd1bGFyRmlyZXN0b3JlLFxuICAgIHByaXZhdGUgaGVscGVyOiBIZWxwZXJTZXJ2aWNlXG4gICkgeyB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5pdGVtcyA9IHRoaXMuYXV0aC51c2VyJC5waXBlKFxuICAgICAgbWVyZ2VNYXAodXNlciA9PiB0aGlzLmFmcy5jb2xsZWN0aW9uKGBwb3N0c2AsIHJlZiA9PiB0aGlzLmhlbHBlci5yb2xlRmlsdGVyKHJlZiwgdXNlci5yb2xlcywgdXNlci51aWQsIFwiZm9ybVwiKSkuc25hcHNob3RDaGFuZ2VzKCkpLFxuICAgICAgbWFwKGFjdGlvbnMgPT4gYWN0aW9ucy5tYXAoYWN0aW9uID0+ICh7ICRrZXk6IGFjdGlvbi5wYXlsb2FkLmRvYy5pZCwgLi4uYWN0aW9uLnBheWxvYWQuZG9jLmRhdGEoKSB9KSkpXG4gICAgKVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7IH1cblxufVxuIl19