UNPKG

@shopify/app-bridge-host

Version:

App Bridge Host contains components and middleware to be consumed by the app's host, as well as the host itself. The middleware and `Frame` component are responsible for facilitating communication between the client and host, and used to act on actions se

45 lines (42 loc) 2.09 kB
import { __assign } from 'tslib'; import { ResourcePicker } from '@shopify/app-bridge-core/actions'; import { validateAction } from '@shopify/app-bridge-core/validate/actions/resourcePicker'; var defaultResourcePickerStore = null; function resourcePickerReducer(state, action) { if (state === void 0) { state = defaultResourcePickerStore; } var castAction = action; if (validateAction(castAction)) { return state; } switch (action.type) { case ResourcePicker.Action.OPEN: case ResourcePicker.Action.UPDATE: { var open_1 = action.type === ResourcePicker.Action.OPEN ? true : (state && state.open) || false; var _a = castAction.payload, id = _a.id, initialQuery = _a.initialQuery, filterQuery = _a.filterQuery, initialSelectionIds = _a.initialSelectionIds, selectMultiple = _a.selectMultiple, showHidden = _a.showHidden, showVariants = _a.showVariants, showDraft = _a.showDraft, showArchived = _a.showArchived, showDraftBadge = _a.showDraftBadge, showArchivedBadge = _a.showArchivedBadge, resourceType = _a.resourceType, actionVerb = _a.actionVerb; return { id: id, initialQuery: initialQuery, filterQuery: filterQuery, initialSelectionIds: initialSelectionIds, selectMultiple: selectMultiple, showHidden: showHidden, showVariants: showVariants, showDraft: showDraft, showArchived: showArchived, showDraftBadge: showDraftBadge, showArchivedBadge: showArchivedBadge, resourceType: resourceType, actionVerb: actionVerb, open: open_1, }; } case ResourcePicker.Action.SELECT: case ResourcePicker.Action.CANCEL: case ResourcePicker.Action.CLOSE: { return __assign(__assign({}, state), { open: false }); } default: return state; } } export { resourcePickerReducer as default, defaultResourcePickerStore };