react-web-native-sketch
Version:
[TODO: We need an overview of how this can be used via npm vs as a local package]
133 lines • 5.47 kB
JavaScript
;
var __assign = (this && this.__assign) || Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
Object.defineProperty(exports, "__esModule", { value: true });
var __1 = require("../..");
var TypeKeys;
(function (TypeKeys) {
TypeKeys["GET_TABLE_DATA"] = "instacar/table/GET_TABLE_DATA";
TypeKeys["GET_TABLE_DATA_SUCCESS"] = "instacar/table/GET_TABLE_DATA_SUCCESS";
TypeKeys["GET_TABLE_DATA_FAIL"] = "instacar/table/GET_TABLE_DATA_FAIL";
TypeKeys["DELETE_TABLE_ENTRY"] = "instacar/table/DELETE_TABLE_ENTRY";
TypeKeys["DELETE_TABLE_ENTRY_SUCCESS"] = "instacar/table/DELETE_TABLE_ENTRY_SUCCESS";
TypeKeys["DELETE_TABLE_ENTRY_FAIL"] = "instacar/table/DELETE_TABLE_ENTRY_FAIL";
TypeKeys["REFRESH_TABLE"] = "instacar/table/REFRESH_TABLE";
TypeKeys["SHOW_ENTRY_DETAILS"] = "instacar/table/SHOW_ENTRY_DETAILS";
TypeKeys["INIT_ENTRY_DETAILS"] = "instacar/table/INIT_ENTRY_DETAILS";
TypeKeys["SHOW_MENU"] = "instacar/table/SHOW_MENU";
TypeKeys["CLEAR_TABLE_DATA"] = "instacar/table/CLEAR_TABLE_DATA";
TypeKeys["CHANGE_GPS_DATA_VIEW_MODE"] = "instacar/table/CHANGE_GPS_DATA_VIEW_MODE";
})(TypeKeys = exports.TypeKeys || (exports.TypeKeys = {}));
var initialState = {};
exports.table = function (state, action) {
if (state === void 0) { state = initialState; }
var _a, _b, _c, _d, _e, _f, _g, _h;
switch (action.type) {
case TypeKeys.GET_TABLE_DATA:
return __assign({}, state, (_a = {}, _a[action.tableId] = __assign({}, state[action.tableId], { loading: true, refresh: false }), _a));
case TypeKeys.GET_TABLE_DATA_SUCCESS:
return __assign({}, state, (_b = {}, _b[action.tableId] = __assign({}, state[action.tableId], { loading: false, data: action.response }), _b));
case TypeKeys.GET_TABLE_DATA_FAIL:
return __assign({}, state, (_c = {}, _c[action.tableId] = __assign({}, state[action.tableId], { loading: false }), _c));
case TypeKeys.DELETE_TABLE_ENTRY:
return __assign({}, state, (_d = {}, _d[action.tableId] = __assign({}, state[action.tableId], { deletingEntry: true, deletedEntrySuccess: false }), _d));
case TypeKeys.DELETE_TABLE_ENTRY_SUCCESS:
return __assign({}, state, (_e = {}, _e[action.tableId] = __assign({}, state[action.tableId], { deletingEntry: false, deletedEntrySuccess: true }), _e));
case TypeKeys.DELETE_TABLE_ENTRY_FAIL:
return __assign({}, state, (_f = {}, _f[action.tableId] = __assign({}, state[action.tableId], { deletingEntry: false, deletedEntrySuccess: false }), _f));
case TypeKeys.SHOW_MENU:
return __assign({}, state, (_g = {}, _g[action.tableId] = __assign({}, state[action.tableId], { menuShown: action.menuShown, menuRow: action.menuRow }), _g));
case TypeKeys.REFRESH_TABLE:
return __assign({}, state, (_h = {}, _h[action.tableId] = __assign({}, (state[action.tableId] || {}), { refresh: true }), _h));
case TypeKeys.CLEAR_TABLE_DATA:
delete state[action.tableId];
return __assign({}, state);
default:
return state;
}
};
function loadTableData(url, tableId, filters) {
return {
types: [TypeKeys.GET_TABLE_DATA, TypeKeys.GET_TABLE_DATA_SUCCESS, TypeKeys.GET_TABLE_DATA_FAIL],
method: __1.HTTP_METHOD.POST,
url: url,
body: __assign({}, (filters || {})),
requestPayload: {
tableId: tableId,
},
successPayload: {
tableId: tableId
},
failPayload: {
tableId: tableId
},
};
}
exports.loadTableData = loadTableData;
function deleteTableEntry(url, itemId, tableId) {
return {
types: [TypeKeys.DELETE_TABLE_ENTRY, TypeKeys.DELETE_TABLE_ENTRY_SUCCESS, TypeKeys.DELETE_TABLE_ENTRY_FAIL],
method: 'delete',
url: url + "/" + itemId,
successPayload: {
tableId: tableId
},
failPayload: {
tableId: tableId
},
};
}
exports.deleteTableEntry = deleteTableEntry;
function showMenu(pageId, tableId, menuShown, menuRow) {
return {
type: TypeKeys.SHOW_MENU,
pageId: pageId,
tableId: tableId,
menuShown: menuShown,
menuRow: menuRow,
};
}
exports.showMenu = showMenu;
function setRefreshTable(tableId) {
return {
type: TypeKeys.REFRESH_TABLE,
tableId: tableId,
};
}
exports.setRefreshTable = setRefreshTable;
function clearTableData(tableId) {
return {
type: TypeKeys.CLEAR_TABLE_DATA,
tableId: tableId,
};
}
exports.clearTableData = clearTableData;
function changeGpsDataViewMode(isTableView) {
return {
type: TypeKeys.CHANGE_GPS_DATA_VIEW_MODE,
isTableView: isTableView,
};
}
exports.changeGpsDataViewMode = changeGpsDataViewMode;
function showEntryDetails(details, itemName) {
return {
type: TypeKeys.SHOW_ENTRY_DETAILS,
details: details,
itemName: itemName,
};
}
exports.showEntryDetails = showEntryDetails;
function initEntryDetails(componentName) {
return {
type: TypeKeys.INIT_ENTRY_DETAILS,
componentName: componentName,
};
}
exports.initEntryDetails = initEntryDetails;
//# sourceMappingURL=table.js.map