UNPKG

react-web-native-sketch

Version:

[TODO: We need an overview of how this can be used via npm vs as a local package]

69 lines 2.69 kB
"use strict"; 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 TypeKeys; (function (TypeKeys) { TypeKeys["SHOW_ACTION_SHEET"] = "instacar/dialog/SHOW_ACTION_SHEET"; TypeKeys["ADD_SNACKBAR"] = "instacar/dialog/ADD_SNACKBAR"; TypeKeys["REMOVE_SNACKBAR"] = "instacar/dialog/REMOVE_SNACKBAR"; TypeKeys["REMOVE_FIRST_SNACKBAR"] = "instacar/dialog/REMOVE_FIRST_SNACKBAR"; TypeKeys["HIDE_SNACKBAR"] = "instacar/dialog/HIDE_SNACKBAR"; })(TypeKeys = exports.TypeKeys || (exports.TypeKeys = {})); var currentId = 0; exports.dialog = function (state, action) { if (state === void 0) { state = { snackbarMessages: [] }; } switch (action.type) { case TypeKeys.SHOW_ACTION_SHEET: return __assign({}, state, { sheetId: action.sheetId, sheetVisible: action.show }); case TypeKeys.ADD_SNACKBAR: return __assign({}, state, { snackbarMessages: state.snackbarMessages.map(function (snack) { return (__assign({}, snack, { open: false })); }).concat([ { message: action.message, id: currentId++, open: true, }, ]) }); case TypeKeys.REMOVE_SNACKBAR: return __assign({}, state, { snackbarMessages: state.snackbarMessages.filter(function (snack) { return snack.id !== action.id; }) }); case TypeKeys.HIDE_SNACKBAR: return __assign({}, state, { snackbarMessages: state.snackbarMessages.map(function (snack) { return (__assign({}, snack, { open: snack.id === action.id ? false : snack.open })); }) }); case TypeKeys.REMOVE_FIRST_SNACKBAR: return __assign({}, state, { snackbarMessages: state.snackbarMessages.slice(1) }); default: return state; } }; function showActionSheet(sheetId, show) { return { type: TypeKeys.SHOW_ACTION_SHEET, sheetId: sheetId, show: show, }; } exports.showActionSheet = showActionSheet; exports.addSnackbar = function (message) { return { type: TypeKeys.ADD_SNACKBAR, message: message, }; }; exports.removeSnackbar = function (id) { return { type: TypeKeys.REMOVE_SNACKBAR, id: id, }; }; exports.hideSnackbar = function (id) { return { type: TypeKeys.HIDE_SNACKBAR, id: id, }; }; //# sourceMappingURL=dialog.js.map