UNPKG

@brizy/media-gallery

Version:
162 lines (161 loc) 4.37 kB
import { isOneOf } from "../../utils/value"; import * as State from "./types/State"; import { match } from "fp-utilities"; import { IMAGE_UPLOAD_ERROR } from "./constants"; import { InsertFilesTypes } from "../../types/Context"; export var isReadyOrBulk = isOneOf([ State.isReady, State.isBulkSelectReady ]); var isNothingOrBulk = isOneOf([ State.isNothingSelected, State.isBulkSelectNothing ]); export var isBulkSaving = isOneOf([ State.isBulkSavingAltTitle, State.isBulkSavingFileName ]); export var isReadySaving = isOneOf([ State.isSavingAltTitle, State.isSavingFileName ]); export var isSavingFileName = isOneOf([ State.isSavingFileName, State.isBulkSavingFileName ]); export var isSavingAltTitle = isOneOf([ State.isSavingAltTitle, State.isBulkSavingAltTitle ]); export var isSaving = isOneOf([ isSavingFileName, isSavingAltTitle ]); export var isRemoving = isOneOf([ State.isRemovingFromReady, State.isRemovingFromBulkReady, State.isRemovingFromBulkMultiple ]); export var isUploading = isOneOf([ State.isUploadingFromReady, State.isUploadingFromNothing, State.isUploadingFromBulkReady, State.isUploadingFromBulkNothing, State.isUploadingFromBulkMultiple ]); export var isRemoveConfirmation = isOneOf([ State.isRemoveConfirmationFromReady, State.isRemoveConfirmationFromBulkReady, State.isRemoveConfirmationFromBulkMultiple ]); export var isReadyOrMultiple = isOneOf([ State.isBulkSelectMultiple, isReadyOrBulk ]); export var isReadyOrNothing = isOneOf([ State.isNothingSelected, State.isReady ]); export var isBulkReadyOrNothingOrMultiple = isOneOf([ State.isBulkSelectNothing, State.isBulkSelectReady, State.isBulkSelectMultiple ]); export var isReadyOrNothingOrBulk = isOneOf([ isBulkReadyOrNothingOrMultiple, isReadyOrNothing ]); export var isBulkSelected = isOneOf([ State.isRemovingFromBulkReady, State.isRemovingFromBulkMultiple, State.isRemoveConfirmationFromBulkReady, State.isRemoveConfirmationFromBulkMultiple, State.isUploadingFromBulkReady, State.isUploadingFromBulkNothing, State.isUploadingFromBulkMultiple, isBulkSaving, isBulkReadyOrNothingOrMultiple ]); var isCancelable = isOneOf([ State.isReady, isBulkSelected ]); export var isMultipleSelected = isOneOf([ State.isBulkSelectMultiple, State.isUploadingFromBulkMultiple, State.isRemovingFromBulkMultiple, State.isRemoveConfirmationFromBulkMultiple ]); export var isNothingSelected = isOneOf([ State.isInit, State.isUploadingFromNothing, State.isUploadingFromBulkNothing, isNothingOrBulk ]); export var isWithContent = isOneOf([ isRemoving, isReadyOrNothing, isBulkReadyOrNothingOrMultiple, isRemoveConfirmation, isSaving ]); export var isWithSidebar = isOneOf([ State.isUploadingFromReady, State.isRemoveConfirmationFromReady, State.isRemovingFromReady, State.isUploadingFromBulkReady, State.isRemoveConfirmationFromBulkReady, State.isRemovingFromBulkReady, isReadyOrBulk, isSaving ]); export var isSidebarState = isOneOf([ isWithSidebar, isNothingSelected, isMultipleSelected ]); export var isLoading = isOneOf([ State.isInit, isUploading ]); export var isBulkNothingOrMultiple = isOneOf([ State.isBulkSelectNothing, State.isBulkSelectMultiple ]); export var pickUploadState = match([ State.isUploadingFromReady, State.ready ], [ State.isUploadingFromNothing, State.nothingSelected ], [ State.isUploadingFromBulkReady, State.bulkSelectReady ], [ State.isUploadingFromBulkNothing, State.bulkSelectNothing ], [ State.isUploadingFromBulkMultiple, State.bulkSelectMultiple ]); var insertFiles = function(s) { switch(s.insertFilesType){ case InsertFilesTypes.MULTIPLE: return isReadyOrMultiple(s); case InsertFilesTypes.SINGLE: return isReadyOrBulk(s); case InsertFilesTypes.NONE: return false; } }; export var disabled = function(s) { return { cancel: isCancelable(s), delete: isReadyOrMultiple(s), preview: isReadyOrBulk(s), insertFiles: insertFiles(s) }; }; export var isImageUploadError = function(item) { return item === IMAGE_UPLOAD_ERROR; };