dynamicsmobile
Version:
Allows development of off-line mobile and web business apps over the Dynamics Mobile platform. More info on https://www.dynamicsmobile.com
54 lines • 2.23 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.ViewWithControls = void 0;
const tslib_1 = require("tslib");
/* eslint-disable @typescript-eslint/camelcase */
const dms_control_grid_1 = require("./dms-control-grid");
const dms_control_datasource_1 = require("./dms-control-datasource");
const dms_control_form_1 = require("./dms-control-form");
class ViewWithControls {
load() {
return tslib_1.__awaiter(this, void 0, void 0, function* () {
this.controls = [];
const arr = yield Promise.all([
...yield (0, dms_control_datasource_1.DmsDataSourceFactory)(this),
...yield (0, dms_control_grid_1.DmsGridFactory)(this),
...yield (0, dms_control_form_1.DmsFormFactory)(this),
...yield (0, dms_control_grid_1.DmsGridFormFactory)(this),
]);
const loadPromises = [];
for (let i = 0; i < arr.length; i++) {
const control = arr[i];
this.controls.push(control);
loadPromises.push(control.load(this));
}
yield Promise.all(loadPromises);
});
}
resume() {
return tslib_1.__awaiter(this, void 0, void 0, function* () {
if (!this.controls)
throw new Error('Current view does not call super.load() and/or super.resume() in the load and resume methods!');
for (let i = 0; i < this.controls.length; i++) {
if (this.controls[i].resume) {
yield this.controls[i].resume(this);
}
}
;
});
}
show() {
return tslib_1.__awaiter(this, void 0, void 0, function* () {
if (!this.controls)
throw new Error('Current view does not call super.load() and/or super.resume() in the load and resume methods!');
for (let i = 0; i < this.controls.length; i++) {
if (this.controls[i].show) {
yield this.controls[i].show(this);
}
}
;
});
}
}
exports.ViewWithControls = ViewWithControls;
//# sourceMappingURL=dms-view-with-controls.js.map