vscroll
Version:
Virtual scroll engine
43 lines • 1.52 kB
JavaScript
import { __extends } from "tslib";
import { DatasourceProps } from '../../inputs/index';
import { Datasource } from '../../classes/datasource';
import { BaseAdapterProcessFactory, AdapterProcess, ProcessStatus } from '../misc/index';
var Reset = /** @class */ (function (_super) {
__extends(Reset, _super);
function Reset() {
return _super !== null && _super.apply(this, arguments) || this;
}
Reset.run = function (scroller, options) {
var datasource = scroller.datasource, buffer = scroller.buffer, viewport = scroller.viewport, state = scroller.state;
if (options) {
var data_1 = Reset.parseInput(scroller, options).data;
if (!data_1.isValid) {
return;
}
var constructed_1 = options instanceof Datasource;
Object.keys(DatasourceProps).forEach(function (key) {
var param = data_1.params[key];
var ds = datasource;
if (param.isSet || (constructed_1 && ds[key])) {
ds[key] = param.value;
}
});
}
buffer.reset(true);
viewport.paddings.backward.reset();
viewport.paddings.forward.reset();
var payload = { datasource: datasource };
if (state.cycle.busy.get()) {
payload.finalize = true;
state.cycle.interrupter = Reset.process;
}
scroller.workflow.call({
process: Reset.process,
status: ProcessStatus.next,
payload: payload
});
};
return Reset;
}(BaseAdapterProcessFactory(AdapterProcess.reset)));
export default Reset;
//# sourceMappingURL=reset.js.map