diff --git a/apps/client/src/features/share/components/share-modal.tsx b/apps/client/src/features/share/components/share-modal.tsx
index 20dcc518..a39effca 100644
--- a/apps/client/src/features/share/components/share-modal.tsx
+++ b/apps/client/src/features/share/components/share-modal.tsx
@@ -10,7 +10,7 @@ import {
TextInput,
Tooltip,
} from "@mantine/core";
-import { IconExternalLink, IconWorld } from "@tabler/icons-react";
+import { IconExternalLink, IconWorld, IconLock } from "@tabler/icons-react";
import React, { useEffect, useMemo, useState } from "react";
import {
useCreateShareMutation,
@@ -18,23 +18,27 @@ import {
useShareForPageQuery,
useUpdateShareMutation,
} from "@/features/share/queries/share-query.ts";
-import { Link, useParams } from "react-router-dom";
+import { Link, useNavigate, useParams } from "react-router-dom";
import { extractPageSlugId, getPageIcon } from "@/lib";
import { useTranslation } from "react-i18next";
import CopyTextButton from "@/components/common/copy.tsx";
-import { getAppUrl } from "@/lib/config.ts";
+import { getAppUrl, isCloud } from "@/lib/config.ts";
import { buildPageUrl } from "@/features/page/page.utils.ts";
import classes from "@/features/share/components/share.module.css";
+import useTrial from "@/ee/hooks/use-trial.tsx";
+import { getCheckoutLink } from "@/ee/billing/services/billing-service.ts";
interface ShareModalProps {
readOnly: boolean;
}
export default function ShareModal({ readOnly }: ShareModalProps) {
const { t } = useTranslation();
+ const navigate = useNavigate();
const { pageSlug } = useParams();
const pageId = extractPageSlugId(pageSlug);
const { data: share } = useShareForPageQuery(pageId);
const { spaceSlug } = useParams();
+ const { isTrial } = useTrial();
const createShareMutation = useCreateShareMutation();
const updateShareMutation = useUpdateShareMutation();
const deleteShareMutation = useDeleteShareMutation();
@@ -61,7 +65,7 @@ export default function ShareModal({ readOnly }: ShareModalProps) {
createShareMutation.mutateAsync({
pageId: pageId,
includeSubPages: true,
- searchIndexing: true,
+ searchIndexing: false,
});
setIsPagePublic(value);
} else {
@@ -92,26 +96,29 @@ export default function ShareModal({ readOnly }: ShareModalProps) {
});
};
- const shareLink = useMemo(() => (
-
- }
- style={{ width: "100%" }}
- />
-
-
-
-
- ), [publicLink]);
+ const shareLink = useMemo(
+ () => (
+
+ }
+ style={{ width: "100%" }}
+ />
+
+
+
+
+ ),
+ [publicLink],
+ );
return (
@@ -135,7 +142,28 @@ export default function ShareModal({ readOnly }: ShareModalProps) {
- {isDescendantShared ? (
+ {isCloud() && isTrial ? (
+ <>
+
+
+
+
+ {t("Upgrade to share pages")}
+
+
+ {t(
+ "Page sharing is available on paid plans. Upgrade to share your pages publicly.",
+ )}
+
+
+ >
+ ) : isDescendantShared ? (
<>
{t("Inherits public sharing from")}