License FAQ (#2581)
Signed-off-by: Daniel Valdivia <18384552+dvaldivia@users.noreply.github.com>
This commit is contained in:
@@ -56,7 +56,10 @@
|
||||
"eject": "react-scripts eject"
|
||||
},
|
||||
"eslintConfig": {
|
||||
"extends": "react-app"
|
||||
"extends": "react-app",
|
||||
"rules": {
|
||||
"react/jsx-no-target-blank": "off"
|
||||
}
|
||||
},
|
||||
"browserslist": {
|
||||
"production": [
|
||||
|
||||
@@ -291,7 +291,7 @@ const Account = () => {
|
||||
<a
|
||||
href="https://min.io/docs/minio/linux/administration/identity-access-management/minio-user-management.html?ref=con#service-accounts"
|
||||
target="_blank"
|
||||
rel="noreferrer"
|
||||
rel="noopener"
|
||||
>
|
||||
documentation
|
||||
</a>
|
||||
|
||||
@@ -221,7 +221,7 @@ const BucketEventsPanel = ({ classes }: IBucketEventsProps) => {
|
||||
<a
|
||||
href="https://min.io/docs/minio/linux/administration/monitoring/bucket-notifications.html?ref=con"
|
||||
target="_blank"
|
||||
rel="noreferrer"
|
||||
rel="noopener"
|
||||
>
|
||||
documentation
|
||||
</a>
|
||||
|
||||
@@ -336,7 +336,7 @@ const BucketLifecyclePanel = ({ classes }: IBucketLifecyclePanelProps) => {
|
||||
<a
|
||||
href="https://min.io/docs/minio/linux/administration/object-management/object-lifecycle-management.html?ref=con"
|
||||
target="_blank"
|
||||
rel="noreferrer"
|
||||
rel="noopener"
|
||||
>
|
||||
documentation
|
||||
</a>
|
||||
|
||||
@@ -365,7 +365,7 @@ const BucketReplicationPanel = ({ classes }: IBucketReplicationProps) => {
|
||||
<a
|
||||
href="https://min.io/docs/minio/linux/administration/bucket-replication.html?ref=con"
|
||||
target="_blank"
|
||||
rel="noreferrer"
|
||||
rel="noopener"
|
||||
>
|
||||
documentation
|
||||
</a>
|
||||
|
||||
@@ -303,7 +303,7 @@ const AddBucket = ({ classes }: IsetProps) => {
|
||||
<a
|
||||
href="https://min.io/docs/minio/linux/operations/install-deploy-manage/deploy-minio-multi-node-multi-drive.html?ref=con"
|
||||
target="_blank"
|
||||
rel="noreferrer"
|
||||
rel="noopener"
|
||||
>
|
||||
Distributed Mode
|
||||
</a>{" "}
|
||||
|
||||
@@ -53,7 +53,7 @@ const DistributedOnly = ({ iconComponent, entity }: IDistributedOnly) => {
|
||||
<a
|
||||
href="https://min.io/docs/minio/linux/operations/install-deploy-manage/deploy-minio-multi-node-multi-drive.html?ref=con"
|
||||
target="_blank"
|
||||
rel="noreferrer"
|
||||
rel="noopener"
|
||||
>
|
||||
Distributed Mode
|
||||
</a>{" "}
|
||||
|
||||
@@ -45,7 +45,7 @@ const MissingIntegration = ({
|
||||
This feature is not available.
|
||||
<br />
|
||||
Please configure{" "}
|
||||
<a href={documentationLink} target="_blank" rel="noreferrer">
|
||||
<a href={documentationLink} target="_blank" rel="noopener">
|
||||
{entity}
|
||||
</a>{" "}
|
||||
first to use this feature.
|
||||
|
||||
@@ -128,7 +128,7 @@ const ConfigurationOptions = ({ classes }: IConfigurationOptions) => {
|
||||
<a
|
||||
href="https://min.io/docs/minio/linux/reference/minio-mc-admin/mc-admin-config.html?ref=con#id4"
|
||||
target="_blank"
|
||||
rel="noreferrer"
|
||||
rel="noopener"
|
||||
>
|
||||
documentation
|
||||
</a>
|
||||
|
||||
@@ -215,7 +215,7 @@ const SiteReplication = () => {
|
||||
<a
|
||||
href="https://min.io/docs/minio/linux/operations/install-deploy-manage/multi-site-replication.html?ref=con"
|
||||
target="_blank"
|
||||
rel="noreferrer"
|
||||
rel="noopener"
|
||||
>
|
||||
documentation
|
||||
</a>
|
||||
@@ -260,7 +260,7 @@ const SiteReplication = () => {
|
||||
<a
|
||||
href="https://github.com/minio/minio/tree/master/docs/site-replication?ref=con"
|
||||
target="_blank"
|
||||
rel="noreferrer"
|
||||
rel="noopener"
|
||||
>
|
||||
documentation
|
||||
</a>
|
||||
|
||||
@@ -470,7 +470,7 @@ const ListTiersConfiguration = ({ classes }: IListTiersConfig) => {
|
||||
<a
|
||||
href="https://min.io/docs/minio/linux/administration/object-management/object-lifecycle-management.html?ref=con"
|
||||
target="_blank"
|
||||
rel="noreferrer"
|
||||
rel="noopener"
|
||||
>
|
||||
documentation
|
||||
</a>
|
||||
|
||||
@@ -67,7 +67,7 @@ const TierTypeSelector = () => {
|
||||
<a
|
||||
href="https://min.io/docs/minio/kubernetes/upstream/administration/object-management/transition-objects-to-s3.html#minio-lifecycle-management-transition-to-s3?ref=con"
|
||||
target="_blank"
|
||||
rel="noreferrer"
|
||||
rel="noopener"
|
||||
>
|
||||
MinIO or other S3-compatible storage
|
||||
</a>
|
||||
@@ -76,7 +76,7 @@ const TierTypeSelector = () => {
|
||||
<a
|
||||
href="https://min.io/docs/minio/kubernetes/upstream/administration/object-management/transition-objects-to-s3.html#minio-lifecycle-management-transition-to-s3?ref=con"
|
||||
target="_blank"
|
||||
rel="noreferrer"
|
||||
rel="noopener"
|
||||
>
|
||||
Amazon S3
|
||||
</a>
|
||||
@@ -85,7 +85,7 @@ const TierTypeSelector = () => {
|
||||
<a
|
||||
href="https://min.io/docs/minio/kubernetes/upstream/administration/object-management/transition-objects-to-gcs.html#minio-lifecycle-management-transition-to-gcs?ref=con"
|
||||
target="_blank"
|
||||
rel="noreferrer"
|
||||
rel="noopener"
|
||||
>
|
||||
Google Cloud Storage
|
||||
</a>
|
||||
@@ -94,7 +94,7 @@ const TierTypeSelector = () => {
|
||||
<a
|
||||
href="https://min.io/docs/minio/kubernetes/upstream/administration/object-management/transition-objects-to-azure.html#minio-lifecycle-management-transition-to-azure?ref=con"
|
||||
target="_blank"
|
||||
rel="noreferrer"
|
||||
rel="noopener"
|
||||
>
|
||||
Microsoft Azure Blob Storage
|
||||
</a>
|
||||
|
||||
@@ -355,7 +355,7 @@ const BasicDashboard = ({ usage }: IDashboardProps) => {
|
||||
<a
|
||||
href="https://min.io/docs/minio/linux/operations/monitoring/collect-minio-metrics-using-prometheus.html"
|
||||
target="_blank"
|
||||
rel="noreferrer"
|
||||
rel="noopener"
|
||||
>
|
||||
Read more about Prometheus on our Docs site.
|
||||
</a>
|
||||
|
||||
@@ -284,7 +284,7 @@ const DirectPVMain = ({ classes }: IDirectPVMain) => {
|
||||
For more information{" "}
|
||||
<a
|
||||
href="https://github.com/minio/directpv"
|
||||
rel="noreferrer"
|
||||
rel="noopener"
|
||||
target="_blank"
|
||||
className={classes.linkItem}
|
||||
>
|
||||
|
||||
@@ -375,7 +375,7 @@ const Groups = ({ classes }: IGroupsProps) => {
|
||||
<a
|
||||
href="https://min.io/docs/minio/linux/administration/identity-access-management/minio-group-management.html?ref=con"
|
||||
target="_blank"
|
||||
rel="noreferrer"
|
||||
rel="noopener"
|
||||
>
|
||||
documentation
|
||||
</a>
|
||||
|
||||
@@ -94,7 +94,7 @@ const AddIDPConfigurationHelpBox = ({
|
||||
</Fragment>
|
||||
))}
|
||||
<Box sx={{ paddingBottom: "20px" }}>
|
||||
<a href={docLink} target="_blank" rel="noreferrer">
|
||||
<a href={docLink} target="_blank" rel="noopener">
|
||||
{docText}
|
||||
</a>
|
||||
</Box>
|
||||
|
||||
41
portal-ui/src/screens/Console/License/FAQModal.tsx
Normal file
41
portal-ui/src/screens/Console/License/FAQModal.tsx
Normal file
@@ -0,0 +1,41 @@
|
||||
// This file is part of MinIO Console Server
|
||||
// Copyright (c) 2023 MinIO, Inc.
|
||||
//
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU Affero General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU Affero General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU Affero General Public License
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React from "react";
|
||||
import ModalWrapper from "../Common/ModalWrapper/ModalWrapper";
|
||||
import LicenseFAQ from "./LicenseFAQ";
|
||||
import { useSelector } from "react-redux";
|
||||
import { AppState, useAppDispatch } from "../../../store";
|
||||
import { closeFAQModal } from "./licenseSlice";
|
||||
|
||||
const FAQModal = () => {
|
||||
const dispatch = useAppDispatch();
|
||||
const isOpen = useSelector((state: AppState) => state.license.faqModalOpen);
|
||||
|
||||
return (
|
||||
<ModalWrapper
|
||||
modalOpen={isOpen}
|
||||
title="License FAQ"
|
||||
onClose={() => {
|
||||
dispatch(closeFAQModal());
|
||||
}}
|
||||
>
|
||||
<LicenseFAQ />
|
||||
</ModalWrapper>
|
||||
);
|
||||
};
|
||||
|
||||
export default FAQModal;
|
||||
@@ -21,6 +21,7 @@ import { Button } from "mds";
|
||||
import { AGPLV3DarkLogo } from "mds";
|
||||
import { setLicenseConsent } from "./utils";
|
||||
import LicenseLink from "./LicenseLink";
|
||||
import LicenseFAQ from "./LicenseFAQ";
|
||||
|
||||
const LicenseConsentModal = ({
|
||||
isOpen,
|
||||
@@ -78,7 +79,7 @@ const LicenseConsentModal = ({
|
||||
found here:{" "}
|
||||
<a
|
||||
href={`https://www.gnu.org/licenses/agpl-3.0.html`}
|
||||
rel="noreferrer noopener"
|
||||
rel="noopener"
|
||||
className={"link-text"}
|
||||
>
|
||||
https://www.gnu.org/licenses/agpl-3.0.html.
|
||||
@@ -95,13 +96,15 @@ const LicenseConsentModal = ({
|
||||
available here:{" "}
|
||||
<a
|
||||
href={`https://min.io/signup?ref=con`}
|
||||
rel="noreferrer noopener"
|
||||
rel="noopener"
|
||||
className={"link-text"}
|
||||
>
|
||||
https://min.io/signup.
|
||||
</a>
|
||||
</Box>
|
||||
|
||||
<LicenseFAQ />
|
||||
|
||||
<Box
|
||||
sx={{
|
||||
marginTop: "19px",
|
||||
|
||||
61
portal-ui/src/screens/Console/License/LicenseFAQ.tsx
Normal file
61
portal-ui/src/screens/Console/License/LicenseFAQ.tsx
Normal file
@@ -0,0 +1,61 @@
|
||||
// This file is part of MinIO Console Server
|
||||
// Copyright (c) 2023 MinIO, Inc.
|
||||
//
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU Affero General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU Affero General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU Affero General Public License
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { Fragment } from "react";
|
||||
|
||||
const LicenseFAQ = () => {
|
||||
return (
|
||||
<Fragment>
|
||||
<h2>What is the GNU AGPL v3?</h2>
|
||||
<p>
|
||||
The GNU AGPL v3 is short for the "GNU Affero General Public License v3."
|
||||
It is a common open source license certified by the Free Software
|
||||
Foundation and the Open Source Initiative. You can get a copy of the GNU
|
||||
AGPL v3 license with MinIO source code or at
|
||||
<a href={"https://min.io/compliance?ref=con"} target={"_blank"}>
|
||||
https://www.gnu.org/licenses/agpl-3.0.en.html
|
||||
</a>
|
||||
.
|
||||
</p>
|
||||
<h2>What does it mean for me to comply with the GNU AGPL v3?</h2>
|
||||
<p>
|
||||
When you host or distribute MinIO over a network, the AGPL v3 applies to
|
||||
you. Any distribution or copying of MinIO software modified or not has
|
||||
to comply with the obligations specified in the AGPL v3. Otherwise, you
|
||||
may risk infringing MinIO’s copyrights.
|
||||
</p>
|
||||
<h2>Making combined or derivative works of MinIO</h2>
|
||||
<p>
|
||||
Combining MinIO software as part of a larger software stack triggers
|
||||
your GNU AGPL v3 obligations.
|
||||
</p>
|
||||
<p>
|
||||
The method of combining does not matter. When MinIO is linked to a
|
||||
larger software stack in any form, including statically, dynamically,
|
||||
pipes, or containerized and invoked remotely, the AGPL v3 applies to
|
||||
your use. What triggers the AGPL v3 obligations is the exchanging data
|
||||
between the larger stack and MinIO.
|
||||
</p>
|
||||
<h2>Talking to your Legal Counsel</h2>
|
||||
<p>
|
||||
If you have questions, we recommend that you talk to your own attorney
|
||||
for legal advice. Purchasing a commercial license from MinIO removes the
|
||||
AGPL v3 obligations from MinIO software.
|
||||
</p>
|
||||
</Fragment>
|
||||
);
|
||||
};
|
||||
export default LicenseFAQ;
|
||||
@@ -445,6 +445,8 @@ const LicensePlans = ({ licenseInfo, operatorMode }: IRegisterStatus) => {
|
||||
fontSize: "14px",
|
||||
"& .link-text": {
|
||||
color: "#2781B0",
|
||||
cursor: "pointer",
|
||||
textDecoration: "underline",
|
||||
},
|
||||
|
||||
"&.icon-yes": {
|
||||
@@ -514,6 +516,8 @@ const LicensePlans = ({ licenseInfo, operatorMode }: IRegisterStatus) => {
|
||||
|
||||
"& .link-text": {
|
||||
color: "#2781B0",
|
||||
cursor: "pointer",
|
||||
textDecoration: "underline",
|
||||
},
|
||||
|
||||
"& .min-icon": {
|
||||
@@ -526,7 +530,7 @@ const LicensePlans = ({ licenseInfo, operatorMode }: IRegisterStatus) => {
|
||||
<LicenseDocIcon />
|
||||
<a
|
||||
href={`https://subnet.min.io/terms-and-conditions/${currentPlan}`}
|
||||
rel="noreferrer noopener"
|
||||
rel="noopener"
|
||||
className={"link-text"}
|
||||
>
|
||||
View License agreement <br />
|
||||
|
||||
42
portal-ui/src/screens/Console/License/licenseSlice.ts
Normal file
42
portal-ui/src/screens/Console/License/licenseSlice.ts
Normal file
@@ -0,0 +1,42 @@
|
||||
// This file is part of MinIO Console Server
|
||||
// Copyright (c) 2023 MinIO, Inc.
|
||||
//
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU Affero General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU Affero General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU Affero General Public License
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import { createSlice } from "@reduxjs/toolkit";
|
||||
|
||||
export interface IAddPool {
|
||||
faqModalOpen: boolean;
|
||||
}
|
||||
|
||||
const initialState: IAddPool = {
|
||||
faqModalOpen: false,
|
||||
};
|
||||
|
||||
export const licenseSlice = createSlice({
|
||||
name: "license",
|
||||
initialState,
|
||||
reducers: {
|
||||
openFAQModal: (state) => {
|
||||
state.faqModalOpen = true;
|
||||
},
|
||||
closeFAQModal: (state) => {
|
||||
state.faqModalOpen = false;
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
export const { openFAQModal, closeFAQModal } = licenseSlice.actions;
|
||||
|
||||
export default licenseSlice.reducer;
|
||||
@@ -16,6 +16,9 @@
|
||||
|
||||
import { Box } from "@mui/material";
|
||||
import LicenseLink from "./LicenseLink";
|
||||
import { openFAQModal } from "./licenseSlice";
|
||||
import store from "../../../store";
|
||||
import FAQModal from "./FAQModal";
|
||||
|
||||
export const LICENSE_PLANS = {
|
||||
COMMUNITY: "community",
|
||||
@@ -37,7 +40,7 @@ const FeatureLink = ({ text, anchor }: { text: string; anchor: string }) => {
|
||||
href={`https://min.io/product/subnet?ref=con#${anchor}`}
|
||||
className={"link-text"}
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
rel="noopener "
|
||||
style={{
|
||||
color: "#2781B0",
|
||||
}}
|
||||
@@ -56,7 +59,7 @@ export const FEATURE_ITEMS: FeatureItem[] = [
|
||||
label: "",
|
||||
isHeader: false,
|
||||
style: {
|
||||
height: "360px",
|
||||
height: "400px",
|
||||
verticalAlign: "top",
|
||||
alignItems: "start",
|
||||
},
|
||||
@@ -138,13 +141,24 @@ export const COMMUNITY_PLAN_FEATURES = [
|
||||
distribute the complete, corresponding source code of the combined
|
||||
work under the same <LicenseLink /> license. This requirement
|
||||
applies whether or not you modified MinIO.
|
||||
<br />
|
||||
<br />
|
||||
<span
|
||||
className="link-text"
|
||||
onClick={() => {
|
||||
store.dispatch(openFAQModal());
|
||||
}}
|
||||
>
|
||||
Compliance FAQ
|
||||
</span>
|
||||
<FAQModal />
|
||||
</span>
|
||||
</Box>
|
||||
);
|
||||
},
|
||||
isHeader: false,
|
||||
style: {
|
||||
height: "360px",
|
||||
height: "400px",
|
||||
borderBottom: 0,
|
||||
},
|
||||
},
|
||||
@@ -228,7 +242,7 @@ export const STANDARD_PLAN_FEATURES = [
|
||||
href="https://min.io/product/subnet?ref=con"
|
||||
className={"link-text"}
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
rel="noopener"
|
||||
>
|
||||
click here
|
||||
</a>
|
||||
@@ -237,7 +251,7 @@ export const STANDARD_PLAN_FEATURES = [
|
||||
);
|
||||
},
|
||||
style: {
|
||||
height: "360px",
|
||||
height: "400px",
|
||||
borderBottom: 0,
|
||||
},
|
||||
},
|
||||
@@ -341,7 +355,7 @@ export const ENTERPRISE_PLAN_FEATURES = [
|
||||
href="https://min.io/product/subnet?ref=con"
|
||||
className={"link-text"}
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
rel="noopener"
|
||||
>
|
||||
click here
|
||||
</a>
|
||||
@@ -350,7 +364,7 @@ export const ENTERPRISE_PLAN_FEATURES = [
|
||||
);
|
||||
},
|
||||
style: {
|
||||
height: "360px",
|
||||
height: "400px",
|
||||
borderBottom: 0,
|
||||
},
|
||||
},
|
||||
|
||||
@@ -101,7 +101,7 @@ const SetEmailModal = ({ open, closeModal }: ISetEmailModalProps) => {
|
||||
<a
|
||||
href="https://min.io/product/subnet"
|
||||
target="_blank"
|
||||
rel="noreferrer"
|
||||
rel="noopener"
|
||||
>
|
||||
MinIO Subscription Network (SUBNET)
|
||||
</a>
|
||||
|
||||
@@ -257,7 +257,7 @@ const ListNotificationEndpoints = ({ classes }: IListNotificationEndpoints) => {
|
||||
<a
|
||||
href="https://min.io/docs/minio/linux/administration/monitoring/bucket-notifications.html?ref=con"
|
||||
target="_blank"
|
||||
rel="noreferrer"
|
||||
rel="noopener"
|
||||
>
|
||||
documentation
|
||||
</a>
|
||||
|
||||
@@ -282,7 +282,7 @@ const ListPolicies = ({ classes }: IPoliciesProps) => {
|
||||
<a
|
||||
href="https://min.io/docs/minio/linux/administration/identity-access-management.html?ref=con#access-management"
|
||||
target="_blank"
|
||||
rel="noreferrer"
|
||||
rel="noopener"
|
||||
>
|
||||
documentation
|
||||
</a>
|
||||
|
||||
@@ -129,7 +129,7 @@ const TLSHelpBox = () => {
|
||||
<a
|
||||
href="https://min.io/docs/minio/kubernetes/upstream/operations/network-encryption.html?ref=op#id5"
|
||||
target="_blank"
|
||||
rel="noreferrer"
|
||||
rel="noopener"
|
||||
>
|
||||
documentation
|
||||
</a>
|
||||
|
||||
@@ -264,7 +264,7 @@ const LoggingScreen = ({ classes }: ILoggingScreenProps) => {
|
||||
<a
|
||||
href="https://min.io/docs/minio/kubernetes/upstream/operations/monitoring/minio-logging.html"
|
||||
target="_blank"
|
||||
rel="noreferrer"
|
||||
rel="noopener"
|
||||
>
|
||||
{" documentation "}
|
||||
</a>
|
||||
|
||||
@@ -309,7 +309,7 @@ const TenantSummary = ({ classes }: ITenantsSummary) => {
|
||||
<a
|
||||
href={tenant?.endpoints?.console}
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
rel="noopener"
|
||||
className={`${classes.linkedSection} ${classes.autoGeneratedLink}`}
|
||||
>
|
||||
{tenant?.endpoints?.console || "-"}
|
||||
@@ -322,7 +322,7 @@ const TenantSummary = ({ classes }: ITenantsSummary) => {
|
||||
<a
|
||||
href={tenant?.domains?.console || ""}
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
rel="noopener"
|
||||
className={classes.linkedSection}
|
||||
>
|
||||
{tenant?.domains?.console || ""}
|
||||
@@ -350,7 +350,7 @@ const TenantSummary = ({ classes }: ITenantsSummary) => {
|
||||
<a
|
||||
href={tenant?.endpoints?.minio}
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
rel="noopener"
|
||||
className={`${classes.linkedSection} ${classes.autoGeneratedLink}`}
|
||||
>
|
||||
{tenant?.endpoints?.minio || "-"}
|
||||
@@ -366,7 +366,7 @@ const TenantSummary = ({ classes }: ITenantsSummary) => {
|
||||
<a
|
||||
href={domain}
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
rel="noopener"
|
||||
className={classes.linkedSection}
|
||||
>
|
||||
{domain}
|
||||
|
||||
@@ -547,7 +547,7 @@ const Inspect = ({ classes }: { classes: any }) => {
|
||||
<a
|
||||
href="https://github.com/minio/minio/tree/master/docs/debugging?ref=con"
|
||||
target="_blank"
|
||||
rel="noreferrer"
|
||||
rel="noopener"
|
||||
>
|
||||
documentation
|
||||
</a>
|
||||
|
||||
@@ -414,7 +414,7 @@ const ListUsers = ({ classes }: IUsersProps) => {
|
||||
<a
|
||||
href="https://min.io/docs/minio/kubernetes/upstream/administration/identity-access-management/minio-user-management.html?ref=con"
|
||||
target="_blank"
|
||||
rel="noreferrer"
|
||||
rel="noopener"
|
||||
>
|
||||
documentation
|
||||
</a>
|
||||
|
||||
@@ -498,14 +498,14 @@ const Login = () => {
|
||||
form={loginComponent}
|
||||
formFooter={
|
||||
<Fragment>
|
||||
<a href={docsURL} target="_blank" rel="noreferrer">
|
||||
<a href={docsURL} target="_blank" rel="noopener">
|
||||
Documentation
|
||||
</a>
|
||||
<span className={classes.separator}>|</span>
|
||||
<a
|
||||
href="https://github.com/minio/minio"
|
||||
target="_blank"
|
||||
rel="noreferrer"
|
||||
rel="noopener"
|
||||
>
|
||||
Github
|
||||
</a>
|
||||
@@ -513,7 +513,7 @@ const Login = () => {
|
||||
<a
|
||||
href="https://subnet.min.io/?ref=con"
|
||||
target="_blank"
|
||||
rel="noreferrer"
|
||||
rel="noopener"
|
||||
>
|
||||
Support
|
||||
</a>
|
||||
@@ -521,7 +521,7 @@ const Login = () => {
|
||||
<a
|
||||
href="https://min.io/download/?ref=con"
|
||||
target="_blank"
|
||||
rel="noreferrer"
|
||||
rel="noopener"
|
||||
>
|
||||
Download
|
||||
</a>
|
||||
|
||||
@@ -36,6 +36,7 @@ import editTenantMonitoringReducer from "./screens/Console/Tenants/TenantDetails
|
||||
import editTenantAuditLoggingReducer from "./screens/Console/Tenants/TenantDetails/tenantAuditLogSlice";
|
||||
import editTenantSecurityContextReducer from "./screens/Console/Tenants/tenantSecurityContextSlice";
|
||||
import directPVReducer from "./screens/Console/DirectPV/directPVSlice";
|
||||
import licenseReducer from "./screens/Console/License/licenseSlice";
|
||||
|
||||
const rootReducer = combineReducers({
|
||||
system: systemReducer,
|
||||
@@ -59,6 +60,7 @@ const rootReducer = combineReducers({
|
||||
editTenantLogging: editTenantAuditLoggingReducer,
|
||||
editTenantSecurityContext: editTenantSecurityContextReducer,
|
||||
directPV: directPVReducer,
|
||||
license: licenseReducer,
|
||||
});
|
||||
|
||||
export const store = configureStore({
|
||||
|
||||
Reference in New Issue
Block a user