sbis3-node-ws
Version:
Модуль позволяет использовать ядро интерфейсного фреймворка sbis3-ws(`core.js`) и модуль работы с данными (`Source.js`) в приложении на nodejs.
62 lines (61 loc) • 1.98 kB
JavaScript
define('js!Core/tmpl/config', ['js!SBIS3.CONTROLS.Record', 'js!SBIS3.CONTROLS.Data.Model', 'js!SBIS3.CONTROLS.DataSet', 'js!SBIS3.CONTROLS.Data.Collection.RecordSet'], function (Record, Model, DataSet, RecordSet) {
var config = {
calculators: [
{
type: 'model_record',
is: function isModel(ent) {
return ent instanceof Model || ent instanceof Record;
},
calculator: function modelRecordCalculator(prop, root) {
return root.get(prop);
}
}
],
iterators: [
{
type: 'recordset',
is: function isRecordset(ent) {
return ent instanceof RecordSet;
},
iterator: function recordsetIterator(recordset, callback) {
recordset.each(callback, 'all');
}
},
{
type: 'dataset',
is: function isDataset(ent) {
return ent instanceof DataSet;
},
iterator: function datasetIterator(dataset, callback) {
dataset.each(callback);
}
},
{
type: 'array',
is: function isArray(ent) {
return ent instanceof Array;
},
iterator: function arrayIterator(array, callback) {
var i, ln = array.length;
for (i = 0; i !== ln; i++) {
callback(array[i], i);
}
}
},
{
type: 'object',
is: function isObject(ent) {
return $ws.helpers.isPlainObject(ent);
},
iterator: function objectIterator(object, callback) {
for (var key in object) {
if (object.hasOwnProperty(key)) {
callback(object[key], key);
}
}
}
}
]
};
return config;
})