* adjustments for each language json file: - changed every Cal or Cal.com with a variable to make it possible to change that with a custom brand - fix and renamed ATTENDEE with attendeeName * added two new variables for appName and support mail address. so everybody can change it via env * changed static Cal or Cal.com with new defined constants * Using useLocal to modify static text to make it multilingual, and passing the correct variables for brand and mail * adding new readable variables for brand, website domain and mail address * fixed search routes * made static text multilingual and fixed german translations * Revert "fixed search routes" moved changes in another pr This reverts commit e6ba11a1ec7821d8c16c502d0357f6d5fcdb1958. * revert non whitelabel changes and moved it into another pr * revert attendeeName fix * reverted translation fixes and moved them in another pr * changed back to "Cal.com Logo" * changed back to "https://console.cal.com" * added new env variable for company name and replaced some domainName variables in language files * changed default for COMPANY_NAME to Cal.com, Inc. * changed Cal.com to APP_NAME for mail templates * Dropped website domain in favor of app name * Update .env.example * Apply suggestions from code review * Code review feedback * Delete App.tsx * Update packages/ui/Kbar.tsx * added meta.CTA back it was mistakenly removed * updated add members test Co-authored-by: maxi <maximilian.oehrlein@clicksports.de> Co-authored-by: Peer Richelsen <peeroke@gmail.com> Co-authored-by: zomars <zomars@me.com>
70 lines
2.0 KiB
TypeScript
70 lines
2.0 KiB
TypeScript
/**
|
|
* @deprecated file
|
|
* All new changes should be made to the V2 file in
|
|
* `/packages/features/ee/common/components/v2/LicenseRequired.tsx`
|
|
*/
|
|
import { useSession } from "next-auth/react";
|
|
import React, { AriaRole, ComponentType, Fragment } from "react";
|
|
|
|
import { APP_NAME, CONSOLE_URL, SUPPORT_MAIL_ADDRESS } from "@calcom/lib/constants";
|
|
import { useLocale } from "@calcom/lib/hooks/useLocale";
|
|
import { EmptyScreen, Icon } from "@calcom/ui";
|
|
|
|
type LicenseRequiredProps = {
|
|
as?: keyof JSX.IntrinsicElements | "";
|
|
className?: string;
|
|
role?: AriaRole | undefined;
|
|
children: React.ReactNode;
|
|
};
|
|
|
|
/**
|
|
* @deprecated file
|
|
* All new changes should be made to the V2 file in
|
|
* `/packages/features/ee/common/components/v2/LicenseRequired.tsx`
|
|
* This component will only render it's children if the installation has a valid
|
|
* license.
|
|
*/
|
|
const LicenseRequired = ({ children, as = "", ...rest }: LicenseRequiredProps) => {
|
|
const { t } = useLocale();
|
|
const session = useSession();
|
|
const Component = as || Fragment;
|
|
return (
|
|
<Component {...rest}>
|
|
{session.data?.hasValidLicense ? (
|
|
children
|
|
) : (
|
|
<EmptyScreen
|
|
Icon={Icon.FiAlertTriangle}
|
|
headline="This is an enterprise feature"
|
|
description={
|
|
<div
|
|
dangerouslySetInnerHTML={{
|
|
__html: t("enterprise_license_description", {
|
|
consoleUrl: `<a href="${CONSOLE_URL}" target="_blank" rel="noopener noreferrer" class="underline">
|
|
${APP_NAME}
|
|
</a>`,
|
|
supportMail: `<a href="mailto:${SUPPORT_MAIL_ADDRESS}" class="underline">
|
|
${SUPPORT_MAIL_ADDRESS}
|
|
</a>`,
|
|
}),
|
|
}}
|
|
/>
|
|
}
|
|
/>
|
|
)}
|
|
</Component>
|
|
);
|
|
};
|
|
|
|
export const withLicenseRequired =
|
|
<T,>(Component: ComponentType<T>) =>
|
|
// eslint-disable-next-line react/display-name
|
|
(hocProps: T) =>
|
|
(
|
|
<LicenseRequired>
|
|
<Component {...hocProps} />
|
|
</LicenseRequired>
|
|
);
|
|
|
|
export default LicenseRequired;
|