devextreme
Version:
JavaScript/TypeScript Component Suite for Responsive Web Development
41 lines (40 loc) • 1.4 kB
JavaScript
/**
* DevExtreme (esm/__internal/scheduler/utils/loader/utils.js)
* Version: 25.2.5
* Build date: Fri Feb 20 2026
*
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
*/
import DataSource from "../../../../data/data_source";
import {
normalizeDataSourceOptions
} from "../../../data/data_source/m_utils";
export const normalizeDataSource = function(dataSourceOptions) {
let options = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};
if (!dataSourceOptions) {
return
}
if (dataSourceOptions instanceof DataSource) {
return dataSourceOptions
}
const result = Object.assign({}, normalizeDataSourceOptions(dataSourceOptions, {}), options);
return new DataSource(result)
};
export const loadResource = async function(dataSource) {
let forceReload = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : false;
if (!dataSource) {
return []
}
if (forceReload) {
return new Promise(((resolve, reject) => {
dataSource.reload().then(resolve, reject)
}))
}
if (dataSource.isLoaded()) {
return dataSource.items()
}
return new Promise(((resolve, reject) => {
dataSource.load().then(resolve, reject)
}))
};