2
0
Files
cal/calcom/packages/features/embed/lib/getApiName.tsx
2024-08-09 00:39:27 +02:00

30 lines
849 B
TypeScript

export function getApiNameWithNamespace({
namespace,
mainApiName,
}: {
namespace: string;
mainApiName: string;
}) {
const isAValidVariableName = /^[a-zA-Z_$][a-zA-Z_$0-9]*$/.test(namespace);
// Try to use dot notation if possible because it's more readable otherwise use bracket notation
return isAValidVariableName ? `${mainApiName}.ns.${namespace}` : `${mainApiName}.ns["${namespace}"]`;
}
function getApiNameWithoutNamespace({ mainApiName }: { mainApiName: string }) {
return mainApiName;
}
export function getApiNameForReactSnippet({ mainApiName }: { mainApiName: string }) {
return getApiNameWithoutNamespace({ mainApiName });
}
export function getApiNameForVanillaJsSnippet({
namespace,
mainApiName,
}: {
namespace: string;
mainApiName: string;
}) {
return getApiNameWithNamespace({ mainApiName, namespace });
}