@shopify/app-bridge-host
Version:
App Bridge Host contains middleware and components that are meant to be consumed by the app's host. The middleware and `Frame` component are responsible for facilitating messages posted between the client and host, and used to act on actions sent from the
48 lines (47 loc) • 1.87 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var contextualSaveBar_1 = require("@shopify/app-bridge/validate/actions/contextualSaveBar");
var actions_1 = require("@shopify/app-bridge/actions");
exports.contextualSaveBarActionCreatorsMap = {
discard: actions_1.ContextualSaveBar.discard,
hide: actions_1.ContextualSaveBar.hide,
save: actions_1.ContextualSaveBar.save,
show: actions_1.ContextualSaveBar.show,
};
exports.defaultContextualSaveBarStore = null;
function contextualSaveBarReducer(state, action) {
if (state === void 0) { state = null; }
var castedAction = action;
if (contextualSaveBar_1.validateAction(castedAction)) {
return state;
}
switch (action.type) {
case actions_1.ContextualSaveBar.ActionType.SHOW:
case actions_1.ContextualSaveBar.ActionType.UPDATE:
var _a = action.payload, id = _a.id, _b = _a.saveAction, saveAction = _b === void 0 ? {
disabled: false,
loading: false,
} : _b, _c = _a.discardAction, discardAction = _c === void 0 ? {
disabled: false,
loading: false,
discardConfirmationModal: false,
} : _c;
return {
id: id,
saveAction: {
disabled: saveAction.disabled,
loading: saveAction.loading,
},
discardAction: {
disabled: discardAction.disabled,
loading: discardAction.loading,
discardConfirmationModal: discardAction.discardConfirmationModal,
},
};
case actions_1.ContextualSaveBar.ActionType.HIDE:
return null;
default:
return state;
}
}
exports.default = contextualSaveBarReducer;