"use strict";exports.__esModule = true;exports.useGlobalLoaderWidth = exports.useGlobalLoaderPosition = void 0;var _react = require("react");

var _getDOMRect3 = require("../../lib/dom/getDOMRect");



/**
 * Вычисляет положение `GlobalLoader`
 *
 * @param ref - ref `GlobalLoader`
 * @returns - возвращает положение полоски `GlobalLoader`
 */

var useGlobalLoaderPosition = exports.useGlobalLoaderPosition = function useGlobalLoaderPosition(ref) {
  var _getDOMRect = (0, _getDOMRect3.getDOMRect)(ref),left = _getDOMRect.left;
  return { left: left };
};

/**
 * Вычисляет ширину `GlobalLoader`
 *
 * @param status - статус `GlobalLoader`
 * @param ref - ref `GlobalLoader`
 * @returns - возвращает ширину полоски `GlobalLoader`
 */

var useGlobalLoaderWidth = exports.useGlobalLoaderWidth = function useGlobalLoaderWidth(
status,
ref)
{var _ref$current;
  var _getDOMRect2 = (0, _getDOMRect3.getDOMRect)(ref),width = _getDOMRect2.width;
  var _useState = (0, _react.useState)(0),startWidth = _useState[0],setStartWidth = _useState[1];
  var fullWidth = ((_ref$current = ref.current) == null || (_ref$current = _ref$current.parentElement) == null ? void 0 : _ref$current.offsetWidth) || 0;
  (0, _react.useEffect)(function () {
    if (status === 'error') {
      setStartWidth(width);
    } else if (status === 'accept') {
      setStartWidth(startWidth);
    } else {
      setStartWidth(0);
    }
  }, [status]);

  return { width: width, startWidth: startWidth, fullWidth: fullWidth };
};