@formio/angular
Version:
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 10.1.4.
62 lines • 8.23 kB
JavaScript
import { Observable } from 'rxjs';
import { FormioCore as Formio } from '@formio/js';
export class FormioService {
url;
options;
formio;
constructor(url, options) {
this.url = url;
this.options = options;
this.formio = new Formio(this.url, this.options);
}
requestWrapper(fn) {
let record;
let called = false;
return Observable.create((observer) => {
try {
if (!called) {
called = true;
fn()
.then((_record) => {
record = _record;
observer.next(record);
observer.complete();
})
.catch((err) => observer.error(err));
}
else if (record) {
observer.next(record);
observer.complete();
}
}
catch (err) {
observer.error(err);
}
});
}
saveForm(form, options) {
return this.requestWrapper(() => this.formio.saveForm(form, options));
}
loadForm(query, options) {
return this.requestWrapper(() => this.formio.loadForm(query, options));
}
loadForms(query, options) {
return this.requestWrapper(() => this.formio.loadForms(query, options));
}
loadSubmission(query, options) {
return this.requestWrapper(() => this.formio.loadSubmission(query, options));
}
userPermissions(user, form, submission) {
return this.requestWrapper(() => this.formio.userPermissions(user, form, submission));
}
deleteSubmission(data, options) {
return this.requestWrapper(() => this.formio.deleteSubmission(data, options));
}
saveSubmission(submission, options) {
return this.requestWrapper(() => this.formio.saveSubmission(submission, options));
}
loadSubmissions(query, options) {
return this.requestWrapper(() => this.formio.loadSubmissions(query, options));
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWlvLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWZvcm1pby9zcmMvZm9ybWlvLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBWSxNQUFNLE1BQU0sQ0FBQztBQUU1QyxPQUFPLEVBQUUsVUFBVSxJQUFJLE1BQU0sRUFBRSxNQUFNLFlBQVksQ0FBQztBQUVsRCxNQUFNLE9BQU8sYUFBYTtJQUVMO0lBQW9CO0lBRGhDLE1BQU0sQ0FBTTtJQUNuQixZQUFtQixHQUFXLEVBQVMsT0FBZ0I7UUFBcEMsUUFBRyxHQUFILEdBQUcsQ0FBUTtRQUFTLFlBQU8sR0FBUCxPQUFPLENBQVM7UUFDckQsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBQ0QsY0FBYyxDQUFDLEVBQU87UUFDcEIsSUFBSSxNQUFXLENBQUM7UUFDaEIsSUFBSSxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ25CLE9BQU8sVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLFFBQXVCLEVBQUUsRUFBRTtZQUNuRCxJQUFJLENBQUM7Z0JBQ0gsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO29CQUNaLE1BQU0sR0FBRyxJQUFJLENBQUM7b0JBQ2QsRUFBRSxFQUFFO3lCQUNELElBQUksQ0FBQyxDQUFDLE9BQVksRUFBRSxFQUFFO3dCQUNyQixNQUFNLEdBQUcsT0FBTyxDQUFDO3dCQUNqQixRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO3dCQUN0QixRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7b0JBQ3RCLENBQUMsQ0FBQzt5QkFDRCxLQUFLLENBQUMsQ0FBQyxHQUFRLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztnQkFDOUMsQ0FBQztxQkFBTSxJQUFJLE1BQU0sRUFBRSxDQUFDO29CQUNsQixRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO29CQUN0QixRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ3RCLENBQUM7WUFDSCxDQUFDO1lBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztnQkFDYixRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3RCLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFDRCxRQUFRLENBQUMsSUFBZ0IsRUFBRSxPQUFhO1FBQ3RDLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUN4RSxDQUFDO0lBQ0QsUUFBUSxDQUFDLEtBQVcsRUFBRSxPQUFhO1FBQ2pDLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUN6RSxDQUFDO0lBQ0QsU0FBUyxDQUFDLEtBQVUsRUFBRSxPQUFhO1FBQ2pDLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUMxRSxDQUFDO0lBQ0QsY0FBYyxDQUFDLEtBQVcsRUFBRSxPQUFhO1FBQ3ZDLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUMvRSxDQUFDO0lBQ0QsZUFBZSxDQUFDLElBQVMsRUFBRSxJQUFTLEVBQUUsVUFBZTtRQUNuRCxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBQ3hGLENBQUM7SUFDRCxnQkFBZ0IsQ0FBQyxJQUFVLEVBQUUsT0FBYTtRQUN4QyxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUNoRixDQUFDO0lBQ0QsY0FBYyxDQUFDLFVBQWMsRUFBRSxPQUFhO1FBQzFDLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUNwRixDQUFDO0lBQ0QsZUFBZSxDQUFDLEtBQVcsRUFBRSxPQUFhO1FBQ3hDLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUNoRixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlLCBPYnNlcnZlciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRm9ybWlvRm9ybSB9IGZyb20gJy4vZm9ybWlvLmNvbW1vbic7XG5pbXBvcnQgeyBGb3JtaW9Db3JlIGFzIEZvcm1pbyB9IGZyb20gJ0Bmb3JtaW8vanMnO1xuXG5leHBvcnQgY2xhc3MgRm9ybWlvU2VydmljZSB7XG4gIHB1YmxpYyBmb3JtaW86IGFueTtcbiAgY29uc3RydWN0b3IocHVibGljIHVybDogc3RyaW5nLCBwdWJsaWMgb3B0aW9ucz86IG9iamVjdCkge1xuICAgIHRoaXMuZm9ybWlvID0gbmV3IEZvcm1pbyh0aGlzLnVybCwgdGhpcy5vcHRpb25zKTtcbiAgfVxuICByZXF1ZXN0V3JhcHBlcihmbjogYW55KSB7XG4gICAgbGV0IHJlY29yZDogYW55O1xuICAgIGxldCBjYWxsZWQgPSBmYWxzZTtcbiAgICByZXR1cm4gT2JzZXJ2YWJsZS5jcmVhdGUoKG9ic2VydmVyOiBPYnNlcnZlcjxhbnk+KSA9PiB7XG4gICAgICB0cnkge1xuICAgICAgICBpZiAoIWNhbGxlZCkge1xuICAgICAgICAgIGNhbGxlZCA9IHRydWU7XG4gICAgICAgICAgZm4oKVxuICAgICAgICAgICAgLnRoZW4oKF9yZWNvcmQ6IGFueSkgPT4ge1xuICAgICAgICAgICAgICByZWNvcmQgPSBfcmVjb3JkO1xuICAgICAgICAgICAgICBvYnNlcnZlci5uZXh0KHJlY29yZCk7XG4gICAgICAgICAgICAgIG9ic2VydmVyLmNvbXBsZXRlKCk7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLmNhdGNoKChlcnI6IGFueSkgPT4gb2JzZXJ2ZXIuZXJyb3IoZXJyKSk7XG4gICAgICAgIH0gZWxzZSBpZiAocmVjb3JkKSB7XG4gICAgICAgICAgb2JzZXJ2ZXIubmV4dChyZWNvcmQpO1xuICAgICAgICAgIG9ic2VydmVyLmNvbXBsZXRlKCk7XG4gICAgICAgIH1cbiAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICBvYnNlcnZlci5lcnJvcihlcnIpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG4gIHNhdmVGb3JtKGZvcm06IEZvcm1pb0Zvcm0sIG9wdGlvbnM/OiBhbnkpOiBPYnNlcnZhYmxlPEZvcm1pb0Zvcm0+IHtcbiAgICByZXR1cm4gdGhpcy5yZXF1ZXN0V3JhcHBlcigoKSA9PiB0aGlzLmZvcm1pby5zYXZlRm9ybShmb3JtLCBvcHRpb25zKSk7XG4gIH1cbiAgbG9hZEZvcm0ocXVlcnk/OiBhbnksIG9wdGlvbnM/OiBhbnkpOiBPYnNlcnZhYmxlPEZvcm1pb0Zvcm0+IHtcbiAgICByZXR1cm4gdGhpcy5yZXF1ZXN0V3JhcHBlcigoKSA9PiB0aGlzLmZvcm1pby5sb2FkRm9ybShxdWVyeSwgb3B0aW9ucykpO1xuICB9XG4gIGxvYWRGb3JtcyhxdWVyeTogYW55LCBvcHRpb25zPzogYW55KTogT2JzZXJ2YWJsZTxGb3JtaW9Gb3JtPiB7XG4gICAgcmV0dXJuIHRoaXMucmVxdWVzdFdyYXBwZXIoKCkgPT4gdGhpcy5mb3JtaW8ubG9hZEZvcm1zKHF1ZXJ5LCBvcHRpb25zKSk7XG4gIH1cbiAgbG9hZFN1Ym1pc3Npb24ocXVlcnk/OiBhbnksIG9wdGlvbnM/OiBhbnkpOiBPYnNlcnZhYmxlPHt9PiB7XG4gICAgcmV0dXJuIHRoaXMucmVxdWVzdFdyYXBwZXIoKCkgPT4gdGhpcy5mb3JtaW8ubG9hZFN1Ym1pc3Npb24ocXVlcnksIG9wdGlvbnMpKTtcbiAgfVxuICB1c2VyUGVybWlzc2lvbnModXNlcjogYW55LCBmb3JtOiBhbnksIHN1Ym1pc3Npb246IGFueSk6IE9ic2VydmFibGU8e30+IHtcbiAgICByZXR1cm4gdGhpcy5yZXF1ZXN0V3JhcHBlcigoKSA9PiB0aGlzLmZvcm1pby51c2VyUGVybWlzc2lvbnModXNlciwgZm9ybSwgc3VibWlzc2lvbikpO1xuICB9XG4gIGRlbGV0ZVN1Ym1pc3Npb24oZGF0YT86IGFueSwgb3B0aW9ucz86IGFueSk6IE9ic2VydmFibGU8e30+IHtcbiAgICByZXR1cm4gdGhpcy5yZXF1ZXN0V3JhcHBlcigoKSA9PiB0aGlzLmZvcm1pby5kZWxldGVTdWJtaXNzaW9uKGRhdGEsIG9wdGlvbnMpKTtcbiAgfVxuICBzYXZlU3VibWlzc2lvbihzdWJtaXNzaW9uOiB7fSwgb3B0aW9ucz86IGFueSk6IE9ic2VydmFibGU8e30+IHtcbiAgICByZXR1cm4gdGhpcy5yZXF1ZXN0V3JhcHBlcigoKSA9PiB0aGlzLmZvcm1pby5zYXZlU3VibWlzc2lvbihzdWJtaXNzaW9uLCBvcHRpb25zKSk7XG4gIH1cbiAgbG9hZFN1Ym1pc3Npb25zKHF1ZXJ5PzogYW55LCBvcHRpb25zPzogYW55KTogT2JzZXJ2YWJsZTx7fT4ge1xuICAgIHJldHVybiB0aGlzLnJlcXVlc3RXcmFwcGVyKCgpID0+IHRoaXMuZm9ybWlvLmxvYWRTdWJtaXNzaW9ucyhxdWVyeSwgb3B0aW9ucykpO1xuICB9XG59XG4iXX0=