Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
@filerobot/explorer / lib / components / Modals / ManageAccess / ManageAccess.hooks.js
Size: Mime:
import { useCallback } from 'react';
import { useModal } from '@filerobot/core/lib/hooks';
import { useExplorerI18n } from '../../../hooks';
import ManageAccessContent from './ManageAccessContent';
import { jsx as _jsx } from "react/jsx-runtime";
export var useManageAccessModal = function useManageAccessModal() {
  var toggleModal = useModal();
  var i18n = useExplorerI18n();
  var triggerManageAccessModal = useCallback(function (_ref) {
    var folders = _ref.folders,
      files = _ref.files;
    var handleSaveAccesses = function handleSaveAccesses(_ref2) {
      var data = _ref2.data;
      data.saveAccesses();
    };
    toggleModal({
      title: i18n('explorerManageAccessModalTitle'),
      showTitleLabel: true,
      content: function content(_ref3) {
        var data = _ref3.data,
          updateData = _ref3.updateData,
          setPrimaryButtonDisabled = _ref3.setPrimaryButtonDisabled,
          setIsModalHidden = _ref3.setIsModalHidden,
          setIsModalLoading = _ref3.setIsModalLoading,
          setStopEnterKeySubmits = _ref3.setStopEnterKeySubmits;
        return /*#__PURE__*/_jsx(ManageAccessContent, {
          data: data,
          updateData: updateData,
          setPrimaryButtonDisabled: setPrimaryButtonDisabled,
          setIsModalHidden: setIsModalHidden,
          setIsModalLoading: setIsModalLoading,
          setStopEnterKeySubmits: setStopEnterKeySubmits,
          folders: folders,
          files: files
        });
      },
      buttonPrimaryLabel: i18n('mutualizedSaveButton'),
      enterKeySubmits: true,
      modalStyle: {
        maxWidth: 600,
        maxHeight: 668,
        overflowY: 'auto'
      },
      modalHeaderStyle: {
        padding: '11px 24px 10.5px 0'
      },
      modalHeaderBottomBorder: true,
      modalBodyStyle: {
        padding: '24px'
      },
      modalFooterStyle: {
        flexDirection: 'row',
        height: 88,
        padding: 24,
        justifyContent: 'flex-end'
      },
      modalFooterTopBorder: true,
      primaryTitleStyle: {
        border: 'none',
        fontWeight: 400,
        fontSize: 18,
        lineHeight: '20px'
      },
      modalPrimaryButton: {
        maxWidth: 120
      },
      modalSecondaryButton: {
        maxWidth: 120
      },
      modalCrossButtonStyle: {
        margin: '10px 12px 10px 0'
      },
      modalSecondaryButtonColor: 'basic',
      onButtonPrimaryClick: handleSaveAccesses
    });
  }, [i18n]);
  return triggerManageAccessModal;
};