import React, { useState } from 'react';
import PropTypes from 'prop-types';
import { UncontrolledTooltip } from 'reactstrap';
import { withTranslation } from 'react-i18next';
import urljoin from 'url-join';
import { withUnstatedContainers } from '../UnstatedUtils';
import AppContainer from '../../services/AppContainer';
import PageContainer from '../../services/PageContainer';
import OutsideShareLinkModal from '../OutsideShareLinkModal';
// TODO GW-2746 bulk export pages
// import ArchiveCreateModal from '../ArchiveCreateModal';
const PageShareManagement = (props) => {
const { t, appContainer, pageContainer } = props;
// TODO GW-2746 bulk export pages
// eslint-disable-next-line no-unused-vars
const { path, pageId } = pageContainer.state;
const { currentUser } = appContainer;
const [isOutsideShareLinkModalShown, setIsOutsideShareLinkModalShown] = useState(false);
// TODO GW-2746 bulk export pages
// const [isArchiveCreateModalShown, setIsArchiveCreateModalShown] = useState(false);
// const [totalPages, setTotalPages] = useState(null);
// const [errorMessage, setErrorMessage] = useState(null);
function openOutsideShareLinkModalHandler() {
setIsOutsideShareLinkModalShown(true);
}
function closeOutsideShareLinkModalHandler() {
setIsOutsideShareLinkModalShown(false);
}
// TODO GW-2746 bulk export pages
// async function getArchivePageData() {
// try {
// const res = await appContainer.apiv3Get('page/count-children-pages', { pageId });
// setTotalPages(res.data.dummy);
// }
// catch (err) {
// setErrorMessage(t('export_bulk.failed_to_count_pages'));
// }
// }
async function exportPageHandler(format) {
const { pageId, revisionId } = pageContainer.state;
const url = new URL(urljoin(window.location.origin, '_api/v3/page/export', pageId));
url.searchParams.append('format', format);
url.searchParams.append('revisionId', revisionId);
window.location.href = url.href;
}
// TODO GW-2746 create api to bulk export pages
// function openArchiveModalHandler() {
// setIsArchiveCreateModalShown(true);
// getArchivePageData();
// }
// TODO GW-2746 create api to bulk export pages
// function closeArchiveCreateModalHandler() {
// setIsArchiveCreateModalShown(false);
// }
function renderModals() {
if (currentUser == null) {
return null;
}
return (
<>