formioangular-colfuturo
Version:
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 10.1.4.
63 lines • 7.67 kB
JavaScript
import { Inject, Injectable, InjectionToken, EventEmitter, } from "@angular/core";
import { FormioCore as Formio } from "formiojs-colfuturo";
import * as i0 from "@angular/core";
export const FormioAppConfig = new InjectionToken("formio-config");
export class FormioAppService {
baseUrl;
apiUrl;
projectUrl;
appUrl;
icons;
formio;
user;
onUser = new EventEmitter();
constructor(config = {}) {
this.baseUrl = this.apiUrl = config.apiUrl || config.baseUrl;
this.projectUrl = this.appUrl = config.appUrl || config.projectUrl;
if (this.baseUrl) {
Formio.setBaseUrl(this.baseUrl);
Formio.setProjectUrl(this.projectUrl);
if (config.icons) {
Formio.icons = config.icons;
}
if (config.config) {
for (let key in config.config) {
Formio.config[key] = config.config[key];
}
}
Formio.events.on("formio.user", (user) => this.setUser(user));
this.formio = new Formio(this.projectUrl);
this.authenticate();
}
}
setUser(user) {
this.user = user;
this.onUser.emit(user);
}
logout() {
return Formio.logout()
.then(() => {
this.setUser(null);
Formio.clearCache();
})
.catch(() => {
this.setUser(null);
Formio.clearCache();
});
}
authenticate() {
return this.formio
.currentUser()
.then((user) => this.setUser(user))
.catch(() => this.setUser(null));
}
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FormioAppService, deps: [{ token: FormioAppConfig }], target: i0.ɵɵFactoryTarget.Injectable });
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FormioAppService });
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FormioAppService, decorators: [{
type: Injectable
}], ctorParameters: () => [{ type: undefined, decorators: [{
type: Inject,
args: [FormioAppConfig]
}] }] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWZvcm1pby9lbWJlZC9zcmMvYXBwLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLE1BQU0sRUFDTixVQUFVLEVBQ1YsY0FBYyxFQUNkLFlBQVksR0FDYixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsVUFBVSxJQUFJLE1BQU0sRUFBRSxNQUFNLG9CQUFvQixDQUFDOztBQUQxRCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsSUFBSSxjQUFjLENBQUMsZUFBZSxDQUFDLENBQUM7QUFHbkUsTUFBTSxPQUFPLGdCQUFnQjtJQUMzQixPQUFPLENBQUM7SUFDUixNQUFNLENBQUM7SUFDUCxVQUFVLENBQUM7SUFDWCxNQUFNLENBQUM7SUFDUCxLQUFLLENBQVU7SUFDZixNQUFNLENBQVM7SUFDZixJQUFJLENBQU87SUFDWCxNQUFNLEdBQXlCLElBQUksWUFBWSxFQUFVLENBQUM7SUFDMUQsWUFFRSxTQU9JLEVBQUU7UUFFTixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDO1FBQzdELElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxJQUFJLE1BQU0sQ0FBQyxVQUFVLENBQUM7UUFDbkUsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDakIsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDaEMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDdEMsSUFBSSxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ2pCLE1BQU0sQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQztZQUM5QixDQUFDO1lBQ0QsSUFBSSxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7Z0JBQ2xCLEtBQUssSUFBSSxHQUFHLElBQUksTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDO29CQUM5QixNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQzFDLENBQUM7WUFDSCxDQUFDO1lBQ0QsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUFFLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7WUFDOUQsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDMUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3RCLENBQUM7SUFDSCxDQUFDO0lBRUQsT0FBTyxDQUFDLElBQUk7UUFDVixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUNqQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBRUQsTUFBTTtRQUNKLE9BQU8sTUFBTSxDQUFDLE1BQU0sRUFBRTthQUNuQixJQUFJLENBQUMsR0FBRyxFQUFFO1lBQ1QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNuQixNQUFNLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDdEIsQ0FBQyxDQUFDO2FBQ0QsS0FBSyxDQUFDLEdBQUcsRUFBRTtZQUNWLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDbkIsTUFBTSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ3RCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFlBQVk7UUFDVixPQUFPLElBQUksQ0FBQyxNQUFNO2FBQ2YsV0FBVyxFQUFFO2FBQ2IsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQ2xDLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDckMsQ0FBQzt3R0E3RFUsZ0JBQWdCLGtCQVVqQixlQUFlOzRHQVZkLGdCQUFnQjs7NEZBQWhCLGdCQUFnQjtrQkFENUIsVUFBVTs7MEJBV04sTUFBTTsyQkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBJbmplY3QsXHJcbiAgSW5qZWN0YWJsZSxcclxuICBJbmplY3Rpb25Ub2tlbixcclxuICBFdmVudEVtaXR0ZXIsXHJcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuZXhwb3J0IGNvbnN0IEZvcm1pb0FwcENvbmZpZyA9IG5ldyBJbmplY3Rpb25Ub2tlbihcImZvcm1pby1jb25maWdcIik7XHJcbmltcG9ydCB7IEZvcm1pb0NvcmUgYXMgRm9ybWlvIH0gZnJvbSBcImZvcm1pb2pzLWNvbGZ1dHVyb1wiO1xyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBGb3JtaW9BcHBTZXJ2aWNlIHtcclxuICBiYXNlVXJsO1xyXG4gIGFwaVVybDtcclxuICBwcm9qZWN0VXJsO1xyXG4gIGFwcFVybDtcclxuICBpY29ucz86IHN0cmluZztcclxuICBmb3JtaW86IEZvcm1pbztcclxuICB1c2VyPzogYW55O1xyXG4gIG9uVXNlcjogRXZlbnRFbWl0dGVyPG9iamVjdD4gPSBuZXcgRXZlbnRFbWl0dGVyPG9iamVjdD4oKTtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIEBJbmplY3QoRm9ybWlvQXBwQ29uZmlnKVxyXG4gICAgY29uZmlnOiB7XHJcbiAgICAgIGFwaVVybD86IHN0cmluZztcclxuICAgICAgYmFzZVVybD86IHN0cmluZztcclxuICAgICAgYXBwVXJsPzogc3RyaW5nO1xyXG4gICAgICBwcm9qZWN0VXJsPzogc3RyaW5nO1xyXG4gICAgICBpY29ucz86IHN0cmluZztcclxuICAgICAgY29uZmlnPzogYW55O1xyXG4gICAgfSA9IHt9XHJcbiAgKSB7XHJcbiAgICB0aGlzLmJhc2VVcmwgPSB0aGlzLmFwaVVybCA9IGNvbmZpZy5hcGlVcmwgfHwgY29uZmlnLmJhc2VVcmw7XHJcbiAgICB0aGlzLnByb2plY3RVcmwgPSB0aGlzLmFwcFVybCA9IGNvbmZpZy5hcHBVcmwgfHwgY29uZmlnLnByb2plY3RVcmw7XHJcbiAgICBpZiAodGhpcy5iYXNlVXJsKSB7XHJcbiAgICAgIEZvcm1pby5zZXRCYXNlVXJsKHRoaXMuYmFzZVVybCk7XHJcbiAgICAgIEZvcm1pby5zZXRQcm9qZWN0VXJsKHRoaXMucHJvamVjdFVybCk7XHJcbiAgICAgIGlmIChjb25maWcuaWNvbnMpIHtcclxuICAgICAgICBGb3JtaW8uaWNvbnMgPSBjb25maWcuaWNvbnM7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKGNvbmZpZy5jb25maWcpIHtcclxuICAgICAgICBmb3IgKGxldCBrZXkgaW4gY29uZmlnLmNvbmZpZykge1xyXG4gICAgICAgICAgRm9ybWlvLmNvbmZpZ1trZXldID0gY29uZmlnLmNvbmZpZ1trZXldO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBGb3JtaW8uZXZlbnRzLm9uKFwiZm9ybWlvLnVzZXJcIiwgKHVzZXIpID0+IHRoaXMuc2V0VXNlcih1c2VyKSk7XHJcbiAgICAgIHRoaXMuZm9ybWlvID0gbmV3IEZvcm1pbyh0aGlzLnByb2plY3RVcmwpO1xyXG4gICAgICB0aGlzLmF1dGhlbnRpY2F0ZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2V0VXNlcih1c2VyKSB7XHJcbiAgICB0aGlzLnVzZXIgPSB1c2VyO1xyXG4gICAgdGhpcy5vblVzZXIuZW1pdCh1c2VyKTtcclxuICB9XHJcblxyXG4gIGxvZ291dCgpIHtcclxuICAgIHJldHVybiBGb3JtaW8ubG9nb3V0KClcclxuICAgICAgLnRoZW4oKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuc2V0VXNlcihudWxsKTtcclxuICAgICAgICBGb3JtaW8uY2xlYXJDYWNoZSgpO1xyXG4gICAgICB9KVxyXG4gICAgICAuY2F0Y2goKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuc2V0VXNlcihudWxsKTtcclxuICAgICAgICBGb3JtaW8uY2xlYXJDYWNoZSgpO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIGF1dGhlbnRpY2F0ZSgpIHtcclxuICAgIHJldHVybiB0aGlzLmZvcm1pb1xyXG4gICAgICAuY3VycmVudFVzZXIoKVxyXG4gICAgICAudGhlbigodXNlcikgPT4gdGhpcy5zZXRVc2VyKHVzZXIpKVxyXG4gICAgICAuY2F0Y2goKCkgPT4gdGhpcy5zZXRVc2VyKG51bGwpKTtcclxuICB9XHJcbn1cclxuIl19