Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
477ee1c526 | ||
|
|
6704e18e32 | ||
|
|
20f17903b9 | ||
|
|
8dabbbd09f | ||
|
|
32933ed6ef | ||
|
|
c765ea9b31 | ||
|
|
d3ddbf418f | ||
|
|
79d0513428 | ||
|
|
230b82d3bf | ||
|
|
c9b50ffb78 | ||
|
|
ada0ef242b | ||
|
|
b26e688950 | ||
|
|
d9041d03b7 | ||
|
|
f60b3c14e1 | ||
|
|
fbcc43931e | ||
|
|
a48e7cb39a | ||
|
|
db3f718ba6 | ||
|
|
ca5dd4626d | ||
|
|
4524d722f6 | ||
|
|
2094d59856 | ||
|
|
7b350a5b8f | ||
|
|
5a869228d3 | ||
|
|
dabd5eae73 | ||
|
|
cb78de231a | ||
|
|
b0a1ef8a49 | ||
|
|
0a43aa3351 | ||
|
|
ed4cce1c7e | ||
|
|
d595aa23c0 | ||
|
|
a6df49235f | ||
|
|
5df41e37a0 | ||
|
|
fca5778b6d | ||
|
|
0ddefaa141 | ||
|
|
c11f7aeffc | ||
|
|
9903fcaa05 |
No files matched your search
@@ -155,6 +155,7 @@ NEXT_PUBLIC_STRIPE_PREMIUM_NEW_PLAN_PRICE=
|
|||||||
STRIPE_TEAM_MONTHLY_PRICE_ID=
|
STRIPE_TEAM_MONTHLY_PRICE_ID=
|
||||||
STRIPE_ORG_MONTHLY_PRICE_ID=
|
STRIPE_ORG_MONTHLY_PRICE_ID=
|
||||||
STRIPE_WEBHOOK_SECRET=
|
STRIPE_WEBHOOK_SECRET=
|
||||||
|
STRIPE_WEBHOOK_SECRET_APPS=
|
||||||
STRIPE_PRIVATE_KEY=
|
STRIPE_PRIVATE_KEY=
|
||||||
STRIPE_CLIENT_ID=
|
STRIPE_CLIENT_ID=
|
||||||
PAYMENT_FEE_FIXED=
|
PAYMENT_FEE_FIXED=
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ import type { NextApiRequest } from "next";
|
|||||||
|
|
||||||
import { HttpError } from "@calcom/lib/http-error";
|
import { HttpError } from "@calcom/lib/http-error";
|
||||||
import { defaultResponder } from "@calcom/lib/server";
|
import { defaultResponder } from "@calcom/lib/server";
|
||||||
|
import { MembershipRole } from "@calcom/prisma/enums";
|
||||||
|
|
||||||
import { schemaEventTypeReadPublic } from "~/lib/validations/event-type";
|
import { schemaEventTypeReadPublic } from "~/lib/validations/event-type";
|
||||||
import { schemaQueryIdParseInt } from "~/lib/validations/shared/queryIdTransformParseInt";
|
import { schemaQueryIdParseInt } from "~/lib/validations/shared/queryIdTransformParseInt";
|
||||||
@@ -89,7 +90,9 @@ async function checkPermissions<T extends BaseEventTypeCheckPermissions>(
|
|||||||
if (req.isAdmin) return true;
|
if (req.isAdmin) return true;
|
||||||
if (eventType?.teamId) {
|
if (eventType?.teamId) {
|
||||||
req.query.teamId = String(eventType.teamId);
|
req.query.teamId = String(eventType.teamId);
|
||||||
await canAccessTeamEventOrThrow(req, "MEMBER");
|
await canAccessTeamEventOrThrow(req, {
|
||||||
|
in: [MembershipRole.OWNER, MembershipRole.ADMIN, MembershipRole.MEMBER],
|
||||||
|
});
|
||||||
}
|
}
|
||||||
if (eventType?.userId === req.userId) return true; // is owner.
|
if (eventType?.userId === req.userId) return true; // is owner.
|
||||||
throw new HttpError({ statusCode: 403, message: "Forbidden" });
|
throw new HttpError({ statusCode: 403, message: "Forbidden" });
|
||||||
|
|||||||
@@ -299,7 +299,7 @@ async function postHandler(req: NextApiRequest) {
|
|||||||
data.hosts = { createMany: { data: hosts } };
|
data.hosts = { createMany: { data: hosts } };
|
||||||
}
|
}
|
||||||
|
|
||||||
const eventType = await prisma.eventType.create({ data });
|
const eventType = await prisma.eventType.create({ data, include: { hosts: true } });
|
||||||
|
|
||||||
return {
|
return {
|
||||||
event_type: schemaEventTypeReadPublic.parse(eventType),
|
event_type: schemaEventTypeReadPublic.parse(eventType),
|
||||||
|
|||||||
@@ -22,7 +22,11 @@ export async function checkPermissions(
|
|||||||
role: Prisma.MembershipWhereInput["role"] = MembershipRole.OWNER
|
role: Prisma.MembershipWhereInput["role"] = MembershipRole.OWNER
|
||||||
) {
|
) {
|
||||||
const { userId, prisma, isAdmin } = req;
|
const { userId, prisma, isAdmin } = req;
|
||||||
const { teamId } = schemaQueryTeamId.parse(req.query);
|
const { teamId } = schemaQueryTeamId.parse({
|
||||||
|
teamId: req.query.teamId,
|
||||||
|
version: req.query.version,
|
||||||
|
apiKey: req.query.apiKey,
|
||||||
|
});
|
||||||
const args: Prisma.TeamFindFirstArgs = { where: { id: teamId } };
|
const args: Prisma.TeamFindFirstArgs = { where: { id: teamId } };
|
||||||
/** If not ADMIN then we check if the actual user belongs to team and matches the required role */
|
/** If not ADMIN then we check if the actual user belongs to team and matches the required role */
|
||||||
if (!isAdmin) args.where = { ...args.where, members: { some: { userId, role } } };
|
if (!isAdmin) args.where = { ...args.where, members: { some: { userId, role } } };
|
||||||
|
|||||||
@@ -56,6 +56,14 @@ async function getHandler(req: NextApiRequest) {
|
|||||||
members: { some: { userId } },
|
members: { some: { userId } },
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
include: {
|
||||||
|
customInputs: true,
|
||||||
|
team: { select: { slug: true } },
|
||||||
|
users: true,
|
||||||
|
hosts: { select: { userId: true, isFixed: true } },
|
||||||
|
owner: { select: { username: true, id: true } },
|
||||||
|
children: { select: { id: true, userId: true } },
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
const data = await prisma.eventType.findMany(args);
|
const data = await prisma.eventType.findMany(args);
|
||||||
|
|||||||
@@ -60,7 +60,7 @@ export const InstallAppButtonChild = ({
|
|||||||
disabled={shouldDisableInstallation}
|
disabled={shouldDisableInstallation}
|
||||||
color="primary"
|
color="primary"
|
||||||
size="base">
|
size="base">
|
||||||
{paid.trial ? t("start_paid_trial") : t("install_paid_app")}
|
{paid.trial ? t("start_paid_trial") : t("subscribe")}
|
||||||
</Button>
|
</Button>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
import { CAL_URL } from "@calcom/lib/constants";
|
||||||
import { getUserAvatarUrl } from "@calcom/lib/getAvatarUrl";
|
import { getUserAvatarUrl } from "@calcom/lib/getAvatarUrl";
|
||||||
import type { User } from "@calcom/prisma/client";
|
import type { User } from "@calcom/prisma/client";
|
||||||
import { AvatarGroup } from "@calcom/ui";
|
import { AvatarGroup } from "@calcom/ui";
|
||||||
@@ -11,6 +12,7 @@ export function UserAvatarGroup(props: UserAvatarProps) {
|
|||||||
<AvatarGroup
|
<AvatarGroup
|
||||||
{...rest}
|
{...rest}
|
||||||
items={users.map((user) => ({
|
items={users.map((user) => ({
|
||||||
|
href: `${CAL_URL}/${user.username}?redirect=false`,
|
||||||
alt: user.name || "",
|
alt: user.name || "",
|
||||||
title: user.name || "",
|
title: user.name || "",
|
||||||
image: getUserAvatarUrl(user),
|
image: getUserAvatarUrl(user),
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
import { WEBAPP_URL } from "@calcom/lib/constants";
|
import { useOrgBranding } from "@calcom/features/ee/organizations/context/provider";
|
||||||
|
import { CAL_URL, WEBAPP_URL } from "@calcom/lib/constants";
|
||||||
import { getUserAvatarUrl } from "@calcom/lib/getAvatarUrl";
|
import { getUserAvatarUrl } from "@calcom/lib/getAvatarUrl";
|
||||||
import type { Team, User } from "@calcom/prisma/client";
|
import type { Team, User } from "@calcom/prisma/client";
|
||||||
import { AvatarGroup } from "@calcom/ui";
|
import { AvatarGroup } from "@calcom/ui";
|
||||||
@@ -10,8 +11,11 @@ type UserAvatarProps = Omit<React.ComponentProps<typeof AvatarGroup>, "items"> &
|
|||||||
|
|
||||||
export function UserAvatarGroupWithOrg(props: UserAvatarProps) {
|
export function UserAvatarGroupWithOrg(props: UserAvatarProps) {
|
||||||
const { users, organization, ...rest } = props;
|
const { users, organization, ...rest } = props;
|
||||||
|
const orgBranding = useOrgBranding();
|
||||||
|
const baseUrl = `${orgBranding?.fullDomain ?? CAL_URL}`;
|
||||||
const items = [
|
const items = [
|
||||||
{
|
{
|
||||||
|
href: baseUrl,
|
||||||
image: `${WEBAPP_URL}/team/${organization.slug}/avatar.png`,
|
image: `${WEBAPP_URL}/team/${organization.slug}/avatar.png`,
|
||||||
alt: organization.name || undefined,
|
alt: organization.name || undefined,
|
||||||
title: organization.name,
|
title: organization.name,
|
||||||
@@ -19,6 +23,7 @@ export function UserAvatarGroupWithOrg(props: UserAvatarProps) {
|
|||||||
].concat(
|
].concat(
|
||||||
users.map((user) => {
|
users.map((user) => {
|
||||||
return {
|
return {
|
||||||
|
href: `${baseUrl}/${user.username}/?redirect=false`,
|
||||||
image: getUserAvatarUrl(user),
|
image: getUserAvatarUrl(user),
|
||||||
alt: user.name || undefined,
|
alt: user.name || undefined,
|
||||||
title: user.name || user.username || "",
|
title: user.name || user.username || "",
|
||||||
|
|||||||
@@ -71,13 +71,21 @@ if (process.env.GOOGLE_API_CREDENTIALS && !validJson(process.env.GOOGLE_API_CRED
|
|||||||
}
|
}
|
||||||
|
|
||||||
const informAboutDuplicateTranslations = () => {
|
const informAboutDuplicateTranslations = () => {
|
||||||
const valueSet = new Set();
|
const valueMap = {};
|
||||||
|
|
||||||
for (const key in englishTranslation) {
|
for (const key in englishTranslation) {
|
||||||
if (valueSet.has(englishTranslation[key])) {
|
const value = englishTranslation[key];
|
||||||
console.warn("\x1b[33mDuplicate value found in:", "\x1b[0m", key);
|
|
||||||
|
if (valueMap[value]) {
|
||||||
|
console.warn(
|
||||||
|
"\x1b[33mDuplicate value found in common.json keys:",
|
||||||
|
"\x1b[0m ",
|
||||||
|
key,
|
||||||
|
"and",
|
||||||
|
valueMap[value]
|
||||||
|
);
|
||||||
} else {
|
} else {
|
||||||
valueSet.add(englishTranslation[key]);
|
valueMap[value] = key;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@calcom/web",
|
"name": "@calcom/web",
|
||||||
"version": "3.5.2",
|
"version": "3.5.3",
|
||||||
"private": true,
|
"private": true,
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"analyze": "ANALYZE=true next build",
|
"analyze": "ANALYZE=true next build",
|
||||||
|
|||||||
@@ -54,6 +54,7 @@ export function UserPage(props: InferGetServerSidePropsType<typeof getServerSide
|
|||||||
// So it doesn't display in the Link (and make tests fail)
|
// So it doesn't display in the Link (and make tests fail)
|
||||||
user: _user,
|
user: _user,
|
||||||
orgSlug: _orgSlug,
|
orgSlug: _orgSlug,
|
||||||
|
redirect: _redirect,
|
||||||
...query
|
...query
|
||||||
} = useRouterQuery();
|
} = useRouterQuery();
|
||||||
|
|
||||||
@@ -116,7 +117,7 @@ export function UserPage(props: InferGetServerSidePropsType<typeof getServerSide
|
|||||||
: null
|
: null
|
||||||
}
|
}
|
||||||
/>
|
/>
|
||||||
<h1 className="font-cal text-emphasis mb-1 text-3xl" data-testid="name-title">
|
<h1 className="font-cal text-emphasis my-1 text-3xl" data-testid="name-title">
|
||||||
{profile.name}
|
{profile.name}
|
||||||
{user.verified && (
|
{user.verified && (
|
||||||
<Verified className=" mx-1 -mt-1 inline h-6 w-6 fill-blue-500 text-white dark:text-black" />
|
<Verified className=" mx-1 -mt-1 inline h-6 w-6 fill-blue-500 text-white dark:text-black" />
|
||||||
@@ -388,6 +389,16 @@ export const getServerSideProps: GetServerSideProps<UserPageProps> = async (cont
|
|||||||
descriptionAsSafeHTML: markdownToSafeHTML(eventType.description),
|
descriptionAsSafeHTML: markdownToSafeHTML(eventType.description),
|
||||||
}));
|
}));
|
||||||
|
|
||||||
|
// if profile only has one public event-type, redirect to it
|
||||||
|
if (eventTypes.length === 1 && context.query.redirect !== "false") {
|
||||||
|
return {
|
||||||
|
redirect: {
|
||||||
|
permanent: false,
|
||||||
|
destination: `/${user.username}/${eventTypes[0].slug}`,
|
||||||
|
},
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
const safeBio = markdownToSafeHTML(user.bio) || "";
|
const safeBio = markdownToSafeHTML(user.bio) || "";
|
||||||
|
|
||||||
const markdownStrippedBio = stripMarkdown(user?.bio || "");
|
const markdownStrippedBio = stripMarkdown(user?.bio || "");
|
||||||
|
|||||||
@@ -1,218 +1,53 @@
|
|||||||
import type { NextApiRequest, NextApiResponse } from "next";
|
import type { NextApiResponse } from "next";
|
||||||
|
|
||||||
import dayjs from "@calcom/dayjs";
|
import calcomSignupHandler from "@calcom/feature-auth/signup/handlers/calcomHandler";
|
||||||
import { checkPremiumUsername } from "@calcom/ee/common/lib/checkPremiumUsername";
|
import selfHostedSignupHandler from "@calcom/feature-auth/signup/handlers/selfHostedHandler";
|
||||||
import { hashPassword } from "@calcom/features/auth/lib/hashPassword";
|
import { type RequestWithUsernameStatus } from "@calcom/features/auth/signup/username";
|
||||||
import { sendEmailVerification } from "@calcom/features/auth/lib/verifyEmail";
|
import { IS_PREMIUM_USERNAME_ENABLED } from "@calcom/lib/constants";
|
||||||
import { IS_CALCOM } from "@calcom/lib/constants";
|
import { HttpError } from "@calcom/lib/http-error";
|
||||||
import slugify from "@calcom/lib/slugify";
|
import logger from "@calcom/lib/logger";
|
||||||
import { closeComUpsertTeamUser } from "@calcom/lib/sync/SyncServiceManager";
|
|
||||||
import { validateUsernameInTeam, validateUsername } from "@calcom/lib/validateUsername";
|
|
||||||
import prisma from "@calcom/prisma";
|
|
||||||
import { IdentityProvider } from "@calcom/prisma/enums";
|
|
||||||
import { MembershipRole } from "@calcom/prisma/enums";
|
|
||||||
import { signupSchema } from "@calcom/prisma/zod-utils";
|
|
||||||
import { teamMetadataSchema } from "@calcom/prisma/zod-utils";
|
|
||||||
|
|
||||||
export default async function handler(req: NextApiRequest, res: NextApiResponse) {
|
|
||||||
if (req.method !== "POST") {
|
|
||||||
return res.status(405).end();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
function ensureSignupIsEnabled() {
|
||||||
if (process.env.NEXT_PUBLIC_DISABLE_SIGNUP === "true") {
|
if (process.env.NEXT_PUBLIC_DISABLE_SIGNUP === "true") {
|
||||||
res.status(403).json({ message: "Signup is disabled" });
|
throw new HttpError({
|
||||||
return;
|
statusCode: 403,
|
||||||
}
|
message: "Signup is disabled",
|
||||||
|
|
||||||
const data = req.body;
|
|
||||||
const { email, password, language, token } = signupSchema.parse(data);
|
|
||||||
|
|
||||||
const username = slugify(data.username);
|
|
||||||
const userEmail = email.toLowerCase();
|
|
||||||
|
|
||||||
if (!username) {
|
|
||||||
res.status(422).json({ message: "Invalid username" });
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
let foundToken: { id: number; teamId: number | null; expires: Date } | null = null;
|
|
||||||
if (token) {
|
|
||||||
foundToken = await prisma.verificationToken.findFirst({
|
|
||||||
where: {
|
|
||||||
token,
|
|
||||||
},
|
|
||||||
select: {
|
|
||||||
id: true,
|
|
||||||
expires: true,
|
|
||||||
teamId: true,
|
|
||||||
},
|
|
||||||
});
|
|
||||||
|
|
||||||
if (!foundToken) {
|
|
||||||
return res.status(401).json({ message: "Invalid Token" });
|
|
||||||
}
|
|
||||||
|
|
||||||
if (dayjs(foundToken?.expires).isBefore(dayjs())) {
|
|
||||||
return res.status(401).json({ message: "Token expired" });
|
|
||||||
}
|
|
||||||
if (foundToken?.teamId) {
|
|
||||||
const teamUserValidation = await validateUsernameInTeam(username, userEmail, foundToken?.teamId);
|
|
||||||
if (!teamUserValidation.isValid) {
|
|
||||||
return res.status(409).json({ message: "Username or email is already taken" });
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
const userValidation = await validateUsername(username, userEmail);
|
|
||||||
if (!userValidation.isValid) {
|
|
||||||
return res.status(409).json({ message: "Username or email is already taken" });
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
const hashedPassword = await hashPassword(password);
|
|
||||||
|
|
||||||
if (foundToken && foundToken?.teamId) {
|
|
||||||
const team = await prisma.team.findUnique({
|
|
||||||
where: {
|
|
||||||
id: foundToken.teamId,
|
|
||||||
},
|
|
||||||
});
|
|
||||||
if (team) {
|
|
||||||
const teamMetadata = teamMetadataSchema.parse(team?.metadata);
|
|
||||||
|
|
||||||
if (IS_CALCOM && (!teamMetadata?.isOrganization || !!team.parentId)) {
|
|
||||||
const checkUsername = await checkPremiumUsername(username);
|
|
||||||
if (checkUsername.premium) {
|
|
||||||
// This signup page is ONLY meant for team invites and local setup. Not for every day users.
|
|
||||||
// In singup redesign/refactor coming up @sean will tackle this to make them the same API/page instead of two.
|
|
||||||
return res.status(422).json({
|
|
||||||
message: "Sign up from https://cal.com/signup to claim your premium username",
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Identify the org id in an org context signup, either the invited team is an org
|
|
||||||
// or has a parentId, otherwise parentId will be null, making orgId null
|
|
||||||
const orgId = teamMetadata?.isOrganization ? team.id : team.parentId;
|
|
||||||
|
|
||||||
const user = await prisma.user.upsert({
|
|
||||||
where: { email: userEmail },
|
|
||||||
update: {
|
|
||||||
username,
|
|
||||||
password: hashedPassword,
|
|
||||||
emailVerified: new Date(Date.now()),
|
|
||||||
identityProvider: IdentityProvider.CAL,
|
|
||||||
organizationId: orgId,
|
|
||||||
},
|
|
||||||
create: {
|
|
||||||
username,
|
|
||||||
email: userEmail,
|
|
||||||
password: hashedPassword,
|
|
||||||
identityProvider: IdentityProvider.CAL,
|
|
||||||
organizationId: orgId,
|
|
||||||
},
|
|
||||||
});
|
|
||||||
|
|
||||||
const membership = await prisma.membership.upsert({
|
|
||||||
where: {
|
|
||||||
userId_teamId: { userId: user.id, teamId: team.id },
|
|
||||||
},
|
|
||||||
update: {
|
|
||||||
accepted: true,
|
|
||||||
},
|
|
||||||
create: {
|
|
||||||
userId: user.id,
|
|
||||||
teamId: team.id,
|
|
||||||
accepted: true,
|
|
||||||
role: MembershipRole.MEMBER,
|
|
||||||
},
|
|
||||||
});
|
|
||||||
closeComUpsertTeamUser(team, user, membership.role);
|
|
||||||
|
|
||||||
// Accept any child team invites for orgs and create a membership for the org itself
|
|
||||||
if (team.parentId) {
|
|
||||||
// Create (when invite link is used) or Update (when regular email invitation is used) membership for the organization itself
|
|
||||||
await prisma.membership.upsert({
|
|
||||||
where: {
|
|
||||||
userId_teamId: { userId: user.id, teamId: team.parentId },
|
|
||||||
},
|
|
||||||
update: {
|
|
||||||
accepted: true,
|
|
||||||
},
|
|
||||||
create: {
|
|
||||||
userId: user.id,
|
|
||||||
teamId: team.parentId,
|
|
||||||
accepted: true,
|
|
||||||
role: MembershipRole.MEMBER,
|
|
||||||
},
|
|
||||||
});
|
|
||||||
|
|
||||||
// We do a membership update twice so we can join the ORG invite if the user is invited to a team witin a ORG
|
|
||||||
await prisma.membership.updateMany({
|
|
||||||
where: {
|
|
||||||
userId: user.id,
|
|
||||||
team: {
|
|
||||||
id: team.parentId,
|
|
||||||
},
|
|
||||||
accepted: false,
|
|
||||||
},
|
|
||||||
data: {
|
|
||||||
accepted: true,
|
|
||||||
},
|
|
||||||
});
|
|
||||||
|
|
||||||
// Join any other invites
|
|
||||||
await prisma.membership.updateMany({
|
|
||||||
where: {
|
|
||||||
userId: user.id,
|
|
||||||
team: {
|
|
||||||
parentId: team.parentId,
|
|
||||||
},
|
|
||||||
accepted: false,
|
|
||||||
},
|
|
||||||
data: {
|
|
||||||
accepted: true,
|
|
||||||
},
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Cleanup token after use
|
|
||||||
await prisma.verificationToken.delete({
|
|
||||||
where: {
|
|
||||||
id: foundToken.id,
|
|
||||||
},
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
if (IS_CALCOM) {
|
|
||||||
const checkUsername = await checkPremiumUsername(username);
|
|
||||||
if (checkUsername.premium) {
|
|
||||||
res.status(422).json({
|
|
||||||
message: "Sign up from https://cal.com/signup to claim your premium username",
|
|
||||||
});
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
await prisma.user.upsert({
|
|
||||||
where: { email: userEmail },
|
|
||||||
update: {
|
|
||||||
username,
|
|
||||||
password: hashedPassword,
|
|
||||||
emailVerified: new Date(Date.now()),
|
|
||||||
identityProvider: IdentityProvider.CAL,
|
|
||||||
},
|
|
||||||
create: {
|
|
||||||
username,
|
|
||||||
email: userEmail,
|
|
||||||
password: hashedPassword,
|
|
||||||
identityProvider: IdentityProvider.CAL,
|
|
||||||
},
|
|
||||||
});
|
|
||||||
await sendEmailVerification({
|
|
||||||
email: userEmail,
|
|
||||||
username,
|
|
||||||
language,
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
res.status(201).json({ message: "Created user" });
|
function ensureReqIsPost(req: RequestWithUsernameStatus) {
|
||||||
|
if (req.method !== "POST") {
|
||||||
|
throw new HttpError({
|
||||||
|
statusCode: 405,
|
||||||
|
message: "Method not allowed",
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export default async function handler(req: RequestWithUsernameStatus, res: NextApiResponse) {
|
||||||
|
// Use a try catch instead of returning res every time
|
||||||
|
try {
|
||||||
|
ensureReqIsPost(req);
|
||||||
|
ensureSignupIsEnabled();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Im not sure its worth merging these two handlers. They are different enough to be separate.
|
||||||
|
* Calcom handles things like creating a stripe customer - which we don't need to do for self hosted.
|
||||||
|
* It also handles things like premium username.
|
||||||
|
* TODO: (SEAN) - Extract a lot of the logic from calcomHandler into a separate file and import it into both handlers.
|
||||||
|
* @zomars: We need to be able to test this with E2E. They way it's done RN it will never run on CI.
|
||||||
|
*/
|
||||||
|
if (IS_PREMIUM_USERNAME_ENABLED) {
|
||||||
|
return await calcomSignupHandler(req, res);
|
||||||
|
}
|
||||||
|
|
||||||
|
return await selfHostedSignupHandler(req, res);
|
||||||
|
} catch (e) {
|
||||||
|
if (e instanceof HttpError) {
|
||||||
|
return res.status(e.statusCode).json({ message: e.message });
|
||||||
|
}
|
||||||
|
logger.error(e);
|
||||||
|
return res.status(500).json({ message: "Internal server error" });
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -83,13 +83,13 @@ export default async function handler(req: NextApiRequest, res: NextApiResponse)
|
|||||||
throw new HttpCode({ statusCode: 400, message: "Missing stripe-signature" });
|
throw new HttpCode({ statusCode: 400, message: "Missing stripe-signature" });
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!process.env.STRIPE_WEBHOOK_SECRET) {
|
if (!process.env.STRIPE_WEBHOOK_SECRET_APPS) {
|
||||||
throw new HttpCode({ statusCode: 500, message: "Missing process.env.STRIPE_WEBHOOK_SECRET" });
|
throw new HttpCode({ statusCode: 500, message: "Missing process.env.STRIPE_WEBHOOK_SECRET_APPS" });
|
||||||
}
|
}
|
||||||
const requestBuffer = await buffer(req);
|
const requestBuffer = await buffer(req);
|
||||||
const payload = requestBuffer.toString();
|
const payload = requestBuffer.toString();
|
||||||
|
|
||||||
const event = stripe.webhooks.constructEvent(payload, sig, process.env.STRIPE_WEBHOOK_SECRET);
|
const event = stripe.webhooks.constructEvent(payload, sig, process.env.STRIPE_WEBHOOK_SECRET_APPS);
|
||||||
|
|
||||||
const handler = webhookHandlers[event.type];
|
const handler = webhookHandlers[event.type];
|
||||||
if (handler) {
|
if (handler) {
|
||||||
|
|||||||
@@ -105,8 +105,6 @@ async function getIdentityData(req: NextApiRequest) {
|
|||||||
export default async function handler(req: NextApiRequest, res: NextApiResponse) {
|
export default async function handler(req: NextApiRequest, res: NextApiResponse) {
|
||||||
const identity = await getIdentityData(req);
|
const identity = await getIdentityData(req);
|
||||||
const img = identity?.avatar;
|
const img = identity?.avatar;
|
||||||
// We cache for one day
|
|
||||||
res.setHeader("Cache-Control", "s-maxage=86400, stale-while-revalidate=60");
|
|
||||||
// If image isn't set or links to this route itself, use default avatar
|
// If image isn't set or links to this route itself, use default avatar
|
||||||
if (!img) {
|
if (!img) {
|
||||||
if (identity?.org) {
|
if (identity?.org) {
|
||||||
|
|||||||
@@ -98,9 +98,9 @@ inferSSRProps<typeof _getServerSideProps> & WithNonceProps<{}>) {
|
|||||||
callbackUrl = safeCallbackUrl || "";
|
callbackUrl = safeCallbackUrl || "";
|
||||||
|
|
||||||
const LoginFooter = (
|
const LoginFooter = (
|
||||||
<a href={`${WEBSITE_URL}/signup`} className="text-brand-500 font-medium">
|
<Link href={`${WEBSITE_URL}/signup`} className="text-brand-500 font-medium">
|
||||||
{t("dont_have_an_account")}
|
{t("dont_have_an_account")}
|
||||||
</a>
|
</Link>
|
||||||
);
|
);
|
||||||
|
|
||||||
const TwoFactorFooter = (
|
const TwoFactorFooter = (
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ import { orgDomainConfig } from "@calcom/features/ee/organizations/lib/orgDomain
|
|||||||
import stripe from "@calcom/features/ee/payments/server/stripe";
|
import stripe from "@calcom/features/ee/payments/server/stripe";
|
||||||
import { hostedCal, isSAMLLoginEnabled, samlProductID, samlTenantID } from "@calcom/features/ee/sso/lib/saml";
|
import { hostedCal, isSAMLLoginEnabled, samlProductID, samlTenantID } from "@calcom/features/ee/sso/lib/saml";
|
||||||
import { ssoTenantProduct } from "@calcom/features/ee/sso/lib/sso";
|
import { ssoTenantProduct } from "@calcom/features/ee/sso/lib/sso";
|
||||||
|
import { IS_PREMIUM_USERNAME_ENABLED } from "@calcom/lib/constants";
|
||||||
import { useCompatSearchParams } from "@calcom/lib/hooks/useCompatSearchParams";
|
import { useCompatSearchParams } from "@calcom/lib/hooks/useCompatSearchParams";
|
||||||
import { checkUsername } from "@calcom/lib/server/checkUsername";
|
import { checkUsername } from "@calcom/lib/server/checkUsername";
|
||||||
import prisma from "@calcom/prisma";
|
import prisma from "@calcom/prisma";
|
||||||
@@ -72,7 +73,7 @@ export const getServerSideProps = async (context: GetServerSidePropsContext) =>
|
|||||||
// Validating if username is Premium, while this is true an email its required for stripe user confirmation
|
// Validating if username is Premium, while this is true an email its required for stripe user confirmation
|
||||||
if (usernameParam && session.user.email) {
|
if (usernameParam && session.user.email) {
|
||||||
const availability = await checkUsername(usernameParam, currentOrgDomain);
|
const availability = await checkUsername(usernameParam, currentOrgDomain);
|
||||||
if (availability.available && availability.premium) {
|
if (availability.available && availability.premium && IS_PREMIUM_USERNAME_ENABLED) {
|
||||||
const stripePremiumUrl = await getStripePremiumUsernameUrl({
|
const stripePremiumUrl = await getStripePremiumUsernameUrl({
|
||||||
userEmail: session.user.email,
|
userEmail: session.user.email,
|
||||||
username: usernameParam,
|
username: usernameParam,
|
||||||
|
|||||||
@@ -97,7 +97,7 @@ export default function Bookings() {
|
|||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
// Animate page (tab) tranistions to look smoothing
|
// Animate page (tab) transitions to look smoothing
|
||||||
|
|
||||||
const buttonInView = useInViewObserver(() => {
|
const buttonInView = useInViewObserver(() => {
|
||||||
if (!query.isFetching && query.hasNextPage && query.status === "success") {
|
if (!query.isFetching && query.hasNextPage && query.status === "success") {
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ import { getLayout } from "@calcom/features/MainLayout";
|
|||||||
import { useOrgBranding } from "@calcom/features/ee/organizations/context/provider";
|
import { useOrgBranding } from "@calcom/features/ee/organizations/context/provider";
|
||||||
import useIntercom from "@calcom/features/ee/support/lib/intercom/useIntercom";
|
import useIntercom from "@calcom/features/ee/support/lib/intercom/useIntercom";
|
||||||
import { EventTypeEmbedButton, EventTypeEmbedDialog } from "@calcom/features/embed/EventTypeEmbed";
|
import { EventTypeEmbedButton, EventTypeEmbedDialog } from "@calcom/features/embed/EventTypeEmbed";
|
||||||
import { EventTypeDescriptionLazy as EventTypeDescription } from "@calcom/features/eventtypes/components";
|
import { EventTypeDescription } from "@calcom/features/eventtypes/components";
|
||||||
import CreateEventTypeDialog from "@calcom/features/eventtypes/components/CreateEventTypeDialog";
|
import CreateEventTypeDialog from "@calcom/features/eventtypes/components/CreateEventTypeDialog";
|
||||||
import { DuplicateDialog } from "@calcom/features/eventtypes/components/DuplicateDialog";
|
import { DuplicateDialog } from "@calcom/features/eventtypes/components/DuplicateDialog";
|
||||||
import { TeamsFilter } from "@calcom/features/filters/components/TeamsFilter";
|
import { TeamsFilter } from "@calcom/features/filters/components/TeamsFilter";
|
||||||
|
|||||||
@@ -69,17 +69,17 @@ export default function InsightsPage() {
|
|||||||
<FiltersProvider>
|
<FiltersProvider>
|
||||||
<Filters />
|
<Filters />
|
||||||
|
|
||||||
<div className="mb-4 space-y-6">
|
<div className="mb-4 space-y-4">
|
||||||
<BookingKPICards />
|
<BookingKPICards />
|
||||||
|
|
||||||
<BookingStatusLineChart />
|
<BookingStatusLineChart />
|
||||||
|
|
||||||
<div className="grid grid-cols-1 gap-5 md:grid-cols-2">
|
<div className="grid grid-cols-1 gap-4 md:grid-cols-2">
|
||||||
<PopularEventsTable />
|
<PopularEventsTable />
|
||||||
|
|
||||||
<AverageEventDurationChart />
|
<AverageEventDurationChart />
|
||||||
</div>
|
</div>
|
||||||
<div className="grid grid-cols-1 gap-5 md:grid-cols-2">
|
<div className="grid grid-cols-1 gap-4 md:grid-cols-2">
|
||||||
<MostBookedTeamMembersTable />
|
<MostBookedTeamMembersTable />
|
||||||
<LeastBookedTeamMembersTable />
|
<LeastBookedTeamMembersTable />
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -26,7 +26,7 @@ export const getServerSideProps = async (ctx: GetServerSidePropsContext) => {
|
|||||||
if (team) {
|
if (team) {
|
||||||
return GSSTeamPage({ ...ctx, query: { slug: ctx.query.user } });
|
return GSSTeamPage({ ...ctx, query: { slug: ctx.query.user } });
|
||||||
}
|
}
|
||||||
return GSSUserPage({ ...ctx, query: { user: ctx.query.user } });
|
return GSSUserPage({ ...ctx, query: { user: ctx.query.user, redirect: ctx.query.redirect } });
|
||||||
};
|
};
|
||||||
|
|
||||||
type Props = UserPageProps | TeamPageProps;
|
type Props = UserPageProps | TeamPageProps;
|
||||||
|
|||||||
@@ -1,25 +1,34 @@
|
|||||||
import { zodResolver } from "@hookform/resolvers/zod";
|
import { zodResolver } from "@hookform/resolvers/zod";
|
||||||
|
import { CalendarHeart, Info, Link2, ShieldCheckIcon, StarIcon, Users } from "lucide-react";
|
||||||
import type { GetServerSidePropsContext } from "next";
|
import type { GetServerSidePropsContext } from "next";
|
||||||
import { signIn } from "next-auth/react";
|
import { signIn } from "next-auth/react";
|
||||||
|
import Link from "next/link";
|
||||||
|
import { useRouter } from "next/navigation";
|
||||||
import type { CSSProperties } from "react";
|
import type { CSSProperties } from "react";
|
||||||
|
import { useState, useEffect } from "react";
|
||||||
import type { SubmitHandler } from "react-hook-form";
|
import type { SubmitHandler } from "react-hook-form";
|
||||||
import { FormProvider, useForm } from "react-hook-form";
|
import { useForm, useFormContext } from "react-hook-form";
|
||||||
import { z } from "zod";
|
import { z } from "zod";
|
||||||
|
|
||||||
|
import getStripe from "@calcom/app-store/stripepayment/lib/client";
|
||||||
|
import { getPremiumPlanPriceValue } from "@calcom/app-store/stripepayment/lib/utils";
|
||||||
import { checkPremiumUsername } from "@calcom/features/ee/common/lib/checkPremiumUsername";
|
import { checkPremiumUsername } from "@calcom/features/ee/common/lib/checkPremiumUsername";
|
||||||
import { getOrgFullOrigin } from "@calcom/features/ee/organizations/lib/orgDomains";
|
import { getOrgFullOrigin } from "@calcom/features/ee/organizations/lib/orgDomains";
|
||||||
import { isSAMLLoginEnabled } from "@calcom/features/ee/sso/lib/saml";
|
import { isSAMLLoginEnabled } from "@calcom/features/ee/sso/lib/saml";
|
||||||
import { useFlagMap } from "@calcom/features/flags/context/provider";
|
import { useFlagMap } from "@calcom/features/flags/context/provider";
|
||||||
import { getFeatureFlagMap } from "@calcom/features/flags/server/utils";
|
import { getFeatureFlagMap } from "@calcom/features/flags/server/utils";
|
||||||
import { IS_SELF_HOSTED, WEBAPP_URL } from "@calcom/lib/constants";
|
import { classNames } from "@calcom/lib";
|
||||||
|
import { APP_NAME, IS_CALCOM, IS_SELF_HOSTED, WEBAPP_URL, WEBSITE_URL } from "@calcom/lib/constants";
|
||||||
|
import { fetchUsername } from "@calcom/lib/fetchUsername";
|
||||||
import { useCompatSearchParams } from "@calcom/lib/hooks/useCompatSearchParams";
|
import { useCompatSearchParams } from "@calcom/lib/hooks/useCompatSearchParams";
|
||||||
|
import { useDebounce } from "@calcom/lib/hooks/useDebounce";
|
||||||
import { useLocale } from "@calcom/lib/hooks/useLocale";
|
import { useLocale } from "@calcom/lib/hooks/useLocale";
|
||||||
import slugify from "@calcom/lib/slugify";
|
import slugify from "@calcom/lib/slugify";
|
||||||
import { collectPageParameters, telemetryEventTypes, useTelemetry } from "@calcom/lib/telemetry";
|
import { collectPageParameters, telemetryEventTypes, useTelemetry } from "@calcom/lib/telemetry";
|
||||||
import { teamMetadataSchema } from "@calcom/prisma/zod-utils";
|
import { teamMetadataSchema } from "@calcom/prisma/zod-utils";
|
||||||
import { signupSchema as apiSignupSchema } from "@calcom/prisma/zod-utils";
|
import { signupSchema as apiSignupSchema } from "@calcom/prisma/zod-utils";
|
||||||
import type { inferSSRProps } from "@calcom/types/inferSSRProps";
|
import type { inferSSRProps } from "@calcom/types/inferSSRProps";
|
||||||
import { Alert, Button, EmailField, HeadSeo, PasswordField, TextField } from "@calcom/ui";
|
import { Button, HeadSeo, PasswordField, TextField, Form, Alert } from "@calcom/ui";
|
||||||
|
|
||||||
import PageWrapper from "@components/PageWrapper";
|
import PageWrapper from "@components/PageWrapper";
|
||||||
|
|
||||||
@@ -34,7 +43,29 @@ type FormValues = z.infer<typeof signupSchema>;
|
|||||||
|
|
||||||
type SignupProps = inferSSRProps<typeof getServerSideProps>;
|
type SignupProps = inferSSRProps<typeof getServerSideProps>;
|
||||||
|
|
||||||
const checkValidEmail = (email: string) => z.string().email().safeParse(email).success;
|
const FEATURES = [
|
||||||
|
{
|
||||||
|
title: "connect_all_calendars",
|
||||||
|
description: "connect_all_calendars_description",
|
||||||
|
i18nOptions: {
|
||||||
|
appName: APP_NAME,
|
||||||
|
},
|
||||||
|
icon: CalendarHeart,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "set_availability",
|
||||||
|
description: "set_availbility_description",
|
||||||
|
icon: Users,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "share_a_link_or_embed",
|
||||||
|
description: "share_a_link_or_embed_description",
|
||||||
|
icon: Link2,
|
||||||
|
i18nOptions: {
|
||||||
|
appName: APP_NAME,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
];
|
||||||
|
|
||||||
const getOrgUsernameFromEmail = (email: string, autoAcceptEmailDomain: string) => {
|
const getOrgUsernameFromEmail = (email: string, autoAcceptEmailDomain: string) => {
|
||||||
const [emailUser, emailDomain = ""] = email.split("@");
|
const [emailUser, emailDomain = ""] = email.split("@");
|
||||||
@@ -46,31 +77,124 @@ const getOrgUsernameFromEmail = (email: string, autoAcceptEmailDomain: string) =
|
|||||||
return username;
|
return username;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
function UsernameField({
|
||||||
|
username,
|
||||||
|
setPremium,
|
||||||
|
premium,
|
||||||
|
setUsernameTaken,
|
||||||
|
usernameTaken,
|
||||||
|
...props
|
||||||
|
}: React.ComponentProps<typeof TextField> & {
|
||||||
|
username: string;
|
||||||
|
setPremium: (value: boolean) => void;
|
||||||
|
premium: boolean;
|
||||||
|
usernameTaken: boolean;
|
||||||
|
setUsernameTaken: (value: boolean) => void;
|
||||||
|
}) {
|
||||||
|
const { t } = useLocale();
|
||||||
|
const { register, formState } = useFormContext<FormValues>();
|
||||||
|
const debouncedUsername = useDebounce(username, 600);
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
if (formState.isSubmitting || formState.isSubmitSuccessful) return;
|
||||||
|
|
||||||
|
async function checkUsername() {
|
||||||
|
if (!debouncedUsername) {
|
||||||
|
setPremium(false);
|
||||||
|
setUsernameTaken(false);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
fetchUsername(debouncedUsername).then(({ data }) => {
|
||||||
|
setPremium(data.premium);
|
||||||
|
setUsernameTaken(!data.available);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
checkUsername();
|
||||||
|
}, [debouncedUsername, setPremium, setUsernameTaken, formState.isSubmitting, formState.isSubmitSuccessful]);
|
||||||
|
|
||||||
|
return (
|
||||||
|
<div>
|
||||||
|
<TextField
|
||||||
|
{...props}
|
||||||
|
{...register("username")}
|
||||||
|
data-testid="signup-usernamefield"
|
||||||
|
addOnFilled={false}
|
||||||
|
/>
|
||||||
|
{(!formState.isSubmitting || !formState.isSubmitted) && (
|
||||||
|
<div className="text-gray text-default flex items-center text-sm">
|
||||||
|
<p className="flex items-center text-sm ">
|
||||||
|
{usernameTaken ? (
|
||||||
|
<div className="text-error">
|
||||||
|
<Info className="mr-1 inline-block h-4 w-4" />
|
||||||
|
{t("already_in_use_error")}
|
||||||
|
</div>
|
||||||
|
) : premium ? (
|
||||||
|
<div data-testid="premium-username-warning">
|
||||||
|
<StarIcon className="mr-1 inline-block h-4 w-4" />
|
||||||
|
{t("premium_username", {
|
||||||
|
price: getPremiumPlanPriceValue(),
|
||||||
|
})}
|
||||||
|
</div>
|
||||||
|
) : null}
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
)}
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
const checkValidEmail = (email: string) => z.string().email().safeParse(email).success;
|
||||||
|
|
||||||
function addOrUpdateQueryParam(url: string, key: string, value: string) {
|
function addOrUpdateQueryParam(url: string, key: string, value: string) {
|
||||||
const separator = url.includes("?") ? "&" : "?";
|
const separator = url.includes("?") ? "&" : "?";
|
||||||
const param = `${key}=${encodeURIComponent(value)}`;
|
const param = `${key}=${encodeURIComponent(value)}`;
|
||||||
return `${url}${separator}${param}`;
|
return `${url}${separator}${param}`;
|
||||||
}
|
}
|
||||||
|
|
||||||
export default function Signup({ prepopulateFormValues, token, orgSlug, orgAutoAcceptEmail }: SignupProps) {
|
export default function Signup({
|
||||||
|
prepopulateFormValues,
|
||||||
|
token,
|
||||||
|
orgSlug,
|
||||||
|
isGoogleLoginEnabled,
|
||||||
|
isSAMLLoginEnabled,
|
||||||
|
orgAutoAcceptEmail,
|
||||||
|
}: SignupProps) {
|
||||||
|
const [premiumUsername, setPremiumUsername] = useState(false);
|
||||||
|
const [usernameTaken, setUsernameTaken] = useState(false);
|
||||||
|
|
||||||
const searchParams = useCompatSearchParams();
|
const searchParams = useCompatSearchParams();
|
||||||
const telemetry = useTelemetry();
|
const telemetry = useTelemetry();
|
||||||
const { t, i18n } = useLocale();
|
const { t, i18n } = useLocale();
|
||||||
|
const router = useRouter();
|
||||||
const flags = useFlagMap();
|
const flags = useFlagMap();
|
||||||
const methods = useForm<FormValues>({
|
const formMethods = useForm<FormValues>({
|
||||||
mode: "onChange",
|
|
||||||
resolver: zodResolver(signupSchema),
|
resolver: zodResolver(signupSchema),
|
||||||
defaultValues: prepopulateFormValues,
|
defaultValues: prepopulateFormValues satisfies FormValues,
|
||||||
|
mode: "onChange",
|
||||||
});
|
});
|
||||||
const {
|
const {
|
||||||
register,
|
register,
|
||||||
formState: { errors, isSubmitting },
|
watch,
|
||||||
} = methods;
|
formState: { isSubmitting, errors, isSubmitSuccessful },
|
||||||
|
} = formMethods;
|
||||||
|
|
||||||
const handleErrors = async (resp: Response) => {
|
const loadingSubmitState = isSubmitSuccessful || isSubmitting;
|
||||||
|
|
||||||
|
const handleErrorsAndStripe = async (resp: Response) => {
|
||||||
if (!resp.ok) {
|
if (!resp.ok) {
|
||||||
const err = await resp.json();
|
const err = await resp.json();
|
||||||
throw new Error(err.message);
|
if (err.checkoutSessionId) {
|
||||||
|
const stripe = await getStripe();
|
||||||
|
if (stripe) {
|
||||||
|
console.log("Redirecting to stripe checkout");
|
||||||
|
const { error } = await stripe.redirectToCheckout({
|
||||||
|
sessionId: err.checkoutSessionId,
|
||||||
|
});
|
||||||
|
console.warn(error.message);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
throw new Error(err.message);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -88,7 +212,7 @@ export default function Signup({ prepopulateFormValues, token, orgSlug, orgAutoA
|
|||||||
},
|
},
|
||||||
method: "POST",
|
method: "POST",
|
||||||
})
|
})
|
||||||
.then(handleErrors)
|
.then(handleErrorsAndStripe)
|
||||||
.then(async () => {
|
.then(async () => {
|
||||||
telemetry.event(telemetryEventTypes.signup, collectPageParameters());
|
telemetry.event(telemetryEventTypes.signup, collectPageParameters());
|
||||||
const verifyOrGettingStarted = flags["email-verification"] ? "auth/verify-email" : "getting-started";
|
const verifyOrGettingStarted = flags["email-verification"] ? "auth/verify-email" : "getting-started";
|
||||||
@@ -106,109 +230,262 @@ export default function Signup({ prepopulateFormValues, token, orgSlug, orgAutoA
|
|||||||
});
|
});
|
||||||
})
|
})
|
||||||
.catch((err) => {
|
.catch((err) => {
|
||||||
methods.setError("apiError", { message: err.message });
|
formMethods.setError("apiError", { message: err.message });
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<div
|
||||||
<div
|
className="light bg-muted 2xl:bg-default flex min-h-screen w-full flex-col items-center justify-center"
|
||||||
className="bg-muted flex min-h-screen flex-col justify-center "
|
style={
|
||||||
style={
|
{
|
||||||
{
|
"--cal-brand": "#111827",
|
||||||
"--cal-brand": "#111827",
|
"--cal-brand-emphasis": "#101010",
|
||||||
"--cal-brand-emphasis": "#101010",
|
"--cal-brand-text": "white",
|
||||||
"--cal-brand-text": "white",
|
"--cal-brand-subtle": "#9CA3AF",
|
||||||
"--cal-brand-subtle": "#9CA3AF",
|
} as CSSProperties
|
||||||
} as CSSProperties
|
}>
|
||||||
}
|
<div className="bg-muted 2xl:border-subtle grid max-h-[800px] w-full max-w-[1440px] grid-cols-1 grid-rows-1 lg:grid-cols-2 2xl:rounded-lg 2xl:border ">
|
||||||
aria-labelledby="modal-title"
|
|
||||||
role="dialog"
|
|
||||||
aria-modal="true">
|
|
||||||
<HeadSeo title={t("sign_up")} description={t("sign_up")} />
|
<HeadSeo title={t("sign_up")} description={t("sign_up")} />
|
||||||
<div className="sm:mx-auto sm:w-full sm:max-w-md">
|
<div className="flex w-full flex-col px-4 py-6 sm:px-16 md:px-24 2xl:px-28">
|
||||||
<h2 className="font-cal text-emphasis text-center text-3xl font-extrabold">
|
{/* Header */}
|
||||||
{t("create_your_account")}
|
{errors.apiError && (
|
||||||
</h2>
|
<Alert severity="error" message={errors.apiError?.message} data-testid="signup-error-message" />
|
||||||
</div>
|
)}
|
||||||
<div className="mt-8 sm:mx-auto sm:w-full sm:max-w-md">
|
<div className="flex flex-col gap-1">
|
||||||
<div className="bg-default mx-2 p-6 shadow sm:rounded-lg lg:p-8">
|
<h1 className="font-cal text-[28px] ">
|
||||||
<FormProvider {...methods}>
|
{IS_CALCOM ? t("create_your_calcom_account") : t("create_your_account")}
|
||||||
<form
|
</h1>
|
||||||
onSubmit={(event) => {
|
{IS_CALCOM ? (
|
||||||
event.preventDefault();
|
<p className="text-subtle text-base font-medium leading-6">{t("cal_signup_description")}</p>
|
||||||
event.stopPropagation();
|
) : (
|
||||||
|
<p className="text-subtle text-base font-medium leading-6">
|
||||||
|
{t("calcom_explained", {
|
||||||
|
appName: APP_NAME,
|
||||||
|
})}
|
||||||
|
</p>
|
||||||
|
)}
|
||||||
|
</div>
|
||||||
|
{/* Form Container */}
|
||||||
|
<div className="mt-10">
|
||||||
|
<Form
|
||||||
|
className="flex flex-col gap-4"
|
||||||
|
form={formMethods}
|
||||||
|
handleSubmit={async (values) => {
|
||||||
|
let updatedValues = values;
|
||||||
|
if (!formMethods.getValues().username && isOrgInviteByLink && orgAutoAcceptEmail) {
|
||||||
|
updatedValues = {
|
||||||
|
...values,
|
||||||
|
username: getOrgUsernameFromEmail(values.email, orgAutoAcceptEmail),
|
||||||
|
};
|
||||||
|
}
|
||||||
|
await signUp(updatedValues);
|
||||||
|
}}>
|
||||||
|
{/* Username */}
|
||||||
|
<UsernameField
|
||||||
|
label={t("username")}
|
||||||
|
username={watch("username")}
|
||||||
|
premium={premiumUsername}
|
||||||
|
usernameTaken={usernameTaken}
|
||||||
|
setUsernameTaken={(value) => setUsernameTaken(value)}
|
||||||
|
data-testid="signup-usernamefield"
|
||||||
|
setPremium={(value) => setPremiumUsername(value)}
|
||||||
|
addOnLeading={
|
||||||
|
orgSlug
|
||||||
|
? `${getOrgFullOrigin(orgSlug, { protocol: true })}/`
|
||||||
|
: `${process.env.NEXT_PUBLIC_WEBSITE_URL}/`
|
||||||
|
}
|
||||||
|
/>
|
||||||
|
{/* Email */}
|
||||||
|
<TextField
|
||||||
|
{...register("email")}
|
||||||
|
label={t("email")}
|
||||||
|
type="email"
|
||||||
|
data-testid="signup-emailfield"
|
||||||
|
/>
|
||||||
|
|
||||||
if (methods.formState?.errors?.apiError) {
|
{/* Password */}
|
||||||
methods.clearErrors("apiError");
|
<PasswordField
|
||||||
}
|
data-testid="signup-passwordfield"
|
||||||
|
label={t("password")}
|
||||||
if (!methods.getValues().username && isOrgInviteByLink && orgAutoAcceptEmail) {
|
{...register("password")}
|
||||||
methods.setValue(
|
hintErrors={["caplow", "min", "num"]}
|
||||||
"username",
|
/>
|
||||||
getOrgUsernameFromEmail(methods.getValues().email, orgAutoAcceptEmail)
|
<Button
|
||||||
);
|
type="submit"
|
||||||
}
|
className="my-2 w-full justify-center"
|
||||||
methods.handleSubmit(signUp)(event);
|
loading={loadingSubmitState}
|
||||||
}}
|
disabled={
|
||||||
className="bg-default space-y-6">
|
!!formMethods.formState.errors.username ||
|
||||||
{errors.apiError && <Alert severity="error" message={errors.apiError?.message} />}
|
!!formMethods.formState.errors.email ||
|
||||||
{}
|
usernameTaken
|
||||||
<div className="space-y-4">
|
}>
|
||||||
{!isOrgInviteByLink && (
|
{premiumUsername && !usernameTaken
|
||||||
<TextField
|
? `Create Account for ${getPremiumPlanPriceValue()}`
|
||||||
addOnLeading={
|
: t("create_account")}
|
||||||
orgSlug
|
</Button>
|
||||||
? `${getOrgFullOrigin(orgSlug, { protocol: true })}/`
|
</Form>
|
||||||
: `${process.env.NEXT_PUBLIC_WEBSITE_URL}/`
|
{/* Continue with Social Logins */}
|
||||||
|
{token || (!isGoogleLoginEnabled && !isSAMLLoginEnabled) ? null : (
|
||||||
|
<div className="mt-6">
|
||||||
|
<div className="relative flex items-center">
|
||||||
|
<div className="border-subtle flex-grow border-t" />
|
||||||
|
<span className="text-subtle leadning-none mx-2 flex-shrink text-sm font-normal ">
|
||||||
|
{t("or_continue_with")}
|
||||||
|
</span>
|
||||||
|
<div className="border-subtle flex-grow border-t" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
)}
|
||||||
|
{/* Social Logins */}
|
||||||
|
{!token && (
|
||||||
|
<div className="mt-6 flex flex-col gap-2 md:flex-row">
|
||||||
|
{isGoogleLoginEnabled ? (
|
||||||
|
<Button
|
||||||
|
color="secondary"
|
||||||
|
disabled={!!formMethods.formState.errors.username || premiumUsername}
|
||||||
|
className={classNames(
|
||||||
|
"w-full justify-center rounded-md text-center",
|
||||||
|
formMethods.formState.errors.username ? "opacity-50" : ""
|
||||||
|
)}
|
||||||
|
onClick={async () => {
|
||||||
|
const username = formMethods.getValues("username");
|
||||||
|
const baseUrl = process.env.NEXT_PUBLIC_WEBAPP_URL;
|
||||||
|
const GOOGLE_AUTH_URL = `${baseUrl}/auth/sso/google`;
|
||||||
|
if (username) {
|
||||||
|
// If username is present we save it in query params to check for premium
|
||||||
|
const searchQueryParams = new URLSearchParams();
|
||||||
|
searchQueryParams.set("username", formMethods.getValues("username"));
|
||||||
|
localStorage.setItem("username", username);
|
||||||
|
router.push(`${GOOGLE_AUTH_URL}?${searchQueryParams.toString()}`);
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
{...register("username")}
|
router.push(GOOGLE_AUTH_URL);
|
||||||
disabled={!!orgSlug}
|
}}>
|
||||||
required
|
<img
|
||||||
|
className={classNames("text-emphasis mr-2 h-5 w-5", premiumUsername && "opacity-50")}
|
||||||
|
src="/google-icon.svg"
|
||||||
|
alt=""
|
||||||
/>
|
/>
|
||||||
)}
|
Google
|
||||||
<EmailField
|
|
||||||
{...register("email")}
|
|
||||||
disabled={prepopulateFormValues?.email}
|
|
||||||
className="disabled:bg-emphasis disabled:hover:cursor-not-allowed"
|
|
||||||
/>
|
|
||||||
<PasswordField
|
|
||||||
labelProps={{
|
|
||||||
className: "block text-sm font-medium text-default",
|
|
||||||
}}
|
|
||||||
{...register("password")}
|
|
||||||
hintErrors={["caplow", "min", "num"]}
|
|
||||||
className="border-default mt-1 block w-full rounded-md border px-3 py-2 shadow-sm focus:border-black focus:outline-none focus:ring-black sm:text-sm"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
<div className="flex space-x-2 rtl:space-x-reverse">
|
|
||||||
<Button type="submit" loading={isSubmitting} className="w-full justify-center">
|
|
||||||
{t("create_account")}
|
|
||||||
</Button>
|
</Button>
|
||||||
{!token && (
|
) : null}
|
||||||
<Button
|
{isSAMLLoginEnabled ? (
|
||||||
color="secondary"
|
<Button
|
||||||
className="w-full justify-center"
|
color="secondary"
|
||||||
onClick={() =>
|
disabled={
|
||||||
signIn("Cal.com", {
|
!!formMethods.formState.errors.username ||
|
||||||
callbackUrl: searchParams?.get("callbackUrl")
|
!!formMethods.formState.errors.email ||
|
||||||
? `${WEBAPP_URL}/${searchParams.get("callbackUrl")}`
|
premiumUsername
|
||||||
: `${WEBAPP_URL}/getting-started`,
|
}
|
||||||
})
|
className={classNames(
|
||||||
}>
|
"w-full justify-center rounded-md text-center",
|
||||||
{t("login_instead")}
|
formMethods.formState.errors.username && formMethods.formState.errors.email
|
||||||
</Button>
|
? "opacity-50"
|
||||||
)}
|
: ""
|
||||||
</div>
|
)}
|
||||||
</form>
|
onClick={() => {
|
||||||
</FormProvider>
|
if (!formMethods.getValues("username")) {
|
||||||
|
formMethods.trigger("username");
|
||||||
|
}
|
||||||
|
if (!formMethods.getValues("email")) {
|
||||||
|
formMethods.trigger("email");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
const username = formMethods.getValues("username");
|
||||||
|
localStorage.setItem("username", username);
|
||||||
|
const sp = new URLSearchParams();
|
||||||
|
// @NOTE: don't remove username query param as it's required right now for stripe payment page
|
||||||
|
sp.set("username", formMethods.getValues("username"));
|
||||||
|
sp.set("email", formMethods.getValues("email"));
|
||||||
|
router.push(
|
||||||
|
`${process.env.NEXT_PUBLIC_WEBAPP_URL}/auth/sso/saml` + `?${sp.toString()}`
|
||||||
|
);
|
||||||
|
}}>
|
||||||
|
<ShieldCheckIcon className="mr-2 h-5 w-5" />
|
||||||
|
{t("saml_sso")}
|
||||||
|
</Button>
|
||||||
|
) : null}
|
||||||
|
</div>
|
||||||
|
)}
|
||||||
|
</div>
|
||||||
|
{/* Already have an account & T&C */}
|
||||||
|
<div className="mt-6">
|
||||||
|
<div className="flex flex-col text-sm">
|
||||||
|
<Link href="/auth/login" className="text-emphasis hover:underline">
|
||||||
|
{t("already_have_account")}
|
||||||
|
</Link>
|
||||||
|
<div className="text-subtle">
|
||||||
|
By signing up, you agree to our{" "}
|
||||||
|
<Link className="text-emphasis hover:underline" href={`${WEBSITE_URL}/terms`}>
|
||||||
|
Terms of Service{" "}
|
||||||
|
</Link>
|
||||||
|
<span>and</span>{" "}
|
||||||
|
<Link className="text-emphasis hover:underline" href={`${WEBSITE_URL}/privacy`}>
|
||||||
|
Privacy Policy.
|
||||||
|
</Link>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div className="bg-subtle border-subtle hidden w-full flex-col justify-between rounded-l-2xl py-12 pl-12 lg:flex">
|
||||||
|
{IS_CALCOM && (
|
||||||
|
<div className="mb-12 mr-12 grid h-full w-full grid-cols-4 gap-4 ">
|
||||||
|
<div className="">
|
||||||
|
<img src="/product-cards/trustpilot.svg" className="h-[54px] w-full" alt="#" />
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<img src="/product-cards/g2.svg" className="h-[54px] w-full" alt="#" />
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<img src="/product-cards/producthunt.svg" className="h-[54px] w-full" alt="#" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
)}
|
||||||
|
<div
|
||||||
|
className="rounded-2xl border-y border-l border-dashed border-[#D1D5DB5A] py-[6px] pl-[6px]"
|
||||||
|
style={{
|
||||||
|
backgroundColor: "rgba(236,237,239,0.9)",
|
||||||
|
}}>
|
||||||
|
<img src="/mock-event-type-list.svg" alt="#" className="" />
|
||||||
|
</div>
|
||||||
|
<div className="mr-12 mt-8 grid h-full w-full grid-cols-3 gap-4 overflow-hidden">
|
||||||
|
{!IS_CALCOM &&
|
||||||
|
FEATURES.map((feature) => (
|
||||||
|
<>
|
||||||
|
<div className="flex flex-col leading-none">
|
||||||
|
<div className="text-emphasis items-center">
|
||||||
|
<feature.icon className="mb-1 h-4 w-4" />
|
||||||
|
<span className="text-sm font-medium">{t(feature.title)}</span>
|
||||||
|
</div>
|
||||||
|
<div className="text-subtle text-sm">
|
||||||
|
<p>
|
||||||
|
{t(
|
||||||
|
feature.description,
|
||||||
|
feature.i18nOptions && {
|
||||||
|
...feature.i18nOptions,
|
||||||
|
}
|
||||||
|
)}
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</>
|
||||||
|
))}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const querySchema = z.object({
|
||||||
|
username: z
|
||||||
|
.string()
|
||||||
|
.optional()
|
||||||
|
.transform((val) => val || ""),
|
||||||
|
email: z.string().email().optional(),
|
||||||
|
});
|
||||||
|
|
||||||
export const getServerSideProps = async (ctx: GetServerSidePropsContext) => {
|
export const getServerSideProps = async (ctx: GetServerSidePropsContext) => {
|
||||||
const prisma = await import("@calcom/prisma").then((mod) => mod.default);
|
const prisma = await import("@calcom/prisma").then((mod) => mod.default);
|
||||||
const flags = await getFeatureFlagMap(prisma);
|
const flags = await getFeatureFlagMap(prisma);
|
||||||
@@ -222,6 +499,9 @@ export const getServerSideProps = async (ctx: GetServerSidePropsContext) => {
|
|||||||
prepopulateFormValues: undefined,
|
prepopulateFormValues: undefined,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// username + email prepopulated from query params
|
||||||
|
const { username: preFillusername, email: prefilEmail } = querySchema.parse(ctx.query);
|
||||||
|
|
||||||
if (process.env.NEXT_PUBLIC_DISABLE_SIGNUP === "true" || flags["disable-signup"]) {
|
if (process.env.NEXT_PUBLIC_DISABLE_SIGNUP === "true" || flags["disable-signup"]) {
|
||||||
return {
|
return {
|
||||||
notFound: true,
|
notFound: true,
|
||||||
@@ -231,7 +511,15 @@ export const getServerSideProps = async (ctx: GetServerSidePropsContext) => {
|
|||||||
// no token given, treat as a normal signup without verification token
|
// no token given, treat as a normal signup without verification token
|
||||||
if (!token) {
|
if (!token) {
|
||||||
return {
|
return {
|
||||||
props: JSON.parse(JSON.stringify(props)),
|
props: JSON.parse(
|
||||||
|
JSON.stringify({
|
||||||
|
...props,
|
||||||
|
prepopulateFormValues: {
|
||||||
|
username: preFillusername || null,
|
||||||
|
email: prefilEmail || null,
|
||||||
|
},
|
||||||
|
})
|
||||||
|
),
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -214,7 +214,7 @@ export function VideoMeetingInfo(props: VideoMeetingInfo) {
|
|||||||
<h3>{t("invitee_timezone")}:</h3>
|
<h3>{t("invitee_timezone")}:</h3>
|
||||||
<p>{booking.user?.timeZone}</p>
|
<p>{booking.user?.timeZone}</p>
|
||||||
<h3>{t("when")}:</h3>
|
<h3>{t("when")}:</h3>
|
||||||
<p>
|
<p suppressHydrationWarning={true}>
|
||||||
{formatToLocalizedDate(startTime)} <br />
|
{formatToLocalizedDate(startTime)} <br />
|
||||||
{formatToLocalizedTime(startTime)}
|
{formatToLocalizedTime(startTime)}
|
||||||
</p>
|
</p>
|
||||||
|
|||||||
@@ -1,19 +1,337 @@
|
|||||||
import type { Page } from "@playwright/test";
|
import type { Page } from "@playwright/test";
|
||||||
import { expect } from "@playwright/test";
|
import { expect } from "@playwright/test";
|
||||||
|
import { Linter } from "eslint";
|
||||||
|
import { parse } from "node-html-parser";
|
||||||
|
|
||||||
|
import { getOrgFullOrigin } from "@calcom/features/ee/organizations/lib/orgDomains";
|
||||||
import { EMBED_LIB_URL, WEBAPP_URL } from "@calcom/lib/constants";
|
import { EMBED_LIB_URL, WEBAPP_URL } from "@calcom/lib/constants";
|
||||||
|
import { MembershipRole } from "@calcom/prisma/client";
|
||||||
|
|
||||||
import { test } from "./lib/fixtures";
|
import { test } from "./lib/fixtures";
|
||||||
|
|
||||||
function chooseEmbedType(page: Page, embedType: string) {
|
const linter = new Linter();
|
||||||
|
const eslintRules = {
|
||||||
|
"no-undef": "error",
|
||||||
|
"no-unused-vars": "off",
|
||||||
|
} as const;
|
||||||
|
test.describe.configure({ mode: "parallel" });
|
||||||
|
|
||||||
|
test.afterEach(({ users }) => users.deleteAll());
|
||||||
|
|
||||||
|
test.describe("Embed Code Generator Tests", () => {
|
||||||
|
test.describe("Non-Organization", () => {
|
||||||
|
test.beforeEach(async ({ users }) => {
|
||||||
|
const pro = await users.create();
|
||||||
|
await pro.apiLogin();
|
||||||
|
});
|
||||||
|
|
||||||
|
test.describe("Event Types Page", () => {
|
||||||
|
test.beforeEach(async ({ page }) => {
|
||||||
|
await page.goto("/event-types");
|
||||||
|
});
|
||||||
|
|
||||||
|
test("open Embed Dialog and choose Inline for First Event Type", async ({ page, users }) => {
|
||||||
|
const [pro] = users.get();
|
||||||
|
const embedUrl = await clickFirstEventTypeEmbedButton(page);
|
||||||
|
await expectToBeNavigatingToEmbedTypesDialog(page, {
|
||||||
|
embedUrl,
|
||||||
|
basePage: "/event-types",
|
||||||
|
});
|
||||||
|
|
||||||
|
chooseEmbedType(page, "inline");
|
||||||
|
|
||||||
|
await expectToBeNavigatingToEmbedCodeAndPreviewDialog(page, {
|
||||||
|
embedUrl,
|
||||||
|
embedType: "inline",
|
||||||
|
basePage: "/event-types",
|
||||||
|
});
|
||||||
|
|
||||||
|
await expectToContainValidCode(page, {
|
||||||
|
language: "html",
|
||||||
|
embedType: "inline",
|
||||||
|
orgSlug: null,
|
||||||
|
});
|
||||||
|
|
||||||
|
await goToReactCodeTab(page);
|
||||||
|
await expectToContainValidCode(page, {
|
||||||
|
language: "react",
|
||||||
|
embedType: "inline",
|
||||||
|
orgSlug: null,
|
||||||
|
});
|
||||||
|
|
||||||
|
await goToPreviewTab(page);
|
||||||
|
|
||||||
|
await expectToContainValidPreviewIframe(page, {
|
||||||
|
embedType: "inline",
|
||||||
|
calLink: `${pro.username}/30-min`,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
test("open Embed Dialog and choose floating-popup for First Event Type", async ({ page, users }) => {
|
||||||
|
const [pro] = users.get();
|
||||||
|
const embedUrl = await clickFirstEventTypeEmbedButton(page);
|
||||||
|
|
||||||
|
await expectToBeNavigatingToEmbedTypesDialog(page, {
|
||||||
|
embedUrl,
|
||||||
|
basePage: "/event-types",
|
||||||
|
});
|
||||||
|
|
||||||
|
chooseEmbedType(page, "floating-popup");
|
||||||
|
|
||||||
|
await expectToBeNavigatingToEmbedCodeAndPreviewDialog(page, {
|
||||||
|
embedUrl,
|
||||||
|
embedType: "floating-popup",
|
||||||
|
basePage: "/event-types",
|
||||||
|
});
|
||||||
|
await expectToContainValidCode(page, {
|
||||||
|
language: "html",
|
||||||
|
embedType: "floating-popup",
|
||||||
|
orgSlug: null,
|
||||||
|
});
|
||||||
|
|
||||||
|
await goToReactCodeTab(page);
|
||||||
|
await expectToContainValidCode(page, {
|
||||||
|
language: "react",
|
||||||
|
embedType: "floating-popup",
|
||||||
|
orgSlug: null,
|
||||||
|
});
|
||||||
|
|
||||||
|
await goToPreviewTab(page);
|
||||||
|
await expectToContainValidPreviewIframe(page, {
|
||||||
|
embedType: "floating-popup",
|
||||||
|
calLink: `${pro.username}/30-min`,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
test("open Embed Dialog and choose element-click for First Event Type", async ({ page, users }) => {
|
||||||
|
const [pro] = users.get();
|
||||||
|
const embedUrl = await clickFirstEventTypeEmbedButton(page);
|
||||||
|
|
||||||
|
await expectToBeNavigatingToEmbedTypesDialog(page, {
|
||||||
|
embedUrl,
|
||||||
|
basePage: "/event-types",
|
||||||
|
});
|
||||||
|
|
||||||
|
chooseEmbedType(page, "element-click");
|
||||||
|
|
||||||
|
await expectToBeNavigatingToEmbedCodeAndPreviewDialog(page, {
|
||||||
|
embedUrl,
|
||||||
|
embedType: "element-click",
|
||||||
|
basePage: "/event-types",
|
||||||
|
});
|
||||||
|
await expectToContainValidCode(page, {
|
||||||
|
language: "html",
|
||||||
|
embedType: "element-click",
|
||||||
|
orgSlug: null,
|
||||||
|
});
|
||||||
|
|
||||||
|
await goToReactCodeTab(page);
|
||||||
|
await expectToContainValidCode(page, {
|
||||||
|
language: "react",
|
||||||
|
embedType: "element-click",
|
||||||
|
orgSlug: null,
|
||||||
|
});
|
||||||
|
|
||||||
|
await goToPreviewTab(page);
|
||||||
|
await expectToContainValidPreviewIframe(page, {
|
||||||
|
embedType: "element-click",
|
||||||
|
calLink: `${pro.username}/30-min`,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
test.describe("Event Type Edit Page", () => {
|
||||||
|
test.beforeEach(async ({ page }) => {
|
||||||
|
await page.goto(`/event-types`);
|
||||||
|
await Promise.all([
|
||||||
|
page.locator('a[href*="/event-types/"]').first().click(),
|
||||||
|
page.waitForURL((url) => url.pathname.startsWith("/event-types/")),
|
||||||
|
]);
|
||||||
|
});
|
||||||
|
|
||||||
|
test("open Embed Dialog for the Event Type", async ({ page }) => {
|
||||||
|
const basePage = new URL(page.url()).pathname;
|
||||||
|
const embedUrl = await clickEmbedButton(page);
|
||||||
|
await expectToBeNavigatingToEmbedTypesDialog(page, {
|
||||||
|
embedUrl,
|
||||||
|
basePage,
|
||||||
|
});
|
||||||
|
|
||||||
|
chooseEmbedType(page, "inline");
|
||||||
|
|
||||||
|
await expectToBeNavigatingToEmbedCodeAndPreviewDialog(page, {
|
||||||
|
embedUrl,
|
||||||
|
basePage,
|
||||||
|
embedType: "inline",
|
||||||
|
});
|
||||||
|
|
||||||
|
await expectToContainValidCode(page, {
|
||||||
|
language: "html",
|
||||||
|
embedType: "inline",
|
||||||
|
orgSlug: null,
|
||||||
|
});
|
||||||
|
|
||||||
|
await goToPreviewTab(page);
|
||||||
|
|
||||||
|
await expectToContainValidPreviewIframe(page, {
|
||||||
|
embedType: "inline",
|
||||||
|
calLink: decodeURIComponent(embedUrl),
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
test.describe("Organization", () => {
|
||||||
|
test.beforeEach(async ({ users, orgs }) => {
|
||||||
|
const org = await orgs.create({
|
||||||
|
name: "TestOrg",
|
||||||
|
});
|
||||||
|
const user = await users.create({
|
||||||
|
organizationId: org.id,
|
||||||
|
roleInOrganization: MembershipRole.MEMBER,
|
||||||
|
});
|
||||||
|
await user.apiLogin();
|
||||||
|
});
|
||||||
|
test.describe("Event Types Page", () => {
|
||||||
|
test.beforeEach(async ({ page }) => {
|
||||||
|
await page.goto("/event-types");
|
||||||
|
});
|
||||||
|
|
||||||
|
test("open Embed Dialog and choose Inline for First Event Type", async ({ page, users }) => {
|
||||||
|
const [user] = users.get();
|
||||||
|
const { team: org } = await user.getOrgMembership();
|
||||||
|
const embedUrl = await clickFirstEventTypeEmbedButton(page);
|
||||||
|
await expectToBeNavigatingToEmbedTypesDialog(page, {
|
||||||
|
embedUrl,
|
||||||
|
basePage: "/event-types",
|
||||||
|
});
|
||||||
|
|
||||||
|
chooseEmbedType(page, "inline");
|
||||||
|
|
||||||
|
await expectToBeNavigatingToEmbedCodeAndPreviewDialog(page, {
|
||||||
|
embedUrl,
|
||||||
|
embedType: "inline",
|
||||||
|
basePage: "/event-types",
|
||||||
|
});
|
||||||
|
|
||||||
|
// Default tab is HTML code tab
|
||||||
|
await expectToContainValidCode(page, {
|
||||||
|
language: "html",
|
||||||
|
embedType: "inline",
|
||||||
|
orgSlug: org.slug,
|
||||||
|
});
|
||||||
|
|
||||||
|
await goToReactCodeTab(page);
|
||||||
|
await expectToContainValidCode(page, {
|
||||||
|
language: "react",
|
||||||
|
embedType: "inline",
|
||||||
|
orgSlug: org.slug,
|
||||||
|
});
|
||||||
|
|
||||||
|
await goToPreviewTab(page);
|
||||||
|
await expectToContainValidPreviewIframe(page, {
|
||||||
|
embedType: "inline",
|
||||||
|
calLink: `${user.username}/30-min`,
|
||||||
|
bookerUrl: getOrgFullOrigin(org?.slug ?? ""),
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
test("open Embed Dialog and choose floating-popup for First Event Type", async ({ page, users }) => {
|
||||||
|
const [user] = users.get();
|
||||||
|
const { team: org } = await user.getOrgMembership();
|
||||||
|
|
||||||
|
const embedUrl = await clickFirstEventTypeEmbedButton(page);
|
||||||
|
|
||||||
|
await expectToBeNavigatingToEmbedTypesDialog(page, {
|
||||||
|
embedUrl,
|
||||||
|
basePage: "/event-types",
|
||||||
|
});
|
||||||
|
|
||||||
|
chooseEmbedType(page, "floating-popup");
|
||||||
|
|
||||||
|
await expectToBeNavigatingToEmbedCodeAndPreviewDialog(page, {
|
||||||
|
embedUrl,
|
||||||
|
embedType: "floating-popup",
|
||||||
|
basePage: "/event-types",
|
||||||
|
});
|
||||||
|
await expectToContainValidCode(page, {
|
||||||
|
language: "html",
|
||||||
|
embedType: "floating-popup",
|
||||||
|
orgSlug: org.slug,
|
||||||
|
});
|
||||||
|
|
||||||
|
await goToReactCodeTab(page);
|
||||||
|
await expectToContainValidCode(page, {
|
||||||
|
language: "react",
|
||||||
|
embedType: "floating-popup",
|
||||||
|
orgSlug: org.slug,
|
||||||
|
});
|
||||||
|
|
||||||
|
await goToPreviewTab(page);
|
||||||
|
await expectToContainValidPreviewIframe(page, {
|
||||||
|
embedType: "floating-popup",
|
||||||
|
calLink: `${user.username}/30-min`,
|
||||||
|
bookerUrl: getOrgFullOrigin(org?.slug ?? ""),
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
test("open Embed Dialog and choose element-click for First Event Type", async ({ page, users }) => {
|
||||||
|
const [user] = users.get();
|
||||||
|
const embedUrl = await clickFirstEventTypeEmbedButton(page);
|
||||||
|
const { team: org } = await user.getOrgMembership();
|
||||||
|
|
||||||
|
await expectToBeNavigatingToEmbedTypesDialog(page, {
|
||||||
|
embedUrl,
|
||||||
|
basePage: "/event-types",
|
||||||
|
});
|
||||||
|
|
||||||
|
chooseEmbedType(page, "element-click");
|
||||||
|
|
||||||
|
await expectToBeNavigatingToEmbedCodeAndPreviewDialog(page, {
|
||||||
|
embedUrl,
|
||||||
|
embedType: "element-click",
|
||||||
|
basePage: "/event-types",
|
||||||
|
});
|
||||||
|
await expectToContainValidCode(page, {
|
||||||
|
language: "html",
|
||||||
|
embedType: "element-click",
|
||||||
|
orgSlug: org.slug,
|
||||||
|
});
|
||||||
|
|
||||||
|
await goToReactCodeTab(page);
|
||||||
|
await expectToContainValidCode(page, {
|
||||||
|
language: "react",
|
||||||
|
embedType: "element-click",
|
||||||
|
orgSlug: org.slug,
|
||||||
|
});
|
||||||
|
|
||||||
|
await goToPreviewTab(page);
|
||||||
|
await expectToContainValidPreviewIframe(page, {
|
||||||
|
embedType: "element-click",
|
||||||
|
calLink: `${user.username}/30-min`,
|
||||||
|
bookerUrl: getOrgFullOrigin(org?.slug ?? ""),
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
type EmbedType = "inline" | "floating-popup" | "element-click";
|
||||||
|
function chooseEmbedType(page: Page, embedType: EmbedType) {
|
||||||
page.locator(`[data-testid=${embedType}]`).click();
|
page.locator(`[data-testid=${embedType}]`).click();
|
||||||
}
|
}
|
||||||
|
|
||||||
async function gotToPreviewTab(page: Page) {
|
async function goToPreviewTab(page: Page) {
|
||||||
// To prevent early timeouts
|
// To prevent early timeouts
|
||||||
// eslint-disable-next-line playwright/no-wait-for-timeout
|
// eslint-disable-next-line playwright/no-wait-for-timeout
|
||||||
await page.waitForTimeout(1000);
|
await page.waitForTimeout(1000);
|
||||||
await page.locator("[data-testid=embed-tabs]").locator("text=Preview").click();
|
await page.locator("[data-testid=horizontal-tab-Preview]").click();
|
||||||
|
}
|
||||||
|
|
||||||
|
async function goToReactCodeTab(page: Page) {
|
||||||
|
// To prevent early timeouts
|
||||||
|
// eslint-disable-next-line playwright/no-wait-for-timeout
|
||||||
|
await page.waitForTimeout(1000);
|
||||||
|
await page.locator("[data-testid=horizontal-tab-React]").click();
|
||||||
}
|
}
|
||||||
|
|
||||||
async function clickEmbedButton(page: Page) {
|
async function clickEmbedButton(page: Page) {
|
||||||
@@ -55,7 +373,7 @@ async function expectToBeNavigatingToEmbedCodeAndPreviewDialog(
|
|||||||
basePage,
|
basePage,
|
||||||
}: {
|
}: {
|
||||||
embedUrl: string | null;
|
embedUrl: string | null;
|
||||||
embedType: string;
|
embedType: EmbedType;
|
||||||
basePage: string;
|
basePage: string;
|
||||||
}
|
}
|
||||||
) {
|
) {
|
||||||
@@ -73,10 +391,108 @@ async function expectToBeNavigatingToEmbedCodeAndPreviewDialog(
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
async function expectToContainValidCode(page: Page, { embedType }: { embedType: string }) {
|
async function expectToContainValidCode(
|
||||||
|
page: Page,
|
||||||
|
{
|
||||||
|
embedType,
|
||||||
|
language,
|
||||||
|
orgSlug,
|
||||||
|
}: { embedType: EmbedType; language: "html" | "react"; orgSlug: string | null }
|
||||||
|
) {
|
||||||
|
if (language === "react") {
|
||||||
|
return expectValidReactEmbedSnippet(page, { embedType, orgSlug });
|
||||||
|
}
|
||||||
|
if (language === "html") {
|
||||||
|
return expectValidHtmlEmbedSnippet(page, { embedType, orgSlug });
|
||||||
|
}
|
||||||
|
throw new Error("Unknown language");
|
||||||
|
}
|
||||||
|
|
||||||
|
async function expectValidHtmlEmbedSnippet(
|
||||||
|
page: Page,
|
||||||
|
{ embedType, orgSlug }: { embedType: EmbedType; orgSlug: string | null }
|
||||||
|
) {
|
||||||
const embedCode = await page.locator("[data-testid=embed-code]").inputValue();
|
const embedCode = await page.locator("[data-testid=embed-code]").inputValue();
|
||||||
expect(embedCode.includes("(function (C, A, L)")).toBe(true);
|
expect(embedCode).toContain("function (C, A, L)");
|
||||||
expect(embedCode.includes(`Cal ${embedType} embed code begins`)).toBe(true);
|
expect(embedCode).toContain(`Cal ${embedType} embed code begins`);
|
||||||
|
if (orgSlug) {
|
||||||
|
expect(embedCode).toContain(orgSlug);
|
||||||
|
}
|
||||||
|
|
||||||
|
const dom = parse(embedCode);
|
||||||
|
const scripts = dom.getElementsByTagName("script");
|
||||||
|
assertThatCodeIsValidVanillaJsCode(scripts[0].innerText);
|
||||||
|
|
||||||
|
return {
|
||||||
|
message: () => `passed`,
|
||||||
|
pass: true,
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
function assertThatCodeIsValidVanillaJsCode(code: string) {
|
||||||
|
const lintResult = linter.verify(code, {
|
||||||
|
env: {
|
||||||
|
browser: true,
|
||||||
|
},
|
||||||
|
parserOptions: {
|
||||||
|
ecmaVersion: 2021,
|
||||||
|
},
|
||||||
|
globals: {
|
||||||
|
Cal: "readonly",
|
||||||
|
},
|
||||||
|
rules: eslintRules,
|
||||||
|
});
|
||||||
|
if (lintResult.length) {
|
||||||
|
console.log(
|
||||||
|
JSON.stringify({
|
||||||
|
lintResult,
|
||||||
|
code,
|
||||||
|
})
|
||||||
|
);
|
||||||
|
}
|
||||||
|
expect(lintResult.length).toBe(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
function assertThatCodeIsValidReactCode(code: string) {
|
||||||
|
const lintResult = linter.verify(code, {
|
||||||
|
env: {
|
||||||
|
browser: true,
|
||||||
|
},
|
||||||
|
parserOptions: {
|
||||||
|
ecmaVersion: 2021,
|
||||||
|
ecmaFeatures: {
|
||||||
|
jsx: true,
|
||||||
|
},
|
||||||
|
sourceType: "module",
|
||||||
|
},
|
||||||
|
rules: eslintRules,
|
||||||
|
});
|
||||||
|
if (lintResult.length) {
|
||||||
|
console.log(
|
||||||
|
JSON.stringify({
|
||||||
|
lintResult,
|
||||||
|
code,
|
||||||
|
})
|
||||||
|
);
|
||||||
|
}
|
||||||
|
expect(lintResult.length).toBe(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
async function expectValidReactEmbedSnippet(
|
||||||
|
page: Page,
|
||||||
|
{ embedType, orgSlug }: { embedType: EmbedType; orgSlug: string | null }
|
||||||
|
) {
|
||||||
|
const embedCode = await page.locator("[data-testid=embed-react]").inputValue();
|
||||||
|
expect(embedCode).toContain("export default function MyApp(");
|
||||||
|
expect(embedCode).toContain(
|
||||||
|
embedType === "floating-popup" ? "floatingButton" : embedType === "inline" ? `<Cal` : "data-cal-link"
|
||||||
|
);
|
||||||
|
if (orgSlug) {
|
||||||
|
expect(embedCode).toContain(orgSlug);
|
||||||
|
}
|
||||||
|
|
||||||
|
assertThatCodeIsValidReactCode(embedCode);
|
||||||
|
|
||||||
return {
|
return {
|
||||||
message: () => `passed`,
|
message: () => `passed`,
|
||||||
pass: true,
|
pass: true,
|
||||||
@@ -88,141 +504,10 @@ async function expectToContainValidCode(page: Page, { embedType }: { embedType:
|
|||||||
*/
|
*/
|
||||||
async function expectToContainValidPreviewIframe(
|
async function expectToContainValidPreviewIframe(
|
||||||
page: Page,
|
page: Page,
|
||||||
{ embedType, calLink }: { embedType: string; calLink: string }
|
{ embedType, calLink, bookerUrl }: { embedType: EmbedType; calLink: string; bookerUrl?: string }
|
||||||
) {
|
) {
|
||||||
const bookerUrl = `${WEBAPP_URL}`;
|
bookerUrl = bookerUrl || `${WEBAPP_URL}`;
|
||||||
expect(await page.locator("[data-testid=embed-preview]").getAttribute("src")).toContain(
|
expect(await page.locator("[data-testid=embed-preview]").getAttribute("src")).toContain(
|
||||||
`/preview.html?embedType=${embedType}&calLink=${calLink}&embedLibUrl=${EMBED_LIB_URL}&bookerUrl=${bookerUrl}`
|
`/preview.html?embedType=${embedType}&calLink=${calLink}&embedLibUrl=${EMBED_LIB_URL}&bookerUrl=${bookerUrl}`
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
test.describe.configure({ mode: "parallel" });
|
|
||||||
|
|
||||||
test.afterEach(({ users }) => users.deleteAll());
|
|
||||||
|
|
||||||
test.describe("Embed Code Generator Tests", () => {
|
|
||||||
test.beforeEach(async ({ users }) => {
|
|
||||||
const pro = await users.create();
|
|
||||||
await pro.apiLogin();
|
|
||||||
});
|
|
||||||
|
|
||||||
test.describe("Event Types Page", () => {
|
|
||||||
test.beforeEach(async ({ page }) => {
|
|
||||||
await page.goto("/event-types");
|
|
||||||
});
|
|
||||||
|
|
||||||
test("open Embed Dialog and choose Inline for First Event Type", async ({ page, users }) => {
|
|
||||||
const [pro] = users.get();
|
|
||||||
const embedUrl = await clickFirstEventTypeEmbedButton(page);
|
|
||||||
await expectToBeNavigatingToEmbedTypesDialog(page, {
|
|
||||||
embedUrl,
|
|
||||||
basePage: "/event-types",
|
|
||||||
});
|
|
||||||
|
|
||||||
chooseEmbedType(page, "inline");
|
|
||||||
|
|
||||||
await expectToBeNavigatingToEmbedCodeAndPreviewDialog(page, {
|
|
||||||
embedUrl,
|
|
||||||
embedType: "inline",
|
|
||||||
basePage: "/event-types",
|
|
||||||
});
|
|
||||||
|
|
||||||
await expectToContainValidCode(page, { embedType: "inline" });
|
|
||||||
|
|
||||||
await gotToPreviewTab(page);
|
|
||||||
|
|
||||||
await expectToContainValidPreviewIframe(page, {
|
|
||||||
embedType: "inline",
|
|
||||||
calLink: `${pro.username}/30-min`,
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
test("open Embed Dialog and choose floating-popup for First Event Type", async ({ page, users }) => {
|
|
||||||
const [pro] = users.get();
|
|
||||||
const embedUrl = await clickFirstEventTypeEmbedButton(page);
|
|
||||||
|
|
||||||
await expectToBeNavigatingToEmbedTypesDialog(page, {
|
|
||||||
embedUrl,
|
|
||||||
basePage: "/event-types",
|
|
||||||
});
|
|
||||||
|
|
||||||
chooseEmbedType(page, "floating-popup");
|
|
||||||
|
|
||||||
await expectToBeNavigatingToEmbedCodeAndPreviewDialog(page, {
|
|
||||||
embedUrl,
|
|
||||||
embedType: "floating-popup",
|
|
||||||
basePage: "/event-types",
|
|
||||||
});
|
|
||||||
await expectToContainValidCode(page, { embedType: "floating-popup" });
|
|
||||||
|
|
||||||
await gotToPreviewTab(page);
|
|
||||||
await expectToContainValidPreviewIframe(page, {
|
|
||||||
embedType: "floating-popup",
|
|
||||||
calLink: `${pro.username}/30-min`,
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
test("open Embed Dialog and choose element-click for First Event Type", async ({ page, users }) => {
|
|
||||||
const [pro] = users.get();
|
|
||||||
const embedUrl = await clickFirstEventTypeEmbedButton(page);
|
|
||||||
|
|
||||||
await expectToBeNavigatingToEmbedTypesDialog(page, {
|
|
||||||
embedUrl,
|
|
||||||
basePage: "/event-types",
|
|
||||||
});
|
|
||||||
|
|
||||||
chooseEmbedType(page, "element-click");
|
|
||||||
|
|
||||||
await expectToBeNavigatingToEmbedCodeAndPreviewDialog(page, {
|
|
||||||
embedUrl,
|
|
||||||
embedType: "element-click",
|
|
||||||
basePage: "/event-types",
|
|
||||||
});
|
|
||||||
await expectToContainValidCode(page, { embedType: "element-click" });
|
|
||||||
|
|
||||||
await gotToPreviewTab(page);
|
|
||||||
await expectToContainValidPreviewIframe(page, {
|
|
||||||
embedType: "element-click",
|
|
||||||
calLink: `${pro.username}/30-min`,
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
test.describe("Event Type Edit Page", () => {
|
|
||||||
test.beforeEach(async ({ page }) => {
|
|
||||||
await page.goto(`/event-types`);
|
|
||||||
await Promise.all([
|
|
||||||
page.locator('a[href*="/event-types/"]').first().click(),
|
|
||||||
page.waitForURL((url) => url.pathname.startsWith("/event-types/")),
|
|
||||||
]);
|
|
||||||
});
|
|
||||||
|
|
||||||
test("open Embed Dialog for the Event Type", async ({ page }) => {
|
|
||||||
const basePage = new URL(page.url()).pathname;
|
|
||||||
const embedUrl = await clickEmbedButton(page);
|
|
||||||
await expectToBeNavigatingToEmbedTypesDialog(page, {
|
|
||||||
embedUrl,
|
|
||||||
basePage,
|
|
||||||
});
|
|
||||||
|
|
||||||
chooseEmbedType(page, "inline");
|
|
||||||
|
|
||||||
await expectToBeNavigatingToEmbedCodeAndPreviewDialog(page, {
|
|
||||||
embedUrl,
|
|
||||||
basePage,
|
|
||||||
embedType: "inline",
|
|
||||||
});
|
|
||||||
|
|
||||||
await expectToContainValidCode(page, {
|
|
||||||
embedType: "inline",
|
|
||||||
});
|
|
||||||
|
|
||||||
await gotToPreviewTab(page);
|
|
||||||
|
|
||||||
await expectToContainValidPreviewIframe(page, {
|
|
||||||
embedType: "inline",
|
|
||||||
calLink: decodeURIComponent(embedUrl),
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
@@ -1,34 +0,0 @@
|
|||||||
import type { Page } from "@playwright/test";
|
|
||||||
|
|
||||||
declare global {
|
|
||||||
interface Window {
|
|
||||||
E2E_CLIPBOARD_VALUE?: string;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
export type Window = typeof window;
|
|
||||||
// creates the single server fixture
|
|
||||||
export const createClipboardFixture = (page: Page) => {
|
|
||||||
return {
|
|
||||||
reset: async () => {
|
|
||||||
await page.evaluate(() => {
|
|
||||||
delete window.E2E_CLIPBOARD_VALUE;
|
|
||||||
});
|
|
||||||
},
|
|
||||||
get: async () => {
|
|
||||||
return getClipboardValue({ page });
|
|
||||||
},
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
function getClipboardValue({ page }: { page: Page }) {
|
|
||||||
return page.evaluate(() => {
|
|
||||||
return new Promise<string>((resolve, reject) => {
|
|
||||||
setInterval(() => {
|
|
||||||
if (!window.E2E_CLIPBOARD_VALUE) return;
|
|
||||||
resolve(window.E2E_CLIPBOARD_VALUE);
|
|
||||||
}, 500);
|
|
||||||
setTimeout(() => reject(new Error("Timeout")), 1000);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,50 @@
|
|||||||
|
import type { Page } from "@playwright/test";
|
||||||
|
import type { Feature } from "@prisma/client";
|
||||||
|
|
||||||
|
import type { AppFlags } from "@calcom/features/flags/config";
|
||||||
|
import { prisma } from "@calcom/prisma";
|
||||||
|
|
||||||
|
type FeatureSlugs = keyof AppFlags;
|
||||||
|
|
||||||
|
export const createFeatureFixture = (page: Page) => {
|
||||||
|
const store = { features: [], page } as { features: Feature[]; page: typeof page };
|
||||||
|
let initalFeatures: Feature[] = [];
|
||||||
|
|
||||||
|
// IIF to add all feautres to store on creation
|
||||||
|
return {
|
||||||
|
init: async () => {
|
||||||
|
const features = await prisma.feature.findMany();
|
||||||
|
store.features = features;
|
||||||
|
initalFeatures = features;
|
||||||
|
return features;
|
||||||
|
},
|
||||||
|
getAll: () => store.features,
|
||||||
|
get: (slug: FeatureSlugs) => store.features.find((b) => b.slug === slug),
|
||||||
|
deleteAll: async () => {
|
||||||
|
await prisma.feature.deleteMany({
|
||||||
|
where: { slug: { in: store.features.map((feature) => feature.slug) } },
|
||||||
|
});
|
||||||
|
store.features = [];
|
||||||
|
},
|
||||||
|
delete: async (slug: FeatureSlugs) => {
|
||||||
|
await prisma.feature.delete({ where: { slug } });
|
||||||
|
store.features = store.features.filter((b) => b.slug !== slug);
|
||||||
|
},
|
||||||
|
toggleFeature: async (slug: FeatureSlugs) => {
|
||||||
|
const feature = store.features.find((b) => b.slug === slug);
|
||||||
|
if (feature) {
|
||||||
|
const enabled = !feature.enabled;
|
||||||
|
await prisma.feature.update({ where: { slug }, data: { enabled } });
|
||||||
|
store.features = store.features.map((b) => (b.slug === slug ? { ...b, enabled } : b));
|
||||||
|
}
|
||||||
|
},
|
||||||
|
set: async (slug: FeatureSlugs, enabled: boolean) => {
|
||||||
|
const feature = store.features.find((b) => b.slug === slug);
|
||||||
|
if (feature) {
|
||||||
|
store.features = store.features.map((b) => (b.slug === slug ? { ...b, enabled } : b));
|
||||||
|
await prisma.feature.update({ where: { slug }, data: { enabled } });
|
||||||
|
}
|
||||||
|
},
|
||||||
|
reset: () => (store.features = initalFeatures),
|
||||||
|
};
|
||||||
|
};
|
||||||
@@ -73,10 +73,10 @@ const fillQuestion = async (eventTypePage: Page, questionType: string, customLoc
|
|||||||
},
|
},
|
||||||
multiselect: async () => {
|
multiselect: async () => {
|
||||||
if (customLocators.shouldChangeMultiSelectLocator) {
|
if (customLocators.shouldChangeMultiSelectLocator) {
|
||||||
await eventTypePage.locator("form svg").nth(1).click();
|
await eventTypePage.getByLabel("multi-select-dropdown").click();
|
||||||
await eventTypePage.getByTestId("select-option-Option 1").click();
|
await eventTypePage.getByTestId("select-option-Option 1").click();
|
||||||
} else {
|
} else {
|
||||||
await eventTypePage.locator("form svg").last().click();
|
await eventTypePage.getByLabel("multi-select-dropdown").last().click();
|
||||||
await eventTypePage.getByTestId("select-option-Option 1").click();
|
await eventTypePage.getByTestId("select-option-Option 1").click();
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -88,10 +88,10 @@ const fillQuestion = async (eventTypePage: Page, questionType: string, customLoc
|
|||||||
},
|
},
|
||||||
select: async () => {
|
select: async () => {
|
||||||
if (customLocators.shouldChangeSelectLocator) {
|
if (customLocators.shouldChangeSelectLocator) {
|
||||||
await eventTypePage.locator("form svg").nth(1).click();
|
await eventTypePage.getByLabel("select-dropdown").first().click();
|
||||||
await eventTypePage.getByTestId("select-option-Option 1").click();
|
await eventTypePage.getByTestId("select-option-Option 1").click();
|
||||||
} else {
|
} else {
|
||||||
await eventTypePage.locator("form svg").last().click();
|
await eventTypePage.getByLabel("select-dropdown").last().click();
|
||||||
await eventTypePage.getByTestId("select-option-Option 1").click();
|
await eventTypePage.getByTestId("select-option-Option 1").click();
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -138,11 +138,12 @@ const fillAllQuestions = async (eventTypePage: Page, questions: string[], option
|
|||||||
await eventTypePage.getByPlaceholder("Textarea test").fill("This is a sample text for textarea.");
|
await eventTypePage.getByPlaceholder("Textarea test").fill("This is a sample text for textarea.");
|
||||||
break;
|
break;
|
||||||
case "select":
|
case "select":
|
||||||
await eventTypePage.locator("form svg").last().click();
|
await eventTypePage.getByLabel("select-dropdown").last().click();
|
||||||
await eventTypePage.getByTestId("select-option-Option 1").click();
|
await eventTypePage.getByTestId("select-option-Option 1").click();
|
||||||
break;
|
break;
|
||||||
case "multiselect":
|
case "multiselect":
|
||||||
await eventTypePage.locator("form svg").nth(4).click();
|
// select-dropdown
|
||||||
|
await eventTypePage.getByLabel("multi-select-dropdown").click();
|
||||||
await eventTypePage.getByTestId("select-option-Option 1").click();
|
await eventTypePage.getByTestId("select-option-Option 1").click();
|
||||||
break;
|
break;
|
||||||
case "number":
|
case "number":
|
||||||
|
|||||||
@@ -143,6 +143,17 @@ const createTeamAndAddUser = async (
|
|||||||
export const createUsersFixture = (page: Page, emails: API | undefined, workerInfo: WorkerInfo) => {
|
export const createUsersFixture = (page: Page, emails: API | undefined, workerInfo: WorkerInfo) => {
|
||||||
const store = { users: [], page } as { users: UserFixture[]; page: typeof page };
|
const store = { users: [], page } as { users: UserFixture[]; page: typeof page };
|
||||||
return {
|
return {
|
||||||
|
buildForSignup: (opts?: Pick<CustomUserOpts, "email" | "username" | "useExactUsername" | "password">) => {
|
||||||
|
const uname =
|
||||||
|
opts?.useExactUsername && opts?.username
|
||||||
|
? opts.username
|
||||||
|
: `${opts?.username || "user"}-${workerInfo.workerIndex}-${Date.now()}`;
|
||||||
|
return {
|
||||||
|
username: uname,
|
||||||
|
email: opts?.email ?? `${uname}@example.com`,
|
||||||
|
password: opts?.password ?? uname,
|
||||||
|
};
|
||||||
|
},
|
||||||
create: async (
|
create: async (
|
||||||
opts?: CustomUserOpts | null,
|
opts?: CustomUserOpts | null,
|
||||||
scenario: {
|
scenario: {
|
||||||
@@ -396,6 +407,15 @@ export const createUsersFixture = (page: Page, emails: API | undefined, workerIn
|
|||||||
await prisma.user.delete({ where: { id } });
|
await prisma.user.delete({ where: { id } });
|
||||||
store.users = store.users.filter((b) => b.id !== id);
|
store.users = store.users.filter((b) => b.id !== id);
|
||||||
},
|
},
|
||||||
|
deleteByEmail: async (email: string) => {
|
||||||
|
// Use deleteMany instead of delete to avoid the findUniqueOrThrow error that happens before the delete
|
||||||
|
await prisma.user.deleteMany({
|
||||||
|
where: {
|
||||||
|
email,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
store.users = store.users.filter((b) => b.email !== email);
|
||||||
|
},
|
||||||
set: async (email: string) => {
|
set: async (email: string) => {
|
||||||
const user = await prisma.user.findUniqueOrThrow({
|
const user = await prisma.user.findUniqueOrThrow({
|
||||||
where: { email },
|
where: { email },
|
||||||
@@ -460,7 +480,7 @@ const createUserFixture = (user: UserWithIncludes, page: Page) => {
|
|||||||
}
|
}
|
||||||
return membership;
|
return membership;
|
||||||
},
|
},
|
||||||
getOrg: async () => {
|
getOrgMembership: async () => {
|
||||||
return prisma.membership.findFirstOrThrow({
|
return prisma.membership.findFirstOrThrow({
|
||||||
where: {
|
where: {
|
||||||
userId: user.id,
|
userId: user.id,
|
||||||
@@ -471,7 +491,13 @@ const createUserFixture = (user: UserWithIncludes, page: Page) => {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
include: { team: { select: { children: true, metadata: true, name: true } } },
|
include: {
|
||||||
|
team: {
|
||||||
|
include: {
|
||||||
|
children: true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
getFirstEventAsOwner: async () =>
|
getFirstEventAsOwner: async () =>
|
||||||
|
|||||||
@@ -9,8 +9,8 @@ import prisma from "@calcom/prisma";
|
|||||||
|
|
||||||
import type { ExpectedUrlDetails } from "../../../../playwright.config";
|
import type { ExpectedUrlDetails } from "../../../../playwright.config";
|
||||||
import { createBookingsFixture } from "../fixtures/bookings";
|
import { createBookingsFixture } from "../fixtures/bookings";
|
||||||
import { createClipboardFixture } from "../fixtures/clipboard";
|
|
||||||
import { createEmbedsFixture } from "../fixtures/embeds";
|
import { createEmbedsFixture } from "../fixtures/embeds";
|
||||||
|
import { createFeatureFixture } from "../fixtures/features";
|
||||||
import { createOrgsFixture } from "../fixtures/orgs";
|
import { createOrgsFixture } from "../fixtures/orgs";
|
||||||
import { createPaymentsFixture } from "../fixtures/payments";
|
import { createPaymentsFixture } from "../fixtures/payments";
|
||||||
import { createBookingPageFixture } from "../fixtures/regularBookings";
|
import { createBookingPageFixture } from "../fixtures/regularBookings";
|
||||||
@@ -30,7 +30,7 @@ export interface Fixtures {
|
|||||||
emails?: API;
|
emails?: API;
|
||||||
routingForms: ReturnType<typeof createRoutingFormsFixture>;
|
routingForms: ReturnType<typeof createRoutingFormsFixture>;
|
||||||
bookingPage: ReturnType<typeof createBookingPageFixture>;
|
bookingPage: ReturnType<typeof createBookingPageFixture>;
|
||||||
clipboard: ReturnType<typeof createClipboardFixture>;
|
features: ReturnType<typeof createFeatureFixture>;
|
||||||
}
|
}
|
||||||
|
|
||||||
declare global {
|
declare global {
|
||||||
@@ -97,8 +97,9 @@ export const test = base.extend<Fixtures>({
|
|||||||
const bookingPage = createBookingPageFixture(page);
|
const bookingPage = createBookingPageFixture(page);
|
||||||
await use(bookingPage);
|
await use(bookingPage);
|
||||||
},
|
},
|
||||||
clipboard: async ({ page }, use) => {
|
features: async ({ page }, use) => {
|
||||||
const clipboard = createClipboardFixture(page);
|
const features = createFeatureFixture(page);
|
||||||
await use(clipboard);
|
await features.init();
|
||||||
|
await use(features);
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
@@ -203,6 +203,12 @@ export async function installAppleCalendar(page: Page) {
|
|||||||
await page.click('[data-testid="install-app-button"]');
|
await page.click('[data-testid="install-app-button"]');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export async function getInviteLink(page: Page) {
|
||||||
|
const response = await page.waitForResponse("**/api/trpc/teams/createInvite?batch=1");
|
||||||
|
const json = await response.json();
|
||||||
|
return json[0].result.data.json.inviteLink as string;
|
||||||
|
}
|
||||||
|
|
||||||
export async function getEmailsReceivedByUser({
|
export async function getEmailsReceivedByUser({
|
||||||
emails,
|
emails,
|
||||||
userEmail,
|
userEmail,
|
||||||
|
|||||||
@@ -1,20 +1,20 @@
|
|||||||
import { expect } from "@playwright/test";
|
import { expect } from "@playwright/test";
|
||||||
|
|
||||||
import { test } from "../lib/fixtures";
|
import { test } from "../lib/fixtures";
|
||||||
|
import { getInviteLink } from "../lib/testUtils";
|
||||||
import { expectInvitationEmailToBeReceived } from "./expects";
|
import { expectInvitationEmailToBeReceived } from "./expects";
|
||||||
|
|
||||||
test.describe.configure({ mode: "parallel" });
|
test.describe.configure({ mode: "parallel" });
|
||||||
|
|
||||||
test.afterEach(async ({ users, emails, clipboard }) => {
|
test.afterEach(async ({ users, emails }) => {
|
||||||
clipboard.reset();
|
|
||||||
await users.deleteAll();
|
await users.deleteAll();
|
||||||
emails?.deleteAll();
|
emails?.deleteAll();
|
||||||
});
|
});
|
||||||
|
|
||||||
test.describe("Organization", () => {
|
test.describe("Organization", () => {
|
||||||
test("Invitation (non verified)", async ({ browser, page, users, emails, clipboard }) => {
|
test("Invitation (non verified)", async ({ browser, page, users, emails }) => {
|
||||||
const orgOwner = await users.create(undefined, { hasTeam: true, isOrg: true });
|
const orgOwner = await users.create(undefined, { hasTeam: true, isOrg: true });
|
||||||
const { team: org } = await orgOwner.getOrg();
|
const { team: org } = await orgOwner.getOrgMembership();
|
||||||
await orgOwner.apiLogin();
|
await orgOwner.apiLogin();
|
||||||
await page.goto("/settings/organizations/members");
|
await page.goto("/settings/organizations/members");
|
||||||
await page.waitForLoadState("networkidle");
|
await page.waitForLoadState("networkidle");
|
||||||
@@ -69,9 +69,8 @@ test.describe("Organization", () => {
|
|||||||
// Get the invite link
|
// Get the invite link
|
||||||
await page.locator('button:text("Add")').click();
|
await page.locator('button:text("Add")').click();
|
||||||
await page.locator(`[data-testid="copy-invite-link-button"]`).click();
|
await page.locator(`[data-testid="copy-invite-link-button"]`).click();
|
||||||
const inviteLink = await clipboard.get();
|
|
||||||
await page.waitForLoadState("networkidle");
|
|
||||||
|
|
||||||
|
const inviteLink = await getInviteLink(page);
|
||||||
// Follow invite link in new window
|
// Follow invite link in new window
|
||||||
const context = await browser.newContext();
|
const context = await browser.newContext();
|
||||||
const inviteLinkPage = await context.newPage();
|
const inviteLinkPage = await context.newPage();
|
||||||
@@ -92,13 +91,13 @@ test.describe("Organization", () => {
|
|||||||
|
|
||||||
test("Invitation (verified)", async ({ browser, page, users, emails }) => {
|
test("Invitation (verified)", async ({ browser, page, users, emails }) => {
|
||||||
const orgOwner = await users.create(undefined, { hasTeam: true, isOrg: true, isOrgVerified: true });
|
const orgOwner = await users.create(undefined, { hasTeam: true, isOrg: true, isOrgVerified: true });
|
||||||
const { team: org } = await orgOwner.getOrg();
|
const { team: org } = await orgOwner.getOrgMembership();
|
||||||
await orgOwner.apiLogin();
|
await orgOwner.apiLogin();
|
||||||
await page.goto("/settings/organizations/members");
|
await page.goto("/settings/organizations/members");
|
||||||
await page.waitForLoadState("networkidle");
|
await page.waitForLoadState("networkidle");
|
||||||
|
|
||||||
await test.step("To the organization by email (internal user)", async () => {
|
await test.step("To the organization by email (internal user)", async () => {
|
||||||
const invitedUserEmail = `rick@example.com`;
|
const invitedUserEmail = `rick-${Date.now()}@example.com`;
|
||||||
await page.locator('button:text("Add")').click();
|
await page.locator('button:text("Add")').click();
|
||||||
await page.locator('input[name="inviteUser"]').fill(invitedUserEmail);
|
await page.locator('input[name="inviteUser"]').fill(invitedUserEmail);
|
||||||
await page.locator('button:text("Send invite")').click();
|
await page.locator('button:text("Send invite")').click();
|
||||||
@@ -110,7 +109,7 @@ test.describe("Organization", () => {
|
|||||||
`${org.name}'s admin invited you to join the organization ${org.name} on Cal.com`
|
`${org.name}'s admin invited you to join the organization ${org.name} on Cal.com`
|
||||||
);
|
);
|
||||||
|
|
||||||
// Check newly invited member exists and is pending
|
// Check newly invited member exists and is not pending
|
||||||
await expect(
|
await expect(
|
||||||
page.locator(`[data-testid="email-${invitedUserEmail.replace("@", "")}-pending"]`)
|
page.locator(`[data-testid="email-${invitedUserEmail.replace("@", "")}-pending"]`)
|
||||||
).toHaveCount(0);
|
).toHaveCount(0);
|
||||||
|
|||||||
@@ -0,0 +1,231 @@
|
|||||||
|
import { expect } from "@playwright/test";
|
||||||
|
import { randomBytes } from "crypto";
|
||||||
|
|
||||||
|
import { APP_NAME, IS_PREMIUM_USERNAME_ENABLED, IS_MAILHOG_ENABLED } from "@calcom/lib/constants";
|
||||||
|
|
||||||
|
import { test } from "./lib/fixtures";
|
||||||
|
import { getEmailsReceivedByUser } from "./lib/testUtils";
|
||||||
|
|
||||||
|
test.describe.configure({ mode: "parallel" });
|
||||||
|
|
||||||
|
test.describe("Signup Flow Test", async () => {
|
||||||
|
test.beforeEach(async ({ features }) => {
|
||||||
|
features.reset(); // This resets to the inital state not an empt yarray
|
||||||
|
});
|
||||||
|
test.afterAll(async ({ users }) => {
|
||||||
|
await users.deleteAll();
|
||||||
|
});
|
||||||
|
test("Username is taken", async ({ page, users }) => {
|
||||||
|
// log in trail user
|
||||||
|
await test.step("Sign up", async () => {
|
||||||
|
await users.create({
|
||||||
|
username: "pro",
|
||||||
|
});
|
||||||
|
|
||||||
|
await page.goto("/signup");
|
||||||
|
|
||||||
|
const alertMessage = "Username or email is already taken";
|
||||||
|
|
||||||
|
// Fill form
|
||||||
|
await page.locator('input[name="username"]').fill("pro");
|
||||||
|
await page.locator('input[name="email"]').fill("pro@example.com");
|
||||||
|
await page.locator('input[name="password"]').fill("Password99!");
|
||||||
|
|
||||||
|
// Submit form
|
||||||
|
await page.click('button[type="submit"]');
|
||||||
|
|
||||||
|
const alert = await page.waitForSelector('[data-testid="alert"]');
|
||||||
|
const alertMessageInner = await alert.innerText();
|
||||||
|
|
||||||
|
expect(alertMessage).toBeDefined();
|
||||||
|
expect(alertMessageInner).toContain(alertMessageInner);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
test("Email is taken", async ({ page, users }) => {
|
||||||
|
// log in trail user
|
||||||
|
await test.step("Sign up", async () => {
|
||||||
|
const user = await users.create({
|
||||||
|
username: "pro",
|
||||||
|
});
|
||||||
|
|
||||||
|
await page.goto("/signup");
|
||||||
|
|
||||||
|
const alertMessage = "Username or email is already taken";
|
||||||
|
|
||||||
|
// Fill form
|
||||||
|
await page.locator('input[name="username"]').fill("randomuserwhodoesntexist");
|
||||||
|
await page.locator('input[name="email"]').fill(user.email);
|
||||||
|
await page.locator('input[name="password"]').fill("Password99!");
|
||||||
|
|
||||||
|
// Submit form
|
||||||
|
|
||||||
|
await page.click('button[type="submit"]');
|
||||||
|
const alert = await page.waitForSelector('[data-testid="alert"]');
|
||||||
|
const alertMessageInner = await alert.innerText();
|
||||||
|
|
||||||
|
expect(alertMessage).toBeDefined();
|
||||||
|
expect(alertMessageInner).toContain(alertMessageInner);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
test("Premium Username Flow - creates stripe checkout", async ({ page, users, prisma }) => {
|
||||||
|
// eslint-disable-next-line playwright/no-skipped-test
|
||||||
|
test.skip(!IS_PREMIUM_USERNAME_ENABLED, "Only run on Cal.com");
|
||||||
|
const userToCreate = users.buildForSignup({
|
||||||
|
username: "rock",
|
||||||
|
password: "Password99!",
|
||||||
|
});
|
||||||
|
// Ensure the premium username is available
|
||||||
|
await prisma.user.deleteMany({ where: { username: "rock" } });
|
||||||
|
|
||||||
|
// Signup with premium username name
|
||||||
|
await page.goto("/signup");
|
||||||
|
|
||||||
|
// Fill form
|
||||||
|
await page.locator('input[name="username"]').fill("rock");
|
||||||
|
await page.locator('input[name="email"]').fill(userToCreate.email);
|
||||||
|
await page.locator('input[name="password"]').fill(userToCreate.password);
|
||||||
|
|
||||||
|
await page.click('button[type="submit"]');
|
||||||
|
|
||||||
|
// Check that stripe checkout is present
|
||||||
|
const expectedUrl = "https://checkout.stripe.com";
|
||||||
|
|
||||||
|
await page.waitForURL((url) => url.href.startsWith(expectedUrl));
|
||||||
|
const url = page.url();
|
||||||
|
|
||||||
|
// Check that the URL matches the expected URL
|
||||||
|
expect(url).toContain(expectedUrl);
|
||||||
|
// TODO: complete the stripe checkout flow
|
||||||
|
});
|
||||||
|
test("Signup with valid (non premium) username", async ({ page, users, features }) => {
|
||||||
|
const userToCreate = users.buildForSignup({
|
||||||
|
username: "rick-jones",
|
||||||
|
password: "Password99!",
|
||||||
|
});
|
||||||
|
|
||||||
|
await page.goto("/signup");
|
||||||
|
|
||||||
|
// Fill form
|
||||||
|
await page.locator('input[name="username"]').fill(userToCreate.username);
|
||||||
|
await page.locator('input[name="email"]').fill(userToCreate.email);
|
||||||
|
await page.locator('input[name="password"]').fill(userToCreate.password);
|
||||||
|
|
||||||
|
await page.click('button[type="submit"]');
|
||||||
|
await page.waitForLoadState("networkidle");
|
||||||
|
// Find the newly created user and add it to the fixture store
|
||||||
|
const newUser = await users.set(userToCreate.email);
|
||||||
|
expect(newUser).not.toBeNull();
|
||||||
|
|
||||||
|
// Check that the URL matches the expected URL
|
||||||
|
expect(page.url()).toContain("/auth/verify-email");
|
||||||
|
});
|
||||||
|
test("Signup fields prefilled with query params", async ({ page, users }) => {
|
||||||
|
const signupUrlWithParams = "/signup?username=rick-jones&email=rick-jones%40example.com";
|
||||||
|
await page.goto(signupUrlWithParams);
|
||||||
|
|
||||||
|
// Fill form
|
||||||
|
const usernameInput = page.locator('input[name="username"]');
|
||||||
|
const emailInput = page.locator('input[name="email"]');
|
||||||
|
|
||||||
|
expect(await usernameInput.inputValue()).toBe("rick-jones");
|
||||||
|
expect(await emailInput.inputValue()).toBe("rick-jones@example.com");
|
||||||
|
});
|
||||||
|
test("Signup with token prefils correct fields", async ({ page, users, prisma }) => {
|
||||||
|
//Create a user and create a token
|
||||||
|
const token = randomBytes(32).toString("hex");
|
||||||
|
const userToCreate = users.buildForSignup({
|
||||||
|
username: "rick-team",
|
||||||
|
});
|
||||||
|
|
||||||
|
const createdtoken = await prisma.verificationToken.create({
|
||||||
|
data: {
|
||||||
|
identifier: userToCreate.email,
|
||||||
|
token,
|
||||||
|
expires: new Date(new Date().setHours(168)), // +1 week
|
||||||
|
team: {
|
||||||
|
create: {
|
||||||
|
name: "Rick's Team",
|
||||||
|
slug: `${userToCreate.username}-team`,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
});
|
||||||
|
|
||||||
|
// create a user with the same email as the token
|
||||||
|
const rickTeamUser = await prisma.user.create({
|
||||||
|
data: {
|
||||||
|
email: userToCreate.email,
|
||||||
|
username: userToCreate.username,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
|
||||||
|
// Create provitional membership
|
||||||
|
await prisma.membership.create({
|
||||||
|
data: {
|
||||||
|
teamId: createdtoken.teamId ?? -1,
|
||||||
|
userId: rickTeamUser.id,
|
||||||
|
role: "ADMIN",
|
||||||
|
accepted: false,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
|
||||||
|
const signupUrlWithToken = `/signup?token=${token}`;
|
||||||
|
|
||||||
|
await page.goto(signupUrlWithToken);
|
||||||
|
|
||||||
|
const usernameField = page.locator('input[name="username"]');
|
||||||
|
const emailField = page.locator('input[name="email"]');
|
||||||
|
|
||||||
|
expect(await usernameField.inputValue()).toBe(userToCreate.username);
|
||||||
|
expect(await emailField.inputValue()).toBe(userToCreate.email);
|
||||||
|
|
||||||
|
// Cleanup specific to this test
|
||||||
|
// Clean up the user and token
|
||||||
|
await prisma.user.deleteMany({ where: { email: userToCreate.email } });
|
||||||
|
await prisma.verificationToken.deleteMany({ where: { identifier: createdtoken.identifier } });
|
||||||
|
await prisma.team.deleteMany({ where: { id: createdtoken.teamId! } });
|
||||||
|
});
|
||||||
|
test("Email verification sent if enabled", async ({ page, prisma, emails, users, features }) => {
|
||||||
|
const EmailVerifyFlag = features.get("email-verification")?.enabled;
|
||||||
|
|
||||||
|
// eslint-disable-next-line playwright/no-skipped-test
|
||||||
|
test.skip(!EmailVerifyFlag || !IS_MAILHOG_ENABLED, "Skipping check - Email verify disabled");
|
||||||
|
// Ensure email verification before testing (TODO: this could break other tests but we can fix that later)
|
||||||
|
await prisma.feature.update({
|
||||||
|
where: { slug: "email-verification" },
|
||||||
|
data: { enabled: true },
|
||||||
|
});
|
||||||
|
const userToCreate = users.buildForSignup({
|
||||||
|
username: "email-verify",
|
||||||
|
password: "Password99!",
|
||||||
|
});
|
||||||
|
|
||||||
|
await page.goto("/signup");
|
||||||
|
|
||||||
|
// Fill form
|
||||||
|
await page.locator('input[name="username"]').fill(userToCreate.username);
|
||||||
|
await page.locator('input[name="email"]').fill(userToCreate.email);
|
||||||
|
await page.locator('input[name="password"]').fill(userToCreate.password);
|
||||||
|
|
||||||
|
await page.click('button[type="submit"]');
|
||||||
|
|
||||||
|
await page.waitForURL((url) => url.pathname.includes("/auth/verify-email"));
|
||||||
|
// Find the newly created user and add it to the fixture store
|
||||||
|
const newUser = await users.set(userToCreate.email);
|
||||||
|
expect(newUser).not.toBeNull();
|
||||||
|
|
||||||
|
const receivedEmails = await getEmailsReceivedByUser({
|
||||||
|
emails,
|
||||||
|
userEmail: userToCreate.email,
|
||||||
|
});
|
||||||
|
|
||||||
|
// We need to wait for emails to be sent
|
||||||
|
// eslint-disable-next-line playwright/no-wait-for-timeout
|
||||||
|
await page.waitForTimeout(5000);
|
||||||
|
|
||||||
|
expect(receivedEmails?.total).toBe(1);
|
||||||
|
|
||||||
|
const verifyEmail = receivedEmails?.items[0];
|
||||||
|
expect(verifyEmail?.subject).toBe(`${APP_NAME}: Verify your account`);
|
||||||
|
});
|
||||||
|
});
|
||||||
@@ -3,19 +3,18 @@ import { expect } from "@playwright/test";
|
|||||||
import { WEBAPP_URL } from "@calcom/lib/constants";
|
import { WEBAPP_URL } from "@calcom/lib/constants";
|
||||||
|
|
||||||
import { test } from "../lib/fixtures";
|
import { test } from "../lib/fixtures";
|
||||||
import { localize } from "../lib/testUtils";
|
import { localize, getInviteLink } from "../lib/testUtils";
|
||||||
import { expectInvitationEmailToBeReceived } from "./expects";
|
import { expectInvitationEmailToBeReceived } from "./expects";
|
||||||
|
|
||||||
test.describe.configure({ mode: "parallel" });
|
test.describe.configure({ mode: "parallel" });
|
||||||
|
|
||||||
test.afterEach(async ({ users, emails, clipboard }) => {
|
test.afterEach(async ({ users, emails }) => {
|
||||||
clipboard.reset();
|
|
||||||
await users.deleteAll();
|
await users.deleteAll();
|
||||||
emails?.deleteAll();
|
emails?.deleteAll();
|
||||||
});
|
});
|
||||||
|
|
||||||
test.describe("Team", () => {
|
test.describe("Team", () => {
|
||||||
test("Invitation (non verified)", async ({ browser, page, users, emails, clipboard }) => {
|
test("Invitation (non verified)", async ({ browser, page, users, emails }) => {
|
||||||
const t = await localize("en");
|
const t = await localize("en");
|
||||||
const teamOwner = await users.create(undefined, { hasTeam: true });
|
const teamOwner = await users.create(undefined, { hasTeam: true });
|
||||||
const { team } = await teamOwner.getFirstTeam();
|
const { team } = await teamOwner.getFirstTeam();
|
||||||
@@ -76,8 +75,7 @@ test.describe("Team", () => {
|
|||||||
});
|
});
|
||||||
await page.locator(`button:text("${t("add")}")`).click();
|
await page.locator(`button:text("${t("add")}")`).click();
|
||||||
await page.locator(`[data-testid="copy-invite-link-button"]`).click();
|
await page.locator(`[data-testid="copy-invite-link-button"]`).click();
|
||||||
const inviteLink = await clipboard.get();
|
const inviteLink = await getInviteLink(page);
|
||||||
await page.waitForLoadState("networkidle");
|
|
||||||
|
|
||||||
const context = await browser.newContext();
|
const context = await browser.newContext();
|
||||||
const inviteLinkPage = await context.newPage();
|
const inviteLinkPage = await context.newPage();
|
||||||
|
|||||||
@@ -168,7 +168,7 @@ test.describe("Teams - NonOrg", () => {
|
|||||||
await expect(page.locator("[data-testid=alert]")).toBeVisible();
|
await expect(page.locator("[data-testid=alert]")).toBeVisible();
|
||||||
|
|
||||||
// cleanup
|
// cleanup
|
||||||
const org = await owner.getOrg();
|
const org = await owner.getOrgMembership();
|
||||||
await prisma.team.delete({ where: { id: org.teamId } });
|
await prisma.team.delete({ where: { id: org.teamId } });
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -45,7 +45,7 @@ test.describe("Unpublished", () => {
|
|||||||
|
|
||||||
test("Organization profile", async ({ users, page }) => {
|
test("Organization profile", async ({ users, page }) => {
|
||||||
const owner = await users.create(undefined, { hasTeam: true, isUnpublished: true, isOrg: true });
|
const owner = await users.create(undefined, { hasTeam: true, isUnpublished: true, isOrg: true });
|
||||||
const { team: org } = await owner.getOrg();
|
const { team: org } = await owner.getOrgMembership();
|
||||||
const { requestedSlug } = org.metadata as { requestedSlug: string };
|
const { requestedSlug } = org.metadata as { requestedSlug: string };
|
||||||
await page.goto(`/org/${requestedSlug}`);
|
await page.goto(`/org/${requestedSlug}`);
|
||||||
await page.waitForLoadState("networkidle");
|
await page.waitForLoadState("networkidle");
|
||||||
@@ -62,7 +62,7 @@ test.describe("Unpublished", () => {
|
|||||||
isOrg: true,
|
isOrg: true,
|
||||||
hasSubteam: true,
|
hasSubteam: true,
|
||||||
});
|
});
|
||||||
const { team: org } = await owner.getOrg();
|
const { team: org } = await owner.getOrgMembership();
|
||||||
const { requestedSlug } = org.metadata as { requestedSlug: string };
|
const { requestedSlug } = org.metadata as { requestedSlug: string };
|
||||||
const [{ slug: subteamSlug }] = org.children as { slug: string }[];
|
const [{ slug: subteamSlug }] = org.children as { slug: string }[];
|
||||||
await page.goto(`/org/${requestedSlug}/team/${subteamSlug}`);
|
await page.goto(`/org/${requestedSlug}/team/${subteamSlug}`);
|
||||||
@@ -80,7 +80,7 @@ test.describe("Unpublished", () => {
|
|||||||
isOrg: true,
|
isOrg: true,
|
||||||
hasSubteam: true,
|
hasSubteam: true,
|
||||||
});
|
});
|
||||||
const { team: org } = await owner.getOrg();
|
const { team: org } = await owner.getOrgMembership();
|
||||||
const { requestedSlug } = org.metadata as { requestedSlug: string };
|
const { requestedSlug } = org.metadata as { requestedSlug: string };
|
||||||
const [{ slug: subteamSlug, id: subteamId }] = org.children as { slug: string; id: number }[];
|
const [{ slug: subteamSlug, id: subteamId }] = org.children as { slug: string; id: number }[];
|
||||||
const { slug: subteamEventSlug } = await owner.getFirstTeamEvent(subteamId);
|
const { slug: subteamEventSlug } = await owner.getFirstTeamEvent(subteamId);
|
||||||
@@ -95,7 +95,7 @@ test.describe("Unpublished", () => {
|
|||||||
|
|
||||||
test("Organization user", async ({ users, page }) => {
|
test("Organization user", async ({ users, page }) => {
|
||||||
const owner = await users.create(undefined, { hasTeam: true, isUnpublished: true, isOrg: true });
|
const owner = await users.create(undefined, { hasTeam: true, isUnpublished: true, isOrg: true });
|
||||||
const { team: org } = await owner.getOrg();
|
const { team: org } = await owner.getOrgMembership();
|
||||||
const { requestedSlug } = org.metadata as { requestedSlug: string };
|
const { requestedSlug } = org.metadata as { requestedSlug: string };
|
||||||
await page.goto(`/org/${requestedSlug}/${owner.username}`);
|
await page.goto(`/org/${requestedSlug}/${owner.username}`);
|
||||||
await page.waitForLoadState("networkidle");
|
await page.waitForLoadState("networkidle");
|
||||||
@@ -107,7 +107,7 @@ test.describe("Unpublished", () => {
|
|||||||
|
|
||||||
test("Organization user event-type", async ({ users, page }) => {
|
test("Organization user event-type", async ({ users, page }) => {
|
||||||
const owner = await users.create(undefined, { hasTeam: true, isUnpublished: true, isOrg: true });
|
const owner = await users.create(undefined, { hasTeam: true, isUnpublished: true, isOrg: true });
|
||||||
const { team: org } = await owner.getOrg();
|
const { team: org } = await owner.getOrgMembership();
|
||||||
const { requestedSlug } = org.metadata as { requestedSlug: string };
|
const { requestedSlug } = org.metadata as { requestedSlug: string };
|
||||||
const [{ slug: ownerEventType }] = owner.eventTypes;
|
const [{ slug: ownerEventType }] = owner.eventTypes;
|
||||||
await page.goto(`/org/${requestedSlug}/${owner.username}/${ownerEventType}`);
|
await page.goto(`/org/${requestedSlug}/${owner.username}/${ownerEventType}`);
|
||||||
|
|||||||
@@ -0,0 +1,3 @@
|
|||||||
|
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M8.31877 15.36C4.26002 15.36 0.95752 12.0588 0.95752 8.00001C0.95752 3.94126 4.26002 0.640015 8.31877 0.640015C10.1575 0.640015 11.9175 1.32126 13.2763 2.55876L13.5238 2.78501L11.0963 5.21251L10.8713 5.02001C10.1588 4.41001 9.25252 4.07376 8.31877 4.07376C6.15377 4.07376 4.39127 5.83501 4.39127 8.00001C4.39127 10.165 6.15377 11.9263 8.31877 11.9263C9.88002 11.9263 11.1138 11.1288 11.695 9.77001H7.99877V6.45626L15.215 6.46626L15.2688 6.72001C15.645 8.50626 15.3438 11.1338 13.8188 13.0138C12.5563 14.57 10.7063 15.36 8.31877 15.36Z" fill="currentColor"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 670 B |
@@ -0,0 +1,189 @@
|
|||||||
|
<svg width="683" height="521" viewBox="0 0 683 521" fill="none" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||||
|
<g clip-path="url(#clip0_9963_6185)">
|
||||||
|
<g clip-path="url(#clip1_9963_6185)">
|
||||||
|
<rect y="1.61523" width="965" height="580" rx="8.6867" fill="white"/>
|
||||||
|
<rect width="274.93" height="519.295" transform="translate(0.723892 1.61523)" fill="white"/>
|
||||||
|
<circle cx="35.4707" cy="36.362" r="8.6867" fill="url(#pattern0)"/>
|
||||||
|
<circle cx="35.4707" cy="36.362" r="8.6867" fill="url(#pattern1)"/>
|
||||||
|
<rect x="26.422" y="27.3133" width="18.0973" height="18.0973" rx="9.04865" stroke="white" stroke-width="0.723892"/>
|
||||||
|
<path d="M51.8611 40.3618H50.2323L53.1978 31.9384H55.0816L58.0512 40.3618H56.4224L54.1726 33.6658H54.1068L51.8611 40.3618ZM51.9145 37.0591H56.3566V38.2847H51.9145V37.0591ZM60.5838 31.9384V40.3618H59.0948V31.9384H60.5838ZM64.9117 40.4852C64.2783 40.4852 63.7312 40.3536 63.2706 40.0904C62.8127 39.8244 62.4603 39.4487 62.2135 38.9634C61.9668 38.4753 61.8434 37.9009 61.8434 37.24C61.8434 36.5902 61.9668 36.0198 62.2135 35.529C62.4631 35.0355 62.8113 34.6516 63.2583 34.3774C63.7052 34.1004 64.2303 33.962 64.8335 33.962C65.2229 33.962 65.5903 34.025 65.9358 34.1512C66.2841 34.2745 66.5912 34.4665 66.8571 34.727C67.1259 34.9875 67.337 35.3193 67.4905 35.7223C67.6441 36.1227 67.7209 36.5998 67.7209 37.1537V37.6102H62.5426V36.6066H66.2937C66.2909 36.3215 66.2292 36.0678 66.1086 35.8457C65.9879 35.6209 65.8193 35.444 65.6027 35.3151C65.3888 35.1863 65.1393 35.1218 64.8541 35.1218C64.5497 35.1218 64.2824 35.1959 64.0521 35.3439C63.8217 35.4893 63.6421 35.6812 63.5133 35.9198C63.3871 36.1556 63.3227 36.4147 63.3199 36.6971V37.5732C63.3199 37.9406 63.3871 38.2559 63.5215 38.5192C63.6558 38.7797 63.8437 38.9798 64.085 39.1197C64.3263 39.2568 64.6087 39.3253 64.9322 39.3253C65.1489 39.3253 65.3449 39.2952 65.5204 39.2348C65.6959 39.1718 65.8481 39.0799 65.977 38.9593C66.1058 38.8386 66.2032 38.6892 66.269 38.511L67.6592 38.6673C67.5714 39.0347 67.4042 39.3555 67.1574 39.6297C66.9134 39.9012 66.6008 40.1123 66.2196 40.2631C65.8385 40.4112 65.4025 40.4852 64.9117 40.4852ZM70.0622 34.0442L71.3373 36.3763L72.6329 34.0442H74.2081L72.3038 37.203L74.241 40.3618H72.674L71.3373 38.0873L70.0129 40.3618H68.4335L70.3584 37.203L68.4828 34.0442H70.0622ZM78.2985 40.3618V31.9384H83.6948V33.2175H79.8245V35.5043H83.3246V36.7835H79.8245V40.3618H78.2985ZM85.0192 40.3618V34.0442H86.5081V40.3618H85.0192ZM85.7678 33.1476C85.532 33.1476 85.3291 33.0694 85.1591 32.9131C84.989 32.7541 84.904 32.5635 84.904 32.3414C84.904 32.1166 84.989 31.926 85.1591 31.7697C85.3291 31.6107 85.532 31.5312 85.7678 31.5312C86.0063 31.5312 86.2092 31.6107 86.3765 31.7697C86.5465 31.926 86.6315 32.1166 86.6315 32.3414C86.6315 32.5635 86.5465 32.7541 86.3765 32.9131C86.2092 33.0694 86.0063 33.1476 85.7678 33.1476ZM93.0324 35.7141L91.6751 35.8622C91.6367 35.7251 91.5695 35.5962 91.4736 35.4755C91.3803 35.3549 91.2542 35.2576 91.0952 35.1835C90.9361 35.1095 90.7414 35.0725 90.5111 35.0725C90.2013 35.0725 89.9408 35.1397 89.7296 35.274C89.5213 35.4084 89.4184 35.5825 89.4212 35.7964C89.4184 35.9801 89.4856 36.1295 89.6227 36.2447C89.7626 36.3598 89.9929 36.4544 90.3137 36.5285L91.3913 36.7588C91.9891 36.8877 92.4333 37.092 92.7239 37.3717C93.0173 37.6513 93.1654 38.0174 93.1681 38.4698C93.1654 38.8674 93.0489 39.2184 92.8185 39.5228C92.5909 39.8244 92.2742 40.0602 91.8684 40.2302C91.4626 40.4002 90.9965 40.4852 90.47 40.4852C89.6967 40.4852 89.0743 40.3234 88.6027 39.9999C88.1311 39.6736 87.85 39.2198 87.7595 38.6385L89.2114 38.4986C89.2772 38.7838 89.4171 38.999 89.6309 39.1444C89.8448 39.2897 90.1231 39.3624 90.4659 39.3624C90.8196 39.3624 91.1034 39.2897 91.3173 39.1444C91.5339 38.999 91.6422 38.8194 91.6422 38.6056C91.6422 38.4246 91.5723 38.2751 91.4324 38.1572C91.2953 38.0393 91.0815 37.9488 90.7908 37.8858L89.7132 37.6596C89.1072 37.5334 88.6589 37.3209 88.3682 37.022C88.0776 36.7204 87.9336 36.3393 87.9364 35.8786C87.9336 35.4893 88.0392 35.152 88.2531 34.8668C88.4697 34.5789 88.7699 34.3568 89.1538 34.2005C89.5404 34.0415 89.986 33.962 90.4906 33.962C91.2309 33.962 91.8136 34.1196 92.2386 34.435C92.6663 34.7503 92.9309 35.1767 93.0324 35.7141ZM95.8848 36.6601V40.3618H94.3959V31.9384H95.8519V35.1177H95.9259C96.074 34.7613 96.3029 34.4802 96.6128 34.2745C96.9254 34.0662 97.323 33.962 97.8056 33.962C98.2443 33.962 98.6268 34.0538 98.9531 34.2375C99.2794 34.4212 99.5317 34.69 99.7099 35.0437C99.8909 35.3974 99.9814 35.8293 99.9814 36.3393V40.3618H98.4924V36.5696C98.4924 36.1446 98.3828 35.8142 98.1634 35.5784C97.9468 35.3398 97.6424 35.2205 97.2503 35.2205C96.9871 35.2205 96.7513 35.2781 96.5429 35.3933C96.3372 35.5057 96.1754 35.6689 96.0575 35.8827C95.9424 36.0966 95.8848 36.3557 95.8848 36.6601ZM104.296 40.4852C103.663 40.4852 103.115 40.3536 102.655 40.0904C102.197 39.8244 101.845 39.4487 101.598 38.9634C101.351 38.4753 101.228 37.9009 101.228 37.24C101.228 36.5902 101.351 36.0198 101.598 35.529C101.847 35.0355 102.196 34.6516 102.642 34.3774C103.089 34.1004 103.615 33.962 104.218 33.962C104.607 33.962 104.975 34.025 105.32 34.1512C105.668 34.2745 105.975 34.4665 106.241 34.727C106.51 34.9875 106.721 35.3193 106.875 35.7223C107.028 36.1227 107.105 36.5998 107.105 37.1537V37.6102H101.927V36.6066H105.678C105.675 36.3215 105.613 36.0678 105.493 35.8457C105.372 35.6209 105.204 35.444 104.987 35.3151C104.773 35.1863 104.523 35.1218 104.238 35.1218C103.934 35.1218 103.667 35.1959 103.436 35.3439C103.206 35.4893 103.026 35.6812 102.897 35.9198C102.771 36.1556 102.707 36.4147 102.704 36.6971V37.5732C102.704 37.9406 102.771 38.2559 102.906 38.5192C103.04 38.7797 103.228 Line truncated
|
||||||
|
<path d="M27.6527 57.574H31.996C33.3627 57.574 34.5094 57.8346 35.4359 58.3558C36.3741 58.877 37.0748 59.5951 37.5381 60.5101C38.0014 61.4251 38.2331 62.4791 38.2331 63.672C38.2331 64.8534 38.0014 65.9016 37.5381 66.8166C37.0748 67.7316 36.3741 68.4497 35.4359 68.9709C34.5094 69.4805 33.3627 69.7354 31.996 69.7354H27.6527V57.574ZM31.7007 67.5463C33.0674 67.5463 34.075 67.1988 34.7236 66.5039C35.3838 65.7974 35.7139 64.8534 35.7139 63.672C35.7139 62.4906 35.3838 61.5467 34.7236 60.8402C34.075 60.1221 33.0674 59.763 31.7007 59.763H30.0849V67.5463H31.7007ZM43.6853 69.9612C42.7703 69.9612 41.9596 69.7527 41.253 69.3358C40.5465 68.9072 39.9964 68.3339 39.6026 67.6158C39.2088 66.8977 39.0119 66.1043 39.0119 65.2356C39.0119 64.3786 39.2146 63.5852 39.6199 62.8555C40.0253 62.1258 40.5813 61.5467 41.2878 61.1181C42.0059 60.6896 42.8051 60.4753 43.6853 60.4753C44.5656 60.4753 45.3532 60.6896 46.0481 61.1181C46.7546 61.5467 47.299 62.1258 47.6812 62.8555C48.075 63.5736 48.2719 64.367 48.2719 65.2356C48.2719 65.5252 48.2487 65.8032 48.2024 66.0696H41.4442C41.5831 66.6139 41.8437 67.0541 42.226 67.3899C42.6198 67.7142 43.1062 67.8764 43.6853 67.8764C44.1718 67.8764 44.6061 67.7664 44.9883 67.5463C45.3705 67.3147 45.6717 67.0193 45.8917 66.6603L47.7159 68.0328C47.3453 68.6119 46.8009 69.081 46.0828 69.44C45.3647 69.7875 44.5656 69.9612 43.6853 69.9612ZM45.9091 64.3149C45.7701 63.7936 45.4979 63.3593 45.0926 63.0118C44.6872 62.6644 44.2065 62.4906 43.6506 62.4906C43.1062 62.4906 42.6313 62.6586 42.226 62.9945C41.8322 63.3304 41.5716 63.7705 41.4442 64.3149H45.9091ZM52.3132 69.9612C50.796 69.9612 49.5451 69.4342 48.5606 68.3802L50.1416 66.9382C50.8018 67.6795 51.5083 68.0501 52.2611 68.0501C52.6549 68.0501 52.9619 67.9633 53.1819 67.7895C53.402 67.6158 53.512 67.3899 53.512 67.112C53.512 66.8572 53.402 66.6603 53.1819 66.5213C52.9734 66.3707 52.5333 66.2143 51.8615 66.0522C50.7612 65.7858 50.02 65.421 49.6377 64.9577C49.2671 64.4944 49.0818 63.9211 49.0818 63.2377C49.0818 62.4269 49.3829 61.7668 49.9852 61.2571C50.5875 60.7359 51.4098 60.4753 52.4522 60.4753C53.2051 60.4753 53.8363 60.5912 54.3459 60.8228C54.8671 61.0544 55.3536 61.4598 55.8053 62.0389L54.1027 63.3419C53.6973 62.6933 53.1645 62.369 52.5044 62.369C52.1685 62.369 51.8963 62.4385 51.6878 62.5775C51.4793 62.7049 51.3751 62.9018 51.3751 63.1682C51.3751 63.3535 51.4504 63.5157 51.6009 63.6547C51.7631 63.7821 52.0932 63.9095 52.5912 64.0369C53.8305 64.3612 54.676 64.7608 55.1277 65.2356C55.591 65.7105 55.8227 66.3128 55.8227 67.0425C55.8227 67.5868 55.6663 68.0849 55.3536 68.5366C55.0525 68.9767 54.6355 69.3242 54.1027 69.579C53.5699 69.8338 52.9734 69.9612 52.3132 69.9612ZM56.9105 60.7012H59.256V69.7354H56.9105V60.7012ZM56.6673 58.5643C56.6673 58.182 56.8005 57.8577 57.0669 57.5913C57.3449 57.325 57.6808 57.1918 58.0746 57.1918C58.4799 57.1918 58.8158 57.325 59.0822 57.5913C59.3486 57.8577 59.4818 58.182 59.4818 58.5643C59.4818 58.9581 59.3486 59.2881 59.0822 59.5545C58.8158 59.8209 58.4799 59.9541 58.0746 59.9541C57.6808 59.9541 57.3449 59.8209 57.0669 59.5545C56.8005 59.2766 56.6673 58.9465 56.6673 58.5643ZM65.2123 73.4359C64.2626 73.4359 63.4344 73.3027 62.7279 73.0363C62.0214 72.7815 61.4075 72.3472 60.8863 71.7333L62.3457 70.0133C62.7511 70.4766 63.1796 70.8009 63.6313 70.9862C64.0946 71.1716 64.6274 71.2642 65.2297 71.2642C65.6467 71.2642 66.0347 71.1542 66.3937 70.9341C66.7528 70.7256 67.0365 70.4303 67.245 70.0481C67.4651 69.6774 67.5751 69.2605 67.5751 68.7972V68.3976C67.3087 68.8493 66.9612 69.1968 66.5327 69.44C66.1042 69.6716 65.5424 69.7875 64.8475 69.7875C64.0367 69.7875 63.2955 69.5848 62.6237 69.1794C61.9519 68.7624 61.4249 68.2007 61.0427 67.4942C60.6605 66.7761 60.4694 65.9885 60.4694 65.1314C60.4694 64.2743 60.6605 63.4925 61.0427 62.786C61.4249 62.0679 61.9519 61.5062 62.6237 61.1008C63.2955 60.6838 64.0367 60.4753 64.8475 60.4753C65.5656 60.4753 66.1389 60.6027 66.5674 60.8575C67.0076 61.1008 67.355 61.4598 67.6098 61.9347V60.7012H69.9205V68.9362C69.9205 69.8512 69.7178 70.6446 69.3124 71.3163C68.9186 71.9997 68.3627 72.5209 67.6446 72.8799C66.9381 73.2506 66.1273 73.4359 65.2123 73.4359ZM62.8148 65.1314C62.8148 65.8495 63.0291 66.4518 63.4576 66.9382C63.8977 67.4131 64.4884 67.6505 65.2297 67.6505C65.9825 67.6505 66.579 67.4131 67.0191 66.9382C67.4593 66.4634 67.6793 65.8611 67.6793 65.1314C67.6793 64.4017 67.4593 63.7994 67.0191 63.3246C66.579 62.8497 65.9825 62.6123 65.2297 62.6123C64.4884 62.6123 63.8977 62.8497 63.4576 63.3246C63.0291 63.7994 62.8148 64.4017 62.8148 65.1314ZM71.4757 60.7012H73.7864V62.0216C74.2612 61.0023 75.182 60.4927 76.5487 60.4927C77.1973 60.4927 77.7822 60.6491 78.3034 60.9618C78.8246 61.2629 79.2358 61.6973 79.537 62.2648C79.8381 62.8207 79.9887 63.4693 79.9887 64.2106V69.7354H77.6433V64.7839C77.6433 64.0311 77.4695 63.4693 77.1221 63.0987C76.7746 62.7281 76.2997 62.5428 75.6974 62.5428C75.1646 62.5428 74.7187 62.7339 74.3597 63.1161C74.0006 63.4867 73.8211 64.0427 73.8211 64.7839V69.7354H71.4757V60.7012ZM83.476Line truncated
|
||||||
|
<g clip-path="url(#clip2_9963_6185)">
|
||||||
|
<path d="M32.5751 98.2783V96.3479M32.5751 94.4175H32.5799M37.4011 96.3479C37.4011 99.0132 35.2404 101.174 32.5751 101.174C29.9098 101.174 27.7492 99.0132 27.7492 96.3479C27.7492 93.6826 29.9098 91.522 32.5751 91.522C35.2404 91.522 37.4011 93.6826 37.4011 96.3479Z" stroke="#6B7280" stroke-width="1.08584" stroke-linecap="round" stroke-linejoin="round"/>
|
||||||
|
</g>
|
||||||
|
<path d="M45.5897 98.1089H44.4093L47.0617 90.7384H48.3465L50.9989 98.1089H49.8184L47.7347 92.0771H47.6771L45.5897 98.1089ZM45.7877 95.2226H49.6169V96.1583H45.7877V95.2226ZM55.735 90.7384V98.1089H54.659V90.7384H55.735ZM59.5112 98.2205C58.9929 98.2205 58.5407 98.1017 58.1544 97.8642C57.7681 97.6266 57.4682 97.2943 57.2547 96.8673C57.0411 96.4402 56.9344 95.9412 56.9344 95.3701C56.9344 94.7967 57.0411 94.2953 57.2547 93.8658C57.4682 93.4363 57.7681 93.1028 58.1544 92.8653C58.5407 92.6278 58.9929 92.509 59.5112 92.509C60.0294 92.509 60.4817 92.6278 60.8679 92.8653C61.2542 93.1028 61.5541 93.4363 61.7677 93.8658C61.9812 94.2953 62.088 94.7967 62.088 95.3701C62.088 95.9412 61.9812 96.4402 61.7677 96.8673C61.5541 97.2943 61.2542 97.6266 60.8679 97.8642C60.4817 98.1017 60.0294 98.2205 59.5112 98.2205ZM59.5148 97.3171C59.8507 97.3171 60.129 97.2284 60.3497 97.0508C60.5704 96.8733 60.7336 96.6369 60.8392 96.3418C60.9471 96.0467 61.0011 95.7216 61.0011 95.3665C61.0011 95.0138 60.9471 94.6899 60.8392 94.3948C60.7336 94.0973 60.5704 93.8586 60.3497 93.6786C60.129 93.4987 59.8507 93.4087 59.5148 93.4087C59.1765 93.4087 58.8958 93.4987 58.6726 93.6786C58.4519 93.8586 58.2875 94.0973 58.1796 94.3948C58.074 94.6899 58.0212 95.0138 58.0212 95.3665C58.0212 95.7216 58.074 96.0467 58.1796 96.3418C58.2875 96.6369 58.4519 96.8733 58.6726 97.0508C58.8958 97.2284 59.1765 97.3171 59.5148 97.3171ZM64.3652 94.8267V98.1089H63.2891V92.581H64.322V93.4807H64.3904C64.5175 93.188 64.7167 92.9529 64.9878 92.7753C65.2613 92.5978 65.6056 92.509 66.0207 92.509C66.3973 92.509 66.7272 92.5882 67.0104 92.7465C67.2935 92.9025 67.513 93.1352 67.669 93.4447C67.8249 93.7542 67.9029 94.1369 67.9029 94.5928V98.1089H66.8268V94.7223C66.8268 94.3217 66.7224 94.0085 66.5137 93.783C66.305 93.5551 66.0183 93.4411 65.6536 93.4411C65.4041 93.4411 65.1821 93.4951 64.9878 93.6031C64.7958 93.711 64.6435 93.8694 64.5307 94.0781C64.4204 94.2845 64.3652 94.534 64.3652 94.8267ZM71.6637 100.297C71.2247 100.297 70.8468 100.239 70.5301 100.124C70.2158 100.009 69.959 99.8567 69.7599 99.6672C69.5608 99.4777 69.412 99.2701 69.3136 99.0446L70.2386 98.6631C70.3033 98.7687 70.3897 98.8802 70.4977 98.9978C70.608 99.1178 70.7568 99.2197 70.9439 99.3037C71.1335 99.3877 71.377 99.4297 71.6745 99.4297C72.0824 99.4297 72.4195 99.3301 72.6858 99.131C72.9521 98.9342 73.0853 98.6199 73.0853 98.1881V97.1012H73.0169C72.9521 97.2188 72.8586 97.3495 72.7362 97.4935C72.6162 97.6374 72.4507 97.7622 72.2395 97.8678C72.0284 97.9733 71.7537 98.0261 71.4154 98.0261C70.9787 98.0261 70.5853 97.9241 70.235 97.7202C69.8871 97.5139 69.6112 97.2104 69.4072 96.8097C69.2057 96.4066 69.1049 95.9112 69.1049 95.3233C69.1049 94.7355 69.2045 94.2317 69.4036 93.8118C69.6052 93.3919 69.8811 93.0704 70.2314 92.8473C70.5817 92.6218 70.9787 92.509 71.4226 92.509C71.7657 92.509 72.0428 92.5666 72.2539 92.6818C72.4651 92.7945 72.6294 92.9265 72.747 93.0776C72.867 93.2288 72.9593 93.3619 73.0241 93.4771H73.1033V92.581H74.1578V98.2312C74.1578 98.7063 74.0474 99.0962 73.8267 99.4009C73.6059 99.7056 73.3072 99.9311 72.9305 100.077C72.5562 100.224 72.134 100.297 71.6637 100.297ZM71.6529 97.1336C71.9624 97.1336 72.2239 97.0616 72.4375 96.9177C72.6534 96.7713 72.8166 96.5626 72.9269 96.2914C73.0397 96.0179 73.0961 95.6904 73.0961 95.3089C73.0961 94.9371 73.0409 94.6096 72.9305 94.3265C72.8202 94.0433 72.6582 93.8226 72.4447 93.6643C72.2311 93.5035 71.9672 93.4231 71.6529 93.4231C71.329 93.4231 71.0591 93.5071 70.8432 93.6751C70.6272 93.8406 70.4641 94.0661 70.3537 94.3516C70.2458 94.6372 70.1918 94.9563 70.1918 95.3089C70.1918 95.6712 70.247 95.9891 70.3573 96.2627C70.4677 96.5362 70.6308 96.7497 70.8468 96.9033C71.0651 97.0568 71.3338 97.1336 71.6529 97.1336ZM77.9834 98.2205C77.4387 98.2205 76.9697 98.1041 76.5762 97.8714C76.1851 97.6362 75.8828 97.3063 75.6693 96.8817C75.4582 96.4546 75.3526 95.9543 75.3526 95.3809C75.3526 94.8147 75.4582 94.3157 75.6693 93.8838C75.8828 93.4519 76.1803 93.1148 76.5618 92.8725C76.9457 92.6302 77.3944 92.509 77.9078 92.509C78.2197 92.509 78.522 92.5606 78.8147 92.6638C79.1074 92.7669 79.3702 92.9289 79.6029 93.1496C79.8356 93.3703 80.0192 93.6571 80.1535 94.0097C80.2879 94.36 80.355 94.7859 80.355 95.2874V95.6688H75.9608V94.8627H79.3006C79.3006 94.5796 79.243 94.3288 79.1278 94.1105C79.0127 93.8898 78.8507 93.7158 78.642 93.5887C78.4356 93.4615 78.1933 93.3979 77.915 93.3979C77.6127 93.3979 77.3488 93.4723 77.1232 93.6211C76.9001 93.7674 76.7274 93.9594 76.605 94.1969C76.485 94.432 76.4251 94.6875 76.4251 94.9635V95.5933C76.4251 95.9627 76.4898 96.2771 76.6194 96.5362C76.7514 96.7953 76.9349 96.9932 77.17 97.13C77.4052 97.2643 77.6799 97.3315 77.9942 97.3315C78.1981 97.3315 78.3841 97.3027 78.552 97.2452C78.72 97.1852 78.8651 97.0964 78.9875 96.9788C79.1098 96.8613 79.2034 96.7161 79.2682 96.5434L80.2867 96.7269C80.2051 97.0268 80.0587 97.2895 79.8476 97.5151C79.6389 97.7382 79.3761 97.9121 79.0594 98.0369C78.7451 98.1593 78.3865 98.2205 77.9834 98.2205ZM81.549 98.1089V92.581H82.5891V93.Line truncated
|
||||||
|
<path d="M32.5751 119.721V122.617L34.5054 123.582M37.401 122.617C37.401 125.282 35.2404 127.443 32.5751 127.443C29.9098 127.443 27.7491 125.282 27.7491 122.617C27.7491 119.952 29.9098 117.791 32.5751 117.791C35.2404 117.791 37.401 119.952 37.401 122.617Z" stroke="#6B7280" stroke-width="1.08584" stroke-linecap="round" stroke-linejoin="round"/>
|
||||||
|
<path d="M47.4324 125.717C46.9381 125.717 46.4967 125.632 46.108 125.462C45.7217 125.292 45.4158 125.055 45.1903 124.753C44.9671 124.448 44.8472 124.096 44.8304 123.695H45.9604C45.9748 123.913 46.048 124.103 46.18 124.264C46.3143 124.422 46.4895 124.544 46.7054 124.631C46.9213 124.717 47.1613 124.76 47.4252 124.76C47.7155 124.76 47.9722 124.71 48.1953 124.609C48.4209 124.508 48.5972 124.368 48.7244 124.188C48.8515 124.006 48.9151 123.796 48.9151 123.558C48.9151 123.311 48.8515 123.094 48.7244 122.907C48.5996 122.717 48.4161 122.568 48.1738 122.46C47.9338 122.353 47.6435 122.299 47.3028 122.299H46.6802V121.392H47.3028C47.5763 121.392 47.8163 121.342 48.0226 121.244C48.2313 121.146 48.3945 121.009 48.512 120.834C48.6296 120.656 48.6884 120.449 48.6884 120.211C48.6884 119.983 48.6368 119.785 48.5336 119.617C48.4329 119.447 48.2889 119.314 48.1018 119.218C47.917 119.122 47.6987 119.074 47.4468 119.074C47.2068 119.074 46.9825 119.118 46.7738 119.207C46.5674 119.293 46.3995 119.418 46.2699 119.581C46.1404 119.742 46.0708 119.935 46.0612 120.161H44.9851C44.9971 119.763 45.1147 119.412 45.3378 119.11C45.5634 118.808 45.8609 118.571 46.2303 118.401C46.5998 118.231 47.0101 118.145 47.4612 118.145C47.9338 118.145 48.3417 118.238 48.6848 118.423C49.0303 118.605 49.2966 118.848 49.4837 119.153C49.6733 119.458 49.7669 119.791 49.7645 120.154C49.7669 120.566 49.6517 120.917 49.419 121.204C49.1886 121.492 48.8815 121.686 48.4977 121.784V121.841C48.9871 121.916 49.3662 122.11 49.6349 122.424C49.906 122.739 50.0404 123.129 50.038 123.594C50.0404 124 49.9276 124.363 49.6997 124.685C49.4742 125.006 49.1658 125.259 48.7748 125.444C48.3837 125.626 47.9362 125.717 47.4324 125.717ZM53.9644 125.739C53.3957 125.737 52.9099 125.587 52.5068 125.289C52.1037 124.992 51.7954 124.559 51.5819 123.99C51.3684 123.421 51.2616 122.736 51.2616 121.935C51.2616 121.136 51.3684 120.453 51.5819 119.887C51.7978 119.321 52.1073 118.889 52.5104 118.592C52.9159 118.294 53.4005 118.145 53.9644 118.145C54.5282 118.145 55.0116 118.295 55.4147 118.595C55.8178 118.893 56.1261 119.325 56.3396 119.891C56.5556 120.455 56.6635 121.136 56.6635 121.935C56.6635 122.739 56.5568 123.425 56.3432 123.994C56.1297 124.56 55.8214 124.993 55.4183 125.293C55.0152 125.59 54.5306 125.739 53.9644 125.739ZM53.9644 124.778C54.4634 124.778 54.8533 124.535 55.134 124.048C55.4171 123.561 55.5587 122.856 55.5587 121.935C55.5587 121.323 55.4939 120.806 55.3643 120.384C55.2372 119.959 55.0536 119.638 54.8137 119.419C54.5762 119.199 54.2931 119.088 53.9644 119.088C53.4677 119.088 53.0778 119.333 52.7947 119.822C52.5116 120.312 52.3689 121.016 52.3665 121.935C52.3665 122.549 52.43 123.069 52.5572 123.493C52.6868 123.916 52.8703 124.236 53.1078 124.454C53.3454 124.67 53.6309 124.778 53.9644 124.778ZM60.6367 125.617V120.089H61.6696V120.989H61.738C61.8531 120.684 62.0415 120.446 62.303 120.276C62.5645 120.103 62.8776 120.017 63.2423 120.017C63.6118 120.017 63.9213 120.103 64.1708 120.276C64.4228 120.449 64.6087 120.686 64.7287 120.989H64.7862C64.9182 120.693 65.1281 120.458 65.416 120.283C65.704 120.106 66.0471 120.017 66.4453 120.017C66.9468 120.017 67.3558 120.174 67.6726 120.488C67.9917 120.803 68.1512 121.276 68.1512 121.91V125.617H67.0751V122.011C67.0751 121.636 66.9732 121.365 66.7692 121.197C66.5653 121.029 66.3218 120.945 66.0387 120.945C65.6884 120.945 65.416 121.053 65.2217 121.269C65.0274 121.483 64.9302 121.757 64.9302 122.093V125.617H63.8577V121.942C63.8577 121.642 63.7642 121.401 63.577 121.219C63.3899 121.037 63.1463 120.945 62.8464 120.945C62.6425 120.945 62.4542 120.999 62.2814 121.107C62.1111 121.213 61.9731 121.36 61.8675 121.55C61.7644 121.739 61.7128 121.959 61.7128 122.209V125.617H60.6367ZM69.5935 125.617V120.089H70.6695V125.617H69.5935ZM70.1369 119.236C69.9498 119.236 69.789 119.173 69.6546 119.049C69.5227 118.922 69.4567 118.77 69.4567 118.595C69.4567 118.418 69.5227 118.267 69.6546 118.142C69.789 118.015 69.9498 117.951 70.1369 117.951C70.324 117.951 70.4836 118.015 70.6155 118.142C70.7499 118.267 70.8171 118.418 70.8171 118.595C70.8171 118.77 70.7499 118.922 70.6155 119.049C70.4836 119.173 70.324 119.236 70.1369 119.236ZM73.1933 122.335V125.617H72.1172V120.089H73.1501V120.989H73.2184C73.3456 120.696 73.5447 120.461 73.8159 120.283C74.0894 120.106 74.4337 120.017 74.8487 120.017C75.2254 120.017 75.5553 120.096 75.8384 120.254C76.1216 120.41 76.3411 120.643 76.497 120.953C76.653 121.262 76.731 121.645 76.731 122.101V125.617H75.6549V122.23C75.6549 121.829 75.5505 121.516 75.3418 121.291C75.1331 121.063 74.8463 120.949 74.4817 120.949C74.2321 120.949 74.0102 121.003 73.8159 121.111C73.6239 121.219 73.4716 121.377 73.3588 121.586C73.2484 121.792 73.1933 122.042 73.1933 122.335ZM82.3164 121.438L81.3411 121.611C81.3004 121.486 81.2356 121.368 81.1468 121.255C81.0604 121.142 80.9429 121.05 80.7941 120.978C80.6454 120.906 80.4594 120.87 80.2363 120.87C79.9316 120.87 79.6773 120.938 79.4733 121.075C79.2694 121.209 79.1674 121.383 79.1674 121.597C79.1674 121.781 79.2358 12Line truncated
|
||||||
|
<g clip-path="url(#clip3_9963_6185)">
|
||||||
|
<path d="M36.9185 148.129C36.9185 151.508 32.5751 154.403 32.5751 154.403C32.5751 154.403 28.2318 151.508 28.2318 148.129C28.2318 146.978 28.6894 145.873 29.5039 145.058C30.3184 144.244 31.4232 143.786 32.5751 143.786C33.7271 143.786 34.8318 144.244 35.6463 145.058C36.4609 145.873 36.9185 146.978 36.9185 148.129Z" stroke="#6B7280" stroke-width="1.08584" stroke-linecap="round" stroke-linejoin="round"/>
|
||||||
|
<path d="M32.5751 149.577C33.3747 149.577 34.0229 148.929 34.0229 148.129C34.0229 147.33 33.3747 146.682 32.5751 146.682C31.7755 146.682 31.1273 147.33 31.1273 148.129C31.1273 148.929 31.7755 149.577 32.5751 149.577Z" stroke="#6B7280" stroke-width="1.08584" stroke-linecap="round" stroke-linejoin="round"/>
|
||||||
|
</g>
|
||||||
|
<path d="M44.7764 152.095V151.353L48.6524 145.682H44.744V144.724H50.0128V145.466L46.1368 151.137H50.0452V152.095H44.7764ZM53.6819 152.206C53.1636 152.206 52.7114 152.088 52.3251 151.85C51.9388 151.612 51.6389 151.28 51.4254 150.853C51.2118 150.426 51.105 149.927 51.105 149.356C51.105 148.783 51.2118 148.281 51.4254 147.852C51.6389 147.422 51.9388 147.089 52.3251 146.851C52.7114 146.614 53.1636 146.495 53.6819 146.495C54.2001 146.495 54.6524 146.614 55.0386 146.851C55.4249 147.089 55.7248 147.422 55.9384 147.852C56.1519 148.281 56.2587 148.783 56.2587 149.356C56.2587 149.927 56.1519 150.426 55.9384 150.853C55.7248 151.28 55.4249 151.612 55.0386 151.85C54.6524 152.088 54.2001 152.206 53.6819 152.206ZM53.6855 151.303C54.0214 151.303 54.2997 151.214 54.5204 151.037C54.7411 150.859 54.9043 150.623 55.0098 150.328C55.1178 150.033 55.1718 149.707 55.1718 149.352C55.1718 149 55.1178 148.676 55.0098 148.381C54.9043 148.083 54.7411 147.844 54.5204 147.664C54.2997 147.485 54.0214 147.395 53.6855 147.395C53.3472 147.395 53.0664 147.485 52.8433 147.664C52.6226 147.844 52.4582 148.083 52.3503 148.381C52.2447 148.676 52.1919 149 52.1919 149.352C52.1919 149.707 52.2447 150.033 52.3503 150.328C52.4582 150.623 52.6226 150.859 52.8433 151.037C53.0664 151.214 53.3472 151.303 53.6855 151.303ZM59.7883 152.206C59.27 152.206 58.8178 152.088 58.4315 151.85C58.0452 151.612 57.7453 151.28 57.5318 150.853C57.3182 150.426 57.2115 149.927 57.2115 149.356C57.2115 148.783 57.3182 148.281 57.5318 147.852C57.7453 147.422 58.0452 147.089 58.4315 146.851C58.8178 146.614 59.27 146.495 59.7883 146.495C60.3065 146.495 60.7588 146.614 61.1451 146.851C61.5313 147.089 61.8312 147.422 62.0448 147.852C62.2583 148.281 62.3651 148.783 62.3651 149.356C62.3651 149.927 62.2583 150.426 62.0448 150.853C61.8312 151.28 61.5313 151.612 61.1451 151.85C60.7588 152.088 60.3065 152.206 59.7883 152.206ZM59.7919 151.303C60.1278 151.303 60.4061 151.214 60.6268 151.037C60.8476 150.859 61.0107 150.623 61.1163 150.328C61.2242 150.033 61.2782 149.707 61.2782 149.352C61.2782 149 61.2242 148.676 61.1163 148.381C61.0107 148.083 60.8476 147.844 60.6268 147.664C60.4061 147.485 60.1278 147.395 59.7919 147.395C59.4536 147.395 59.1729 147.485 58.9497 147.664C58.729 147.844 58.5647 148.083 58.4567 148.381C58.3511 148.676 58.2983 149 58.2983 149.352C58.2983 149.707 58.3511 150.033 58.4567 150.328C58.5647 150.623 58.729 150.859 58.9497 151.037C59.1729 151.214 59.4536 151.303 59.7919 151.303ZM63.5662 152.095V146.567H64.5991V147.467H64.6675C64.7826 147.162 64.971 146.924 65.2325 146.754C65.494 146.581 65.8071 146.495 66.1718 146.495C66.5413 146.495 66.8508 146.581 67.1003 146.754C67.3522 146.927 67.5382 147.164 67.6582 147.467H67.7157C67.8477 147.171 68.0576 146.936 68.3455 146.761C68.6335 146.584 68.9765 146.495 69.3748 146.495C69.8763 146.495 70.2853 146.652 70.602 146.966C70.9212 147.281 71.0807 147.754 71.0807 148.388V152.095H70.0046V148.489C70.0046 148.114 69.9027 147.843 69.6987 147.675C69.4948 147.507 69.2513 147.423 68.9682 147.423C68.6179 147.423 68.3455 147.531 68.1512 147.747C67.9569 147.961 67.8597 148.236 67.8597 148.571V152.095H66.7872V148.42C66.7872 148.12 66.6937 147.879 66.5065 147.697C66.3194 147.515 66.0758 147.423 65.7759 147.423C65.572 147.423 65.3837 147.477 65.2109 147.585C65.0406 147.691 64.9026 147.838 64.797 148.028C64.6939 148.218 64.6423 148.437 64.6423 148.687V152.095H63.5662Z" fill="#4B5563"/>
|
||||||
|
<path d="M37.4011 175.573C37.4011 178.238 35.2404 180.398 32.5751 180.398M37.4011 175.573C37.4011 172.907 35.2404 170.747 32.5751 170.747M37.4011 175.573H27.7492M32.5751 180.398C29.9098 180.398 27.7492 178.238 27.7492 175.573M32.5751 180.398C33.7822 179.077 34.4682 177.362 34.5055 175.573C34.4682 173.783 33.7822 172.068 32.5751 170.747M32.5751 180.398C31.368 179.077 30.682 177.362 30.6447 175.573C30.682 173.783 31.368 172.068 32.5751 170.747M27.7492 175.573C27.7492 172.907 29.9098 170.747 32.5751 170.747" stroke="#4B5563" stroke-width="1.08584" stroke-linecap="round" stroke-linejoin="round"/>
|
||||||
|
<g clip-path="url(#clip4_9963_6185)">
|
||||||
|
<path d="M44.9671 178.572V171.202H49.5881V172.159H46.0792V174.405H49.347V175.358H46.0792V177.615H49.6313V178.572H44.9671ZM54.4889 176.28V173.044H55.5686V178.572H54.5105V177.615H54.4529C54.3258 177.91 54.1218 178.156 53.8411 178.353C53.5628 178.547 53.2161 178.644 52.801 178.644C52.4459 178.644 52.1316 178.566 51.8581 178.41C51.587 178.252 51.3735 178.018 51.2175 177.709C51.064 177.399 50.9872 177.016 50.9872 176.56V173.044H52.0632V176.431C52.0632 176.808 52.1676 177.108 52.3764 177.331C52.5851 177.554 52.8562 177.665 53.1897 177.665C53.3912 177.665 53.5916 177.615 53.7907 177.514C53.9923 177.413 54.159 177.261 54.291 177.057C54.4253 176.853 54.4913 176.594 54.4889 176.28ZM57.0144 178.572V173.044H58.0545V173.922H58.1121C58.2129 173.625 58.3904 173.391 58.6447 173.221C58.9014 173.048 59.1918 172.962 59.5157 172.962C59.5828 172.962 59.662 172.964 59.7532 172.969C59.8468 172.974 59.9199 172.98 59.9727 172.987V174.016C59.9295 174.004 59.8528 173.991 59.7424 173.976C59.632 173.96 59.5217 173.951 59.4113 173.951C59.157 173.951 58.9302 174.005 58.7311 174.113C58.5344 174.219 58.3784 174.366 58.2632 174.556C58.1481 174.743 58.0905 174.957 58.0905 175.197V178.572H57.0144ZM63.0345 178.684C62.5162 178.684 62.064 178.565 61.6777 178.328C61.2914 178.09 60.9915 177.758 60.778 177.331C60.5644 176.904 60.4577 176.405 60.4577 175.834C60.4577 175.26 60.5644 174.759 60.778 174.329C60.9915 173.9 61.2914 173.566 61.6777 173.329C62.064 173.091 62.5162 172.972 63.0345 172.972C63.5527 172.972 64.005 173.091 64.3913 173.329C64.7775 173.566 65.0774 173.9 65.291 174.329C65.5045 174.759 65.6113 175.26 65.6113 175.834C65.6113 176.405 65.5045 176.904 65.291 177.331C65.0774 177.758 64.7775 178.09 64.3913 178.328C64.005 178.565 63.5527 178.684 63.0345 178.684ZM63.0381 177.781C63.374 177.781 63.6523 177.692 63.873 177.514C64.0937 177.337 64.2569 177.1 64.3625 176.805C64.4704 176.51 64.5244 176.185 64.5244 175.83C64.5244 175.477 64.4704 175.153 64.3625 174.858C64.2569 174.561 64.0937 174.322 63.873 174.142C63.6523 173.962 63.374 173.872 63.0381 173.872C62.6998 173.872 62.4191 173.962 62.1959 174.142C61.9752 174.322 61.8108 174.561 61.7029 174.858C61.5973 175.153 61.5445 175.477 61.5445 175.83C61.5445 176.185 61.5973 176.51 61.7029 176.805C61.8108 177.1 61.9752 177.337 62.1959 177.514C62.4191 177.692 62.6998 177.781 63.0381 177.781ZM66.8124 180.645V173.044H67.8633V173.94H67.9533C68.0156 173.825 68.1056 173.692 68.2232 173.541C68.3407 173.39 68.5039 173.258 68.7126 173.145C68.9214 173.03 69.1973 172.972 69.5404 172.972C69.9866 172.972 70.3849 173.085 70.7352 173.311C71.0855 173.536 71.3602 173.861 71.5593 174.286C71.7609 174.711 71.8617 175.222 71.8617 175.819C71.8617 176.417 71.7621 176.929 71.5629 177.356C71.3638 177.781 71.0903 178.108 70.7424 178.338C70.3945 178.566 69.9974 178.68 69.5512 178.68C69.2153 178.68 68.9406 178.624 68.727 178.511C68.5159 178.398 68.3503 178.266 68.2304 178.115C68.1104 177.964 68.018 177.83 67.9533 177.712H67.8885V180.645H66.8124ZM67.8669 175.808C67.8669 176.197 67.9233 176.538 68.036 176.83C68.1488 177.123 68.3119 177.352 68.5255 177.518C68.739 177.681 69.0005 177.763 69.31 177.763C69.6315 177.763 69.9003 177.677 70.1162 177.507C70.3321 177.334 70.4953 177.1 70.6056 176.805C70.7184 176.51 70.7748 176.178 70.7748 175.808C70.7748 175.444 70.7196 175.116 70.6092 174.826C70.5013 174.536 70.3381 174.306 70.1198 174.138C69.9039 173.97 69.6339 173.887 69.31 173.887C68.9981 173.887 68.7342 173.967 68.5183 174.128C68.3047 174.288 68.1428 174.513 68.0324 174.801C67.9221 175.089 67.8669 175.424 67.8669 175.808ZM75.4498 178.684C74.9051 178.684 74.4361 178.567 74.0426 178.335C73.6515 178.1 73.3492 177.77 73.1357 177.345C72.9245 176.918 72.819 176.418 72.819 175.844C72.819 175.278 72.9245 174.779 73.1357 174.347C73.3492 173.915 73.6467 173.578 74.0282 173.336C74.4121 173.094 74.8607 172.972 75.3742 172.972C75.6861 172.972 75.9884 173.024 76.2811 173.127C76.5738 173.23 76.8365 173.392 77.0693 173.613C77.302 173.834 77.4855 174.12 77.6199 174.473C77.7542 174.823 77.8214 175.249 77.8214 175.751V176.132H73.4272V175.326H76.7669C76.7669 175.043 76.7094 174.792 76.5942 174.574C76.479 174.353 76.3171 174.179 76.1083 174.052C75.902 173.925 75.6597 173.861 75.3814 173.861C75.0791 173.861 74.8151 173.936 74.5896 174.084C74.3665 174.231 74.1937 174.423 74.0714 174.66C73.9514 174.895 73.8914 175.151 73.8914 175.427V176.057C73.8914 176.426 73.9562 176.74 74.0858 177C74.2177 177.259 74.4013 177.457 74.6364 177.593C74.8715 177.728 75.1462 177.795 75.4605 177.795C75.6645 177.795 75.8504 177.766 76.0184 177.709C76.1863 177.649 76.3315 177.56 76.4538 177.442C76.5762 177.325 76.6698 177.179 76.7346 177.007L77.753 177.19C77.6715 177.49 77.5251 177.753 77.314 177.978C77.1052 178.202 76.8425 178.376 76.5258 178.5C76.2115 178.623 75.8528 178.684 75.4498 178.684ZM81.8225 170.856L79.4472 179.681H78.4863L80.8616 170.856H81.8225ZM85.209 178.572H82.823V171.202H85.2846C86.0068 171.202 86.627 171.349 87.1453 171.644C87.6635 171.937 88.0606 172.358 88.3365Line truncated
|
||||||
|
<path d="M118.949 174.125L121.844 177.02L124.74 174.125" stroke="#374151" stroke-width="1.08584" stroke-linecap="round" stroke-linejoin="round"/>
|
||||||
|
</g>
|
||||||
|
<rect x="0.723892" y="256.21" width="1" height="275" transform="rotate(-90 0.723892 256.21)" fill="#E5E7EB"/>
|
||||||
|
<rect x="137" y="256.21" width="6.51502" height="0.723892" transform="rotate(-90 137 256.21)" fill="#E5E7EB"/>
|
||||||
|
<path d="M14.6904 273.579H16.0338V278.835C16.0314 279.317 15.9291 279.732 15.7272 280.08C15.5252 280.426 15.2429 280.692 14.8803 280.879C14.5201 281.064 14.1003 281.157 13.6209 281.157C13.1828 281.157 12.7886 281.079 12.4381 280.923C12.0901 280.765 11.8139 280.531 11.6095 280.222C11.405 279.913 11.3028 279.529 11.3028 279.069H12.6498C12.6523 279.271 12.6961 279.445 12.7813 279.591C12.8689 279.737 12.9893 279.849 13.1427 279.927C13.296 280.005 13.4724 280.044 13.672 280.044C13.8886 280.044 14.0723 279.998 14.2232 279.908C14.3741 279.816 14.4884 279.68 14.5663 279.5C14.6466 279.32 14.688 279.098 14.6904 278.835V273.579ZM21.0185 278.697V275.448H22.3399V281.055H21.0586V280.058H21.0002C20.8737 280.372 20.6656 280.629 20.376 280.828C20.0888 281.028 19.7347 281.128 19.3137 281.128C18.9462 281.128 18.6213 281.046 18.339 280.883C18.0592 280.718 17.8401 280.478 17.682 280.164C17.5238 279.848 17.4447 279.466 17.4447 279.018V275.448H18.7661V278.813C18.7661 279.169 18.8635 279.451 19.0582 279.66C19.2529 279.87 19.5084 279.974 19.8248 279.974C20.0195 279.974 20.2081 279.927 20.3906 279.832C20.5731 279.737 20.7228 279.596 20.8396 279.408C20.9588 279.219 21.0185 278.981 21.0185 278.697ZM25.0202 277.769V281.055H23.6988V275.448H24.9618V276.4H25.0275C25.1565 276.086 25.3622 275.837 25.6445 275.652C25.9292 275.467 26.2808 275.375 26.6994 275.375C27.0864 275.375 27.4234 275.457 27.7106 275.623C28.0002 275.788 28.2241 276.028 28.3823 276.342C28.5429 276.656 28.622 277.037 28.6196 277.485V281.055H27.2981V277.689C27.2981 277.314 27.2008 277.021 27.0061 276.809C26.8138 276.598 26.5473 276.492 26.2066 276.492C25.9754 276.492 25.7698 276.543 25.5897 276.645C25.412 276.745 25.2721 276.89 25.1699 277.079C25.0701 277.269 25.0202 277.499 25.0202 277.769ZM32.4452 281.164C31.883 281.164 31.3975 281.047 30.9887 280.814C30.5823 280.578 30.2696 280.244 30.0505 279.814C29.8315 279.38 29.722 278.871 29.722 278.284C29.722 277.707 29.8315 277.201 30.0505 276.765C30.272 276.327 30.5811 275.987 30.9777 275.743C31.3744 275.498 31.8405 275.375 32.3758 275.375C32.7214 275.375 33.0475 275.431 33.3542 275.543C33.6632 275.652 33.9358 275.822 34.1719 276.054C34.4104 276.285 34.5977 276.579 34.734 276.937C34.8703 277.292 34.9384 277.716 34.9384 278.207V278.613H30.3426V277.722H33.6718C33.6693 277.469 33.6146 277.244 33.5075 277.047C33.4004 276.847 33.2507 276.69 33.0585 276.576C32.8687 276.461 32.6472 276.404 32.3941 276.404C32.124 276.404 31.8867 276.47 31.6823 276.601C31.4778 276.73 31.3184 276.9 31.2041 277.112C31.0921 277.322 31.0349 277.551 31.0325 277.802V278.58C31.0325 278.906 31.0921 279.186 31.2114 279.419C31.3306 279.65 31.4973 279.828 31.7115 279.952C31.9256 280.074 32.1763 280.135 32.4635 280.135C32.6557 280.135 32.8297 280.108 32.9855 280.054C33.1412 279.998 33.2763 279.917 33.3907 279.81C33.505 279.703 33.5914 279.57 33.6498 279.412L34.8837 279.551C34.8058 279.877 34.6574 280.162 34.4383 280.405C34.2217 280.646 33.9443 280.833 33.606 280.967C33.2678 281.098 32.8808 281.164 32.4452 281.164Z" fill="#101010"/>
|
||||||
|
<path d="M39.2026 281.055V280.339L41.4162 278.046C41.6525 277.797 41.8474 277.578 42.0007 277.391C42.1561 277.202 42.2722 277.022 42.3489 276.851C42.4255 276.681 42.4638 276.5 42.4638 276.308C42.4638 276.091 42.4127 275.904 42.3105 275.746C42.2083 275.586 42.0688 275.464 41.8921 275.379C41.7154 275.291 41.5163 275.248 41.2948 275.248C41.0606 275.248 40.8561 275.296 40.6815 275.392C40.5069 275.487 40.3728 275.623 40.2791 275.797C40.1854 275.972 40.1385 276.176 40.1385 276.41H39.1963C39.1963 276.012 39.2878 275.664 39.471 275.366C39.6541 275.068 39.9054 274.837 40.2248 274.673C40.5442 274.507 40.9072 274.424 41.314 274.424C41.7249 274.424 42.0869 274.506 42.4 274.67C42.7151 274.831 42.9611 275.053 43.1378 275.334C43.3145 275.613 43.4029 275.928 43.4029 276.279C43.4029 276.522 43.3571 276.76 43.2656 276.992C43.1761 277.224 43.0196 277.483 42.796 277.768C42.5724 278.051 42.2616 278.395 41.8634 278.8L40.5633 280.16V280.208H43.5083V281.055H39.2026ZM46.9963 281.163C46.4916 281.161 46.0604 281.028 45.7027 280.764C45.3449 280.5 45.0713 280.116 44.8818 279.611C44.6923 279.106 44.5975 278.498 44.5975 277.787C44.5975 277.078 44.6923 276.472 44.8818 275.97C45.0734 275.467 45.3481 275.084 45.7059 274.82C46.0658 274.556 46.4959 274.424 46.9963 274.424C47.4967 274.424 47.9258 274.557 48.2835 274.823C48.6413 275.087 48.9149 275.47 49.1044 275.973C49.2961 276.473 49.3919 277.078 49.3919 277.787C49.3919 278.5 49.2971 279.109 49.1076 279.614C48.9181 280.117 48.6445 280.501 48.2867 280.767C47.929 281.031 47.4989 281.163 46.9963 281.163ZM46.9963 280.31C47.4392 280.31 47.7853 280.094 48.0344 279.662C48.2857 279.23 48.4113 278.605 48.4113 277.787C48.4113 277.244 48.3538 276.785 48.2388 276.41C48.126 276.034 47.9631 275.748 47.7501 275.554C47.5393 275.358 47.288 275.261 46.9963 275.261C46.5555 275.261 46.2095 275.478 45.9582 275.912C45.7069 276.347 45.5802 276.972 45.5781 277.787C45.5781 278.332 45.6345 278.793 45.7474 279.17C45.8624 279.545 46.0253 279.829 46.2361 280.023C46.4469 280.215 46.7003 280.31 46.9963 280.31ZM50.525 281.055V280.339L52.7385 278.046C52.9749 277.797 53.1698 277.578 53.3231 277.391C53.4785 277.202 53.5946 277.022 53.6712 276.851C53.7479 276.681 53.7862 276.5 53.7862 276.308C53.7862 276.091 53.7351 275.904 53.6329 275.746C53.5307 275.586 53.3912 275.464 53.2145 275.379C53.0377 275.291 52.8386 275.248 52.6172 275.248C52.3829 275.248 52.1785 275.296 52.0039 275.392C51.8293 275.487 51.6951 275.623 51.6014 275.797C51.5077 275.972 51.4609 276.176 51.4609 276.41H50.5186C50.5186 276.012 50.6102 275.664 50.7933 275.366C50.9765 275.068 51.2277 274.837 51.5471 274.673C51.8666 274.507 52.2296 274.424 52.6363 274.424C53.0473 274.424 53.4093 274.506 53.7223 274.67C54.0375 274.831 54.2834 275.053 54.4602 275.334C54.6369 275.613 54.7253 275.928 54.7253 276.279C54.7253 276.522 54.6795 276.76 54.5879 276.992C54.4985 277.224 54.342 277.483 54.1184 277.768C53.8948 278.051 53.5839 278.395 53.1857 278.8L51.8857 280.16V280.208H54.8307V281.055H50.525ZM58.3187 281.144C57.88 281.144 57.4882 281.069 57.1432 280.917C56.8004 280.766 56.5289 280.556 56.3287 280.288C56.1307 280.018 56.0242 279.705 56.0093 279.349H57.0123C57.0251 279.543 57.09 279.711 57.2071 279.854C57.3264 279.994 57.4818 280.103 57.6735 280.179C57.8651 280.256 58.0781 280.294 58.3123 280.294C58.57 280.294 58.7978 280.25 58.9958 280.16C59.196 280.071 59.3525 279.946 59.4654 279.787C59.5782 279.625 59.6347 279.438 59.6347 279.228C59.6347 279.008 59.5782 278.816 59.4654 278.65C59.3546 278.481 59.1917 278.349 58.9767 278.253C58.7637 278.158 58.5061 278.11 58.2037 278.11H57.6511V277.305H58.2037C58.4464 277.305 58.6594 277.261 58.8425 277.174C59.0278 277.087 59.1726 276.965 59.2769 276.81C59.3813 276.652 59.4334 276.468 59.4334 276.257C59.4334 276.055 59.3877 275.879 59.2961 275.73C59.2066 275.579 59.0789 275.461 58.9128 275.376C58.7488 275.29 58.555 275.248 58.3315 275.248C58.1185 275.248 57.9194 275.287 57.7342 275.366C57.551 275.443 57.402 275.553 57.287 275.698C57.172 275.841 57.1102 276.012 57.1017 276.212H56.1467C56.1573 275.859 56.2617 275.548 56.4597 275.28C56.6599 275.011 56.9239 274.802 57.2518 274.65C57.5798 274.499 57.9439 274.424 58.3442 274.424C58.7637 274.424 59.1257 274.506 59.4302 274.67C59.7369 274.831 59.9732 275.048 60.1393 275.318C60.3076 275.588 60.3906 275.884 60.3885 276.206C60.3906 276.572 60.2884 276.883 60.0818 277.139C59.8774 277.394 59.6049 277.566 59.2641 277.653V277.704C59.6985 277.77 60.035 277.943 60.2735 278.221C60.5141 278.5 60.6334 278.846 60.6312 279.26C60.6334 279.619 60.5333 279.942 60.331 280.227C60.1308 280.513 59.8572 280.737 59.5101 280.901C59.163 281.063 58.7659 281.144 58.3187 281.144Z" fill="#6B7280"/>
|
||||||
|
<path d="M229.445 280.625L226.875 278.055L229.445 275.485" stroke="#6B7280" stroke-width="0.963713" stroke-linecap="round" stroke-linejoin="round"/>
|
||||||
|
<path d="M250.004 280.625L252.574 278.055L250.004 275.485" stroke="#6B7280" stroke-width="0.963713" stroke-linecap="round" stroke-linejoin="round"/>
|
||||||
|
<path d="M24.167 309.044C24.1378 308.785 24.0173 308.584 23.8056 308.442C23.5939 308.298 23.3274 308.226 23.0061 308.226C22.7762 308.226 22.5772 308.262 22.4093 308.335C22.2414 308.406 22.1109 308.505 22.0178 308.631C21.9265 308.755 21.8809 308.896 21.8809 309.055C21.8809 309.188 21.9119 309.303 21.974 309.4C22.0379 309.497 22.1209 309.578 22.2231 309.644C22.3272 309.708 22.4385 309.761 22.5571 309.805C22.6758 309.847 22.7898 309.882 22.8994 309.909L23.4469 310.052C23.6258 310.095 23.8092 310.155 23.9972 310.23C24.1852 310.304 24.3595 310.403 24.5201 310.525C24.6808 310.648 24.8104 310.799 24.9089 310.98C25.0093 311.16 25.0595 311.377 25.0595 311.629C25.0595 311.946 24.9774 312.228 24.8131 312.475C24.6507 312.721 24.4143 312.915 24.104 313.058C23.7955 313.2 23.4223 313.271 22.9842 313.271C22.5644 313.271 22.2012 313.205 21.8946 313.071C21.5879 312.938 21.3479 312.749 21.1745 312.505C21.0011 312.258 20.9053 311.966 20.8871 311.629H21.7358C21.7522 311.831 21.8179 312 21.9329 312.135C22.0497 312.268 22.1985 312.368 22.3792 312.434C22.5617 312.497 22.7616 312.529 22.9788 312.529C23.2179 312.529 23.4305 312.492 23.6167 312.417C23.8047 312.34 23.9525 312.235 24.0602 312.1C24.1679 311.963 24.2217 311.803 24.2217 311.62C24.2217 311.454 24.1743 311.318 24.0794 311.212C23.9863 311.107 23.8594 311.019 23.6988 310.95C23.54 310.88 23.3602 310.819 23.1595 310.766L22.4969 310.586C22.0479 310.463 21.692 310.283 21.4291 310.046C21.1681 309.809 21.0376 309.495 21.0376 309.104C21.0376 308.781 21.1252 308.499 21.3005 308.258C21.4757 308.017 21.713 307.83 22.0123 307.697C22.3116 307.562 22.6493 307.495 23.0253 307.495C23.4049 307.495 23.7399 307.561 24.0301 307.694C24.3221 307.828 24.5521 308.011 24.72 308.245C24.8879 308.476 24.9755 308.743 24.9828 309.044H24.167ZM29.6762 307.571H30.5249V311.259C30.5249 311.651 30.4327 311.999 30.2484 312.302C30.064 312.603 29.8048 312.841 29.4708 313.014C29.1368 313.186 28.7453 313.271 28.2963 313.271C27.8491 313.271 27.4585 313.186 27.1245 313.014C26.7905 312.841 26.5313 312.603 26.347 312.302C26.1626 311.999 26.0704 311.651 26.0704 311.259V307.571H26.9164V311.191C26.9164 311.444 26.9721 311.67 27.0834 311.867C27.1966 312.064 27.3563 312.219 27.5626 312.332C27.7688 312.444 28.0134 312.499 28.2963 312.499C28.581 312.499 28.8265 312.444 29.0328 312.332C29.2408 312.219 29.3996 312.064 29.5091 311.867C29.6205 311.67 29.6762 311.444 29.6762 311.191V307.571ZM36.2805 307.571V313.178H35.5029L32.6528 309.066H32.6008V313.178H31.7548V307.571H32.5379L35.3907 311.689H35.4427V307.571H36.2805Z" fill="#9CA3AF"/>
|
||||||
|
<path d="M56.0874 307.571H57.1141L58.8992 311.93H58.9649L60.75 307.571H61.7766V313.178H60.9717V309.121H60.9197L59.2661 313.17H58.598L56.9444 309.118H56.8924V313.178H56.0874V307.571ZM67.8772 310.375C67.8772 310.973 67.7677 311.488 67.5487 311.919C67.3296 312.348 67.0294 312.678 66.6479 312.91C66.2683 313.14 65.8366 313.255 65.3529 313.255C64.8674 313.255 64.4339 313.14 64.0525 312.91C63.6728 312.678 63.3735 312.347 63.1544 311.916C62.9354 311.485 62.8259 310.972 62.8259 310.375C62.8259 309.776 62.9354 309.262 63.1544 308.833C63.3735 308.403 63.6728 308.072 64.0525 307.842C64.4339 307.61 64.8674 307.495 65.3529 307.495C65.8366 307.495 66.2683 307.61 66.6479 307.842C67.0294 308.072 67.3296 308.403 67.5487 308.833C67.7677 309.262 67.8772 309.776 67.8772 310.375ZM67.0394 310.375C67.0394 309.918 66.9655 309.534 66.8177 309.222C66.6716 308.908 66.4709 308.671 66.2153 308.51C65.9616 308.348 65.6742 308.267 65.3529 308.267C65.0299 308.267 64.7415 308.348 64.4878 308.51C64.2341 308.671 64.0333 308.908 63.8854 309.222C63.7394 309.534 63.6664 309.918 63.6664 310.375C63.6664 310.831 63.7394 311.216 63.8854 311.53C64.0333 311.842 64.2341 312.079 64.4878 312.242C64.7415 312.403 65.0299 312.483 65.3529 312.483C65.6742 312.483 65.9616 312.403 66.2153 312.242C66.4709 312.079 66.6716 311.842 66.8177 311.53C66.9655 311.216 67.0394 310.831 67.0394 310.375ZM73.4576 307.571V313.178H72.68L69.8299 309.066H69.7779V313.178H68.9319V307.571H69.715L72.5678 311.689H72.6198V307.571H73.4576Z" fill="#374151"/>
|
||||||
|
<path d="M93.2895 308.299V307.571H97.629V308.299H95.8795V313.178H95.0363V308.299H93.2895ZM102.194 307.571H103.042V311.259C103.042 311.651 102.95 311.999 102.766 312.302C102.581 312.603 102.322 312.841 101.988 313.014C101.654 313.186 101.263 313.271 100.814 313.271C100.367 313.271 99.976 313.186 99.642 313.014C99.308 312.841 99.0488 312.603 98.8644 312.302C98.6801 311.999 98.5879 311.651 98.5879 311.259V307.571H99.4339V311.191C99.4339 311.444 99.4896 311.67 99.6009 311.867C99.7141 312.064 99.8738 312.219 100.08 312.332C100.286 312.444 100.531 312.499 100.814 312.499C101.098 312.499 101.344 312.444 101.55 312.332C101.758 312.219 101.917 312.064 102.027 311.867C102.138 311.67 102.194 311.444 102.194 311.191V307.571ZM104.272 313.178V307.571H107.788V308.299H105.118V310.008H107.604V310.733H105.118V312.45H107.821V313.178H104.272Z" fill="#374151"/>
|
||||||
|
<path d="M129.643 313.178L128.087 307.571H128.977L130.07 311.913H130.122L131.258 307.571H132.139L133.276 311.916H133.328L134.417 307.571H135.31L133.752 313.178H132.901L131.721 308.978H131.677L130.497 313.178H129.643ZM136.081 313.178V307.571H139.597V308.299H136.927V310.008H139.413V310.733H136.927V312.45H139.629V313.178H136.081ZM142.542 313.178H140.727V307.571H142.599C143.149 307.571 143.621 307.683 144.015 307.908C144.409 308.131 144.711 308.451 144.921 308.869C145.133 309.285 145.239 309.784 145.239 310.366C145.239 310.951 145.132 311.452 144.918 311.872C144.707 312.292 144.4 312.615 143.998 312.841C143.597 313.066 143.111 313.178 142.542 313.178ZM141.573 312.439H142.495C142.922 312.439 143.277 312.359 143.56 312.198C143.843 312.036 144.055 311.801 144.195 311.494C144.336 311.186 144.406 310.81 144.406 310.366C144.406 309.927 144.336 309.553 144.195 309.247C144.057 308.94 143.85 308.707 143.574 308.549C143.298 308.39 142.956 308.31 142.547 308.31H141.573V312.439Z" fill="#374151"/>
|
||||||
|
<path d="M164.747 308.299V307.571H169.086V308.299H167.337V313.178H166.494V308.299H164.747ZM170.045 313.178V307.571H170.891V310.008H173.686V307.571H174.535V313.178H173.686V310.733H170.891V313.178H170.045ZM179.373 307.571H180.222V311.259C180.222 311.651 180.129 311.999 179.945 312.302C179.761 312.603 179.502 312.841 179.168 313.014C178.834 313.186 178.442 313.271 177.993 313.271C177.546 313.271 177.155 313.186 176.821 313.014C176.487 312.841 176.228 312.603 176.044 312.302C175.859 311.999 175.767 311.651 175.767 311.259V307.571H176.613V311.191C176.613 311.444 176.669 311.67 176.78 311.867C176.893 312.064 177.053 312.219 177.259 312.332C177.466 312.444 177.71 312.499 177.993 312.499C178.278 312.499 178.523 312.444 178.73 312.332C178.938 312.219 179.096 312.064 179.206 311.867C179.317 311.67 179.373 311.444 179.373 311.191V307.571Z" fill="#374151"/>
|
||||||
|
<path d="M203.502 313.178V307.571H206.979V308.299H204.348V310.008H206.73V310.733H204.348V313.178H203.502ZM208.019 313.178V307.571H210.018C210.452 307.571 210.813 307.646 211.099 307.796C211.388 307.945 211.603 308.152 211.746 308.417C211.888 308.68 211.959 308.984 211.959 309.329C211.959 309.672 211.887 309.974 211.743 310.235C211.6 310.494 211.385 310.696 211.097 310.84C210.81 310.984 210.45 311.056 210.015 311.056H208.501V310.328H209.939C210.212 310.328 210.435 310.289 210.607 310.21C210.78 310.132 210.907 310.018 210.987 309.868C211.067 309.719 211.108 309.539 211.108 309.329C211.108 309.117 211.067 308.934 210.984 308.779C210.904 308.623 210.777 308.505 210.604 308.423C210.432 308.339 210.207 308.297 209.928 308.297H208.865V313.178H208.019ZM210.787 310.648L212.173 313.178H211.209L209.851 310.648H210.787ZM213.834 307.571V313.178H212.988V307.571H213.834Z" fill="#374151"/>
|
||||||
|
<path d="M241.039 309.044C241.01 308.785 240.889 308.584 240.677 308.442C240.466 308.298 240.199 308.226 239.878 308.226C239.648 308.226 239.449 308.262 239.281 308.335C239.113 308.406 238.983 308.505 238.89 308.631C238.798 308.755 238.753 308.896 238.753 309.055C238.753 309.188 238.784 309.303 238.846 309.4C238.91 309.497 238.993 309.578 239.095 309.644C239.199 309.708 239.31 309.761 239.429 309.805C239.548 309.847 239.662 309.882 239.771 309.909L240.319 310.052C240.498 310.095 240.681 310.155 240.869 310.23C241.057 310.304 241.231 310.403 241.392 310.525C241.553 310.648 241.682 310.799 241.781 310.98C241.881 311.16 241.931 311.377 241.931 311.629C241.931 311.946 241.849 312.228 241.685 312.475C241.522 312.721 241.286 312.915 240.976 313.058C240.667 313.2 240.294 313.271 239.856 313.271C239.436 313.271 239.073 313.205 238.766 313.071C238.46 312.938 238.22 312.749 238.046 312.505C237.873 312.258 237.777 311.966 237.759 311.629H238.608C238.624 311.831 238.69 312 238.805 312.135C238.921 312.268 239.07 312.368 239.251 312.434C239.433 312.497 239.633 312.529 239.85 312.529C240.09 312.529 240.302 312.492 240.488 312.417C240.676 312.34 240.824 312.235 240.932 312.1C241.04 311.963 241.093 311.803 241.093 311.62C241.093 311.454 241.046 311.318 240.951 311.212C240.858 311.107 240.731 311.019 240.571 310.95C240.412 310.88 240.232 310.819 240.031 310.766L239.369 310.586C238.92 310.463 238.564 310.283 238.301 310.046C238.04 309.809 237.909 309.495 237.909 309.104C237.909 308.781 237.997 308.499 238.172 308.258C238.347 308.017 238.585 307.83 238.884 307.697C239.183 307.562 239.521 307.495 239.897 307.495C240.277 307.495 240.612 307.561 240.902 307.694C241.194 307.828 241.424 308.011 241.592 308.245C241.76 308.476 241.847 308.743 241.855 309.044H241.039ZM243.371 313.178H242.473L244.49 307.571H245.468L247.486 313.178H246.588L245.002 308.59H244.959L243.371 313.178ZM243.521 310.982H246.434V311.694H243.521V310.982ZM247.356 308.299V307.571H251.696V308.299H249.946V313.178H249.103V308.299H247.356Z" fill="#9CA3AF"/>
|
||||||
|
<path d="M137.669 339.54V346.082H136.679V340.53H136.641L135.076 341.552V340.607L136.708 339.54H137.669Z" fill="#9CA3AF"/>
|
||||||
|
<path d="M170.534 346.082V345.366L172.747 343.073C172.984 342.824 173.178 342.605 173.332 342.418C173.487 342.228 173.603 342.048 173.68 341.878C173.757 341.708 173.795 341.527 173.795 341.335C173.795 341.118 173.744 340.93 173.642 340.773C173.539 340.613 173.4 340.491 173.223 340.406C173.046 340.318 172.847 340.275 172.626 340.275C172.392 340.275 172.187 340.323 172.013 340.418C171.838 340.514 171.704 340.649 171.61 340.824C171.516 340.999 171.47 341.203 171.47 341.437H170.527C170.527 341.039 170.619 340.691 170.802 340.393C170.985 340.095 171.236 339.864 171.556 339.7C171.875 339.534 172.238 339.451 172.645 339.451C173.056 339.451 173.418 339.533 173.731 339.696C174.046 339.858 174.292 340.08 174.469 340.361C174.646 340.64 174.734 340.955 174.734 341.306C174.734 341.549 174.688 341.787 174.597 342.019C174.507 342.251 174.351 342.509 174.127 342.795C173.903 343.078 173.593 343.422 173.194 343.826L171.894 345.187V345.235H174.839V346.082H170.534Z" fill="#9CA3AF"/>
|
||||||
|
<path d="M208.649 346.171C208.211 346.171 207.819 346.095 207.474 345.944C207.131 345.793 206.859 345.583 206.659 345.315C206.461 345.045 206.355 344.731 206.34 344.376H207.343C207.356 344.57 207.42 344.738 207.538 344.881C207.657 345.021 207.812 345.13 208.004 345.206C208.196 345.283 208.409 345.321 208.643 345.321C208.9 345.321 209.128 345.277 209.326 345.187C209.526 345.098 209.683 344.973 209.796 344.813C209.909 344.652 209.965 344.465 209.965 344.255C209.965 344.035 209.909 343.842 209.796 343.676C209.685 343.508 209.522 343.376 209.307 343.28C209.094 343.184 208.837 343.137 208.534 343.137H207.982V342.332H208.534C208.777 342.332 208.99 342.288 209.173 342.201C209.358 342.113 209.503 341.992 209.607 341.837C209.712 341.679 209.764 341.495 209.764 341.284C209.764 341.082 209.718 340.906 209.627 340.757C209.537 340.606 209.409 340.488 209.243 340.402C209.079 340.317 208.886 340.275 208.662 340.275C208.449 340.275 208.25 340.314 208.065 340.393C207.882 340.469 207.732 340.58 207.617 340.725C207.502 340.868 207.441 341.039 207.432 341.239H206.477C206.488 340.886 206.592 340.575 206.79 340.307C206.99 340.038 207.254 339.829 207.582 339.677C207.91 339.526 208.274 339.451 208.675 339.451C209.094 339.451 209.456 339.533 209.761 339.696C210.067 339.858 210.304 340.074 210.47 340.345C210.638 340.615 210.721 340.911 210.719 341.233C210.721 341.599 210.619 341.91 210.412 342.166C210.208 342.421 209.935 342.592 209.595 342.68V342.731C210.029 342.797 210.365 342.969 210.604 343.248C210.845 343.527 210.964 343.873 210.962 344.286C210.964 344.646 210.864 344.969 210.661 345.254C210.461 345.54 210.188 345.764 209.841 345.928C209.493 346.09 209.096 346.171 208.649 346.171Z" fill="#9CA3AF"/>
|
||||||
|
<path d="M242.169 344.804V344.005L244.996 339.54H245.625V340.715H245.226L243.204 343.916V343.967H247.078V344.804H242.169ZM245.271 346.082V344.561L245.277 344.197V339.54H246.213V346.082H245.271Z" fill="#9CA3AF"/>
|
||||||
|
<path d="M28.7477 382.149C28.3473 382.149 27.9875 382.073 27.668 381.92C27.3508 381.764 27.0974 381.551 26.9078 381.281C26.7183 381.01 26.6172 380.701 26.6044 380.354H27.5626C27.5861 380.635 27.7106 380.867 27.9364 381.048C28.1621 381.229 28.4325 381.319 28.7477 381.319C28.9989 381.319 29.2215 381.262 29.4152 381.147C29.6111 381.029 29.7645 380.869 29.8752 380.664C29.988 380.46 30.0445 380.227 30.0445 379.965C30.0445 379.699 29.987 379.461 29.872 379.252C29.757 379.044 29.5984 378.88 29.3961 378.761C29.1959 378.641 28.9659 378.581 28.7061 378.578C28.5081 378.578 28.309 378.613 28.1088 378.681C27.9087 378.749 27.7468 378.838 27.6233 378.949L26.7194 378.815L27.0867 375.518H30.6833V376.365H27.9076L27.7 378.195H27.7383C27.8661 378.072 28.0354 377.968 28.2462 377.885C28.4591 377.802 28.687 377.761 28.9297 377.761C29.3279 377.761 29.6825 377.856 29.9934 378.045C30.3064 378.235 30.5523 378.493 30.7312 378.821C30.9122 379.147 31.0016 379.522 30.9995 379.946C31.0016 380.369 30.9058 380.747 30.712 381.079C30.5204 381.412 30.2542 381.674 29.9135 381.865C29.5749 382.055 29.1863 382.149 28.7477 382.149Z" fill="#9CA3AF"/>
|
||||||
|
<path d="M64.7806 382.149C64.4889 382.145 64.2014 382.092 63.9182 381.99C63.6371 381.888 63.3816 381.717 63.1516 381.479C62.9216 381.24 62.7374 380.92 62.599 380.517C62.4627 380.115 62.3946 379.612 62.3946 379.01C62.3946 378.439 62.451 377.932 62.5639 377.489C62.6788 377.046 62.8439 376.673 63.0589 376.368C63.274 376.061 63.5338 375.828 63.8383 375.669C64.1428 375.509 64.4846 375.429 64.8636 375.429C65.2533 375.429 65.5993 375.506 65.9017 375.659C66.2041 375.812 66.449 376.024 66.6364 376.295C66.8259 376.565 66.9462 376.873 66.9973 377.218H66.0231C65.9571 376.945 65.8261 376.723 65.6302 376.55C65.4343 376.378 65.1788 376.291 64.8636 376.291C64.3845 376.291 64.0108 376.5 63.7425 376.918C63.4763 377.335 63.3422 377.915 63.34 378.658H63.3879C63.5008 378.473 63.6392 378.315 63.8032 378.186C63.9693 378.054 64.1545 377.952 64.359 377.882C64.5655 377.81 64.7827 377.774 65.0106 377.774C65.3896 377.774 65.7324 377.866 66.0391 378.051C66.3478 378.235 66.5938 378.488 66.7769 378.812C66.96 379.135 67.0516 379.506 67.0516 379.923C67.0516 380.341 66.9568 380.719 66.7673 381.057C66.5799 381.396 66.3159 381.664 65.9752 381.862C65.6345 382.058 65.2363 382.154 64.7806 382.149ZM64.7774 381.319C65.0287 381.319 65.2533 381.257 65.4513 381.134C65.6494 381.01 65.8059 380.844 65.9209 380.635C66.0359 380.427 66.0934 380.194 66.0934 379.936C66.0934 379.685 66.0369 379.456 65.9241 379.249C65.8134 379.043 65.66 378.879 65.4641 378.757C65.2703 378.636 65.0489 378.575 64.7997 378.575C64.6102 378.575 64.4346 378.611 64.2727 378.684C64.113 378.756 63.9725 378.856 63.8511 378.984C63.7297 379.112 63.6339 379.259 63.5636 379.425C63.4955 379.589 63.4614 379.762 63.4614 379.946C63.4614 380.19 63.5178 380.417 63.6307 380.626C63.7457 380.835 63.9022 381.003 64.1002 381.131C64.3004 381.256 64.5261 381.319 64.7774 381.319Z" fill="#9CA3AF"/>
|
||||||
|
<path d="M98.9505 382.06L101.806 376.413V376.365H98.5034V375.518H102.828V376.394L99.9822 382.06H98.9505Z" fill="#9CA3AF"/>
|
||||||
|
<path d="M136.682 382.149C136.224 382.149 135.82 382.071 135.468 381.913C135.119 381.756 134.845 381.538 134.647 381.262C134.449 380.985 134.351 380.67 134.353 380.316C134.351 380.039 134.408 379.785 134.523 379.553C134.64 379.318 134.798 379.124 134.999 378.968C135.199 378.811 135.422 378.71 135.669 378.668V378.63C135.344 378.551 135.083 378.376 134.887 378.106C134.691 377.835 134.594 377.524 134.596 377.173C134.594 376.839 134.682 376.541 134.861 376.279C135.042 376.015 135.29 375.807 135.606 375.656C135.921 375.505 136.279 375.429 136.682 375.429C137.08 375.429 137.436 375.506 137.749 375.659C138.064 375.81 138.312 376.018 138.493 376.282C138.674 376.544 138.766 376.841 138.768 377.173C138.766 377.524 138.665 377.835 138.467 378.106C138.269 378.376 138.012 378.551 137.694 378.63V378.668C137.939 378.71 138.16 378.811 138.356 378.968C138.554 379.124 138.711 379.318 138.828 379.553C138.948 379.785 139.008 380.039 139.01 380.316C139.008 380.67 138.908 380.985 138.71 381.262C138.512 381.538 138.237 381.756 137.886 381.913C137.537 382.071 137.136 382.149 136.682 382.149ZM136.682 381.341C136.952 381.341 137.187 381.297 137.385 381.207C137.583 381.116 137.736 380.989 137.845 380.827C137.953 380.663 138.009 380.472 138.011 380.252C138.009 380.024 137.949 379.823 137.832 379.648C137.717 379.474 137.56 379.337 137.362 379.236C137.164 379.136 136.937 379.086 136.682 379.086C136.424 379.086 136.195 379.136 135.995 379.236C135.795 379.337 135.637 379.474 135.522 379.648C135.407 379.823 135.351 380.024 135.353 380.252C135.351 380.472 135.403 380.663 135.51 380.827C135.618 380.989 135.773 381.116 135.973 381.207C136.173 381.297 136.409 381.341 136.682 381.341ZM136.682 378.297C136.899 378.297 137.092 378.254 137.26 378.166C137.428 378.079 137.56 377.958 137.656 377.802C137.754 377.647 137.804 377.465 137.806 377.256C137.804 377.052 137.755 376.873 137.659 376.719C137.566 376.566 137.435 376.448 137.266 376.365C137.098 376.28 136.903 376.237 136.682 376.237C136.456 376.237 136.258 376.28 136.088 376.365C135.92 376.448 135.789 376.566 135.695 376.719C135.601 376.873 135.555 377.052 135.558 377.256C135.555 377.465 135.602 377.647 135.698 377.802C135.794 377.958 135.926 378.079 136.094 378.166C136.265 378.254 136.46 378.297 136.682 378.297Z" fill="#9CA3AF"/>
|
||||||
|
<path d="M172.608 375.429C172.9 375.431 173.187 375.484 173.47 375.589C173.753 375.693 174.009 375.863 174.237 376.1C174.467 376.336 174.65 376.656 174.786 377.058C174.925 377.458 174.995 377.957 174.997 378.553C174.997 379.126 174.94 379.636 174.825 380.083C174.71 380.528 174.545 380.904 174.329 381.21C174.117 381.517 173.858 381.75 173.553 381.91C173.249 382.07 172.906 382.149 172.525 382.149C172.135 382.149 171.789 382.073 171.487 381.92C171.184 381.766 170.938 381.554 170.749 381.284C170.559 381.011 170.441 380.698 170.394 380.345H171.369C171.432 380.626 171.562 380.854 171.758 381.028C171.956 381.201 172.212 381.287 172.525 381.287C173.004 381.287 173.378 381.078 173.646 380.661C173.914 380.242 174.049 379.656 174.052 378.904H174C173.89 379.087 173.751 379.245 173.585 379.377C173.421 379.509 173.237 379.611 173.033 379.684C172.828 379.756 172.61 379.792 172.378 379.792C172.001 379.792 171.658 379.7 171.349 379.514C171.041 379.329 170.795 379.075 170.612 378.751C170.428 378.427 170.337 378.058 170.337 377.643C170.337 377.229 170.431 376.855 170.618 376.518C170.807 376.182 171.071 375.916 171.41 375.72C171.751 375.522 172.15 375.425 172.608 375.429ZM172.611 376.26C172.362 376.26 172.137 376.321 171.937 376.445C171.739 376.566 171.583 376.731 171.468 376.94C171.353 377.146 171.295 377.376 171.295 377.63C171.295 377.883 171.35 378.113 171.461 378.32C171.574 378.524 171.727 378.687 171.921 378.808C172.117 378.928 172.341 378.987 172.592 378.987C172.779 378.987 172.954 378.951 173.116 378.879C173.278 378.806 173.419 378.706 173.541 378.578C173.662 378.449 173.757 378.302 173.825 378.138C173.893 377.974 173.927 377.801 173.927 377.62C173.927 377.38 173.87 377.156 173.755 376.949C173.642 376.743 173.486 376.577 173.288 376.451C173.09 376.323 172.864 376.26 172.611 376.26Z" fill="#9CA3AF"/>
|
||||||
|
<path d="M206.724 375.518V382.06H205.733V376.509H205.695L204.13 377.531V376.585L205.762 375.518H206.724ZM210.77 382.169C210.266 382.167 209.835 382.033 209.477 381.769C209.119 381.505 208.845 381.121 208.656 380.616C208.466 380.112 208.372 379.504 208.372 378.792C208.372 378.083 208.466 377.478 208.656 376.975C208.848 376.472 209.122 376.089 209.48 375.825C209.84 375.561 210.27 375.429 210.77 375.429C211.271 375.429 211.7 375.562 212.058 375.828C212.415 376.092 212.689 376.476 212.879 376.978C213.07 377.479 213.166 378.083 213.166 378.792C213.166 379.506 213.071 380.115 212.882 380.62C212.692 381.122 212.419 381.506 212.061 381.773C211.703 382.037 211.273 382.169 210.77 382.169ZM210.77 381.316C211.213 381.316 211.559 381.1 211.809 380.667C212.06 380.235 212.185 379.61 212.185 378.792C212.185 378.249 212.128 377.791 212.013 377.416C211.9 377.039 211.737 376.754 211.524 376.56C211.313 376.364 211.062 376.266 210.77 376.266C210.33 376.266 209.984 376.483 209.732 376.918C209.481 377.352 209.354 377.977 209.352 378.792C209.352 379.338 209.409 379.799 209.522 380.176C209.637 380.55 209.799 380.835 210.01 381.028C210.221 381.22 210.474 381.316 210.77 381.316Z" fill="#9CA3AF"/>
|
||||||
|
<path d="M243.479 375.518V382.06H242.489V376.509H242.451L240.886 377.531V376.585L242.518 375.518H243.479ZM247.731 375.518V382.06H246.741V376.509H246.702L245.137 377.531V376.585L246.769 375.518H247.731Z" fill="#9CA3AF"/>
|
||||||
|
<path d="M26.9753 411.497V418.039H25.9851V412.487H25.9468L24.3817 413.509V412.564L26.0139 411.497H26.9753ZM28.7449 418.039V417.323L30.9584 415.03C31.1948 414.781 31.3896 414.562 31.5429 414.375C31.6984 414.185 31.8144 414.005 31.8911 413.835C31.9677 413.665 32.0061 413.484 32.0061 413.292C32.0061 413.075 31.955 412.888 31.8527 412.73C31.7505 412.57 31.6111 412.448 31.4343 412.363C31.2576 412.275 31.0585 412.232 30.837 412.232C30.6028 412.232 30.3984 412.28 30.2237 412.375C30.0491 412.471 29.915 412.606 29.8213 412.781C29.7276 412.956 29.6807 413.16 29.6807 413.394H28.7385C28.7385 412.996 28.83 412.648 29.0132 412.35C29.1963 412.052 29.4476 411.821 29.767 411.657C30.0864 411.491 30.4495 411.408 30.8562 411.408C31.2672 411.408 31.6292 411.49 31.9422 411.654C32.2573 411.815 32.5033 412.037 32.68 412.318C32.8568 412.597 32.9451 412.912 32.9451 413.263C32.9451 413.506 32.8994 413.744 32.8078 413.976C32.7184 414.208 32.5618 414.466 32.3383 414.752C32.1147 415.035 31.8038 415.379 31.4056 415.784L30.1056 417.144V417.192H33.0505V418.039H28.7449Z" fill="#9CA3AF"/>
|
||||||
|
<path d="M62.8134 411.497V418.039H61.8232V412.487H61.7849L60.2198 413.509V412.564L61.852 411.497H62.8134ZM66.8604 418.128C66.4217 418.128 66.0299 418.052 65.6849 417.901C65.3421 417.75 65.0706 417.54 64.8704 417.272C64.6724 417.002 64.5659 416.689 64.551 416.333H65.554C65.5667 416.527 65.6317 416.695 65.7488 416.838C65.868 416.978 66.0235 417.087 66.2151 417.163C66.4068 417.24 66.6197 417.278 66.854 417.278C67.1116 417.278 67.3395 417.234 67.5375 417.144C67.7377 417.055 67.8942 416.93 68.007 416.771C68.1199 416.609 68.1763 416.422 68.1763 416.212C68.1763 415.992 68.1199 415.799 68.007 415.633C67.8963 415.465 67.7334 415.333 67.5183 415.237C67.3054 415.142 67.0477 415.094 66.7454 415.094H66.1928V414.289H66.7454C66.9881 414.289 67.2011 414.245 67.3842 414.158C67.5695 414.07 67.7143 413.949 67.8186 413.794C67.9229 413.636 67.9751 413.452 67.9751 413.241C67.9751 413.039 67.9293 412.863 67.8378 412.714C67.7483 412.563 67.6206 412.445 67.4545 412.359C67.2905 412.274 67.0967 412.232 66.8731 412.232C66.6602 412.232 66.4611 412.271 66.2758 412.35C66.0927 412.426 65.9436 412.537 65.8287 412.682C65.7137 412.825 65.6519 412.996 65.6434 413.196H64.6884C64.699 412.843 64.8033 412.532 65.0014 412.264C65.2015 411.995 65.4656 411.786 65.7935 411.634C66.1215 411.483 66.4856 411.408 66.8859 411.408C67.3054 411.408 67.6674 411.49 67.9719 411.654C68.2785 411.815 68.5149 412.031 68.681 412.302C68.8492 412.572 68.9323 412.868 68.9302 413.19C68.9323 413.556 68.8301 413.867 68.6235 414.123C68.4191 414.378 68.1465 414.55 67.8058 414.637V414.688C68.2402 414.754 68.5767 414.926 68.8152 415.205C69.0558 415.484 69.175 415.83 69.1729 416.243C69.175 416.603 69.075 416.926 68.8727 417.211C68.6725 417.497 68.3989 417.721 68.0518 417.885C67.7047 418.047 67.3075 418.128 66.8604 418.128Z" fill="#9CA3AF"/>
|
||||||
|
<path d="M98.7481 411.497V418.039H97.7579V412.487H97.7196L96.1545 413.509V412.564L97.7867 411.497H98.7481ZM100.38 416.761V415.962L103.207 411.497H103.836V412.672H103.437L101.415 415.873V415.924H105.29V416.761H100.38ZM103.482 418.039V416.518L103.488 416.154V411.497H104.424V418.039H103.482Z" fill="#9CA3AF"/>
|
||||||
|
<path d="M134.88 411.497V418.039H133.89V412.487H133.852L132.287 413.509V412.564L133.919 411.497H134.88ZM138.809 418.128C138.409 418.128 138.049 418.051 137.73 417.898C137.412 417.743 137.159 417.53 136.969 417.259C136.78 416.989 136.679 416.68 136.666 416.333H137.624C137.648 416.614 137.772 416.845 137.998 417.026C138.224 417.207 138.494 417.298 138.809 417.298C139.06 417.298 139.283 417.24 139.477 417.125C139.673 417.008 139.826 416.847 139.937 416.643C140.05 416.438 140.106 416.205 140.106 415.943C140.106 415.677 140.049 415.44 139.934 415.231C139.819 415.022 139.66 414.858 139.458 414.739C139.257 414.62 139.027 414.559 138.768 414.557C138.57 414.557 138.371 414.591 138.17 414.659C137.97 414.727 137.808 414.817 137.685 414.927L136.781 414.793L137.148 411.497H140.745V412.343H137.969L137.762 414.174H137.8C137.928 414.05 138.097 413.947 138.308 413.864C138.521 413.781 138.749 413.739 138.991 413.739C139.389 413.739 139.744 413.834 140.055 414.024C140.368 414.213 140.614 414.472 140.793 414.8C140.974 415.126 141.063 415.5 141.061 415.924C141.063 416.348 140.967 416.726 140.774 417.058C140.582 417.39 140.316 417.652 139.975 417.844C139.637 418.033 139.248 418.128 138.809 418.128Z" fill="#9CA3AF"/>
|
||||||
|
<path d="M170.789 411.497V418.039H169.799V412.487H169.76L168.195 413.509V412.564L169.827 411.497H170.789ZM174.842 418.128C174.55 418.124 174.263 418.071 173.98 417.968C173.699 417.866 173.443 417.696 173.213 417.457C172.983 417.219 172.799 416.898 172.661 416.496C172.524 416.093 172.456 415.591 172.456 414.988C172.456 414.418 172.513 413.911 172.625 413.468C172.74 413.025 172.905 412.651 173.121 412.347C173.336 412.04 173.595 411.807 173.9 411.647C174.204 411.487 174.546 411.408 174.925 411.408C175.315 411.408 175.661 411.484 175.963 411.638C176.266 411.791 176.511 412.003 176.698 412.273C176.887 412.544 177.008 412.851 177.059 413.196H176.085C176.019 412.924 175.888 412.701 175.692 412.529C175.496 412.356 175.24 412.27 174.925 412.27C174.446 412.27 174.072 412.479 173.804 412.896C173.538 413.313 173.404 413.894 173.402 414.637H173.45C173.562 414.452 173.701 414.294 173.865 414.164C174.031 414.032 174.216 413.931 174.421 413.861C174.627 413.788 174.844 413.752 175.072 413.752C175.451 413.752 175.794 413.845 176.101 414.03C176.409 414.213 176.655 414.466 176.838 414.79C177.022 415.114 177.113 415.484 177.113 415.902C177.113 416.319 177.018 416.697 176.829 417.036C176.642 417.374 176.377 417.643 176.037 417.841C175.696 418.036 175.298 418.132 174.842 418.128ZM174.839 417.298C175.09 417.298 175.315 417.236 175.513 417.112C175.711 416.989 175.867 416.823 175.982 416.614C176.097 416.405 176.155 416.172 176.155 415.914C176.155 415.663 176.099 415.434 175.986 415.228C175.875 415.021 175.722 414.857 175.526 414.736C175.332 414.614 175.11 414.554 174.861 414.554C174.672 414.554 174.496 414.59 174.334 414.662C174.175 414.735 174.034 414.835 173.913 414.963C173.791 415.09 173.695 415.237 173.625 415.403C173.557 415.567 173.523 415.741 173.523 415.924C173.523 416.169 173.579 416.396 173.692 416.604C173.807 416.813 173.964 416.981 174.162 417.109C174.362 417.235 174.588 417.298 174.839 417.298Z" fill="#9CA3AF"/>
|
||||||
|
<path d="M207.022 411.497V418.039H206.032V412.487H205.994L204.429 413.509V412.564L206.061 411.497H207.022ZM209.012 418.039L211.868 412.391V412.343H208.565V411.497H212.89V412.372L210.044 418.039H209.012Z" fill="#9CA3AF"/>
|
||||||
|
<path d="M242.764 411.497V418.039H241.773V412.487H241.735L240.17 413.509V412.564L241.802 411.497H242.764ZM246.743 418.128C246.286 418.128 245.881 418.049 245.53 417.892C245.18 417.734 244.907 417.517 244.709 417.24C244.511 416.963 244.413 416.648 244.415 416.295C244.413 416.018 244.469 415.763 244.584 415.531C244.701 415.297 244.86 415.102 245.06 414.947C245.26 414.789 245.484 414.689 245.731 414.646V414.608C245.405 414.529 245.144 414.355 244.948 414.084C244.752 413.814 244.656 413.503 244.658 413.152C244.656 412.817 244.744 412.519 244.923 412.257C245.104 411.993 245.352 411.786 245.667 411.634C245.982 411.483 246.341 411.408 246.743 411.408C247.142 411.408 247.497 411.484 247.81 411.638C248.125 411.789 248.374 411.996 248.555 412.26C248.736 412.522 248.827 412.819 248.829 413.152C248.827 413.503 248.727 413.814 248.529 414.084C248.331 414.355 248.073 414.529 247.756 414.608V414.646C248.001 414.689 248.221 414.789 248.417 414.947C248.615 415.102 248.773 415.297 248.89 415.531C249.009 415.763 249.07 416.018 249.072 416.295C249.07 416.648 248.97 416.963 248.772 417.24C248.574 417.517 248.299 417.734 247.948 417.892C247.598 418.049 247.197 418.128 246.743 418.128ZM246.743 417.32C247.014 417.32 247.248 417.275 247.446 417.186C247.644 417.094 247.798 416.967 247.906 416.806C248.015 416.642 248.07 416.45 248.072 416.231C248.07 416.003 248.01 415.802 247.893 415.627C247.778 415.452 247.622 415.315 247.424 415.215C247.226 415.115 246.999 415.065 246.743 415.065C246.486 415.065 246.257 415.115 246.057 415.215C245.857 415.315 245.699 415.452 245.584 415.627C245.469 415.802 245.413 416.003 245.415 416.231C245.413 416.45 245.465 416.642 245.571 416.806C245.68 416.967 245.834 417.094 246.034 417.186C246.235 417.275 246.471 417.32 246.743 417.32ZM246.743 414.276C246.961 414.276 247.153 414.232 247.322 414.145C247.49 414.058 247.622 413.936 247.718 413.781C247.816 413.625 247.866 413.443 247.868 413.235C247.866 413.03 247.817 412.851 247.721 412.698C247.627 412.545 247.496 412.426 247.328 412.343C247.16 412.258 246.965 412.216 246.743 412.216C246.518 412.216 246.32 412.258 246.149 412.343C245.981 412.426 245.85 412.545 245.757 412.698C245.663 412.851 245.617 413.03 245.619 413.235C245.617 413.443 245.664 413.625 245.76 413.781C245.856 413.936 245.988 414.058 246.156 414.145C246.326 414.232 246.522 414.276 246.743 414.276Z" fill="#9CA3AF"/>
|
||||||
|
<path d="M26.8743 447.476V454.017H25.8841V448.466H25.8458L24.2807 449.488V448.542L25.9129 447.476H26.8743ZM30.8191 447.386C31.1108 447.388 31.3983 447.441 31.6815 447.546C31.9647 447.65 32.2202 447.82 32.4481 448.057C32.678 448.293 32.8612 448.613 32.9974 449.015C33.1359 449.415 33.2061 449.914 33.2083 450.51C33.2083 451.083 33.1508 451.593 33.0358 452.04C32.9208 452.485 32.7558 452.861 32.5407 453.167C32.3277 453.474 32.069 453.707 31.7645 453.867C31.46 454.027 31.1172 454.107 30.736 454.107C30.3463 454.107 30.0003 454.03 29.6979 453.877C29.3955 453.723 29.1496 453.511 28.9601 453.241C28.7706 452.968 28.6524 452.655 28.6055 452.302H29.5797C29.6436 452.583 29.7735 452.811 29.9694 452.985C30.1674 453.158 30.423 453.244 30.736 453.244C31.2151 453.244 31.5888 453.035 31.8571 452.618C32.1254 452.199 32.2607 451.613 32.2628 450.861H32.2117C32.101 451.044 31.9625 451.202 31.7965 451.334C31.6325 451.466 31.4483 451.568 31.2439 451.641C31.0394 451.713 30.8212 451.749 30.5891 451.749C30.2122 451.749 29.8693 451.657 29.5606 451.471C29.2518 451.286 29.0059 451.032 28.8227 450.708C28.6396 450.384 28.548 450.015 28.548 449.6C28.548 449.187 28.6417 448.812 28.8291 448.475C29.0186 448.139 29.2827 447.873 29.6213 447.677C29.962 447.479 30.3612 447.382 30.8191 447.386ZM30.8222 448.217C30.5731 448.217 30.3484 448.278 30.1483 448.402C29.9502 448.523 29.7937 448.688 29.6787 448.897C29.5638 449.103 29.5063 449.333 29.5063 449.587C29.5063 449.84 29.5616 450.07 29.6724 450.277C29.7852 450.481 29.9385 450.644 30.1323 450.765C30.3282 450.885 30.5518 450.944 30.8031 450.944C30.9905 450.944 31.1651 450.908 31.3269 450.836C31.4888 450.763 31.6304 450.663 31.7517 450.535C31.8731 450.406 31.9679 450.259 32.036 450.095C32.1042 449.931 32.1382 449.758 32.1382 449.577C32.1382 449.337 32.0807 449.113 31.9657 448.906C31.8529 448.7 31.6974 448.534 31.4994 448.408C31.3014 448.28 31.0756 448.217 30.8222 448.217Z" fill="#9CA3AF"/>
|
||||||
|
<rect x="48.2671" y="434.818" width="33.4087" height="33.4087" rx="2.5699" fill="#E5E7EB"/>
|
||||||
|
<path d="M59.9395 454.023V453.307L62.153 451.014C62.3894 450.765 62.5842 450.547 62.7375 450.359C62.893 450.17 63.009 449.99 63.0857 449.819C63.1624 449.649 63.2007 449.468 63.2007 449.276C63.2007 449.059 63.1496 448.872 63.0474 448.714C62.9452 448.555 62.8057 448.432 62.6289 448.347C62.4522 448.26 62.2531 448.216 62.0316 448.216C61.7974 448.216 61.593 448.264 61.4184 448.36C61.2438 448.456 61.1096 448.591 61.0159 448.765C60.9222 448.94 60.8754 449.144 60.8754 449.379H59.9331C59.9331 448.98 60.0247 448.632 60.2078 448.334C60.3909 448.036 60.6422 447.805 60.9616 447.641C61.281 447.475 61.6441 447.392 62.0508 447.392C62.4618 447.392 62.8238 447.474 63.1368 447.638C63.452 447.8 63.6979 448.021 63.8747 448.302C64.0514 448.581 64.1398 448.896 64.1398 449.248C64.1398 449.49 64.094 449.728 64.0024 449.96C63.913 450.192 63.7565 450.451 63.5329 450.736C63.3093 451.019 62.9984 451.363 62.6002 451.768L61.3002 453.129V453.177H64.2452V454.023H59.9395ZM67.7332 454.132C67.2285 454.129 66.7973 453.996 66.4395 453.732C66.0818 453.468 65.8082 453.084 65.6186 452.579C65.4291 452.075 65.3344 451.467 65.3344 450.755C65.3344 450.046 65.4291 449.44 65.6186 448.938C65.8103 448.435 66.085 448.052 66.4427 447.788C66.8026 447.524 67.2327 447.392 67.7332 447.392C68.2336 447.392 68.6626 447.525 69.0204 447.791C69.3781 448.055 69.6518 448.439 69.8413 448.941C70.0329 449.442 70.1287 450.046 70.1287 450.755C70.1287 451.469 70.034 452.078 69.8445 452.582C69.655 453.085 69.3813 453.469 69.0236 453.735C68.6658 454 68.2357 454.132 67.7332 454.132ZM67.7332 453.279C68.1761 453.279 68.5221 453.063 68.7712 452.63C69.0225 452.198 69.1482 451.573 69.1482 450.755C69.1482 450.212 69.0907 449.753 68.9757 449.379C68.8628 449.002 68.6999 448.716 68.487 448.523C68.2762 448.327 68.0249 448.229 67.7332 448.229C67.2924 448.229 66.9463 448.446 66.6951 448.88C66.4438 449.315 66.3171 449.94 66.315 450.755C66.315 451.3 66.3714 451.762 66.4843 452.138C66.5992 452.513 66.7621 452.797 66.973 452.991C67.1838 453.183 67.4372 453.279 67.7332 453.279Z" fill="#101010"/>
|
||||||
|
<circle cx="64.9714" cy="461.802" r="1.28495" fill="#111827"/>
|
||||||
|
<rect x="84.2457" y="434.818" width="33.4087" height="33.4087" rx="2.5699" fill="#E5E7EB"/>
|
||||||
|
<path d="M96.6955 454.023V453.307L98.909 451.014C99.1454 450.765 99.3402 450.547 99.4935 450.359C99.649 450.17 99.765 449.99 99.8417 449.819C99.9184 449.649 99.9567 449.468 99.9567 449.276C99.9567 449.059 99.9056 448.872 99.8034 448.714C99.7012 448.555 99.5617 448.432 99.3849 448.347C99.2082 448.26 99.0091 448.216 98.7876 448.216C98.5534 448.216 98.349 448.264 98.1744 448.36C97.9998 448.456 97.8656 448.591 97.7719 448.765C97.6782 448.94 97.6314 449.144 97.6314 449.379H96.6891C96.6891 448.98 96.7807 448.632 96.9638 448.334C97.1469 448.036 97.3982 447.805 97.7176 447.641C98.037 447.475 98.4001 447.392 98.8068 447.392C99.2178 447.392 99.5798 447.474 99.8928 447.638C100.208 447.8 100.454 448.021 100.631 448.302C100.807 448.581 100.896 448.896 100.896 449.248C100.896 449.49 100.85 449.728 100.758 449.96C100.669 450.192 100.512 450.451 100.289 450.736C100.065 451.019 99.7544 451.363 99.3562 451.768L98.0562 453.129V453.177H101.001V454.023H96.6955ZM104.694 447.481V454.023H103.703V448.472H103.665L102.1 449.494V448.548L103.732 447.481H104.694Z" fill="#101010"/>
|
||||||
|
<rect x="120.224" y="434.818" width="33.4087" height="33.4087" rx="2.5699" fill="#E5E7EB"/>
|
||||||
|
<path d="M132.042 454.023V453.307L134.255 451.014C134.492 450.765 134.686 450.547 134.84 450.359C134.995 450.17 135.111 449.99 135.188 449.819C135.265 449.649 135.303 449.468 135.303 449.276C135.303 449.059 135.252 448.872 135.15 448.714C135.047 448.555 134.908 448.432 134.731 448.347C134.554 448.26 134.355 448.216 134.134 448.216C133.9 448.216 133.695 448.264 133.521 448.36C133.346 448.456 133.212 448.591 133.118 448.765C133.024 448.94 132.978 449.144 132.978 449.379H132.035C132.035 448.98 132.127 448.632 132.31 448.334C132.493 448.036 132.744 447.805 133.064 447.641C133.383 447.475 133.746 447.392 134.153 447.392C134.564 447.392 134.926 447.474 135.239 447.638C135.554 447.8 135.8 448.021 135.977 448.302C136.154 448.581 136.242 448.896 136.242 449.248C136.242 449.49 136.196 449.728 136.105 449.96C136.015 450.192 135.859 450.451 135.635 450.736C135.411 451.019 135.101 451.363 134.702 451.768L133.402 453.129V453.177H136.347V454.023H132.042ZM137.558 454.023V453.307L139.771 451.014C140.008 450.765 140.203 450.547 140.356 450.359C140.511 450.17 140.627 449.99 140.704 449.819C140.781 449.649 140.819 449.468 140.819 449.276C140.819 449.059 140.768 448.872 140.666 448.714C140.564 448.555 140.424 448.432 140.247 448.347C140.071 448.26 139.872 448.216 139.65 448.216C139.416 448.216 139.211 448.264 139.037 448.36C138.862 448.456 138.728 448.591 138.634 448.765C138.541 448.94 138.494 449.144 138.494 449.379H137.552C137.552 448.98 137.643 448.632 137.826 448.334C138.009 448.036 138.261 447.805 138.58 447.641C138.899 447.475 139.263 447.392 139.669 447.392C140.08 447.392 140.442 447.474 140.755 447.638C141.07 447.8 141.316 448.021 141.493 448.302C141.67 448.581 141.758 448.896 141.758 449.248C141.758 449.49 141.712 449.728 141.621 449.96C141.531 450.192 141.375 450.451 141.151 450.736C140.928 451.019 140.617 451.363 140.219 451.768L138.919 453.129V453.177H141.864V454.023H137.558Z" fill="#101010"/>
|
||||||
|
<rect x="156.203" y="434.818" width="33.4087" height="33.4087" rx="2.5699" fill="#E5E7EB"/>
|
||||||
|
<path d="M167.88 454.023V453.307L170.093 451.014C170.33 450.765 170.524 450.547 170.678 450.359C170.833 450.17 170.949 449.99 171.026 449.819C171.103 449.649 171.141 449.468 171.141 449.276C171.141 449.059 171.09 448.872 170.988 448.714C170.885 448.555 170.746 448.432 170.569 448.347C170.392 448.26 170.193 448.216 169.972 448.216C169.738 448.216 169.533 448.264 169.359 448.36C169.184 448.456 169.05 448.591 168.956 448.765C168.862 448.94 168.816 449.144 168.816 449.379H167.873C167.873 448.98 167.965 448.632 168.148 448.334C168.331 448.036 168.582 447.805 168.902 447.641C169.221 447.475 169.584 447.392 169.991 447.392C170.402 447.392 170.764 447.474 171.077 447.638C171.392 447.8 171.638 448.021 171.815 448.302C171.992 448.581 172.08 448.896 172.08 449.248C172.08 449.49 172.034 449.728 171.943 449.96C171.853 450.192 171.697 450.451 171.473 450.736C171.25 451.019 170.939 451.363 170.54 451.768L169.24 453.129V453.177H172.185V454.023H167.88ZM175.673 454.112C175.235 454.112 174.843 454.037 174.498 453.886C174.155 453.734 173.884 453.525 173.683 453.256C173.485 452.986 173.379 452.673 173.364 452.317H174.367C174.38 452.511 174.445 452.679 174.562 452.822C174.681 452.962 174.837 453.071 175.028 453.148C175.22 453.224 175.433 453.263 175.667 453.263C175.925 453.263 176.153 453.218 176.351 453.129C176.551 453.039 176.707 452.915 176.82 452.755C176.933 452.593 176.989 452.407 176.989 452.196C176.989 451.977 176.933 451.784 176.82 451.618C176.709 451.45 176.546 451.318 176.331 451.222C176.118 451.126 175.861 451.078 175.558 451.078H175.006V450.273H175.558C175.801 450.273 176.014 450.229 176.197 450.142C176.383 450.055 176.527 449.933 176.632 449.778C176.736 449.62 176.788 449.436 176.788 449.225C176.788 449.023 176.742 448.847 176.651 448.698C176.561 448.547 176.434 448.429 176.268 448.344C176.104 448.259 175.91 448.216 175.686 448.216C175.473 448.216 175.274 448.255 175.089 448.334C174.906 448.411 174.757 448.522 174.642 448.666C174.527 448.809 174.465 448.98 174.456 449.181H173.501C173.512 448.827 173.616 448.516 173.814 448.248C174.015 447.98 174.279 447.77 174.607 447.619C174.935 447.468 175.299 447.392 175.699 447.392C176.118 447.392 176.48 447.474 176.785 447.638C177.092 447.8 177.328 448.016 177.494 448.286C177.662 448.557 177.745 448.853 177.743 449.174C177.745 449.541 177.643 449.851 177.437 450.107C177.232 450.362 176.96 450.534 176.619 450.621V450.672C177.053 450.738 177.39 450.911 177.628 451.19C177.869 451.469 177.988 451.815 177.986 452.228C177.988 452.588 177.888 452.91 177.686 453.196C177.486 453.481 177.212 453.706 176.865 453.87C176.518 454.031 176.121 454.112 175.673 454.112Z" fill="#101010"/>
|
||||||
|
<path d="M203.64 454.017V453.302L205.854 451.008C206.09 450.759 206.285 450.541 206.438 450.353C206.593 450.164 206.71 449.984 206.786 449.814C206.863 449.643 206.901 449.462 206.901 449.271C206.901 449.053 206.85 448.866 206.748 448.708C206.646 448.549 206.506 448.426 206.329 448.341C206.153 448.254 205.954 448.21 205.732 448.21C205.498 448.21 205.293 448.258 205.119 448.354C204.944 448.45 204.81 448.585 204.716 448.76C204.623 448.934 204.576 449.139 204.576 449.373H203.634C203.634 448.975 203.725 448.626 203.908 448.328C204.091 448.03 204.343 447.799 204.662 447.635C204.982 447.469 205.345 447.386 205.751 447.386C206.162 447.386 206.524 447.468 206.837 447.632C207.152 447.794 207.398 448.015 207.575 448.296C207.752 448.575 207.84 448.891 207.84 449.242C207.84 449.485 207.794 449.722 207.703 449.954C207.613 450.186 207.457 450.445 207.233 450.73C207.01 451.014 206.699 451.357 206.301 451.762L205.001 453.123V453.171H207.946V454.017H203.64ZM208.878 452.739V451.941L211.705 447.476H212.334V448.651H211.935L209.913 451.851V451.903H213.788V452.739H208.878ZM211.98 454.017V452.497L211.986 452.133V447.476H212.922V454.017H211.98Z" fill="#9CA3AF"/>
|
||||||
|
<path d="M239.702 454.017V453.302L241.916 451.008C242.152 450.759 242.347 450.541 242.5 450.353C242.656 450.164 242.772 449.984 242.848 449.814C242.925 449.643 242.963 449.462 242.963 449.271C242.963 449.053 242.912 448.866 242.81 448.708C242.708 448.549 242.568 448.426 242.391 448.341C242.215 448.254 242.016 448.21 241.794 448.21C241.56 448.21 241.356 448.258 241.181 448.354C241.006 448.45 240.872 448.585 240.778 448.76C240.685 448.934 240.638 449.139 240.638 449.373H239.696C239.696 448.975 239.787 448.626 239.97 448.328C240.153 448.03 240.405 447.799 240.724 447.635C241.044 447.469 241.407 447.386 241.813 447.386C242.224 447.386 242.586 447.468 242.899 447.632C243.215 447.794 243.46 448.015 243.637 448.296C243.814 448.575 243.902 448.891 243.902 449.242C243.902 449.485 243.857 449.722 243.765 449.954C243.676 450.186 243.519 450.445 243.295 450.73C243.072 451.014 242.761 451.357 242.363 451.762L241.063 453.123V453.171H244.008V454.017H239.702ZM247.378 454.107C246.977 454.107 246.617 454.03 246.298 453.877C245.981 453.721 245.727 453.508 245.538 453.238C245.348 452.967 245.247 452.659 245.234 452.311H246.193C246.216 452.593 246.34 452.824 246.566 453.005C246.792 453.186 247.062 453.276 247.378 453.276C247.629 453.276 247.851 453.219 248.045 453.104C248.241 452.986 248.394 452.826 248.505 452.621C248.618 452.417 248.674 452.184 248.674 451.922C248.674 451.656 248.617 451.418 248.502 451.209C248.387 451.001 248.228 450.837 248.026 450.718C247.826 450.598 247.596 450.538 247.336 450.535C247.138 450.535 246.939 450.57 246.739 450.638C246.539 450.706 246.377 450.795 246.253 450.906L245.349 450.772L245.717 447.476H249.313V448.322H246.537L246.33 450.152H246.368C246.496 450.029 246.665 449.925 246.876 449.842C247.089 449.759 247.317 449.718 247.56 449.718C247.958 449.718 248.312 449.813 248.623 450.002C248.936 450.192 249.182 450.45 249.361 450.778C249.542 451.104 249.632 451.479 249.629 451.903C249.632 452.326 249.536 452.704 249.342 453.036C249.15 453.369 248.884 453.631 248.543 453.822C248.205 454.012 247.816 454.107 247.378 454.107Z" fill="#9CA3AF"/>
|
||||||
|
<path d="M23.76 489.996V489.281L25.9736 486.987C26.2099 486.738 26.4048 486.52 26.5581 486.332C26.7135 486.143 26.8296 485.963 26.9062 485.793C26.9829 485.622 27.0212 485.441 27.0212 485.25C27.0212 485.032 26.9701 484.845 26.8679 484.687C26.7657 484.528 26.6262 484.405 26.4495 484.32C26.2727 484.233 26.0736 484.189 25.8522 484.189C25.618 484.189 25.4135 484.237 25.2389 484.333C25.0643 484.429 24.9301 484.564 24.8365 484.739C24.7428 484.913 24.6959 485.118 24.6959 485.352H23.7536C23.7536 484.954 23.8452 484.605 24.0283 484.307C24.2115 484.009 24.4627 483.778 24.7822 483.614C25.1016 483.448 25.4646 483.365 25.8714 483.365C26.2823 483.365 26.6443 483.447 26.9574 483.611C27.2725 483.773 27.5185 483.994 27.6952 484.275C27.8719 484.554 27.9603 484.87 27.9603 485.221C27.9603 485.464 27.9145 485.701 27.823 485.933C27.7335 486.165 27.577 486.424 27.3534 486.709C27.1298 486.993 26.8189 487.336 26.4207 487.741L25.1207 489.102V489.15H28.0657V489.996H23.76ZM31.5601 490.086C31.2684 490.081 30.9809 490.028 30.6977 489.926C30.4166 489.824 30.1611 489.653 29.9311 489.415C29.7011 489.176 29.5169 488.856 29.3785 488.453C29.2422 488.051 29.1741 487.548 29.1741 486.946C29.1741 486.375 29.2305 485.868 29.3434 485.425C29.4584 484.982 29.6234 484.609 29.8385 484.304C30.0535 483.998 30.3133 483.764 30.6178 483.605C30.9223 483.445 31.2641 483.365 31.6431 483.365C32.0328 483.365 32.3788 483.442 32.6812 483.595C32.9836 483.748 33.2285 483.96 33.4159 484.231C33.6054 484.501 33.7257 484.809 33.7768 485.154H32.8026C32.7366 484.881 32.6056 484.659 32.4097 484.486C32.2138 484.314 31.9583 484.228 31.6431 484.228C31.164 484.228 30.7903 484.436 30.522 484.854C30.2558 485.271 30.1217 485.851 30.1195 486.594H30.1674C30.2803 486.409 30.4187 486.252 30.5827 486.122C30.7488 485.99 30.934 485.888 31.1385 485.818C31.345 485.746 31.5622 485.71 31.7901 485.71C32.1691 485.71 32.5119 485.802 32.8186 485.987C33.1273 486.171 33.3733 486.424 33.5564 486.748C33.7395 487.071 33.8311 487.442 33.8311 487.859C33.8311 488.277 33.7364 488.655 33.5468 488.993C33.3594 489.332 33.0954 489.6 32.7547 489.798C32.414 489.994 32.0158 490.09 31.5601 490.086ZM31.5569 489.255C31.8082 489.255 32.0328 489.193 32.2309 489.07C32.4289 488.946 32.5854 488.78 32.7004 488.572C32.8154 488.363 32.8729 488.13 32.8729 487.872C32.8729 487.621 32.8164 487.392 32.7036 487.185C32.5929 486.979 32.4395 486.815 32.2436 486.693C32.0499 486.572 31.8284 486.511 31.5793 486.511C31.3897 486.511 31.2141 486.548 31.0522 486.62C30.8925 486.692 30.752 486.792 30.6306 486.92C30.5092 487.048 30.4134 487.195 30.3431 487.361C30.275 487.525 30.2409 487.698 30.2409 487.882C30.2409 488.126 30.2973 488.353 30.4102 488.562C30.5252 488.771 30.6817 488.939 30.8797 489.067C31.0799 489.192 31.3056 489.255 31.5569 489.255Z" fill="#9CA3AF"/>
|
||||||
|
<rect x="48.2671" y="470.797" width="33.4087" height="33.4087" rx="2.5699" fill="#E5E7EB"/>
|
||||||
|
<path d="M60.2381 490.001V489.286L62.4517 486.993C62.688 486.743 62.8829 486.525 63.0362 486.338C63.1916 486.148 63.3077 485.968 63.3844 485.798C63.461 485.628 63.4993 485.447 63.4993 485.255C63.4993 485.038 63.4482 484.85 63.346 484.693C63.2438 484.533 63.1043 484.411 62.9276 484.326C62.7509 484.238 62.5518 484.195 62.3303 484.195C62.0961 484.195 61.8916 484.242 61.717 484.338C61.5424 484.434 61.4083 484.569 61.3146 484.744C61.2209 484.919 61.174 485.123 61.174 485.357H60.2318C60.2318 484.959 60.3233 484.611 60.5064 484.313C60.6896 484.015 60.9408 483.784 61.2603 483.62C61.5797 483.454 61.9427 483.37 62.3495 483.37C62.7604 483.37 63.1224 483.452 63.4355 483.616C63.7506 483.778 63.9966 484 64.1733 484.281C64.35 484.56 64.4384 484.875 64.4384 485.226C64.4384 485.469 64.3926 485.706 64.3011 485.939C64.2116 486.171 64.0551 486.429 63.8315 486.715C63.6079 486.998 63.297 487.342 62.8988 487.746L61.5988 489.107V489.155H64.5438V490.001H60.2381ZM65.9748 490.001L68.8303 484.354V484.306H65.5276V483.46H69.8525V484.335L67.0065 490.001H65.9748Z" fill="#101010"/>
|
||||||
|
<rect x="84.2457" y="470.797" width="33.4087" height="33.4087" rx="2.5699" fill="#E5E7EB"/>
|
||||||
|
<path d="M95.9796 490.001V489.286L98.1931 486.993C98.4295 486.743 98.6243 486.525 98.7777 486.338C98.9331 486.148 99.0492 485.968 99.1258 485.798C99.2025 485.628 99.2408 485.447 99.2408 485.255C99.2408 485.038 99.1897 484.85 99.0875 484.693C98.9853 484.533 98.8458 484.411 98.6691 484.326C98.4923 484.238 98.2932 484.195 98.0718 484.195C97.8375 484.195 97.6331 484.242 97.4585 484.338C97.2839 484.434 97.1497 484.569 97.056 484.744C96.9623 484.919 96.9155 485.123 96.9155 485.357H95.9732C95.9732 484.959 96.0648 484.611 96.2479 484.313C96.431 484.015 96.6823 483.784 97.0017 483.62C97.3211 483.454 97.6842 483.37 98.0909 483.37C98.5019 483.37 98.8639 483.452 99.1769 483.616C99.4921 483.778 99.738 484 99.9148 484.281C100.092 484.56 100.18 484.875 100.18 485.226C100.18 485.469 100.134 485.706 100.043 485.939C99.9531 486.171 99.7966 486.429 99.573 486.715C99.3494 486.998 99.0385 487.342 98.6403 487.746L97.3403 489.107V489.155H100.285V490.001H95.9796ZM103.706 490.091C103.248 490.091 102.844 490.012 102.492 489.855C102.143 489.697 101.87 489.48 101.672 489.203C101.473 488.926 101.376 488.611 101.378 488.257C101.376 487.981 101.432 487.726 101.547 487.494C101.664 487.26 101.823 487.065 102.023 486.91C102.223 486.752 102.447 486.652 102.694 486.609V486.571C102.368 486.492 102.107 486.318 101.911 486.047C101.715 485.777 101.618 485.466 101.62 485.114C101.618 484.78 101.707 484.482 101.886 484.22C102.067 483.956 102.315 483.748 102.63 483.597C102.945 483.446 103.304 483.37 103.706 483.37C104.104 483.37 104.46 483.447 104.773 483.6C105.088 483.752 105.336 483.959 105.517 484.223C105.698 484.485 105.79 484.782 105.792 485.114C105.79 485.466 105.69 485.777 105.492 486.047C105.294 486.318 105.036 486.492 104.719 486.571V486.609C104.964 486.652 105.184 486.752 105.38 486.91C105.578 487.065 105.736 487.26 105.853 487.494C105.972 487.726 106.033 487.981 106.035 488.257C106.033 488.611 105.932 488.926 105.734 489.203C105.536 489.48 105.262 489.697 104.91 489.855C104.561 490.012 104.16 490.091 103.706 490.091ZM103.706 489.283C103.977 489.283 104.211 489.238 104.409 489.149C104.607 489.057 104.76 488.93 104.869 488.769C104.977 488.605 105.033 488.413 105.035 488.194C105.033 487.966 104.973 487.765 104.856 487.59C104.741 487.415 104.585 487.278 104.387 487.178C104.189 487.078 103.962 487.028 103.706 487.028C103.449 487.028 103.22 487.078 103.019 487.178C102.819 487.278 102.662 487.415 102.547 487.59C102.432 487.765 102.375 487.966 102.377 488.194C102.375 488.413 102.427 488.605 102.534 488.769C102.643 488.93 102.797 489.057 102.997 489.149C103.197 489.238 103.434 489.283 103.706 489.283ZM103.706 486.239C103.923 486.239 104.116 486.195 104.284 486.108C104.453 486.021 104.585 485.899 104.68 485.744C104.778 485.588 104.828 485.406 104.831 485.198C104.828 484.993 104.779 484.814 104.684 484.661C104.59 484.508 104.459 484.389 104.291 484.306C104.122 484.221 103.928 484.179 103.706 484.179C103.48 484.179 103.282 484.221 103.112 484.306C102.944 484.389 102.813 484.508 102.719 484.661C102.626 484.814 102.58 484.993 102.582 485.198C102.58 485.406 102.627 485.588 102.722 485.744C102.818 485.899 102.95 486.021 103.118 486.108C103.289 486.195 103.485 486.239 103.706 486.239Z" fill="#101010"/>
|
||||||
|
<rect x="120.224" y="470.797" width="33.4087" height="33.4087" rx="2.5699" fill="#E5E7EB"/>
|
||||||
|
<path d="M131.941 490.001V489.286L134.154 486.993C134.391 486.743 134.585 486.525 134.739 486.338C134.894 486.148 135.01 485.968 135.087 485.798C135.164 485.628 135.202 485.447 135.202 485.255C135.202 485.038 135.151 484.85 135.049 484.693C134.946 484.533 134.807 484.411 134.63 484.326C134.453 484.238 134.254 484.195 134.033 484.195C133.799 484.195 133.594 484.242 133.42 484.338C133.245 484.434 133.111 484.569 133.017 484.744C132.923 484.919 132.877 485.123 132.877 485.357H131.934C131.934 484.959 132.026 484.611 132.209 484.313C132.392 484.015 132.643 483.784 132.963 483.62C133.282 483.454 133.645 483.37 134.052 483.37C134.463 483.37 134.825 483.452 135.138 483.616C135.453 483.778 135.699 484 135.876 484.281C136.053 484.56 136.141 484.875 136.141 485.226C136.141 485.469 136.095 485.706 136.004 485.939C135.914 486.171 135.758 486.429 135.534 486.715C135.31 486.998 135 487.342 134.601 487.746L133.301 489.107V489.155H136.246V490.001H131.941ZM139.632 483.37C139.924 483.373 140.211 483.426 140.495 483.53C140.778 483.635 141.033 483.805 141.261 484.041C141.491 484.278 141.674 484.597 141.811 484.999C141.949 485.4 142.019 485.898 142.021 486.494C142.021 487.067 141.964 487.577 141.849 488.024C141.734 488.469 141.569 488.845 141.354 489.152C141.141 489.458 140.882 489.692 140.578 489.851C140.273 490.011 139.93 490.091 139.549 490.091C139.159 490.091 138.813 490.014 138.511 489.861C138.209 489.708 137.963 489.496 137.773 489.225C137.584 488.953 137.465 488.64 137.419 488.286H138.393C138.457 488.567 138.587 488.795 138.782 488.97C138.981 489.142 139.236 489.228 139.549 489.228C140.028 489.228 140.402 489.02 140.67 488.602C140.939 488.183 141.074 487.597 141.076 486.846H141.025C140.914 487.029 140.776 487.186 140.61 487.318C140.446 487.45 140.261 487.553 140.057 487.625C139.853 487.697 139.634 487.734 139.402 487.734C139.025 487.734 138.682 487.641 138.374 487.456C138.065 487.27 137.819 487.016 137.636 486.692C137.453 486.369 137.361 485.999 137.361 485.584C137.361 485.171 137.455 484.796 137.642 484.46C137.832 484.123 138.096 483.857 138.434 483.661C138.775 483.463 139.174 483.366 139.632 483.37ZM139.635 484.201C139.386 484.201 139.162 484.263 138.961 484.386C138.763 484.508 138.607 484.673 138.492 484.881C138.377 485.088 138.319 485.318 138.319 485.571C138.319 485.825 138.375 486.055 138.485 486.261C138.598 486.466 138.752 486.628 138.945 486.75C139.141 486.869 139.365 486.929 139.616 486.929C139.804 486.929 139.978 486.893 140.14 486.82C140.302 486.748 140.443 486.648 140.565 486.52C140.686 486.39 140.781 486.243 140.849 486.079C140.917 485.915 140.951 485.743 140.951 485.562C140.951 485.321 140.894 485.097 140.779 484.891C140.666 484.684 140.51 484.518 140.312 484.393C140.114 484.265 139.889 484.201 139.635 484.201Z" fill="#101010"/>
|
||||||
|
<rect x="156.203" y="470.797" width="33.4087" height="33.4087" rx="2.5699" fill="#E5E7EB"/>
|
||||||
|
<path d="M170.012 490.091C169.574 490.091 169.182 490.015 168.837 489.864C168.494 489.713 168.222 489.503 168.022 489.235C167.824 488.964 167.718 488.651 167.703 488.296H168.706C168.719 488.49 168.784 488.658 168.901 488.8C169.02 488.941 169.175 489.05 169.367 489.126C169.559 489.203 169.772 489.241 170.006 489.241C170.264 489.241 170.491 489.197 170.689 489.107C170.89 489.018 171.046 488.893 171.159 488.733C171.272 488.572 171.328 488.385 171.328 488.174C171.328 487.955 171.272 487.762 171.159 487.596C171.048 487.428 170.885 487.296 170.67 487.2C170.457 487.104 170.2 487.056 169.897 487.056H169.345V486.252H169.897C170.14 486.252 170.353 486.208 170.536 486.121C170.721 486.033 170.866 485.912 170.97 485.756C171.075 485.599 171.127 485.415 171.127 485.204C171.127 485.002 171.081 484.826 170.99 484.677C170.9 484.526 170.772 484.407 170.606 484.322C170.442 484.237 170.249 484.195 170.025 484.195C169.812 484.195 169.613 484.234 169.428 484.313C169.245 484.389 169.096 484.5 168.981 484.645C168.866 484.788 168.804 484.959 168.795 485.159H167.84C167.851 484.806 167.955 484.495 168.153 484.226C168.353 483.958 168.617 483.748 168.945 483.597C169.273 483.446 169.637 483.37 170.038 483.37C170.457 483.37 170.819 483.452 171.124 483.616C171.43 483.778 171.667 483.994 171.833 484.265C172.001 484.535 172.084 484.831 172.082 485.153C172.084 485.519 171.982 485.83 171.775 486.085C171.571 486.341 171.298 486.512 170.958 486.6V486.651C171.392 486.717 171.729 486.889 171.967 487.168C172.208 487.447 172.327 487.793 172.325 488.206C172.327 488.566 172.227 488.889 172.025 489.174C171.824 489.46 171.551 489.684 171.204 489.848C170.857 490.01 170.459 490.091 170.012 490.091ZM175.81 490.11C175.305 490.108 174.874 489.975 174.516 489.711C174.158 489.447 173.885 489.062 173.695 488.558C173.506 488.053 173.411 487.445 173.411 486.734C173.411 486.025 173.506 485.419 173.695 484.916C173.887 484.414 174.161 484.031 174.519 483.767C174.879 483.502 175.309 483.37 175.81 483.37C176.31 483.37 176.739 483.504 177.097 483.77C177.455 484.034 177.728 484.417 177.918 484.92C178.109 485.42 178.205 486.025 178.205 486.734C178.205 487.447 178.11 488.056 177.921 488.561C177.731 489.063 177.458 489.448 177.1 489.714C176.742 489.978 176.312 490.11 175.81 490.11ZM175.81 489.257C176.252 489.257 176.599 489.041 176.848 488.609C177.099 488.177 177.225 487.552 177.225 486.734C177.225 486.191 177.167 485.732 177.052 485.357C176.939 484.98 176.776 484.695 176.563 484.501C176.353 484.305 176.101 484.207 175.81 484.207C175.369 484.207 175.023 484.425 174.771 484.859C174.52 485.293 174.394 485.918 174.391 486.734C174.391 487.279 174.448 487.74 174.561 488.117C174.676 488.492 174.839 488.776 175.049 488.97C175.26 489.161 175.514 489.257 175.81 489.257Z" fill="#101010"/>
|
||||||
|
<mask id="path-103-inside-1_9963_6185" fill="white">
|
||||||
|
<path d="M276 1.61523H965V520.615H276V1.61523Z"/>
|
||||||
|
</mask>
|
||||||
|
<path d="M276 1.61523H965V520.615H276V1.61523Z" fill="#F9FAFB"/>
|
||||||
|
<path d="M294.632 21.8041H296.146V27.7268C296.143 28.2697 296.028 28.7373 295.8 29.1294C295.573 29.5187 295.255 29.819 294.846 30.0301C294.44 30.2385 293.967 30.3427 293.427 30.3427C292.933 30.3427 292.489 30.255 292.094 30.0795C291.702 29.9012 291.391 29.638 291.161 29.2898C290.93 28.9415 290.815 28.5083 290.815 27.9901H292.333C292.336 28.2176 292.385 28.4137 292.481 28.5782C292.58 28.7427 292.715 28.8689 292.888 28.9566C293.061 29.0444 293.26 29.0882 293.485 29.0882C293.729 29.0882 293.936 29.0375 294.106 28.9361C294.276 28.8319 294.404 28.6783 294.492 28.4754C294.583 28.2725 294.629 28.023 294.632 27.7268V21.8041ZM301.762 27.5705V23.9099H303.251V30.2275H301.807V29.1047H301.741C301.599 29.4584 301.364 29.7477 301.038 29.9725C300.715 30.1974 300.316 30.3098 299.841 30.3098C299.427 30.3098 299.061 30.2179 298.743 30.0342C298.428 29.8478 298.181 29.5777 298.003 29.224C297.824 28.8675 297.735 28.437 297.735 27.9325V23.9099H299.224V27.7021C299.224 28.1025 299.334 28.4206 299.553 28.6564C299.773 28.8922 300.061 29.0101 300.417 29.0101C300.636 29.0101 300.849 28.9566 301.055 28.8497C301.26 28.7427 301.429 28.5837 301.56 28.3726C301.695 28.1587 301.762 27.8913 301.762 27.5705ZM306.271 26.5258V30.2275H304.782V23.9099H306.205V24.9834H306.279C306.424 24.6297 306.656 24.3487 306.974 24.1403C307.295 23.9319 307.691 23.8277 308.163 23.8277C308.599 23.8277 308.979 23.9209 309.302 24.1074C309.628 24.2938 309.881 24.5639 310.059 24.9176C310.24 25.2713 310.329 25.7005 310.326 26.205V30.2275H308.837V26.4353C308.837 26.0131 308.728 25.6827 308.508 25.4441C308.292 25.2055 307.992 25.0863 307.608 25.0863C307.347 25.0863 307.115 25.1438 306.913 25.259C306.712 25.3714 306.555 25.5346 306.44 25.7485C306.327 25.9623 306.271 26.2215 306.271 26.5258ZM314.696 30.2275V29.1252L317.621 26.2585C317.9 25.976 318.134 25.7252 318.32 25.5058C318.506 25.2864 318.646 25.0739 318.74 24.8683C318.833 24.6626 318.879 24.4433 318.879 24.2102C318.879 23.9442 318.819 23.7166 318.698 23.5274C318.578 23.3355 318.412 23.1874 318.201 23.0832C317.99 22.979 317.75 22.9269 317.481 22.9269C317.204 22.9269 316.961 22.9845 316.753 23.0997C316.545 23.2121 316.383 23.3725 316.268 23.5809C316.155 23.7893 316.099 24.0374 316.099 24.3254H314.647C314.647 23.7907 314.769 23.3259 315.013 22.931C315.257 22.5362 315.593 22.2305 316.021 22.0138C316.451 21.7972 316.945 21.6889 317.501 21.6889C318.066 21.6889 318.563 21.7945 318.99 22.0056C319.418 22.2167 319.75 22.506 319.986 22.8735C320.224 23.2409 320.344 23.6604 320.344 24.132C320.344 24.4474 320.283 24.7572 320.163 25.0616C320.042 25.3659 319.829 25.7032 319.525 26.0734C319.223 26.4436 318.8 26.8919 318.254 27.4183L316.802 28.8949V28.9525H320.471V30.2275H314.696ZM325.004 30.3879C324.326 30.3879 323.745 30.2166 323.26 29.8738C322.777 29.5283 322.406 29.0307 322.145 28.3808C321.887 27.7282 321.758 26.9426 321.758 26.024C321.761 25.1055 321.891 24.324 322.149 23.6796C322.41 23.0325 322.781 22.5389 323.264 22.1989C323.749 21.8589 324.329 21.6889 325.004 21.6889C325.678 21.6889 326.258 21.8589 326.743 22.1989C327.229 22.5389 327.6 23.0325 327.858 23.6796C328.119 24.3267 328.249 25.1082 328.249 26.024C328.249 26.9453 328.119 27.7323 327.858 28.3849C327.6 29.0348 327.229 29.5311 326.743 29.8738C326.261 30.2166 325.681 30.3879 325.004 30.3879ZM325.004 29.1006C325.53 29.1006 325.946 28.8415 326.25 28.3232C326.557 27.8022 326.711 27.0358 326.711 26.024C326.711 25.355 326.641 24.7929 326.501 24.3377C326.361 23.8825 326.164 23.5398 325.909 23.3094C325.653 23.0764 325.352 22.9598 325.004 22.9598C324.48 22.9598 324.066 23.2203 323.762 23.7413C323.457 24.2595 323.304 25.0205 323.301 26.024C323.298 26.6958 323.365 27.2607 323.502 27.7186C323.642 28.1765 323.84 28.522 324.095 28.7551C324.35 28.9854 324.653 29.1006 325.004 29.1006ZM331.052 29.0759L330.998 29.5283C330.96 29.8738 330.891 30.2248 330.793 30.5813C330.697 30.9405 330.595 31.2709 330.488 31.5725C330.381 31.8741 330.295 32.1113 330.229 32.284H329.226C329.264 32.1168 329.316 31.8892 329.382 31.6013C329.45 31.3134 329.516 30.9898 329.579 30.6306C329.642 30.2714 329.685 29.9067 329.707 29.5366L329.736 29.0759H331.052Z" fill="#111827"/>
|
||||||
|
<path d="M335.316 30.2275V29.1252L338.24 26.2585C338.52 25.976 338.753 25.7252 338.94 25.5058C339.126 25.2864 339.266 25.0739 339.359 24.8683C339.452 24.6626 339.499 24.4433 339.499 24.2102C339.499 23.9442 339.439 23.7166 339.318 23.5274C339.197 23.3355 339.031 23.1874 338.82 23.0832C338.609 22.979 338.369 22.9269 338.101 22.9269C337.824 22.9269 337.581 22.9845 337.373 23.0997C337.164 23.2121 337.002 23.3725 336.887 23.5809C336.775 23.7893 336.719 24.0374 336.719 24.3254H335.267C335.267 23.7907 335.389 23.3259 335.633 22.931C335.877 22.5362 336.213 22.2305 336.64 22.0138C337.071 21.7972 337.564 21.6889 338.121 21.6889C338.686 21.6889 339.182 21.7945 339.61 22.0056C340.038 22.2167 340.37 22.506 340.605 22.8735C340.844 23.2409 340.963 23.6604 340.963 24.132C340.963 24.4474 340.903 24.7572 340.782 25.0616C340.662 25.3659 340.449 25.7032 340.145 26.0734C339.843 26.4436 339.419 26.8919 338.874 27.4183L337.422 28.8949V28.9525H341.091V30.2275H335.316ZM345.623 30.3879C344.946 30.3879 344.365 30.2166 343.879 29.8738C343.397 29.5283 343.025 29.0307 342.765 28.3808C342.507 27.7282 342.378 26.9426 342.378 26.024C342.381 25.1055 342.511 24.324 342.769 23.6796C343.029 23.0325 343.401 22.5389 343.883 22.1989C344.369 21.8589 344.949 21.6889 345.623 21.6889C346.298 21.6889 346.878 21.8589 347.363 22.1989C347.848 22.5389 348.22 23.0325 348.478 23.6796C348.738 24.3267 348.868 25.1082 348.868 26.024C348.868 26.9453 348.738 27.7323 348.478 28.3849C348.22 29.0348 347.848 29.5311 347.363 29.8738C346.88 30.2166 346.301 30.3879 345.623 30.3879ZM345.623 29.1006C346.15 29.1006 346.565 28.8415 346.869 28.3232C347.177 27.8022 347.33 27.0358 347.33 26.024C347.33 25.355 347.26 24.7929 347.12 24.3377C346.981 23.8825 346.783 23.5398 346.528 23.3094C346.273 23.0764 345.971 22.9598 345.623 22.9598C345.1 22.9598 344.685 23.2203 344.381 23.7413C344.077 24.2595 343.923 25.0205 343.92 26.024C343.918 26.6958 343.985 27.2607 344.122 27.7186C344.262 28.1765 344.459 28.522 344.714 28.7551C344.969 28.9854 345.272 29.1006 345.623 29.1006ZM350.235 30.2275V29.1252L353.159 26.2585C353.439 25.976 353.672 25.7252 353.859 25.5058C354.045 25.2864 354.185 25.0739 354.278 24.8683C354.371 24.6626 354.418 24.4433 354.418 24.2102C354.418 23.9442 354.358 23.7166 354.237 23.5274C354.116 23.3355 353.95 23.1874 353.739 23.0832C353.528 22.979 353.288 22.9269 353.019 22.9269C352.743 22.9269 352.5 22.9845 352.291 23.0997C352.083 23.2121 351.921 23.3725 351.806 23.5809C351.694 23.7893 351.638 24.0374 351.638 24.3254H350.186C350.186 23.7907 350.308 23.3259 350.552 22.931C350.796 22.5362 351.132 22.2305 351.559 22.0138C351.99 21.7972 352.483 21.6889 353.04 21.6889C353.605 21.6889 354.101 21.7945 354.529 22.0056C354.957 22.2167 355.288 22.506 355.524 22.8735C355.763 23.2409 355.882 23.6604 355.882 24.132C355.882 24.4474 355.822 24.7572 355.701 25.0616C355.581 25.3659 355.368 25.7032 355.064 26.0734C354.762 26.4436 354.338 26.8919 353.793 27.4183L352.341 28.8949V28.9525H356.01V30.2275H350.235ZM360.452 30.3427C359.859 30.3427 359.333 30.2412 358.872 30.0383C358.414 29.8354 358.052 29.553 357.786 29.1911C357.52 28.8291 357.379 28.411 357.363 27.9366H358.909C358.923 28.1642 358.998 28.363 359.136 28.533C359.273 28.7002 359.455 28.8305 359.683 28.9237C359.91 29.0169 360.165 29.0636 360.448 29.0636C360.749 29.0636 361.017 29.0115 361.25 28.9073C361.483 28.8003 361.665 28.6523 361.797 28.4631C361.928 28.2739 361.993 28.0559 361.99 27.8091C361.993 27.5541 361.927 27.3292 361.793 27.1345C361.658 26.9399 361.464 26.7877 361.209 26.678C360.956 26.5683 360.652 26.5135 360.295 26.5135H359.551V25.3372H360.295C360.589 25.3372 360.845 25.2864 361.065 25.185C361.287 25.0835 361.461 24.9409 361.587 24.7572C361.713 24.5708 361.775 24.3555 361.772 24.1115C361.775 23.8729 361.721 23.6659 361.612 23.4904C361.505 23.3122 361.352 23.1737 361.155 23.075C360.96 22.9763 360.731 22.9269 360.468 22.9269C360.21 22.9269 359.972 22.9735 359.752 23.0668C359.533 23.16 359.356 23.293 359.222 23.4657C359.088 23.6357 359.016 23.8386 359.008 24.0745H357.54C357.551 23.6028 357.686 23.1888 357.947 22.8323C358.21 22.4731 358.561 22.1934 359 21.9933C359.439 21.7904 359.931 21.6889 360.476 21.6889C361.038 21.6889 361.527 21.7945 361.941 22.0056C362.357 22.214 362.68 22.4951 362.907 22.8488C363.135 23.2025 363.249 23.5932 363.249 24.021C363.251 24.4954 363.111 24.893 362.829 25.2138C362.549 25.5346 362.182 25.7443 361.727 25.8431V25.9089C362.319 25.9911 362.773 26.2105 363.088 26.567C363.406 26.9207 363.564 27.3608 363.561 27.8872C363.561 28.3589 363.427 28.7811 363.158 29.154C362.892 29.5242 362.525 29.8149 362.056 30.026C361.59 30.2371 361.055 30.3427 360.452 30.3427Z" fill="#6B7280"/>
|
||||||
|
<path d="M390.538 29.1227L387.642 26.2271L390.538 23.3315" stroke="#6B7280" stroke-width="1.08584" stroke-linecap="round" stroke-linejoin="round"/>
|
||||||
|
<path d="M413.703 29.1227L416.598 26.2271L413.703 23.3315" stroke="#101010" stroke-width="1.08584" stroke-linecap="round" stroke-linejoin="round"/>
|
||||||
|
<path d="M965 50.5337H276V51.9815H965V50.5337Z" fill="#D1D5DB" mask="url(#path-105-inside-2_9963_6185)"/>
|
||||||
|
<path d="M335.118 68.8655H336.519L338.394 73.4433H338.468L340.344 68.8655H341.744V75.1831H340.646V70.8428H340.588L338.842 75.1646H338.021L336.275 70.8336H336.216V75.1831H335.118V68.8655ZM348.636 72.0243C348.636 72.705 348.508 73.288 348.253 73.7734C348 74.2566 347.655 74.6268 347.217 74.8839C346.781 75.1409 346.286 75.2695 345.733 75.2695C345.18 75.2695 344.684 75.1409 344.246 74.8839C343.81 74.6248 343.465 74.2536 343.21 73.7703C342.957 73.2849 342.83 72.703 342.83 72.0243C342.83 71.3436 342.957 70.7616 343.21 70.2783C343.465 69.793 343.81 69.4218 344.246 69.1647C344.684 68.9077 345.18 68.7791 345.733 68.7791C346.286 68.7791 346.781 68.9077 347.217 69.1647C347.655 69.4218 348 69.793 348.253 70.2783C348.508 70.7616 348.636 71.3436 348.636 72.0243ZM347.485 72.0243C347.485 71.5451 347.41 71.141 347.26 70.812C347.112 70.4809 346.906 70.231 346.643 70.0624C346.38 69.8917 346.076 69.8064 345.733 69.8064C345.39 69.8064 345.086 69.8917 344.823 70.0624C344.56 70.231 344.353 70.4809 344.203 70.812C344.055 71.141 343.981 71.5451 343.981 72.0243C343.981 72.5035 344.055 72.9086 344.203 73.2397C344.353 73.5687 344.56 73.8186 344.823 73.9893C345.086 74.1579 345.39 74.2423 345.733 74.2423C346.076 74.2423 346.38 74.1579 346.643 73.9893C346.906 73.8186 347.112 73.5687 347.26 73.2397C347.41 72.9086 347.485 72.5035 347.485 72.0243ZM354.909 68.8655V75.1831H353.891L350.915 70.8799H350.862V75.1831H349.718V68.8655H350.742L353.716 73.1718H353.771V68.8655H354.909Z" fill="#101010"/>
|
||||||
|
<rect x="359.391" y="65.7354" width="16.7911" height="11.8956" rx="5.94778" fill="#101010"/>
|
||||||
|
<path d="M363.332 74.1831V73.5497L365.291 71.5194C365.5 71.2988 365.673 71.1056 365.809 70.9397C365.946 70.772 366.049 70.6127 366.117 70.4619C366.185 70.311 366.219 70.1508 366.219 69.9811C366.219 69.7889 366.173 69.623 366.083 69.4835C365.992 69.3421 365.869 69.2337 365.713 69.1583C365.556 69.081 365.38 69.0423 365.184 69.0423C364.976 69.0423 364.795 69.0848 364.641 69.1696C364.486 69.2544 364.367 69.3741 364.285 69.5287C364.202 69.6833 364.16 69.8643 364.16 70.0716H363.326C363.326 69.7191 363.407 69.4109 363.569 69.147C363.731 68.8831 363.954 68.6785 364.236 68.5334C364.519 68.3863 364.841 68.3128 365.201 68.3128C365.565 68.3128 365.885 68.3854 366.162 68.5305C366.441 68.6738 366.659 68.8699 366.815 69.1187C366.972 69.3656 367.05 69.6446 367.05 69.9557C367.05 70.1706 367.009 70.3808 366.928 70.5863C366.849 70.7917 366.711 71.0208 366.513 71.2734C366.315 71.5241 366.04 71.8286 365.687 72.1867L364.536 73.3913V73.4338H367.143V74.1831H363.332ZM370.231 74.2792C369.784 74.2774 369.403 74.1595 369.086 73.9258C368.769 73.692 368.527 73.3518 368.359 72.905C368.191 72.4582 368.108 71.92 368.108 71.2904C368.108 70.6626 368.191 70.1263 368.359 69.6814C368.529 69.2365 368.772 68.8972 369.089 68.6634C369.407 68.4297 369.788 68.3128 370.231 68.3128C370.674 68.3128 371.054 68.4306 371.371 68.6663C371.687 68.9 371.93 69.2393 372.097 69.6842C372.267 70.1272 372.352 70.6626 372.352 71.2904C372.352 71.9219 372.268 72.461 372.1 72.9078C371.933 73.3527 371.69 73.693 371.374 73.9286C371.057 74.1624 370.676 74.2792 370.231 74.2792ZM370.231 73.5243C370.623 73.5243 370.93 73.3329 371.15 72.9502C371.373 72.5675 371.484 72.0143 371.484 71.2904C371.484 70.8097 371.433 70.4034 371.331 70.0716C371.231 69.738 371.087 69.4854 370.899 69.3138C370.712 69.1404 370.489 69.0537 370.231 69.0537C369.841 69.0537 369.535 69.2459 369.312 69.6305C369.09 70.0151 368.978 70.5684 368.976 71.2904C368.976 71.773 369.026 72.1811 369.126 72.5148C369.227 72.8465 369.372 73.0982 369.558 73.2698C369.745 73.4394 369.969 73.5243 370.231 73.5243Z" fill="#F3F4F6"/>
|
||||||
|
<path d="M300.078 89.5753H410.599C412.285 89.5753 413.528 89.5756 414.511 89.6559C415.489 89.7358 416.177 89.8932 416.759 90.1898C417.82 90.7304 418.682 91.5929 419.223 92.6538C419.519 93.236 419.677 93.9239 419.757 94.9021C419.837 95.8844 419.837 97.1272 419.837 98.8134V106.091C419.837 107.777 419.837 109.02 419.757 110.003C419.677 110.981 419.519 111.669 419.223 112.251C418.682 113.312 417.82 114.174 416.759 114.715C416.177 115.011 415.489 115.169 414.511 115.249C413.528 115.329 412.285 115.329 410.599 115.329H300.078C298.392 115.329 297.149 115.329 296.167 115.249C295.188 115.169 294.5 115.011 293.918 114.715C292.857 114.174 291.995 113.312 291.454 112.251C291.158 111.669 291 110.981 290.92 110.003C290.84 109.02 290.84 107.777 290.84 106.091V98.8134C290.84 97.1272 290.84 95.8844 290.92 94.9021C291 93.9239 291.158 93.236 291.454 92.6538C291.995 91.5929 292.857 90.7304 293.918 90.1898C294.5 89.8932 295.188 89.7358 296.167 89.6559C297.149 89.5756 298.392 89.5753 300.078 89.5753Z" fill="white"/>
|
||||||
|
<path d="M338.498 97.9808C338.827 97.9832 339.151 98.0432 339.47 98.1608C339.789 98.2784 340.077 98.4703 340.334 98.7366C340.593 99.0029 340.799 99.3628 340.953 99.8163C341.109 100.267 341.188 100.829 341.19 101.501C341.19 102.146 341.126 102.721 340.996 103.224C340.866 103.726 340.68 104.149 340.438 104.495C340.198 104.84 339.907 105.103 339.564 105.283C339.221 105.463 338.834 105.553 338.405 105.553C337.966 105.553 337.576 105.467 337.235 105.294C336.894 105.121 336.617 104.882 336.404 104.578C336.19 104.271 336.057 103.918 336.004 103.52H337.102C337.174 103.836 337.32 104.093 337.541 104.29C337.764 104.484 338.052 104.581 338.405 104.581C338.945 104.581 339.366 104.346 339.668 103.876C339.97 103.403 340.123 102.743 340.125 101.896H340.067C339.943 102.103 339.787 102.28 339.6 102.429C339.415 102.578 339.207 102.693 338.977 102.775C338.747 102.856 338.501 102.897 338.239 102.897C337.815 102.897 337.428 102.793 337.08 102.584C336.732 102.375 336.455 102.088 336.249 101.724C336.043 101.359 335.94 100.943 335.94 100.475C335.94 100.009 336.045 99.5872 336.256 99.2081C336.47 98.829 336.767 98.5291 337.149 98.3083C337.533 98.0852 337.983 97.976 338.498 97.9808ZM338.502 98.9166C338.221 98.9166 337.968 98.9861 337.743 99.1253C337.519 99.2621 337.343 99.448 337.214 99.6831C337.084 99.9159 337.019 100.175 337.019 100.46C337.019 100.746 337.082 101.005 337.206 101.238C337.334 101.468 337.506 101.652 337.725 101.788C337.945 101.923 338.197 101.99 338.48 101.99C338.691 101.99 338.888 101.949 339.071 101.868C339.253 101.786 339.412 101.673 339.549 101.529C339.686 101.383 339.793 101.217 339.87 101.033C339.946 100.848 339.985 100.654 339.985 100.45C339.985 100.179 339.92 99.9266 339.79 99.6939C339.663 99.4612 339.488 99.274 339.265 99.1325C339.042 98.9885 338.787 98.9166 338.502 98.9166ZM343.214 104.538C343.017 104.538 342.848 104.468 342.706 104.329C342.565 104.188 342.494 104.017 342.494 103.818C342.494 103.622 342.565 103.454 342.706 103.314C342.848 103.173 343.017 103.102 343.214 103.102C343.411 103.102 343.58 103.173 343.721 103.314C343.863 103.454 343.934 103.622 343.934 103.818C343.934 103.95 343.9 104.071 343.833 104.182C343.768 104.29 343.682 104.376 343.574 104.441C343.466 104.506 343.346 104.538 343.214 104.538ZM343.214 100.846C343.017 100.846 342.848 100.776 342.706 100.637C342.565 100.495 342.494 100.325 342.494 100.126C342.494 99.929 342.565 99.7611 342.706 99.6219C342.848 99.4804 343.017 99.4096 343.214 99.4096C343.411 99.4096 343.58 99.4804 343.721 99.6219C343.863 99.7611 343.934 99.929 343.934 100.126C343.934 100.258 343.9 100.379 343.833 100.489C343.768 100.597 343.682 100.684 343.574 100.748C343.466 100.813 343.346 100.846 343.214 100.846ZM347.927 105.553C347.432 105.553 346.991 105.468 346.602 105.297C346.216 105.127 345.91 104.891 345.684 104.588C345.461 104.284 345.341 103.931 345.325 103.53H346.455C346.469 103.749 346.542 103.938 346.674 104.099C346.808 104.257 346.984 104.38 347.2 104.466C347.415 104.552 347.655 104.596 347.919 104.596C348.21 104.596 348.466 104.545 348.69 104.444C348.915 104.344 349.091 104.203 349.219 104.023C349.346 103.841 349.409 103.631 349.409 103.394C349.409 103.146 349.346 102.929 349.219 102.742C349.094 102.553 348.91 102.404 348.668 102.296C348.428 102.188 348.138 102.134 347.797 102.134H347.174V101.227H347.797C348.07 101.227 348.31 101.178 348.517 101.079C348.725 100.981 348.889 100.844 349.006 100.669C349.124 100.492 349.183 100.284 349.183 100.047C349.183 99.8187 349.131 99.6207 349.028 99.4528C348.927 99.2824 348.783 99.1493 348.596 99.0533C348.411 98.9573 348.193 98.9094 347.941 98.9094C347.701 98.9094 347.477 98.9537 347.268 99.0425C347.062 99.1289 346.894 99.2537 346.764 99.4168C346.635 99.5776 346.565 99.7707 346.555 99.9962H345.479C345.491 99.5979 345.609 99.2477 345.832 98.9454C346.058 98.643 346.355 98.4067 346.725 98.2364C347.094 98.066 347.504 97.9808 347.955 97.9808C348.428 97.9808 348.836 98.0732 349.179 98.258C349.524 98.4403 349.791 98.6838 349.978 98.9885C350.167 99.2932 350.261 99.6267 350.259 99.989C350.261 100.402 350.146 100.752 349.913 101.04C349.683 101.328 349.376 101.521 348.992 101.619V101.677C349.481 101.751 349.86 101.946 350.129 102.26C350.4 102.574 350.535 102.964 350.532 103.43C350.535 103.835 350.422 104.199 350.194 104.52C349.968 104.842 349.66 105.095 349.269 105.279C348.878 105.462 348.43 105.553 347.927 105.553ZM354.459 105.575C353.89 105.572 353.404 105.422 353.001 105.125C352.598 104.827 352.29 104.394 352.076 103.825C351.863 103.257 351.756 102.572 351.756 101.77C351.756 100.972 351.863 100.289 352.076 99.7227C352.292 99.1565 352.602 98.7246 353.005 98.4271C353.41 98.1296 353.895 97.9808 354.459 97.9808C355.022 97.9808 355.506 98.1308 355.909 98.4307C356.312 98.7282 356.62 99.1601 356.834 99.7263C357.05 100.29 357.158 100.972 357.158 101.77C357.158 102.574 357.051 103.26 356.837 103.829C356.624 104.395 356.316 104.828 355.912 105.128C355.509 105.426 355.025 105.575 354.459 105.575ZM354.459 104.614C354.958 104.614 355.347 104.37 3Line truncated
|
||||||
|
<path d="M300.078 89.5753H410.599C412.285 89.5753 413.528 89.5756 414.511 89.6559C415.489 89.7358 416.177 89.8932 416.759 90.1898C417.82 90.7304 418.682 91.5929 419.223 92.6538C419.519 93.236 419.677 93.9239 419.757 94.9021C419.837 95.8844 419.837 97.1272 419.837 98.8134V106.091C419.837 107.777 419.837 109.02 419.757 110.003C419.677 110.981 419.519 111.669 419.223 112.251C418.682 113.312 417.82 114.174 416.759 114.715C416.177 115.011 415.489 115.169 414.511 115.249C413.528 115.329 412.285 115.329 410.599 115.329H300.078C298.392 115.329 297.149 115.329 296.167 115.249C295.188 115.169 294.5 115.011 293.918 114.715C292.857 114.174 291.995 113.312 291.454 112.251C291.158 111.669 291 110.981 290.92 110.003C290.84 109.02 290.84 107.777 290.84 106.091V98.8134C290.84 97.1272 290.84 95.8844 290.92 94.9021C291 93.9239 291.158 93.236 291.454 92.6538C291.995 91.5929 292.857 90.7304 293.918 90.1898C294.5 89.8932 295.188 89.7358 296.167 89.6559C297.149 89.5756 298.392 89.5753 300.078 89.5753Z" stroke="#D1D5DB" stroke-width="0.723892"/>
|
||||||
|
<path d="M300.078 124.74H410.599C412.285 124.74 413.528 124.74 414.511 124.82C415.489 124.9 416.177 125.058 416.759 125.354C417.82 125.895 418.682 126.757 419.223 127.818C419.519 128.401 419.677 129.088 419.757 130.067C419.837 131.049 419.837 132.292 419.837 133.978V141.256C419.837 142.942 419.837 144.185 419.757 145.167C419.677 146.145 419.519 146.833 419.223 147.415C418.682 148.476 417.82 149.339 416.759 149.879C416.177 150.176 415.489 150.333 414.511 150.413C413.528 150.494 412.285 150.494 410.599 150.494H300.078C298.392 150.494 297.149 150.494 296.167 150.413C295.188 150.333 294.5 150.176 293.918 149.879C292.857 149.339 291.995 148.476 291.454 147.415C291.158 146.833 291 146.145 290.92 145.167C290.84 144.185 290.84 142.942 290.84 141.256V133.978C290.84 132.292 290.84 131.049 290.92 130.067C291 129.088 291.158 128.401 291.454 127.818C291.995 126.757 292.857 125.895 293.918 125.354C294.5 125.058 295.188 124.9 296.167 124.82C297.149 124.74 298.392 124.74 300.078 124.74Z" fill="white"/>
|
||||||
|
<path d="M336.344 133.246V140.617H335.228V134.362H335.185L333.422 135.513V134.448L335.261 133.246H336.344ZM340.904 140.739C340.335 140.737 339.849 140.587 339.446 140.289C339.043 139.992 338.735 139.559 338.521 138.99C338.308 138.421 338.201 137.736 338.201 136.935C338.201 136.136 338.308 135.453 338.521 134.887C338.737 134.321 339.047 133.889 339.45 133.592C339.855 133.294 340.34 133.145 340.904 133.145C341.467 133.145 341.951 133.295 342.354 133.595C342.757 133.893 343.065 134.325 343.279 134.891C343.495 135.455 343.603 136.136 343.603 136.935C343.603 137.739 343.496 138.425 343.283 138.994C343.069 139.56 342.761 139.993 342.358 140.293C341.955 140.59 341.47 140.739 340.904 140.739ZM340.904 139.778C341.403 139.778 341.793 139.535 342.073 139.048C342.356 138.561 342.498 137.856 342.498 136.935C342.498 136.323 342.433 135.806 342.304 135.384C342.176 134.959 341.993 134.638 341.753 134.419C341.515 134.199 341.232 134.088 340.904 134.088C340.407 134.088 340.017 134.333 339.734 134.822C339.451 135.312 339.308 136.016 339.306 136.935C339.306 137.549 339.369 138.069 339.496 138.493C339.626 138.916 339.81 139.236 340.047 139.454C340.285 139.67 340.57 139.778 340.904 139.778ZM345.603 139.703C345.406 139.703 345.237 139.633 345.095 139.494C344.954 139.352 344.883 139.182 344.883 138.983C344.883 138.786 344.954 138.618 345.095 138.479C345.237 138.337 345.406 138.267 345.603 138.267C345.8 138.267 345.969 138.337 346.11 138.479C346.252 138.618 346.323 138.786 346.323 138.983C346.323 139.115 346.289 139.236 346.222 139.346C346.157 139.454 346.071 139.541 345.963 139.605C345.855 139.67 345.735 139.703 345.603 139.703ZM345.603 136.01C345.406 136.01 345.237 135.941 345.095 135.801C344.954 135.66 344.883 135.489 344.883 135.29C344.883 135.094 344.954 134.926 345.095 134.786C345.237 134.645 345.406 134.574 345.603 134.574C345.8 134.574 345.969 134.645 346.11 134.786C346.252 134.926 346.323 135.094 346.323 135.29C346.323 135.422 346.289 135.543 346.222 135.654C346.157 135.762 346.071 135.848 345.963 135.913C345.855 135.978 345.735 136.01 345.603 136.01ZM350.316 140.739C349.747 140.737 349.261 140.587 348.858 140.289C348.455 139.992 348.147 139.559 347.933 138.99C347.72 138.421 347.613 137.736 347.613 136.935C347.613 136.136 347.72 135.453 347.933 134.887C348.149 134.321 348.459 133.889 348.862 133.592C349.267 133.294 349.752 133.145 350.316 133.145C350.879 133.145 351.363 133.295 351.766 133.595C352.169 133.893 352.477 134.325 352.691 134.891C352.907 135.455 353.015 136.136 353.015 136.935C353.015 137.739 352.908 138.425 352.695 138.994C352.481 139.56 352.173 139.993 351.77 140.293C351.367 140.59 350.882 140.739 350.316 140.739ZM350.316 139.778C350.815 139.778 351.205 139.535 351.485 139.048C351.768 138.561 351.91 137.856 351.91 136.935C351.91 136.323 351.845 135.806 351.716 135.384C351.588 134.959 351.405 134.638 351.165 134.419C350.927 134.199 350.644 134.088 350.316 134.088C349.819 134.088 349.429 134.333 349.146 134.822C348.863 135.312 348.72 136.016 348.718 136.935C348.718 137.549 348.781 138.069 348.908 138.493C349.038 138.916 349.222 139.236 349.459 139.454C349.697 139.67 349.982 139.778 350.316 139.778ZM356.858 140.739C356.289 140.737 355.803 140.587 355.4 140.289C354.997 139.992 354.689 139.559 354.475 138.99C354.262 138.421 354.155 137.736 354.155 136.935C354.155 136.136 354.262 135.453 354.475 134.887C354.691 134.321 355 133.889 355.404 133.592C355.809 133.294 356.294 133.145 356.858 133.145C357.421 133.145 357.905 133.295 358.308 133.595C358.711 133.893 359.019 134.325 359.233 134.891C359.449 135.455 359.557 136.136 359.557 136.935C359.557 137.739 359.45 138.425 359.236 138.994C359.023 139.56 358.715 139.993 358.311 140.293C357.908 140.59 357.424 140.739 356.858 140.739ZM356.858 139.778C357.357 139.778 357.746 139.535 358.027 139.048C358.31 138.561 358.452 137.856 358.452 136.935C358.452 136.323 358.387 135.806 358.257 135.384C358.13 134.959 357.947 134.638 357.707 134.419C357.469 134.199 357.186 134.088 356.858 134.088C356.361 134.088 355.971 134.333 355.688 134.822C355.405 135.312 355.262 136.016 355.26 136.935C355.26 137.549 355.323 138.069 355.45 138.493C355.58 138.916 355.763 139.236 356.001 139.454C356.239 139.67 356.524 139.778 356.858 139.778ZM365.139 140.739C364.788 140.739 364.472 140.674 364.188 140.545C363.905 140.413 363.681 140.222 363.515 139.972C363.352 139.723 363.271 139.417 363.271 139.055C363.271 138.743 363.331 138.486 363.451 138.285C363.571 138.083 363.733 137.924 363.937 137.806C364.14 137.688 364.368 137.6 364.62 137.54C364.872 137.48 365.129 137.434 365.39 137.403C365.722 137.364 365.99 137.333 366.197 137.309C366.403 137.283 366.553 137.241 366.647 137.183C366.74 137.126 366.787 137.032 366.787 136.903V136.877C366.787 136.563 366.698 136.32 366.521 136.147C366.345 135.974 366.084 135.888 365.736 135.888C365.374 135.888 365.088 135.968 364.879 136.129C364.673 136.287 364.53 136.464 364.451 136.658L363.44 136.428C363.56 136.092 363.735 135.821 363.965 135.614C364.198 135.406 364.466 135.Line truncated
|
||||||
|
<path d="M300.078 124.74H410.599C412.285 124.74 413.528 124.74 414.511 124.82C415.489 124.9 416.177 125.058 416.759 125.354C417.82 125.895 418.682 126.757 419.223 127.818C419.519 128.401 419.677 129.088 419.757 130.067C419.837 131.049 419.837 132.292 419.837 133.978V141.256C419.837 142.942 419.837 144.185 419.757 145.167C419.677 146.145 419.519 146.833 419.223 147.415C418.682 148.476 417.82 149.339 416.759 149.879C416.177 150.176 415.489 150.333 414.511 150.413C413.528 150.494 412.285 150.494 410.599 150.494H300.078C298.392 150.494 297.149 150.494 296.167 150.413C295.188 150.333 294.5 150.176 293.918 149.879C292.857 149.339 291.995 148.476 291.454 147.415C291.158 146.833 291 146.145 290.92 145.167C290.84 144.185 290.84 142.942 290.84 141.256V133.978C290.84 132.292 290.84 131.049 290.92 130.067C291 129.088 291.158 128.401 291.454 127.818C291.995 126.757 292.857 125.895 293.918 125.354C294.5 125.058 295.188 124.9 296.167 124.82C297.149 124.74 298.392 124.74 300.078 124.74Z" stroke="#D1D5DB" stroke-width="0.723892"/>
|
||||||
|
<path d="M300.078 159.904H410.599C412.285 159.904 413.528 159.905 414.511 159.985C415.489 160.065 416.177 160.222 416.759 160.519C417.82 161.059 418.682 161.922 419.223 162.983C419.519 163.565 419.677 164.253 419.757 165.231C419.837 166.214 419.837 167.456 419.837 169.142V176.42C419.837 178.106 419.837 179.349 419.757 180.332C419.677 181.31 419.519 181.998 419.223 182.58C418.682 183.641 417.82 184.503 416.759 185.044C416.177 185.341 415.489 185.498 414.511 185.578C413.528 185.658 412.285 185.658 410.599 185.658H300.078C298.392 185.658 297.149 185.658 296.167 185.578C295.188 185.498 294.5 185.341 293.918 185.044C292.857 184.503 291.995 183.641 291.454 182.58C291.158 181.998 291 181.31 290.92 180.332C290.84 179.349 290.84 178.106 290.84 176.42V169.142C290.84 167.456 290.84 166.214 290.92 165.231C291 164.253 291.158 163.565 291.454 162.983C291.995 161.922 292.857 161.059 293.918 160.519C294.5 160.222 295.188 160.065 296.167 159.985C297.149 159.905 298.392 159.904 300.078 159.904Z" fill="white"/>
|
||||||
|
<path d="M336.344 168.411V175.781H335.228V169.526H335.185L333.422 170.678V169.613L335.261 168.411H336.344ZM340.904 175.904C340.335 175.901 339.849 175.751 339.446 175.454C339.043 175.156 338.735 174.723 338.521 174.155C338.308 173.586 338.201 172.901 338.201 172.1C338.201 171.301 338.308 170.618 338.521 170.052C338.737 169.486 339.047 169.054 339.45 168.756C339.855 168.459 340.34 168.31 340.904 168.31C341.467 168.31 341.951 168.46 342.354 168.76C342.757 169.057 343.065 169.489 343.279 170.055C343.495 170.619 343.603 171.301 343.603 172.1C343.603 172.903 343.496 173.59 343.283 174.158C343.069 174.724 342.761 175.157 342.358 175.457C341.955 175.755 341.47 175.904 340.904 175.904ZM340.904 174.943C341.403 174.943 341.793 174.699 342.073 174.212C342.356 173.725 342.498 173.021 342.498 172.1C342.498 171.488 342.433 170.971 342.304 170.548C342.176 170.124 341.993 169.802 341.753 169.584C341.515 169.363 341.232 169.253 340.904 169.253C340.407 169.253 340.017 169.498 339.734 169.987C339.451 170.476 339.308 171.181 339.306 172.1C339.306 172.714 339.369 173.233 339.496 173.658C339.626 174.08 339.81 174.4 340.047 174.619C340.285 174.835 340.57 174.943 340.904 174.943ZM345.603 174.867C345.406 174.867 345.237 174.798 345.095 174.658C344.954 174.517 344.883 174.346 344.883 174.147C344.883 173.951 344.954 173.783 345.095 173.644C345.237 173.502 345.406 173.431 345.603 173.431C345.8 173.431 345.969 173.502 346.11 173.644C346.252 173.783 346.323 173.951 346.323 174.147C346.323 174.279 346.289 174.4 346.222 174.511C346.157 174.619 346.071 174.705 345.963 174.77C345.855 174.835 345.735 174.867 345.603 174.867ZM345.603 171.175C345.406 171.175 345.237 171.105 345.095 170.966C344.954 170.824 344.883 170.654 344.883 170.455C344.883 170.258 344.954 170.09 345.095 169.951C345.237 169.809 345.406 169.739 345.603 169.739C345.8 169.739 345.969 169.809 346.11 169.951C346.252 170.09 346.323 170.258 346.323 170.455C346.323 170.587 346.289 170.708 346.222 170.818C346.157 170.926 346.071 171.013 345.963 171.077C345.855 171.142 345.735 171.175 345.603 171.175ZM350.316 175.882C349.821 175.882 349.38 175.797 348.991 175.626C348.605 175.456 348.299 175.22 348.074 174.918C347.85 174.613 347.73 174.26 347.714 173.859H348.844C348.858 174.078 348.931 174.267 349.063 174.428C349.198 174.586 349.373 174.709 349.589 174.795C349.805 174.882 350.045 174.925 350.308 174.925C350.599 174.925 350.855 174.874 351.079 174.774C351.304 174.673 351.48 174.532 351.608 174.352C351.735 174.17 351.798 173.96 351.798 173.723C351.798 173.476 351.735 173.258 351.608 173.071C351.483 172.882 351.299 172.733 351.057 172.625C350.817 172.517 350.527 172.463 350.186 172.463H349.563V171.556H350.186C350.46 171.556 350.7 171.507 350.906 171.409C351.115 171.31 351.278 171.173 351.395 170.998C351.513 170.821 351.572 170.613 351.572 170.376C351.572 170.148 351.52 169.95 351.417 169.782C351.316 169.612 351.172 169.478 350.985 169.382C350.8 169.286 350.582 169.238 350.33 169.238C350.09 169.238 349.866 169.283 349.657 169.372C349.451 169.458 349.283 169.583 349.153 169.746C349.024 169.907 348.954 170.1 348.944 170.325H347.868C347.88 169.927 347.998 169.577 348.221 169.274C348.447 168.972 348.744 168.736 349.114 168.565C349.483 168.395 349.893 168.31 350.344 168.31C350.817 168.31 351.225 168.402 351.568 168.587C351.914 168.769 352.18 169.013 352.367 169.318C352.557 169.622 352.65 169.956 352.648 170.318C352.65 170.731 352.535 171.081 352.302 171.369C352.072 171.657 351.765 171.85 351.381 171.948V172.006C351.87 172.08 352.249 172.275 352.518 172.589C352.789 172.903 352.924 173.293 352.921 173.759C352.924 174.164 352.811 174.528 352.583 174.849C352.357 175.171 352.049 175.424 351.658 175.609C351.267 175.791 350.819 175.882 350.316 175.882ZM356.848 175.904C356.279 175.901 355.793 175.751 355.39 175.454C354.987 175.156 354.679 174.723 354.465 174.155C354.252 173.586 354.145 172.901 354.145 172.1C354.145 171.301 354.252 170.618 354.465 170.052C354.681 169.486 354.991 169.054 355.394 168.756C355.799 168.459 356.284 168.31 356.848 168.31C357.411 168.31 357.895 168.46 358.298 168.76C358.701 169.057 359.009 169.489 359.223 170.055C359.439 170.619 359.547 171.301 359.547 172.1C359.547 172.903 359.44 173.59 359.226 174.158C359.013 174.724 358.705 175.157 358.302 175.457C357.899 175.755 357.414 175.904 356.848 175.904ZM356.848 174.943C357.347 174.943 357.737 174.699 358.017 174.212C358.3 173.725 358.442 173.021 358.442 172.1C358.442 171.488 358.377 170.971 358.248 170.548C358.12 170.124 357.937 169.802 357.697 169.584C357.459 169.363 357.176 169.253 356.848 169.253C356.351 169.253 355.961 169.498 355.678 169.987C355.395 170.476 355.252 171.181 355.25 172.1C355.25 172.714 355.313 173.233 355.44 173.658C355.57 174.08 355.754 174.4 355.991 174.619C356.229 174.835 356.514 174.943 356.848 174.943ZM365.129 175.904C364.778 175.904 364.462 175.839 364.179 175.709C363.895 175.577 363.671 175.387 363.506 175.137C363.342 174.888 363.261 174.582 363.261 174.219C363.261 173.907 363.321 173.651 363.441 173.44Line truncated
|
||||||
|
<path d="M300.078 159.904H410.599C412.285 159.904 413.528 159.905 414.511 159.985C415.489 160.065 416.177 160.222 416.759 160.519C417.82 161.059 418.682 161.922 419.223 162.983C419.519 163.565 419.677 164.253 419.757 165.231C419.837 166.214 419.837 167.456 419.837 169.142V176.42C419.837 178.106 419.837 179.349 419.757 180.332C419.677 181.31 419.519 181.998 419.223 182.58C418.682 183.641 417.82 184.503 416.759 185.044C416.177 185.341 415.489 185.498 414.511 185.578C413.528 185.658 412.285 185.658 410.599 185.658H300.078C298.392 185.658 297.149 185.658 296.167 185.578C295.188 185.498 294.5 185.341 293.918 185.044C292.857 184.503 291.995 183.641 291.454 182.58C291.158 181.998 291 181.31 290.92 180.332C290.84 179.349 290.84 178.106 290.84 176.42V169.142C290.84 167.456 290.84 166.214 290.92 165.231C291 164.253 291.158 163.565 291.454 162.983C291.995 161.922 292.857 161.059 293.918 160.519C294.5 160.222 295.188 160.065 296.167 159.985C297.149 159.905 298.392 159.904 300.078 159.904Z" stroke="#D1D5DB" stroke-width="0.723892"/>
|
||||||
|
<path d="M300.078 195.069H410.599C412.285 195.069 413.528 195.069 414.511 195.15C415.489 195.229 416.177 195.387 416.759 195.683C417.82 196.224 418.682 197.087 419.223 198.147C419.519 198.73 419.677 199.418 419.757 200.396C419.837 201.378 419.837 202.621 419.837 204.307V211.585C419.837 213.271 419.837 214.514 419.757 215.496C419.677 216.474 419.519 217.162 419.223 217.744C418.682 218.805 417.82 219.668 416.759 220.208C416.177 220.505 415.489 220.662 414.511 220.742C413.528 220.823 412.285 220.823 410.599 220.823H300.078C298.392 220.823 297.149 220.823 296.167 220.742C295.188 220.662 294.5 220.505 293.918 220.208C292.857 219.668 291.995 218.805 291.454 217.744C291.158 217.162 291 216.474 290.92 215.496C290.84 214.514 290.84 213.271 290.84 211.585V204.307C290.84 202.621 290.84 201.378 290.92 200.396C291 199.418 291.158 198.73 291.454 198.147C291.995 197.087 292.857 196.224 293.918 195.683C294.5 195.387 295.188 195.229 296.167 195.15C297.149 195.069 298.392 195.069 300.078 195.069Z" fill="white"/>
|
||||||
|
<path d="M337.344 203.575V210.946H336.228V204.691H336.185L334.422 205.843V204.777L336.261 203.575H337.344ZM342.134 203.575V210.946H341.018V204.691H340.975L339.212 205.843V204.777L341.051 203.575H342.134ZM344.851 210.032C344.654 210.032 344.485 209.962 344.344 209.823C344.202 209.681 344.131 209.511 344.131 209.312C344.131 209.115 344.202 208.947 344.344 208.808C344.485 208.667 344.654 208.596 344.851 208.596C345.048 208.596 345.217 208.667 345.359 208.808C345.5 208.947 345.571 209.115 345.571 209.312C345.571 209.444 345.537 209.565 345.47 209.675C345.405 209.783 345.319 209.87 345.211 209.935C345.103 209.999 344.983 210.032 344.851 210.032ZM344.851 206.339C344.654 206.339 344.485 206.27 344.344 206.13C344.202 205.989 344.131 205.819 344.131 205.619C344.131 205.423 344.202 205.255 344.344 205.116C344.485 204.974 344.654 204.903 344.851 204.903C345.048 204.903 345.217 204.974 345.359 205.116C345.5 205.255 345.571 205.423 345.571 205.619C345.571 205.751 345.537 205.873 345.47 205.983C345.405 206.091 345.319 206.177 345.211 206.242C345.103 206.307 344.983 206.339 344.851 206.339ZM349.564 211.068C348.995 211.066 348.509 210.916 348.106 210.618C347.703 210.321 347.395 209.888 347.181 209.319C346.968 208.75 346.861 208.065 346.861 207.264C346.861 206.465 346.968 205.783 347.181 205.216C347.397 204.65 347.707 204.218 348.11 203.921C348.515 203.623 349 203.474 349.564 203.474C350.128 203.474 350.611 203.624 351.014 203.924C351.417 204.222 351.726 204.654 351.939 205.22C352.155 205.784 352.263 206.465 352.263 207.264C352.263 208.068 352.156 208.754 351.943 209.323C351.729 209.889 351.421 210.322 351.018 210.622C350.615 210.919 350.13 211.068 349.564 211.068ZM349.564 210.107C350.063 210.107 350.453 209.864 350.734 209.377C351.017 208.89 351.158 208.185 351.158 207.264C351.158 206.652 351.093 206.135 350.964 205.713C350.837 205.288 350.653 204.967 350.413 204.749C350.176 204.528 349.893 204.417 349.564 204.417C349.067 204.417 348.677 204.662 348.394 205.152C348.111 205.641 347.968 206.345 347.966 207.264C347.966 207.878 348.03 208.398 348.157 208.822C348.286 209.245 348.47 209.565 348.707 209.783C348.945 209.999 349.23 210.107 349.564 210.107ZM356.106 211.068C355.537 211.066 355.051 210.916 354.648 210.618C354.245 210.321 353.937 209.888 353.723 209.319C353.51 208.75 353.403 208.065 353.403 207.264C353.403 206.465 353.51 205.783 353.723 205.216C353.939 204.65 354.249 204.218 354.652 203.921C355.057 203.623 355.542 203.474 356.106 203.474C356.67 203.474 357.153 203.624 357.556 203.924C357.959 204.222 358.267 204.654 358.481 205.22C358.697 205.784 358.805 206.465 358.805 207.264C358.805 208.068 358.698 208.754 358.485 209.323C358.271 209.889 357.963 210.322 357.56 210.622C357.157 210.919 356.672 211.068 356.106 211.068ZM356.106 210.107C356.605 210.107 356.995 209.864 357.275 209.377C357.559 208.89 357.7 208.185 357.7 207.264C357.7 206.652 357.635 206.135 357.506 205.713C357.379 205.288 357.195 204.967 356.955 204.749C356.718 204.528 356.434 204.417 356.106 204.417C355.609 204.417 355.219 204.662 354.936 205.152C354.653 205.641 354.51 206.345 354.508 207.264C354.508 207.878 354.571 208.398 354.699 208.822C354.828 209.245 355.012 209.565 355.249 209.783C355.487 209.999 355.772 210.107 356.106 210.107ZM364.387 211.068C364.037 211.068 363.72 211.003 363.437 210.874C363.154 210.742 362.929 210.551 362.764 210.302C362.601 210.052 362.519 209.746 362.519 209.384C362.519 209.072 362.579 208.815 362.699 208.614C362.819 208.412 362.981 208.253 363.185 208.135C363.389 208.018 363.617 207.929 363.869 207.869C364.12 207.809 364.377 207.763 364.639 207.732C364.97 207.694 365.239 207.662 365.445 207.638C365.651 207.612 365.801 207.57 365.895 207.512C365.988 207.455 366.035 207.361 366.035 207.232V207.207C366.035 206.892 365.946 206.649 365.769 206.476C365.594 206.303 365.332 206.217 364.984 206.217C364.622 206.217 364.336 206.297 364.128 206.458C363.921 206.616 363.779 206.793 363.699 206.987L362.688 206.757C362.808 206.421 362.983 206.15 363.214 205.943C363.446 205.735 363.714 205.583 364.016 205.49C364.318 205.394 364.636 205.346 364.97 205.346C365.191 205.346 365.424 205.372 365.672 205.425C365.921 205.475 366.154 205.569 366.37 205.706C366.588 205.843 366.767 206.038 366.906 206.292C367.045 206.544 367.115 206.872 367.115 207.275V210.946H366.064V210.19H366.021C365.951 210.329 365.847 210.466 365.708 210.6C365.568 210.735 365.39 210.846 365.171 210.935C364.953 211.024 364.692 211.068 364.387 211.068ZM364.621 210.204C364.918 210.204 365.173 210.146 365.384 210.028C365.597 209.911 365.759 209.757 365.87 209.567C365.982 209.375 366.039 209.17 366.039 208.952V208.239C366 208.278 365.926 208.314 365.816 208.347C365.708 208.379 365.584 208.406 365.445 208.43C365.306 208.452 365.17 208.472 365.038 208.491C364.906 208.508 364.796 208.523 364.707 208.535C364.498 208.561 364.308 208.605 364.135 208.668C363.965 208.73 363.828 208.82 363.725 208.938C363.624 209.053 363.573 209.206 363.573 209.398C363.573 209.665 363.672 209.866 363.869 210.003Line truncated
|
||||||
|
<path d="M300.078 195.069H410.599C412.285 195.069 413.528 195.069 414.511 195.15C415.489 195.229 416.177 195.387 416.759 195.683C417.82 196.224 418.682 197.087 419.223 198.147C419.519 198.73 419.677 199.418 419.757 200.396C419.837 201.378 419.837 202.621 419.837 204.307V211.585C419.837 213.271 419.837 214.514 419.757 215.496C419.677 216.474 419.519 217.162 419.223 217.744C418.682 218.805 417.82 219.668 416.759 220.208C416.177 220.505 415.489 220.662 414.511 220.742C413.528 220.823 412.285 220.823 410.599 220.823H300.078C298.392 220.823 297.149 220.823 296.167 220.742C295.188 220.662 294.5 220.505 293.918 220.208C292.857 219.668 291.995 218.805 291.454 217.744C291.158 217.162 291 216.474 290.92 215.496C290.84 214.514 290.84 213.271 290.84 211.585V204.307C290.84 202.621 290.84 201.378 290.92 200.396C291 199.418 291.158 198.73 291.454 198.147C291.995 197.087 292.857 196.224 293.918 195.683C294.5 195.387 295.188 195.229 296.167 195.15C297.149 195.069 298.392 195.069 300.078 195.069Z" stroke="#D1D5DB" stroke-width="0.723892"/>
|
||||||
|
<path d="M300.078 230.234H410.599C412.285 230.234 413.528 230.234 414.511 230.314C415.489 230.394 416.177 230.551 416.759 230.848C417.82 231.389 418.682 232.251 419.223 233.312C419.519 233.894 419.677 234.582 419.757 235.56C419.837 236.543 419.837 237.785 419.837 239.472V246.749C419.837 248.436 419.837 249.678 419.757 250.661C419.677 251.639 419.519 252.327 419.223 252.909C418.682 253.97 417.82 254.832 416.759 255.373C416.177 255.67 415.489 255.827 414.511 255.907C413.528 255.987 412.285 255.987 410.599 255.987H300.078C298.392 255.987 297.149 255.987 296.167 255.907C295.188 255.827 294.5 255.67 293.918 255.373C292.857 254.832 291.995 253.97 291.454 252.909C291.158 252.327 291 251.639 290.92 250.661C290.84 249.678 290.84 248.436 290.84 246.749V239.472C290.84 237.785 290.84 236.543 290.92 235.56C291 234.582 291.158 233.894 291.454 233.312C291.995 232.251 292.857 231.389 293.918 230.848C294.5 230.551 295.188 230.394 296.167 230.314C297.149 230.234 298.392 230.234 300.078 230.234Z" fill="white"/>
|
||||||
|
<path d="M337.344 238.74V246.11H336.228V239.855H336.185L334.422 241.007V239.942L336.261 238.74H337.344ZM342.134 238.74V246.11H341.018V239.855H340.975L339.212 241.007V239.942L341.051 238.74H342.134ZM344.851 245.196C344.654 245.196 344.485 245.127 344.344 244.987C344.202 244.846 344.131 244.676 344.131 244.476C344.131 244.28 344.202 244.112 344.344 243.973C344.485 243.831 344.654 243.76 344.851 243.76C345.048 243.76 345.217 243.831 345.359 243.973C345.5 244.112 345.571 244.28 345.571 244.476C345.571 244.608 345.537 244.73 345.47 244.84C345.405 244.948 345.319 245.034 345.211 245.099C345.103 245.164 344.983 245.196 344.851 245.196ZM344.851 241.504C344.654 241.504 344.485 241.434 344.344 241.295C344.202 241.153 344.131 240.983 344.131 240.784C344.131 240.587 344.202 240.419 344.344 240.28C344.485 240.139 344.654 240.068 344.851 240.068C345.048 240.068 345.217 240.139 345.359 240.28C345.5 240.419 345.571 240.587 345.571 240.784C345.571 240.916 345.537 241.037 345.47 241.147C345.405 241.255 345.319 241.342 345.211 241.407C345.103 241.471 344.983 241.504 344.851 241.504ZM349.564 246.211C349.07 246.211 348.628 246.126 348.239 245.956C347.853 245.785 347.547 245.549 347.322 245.247C347.099 244.942 346.979 244.589 346.962 244.189H348.092C348.106 244.407 348.18 244.596 348.311 244.757C348.446 244.916 348.621 245.038 348.837 245.124C349.053 245.211 349.293 245.254 349.557 245.254C349.847 245.254 350.104 245.203 350.327 245.103C350.552 245.002 350.729 244.862 350.856 244.682C350.983 244.499 351.047 244.289 351.047 244.052C351.047 243.805 350.983 243.588 350.856 243.4C350.731 243.211 350.548 243.062 350.305 242.954C350.065 242.846 349.775 242.792 349.434 242.792H348.812V241.885H349.434C349.708 241.885 349.948 241.836 350.154 241.738C350.363 241.639 350.526 241.503 350.644 241.327C350.761 241.15 350.82 240.942 350.82 240.705C350.82 240.477 350.768 240.279 350.665 240.111C350.564 239.941 350.42 239.807 350.233 239.712C350.049 239.616 349.83 239.568 349.578 239.568C349.338 239.568 349.114 239.612 348.905 239.701C348.699 239.787 348.531 239.912 348.401 240.075C348.272 240.236 348.202 240.429 348.193 240.654H347.117C347.129 240.256 347.246 239.906 347.469 239.604C347.695 239.301 347.992 239.065 348.362 238.895C348.731 238.724 349.142 238.639 349.593 238.639C350.065 238.639 350.473 238.731 350.816 238.916C351.162 239.099 351.428 239.342 351.615 239.647C351.805 239.951 351.898 240.285 351.896 240.647C351.898 241.06 351.783 241.41 351.55 241.698C351.32 241.986 351.013 242.179 350.629 242.278V242.335C351.119 242.409 351.498 242.604 351.766 242.918C352.038 243.232 352.172 243.622 352.169 244.088C352.172 244.493 352.059 244.857 351.831 245.178C351.606 245.5 351.297 245.753 350.906 245.938C350.515 246.12 350.068 246.211 349.564 246.211ZM356.096 246.233C355.527 246.23 355.041 246.08 354.638 245.783C354.235 245.485 353.927 245.052 353.713 244.484C353.5 243.915 353.393 243.23 353.393 242.429C353.393 241.63 353.5 240.947 353.713 240.381C353.929 239.815 354.239 239.383 354.642 239.085C355.047 238.788 355.532 238.639 356.096 238.639C356.66 238.639 357.143 238.789 357.546 239.089C357.949 239.386 358.258 239.818 358.471 240.385C358.687 240.948 358.795 241.63 358.795 242.429C358.795 243.232 358.688 243.919 358.475 244.487C358.261 245.053 357.953 245.487 357.55 245.786C357.147 246.084 356.662 246.233 356.096 246.233ZM356.096 245.272C356.595 245.272 356.985 245.028 357.266 244.541C357.549 244.054 357.69 243.35 357.69 242.429C357.69 241.817 357.625 241.3 357.496 240.878C357.369 240.453 357.185 240.131 356.945 239.913C356.708 239.692 356.425 239.582 356.096 239.582C355.599 239.582 355.209 239.827 354.926 240.316C354.643 240.806 354.5 241.51 354.498 242.429C354.498 243.043 354.562 243.562 354.689 243.987C354.818 244.409 355.002 244.73 355.239 244.948C355.477 245.164 355.762 245.272 356.096 245.272ZM364.377 246.233C364.027 246.233 363.71 246.168 363.427 246.038C363.144 245.906 362.919 245.716 362.754 245.466C362.591 245.217 362.509 244.911 362.509 244.548C362.509 244.237 362.569 243.98 362.689 243.778C362.809 243.577 362.971 243.417 363.175 243.3C363.379 243.182 363.607 243.093 363.859 243.033C364.111 242.973 364.367 242.928 364.629 242.897C364.96 242.858 365.229 242.827 365.435 242.803C365.641 242.777 365.791 242.735 365.885 242.677C365.978 242.619 366.025 242.526 366.025 242.396V242.371C366.025 242.057 365.936 241.813 365.759 241.641C365.584 241.468 365.322 241.381 364.974 241.381C364.612 241.381 364.327 241.462 364.118 241.623C363.911 241.781 363.769 241.957 363.69 242.152L362.678 241.921C362.798 241.585 362.973 241.314 363.204 241.108C363.436 240.899 363.704 240.748 364.006 240.654C364.309 240.558 364.626 240.51 364.96 240.51C365.181 240.51 365.415 240.537 365.662 240.59C365.911 240.64 366.144 240.734 366.36 240.87C366.578 241.007 366.757 241.203 366.896 241.457C367.035 241.709 367.105 242.036 367.105 242.439V246.11H366.054V245.355H366.011C365.941 245.494 365.837 245.63 365.698 245.765C365.559 245.899 365.38 246.011 365.161 246.1C364.943 246.Line truncated
|
||||||
|
<path d="M300.078 230.234H410.599C412.285 230.234 413.528 230.234 414.511 230.314C415.489 230.394 416.177 230.551 416.759 230.848C417.82 231.389 418.682 232.251 419.223 233.312C419.519 233.894 419.677 234.582 419.757 235.56C419.837 236.543 419.837 237.785 419.837 239.472V246.749C419.837 248.436 419.837 249.678 419.757 250.661C419.677 251.639 419.519 252.327 419.223 252.909C418.682 253.97 417.82 254.832 416.759 255.373C416.177 255.67 415.489 255.827 414.511 255.907C413.528 255.987 412.285 255.987 410.599 255.987H300.078C298.392 255.987 297.149 255.987 296.167 255.907C295.188 255.827 294.5 255.67 293.918 255.373C292.857 254.832 291.995 253.97 291.454 252.909C291.158 252.327 291 251.639 290.92 250.661C290.84 249.678 290.84 248.436 290.84 246.749V239.472C290.84 237.785 290.84 236.543 290.92 235.56C291 234.582 291.158 233.894 291.454 233.312C291.995 232.251 292.857 231.389 293.918 230.848C294.5 230.551 295.188 230.394 296.167 230.314C297.149 230.234 298.392 230.234 300.078 230.234Z" stroke="#D1D5DB" stroke-width="0.723892"/>
|
||||||
|
<path d="M300.078 265.398H410.599C412.285 265.398 413.528 265.398 414.511 265.479C415.489 265.559 416.177 265.716 416.759 266.013C417.82 266.553 418.682 267.416 419.223 268.477C419.519 269.059 419.677 269.747 419.757 270.725C419.837 271.707 419.837 272.95 419.837 274.636V281.914C419.837 283.6 419.837 284.843 419.757 285.825C419.677 286.803 419.519 287.491 419.223 288.074C418.682 289.134 417.82 289.997 416.759 290.538C416.177 290.834 415.489 290.992 414.511 291.071C413.528 291.152 412.285 291.152 410.599 291.152H300.078C298.392 291.152 297.149 291.152 296.167 291.071C295.188 290.992 294.5 290.834 293.918 290.538C292.857 289.997 291.995 289.134 291.454 288.074C291.158 287.491 291 286.803 290.92 285.825C290.84 284.843 290.84 283.6 290.84 281.914V274.636C290.84 272.95 290.84 271.707 290.92 270.725C291 269.747 291.158 269.059 291.454 268.477C291.995 267.416 292.857 266.553 293.918 266.013C294.5 265.716 295.188 265.559 296.167 265.479C297.149 265.398 298.392 265.398 300.078 265.398Z" fill="white"/>
|
||||||
|
<path d="M336.344 273.904V281.275H335.228V275.02H335.185L333.422 276.172V275.106L335.261 273.904H336.344ZM338.338 281.275V280.469L340.832 277.885C341.098 277.604 341.318 277.358 341.49 277.147C341.665 276.933 341.796 276.731 341.883 276.539C341.969 276.347 342.012 276.143 342.012 275.927C342.012 275.682 341.955 275.471 341.839 275.294C341.724 275.114 341.567 274.976 341.368 274.88C341.169 274.781 340.944 274.732 340.695 274.732C340.431 274.732 340.201 274.786 340.004 274.894C339.807 275.002 339.656 275.154 339.55 275.351C339.445 275.548 339.392 275.778 339.392 276.042H338.33C338.33 275.593 338.434 275.201 338.64 274.865C338.846 274.529 339.129 274.269 339.489 274.084C339.849 273.897 340.258 273.804 340.716 273.804C341.18 273.804 341.587 273.896 341.94 274.081C342.295 274.263 342.572 274.513 342.771 274.829C342.971 275.144 343.07 275.499 343.07 275.895C343.07 276.168 343.019 276.436 342.915 276.697C342.815 276.959 342.638 277.25 342.386 277.572C342.134 277.891 341.784 278.278 341.336 278.734L339.871 280.267V280.321H343.189V281.275H338.338ZM345.276 280.361C345.08 280.361 344.91 280.291 344.769 280.152C344.627 280.01 344.557 279.84 344.557 279.641C344.557 279.444 344.627 279.276 344.769 279.137C344.91 278.996 345.08 278.925 345.276 278.925C345.473 278.925 345.642 278.996 345.784 279.137C345.925 279.276 345.996 279.444 345.996 279.641C345.996 279.773 345.962 279.894 345.895 280.004C345.831 280.112 345.744 280.199 345.636 280.264C345.528 280.328 345.408 280.361 345.276 280.361ZM345.276 276.668C345.08 276.668 344.91 276.599 344.769 276.46C344.627 276.318 344.557 276.148 344.557 275.949C344.557 275.752 344.627 275.584 344.769 275.445C344.91 275.303 345.08 275.232 345.276 275.232C345.473 275.232 345.642 275.303 345.784 275.445C345.925 275.584 345.996 275.752 345.996 275.949C345.996 276.081 345.962 276.202 345.895 276.312C345.831 276.42 345.744 276.506 345.636 276.571C345.528 276.636 345.408 276.668 345.276 276.668ZM349.989 281.397C349.42 281.395 348.935 281.245 348.531 280.947C348.128 280.65 347.82 280.217 347.607 279.648C347.393 279.08 347.286 278.395 347.286 277.593C347.286 276.794 347.393 276.112 347.607 275.545C347.823 274.979 348.132 274.547 348.535 274.25C348.941 273.952 349.425 273.804 349.989 273.804C350.553 273.804 351.036 273.954 351.439 274.253C351.842 274.551 352.151 274.983 352.364 275.549C352.58 276.113 352.688 276.794 352.688 277.593C352.688 278.397 352.581 279.083 352.368 279.652C352.154 280.218 351.846 280.651 351.443 280.951C351.04 281.249 350.555 281.397 349.989 281.397ZM349.989 280.436C350.488 280.436 350.878 280.193 351.159 279.706C351.442 279.219 351.583 278.515 351.583 277.593C351.583 276.981 351.519 276.464 351.389 276.042C351.262 275.617 351.078 275.296 350.838 275.078C350.601 274.857 350.318 274.747 349.989 274.747C349.492 274.747 349.103 274.991 348.819 275.481C348.536 275.97 348.394 276.674 348.391 277.593C348.391 278.207 348.455 278.727 348.582 279.152C348.711 279.574 348.895 279.894 349.133 280.112C349.37 280.328 349.656 280.436 349.989 280.436ZM356.531 281.397C355.962 281.395 355.476 281.245 355.073 280.947C354.67 280.65 354.362 280.217 354.148 279.648C353.935 279.08 353.828 278.395 353.828 277.593C353.828 276.794 353.935 276.112 354.148 275.545C354.364 274.979 354.674 274.547 355.077 274.25C355.482 273.952 355.967 273.804 356.531 273.804C357.095 273.804 357.578 273.954 357.981 274.253C358.384 274.551 358.693 274.983 358.906 275.549C359.122 276.113 359.23 276.794 359.23 277.593C359.23 278.397 359.123 279.083 358.91 279.652C358.696 280.218 358.388 280.651 357.985 280.951C357.582 281.249 357.097 281.397 356.531 281.397ZM356.531 280.436C357.03 280.436 357.42 280.193 357.701 279.706C357.984 279.219 358.125 278.515 358.125 277.593C358.125 276.981 358.06 276.464 357.931 276.042C357.804 275.617 357.62 275.296 357.38 275.078C357.143 274.857 356.86 274.747 356.531 274.747C356.034 274.747 355.644 274.991 355.361 275.481C355.078 275.97 354.935 276.674 354.933 277.593C354.933 278.207 354.997 278.727 355.124 279.152C355.253 279.574 355.437 279.894 355.674 280.112C355.912 280.328 356.197 280.436 356.531 280.436ZM363.203 283.348V275.747H364.254V276.643H364.344C364.407 276.528 364.496 276.395 364.614 276.244C364.732 276.092 364.895 275.961 365.103 275.848C365.312 275.733 365.588 275.675 365.931 275.675C366.377 275.675 366.776 275.788 367.126 276.013C367.476 276.239 367.751 276.564 367.95 276.989C368.152 277.413 368.253 277.924 368.253 278.522C368.253 279.119 368.153 279.631 367.954 280.058C367.755 280.483 367.481 280.811 367.133 281.041C366.785 281.269 366.388 281.383 365.942 281.383C365.606 281.383 365.331 281.326 365.118 281.214C364.907 281.101 364.741 280.969 364.621 280.818C364.501 280.667 364.409 280.532 364.344 280.415H364.279V283.348H363.203ZM364.258 278.511C364.258 278.9 364.314 279.24 364.427 279.533C364.54 279.826 364.703 280.055 364.916 280.22C365.13 280.384 365.391 280.465 365.701 280.465C366.022 280.465 366.291 280.38 366.507 280.21C366.723 280.037 366.886 279.803 366.997 279.508C367.10Line truncated
|
||||||
|
<path d="M300.078 265.398H410.599C412.285 265.398 413.528 265.398 414.511 265.479C415.489 265.559 416.177 265.716 416.759 266.013C417.82 266.553 418.682 267.416 419.223 268.477C419.519 269.059 419.677 269.747 419.757 270.725C419.837 271.707 419.837 272.95 419.837 274.636V281.914C419.837 283.6 419.837 284.843 419.757 285.825C419.677 286.803 419.519 287.491 419.223 288.074C418.682 289.134 417.82 289.997 416.759 290.538C416.177 290.834 415.489 290.992 414.511 291.071C413.528 291.152 412.285 291.152 410.599 291.152H300.078C298.392 291.152 297.149 291.152 296.167 291.071C295.188 290.992 294.5 290.834 293.918 290.538C292.857 289.997 291.995 289.134 291.454 288.074C291.158 287.491 291 286.803 290.92 285.825C290.84 284.843 290.84 283.6 290.84 281.914V274.636C290.84 272.95 290.84 271.707 290.92 270.725C291 269.747 291.158 269.059 291.454 268.477C291.995 267.416 292.857 266.553 293.918 266.013C294.5 265.716 295.188 265.559 296.167 265.479C297.149 265.398 298.392 265.398 300.078 265.398Z" stroke="#D1D5DB" stroke-width="0.723892"/>
|
||||||
|
<path d="M300.078 300.563H410.599C412.285 300.563 413.528 300.563 414.511 300.643C415.489 300.723 416.177 300.88 416.759 301.177C417.82 301.718 418.682 302.58 419.223 303.641C419.519 304.223 419.677 304.911 419.757 305.889C419.837 306.872 419.837 308.115 419.837 309.801V317.079C419.837 318.765 419.837 320.007 419.757 320.99C419.677 321.968 419.519 322.656 419.223 323.238C418.682 324.299 417.82 325.162 416.759 325.702C416.177 325.999 415.489 326.156 414.511 326.236C413.528 326.316 412.285 326.317 410.599 326.317H300.078C298.392 326.317 297.149 326.316 296.167 326.236C295.188 326.156 294.5 325.999 293.918 325.702C292.857 325.162 291.995 324.299 291.454 323.238C291.158 322.656 291 321.968 290.92 320.99C290.84 320.007 290.84 318.765 290.84 317.079V309.801C290.84 308.115 290.84 306.872 290.92 305.889C291 304.911 291.158 304.223 291.454 303.641C291.995 302.58 292.857 301.718 293.918 301.177C294.5 300.88 295.188 300.723 296.167 300.643C297.149 300.563 298.392 300.563 300.078 300.563Z" fill="white"/>
|
||||||
|
<path d="M336.344 309.069V316.439H335.228V310.185H335.185L333.422 311.336V310.271L335.261 309.069H336.344ZM338.338 316.439V315.633L340.832 313.049C341.098 312.769 341.318 312.523 341.49 312.312C341.665 312.098 341.796 311.895 341.883 311.703C341.969 311.511 342.012 311.307 342.012 311.091C342.012 310.847 341.955 310.636 341.839 310.458C341.724 310.278 341.567 310.14 341.368 310.044C341.169 309.946 340.944 309.897 340.695 309.897C340.431 309.897 340.201 309.951 340.004 310.059C339.807 310.167 339.656 310.319 339.55 310.516C339.445 310.712 339.392 310.943 339.392 311.207H338.33C338.33 310.758 338.434 310.366 338.64 310.03C338.846 309.694 339.129 309.434 339.489 309.249C339.849 309.062 340.258 308.968 340.716 308.968C341.18 308.968 341.587 309.061 341.94 309.245C342.295 309.428 342.572 309.677 342.771 309.994C342.971 310.308 343.07 310.663 343.07 311.059C343.07 311.333 343.019 311.6 342.915 311.862C342.815 312.123 342.638 312.415 342.386 312.736C342.134 313.055 341.784 313.443 341.336 313.899L339.871 315.432V315.486H343.189V316.439H338.338ZM345.276 315.525C345.08 315.525 344.91 315.456 344.769 315.317C344.627 315.175 344.557 315.005 344.557 314.806C344.557 314.609 344.627 314.441 344.769 314.302C344.91 314.16 345.08 314.089 345.276 314.089C345.473 314.089 345.642 314.16 345.784 314.302C345.925 314.441 345.996 314.609 345.996 314.806C345.996 314.938 345.962 315.059 345.895 315.169C345.831 315.277 345.744 315.363 345.636 315.428C345.528 315.493 345.408 315.525 345.276 315.525ZM345.276 311.833C345.08 311.833 344.91 311.763 344.769 311.624C344.627 311.483 344.557 311.312 344.557 311.113C344.557 310.916 344.627 310.748 344.769 310.609C344.91 310.468 345.08 310.397 345.276 310.397C345.473 310.397 345.642 310.468 345.784 310.609C345.925 310.748 345.996 310.916 345.996 311.113C345.996 311.245 345.962 311.366 345.895 311.477C345.831 311.585 345.744 311.671 345.636 311.736C345.528 311.8 345.408 311.833 345.276 311.833ZM349.989 316.54C349.495 316.54 349.053 316.455 348.665 316.285C348.278 316.114 347.972 315.878 347.747 315.576C347.524 315.271 347.404 314.918 347.387 314.518H348.517C348.531 314.736 348.605 314.926 348.737 315.086C348.871 315.245 349.046 315.367 349.262 315.453C349.478 315.54 349.718 315.583 349.982 315.583C350.272 315.583 350.529 315.533 350.752 315.432C350.978 315.331 351.154 315.191 351.281 315.011C351.408 314.828 351.472 314.618 351.472 314.381C351.472 314.134 351.408 313.917 351.281 313.729C351.156 313.54 350.973 313.391 350.73 313.283C350.49 313.175 350.2 313.121 349.859 313.121H349.237V312.214H349.859C350.133 312.214 350.373 312.165 350.579 312.067C350.788 311.968 350.951 311.832 351.069 311.657C351.186 311.479 351.245 311.271 351.245 311.034C351.245 310.806 351.193 310.608 351.09 310.44C350.99 310.27 350.846 310.137 350.658 310.041C350.474 309.945 350.255 309.897 350.003 309.897C349.764 309.897 349.539 309.941 349.33 310.03C349.124 310.116 348.956 310.241 348.827 310.404C348.697 310.565 348.627 310.758 348.618 310.984H347.542C347.554 310.585 347.671 310.235 347.894 309.933C348.12 309.63 348.418 309.394 348.787 309.224C349.156 309.053 349.567 308.968 350.018 308.968C350.49 308.968 350.898 309.061 351.241 309.245C351.587 309.428 351.853 309.671 352.04 309.976C352.23 310.281 352.324 310.614 352.321 310.976C352.324 311.389 352.208 311.739 351.976 312.027C351.745 312.315 351.438 312.508 351.054 312.607V312.664C351.544 312.739 351.923 312.933 352.192 313.247C352.463 313.562 352.597 313.951 352.595 314.417C352.597 314.822 352.484 315.186 352.256 315.507C352.031 315.829 351.723 316.082 351.331 316.267C350.94 316.449 350.493 316.54 349.989 316.54ZM356.521 316.562C355.952 316.559 355.467 316.409 355.063 316.112C354.66 315.814 354.352 315.381 354.139 314.813C353.925 314.244 353.818 313.559 353.818 312.758C353.818 311.959 353.925 311.276 354.139 310.71C354.354 310.144 354.664 309.712 355.067 309.414C355.473 309.117 355.957 308.968 356.521 308.968C357.085 308.968 357.568 309.118 357.971 309.418C358.374 309.716 358.683 310.147 358.896 310.714C359.112 311.277 359.22 311.959 359.22 312.758C359.22 313.562 359.113 314.248 358.9 314.816C358.686 315.383 358.378 315.816 357.975 316.116C357.572 316.413 357.087 316.562 356.521 316.562ZM356.521 315.601C357.02 315.601 357.41 315.357 357.691 314.87C357.974 314.383 358.115 313.679 358.115 312.758C358.115 312.146 358.051 311.629 357.921 311.207C357.794 310.782 357.61 310.46 357.37 310.242C357.133 310.021 356.85 309.911 356.521 309.911C356.024 309.911 355.635 310.156 355.351 310.645C355.068 311.135 354.926 311.839 354.923 312.758C354.923 313.372 354.987 313.891 355.114 314.316C355.243 314.738 355.427 315.059 355.664 315.277C355.902 315.493 356.188 315.601 356.521 315.601ZM363.193 318.512V310.912H364.244V311.808H364.334C364.397 311.693 364.487 311.559 364.604 311.408C364.722 311.257 364.885 311.125 365.094 311.012C365.302 310.897 365.578 310.84 365.921 310.84C366.368 310.84 366.766 310.952 367.116 311.178C367.466 311.403 367.741 311.729 367.94 312.153C368.142 312.578 368.243 Line truncated
|
||||||
|
<path d="M300.078 300.563H410.599C412.285 300.563 413.528 300.563 414.511 300.643C415.489 300.723 416.177 300.88 416.759 301.177C417.82 301.718 418.682 302.58 419.223 303.641C419.519 304.223 419.677 304.911 419.757 305.889C419.837 306.872 419.837 308.115 419.837 309.801V317.079C419.837 318.765 419.837 320.007 419.757 320.99C419.677 321.968 419.519 322.656 419.223 323.238C418.682 324.299 417.82 325.162 416.759 325.702C416.177 325.999 415.489 326.156 414.511 326.236C413.528 326.316 412.285 326.317 410.599 326.317H300.078C298.392 326.317 297.149 326.316 296.167 326.236C295.188 326.156 294.5 325.999 293.918 325.702C292.857 325.162 291.995 324.299 291.454 323.238C291.158 322.656 291 321.968 290.92 320.99C290.84 320.007 290.84 318.765 290.84 317.079V309.801C290.84 308.115 290.84 306.872 290.92 305.889C291 304.911 291.158 304.223 291.454 303.641C291.995 302.58 292.857 301.718 293.918 301.177C294.5 300.88 295.188 300.723 296.167 300.643C297.149 300.563 298.392 300.563 300.078 300.563Z" stroke="#D1D5DB" stroke-width="0.723892"/>
|
||||||
|
<path d="M300.078 335.727H410.599C412.285 335.727 413.528 335.727 414.511 335.808C415.489 335.888 416.177 336.045 416.759 336.342C417.82 336.882 418.682 337.745 419.223 338.806C419.519 339.388 419.677 340.076 419.757 341.054C419.837 342.036 419.837 343.279 419.837 344.965V352.243C419.837 353.929 419.837 355.172 419.757 356.154C419.677 357.133 419.519 357.82 419.223 358.403C418.682 359.464 417.82 360.326 416.759 360.867C416.177 361.163 415.489 361.321 414.511 361.401C413.528 361.481 412.285 361.481 410.599 361.481H300.078C298.392 361.481 297.149 361.481 296.167 361.401C295.188 361.321 294.5 361.163 293.918 360.867C292.857 360.326 291.995 359.464 291.454 358.403C291.158 357.82 291 357.133 290.92 356.154C290.84 355.172 290.84 353.929 290.84 352.243V344.965C290.84 343.279 290.84 342.036 290.92 341.054C291 340.076 291.158 339.388 291.454 338.806C291.995 337.745 292.857 336.882 293.918 336.342C294.5 336.045 295.188 335.888 296.167 335.808C297.149 335.727 298.392 335.727 300.078 335.727Z" fill="white"/>
|
||||||
|
<path d="M337.98 351.705C337.529 351.705 337.124 351.618 336.764 351.446C336.406 351.271 336.121 351.031 335.907 350.726C335.694 350.421 335.58 350.073 335.565 349.682H336.645C336.672 349.999 336.812 350.259 337.066 350.463C337.321 350.667 337.625 350.769 337.98 350.769C338.263 350.769 338.514 350.704 338.733 350.575C338.953 350.443 339.126 350.262 339.251 350.031C339.378 349.801 339.441 349.538 339.441 349.243C339.441 348.943 339.377 348.676 339.247 348.441C339.118 348.205 338.939 348.021 338.711 347.886C338.485 347.752 338.226 347.684 337.934 347.681C337.71 347.681 337.486 347.72 337.261 347.796C337.035 347.873 336.853 347.974 336.714 348.099L335.695 347.948L336.109 344.233H340.161V345.187H337.034L336.8 347.249H336.843C336.987 347.11 337.178 346.994 337.415 346.9C337.655 346.807 337.912 346.76 338.185 346.76C338.634 346.76 339.034 346.867 339.384 347.08C339.737 347.294 340.014 347.585 340.215 347.955C340.419 348.322 340.52 348.744 340.518 349.222C340.52 349.699 340.412 350.125 340.194 350.499C339.978 350.873 339.678 351.169 339.294 351.384C338.912 351.598 338.475 351.705 337.98 351.705ZM342.555 350.69C342.359 350.69 342.19 350.62 342.048 350.481C341.906 350.34 341.836 350.169 341.836 349.97C341.836 349.773 341.906 349.605 342.048 349.466C342.19 349.325 342.359 349.254 342.555 349.254C342.752 349.254 342.921 349.325 343.063 349.466C343.204 349.605 343.275 349.773 343.275 349.97C343.275 350.102 343.242 350.223 343.174 350.334C343.11 350.442 343.023 350.528 342.915 350.593C342.807 350.657 342.687 350.69 342.555 350.69ZM342.555 346.997C342.359 346.997 342.19 346.928 342.048 346.789C341.906 346.647 341.836 346.477 341.836 346.278C341.836 346.081 341.906 345.913 342.048 345.774C342.19 345.632 342.359 345.561 342.555 345.561C342.752 345.561 342.921 345.632 343.063 345.774C343.204 345.913 343.275 346.081 343.275 346.278C343.275 346.41 343.242 346.531 343.174 346.641C343.11 346.749 343.023 346.835 342.915 346.9C342.807 346.965 342.687 346.997 342.555 346.997ZM347.268 351.705C346.774 351.705 346.332 351.62 345.944 351.449C345.558 351.279 345.252 351.043 345.026 350.74C344.803 350.436 344.683 350.083 344.666 349.682H345.796C345.811 349.901 345.884 350.09 346.016 350.251C346.15 350.409 346.325 350.532 346.541 350.618C346.757 350.704 346.997 350.747 347.261 350.747C347.551 350.747 347.808 350.697 348.031 350.596C348.257 350.496 348.433 350.355 348.56 350.175C348.687 349.993 348.751 349.783 348.751 349.545C348.751 349.298 348.687 349.081 348.56 348.894C348.435 348.704 348.252 348.556 348.01 348.448C347.77 348.34 347.479 348.286 347.139 348.286H346.516V347.379H347.139C347.412 347.379 347.652 347.33 347.858 347.231C348.067 347.133 348.23 346.996 348.348 346.821C348.465 346.644 348.524 346.436 348.524 346.198C348.524 345.971 348.473 345.773 348.369 345.605C348.269 345.434 348.125 345.301 347.938 345.205C347.753 345.109 347.535 345.061 347.283 345.061C347.043 345.061 346.818 345.106 346.61 345.194C346.403 345.281 346.235 345.406 346.106 345.569C345.976 345.729 345.907 345.923 345.897 346.148H344.821C344.833 345.75 344.951 345.4 345.174 345.097C345.399 344.795 345.697 344.559 346.066 344.388C346.436 344.218 346.846 344.133 347.297 344.133C347.77 344.133 348.178 344.225 348.521 344.41C348.866 344.592 349.132 344.836 349.32 345.14C349.509 345.445 349.603 345.779 349.6 346.141C349.603 346.554 349.488 346.904 349.255 347.192C349.024 347.48 348.717 347.673 348.333 347.771V347.829C348.823 347.903 349.202 348.097 349.471 348.412C349.742 348.726 349.876 349.116 349.874 349.581C349.876 349.987 349.763 350.35 349.535 350.672C349.31 350.993 349.002 351.247 348.611 351.431C348.219 351.614 347.772 351.705 347.268 351.705ZM353.8 351.726C353.232 351.724 352.746 351.574 352.343 351.277C351.94 350.979 351.631 350.546 351.418 349.977C351.204 349.409 351.097 348.724 351.097 347.922C351.097 347.123 351.204 346.441 351.418 345.875C351.634 345.308 351.943 344.876 352.346 344.579C352.752 344.281 353.236 344.133 353.8 344.133C354.364 344.133 354.847 344.283 355.251 344.583C355.654 344.88 355.962 345.312 356.175 345.878C356.391 346.442 356.499 347.123 356.499 347.922C356.499 348.726 356.393 349.412 356.179 349.981C355.966 350.547 355.657 350.98 355.254 351.28C354.851 351.578 354.366 351.726 353.8 351.726ZM353.8 350.765C354.299 350.765 354.689 350.522 354.97 350.035C355.253 349.548 355.394 348.844 355.394 347.922C355.394 347.311 355.33 346.793 355.2 346.371C355.073 345.947 354.889 345.625 354.65 345.407C354.412 345.186 354.129 345.076 353.8 345.076C353.304 345.076 352.914 345.32 352.631 345.81C352.347 346.299 352.205 347.003 352.202 347.922C352.202 348.537 352.266 349.056 352.393 349.481C352.523 349.903 352.706 350.223 352.944 350.442C353.181 350.657 353.467 350.765 353.8 350.765ZM360.473 353.677V346.076H361.523V346.972H361.613C361.676 346.857 361.766 346.724 361.883 346.573C362.001 346.422 362.164 346.29 362.373 346.177C362.581 346.062 362.857 346.004 363.2 346.004C363.647 346.004 364.045 346.117 364.395 346.342C364.746 346.568 365.02 346.893 365.Line truncated
|
||||||
|
<path d="M300.078 335.727H410.599C412.285 335.727 413.528 335.727 414.511 335.808C415.489 335.888 416.177 336.045 416.759 336.342C417.82 336.882 418.682 337.745 419.223 338.806C419.519 339.388 419.677 340.076 419.757 341.054C419.837 342.036 419.837 343.279 419.837 344.965V352.243C419.837 353.929 419.837 355.172 419.757 356.154C419.677 357.133 419.519 357.82 419.223 358.403C418.682 359.464 417.82 360.326 416.759 360.867C416.177 361.163 415.489 361.321 414.511 361.401C413.528 361.481 412.285 361.481 410.599 361.481H300.078C298.392 361.481 297.149 361.481 296.167 361.401C295.188 361.321 294.5 361.163 293.918 360.867C292.857 360.326 291.995 359.464 291.454 358.403C291.158 357.82 291 357.133 290.92 356.154C290.84 355.172 290.84 353.929 290.84 352.243V344.965C290.84 343.279 290.84 342.036 290.92 341.054C291 340.076 291.158 339.388 291.454 338.806C291.995 337.745 292.857 336.882 293.918 336.342C294.5 336.045 295.188 335.888 296.167 335.808C297.149 335.727 298.392 335.727 300.078 335.727Z" stroke="#D1D5DB" stroke-width="0.723892"/>
|
||||||
|
<path d="M300.078 370.892H410.599C412.285 370.892 413.528 370.892 414.511 370.972C415.489 371.052 416.177 371.21 416.759 371.506C417.82 372.047 418.682 372.909 419.223 373.97C419.519 374.552 419.677 375.24 419.757 376.218C419.837 377.201 419.837 378.444 419.837 380.13V387.408C419.837 389.094 419.837 390.337 419.757 391.319C419.677 392.297 419.519 392.985 419.223 393.567C418.682 394.628 417.82 395.491 416.759 396.031C416.177 396.328 415.489 396.485 414.511 396.565C413.528 396.645 412.285 396.646 410.599 396.646H300.078C298.392 396.646 297.149 396.645 296.167 396.565C295.188 396.485 294.5 396.328 293.918 396.031C292.857 395.491 291.995 394.628 291.454 393.567C291.158 392.985 291 392.297 290.92 391.319C290.84 390.337 290.84 389.094 290.84 387.408V380.13C290.84 378.444 290.84 377.201 290.92 376.218C291 375.24 291.158 374.552 291.454 373.97C291.995 372.909 292.857 372.047 293.918 371.506C294.5 371.21 295.188 371.052 296.167 370.972C297.149 370.892 298.392 370.892 300.078 370.892Z" fill="white"/>
|
||||||
|
<path d="M338.121 386.869C337.792 386.865 337.468 386.805 337.149 386.689C336.832 386.574 336.544 386.382 336.285 386.114C336.026 385.845 335.819 385.484 335.663 385.03C335.509 384.577 335.432 384.011 335.432 383.332C335.432 382.689 335.496 382.118 335.623 381.619C335.753 381.119 335.939 380.698 336.181 380.355C336.423 380.01 336.716 379.747 337.059 379.567C337.402 379.387 337.787 379.297 338.214 379.297C338.653 379.297 339.043 379.384 339.384 379.556C339.725 379.729 340.001 379.968 340.212 380.273C340.425 380.577 340.561 380.924 340.618 381.313H339.521C339.446 381.006 339.299 380.755 339.078 380.56C338.857 380.366 338.569 380.269 338.214 380.269C337.674 380.269 337.253 380.504 336.951 380.974C336.651 381.445 336.5 382.098 336.498 382.936H336.552C336.679 382.727 336.835 382.549 337.019 382.403C337.207 382.254 337.415 382.14 337.646 382.061C337.878 381.98 338.123 381.939 338.38 381.939C338.807 381.939 339.193 382.043 339.539 382.252C339.887 382.458 340.164 382.744 340.37 383.108C340.576 383.473 340.68 383.891 340.68 384.361C340.68 384.831 340.573 385.257 340.359 385.639C340.148 386.02 339.851 386.322 339.467 386.545C339.083 386.766 338.634 386.874 338.121 386.869ZM338.117 385.934C338.4 385.934 338.653 385.864 338.876 385.725C339.1 385.586 339.276 385.399 339.406 385.163C339.535 384.928 339.6 384.666 339.6 384.375C339.6 384.092 339.536 383.834 339.409 383.602C339.284 383.369 339.112 383.184 338.891 383.047C338.673 382.911 338.423 382.842 338.142 382.842C337.929 382.842 337.731 382.883 337.548 382.965C337.369 383.046 337.21 383.159 337.073 383.303C336.937 383.447 336.829 383.612 336.75 383.799C336.673 383.984 336.634 384.18 336.634 384.386C336.634 384.662 336.698 384.918 336.825 385.153C336.955 385.388 337.131 385.577 337.354 385.721C337.58 385.863 337.834 385.934 338.117 385.934ZM342.714 385.854C342.517 385.854 342.348 385.785 342.206 385.646C342.065 385.504 341.994 385.334 341.994 385.135C341.994 384.938 342.065 384.77 342.206 384.631C342.348 384.489 342.517 384.418 342.714 384.418C342.911 384.418 343.08 384.489 343.221 384.631C343.363 384.77 343.434 384.938 343.434 385.135C343.434 385.267 343.4 385.388 343.333 385.498C343.268 385.606 343.182 385.692 343.074 385.757C342.966 385.822 342.846 385.854 342.714 385.854ZM342.714 382.162C342.517 382.162 342.348 382.092 342.206 381.953C342.065 381.812 341.994 381.641 341.994 381.442C341.994 381.245 342.065 381.078 342.206 380.938C342.348 380.797 342.517 380.726 342.714 380.726C342.911 380.726 343.08 380.797 343.221 380.938C343.363 381.078 343.434 381.245 343.434 381.442C343.434 381.574 343.4 381.695 343.333 381.806C343.268 381.914 343.182 382 343.074 382.065C342.966 382.13 342.846 382.162 342.714 382.162ZM347.427 386.869C346.932 386.869 346.491 386.784 346.102 386.614C345.716 386.443 345.41 386.207 345.184 385.905C344.961 385.6 344.841 385.247 344.825 384.847H345.955C345.969 385.065 346.042 385.255 346.174 385.415C346.308 385.574 346.484 385.696 346.7 385.782C346.915 385.869 347.155 385.912 347.419 385.912C347.71 385.912 347.966 385.862 348.19 385.761C348.415 385.66 348.591 385.52 348.719 385.34C348.846 385.157 348.909 384.948 348.909 384.71C348.909 384.463 348.846 384.246 348.719 384.059C348.594 383.869 348.41 383.72 348.168 383.612C347.928 383.504 347.638 383.45 347.297 383.45H346.674V382.543H347.297C347.57 382.543 347.81 382.494 348.017 382.396C348.225 382.298 348.389 382.161 348.506 381.986C348.624 381.808 348.683 381.601 348.683 381.363C348.683 381.135 348.631 380.937 348.528 380.769C348.427 380.599 348.283 380.466 348.096 380.37C347.911 380.274 347.693 380.226 347.441 380.226C347.201 380.226 346.977 380.27 346.768 380.359C346.562 380.445 346.394 380.57 346.264 380.733C346.135 380.894 346.065 381.087 346.055 381.313H344.979C344.991 380.914 345.109 380.564 345.332 380.262C345.558 379.959 345.855 379.723 346.225 379.553C346.594 379.382 347.004 379.297 347.455 379.297C347.928 379.297 348.336 379.39 348.679 379.574C349.024 379.757 349.291 380 349.478 380.305C349.667 380.61 349.761 380.943 349.759 381.305C349.761 381.718 349.646 382.068 349.413 382.356C349.183 382.644 348.876 382.837 348.492 382.936V382.993C348.981 383.068 349.36 383.262 349.629 383.576C349.9 383.891 350.035 384.281 350.032 384.746C350.035 385.151 349.922 385.515 349.694 385.836C349.468 386.158 349.16 386.411 348.769 386.596C348.378 386.778 347.93 386.869 347.427 386.869ZM353.959 386.891C353.39 386.889 352.904 386.739 352.501 386.441C352.098 386.144 351.79 385.71 351.576 385.142C351.363 384.573 351.256 383.888 351.256 383.087C351.256 382.288 351.363 381.605 351.576 381.039C351.792 380.473 352.102 380.041 352.505 379.744C352.91 379.446 353.395 379.297 353.959 379.297C354.522 379.297 355.006 379.447 355.409 379.747C355.812 380.045 356.12 380.476 356.334 381.043C356.55 381.607 356.658 382.288 356.658 383.087C356.658 383.891 356.551 384.577 356.337 385.145C356.124 385.712 355.816 386.145 355.412 386.445C355.009 386.742 354.525 386.891 353.959 386.891ZM353.959 385.93C354.458 385.93 354.847 385.686 355.12Line truncated
|
||||||
|
<path d="M300.078 370.892H410.599C412.285 370.892 413.528 370.892 414.511 370.972C415.489 371.052 416.177 371.21 416.759 371.506C417.82 372.047 418.682 372.909 419.223 373.97C419.519 374.552 419.677 375.24 419.757 376.218C419.837 377.201 419.837 378.444 419.837 380.13V387.408C419.837 389.094 419.837 390.337 419.757 391.319C419.677 392.297 419.519 392.985 419.223 393.567C418.682 394.628 417.82 395.491 416.759 396.031C416.177 396.328 415.489 396.485 414.511 396.565C413.528 396.645 412.285 396.646 410.599 396.646H300.078C298.392 396.646 297.149 396.645 296.167 396.565C295.188 396.485 294.5 396.328 293.918 396.031C292.857 395.491 291.995 394.628 291.454 393.567C291.158 392.985 291 392.297 290.92 391.319C290.84 390.337 290.84 389.094 290.84 387.408V380.13C290.84 378.444 290.84 377.201 290.92 376.218C291 375.24 291.158 374.552 291.454 373.97C291.995 372.909 292.857 372.047 293.918 371.506C294.5 371.21 295.188 371.052 296.167 370.972C297.149 370.892 298.392 370.892 300.078 370.892Z" stroke="#D1D5DB" stroke-width="0.723892"/>
|
||||||
|
<path d="M473.331 69.8249V68.8655H478.371V69.8249H476.419V75.1831H475.284V69.8249H473.331ZM483.326 68.8655H484.47V72.9929C484.47 73.4454 484.363 73.8433 484.149 74.1867C483.937 74.5302 483.639 74.7985 483.255 74.9919C482.87 75.1831 482.421 75.2787 481.907 75.2787C481.39 75.2787 480.94 75.1831 480.555 74.9919C480.171 74.7985 479.873 74.5302 479.661 74.1867C479.449 73.8433 479.343 73.4454 479.343 72.9929V68.8655H480.488V72.8973C480.488 73.1605 480.545 73.395 480.66 73.6006C480.778 73.8063 480.942 73.9677 481.154 74.0849C481.366 74.2001 481.617 74.2577 481.907 74.2577C482.197 74.2577 482.447 74.2001 482.659 74.0849C482.873 73.9677 483.038 73.8063 483.153 73.6006C483.268 73.395 483.326 73.1605 483.326 72.8973V68.8655ZM485.714 75.1831V68.8655H489.823V69.8249H486.858V71.54H489.61V72.4994H486.858V74.2237H489.848V75.1831H485.714Z" fill="#6B7280"/>
|
||||||
|
<path d="M496.252 75.1831V74.3564L498.446 72.2063C498.655 71.9945 498.83 71.8063 498.97 71.6418C499.11 71.4773 499.215 71.3179 499.285 71.1637C499.354 71.0094 499.389 70.8449 499.389 70.6701C499.389 70.4706 499.344 70.2999 499.254 70.158C499.163 70.0141 499.039 69.903 498.88 69.8249C498.722 69.7467 498.542 69.7076 498.341 69.7076C498.133 69.7076 497.951 69.7508 497.795 69.8372C497.638 69.9215 497.517 70.0418 497.431 70.1981C497.346 70.3544 497.304 70.5405 497.304 70.7565H496.215C496.215 70.3554 496.307 70.0069 496.49 69.7107C496.673 69.4146 496.925 69.1853 497.246 69.0228C497.568 68.8604 497.939 68.7791 498.356 68.7791C498.78 68.7791 499.152 68.8583 499.473 69.0167C499.794 69.175 500.042 69.392 500.219 69.6675C500.398 69.9431 500.488 70.2578 500.488 70.6115C500.488 70.848 500.442 71.0804 500.352 71.3086C500.261 71.5369 500.102 71.7899 499.874 72.0675C499.648 72.3451 499.33 72.6814 498.921 73.0762L497.832 74.1836V74.2268H500.583V75.1831H496.252ZM504.217 68.8655V75.1831H503.073V69.9791H503.036L501.558 70.923V69.8742L503.128 68.8655H504.217Z" fill="#6B7280"/>
|
||||||
|
<path d="M434.982 89.5753H545.504C547.19 89.5753 548.433 89.5756 549.415 89.6559C550.393 89.7358 551.081 89.8932 551.663 90.1898C552.724 90.7304 553.587 91.5929 554.127 92.6538C554.424 93.236 554.581 93.9239 554.661 94.9021C554.741 95.8844 554.742 97.1272 554.742 98.8134V106.091C554.742 107.777 554.741 109.02 554.661 110.003C554.581 110.981 554.424 111.669 554.127 112.251C553.587 113.312 552.724 114.174 551.663 114.715C551.081 115.011 550.393 115.169 549.415 115.249C548.433 115.329 547.19 115.329 545.504 115.329H434.982C433.296 115.329 432.053 115.329 431.071 115.249C430.093 115.169 429.405 115.011 428.823 114.715C427.762 114.174 426.899 113.312 426.359 112.251C426.062 111.669 425.905 110.981 425.825 110.003C425.744 109.02 425.744 107.777 425.744 106.091V98.8134C425.744 97.1272 425.744 95.8844 425.825 94.9021C425.905 93.9239 426.062 93.236 426.359 92.6538C426.899 91.5929 427.762 90.7304 428.823 90.1898C429.405 89.8932 430.093 89.7358 431.071 89.6559C432.053 89.5756 433.296 89.5753 434.982 89.5753Z" fill="white"/>
|
||||||
|
<path d="M473.403 97.9808C473.731 97.9832 474.055 98.0432 474.374 98.1608C474.694 98.2784 474.981 98.4703 475.238 98.7366C475.497 99.0029 475.704 99.3628 475.857 99.8163C476.013 100.267 476.092 100.829 476.095 101.501C476.095 102.146 476.03 102.721 475.9 103.224C475.771 103.726 475.585 104.149 475.343 104.495C475.103 104.84 474.811 105.103 474.468 105.283C474.125 105.463 473.739 105.553 473.309 105.553C472.87 105.553 472.48 105.467 472.14 105.294C471.799 105.121 471.522 104.882 471.308 104.578C471.095 104.271 470.962 103.918 470.909 103.52H472.006C472.078 103.836 472.225 104.093 472.445 104.29C472.669 104.484 472.957 104.581 473.309 104.581C473.849 104.581 474.27 104.346 474.572 103.876C474.875 103.403 475.027 102.743 475.029 101.896H474.972C474.847 102.103 474.691 102.28 474.504 102.429C474.319 102.578 474.112 102.693 473.881 102.775C473.651 102.856 473.405 102.897 473.144 102.897C472.719 102.897 472.333 102.793 471.985 102.584C471.637 102.375 471.36 102.088 471.153 101.724C470.947 101.359 470.844 100.943 470.844 100.475C470.844 100.009 470.95 99.5872 471.161 99.2081C471.374 98.829 471.672 98.5291 472.053 98.3083C472.437 98.0852 472.887 97.976 473.403 97.9808ZM473.406 98.9166C473.126 98.9166 472.873 98.9861 472.647 99.1253C472.424 99.2621 472.248 99.448 472.118 99.6831C471.988 99.9159 471.924 100.175 471.924 100.46C471.924 100.746 471.986 101.005 472.111 101.238C472.238 101.468 472.411 101.652 472.629 101.788C472.85 101.923 473.102 101.99 473.385 101.99C473.596 101.99 473.793 101.949 473.975 101.868C474.157 101.786 474.317 101.673 474.454 101.529C474.59 101.383 474.697 101.217 474.774 101.033C474.851 100.848 474.889 100.654 474.889 100.45C474.889 100.179 474.824 99.9266 474.695 99.6939C474.568 99.4612 474.392 99.274 474.169 99.1325C473.946 98.9885 473.692 98.9166 473.406 98.9166ZM478.118 104.538C477.921 104.538 477.752 104.468 477.611 104.329C477.469 104.188 477.398 104.017 477.398 103.818C477.398 103.622 477.469 103.454 477.611 103.314C477.752 103.173 477.921 103.102 478.118 103.102C478.315 103.102 478.484 103.173 478.626 103.314C478.767 103.454 478.838 103.622 478.838 103.818C478.838 103.95 478.804 104.071 478.737 104.182C478.672 104.29 478.586 104.376 478.478 104.441C478.37 104.506 478.25 104.538 478.118 104.538ZM478.118 100.846C477.921 100.846 477.752 100.776 477.611 100.637C477.469 100.495 477.398 100.325 477.398 100.126C477.398 99.929 477.469 99.7611 477.611 99.6219C477.752 99.4804 477.921 99.4096 478.118 99.4096C478.315 99.4096 478.484 99.4804 478.626 99.6219C478.767 99.7611 478.838 99.929 478.838 100.126C478.838 100.258 478.804 100.379 478.737 100.489C478.672 100.597 478.586 100.684 478.478 100.748C478.37 100.813 478.25 100.846 478.118 100.846ZM482.831 105.553C482.337 105.553 481.895 105.468 481.507 105.297C481.12 105.127 480.814 104.891 480.589 104.588C480.366 104.284 480.246 103.931 480.229 103.53H481.359C481.373 103.749 481.447 103.938 481.579 104.099C481.713 104.257 481.888 104.38 482.104 104.466C482.32 104.552 482.56 104.596 482.824 104.596C483.114 104.596 483.371 104.545 483.594 104.444C483.819 104.344 483.996 104.203 484.123 104.023C484.25 103.841 484.314 103.631 484.314 103.394C484.314 103.146 484.25 102.929 484.123 102.742C483.998 102.553 483.815 102.404 483.572 102.296C483.332 102.188 483.042 102.134 482.701 102.134H482.079V101.227H482.701C482.975 101.227 483.215 101.178 483.421 101.079C483.63 100.981 483.793 100.844 483.911 100.669C484.028 100.492 484.087 100.284 484.087 100.047C484.087 99.8187 484.035 99.6207 483.932 99.4528C483.831 99.2824 483.688 99.1493 483.5 99.0533C483.316 98.9573 483.097 98.9094 482.845 98.9094C482.605 98.9094 482.381 98.9537 482.172 99.0425C481.966 99.1289 481.798 99.2537 481.669 99.4168C481.539 99.5776 481.469 99.7707 481.46 99.9962H480.384C480.396 99.5979 480.513 99.2477 480.736 98.9454C480.962 98.643 481.259 98.4067 481.629 98.2364C481.998 98.066 482.409 97.9808 482.86 97.9808C483.332 97.9808 483.74 98.0732 484.083 98.258C484.429 98.4403 484.695 98.6838 484.882 98.9885C485.072 99.2932 485.165 99.6267 485.163 99.989C485.165 100.402 485.05 100.752 484.818 101.04C484.587 101.328 484.28 101.521 483.896 101.619V101.677C484.386 101.751 484.765 101.946 485.033 102.26C485.305 102.574 485.439 102.964 485.437 103.43C485.439 103.835 485.326 104.199 485.098 104.52C484.873 104.842 484.564 105.095 484.173 105.279C483.782 105.462 483.335 105.553 482.831 105.553ZM489.363 105.575C488.794 105.572 488.308 105.422 487.905 105.125C487.502 104.827 487.194 104.394 486.98 103.825C486.767 103.257 486.66 102.572 486.66 101.77C486.66 100.972 486.767 100.289 486.98 99.7227C487.196 99.1565 487.506 98.7246 487.909 98.4271C488.314 98.1296 488.799 97.9808 489.363 97.9808C489.927 97.9808 490.41 98.1308 490.813 98.4307C491.216 98.7282 491.525 99.1601 491.738 99.7263C491.954 100.29 492.062 100.972 492.062 101.77C492.062 102.574 491.955 103.26 491.742 103.829C491.528 104.395 491.22 104.828 490.817 105.128C490.414 105.426 489.929 105.575 489.363 105.575ZM489.363 104.614C489.862 104.614 490.252 1Line truncated
|
||||||
|
<path d="M434.982 89.5753H545.504C547.19 89.5753 548.433 89.5756 549.415 89.6559C550.393 89.7358 551.081 89.8932 551.663 90.1898C552.724 90.7304 553.587 91.5929 554.127 92.6538C554.424 93.236 554.581 93.9239 554.661 94.9021C554.741 95.8844 554.742 97.1272 554.742 98.8134V106.091C554.742 107.777 554.741 109.02 554.661 110.003C554.581 110.981 554.424 111.669 554.127 112.251C553.587 113.312 552.724 114.174 551.663 114.715C551.081 115.011 550.393 115.169 549.415 115.249C548.433 115.329 547.19 115.329 545.504 115.329H434.982C433.296 115.329 432.053 115.329 431.071 115.249C430.093 115.169 429.405 115.011 428.823 114.715C427.762 114.174 426.899 113.312 426.359 112.251C426.062 111.669 425.905 110.981 425.825 110.003C425.744 109.02 425.744 107.777 425.744 106.091V98.8134C425.744 97.1272 425.744 95.8844 425.825 94.9021C425.905 93.9239 426.062 93.236 426.359 92.6538C426.899 91.5929 427.762 90.7304 428.823 90.1898C429.405 89.8932 430.093 89.7358 431.071 89.6559C432.053 89.5756 433.296 89.5753 434.982 89.5753Z" stroke="#D1D5DB" stroke-width="0.723892"/>
|
||||||
|
<path d="M434.982 124.74H545.504C547.19 124.74 548.433 124.74 549.415 124.82C550.393 124.9 551.081 125.058 551.663 125.354C552.724 125.895 553.587 126.757 554.127 127.818C554.424 128.401 554.581 129.088 554.661 130.067C554.741 131.049 554.742 132.292 554.742 133.978V141.256C554.742 142.942 554.741 144.185 554.661 145.167C554.581 146.145 554.424 146.833 554.127 147.415C553.587 148.476 552.724 149.339 551.663 149.879C551.081 150.176 550.393 150.333 549.415 150.413C548.433 150.494 547.19 150.494 545.504 150.494H434.982C433.296 150.494 432.053 150.494 431.071 150.413C430.093 150.333 429.405 150.176 428.823 149.879C427.762 149.339 426.899 148.476 426.359 147.415C426.062 146.833 425.905 146.145 425.825 145.167C425.744 144.185 425.744 142.942 425.744 141.256V133.978C425.744 132.292 425.744 131.049 425.825 130.067C425.905 129.088 426.062 128.401 426.359 127.818C426.899 126.757 427.762 125.895 428.823 125.354C429.405 125.058 430.093 124.9 431.071 124.82C432.053 124.74 433.296 124.74 434.982 124.74Z" fill="white"/>
|
||||||
|
<path d="M471.248 133.246V140.617H470.133V134.362H470.089L468.326 135.513V134.448L470.165 133.246H471.248ZM475.808 140.739C475.239 140.737 474.754 140.587 474.351 140.289C473.947 139.992 473.639 139.559 473.426 138.99C473.212 138.421 473.105 137.736 473.105 136.935C473.105 136.136 473.212 135.453 473.426 134.887C473.642 134.321 473.951 133.889 474.354 133.592C474.76 133.294 475.244 133.145 475.808 133.145C476.372 133.145 476.855 133.295 477.258 133.595C477.661 133.893 477.97 134.325 478.183 134.891C478.399 135.455 478.507 136.136 478.507 136.935C478.507 137.739 478.4 138.425 478.187 138.994C477.973 139.56 477.665 139.993 477.262 140.293C476.859 140.59 476.374 140.739 475.808 140.739ZM475.808 139.778C476.307 139.778 476.697 139.535 476.978 139.048C477.261 138.561 477.402 137.856 477.402 136.935C477.402 136.323 477.338 135.806 477.208 135.384C477.081 134.959 476.897 134.638 476.657 134.419C476.42 134.199 476.137 134.088 475.808 134.088C475.311 134.088 474.922 134.333 474.638 134.822C474.355 135.312 474.213 136.016 474.21 136.935C474.21 137.549 474.274 138.069 474.401 138.493C474.53 138.916 474.714 139.236 474.952 139.454C475.189 139.67 475.475 139.778 475.808 139.778ZM480.507 139.703C480.311 139.703 480.141 139.633 480 139.494C479.858 139.352 479.788 139.182 479.788 138.983C479.788 138.786 479.858 138.618 480 138.479C480.141 138.337 480.311 138.267 480.507 138.267C480.704 138.267 480.873 138.337 481.015 138.479C481.156 138.618 481.227 138.786 481.227 138.983C481.227 139.115 481.194 139.236 481.126 139.346C481.062 139.454 480.975 139.541 480.867 139.605C480.759 139.67 480.639 139.703 480.507 139.703ZM480.507 136.01C480.311 136.01 480.141 135.941 480 135.801C479.858 135.66 479.788 135.489 479.788 135.29C479.788 135.094 479.858 134.926 480 134.786C480.141 134.645 480.311 134.574 480.507 134.574C480.704 134.574 480.873 134.645 481.015 134.786C481.156 134.926 481.227 135.094 481.227 135.29C481.227 135.422 481.194 135.543 481.126 135.654C481.062 135.762 480.975 135.848 480.867 135.913C480.759 135.978 480.639 136.01 480.507 136.01ZM485.22 140.739C484.651 140.737 484.166 140.587 483.763 140.289C483.359 139.992 483.051 139.559 482.838 138.99C482.624 138.421 482.517 137.736 482.517 136.935C482.517 136.136 482.624 135.453 482.838 134.887C483.054 134.321 483.363 133.889 483.766 133.592C484.172 133.294 484.656 133.145 485.22 133.145C485.784 133.145 486.267 133.295 486.67 133.595C487.074 133.893 487.382 134.325 487.595 134.891C487.811 135.455 487.919 136.136 487.919 136.935C487.919 137.739 487.812 138.425 487.599 138.994C487.385 139.56 487.077 139.993 486.674 140.293C486.271 140.59 485.786 140.739 485.22 140.739ZM485.22 139.778C485.719 139.778 486.109 139.535 486.39 139.048C486.673 138.561 486.814 137.856 486.814 136.935C486.814 136.323 486.75 135.806 486.62 135.384C486.493 134.959 486.309 134.638 486.069 134.419C485.832 134.199 485.549 134.088 485.22 134.088C484.723 134.088 484.334 134.333 484.05 134.822C483.767 135.312 483.625 136.016 483.622 136.935C483.622 137.549 483.686 138.069 483.813 138.493C483.942 138.916 484.126 139.236 484.364 139.454C484.601 139.67 484.887 139.778 485.22 139.778ZM491.762 140.739C491.193 140.737 490.707 140.587 490.304 140.289C489.901 139.992 489.593 139.559 489.379 138.99C489.166 138.421 489.059 137.736 489.059 136.935C489.059 136.136 489.166 135.453 489.379 134.887C489.595 134.321 489.905 133.889 490.308 133.592C490.713 133.294 491.198 133.145 491.762 133.145C492.326 133.145 492.809 133.295 493.212 133.595C493.615 133.893 493.924 134.325 494.137 134.891C494.353 135.455 494.461 136.136 494.461 136.935C494.461 137.739 494.354 138.425 494.141 138.994C493.927 139.56 493.619 139.993 493.216 140.293C492.813 140.59 492.328 140.739 491.762 140.739ZM491.762 139.778C492.261 139.778 492.651 139.535 492.932 139.048C493.215 138.561 493.356 137.856 493.356 136.935C493.356 136.323 493.291 135.806 493.162 135.384C493.035 134.959 492.851 134.638 492.611 134.419C492.374 134.199 492.091 134.088 491.762 134.088C491.265 134.088 490.875 134.333 490.592 134.822C490.309 135.312 490.166 136.016 490.164 136.935C490.164 137.549 490.228 138.069 490.355 138.493C490.484 138.916 490.668 139.236 490.905 139.454C491.143 139.67 491.428 139.778 491.762 139.778ZM500.043 140.739C499.693 140.739 499.376 140.674 499.093 140.545C498.81 140.413 498.585 140.222 498.42 139.972C498.257 139.723 498.175 139.417 498.175 139.055C498.175 138.743 498.235 138.486 498.355 138.285C498.475 138.083 498.637 137.924 498.841 137.806C499.045 137.688 499.273 137.6 499.525 137.54C499.777 137.48 500.033 137.434 500.295 137.403C500.626 137.364 500.895 137.333 501.101 137.309C501.307 137.283 501.457 137.241 501.551 137.183C501.645 137.126 501.691 137.032 501.691 136.903V136.877C501.691 136.563 501.603 136.32 501.425 136.147C501.25 135.974 500.988 135.888 500.64 135.888C500.278 135.888 499.993 135.968 499.784 136.129C499.578 136.287 499.435 136.464 499.356 136.658L498.344 136.428C498.464 136.092 498.639 135.821 498.87 135.614C499.102 135.406 499.37 135.25Line truncated
|
||||||
|
<path d="M434.982 124.74H545.504C547.19 124.74 548.433 124.74 549.415 124.82C550.393 124.9 551.081 125.058 551.663 125.354C552.724 125.895 553.587 126.757 554.127 127.818C554.424 128.401 554.581 129.088 554.661 130.067C554.741 131.049 554.742 132.292 554.742 133.978V141.256C554.742 142.942 554.741 144.185 554.661 145.167C554.581 146.145 554.424 146.833 554.127 147.415C553.587 148.476 552.724 149.339 551.663 149.879C551.081 150.176 550.393 150.333 549.415 150.413C548.433 150.494 547.19 150.494 545.504 150.494H434.982C433.296 150.494 432.053 150.494 431.071 150.413C430.093 150.333 429.405 150.176 428.823 149.879C427.762 149.339 426.899 148.476 426.359 147.415C426.062 146.833 425.905 146.145 425.825 145.167C425.744 144.185 425.744 142.942 425.744 141.256V133.978C425.744 132.292 425.744 131.049 425.825 130.067C425.905 129.088 426.062 128.401 426.359 127.818C426.899 126.757 427.762 125.895 428.823 125.354C429.405 125.058 430.093 124.9 431.071 124.82C432.053 124.74 433.296 124.74 434.982 124.74Z" stroke="#D1D5DB" stroke-width="0.723892"/>
|
||||||
|
<path d="M434.982 159.904H545.504C547.19 159.904 548.433 159.905 549.415 159.985C550.393 160.065 551.081 160.222 551.663 160.519C552.724 161.059 553.587 161.922 554.127 162.983C554.424 163.565 554.581 164.253 554.661 165.231C554.741 166.214 554.742 167.456 554.742 169.142V176.42C554.742 178.106 554.741 179.349 554.661 180.332C554.581 181.31 554.424 181.998 554.127 182.58C553.587 183.641 552.724 184.503 551.663 185.044C551.081 185.341 550.393 185.498 549.415 185.578C548.433 185.658 547.19 185.658 545.504 185.658H434.982C433.296 185.658 432.053 185.658 431.071 185.578C430.093 185.498 429.405 185.341 428.823 185.044C427.762 184.503 426.899 183.641 426.359 182.58C426.062 181.998 425.905 181.31 425.825 180.332C425.744 179.349 425.744 178.106 425.744 176.42V169.142C425.744 167.456 425.744 166.214 425.825 165.231C425.905 164.253 426.062 163.565 426.359 162.983C426.899 161.922 427.762 161.059 428.823 160.519C429.405 160.222 430.093 160.065 431.071 159.985C432.053 159.905 433.296 159.904 434.982 159.904Z" fill="white"/>
|
||||||
|
<path d="M471.248 168.411V175.781H470.133V169.526H470.089L468.326 170.678V169.613L470.165 168.411H471.248ZM475.808 175.904C475.239 175.901 474.754 175.751 474.351 175.454C473.947 175.156 473.639 174.723 473.426 174.155C473.212 173.586 473.105 172.901 473.105 172.1C473.105 171.301 473.212 170.618 473.426 170.052C473.642 169.486 473.951 169.054 474.354 168.756C474.76 168.459 475.244 168.31 475.808 168.31C476.372 168.31 476.855 168.46 477.258 168.76C477.661 169.057 477.97 169.489 478.183 170.055C478.399 170.619 478.507 171.301 478.507 172.1C478.507 172.903 478.4 173.59 478.187 174.158C477.973 174.724 477.665 175.157 477.262 175.457C476.859 175.755 476.374 175.904 475.808 175.904ZM475.808 174.943C476.307 174.943 476.697 174.699 476.978 174.212C477.261 173.725 477.402 173.021 477.402 172.1C477.402 171.488 477.338 170.971 477.208 170.548C477.081 170.124 476.897 169.802 476.657 169.584C476.42 169.363 476.137 169.253 475.808 169.253C475.311 169.253 474.922 169.498 474.638 169.987C474.355 170.476 474.213 171.181 474.21 172.1C474.21 172.714 474.274 173.233 474.401 173.658C474.53 174.08 474.714 174.4 474.952 174.619C475.189 174.835 475.475 174.943 475.808 174.943ZM480.507 174.867C480.311 174.867 480.141 174.798 480 174.658C479.858 174.517 479.788 174.346 479.788 174.147C479.788 173.951 479.858 173.783 480 173.644C480.141 173.502 480.311 173.431 480.507 173.431C480.704 173.431 480.873 173.502 481.015 173.644C481.156 173.783 481.227 173.951 481.227 174.147C481.227 174.279 481.194 174.4 481.126 174.511C481.062 174.619 480.975 174.705 480.867 174.77C480.759 174.835 480.639 174.867 480.507 174.867ZM480.507 171.175C480.311 171.175 480.141 171.105 480 170.966C479.858 170.824 479.788 170.654 479.788 170.455C479.788 170.258 479.858 170.09 480 169.951C480.141 169.809 480.311 169.739 480.507 169.739C480.704 169.739 480.873 169.809 481.015 169.951C481.156 170.09 481.227 170.258 481.227 170.455C481.227 170.587 481.194 170.708 481.126 170.818C481.062 170.926 480.975 171.013 480.867 171.077C480.759 171.142 480.639 171.175 480.507 171.175ZM485.22 175.882C484.726 175.882 484.284 175.797 483.896 175.626C483.509 175.456 483.203 175.22 482.978 174.918C482.755 174.613 482.635 174.26 482.618 173.859H483.748C483.763 174.078 483.836 174.267 483.968 174.428C484.102 174.586 484.277 174.709 484.493 174.795C484.709 174.882 484.949 174.925 485.213 174.925C485.503 174.925 485.76 174.874 485.983 174.774C486.209 174.673 486.385 174.532 486.512 174.352C486.639 174.17 486.703 173.96 486.703 173.723C486.703 173.476 486.639 173.258 486.512 173.071C486.387 172.882 486.204 172.733 485.961 172.625C485.722 172.517 485.431 172.463 485.091 172.463H484.468V171.556H485.091C485.364 171.556 485.604 171.507 485.81 171.409C486.019 171.31 486.182 171.173 486.3 170.998C486.417 170.821 486.476 170.613 486.476 170.376C486.476 170.148 486.425 169.95 486.321 169.782C486.221 169.612 486.077 169.478 485.889 169.382C485.705 169.286 485.486 169.238 485.234 169.238C484.995 169.238 484.77 169.283 484.561 169.372C484.355 169.458 484.187 169.583 484.058 169.746C483.928 169.907 483.858 170.1 483.849 170.325H482.773C482.785 169.927 482.902 169.577 483.126 169.274C483.351 168.972 483.649 168.736 484.018 168.565C484.388 168.395 484.798 168.31 485.249 168.31C485.722 168.31 486.129 168.402 486.472 168.587C486.818 168.769 487.084 169.013 487.271 169.318C487.461 169.622 487.555 169.956 487.552 170.318C487.555 170.731 487.439 171.081 487.207 171.369C486.976 171.657 486.669 171.85 486.285 171.948V172.006C486.775 172.08 487.154 172.275 487.423 172.589C487.694 172.903 487.828 173.293 487.826 173.759C487.828 174.164 487.715 174.528 487.487 174.849C487.262 175.171 486.954 175.424 486.562 175.609C486.171 175.791 485.724 175.882 485.22 175.882ZM491.752 175.904C491.183 175.901 490.698 175.751 490.295 175.454C489.891 175.156 489.583 174.723 489.37 174.155C489.156 173.586 489.049 172.901 489.049 172.1C489.049 171.301 489.156 170.618 489.37 170.052C489.586 169.486 489.895 169.054 490.298 168.756C490.704 168.459 491.188 168.31 491.752 168.31C492.316 168.31 492.799 168.46 493.202 168.76C493.605 169.057 493.914 169.489 494.127 170.055C494.343 170.619 494.451 171.301 494.451 172.1C494.451 172.903 494.344 173.59 494.131 174.158C493.917 174.724 493.609 175.157 493.206 175.457C492.803 175.755 492.318 175.904 491.752 175.904ZM491.752 174.943C492.251 174.943 492.641 174.699 492.922 174.212C493.205 173.725 493.346 173.021 493.346 172.1C493.346 171.488 493.282 170.971 493.152 170.548C493.025 170.124 492.841 169.802 492.601 169.584C492.364 169.363 492.081 169.253 491.752 169.253C491.255 169.253 490.866 169.498 490.582 169.987C490.299 170.476 490.157 171.181 490.154 172.1C490.154 172.714 490.218 173.233 490.345 173.658C490.474 174.08 490.658 174.4 490.896 174.619C491.133 174.835 491.419 174.943 491.752 174.943ZM500.033 175.904C499.683 175.904 499.366 175.839 499.083 175.709C498.8 175.577 498.576 175.387 498.41 175.137C498.247 174.888 498.165 174.582 498.165 174.219C498.165 173.907 498.225 173.651 498.345 173.4Line truncated
|
||||||
|
<path d="M434.982 159.904H545.504C547.19 159.904 548.433 159.905 549.415 159.985C550.393 160.065 551.081 160.222 551.663 160.519C552.724 161.059 553.587 161.922 554.127 162.983C554.424 163.565 554.581 164.253 554.661 165.231C554.741 166.214 554.742 167.456 554.742 169.142V176.42C554.742 178.106 554.741 179.349 554.661 180.332C554.581 181.31 554.424 181.998 554.127 182.58C553.587 183.641 552.724 184.503 551.663 185.044C551.081 185.341 550.393 185.498 549.415 185.578C548.433 185.658 547.19 185.658 545.504 185.658H434.982C433.296 185.658 432.053 185.658 431.071 185.578C430.093 185.498 429.405 185.341 428.823 185.044C427.762 184.503 426.899 183.641 426.359 182.58C426.062 181.998 425.905 181.31 425.825 180.332C425.744 179.349 425.744 178.106 425.744 176.42V169.142C425.744 167.456 425.744 166.214 425.825 165.231C425.905 164.253 426.062 163.565 426.359 162.983C426.899 161.922 427.762 161.059 428.823 160.519C429.405 160.222 430.093 160.065 431.071 159.985C432.053 159.905 433.296 159.904 434.982 159.904Z" stroke="#D1D5DB" stroke-width="0.723892"/>
|
||||||
|
<path d="M434.982 195.069H545.504C547.19 195.069 548.433 195.069 549.415 195.15C550.393 195.229 551.081 195.387 551.663 195.683C552.724 196.224 553.587 197.087 554.127 198.147C554.424 198.73 554.581 199.418 554.661 200.396C554.741 201.378 554.742 202.621 554.742 204.307V211.585C554.742 213.271 554.741 214.514 554.661 215.496C554.581 216.474 554.424 217.162 554.127 217.744C553.587 218.805 552.724 219.668 551.663 220.208C551.081 220.505 550.393 220.662 549.415 220.742C548.433 220.823 547.19 220.823 545.504 220.823H434.982C433.296 220.823 432.053 220.823 431.071 220.742C430.093 220.662 429.405 220.505 428.823 220.208C427.762 219.668 426.899 218.805 426.359 217.744C426.062 217.162 425.905 216.474 425.825 215.496C425.744 214.514 425.744 213.271 425.744 211.585V204.307C425.744 202.621 425.744 201.378 425.825 200.396C425.905 199.418 426.062 198.73 426.359 198.147C426.899 197.087 427.762 196.224 428.823 195.683C429.405 195.387 430.093 195.229 431.071 195.15C432.053 195.069 433.296 195.069 434.982 195.069Z" fill="white"/>
|
||||||
|
<path d="M472.248 203.575V210.946H471.133V204.691H471.089L469.326 205.843V204.777L471.165 203.575H472.248ZM477.038 203.575V210.946H475.923V204.691H475.88L474.116 205.843V204.777L475.955 203.575H477.038ZM479.756 210.032C479.559 210.032 479.39 209.962 479.248 209.823C479.107 209.681 479.036 209.511 479.036 209.312C479.036 209.115 479.107 208.947 479.248 208.808C479.39 208.667 479.559 208.596 479.756 208.596C479.952 208.596 480.121 208.667 480.263 208.808C480.405 208.947 480.475 209.115 480.475 209.312C480.475 209.444 480.442 209.565 480.375 209.675C480.31 209.783 480.223 209.87 480.115 209.935C480.007 209.999 479.888 210.032 479.756 210.032ZM479.756 206.339C479.559 206.339 479.39 206.27 479.248 206.13C479.107 205.989 479.036 205.819 479.036 205.619C479.036 205.423 479.107 205.255 479.248 205.116C479.39 204.974 479.559 204.903 479.756 204.903C479.952 204.903 480.121 204.974 480.263 205.116C480.405 205.255 480.475 205.423 480.475 205.619C480.475 205.751 480.442 205.873 480.375 205.983C480.31 206.091 480.223 206.177 480.115 206.242C480.007 206.307 479.888 206.339 479.756 206.339ZM484.468 211.068C483.9 211.066 483.414 210.916 483.011 210.618C482.608 210.321 482.299 209.888 482.086 209.319C481.872 208.75 481.766 208.065 481.766 207.264C481.766 206.465 481.872 205.783 482.086 205.216C482.302 204.65 482.611 204.218 483.014 203.921C483.42 203.623 483.904 203.474 484.468 203.474C485.032 203.474 485.516 203.624 485.919 203.924C486.322 204.222 486.63 204.654 486.844 205.22C487.06 205.784 487.167 206.465 487.167 207.264C487.167 208.068 487.061 208.754 486.847 209.323C486.634 209.889 486.325 210.322 485.922 210.622C485.519 210.919 485.035 211.068 484.468 211.068ZM484.468 210.107C484.967 210.107 485.357 209.864 485.638 209.377C485.921 208.89 486.063 208.185 486.063 207.264C486.063 206.652 485.998 206.135 485.868 205.713C485.741 205.288 485.558 204.967 485.318 204.749C485.08 204.528 484.797 204.417 484.468 204.417C483.972 204.417 483.582 204.662 483.299 205.152C483.016 205.641 482.873 206.345 482.87 207.264C482.87 207.878 482.934 208.398 483.061 208.822C483.191 209.245 483.374 209.565 483.612 209.783C483.849 209.999 484.135 210.107 484.468 210.107ZM491.01 211.068C490.442 211.066 489.956 210.916 489.553 210.618C489.15 210.321 488.841 209.888 488.628 209.319C488.414 208.75 488.307 208.065 488.307 207.264C488.307 206.465 488.414 205.783 488.628 205.216C488.844 204.65 489.153 204.218 489.556 203.921C489.962 203.623 490.446 203.474 491.01 203.474C491.574 203.474 492.057 203.624 492.461 203.924C492.864 204.222 493.172 204.654 493.385 205.22C493.601 205.784 493.709 206.465 493.709 207.264C493.709 208.068 493.603 208.754 493.389 209.323C493.176 209.889 492.867 210.322 492.464 210.622C492.061 210.919 491.576 211.068 491.01 211.068ZM491.01 210.107C491.509 210.107 491.899 209.864 492.18 209.377C492.463 208.89 492.605 208.185 492.605 207.264C492.605 206.652 492.54 206.135 492.41 205.713C492.283 205.288 492.099 204.967 491.86 204.749C491.622 204.528 491.339 204.417 491.01 204.417C490.514 204.417 490.124 204.662 489.841 205.152C489.557 205.641 489.415 206.345 489.412 207.264C489.412 207.878 489.476 208.398 489.603 208.822C489.733 209.245 489.916 209.565 490.154 209.783C490.391 209.999 490.677 210.107 491.01 210.107ZM499.291 211.068C498.941 211.068 498.624 211.003 498.341 210.874C498.058 210.742 497.834 210.551 497.668 210.302C497.505 210.052 497.423 209.746 497.423 209.384C497.423 209.072 497.483 208.815 497.603 208.614C497.723 208.412 497.885 208.253 498.089 208.135C498.293 208.018 498.521 207.929 498.773 207.869C499.025 207.809 499.282 207.763 499.543 207.732C499.874 207.694 500.143 207.662 500.349 207.638C500.556 207.612 500.706 207.57 500.799 207.512C500.893 207.455 500.94 207.361 500.94 207.232V207.207C500.94 206.892 500.851 206.649 500.673 206.476C500.498 206.303 500.237 206.217 499.889 206.217C499.526 206.217 499.241 206.297 499.032 206.458C498.826 206.616 498.683 206.793 498.604 206.987L497.593 206.757C497.713 206.421 497.888 206.15 498.118 205.943C498.351 205.735 498.618 205.583 498.921 205.49C499.223 205.394 499.541 205.346 499.874 205.346C500.095 205.346 500.329 205.372 500.576 205.425C500.826 205.475 501.058 205.569 501.274 205.706C501.493 205.843 501.671 206.038 501.81 206.292C501.95 206.544 502.019 206.872 502.019 207.275V210.946H500.968V210.19H500.925C500.856 210.329 500.751 210.466 500.612 210.6C500.473 210.735 500.294 210.846 500.076 210.935C499.857 211.024 499.596 211.068 499.291 211.068ZM499.525 210.204C499.823 210.204 500.077 210.146 500.288 210.028C500.502 209.911 500.664 209.757 500.774 209.567C500.887 209.375 500.943 209.17 500.943 208.952V208.239C500.905 208.278 500.83 208.314 500.72 208.347C500.612 208.379 500.488 208.406 500.349 208.43C500.21 208.452 500.075 208.472 499.943 208.491C499.811 208.508 499.7 208.523 499.612 208.535C499.403 208.561 499.212 208.605 499.039 208.668C498.869 208.73 498.732 208.82 498.629 208.938C498.528 209.053 498.478 209.206 498.478 209.398C498.478 209.665 498.576 209.866 498.773 210.0Line truncated
|
||||||
|
<path d="M434.982 195.069H545.504C547.19 195.069 548.433 195.069 549.415 195.15C550.393 195.229 551.081 195.387 551.663 195.683C552.724 196.224 553.587 197.087 554.127 198.147C554.424 198.73 554.581 199.418 554.661 200.396C554.741 201.378 554.742 202.621 554.742 204.307V211.585C554.742 213.271 554.741 214.514 554.661 215.496C554.581 216.474 554.424 217.162 554.127 217.744C553.587 218.805 552.724 219.668 551.663 220.208C551.081 220.505 550.393 220.662 549.415 220.742C548.433 220.823 547.19 220.823 545.504 220.823H434.982C433.296 220.823 432.053 220.823 431.071 220.742C430.093 220.662 429.405 220.505 428.823 220.208C427.762 219.668 426.899 218.805 426.359 217.744C426.062 217.162 425.905 216.474 425.825 215.496C425.744 214.514 425.744 213.271 425.744 211.585V204.307C425.744 202.621 425.744 201.378 425.825 200.396C425.905 199.418 426.062 198.73 426.359 198.147C426.899 197.087 427.762 196.224 428.823 195.683C429.405 195.387 430.093 195.229 431.071 195.15C432.053 195.069 433.296 195.069 434.982 195.069Z" stroke="#D1D5DB" stroke-width="0.723892"/>
|
||||||
|
<path d="M434.982 230.234H545.504C547.19 230.234 548.433 230.234 549.415 230.314C550.393 230.394 551.081 230.551 551.663 230.848C552.724 231.389 553.587 232.251 554.127 233.312C554.424 233.894 554.581 234.582 554.661 235.56C554.741 236.543 554.742 237.785 554.742 239.472V246.749C554.742 248.436 554.741 249.678 554.661 250.661C554.581 251.639 554.424 252.327 554.127 252.909C553.587 253.97 552.724 254.832 551.663 255.373C551.081 255.67 550.393 255.827 549.415 255.907C548.433 255.987 547.19 255.987 545.504 255.987H434.982C433.296 255.987 432.053 255.987 431.071 255.907C430.093 255.827 429.405 255.67 428.823 255.373C427.762 254.832 426.899 253.97 426.359 252.909C426.062 252.327 425.905 251.639 425.825 250.661C425.744 249.678 425.744 248.436 425.744 246.749V239.472C425.744 237.785 425.744 236.543 425.825 235.56C425.905 234.582 426.062 233.894 426.359 233.312C426.899 232.251 427.762 231.389 428.823 230.848C429.405 230.551 430.093 230.394 431.071 230.314C432.053 230.234 433.296 230.234 434.982 230.234Z" fill="white"/>
|
||||||
|
<path d="M472.248 238.74V246.11H471.133V239.855H471.089L469.326 241.007V239.942L471.165 238.74H472.248ZM477.038 238.74V246.11H475.923V239.855H475.88L474.116 241.007V239.942L475.955 238.74H477.038ZM479.756 245.196C479.559 245.196 479.39 245.127 479.248 244.987C479.107 244.846 479.036 244.676 479.036 244.476C479.036 244.28 479.107 244.112 479.248 243.973C479.39 243.831 479.559 243.76 479.756 243.76C479.952 243.76 480.121 243.831 480.263 243.973C480.405 244.112 480.475 244.28 480.475 244.476C480.475 244.608 480.442 244.73 480.375 244.84C480.31 244.948 480.223 245.034 480.115 245.099C480.007 245.164 479.888 245.196 479.756 245.196ZM479.756 241.504C479.559 241.504 479.39 241.434 479.248 241.295C479.107 241.153 479.036 240.983 479.036 240.784C479.036 240.587 479.107 240.419 479.248 240.28C479.39 240.139 479.559 240.068 479.756 240.068C479.952 240.068 480.121 240.139 480.263 240.28C480.405 240.419 480.475 240.587 480.475 240.784C480.475 240.916 480.442 241.037 480.375 241.147C480.31 241.255 480.223 241.342 480.115 241.407C480.007 241.471 479.888 241.504 479.756 241.504ZM484.468 246.211C483.974 246.211 483.533 246.126 483.144 245.956C482.758 245.785 482.452 245.549 482.226 245.247C482.003 244.942 481.883 244.589 481.866 244.189H482.996C483.011 244.407 483.084 244.596 483.216 244.757C483.35 244.916 483.525 245.038 483.741 245.124C483.957 245.211 484.197 245.254 484.461 245.254C484.751 245.254 485.008 245.203 485.231 245.103C485.457 245.002 485.633 244.862 485.76 244.682C485.887 244.499 485.951 244.289 485.951 244.052C485.951 243.805 485.887 243.588 485.76 243.4C485.636 243.211 485.452 243.062 485.21 242.954C484.97 242.846 484.679 242.792 484.339 242.792H483.716V241.885H484.339C484.612 241.885 484.852 241.836 485.059 241.738C485.267 241.639 485.43 241.503 485.548 241.327C485.666 241.15 485.724 240.942 485.724 240.705C485.724 240.477 485.673 240.279 485.57 240.111C485.469 239.941 485.325 239.807 485.138 239.712C484.953 239.616 484.735 239.568 484.483 239.568C484.243 239.568 484.018 239.612 483.81 239.701C483.603 239.787 483.435 239.912 483.306 240.075C483.176 240.236 483.107 240.429 483.097 240.654H482.021C482.033 240.256 482.151 239.906 482.374 239.604C482.599 239.301 482.897 239.065 483.266 238.895C483.636 238.724 484.046 238.639 484.497 238.639C484.97 238.639 485.378 238.731 485.721 238.916C486.066 239.099 486.333 239.342 486.52 239.647C486.709 239.951 486.803 240.285 486.8 240.647C486.803 241.06 486.688 241.41 486.455 241.698C486.225 241.986 485.917 242.179 485.534 242.278V242.335C486.023 242.409 486.402 242.604 486.671 242.918C486.942 243.232 487.076 243.622 487.074 244.088C487.076 244.493 486.964 244.857 486.736 245.178C486.51 245.5 486.202 245.753 485.811 245.938C485.42 246.12 484.972 246.211 484.468 246.211ZM491 246.233C490.432 246.23 489.946 246.08 489.543 245.783C489.14 245.485 488.831 245.052 488.618 244.484C488.404 243.915 488.298 243.23 488.298 242.429C488.298 241.63 488.404 240.947 488.618 240.381C488.834 239.815 489.143 239.383 489.546 239.085C489.952 238.788 490.436 238.639 491 238.639C491.564 238.639 492.048 238.789 492.451 239.089C492.854 239.386 493.162 239.818 493.376 240.385C493.592 240.948 493.699 241.63 493.699 242.429C493.699 243.232 493.593 243.919 493.379 244.487C493.166 245.053 492.857 245.487 492.454 245.786C492.051 246.084 491.567 246.233 491 246.233ZM491 245.272C491.499 245.272 491.889 245.028 492.17 244.541C492.453 244.054 492.595 243.35 492.595 242.429C492.595 241.817 492.53 241.3 492.4 240.878C492.273 240.453 492.09 240.131 491.85 239.913C491.612 239.692 491.329 239.582 491 239.582C490.504 239.582 490.114 239.827 489.831 240.316C489.548 240.806 489.405 241.51 489.402 242.429C489.402 243.043 489.466 243.562 489.593 243.987C489.723 244.409 489.906 244.73 490.144 244.948C490.381 245.164 490.667 245.272 491 245.272ZM499.281 246.233C498.931 246.233 498.614 246.168 498.331 246.038C498.048 245.906 497.824 245.716 497.658 245.466C497.495 245.217 497.414 244.911 497.414 244.548C497.414 244.237 497.474 243.98 497.593 243.778C497.713 243.577 497.875 243.417 498.079 243.3C498.283 243.182 498.511 243.093 498.763 243.033C499.015 242.973 499.272 242.928 499.533 242.897C499.864 242.858 500.133 242.827 500.339 242.803C500.546 242.777 500.696 242.735 500.789 242.677C500.883 242.619 500.93 242.526 500.93 242.396V242.371C500.93 242.057 500.841 241.813 500.663 241.641C500.488 241.468 500.227 241.381 499.879 241.381C499.516 241.381 499.231 241.462 499.022 241.623C498.816 241.781 498.673 241.957 498.594 242.152L497.583 241.921C497.703 241.585 497.878 241.314 498.108 241.108C498.341 240.899 498.608 240.748 498.911 240.654C499.213 240.558 499.531 240.51 499.864 240.51C500.085 240.51 500.319 240.537 500.566 240.59C500.816 240.64 501.048 240.734 501.264 240.87C501.483 241.007 501.661 241.203 501.801 241.457C501.94 241.709 502.009 242.036 502.009 242.439V246.11H500.958V245.355H500.915C500.846 245.494 500.741 245.63 500.602 245.765C500.463 245.899 500.284 246.011 500.066 246.1C499.848 246.188 499.586 246.233 499.Line truncated
|
||||||
|
<path d="M434.982 230.234H545.504C547.19 230.234 548.433 230.234 549.415 230.314C550.393 230.394 551.081 230.551 551.663 230.848C552.724 231.389 553.587 232.251 554.127 233.312C554.424 233.894 554.581 234.582 554.661 235.56C554.741 236.543 554.742 237.785 554.742 239.472V246.749C554.742 248.436 554.741 249.678 554.661 250.661C554.581 251.639 554.424 252.327 554.127 252.909C553.587 253.97 552.724 254.832 551.663 255.373C551.081 255.67 550.393 255.827 549.415 255.907C548.433 255.987 547.19 255.987 545.504 255.987H434.982C433.296 255.987 432.053 255.987 431.071 255.907C430.093 255.827 429.405 255.67 428.823 255.373C427.762 254.832 426.899 253.97 426.359 252.909C426.062 252.327 425.905 251.639 425.825 250.661C425.744 249.678 425.744 248.436 425.744 246.749V239.472C425.744 237.785 425.744 236.543 425.825 235.56C425.905 234.582 426.062 233.894 426.359 233.312C426.899 232.251 427.762 231.389 428.823 230.848C429.405 230.551 430.093 230.394 431.071 230.314C432.053 230.234 433.296 230.234 434.982 230.234Z" stroke="#D1D5DB" stroke-width="0.723892"/>
|
||||||
|
<path d="M434.982 265.398H545.504C547.19 265.398 548.433 265.398 549.415 265.479C550.393 265.559 551.081 265.716 551.663 266.013C552.724 266.553 553.587 267.416 554.127 268.477C554.424 269.059 554.581 269.747 554.661 270.725C554.741 271.707 554.742 272.95 554.742 274.636V281.914C554.742 283.6 554.741 284.843 554.661 285.825C554.581 286.803 554.424 287.491 554.127 288.074C553.587 289.134 552.724 289.997 551.663 290.538C551.081 290.834 550.393 290.992 549.415 291.071C548.433 291.152 547.19 291.152 545.504 291.152H434.982C433.296 291.152 432.053 291.152 431.071 291.071C430.093 290.992 429.405 290.834 428.823 290.538C427.762 289.997 426.899 289.134 426.359 288.074C426.062 287.491 425.905 286.803 425.825 285.825C425.744 284.843 425.744 283.6 425.744 281.914V274.636C425.744 272.95 425.744 271.707 425.825 270.725C425.905 269.747 426.062 269.059 426.359 268.477C426.899 267.416 427.762 266.553 428.823 266.013C429.405 265.716 430.093 265.559 431.071 265.479C432.053 265.398 433.296 265.398 434.982 265.398Z" fill="white"/>
|
||||||
|
<path d="M471.248 273.904V281.275H470.133V275.02H470.089L468.326 276.172V275.106L470.165 273.904H471.248ZM473.242 281.275V280.469L475.736 277.885C476.002 277.604 476.222 277.358 476.395 277.147C476.57 276.933 476.701 276.731 476.787 276.539C476.873 276.347 476.917 276.143 476.917 275.927C476.917 275.682 476.859 275.471 476.744 275.294C476.629 275.114 476.471 274.976 476.272 274.88C476.073 274.781 475.849 274.732 475.599 274.732C475.335 274.732 475.105 274.786 474.908 274.894C474.712 275.002 474.56 275.154 474.455 275.351C474.349 275.548 474.297 275.778 474.297 276.042H473.235C473.235 275.593 473.338 275.201 473.544 274.865C473.751 274.529 474.034 274.269 474.394 274.084C474.754 273.897 475.163 273.804 475.621 273.804C476.084 273.804 476.492 273.896 476.845 274.081C477.2 274.263 477.477 274.513 477.676 274.829C477.875 275.144 477.975 275.499 477.975 275.895C477.975 276.168 477.923 276.436 477.82 276.697C477.719 276.959 477.543 277.25 477.291 277.572C477.039 277.891 476.689 278.278 476.24 278.734L474.775 280.267V280.321H478.093V281.275H473.242ZM480.181 280.361C479.984 280.361 479.815 280.291 479.673 280.152C479.532 280.01 479.461 279.84 479.461 279.641C479.461 279.444 479.532 279.276 479.673 279.137C479.815 278.996 479.984 278.925 480.181 278.925C480.377 278.925 480.547 278.996 480.688 279.137C480.83 279.276 480.901 279.444 480.901 279.641C480.901 279.773 480.867 279.894 480.8 280.004C480.735 280.112 480.649 280.199 480.541 280.264C480.433 280.328 480.313 280.361 480.181 280.361ZM480.181 276.668C479.984 276.668 479.815 276.599 479.673 276.46C479.532 276.318 479.461 276.148 479.461 275.949C479.461 275.752 479.532 275.584 479.673 275.445C479.815 275.303 479.984 275.232 480.181 275.232C480.377 275.232 480.547 275.303 480.688 275.445C480.83 275.584 480.901 275.752 480.901 275.949C480.901 276.081 480.867 276.202 480.8 276.312C480.735 276.42 480.649 276.506 480.541 276.571C480.433 276.636 480.313 276.668 480.181 276.668ZM484.893 281.397C484.325 281.395 483.839 281.245 483.436 280.947C483.033 280.65 482.725 280.217 482.511 279.648C482.297 279.08 482.191 278.395 482.191 277.593C482.191 276.794 482.297 276.112 482.511 275.545C482.727 274.979 483.036 274.547 483.44 274.25C483.845 273.952 484.33 273.804 484.893 273.804C485.457 273.804 485.941 273.954 486.344 274.253C486.747 274.551 487.055 274.983 487.269 275.549C487.485 276.113 487.593 276.794 487.593 277.593C487.593 278.397 487.486 279.083 487.272 279.652C487.059 280.218 486.751 280.651 486.347 280.951C485.944 281.249 485.46 281.397 484.893 281.397ZM484.893 280.436C485.393 280.436 485.782 280.193 486.063 279.706C486.346 279.219 486.488 278.515 486.488 277.593C486.488 276.981 486.423 276.464 486.293 276.042C486.166 275.617 485.983 275.296 485.743 275.078C485.505 274.857 485.222 274.747 484.893 274.747C484.397 274.747 484.007 274.991 483.724 275.481C483.441 275.97 483.298 276.674 483.296 277.593C483.296 278.207 483.359 278.727 483.486 279.152C483.616 279.574 483.799 279.894 484.037 280.112C484.274 280.328 484.56 280.436 484.893 280.436ZM491.435 281.397C490.867 281.395 490.381 281.245 489.978 280.947C489.575 280.65 489.266 280.217 489.053 279.648C488.839 279.08 488.733 278.395 488.733 277.593C488.733 276.794 488.839 276.112 489.053 275.545C489.269 274.979 489.578 274.547 489.981 274.25C490.387 273.952 490.872 273.804 491.435 273.804C491.999 273.804 492.483 273.954 492.886 274.253C493.289 274.551 493.597 274.983 493.811 275.549C494.027 276.113 494.135 276.794 494.135 277.593C494.135 278.397 494.028 279.083 493.814 279.652C493.601 280.218 493.292 280.651 492.889 280.951C492.486 281.249 492.002 281.397 491.435 281.397ZM491.435 280.436C491.934 280.436 492.324 280.193 492.605 279.706C492.888 279.219 493.03 278.515 493.03 277.593C493.03 276.981 492.965 276.464 492.835 276.042C492.708 275.617 492.525 275.296 492.285 275.078C492.047 274.857 491.764 274.747 491.435 274.747C490.939 274.747 490.549 274.991 490.266 275.481C489.983 275.97 489.84 276.674 489.837 277.593C489.837 278.207 489.901 278.727 490.028 279.152C490.158 279.574 490.341 279.894 490.579 280.112C490.816 280.328 491.102 280.436 491.435 280.436ZM498.108 283.348V275.747H499.159V276.643H499.249C499.311 276.528 499.401 276.395 499.518 276.244C499.636 276.092 499.799 275.961 500.008 275.848C500.217 275.733 500.493 275.675 500.836 275.675C501.282 275.675 501.68 275.788 502.03 276.013C502.381 276.239 502.656 276.564 502.855 276.989C503.056 277.413 503.157 277.924 503.157 278.522C503.157 279.119 503.057 279.631 502.858 280.058C502.659 280.483 502.386 280.811 502.038 281.041C501.69 281.269 501.293 281.383 500.846 281.383C500.511 281.383 500.236 281.326 500.022 281.214C499.811 281.101 499.646 280.969 499.526 280.818C499.406 280.667 499.313 280.532 499.249 280.415H499.184V283.348H498.108ZM499.162 278.511C499.162 278.9 499.219 279.24 499.331 279.533C499.444 279.826 499.607 280.055 499.821 280.22C500.034 280.384 500.296 280.465 500.605 280.465C500.927 280.465 501.196 280.38 501.411 280.21C501.627 280.037 501.791 279.803 501.901 Line truncated
|
||||||
|
<path d="M434.982 265.398H545.504C547.19 265.398 548.433 265.398 549.415 265.479C550.393 265.559 551.081 265.716 551.663 266.013C552.724 266.553 553.587 267.416 554.127 268.477C554.424 269.059 554.581 269.747 554.661 270.725C554.741 271.707 554.742 272.95 554.742 274.636V281.914C554.742 283.6 554.741 284.843 554.661 285.825C554.581 286.803 554.424 287.491 554.127 288.074C553.587 289.134 552.724 289.997 551.663 290.538C551.081 290.834 550.393 290.992 549.415 291.071C548.433 291.152 547.19 291.152 545.504 291.152H434.982C433.296 291.152 432.053 291.152 431.071 291.071C430.093 290.992 429.405 290.834 428.823 290.538C427.762 289.997 426.899 289.134 426.359 288.074C426.062 287.491 425.905 286.803 425.825 285.825C425.744 284.843 425.744 283.6 425.744 281.914V274.636C425.744 272.95 425.744 271.707 425.825 270.725C425.905 269.747 426.062 269.059 426.359 268.477C426.899 267.416 427.762 266.553 428.823 266.013C429.405 265.716 430.093 265.559 431.071 265.479C432.053 265.398 433.296 265.398 434.982 265.398Z" stroke="#D1D5DB" stroke-width="0.723892"/>
|
||||||
|
<path d="M434.982 300.563H545.504C547.19 300.563 548.433 300.563 549.415 300.643C550.393 300.723 551.081 300.88 551.663 301.177C552.724 301.718 553.587 302.58 554.127 303.641C554.424 304.223 554.581 304.911 554.661 305.889C554.741 306.872 554.742 308.115 554.742 309.801V317.079C554.742 318.765 554.741 320.007 554.661 320.99C554.581 321.968 554.424 322.656 554.127 323.238C553.587 324.299 552.724 325.162 551.663 325.702C551.081 325.999 550.393 326.156 549.415 326.236C548.433 326.316 547.19 326.317 545.504 326.317H434.982C433.296 326.317 432.053 326.316 431.071 326.236C430.093 326.156 429.405 325.999 428.823 325.702C427.762 325.162 426.899 324.299 426.359 323.238C426.062 322.656 425.905 321.968 425.825 320.99C425.744 320.007 425.744 318.765 425.744 317.079V309.801C425.744 308.115 425.744 306.872 425.825 305.889C425.905 304.911 426.062 304.223 426.359 303.641C426.899 302.58 427.762 301.718 428.823 301.177C429.405 300.88 430.093 300.723 431.071 300.643C432.053 300.563 433.296 300.563 434.982 300.563Z" fill="white"/>
|
||||||
|
<path d="M471.248 309.069V316.439H470.133V310.185H470.089L468.326 311.336V310.271L470.165 309.069H471.248ZM473.242 316.439V315.633L475.736 313.049C476.002 312.769 476.222 312.523 476.395 312.312C476.57 312.098 476.701 311.895 476.787 311.703C476.873 311.511 476.917 311.307 476.917 311.091C476.917 310.847 476.859 310.636 476.744 310.458C476.629 310.278 476.471 310.14 476.272 310.044C476.073 309.946 475.849 309.897 475.599 309.897C475.335 309.897 475.105 309.951 474.908 310.059C474.712 310.167 474.56 310.319 474.455 310.516C474.349 310.712 474.297 310.943 474.297 311.207H473.235C473.235 310.758 473.338 310.366 473.544 310.03C473.751 309.694 474.034 309.434 474.394 309.249C474.754 309.062 475.163 308.968 475.621 308.968C476.084 308.968 476.492 309.061 476.845 309.245C477.2 309.428 477.477 309.677 477.676 309.994C477.875 310.308 477.975 310.663 477.975 311.059C477.975 311.333 477.923 311.6 477.82 311.862C477.719 312.123 477.543 312.415 477.291 312.736C477.039 313.055 476.689 313.443 476.24 313.899L474.775 315.432V315.486H478.093V316.439H473.242ZM480.181 315.525C479.984 315.525 479.815 315.456 479.673 315.317C479.532 315.175 479.461 315.005 479.461 314.806C479.461 314.609 479.532 314.441 479.673 314.302C479.815 314.16 479.984 314.089 480.181 314.089C480.377 314.089 480.547 314.16 480.688 314.302C480.83 314.441 480.901 314.609 480.901 314.806C480.901 314.938 480.867 315.059 480.8 315.169C480.735 315.277 480.649 315.363 480.541 315.428C480.433 315.493 480.313 315.525 480.181 315.525ZM480.181 311.833C479.984 311.833 479.815 311.763 479.673 311.624C479.532 311.483 479.461 311.312 479.461 311.113C479.461 310.916 479.532 310.748 479.673 310.609C479.815 310.468 479.984 310.397 480.181 310.397C480.377 310.397 480.547 310.468 480.688 310.609C480.83 310.748 480.901 310.916 480.901 311.113C480.901 311.245 480.867 311.366 480.8 311.477C480.735 311.585 480.649 311.671 480.541 311.736C480.433 311.8 480.313 311.833 480.181 311.833ZM484.893 316.54C484.399 316.54 483.958 316.455 483.569 316.285C483.183 316.114 482.877 315.878 482.651 315.576C482.428 315.271 482.308 314.918 482.291 314.518H483.422C483.436 314.736 483.509 314.926 483.641 315.086C483.775 315.245 483.951 315.367 484.166 315.453C484.382 315.54 484.622 315.583 484.886 315.583C485.177 315.583 485.433 315.533 485.656 315.432C485.882 315.331 486.058 315.191 486.185 315.011C486.313 314.828 486.376 314.618 486.376 314.381C486.376 314.134 486.313 313.917 486.185 313.729C486.061 313.54 485.877 313.391 485.635 313.283C485.395 313.175 485.105 313.121 484.764 313.121H484.141V312.214H484.764C485.037 312.214 485.277 312.165 485.484 312.067C485.692 311.968 485.856 311.832 485.973 311.657C486.091 311.479 486.149 311.271 486.149 311.034C486.149 310.806 486.098 310.608 485.995 310.44C485.894 310.27 485.75 310.137 485.563 310.041C485.378 309.945 485.16 309.897 484.908 309.897C484.668 309.897 484.444 309.941 484.235 310.03C484.029 310.116 483.861 310.241 483.731 310.404C483.601 310.565 483.532 310.758 483.522 310.984H482.446C482.458 310.585 482.576 310.235 482.799 309.933C483.024 309.63 483.322 309.394 483.691 309.224C484.061 309.053 484.471 308.968 484.922 308.968C485.395 308.968 485.803 309.061 486.146 309.245C486.491 309.428 486.758 309.671 486.945 309.976C487.134 310.281 487.228 310.614 487.226 310.976C487.228 311.389 487.113 311.739 486.88 312.027C486.65 312.315 486.343 312.508 485.959 312.607V312.664C486.448 312.739 486.827 312.933 487.096 313.247C487.367 313.562 487.501 313.951 487.499 314.417C487.501 314.822 487.389 315.186 487.161 315.507C486.935 315.829 486.627 316.082 486.236 316.267C485.845 316.449 485.397 316.54 484.893 316.54ZM491.425 316.562C490.857 316.559 490.371 316.409 489.968 316.112C489.565 315.814 489.257 315.381 489.043 314.813C488.829 314.244 488.723 313.559 488.723 312.758C488.723 311.959 488.829 311.276 489.043 310.71C489.259 310.144 489.568 309.712 489.972 309.414C490.377 309.117 490.862 308.968 491.425 308.968C491.989 308.968 492.473 309.118 492.876 309.418C493.279 309.716 493.587 310.147 493.801 310.714C494.017 311.277 494.125 311.959 494.125 312.758C494.125 313.562 494.018 314.248 493.804 314.816C493.591 315.383 493.282 315.816 492.879 316.116C492.476 316.413 491.992 316.562 491.425 316.562ZM491.425 315.601C491.925 315.601 492.314 315.357 492.595 314.87C492.878 314.383 493.02 313.679 493.02 312.758C493.02 312.146 492.955 311.629 492.825 311.207C492.698 310.782 492.515 310.46 492.275 310.242C492.037 310.021 491.754 309.911 491.425 309.911C490.929 309.911 490.539 310.156 490.256 310.645C489.973 311.135 489.83 311.839 489.828 312.758C489.828 313.372 489.891 313.891 490.018 314.316C490.148 314.738 490.331 315.059 490.569 315.277C490.806 315.493 491.092 315.601 491.425 315.601ZM498.098 318.512V310.912H499.149V311.808H499.239C499.301 311.693 499.391 311.559 499.509 311.408C499.626 311.257 499.789 311.125 499.998 311.012C500.207 310.897 500.483 310.84 500.826 310.84C501.272 310.84 501.67 310.952 502.021 311.178C502.371 311.403 502.646 311.729 502.845 312.153C503Line truncated
|
||||||
|
<path d="M434.982 300.563H545.504C547.19 300.563 548.433 300.563 549.415 300.643C550.393 300.723 551.081 300.88 551.663 301.177C552.724 301.718 553.587 302.58 554.127 303.641C554.424 304.223 554.581 304.911 554.661 305.889C554.741 306.872 554.742 308.115 554.742 309.801V317.079C554.742 318.765 554.741 320.007 554.661 320.99C554.581 321.968 554.424 322.656 554.127 323.238C553.587 324.299 552.724 325.162 551.663 325.702C551.081 325.999 550.393 326.156 549.415 326.236C548.433 326.316 547.19 326.317 545.504 326.317H434.982C433.296 326.317 432.053 326.316 431.071 326.236C430.093 326.156 429.405 325.999 428.823 325.702C427.762 325.162 426.899 324.299 426.359 323.238C426.062 322.656 425.905 321.968 425.825 320.99C425.744 320.007 425.744 318.765 425.744 317.079V309.801C425.744 308.115 425.744 306.872 425.825 305.889C425.905 304.911 426.062 304.223 426.359 303.641C426.899 302.58 427.762 301.718 428.823 301.177C429.405 300.88 430.093 300.723 431.071 300.643C432.053 300.563 433.296 300.563 434.982 300.563Z" stroke="#D1D5DB" stroke-width="0.723892"/>
|
||||||
|
<g clip-path="url(#clip5_9963_6185)">
|
||||||
|
<path d="M607.842 75.1831L606.059 68.8655H607.29L608.429 73.5081H608.487L609.703 68.8655H610.822L612.041 73.5112H612.096L613.235 68.8655H614.465L612.682 75.1831H611.553L610.289 70.7503H610.239L608.972 75.1831H607.842ZM615.259 75.1831V68.8655H619.368V69.8249H616.403V71.54H619.155V72.4994H616.403V74.2237H619.393V75.1831H615.259ZM622.676 75.1831H620.536V68.8655H622.72C623.347 68.8655 623.886 68.992 624.336 69.2449C624.788 69.4958 625.136 69.8567 625.379 70.3277C625.621 70.7986 625.743 71.3621 625.743 72.0181C625.743 72.6762 625.62 73.2418 625.376 73.7148C625.133 74.1878 624.782 74.5507 624.324 74.8037C623.867 75.0566 623.318 75.1831 622.676 75.1831ZM621.68 74.1929H622.621C623.061 74.1929 623.428 74.1127 623.722 73.9523C624.016 73.7898 624.237 73.5482 624.385 73.2274C624.533 72.9045 624.607 72.5014 624.607 72.0181C624.607 71.5349 624.533 71.1338 624.385 70.8151C624.237 70.4943 624.018 70.2547 623.728 70.0963C623.44 69.9359 623.083 69.8557 622.655 69.8557H621.68V74.1929Z" fill="#6B7280"/>
|
||||||
|
<path d="M632.157 75.1831V74.3564L634.35 72.2063C634.56 71.9945 634.734 71.8063 634.874 71.6418C635.014 71.4773 635.119 71.3179 635.189 71.1637C635.259 71.0094 635.294 70.8449 635.294 70.6701C635.294 70.4706 635.249 70.2999 635.158 70.158C635.068 70.0141 634.943 69.903 634.785 69.8249C634.627 69.7467 634.447 69.7076 634.245 69.7076C634.037 69.7076 633.855 69.7508 633.699 69.8372C633.543 69.9215 633.421 70.0418 633.335 70.1981C633.251 70.3544 633.209 70.5405 633.209 70.7565H632.12C632.12 70.3554 632.211 70.0069 632.394 69.7107C632.577 69.4146 632.829 69.1853 633.15 69.0228C633.473 68.8604 633.843 68.7791 634.26 68.7791C634.684 68.7791 635.056 68.8583 635.377 69.0167C635.698 69.175 635.947 69.392 636.124 69.6675C636.303 69.9431 636.392 70.2578 636.392 70.6115C636.392 70.848 636.347 71.0804 636.256 71.3086C636.166 71.5369 636.006 71.7899 635.778 72.0675C635.552 72.3451 635.234 72.6814 634.825 73.0762L633.736 74.1836V74.2268H636.488V75.1831H632.157ZM637.552 75.1831V74.3564L639.745 72.2063C639.955 71.9945 640.13 71.8063 640.27 71.6418C640.409 71.4773 640.514 71.3179 640.584 71.1637C640.654 71.0094 640.689 70.8449 640.689 70.6701C640.689 70.4706 640.644 70.2999 640.553 70.158C640.463 70.0141 640.338 69.903 640.18 69.8249C640.022 69.7467 639.842 69.7076 639.64 69.7076C639.433 69.7076 639.251 69.7508 639.094 69.8372C638.938 69.9215 638.817 70.0418 638.73 70.1981C638.646 70.3544 638.604 70.5405 638.604 70.7565H637.515C637.515 70.3554 637.606 70.0069 637.789 69.7107C637.972 69.4146 638.224 69.1853 638.545 69.0228C638.868 68.8604 639.238 68.7791 639.656 68.7791C640.079 68.7791 640.452 68.8583 640.772 69.0167C641.093 69.175 641.342 69.392 641.519 69.6675C641.698 69.9431 641.787 70.2578 641.787 70.6115C641.787 70.848 641.742 71.0804 641.652 71.3086C641.561 71.5369 641.402 71.7899 641.173 72.0675C640.947 72.3451 640.629 72.6814 640.22 73.0762L639.131 74.1836V74.2268H641.883V75.1831H637.552Z" fill="#6B7280"/>
|
||||||
|
<path d="M569.887 89.5753H680.408C682.094 89.5753 683.337 89.5756 684.319 89.6559C685.297 89.7358 685.985 89.8932 686.568 90.1898C687.629 90.7304 688.491 91.5929 689.032 92.6538C689.328 93.236 689.486 93.9239 689.566 94.9021C689.646 95.8844 689.646 97.1272 689.646 98.8134V106.091C689.646 107.777 689.646 109.02 689.566 110.003C689.486 110.981 689.328 111.669 689.032 112.251C688.491 113.312 687.629 114.174 686.568 114.715C685.985 115.011 685.297 115.169 684.319 115.249C683.337 115.329 682.094 115.329 680.408 115.329H569.887C568.201 115.329 566.958 115.329 565.975 115.249C564.997 115.169 564.309 115.011 563.727 114.715C562.666 114.174 561.804 113.312 561.263 112.251C560.966 111.669 560.809 110.981 560.729 110.003C560.649 109.02 560.649 107.777 560.649 106.091V98.8134C560.649 97.1272 560.649 95.8844 560.729 94.9021C560.809 93.9239 560.966 93.236 561.263 92.6538C561.804 91.5929 562.666 90.7304 563.727 90.1898C564.309 89.8932 564.997 89.7358 565.975 89.6559C566.958 89.5756 568.201 89.5753 569.887 89.5753Z" fill="white"/>
|
||||||
|
<path d="M608.307 97.9808C608.636 97.9832 608.96 98.0432 609.279 98.1608C609.598 98.2784 609.886 98.4703 610.143 98.7366C610.402 99.0029 610.608 99.3628 610.762 99.8163C610.918 100.267 610.997 100.829 610.999 101.501C610.999 102.146 610.934 102.721 610.805 103.224C610.675 103.726 610.489 104.149 610.247 104.495C610.007 104.84 609.716 105.103 609.372 105.283C609.029 105.463 608.643 105.553 608.214 105.553C607.775 105.553 607.385 105.467 607.044 105.294C606.703 105.121 606.426 104.882 606.213 104.578C605.999 104.271 605.866 103.918 605.813 103.52H606.911C606.983 103.836 607.129 104.093 607.35 104.29C607.573 104.484 607.861 104.581 608.214 104.581C608.753 104.581 609.175 104.346 609.477 103.876C609.779 103.403 609.931 102.743 609.934 101.896H609.876C609.752 102.103 609.596 102.28 609.408 102.429C609.224 102.578 609.016 102.693 608.786 102.775C608.556 102.856 608.31 102.897 608.048 102.897C607.623 102.897 607.237 102.793 606.889 102.584C606.541 102.375 606.264 102.088 606.058 101.724C605.852 101.359 605.748 100.943 605.748 100.475C605.748 100.009 605.854 99.5872 606.065 99.2081C606.279 98.829 606.576 98.5291 606.958 98.3083C607.341 98.0852 607.791 97.976 608.307 97.9808ZM608.311 98.9166C608.03 98.9166 607.777 98.9861 607.551 99.1253C607.328 99.2621 607.152 99.448 607.022 99.6831C606.893 99.9159 606.828 100.175 606.828 100.46C606.828 100.746 606.89 101.005 607.015 101.238C607.142 101.468 607.315 101.652 607.533 101.788C607.754 101.923 608.006 101.99 608.289 101.99C608.5 101.99 608.697 101.949 608.879 101.868C609.062 101.786 609.221 101.673 609.358 101.529C609.495 101.383 609.602 101.217 609.678 101.033C609.755 100.848 609.794 100.654 609.794 100.45C609.794 100.179 609.729 99.9266 609.599 99.6939C609.472 99.4612 609.297 99.274 609.074 99.1325C608.851 98.9885 608.596 98.9166 608.311 98.9166ZM613.023 104.538C612.826 104.538 612.657 104.468 612.515 104.329C612.374 104.188 612.303 104.017 612.303 103.818C612.303 103.622 612.374 103.454 612.515 103.314C612.657 103.173 612.826 103.102 613.023 103.102C613.219 103.102 613.389 103.173 613.53 103.314C613.672 103.454 613.742 103.622 613.742 103.818C613.742 103.95 613.709 104.071 613.642 104.182C613.577 104.29 613.491 104.376 613.383 104.441C613.275 104.506 613.155 104.538 613.023 104.538ZM613.023 100.846C612.826 100.846 612.657 100.776 612.515 100.637C612.374 100.495 612.303 100.325 612.303 100.126C612.303 99.929 612.374 99.7611 612.515 99.6219C612.657 99.4804 612.826 99.4096 613.023 99.4096C613.219 99.4096 613.389 99.4804 613.53 99.6219C613.672 99.7611 613.742 99.929 613.742 100.126C613.742 100.258 613.709 100.379 613.642 100.489C613.577 100.597 613.491 100.684 613.383 100.748C613.275 100.813 613.155 100.846 613.023 100.846ZM617.735 105.553C617.241 105.553 616.8 105.468 616.411 105.297C616.025 105.127 615.719 104.891 615.493 104.588C615.27 104.284 615.15 103.931 615.133 103.53H616.263C616.278 103.749 616.351 103.938 616.483 104.099C616.617 104.257 616.792 104.38 617.008 104.466C617.224 104.552 617.464 104.596 617.728 104.596C618.019 104.596 618.275 104.545 618.498 104.444C618.724 104.344 618.9 104.203 619.027 104.023C619.155 103.841 619.218 103.631 619.218 103.394C619.218 103.146 619.155 102.929 619.027 102.742C618.903 102.553 618.719 102.404 618.477 102.296C618.237 102.188 617.947 102.134 617.606 102.134H616.983V101.227H617.606C617.879 101.227 618.119 101.178 618.326 101.079C618.534 100.981 618.697 100.844 618.815 100.669C618.933 100.492 618.991 100.284 618.991 100.047C618.991 99.8187 618.94 99.6207 618.837 99.4528C618.736 99.2824 618.592 99.1493 618.405 99.0533C618.22 98.9573 618.002 98.9094 617.75 98.9094C617.51 98.9094 617.286 98.9537 617.077 99.0425C616.87 99.1289 616.703 99.2537 616.573 99.4168C616.443 99.5776 616.374 99.7707 616.364 99.9962H615.288C615.3 99.5979 615.418 99.2477 615.641 98.9454C615.866 98.643 616.164 98.4067 616.533 98.2364C616.903 98.066 617.313 97.9808 617.764 97.9808C618.237 97.9808 618.645 98.0732 618.988 98.258C619.333 98.4403 619.6 98.6838 619.787 98.9885C619.976 99.2932 620.07 99.6267 620.067 99.989C620.07 100.402 619.955 100.752 619.722 101.04C619.492 101.328 619.185 101.521 618.801 101.619V101.677C619.29 101.751 619.669 101.946 619.938 102.26C620.209 102.574 620.343 102.964 620.341 103.43C620.343 103.835 620.231 104.199 620.003 104.52C619.777 104.842 619.469 105.095 619.078 105.279C618.687 105.462 618.239 105.553 617.735 105.553ZM624.267 105.575C623.699 105.572 623.213 105.422 622.81 105.125C622.407 104.827 622.098 104.394 621.885 103.825C621.671 103.257 621.565 102.572 621.565 101.77C621.565 100.972 621.671 100.289 621.885 99.7227C622.101 99.1565 622.41 98.7246 622.813 98.4271C623.219 98.1296 623.704 97.9808 624.267 97.9808C624.831 97.9808 625.315 98.1308 625.718 98.4307C626.121 98.7282 626.429 99.1601 626.643 99.7263C626.859 100.29 626.967 100.972 626.967 101.77C626.967 102.574 626.86 103.26 626.646 103.829C626.433 104.395 626.124 104.828 625.721 105.128C625.318 105.426 624.834 105.575 624.267 105.575ZM624.267 104.614C624.766 104.614 625.Line truncated
|
||||||
|
<path d="M569.887 89.5753H680.408C682.094 89.5753 683.337 89.5756 684.319 89.6559C685.297 89.7358 685.985 89.8932 686.568 90.1898C687.629 90.7304 688.491 91.5929 689.032 92.6538C689.328 93.236 689.486 93.9239 689.566 94.9021C689.646 95.8844 689.646 97.1272 689.646 98.8134V106.091C689.646 107.777 689.646 109.02 689.566 110.003C689.486 110.981 689.328 111.669 689.032 112.251C688.491 113.312 687.629 114.174 686.568 114.715C685.985 115.011 685.297 115.169 684.319 115.249C683.337 115.329 682.094 115.329 680.408 115.329H569.887C568.201 115.329 566.958 115.329 565.975 115.249C564.997 115.169 564.309 115.011 563.727 114.715C562.666 114.174 561.804 113.312 561.263 112.251C560.966 111.669 560.809 110.981 560.729 110.003C560.649 109.02 560.649 107.777 560.649 106.091V98.8134C560.649 97.1272 560.649 95.8844 560.729 94.9021C560.809 93.9239 560.966 93.236 561.263 92.6538C561.804 91.5929 562.666 90.7304 563.727 90.1898C564.309 89.8932 564.997 89.7358 565.975 89.6559C566.958 89.5756 568.201 89.5753 569.887 89.5753Z" stroke="#D1D5DB" stroke-width="0.723892"/>
|
||||||
|
<path d="M569.887 124.74H680.408C682.094 124.74 683.337 124.74 684.319 124.82C685.297 124.9 685.985 125.058 686.568 125.354C687.629 125.895 688.491 126.757 689.032 127.818C689.328 128.401 689.486 129.088 689.566 130.067C689.646 131.049 689.646 132.292 689.646 133.978V141.256C689.646 142.942 689.646 144.185 689.566 145.167C689.486 146.145 689.328 146.833 689.032 147.415C688.491 148.476 687.629 149.339 686.568 149.879C685.985 150.176 685.297 150.333 684.319 150.413C683.337 150.494 682.094 150.494 680.408 150.494H569.887C568.201 150.494 566.958 150.494 565.975 150.413C564.997 150.333 564.309 150.176 563.727 149.879C562.666 149.339 561.804 148.476 561.263 147.415C560.966 146.833 560.809 146.145 560.729 145.167C560.649 144.185 560.649 142.942 560.649 141.256V133.978C560.649 132.292 560.649 131.049 560.729 130.067C560.809 129.088 560.966 128.401 561.263 127.818C561.804 126.757 562.666 125.895 563.727 125.354C564.309 125.058 564.997 124.9 565.975 124.82C566.958 124.74 568.201 124.74 569.887 124.74Z" fill="white"/>
|
||||||
|
<path d="M606.153 133.246V140.617H605.037V134.362H604.994L603.23 135.513V134.448L605.069 133.246H606.153ZM610.712 140.739C610.144 140.737 609.658 140.587 609.255 140.289C608.852 139.992 608.544 139.559 608.33 138.99C608.116 138.421 608.01 137.736 608.01 136.935C608.01 136.136 608.116 135.453 608.33 134.887C608.546 134.321 608.855 133.889 609.259 133.592C609.664 133.294 610.149 133.145 610.712 133.145C611.276 133.145 611.76 133.295 612.163 133.595C612.566 133.893 612.874 134.325 613.088 134.891C613.304 135.455 613.412 136.136 613.412 136.935C613.412 137.739 613.305 138.425 613.091 138.994C612.878 139.56 612.57 139.993 612.166 140.293C611.763 140.59 611.279 140.739 610.712 140.739ZM610.712 139.778C611.212 139.778 611.601 139.535 611.882 139.048C612.165 138.561 612.307 137.856 612.307 136.935C612.307 136.323 612.242 135.806 612.112 135.384C611.985 134.959 611.802 134.638 611.562 134.419C611.324 134.199 611.041 134.088 610.712 134.088C610.216 134.088 609.826 134.333 609.543 134.822C609.26 135.312 609.117 136.016 609.115 136.935C609.115 137.549 609.178 138.069 609.305 138.493C609.435 138.916 609.618 139.236 609.856 139.454C610.093 139.67 610.379 139.778 610.712 139.778ZM615.412 139.703C615.215 139.703 615.046 139.633 614.904 139.494C614.763 139.352 614.692 139.182 614.692 138.983C614.692 138.786 614.763 138.618 614.904 138.479C615.046 138.337 615.215 138.267 615.412 138.267C615.608 138.267 615.778 138.337 615.919 138.479C616.061 138.618 616.132 138.786 616.132 138.983C616.132 139.115 616.098 139.236 616.031 139.346C615.966 139.454 615.88 139.541 615.772 139.605C615.664 139.67 615.544 139.703 615.412 139.703ZM615.412 136.01C615.215 136.01 615.046 135.941 614.904 135.801C614.763 135.66 614.692 135.489 614.692 135.29C614.692 135.094 614.763 134.926 614.904 134.786C615.046 134.645 615.215 134.574 615.412 134.574C615.608 134.574 615.778 134.645 615.919 134.786C616.061 134.926 616.132 135.094 616.132 135.29C616.132 135.422 616.098 135.543 616.031 135.654C615.966 135.762 615.88 135.848 615.772 135.913C615.664 135.978 615.544 136.01 615.412 136.01ZM620.124 140.739C619.556 140.737 619.07 140.587 618.667 140.289C618.264 139.992 617.956 139.559 617.742 138.99C617.528 138.421 617.422 137.736 617.422 136.935C617.422 136.136 617.528 135.453 617.742 134.887C617.958 134.321 618.267 133.889 618.671 133.592C619.076 133.294 619.561 133.145 620.124 133.145C620.688 133.145 621.172 133.295 621.575 133.595C621.978 133.893 622.286 134.325 622.5 134.891C622.716 135.455 622.824 136.136 622.824 136.935C622.824 137.739 622.717 138.425 622.503 138.994C622.29 139.56 621.982 139.993 621.578 140.293C621.175 140.59 620.691 140.739 620.124 140.739ZM620.124 139.778C620.624 139.778 621.013 139.535 621.294 139.048C621.577 138.561 621.719 137.856 621.719 136.935C621.719 136.323 621.654 135.806 621.524 135.384C621.397 134.959 621.214 134.638 620.974 134.419C620.736 134.199 620.453 134.088 620.124 134.088C619.628 134.088 619.238 134.333 618.955 134.822C618.672 135.312 618.529 136.016 618.527 136.935C618.527 137.549 618.59 138.069 618.717 138.493C618.847 138.916 619.03 139.236 619.268 139.454C619.505 139.67 619.791 139.778 620.124 139.778ZM626.666 140.739C626.098 140.737 625.612 140.587 625.209 140.289C624.806 139.992 624.497 139.559 624.284 138.99C624.07 138.421 623.964 137.736 623.964 136.935C623.964 136.136 624.07 135.453 624.284 134.887C624.5 134.321 624.809 133.889 625.212 133.592C625.618 133.294 626.103 133.145 626.666 133.145C627.23 133.145 627.714 133.295 628.117 133.595C628.52 133.893 628.828 134.325 629.042 134.891C629.258 135.455 629.366 136.136 629.366 136.935C629.366 137.739 629.259 138.425 629.045 138.994C628.832 139.56 628.523 139.993 628.12 140.293C627.717 140.59 627.233 140.739 626.666 140.739ZM626.666 139.778C627.165 139.778 627.555 139.535 627.836 139.048C628.119 138.561 628.261 137.856 628.261 136.935C628.261 136.323 628.196 135.806 628.066 135.384C627.939 134.959 627.756 134.638 627.516 134.419C627.278 134.199 626.995 134.088 626.666 134.088C626.17 134.088 625.78 134.333 625.497 134.822C625.214 135.312 625.071 136.016 625.068 136.935C625.068 137.549 625.132 138.069 625.259 138.493C625.389 138.916 625.572 139.236 625.81 139.454C626.047 139.67 626.333 139.778 626.666 139.778ZM634.947 140.739C634.597 140.739 634.28 140.674 633.997 140.545C633.714 140.413 633.49 140.222 633.324 139.972C633.161 139.723 633.08 139.417 633.08 139.055C633.08 138.743 633.14 138.486 633.26 138.285C633.38 138.083 633.541 137.924 633.745 137.806C633.949 137.688 634.177 137.6 634.429 137.54C634.681 137.48 634.938 137.434 635.199 137.403C635.53 137.364 635.799 137.333 636.006 137.309C636.212 137.283 636.362 137.241 636.455 137.183C636.549 137.126 636.596 137.032 636.596 136.903V136.877C636.596 136.563 636.507 136.32 636.329 136.147C636.154 135.974 635.893 135.888 635.545 135.888C635.183 135.888 634.897 135.968 634.688 136.129C634.482 136.287 634.339 136.464 634.26 136.658L633.249 136.428C633.369 136.092 633.544 135.821 633.774 135.614C634.007 135.406 634.274 13Line truncated
|
||||||
|
<path d="M569.887 124.74H680.408C682.094 124.74 683.337 124.74 684.319 124.82C685.297 124.9 685.985 125.058 686.568 125.354C687.629 125.895 688.491 126.757 689.032 127.818C689.328 128.401 689.486 129.088 689.566 130.067C689.646 131.049 689.646 132.292 689.646 133.978V141.256C689.646 142.942 689.646 144.185 689.566 145.167C689.486 146.145 689.328 146.833 689.032 147.415C688.491 148.476 687.629 149.339 686.568 149.879C685.985 150.176 685.297 150.333 684.319 150.413C683.337 150.494 682.094 150.494 680.408 150.494H569.887C568.201 150.494 566.958 150.494 565.975 150.413C564.997 150.333 564.309 150.176 563.727 149.879C562.666 149.339 561.804 148.476 561.263 147.415C560.966 146.833 560.809 146.145 560.729 145.167C560.649 144.185 560.649 142.942 560.649 141.256V133.978C560.649 132.292 560.649 131.049 560.729 130.067C560.809 129.088 560.966 128.401 561.263 127.818C561.804 126.757 562.666 125.895 563.727 125.354C564.309 125.058 564.997 124.9 565.975 124.82C566.958 124.74 568.201 124.74 569.887 124.74Z" stroke="#D1D5DB" stroke-width="0.723892"/>
|
||||||
|
<path d="M569.887 159.904H680.408C682.094 159.904 683.337 159.905 684.319 159.985C685.297 160.065 685.985 160.222 686.568 160.519C687.629 161.059 688.491 161.922 689.032 162.983C689.328 163.565 689.486 164.253 689.566 165.231C689.646 166.214 689.646 167.456 689.646 169.142V176.42C689.646 178.106 689.646 179.349 689.566 180.332C689.486 181.31 689.328 181.998 689.032 182.58C688.491 183.641 687.629 184.503 686.568 185.044C685.985 185.341 685.297 185.498 684.319 185.578C683.337 185.658 682.094 185.658 680.408 185.658H569.887C568.201 185.658 566.958 185.658 565.975 185.578C564.997 185.498 564.309 185.341 563.727 185.044C562.666 184.503 561.804 183.641 561.263 182.58C560.966 181.998 560.809 181.31 560.729 180.332C560.649 179.349 560.649 178.106 560.649 176.42V169.142C560.649 167.456 560.649 166.214 560.729 165.231C560.809 164.253 560.966 163.565 561.263 162.983C561.804 161.922 562.666 161.059 563.727 160.519C564.309 160.222 564.997 160.065 565.975 159.985C566.958 159.905 568.201 159.904 569.887 159.904Z" fill="white"/>
|
||||||
|
<path d="M607.153 168.411V175.781H606.037V169.526H605.994L604.23 170.678V169.613L606.069 168.411H607.153ZM611.943 168.411V175.781H610.827V169.526H610.784L609.021 170.678V169.613L610.86 168.411H611.943ZM614.66 174.867C614.463 174.867 614.294 174.798 614.153 174.658C614.011 174.517 613.94 174.346 613.94 174.147C613.94 173.951 614.011 173.783 614.153 173.644C614.294 173.502 614.463 173.431 614.66 173.431C614.857 173.431 615.026 173.502 615.167 173.644C615.309 173.783 615.38 173.951 615.38 174.147C615.38 174.279 615.346 174.4 615.279 174.511C615.214 174.619 615.128 174.705 615.02 174.77C614.912 174.835 614.792 174.867 614.66 174.867ZM614.66 171.175C614.463 171.175 614.294 171.105 614.153 170.966C614.011 170.824 613.94 170.654 613.94 170.455C613.94 170.258 614.011 170.09 614.153 169.951C614.294 169.809 614.463 169.739 614.66 169.739C614.857 169.739 615.026 169.809 615.167 169.951C615.309 170.09 615.38 170.258 615.38 170.455C615.38 170.587 615.346 170.708 615.279 170.818C615.214 170.926 615.128 171.013 615.02 171.077C614.912 171.142 614.792 171.175 614.66 171.175ZM619.373 175.882C618.878 175.882 618.437 175.797 618.048 175.626C617.662 175.456 617.356 175.22 617.131 174.918C616.907 174.613 616.788 174.26 616.771 173.859H617.901C617.915 174.078 617.988 174.267 618.12 174.428C618.255 174.586 618.43 174.709 618.646 174.795C618.862 174.882 619.102 174.925 619.366 174.925C619.656 174.925 619.913 174.874 620.136 174.774C620.361 174.673 620.538 174.532 620.665 174.352C620.792 174.17 620.855 173.96 620.855 173.723C620.855 173.476 620.792 173.258 620.665 173.071C620.54 172.882 620.356 172.733 620.114 172.625C619.874 172.517 619.584 172.463 619.243 172.463H618.621V171.556H619.243C619.517 171.556 619.757 171.507 619.963 171.409C620.172 171.31 620.335 171.173 620.452 170.998C620.57 170.821 620.629 170.613 620.629 170.376C620.629 170.148 620.577 169.95 620.474 169.782C620.373 169.612 620.229 169.478 620.042 169.382C619.857 169.286 619.639 169.238 619.387 169.238C619.147 169.238 618.923 169.283 618.714 169.372C618.508 169.458 618.34 169.583 618.21 169.746C618.081 169.907 618.011 170.1 618.002 170.325H616.925C616.937 169.927 617.055 169.577 617.278 169.274C617.504 168.972 617.801 168.736 618.171 168.565C618.54 168.395 618.95 168.31 619.402 168.31C619.874 168.31 620.282 168.402 620.625 168.587C620.971 168.769 621.237 169.013 621.424 169.318C621.614 169.622 621.707 169.956 621.705 170.318C621.707 170.731 621.592 171.081 621.359 171.369C621.129 171.657 620.822 171.85 620.438 171.948V172.006C620.927 172.08 621.307 172.275 621.575 172.589C621.846 172.903 621.981 173.293 621.978 173.759C621.981 174.164 621.868 174.528 621.64 174.849C621.415 175.171 621.106 175.424 620.715 175.609C620.324 175.791 619.877 175.882 619.373 175.882ZM625.905 175.904C625.336 175.901 624.85 175.751 624.447 175.454C624.044 175.156 623.736 174.723 623.522 174.155C623.309 173.586 623.202 172.901 623.202 172.1C623.202 171.301 623.309 170.618 623.522 170.052C623.738 169.486 624.048 169.054 624.451 168.756C624.856 168.459 625.341 168.31 625.905 168.31C626.469 168.31 626.952 168.46 627.355 168.76C627.758 169.057 628.066 169.489 628.28 170.055C628.496 170.619 628.604 171.301 628.604 172.1C628.604 172.903 628.497 173.59 628.284 174.158C628.07 174.724 627.762 175.157 627.359 175.457C626.956 175.755 626.471 175.904 625.905 175.904ZM625.905 174.943C626.404 174.943 626.794 174.699 627.074 174.212C627.357 173.725 627.499 173.021 627.499 172.1C627.499 171.488 627.434 170.971 627.305 170.548C627.178 170.124 626.994 169.802 626.754 169.584C626.517 169.363 626.233 169.253 625.905 169.253C625.408 169.253 625.018 169.498 624.735 169.987C624.452 170.476 624.309 171.181 624.307 172.1C624.307 172.714 624.37 173.233 624.498 173.658C624.627 174.08 624.811 174.4 625.048 174.619C625.286 174.835 625.571 174.943 625.905 174.943ZM634.186 175.904C633.835 175.904 633.519 175.839 633.236 175.709C632.953 175.577 632.728 175.387 632.563 175.137C632.4 174.888 632.318 174.582 632.318 174.219C632.318 173.907 632.378 173.651 632.498 173.449C632.618 173.248 632.78 173.088 632.984 172.971C633.188 172.853 633.416 172.764 633.668 172.704C633.919 172.644 634.176 172.599 634.438 172.567C634.769 172.529 635.038 172.498 635.244 172.474C635.45 172.447 635.6 172.405 635.694 172.348C635.787 172.29 635.834 172.197 635.834 172.067V172.042C635.834 171.728 635.745 171.484 635.568 171.311C635.393 171.139 635.131 171.052 634.783 171.052C634.421 171.052 634.135 171.133 633.927 171.293C633.72 171.452 633.578 171.628 633.498 171.822L632.487 171.592C632.607 171.256 632.782 170.985 633.013 170.779C633.245 170.57 633.513 170.419 633.815 170.325C634.117 170.229 634.435 170.181 634.769 170.181C634.99 170.181 635.223 170.208 635.471 170.261C635.72 170.311 635.953 170.405 636.169 170.541C636.387 170.678 636.566 170.874 636.705 171.128C636.844 171.38 636.914 171.707 636.914 172.11V175.781H635.863V175.025H635.82C635.75 175.165 635.646 175.301 635.507 175.436C635.367 175.57 635.189 175.682 634.97 175.77C634.752 175.859 634.49Line truncated
|
||||||
|
<path d="M569.887 159.904H680.408C682.094 159.904 683.337 159.905 684.319 159.985C685.297 160.065 685.985 160.222 686.568 160.519C687.629 161.059 688.491 161.922 689.032 162.983C689.328 163.565 689.486 164.253 689.566 165.231C689.646 166.214 689.646 167.456 689.646 169.142V176.42C689.646 178.106 689.646 179.349 689.566 180.332C689.486 181.31 689.328 181.998 689.032 182.58C688.491 183.641 687.629 184.503 686.568 185.044C685.985 185.341 685.297 185.498 684.319 185.578C683.337 185.658 682.094 185.658 680.408 185.658H569.887C568.201 185.658 566.958 185.658 565.975 185.578C564.997 185.498 564.309 185.341 563.727 185.044C562.666 184.503 561.804 183.641 561.263 182.58C560.966 181.998 560.809 181.31 560.729 180.332C560.649 179.349 560.649 178.106 560.649 176.42V169.142C560.649 167.456 560.649 166.214 560.729 165.231C560.809 164.253 560.966 163.565 561.263 162.983C561.804 161.922 562.666 161.059 563.727 160.519C564.309 160.222 564.997 160.065 565.975 159.985C566.958 159.905 568.201 159.904 569.887 159.904Z" stroke="#D1D5DB" stroke-width="0.723892"/>
|
||||||
|
<path d="M569.887 195.069H680.408C682.094 195.069 683.337 195.069 684.319 195.15C685.297 195.229 685.985 195.387 686.568 195.683C687.629 196.224 688.491 197.087 689.032 198.147C689.328 198.73 689.486 199.418 689.566 200.396C689.646 201.378 689.646 202.621 689.646 204.307V211.585C689.646 213.271 689.646 214.514 689.566 215.496C689.486 216.474 689.328 217.162 689.032 217.744C688.491 218.805 687.629 219.668 686.568 220.208C685.985 220.505 685.297 220.662 684.319 220.742C683.337 220.823 682.094 220.823 680.408 220.823H569.887C568.201 220.823 566.958 220.823 565.975 220.742C564.997 220.662 564.309 220.505 563.727 220.208C562.666 219.668 561.804 218.805 561.263 217.744C560.966 217.162 560.809 216.474 560.729 215.496C560.649 214.514 560.649 213.271 560.649 211.585V204.307C560.649 202.621 560.649 201.378 560.729 200.396C560.809 199.418 560.966 198.73 561.263 198.147C561.804 197.087 562.666 196.224 563.727 195.683C564.309 195.387 564.997 195.229 565.975 195.15C566.958 195.069 568.201 195.069 569.887 195.069Z" fill="white"/>
|
||||||
|
<path d="M607.93 211.047C607.601 211.042 607.277 210.982 606.958 210.867C606.641 210.751 606.353 210.56 606.094 210.291C605.835 210.022 605.627 209.661 605.472 209.208C605.318 208.754 605.241 208.188 605.241 207.509C605.241 206.866 605.305 206.295 605.432 205.796C605.561 205.297 605.747 204.876 605.99 204.533C606.232 204.187 606.525 203.924 606.868 203.744C607.211 203.564 607.596 203.474 608.023 203.474C608.462 203.474 608.852 203.561 609.193 203.734C609.533 203.906 609.809 204.145 610.021 204.45C610.234 204.755 610.37 205.101 610.427 205.49H609.33C609.255 205.183 609.108 204.932 608.887 204.738C608.666 204.543 608.378 204.446 608.023 204.446C607.483 204.446 607.062 204.681 606.76 205.152C606.46 205.622 606.309 206.276 606.306 207.113H606.36C606.488 206.904 606.644 206.727 606.828 206.58C607.015 206.432 607.224 206.318 607.455 206.238C607.687 206.157 607.932 206.116 608.189 206.116C608.616 206.116 609.002 206.22 609.348 206.429C609.695 206.636 609.973 206.921 610.179 207.286C610.385 207.65 610.488 208.068 610.488 208.538C610.488 209.008 610.382 209.434 610.168 209.816C609.957 210.197 609.659 210.5 609.276 210.723C608.892 210.943 608.443 211.051 607.93 211.047ZM607.926 210.111C608.209 210.111 608.462 210.041 608.685 209.902C608.908 209.763 609.085 209.576 609.214 209.341C609.344 209.106 609.409 208.843 609.409 208.553C609.409 208.269 609.345 208.012 609.218 207.779C609.093 207.546 608.92 207.361 608.7 207.225C608.481 207.088 608.232 207.019 607.951 207.019C607.738 207.019 607.54 207.06 607.357 207.142C607.177 207.223 607.019 207.336 606.882 207.48C606.746 207.624 606.638 207.79 606.558 207.977C606.482 208.161 606.443 208.357 606.443 208.563C606.443 208.839 606.507 209.095 606.634 209.33C606.764 209.565 606.94 209.755 607.163 209.899C607.389 210.04 607.643 210.111 607.926 210.111ZM612.523 210.032C612.326 210.032 612.157 209.962 612.015 209.823C611.874 209.681 611.803 209.511 611.803 209.312C611.803 209.115 611.874 208.947 612.015 208.808C612.157 208.667 612.326 208.596 612.523 208.596C612.719 208.596 612.889 208.667 613.03 208.808C613.172 208.947 613.242 209.115 613.242 209.312C613.242 209.444 613.209 209.565 613.142 209.675C613.077 209.783 612.991 209.87 612.883 209.935C612.775 209.999 612.655 210.032 612.523 210.032ZM612.523 206.339C612.326 206.339 612.157 206.27 612.015 206.13C611.874 205.989 611.803 205.819 611.803 205.619C611.803 205.423 611.874 205.255 612.015 205.116C612.157 204.974 612.326 204.903 612.523 204.903C612.719 204.903 612.889 204.974 613.03 205.116C613.172 205.255 613.242 205.423 613.242 205.619C613.242 205.751 613.209 205.873 613.142 205.983C613.077 206.091 612.991 206.177 612.883 206.242C612.775 206.307 612.655 206.339 612.523 206.339ZM617.235 211.047C616.741 211.047 616.3 210.961 615.911 210.791C615.525 210.621 615.219 210.384 614.993 210.082C614.77 209.777 614.65 209.425 614.633 209.024H615.763C615.778 209.242 615.851 209.432 615.983 209.593C616.117 209.751 616.292 209.873 616.508 209.96C616.724 210.046 616.964 210.089 617.228 210.089C617.519 210.089 617.775 210.039 617.998 209.938C618.224 209.837 618.4 209.697 618.527 209.517C618.655 209.335 618.718 209.125 618.718 208.887C618.718 208.64 618.655 208.423 618.527 208.236C618.403 208.046 618.219 207.898 617.977 207.79C617.737 207.682 617.447 207.628 617.106 207.628H616.483V206.721H617.106C617.379 206.721 617.619 206.672 617.826 206.573C618.034 206.475 618.197 206.338 618.315 206.163C618.433 205.985 618.491 205.778 618.491 205.54C618.491 205.312 618.44 205.114 618.337 204.946C618.236 204.776 618.092 204.643 617.905 204.547C617.72 204.451 617.502 204.403 617.25 204.403C617.01 204.403 616.786 204.447 616.577 204.536C616.37 204.623 616.203 204.747 616.073 204.91C615.943 205.071 615.874 205.264 615.864 205.49H614.788C614.8 205.092 614.918 204.741 615.141 204.439C615.366 204.137 615.664 203.9 616.033 203.73C616.403 203.56 616.813 203.474 617.264 203.474C617.737 203.474 618.145 203.567 618.488 203.752C618.833 203.934 619.1 204.177 619.287 204.482C619.476 204.787 619.57 205.12 619.567 205.483C619.57 205.895 619.455 206.246 619.222 206.534C618.992 206.821 618.685 207.015 618.301 207.113V207.171C618.79 207.245 619.169 207.439 619.438 207.754C619.709 208.068 619.843 208.458 619.841 208.923C619.843 209.329 619.731 209.692 619.503 210.014C619.277 210.335 618.969 210.588 618.578 210.773C618.187 210.955 617.739 211.047 617.235 211.047ZM623.767 211.068C623.199 211.066 622.713 210.916 622.31 210.618C621.907 210.321 621.598 209.888 621.385 209.319C621.171 208.75 621.065 208.065 621.065 207.264C621.065 206.465 621.171 205.783 621.385 205.216C621.601 204.65 621.91 204.218 622.313 203.921C622.719 203.623 623.204 203.474 623.767 203.474C624.331 203.474 624.815 203.624 625.218 203.924C625.621 204.222 625.929 204.654 626.143 205.22C626.359 205.784 626.467 206.465 626.467 207.264C626.467 208.068 626.36 208.754 626.146 209.323C625.933 209.889 625.624 210.322 625.221 210.622C624.818 210.919 624.334 211.068 623.767 211.068ZM623.767 210.107C624.266 210.107 624.656 2Line truncated
|
||||||
|
<path d="M569.887 195.069H680.408C682.094 195.069 683.337 195.069 684.319 195.15C685.297 195.229 685.985 195.387 686.568 195.683C687.629 196.224 688.491 197.087 689.032 198.147C689.328 198.73 689.486 199.418 689.566 200.396C689.646 201.378 689.646 202.621 689.646 204.307V211.585C689.646 213.271 689.646 214.514 689.566 215.496C689.486 216.474 689.328 217.162 689.032 217.744C688.491 218.805 687.629 219.668 686.568 220.208C685.985 220.505 685.297 220.662 684.319 220.742C683.337 220.823 682.094 220.823 680.408 220.823H569.887C568.201 220.823 566.958 220.823 565.975 220.742C564.997 220.662 564.309 220.505 563.727 220.208C562.666 219.668 561.804 218.805 561.263 217.744C560.966 217.162 560.809 216.474 560.729 215.496C560.649 214.514 560.649 213.271 560.649 211.585V204.307C560.649 202.621 560.649 201.378 560.729 200.396C560.809 199.418 560.966 198.73 561.263 198.147C561.804 197.087 562.666 196.224 563.727 195.683C564.309 195.387 564.997 195.229 565.975 195.15C566.958 195.069 568.201 195.069 569.887 195.069Z" stroke="#D1D5DB" stroke-width="0.723892"/>
|
||||||
|
</g>
|
||||||
|
<path d="M276.724 520.615V1.61523H275.276V520.615H276.724Z" fill="#E5E7EB" mask="url(#path-103-inside-1_9963_6185)"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<rect x="0.5" y="1.11523" width="879" height="519" rx="12.5" stroke="#D1D5DB"/>
|
||||||
|
<defs>
|
||||||
|
<pattern id="pattern0" patternContentUnits="objectBoundingBox" width="1" height="1">
|
||||||
|
<use xlink:href="#image0_9963_6185" transform="scale(0.00166667)"/>
|
||||||
|
</pattern>
|
||||||
|
<pattern id="pattern1" patternContentUnits="objectBoundingBox" width="1" height="1">
|
||||||
|
<use xlink:href="#image1_9963_6185" transform="scale(0.00390625)"/>
|
||||||
|
</pattern>
|
||||||
|
<clipPath id="clip0_9963_6185">
|
||||||
|
<rect x="1" y="1.61523" width="878" height="518" rx="12" fill="white"/>
|
||||||
|
</clipPath>
|
||||||
|
<clipPath id="clip1_9963_6185">
|
||||||
|
<rect y="1.61523" width="965" height="580" rx="8.6867" fill="white"/>
|
||||||
|
</clipPath>
|
||||||
|
<clipPath id="clip2_9963_6185">
|
||||||
|
<rect width="11.5823" height="11.5823" fill="white" transform="translate(26.784 90.5566)"/>
|
||||||
|
</clipPath>
|
||||||
|
<clipPath id="clip3_9963_6185">
|
||||||
|
<rect width="11.5823" height="11.5823" fill="white" transform="translate(26.784 143.304)"/>
|
||||||
|
</clipPath>
|
||||||
|
<clipPath id="clip4_9963_6185">
|
||||||
|
<rect x="44.1574" y="169.572" width="83.4778" height="12" rx="2.89557" fill="white"/>
|
||||||
|
</clipPath>
|
||||||
|
<clipPath id="clip5_9963_6185">
|
||||||
|
<rect width="120.427" height="451.984" fill="white" transform="translate(560.287 59.9443)"/>
|
||||||
|
</clipPath>
|
||||||
|
<image id="image0_9963_6185" width="600" height="600" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAlgAAAJYCAIAAAAxBA+LAAAMbWlDQ1BJQ0MgUHJvZmlsZQAASImVVwdYU8kWnluSkJCEEkBASuhNEKkBpITQAkgvgo2QBBJKjAlBxV4WFVy7iIANXRVRbCsgduzKotj7YkFFWRd1saHyJiSg677yvfN9c++fM2f+U+5M7j0AaH3gSaV5qDYA+ZICWUJ4MHN0WjqT9AwgQAfQAQt48fhyKTsuLhpAGbj/Xd7dgNZQrjoruf45/19FVyCU8wFAxkKcKZDz8yE+DgBexZfKCgAgKvVWkwukSjwbYj0ZDBDiVUqcrcLblThThQ/32yQlcCC+DIAGlceTZQNAvwf1zEJ+NuShf4bYVSIQSwDQGgZxAF/EE0CsjH1Yfv5EJS6H2B7aSyGG8QBW5nec2X/jzxzk5/GyB7Eqr37RCBHLpXm8qf9naf635OcpBnzYwkEVySISlPnDGt7KnRilxFSIuySZMbHKWkP8QSxQ1R0AlCJSRCSr7FETvpwD6wcMIHYV8EKiIDaBOEySFxOt1mdmicO4EMPdgk4RF3CTIDaEeKFQHpqottkom5ig9oXWZ8k4bLX+HE/W71fp64EiN5mt5n8jEnLV/Bi9SJSUCjEFYutCcUoMxHSIXeS5iVFqm5FFIk7MgI1MkaCM3xriBKEkPFjFjxVmycIS1PYl+fKBfLGNIjE3Ro33FYiSIlT1wU7xef3xw1ywy0IJO3mARygfHT2Qi0AYEqrKHXsulCQnqnk+SAuCE1RrcYo0L05tj1sK88KVekuIPeSFieq1eEoB3JwqfjxLWhCXpIoTL8rhRcap4sGXgWjAASGACRRwZIKJIAeIW7sauuAv1UwY4AEZyAZC4KzWDKxI7Z+RwGsiKAJ/QCQE8sF1wf2zQlAI9V8GtaqrM8jqny3sX5ELnkKcD6JAHvyt6F8lGfSWAp5Ajfgf3nlw8GG8eXAo5/+9fkD7TcOGmmi1RjHgkak1YEkMJYYQI4hhRAfcGA/A/fBoeA2Cww1n4T4DeXyzJzwltBEeEa4T2gm3J4jnyn6IchRoh/xh6lpkfl8L3BZyeuLBuD9kh8y4AW4MnHEP6IeNB0LPnlDLUcetrArzB+6/ZfDd01DbkV3JKHkIOYhs/+NKuiPdc5BFWevv66OKNXOw3pzBmR/9c76rvgDeo360xBZi+7Gz2AnsPHYYawBM7BjWiLVgR5R4cHc96d9dA94S+uPJhTzif/gbeLLKSspda107XT+r5gqEUwqUB48zUTpVJs4WFTDZ8O0gZHIlfJdhTDdXN3cAlO8a1d/X2/j+dwhi0PJNN+93APyP9fX1HfqmizwGwF5vePwPftPZswDQ0QTg3EG+Qlao0uHKCwH+S2jBk2YEzIAVsIf5uAEv4AeCQCiIBLEgCaSB8TB6EdznMjAZTAdzQDEoBcvAalABNoDNYDvYBfaBBnAYnABnwEVwGVwHd+Hu6QAvQTd4B3oRBCEhNISBGCHmiA3ihLghLCQACUWikQQkDclAshEJokCmI/OQUmQFUoFsQmqQvchB5ARyHmlDbiMPkU7kDfIJxVAqqoeaorbocJSFstEoNAkdh2ajk9AidD66BC1Hq9GdaD16Ar2IXkfb0ZdoDwYwTcwAs8CcMRbGwWKxdCwLk2EzsRKsDKvG6rAm+JyvYu1YF/YRJ+IMnIk7wx0cgSfjfHwSPhNfjFfg2/F6/BR+FX+Id+NfCTSCCcGJ4EvgEkYTsgmTCcWEMsJWwgHCaXiWOgjviESiAdGO6A3PYhoxhziNuJi4jribeJzYRnxM7CGRSEYkJ5I/KZbEIxWQiklrSTtJx0hXSB2kDxqaGuYabhphGukaEo25GmUaOzSOalzReKbRS9Ym25B9ybFkAXkqeSl5C7mJfIncQe6l6FDsKP6UJEoOZQ6lnFJHOU25R3mrqalpqemjGa8p1pytWa65R/Oc5kPNj1RdqiOVQx1LVVCXULdRj1NvU9/SaDRbWhAtnVZAW0KroZ2kPaB9oDPoLnQuXUCfRa+k19Ov0F9pkbVstNha47WKtMq09mtd0urSJmvbanO0edoztSu1D2rf1O7RYeiM0InVyddZrLND57zOc12Srq1uqK5Ad77uZt2Tuo8ZGMOKwWHwGfMYWxinGR16RD07Pa5ejl6p3i69Vr1ufV19D/0U/Sn6lfpH9NsNMANbA65BnsFSg30GNww+DTEdwh4iHLJoSN2QK0PeGw41DDIUGpYY7ja8bvjJiGkUapRrtNyowei+MW7saBxvPNl4vfFp466hekP9hvKHlgzdN/SOCWriaJJgMs1ks0mLSY+pmWm4qdR0relJ0y4zA7MgsxyzVWZHzTrNGeYB5mLzVebHzF8w9ZlsZh6znHmK2W1hYhFhobDYZNFq0WtpZ5lsOddyt+V9K4oVyyrLapVVs1W3tbn1KOvp1rXWd2zINiwbkc0am7M2723tbFNtF9g22D63M7Tj2hXZ1drds6fZB9pPsq+2v+ZAdGA55Dqsc7jsiDp6OoocKx0vOaFOXk5ip3VObcMIw3yGSYZVD7vpTHVmOxc61zo/dDFwiXaZ69Lg8mq49fD04cuHnx3+1dXTNc91i+vdEbojIkfMHdE04o2boxvfrdLtmjvNPcx9lnuj+2sPJw+hx3qPW54Mz1GeCzybPb94eXvJvOq8Or2tvTO8q7xvsvRYcazFrHM+BJ9gn1k+h30++nr5Fvju8/3Tz9kv12+H3/ORdiOFI7eMfOxv6c/z3+TfHsAMyAjYGNAeaBHIC6wOfBRkFSQI2hr0jO3AzmHvZL8Kdg2WBR8Ifs/x5czgHA/BQsJDSkJaQ3VDk0MrQh+EWYZlh9WGdYd7hk8LPx5BiIiKWB5xk2vK5XNruN2R3pEzIk9FUaMSoyqiHkU7Rsuim0ahoyJHrRx1L8YmRhLTEAtiubErY+/H2cVNijsUT4yPi6+Mf5owImF6wtlERuKExB2J75KCk5Ym3U22T1YkN6dopYxNqUl5nxqSuiK1ffTw0TNGX0wzThOnNaaT0lPSt6b3jAkds3pMx1jPscVjb4yzGzdl3PnxxuPzxh+ZoDWBN2F/BiEjNWNHxmdeLK+a15PJzazK7OZz+Gv4LwVBglWCTqG/cIXwWZZ/1oqs59n+2SuzO0WBojJRl5gjrhC/zonI2ZDzPjc2d1tuX15q3u58jfyM/IMSXUmu5NREs4lTJrZJnaTF0vZJvpNWT+qWRcm2yhH5OHljgR78qG9R2Ct+UjwsDCisLPwwOWXy/ik6UyRTWqY6Tl009VlRWNEv0/Bp/GnN0y2mz5n+cAZ7xqaZyMzMmc2zrGbNn9UxO3z29jmUOblzfpvrOnfF3L/mpc5rmm86f/b8xz+F/1RbTC+WFd9c4Ldgw0J8oXhh6yL3RWsXfS0RlFwodS0tK/28mL/4ws8jfi7/uW9J1pLWpV5L1y8jLpMsu7E8cPn2FTorilY8XjlqZf0q5qqSVX+tnrD6fJlH2YY1lDWKNe3l0eWNa63XLlv7uUJUcb0yuHJ3lUnVoqr36wTrrqwPWl+3wXRD6YZPG8Ubb20K31RfbVtdtpm4uXDz0y0pW87+wvqlZqvx1tKtX7ZJtrVvT9h+qsa7pmaHyY6ltWitorZz59idl3eF7Gqsc67btNtgd+kesEex58XejL039kXta97P2l/3q82vVQcYB0rqkfqp9d0Noob2xrTGtoORB5ub/JoOHHI5tO2wxeHKI/pHlh6lHJ1/tO9Y0bGe49LjXSeyTzxuntB89+Tok9dOxZ9qPR11+tyZsDMnz7LPHjvnf+7wed/zBy+wLjRc9LpY3+LZcuA3z98OtHq11l/yvtR42edyU9vItqNXAq+cuBpy9cw17rWL12Out91IvnHr5tib7bcEt57fzrv9+k7hnd67s+8R7pXc175f9sDkQfXvDr/vbvdqP/Iw5GHLo8RHdx/zH798In/yuWP+U9rTsmfmz2qeuz0/3BnWefnFmBcdL6Uve7uK/9D5o+qV/atf/wz6s6V7dHfHa9nrvjeL3xq93faXx1/NPXE9D97lv+t9X/LB6MP2j6yPZz+lfnrWO/kz6XP5F4cvTV+jvt7ry+/rk/JkvP5PAQwONCsLgDfbAKClAcCAfRtljKoX7BdE1b/2I/CfsKpf7BcvAOrg93t8F/y6uQnAni2w/YL8WrBXjaMBkOQDUHf3waEWeZa7m4qLCvsUwoO+vrewZyOtBODLsr6+3uq+vi+bYbCwdzwuUfWgSiHCnmEj90tmfib4N6LqT7/L8cc7UEbgAX68/wvvK5EZ+pqtigAAADhlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAAqACAAQAAAABAAACWKADAAQAAAABAAACWAAAAACMVKCiAAAWiklEQVR4Ae3VQQ0AIBADQUA2ghDJi6Bj5xx0eknnuXs4AgQIECBQFVjV4HITIECAAIEvYAj9AQECBAikBQxhun7hCRAgQMAQ+gECBAgQSAsYwnT9whMgQICAIfQDBAgQIJAWMITp+oUnQIAAAUPoBwgQIEAgLWAI0/ULT4AAAQKG0A8QIECAQFrAEKbrF54AAQIEDKEfIECAAIG0gCFM1y88AQIECBhCP0CAAAECaQFDmK5feAIECBAwhH6AAAECBNIChjBdv/AECBAgYAj9AAECBAikBQxhun7hCRAgQMAQ+gECBAgQSAsYwnT9whMgQICAIfQDBAgQIJAWMITp+oUnQIAAAUPoBwgQIEAgLWAI0/ULT4AAAQKG0A8QIECAQFrAEKbrF54AAQIEDKEfIECAAIG0gCFM1y88AQIECBhCP0CAAAECaQFDmK5feAIECBAwhH6AAAECBNIChjBdv/AECBAgYAj9AAECBAikBQxhun7hCRAgQMAQ+gECBAgQSAsLine truncated
|
||||||
|
<image id="image1_9963_6185" width="256" height="256" xlink:href="data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEASABIAAD/4gxYSUNDX1BST0ZJTEUAAQEAAAxITGlubwIQAABtbnRyUkdCIFhZWiAHzgACAAkABgAxAABhY3NwTVNGVAAAAABJRUMgc1JHQgAAAAAAAAAAAAAAAAAA9tYAAQAAAADTLUhQICAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABFjcHJ0AAABUAAAADNkZXNjAAABhAAAAGx3dHB0AAAB8AAAABRia3B0AAACBAAAABRyWFlaAAACGAAAABRnWFlaAAACLAAAABRiWFlaAAACQAAAABRkbW5kAAACVAAAAHBkbWRkAAACxAAAAIh2dWVkAAADTAAAAIZ2aWV3AAAD1AAAACRsdW1pAAAD+AAAABRtZWFzAAAEDAAAACR0ZWNoAAAEMAAAAAxyVFJDAAAEPAAACAxnVFJDAAAEPAAACAxiVFJDAAAEPAAACAx0ZXh0AAAAAENvcHlyaWdodCAoYykgMTk5OCBIZXdsZXR0LVBhY2thcmQgQ29tcGFueQAAZGVzYwAAAAAAAAASc1JHQiBJRUM2MTk2Ni0yLjEAAAAAAAAAAAAAABJzUkdCIElFQzYxOTY2LTIuMQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWFlaIAAAAAAAAPNRAAEAAAABFsxYWVogAAAAAAAAAAAAAAAAAAAAAFhZWiAAAAAAAABvogAAOPUAAAOQWFlaIAAAAAAAAGKZAAC3hQAAGNpYWVogAAAAAAAAJKAAAA+EAAC2z2Rlc2MAAAAAAAAAFklFQyBodHRwOi8vd3d3LmllYy5jaAAAAAAAAAAAAAAAFklFQyBodHRwOi8vd3d3LmllYy5jaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABkZXNjAAAAAAAAAC5JRUMgNjE5NjYtMi4xIERlZmF1bHQgUkdCIGNvbG91ciBzcGFjZSAtIHNSR0IAAAAAAAAAAAAAAC5JRUMgNjE5NjYtMi4xIERlZmF1bHQgUkdCIGNvbG91ciBzcGFjZSAtIHNSR0IAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZGVzYwAAAAAAAAAsUmVmZXJlbmNlIFZpZXdpbmcgQ29uZGl0aW9uIGluIElFQzYxOTY2LTIuMQAAAAAAAAAAAAAALFJlZmVyZW5jZSBWaWV3aW5nIENvbmRpdGlvbiBpbiBJRUM2MTk2Ni0yLjEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHZpZXcAAAAAABOk/gAUXy4AEM8UAAPtzAAEEwsAA1yeAAAAAVhZWiAAAAAAAEwJVgBQAAAAVx/nbWVhcwAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAo8AAAACc2lnIAAAAABDUlQgY3VydgAAAAAAAAQAAAAABQAKAA8AFAAZAB4AIwAoAC0AMgA3ADsAQABFAEoATwBUAFkAXgBjAGgAbQByAHcAfACBAIYAiwCQAJUAmgCfAKQAqQCuALIAtwC8AMEAxgDLANAA1QDbAOAA5QDrAPAA9gD7AQEBBwENARMBGQEfASUBKwEyATgBPgFFAUwBUgFZAWABZwFuAXUBfAGDAYsBkgGaAaEBqQGxAbkBwQHJAdEB2QHhAekB8gH6AgMCDAIUAh0CJgIvAjgCQQJLAlQCXQJnAnECegKEAo4CmAKiAqwCtgLBAssC1QLgAusC9QMAAwsDFgMhAy0DOANDA08DWgNmA3IDfgOKA5YDogOuA7oDxwPTA+AD7AP5BAYEEwQgBC0EOwRIBFUEYwRxBH4EjASaBKgEtgTEBNME4QTwBP4FDQUcBSsFOgVJBVgFZwV3BYYFlgWmBbUFxQXVBeUF9gYGBhYGJwY3BkgGWQZqBnsGjAadBq8GwAbRBuMG9QcHBxkHKwc9B08HYQd0B4YHmQesB78H0gflB/gICwgfCDIIRghaCG4IggiWCKoIvgjSCOcI+wkQCSUJOglPCWQJeQmPCaQJugnPCeUJ+woRCicKPQpUCmoKgQqYCq4KxQrcCvMLCwsiCzkLUQtpC4ALmAuwC8gL4Qv5DBIMKgxDDFwMdQyODKcMwAzZDPMNDQ0mDUANWg10DY4NqQ3DDd4N+A4TDi4OSQ5kDn8Omw62DtIO7g8JDyUPQQ9eD3oPlg+zD88P7BAJECYQQxBhEH4QmxC5ENcQ9RETETERTxFtEYwRqhHJEegSBxImEkUSZBKEEqMSwxLjEwMTIxNDE2MTgxOkE8UT5RQGFCcUSRRqFIsUrRTOFPAVEhU0FVYVeBWbFb0V4BYDFiYWSRZsFo8WshbWFvoXHRdBF2UXiReuF9IX9xgbGEAYZRiKGK8Y1Rj6GSAZRRlrGZEZtxndGgQaKhpRGncanhrFGuwbFBs7G2MbihuyG9ocAhwqHFIcexyjHMwc9R0eHUcdcB2ZHcMd7B4WHkAeah6UHr4e6R8THz4faR+UH78f6iAVIEEgbCCYIMQg8CEcIUghdSGhIc4h+yInIlUigiKvIt0jCiM4I2YjlCPCI/AkHyRNJHwkqyTaJQklOCVoJZclxyX3JicmVyaHJrcm6CcYJ0kneierJ9woDSg/KHEooijUKQYpOClrKZ0p0CoCKjUqaCqbKs8rAis2K2krnSvRLAUsOSxuLKIs1y0MLUEtdi2rLeEuFi5MLoIuty7uLyQvWi+RL8cv/jA1MGwwpDDbMRIxSjGCMbox8jIqMmMymzLUMw0zRjN/M7gz8TQrNGU0njTYNRM1TTWHNcI1/TY3NnI2rjbpNyQ3YDecN9c4FDhQOIw4yDkFOUI5fzm8Ofk6Njp0OrI67zstO2s7qjvoPCc8ZTykPOM9Ij1hPaE94D4gPmA+oD7gPyE/YT+iP+JAI0BkQKZA50EpQWpBrEHuQjBCckK1QvdDOkN9Q8BEA0RHRIpEzkUSRVVFmkXeRiJGZ0arRvBHNUd7R8BIBUhLSJFI10kdSWNJqUnwSjdKfUrESwxLU0uaS+JMKkxyTLpNAk1KTZNN3E4lTm5Ot08AT0lPk0/dUCdQcVC7UQZRUFGbUeZSMVJ8UsdTE1NfU6pT9lRCVI9U21UoVXVVwlYPVlxWqVb3V0RXklfgWC9YfVjLWRpZaVm4WgdaVlqmWvVbRVuVW+VcNVyGXNZdJ114XcleGl5sXr1fD19hX7NgBWBXYKpg/GFPYaJh9WJJYpxi8GNDY5dj62RAZJRk6WU9ZZJl52Y9ZpJm6Gc9Z5Nn6Wg/aJZo7GlDaZpp8WpIap9q92tPa6dr/2xXbK9tCG1gbbluEm5rbsRvHm94b9FwK3CGcOBxOnGVcfByS3KmcwFzXXO4dBR0cHTMdSh1hXXhdj52m3b4d1Z3s3gReG54zHkqeYl553pGeqV7BHtje8J8IXyBfOF9QX2hfgF+Yn7CfyN/hH/lgEeAqIEKgWuBzYIwgpKC9INXg7qEHYSAhOOFR4Wrhg6GcobXhzuHn4gEiGmIzokziZmJ/opkisqLMIuWi/yMY4zKjTGNmI3/jmaOzo82j56QBpBukNaRP5GokhGSepLjk02TtpQglIqU9JVflcmWNJaflwqXdZfgmEyYuJkkmZCZ/JpomtWbQpuvnByciZz3nWSd0p5Anq6fHZ+Ln/qgaaDYoUehtqImopajBqN2o+akVqTHpTilqaYapoum/adup+CoUqjEqTepqaocqo+rAqt1q+msXKzQrUStuK4trqGvFq+LsACwdbDqsWCx1rJLssKzOLOutCW0nLUTtYq2AbZ5tvC3aLfguFm40blKucK6O7q1uy67p7whvJu9Fb2Pvgq+hL7/v3q/9cBwwOzBZ8Hjwl/C28NYw9TEUcTOxUvFyMZGxsPHQce/yD3IvMk6ybnKOMq3yzbLtsw1zLXNNc21zjbOts83z7jQOdC60TzRvtI/0sHTRNPG1EnUy9VO1dHWVdbY11zX4Nhk2OjZbNnx2nba+9uA3AXcit0Q3ZbeHN6i3ynfr+A24L3hROHM4lPi2+Nj4+vkc+T85YTmDeaW5x/nqegy6LzpRunQ6lvq5etw6/vshu0R7ZzuKO6070DvzPBY8OXxcvH/8ozzGfOn9DT0wvVQ9d72bfb794r4Gfio+Tj5x/pX+uf7d/wH/Jj9Kf26/kv+3P9t////2wCEAAMEBAQGBAYHBwYICQgJCAwLCgoLDBINDg0ODRIcERQRERQRHBgdGBYYHRgsIh4eIiwyKigqMj02Nj1MSUxkZIYBAwQEBAYEBgcHBggJCAkIDAsKCgsMEg0ODQ4NEhwRFBERFBEcGB0YFhgdGCwiHh4iLDIqKCoyPTY2PUxJTGRkhv/CABEIAQABAAMBIgACEQEDEQH/xAAdAAABBQEBAQEAAAAAAAAAAAABAAQFBgcCAwgJ/9oACAEBAAAAANmSAC54gvn11CGmVVhAVi0T2zfVvqEkAuZFIAAVf5z9qdRLnL55CdMPGRvX0rrSQQQEikFyOPmFvU8rrM3YKrqVpz3NHzDfd71BIBBSKCADD5QY+dFUe1kJWOlozH2ukaz9guyAEJJIADL/AJ3g/HS38p5TTbO6zVJDN3+qfYE+kgFIlcocYDjwt23phH+PlT2dUjqFFaP9f2gJACTSAHPzXlsxst3beTKL4rnnEQjTH9C+xZZJcoSaS5QwD5+1PWbH4iGYM41nBR09kVk+xekEAJNJACo/F2o6vZ+2kPCRsuwp/Mvldr+rSAgBJpIBNPhnStgl/GKpMdJTtNpElds12vVwkABJkIBeXxXdtzjs/wAtidguVBxzNnGi3Xd74gAgJNJBCu51lX0qs4yitbppHzLine truncated
|
||||||
|
</defs>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 347 KiB |
@@ -0,0 +1,17 @@
|
|||||||
|
<svg width="115" height="54" viewBox="0 0 115 54" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g clip-path="url(#clip0_12158_115893)">
|
||||||
|
<path d="M8.95263 15.0632L3.41053 17.0526L3.55263 11.1553L0 6.53684L5.61316 4.83158L8.95263 0L12.2921 4.83158L17.9053 6.53684L14.3526 11.1553L14.4947 17.0526L8.95263 15.0632Z" fill="#FF492C"/>
|
||||||
|
<path d="M32.9684 15.0632L27.4263 17.0526L27.6394 11.1553L24.0157 6.53684L29.6289 4.83158L32.9684 0L36.3079 4.83158L41.921 6.53684L38.3684 11.1553L38.5105 17.0526L32.9684 15.0632Z" fill="#FF492C"/>
|
||||||
|
<path d="M56.9842 15.0632L51.4421 17.0526L51.6553 11.1553L48.0316 6.53684L53.7158 4.83158L56.9842 0L60.3237 4.83158L65.9369 6.53684L62.3843 11.1553L62.5264 17.0526L56.9842 15.0632Z" fill="#FF492C"/>
|
||||||
|
<path d="M81 15.0632L75.4579 17.0526L75.671 11.1553L72.0474 6.53684L77.7316 4.83158L81 0L84.3395 4.83158L90.0237 6.53684L86.4 11.1553L86.5421 17.0526L81 15.0632Z" fill="#FF492C"/>
|
||||||
|
<path d="M105.016 0L101.747 4.83158L96.0631 6.53684L99.6868 11.1553L99.4736 17.0526L105.016 15.0632V0Z" fill="#FF492C"/>
|
||||||
|
<path d="M110.416 11.1553L114.039 6.53684L108.355 4.83158L105.016 0V15.0632L110.558 17.0526L110.416 11.1553Z" fill="white"/>
|
||||||
|
<path d="M28.4682 40.2593C28.4682 47.4831 22.6148 53.3365 15.391 53.3365C8.1672 53.3365 2.31384 47.4831 2.31384 40.2593C2.31384 33.0355 8.1672 27.1821 15.391 27.1821C22.6148 27.1821 28.4682 33.0407 28.4682 40.2593Z" fill="#FF492C"/>
|
||||||
|
<path d="M21.0507 38.1252H17.6716V37.9683C17.6716 37.3929 17.7866 36.9168 18.0168 36.5454C18.247 36.1689 18.6445 35.8393 19.2199 35.5464L19.4815 35.4156C19.947 35.1802 20.0673 34.9762 20.0673 34.7356C20.0673 34.4479 19.8163 34.2386 19.4135 34.2386C18.9322 34.2386 18.5713 34.4897 18.3202 34.9971L17.6716 34.3485C17.8128 34.0451 18.043 33.8045 18.3464 33.611C18.655 33.4174 18.995 33.3233 19.3664 33.3233C19.832 33.3233 20.2347 33.4436 20.5642 33.6947C20.9043 33.9458 21.0716 34.2909 21.0716 34.7251C21.0716 35.4208 20.6793 35.8445 19.947 36.2212L19.5338 36.4304C19.0944 36.6501 18.8799 36.8488 18.8171 37.1993H21.0507V38.1252ZM20.7526 39.1923H17.0544L15.2079 42.3936H18.9061L20.7578 45.5948L22.6043 42.3936L20.7526 39.1923ZM15.527 44.533C13.173 44.533 11.2585 42.6185 11.2585 40.2646C11.2585 37.9107 13.173 35.9962 15.527 35.9962L16.9916 32.9362C16.5156 32.842 16.0291 32.7949 15.527 32.7949C11.3998 32.7949 8.052 36.1427 8.052 40.2646C8.052 44.3918 11.3945 47.7396 15.527 47.7396C17.1694 47.7396 18.6916 47.206 19.9261 46.3063L18.3045 43.5026C17.5618 44.1407 16.5888 44.533 15.527 44.533Z" fill="white"/>
|
||||||
|
</g>
|
||||||
|
<defs>
|
||||||
|
<clipPath id="clip0_12158_115893">
|
||||||
|
<rect width="114.395" height="54" fill="white"/>
|
||||||
|
</clipPath>
|
||||||
|
</defs>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 2.6 KiB |
@@ -0,0 +1 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 122 37"><path d="M104.953 36.286c-4.22 1.634-5.936.086-5.936-.891 1.495-.126 5.067-.331 5.936.891Zm5.356-1.336a5.486 5.486 0 0 1-7.083-.497c1.44-.4 5.372-.874 7.083.497Zm-7.139-3.176c.16 2.033-1.922 3.176-4.17 3.341.41-2.045 2.509-2.958 4.17-3.341Zm4.032-1.874c.238.869-.089 3.228-3.323 4.164.139-1.593.986-3.667 3.323-4.164Zm6.413 2.365a5.005 5.005 0 0 1-6.385.571c1.296-.668 4.408-1.57 6.385-.571Zm-3.417-4.706c.443.856.537 3.295-2.326 4.763-.166-1.57.465-4.255 2.326-4.763Zm7.083.948a4.389 4.389 0 0 1-2.657 2.217 4.243 4.243 0 0 1-3.39-.44c1.805-1.697 4.685-2.348 6.047-1.777Zm-4.28-4.547c1.284 2.24-.073 4.798-1.485 5.849-.628-2.082-.052-4.351 1.484-5.849Zm6.662-.097c.155 3.479-3.478 3.29-5.184 3.313.537-.731 3.522-3.381 5.184-3.313Zm-4.48-3.25c.675.743 1.688 3.599-.555 5.929-.703-1.685-.858-4.272.554-5.929Zm6.385-1.542c.116 2.81-2.249 4.232-4.53 4.21.686-1.354 2.52-3.964 4.53-4.21Zm-4.785-1.936c1.512.89 1.34 3.764.448 5.26-1.002-1.393-1.75-3.124-.448-5.26Zm4.884-2.633c.748 2.559-1.45 4.29-2.769 4.438.338-1.222.781-3.387 2.77-4.438Zm-4.607-.851c1.667.835 2.457 2.832 1.833 4.632-1.163-.937-2.564-2.919-1.833-4.632Zm4.685-3.096c1.03 3.113-1.335 4.13-2.215 4.38.105-1.324.947-3.963 2.215-4.38Zm-4.619-.817c.676.195 2.603 1.777 2.254 4.61-1.268-.714-2.808-2.074-2.254-4.61Zm3.921-3.9c1.152 3.826-.77 5.397-1.401 5.71-.1-1.21-.222-4.037 1.401-5.71Zm-4.264.096c1.207.337 2.73 2.553 2.658 4.684-1.196-.548-2.985-2.827-2.658-4.684Zm.36-5.934c2.802 2.896 3.195 5.18 2.376 7.996-1.269-1.142-2.282-4.569-2.376-7.996ZM17.047 36.286c4.22 1.634 5.936.086 5.936-.891-1.495-.126-5.067-.331-5.936.891ZM11.69 34.95a5.486 5.486 0 0 0 7.083-.497c-1.44-.4-5.372-.874-7.083.497Zm7.139-3.176c-.16 2.033 1.922 3.176 4.17 3.341-.41-2.045-2.509-2.958-4.17-3.341ZM14.798 29.9c-.238.869.089 3.228 3.323 4.164-.139-1.593-.986-3.667-3.323-4.164Zm-6.413 2.365a5.005 5.005 0 0 0 6.385.571c-1.296-.668-4.408-1.57-6.385-.571Zm3.417-4.706c-.443.856-.537 3.295 2.326 4.763.166-1.57-.465-4.255-2.326-4.763Zm-7.083.948a4.389 4.389 0 0 0 2.657 2.217 4.243 4.243 0 0 0 3.39-.44c-1.805-1.697-4.685-2.348-6.047-1.777Zm4.28-4.547c-1.284 2.24.073 4.798 1.485 5.849.628-2.082.052-4.351-1.484-5.849Zm-6.662-.097c-.155 3.479 3.478 3.29 5.184 3.313-.537-.731-3.522-3.381-5.184-3.313Zm4.48-3.25c-.675.743-1.688 3.599.555 5.929.703-1.685.858-4.272-.554-5.929ZM.433 19.071c-.116 2.81 2.249 4.232 4.53 4.21-.686-1.354-2.52-3.964-4.53-4.21Zm4.785-1.936c-1.512.89-1.34 3.764-.448 5.26 1.002-1.393 1.75-3.124.448-5.26ZM.333 14.502c-.748 2.559 1.45 4.29 2.769 4.438-.338-1.222-.781-3.387-2.77-4.438Zm4.607-.851c-1.667.835-2.457 2.832-1.833 4.632 1.163-.937 2.564-2.919 1.833-4.632ZM.255 10.555c-1.03 3.113 1.335 4.13 2.215 4.38-.105-1.324-.947-3.963-2.215-4.38Zm4.619-.817c-.676.195-2.603 1.777-2.254 4.61 1.268-.714 2.808-2.074 2.254-4.61Zm-3.921-3.9c-1.152 3.826.77 5.397 1.401 5.71.1-1.21.222-4.037-1.401-5.71Zm4.264.096c-1.207.337-2.73 2.553-2.658 4.684 1.196-.548 2.985-2.827 2.658-4.684ZM4.857 0C2.055 2.896 1.662 5.18 2.481 7.996 3.75 6.854 4.763 3.427 4.857 0Zm50.977 35c.162 0 .288-.108.288-.27V22.67c0-.162-.126-.27-.288-.27h-4.59c-.162 0-.27.108-.27.27v1.782c0 .162.108.288.27.288h2.124v9.99c0 .162.108.27.27.27h2.196Zm5.436.216c1.782 0 3.348-.936 3.366-2.754.036-1.332-.846-2.106-1.944-2.538l-1.332-.522c-.396-.162-.702-.396-.702-.72 0-.27.162-.576.702-.576.486 0 .972.252 1.548.702.162.108.288.126.414 0l.918-1.08c.072-.108.126-.252.018-.378a3.973 3.973 0 0 0-3.042-1.386c-1.692 0-3.168.99-3.168 2.718 0 1.224.756 1.98 1.908 2.43l1.152.468c.594.234.792.432.792.774 0 .396-.324.576-.81.576-.63 0-1.224-.27-1.998-.828-.144-.09-.306-.144-.45.09l-.72 1.008c-.126.18-.144.396-.054.522.738.882 1.908 1.494 3.402 1.494Zm8.334 0c.612 0 1.584-.108 1.584-.558v-1.494c0-.18-.144-.27-.324-.252-.234.018-.396.018-.558.018-.45 0-.756-.252-.756-.738v-3.888h1.35c.162 0 .27-.108.27-.27V26.45c0-.162-.108-.27-.27-.27h-1.35v-2.07c0-.162-.126-.27-.288-.27h-2.214c-.162 0-.288.108-.288.27v2.07h-1.098c-.162 0-.27.108-.27.27v1.584c0 .162.108.27.27.27h1.098v4.194c0 2.052 1.386 2.718 2.844 2.718ZM20.72 15c.09 0 .15-.06.15-.15v-2.26h.72c1.69 0 2.49-.93 2.49-2.29 0-1.36-.8-2.3-2.49-2.3h-2.15c-.09 0-.15.06-.15.15v6.7c0 .09.06.15.15.15h1.28Zm.15-5.6h.68c.53 0 1.02.17 1.02.9 0 .72-.49.89-1.02.89h-.68V9.4Zm5.5 5.6c.09 0 .16-.06.16-.15v-2.36c0-.73.38-1.13 1.01-1.13.15 0 .26.02.36.05.14.03.21 0 .21-.13v-.97c0-.09-.02-.15-.09-.2-.08-.06-.21-.13-.45-.13-.57 0-.88.4-1.04.93l-.05-.65c0-.12-.06-.16-.15-.16h-1.18c-.09 0-.15.06-.15.15v4.6c0 .09.06.15.15.15h1.22Zm4.77.12c1.48 0 2.58-1.12 2.58-2.57 0-1.45-1.1-2.57-2.58-2.57s-2.57 1.12-2.57 2.57c0 1.45 1.09 2.57 2.57 2.57Zm0-1.4c-.62 0-1.1-.45-1.1-1.17s.48-1.17 1.1-1.17c.62 0 1.1.45 1.1 1.17s-.48 1.17-1.1 1.17Zm5.49 1.4c.7 0 1.2-.28 1.53-.75l.02.48c0 .09.07.15.16.15h1.1c.09 0 .17-.06.17-.15V8c0-.09-.07-.15-.16-.15h-1.23c-.09 0-.15.06-.15.15v2.59c-.33-.39-.8-.61-1.44-.61-1.36 0-2.3 1.12-2.3 2.57 0 1.46.94 2.57 2.3 2.57Zm.33-1.39c-.65 0-1.14-.46-1.1Line truncated
|
||||||
|
After Width: | Height: | Size: 8.0 KiB |
@@ -0,0 +1 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 122 37"><path d="M104.953 36.286c-4.22 1.634-5.936.086-5.936-.891 1.495-.126 5.067-.331 5.936.891Zm5.356-1.336a5.486 5.486 0 0 1-7.083-.497c1.44-.4 5.372-.874 7.083.497Zm-7.139-3.176c.16 2.033-1.922 3.176-4.17 3.341.41-2.045 2.509-2.958 4.17-3.341Zm4.032-1.874c.238.869-.089 3.228-3.323 4.164.139-1.593.986-3.667 3.323-4.164Zm6.413 2.365a5.005 5.005 0 0 1-6.385.571c1.296-.668 4.408-1.57 6.385-.571Zm-3.417-4.706c.443.856.537 3.295-2.326 4.763-.166-1.57.465-4.255 2.326-4.763Zm7.083.948a4.389 4.389 0 0 1-2.657 2.217 4.243 4.243 0 0 1-3.39-.44c1.805-1.697 4.685-2.348 6.047-1.777Zm-4.28-4.547c1.284 2.24-.073 4.798-1.485 5.849-.628-2.082-.052-4.351 1.484-5.849Zm6.662-.097c.155 3.479-3.478 3.29-5.184 3.313.537-.731 3.522-3.381 5.184-3.313Zm-4.48-3.25c.675.743 1.688 3.599-.555 5.929-.703-1.685-.858-4.272.554-5.929Zm6.385-1.542c.116 2.81-2.249 4.232-4.53 4.21.686-1.354 2.52-3.964 4.53-4.21Zm-4.785-1.936c1.512.89 1.34 3.764.448 5.26-1.002-1.393-1.75-3.124-.448-5.26Zm4.884-2.633c.748 2.559-1.45 4.29-2.769 4.438.338-1.222.781-3.387 2.77-4.438Zm-4.607-.851c1.667.835 2.457 2.832 1.833 4.632-1.163-.937-2.564-2.919-1.833-4.632Zm4.685-3.096c1.03 3.113-1.335 4.13-2.215 4.38.105-1.324.947-3.963 2.215-4.38Zm-4.619-.817c.676.195 2.603 1.777 2.254 4.61-1.268-.714-2.808-2.074-2.254-4.61Zm3.921-3.9c1.152 3.826-.77 5.397-1.401 5.71-.1-1.21-.222-4.037 1.401-5.71Zm-4.264.096c1.207.337 2.73 2.553 2.658 4.684-1.196-.548-2.985-2.827-2.658-4.684Zm.36-5.934c2.802 2.896 3.195 5.18 2.376 7.996-1.269-1.142-2.282-4.569-2.376-7.996ZM17.047 36.286c4.22 1.634 5.936.086 5.936-.891-1.495-.126-5.067-.331-5.936.891ZM11.69 34.95a5.486 5.486 0 0 0 7.083-.497c-1.44-.4-5.372-.874-7.083.497Zm7.139-3.176c-.16 2.033 1.922 3.176 4.17 3.341-.41-2.045-2.509-2.958-4.17-3.341ZM14.798 29.9c-.238.869.089 3.228 3.323 4.164-.139-1.593-.986-3.667-3.323-4.164Zm-6.413 2.365a5.005 5.005 0 0 0 6.385.571c-1.296-.668-4.408-1.57-6.385-.571Zm3.417-4.706c-.443.856-.537 3.295 2.326 4.763.166-1.57-.465-4.255-2.326-4.763Zm-7.083.948a4.389 4.389 0 0 0 2.657 2.217 4.243 4.243 0 0 0 3.39-.44c-1.805-1.697-4.685-2.348-6.047-1.777Zm4.28-4.547c-1.284 2.24.073 4.798 1.485 5.849.628-2.082.052-4.351-1.484-5.849Zm-6.662-.097c-.155 3.479 3.478 3.29 5.184 3.313-.537-.731-3.522-3.381-5.184-3.313Zm4.48-3.25c-.675.743-1.688 3.599.555 5.929.703-1.685.858-4.272-.554-5.929ZM.433 19.071c-.116 2.81 2.249 4.232 4.53 4.21-.686-1.354-2.52-3.964-4.53-4.21Zm4.785-1.936c-1.512.89-1.34 3.764-.448 5.26 1.002-1.393 1.75-3.124.448-5.26ZM.333 14.502c-.748 2.559 1.45 4.29 2.769 4.438-.338-1.222-.781-3.387-2.77-4.438Zm4.607-.851c-1.667.835-2.457 2.832-1.833 4.632 1.163-.937 2.564-2.919 1.833-4.632ZM.255 10.555c-1.03 3.113 1.335 4.13 2.215 4.38-.105-1.324-.947-3.963-2.215-4.38Zm4.619-.817c-.676.195-2.603 1.777-2.254 4.61 1.268-.714 2.808-2.074 2.254-4.61Zm-3.921-3.9c-1.152 3.826.77 5.397 1.401 5.71.1-1.21.222-4.037-1.401-5.71Zm4.264.096c-1.207.337-2.73 2.553-2.658 4.684 1.196-.548 2.985-2.827 2.658-4.684ZM4.857 0C2.055 2.896 1.662 5.18 2.481 7.996 3.75 6.854 4.763 3.427 4.857 0Zm50.977 35c.162 0 .288-.108.288-.27V22.67c0-.162-.126-.27-.288-.27h-4.59c-.162 0-.27.108-.27.27v1.782c0 .162.108.288.27.288h2.124v9.99c0 .162.108.27.27.27h2.196Zm5.436.216c1.782 0 3.348-.936 3.366-2.754.036-1.332-.846-2.106-1.944-2.538l-1.332-.522c-.396-.162-.702-.396-.702-.72 0-.27.162-.576.702-.576.486 0 .972.252 1.548.702.162.108.288.126.414 0l.918-1.08c.072-.108.126-.252.018-.378a3.973 3.973 0 0 0-3.042-1.386c-1.692 0-3.168.99-3.168 2.718 0 1.224.756 1.98 1.908 2.43l1.152.468c.594.234.792.432.792.774 0 .396-.324.576-.81.576-.63 0-1.224-.27-1.998-.828-.144-.09-.306-.144-.45.09l-.72 1.008c-.126.18-.144.396-.054.522.738.882 1.908 1.494 3.402 1.494Zm8.334 0c.612 0 1.584-.108 1.584-.558v-1.494c0-.18-.144-.27-.324-.252-.234.018-.396.018-.558.018-.45 0-.756-.252-.756-.738v-3.888h1.35c.162 0 .27-.108.27-.27V26.45c0-.162-.108-.27-.27-.27h-1.35v-2.07c0-.162-.126-.27-.288-.27h-2.214c-.162 0-.288.108-.288.27v2.07h-1.098c-.162 0-.27.108-.27.27v1.584c0 .162.108.27.27.27h1.098v4.194c0 2.052 1.386 2.718 2.844 2.718ZM14.97 15c.09 0 .15-.06.15-.15v-2.26h.72c1.69 0 2.49-.93 2.49-2.29 0-1.36-.8-2.3-2.49-2.3h-2.15c-.09 0-.15.06-.15.15v6.7c0 .09.06.15.15.15h1.28Zm.15-5.6h.68c.53 0 1.02.17 1.02.9 0 .72-.49.89-1.02.89h-.68V9.4Zm5.5 5.6c.09 0 .16-.06.16-.15v-2.36c0-.73.38-1.13 1.01-1.13.15 0 .26.02.36.05.14.03.21 0 .21-.13v-.97c0-.09-.02-.15-.09-.2-.08-.06-.21-.13-.45-.13-.57 0-.88.4-1.04.93l-.05-.65c0-.12-.06-.16-.15-.16H19.4c-.09 0-.15.06-.15.15v4.6c0 .09.06.15.15.15h1.22Zm4.77.12c1.48 0 2.58-1.12 2.58-2.57 0-1.45-1.1-2.57-2.58-2.57s-2.57 1.12-2.57 2.57c0 1.45 1.09 2.57 2.57 2.57Zm0-1.4c-.62 0-1.1-.45-1.1-1.17s.48-1.17 1.1-1.17c.62 0 1.1.45 1.1 1.17s-.48 1.17-1.1 1.17Zm5.49 1.4c.7 0 1.2-.28 1.53-.75l.02.48c0 .09.07.15.16.15h1.1c.09 0 .17-.06.17-.15V8c0-.09-.07-.15-.16-.15h-1.23c-.09 0-.15.06-.15.15v2.59c-.33-.39-.8-.61-1.44-.61-1.36 0-2.3 1.12-2.3 2.57 0 1.46.94 2.57 2.3 2.57Zm.33-1.39c-.65 0-1.14-.46-1.14Line truncated
|
||||||
|
After Width: | Height: | Size: 8.6 KiB |
@@ -0,0 +1 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 122 37"><path d="M104.953 36.286c-4.22 1.634-5.936.086-5.936-.891 1.495-.126 5.067-.331 5.936.891Zm5.356-1.336a5.486 5.486 0 0 1-7.083-.497c1.44-.4 5.372-.874 7.083.497Zm-7.139-3.176c.16 2.033-1.922 3.176-4.17 3.341.41-2.045 2.509-2.958 4.17-3.341Zm4.032-1.874c.238.869-.089 3.228-3.323 4.164.139-1.593.986-3.667 3.323-4.164Zm6.413 2.365a5.005 5.005 0 0 1-6.385.571c1.296-.668 4.408-1.57 6.385-.571Zm-3.417-4.706c.443.856.537 3.295-2.326 4.763-.166-1.57.465-4.255 2.326-4.763Zm7.083.948a4.389 4.389 0 0 1-2.657 2.217 4.243 4.243 0 0 1-3.39-.44c1.805-1.697 4.685-2.348 6.047-1.777Zm-4.28-4.547c1.284 2.24-.073 4.798-1.485 5.849-.628-2.082-.052-4.351 1.484-5.849Zm6.662-.097c.155 3.479-3.478 3.29-5.184 3.313.537-.731 3.522-3.381 5.184-3.313Zm-4.48-3.25c.675.743 1.688 3.599-.555 5.929-.703-1.685-.858-4.272.554-5.929Zm6.385-1.542c.116 2.81-2.249 4.232-4.53 4.21.686-1.354 2.52-3.964 4.53-4.21Zm-4.785-1.936c1.512.89 1.34 3.764.448 5.26-1.002-1.393-1.75-3.124-.448-5.26Zm4.884-2.633c.748 2.559-1.45 4.29-2.769 4.438.338-1.222.781-3.387 2.77-4.438Zm-4.607-.851c1.667.835 2.457 2.832 1.833 4.632-1.163-.937-2.564-2.919-1.833-4.632Zm4.685-3.096c1.03 3.113-1.335 4.13-2.215 4.38.105-1.324.947-3.963 2.215-4.38Zm-4.619-.817c.676.195 2.603 1.777 2.254 4.61-1.268-.714-2.808-2.074-2.254-4.61Zm3.921-3.9c1.152 3.826-.77 5.397-1.401 5.71-.1-1.21-.222-4.037 1.401-5.71Zm-4.264.096c1.207.337 2.73 2.553 2.658 4.684-1.196-.548-2.985-2.827-2.658-4.684Zm.36-5.934c2.802 2.896 3.195 5.18 2.376 7.996-1.269-1.142-2.282-4.569-2.376-7.996ZM17.047 36.286c4.22 1.634 5.936.086 5.936-.891-1.495-.126-5.067-.331-5.936.891ZM11.69 34.95a5.486 5.486 0 0 0 7.083-.497c-1.44-.4-5.372-.874-7.083.497Zm7.139-3.176c-.16 2.033 1.922 3.176 4.17 3.341-.41-2.045-2.509-2.958-4.17-3.341ZM14.798 29.9c-.238.869.089 3.228 3.323 4.164-.139-1.593-.986-3.667-3.323-4.164Zm-6.413 2.365a5.005 5.005 0 0 0 6.385.571c-1.296-.668-4.408-1.57-6.385-.571Zm3.417-4.706c-.443.856-.537 3.295 2.326 4.763.166-1.57-.465-4.255-2.326-4.763Zm-7.083.948a4.389 4.389 0 0 0 2.657 2.217 4.243 4.243 0 0 0 3.39-.44c-1.805-1.697-4.685-2.348-6.047-1.777Zm4.28-4.547c-1.284 2.24.073 4.798 1.485 5.849.628-2.082.052-4.351-1.484-5.849Zm-6.662-.097c-.155 3.479 3.478 3.29 5.184 3.313-.537-.731-3.522-3.381-5.184-3.313Zm4.48-3.25c-.675.743-1.688 3.599.555 5.929.703-1.685.858-4.272-.554-5.929ZM.433 19.071c-.116 2.81 2.249 4.232 4.53 4.21-.686-1.354-2.52-3.964-4.53-4.21Zm4.785-1.936c-1.512.89-1.34 3.764-.448 5.26 1.002-1.393 1.75-3.124.448-5.26ZM.333 14.502c-.748 2.559 1.45 4.29 2.769 4.438-.338-1.222-.781-3.387-2.77-4.438Zm4.607-.851c-1.667.835-2.457 2.832-1.833 4.632 1.163-.937 2.564-2.919 1.833-4.632ZM.255 10.555c-1.03 3.113 1.335 4.13 2.215 4.38-.105-1.324-.947-3.963-2.215-4.38Zm4.619-.817c-.676.195-2.603 1.777-2.254 4.61 1.268-.714 2.808-2.074 2.254-4.61Zm-3.921-3.9c-1.152 3.826.77 5.397 1.401 5.71.1-1.21.222-4.037-1.401-5.71Zm4.264.096c-1.207.337-2.73 2.553-2.658 4.684 1.196-.548 2.985-2.827 2.658-4.684ZM4.857 0C2.055 2.896 1.662 5.18 2.481 7.996 3.75 6.854 4.763 3.427 4.857 0Zm50.977 35c.162 0 .288-.108.288-.27V22.67c0-.162-.126-.27-.288-.27h-4.59c-.162 0-.27.108-.27.27v1.782c0 .162.108.288.27.288h2.124v9.99c0 .162.108.27.27.27h2.196Zm5.436.216c1.782 0 3.348-.936 3.366-2.754.036-1.332-.846-2.106-1.944-2.538l-1.332-.522c-.396-.162-.702-.396-.702-.72 0-.27.162-.576.702-.576.486 0 .972.252 1.548.702.162.108.288.126.414 0l.918-1.08c.072-.108.126-.252.018-.378a3.973 3.973 0 0 0-3.042-1.386c-1.692 0-3.168.99-3.168 2.718 0 1.224.756 1.98 1.908 2.43l1.152.468c.594.234.792.432.792.774 0 .396-.324.576-.81.576-.63 0-1.224-.27-1.998-.828-.144-.09-.306-.144-.45.09l-.72 1.008c-.126.18-.144.396-.054.522.738.882 1.908 1.494 3.402 1.494Zm8.334 0c.612 0 1.584-.108 1.584-.558v-1.494c0-.18-.144-.27-.324-.252-.234.018-.396.018-.558.018-.45 0-.756-.252-.756-.738v-3.888h1.35c.162 0 .27-.108.27-.27V26.45c0-.162-.108-.27-.27-.27h-1.35v-2.07c0-.162-.126-.27-.288-.27h-2.214c-.162 0-.288.108-.288.27v2.07h-1.098c-.162 0-.27.108-.27.27v1.584c0 .162.108.27.27.27h1.098v4.194c0 2.052 1.386 2.718 2.844 2.718ZM17.175 15c.09 0 .15-.06.15-.15v-2.26h.72c1.69 0 2.49-.93 2.49-2.29 0-1.36-.8-2.3-2.49-2.3h-2.15c-.09 0-.15.06-.15.15v6.7c0 .09.06.15.15.15h1.28Zm.15-5.6h.68c.53 0 1.02.17 1.02.9 0 .72-.49.89-1.02.89h-.68V9.4Zm5.5 5.6c.09 0 .16-.06.16-.15v-2.36c0-.73.38-1.13 1.01-1.13.15 0 .26.02.36.05.14.03.21 0 .21-.13v-.97c0-.09-.02-.15-.09-.2-.08-.06-.21-.13-.45-.13-.57 0-.88.4-1.04.93l-.05-.65c0-.12-.06-.16-.15-.16h-1.18c-.09 0-.15.06-.15.15v4.6c0 .09.06.15.15.15h1.22Zm4.77.12c1.48 0 2.58-1.12 2.58-2.57 0-1.45-1.1-2.57-2.58-2.57s-2.57 1.12-2.57 2.57c0 1.45 1.09 2.57 2.57 2.57Zm0-1.4c-.62 0-1.1-.45-1.1-1.17s.48-1.17 1.1-1.17c.62 0 1.1.45 1.1 1.17s-.48 1.17-1.1 1.17Zm5.49 1.4c.7 0 1.2-.28 1.53-.75l.02.48c0 .09.07.15.16.15h1.1c.09 0 .17-.06.17-.15V8c0-.09-.07-.15-.16-.15h-1.23c-.09 0-.15.06-.15.15v2.59c-.33-.39-.8-.61-1.44-.61-1.36 0-2.3 1.12-2.3 2.57 0 1.46.94 2.57 2.3 2.57Zm.33-1.39c-.65 0-1.14-.46-1.Line truncated
|
||||||
|
After Width: | Height: | Size: 8.3 KiB |
@@ -0,0 +1,9 @@
|
|||||||
|
<svg width="161" height="75" viewBox="0 0 161 75" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M12.6 21.2L4.8 24L5 15.7L0 9.2L7.9 6.8L12.6 0L17.3 6.8L25.2 9.2L20.2 15.7L20.4 24L12.6 21.2Z" fill="#E9A944"/>
|
||||||
|
<path d="M46.4 21.2L38.6 24L38.9 15.7L33.8 9.2L41.7 6.8L46.4 0L51.1 6.8L59 9.2L54 15.7L54.2 24L46.4 21.2Z" fill="#E9A944"/>
|
||||||
|
<path d="M80.2 21.2L72.4 24L72.7 15.7L67.6 9.2L75.6 6.8L80.2 0L84.9 6.8L92.8 9.2L87.8 15.7L88 24L80.2 21.2Z" fill="#E9A944"/>
|
||||||
|
<path d="M114 21.2L106.2 24L106.5 15.7L101.4 9.2L109.4 6.8L114 0L118.7 6.8L126.7 9.2L121.6 15.7L121.8 24L114 21.2Z" fill="#E9A944"/>
|
||||||
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M40 56.5C40 66.7175 31.7175 75 21.5 75C11.2825 75 3 66.7175 3 56.5C3 46.2825 11.2825 38 21.5 38C31.7175 38 40 46.2825 40 56.5Z" fill="#FF6154"/>
|
||||||
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M23.967 56.5H18.725V50.95H23.967C24.703 50.95 25.4088 51.2424 25.9292 51.7628C26.4496 52.2832 26.742 52.989 26.742 53.725C26.742 54.461 26.4496 55.1668 25.9292 55.6872C25.4088 56.2076 24.703 56.5 23.967 56.5ZM23.967 47.25H15.025V65.75H18.725V60.2H23.967C25.6843 60.2 27.3312 59.5178 28.5455 58.3035C29.7598 57.0892 30.442 55.4423 30.442 53.725C30.442 52.0077 29.7598 50.3608 28.5455 49.1465C27.3312 47.9322 25.6843 47.25 23.967 47.25Z" fill="white"/>
|
||||||
|
<path d="M147.6 21.2L139.8 24L140.1 15.7L135 9.2L143 6.8L147.6 0L152.3 6.8L160.3 9.2L155.2 15.7L155.4 24L147.6 21.2Z" fill="#E9A944"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 1.4 KiB |
@@ -0,0 +1,22 @@
|
|||||||
|
<svg width="121" height="54" viewBox="0 0 121 54" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g clip-path="url(#clip0_12158_115879)">
|
||||||
|
<path d="M22.6079 0H0.10791V22.5H22.6079V0Z" fill="#00B67A"/>
|
||||||
|
<path d="M46.9829 0H24.4829V22.5H46.9829V0Z" fill="#00B67A"/>
|
||||||
|
<path d="M71.3579 0H48.8579V22.5H71.3579V0Z" fill="#00B67A"/>
|
||||||
|
<path d="M95.7329 0H73.2329V22.5H95.7329V0Z" fill="#00B67A"/>
|
||||||
|
<path d="M120.108 0H108.858V22.5H120.108V0Z" fill="#AFAFAF"/>
|
||||||
|
<path d="M108.858 0H97.6079V22.5H108.858V0Z" fill="#00B67A"/>
|
||||||
|
<path d="M11.3579 15.1641L14.7799 14.2969L16.2099 18.7031L11.3579 15.1641ZM19.2329 9.46867H13.2099L11.3579 3.79688L9.50696 9.46867H3.48291L8.35791 12.9844L6.50696 18.6562L11.3819 15.1406L14.3819 12.9844L19.2329 9.46867Z" fill="white"/>
|
||||||
|
<path d="M35.7329 15.1641L39.1549 14.2969L40.5849 18.7031L35.7329 15.1641ZM43.6079 9.46867H37.5849L35.7329 3.79688L33.8819 9.46867H27.8579L32.7329 12.9844L30.8819 18.6562L35.7569 15.1406L38.7569 12.9844L43.6079 9.46867Z" fill="white"/>
|
||||||
|
<path d="M60.1079 15.1641L63.5299 14.2969L64.9599 18.7031L60.1079 15.1641ZM67.9829 9.46867H61.9599L60.1079 3.79688L58.2569 9.46867H52.2329L57.1079 12.9844L55.2569 18.6562L60.1319 15.1406L63.1319 12.9844L67.9829 9.46867Z" fill="white"/>
|
||||||
|
<path d="M84.4829 15.1641L87.9049 14.2969L89.3349 18.7031L84.4829 15.1641ZM92.3579 9.46867H86.3349L84.4829 3.79688L82.6319 9.46867H76.6079L81.4829 12.9844L79.6319 18.6562L84.5069 15.1406L87.5069 12.9844L92.3579 9.46867Z" fill="white"/>
|
||||||
|
<path d="M108.858 15.1641L112.28 14.2969L113.71 18.7031L108.858 15.1641ZM116.733 9.46867H110.71L108.858 3.79688L107.007 9.46867H100.983L105.858 12.9844L104.007 18.6562L108.882 15.1406L111.882 12.9844L116.733 9.46867Z" fill="white"/>
|
||||||
|
<path d="M19.8749 41.5801H27.4909V43.001H24.4959V50.9886H22.8489V43.001H19.8679V41.5801H19.8749ZM27.1649 44.1762H28.5729V45.4909H28.5989C28.6459 45.305 28.7319 45.1257 28.8579 44.9531C28.9839 44.7804 29.1369 44.6144 29.3159 44.475C29.4959 44.3289 29.6949 44.216 29.9139 44.1231C30.1329 44.0368 30.3589 43.9903 30.5849 43.9903C30.7569 43.9903 30.8829 43.9969 30.9499 44.0036C31.0159 44.0102 31.0829 44.0235 31.1559 44.0301V45.4776C31.0489 45.4577 30.9429 45.4444 30.8299 45.4311C30.7169 45.4178 30.6109 45.4112 30.5049 45.4112C30.2529 45.4112 30.0139 45.4643 29.7879 45.5639C29.5619 45.6635 29.3699 45.8162 29.2039 46.0088C29.0379 46.208 28.9049 46.447 28.8049 46.7391C28.7059 47.0313 28.6589 47.3633 28.6589 47.7417V50.9819H27.1589V44.1762H27.1649ZM38.0539 50.9886H36.5799V50.0391H36.5539C36.3679 50.3843 36.0959 50.6566 35.7299 50.8624C35.3649 51.0682 34.9929 51.1745 34.6149 51.1745C33.7189 51.1745 33.0679 50.9554 32.6699 50.5105C32.2709 50.0656 32.0719 49.395 32.0719 48.4987V44.1762H33.5729V48.3526C33.5729 48.9502 33.6849 49.3751 33.9179 49.6208C34.1439 49.8664 34.4689 49.9926 34.8809 49.9926C35.1989 49.9926 35.4579 49.9461 35.6709 49.8465C35.8829 49.7469 36.0559 49.6208 36.1819 49.4548C36.3149 49.2954 36.4079 49.0962 36.4669 48.8705C36.5269 48.6447 36.5539 48.3991 36.5539 48.1335V44.1828H38.0539V50.9886ZM40.6109 48.8041C40.6569 49.2423 40.8229 49.5477 41.1089 49.727C41.4009 49.8996 41.7459 49.9926 42.1509 49.9926C42.2899 49.9926 42.4499 49.9793 42.6289 49.9594C42.8079 49.9395 42.9809 49.893 43.1339 49.8332C43.2929 49.7735 43.4189 49.6805 43.5249 49.561C43.6249 49.4415 43.6719 49.2888 43.6649 49.0962C43.6579 48.9037 43.5849 48.7443 43.4519 48.6248C43.3199 48.4987 43.1539 48.4057 42.9479 48.326C42.7419 48.253 42.5099 48.1866 42.2439 48.1335C41.9779 48.0804 41.7129 48.0206 41.4409 47.9608C41.1619 47.9011 40.8889 47.8214 40.6309 47.7351C40.3719 47.6488 40.1389 47.5293 39.9329 47.3765C39.7279 47.2305 39.5619 47.0379 39.4419 46.8055C39.3159 46.5731 39.2559 46.2876 39.2559 45.9424C39.2559 45.5705 39.3489 45.2651 39.5279 45.0128C39.7079 44.7605 39.9399 44.5613 40.2119 44.4086C40.4909 44.2559 40.7969 44.1496 41.1349 44.0832C41.4739 44.0235 41.7989 43.9903 42.1049 43.9903C42.4559 43.9903 42.7949 44.0301 43.1139 44.1032C43.4329 44.1762 43.7249 44.2957 43.9839 44.4684C44.2429 44.6343 44.4549 44.8535 44.6279 45.119C44.7999 45.3846 44.9069 45.71 44.9529 46.0884H43.3859C43.3129 45.7299 43.1539 45.4842 42.8949 45.3647C42.6359 45.2386 42.3369 45.1788 42.0049 45.1788C41.8989 45.1788 41.7729 45.1854 41.6259 45.2054C41.4799 45.2253 41.3479 45.2585 41.2149 45.305C41.0889 45.3514 40.9819 45.4245 40.8889 45.5174C40.8029 45.6104 40.7569 45.7299 40.7569 45.8826C40.7569 46.0685 40.8229 46.2146 40.9489 46.3275C41.0749 46.4403 41.2409 46.5333 41.4469 46.613C41.6529 46.686 41.8849 46.7524 42.1509 46.8055C42.4169 46.8586 42.6889 46.9184 42.9679 46.9782C43.2399 47.0379 43.5059 47.1176 43.7709 47.2039C44.0369 47.2902 44.2689 47.4097 44.4749 47.5625C44.6809 47.7152 44.8469 47.9011 44.9729 48.1268C45.0989 48.3526 45.1649 48.6381 45.1649 48.9701C45.1649 49.3751 45.0729 49.7137 44.8869 49.9992C44.7009 50.2781 44.4619 50.5105 44.1699 50.6831C43.8769 50.8558 43.5449 50.9886 43.1869 51.0682C42.8279 51.1479 42.4699 51.1877 42.1179 51.1877C41.6859 51.1877 41.2879 51.1413 40.9229 51.0417C40.5579 50.9421 40.2389 50.796 39.9729 50.6034C39.7079 50.4043 39.4949 50.1586 39.3419 49.8664C39.1899 49.5743 39.1099 49.2224 39.0969 48.8174H40.6109V48.8041ZM45.5639 44.1762H46.6989V42.1312H48.1999V44.1762H49.5539V45.2983H48.1999V48.9369C48.1999 49.0962 48.2059 49.229 48.2199 49.3485C48.2329 49.4614 48.2659 49.561 48.3129 49.6407C48.3589 49.7204 48.4319 49.7801 48.5319 49.82C48.6309 49.8598 48.7579 49.8797 48.9299 49.8797C49.0359 49.8797 49.1429 49.8797 49.2489 49.8731C49.3549 49.8664 49.4609 49.8532 49.5679 49.8266V50.9886C49.4019 51.0085 49.2359 51.0217 49.0829 51.0417C48.9239 51.0616 48.7639 51.0682 48.5979 51.0682C48.1999 51.0682 47.8809 51.0284 47.6419 50.9554C47.4029 50.8823 47.2099 50.7694 47.0779 50.6234C46.9379 50.4773 46.8519 50.298 46.7989 50.0789C46.7519 49.8598 46.7189 49.6075 46.7129 49.3286V45.3116H45.5769V44.1762H45.5639ZM50.6169 44.1762H52.0379V45.0991H52.0639C52.2769 44.7007 52.5689 44.4219 52.9469 44.2492C53.3259 44.0766 53.7309 43.9903 54.1759 43.9903C54.7129 43.9903 55.1779 44.0832 55.5769 44.2758C55.9749 44.4617 56.3069 44.7207 56.5719 45.0526C56.8379 45.3846 57.0309 45.7697 57.1629 46.208C57.2959 46.6462 57.3629 47.1176 57.3629 47.6156C57.3629 48.0737 57.3029 48.5186 57.1829 48.9435C57.0639 49.3751 56.8849 49.7536 56.6459 50.0855C56.4059 50.4175 56.1009 50.6765 55.7289 50.8757C55.3569 51.0749 54.9259 51.1745 54.4209 51.1745C54.2019 51.1745 53.9829 51.1545 53.7639 51.1147C53.5449 51.0749 53.3319 51.0085 53.1329 50.9222C52.9339 50.8358 52.7409 50.723 52.5749 50.5835C52.4029 50.4441 52.2629 50.2847 52.1439 50.1055H52.1169V53.505H50.6169V44.1762ZM55.8619 47.589C55.8619 47.2836 55.8219 46.9848 55.7429 46.6927C55.6629 46.4005 55.5429 46.1482 55.3839 45.9Line truncated
|
||||||
|
<path d="M9.11792 48.1201L13.0429 47.1042L14.6889 52.1637L9.11792 48.1201ZM18.1219 41.58H11.2429L9.11792 35.0332L6.99396 41.58L0.10791 41.5733L5.67896 45.6169L3.55396 52.1637L9.11792 48.1201L12.5579 45.6235L18.1219 41.58Z" fill="#111827"/>
|
||||||
|
</g>
|
||||||
|
<defs>
|
||||||
|
<clipPath id="clip0_12158_115879">
|
||||||
|
<rect width="121" height="54" fill="white"/>
|
||||||
|
</clipPath>
|
||||||
|
</defs>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 9.8 KiB |
@@ -666,8 +666,6 @@
|
|||||||
"managed_event_url_clarification": "سيتم ملء \"اسم المستخدم\" باسم المستخدم للأعضاء المعينين",
|
"managed_event_url_clarification": "سيتم ملء \"اسم المستخدم\" باسم المستخدم للأعضاء المعينين",
|
||||||
"assign_to": "تعيين إلى",
|
"assign_to": "تعيين إلى",
|
||||||
"add_members": "إضافة أعضاء...",
|
"add_members": "إضافة أعضاء...",
|
||||||
"count_members_one": "{{count}} عضو",
|
|
||||||
"count_members_other": "{{count}} من الأعضاء",
|
|
||||||
"no_assigned_members": "لا يوجد أعضاء معينين",
|
"no_assigned_members": "لا يوجد أعضاء معينين",
|
||||||
"assigned_to": "تم التعيين إلى",
|
"assigned_to": "تم التعيين إلى",
|
||||||
"start_assigning_members_above": "بدء تعيين الأعضاء أعلاه",
|
"start_assigning_members_above": "بدء تعيين الأعضاء أعلاه",
|
||||||
@@ -849,7 +847,6 @@
|
|||||||
"next_step": "تخطي الخطوة",
|
"next_step": "تخطي الخطوة",
|
||||||
"prev_step": "الخطوة السابقة",
|
"prev_step": "الخطوة السابقة",
|
||||||
"install": "تثبيت",
|
"install": "تثبيت",
|
||||||
"install_paid_app": "اشتراك",
|
|
||||||
"installed": "تم التثبيت",
|
"installed": "تم التثبيت",
|
||||||
"active_install_one": "{{count}} تثبيت نشط",
|
"active_install_one": "{{count}} تثبيت نشط",
|
||||||
"active_install_other": "{{count}} تثبيت نشط",
|
"active_install_other": "{{count}} تثبيت نشط",
|
||||||
@@ -1153,6 +1150,7 @@
|
|||||||
"active_on": "إجراء في",
|
"active_on": "إجراء في",
|
||||||
"workflow_updated_successfully": "تم تحديث سير العمل {{workflowName}} بنجاح",
|
"workflow_updated_successfully": "تم تحديث سير العمل {{workflowName}} بنجاح",
|
||||||
"premium_to_standard_username_description": "هذا اسم مستخدم قياسي، سوف ينقلك هذا التحديث إلى صفحة الفوترة لخفض المستوى.",
|
"premium_to_standard_username_description": "هذا اسم مستخدم قياسي، سوف ينقلك هذا التحديث إلى صفحة الفوترة لخفض المستوى.",
|
||||||
|
"premium_username": "هذا اسم مستخدم مميز، احصل على اسم المستخدم لك مقابل {{price}}",
|
||||||
"current": "الحالي",
|
"current": "الحالي",
|
||||||
"premium": "مميز",
|
"premium": "مميز",
|
||||||
"standard": "قياسي",
|
"standard": "قياسي",
|
||||||
@@ -1218,9 +1216,6 @@
|
|||||||
"attendee_name_variable": "الحاضر",
|
"attendee_name_variable": "الحاضر",
|
||||||
"event_date_variable": "تاريخ الحدث",
|
"event_date_variable": "تاريخ الحدث",
|
||||||
"event_time_variable": "وقت الحدث",
|
"event_time_variable": "وقت الحدث",
|
||||||
"timezone_variable": "المنطقة الزمنية",
|
|
||||||
"location_variable": "الموقع",
|
|
||||||
"additional_notes_variable": "ملاحظات إضافية",
|
|
||||||
"organizer_name_variable": "اسم المنظم",
|
"organizer_name_variable": "اسم المنظم",
|
||||||
"app_upgrade_description": "لاستخدام هذه الميزة، تحتاج إلى الترقية إلى حساب Pro.",
|
"app_upgrade_description": "لاستخدام هذه الميزة، تحتاج إلى الترقية إلى حساب Pro.",
|
||||||
"invalid_number": "رقم الهاتف غير صالح",
|
"invalid_number": "رقم الهاتف غير صالح",
|
||||||
@@ -1536,6 +1531,7 @@
|
|||||||
"you": "أنت",
|
"you": "أنت",
|
||||||
"resend_email": "إعادة إرسال رسالة البريد الإلكتروني",
|
"resend_email": "إعادة إرسال رسالة البريد الإلكتروني",
|
||||||
"member_already_invited": "تمت دعوة العضو بالفعل",
|
"member_already_invited": "تمت دعوة العضو بالفعل",
|
||||||
|
"already_in_use_error": "اسم المستخدم مستخدم مسبقاً",
|
||||||
"enter_email_or_username": "أدخل بريد إلكتروني أو اسم مستخدم",
|
"enter_email_or_username": "أدخل بريد إلكتروني أو اسم مستخدم",
|
||||||
"team_name_taken": "هذا الاسم مأخوذ بالفعل",
|
"team_name_taken": "هذا الاسم مأخوذ بالفعل",
|
||||||
"must_enter_team_name": "يجب إدخال اسم فريق",
|
"must_enter_team_name": "يجب إدخال اسم فريق",
|
||||||
@@ -1986,14 +1982,11 @@
|
|||||||
"google_new_spam_policy": "يمكن أن تمنعك سياسة Google الجديدة للرسائل غير المرغوب فيها من تلقي أي إشعارات بالبريد الإلكتروني والتقويم حول هذا الحجز.",
|
"google_new_spam_policy": "يمكن أن تمنعك سياسة Google الجديدة للرسائل غير المرغوب فيها من تلقي أي إشعارات بالبريد الإلكتروني والتقويم حول هذا الحجز.",
|
||||||
"resolve": "حل",
|
"resolve": "حل",
|
||||||
"no_organization_slug": "حدث خطأ أثناء إنشاء فرق لهذه المنظمة. الكلمة اللطيفة للرابط مفقودة.",
|
"no_organization_slug": "حدث خطأ أثناء إنشاء فرق لهذه المنظمة. الكلمة اللطيفة للرابط مفقودة.",
|
||||||
"org_name": "اسم المنظمة",
|
|
||||||
"org_url": "رابط المنظمة",
|
|
||||||
"copy_link_org": "نسخ الرابط إلى المنظمة",
|
"copy_link_org": "نسخ الرابط إلى المنظمة",
|
||||||
"404_the_org": "المنظمة",
|
"404_the_org": "المنظمة",
|
||||||
"404_the_team": "الفريق",
|
"404_the_team": "الفريق",
|
||||||
"404_claim_entity_org": "المطالبة بنطاقك الفرعي لمنظمتك",
|
"404_claim_entity_org": "المطالبة بنطاقك الفرعي لمنظمتك",
|
||||||
"404_claim_entity_team": "انضم لهذا الفريق وابدأ في إدارة الجداول الزمنية بشكل جماعي",
|
"404_claim_entity_team": "انضم لهذا الفريق وابدأ في إدارة الجداول الزمنية بشكل جماعي",
|
||||||
"insights_all_org_filter": "الكل",
|
|
||||||
"insights_team_filter": "الفريق: {{teamName}}",
|
"insights_team_filter": "الفريق: {{teamName}}",
|
||||||
"insights_user_filter": "المستخدم: {{userName}}",
|
"insights_user_filter": "المستخدم: {{userName}}",
|
||||||
"insights_subtitle": "عرض Insights الحجز عبر أحداثك",
|
"insights_subtitle": "عرض Insights الحجز عبر أحداثك",
|
||||||
@@ -2005,7 +1998,6 @@
|
|||||||
"select_date": "اختيار التاريخ",
|
"select_date": "اختيار التاريخ",
|
||||||
"see_all_available_times": "رؤية كل الأوقات المتاحة",
|
"see_all_available_times": "رؤية كل الأوقات المتاحة",
|
||||||
"org_team_names_example": "مثال، فريق التسويق",
|
"org_team_names_example": "مثال، فريق التسويق",
|
||||||
"org_team_names_example_1": "مثال، فريق التسويق",
|
|
||||||
"org_team_names_example_2": "مثال، فريق المبيعات",
|
"org_team_names_example_2": "مثال، فريق المبيعات",
|
||||||
"org_team_names_example_3": "مثال، فريق التصميم",
|
"org_team_names_example_3": "مثال، فريق التصميم",
|
||||||
"org_team_names_example_4": "مثال، الفريق الهندسي",
|
"org_team_names_example_4": "مثال، الفريق الهندسي",
|
||||||
@@ -2067,6 +2059,9 @@
|
|||||||
"include_calendar_event": "إدراج فعاليات في التقويم",
|
"include_calendar_event": "إدراج فعاليات في التقويم",
|
||||||
"oAuth": "OAuth",
|
"oAuth": "OAuth",
|
||||||
"recently_added": "تمت الإضافة مؤخراً",
|
"recently_added": "تمت الإضافة مؤخراً",
|
||||||
|
"connect_all_calendars": "قم بربط جميع التقويمات",
|
||||||
|
"workflow_automation": "أتمتة سير العمل",
|
||||||
|
"scheduling_for_your_team": "أتمتة سير العمل",
|
||||||
"no_members_found": "لم يُعثر على أعضاء",
|
"no_members_found": "لم يُعثر على أعضاء",
|
||||||
"event_setup_length_error": "إعداد الفعالية: يجب أن تكون المدة لدقيقة على الأقل.",
|
"event_setup_length_error": "إعداد الفعالية: يجب أن تكون المدة لدقيقة على الأقل.",
|
||||||
"availability_schedules": "جدولة التوافر",
|
"availability_schedules": "جدولة التوافر",
|
||||||
@@ -2090,6 +2085,7 @@
|
|||||||
"edit_users_availability": "تعديل توافر المستخدم: {{username}}",
|
"edit_users_availability": "تعديل توافر المستخدم: {{username}}",
|
||||||
"resend_invitation": "إعادة إرسال الدعوة",
|
"resend_invitation": "إعادة إرسال الدعوة",
|
||||||
"invitation_resent": "تم إعادة إرسال الدعوة.",
|
"invitation_resent": "تم إعادة إرسال الدعوة.",
|
||||||
|
"saml_sso": "SAML",
|
||||||
"add_client": "إضافة عميل",
|
"add_client": "إضافة عميل",
|
||||||
"copy_client_secret_info": "لن تتمكن من مطالعة السر بعد نسخه بعد الآن",
|
"copy_client_secret_info": "لن تتمكن من مطالعة السر بعد نسخه بعد الآن",
|
||||||
"add_new_client": "إضافة عميل جديد",
|
"add_new_client": "إضافة عميل جديد",
|
||||||
@@ -2101,5 +2097,6 @@
|
|||||||
"lock_timezone_toggle_on_booking_page": "قفل المنطقة الزمنية في صفحة الحجز",
|
"lock_timezone_toggle_on_booking_page": "قفل المنطقة الزمنية في صفحة الحجز",
|
||||||
"description_lock_timezone_toggle_on_booking_page": "تقفل المنطقة الزمنية على صفحة الحجز، وهذا مفيد للأحداث وجهاً لوجه.",
|
"description_lock_timezone_toggle_on_booking_page": "تقفل المنطقة الزمنية على صفحة الحجز، وهذا مفيد للأحداث وجهاً لوجه.",
|
||||||
"extensive_whitelabeling": "عملية انضمام ودعم هندسي مخصصين",
|
"extensive_whitelabeling": "عملية انضمام ودعم هندسي مخصصين",
|
||||||
|
"need_help": "هل تحتاج إلى مساعدة؟",
|
||||||
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ أضف السلاسل الجديدة أعلاه هنا ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ أضف السلاسل الجديدة أعلاه هنا ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
||||||
}
|
}
|
||||||
@@ -666,8 +666,6 @@
|
|||||||
"managed_event_url_clarification": "„uživatelské jméno“ bude vyplněno uživatelským jménem přiřazených členů",
|
"managed_event_url_clarification": "„uživatelské jméno“ bude vyplněno uživatelským jménem přiřazených členů",
|
||||||
"assign_to": "Přiřadit k",
|
"assign_to": "Přiřadit k",
|
||||||
"add_members": "Přidat členy...",
|
"add_members": "Přidat členy...",
|
||||||
"count_members_one": "Počet členů: {{count}}",
|
|
||||||
"count_members_other": "Počet členů: {{count}}",
|
|
||||||
"no_assigned_members": "Žádní přiřazení členové",
|
"no_assigned_members": "Žádní přiřazení členové",
|
||||||
"assigned_to": "Přiřazeno k",
|
"assigned_to": "Přiřazeno k",
|
||||||
"start_assigning_members_above": "Začněte přiřazovat členy výše",
|
"start_assigning_members_above": "Začněte přiřazovat členy výše",
|
||||||
@@ -849,7 +847,6 @@
|
|||||||
"next_step": "Přeskočit krok",
|
"next_step": "Přeskočit krok",
|
||||||
"prev_step": "Předchozí krok",
|
"prev_step": "Předchozí krok",
|
||||||
"install": "Nainstalovat",
|
"install": "Nainstalovat",
|
||||||
"install_paid_app": "Odebírat",
|
|
||||||
"installed": "Nainstalováno",
|
"installed": "Nainstalováno",
|
||||||
"active_install_one": "Aktivní instalace: {{count}}",
|
"active_install_one": "Aktivní instalace: {{count}}",
|
||||||
"active_install_other": "Aktivní instalace: {{count}}",
|
"active_install_other": "Aktivní instalace: {{count}}",
|
||||||
@@ -1153,6 +1150,7 @@
|
|||||||
"active_on": "Aktivní pro:",
|
"active_on": "Aktivní pro:",
|
||||||
"workflow_updated_successfully": "Pracovní postup {{workflowName}} byl aktualizován",
|
"workflow_updated_successfully": "Pracovní postup {{workflowName}} byl aktualizován",
|
||||||
"premium_to_standard_username_description": "Toto je standardní uživatelské jméno a při aktualizaci přejdete k fakturaci, kde provedete snížení úrovně.",
|
"premium_to_standard_username_description": "Toto je standardní uživatelské jméno a při aktualizaci přejdete k fakturaci, kde provedete snížení úrovně.",
|
||||||
|
"premium_username": "Toto je prémiové uživatelské jméno, získejte ho za {{price}}",
|
||||||
"current": "Aktuální",
|
"current": "Aktuální",
|
||||||
"premium": "prémiové",
|
"premium": "prémiové",
|
||||||
"standard": "standardní",
|
"standard": "standardní",
|
||||||
@@ -1218,9 +1216,6 @@
|
|||||||
"attendee_name_variable": "Jméno účastníka",
|
"attendee_name_variable": "Jméno účastníka",
|
||||||
"event_date_variable": "Datum události",
|
"event_date_variable": "Datum události",
|
||||||
"event_time_variable": "Čas události",
|
"event_time_variable": "Čas události",
|
||||||
"timezone_variable": "Časová zóna",
|
|
||||||
"location_variable": "Místo",
|
|
||||||
"additional_notes_variable": "Doplňující poznámky",
|
|
||||||
"organizer_name_variable": "Jméno organizátora",
|
"organizer_name_variable": "Jméno organizátora",
|
||||||
"app_upgrade_description": "Pokud chcete použít tuto funkci, musíte provést aktualizaci na účet Pro.",
|
"app_upgrade_description": "Pokud chcete použít tuto funkci, musíte provést aktualizaci na účet Pro.",
|
||||||
"invalid_number": "Neplatné telefonní číslo",
|
"invalid_number": "Neplatné telefonní číslo",
|
||||||
@@ -1536,6 +1531,7 @@
|
|||||||
"you": "Vy",
|
"you": "Vy",
|
||||||
"resend_email": "Znovu odeslat e-mail",
|
"resend_email": "Znovu odeslat e-mail",
|
||||||
"member_already_invited": "Člen byl už pozván",
|
"member_already_invited": "Člen byl už pozván",
|
||||||
|
"already_in_use_error": "Uživatelské jméno se již používá",
|
||||||
"enter_email_or_username": "Zadejte e-mail nebo uživatelské jméno",
|
"enter_email_or_username": "Zadejte e-mail nebo uživatelské jméno",
|
||||||
"team_name_taken": "Toto jméno je už obsazeno",
|
"team_name_taken": "Toto jméno je už obsazeno",
|
||||||
"must_enter_team_name": "Musíte zadat název týmu",
|
"must_enter_team_name": "Musíte zadat název týmu",
|
||||||
@@ -1986,14 +1982,11 @@
|
|||||||
"google_new_spam_policy": "Nové zásady společnosti Google týkající se nevyžádané pošty by mohly zabránit tomu, abyste dostávali e-mailová oznámení a oznámení kalendáře o této rezervaci.",
|
"google_new_spam_policy": "Nové zásady společnosti Google týkající se nevyžádané pošty by mohly zabránit tomu, abyste dostávali e-mailová oznámení a oznámení kalendáře o této rezervaci.",
|
||||||
"resolve": "Vyřešit",
|
"resolve": "Vyřešit",
|
||||||
"no_organization_slug": "Při vytváření týmů pro tuto organizaci došlo k chybě. Chybějící slug adresy URL.",
|
"no_organization_slug": "Při vytváření týmů pro tuto organizaci došlo k chybě. Chybějící slug adresy URL.",
|
||||||
"org_name": "Název organizace",
|
|
||||||
"org_url": "Adresa URL organizace",
|
|
||||||
"copy_link_org": "Zkopírovat odkaz na organizaci",
|
"copy_link_org": "Zkopírovat odkaz na organizaci",
|
||||||
"404_the_org": "Organizace",
|
"404_the_org": "Organizace",
|
||||||
"404_the_team": "Tým",
|
"404_the_team": "Tým",
|
||||||
"404_claim_entity_org": "Vyžádejte si subdoménu pro svou organizaci",
|
"404_claim_entity_org": "Vyžádejte si subdoménu pro svou organizaci",
|
||||||
"404_claim_entity_team": "Vyžádejte si přístup k tomuto týmu a začněte kolektivně spravovat rozvrhy",
|
"404_claim_entity_team": "Vyžádejte si přístup k tomuto týmu a začněte kolektivně spravovat rozvrhy",
|
||||||
"insights_all_org_filter": "Všechny aplikace",
|
|
||||||
"insights_team_filter": "Tým: {{teamName}}",
|
"insights_team_filter": "Tým: {{teamName}}",
|
||||||
"insights_user_filter": "Uživatel: {{userName}}",
|
"insights_user_filter": "Uživatel: {{userName}}",
|
||||||
"insights_subtitle": "Zobrazte si Insight rezervací napříč vašimi událostmi",
|
"insights_subtitle": "Zobrazte si Insight rezervací napříč vašimi událostmi",
|
||||||
@@ -2005,7 +1998,6 @@
|
|||||||
"select_date": "Vyberte datum",
|
"select_date": "Vyberte datum",
|
||||||
"see_all_available_times": "Zobrazit všechny dostupné časy",
|
"see_all_available_times": "Zobrazit všechny dostupné časy",
|
||||||
"org_team_names_example": "Např. marketingový tým",
|
"org_team_names_example": "Např. marketingový tým",
|
||||||
"org_team_names_example_1": "Např. marketingový tým",
|
|
||||||
"org_team_names_example_2": "Např. obchodní tým",
|
"org_team_names_example_2": "Např. obchodní tým",
|
||||||
"org_team_names_example_3": "Např. designérský tým",
|
"org_team_names_example_3": "Např. designérský tým",
|
||||||
"org_team_names_example_4": "Např. inženýrský tým",
|
"org_team_names_example_4": "Např. inženýrský tým",
|
||||||
@@ -2067,6 +2059,9 @@
|
|||||||
"include_calendar_event": "Zahrnout událost kalendáře",
|
"include_calendar_event": "Zahrnout událost kalendáře",
|
||||||
"oAuth": "OAuth",
|
"oAuth": "OAuth",
|
||||||
"recently_added": "Nedávno přidáno",
|
"recently_added": "Nedávno přidáno",
|
||||||
|
"connect_all_calendars": "Propojte všechny své kalendáře",
|
||||||
|
"workflow_automation": "Automatizace pracovních postupů",
|
||||||
|
"scheduling_for_your_team": "Automatizace pracovních postupů",
|
||||||
"no_members_found": "Nenalezeni žádní členové",
|
"no_members_found": "Nenalezeni žádní členové",
|
||||||
"event_setup_length_error": "Nastavení události: Doba trvání musí být alespoň 1 minuta.",
|
"event_setup_length_error": "Nastavení události: Doba trvání musí být alespoň 1 minuta.",
|
||||||
"availability_schedules": "Plány dostupnosti",
|
"availability_schedules": "Plány dostupnosti",
|
||||||
@@ -2090,6 +2085,7 @@
|
|||||||
"edit_users_availability": "Upravte dostupnost uživatele: {{username}}",
|
"edit_users_availability": "Upravte dostupnost uživatele: {{username}}",
|
||||||
"resend_invitation": "Znovu odeslat pozvánku",
|
"resend_invitation": "Znovu odeslat pozvánku",
|
||||||
"invitation_resent": "Pozvánka byla odeslána znovu.",
|
"invitation_resent": "Pozvánka byla odeslána znovu.",
|
||||||
|
"saml_sso": "SAML",
|
||||||
"add_client": "Přidat klienta",
|
"add_client": "Přidat klienta",
|
||||||
"copy_client_secret_info": "Po zkopírování již nebude možné tajný klíč zobrazit",
|
"copy_client_secret_info": "Po zkopírování již nebude možné tajný klíč zobrazit",
|
||||||
"add_new_client": "Přidat nového klienta",
|
"add_new_client": "Přidat nového klienta",
|
||||||
@@ -2101,5 +2097,6 @@
|
|||||||
"lock_timezone_toggle_on_booking_page": "Uzamčení časového pásma na stránce rezervace",
|
"lock_timezone_toggle_on_booking_page": "Uzamčení časového pásma na stránce rezervace",
|
||||||
"description_lock_timezone_toggle_on_booking_page": "Uzamčení časového pásma na stránce rezervace (užitečné pro osobní události).",
|
"description_lock_timezone_toggle_on_booking_page": "Uzamčení časového pásma na stránce rezervace (užitečné pro osobní události).",
|
||||||
"extensive_whitelabeling": "Vyhrazená podpora zaškolovací a inženýrská podpora",
|
"extensive_whitelabeling": "Vyhrazená podpora zaškolovací a inženýrská podpora",
|
||||||
|
"need_help": "Potřebujete pomoc?",
|
||||||
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Přidejte své nové řetězce nahoru ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Přidejte své nové řetězce nahoru ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
||||||
}
|
}
|
||||||
@@ -717,7 +717,6 @@
|
|||||||
"next_step": "Spring trin over",
|
"next_step": "Spring trin over",
|
||||||
"prev_step": "Forrige trin",
|
"prev_step": "Forrige trin",
|
||||||
"install": "Installér",
|
"install": "Installér",
|
||||||
"install_paid_app": "Abonnér",
|
|
||||||
"installed": "Installeret",
|
"installed": "Installeret",
|
||||||
"active_install_one": "{{count}} aktiv installation",
|
"active_install_one": "{{count}} aktiv installation",
|
||||||
"active_install_other": "{{count}} aktive installationer",
|
"active_install_other": "{{count}} aktive installationer",
|
||||||
@@ -1055,9 +1054,6 @@
|
|||||||
"attendee_name_variable": "Deltager",
|
"attendee_name_variable": "Deltager",
|
||||||
"event_date_variable": "Dato for begivenhed",
|
"event_date_variable": "Dato for begivenhed",
|
||||||
"event_time_variable": "Tidspunkt for begivenhed",
|
"event_time_variable": "Tidspunkt for begivenhed",
|
||||||
"timezone_variable": "Tidszone",
|
|
||||||
"location_variable": "Placering",
|
|
||||||
"additional_notes_variable": "Yderligere bemærkninger",
|
|
||||||
"app_upgrade_description": "For at bruge denne funktion skal du opgradere til en Pro-konto.",
|
"app_upgrade_description": "For at bruge denne funktion skal du opgradere til en Pro-konto.",
|
||||||
"invalid_number": "Ugyldigt telefonnummer",
|
"invalid_number": "Ugyldigt telefonnummer",
|
||||||
"navigate": "Navigér",
|
"navigate": "Navigér",
|
||||||
@@ -1538,5 +1534,5 @@
|
|||||||
"this_will_be_the_placeholder": "Dette vil være pladsholderen",
|
"this_will_be_the_placeholder": "Dette vil være pladsholderen",
|
||||||
"verification_code": "Bekræftelseskode",
|
"verification_code": "Bekræftelseskode",
|
||||||
"verify": "Bekræft",
|
"verify": "Bekræft",
|
||||||
"insights_all_org_filter": "Alle"
|
"need_help": "Brug for hjælp?"
|
||||||
}
|
}
|
||||||
@@ -155,7 +155,7 @@
|
|||||||
"webhook_updated_successfully": "Webhook erfolgreich aktualisiert!",
|
"webhook_updated_successfully": "Webhook erfolgreich aktualisiert!",
|
||||||
"webhook_removed_successfully": "Webhook erfolgreich entfernt!",
|
"webhook_removed_successfully": "Webhook erfolgreich entfernt!",
|
||||||
"payload_template": "Payload Vorlage",
|
"payload_template": "Payload Vorlage",
|
||||||
"dismiss": "Abbrechen",
|
"dismiss": "Ignorieren",
|
||||||
"no_data_yet": "Noch keine Daten",
|
"no_data_yet": "Noch keine Daten",
|
||||||
"ping_test": "Pingtest",
|
"ping_test": "Pingtest",
|
||||||
"add_to_homescreen": "Fügen Sie diese App Ihrem Startbildschirm für schnelleren Zugriff hinzu.",
|
"add_to_homescreen": "Fügen Sie diese App Ihrem Startbildschirm für schnelleren Zugriff hinzu.",
|
||||||
@@ -295,7 +295,7 @@
|
|||||||
"other": "Sonstige",
|
"other": "Sonstige",
|
||||||
"email_sign_in_subject": "Ihr Anmelde-Link für {{appName}}",
|
"email_sign_in_subject": "Ihr Anmelde-Link für {{appName}}",
|
||||||
"emailed_you_and_attendees": "Wir haben eine E-Mail mit einer Kalendereinladung mit den Details an alle gesendet.",
|
"emailed_you_and_attendees": "Wir haben eine E-Mail mit einer Kalendereinladung mit den Details an alle gesendet.",
|
||||||
"emailed_you_and_attendees_recurring": "Wir haben eine E-Mail mit einer Kalendereinladung mit den Details für das erste dieser wiederkehrenden Ereignisse an alle gesendet.",
|
"emailed_you_and_attendees_recurring": "Wir haben eine E-Mail mit einer Kalendereinladung mit den Details für das erste dieser wiederkehrenden Termine an alle gesendet.",
|
||||||
"emailed_you_and_any_other_attendees": "Wir haben eine E-Mail mit diesen Informationen an alle gesendet.",
|
"emailed_you_and_any_other_attendees": "Wir haben eine E-Mail mit diesen Informationen an alle gesendet.",
|
||||||
"needs_to_be_confirmed_or_rejected": "Ihr Termin muss noch bestätigt oder abgelehnt werden.",
|
"needs_to_be_confirmed_or_rejected": "Ihr Termin muss noch bestätigt oder abgelehnt werden.",
|
||||||
"needs_to_be_confirmed_or_rejected_recurring": "Ihr wiederkehrender Termin muss noch bestätigt oder abgelehnt werden.",
|
"needs_to_be_confirmed_or_rejected_recurring": "Ihr wiederkehrender Termin muss noch bestätigt oder abgelehnt werden.",
|
||||||
@@ -666,8 +666,6 @@
|
|||||||
"managed_event_url_clarification": "„Benutzername“ wird mit dem Benutzernamen der zugewiesenen Mitglieder ausgefüllt",
|
"managed_event_url_clarification": "„Benutzername“ wird mit dem Benutzernamen der zugewiesenen Mitglieder ausgefüllt",
|
||||||
"assign_to": "Zuordnen zu",
|
"assign_to": "Zuordnen zu",
|
||||||
"add_members": "Mitglieder hinzufügen...",
|
"add_members": "Mitglieder hinzufügen...",
|
||||||
"count_members_one": "{{count}} Mitglied",
|
|
||||||
"count_members_other": "{{count}} Mitglieder",
|
|
||||||
"no_assigned_members": "Keine zugeordneten Mitglieder",
|
"no_assigned_members": "Keine zugeordneten Mitglieder",
|
||||||
"assigned_to": "Zugeordnet zu",
|
"assigned_to": "Zugeordnet zu",
|
||||||
"start_assigning_members_above": "Mit der Zuordnung von Mitgliedern oben beginnen",
|
"start_assigning_members_above": "Mit der Zuordnung von Mitgliedern oben beginnen",
|
||||||
@@ -683,7 +681,7 @@
|
|||||||
"plan_upgrade_teams": "Du musst deinen Plan upgraden, um ein Team zu erstellen.",
|
"plan_upgrade_teams": "Du musst deinen Plan upgraden, um ein Team zu erstellen.",
|
||||||
"plan_upgrade_instructions": "Sie können <1>hier upgraden</1>.",
|
"plan_upgrade_instructions": "Sie können <1>hier upgraden</1>.",
|
||||||
"event_types_page_title": "Ereignistypen",
|
"event_types_page_title": "Ereignistypen",
|
||||||
"event_types_page_subtitle": "Erstellen Sie teilbare Ereignisse, die andere Personen buchen können.",
|
"event_types_page_subtitle": "Erstellen Sie teilbare Termine, die andere Personen buchen können.",
|
||||||
"new": "Neu",
|
"new": "Neu",
|
||||||
"new_event_type_btn": "Neuer Ereignistyp",
|
"new_event_type_btn": "Neuer Ereignistyp",
|
||||||
"new_event_type_heading": "Erstellen Sie Ihren ersten Ereignistyp",
|
"new_event_type_heading": "Erstellen Sie Ihren ersten Ereignistyp",
|
||||||
@@ -703,7 +701,7 @@
|
|||||||
"repeats_up_to_other": "Wiederholt sich bis zu {{count}} mal",
|
"repeats_up_to_other": "Wiederholt sich bis zu {{count}} mal",
|
||||||
"every_for_freq": "Alle {{freq}} für",
|
"every_for_freq": "Alle {{freq}} für",
|
||||||
"event_remaining_one": "{{count}} Ereignis übrig",
|
"event_remaining_one": "{{count}} Ereignis übrig",
|
||||||
"event_remaining_other": "{{count}} Ereignisse übrig",
|
"event_remaining_other": "{{count}} Termine übrig",
|
||||||
"repeats_every": "Wiederholt sich alle",
|
"repeats_every": "Wiederholt sich alle",
|
||||||
"occurrence_one": "Vorkommnis",
|
"occurrence_one": "Vorkommnis",
|
||||||
"occurrence_other": "Vorkommnisse",
|
"occurrence_other": "Vorkommnisse",
|
||||||
@@ -849,7 +847,6 @@
|
|||||||
"next_step": "Schritt überspringen",
|
"next_step": "Schritt überspringen",
|
||||||
"prev_step": "Vorheriger Schritt",
|
"prev_step": "Vorheriger Schritt",
|
||||||
"install": "Installieren",
|
"install": "Installieren",
|
||||||
"install_paid_app": "Abonnieren",
|
|
||||||
"installed": "Installiert",
|
"installed": "Installiert",
|
||||||
"active_install_one": "{{count}} aktive Installation",
|
"active_install_one": "{{count}} aktive Installation",
|
||||||
"active_install_other": "{{count}} aktive Installationen",
|
"active_install_other": "{{count}} aktive Installationen",
|
||||||
@@ -1110,7 +1107,7 @@
|
|||||||
"zapier_invite_link": "Zapier Einladungs-Link",
|
"zapier_invite_link": "Zapier Einladungs-Link",
|
||||||
"meeting_url_provided_after_confirmed": "Eine Termin-URL wird angelegt, sobald der Termin bestätigt wurde.",
|
"meeting_url_provided_after_confirmed": "Eine Termin-URL wird angelegt, sobald der Termin bestätigt wurde.",
|
||||||
"dynamically_display_attendee_or_organizer": "Zeigt dynamisch entweder Ihnen den Namen Ihres Teilnehmers bzw. Ihrer Teilnehmerin an oder zeigt Ihrem/Ihrer Teilnehmerin Ihren Namen an",
|
"dynamically_display_attendee_or_organizer": "Zeigt dynamisch entweder Ihnen den Namen Ihres Teilnehmers bzw. Ihrer Teilnehmerin an oder zeigt Ihrem/Ihrer Teilnehmerin Ihren Namen an",
|
||||||
"event_location": "Ort des Ereignisses",
|
"event_location": "Ort des Termins",
|
||||||
"reschedule_optional": "Grund für die Verschiebung (optional)",
|
"reschedule_optional": "Grund für die Verschiebung (optional)",
|
||||||
"reschedule_placeholder": "Lassen Sie andere wissen, warum Sie den Termin verschieben müssen",
|
"reschedule_placeholder": "Lassen Sie andere wissen, warum Sie den Termin verschieben müssen",
|
||||||
"event_cancelled": "Dieser Termin ist abgesagt",
|
"event_cancelled": "Dieser Termin ist abgesagt",
|
||||||
@@ -1153,6 +1150,7 @@
|
|||||||
"active_on": "Aktiv am",
|
"active_on": "Aktiv am",
|
||||||
"workflow_updated_successfully": "{{workflowName}} Workflow erfolgreich aktualisiert",
|
"workflow_updated_successfully": "{{workflowName}} Workflow erfolgreich aktualisiert",
|
||||||
"premium_to_standard_username_description": "Dies ist ein Standard-Benutzername und die Aktualisierung führt Sie zur Rechnungsstellung, um ein Downgrade durchzuführen.",
|
"premium_to_standard_username_description": "Dies ist ein Standard-Benutzername und die Aktualisierung führt Sie zur Rechnungsstellung, um ein Downgrade durchzuführen.",
|
||||||
|
"premium_username": "Dies ist ein Premium-Benutzername, holen Sie sich Ihren für {{price}}",
|
||||||
"current": "Aktuell",
|
"current": "Aktuell",
|
||||||
"premium": "Premium",
|
"premium": "Premium",
|
||||||
"standard": "Standard",
|
"standard": "Standard",
|
||||||
@@ -1218,9 +1216,6 @@
|
|||||||
"attendee_name_variable": "Teilnehmer",
|
"attendee_name_variable": "Teilnehmer",
|
||||||
"event_date_variable": "Event Datum",
|
"event_date_variable": "Event Datum",
|
||||||
"event_time_variable": "Event Zeit",
|
"event_time_variable": "Event Zeit",
|
||||||
"timezone_variable": "Zeitzone",
|
|
||||||
"location_variable": "Ort",
|
|
||||||
"additional_notes_variable": "Zusätzliche Notizen",
|
|
||||||
"organizer_name_variable": "Organisator Name",
|
"organizer_name_variable": "Organisator Name",
|
||||||
"app_upgrade_description": "Um diese Funktion nutzen zu können, müssen Sie ein Upgrade auf einen Pro-Account durchführen.",
|
"app_upgrade_description": "Um diese Funktion nutzen zu können, müssen Sie ein Upgrade auf einen Pro-Account durchführen.",
|
||||||
"invalid_number": "Ungültige Telefonnummer",
|
"invalid_number": "Ungültige Telefonnummer",
|
||||||
@@ -1277,7 +1272,7 @@
|
|||||||
"2fa_required": "Zwei-Faktor-Authentifizierung erforderlich",
|
"2fa_required": "Zwei-Faktor-Authentifizierung erforderlich",
|
||||||
"incorrect_2fa": "Falscher Zwei-Faktor-Authentifizierungscode",
|
"incorrect_2fa": "Falscher Zwei-Faktor-Authentifizierungscode",
|
||||||
"which_event_type_apply": "Auf welchen Termintyp wird dies angewandt?",
|
"which_event_type_apply": "Auf welchen Termintyp wird dies angewandt?",
|
||||||
"no_workflows_description": "Workflows ermöglichen die einfache Automatisierung des Versands von Benachrichtigungen und Erinnerungen, so dass Sie Prozesse rund um Ihre Ereignisse erstellen können.",
|
"no_workflows_description": "Workflows ermöglichen die einfache Automatisierung des Versands von Benachrichtigungen und Erinnerungen, so dass Sie Prozesse rund um Ihre Termine erstellen können.",
|
||||||
"timeformat_profile_hint": "Dies ist eine interne Einstellung, die keinen Einfluss darauf hat, wie die Zeiten auf den öffentlichen Buchungsseiten für Sie oder jemanden, der Sie buchen möchte, angezeigt werden.",
|
"timeformat_profile_hint": "Dies ist eine interne Einstellung, die keinen Einfluss darauf hat, wie die Zeiten auf den öffentlichen Buchungsseiten für Sie oder jemanden, der Sie buchen möchte, angezeigt werden.",
|
||||||
"create_workflow": "Einen Workflow erstellen",
|
"create_workflow": "Einen Workflow erstellen",
|
||||||
"do_this": "Mache dies",
|
"do_this": "Mache dies",
|
||||||
@@ -1362,7 +1357,7 @@
|
|||||||
"add_dynamic_variables": "Dynamische Textvariablen hinzufügen",
|
"add_dynamic_variables": "Dynamische Textvariablen hinzufügen",
|
||||||
"event_name_info": "Name des Ereignistyps",
|
"event_name_info": "Name des Ereignistyps",
|
||||||
"event_date_info": "Das Datum der Veranstaltung",
|
"event_date_info": "Das Datum der Veranstaltung",
|
||||||
"event_time_info": "Die Startzeit des Ereignisses",
|
"event_time_info": "Die Startzeit des Termins",
|
||||||
"location_info": "Der Ort des Events",
|
"location_info": "Der Ort des Events",
|
||||||
"additional_notes_info": "Die zusätzlichen Anmerkungen der Buchung",
|
"additional_notes_info": "Die zusätzlichen Anmerkungen der Buchung",
|
||||||
"attendee_name_info": "Name der buchenden Person",
|
"attendee_name_info": "Name der buchenden Person",
|
||||||
@@ -1380,7 +1375,7 @@
|
|||||||
"create_your_first_webhook_description": "Mit Webhooks können Sie Meetingdaten in Echtzeit erhalten, sobald etwas in {{appName}} passiert.",
|
"create_your_first_webhook_description": "Mit Webhooks können Sie Meetingdaten in Echtzeit erhalten, sobald etwas in {{appName}} passiert.",
|
||||||
"for_a_maximum_of": "Für maximal",
|
"for_a_maximum_of": "Für maximal",
|
||||||
"event_one": "Ereignis",
|
"event_one": "Ereignis",
|
||||||
"event_other": "Ereignisse",
|
"event_other": "Termine",
|
||||||
"profile_team_description": "Einstellungen für Ihr Teamprofil verwalten",
|
"profile_team_description": "Einstellungen für Ihr Teamprofil verwalten",
|
||||||
"profile_org_description": "Einstellungen für Ihr Organization-Profil verwalten",
|
"profile_org_description": "Einstellungen für Ihr Organization-Profil verwalten",
|
||||||
"members_team_description": "Benutzer in der Gruppe",
|
"members_team_description": "Benutzer in der Gruppe",
|
||||||
@@ -1502,13 +1497,13 @@
|
|||||||
"require_additional_notes": "Zusätzliche Notizen erforderlich",
|
"require_additional_notes": "Zusätzliche Notizen erforderlich",
|
||||||
"require_additional_notes_description": "Zusätzliche Notizen bei der Buchung erforderlich machen",
|
"require_additional_notes_description": "Zusätzliche Notizen bei der Buchung erforderlich machen",
|
||||||
"email_address_action": "eine E-Mail an eine bestimmte E-Mail-Adresse senden",
|
"email_address_action": "eine E-Mail an eine bestimmte E-Mail-Adresse senden",
|
||||||
"after_event_trigger": "nach Ende des Ereignisses",
|
"after_event_trigger": "nach Ende des Termins",
|
||||||
"how_long_after": "Wie lange nach Ende des Ereignisses?",
|
"how_long_after": "Wie lange nach Ende des Termins?",
|
||||||
"no_available_slots": "Keine verfügbaren Plätze",
|
"no_available_slots": "Keine verfügbaren Plätze",
|
||||||
"time_available": "Zeit verfügbar",
|
"time_available": "Zeit verfügbar",
|
||||||
"cant_find_the_right_video_app_visit_our_app_store": "Sie können die richtige Video-App nicht finden? Besuchen Sie unseren <1>App Store</1>.",
|
"cant_find_the_right_video_app_visit_our_app_store": "Sie können die richtige Video-App nicht finden? Besuchen Sie unseren <1>App Store</1>.",
|
||||||
"install_new_calendar_app": "Neue Kalender-App installieren",
|
"install_new_calendar_app": "Neue Kalender-App installieren",
|
||||||
"make_phone_number_required": "Telefonnummer für die Buchung des Ereignisses erforderlich machen",
|
"make_phone_number_required": "Telefonnummer für die Buchung des Termins erforderlich machen",
|
||||||
"new_event_type_availability": "{{eventTypeTitle}} | Verfügbarkeit",
|
"new_event_type_availability": "{{eventTypeTitle}} | Verfügbarkeit",
|
||||||
"error_editing_availability": "Fehler beim Bearbeiten der Verfügbarkeit",
|
"error_editing_availability": "Fehler beim Bearbeiten der Verfügbarkeit",
|
||||||
"dont_have_permission": "Ihnen fehlt die Berechtigung, auf diese Ressource zuzugreifen.",
|
"dont_have_permission": "Ihnen fehlt die Berechtigung, auf diese Ressource zuzugreifen.",
|
||||||
@@ -1536,6 +1531,7 @@
|
|||||||
"you": "Sie",
|
"you": "Sie",
|
||||||
"resend_email": "E-Mail erneut senden",
|
"resend_email": "E-Mail erneut senden",
|
||||||
"member_already_invited": "Mitglied wurde bereits eingeladen",
|
"member_already_invited": "Mitglied wurde bereits eingeladen",
|
||||||
|
"already_in_use_error": "Benutzername wird bereits verwendet",
|
||||||
"enter_email_or_username": "E-Mail oder Benutzername eingeben",
|
"enter_email_or_username": "E-Mail oder Benutzername eingeben",
|
||||||
"team_name_taken": "Dieser Name ist bereits vergeben",
|
"team_name_taken": "Dieser Name ist bereits vergeben",
|
||||||
"must_enter_team_name": "Team-Name muss eingegeben werden",
|
"must_enter_team_name": "Team-Name muss eingegeben werden",
|
||||||
@@ -1813,7 +1809,7 @@
|
|||||||
"can_you_try_again": "Können Sie es zu einem anderen Zeitpunkt erneut versuchen?",
|
"can_you_try_again": "Können Sie es zu einem anderen Zeitpunkt erneut versuchen?",
|
||||||
"verify": "Bestätigen",
|
"verify": "Bestätigen",
|
||||||
"timezone_info": "Die Zeitzone der empfangenden Person",
|
"timezone_info": "Die Zeitzone der empfangenden Person",
|
||||||
"event_end_time_variable": "Endzeitpunkt des Ereignisses",
|
"event_end_time_variable": "Endzeitpunkt des Termins",
|
||||||
"event_end_time_info": "Der Endzeitpunkt des Termins",
|
"event_end_time_info": "Der Endzeitpunkt des Termins",
|
||||||
"cancel_url_variable": "Absage-URL",
|
"cancel_url_variable": "Absage-URL",
|
||||||
"cancel_url_info": "Die URL, um die Buchung abzusagen",
|
"cancel_url_info": "Die URL, um die Buchung abzusagen",
|
||||||
@@ -1849,15 +1845,15 @@
|
|||||||
"select_user": "Benutzer auswählen",
|
"select_user": "Benutzer auswählen",
|
||||||
"select_event_type": "Ereignistyp auswählen",
|
"select_event_type": "Ereignistyp auswählen",
|
||||||
"select_date_range": "Datumsbereich auswählen",
|
"select_date_range": "Datumsbereich auswählen",
|
||||||
"popular_events": "Beliebte Ereignisse",
|
"popular_events": "Beliebte Termine",
|
||||||
"no_event_types_found": "Keine Ereignistypen gefunden",
|
"no_event_types_found": "Keine Ereignistypen gefunden",
|
||||||
"average_event_duration": "Durchschnittliche Ereignisdauer",
|
"average_event_duration": "Durchschnittliche Ereignisdauer",
|
||||||
"most_booked_members": "Meistgebuchte Mitglieder",
|
"most_booked_members": "Meistgebuchte Mitglieder",
|
||||||
"least_booked_members": "Am wenigsten gebuchte Mitglieder",
|
"least_booked_members": "Am wenigsten gebuchte Mitglieder",
|
||||||
"events_created": "Ereignisse erstellt",
|
"events_created": "Termine erstellt",
|
||||||
"events_completed": "Ereignisse abgeschlossen",
|
"events_completed": "Termine abgeschlossen",
|
||||||
"events_cancelled": "Termine abgesagt",
|
"events_cancelled": "Termine abgesagt",
|
||||||
"events_rescheduled": "Ereignisse neu geplant",
|
"events_rescheduled": "Termine neu geplant",
|
||||||
"from_last_period": "seit dem letzten Zeitraum",
|
"from_last_period": "seit dem letzten Zeitraum",
|
||||||
"from_to_date_period": "Von: {{startDate}} Bis: {{endDate}}",
|
"from_to_date_period": "Von: {{startDate}} Bis: {{endDate}}",
|
||||||
"redirect_url_warning": "Das Hinzufügen einer Umleitung wird die Erfolgsseite deaktivieren. Erwähnen Sie \"Buchung bestätigt\" auf Ihrer benutzerdefinierten Erfolgsseite.",
|
"redirect_url_warning": "Das Hinzufügen einer Umleitung wird die Erfolgsseite deaktivieren. Erwähnen Sie \"Buchung bestätigt\" auf Ihrer benutzerdefinierten Erfolgsseite.",
|
||||||
@@ -1986,17 +1982,14 @@
|
|||||||
"google_new_spam_policy": "Die neuen Spam-Richtlinien von Google könnten verhindern, dass Sie E-Mail- und Kalenderbenachrichtigungen zu dieser Buchung erhalten.",
|
"google_new_spam_policy": "Die neuen Spam-Richtlinien von Google könnten verhindern, dass Sie E-Mail- und Kalenderbenachrichtigungen zu dieser Buchung erhalten.",
|
||||||
"resolve": "Problem lösen",
|
"resolve": "Problem lösen",
|
||||||
"no_organization_slug": "Beim Erstellen von Teams für diese Organization ist ein Fehler aufgetreten. URL-Slug fehlt.",
|
"no_organization_slug": "Beim Erstellen von Teams für diese Organization ist ein Fehler aufgetreten. URL-Slug fehlt.",
|
||||||
"org_name": "Name der Organization",
|
|
||||||
"org_url": "URL der Organization",
|
|
||||||
"copy_link_org": "Link zur Organization kopieren",
|
"copy_link_org": "Link zur Organization kopieren",
|
||||||
"404_the_org": "Die Organization",
|
"404_the_org": "Die Organization",
|
||||||
"404_the_team": "Das Team",
|
"404_the_team": "Das Team",
|
||||||
"404_claim_entity_org": "Beanspruchen Sie Ihre Subdomain für Ihre Organization",
|
"404_claim_entity_org": "Beanspruchen Sie Ihre Subdomain für Ihre Organization",
|
||||||
"404_claim_entity_team": "Dieses Team beanspruchen und gemeinsam mit der Verwaltung von Verfügbarkeitsplänen beginnen",
|
"404_claim_entity_team": "Dieses Team beanspruchen und gemeinsam mit der Verwaltung von Verfügbarkeitsplänen beginnen",
|
||||||
"insights_all_org_filter": "Alle Apps",
|
|
||||||
"insights_team_filter": "Team: {{teamName}}",
|
"insights_team_filter": "Team: {{teamName}}",
|
||||||
"insights_user_filter": "Benutzer: {{userName}}",
|
"insights_user_filter": "Benutzer: {{userName}}",
|
||||||
"insights_subtitle": "Sehen Sie sich Buchungs-Insights zu Ihren Termine an",
|
"insights_subtitle": "Erfahren Sie mehr über Ihre Termine und Ihr Team",
|
||||||
"location_options": "{{locationCount}} Veranstaltungsort-Optionen",
|
"location_options": "{{locationCount}} Veranstaltungsort-Optionen",
|
||||||
"custom_plan": "Maßgeschneiderter Tarif",
|
"custom_plan": "Maßgeschneiderter Tarif",
|
||||||
"email_embed": "E-Mail Einbettung",
|
"email_embed": "E-Mail Einbettung",
|
||||||
@@ -2005,7 +1998,6 @@
|
|||||||
"select_date": "Datum auswählen",
|
"select_date": "Datum auswählen",
|
||||||
"see_all_available_times": "Alle verfügbaren Zeiten ansehen",
|
"see_all_available_times": "Alle verfügbaren Zeiten ansehen",
|
||||||
"org_team_names_example": "z.B. Marketing-Team",
|
"org_team_names_example": "z.B. Marketing-Team",
|
||||||
"org_team_names_example_1": "z.B. Marketing-Team",
|
|
||||||
"org_team_names_example_2": "z.B. Vertriebsteam",
|
"org_team_names_example_2": "z.B. Vertriebsteam",
|
||||||
"org_team_names_example_3": "z. B. Design-Team",
|
"org_team_names_example_3": "z. B. Design-Team",
|
||||||
"org_team_names_example_4": "z.B. Engineering-Team",
|
"org_team_names_example_4": "z.B. Engineering-Team",
|
||||||
@@ -2067,6 +2059,9 @@
|
|||||||
"include_calendar_event": "Kalenderereignis hinzufügen",
|
"include_calendar_event": "Kalenderereignis hinzufügen",
|
||||||
"oAuth": "OAuth",
|
"oAuth": "OAuth",
|
||||||
"recently_added": "Kürzlich hinzugefügt",
|
"recently_added": "Kürzlich hinzugefügt",
|
||||||
|
"connect_all_calendars": "Verbinden Sie alle Ihre Kalender",
|
||||||
|
"workflow_automation": "Workflow-Automatisierung",
|
||||||
|
"scheduling_for_your_team": "Workflow-Automatisierung",
|
||||||
"no_members_found": "Keine Mitglieder gefunden",
|
"no_members_found": "Keine Mitglieder gefunden",
|
||||||
"event_setup_length_error": "Ereignis-Einrichtung: Die Dauer muss mindestens 1 Minute betragen.",
|
"event_setup_length_error": "Ereignis-Einrichtung: Die Dauer muss mindestens 1 Minute betragen.",
|
||||||
"availability_schedules": "Verfügbarkeitspläne",
|
"availability_schedules": "Verfügbarkeitspläne",
|
||||||
@@ -2090,6 +2085,7 @@
|
|||||||
"edit_users_availability": "Benutzerverfügbarkeit bearbeiten: {{username}}",
|
"edit_users_availability": "Benutzerverfügbarkeit bearbeiten: {{username}}",
|
||||||
"resend_invitation": "Einladung erneut senden",
|
"resend_invitation": "Einladung erneut senden",
|
||||||
"invitation_resent": "Die Einladung wurde erneut gesendet.",
|
"invitation_resent": "Die Einladung wurde erneut gesendet.",
|
||||||
|
"saml_sso": "SAML",
|
||||||
"add_client": "Kunde hinzufügen",
|
"add_client": "Kunde hinzufügen",
|
||||||
"copy_client_secret_info": "Nach dem Kopieren des Geheimnisses können Sie es nicht mehr ansehen",
|
"copy_client_secret_info": "Nach dem Kopieren des Geheimnisses können Sie es nicht mehr ansehen",
|
||||||
"add_new_client": "Neuen Kunden hinzufügen",
|
"add_new_client": "Neuen Kunden hinzufügen",
|
||||||
@@ -2101,5 +2097,6 @@
|
|||||||
"lock_timezone_toggle_on_booking_page": "Zeitzone auf der Buchungsseite sperren",
|
"lock_timezone_toggle_on_booking_page": "Zeitzone auf der Buchungsseite sperren",
|
||||||
"description_lock_timezone_toggle_on_booking_page": "Um die Zeitzone auf der Buchungsseite zu sperren, nützlich für Termine in Person.",
|
"description_lock_timezone_toggle_on_booking_page": "Um die Zeitzone auf der Buchungsseite zu sperren, nützlich für Termine in Person.",
|
||||||
"extensive_whitelabeling": "Dedizierte Onboarding- und Engineeringsupport",
|
"extensive_whitelabeling": "Dedizierte Onboarding- und Engineeringsupport",
|
||||||
|
"need_help": "Brauchst du Hilfe?",
|
||||||
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Fügen Sie Ihre neuen Code-Zeilen über dieser hinzu ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Fügen Sie Ihre neuen Code-Zeilen über dieser hinzu ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
||||||
}
|
}
|
||||||
@@ -274,8 +274,5 @@
|
|||||||
"event_name_tooltip": "Το όνομα που θα εμφανίζεται στα ημερολόγια",
|
"event_name_tooltip": "Το όνομα που θα εμφανίζεται στα ημερολόγια",
|
||||||
"label": "Ετικέτα",
|
"label": "Ετικέτα",
|
||||||
"edit": "Επεξεργασία",
|
"edit": "Επεξεργασία",
|
||||||
"disable_guests": "Απενεργοποίηση επισκεπτών",
|
"disable_guests": "Απενεργοποίηση επισκεπτών"
|
||||||
"location_variable": "Τοποθεσία",
|
|
||||||
"additional_notes_variable": "Πρόσθετες σημειώσεις",
|
|
||||||
"insights_all_org_filter": "Όλα"
|
|
||||||
}
|
}
|
||||||
@@ -78,6 +78,7 @@
|
|||||||
"cannot_repackage_codebase": "You can not repackage or sell the codebase",
|
"cannot_repackage_codebase": "You can not repackage or sell the codebase",
|
||||||
"acquire_license": "Acquire a commercial license to remove these terms by emailing",
|
"acquire_license": "Acquire a commercial license to remove these terms by emailing",
|
||||||
"terms_summary": "Summary of terms",
|
"terms_summary": "Summary of terms",
|
||||||
|
"signing_up_terms":"By signing up, you agree to our <2>Terms of Service</2> and <3>Privacy Policy</3>.",
|
||||||
"open_env": "Open .env and agree to our License",
|
"open_env": "Open .env and agree to our License",
|
||||||
"env_changed": "I've changed my .env",
|
"env_changed": "I've changed my .env",
|
||||||
"accept_license": "Accept License",
|
"accept_license": "Accept License",
|
||||||
@@ -240,6 +241,7 @@
|
|||||||
"reset_your_password": "Set your new password with the instructions sent to your email address.",
|
"reset_your_password": "Set your new password with the instructions sent to your email address.",
|
||||||
"email_change": "Log back in with your new email address and password.",
|
"email_change": "Log back in with your new email address and password.",
|
||||||
"create_your_account": "Create your account",
|
"create_your_account": "Create your account",
|
||||||
|
"create_your_calcom_account": "Create your Cal.com account",
|
||||||
"sign_up": "Sign up",
|
"sign_up": "Sign up",
|
||||||
"youve_been_logged_out": "You've been logged out",
|
"youve_been_logged_out": "You've been logged out",
|
||||||
"hope_to_see_you_soon": "We hope to see you again soon!",
|
"hope_to_see_you_soon": "We hope to see you again soon!",
|
||||||
@@ -277,6 +279,9 @@
|
|||||||
"nearly_there_instructions": "Last thing, a brief description about you and a photo really helps you get bookings and let people know who they’re booking with.",
|
"nearly_there_instructions": "Last thing, a brief description about you and a photo really helps you get bookings and let people know who they’re booking with.",
|
||||||
"set_availability_instructions": "Define ranges of time when you are available on a recurring basis. You can create more of these later and assign them to different calendars.",
|
"set_availability_instructions": "Define ranges of time when you are available on a recurring basis. You can create more of these later and assign them to different calendars.",
|
||||||
"set_availability": "Set your availability",
|
"set_availability": "Set your availability",
|
||||||
|
"set_availbility_description":"Set schedules for the times you want to be booked.",
|
||||||
|
"share_a_link_or_embed":"Share a link or embed",
|
||||||
|
"share_a_link_or_embed_description":"Share your {{appName}} link or embed on your site.",
|
||||||
"availability_settings": "Availability Settings",
|
"availability_settings": "Availability Settings",
|
||||||
"continue_without_calendar": "Continue without calendar",
|
"continue_without_calendar": "Continue without calendar",
|
||||||
"continue_with": "Continue with {{appName}}",
|
"continue_with": "Continue with {{appName}}",
|
||||||
@@ -678,8 +683,6 @@
|
|||||||
"managed_event_url_clarification": "\"username\" will be filled by the username of the members assigned",
|
"managed_event_url_clarification": "\"username\" will be filled by the username of the members assigned",
|
||||||
"assign_to": "Assign to",
|
"assign_to": "Assign to",
|
||||||
"add_members": "Add members...",
|
"add_members": "Add members...",
|
||||||
"count_members_one": "{{count}} member",
|
|
||||||
"count_members_other": "{{count}} members",
|
|
||||||
"no_assigned_members": "No assigned members",
|
"no_assigned_members": "No assigned members",
|
||||||
"assigned_to": "Assigned to",
|
"assigned_to": "Assigned to",
|
||||||
"start_assigning_members_above": "Start assigning members above",
|
"start_assigning_members_above": "Start assigning members above",
|
||||||
@@ -861,7 +864,6 @@
|
|||||||
"next_step": "Skip step",
|
"next_step": "Skip step",
|
||||||
"prev_step": "Prev step",
|
"prev_step": "Prev step",
|
||||||
"install": "Install",
|
"install": "Install",
|
||||||
"install_paid_app": "Subscribe",
|
|
||||||
"start_paid_trial": "Start free Trial",
|
"start_paid_trial": "Start free Trial",
|
||||||
"installed": "Installed",
|
"installed": "Installed",
|
||||||
"active_install_one": "{{count}} active install",
|
"active_install_one": "{{count}} active install",
|
||||||
@@ -1052,6 +1054,7 @@
|
|||||||
"user_impersonation_heading": "User Impersonation",
|
"user_impersonation_heading": "User Impersonation",
|
||||||
"user_impersonation_description": "Allows our support team to temporarily sign in as you to help us quickly resolve any issues you report to us.",
|
"user_impersonation_description": "Allows our support team to temporarily sign in as you to help us quickly resolve any issues you report to us.",
|
||||||
"team_impersonation_description": "Allows your team Owners/Admins to temporarily sign in as you.",
|
"team_impersonation_description": "Allows your team Owners/Admins to temporarily sign in as you.",
|
||||||
|
"cal_signup_description":"Free for individuals. Team plans for collaborative features.",
|
||||||
"make_team_private": "Make team private",
|
"make_team_private": "Make team private",
|
||||||
"make_team_private_description": "Your team members won't be able to see other team members when this is turned on.",
|
"make_team_private_description": "Your team members won't be able to see other team members when this is turned on.",
|
||||||
"you_cannot_see_team_members": "You cannot see all the team members of a private team.",
|
"you_cannot_see_team_members": "You cannot see all the team members of a private team.",
|
||||||
@@ -1167,6 +1170,7 @@
|
|||||||
"active_on": "Active on",
|
"active_on": "Active on",
|
||||||
"workflow_updated_successfully": "{{workflowName}} workflow updated successfully",
|
"workflow_updated_successfully": "{{workflowName}} workflow updated successfully",
|
||||||
"premium_to_standard_username_description": "This is a standard username and updating will take you to billing to downgrade.",
|
"premium_to_standard_username_description": "This is a standard username and updating will take you to billing to downgrade.",
|
||||||
|
"premium_username": "This is a premium username, get yours for {{price}}",
|
||||||
"current": "Current",
|
"current": "Current",
|
||||||
"premium": "premium",
|
"premium": "premium",
|
||||||
"standard": "standard",
|
"standard": "standard",
|
||||||
@@ -1232,9 +1236,6 @@
|
|||||||
"attendee_name_variable": "Attendee",
|
"attendee_name_variable": "Attendee",
|
||||||
"event_date_variable": "Event date",
|
"event_date_variable": "Event date",
|
||||||
"event_time_variable": "Event time",
|
"event_time_variable": "Event time",
|
||||||
"timezone_variable": "Timezone",
|
|
||||||
"location_variable": "Location",
|
|
||||||
"additional_notes_variable": "Additional notes",
|
|
||||||
"organizer_name_variable": "Organizer name",
|
"organizer_name_variable": "Organizer name",
|
||||||
"app_upgrade_description": "In order to use this feature, you need to upgrade to a Pro account.",
|
"app_upgrade_description": "In order to use this feature, you need to upgrade to a Pro account.",
|
||||||
"invalid_number": "Invalid phone number",
|
"invalid_number": "Invalid phone number",
|
||||||
@@ -1550,8 +1551,10 @@
|
|||||||
"your_org_disbanded_successfully": "Your organization has been disbanded successfully",
|
"your_org_disbanded_successfully": "Your organization has been disbanded successfully",
|
||||||
"error_creating_team": "Error creating team",
|
"error_creating_team": "Error creating team",
|
||||||
"you": "You",
|
"you": "You",
|
||||||
|
"or_continue_with": "Or continue with",
|
||||||
"resend_email": "Resend email",
|
"resend_email": "Resend email",
|
||||||
"member_already_invited": "Member has already been invited",
|
"member_already_invited": "Member has already been invited",
|
||||||
|
"already_in_use_error": "Username already in use",
|
||||||
"enter_email_or_username": "Enter an email or username",
|
"enter_email_or_username": "Enter an email or username",
|
||||||
"team_name_taken": "This name is already taken",
|
"team_name_taken": "This name is already taken",
|
||||||
"must_enter_team_name": "Must enter a team name",
|
"must_enter_team_name": "Must enter a team name",
|
||||||
@@ -1605,6 +1608,7 @@
|
|||||||
"enable_apps": "Enable Apps",
|
"enable_apps": "Enable Apps",
|
||||||
"enable_apps_description": "Enable apps that users can integrate with {{appName}}",
|
"enable_apps_description": "Enable apps that users can integrate with {{appName}}",
|
||||||
"purchase_license": "Purchase a License",
|
"purchase_license": "Purchase a License",
|
||||||
|
"already_have_account":"I already have an account",
|
||||||
"already_have_key": "I already have a key:",
|
"already_have_key": "I already have a key:",
|
||||||
"already_have_key_suggestion": "Please copy your existing CALCOM_LICENSE_KEY environment variable here.",
|
"already_have_key_suggestion": "Please copy your existing CALCOM_LICENSE_KEY environment variable here.",
|
||||||
"app_is_enabled": "{{appName}} is enabled",
|
"app_is_enabled": "{{appName}} is enabled",
|
||||||
@@ -2002,14 +2006,11 @@
|
|||||||
"google_new_spam_policy": "Google’s new spam policy could prevent you from receiving any email and calendar notifications about this booking.",
|
"google_new_spam_policy": "Google’s new spam policy could prevent you from receiving any email and calendar notifications about this booking.",
|
||||||
"resolve": "Resolve",
|
"resolve": "Resolve",
|
||||||
"no_organization_slug": "There was an error creating teams for this organization. Missing URL slug.",
|
"no_organization_slug": "There was an error creating teams for this organization. Missing URL slug.",
|
||||||
"org_name": "Organization name",
|
|
||||||
"org_url": "Organization URL",
|
|
||||||
"copy_link_org": "Copy link to organization",
|
"copy_link_org": "Copy link to organization",
|
||||||
"404_the_org": "The organization",
|
"404_the_org": "The organization",
|
||||||
"404_the_team": "The team",
|
"404_the_team": "The team",
|
||||||
"404_claim_entity_org": "Claim your subdomain for your organization",
|
"404_claim_entity_org": "Claim your subdomain for your organization",
|
||||||
"404_claim_entity_team": "Claim this team and start managing schedules collectively",
|
"404_claim_entity_team": "Claim this team and start managing schedules collectively",
|
||||||
"insights_all_org_filter": "All",
|
|
||||||
"insights_team_filter": "Team: {{teamName}}",
|
"insights_team_filter": "Team: {{teamName}}",
|
||||||
"insights_user_filter": "User: {{userName}}",
|
"insights_user_filter": "User: {{userName}}",
|
||||||
"insights_subtitle": "View booking insights across your events",
|
"insights_subtitle": "View booking insights across your events",
|
||||||
@@ -2021,7 +2022,6 @@
|
|||||||
"select_date": "Select Date",
|
"select_date": "Select Date",
|
||||||
"see_all_available_times": "See all available times",
|
"see_all_available_times": "See all available times",
|
||||||
"org_team_names_example": "e.g. Marketing Team",
|
"org_team_names_example": "e.g. Marketing Team",
|
||||||
"org_team_names_example_1": "e.g. Marketing Team",
|
|
||||||
"org_team_names_example_2": "e.g. Sales Team",
|
"org_team_names_example_2": "e.g. Sales Team",
|
||||||
"org_team_names_example_3": "e.g. Design Team",
|
"org_team_names_example_3": "e.g. Design Team",
|
||||||
"org_team_names_example_4": "e.g. Engineering Team",
|
"org_team_names_example_4": "e.g. Engineering Team",
|
||||||
@@ -2083,6 +2083,12 @@
|
|||||||
"include_calendar_event": "Include calendar event",
|
"include_calendar_event": "Include calendar event",
|
||||||
"oAuth": "OAuth",
|
"oAuth": "OAuth",
|
||||||
"recently_added":"Recently added",
|
"recently_added":"Recently added",
|
||||||
|
"connect_all_calendars":"Connect all your calendars",
|
||||||
|
"connect_all_calendars_description":"{{appName}} reads availability from all your existing calendars.",
|
||||||
|
"workflow_automation":"Workflow automation",
|
||||||
|
"workflow_automation_description":"Personalise your scheduling experience with workflows",
|
||||||
|
"scheduling_for_your_team":"Workflow automation",
|
||||||
|
"scheduling_for_your_team_description":"Schedule for your team with collective and round-robin scheduling",
|
||||||
"no_members_found": "No members found",
|
"no_members_found": "No members found",
|
||||||
"event_setup_length_error":"Event Setup: The duration must be at least 1 minute.",
|
"event_setup_length_error":"Event Setup: The duration must be at least 1 minute.",
|
||||||
"availability_schedules":"Availability Schedules",
|
"availability_schedules":"Availability Schedules",
|
||||||
@@ -2106,6 +2112,7 @@
|
|||||||
"edit_users_availability":"Edit user's availability: {{username}}",
|
"edit_users_availability":"Edit user's availability: {{username}}",
|
||||||
"resend_invitation": "Resend invitation",
|
"resend_invitation": "Resend invitation",
|
||||||
"invitation_resent": "The invitation was resent.",
|
"invitation_resent": "The invitation was resent.",
|
||||||
|
"saml_sso": "SAML",
|
||||||
"add_client": "Add client",
|
"add_client": "Add client",
|
||||||
"copy_client_secret_info": "After copying the secret you won't be able to view it anymore",
|
"copy_client_secret_info": "After copying the secret you won't be able to view it anymore",
|
||||||
"add_new_client": "Add new Client",
|
"add_new_client": "Add new Client",
|
||||||
@@ -2121,6 +2128,7 @@
|
|||||||
"manage_availability_schedules":"Manage availability schedules",
|
"manage_availability_schedules":"Manage availability schedules",
|
||||||
"lock_timezone_toggle_on_booking_page": "Lock timezone on booking page",
|
"lock_timezone_toggle_on_booking_page": "Lock timezone on booking page",
|
||||||
"description_lock_timezone_toggle_on_booking_page" : "To lock the timezone on booking page, useful for in-person events.",
|
"description_lock_timezone_toggle_on_booking_page" : "To lock the timezone on booking page, useful for in-person events.",
|
||||||
|
"number_in_international_format": "Please enter number in international format.",
|
||||||
"install_calendar":"Install Calendar",
|
"install_calendar":"Install Calendar",
|
||||||
"branded_subdomain": "Branded Subdomain",
|
"branded_subdomain": "Branded Subdomain",
|
||||||
"branded_subdomain_description": "Get your own branded subdomain, such as acme.cal.com",
|
"branded_subdomain_description": "Get your own branded subdomain, such as acme.cal.com",
|
||||||
@@ -2137,5 +2145,9 @@
|
|||||||
"enterprise_description": "Upgrade to Enterprise to create your Organization",
|
"enterprise_description": "Upgrade to Enterprise to create your Organization",
|
||||||
"create_your_org": "Create your Organization",
|
"create_your_org": "Create your Organization",
|
||||||
"create_your_org_description": "Upgrade to Enterprise and receive a subdomain, unified billing, Insights, extensive whitelabeling and more",
|
"create_your_org_description": "Upgrade to Enterprise and receive a subdomain, unified billing, Insights, extensive whitelabeling and more",
|
||||||
|
"troubleshooter_tooltip": "Open the troubleshooter and figure out what is wrong with your schedule",
|
||||||
|
"need_help": "Need help?",
|
||||||
|
"troubleshooter": "Troubleshooter",
|
||||||
|
"please_install_a_calendar": "Please install a calendar",
|
||||||
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Add your new strings above here ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Add your new strings above here ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
||||||
}
|
}
|
||||||
@@ -666,8 +666,6 @@
|
|||||||
"managed_event_url_clarification": "El \"nombre de usuario\" se completará con el nombre de usuario de los miembros asignados",
|
"managed_event_url_clarification": "El \"nombre de usuario\" se completará con el nombre de usuario de los miembros asignados",
|
||||||
"assign_to": "Asignar a",
|
"assign_to": "Asignar a",
|
||||||
"add_members": "Agregar miembros...",
|
"add_members": "Agregar miembros...",
|
||||||
"count_members_one": "{{count}} miembro",
|
|
||||||
"count_members_other": "{{count}} miembros",
|
|
||||||
"no_assigned_members": "No hay miembros asignados",
|
"no_assigned_members": "No hay miembros asignados",
|
||||||
"assigned_to": "Asignado a",
|
"assigned_to": "Asignado a",
|
||||||
"start_assigning_members_above": "Empezar a asignar miembros más arriba",
|
"start_assigning_members_above": "Empezar a asignar miembros más arriba",
|
||||||
@@ -849,7 +847,6 @@
|
|||||||
"next_step": "Saltar paso",
|
"next_step": "Saltar paso",
|
||||||
"prev_step": "Paso anterior",
|
"prev_step": "Paso anterior",
|
||||||
"install": "Instalar",
|
"install": "Instalar",
|
||||||
"install_paid_app": "Suscribirse",
|
|
||||||
"installed": "Instalado",
|
"installed": "Instalado",
|
||||||
"active_install_one": "{{count}} instalación activa",
|
"active_install_one": "{{count}} instalación activa",
|
||||||
"active_install_other": "{{count}} instalaciones activas",
|
"active_install_other": "{{count}} instalaciones activas",
|
||||||
@@ -1153,6 +1150,7 @@
|
|||||||
"active_on": "Activo en",
|
"active_on": "Activo en",
|
||||||
"workflow_updated_successfully": "Flujo de trabajo {{workflowName}} actualizado correctamente",
|
"workflow_updated_successfully": "Flujo de trabajo {{workflowName}} actualizado correctamente",
|
||||||
"premium_to_standard_username_description": "Este es un nombre de usuario estándar y la actualización te llevará a la facturación para bajar de categoría.",
|
"premium_to_standard_username_description": "Este es un nombre de usuario estándar y la actualización te llevará a la facturación para bajar de categoría.",
|
||||||
|
"premium_username": "Este es un nombre de usuario premium, obtenga el suyo por {{price}}",
|
||||||
"current": "Actual",
|
"current": "Actual",
|
||||||
"premium": "premium",
|
"premium": "premium",
|
||||||
"standard": "estándar",
|
"standard": "estándar",
|
||||||
@@ -1218,9 +1216,6 @@
|
|||||||
"attendee_name_variable": "Nombre del asistente",
|
"attendee_name_variable": "Nombre del asistente",
|
||||||
"event_date_variable": "Fecha del evento",
|
"event_date_variable": "Fecha del evento",
|
||||||
"event_time_variable": "Hora del evento",
|
"event_time_variable": "Hora del evento",
|
||||||
"timezone_variable": "Zona Horaria",
|
|
||||||
"location_variable": "Lugar",
|
|
||||||
"additional_notes_variable": "Notas Adicionales",
|
|
||||||
"organizer_name_variable": "Nombre del organizador",
|
"organizer_name_variable": "Nombre del organizador",
|
||||||
"app_upgrade_description": "Para poder usar esta función, necesita actualizarse a una cuenta Pro.",
|
"app_upgrade_description": "Para poder usar esta función, necesita actualizarse a una cuenta Pro.",
|
||||||
"invalid_number": "Número de teléfono no válido",
|
"invalid_number": "Número de teléfono no válido",
|
||||||
@@ -1536,6 +1531,7 @@
|
|||||||
"you": "Usted",
|
"you": "Usted",
|
||||||
"resend_email": "Reenviar correo electrónico",
|
"resend_email": "Reenviar correo electrónico",
|
||||||
"member_already_invited": "El miembro ya se ha invitado",
|
"member_already_invited": "El miembro ya se ha invitado",
|
||||||
|
"already_in_use_error": "El nombre de usuario ya está en uso",
|
||||||
"enter_email_or_username": "Introduzca un correo electrónico o nombre de usuario",
|
"enter_email_or_username": "Introduzca un correo electrónico o nombre de usuario",
|
||||||
"team_name_taken": "Este nombre ya está en uso",
|
"team_name_taken": "Este nombre ya está en uso",
|
||||||
"must_enter_team_name": "Debe introducir un nombre de equipo",
|
"must_enter_team_name": "Debe introducir un nombre de equipo",
|
||||||
@@ -1986,14 +1982,11 @@
|
|||||||
"google_new_spam_policy": "La nueva política de spam de Google podría evitar que reciba notificaciones por correo electrónico y calendario sobre esta reserva.",
|
"google_new_spam_policy": "La nueva política de spam de Google podría evitar que reciba notificaciones por correo electrónico y calendario sobre esta reserva.",
|
||||||
"resolve": "Resolver",
|
"resolve": "Resolver",
|
||||||
"no_organization_slug": "Hubo un error al crear equipos para esta organización. Falta el slug de URL.",
|
"no_organization_slug": "Hubo un error al crear equipos para esta organización. Falta el slug de URL.",
|
||||||
"org_name": "Nombre de la organización",
|
|
||||||
"org_url": "URL de la organización",
|
|
||||||
"copy_link_org": "Copiar enlace a la organización",
|
"copy_link_org": "Copiar enlace a la organización",
|
||||||
"404_the_org": "La organización",
|
"404_the_org": "La organización",
|
||||||
"404_the_team": "El equipo",
|
"404_the_team": "El equipo",
|
||||||
"404_claim_entity_org": "Reclame su subdominio para su organización",
|
"404_claim_entity_org": "Reclame su subdominio para su organización",
|
||||||
"404_claim_entity_team": "Reclame este equipo y empiece a gestionar los horarios de forma colectiva",
|
"404_claim_entity_team": "Reclame este equipo y empiece a gestionar los horarios de forma colectiva",
|
||||||
"insights_all_org_filter": "Todas las aplicaciones",
|
|
||||||
"insights_team_filter": "Equipo: {{teamName}}",
|
"insights_team_filter": "Equipo: {{teamName}}",
|
||||||
"insights_user_filter": "Usuario: {{userName}}",
|
"insights_user_filter": "Usuario: {{userName}}",
|
||||||
"insights_subtitle": "Mire información de insights en todos sus eventos",
|
"insights_subtitle": "Mire información de insights en todos sus eventos",
|
||||||
@@ -2005,7 +1998,6 @@
|
|||||||
"select_date": "Seleccione la fecha",
|
"select_date": "Seleccione la fecha",
|
||||||
"see_all_available_times": "Ver todas las horas disponibles",
|
"see_all_available_times": "Ver todas las horas disponibles",
|
||||||
"org_team_names_example": "ej. Equipo de marketing",
|
"org_team_names_example": "ej. Equipo de marketing",
|
||||||
"org_team_names_example_1": "ej. Equipo de marketing",
|
|
||||||
"org_team_names_example_2": "ej. Equipo de ventas",
|
"org_team_names_example_2": "ej. Equipo de ventas",
|
||||||
"org_team_names_example_3": "ej. Equipo de diseño",
|
"org_team_names_example_3": "ej. Equipo de diseño",
|
||||||
"org_team_names_example_4": "ej. Equipo de ingeniería",
|
"org_team_names_example_4": "ej. Equipo de ingeniería",
|
||||||
@@ -2067,6 +2059,9 @@
|
|||||||
"include_calendar_event": "Incluir evento del calendario",
|
"include_calendar_event": "Incluir evento del calendario",
|
||||||
"oAuth": "OAuth",
|
"oAuth": "OAuth",
|
||||||
"recently_added": "Añadido recientemente",
|
"recently_added": "Añadido recientemente",
|
||||||
|
"connect_all_calendars": "Conecte todos sus calendarios",
|
||||||
|
"workflow_automation": "Automatización del flujo de trabajo",
|
||||||
|
"scheduling_for_your_team": "Automatización del flujo de trabajo",
|
||||||
"no_members_found": "No se encontraron miembros",
|
"no_members_found": "No se encontraron miembros",
|
||||||
"event_setup_length_error": "Configuración del evento: la duración debe ser de al menos 1 minuto.",
|
"event_setup_length_error": "Configuración del evento: la duración debe ser de al menos 1 minuto.",
|
||||||
"availability_schedules": "Horarios de disponibilidad",
|
"availability_schedules": "Horarios de disponibilidad",
|
||||||
@@ -2090,6 +2085,7 @@
|
|||||||
"edit_users_availability": "Editar disponibilidad del usuario: {{username}}",
|
"edit_users_availability": "Editar disponibilidad del usuario: {{username}}",
|
||||||
"resend_invitation": "Reenviar invitación",
|
"resend_invitation": "Reenviar invitación",
|
||||||
"invitation_resent": "Se reenvió la invitación.",
|
"invitation_resent": "Se reenvió la invitación.",
|
||||||
|
"saml_sso": "SAML",
|
||||||
"add_client": "Agregar cliente",
|
"add_client": "Agregar cliente",
|
||||||
"copy_client_secret_info": "Después de copiar el secreto, ya no podrá volver a verlo",
|
"copy_client_secret_info": "Después de copiar el secreto, ya no podrá volver a verlo",
|
||||||
"add_new_client": "Agregar nuevo cliente",
|
"add_new_client": "Agregar nuevo cliente",
|
||||||
@@ -2101,5 +2097,6 @@
|
|||||||
"lock_timezone_toggle_on_booking_page": "Bloquear la zona horaria en la página de reserva",
|
"lock_timezone_toggle_on_booking_page": "Bloquear la zona horaria en la página de reserva",
|
||||||
"description_lock_timezone_toggle_on_booking_page": "Bloquear la zona horaria en la página de reserva, es útil para eventos en persona.",
|
"description_lock_timezone_toggle_on_booking_page": "Bloquear la zona horaria en la página de reserva, es útil para eventos en persona.",
|
||||||
"extensive_whitelabeling": "Asistencia dedicada en materia de incorporación e ingeniería",
|
"extensive_whitelabeling": "Asistencia dedicada en materia de incorporación e ingeniería",
|
||||||
|
"need_help": "¿Necesita ayuda?",
|
||||||
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Agregue sus nuevas cadenas arriba ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Agregue sus nuevas cadenas arriba ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
||||||
}
|
}
|
||||||
@@ -439,8 +439,6 @@
|
|||||||
"default_duration": "Lehenetsitako iraupena",
|
"default_duration": "Lehenetsitako iraupena",
|
||||||
"minutes": "minutu",
|
"minutes": "minutu",
|
||||||
"username_placeholder": "erabiltzaile izena",
|
"username_placeholder": "erabiltzaile izena",
|
||||||
"count_members_one": "kide {{count}}",
|
|
||||||
"count_members_other": "{{count}} kide",
|
|
||||||
"url": "URLa",
|
"url": "URLa",
|
||||||
"hidden": "Ezkutuan",
|
"hidden": "Ezkutuan",
|
||||||
"readonly": "Irakurtzeko bakarrik",
|
"readonly": "Irakurtzeko bakarrik",
|
||||||
@@ -506,7 +504,6 @@
|
|||||||
"next_step": "Saltatu pausoa",
|
"next_step": "Saltatu pausoa",
|
||||||
"prev_step": "Aurreko pausoa",
|
"prev_step": "Aurreko pausoa",
|
||||||
"install": "Instalatu",
|
"install": "Instalatu",
|
||||||
"install_paid_app": "Harpidetu",
|
|
||||||
"installed": "Instalatua",
|
"installed": "Instalatua",
|
||||||
"disconnect": "Deskonektatu",
|
"disconnect": "Deskonektatu",
|
||||||
"automation": "Automatizazioa",
|
"automation": "Automatizazioa",
|
||||||
@@ -644,9 +641,6 @@
|
|||||||
"attendee_name_variable": "Partaidea",
|
"attendee_name_variable": "Partaidea",
|
||||||
"event_date_variable": "Gertaeraren data",
|
"event_date_variable": "Gertaeraren data",
|
||||||
"event_time_variable": "Gertaeraren ordua",
|
"event_time_variable": "Gertaeraren ordua",
|
||||||
"timezone_variable": "Ordu-eremua",
|
|
||||||
"location_variable": "Kokapena",
|
|
||||||
"additional_notes_variable": "Ohar gehigarriak",
|
|
||||||
"organizer_name_variable": "Antolatzailearen izena",
|
"organizer_name_variable": "Antolatzailearen izena",
|
||||||
"invalid_number": "Telefono zenbaki baliogabea",
|
"invalid_number": "Telefono zenbaki baliogabea",
|
||||||
"navigate": "Nabigatu",
|
"navigate": "Nabigatu",
|
||||||
|
|||||||
@@ -665,8 +665,6 @@
|
|||||||
"managed_event_url_clarification": "« nom d'utilisateur » sera rempli par le nom d'utilisateur des membres assignés",
|
"managed_event_url_clarification": "« nom d'utilisateur » sera rempli par le nom d'utilisateur des membres assignés",
|
||||||
"assign_to": "Assigner à",
|
"assign_to": "Assigner à",
|
||||||
"add_members": "Ajouter des membres...",
|
"add_members": "Ajouter des membres...",
|
||||||
"count_members_one": "{{count}} membre",
|
|
||||||
"count_members_other": "{{count}} membres",
|
|
||||||
"no_assigned_members": "Aucun membre assigné",
|
"no_assigned_members": "Aucun membre assigné",
|
||||||
"assigned_to": "Assigné à",
|
"assigned_to": "Assigné à",
|
||||||
"start_assigning_members_above": "Commencez à assigner des membres ci-dessus",
|
"start_assigning_members_above": "Commencez à assigner des membres ci-dessus",
|
||||||
@@ -848,7 +846,6 @@
|
|||||||
"next_step": "Passer l'étape",
|
"next_step": "Passer l'étape",
|
||||||
"prev_step": "Étape précédente",
|
"prev_step": "Étape précédente",
|
||||||
"install": "Installer",
|
"install": "Installer",
|
||||||
"install_paid_app": "S'abonner",
|
|
||||||
"start_paid_trial": "Démarrer l'essai gratuit",
|
"start_paid_trial": "Démarrer l'essai gratuit",
|
||||||
"installed": "Installée",
|
"installed": "Installée",
|
||||||
"active_install_one": "{{count}} installation active",
|
"active_install_one": "{{count}} installation active",
|
||||||
@@ -1154,6 +1151,7 @@
|
|||||||
"active_on": "Actif sur",
|
"active_on": "Actif sur",
|
||||||
"workflow_updated_successfully": "Workflow {{workflowName}} mis à jour avec succès",
|
"workflow_updated_successfully": "Workflow {{workflowName}} mis à jour avec succès",
|
||||||
"premium_to_standard_username_description": "Il s'agit d'un nom d'utilisateur standard et l'appliquer vous redirigera vers la facturation pour résilier votre plan.",
|
"premium_to_standard_username_description": "Il s'agit d'un nom d'utilisateur standard et l'appliquer vous redirigera vers la facturation pour résilier votre plan.",
|
||||||
|
"premium_username": "Il s'agit d'un nom d'utilisateur premium, obtenez-le pour {{price}}",
|
||||||
"current": "Actuel",
|
"current": "Actuel",
|
||||||
"premium": "premium",
|
"premium": "premium",
|
||||||
"standard": "standard",
|
"standard": "standard",
|
||||||
@@ -1219,9 +1217,6 @@
|
|||||||
"attendee_name_variable": "Nom du participant",
|
"attendee_name_variable": "Nom du participant",
|
||||||
"event_date_variable": "Date de l'événement",
|
"event_date_variable": "Date de l'événement",
|
||||||
"event_time_variable": "Heure de l'événement",
|
"event_time_variable": "Heure de l'événement",
|
||||||
"timezone_variable": "Fuseau horaire",
|
|
||||||
"location_variable": "Lieu",
|
|
||||||
"additional_notes_variable": "Notes supplémentaires",
|
|
||||||
"organizer_name_variable": "Nom de l'organisateur",
|
"organizer_name_variable": "Nom de l'organisateur",
|
||||||
"app_upgrade_description": "Pour pouvoir utiliser cette fonctionnalité, vous devez passer à un compte Pro.",
|
"app_upgrade_description": "Pour pouvoir utiliser cette fonctionnalité, vous devez passer à un compte Pro.",
|
||||||
"invalid_number": "Numéro de téléphone invalide",
|
"invalid_number": "Numéro de téléphone invalide",
|
||||||
@@ -1535,6 +1530,7 @@
|
|||||||
"you": "Vous",
|
"you": "Vous",
|
||||||
"resend_email": "Renvoyer l’e-mail",
|
"resend_email": "Renvoyer l’e-mail",
|
||||||
"member_already_invited": "Le membre a déjà été invité",
|
"member_already_invited": "Le membre a déjà été invité",
|
||||||
|
"already_in_use_error": "Nom d'utilisateur déjà utilisé",
|
||||||
"enter_email_or_username": "Saisissez une adresse e-mail ou un nom d'utilisateur",
|
"enter_email_or_username": "Saisissez une adresse e-mail ou un nom d'utilisateur",
|
||||||
"team_name_taken": "Ce nom est déjà pris",
|
"team_name_taken": "Ce nom est déjà pris",
|
||||||
"must_enter_team_name": "Vous devez saisir un nom d'équipe",
|
"must_enter_team_name": "Vous devez saisir un nom d'équipe",
|
||||||
@@ -1983,14 +1979,11 @@
|
|||||||
"google_new_spam_policy": "La nouvelle politique anti-spam de Google peut vous empêcher de recevoir des notifications par e-mail ou sur votre calendrier concernant cette réservation.",
|
"google_new_spam_policy": "La nouvelle politique anti-spam de Google peut vous empêcher de recevoir des notifications par e-mail ou sur votre calendrier concernant cette réservation.",
|
||||||
"resolve": "Résoudre",
|
"resolve": "Résoudre",
|
||||||
"no_organization_slug": "Une erreur s'est produite lors de la création des équipes pour cette organisation. Le slug du lien est manquant.",
|
"no_organization_slug": "Une erreur s'est produite lors de la création des équipes pour cette organisation. Le slug du lien est manquant.",
|
||||||
"org_name": "Nom de l'organisation",
|
|
||||||
"org_url": "Lien de l'organisation",
|
|
||||||
"copy_link_org": "Copier le lien vers l’organisation",
|
"copy_link_org": "Copier le lien vers l’organisation",
|
||||||
"404_the_org": "L'organisation",
|
"404_the_org": "L'organisation",
|
||||||
"404_the_team": "L'équipe",
|
"404_the_team": "L'équipe",
|
||||||
"404_claim_entity_org": "Réservez votre sous-domaine pour votre organisation",
|
"404_claim_entity_org": "Réservez votre sous-domaine pour votre organisation",
|
||||||
"404_claim_entity_team": "Revendiquez cette équipe et commencez à gérer vos plannings collectivement",
|
"404_claim_entity_team": "Revendiquez cette équipe et commencez à gérer vos plannings collectivement",
|
||||||
"insights_all_org_filter": "Tous",
|
|
||||||
"insights_team_filter": "Équipe : {{teamName}}",
|
"insights_team_filter": "Équipe : {{teamName}}",
|
||||||
"insights_user_filter": "Utilisateur : {{userName}}",
|
"insights_user_filter": "Utilisateur : {{userName}}",
|
||||||
"insights_subtitle": "Visualisez les statistiques de réservation à travers vos événements",
|
"insights_subtitle": "Visualisez les statistiques de réservation à travers vos événements",
|
||||||
@@ -2002,7 +1995,6 @@
|
|||||||
"select_date": "Sélectionner une date",
|
"select_date": "Sélectionner une date",
|
||||||
"see_all_available_times": "Voir tous les créneaux disponibles",
|
"see_all_available_times": "Voir tous les créneaux disponibles",
|
||||||
"org_team_names_example": "p. ex. Équipe marketing",
|
"org_team_names_example": "p. ex. Équipe marketing",
|
||||||
"org_team_names_example_1": "p. ex. Équipe marketing",
|
|
||||||
"org_team_names_example_2": "p. ex. Équipe de vente",
|
"org_team_names_example_2": "p. ex. Équipe de vente",
|
||||||
"org_team_names_example_3": "p. ex. Équipe de design",
|
"org_team_names_example_3": "p. ex. Équipe de design",
|
||||||
"org_team_names_example_4": "p. ex. Équipe d'ingénierie",
|
"org_team_names_example_4": "p. ex. Équipe d'ingénierie",
|
||||||
@@ -2063,6 +2055,9 @@
|
|||||||
"seat_options_doesnt_multiple_durations": "L'option par place ne prend pas en charge les durées multiples",
|
"seat_options_doesnt_multiple_durations": "L'option par place ne prend pas en charge les durées multiples",
|
||||||
"include_calendar_event": "Inclure l'événement du calendrier",
|
"include_calendar_event": "Inclure l'événement du calendrier",
|
||||||
"recently_added": "Ajoutées récemment",
|
"recently_added": "Ajoutées récemment",
|
||||||
|
"connect_all_calendars": "Connectez vos calendriers",
|
||||||
|
"workflow_automation": "Automatisation de workflows",
|
||||||
|
"scheduling_for_your_team": "Automatisation de workflows",
|
||||||
"no_members_found": "Aucun membre trouvé",
|
"no_members_found": "Aucun membre trouvé",
|
||||||
"event_setup_length_error": "Configuration de l'événement : la durée doit être d'au moins 1 minute.",
|
"event_setup_length_error": "Configuration de l'événement : la durée doit être d'au moins 1 minute.",
|
||||||
"availability_schedules": "Horaires de disponibilité",
|
"availability_schedules": "Horaires de disponibilité",
|
||||||
@@ -2077,6 +2072,7 @@
|
|||||||
"edit_users_availability": "Modifier la disponibilité de l'utilisateur : {{username}}",
|
"edit_users_availability": "Modifier la disponibilité de l'utilisateur : {{username}}",
|
||||||
"resend_invitation": "Renvoyer l'invitation",
|
"resend_invitation": "Renvoyer l'invitation",
|
||||||
"invitation_resent": "L'invitation a été renvoyée.",
|
"invitation_resent": "L'invitation a été renvoyée.",
|
||||||
|
"saml_sso": "SAML",
|
||||||
"add_client": "Ajouter un client",
|
"add_client": "Ajouter un client",
|
||||||
"add_new_client": "Ajouter un nouveau client",
|
"add_new_client": "Ajouter un nouveau client",
|
||||||
"as_csv": "au format CSV",
|
"as_csv": "au format CSV",
|
||||||
@@ -2085,7 +2081,9 @@
|
|||||||
"view_overlay_calendar_events": "Consultez les événements de votre calendrier afin d'éviter les réservations incompatibles.",
|
"view_overlay_calendar_events": "Consultez les événements de votre calendrier afin d'éviter les réservations incompatibles.",
|
||||||
"lock_timezone_toggle_on_booking_page": "Verrouiller le fuseau horaire sur la page de réservation",
|
"lock_timezone_toggle_on_booking_page": "Verrouiller le fuseau horaire sur la page de réservation",
|
||||||
"description_lock_timezone_toggle_on_booking_page": "Pour verrouiller le fuseau horaire sur la page de réservation, utile pour les événements en personne.",
|
"description_lock_timezone_toggle_on_booking_page": "Pour verrouiller le fuseau horaire sur la page de réservation, utile pour les événements en personne.",
|
||||||
|
"number_in_international_format": "Veuillez entrer le numéro au format international.",
|
||||||
"extensive_whitelabeling": "Marque blanche étendue",
|
"extensive_whitelabeling": "Marque blanche étendue",
|
||||||
"unlimited_teams": "Équipes illimitées",
|
"unlimited_teams": "Équipes illimitées",
|
||||||
|
"need_help": "Besoin d'aide ?",
|
||||||
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Ajoutez vos nouvelles chaînes ci-dessus ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Ajoutez vos nouvelles chaînes ci-dessus ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
||||||
}
|
}
|
||||||
@@ -666,8 +666,6 @@
|
|||||||
"managed_event_url_clarification": "יש למלא את שדה \"username\" בשמות המשתמשים של החברים שהוקצו",
|
"managed_event_url_clarification": "יש למלא את שדה \"username\" בשמות המשתמשים של החברים שהוקצו",
|
||||||
"assign_to": "הקצאה ל",
|
"assign_to": "הקצאה ל",
|
||||||
"add_members": "הוספת חברים...",
|
"add_members": "הוספת חברים...",
|
||||||
"count_members_one": "חבר {{count}}",
|
|
||||||
"count_members_other": "{{count}} חברים",
|
|
||||||
"no_assigned_members": "לא הוקצה אף חבר",
|
"no_assigned_members": "לא הוקצה אף חבר",
|
||||||
"assigned_to": "הוקצה ל",
|
"assigned_to": "הוקצה ל",
|
||||||
"start_assigning_members_above": "התחל/י להקצות חברים למעלה",
|
"start_assigning_members_above": "התחל/י להקצות חברים למעלה",
|
||||||
@@ -849,7 +847,6 @@
|
|||||||
"next_step": "לדלג על שלב זה",
|
"next_step": "לדלג על שלב זה",
|
||||||
"prev_step": "לשלב הקודם",
|
"prev_step": "לשלב הקודם",
|
||||||
"install": "התקנה",
|
"install": "התקנה",
|
||||||
"install_paid_app": "הרשמה למינוי",
|
|
||||||
"installed": "מותקן",
|
"installed": "מותקן",
|
||||||
"active_install_one": "התקנה פעילה {{count}}",
|
"active_install_one": "התקנה פעילה {{count}}",
|
||||||
"active_install_other": "{{count}} התקנות פעילות",
|
"active_install_other": "{{count}} התקנות פעילות",
|
||||||
@@ -1153,6 +1150,7 @@
|
|||||||
"active_on": "פעיל ב",
|
"active_on": "פעיל ב",
|
||||||
"workflow_updated_successfully": "עדכון תהליך העבודה {{workflowName}} בוצע בהצלחה",
|
"workflow_updated_successfully": "עדכון תהליך העבודה {{workflowName}} בוצע בהצלחה",
|
||||||
"premium_to_standard_username_description": "זהו שם משתמש סטנדרטי. אם תעדכן/י אותו, תועבר/י לדף החיוב לצורך שנמוך.",
|
"premium_to_standard_username_description": "זהו שם משתמש סטנדרטי. אם תעדכן/י אותו, תועבר/י לדף החיוב לצורך שנמוך.",
|
||||||
|
"premium_username": "זהו שם משתמש פרימיום, קבל/י אחד משלך תמורת {{price}}",
|
||||||
"current": "נוכחי",
|
"current": "נוכחי",
|
||||||
"premium": "פרימיום",
|
"premium": "פרימיום",
|
||||||
"standard": "רגיל",
|
"standard": "רגיל",
|
||||||
@@ -1218,9 +1216,6 @@
|
|||||||
"attendee_name_variable": "שם המשתתף",
|
"attendee_name_variable": "שם המשתתף",
|
||||||
"event_date_variable": "תאריך האירוע",
|
"event_date_variable": "תאריך האירוע",
|
||||||
"event_time_variable": "מועד האירוע",
|
"event_time_variable": "מועד האירוע",
|
||||||
"timezone_variable": "אזור זמן",
|
|
||||||
"location_variable": "מיקום",
|
|
||||||
"additional_notes_variable": "הערות נוספות",
|
|
||||||
"organizer_name_variable": "שם המארגן/ת",
|
"organizer_name_variable": "שם המארגן/ת",
|
||||||
"app_upgrade_description": "כדי להשתמש בתכונה זו, עליך לשדרג לחשבון Pro.",
|
"app_upgrade_description": "כדי להשתמש בתכונה זו, עליך לשדרג לחשבון Pro.",
|
||||||
"invalid_number": "מספר טלפון לא תקין",
|
"invalid_number": "מספר טלפון לא תקין",
|
||||||
@@ -1536,6 +1531,7 @@
|
|||||||
"you": "את/ה",
|
"you": "את/ה",
|
||||||
"resend_email": "לשלוח שוב את הדוא״ל",
|
"resend_email": "לשלוח שוב את הדוא״ל",
|
||||||
"member_already_invited": "החבר כבר הוזמן",
|
"member_already_invited": "החבר כבר הוזמן",
|
||||||
|
"already_in_use_error": "שם המשתמש כבר קיים",
|
||||||
"enter_email_or_username": "יש להזין כתובת דוא\"ל או שם משתמש",
|
"enter_email_or_username": "יש להזין כתובת דוא\"ל או שם משתמש",
|
||||||
"team_name_taken": "השם הזה כבר תפוס",
|
"team_name_taken": "השם הזה כבר תפוס",
|
||||||
"must_enter_team_name": "יש להזין שם צוות",
|
"must_enter_team_name": "יש להזין שם צוות",
|
||||||
@@ -1986,14 +1982,11 @@
|
|||||||
"google_new_spam_policy": "מדיניות הספאם החדשה של Google עלולה לגרום לכך שלא תקבל/י עדכונים בדוא״ל ובלוח השנה לגבי הפגישה הזו.",
|
"google_new_spam_policy": "מדיניות הספאם החדשה של Google עלולה לגרום לכך שלא תקבל/י עדכונים בדוא״ל ובלוח השנה לגבי הפגישה הזו.",
|
||||||
"resolve": "פתרון",
|
"resolve": "פתרון",
|
||||||
"no_organization_slug": "אירעה שגיאה במהלך הניסיון ליצור צוותים עבור הארגון הזה. חסר רכיב slug של URL.",
|
"no_organization_slug": "אירעה שגיאה במהלך הניסיון ליצור צוותים עבור הארגון הזה. חסר רכיב slug של URL.",
|
||||||
"org_name": "שם הארגון",
|
|
||||||
"org_url": "כתובת ה-URL של הארגון",
|
|
||||||
"copy_link_org": "העתקת הקישור לארגון",
|
"copy_link_org": "העתקת הקישור לארגון",
|
||||||
"404_the_org": "הארגון",
|
"404_the_org": "הארגון",
|
||||||
"404_the_team": "הצוות",
|
"404_the_team": "הצוות",
|
||||||
"404_claim_entity_org": "קבל/י את תת-הדומיין עבור הארגון שלך",
|
"404_claim_entity_org": "קבל/י את תת-הדומיין עבור הארגון שלך",
|
||||||
"404_claim_entity_team": "הצטרף/י לצוות הזה והתחל/התחילי לנהל קביעת מועדים ביחד",
|
"404_claim_entity_team": "הצטרף/י לצוות הזה והתחל/התחילי לנהל קביעת מועדים ביחד",
|
||||||
"insights_all_org_filter": "כל האפליקציות",
|
|
||||||
"insights_team_filter": "צוות: {{teamName}}",
|
"insights_team_filter": "צוות: {{teamName}}",
|
||||||
"insights_user_filter": "משתמש: {{userName}}",
|
"insights_user_filter": "משתמש: {{userName}}",
|
||||||
"insights_subtitle": "הצגת insights לגבי ההזמנות באירועים שלך",
|
"insights_subtitle": "הצגת insights לגבי ההזמנות באירועים שלך",
|
||||||
@@ -2005,7 +1998,6 @@
|
|||||||
"select_date": "בחירת תאריך",
|
"select_date": "בחירת תאריך",
|
||||||
"see_all_available_times": "לצפייה בכל המועדים הפנויים",
|
"see_all_available_times": "לצפייה בכל המועדים הפנויים",
|
||||||
"org_team_names_example": "לדוגמה, מחלקת שיווק",
|
"org_team_names_example": "לדוגמה, מחלקת שיווק",
|
||||||
"org_team_names_example_1": "לדוגמה, מחלקת שיווק",
|
|
||||||
"org_team_names_example_2": "לדוגמה, מחלקת מכירות",
|
"org_team_names_example_2": "לדוגמה, מחלקת מכירות",
|
||||||
"org_team_names_example_3": "לדוגמה, מחלקת עיצוב",
|
"org_team_names_example_3": "לדוגמה, מחלקת עיצוב",
|
||||||
"org_team_names_example_4": "לדוגמה, מחלקת הנדסה",
|
"org_team_names_example_4": "לדוגמה, מחלקת הנדסה",
|
||||||
@@ -2067,6 +2059,9 @@
|
|||||||
"include_calendar_event": "כלילת אירוע מלוח השנה",
|
"include_calendar_event": "כלילת אירוע מלוח השנה",
|
||||||
"oAuth": "OAuth",
|
"oAuth": "OAuth",
|
||||||
"recently_added": "נוספו לאחרונה",
|
"recently_added": "נוספו לאחרונה",
|
||||||
|
"connect_all_calendars": "חבר את כל לוחות השנה שלך",
|
||||||
|
"workflow_automation": "אוטומצית תהליך עבודה",
|
||||||
|
"scheduling_for_your_team": "אוטומצית תהליך עבודה",
|
||||||
"no_members_found": "לא נמצא אף חבר",
|
"no_members_found": "לא נמצא אף חבר",
|
||||||
"event_setup_length_error": "הגדרת אירוע: משך הזמן חייב להיות לפחות דקה אחת.",
|
"event_setup_length_error": "הגדרת אירוע: משך הזמן חייב להיות לפחות דקה אחת.",
|
||||||
"availability_schedules": "לוחות זמנים לזמינוּת",
|
"availability_schedules": "לוחות זמנים לזמינוּת",
|
||||||
@@ -2090,6 +2085,7 @@
|
|||||||
"edit_users_availability": "עריכת הזמינות של משתמש: {{username}}",
|
"edit_users_availability": "עריכת הזמינות של משתמש: {{username}}",
|
||||||
"resend_invitation": "שליחת ההזמנה מחדש",
|
"resend_invitation": "שליחת ההזמנה מחדש",
|
||||||
"invitation_resent": "ההזמנה נשלחה מחדש.",
|
"invitation_resent": "ההזמנה נשלחה מחדש.",
|
||||||
|
"saml_sso": "SAML",
|
||||||
"add_client": "הוספת לקוח",
|
"add_client": "הוספת לקוח",
|
||||||
"copy_client_secret_info": "לאחר העתקת הסוד, כבר לא תהיה לך אפשרות לראות אותו",
|
"copy_client_secret_info": "לאחר העתקת הסוד, כבר לא תהיה לך אפשרות לראות אותו",
|
||||||
"add_new_client": "הוספת לקוח חדש",
|
"add_new_client": "הוספת לקוח חדש",
|
||||||
@@ -2101,5 +2097,6 @@
|
|||||||
"lock_timezone_toggle_on_booking_page": "נעילת אזור הזמן בדף ההזמנות",
|
"lock_timezone_toggle_on_booking_page": "נעילת אזור הזמן בדף ההזמנות",
|
||||||
"description_lock_timezone_toggle_on_booking_page": "כדי לנעול את אזור הזמן בדף ההזמנות – שימושי לאירועים אישיים.",
|
"description_lock_timezone_toggle_on_booking_page": "כדי לנעול את אזור הזמן בדף ההזמנות – שימושי לאירועים אישיים.",
|
||||||
"extensive_whitelabeling": "תהליך הטמעה והנדסת תמיכה אישי",
|
"extensive_whitelabeling": "תהליך הטמעה והנדסת תמיכה אישי",
|
||||||
|
"need_help": "צריך עזרה?",
|
||||||
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Add your new strings above here ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Add your new strings above here ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
||||||
}
|
}
|
||||||
@@ -333,6 +333,5 @@
|
|||||||
"dark": "Tamna",
|
"dark": "Tamna",
|
||||||
"automatically_adjust_theme": "Automatski prilagodite temu na temelju preferencija pozvanih osoba",
|
"automatically_adjust_theme": "Automatski prilagodite temu na temelju preferencija pozvanih osoba",
|
||||||
"user_dynamic_booking_disabled": "Neki od korisnika u grupi trenutno su onemogućili dinamičke grupne rezervacije",
|
"user_dynamic_booking_disabled": "Neki od korisnika u grupi trenutno su onemogućili dinamičke grupne rezervacije",
|
||||||
"full_name": "Puno ime",
|
"full_name": "Puno ime"
|
||||||
"insights_all_org_filter": "Sve"
|
|
||||||
}
|
}
|
||||||
@@ -205,9 +205,5 @@
|
|||||||
"minute_timeUnit": "Perc",
|
"minute_timeUnit": "Perc",
|
||||||
"remove_app": "Alkalmazás eltávolítása",
|
"remove_app": "Alkalmazás eltávolítása",
|
||||||
"yes_remove_app": "Igen, távolítsd el az alkalmazást",
|
"yes_remove_app": "Igen, távolítsd el az alkalmazást",
|
||||||
"web_conference": "Online konferencia",
|
"web_conference": "Online konferencia"
|
||||||
"timezone_variable": "Időzóna",
|
|
||||||
"location_variable": "Helyszín",
|
|
||||||
"additional_notes_variable": "Egyéb jegyzetek",
|
|
||||||
"insights_all_org_filter": "Minden alkalmazás"
|
|
||||||
}
|
}
|
||||||
@@ -125,5 +125,6 @@
|
|||||||
"logged_out": "Telah keluar",
|
"logged_out": "Telah keluar",
|
||||||
"please_try_again_and_contact_us": "Silakan coba lagi dan hubungi kami jika masalah terulang.",
|
"please_try_again_and_contact_us": "Silakan coba lagi dan hubungi kami jika masalah terulang.",
|
||||||
"incorrect_2fa_code": "Kode dua faktor salah.",
|
"incorrect_2fa_code": "Kode dua faktor salah.",
|
||||||
"no_account_exists": "Tidak ada akun dengan email tersebut."
|
"no_account_exists": "Tidak ada akun dengan email tersebut.",
|
||||||
|
"need_help": "Butuh bantuan?"
|
||||||
}
|
}
|
||||||
@@ -666,8 +666,6 @@
|
|||||||
"managed_event_url_clarification": "il campo \"username\" può essere compilato solo con il nome utente dei membri assegnati",
|
"managed_event_url_clarification": "il campo \"username\" può essere compilato solo con il nome utente dei membri assegnati",
|
||||||
"assign_to": "Assegna a",
|
"assign_to": "Assegna a",
|
||||||
"add_members": "Aggiungi membri...",
|
"add_members": "Aggiungi membri...",
|
||||||
"count_members_one": "{{count}} membro",
|
|
||||||
"count_members_other": "{{count}} membri",
|
|
||||||
"no_assigned_members": "Nessun membro assegnato",
|
"no_assigned_members": "Nessun membro assegnato",
|
||||||
"assigned_to": "Assegnato a",
|
"assigned_to": "Assegnato a",
|
||||||
"start_assigning_members_above": "Inizia ad assegnare membri in alto",
|
"start_assigning_members_above": "Inizia ad assegnare membri in alto",
|
||||||
@@ -849,7 +847,6 @@
|
|||||||
"next_step": "Salta passo",
|
"next_step": "Salta passo",
|
||||||
"prev_step": "Passo precedente",
|
"prev_step": "Passo precedente",
|
||||||
"install": "Installa",
|
"install": "Installa",
|
||||||
"install_paid_app": "Abbonati",
|
|
||||||
"installed": "Installato",
|
"installed": "Installato",
|
||||||
"active_install_one": "{{count}} installazione attiva",
|
"active_install_one": "{{count}} installazione attiva",
|
||||||
"active_install_other": "{{count}} installazioni attive",
|
"active_install_other": "{{count}} installazioni attive",
|
||||||
@@ -1153,6 +1150,7 @@
|
|||||||
"active_on": "Data attivazione",
|
"active_on": "Data attivazione",
|
||||||
"workflow_updated_successfully": "Flusso di lavoro {{workflowName}} aggiornato correttamente",
|
"workflow_updated_successfully": "Flusso di lavoro {{workflowName}} aggiornato correttamente",
|
||||||
"premium_to_standard_username_description": "Questo è un nome utente standard e l'aggiornamento ti porterà alla fatturazione per il downgrade.",
|
"premium_to_standard_username_description": "Questo è un nome utente standard e l'aggiornamento ti porterà alla fatturazione per il downgrade.",
|
||||||
|
"premium_username": "Questo è un nome utente premium, ottieni il tuo per {{price}}",
|
||||||
"current": "Corrente",
|
"current": "Corrente",
|
||||||
"premium": "premium",
|
"premium": "premium",
|
||||||
"standard": "standard",
|
"standard": "standard",
|
||||||
@@ -1218,9 +1216,6 @@
|
|||||||
"attendee_name_variable": "Partecipante",
|
"attendee_name_variable": "Partecipante",
|
||||||
"event_date_variable": "Data evento",
|
"event_date_variable": "Data evento",
|
||||||
"event_time_variable": "Ora evento",
|
"event_time_variable": "Ora evento",
|
||||||
"timezone_variable": "Timezone",
|
|
||||||
"location_variable": "Luogo",
|
|
||||||
"additional_notes_variable": "Note aggiuntive",
|
|
||||||
"organizer_name_variable": "Nome organizzatore",
|
"organizer_name_variable": "Nome organizzatore",
|
||||||
"app_upgrade_description": "Per poter utilizzare questa funzionalità, è necessario passare a un account Pro.",
|
"app_upgrade_description": "Per poter utilizzare questa funzionalità, è necessario passare a un account Pro.",
|
||||||
"invalid_number": "Numero di telefono non valido",
|
"invalid_number": "Numero di telefono non valido",
|
||||||
@@ -1536,6 +1531,7 @@
|
|||||||
"you": "Tu",
|
"you": "Tu",
|
||||||
"resend_email": "Invia di nuovo l'e-mail",
|
"resend_email": "Invia di nuovo l'e-mail",
|
||||||
"member_already_invited": "Membro già invitato",
|
"member_already_invited": "Membro già invitato",
|
||||||
|
"already_in_use_error": "Nome utente già in uso",
|
||||||
"enter_email_or_username": "Immettere un indirizzo e-mail o un nome utente",
|
"enter_email_or_username": "Immettere un indirizzo e-mail o un nome utente",
|
||||||
"team_name_taken": "Nome già utilizzato",
|
"team_name_taken": "Nome già utilizzato",
|
||||||
"must_enter_team_name": "Necessario immettere un nome per il team",
|
"must_enter_team_name": "Necessario immettere un nome per il team",
|
||||||
@@ -1986,14 +1982,11 @@
|
|||||||
"google_new_spam_policy": "Le nuove norme sullo spam di Google potrebbero impedirti di ricevere email e notifiche di calendario in merito a questa prenotazione.",
|
"google_new_spam_policy": "Le nuove norme sullo spam di Google potrebbero impedirti di ricevere email e notifiche di calendario in merito a questa prenotazione.",
|
||||||
"resolve": "Risolvi",
|
"resolve": "Risolvi",
|
||||||
"no_organization_slug": "Si è verificato un errore durante la creazione dei team per questa organizzazione. Slug URL mancante.",
|
"no_organization_slug": "Si è verificato un errore durante la creazione dei team per questa organizzazione. Slug URL mancante.",
|
||||||
"org_name": "Nome dell'organizzazione",
|
|
||||||
"org_url": "URL dell'organizzazione",
|
|
||||||
"copy_link_org": "Copia link all'organizzazione",
|
"copy_link_org": "Copia link all'organizzazione",
|
||||||
"404_the_org": "L'organizzazione",
|
"404_the_org": "L'organizzazione",
|
||||||
"404_the_team": "Il team",
|
"404_the_team": "Il team",
|
||||||
"404_claim_entity_org": "Richiedi il sottodominio per la tua organizzazione",
|
"404_claim_entity_org": "Richiedi il sottodominio per la tua organizzazione",
|
||||||
"404_claim_entity_team": "Richiedi l'accesso a questo team per iniziare a gestire le pianificazioni collettivamente",
|
"404_claim_entity_team": "Richiedi l'accesso a questo team per iniziare a gestire le pianificazioni collettivamente",
|
||||||
"insights_all_org_filter": "Tutte le app",
|
|
||||||
"insights_team_filter": "Team: {{teamName}}",
|
"insights_team_filter": "Team: {{teamName}}",
|
||||||
"insights_user_filter": "Utente: {{userName}}",
|
"insights_user_filter": "Utente: {{userName}}",
|
||||||
"insights_subtitle": "Visualizza insight sulle prenotazioni per tutti i tuoi eventi",
|
"insights_subtitle": "Visualizza insight sulle prenotazioni per tutti i tuoi eventi",
|
||||||
@@ -2005,7 +1998,6 @@
|
|||||||
"select_date": "Seleziona la data",
|
"select_date": "Seleziona la data",
|
||||||
"see_all_available_times": "Vedi tutti gli orari disponibili",
|
"see_all_available_times": "Vedi tutti gli orari disponibili",
|
||||||
"org_team_names_example": "ad es., team di marketing",
|
"org_team_names_example": "ad es., team di marketing",
|
||||||
"org_team_names_example_1": "ad es., team di marketing",
|
|
||||||
"org_team_names_example_2": "ad es., team vendite",
|
"org_team_names_example_2": "ad es., team vendite",
|
||||||
"org_team_names_example_3": "ad es., team di progettazione",
|
"org_team_names_example_3": "ad es., team di progettazione",
|
||||||
"org_team_names_example_4": "ad es., team di ingegneria",
|
"org_team_names_example_4": "ad es., team di ingegneria",
|
||||||
@@ -2067,6 +2059,9 @@
|
|||||||
"include_calendar_event": "Includi evento del calendario",
|
"include_calendar_event": "Includi evento del calendario",
|
||||||
"oAuth": "OAuth",
|
"oAuth": "OAuth",
|
||||||
"recently_added": "Aggiunti di recente",
|
"recently_added": "Aggiunti di recente",
|
||||||
|
"connect_all_calendars": "Collega tutti i tuoi calendari",
|
||||||
|
"workflow_automation": "Automazione dei flussi di lavoro",
|
||||||
|
"scheduling_for_your_team": "Automazione dei flussi di lavoro",
|
||||||
"no_members_found": "Nessun membro trovato",
|
"no_members_found": "Nessun membro trovato",
|
||||||
"event_setup_length_error": "Impostazione evento: la durata deve essere di almeno 1 minuto.",
|
"event_setup_length_error": "Impostazione evento: la durata deve essere di almeno 1 minuto.",
|
||||||
"availability_schedules": "Calendario disponibilità",
|
"availability_schedules": "Calendario disponibilità",
|
||||||
@@ -2090,6 +2085,7 @@
|
|||||||
"edit_users_availability": "Modifica la disponibilità dell'utente: {{username}}",
|
"edit_users_availability": "Modifica la disponibilità dell'utente: {{username}}",
|
||||||
"resend_invitation": "Invia di nuovo l'invito",
|
"resend_invitation": "Invia di nuovo l'invito",
|
||||||
"invitation_resent": "L'invito è stato inviato di nuovo.",
|
"invitation_resent": "L'invito è stato inviato di nuovo.",
|
||||||
|
"saml_sso": "SAML",
|
||||||
"add_client": "Aggiungi cliente",
|
"add_client": "Aggiungi cliente",
|
||||||
"copy_client_secret_info": "Dopo aver copiato questa parola segreta non sarai più in grado di vederla",
|
"copy_client_secret_info": "Dopo aver copiato questa parola segreta non sarai più in grado di vederla",
|
||||||
"add_new_client": "Aggiungi nuovo cliente",
|
"add_new_client": "Aggiungi nuovo cliente",
|
||||||
@@ -2101,5 +2097,6 @@
|
|||||||
"lock_timezone_toggle_on_booking_page": "Blocca fuso orario nella pagina di prenotazione",
|
"lock_timezone_toggle_on_booking_page": "Blocca fuso orario nella pagina di prenotazione",
|
||||||
"description_lock_timezone_toggle_on_booking_page": "Per bloccare il fuso orario nella pagina di prenotazione, utile per gli eventi di persona.",
|
"description_lock_timezone_toggle_on_booking_page": "Per bloccare il fuso orario nella pagina di prenotazione, utile per gli eventi di persona.",
|
||||||
"extensive_whitelabeling": "Assistenza per l'onboarding e supporto tecnico dedicati",
|
"extensive_whitelabeling": "Assistenza per l'onboarding e supporto tecnico dedicati",
|
||||||
|
"need_help": "Hai bisogno di aiuto?",
|
||||||
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Aggiungi le tue nuove stringhe qui sopra ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Aggiungi le tue nuove stringhe qui sopra ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
||||||
}
|
}
|
||||||
@@ -666,8 +666,6 @@
|
|||||||
"managed_event_url_clarification": "\"ユーザー名\" には割り当てられたメンバーのユーザー名が入ります",
|
"managed_event_url_clarification": "\"ユーザー名\" には割り当てられたメンバーのユーザー名が入ります",
|
||||||
"assign_to": "割り当て先",
|
"assign_to": "割り当て先",
|
||||||
"add_members": "メンバーを追加…",
|
"add_members": "メンバーを追加…",
|
||||||
"count_members_one": "{{count}} 人のメンバー",
|
|
||||||
"count_members_other": "{{count}} 人のメンバー",
|
|
||||||
"no_assigned_members": "割り当てられたメンバーはいません",
|
"no_assigned_members": "割り当てられたメンバーはいません",
|
||||||
"assigned_to": "割り当て先",
|
"assigned_to": "割り当て先",
|
||||||
"start_assigning_members_above": "上記のメンバーに対する割り当てを開始する",
|
"start_assigning_members_above": "上記のメンバーに対する割り当てを開始する",
|
||||||
@@ -849,7 +847,6 @@
|
|||||||
"next_step": "手順をスキップ",
|
"next_step": "手順をスキップ",
|
||||||
"prev_step": "前の手順",
|
"prev_step": "前の手順",
|
||||||
"install": "インストール",
|
"install": "インストール",
|
||||||
"install_paid_app": "サブスクライブ",
|
|
||||||
"installed": "インストール済み",
|
"installed": "インストール済み",
|
||||||
"active_install_one": "{{count}} 件のアクティブなインストール",
|
"active_install_one": "{{count}} 件のアクティブなインストール",
|
||||||
"active_install_other": "{{count}} 件のアクティブなインストール",
|
"active_install_other": "{{count}} 件のアクティブなインストール",
|
||||||
@@ -1153,6 +1150,7 @@
|
|||||||
"active_on": "有効日時",
|
"active_on": "有効日時",
|
||||||
"workflow_updated_successfully": "{{workflowName}} が正常に更新されました",
|
"workflow_updated_successfully": "{{workflowName}} が正常に更新されました",
|
||||||
"premium_to_standard_username_description": "これは標準のユーザー名です。更新するとダウングレードを行うための請求画面に移動します。",
|
"premium_to_standard_username_description": "これは標準のユーザー名です。更新するとダウングレードを行うための請求画面に移動します。",
|
||||||
|
"premium_username": "これはプレミアムユーザー名ですので、{{price}} で入手してください",
|
||||||
"current": "現在",
|
"current": "現在",
|
||||||
"premium": "プレミアム",
|
"premium": "プレミアム",
|
||||||
"standard": "スタンダード",
|
"standard": "スタンダード",
|
||||||
@@ -1218,9 +1216,6 @@
|
|||||||
"attendee_name_variable": "出席者の名前",
|
"attendee_name_variable": "出席者の名前",
|
||||||
"event_date_variable": "イベントの日付",
|
"event_date_variable": "イベントの日付",
|
||||||
"event_time_variable": "イベントの時間",
|
"event_time_variable": "イベントの時間",
|
||||||
"timezone_variable": "タイムゾーン",
|
|
||||||
"location_variable": "場所",
|
|
||||||
"additional_notes_variable": "備考",
|
|
||||||
"organizer_name_variable": "主催者名",
|
"organizer_name_variable": "主催者名",
|
||||||
"app_upgrade_description": "この機能を利用するには、Pro アカウントへのアップグレードが必要です。",
|
"app_upgrade_description": "この機能を利用するには、Pro アカウントへのアップグレードが必要です。",
|
||||||
"invalid_number": "電話番号が無効です",
|
"invalid_number": "電話番号が無効です",
|
||||||
@@ -1536,6 +1531,7 @@
|
|||||||
"you": "あなた",
|
"you": "あなた",
|
||||||
"resend_email": "メールを再送する",
|
"resend_email": "メールを再送する",
|
||||||
"member_already_invited": "メンバーは既に招待されています",
|
"member_already_invited": "メンバーは既に招待されています",
|
||||||
|
"already_in_use_error": "ユーザー名は既に使われています",
|
||||||
"enter_email_or_username": "メールアドレスまたはユーザー名を入力してください",
|
"enter_email_or_username": "メールアドレスまたはユーザー名を入力してください",
|
||||||
"team_name_taken": "この名前は既に使用されています",
|
"team_name_taken": "この名前は既に使用されています",
|
||||||
"must_enter_team_name": "チーム名の入力は必須です",
|
"must_enter_team_name": "チーム名の入力は必須です",
|
||||||
@@ -1986,14 +1982,11 @@
|
|||||||
"google_new_spam_policy": "Google の新しい迷惑メールポリシーにより、この予約に関するメールやカレンダー通知を受け取れなくなる可能性があります。",
|
"google_new_spam_policy": "Google の新しい迷惑メールポリシーにより、この予約に関するメールやカレンダー通知を受け取れなくなる可能性があります。",
|
||||||
"resolve": "解決する",
|
"resolve": "解決する",
|
||||||
"no_organization_slug": "この組織でチームを作成する際にエラーが発生しました。URL スラッグがありません。",
|
"no_organization_slug": "この組織でチームを作成する際にエラーが発生しました。URL スラッグがありません。",
|
||||||
"org_name": "組織名",
|
|
||||||
"org_url": "組織の URL",
|
|
||||||
"copy_link_org": "組織へのリンクをコピーする",
|
"copy_link_org": "組織へのリンクをコピーする",
|
||||||
"404_the_org": "組織",
|
"404_the_org": "組織",
|
||||||
"404_the_team": "チーム",
|
"404_the_team": "チーム",
|
||||||
"404_claim_entity_org": "組織のサブドメインを取得する",
|
"404_claim_entity_org": "組織のサブドメインを取得する",
|
||||||
"404_claim_entity_team": "このチームの一員になって、今後はスケジュールをまとめて管理しましょう",
|
"404_claim_entity_team": "このチームの一員になって、今後はスケジュールをまとめて管理しましょう",
|
||||||
"insights_all_org_filter": "すべて",
|
|
||||||
"insights_team_filter": "チーム: {{teamName}}",
|
"insights_team_filter": "チーム: {{teamName}}",
|
||||||
"insights_user_filter": "ユーザー: {{userName}}",
|
"insights_user_filter": "ユーザー: {{userName}}",
|
||||||
"insights_subtitle": "イベント全体での予約に関する Insights を表示する",
|
"insights_subtitle": "イベント全体での予約に関する Insights を表示する",
|
||||||
@@ -2005,7 +1998,6 @@
|
|||||||
"select_date": "日付を選ぶ",
|
"select_date": "日付を選ぶ",
|
||||||
"see_all_available_times": "出席できる時間帯をすべて表示",
|
"see_all_available_times": "出席できる時間帯をすべて表示",
|
||||||
"org_team_names_example": "例:マーケティングチーム",
|
"org_team_names_example": "例:マーケティングチーム",
|
||||||
"org_team_names_example_1": "例:マーケティングチーム",
|
|
||||||
"org_team_names_example_2": "例:営業チーム",
|
"org_team_names_example_2": "例:営業チーム",
|
||||||
"org_team_names_example_3": "例:デザインチーム",
|
"org_team_names_example_3": "例:デザインチーム",
|
||||||
"org_team_names_example_4": "例:エンジニアリングチーム",
|
"org_team_names_example_4": "例:エンジニアリングチーム",
|
||||||
@@ -2067,6 +2059,9 @@
|
|||||||
"include_calendar_event": "カレンダーのイベントを含める",
|
"include_calendar_event": "カレンダーのイベントを含める",
|
||||||
"oAuth": "OAuth",
|
"oAuth": "OAuth",
|
||||||
"recently_added": "最近追加されました",
|
"recently_added": "最近追加されました",
|
||||||
|
"connect_all_calendars": "すべてのカレンダーに接続",
|
||||||
|
"workflow_automation": "ワークフローの自動化",
|
||||||
|
"scheduling_for_your_team": "ワークフローの自動化",
|
||||||
"no_members_found": "メンバーが見つかりません",
|
"no_members_found": "メンバーが見つかりません",
|
||||||
"event_setup_length_error": "イベント設定:時間は 1 分以上でなくてはいけません。",
|
"event_setup_length_error": "イベント設定:時間は 1 分以上でなくてはいけません。",
|
||||||
"availability_schedules": "空き状況一覧",
|
"availability_schedules": "空き状況一覧",
|
||||||
@@ -2090,6 +2085,7 @@
|
|||||||
"edit_users_availability": "ユーザーの空き状況を編集:{{username}}",
|
"edit_users_availability": "ユーザーの空き状況を編集:{{username}}",
|
||||||
"resend_invitation": "招待を再送",
|
"resend_invitation": "招待を再送",
|
||||||
"invitation_resent": "招待は再送されました。",
|
"invitation_resent": "招待は再送されました。",
|
||||||
|
"saml_sso": "SAML",
|
||||||
"add_client": "顧客を追加",
|
"add_client": "顧客を追加",
|
||||||
"copy_client_secret_info": "このシークレットをコピーすると、もう表示できなくなります",
|
"copy_client_secret_info": "このシークレットをコピーすると、もう表示できなくなります",
|
||||||
"add_new_client": "新しい顧客を追加",
|
"add_new_client": "新しい顧客を追加",
|
||||||
@@ -2101,5 +2097,6 @@
|
|||||||
"lock_timezone_toggle_on_booking_page": "予約ページのタイムゾーンを固定する",
|
"lock_timezone_toggle_on_booking_page": "予約ページのタイムゾーンを固定する",
|
||||||
"description_lock_timezone_toggle_on_booking_page": "予約ページのタイムゾーンを固定するためのもので、対面のイベントに役立ちます。",
|
"description_lock_timezone_toggle_on_booking_page": "予約ページのタイムゾーンを固定するためのもので、対面のイベントに役立ちます。",
|
||||||
"extensive_whitelabeling": "専用のオンボーディングサポートとエンジニアリングサポート",
|
"extensive_whitelabeling": "専用のオンボーディングサポートとエンジニアリングサポート",
|
||||||
|
"need_help": "サポートが必要ですか?",
|
||||||
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ この上に新しい文字列を追加してください ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ この上に新しい文字列を追加してください ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
||||||
}
|
}
|
||||||
@@ -666,8 +666,6 @@
|
|||||||
"managed_event_url_clarification": "\"username\"은 할당된 회원의 사용자 이름으로 채워집니다",
|
"managed_event_url_clarification": "\"username\"은 할당된 회원의 사용자 이름으로 채워집니다",
|
||||||
"assign_to": "할당 대상",
|
"assign_to": "할당 대상",
|
||||||
"add_members": "회원 추가...",
|
"add_members": "회원 추가...",
|
||||||
"count_members_one": "회원 {{count}}명",
|
|
||||||
"count_members_other": "회원 {{count}}명",
|
|
||||||
"no_assigned_members": "할당된 회원 없음",
|
"no_assigned_members": "할당된 회원 없음",
|
||||||
"assigned_to": "할당된 이벤트 유형",
|
"assigned_to": "할당된 이벤트 유형",
|
||||||
"start_assigning_members_above": "위에서 회원 할당 시작",
|
"start_assigning_members_above": "위에서 회원 할당 시작",
|
||||||
@@ -849,7 +847,6 @@
|
|||||||
"next_step": "건너뛰기",
|
"next_step": "건너뛰기",
|
||||||
"prev_step": "이전 단계",
|
"prev_step": "이전 단계",
|
||||||
"install": "설치",
|
"install": "설치",
|
||||||
"install_paid_app": "구독",
|
|
||||||
"installed": "설치됨",
|
"installed": "설치됨",
|
||||||
"active_install_one": "{{count}}개 활성 설치",
|
"active_install_one": "{{count}}개 활성 설치",
|
||||||
"active_install_other": "{{count}}개 활성 설치",
|
"active_install_other": "{{count}}개 활성 설치",
|
||||||
@@ -1153,6 +1150,7 @@
|
|||||||
"active_on": "유효일",
|
"active_on": "유효일",
|
||||||
"workflow_updated_successfully": "{{workflowName}} 워크플로 업데이트 완료",
|
"workflow_updated_successfully": "{{workflowName}} 워크플로 업데이트 완료",
|
||||||
"premium_to_standard_username_description": "이것은 표준 사용자 이름이며 업데이트하면 다운그레이드를 위한 청구로 이동합니다.",
|
"premium_to_standard_username_description": "이것은 표준 사용자 이름이며 업데이트하면 다운그레이드를 위한 청구로 이동합니다.",
|
||||||
|
"premium_username": "프리미엄 사용자 이름입니다. {{price}}에 구입하세요",
|
||||||
"current": "기존",
|
"current": "기존",
|
||||||
"premium": "프리미엄",
|
"premium": "프리미엄",
|
||||||
"standard": "표준",
|
"standard": "표준",
|
||||||
@@ -1218,9 +1216,6 @@
|
|||||||
"attendee_name_variable": "참석자",
|
"attendee_name_variable": "참석자",
|
||||||
"event_date_variable": "이벤트 날짜",
|
"event_date_variable": "이벤트 날짜",
|
||||||
"event_time_variable": "이벤트 시간",
|
"event_time_variable": "이벤트 시간",
|
||||||
"timezone_variable": "시간대",
|
|
||||||
"location_variable": "위치",
|
|
||||||
"additional_notes_variable": "추가 참고 사항",
|
|
||||||
"organizer_name_variable": "주최자 이름",
|
"organizer_name_variable": "주최자 이름",
|
||||||
"app_upgrade_description": "이 기능을 사용하려면 Pro 계정으로 업그레이드해야 합니다.",
|
"app_upgrade_description": "이 기능을 사용하려면 Pro 계정으로 업그레이드해야 합니다.",
|
||||||
"invalid_number": "유효하지 않은 전화 번호",
|
"invalid_number": "유효하지 않은 전화 번호",
|
||||||
@@ -1536,6 +1531,7 @@
|
|||||||
"you": "귀하",
|
"you": "귀하",
|
||||||
"resend_email": "이메일 다시 보내기",
|
"resend_email": "이메일 다시 보내기",
|
||||||
"member_already_invited": "구성원이 이미 초대되었습니다",
|
"member_already_invited": "구성원이 이미 초대되었습니다",
|
||||||
|
"already_in_use_error": "이미 사용 중인 사용자명입니다.",
|
||||||
"enter_email_or_username": "이메일 또는 사용자 이름을 입력하세요",
|
"enter_email_or_username": "이메일 또는 사용자 이름을 입력하세요",
|
||||||
"team_name_taken": "이미 사용 중인 이름입니다",
|
"team_name_taken": "이미 사용 중인 이름입니다",
|
||||||
"must_enter_team_name": "팀 이름을 입력하세요",
|
"must_enter_team_name": "팀 이름을 입력하세요",
|
||||||
@@ -1986,14 +1982,11 @@
|
|||||||
"google_new_spam_policy": "Google의 새로운 스팸 정책으로 인해 이 예약에 대한 이메일 및 캘린더 알림을 받지 못할 수 있습니다.",
|
"google_new_spam_policy": "Google의 새로운 스팸 정책으로 인해 이 예약에 대한 이메일 및 캘린더 알림을 받지 못할 수 있습니다.",
|
||||||
"resolve": "해결",
|
"resolve": "해결",
|
||||||
"no_organization_slug": "이 조직의 팀을 만드는 중 오류가 발생했습니다. URL 슬러그가 없습니다.",
|
"no_organization_slug": "이 조직의 팀을 만드는 중 오류가 발생했습니다. URL 슬러그가 없습니다.",
|
||||||
"org_name": "조직 이름",
|
|
||||||
"org_url": "조직 URL",
|
|
||||||
"copy_link_org": "조직 링크 복사",
|
"copy_link_org": "조직 링크 복사",
|
||||||
"404_the_org": "조직",
|
"404_the_org": "조직",
|
||||||
"404_the_team": "팀",
|
"404_the_team": "팀",
|
||||||
"404_claim_entity_org": "조직에 대한 하위 도메인 요청",
|
"404_claim_entity_org": "조직에 대한 하위 도메인 요청",
|
||||||
"404_claim_entity_team": "이 팀을 요청하고 일괄적으로 일정 관리 시작",
|
"404_claim_entity_team": "이 팀을 요청하고 일괄적으로 일정 관리 시작",
|
||||||
"insights_all_org_filter": "모두",
|
|
||||||
"insights_team_filter": "팀: {{teamName}}",
|
"insights_team_filter": "팀: {{teamName}}",
|
||||||
"insights_user_filter": "사용자: {{userName}}",
|
"insights_user_filter": "사용자: {{userName}}",
|
||||||
"insights_subtitle": "이벤트 전반에 걸친 예약 Insights 보기",
|
"insights_subtitle": "이벤트 전반에 걸친 예약 Insights 보기",
|
||||||
@@ -2005,7 +1998,6 @@
|
|||||||
"select_date": "날짜 선택",
|
"select_date": "날짜 선택",
|
||||||
"see_all_available_times": "모든 사용 가능한 시간 보기",
|
"see_all_available_times": "모든 사용 가능한 시간 보기",
|
||||||
"org_team_names_example": "예: 마케팅 팀",
|
"org_team_names_example": "예: 마케팅 팀",
|
||||||
"org_team_names_example_1": "예: 마케팅 팀",
|
|
||||||
"org_team_names_example_2": "예: 세일즈 팀",
|
"org_team_names_example_2": "예: 세일즈 팀",
|
||||||
"org_team_names_example_3": "예: 디자인 팀",
|
"org_team_names_example_3": "예: 디자인 팀",
|
||||||
"org_team_names_example_4": "예: 엔지니어링 팀",
|
"org_team_names_example_4": "예: 엔지니어링 팀",
|
||||||
@@ -2067,6 +2059,9 @@
|
|||||||
"include_calendar_event": "캘린더 이벤트 포함",
|
"include_calendar_event": "캘린더 이벤트 포함",
|
||||||
"oAuth": "OAuth",
|
"oAuth": "OAuth",
|
||||||
"recently_added": "최근 추가됨",
|
"recently_added": "최근 추가됨",
|
||||||
|
"connect_all_calendars": "모든 캘린더 연결",
|
||||||
|
"workflow_automation": "워크플로 자동화",
|
||||||
|
"scheduling_for_your_team": "워크플로 자동화",
|
||||||
"no_members_found": "구성원 없음",
|
"no_members_found": "구성원 없음",
|
||||||
"event_setup_length_error": "이벤트 설정: 지속 시간은 1분 이상이어야 합니다.",
|
"event_setup_length_error": "이벤트 설정: 지속 시간은 1분 이상이어야 합니다.",
|
||||||
"availability_schedules": "사용 가능한 일정",
|
"availability_schedules": "사용 가능한 일정",
|
||||||
@@ -2090,6 +2085,7 @@
|
|||||||
"edit_users_availability": "사용자 가용성 편집: {{username}}",
|
"edit_users_availability": "사용자 가용성 편집: {{username}}",
|
||||||
"resend_invitation": "초대장 다시 보내기",
|
"resend_invitation": "초대장 다시 보내기",
|
||||||
"invitation_resent": "초대장을 다시 보냈습니다.",
|
"invitation_resent": "초대장을 다시 보냈습니다.",
|
||||||
|
"saml_sso": "SAML",
|
||||||
"add_client": "클라이언트 추가",
|
"add_client": "클라이언트 추가",
|
||||||
"copy_client_secret_info": "비밀글을 복사한 후에는 더 이상 볼 수 없습니다",
|
"copy_client_secret_info": "비밀글을 복사한 후에는 더 이상 볼 수 없습니다",
|
||||||
"add_new_client": "새 클라이언트 추가",
|
"add_new_client": "새 클라이언트 추가",
|
||||||
@@ -2101,5 +2097,6 @@
|
|||||||
"lock_timezone_toggle_on_booking_page": "예약 페이지의 시간대 잠금",
|
"lock_timezone_toggle_on_booking_page": "예약 페이지의 시간대 잠금",
|
||||||
"description_lock_timezone_toggle_on_booking_page": "예약 페이지에서 시간대를 잠그는 기능은 대면 이벤트에 유용합니다.",
|
"description_lock_timezone_toggle_on_booking_page": "예약 페이지에서 시간대를 잠그는 기능은 대면 이벤트에 유용합니다.",
|
||||||
"extensive_whitelabeling": "전담 온보딩 및 엔지니어링 지원",
|
"extensive_whitelabeling": "전담 온보딩 및 엔지니어링 지원",
|
||||||
|
"need_help": "도움이 필요하세요?",
|
||||||
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ 여기에 새 문자열을 추가하세요 ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ 여기에 새 문자열을 추가하세요 ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
||||||
}
|
}
|
||||||
@@ -666,8 +666,6 @@
|
|||||||
"managed_event_url_clarification": "\"username\" wordt gevuld met de gebruikersnaam van de toegewezen leden",
|
"managed_event_url_clarification": "\"username\" wordt gevuld met de gebruikersnaam van de toegewezen leden",
|
||||||
"assign_to": "Toewijzen aan",
|
"assign_to": "Toewijzen aan",
|
||||||
"add_members": "Leden toevoegen...",
|
"add_members": "Leden toevoegen...",
|
||||||
"count_members_one": "{{count}} lid",
|
|
||||||
"count_members_other": "{{count}} leden",
|
|
||||||
"no_assigned_members": "Geen toegewezen leden",
|
"no_assigned_members": "Geen toegewezen leden",
|
||||||
"assigned_to": "Toegewezen aan",
|
"assigned_to": "Toegewezen aan",
|
||||||
"start_assigning_members_above": "Begin met het toewijzen van leden hierboven",
|
"start_assigning_members_above": "Begin met het toewijzen van leden hierboven",
|
||||||
@@ -849,7 +847,6 @@
|
|||||||
"next_step": "Stap overslaan",
|
"next_step": "Stap overslaan",
|
||||||
"prev_step": "Vorige stap",
|
"prev_step": "Vorige stap",
|
||||||
"install": "Installeren",
|
"install": "Installeren",
|
||||||
"install_paid_app": "Abonneren",
|
|
||||||
"installed": "Geinstalleerd",
|
"installed": "Geinstalleerd",
|
||||||
"active_install_one": "{{count}} actieve installatie",
|
"active_install_one": "{{count}} actieve installatie",
|
||||||
"active_install_other": "{{count}} actieve installaties",
|
"active_install_other": "{{count}} actieve installaties",
|
||||||
@@ -1153,6 +1150,7 @@
|
|||||||
"active_on": "Actief op",
|
"active_on": "Actief op",
|
||||||
"workflow_updated_successfully": "Werkstroom {{workflowName}} bijgewerkt",
|
"workflow_updated_successfully": "Werkstroom {{workflowName}} bijgewerkt",
|
||||||
"premium_to_standard_username_description": "Dit is een standaard gebruikersnaam. Als u deze bijwerkt, gaat u naar facturering om te downgraden.",
|
"premium_to_standard_username_description": "Dit is een standaard gebruikersnaam. Als u deze bijwerkt, gaat u naar facturering om te downgraden.",
|
||||||
|
"premium_username": "Dit is een premium gebruikersnaam, koop de uwe voor {{price}}",
|
||||||
"current": "Huidig",
|
"current": "Huidig",
|
||||||
"premium": "premium",
|
"premium": "premium",
|
||||||
"standard": "standaard",
|
"standard": "standaard",
|
||||||
@@ -1218,9 +1216,6 @@
|
|||||||
"attendee_name_variable": "Deelnemer",
|
"attendee_name_variable": "Deelnemer",
|
||||||
"event_date_variable": "Datum gebeurtenis",
|
"event_date_variable": "Datum gebeurtenis",
|
||||||
"event_time_variable": "Tijd gebeurtenis",
|
"event_time_variable": "Tijd gebeurtenis",
|
||||||
"timezone_variable": "Tijdzone",
|
|
||||||
"location_variable": "Locatie",
|
|
||||||
"additional_notes_variable": "Aanvullende opmerkingen",
|
|
||||||
"organizer_name_variable": "Naam organisator",
|
"organizer_name_variable": "Naam organisator",
|
||||||
"app_upgrade_description": "Om deze functie te gebruiken, moet u upgraden naar een Pro-account.",
|
"app_upgrade_description": "Om deze functie te gebruiken, moet u upgraden naar een Pro-account.",
|
||||||
"invalid_number": "Ongeldig telefoonnummer",
|
"invalid_number": "Ongeldig telefoonnummer",
|
||||||
@@ -1536,6 +1531,7 @@
|
|||||||
"you": "U",
|
"you": "U",
|
||||||
"resend_email": "E-mail opnieuw verzenden",
|
"resend_email": "E-mail opnieuw verzenden",
|
||||||
"member_already_invited": "Lid is al uitgenodigd",
|
"member_already_invited": "Lid is al uitgenodigd",
|
||||||
|
"already_in_use_error": "Gebruikersnaam al in gebruik",
|
||||||
"enter_email_or_username": "Voer een e-mailadres of gebruikersnaam in",
|
"enter_email_or_username": "Voer een e-mailadres of gebruikersnaam in",
|
||||||
"team_name_taken": "Deze naam is al in gebruik",
|
"team_name_taken": "Deze naam is al in gebruik",
|
||||||
"must_enter_team_name": "Moet een teamnaam invoeren",
|
"must_enter_team_name": "Moet een teamnaam invoeren",
|
||||||
@@ -1986,14 +1982,11 @@
|
|||||||
"google_new_spam_policy": "Het nieuwe spambeleid van Google kan ervoor zorgen dat u geen e-mail- en agendameldingen over deze boeking ontvangt.",
|
"google_new_spam_policy": "Het nieuwe spambeleid van Google kan ervoor zorgen dat u geen e-mail- en agendameldingen over deze boeking ontvangt.",
|
||||||
"resolve": "Oplossen",
|
"resolve": "Oplossen",
|
||||||
"no_organization_slug": "Er is een fout opgetreden bij het maken van teams voor deze organisatie. Ontbrekende URL-slug.",
|
"no_organization_slug": "Er is een fout opgetreden bij het maken van teams voor deze organisatie. Ontbrekende URL-slug.",
|
||||||
"org_name": "Organisatienaam",
|
|
||||||
"org_url": "Organisatie-URL",
|
|
||||||
"copy_link_org": "Link kopiëren naar organisatie",
|
"copy_link_org": "Link kopiëren naar organisatie",
|
||||||
"404_the_org": "De organisatie",
|
"404_the_org": "De organisatie",
|
||||||
"404_the_team": "Het team",
|
"404_the_team": "Het team",
|
||||||
"404_claim_entity_org": "Claim uw subdomein voor uw organisatie",
|
"404_claim_entity_org": "Claim uw subdomein voor uw organisatie",
|
||||||
"404_claim_entity_team": "Claim dit team en begin met het gezamenlijk beheren van planningen",
|
"404_claim_entity_team": "Claim dit team en begin met het gezamenlijk beheren van planningen",
|
||||||
"insights_all_org_filter": "Alle apps",
|
|
||||||
"insights_team_filter": "Team: {{teamName}}",
|
"insights_team_filter": "Team: {{teamName}}",
|
||||||
"insights_user_filter": "Gebruiker: {{userName}}",
|
"insights_user_filter": "Gebruiker: {{userName}}",
|
||||||
"insights_subtitle": "Bekijk boekingsinsights voor al uw gebeurtenissen",
|
"insights_subtitle": "Bekijk boekingsinsights voor al uw gebeurtenissen",
|
||||||
@@ -2005,7 +1998,6 @@
|
|||||||
"select_date": "Datum selecteren",
|
"select_date": "Datum selecteren",
|
||||||
"see_all_available_times": "Bekijk alle beschikbare tijden",
|
"see_all_available_times": "Bekijk alle beschikbare tijden",
|
||||||
"org_team_names_example": "bijvoorbeeld Marketingteam",
|
"org_team_names_example": "bijvoorbeeld Marketingteam",
|
||||||
"org_team_names_example_1": "bijvoorbeeld Marketingteam",
|
|
||||||
"org_team_names_example_2": "bijvoorbeeld Verkoopteam",
|
"org_team_names_example_2": "bijvoorbeeld Verkoopteam",
|
||||||
"org_team_names_example_3": "bijvoorbeeld Ontwerpteam",
|
"org_team_names_example_3": "bijvoorbeeld Ontwerpteam",
|
||||||
"org_team_names_example_4": "bijvoorbeeld Engineeringteam",
|
"org_team_names_example_4": "bijvoorbeeld Engineeringteam",
|
||||||
@@ -2067,6 +2059,9 @@
|
|||||||
"include_calendar_event": "Agendagebeurtenis opnemen",
|
"include_calendar_event": "Agendagebeurtenis opnemen",
|
||||||
"oAuth": "OAuth",
|
"oAuth": "OAuth",
|
||||||
"recently_added": "Recent toegevoegd",
|
"recently_added": "Recent toegevoegd",
|
||||||
|
"connect_all_calendars": "Koppel al uw agenda's",
|
||||||
|
"workflow_automation": "Automatisering van de werkstroom",
|
||||||
|
"scheduling_for_your_team": "Automatisering van de werkstroom",
|
||||||
"no_members_found": "Geen leden gevonden",
|
"no_members_found": "Geen leden gevonden",
|
||||||
"event_setup_length_error": "Gebeurtenisconfiguratie: de duur moet minimaal 1 minuut zijn.",
|
"event_setup_length_error": "Gebeurtenisconfiguratie: de duur moet minimaal 1 minuut zijn.",
|
||||||
"availability_schedules": "Beschikbaarheidsschema's",
|
"availability_schedules": "Beschikbaarheidsschema's",
|
||||||
@@ -2090,6 +2085,7 @@
|
|||||||
"edit_users_availability": "Beschikbaarheid van gebruiker bewerken: {{username}}",
|
"edit_users_availability": "Beschikbaarheid van gebruiker bewerken: {{username}}",
|
||||||
"resend_invitation": "Uitnodiging opnieuw versturen",
|
"resend_invitation": "Uitnodiging opnieuw versturen",
|
||||||
"invitation_resent": "De uitnodiging is opnieuw verstuurd.",
|
"invitation_resent": "De uitnodiging is opnieuw verstuurd.",
|
||||||
|
"saml_sso": "SAML",
|
||||||
"add_client": "Klant toevoegen",
|
"add_client": "Klant toevoegen",
|
||||||
"copy_client_secret_info": "Na het kopiëren van het geheim kunt u het niet meer bekijken",
|
"copy_client_secret_info": "Na het kopiëren van het geheim kunt u het niet meer bekijken",
|
||||||
"add_new_client": "Nieuwe klant toevoegen",
|
"add_new_client": "Nieuwe klant toevoegen",
|
||||||
@@ -2101,5 +2097,6 @@
|
|||||||
"lock_timezone_toggle_on_booking_page": "Tijdzone vergrendelen op boekingspagina",
|
"lock_timezone_toggle_on_booking_page": "Tijdzone vergrendelen op boekingspagina",
|
||||||
"description_lock_timezone_toggle_on_booking_page": "Om de tijdzone op de boekingspagina te vergrendelen, handig voor persoonlijke gebeurtenissen.",
|
"description_lock_timezone_toggle_on_booking_page": "Om de tijdzone op de boekingspagina te vergrendelen, handig voor persoonlijke gebeurtenissen.",
|
||||||
"extensive_whitelabeling": "Speciale onboarding en technische ondersteuning",
|
"extensive_whitelabeling": "Speciale onboarding en technische ondersteuning",
|
||||||
|
"need_help": "Hulp nodig?",
|
||||||
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Voeg uw nieuwe strings hierboven toe ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Voeg uw nieuwe strings hierboven toe ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
||||||
}
|
}
|
||||||
@@ -706,7 +706,6 @@
|
|||||||
"next_step": "Hopp over trinn",
|
"next_step": "Hopp over trinn",
|
||||||
"prev_step": "Forrige trinn",
|
"prev_step": "Forrige trinn",
|
||||||
"install": "Installer",
|
"install": "Installer",
|
||||||
"install_paid_app": "Abonner",
|
|
||||||
"installed": "Installert",
|
"installed": "Installert",
|
||||||
"active_install_one": "{{count}} aktiv installasjon",
|
"active_install_one": "{{count}} aktiv installasjon",
|
||||||
"active_install_other": "{{count}} aktive installasjoner",
|
"active_install_other": "{{count}} aktive installasjoner",
|
||||||
@@ -1035,9 +1034,6 @@
|
|||||||
"attendee_name_variable": "Deltaker",
|
"attendee_name_variable": "Deltaker",
|
||||||
"event_date_variable": "Hendelsesdato",
|
"event_date_variable": "Hendelsesdato",
|
||||||
"event_time_variable": "Tidspunkt for hendelse",
|
"event_time_variable": "Tidspunkt for hendelse",
|
||||||
"timezone_variable": "Tidssone",
|
|
||||||
"location_variable": "Sted",
|
|
||||||
"additional_notes_variable": "Tilleggsinformasjon",
|
|
||||||
"app_upgrade_description": "For å bruke denne funksjonen må du oppgradere til en Pro-konto.",
|
"app_upgrade_description": "For å bruke denne funksjonen må du oppgradere til en Pro-konto.",
|
||||||
"invalid_number": "Ugyldig telefonnummer",
|
"invalid_number": "Ugyldig telefonnummer",
|
||||||
"navigate": "Naviger",
|
"navigate": "Naviger",
|
||||||
@@ -1391,5 +1387,5 @@
|
|||||||
"configure": "Konfigurer",
|
"configure": "Konfigurer",
|
||||||
"sso_configuration": "Enkel Pålogging",
|
"sso_configuration": "Enkel Pålogging",
|
||||||
"booking_confirmation_failed": "Booking-bekreftelse feilet",
|
"booking_confirmation_failed": "Booking-bekreftelse feilet",
|
||||||
"insights_all_org_filter": "Alt"
|
"need_help": "Trenger du hjelp?"
|
||||||
}
|
}
|
||||||
@@ -666,8 +666,6 @@
|
|||||||
"managed_event_url_clarification": "Pole „username” zostanie wypełnione nazwą przypisanego użytkownika",
|
"managed_event_url_clarification": "Pole „username” zostanie wypełnione nazwą przypisanego użytkownika",
|
||||||
"assign_to": "Przypisz do",
|
"assign_to": "Przypisz do",
|
||||||
"add_members": "Dodaj członków...",
|
"add_members": "Dodaj członków...",
|
||||||
"count_members_one": "{{count}} członek",
|
|
||||||
"count_members_other": "{{count}} członków",
|
|
||||||
"no_assigned_members": "Brak przypisanych członków",
|
"no_assigned_members": "Brak przypisanych członków",
|
||||||
"assigned_to": "Przypisano do:",
|
"assigned_to": "Przypisano do:",
|
||||||
"start_assigning_members_above": "Rozpocznij przypisywanie członków powyżej",
|
"start_assigning_members_above": "Rozpocznij przypisywanie członków powyżej",
|
||||||
@@ -849,7 +847,6 @@
|
|||||||
"next_step": "Pomiń krok",
|
"next_step": "Pomiń krok",
|
||||||
"prev_step": "Poprzedni krok",
|
"prev_step": "Poprzedni krok",
|
||||||
"install": "Zainstaluj",
|
"install": "Zainstaluj",
|
||||||
"install_paid_app": "Subskrybuj",
|
|
||||||
"installed": "Zainstalowane",
|
"installed": "Zainstalowane",
|
||||||
"active_install_one": "Aktywne instalacje: {{count}}",
|
"active_install_one": "Aktywne instalacje: {{count}}",
|
||||||
"active_install_other": "Aktywne instalacje: {{count}}",
|
"active_install_other": "Aktywne instalacje: {{count}}",
|
||||||
@@ -1153,6 +1150,7 @@
|
|||||||
"active_on": "Aktywny dnia",
|
"active_on": "Aktywny dnia",
|
||||||
"workflow_updated_successfully": "Pomyślnie zaktualizowano przepływ pracy {{workflowName}}",
|
"workflow_updated_successfully": "Pomyślnie zaktualizowano przepływ pracy {{workflowName}}",
|
||||||
"premium_to_standard_username_description": "To standardowa nazwa użytkownika i aktualizacja spowoduje przejście do rozliczenia za zmianę wersji na niższą.",
|
"premium_to_standard_username_description": "To standardowa nazwa użytkownika i aktualizacja spowoduje przejście do rozliczenia za zmianę wersji na niższą.",
|
||||||
|
"premium_username": "To nazwa użytkownika premium, możesz ją mieć za {{price}}.",
|
||||||
"current": "Bieżąca",
|
"current": "Bieżąca",
|
||||||
"premium": "Premium",
|
"premium": "Premium",
|
||||||
"standard": "Standardowa",
|
"standard": "Standardowa",
|
||||||
@@ -1218,9 +1216,6 @@
|
|||||||
"attendee_name_variable": "Uczestnik",
|
"attendee_name_variable": "Uczestnik",
|
||||||
"event_date_variable": "Data wydarzenia",
|
"event_date_variable": "Data wydarzenia",
|
||||||
"event_time_variable": "Godzina wydarzenia",
|
"event_time_variable": "Godzina wydarzenia",
|
||||||
"timezone_variable": "Strefa Czasowa",
|
|
||||||
"location_variable": "Lokalizacja",
|
|
||||||
"additional_notes_variable": "Dodatkowe uwagi",
|
|
||||||
"organizer_name_variable": "Nazwa organizatora",
|
"organizer_name_variable": "Nazwa organizatora",
|
||||||
"app_upgrade_description": "Aby korzystać z tej funkcji, musisz uaktualnić do konta Pro.",
|
"app_upgrade_description": "Aby korzystać z tej funkcji, musisz uaktualnić do konta Pro.",
|
||||||
"invalid_number": "Nieprawidłowy numer telefonu",
|
"invalid_number": "Nieprawidłowy numer telefonu",
|
||||||
@@ -1536,6 +1531,7 @@
|
|||||||
"you": "Ty",
|
"you": "Ty",
|
||||||
"resend_email": "Wyślij ponownie wiadomość e-mail",
|
"resend_email": "Wyślij ponownie wiadomość e-mail",
|
||||||
"member_already_invited": "Członek został już zaproszony",
|
"member_already_invited": "Członek został już zaproszony",
|
||||||
|
"already_in_use_error": "Ta nazwa użytkownika jest już używana.",
|
||||||
"enter_email_or_username": "Wprowadź adres e-mail lub nazwę użytkownika",
|
"enter_email_or_username": "Wprowadź adres e-mail lub nazwę użytkownika",
|
||||||
"team_name_taken": "Ta nazwa jest już zajęta",
|
"team_name_taken": "Ta nazwa jest już zajęta",
|
||||||
"must_enter_team_name": "Musisz wprowadzić nazwę zespołu",
|
"must_enter_team_name": "Musisz wprowadzić nazwę zespołu",
|
||||||
@@ -1986,14 +1982,11 @@
|
|||||||
"google_new_spam_policy": "Nowa polityka firmy Google dotycząca spamu może uniemożliwić Ci otrzymywanie powiadomień na temat tej rezerwacji w wiadomościach e-mail i z kalendarza.",
|
"google_new_spam_policy": "Nowa polityka firmy Google dotycząca spamu może uniemożliwić Ci otrzymywanie powiadomień na temat tej rezerwacji w wiadomościach e-mail i z kalendarza.",
|
||||||
"resolve": "Rozwiąż problem",
|
"resolve": "Rozwiąż problem",
|
||||||
"no_organization_slug": "Podczas tworzenia zespołów tej organizacji wystąpił błąd. Brakujący slug adresu URL.",
|
"no_organization_slug": "Podczas tworzenia zespołów tej organizacji wystąpił błąd. Brakujący slug adresu URL.",
|
||||||
"org_name": "Nazwa organizacji",
|
|
||||||
"org_url": "Adres URL organizacji",
|
|
||||||
"copy_link_org": "Skopiuj link do organizacji",
|
"copy_link_org": "Skopiuj link do organizacji",
|
||||||
"404_the_org": "Organizacja",
|
"404_the_org": "Organizacja",
|
||||||
"404_the_team": "Zespół",
|
"404_the_team": "Zespół",
|
||||||
"404_claim_entity_org": "Zajmij subdomenę dla Twojej organizacji",
|
"404_claim_entity_org": "Zajmij subdomenę dla Twojej organizacji",
|
||||||
"404_claim_entity_team": "Dołącz do tego zespołu i zacznij wspólnie zarządzać harmonogramami",
|
"404_claim_entity_team": "Dołącz do tego zespołu i zacznij wspólnie zarządzać harmonogramami",
|
||||||
"insights_all_org_filter": "Wszystkie",
|
|
||||||
"insights_team_filter": "Zespół: {{teamName}}",
|
"insights_team_filter": "Zespół: {{teamName}}",
|
||||||
"insights_user_filter": "Użytkownik: {{userName}}",
|
"insights_user_filter": "Użytkownik: {{userName}}",
|
||||||
"insights_subtitle": "Wyświetl wskaźniki Insights rezerwacji z różnych wydarzeń",
|
"insights_subtitle": "Wyświetl wskaźniki Insights rezerwacji z różnych wydarzeń",
|
||||||
@@ -2005,7 +1998,6 @@
|
|||||||
"select_date": "Wybierz datę",
|
"select_date": "Wybierz datę",
|
||||||
"see_all_available_times": "Zobacz wszystkie dostępne godziny",
|
"see_all_available_times": "Zobacz wszystkie dostępne godziny",
|
||||||
"org_team_names_example": "np. zespół marketingowy",
|
"org_team_names_example": "np. zespół marketingowy",
|
||||||
"org_team_names_example_1": "np. zespół marketingowy",
|
|
||||||
"org_team_names_example_2": "np. zespół ds. sprzedaży",
|
"org_team_names_example_2": "np. zespół ds. sprzedaży",
|
||||||
"org_team_names_example_3": "np. zespół projektowy",
|
"org_team_names_example_3": "np. zespół projektowy",
|
||||||
"org_team_names_example_4": "np. zespół ds. inżynierii",
|
"org_team_names_example_4": "np. zespół ds. inżynierii",
|
||||||
@@ -2067,6 +2059,9 @@
|
|||||||
"include_calendar_event": "Uwzględnij wydarzenie z kalendarza",
|
"include_calendar_event": "Uwzględnij wydarzenie z kalendarza",
|
||||||
"oAuth": "OAuth",
|
"oAuth": "OAuth",
|
||||||
"recently_added": "Niedawno dodane",
|
"recently_added": "Niedawno dodane",
|
||||||
|
"connect_all_calendars": "Podłącz wszystkie swoje kalendarze",
|
||||||
|
"workflow_automation": "Automatyzacja przepływu pracy",
|
||||||
|
"scheduling_for_your_team": "Automatyzacja przepływu pracy",
|
||||||
"no_members_found": "Nie znaleziono członków",
|
"no_members_found": "Nie znaleziono członków",
|
||||||
"event_setup_length_error": "Konfiguracja wydarzenia: czas trwania musi wynosić co najmniej minutę.",
|
"event_setup_length_error": "Konfiguracja wydarzenia: czas trwania musi wynosić co najmniej minutę.",
|
||||||
"availability_schedules": "Harmonogramy dostępności",
|
"availability_schedules": "Harmonogramy dostępności",
|
||||||
@@ -2090,6 +2085,7 @@
|
|||||||
"edit_users_availability": "Edytuj dostępność użytkownika: {{username}}",
|
"edit_users_availability": "Edytuj dostępność użytkownika: {{username}}",
|
||||||
"resend_invitation": "Ponownie wyślij zaproszenie",
|
"resend_invitation": "Ponownie wyślij zaproszenie",
|
||||||
"invitation_resent": "Zaproszenie zostało wysłane ponownie.",
|
"invitation_resent": "Zaproszenie zostało wysłane ponownie.",
|
||||||
|
"saml_sso": "SAML",
|
||||||
"add_client": "Dodaj klienta",
|
"add_client": "Dodaj klienta",
|
||||||
"copy_client_secret_info": "Po skopiowaniu sekretu nie będzie można go już przeglądać",
|
"copy_client_secret_info": "Po skopiowaniu sekretu nie będzie można go już przeglądać",
|
||||||
"add_new_client": "Dodaj nowego klienta",
|
"add_new_client": "Dodaj nowego klienta",
|
||||||
@@ -2101,5 +2097,6 @@
|
|||||||
"lock_timezone_toggle_on_booking_page": "Zablokuj strefę czasową na stronie rezerwacji",
|
"lock_timezone_toggle_on_booking_page": "Zablokuj strefę czasową na stronie rezerwacji",
|
||||||
"description_lock_timezone_toggle_on_booking_page": "Aby zablokować strefę czasową na stronie rezerwacji (przydatne dla wydarzeń stacjonarnych).",
|
"description_lock_timezone_toggle_on_booking_page": "Aby zablokować strefę czasową na stronie rezerwacji (przydatne dla wydarzeń stacjonarnych).",
|
||||||
"extensive_whitelabeling": "Dedykowane wsparcie w zakresie wdrożenia i obsługi technicznej",
|
"extensive_whitelabeling": "Dedykowane wsparcie w zakresie wdrożenia i obsługi technicznej",
|
||||||
|
"need_help": "Potrzebujesz pomocy?",
|
||||||
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Dodaj nowe ciągi powyżej ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Dodaj nowe ciągi powyżej ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
||||||
}
|
}
|
||||||
@@ -666,8 +666,6 @@
|
|||||||
"managed_event_url_clarification": "o \"nome de usuário\" será preenchido com o nome de usuário dos membros atribuídos",
|
"managed_event_url_clarification": "o \"nome de usuário\" será preenchido com o nome de usuário dos membros atribuídos",
|
||||||
"assign_to": "Atribuir a",
|
"assign_to": "Atribuir a",
|
||||||
"add_members": "Adicionar membros...",
|
"add_members": "Adicionar membros...",
|
||||||
"count_members_one": "{{count}} membro",
|
|
||||||
"count_members_other": "{{count}} membros",
|
|
||||||
"no_assigned_members": "Nenhum membro atribuído",
|
"no_assigned_members": "Nenhum membro atribuído",
|
||||||
"assigned_to": "Atribuído a",
|
"assigned_to": "Atribuído a",
|
||||||
"start_assigning_members_above": "Começar a atribuir os membros acima",
|
"start_assigning_members_above": "Começar a atribuir os membros acima",
|
||||||
@@ -849,7 +847,6 @@
|
|||||||
"next_step": "Ignorar passo",
|
"next_step": "Ignorar passo",
|
||||||
"prev_step": "Passo anterior",
|
"prev_step": "Passo anterior",
|
||||||
"install": "Instalar",
|
"install": "Instalar",
|
||||||
"install_paid_app": "Assinar",
|
|
||||||
"installed": "Instalado",
|
"installed": "Instalado",
|
||||||
"active_install_one": "{{count}} instalação ativa",
|
"active_install_one": "{{count}} instalação ativa",
|
||||||
"active_install_other": "{{count}} instalações ativas",
|
"active_install_other": "{{count}} instalações ativas",
|
||||||
@@ -1153,6 +1150,7 @@
|
|||||||
"active_on": "Ativar em",
|
"active_on": "Ativar em",
|
||||||
"workflow_updated_successfully": "Fluxo de trabalho {{workflowName}} atualizado com sucesso",
|
"workflow_updated_successfully": "Fluxo de trabalho {{workflowName}} atualizado com sucesso",
|
||||||
"premium_to_standard_username_description": "Este é um nome de usuário padrão. Para atualizá-lo, levaremos você para fazer downgrade na cobrança.",
|
"premium_to_standard_username_description": "Este é um nome de usuário padrão. Para atualizá-lo, levaremos você para fazer downgrade na cobrança.",
|
||||||
|
"premium_username": "Este é um nome de usuário premium, obtenha o seu por {{price}}",
|
||||||
"current": "Atual",
|
"current": "Atual",
|
||||||
"premium": "premium",
|
"premium": "premium",
|
||||||
"standard": "padrão",
|
"standard": "padrão",
|
||||||
@@ -1218,9 +1216,6 @@
|
|||||||
"attendee_name_variable": "Nome do participante",
|
"attendee_name_variable": "Nome do participante",
|
||||||
"event_date_variable": "Data do evento",
|
"event_date_variable": "Data do evento",
|
||||||
"event_time_variable": "Horário do evento",
|
"event_time_variable": "Horário do evento",
|
||||||
"timezone_variable": "Fuso Horário",
|
|
||||||
"location_variable": "Local",
|
|
||||||
"additional_notes_variable": "Observações adicionais",
|
|
||||||
"organizer_name_variable": "Nome do organizador",
|
"organizer_name_variable": "Nome do organizador",
|
||||||
"app_upgrade_description": "Para usar este recurso, atualize para uma conta Pro.",
|
"app_upgrade_description": "Para usar este recurso, atualize para uma conta Pro.",
|
||||||
"invalid_number": "Número de telefone inválido",
|
"invalid_number": "Número de telefone inválido",
|
||||||
@@ -1536,6 +1531,7 @@
|
|||||||
"you": "Você",
|
"you": "Você",
|
||||||
"resend_email": "Reenviar e-mail",
|
"resend_email": "Reenviar e-mail",
|
||||||
"member_already_invited": "O membro já foi convidado",
|
"member_already_invited": "O membro já foi convidado",
|
||||||
|
"already_in_use_error": "Este nome de usuário já está em uso",
|
||||||
"enter_email_or_username": "Insira um e-mail ou nome de usuário",
|
"enter_email_or_username": "Insira um e-mail ou nome de usuário",
|
||||||
"team_name_taken": "Este nome já está em uso",
|
"team_name_taken": "Este nome já está em uso",
|
||||||
"must_enter_team_name": "É preciso inserir um nome de equipe",
|
"must_enter_team_name": "É preciso inserir um nome de equipe",
|
||||||
@@ -1986,14 +1982,11 @@
|
|||||||
"google_new_spam_policy": "A nova política de spams do Google pode impedir o recebimento de notificações do calendário e e-mail sobre esta reserva.",
|
"google_new_spam_policy": "A nova política de spams do Google pode impedir o recebimento de notificações do calendário e e-mail sobre esta reserva.",
|
||||||
"resolve": "Resolver",
|
"resolve": "Resolver",
|
||||||
"no_organization_slug": "Houve um erro ao criar equipes para esta organizazção. Falta o campo de dados dinâmico do URL.",
|
"no_organization_slug": "Houve um erro ao criar equipes para esta organizazção. Falta o campo de dados dinâmico do URL.",
|
||||||
"org_name": "Nome da organização",
|
|
||||||
"org_url": "URL da organização",
|
|
||||||
"copy_link_org": "Copiar link para a organização",
|
"copy_link_org": "Copiar link para a organização",
|
||||||
"404_the_org": "A organização",
|
"404_the_org": "A organização",
|
||||||
"404_the_team": "A equipe",
|
"404_the_team": "A equipe",
|
||||||
"404_claim_entity_org": "Solicite o subdomínio para a sua organização",
|
"404_claim_entity_org": "Solicite o subdomínio para a sua organização",
|
||||||
"404_claim_entity_team": "Solicite esta equipe e comece a gerenciar agendamentos coletivamente",
|
"404_claim_entity_team": "Solicite esta equipe e comece a gerenciar agendamentos coletivamente",
|
||||||
"insights_all_org_filter": "Todos os apps",
|
|
||||||
"insights_team_filter": "Equipe: {{teamName}}",
|
"insights_team_filter": "Equipe: {{teamName}}",
|
||||||
"insights_user_filter": "Usuário: {{userName}}",
|
"insights_user_filter": "Usuário: {{userName}}",
|
||||||
"insights_subtitle": "Veja insights de reserva em seus eventos",
|
"insights_subtitle": "Veja insights de reserva em seus eventos",
|
||||||
@@ -2005,7 +1998,6 @@
|
|||||||
"select_date": "Selecione a data",
|
"select_date": "Selecione a data",
|
||||||
"see_all_available_times": "Veja todos os horários disponíveis",
|
"see_all_available_times": "Veja todos os horários disponíveis",
|
||||||
"org_team_names_example": "ex.: Time de Marketing",
|
"org_team_names_example": "ex.: Time de Marketing",
|
||||||
"org_team_names_example_1": "ex.: Time de Marketing",
|
|
||||||
"org_team_names_example_2": "ex: Time de Vendas",
|
"org_team_names_example_2": "ex: Time de Vendas",
|
||||||
"org_team_names_example_3": "ex: Time de Design",
|
"org_team_names_example_3": "ex: Time de Design",
|
||||||
"org_team_names_example_4": "ex: Time de Engenharia",
|
"org_team_names_example_4": "ex: Time de Engenharia",
|
||||||
@@ -2067,6 +2059,9 @@
|
|||||||
"include_calendar_event": "Incluir evento do calendário",
|
"include_calendar_event": "Incluir evento do calendário",
|
||||||
"oAuth": "OAuth",
|
"oAuth": "OAuth",
|
||||||
"recently_added": "Adicionou recentemente",
|
"recently_added": "Adicionou recentemente",
|
||||||
|
"connect_all_calendars": "Conecte todos os seus calendários",
|
||||||
|
"workflow_automation": "Automação de fluxo de trabalho",
|
||||||
|
"scheduling_for_your_team": "Automação de fluxo de trabalho",
|
||||||
"no_members_found": "Nenhum membro encontrado",
|
"no_members_found": "Nenhum membro encontrado",
|
||||||
"event_setup_length_error": "Configuração do evento: deve ter pelo menos 1 minuto de duração.",
|
"event_setup_length_error": "Configuração do evento: deve ter pelo menos 1 minuto de duração.",
|
||||||
"availability_schedules": "Agendamentos de disponibilidade",
|
"availability_schedules": "Agendamentos de disponibilidade",
|
||||||
@@ -2090,6 +2085,7 @@
|
|||||||
"edit_users_availability": "Editar disponibilidade do usuário: {{username}}",
|
"edit_users_availability": "Editar disponibilidade do usuário: {{username}}",
|
||||||
"resend_invitation": "Reenviar convite",
|
"resend_invitation": "Reenviar convite",
|
||||||
"invitation_resent": "O convite foi reenviado.",
|
"invitation_resent": "O convite foi reenviado.",
|
||||||
|
"saml_sso": "SAML",
|
||||||
"add_client": "Adicionar cliente",
|
"add_client": "Adicionar cliente",
|
||||||
"copy_client_secret_info": "Depois de copiar o segredo, você não poderá mais visualizá-lo",
|
"copy_client_secret_info": "Depois de copiar o segredo, você não poderá mais visualizá-lo",
|
||||||
"add_new_client": "Adicionar novo cliente",
|
"add_new_client": "Adicionar novo cliente",
|
||||||
@@ -2101,5 +2097,6 @@
|
|||||||
"lock_timezone_toggle_on_booking_page": "Bloquear fuso horário na página de reserva",
|
"lock_timezone_toggle_on_booking_page": "Bloquear fuso horário na página de reserva",
|
||||||
"description_lock_timezone_toggle_on_booking_page": "Bloquear o fuso horário na página de reservas, útil para eventos presenciais.",
|
"description_lock_timezone_toggle_on_booking_page": "Bloquear o fuso horário na página de reservas, útil para eventos presenciais.",
|
||||||
"extensive_whitelabeling": "Marca própria abrangente",
|
"extensive_whitelabeling": "Marca própria abrangente",
|
||||||
|
"need_help": "Precisa de ajuda?",
|
||||||
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Adicione suas novas strings aqui em cima ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Adicione suas novas strings aqui em cima ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
||||||
}
|
}
|
||||||
@@ -666,8 +666,6 @@
|
|||||||
"managed_event_url_clarification": "\"nome-de-utilizador\" será substituído pelo nome de utilizador dos membros atribuídos",
|
"managed_event_url_clarification": "\"nome-de-utilizador\" será substituído pelo nome de utilizador dos membros atribuídos",
|
||||||
"assign_to": "Atribuir a",
|
"assign_to": "Atribuir a",
|
||||||
"add_members": "Adicionar membros...",
|
"add_members": "Adicionar membros...",
|
||||||
"count_members_one": "{{count}} membro",
|
|
||||||
"count_members_other": "{{count}} membros",
|
|
||||||
"no_assigned_members": "Sem membros atribuídos",
|
"no_assigned_members": "Sem membros atribuídos",
|
||||||
"assigned_to": "Atribuído a",
|
"assigned_to": "Atribuído a",
|
||||||
"start_assigning_members_above": "Comece a atribuir membros acima",
|
"start_assigning_members_above": "Comece a atribuir membros acima",
|
||||||
@@ -849,7 +847,6 @@
|
|||||||
"next_step": "Ignorar passo",
|
"next_step": "Ignorar passo",
|
||||||
"prev_step": "Passo anterior",
|
"prev_step": "Passo anterior",
|
||||||
"install": "Instalar",
|
"install": "Instalar",
|
||||||
"install_paid_app": "Subscrever",
|
|
||||||
"installed": "Instalado",
|
"installed": "Instalado",
|
||||||
"active_install_one": "{{count}} instalação activa",
|
"active_install_one": "{{count}} instalação activa",
|
||||||
"active_install_other": "{{count}} instalações activas",
|
"active_install_other": "{{count}} instalações activas",
|
||||||
@@ -1153,6 +1150,7 @@
|
|||||||
"active_on": "Activo em",
|
"active_on": "Activo em",
|
||||||
"workflow_updated_successfully": "Fluxo de trabalho {{workflowName}} actualizado com sucesso",
|
"workflow_updated_successfully": "Fluxo de trabalho {{workflowName}} actualizado com sucesso",
|
||||||
"premium_to_standard_username_description": "Este é um nome de utilizador padrão, e ao atualizar irá para a faturação para fazer o downgrade.",
|
"premium_to_standard_username_description": "Este é um nome de utilizador padrão, e ao atualizar irá para a faturação para fazer o downgrade.",
|
||||||
|
"premium_username": "Este é um nome de utilizador premium. Obtenha o seu por {{price}}",
|
||||||
"current": "Atual",
|
"current": "Atual",
|
||||||
"premium": "premium",
|
"premium": "premium",
|
||||||
"standard": "padrão",
|
"standard": "padrão",
|
||||||
@@ -1218,9 +1216,6 @@
|
|||||||
"attendee_name_variable": "Participante",
|
"attendee_name_variable": "Participante",
|
||||||
"event_date_variable": "Data do evento",
|
"event_date_variable": "Data do evento",
|
||||||
"event_time_variable": "Hora do evento",
|
"event_time_variable": "Hora do evento",
|
||||||
"timezone_variable": "Fuso Horário",
|
|
||||||
"location_variable": "Localização",
|
|
||||||
"additional_notes_variable": "Notas Adicionais",
|
|
||||||
"organizer_name_variable": "Nome do organizador",
|
"organizer_name_variable": "Nome do organizador",
|
||||||
"app_upgrade_description": "Para usar esta funcionalidade, tem de actualizar para uma conta Pro.",
|
"app_upgrade_description": "Para usar esta funcionalidade, tem de actualizar para uma conta Pro.",
|
||||||
"invalid_number": "Número de telefone inválido",
|
"invalid_number": "Número de telefone inválido",
|
||||||
@@ -1536,6 +1531,7 @@
|
|||||||
"you": "Você",
|
"you": "Você",
|
||||||
"resend_email": "Reenviar e-mail",
|
"resend_email": "Reenviar e-mail",
|
||||||
"member_already_invited": "O membro já foi convidado",
|
"member_already_invited": "O membro já foi convidado",
|
||||||
|
"already_in_use_error": "O nome de utilizador já está a ser utilizado",
|
||||||
"enter_email_or_username": "Especifique um e-mail ou nome de utilizador",
|
"enter_email_or_username": "Especifique um e-mail ou nome de utilizador",
|
||||||
"team_name_taken": "Este nome já está a ser utilizado",
|
"team_name_taken": "Este nome já está a ser utilizado",
|
||||||
"must_enter_team_name": "Deve especificar um nome para a equipa",
|
"must_enter_team_name": "Deve especificar um nome para a equipa",
|
||||||
@@ -1986,14 +1982,11 @@
|
|||||||
"google_new_spam_policy": "A nova política de SPAM do Google pode impedir que receba notificações de e-mail e de agenda sobre esta reserva.",
|
"google_new_spam_policy": "A nova política de SPAM do Google pode impedir que receba notificações de e-mail e de agenda sobre esta reserva.",
|
||||||
"resolve": "Resolver",
|
"resolve": "Resolver",
|
||||||
"no_organization_slug": "Ocorreu um erro ao criar equipas para esta organização. Falta o slug do URL.",
|
"no_organization_slug": "Ocorreu um erro ao criar equipas para esta organização. Falta o slug do URL.",
|
||||||
"org_name": "Nome da organização",
|
|
||||||
"org_url": "URL da Organização",
|
|
||||||
"copy_link_org": "Copiar a ligação para a organização",
|
"copy_link_org": "Copiar a ligação para a organização",
|
||||||
"404_the_org": "A organização",
|
"404_the_org": "A organização",
|
||||||
"404_the_team": "A equipa",
|
"404_the_team": "A equipa",
|
||||||
"404_claim_entity_org": "Reivindicar o seu subdomínio para a sua organização",
|
"404_claim_entity_org": "Reivindicar o seu subdomínio para a sua organização",
|
||||||
"404_claim_entity_team": "Reivindicar esta equipa e começar a gerir os horários em grupo",
|
"404_claim_entity_team": "Reivindicar esta equipa e começar a gerir os horários em grupo",
|
||||||
"insights_all_org_filter": "Todos as aplicações",
|
|
||||||
"insights_team_filter": "Equipa: {{teamName}}",
|
"insights_team_filter": "Equipa: {{teamName}}",
|
||||||
"insights_user_filter": "Utilizador: {{userName}}",
|
"insights_user_filter": "Utilizador: {{userName}}",
|
||||||
"insights_subtitle": "Ver informações sobre reservas nos seus eventos",
|
"insights_subtitle": "Ver informações sobre reservas nos seus eventos",
|
||||||
@@ -2005,7 +1998,6 @@
|
|||||||
"select_date": "Selecionar data",
|
"select_date": "Selecionar data",
|
||||||
"see_all_available_times": "Ver todos os horários disponíveis",
|
"see_all_available_times": "Ver todos os horários disponíveis",
|
||||||
"org_team_names_example": "Por exemplo, Equipa de Marketing",
|
"org_team_names_example": "Por exemplo, Equipa de Marketing",
|
||||||
"org_team_names_example_1": "Por exemplo, Equipa de Marketing",
|
|
||||||
"org_team_names_example_2": "Por exemplo, Equipa de Vendas",
|
"org_team_names_example_2": "Por exemplo, Equipa de Vendas",
|
||||||
"org_team_names_example_3": "Por exemplo, Equipa de Design",
|
"org_team_names_example_3": "Por exemplo, Equipa de Design",
|
||||||
"org_team_names_example_4": "Por exemplo, Equipa de Engenharia",
|
"org_team_names_example_4": "Por exemplo, Equipa de Engenharia",
|
||||||
@@ -2067,6 +2059,9 @@
|
|||||||
"include_calendar_event": "Incluir evento no calendário",
|
"include_calendar_event": "Incluir evento no calendário",
|
||||||
"oAuth": "OAuth",
|
"oAuth": "OAuth",
|
||||||
"recently_added": "Adicionados recentemente",
|
"recently_added": "Adicionados recentemente",
|
||||||
|
"connect_all_calendars": "Associe todos os seus calendários",
|
||||||
|
"workflow_automation": "Automação de fluxo de trabalho",
|
||||||
|
"scheduling_for_your_team": "Automação de fluxo de trabalho",
|
||||||
"no_members_found": "Nenhum membro encontrado",
|
"no_members_found": "Nenhum membro encontrado",
|
||||||
"event_setup_length_error": "Configuração do Evento: a duração deve ser de, pelo menos, 1 minuto.",
|
"event_setup_length_error": "Configuração do Evento: a duração deve ser de, pelo menos, 1 minuto.",
|
||||||
"availability_schedules": "Horários de Disponibilidade",
|
"availability_schedules": "Horários de Disponibilidade",
|
||||||
@@ -2090,6 +2085,7 @@
|
|||||||
"edit_users_availability": "Editar a disponibilidade do utilizador: {{username}}",
|
"edit_users_availability": "Editar a disponibilidade do utilizador: {{username}}",
|
||||||
"resend_invitation": "Reenviar convite",
|
"resend_invitation": "Reenviar convite",
|
||||||
"invitation_resent": "O convite foi reenviado.",
|
"invitation_resent": "O convite foi reenviado.",
|
||||||
|
"saml_sso": "SAML",
|
||||||
"add_client": "Adicionar cliente",
|
"add_client": "Adicionar cliente",
|
||||||
"copy_client_secret_info": "Após copiar o segredo, não será possível ver o mesmo novamente",
|
"copy_client_secret_info": "Após copiar o segredo, não será possível ver o mesmo novamente",
|
||||||
"add_new_client": "Adicionar novo Cliente",
|
"add_new_client": "Adicionar novo Cliente",
|
||||||
@@ -2101,5 +2097,6 @@
|
|||||||
"lock_timezone_toggle_on_booking_page": "Bloquear fuso horário na página de reserva",
|
"lock_timezone_toggle_on_booking_page": "Bloquear fuso horário na página de reserva",
|
||||||
"description_lock_timezone_toggle_on_booking_page": "Para bloquear o fuso horário na página de reservas. Útil para eventos presenciais.",
|
"description_lock_timezone_toggle_on_booking_page": "Para bloquear o fuso horário na página de reservas. Útil para eventos presenciais.",
|
||||||
"extensive_whitelabeling": "Apoio dedicado à integração e engenharia",
|
"extensive_whitelabeling": "Apoio dedicado à integração e engenharia",
|
||||||
|
"need_help": "Precisa de ajuda?",
|
||||||
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Add your new strings above here ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Add your new strings above here ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
||||||
}
|
}
|
||||||
@@ -666,8 +666,6 @@
|
|||||||
"managed_event_url_clarification": "Câmpul „username” va fi completat cu numele de utilizator ale membrilor desemnați",
|
"managed_event_url_clarification": "Câmpul „username” va fi completat cu numele de utilizator ale membrilor desemnați",
|
||||||
"assign_to": "Alocați la",
|
"assign_to": "Alocați la",
|
||||||
"add_members": "Adăugare membri...",
|
"add_members": "Adăugare membri...",
|
||||||
"count_members_one": "{{count}} membru",
|
|
||||||
"count_members_other": "{{count}} (de) membri",
|
|
||||||
"no_assigned_members": "Niciun membru alocat",
|
"no_assigned_members": "Niciun membru alocat",
|
||||||
"assigned_to": "Alocat la",
|
"assigned_to": "Alocat la",
|
||||||
"start_assigning_members_above": "Începeți să alocați membri mai sus",
|
"start_assigning_members_above": "Începeți să alocați membri mai sus",
|
||||||
@@ -849,7 +847,6 @@
|
|||||||
"next_step": "Sari peste",
|
"next_step": "Sari peste",
|
||||||
"prev_step": "Pas anterior",
|
"prev_step": "Pas anterior",
|
||||||
"install": "Instalați",
|
"install": "Instalați",
|
||||||
"install_paid_app": "Abonare",
|
|
||||||
"installed": "Instalat",
|
"installed": "Instalat",
|
||||||
"active_install_one": "{{count}} instalare activă",
|
"active_install_one": "{{count}} instalare activă",
|
||||||
"active_install_other": "{{count}} (de) instalări active",
|
"active_install_other": "{{count}} (de) instalări active",
|
||||||
@@ -1153,6 +1150,7 @@
|
|||||||
"active_on": "Activ pe",
|
"active_on": "Activ pe",
|
||||||
"workflow_updated_successfully": "Fluxul de lucru {{workflowName}} a fost actualizat cu succes",
|
"workflow_updated_successfully": "Fluxul de lucru {{workflowName}} a fost actualizat cu succes",
|
||||||
"premium_to_standard_username_description": "Acesta este un nume de utilizator standard, iar actualizarea vă va duce la facturare pentru retrogradare.",
|
"premium_to_standard_username_description": "Acesta este un nume de utilizator standard, iar actualizarea vă va duce la facturare pentru retrogradare.",
|
||||||
|
"premium_username": "Acesta este un nume de utilizator premium. Puteți obține unul pentru {{price}}",
|
||||||
"current": "Actual",
|
"current": "Actual",
|
||||||
"premium": "premium",
|
"premium": "premium",
|
||||||
"standard": "standard",
|
"standard": "standard",
|
||||||
@@ -1218,9 +1216,6 @@
|
|||||||
"attendee_name_variable": "Participant",
|
"attendee_name_variable": "Participant",
|
||||||
"event_date_variable": "Dată eveniment",
|
"event_date_variable": "Dată eveniment",
|
||||||
"event_time_variable": "Oră eveniment",
|
"event_time_variable": "Oră eveniment",
|
||||||
"timezone_variable": "Timezone",
|
|
||||||
"location_variable": "Loc",
|
|
||||||
"additional_notes_variable": "Note suplimentare",
|
|
||||||
"organizer_name_variable": "Nume organizator",
|
"organizer_name_variable": "Nume organizator",
|
||||||
"app_upgrade_description": "Pentru a utiliza această caracteristică, trebuie să faceți upgrade la un cont Pro.",
|
"app_upgrade_description": "Pentru a utiliza această caracteristică, trebuie să faceți upgrade la un cont Pro.",
|
||||||
"invalid_number": "Număr de telefon nevalid",
|
"invalid_number": "Număr de telefon nevalid",
|
||||||
@@ -1536,6 +1531,7 @@
|
|||||||
"you": "Dvs.",
|
"you": "Dvs.",
|
||||||
"resend_email": "Retrimitere e-mail",
|
"resend_email": "Retrimitere e-mail",
|
||||||
"member_already_invited": "Membrul a fost deja invitat",
|
"member_already_invited": "Membrul a fost deja invitat",
|
||||||
|
"already_in_use_error": "Numele de utilizator există deja",
|
||||||
"enter_email_or_username": "Introduceți un e-mail sau un nume de utilizator",
|
"enter_email_or_username": "Introduceți un e-mail sau un nume de utilizator",
|
||||||
"team_name_taken": "Acest nume este folosit deja",
|
"team_name_taken": "Acest nume este folosit deja",
|
||||||
"must_enter_team_name": "Trebuie să introduceți un nume de echipă",
|
"must_enter_team_name": "Trebuie să introduceți un nume de echipă",
|
||||||
@@ -1986,14 +1982,11 @@
|
|||||||
"google_new_spam_policy": "Noua politică Google privind spamul vă poate împiedica să primiți orice notificare prin e-mail sau calendar cu privire la această rezervare.",
|
"google_new_spam_policy": "Noua politică Google privind spamul vă poate împiedica să primiți orice notificare prin e-mail sau calendar cu privire la această rezervare.",
|
||||||
"resolve": "Rezolvați",
|
"resolve": "Rezolvați",
|
||||||
"no_organization_slug": "A survenit o eroare la crearea echipelor pentru această organizație. Slug URL lipsă.",
|
"no_organization_slug": "A survenit o eroare la crearea echipelor pentru această organizație. Slug URL lipsă.",
|
||||||
"org_name": "Denumire organizație",
|
|
||||||
"org_url": "Adresă URL organizație",
|
|
||||||
"copy_link_org": "Copiați linkul către organizație",
|
"copy_link_org": "Copiați linkul către organizație",
|
||||||
"404_the_org": "Organizația",
|
"404_the_org": "Organizația",
|
||||||
"404_the_team": "Echipa",
|
"404_the_team": "Echipa",
|
||||||
"404_claim_entity_org": "Revendicați subdomeniul pentru organizația dvs.",
|
"404_claim_entity_org": "Revendicați subdomeniul pentru organizația dvs.",
|
||||||
"404_claim_entity_team": "Solicitați să faceți parte din această echipă și începeți să gestionați programe în mod colectiv",
|
"404_claim_entity_team": "Solicitați să faceți parte din această echipă și începeți să gestionați programe în mod colectiv",
|
||||||
"insights_all_org_filter": "Toate aplicațiile",
|
|
||||||
"insights_team_filter": "Echipă: {{teamName}}",
|
"insights_team_filter": "Echipă: {{teamName}}",
|
||||||
"insights_user_filter": "Utilizator: {{userName}}",
|
"insights_user_filter": "Utilizator: {{userName}}",
|
||||||
"insights_subtitle": "Vizualizați date Insights cu privire la rezervări pentru toate evenimentele dvs.",
|
"insights_subtitle": "Vizualizați date Insights cu privire la rezervări pentru toate evenimentele dvs.",
|
||||||
@@ -2005,7 +1998,6 @@
|
|||||||
"select_date": "Selectați data",
|
"select_date": "Selectați data",
|
||||||
"see_all_available_times": "Vedeți toate orele disponibile",
|
"see_all_available_times": "Vedeți toate orele disponibile",
|
||||||
"org_team_names_example": "de ex. echipa de marketing",
|
"org_team_names_example": "de ex. echipa de marketing",
|
||||||
"org_team_names_example_1": "de ex. echipa de marketing",
|
|
||||||
"org_team_names_example_2": "de ex. echipa de vânzări",
|
"org_team_names_example_2": "de ex. echipa de vânzări",
|
||||||
"org_team_names_example_3": "de ex. echipa de design",
|
"org_team_names_example_3": "de ex. echipa de design",
|
||||||
"org_team_names_example_4": "de ex. echipa de inginerie",
|
"org_team_names_example_4": "de ex. echipa de inginerie",
|
||||||
@@ -2067,6 +2059,9 @@
|
|||||||
"include_calendar_event": "Includeți eveniment din calendar",
|
"include_calendar_event": "Includeți eveniment din calendar",
|
||||||
"oAuth": "OAuth",
|
"oAuth": "OAuth",
|
||||||
"recently_added": "Adăugate recent",
|
"recently_added": "Adăugate recent",
|
||||||
|
"connect_all_calendars": "Conectați-vă toate calendarele",
|
||||||
|
"workflow_automation": "Automatizarea fluxului de lucru",
|
||||||
|
"scheduling_for_your_team": "Automatizarea fluxului de lucru",
|
||||||
"no_members_found": "Nu s-a găsit niciun membru",
|
"no_members_found": "Nu s-a găsit niciun membru",
|
||||||
"event_setup_length_error": "Configurare eveniment: Durata trebuie să fie de cel puțin 1 minut.",
|
"event_setup_length_error": "Configurare eveniment: Durata trebuie să fie de cel puțin 1 minut.",
|
||||||
"availability_schedules": "Programe de disponibilitate",
|
"availability_schedules": "Programe de disponibilitate",
|
||||||
@@ -2090,6 +2085,7 @@
|
|||||||
"edit_users_availability": "Editați disponibilitatea utilizatorului: {{username}}",
|
"edit_users_availability": "Editați disponibilitatea utilizatorului: {{username}}",
|
||||||
"resend_invitation": "Retrimitere invitație",
|
"resend_invitation": "Retrimitere invitație",
|
||||||
"invitation_resent": "Invitația a fost trimisă din nou.",
|
"invitation_resent": "Invitația a fost trimisă din nou.",
|
||||||
|
"saml_sso": "SAML",
|
||||||
"add_client": "Adăugare client",
|
"add_client": "Adăugare client",
|
||||||
"copy_client_secret_info": "După ce copiați secretul, nu îl veți mai putea vedea",
|
"copy_client_secret_info": "După ce copiați secretul, nu îl veți mai putea vedea",
|
||||||
"add_new_client": "Adăugare client nou",
|
"add_new_client": "Adăugare client nou",
|
||||||
@@ -2101,5 +2097,6 @@
|
|||||||
"lock_timezone_toggle_on_booking_page": "Blocare fus orar pe pagina de rezervare",
|
"lock_timezone_toggle_on_booking_page": "Blocare fus orar pe pagina de rezervare",
|
||||||
"description_lock_timezone_toggle_on_booking_page": "Pentru a bloca fusul orar pe pagina de rezervare, util pentru evenimentele în persoană.",
|
"description_lock_timezone_toggle_on_booking_page": "Pentru a bloca fusul orar pe pagina de rezervare, util pentru evenimentele în persoană.",
|
||||||
"extensive_whitelabeling": "Asistență dedicată pentru integrare și inginerie",
|
"extensive_whitelabeling": "Asistență dedicată pentru integrare și inginerie",
|
||||||
|
"need_help": "Aveți nevoie de ajutor?",
|
||||||
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Adăugați stringurile noi deasupra acestui rând ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Adăugați stringurile noi deasupra acestui rând ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
||||||
}
|
}
|
||||||
@@ -666,8 +666,6 @@
|
|||||||
"managed_event_url_clarification": "в «username» указываются имена пользователей, которым будет назначен тип события",
|
"managed_event_url_clarification": "в «username» указываются имена пользователей, которым будет назначен тип события",
|
||||||
"assign_to": "Назначить участнику",
|
"assign_to": "Назначить участнику",
|
||||||
"add_members": "Добавить участников...",
|
"add_members": "Добавить участников...",
|
||||||
"count_members_one": "Участники: {{count}}",
|
|
||||||
"count_members_other": "Участники: {{count}}",
|
|
||||||
"no_assigned_members": "Нет назначенных участников",
|
"no_assigned_members": "Нет назначенных участников",
|
||||||
"assigned_to": "Назначено участнику",
|
"assigned_to": "Назначено участнику",
|
||||||
"start_assigning_members_above": "Начните назначать участников",
|
"start_assigning_members_above": "Начните назначать участников",
|
||||||
@@ -849,7 +847,6 @@
|
|||||||
"next_step": "Пропустить шаг",
|
"next_step": "Пропустить шаг",
|
||||||
"prev_step": "Предыдущий шаг",
|
"prev_step": "Предыдущий шаг",
|
||||||
"install": "Установить",
|
"install": "Установить",
|
||||||
"install_paid_app": "Подписаться",
|
|
||||||
"installed": "Установлено",
|
"installed": "Установлено",
|
||||||
"active_install_one": "Активные установки: {{count}}",
|
"active_install_one": "Активные установки: {{count}}",
|
||||||
"active_install_other": "Активные установки: {{count}}",
|
"active_install_other": "Активные установки: {{count}}",
|
||||||
@@ -1153,6 +1150,7 @@
|
|||||||
"active_on": "Активен с",
|
"active_on": "Активен с",
|
||||||
"workflow_updated_successfully": "Рабочий процесс {{workflowName}} обновлен",
|
"workflow_updated_successfully": "Рабочий процесс {{workflowName}} обновлен",
|
||||||
"premium_to_standard_username_description": "Это стандартное имя пользователя. В случае изменения вы будете перенаправлены на страницу оплаты для смены тарифа.",
|
"premium_to_standard_username_description": "Это стандартное имя пользователя. В случае изменения вы будете перенаправлены на страницу оплаты для смены тарифа.",
|
||||||
|
"premium_username": "Это имя пользователя уровня premium. Такое имя пользователя можно получить за {{price}}",
|
||||||
"current": "Текущее",
|
"current": "Текущее",
|
||||||
"premium": "премиум",
|
"premium": "премиум",
|
||||||
"standard": "стандартное",
|
"standard": "стандартное",
|
||||||
@@ -1218,9 +1216,6 @@
|
|||||||
"attendee_name_variable": "Участник",
|
"attendee_name_variable": "Участник",
|
||||||
"event_date_variable": "Дата события",
|
"event_date_variable": "Дата события",
|
||||||
"event_time_variable": "Время события",
|
"event_time_variable": "Время события",
|
||||||
"timezone_variable": "Часовой пояс",
|
|
||||||
"location_variable": "Местоположение",
|
|
||||||
"additional_notes_variable": "Дополнительная информация",
|
|
||||||
"organizer_name_variable": "Имя организатора",
|
"organizer_name_variable": "Имя организатора",
|
||||||
"app_upgrade_description": "Чтобы использовать эту функцию, необходимо перейти на аккаунт Pro.",
|
"app_upgrade_description": "Чтобы использовать эту функцию, необходимо перейти на аккаунт Pro.",
|
||||||
"invalid_number": "Неверный номер телефона",
|
"invalid_number": "Неверный номер телефона",
|
||||||
@@ -1536,6 +1531,7 @@
|
|||||||
"you": "Вы",
|
"you": "Вы",
|
||||||
"resend_email": "Отправить письмо еще раз",
|
"resend_email": "Отправить письмо еще раз",
|
||||||
"member_already_invited": "Участник уже приглашен",
|
"member_already_invited": "Участник уже приглашен",
|
||||||
|
"already_in_use_error": "Имя пользователя уже используется",
|
||||||
"enter_email_or_username": "Введите адрес электронной почты или имя пользователя",
|
"enter_email_or_username": "Введите адрес электронной почты или имя пользователя",
|
||||||
"team_name_taken": "Это название уже занято",
|
"team_name_taken": "Это название уже занято",
|
||||||
"must_enter_team_name": "Необходимо ввести название команды",
|
"must_enter_team_name": "Необходимо ввести название команды",
|
||||||
@@ -1986,14 +1982,11 @@
|
|||||||
"google_new_spam_policy": "В связи с новой политикой Google в отношении спама существует вероятность, что вы не сможете увидеть уведомления об этом забронированном событии по электронной почте или в календаре.",
|
"google_new_spam_policy": "В связи с новой политикой Google в отношении спама существует вероятность, что вы не сможете увидеть уведомления об этом забронированном событии по электронной почте или в календаре.",
|
||||||
"resolve": "Как решить эту проблему",
|
"resolve": "Как решить эту проблему",
|
||||||
"no_organization_slug": "При создании команд для этой организации произошла ошибка. Отсутствует слаг URL-адреса.",
|
"no_organization_slug": "При создании команд для этой организации произошла ошибка. Отсутствует слаг URL-адреса.",
|
||||||
"org_name": "Название организации",
|
|
||||||
"org_url": "URL-адрес организации",
|
|
||||||
"copy_link_org": "Копировать ссылку на организацию",
|
"copy_link_org": "Копировать ссылку на организацию",
|
||||||
"404_the_org": "Организация",
|
"404_the_org": "Организация",
|
||||||
"404_the_team": "Команда",
|
"404_the_team": "Команда",
|
||||||
"404_claim_entity_org": "Получите поддомен для вашей организации",
|
"404_claim_entity_org": "Получите поддомен для вашей организации",
|
||||||
"404_claim_entity_team": "Присоединитесь к команде и начните составлять расписания вместе",
|
"404_claim_entity_team": "Присоединитесь к команде и начните составлять расписания вместе",
|
||||||
"insights_all_org_filter": "Все приложения",
|
|
||||||
"insights_team_filter": "Команда: {{teamName}}",
|
"insights_team_filter": "Команда: {{teamName}}",
|
||||||
"insights_user_filter": "Пользователь: {{userName}}",
|
"insights_user_filter": "Пользователь: {{userName}}",
|
||||||
"insights_subtitle": "Insights: просматривайте информацию о бронировании по всем вашим событиям",
|
"insights_subtitle": "Insights: просматривайте информацию о бронировании по всем вашим событиям",
|
||||||
@@ -2005,7 +1998,6 @@
|
|||||||
"select_date": "Выбрать дату",
|
"select_date": "Выбрать дату",
|
||||||
"see_all_available_times": "Посмотреть все доступные интервалы времени",
|
"see_all_available_times": "Посмотреть все доступные интервалы времени",
|
||||||
"org_team_names_example": "например, команда по маркетингу",
|
"org_team_names_example": "например, команда по маркетингу",
|
||||||
"org_team_names_example_1": "например, команда по маркетингу",
|
|
||||||
"org_team_names_example_2": "например, Отдел продаж",
|
"org_team_names_example_2": "например, Отдел продаж",
|
||||||
"org_team_names_example_3": "например, отдел дизайна",
|
"org_team_names_example_3": "например, отдел дизайна",
|
||||||
"org_team_names_example_4": "например, технический отдел",
|
"org_team_names_example_4": "например, технический отдел",
|
||||||
@@ -2067,6 +2059,9 @@
|
|||||||
"include_calendar_event": "Включить событие календаря",
|
"include_calendar_event": "Включить событие календаря",
|
||||||
"oAuth": "OAuth",
|
"oAuth": "OAuth",
|
||||||
"recently_added": "Недавно добавленные",
|
"recently_added": "Недавно добавленные",
|
||||||
|
"connect_all_calendars": "Подключите все свои календари",
|
||||||
|
"workflow_automation": "Автоматизация при помощи рабочих процессов",
|
||||||
|
"scheduling_for_your_team": "Автоматизация при помощи рабочих процессов",
|
||||||
"no_members_found": "Участники не найдены",
|
"no_members_found": "Участники не найдены",
|
||||||
"event_setup_length_error": "Настройка события: продолжительность должна быть не менее 1 минуты.",
|
"event_setup_length_error": "Настройка события: продолжительность должна быть не менее 1 минуты.",
|
||||||
"availability_schedules": "График с информацией о доступности",
|
"availability_schedules": "График с информацией о доступности",
|
||||||
@@ -2090,6 +2085,7 @@
|
|||||||
"edit_users_availability": "Редактировать данные о доступности пользователя: {{username}}",
|
"edit_users_availability": "Редактировать данные о доступности пользователя: {{username}}",
|
||||||
"resend_invitation": "Повторно отправить приглашение",
|
"resend_invitation": "Повторно отправить приглашение",
|
||||||
"invitation_resent": "Приглашение отправлено еще раз.",
|
"invitation_resent": "Приглашение отправлено еще раз.",
|
||||||
|
"saml_sso": "SAML",
|
||||||
"add_client": "Добавить клиента",
|
"add_client": "Добавить клиента",
|
||||||
"copy_client_secret_info": "После копирования секретного ключа вы больше не сможете его просматривать",
|
"copy_client_secret_info": "После копирования секретного ключа вы больше не сможете его просматривать",
|
||||||
"add_new_client": "Добавить нового клиента",
|
"add_new_client": "Добавить нового клиента",
|
||||||
@@ -2101,5 +2097,6 @@
|
|||||||
"lock_timezone_toggle_on_booking_page": "Заблокируйте часовой пояс на странице бронирования",
|
"lock_timezone_toggle_on_booking_page": "Заблокируйте часовой пояс на странице бронирования",
|
||||||
"description_lock_timezone_toggle_on_booking_page": "Блокировка часового пояса на странице бронирования подходит для личных событий.",
|
"description_lock_timezone_toggle_on_booking_page": "Блокировка часового пояса на странице бронирования подходит для личных событий.",
|
||||||
"extensive_whitelabeling": "Индивидуальная техподдержка и помощь при онбординге",
|
"extensive_whitelabeling": "Индивидуальная техподдержка и помощь при онбординге",
|
||||||
|
"need_help": "Нужна помощь?",
|
||||||
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Добавьте строки выше ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Добавьте строки выше ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
||||||
}
|
}
|
||||||
@@ -666,8 +666,6 @@
|
|||||||
"managed_event_url_clarification": "„username“ će biti ispunjeno korisničkim imenom dodeljenog člana",
|
"managed_event_url_clarification": "„username“ će biti ispunjeno korisničkim imenom dodeljenog člana",
|
||||||
"assign_to": "Dodelite",
|
"assign_to": "Dodelite",
|
||||||
"add_members": "Dodajte članove...",
|
"add_members": "Dodajte članove...",
|
||||||
"count_members_one": "{{count}} član",
|
|
||||||
"count_members_other": "{{count}} članova",
|
|
||||||
"no_assigned_members": "Nema dodeljenih članova",
|
"no_assigned_members": "Nema dodeljenih članova",
|
||||||
"assigned_to": "Dodeljeno",
|
"assigned_to": "Dodeljeno",
|
||||||
"start_assigning_members_above": "Počnite da dodeljujete članove iznad",
|
"start_assigning_members_above": "Počnite da dodeljujete članove iznad",
|
||||||
@@ -849,7 +847,6 @@
|
|||||||
"next_step": "Preskoči korak",
|
"next_step": "Preskoči korak",
|
||||||
"prev_step": "Prethodni korak",
|
"prev_step": "Prethodni korak",
|
||||||
"install": "Instaliraj",
|
"install": "Instaliraj",
|
||||||
"install_paid_app": "Prijavite se",
|
|
||||||
"installed": "Instalirano",
|
"installed": "Instalirano",
|
||||||
"active_install_one": "{{count}} aktivna instalacija",
|
"active_install_one": "{{count}} aktivna instalacija",
|
||||||
"active_install_other": "{{count}} aktivnih instalacija",
|
"active_install_other": "{{count}} aktivnih instalacija",
|
||||||
@@ -1153,6 +1150,7 @@
|
|||||||
"active_on": "Aktivan uključen",
|
"active_on": "Aktivan uključen",
|
||||||
"workflow_updated_successfully": "Radni tok {{workflowName}} je uspešno ažuriran",
|
"workflow_updated_successfully": "Radni tok {{workflowName}} je uspešno ažuriran",
|
||||||
"premium_to_standard_username_description": "Ovo je standardno korisničko ime i ažuriranje će vas poslati na naplatu da biste prešli na nižu verziju.",
|
"premium_to_standard_username_description": "Ovo je standardno korisničko ime i ažuriranje će vas poslati na naplatu da biste prešli na nižu verziju.",
|
||||||
|
"premium_username": "Ovo je premium korisničko ime, nabavite svoje za {{price}}",
|
||||||
"current": "Trenutno",
|
"current": "Trenutno",
|
||||||
"premium": "premijum",
|
"premium": "premijum",
|
||||||
"standard": "standardno",
|
"standard": "standardno",
|
||||||
@@ -1218,9 +1216,6 @@
|
|||||||
"attendee_name_variable": "Učesnik",
|
"attendee_name_variable": "Učesnik",
|
||||||
"event_date_variable": "Datum događaja",
|
"event_date_variable": "Datum događaja",
|
||||||
"event_time_variable": "Vreme događaja",
|
"event_time_variable": "Vreme događaja",
|
||||||
"timezone_variable": "Vremenska zona",
|
|
||||||
"location_variable": "Lokacija",
|
|
||||||
"additional_notes_variable": "Dodatne beleške",
|
|
||||||
"organizer_name_variable": "Ime organizatora",
|
"organizer_name_variable": "Ime organizatora",
|
||||||
"app_upgrade_description": "Da biste koristili ovu funkciju, morate izvršiti nadogradnju na Pro nalog.",
|
"app_upgrade_description": "Da biste koristili ovu funkciju, morate izvršiti nadogradnju na Pro nalog.",
|
||||||
"invalid_number": "Neispravan broj telefona",
|
"invalid_number": "Neispravan broj telefona",
|
||||||
@@ -1536,6 +1531,7 @@
|
|||||||
"you": "Vi",
|
"you": "Vi",
|
||||||
"resend_email": "Ponovo pošalji imejl",
|
"resend_email": "Ponovo pošalji imejl",
|
||||||
"member_already_invited": "Član je već pozvan",
|
"member_already_invited": "Član je već pozvan",
|
||||||
|
"already_in_use_error": "Korisničko ime je već u upotrebi",
|
||||||
"enter_email_or_username": "Unesite imejl ili korisničko ime",
|
"enter_email_or_username": "Unesite imejl ili korisničko ime",
|
||||||
"team_name_taken": "Ime je zauzeto",
|
"team_name_taken": "Ime je zauzeto",
|
||||||
"must_enter_team_name": "Morate uneti naziv tima",
|
"must_enter_team_name": "Morate uneti naziv tima",
|
||||||
@@ -1986,14 +1982,11 @@
|
|||||||
"google_new_spam_policy": "Google-ova nova politika neželjene pošte može da spreči da primate bilo koje imejlove ili obaveštenja kalendara u vezi sa ovom rezervacijom.",
|
"google_new_spam_policy": "Google-ova nova politika neželjene pošte može da spreči da primate bilo koje imejlove ili obaveštenja kalendara u vezi sa ovom rezervacijom.",
|
||||||
"resolve": "Kako rešiti taj problem",
|
"resolve": "Kako rešiti taj problem",
|
||||||
"no_organization_slug": "Desila se greška kod kreiranja timova za ovu organizaciju. Nedostaje URL slug.",
|
"no_organization_slug": "Desila se greška kod kreiranja timova za ovu organizaciju. Nedostaje URL slug.",
|
||||||
"org_name": "Naziv organizacije",
|
|
||||||
"org_url": "URL organizacije",
|
|
||||||
"copy_link_org": "Kopiraj link do organizacije",
|
"copy_link_org": "Kopiraj link do organizacije",
|
||||||
"404_the_org": "Organizacija",
|
"404_the_org": "Organizacija",
|
||||||
"404_the_team": "Tim",
|
"404_the_team": "Tim",
|
||||||
"404_claim_entity_org": "Zatražite poddomen za svoju organizaciju",
|
"404_claim_entity_org": "Zatražite poddomen za svoju organizaciju",
|
||||||
"404_claim_entity_team": "Postanite deo ovog tima i počnite da uređujete kolektivni raspored",
|
"404_claim_entity_team": "Postanite deo ovog tima i počnite da uređujete kolektivni raspored",
|
||||||
"insights_all_org_filter": "Sve aplikacije",
|
|
||||||
"insights_team_filter": "Tim: {{teamName}}",
|
"insights_team_filter": "Tim: {{teamName}}",
|
||||||
"insights_user_filter": "Korisnik: {{userName}}",
|
"insights_user_filter": "Korisnik: {{userName}}",
|
||||||
"insights_subtitle": "Pogledajte insights rezervacije za vaše događaje",
|
"insights_subtitle": "Pogledajte insights rezervacije za vaše događaje",
|
||||||
@@ -2005,7 +1998,6 @@
|
|||||||
"select_date": "Izaberite datum",
|
"select_date": "Izaberite datum",
|
||||||
"see_all_available_times": "Pogledajte sva dostupna vremena",
|
"see_all_available_times": "Pogledajte sva dostupna vremena",
|
||||||
"org_team_names_example": "npr. Marketing tim",
|
"org_team_names_example": "npr. Marketing tim",
|
||||||
"org_team_names_example_1": "npr. Marketing tim",
|
|
||||||
"org_team_names_example_2": "npr. Prodajni tim",
|
"org_team_names_example_2": "npr. Prodajni tim",
|
||||||
"org_team_names_example_3": "npr. Dizajnerski tim",
|
"org_team_names_example_3": "npr. Dizajnerski tim",
|
||||||
"org_team_names_example_4": "npr. Inženjerski tim",
|
"org_team_names_example_4": "npr. Inženjerski tim",
|
||||||
@@ -2067,6 +2059,9 @@
|
|||||||
"include_calendar_event": "Uključite događaj u kalendaru",
|
"include_calendar_event": "Uključite događaj u kalendaru",
|
||||||
"oAuth": "OAuth",
|
"oAuth": "OAuth",
|
||||||
"recently_added": "Nedavno dodato",
|
"recently_added": "Nedavno dodato",
|
||||||
|
"connect_all_calendars": "Povežite sve svoje kalendare",
|
||||||
|
"workflow_automation": "Automatizacija radnog toka",
|
||||||
|
"scheduling_for_your_team": "Automatizacija radnog toka",
|
||||||
"no_members_found": "Članovi nisu pronađeni",
|
"no_members_found": "Članovi nisu pronađeni",
|
||||||
"event_setup_length_error": "Podešavanje događaja: Trajanje mora da bude barem 1 minut.",
|
"event_setup_length_error": "Podešavanje događaja: Trajanje mora da bude barem 1 minut.",
|
||||||
"availability_schedules": "Raspored dostupnosti",
|
"availability_schedules": "Raspored dostupnosti",
|
||||||
@@ -2090,6 +2085,7 @@
|
|||||||
"edit_users_availability": "Uredi dostupnost korisnika: {{username}}",
|
"edit_users_availability": "Uredi dostupnost korisnika: {{username}}",
|
||||||
"resend_invitation": "Ponovo pošaljite pozivnicu",
|
"resend_invitation": "Ponovo pošaljite pozivnicu",
|
||||||
"invitation_resent": "Pozivnica je ponovo poslata.",
|
"invitation_resent": "Pozivnica je ponovo poslata.",
|
||||||
|
"saml_sso": "SAML",
|
||||||
"add_client": "Dodajte klijenta",
|
"add_client": "Dodajte klijenta",
|
||||||
"copy_client_secret_info": "Nakon kopiranja tajne, nećete moći više da je vidite",
|
"copy_client_secret_info": "Nakon kopiranja tajne, nećete moći više da je vidite",
|
||||||
"add_new_client": "Dodajte novog klijenta",
|
"add_new_client": "Dodajte novog klijenta",
|
||||||
@@ -2101,5 +2097,6 @@
|
|||||||
"lock_timezone_toggle_on_booking_page": "Zaključajte vremensku zonu na stranici za zakazivanja",
|
"lock_timezone_toggle_on_booking_page": "Zaključajte vremensku zonu na stranici za zakazivanja",
|
||||||
"description_lock_timezone_toggle_on_booking_page": "Za zaključavanje vremenske zone na stranici za zakazivanja, korisno za događaje licem u lice.",
|
"description_lock_timezone_toggle_on_booking_page": "Za zaključavanje vremenske zone na stranici za zakazivanja, korisno za događaje licem u lice.",
|
||||||
"extensive_whitelabeling": "Posvećena podrška za uvodnu obuku i inženjering",
|
"extensive_whitelabeling": "Posvećena podrška za uvodnu obuku i inženjering",
|
||||||
|
"need_help": "Potrebna vam je pomoć?",
|
||||||
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Dodajte svoje nove stringove iznad ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Dodajte svoje nove stringove iznad ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
||||||
}
|
}
|
||||||
@@ -666,8 +666,6 @@
|
|||||||
"managed_event_url_clarification": "\"användarnamn\" fylls i med användarnamnet för de medlemmar som tilldelats",
|
"managed_event_url_clarification": "\"användarnamn\" fylls i med användarnamnet för de medlemmar som tilldelats",
|
||||||
"assign_to": "Tilldela till",
|
"assign_to": "Tilldela till",
|
||||||
"add_members": "Lägg till medlemmar ...",
|
"add_members": "Lägg till medlemmar ...",
|
||||||
"count_members_one": "{{count}} medlem",
|
|
||||||
"count_members_other": "{{count}} medlemmar",
|
|
||||||
"no_assigned_members": "Inga tilldelade medlemmar",
|
"no_assigned_members": "Inga tilldelade medlemmar",
|
||||||
"assigned_to": "Tilldelad till",
|
"assigned_to": "Tilldelad till",
|
||||||
"start_assigning_members_above": "Börja tilldela medlemmar ovan",
|
"start_assigning_members_above": "Börja tilldela medlemmar ovan",
|
||||||
@@ -849,7 +847,6 @@
|
|||||||
"next_step": "Hoppa över steg",
|
"next_step": "Hoppa över steg",
|
||||||
"prev_step": "Föregående steg",
|
"prev_step": "Föregående steg",
|
||||||
"install": "Installera",
|
"install": "Installera",
|
||||||
"install_paid_app": "Prenumerera",
|
|
||||||
"installed": "Installerad",
|
"installed": "Installerad",
|
||||||
"active_install_one": "{{count}} aktiv installation",
|
"active_install_one": "{{count}} aktiv installation",
|
||||||
"active_install_other": "{{count}} aktiva installationer",
|
"active_install_other": "{{count}} aktiva installationer",
|
||||||
@@ -1153,6 +1150,7 @@
|
|||||||
"active_on": "Aktiv på",
|
"active_on": "Aktiv på",
|
||||||
"workflow_updated_successfully": "{{workflowName}} uppdaterades framgångsrikt",
|
"workflow_updated_successfully": "{{workflowName}} uppdaterades framgångsrikt",
|
||||||
"premium_to_standard_username_description": "Det här är ett förinställt användarnamn och uppdateringen tar dig till fakturering för att nedgradera.",
|
"premium_to_standard_username_description": "Det här är ett förinställt användarnamn och uppdateringen tar dig till fakturering för att nedgradera.",
|
||||||
|
"premium_username": "Detta är ett premiumanvändarnamn, få ditt för {{price}}",
|
||||||
"current": "Nuvarande",
|
"current": "Nuvarande",
|
||||||
"premium": "premium",
|
"premium": "premium",
|
||||||
"standard": "standard",
|
"standard": "standard",
|
||||||
@@ -1218,9 +1216,6 @@
|
|||||||
"attendee_name_variable": "Deltagare",
|
"attendee_name_variable": "Deltagare",
|
||||||
"event_date_variable": "Händelsedatum",
|
"event_date_variable": "Händelsedatum",
|
||||||
"event_time_variable": "Händelsetid",
|
"event_time_variable": "Händelsetid",
|
||||||
"timezone_variable": "Tidszon",
|
|
||||||
"location_variable": "Plats",
|
|
||||||
"additional_notes_variable": "Ytterligare inmatning",
|
|
||||||
"organizer_name_variable": "Arrangörens namn",
|
"organizer_name_variable": "Arrangörens namn",
|
||||||
"app_upgrade_description": "För att kunna använda den här funktionen måste du uppgradera till ett Pro-konto.",
|
"app_upgrade_description": "För att kunna använda den här funktionen måste du uppgradera till ett Pro-konto.",
|
||||||
"invalid_number": "Ogiltigt telefonnummer",
|
"invalid_number": "Ogiltigt telefonnummer",
|
||||||
@@ -1536,6 +1531,7 @@
|
|||||||
"you": "Du",
|
"you": "Du",
|
||||||
"resend_email": "Skicka e-post igen",
|
"resend_email": "Skicka e-post igen",
|
||||||
"member_already_invited": "Medlemmen har redan bjudits in",
|
"member_already_invited": "Medlemmen har redan bjudits in",
|
||||||
|
"already_in_use_error": "Användarnamnet används redan",
|
||||||
"enter_email_or_username": "Ange en e-postadress eller ett användarnamn",
|
"enter_email_or_username": "Ange en e-postadress eller ett användarnamn",
|
||||||
"team_name_taken": "Det här namnet används redan",
|
"team_name_taken": "Det här namnet används redan",
|
||||||
"must_enter_team_name": "Teamnamn måste anges",
|
"must_enter_team_name": "Teamnamn måste anges",
|
||||||
@@ -1986,14 +1982,11 @@
|
|||||||
"google_new_spam_policy": "Googles nya skräppostpolicy kan hindra dig från att få e-post och kalenderaviseringen om denna bokning.",
|
"google_new_spam_policy": "Googles nya skräppostpolicy kan hindra dig från att få e-post och kalenderaviseringen om denna bokning.",
|
||||||
"resolve": "Lös",
|
"resolve": "Lös",
|
||||||
"no_organization_slug": "Ett fel uppstod när team skapades för den här organisationen. URL-sluggen saknas.",
|
"no_organization_slug": "Ett fel uppstod när team skapades för den här organisationen. URL-sluggen saknas.",
|
||||||
"org_name": "Organisationens namn",
|
|
||||||
"org_url": "Organisationens URL",
|
|
||||||
"copy_link_org": "Kopiera länk till organisation",
|
"copy_link_org": "Kopiera länk till organisation",
|
||||||
"404_the_org": "Organisationen",
|
"404_the_org": "Organisationen",
|
||||||
"404_the_team": "Teamet",
|
"404_the_team": "Teamet",
|
||||||
"404_claim_entity_org": "Registrera underdomänen för din organisation",
|
"404_claim_entity_org": "Registrera underdomänen för din organisation",
|
||||||
"404_claim_entity_team": "Registrera det här teamet och börja hantera scheman tillsammans",
|
"404_claim_entity_team": "Registrera det här teamet och börja hantera scheman tillsammans",
|
||||||
"insights_all_org_filter": "Alla",
|
|
||||||
"insights_team_filter": "Team: {{teamName}}",
|
"insights_team_filter": "Team: {{teamName}}",
|
||||||
"insights_user_filter": "Användare: {{userName}}",
|
"insights_user_filter": "Användare: {{userName}}",
|
||||||
"insights_subtitle": "Visa Insights-bokningar för dina händelser",
|
"insights_subtitle": "Visa Insights-bokningar för dina händelser",
|
||||||
@@ -2005,7 +1998,6 @@
|
|||||||
"select_date": "Välj datum",
|
"select_date": "Välj datum",
|
||||||
"see_all_available_times": "Se alla tillgängliga tider",
|
"see_all_available_times": "Se alla tillgängliga tider",
|
||||||
"org_team_names_example": "t.ex. marknadsföringsteam",
|
"org_team_names_example": "t.ex. marknadsföringsteam",
|
||||||
"org_team_names_example_1": "t.ex. marknadsföringsteam",
|
|
||||||
"org_team_names_example_2": "t.ex. säljteam",
|
"org_team_names_example_2": "t.ex. säljteam",
|
||||||
"org_team_names_example_3": "t.ex. designteam",
|
"org_team_names_example_3": "t.ex. designteam",
|
||||||
"org_team_names_example_4": "t.ex. ingenjörsteam",
|
"org_team_names_example_4": "t.ex. ingenjörsteam",
|
||||||
@@ -2067,6 +2059,9 @@
|
|||||||
"include_calendar_event": "Inkludera kalenderhändelse",
|
"include_calendar_event": "Inkludera kalenderhändelse",
|
||||||
"oAuth": "OAuth",
|
"oAuth": "OAuth",
|
||||||
"recently_added": "Nyligen tillagda",
|
"recently_added": "Nyligen tillagda",
|
||||||
|
"connect_all_calendars": "Anslut alla dina kalendrar",
|
||||||
|
"workflow_automation": "Automatisering av arbetsflöde",
|
||||||
|
"scheduling_for_your_team": "Automatisering av arbetsflöde",
|
||||||
"no_members_found": "Inga medlemmar hittades",
|
"no_members_found": "Inga medlemmar hittades",
|
||||||
"event_setup_length_error": "Konfigurering av evenemang: Längden måste vara minst 1 minut.",
|
"event_setup_length_error": "Konfigurering av evenemang: Längden måste vara minst 1 minut.",
|
||||||
"availability_schedules": "Scheman för tillgänglighet",
|
"availability_schedules": "Scheman för tillgänglighet",
|
||||||
@@ -2090,6 +2085,7 @@
|
|||||||
"edit_users_availability": "Redigera användarens tillgänglighet: {{username}}",
|
"edit_users_availability": "Redigera användarens tillgänglighet: {{username}}",
|
||||||
"resend_invitation": "Skicka inbjudan igen",
|
"resend_invitation": "Skicka inbjudan igen",
|
||||||
"invitation_resent": "Inbjudan skickades på nytt.",
|
"invitation_resent": "Inbjudan skickades på nytt.",
|
||||||
|
"saml_sso": "SAML",
|
||||||
"add_client": "Lägg till kund",
|
"add_client": "Lägg till kund",
|
||||||
"copy_client_secret_info": "När du har kopierat hemligheten kommer du inte att kunna se den längre",
|
"copy_client_secret_info": "När du har kopierat hemligheten kommer du inte att kunna se den längre",
|
||||||
"add_new_client": "Lägg till ny kund",
|
"add_new_client": "Lägg till ny kund",
|
||||||
@@ -2101,5 +2097,6 @@
|
|||||||
"lock_timezone_toggle_on_booking_page": "Lås tidszon på bokningssidan",
|
"lock_timezone_toggle_on_booking_page": "Lås tidszon på bokningssidan",
|
||||||
"description_lock_timezone_toggle_on_booking_page": "För att låsa tidszonen på bokningssidan, användbart för personliga händelser.",
|
"description_lock_timezone_toggle_on_booking_page": "För att låsa tidszonen på bokningssidan, användbart för personliga händelser.",
|
||||||
"extensive_whitelabeling": "Dedikerad registrering och teknisk support",
|
"extensive_whitelabeling": "Dedikerad registrering och teknisk support",
|
||||||
|
"need_help": "Behöver du hjälp?",
|
||||||
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Add your new strings above here ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Add your new strings above here ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
||||||
}
|
}
|
||||||
@@ -75,7 +75,9 @@
|
|||||||
"rescheduled_event_type_subject": "மறுஅட்டவணைக்கான கோரிக்கை அனுப்பப்பட்டது: {{eventType}} உடன் {{name}} உடன் {{date}}",
|
"rescheduled_event_type_subject": "மறுஅட்டவணைக்கான கோரிக்கை அனுப்பப்பட்டது: {{eventType}} உடன் {{name}} உடன் {{date}}",
|
||||||
"requested_to_reschedule_subject_attendee": "மறுஅட்டவணை செயல் தேவை: {{eventType}} க்கு {{name}} உடன் புதிய நேரத்தை முன்பதிவு செய்யவும்",
|
"requested_to_reschedule_subject_attendee": "மறுஅட்டவணை செயல் தேவை: {{eventType}} க்கு {{name}} உடன் புதிய நேரத்தை முன்பதிவு செய்யவும்",
|
||||||
"hi_user_name": "வணக்கம் {{name}}",
|
"hi_user_name": "வணக்கம் {{name}}",
|
||||||
|
"premium_username": "இது ஒரு பிரீமியம் பயனர்பெயர், {{price}} க்கு உங்களுடையதைப் பெறுங்கள்",
|
||||||
"turn_on": "இயக்கவும்",
|
"turn_on": "இயக்கவும்",
|
||||||
|
"already_in_use_error": "பயனர் பெயர் முன்னரே உபயோகத்தில் உள்ளது",
|
||||||
"email_no_user_invite_subheading": "{{invitedBy}} உங்களை {{appName}} குழுவில் சேர அழைத்துள்ளார். {{appName}} என்பது ஈமெயில் இல்லாமலேயே உங்களையும் உங்கள் குழுவையும் கூட்டங்களைத் திட்டமிடுவதற்கு உதவும் திட்டமிடல் பயன்பாடு.",
|
"email_no_user_invite_subheading": "{{invitedBy}} உங்களை {{appName}} குழுவில் சேர அழைத்துள்ளார். {{appName}} என்பது ஈமெயில் இல்லாமலேயே உங்களையும் உங்கள் குழுவையும் கூட்டங்களைத் திட்டமிடுவதற்கு உதவும் திட்டமிடல் பயன்பாடு.",
|
||||||
"email_no_user_step_one": "உங்கள் பயனர்பெயரை தேர்வு செய்யவும்",
|
"email_no_user_step_one": "உங்கள் பயனர்பெயரை தேர்வு செய்யவும்",
|
||||||
"email_no_user_step_two": "உங்கள் காலெண்டர் கணக்கை இணைக்கவும்",
|
"email_no_user_step_two": "உங்கள் காலெண்டர் கணக்கை இணைக்கவும்",
|
||||||
|
|||||||
@@ -666,8 +666,6 @@
|
|||||||
"managed_event_url_clarification": "\"username\" alanı, atanan üyelerin kullanıcı adı ile doldurulur",
|
"managed_event_url_clarification": "\"username\" alanı, atanan üyelerin kullanıcı adı ile doldurulur",
|
||||||
"assign_to": "Şuraya ata:",
|
"assign_to": "Şuraya ata:",
|
||||||
"add_members": "Üye ekle...",
|
"add_members": "Üye ekle...",
|
||||||
"count_members_one": "{{count}} üye",
|
|
||||||
"count_members_other": "{{count}} üye",
|
|
||||||
"no_assigned_members": "Atanan üye yok",
|
"no_assigned_members": "Atanan üye yok",
|
||||||
"assigned_to": "Şuraya atandı:",
|
"assigned_to": "Şuraya atandı:",
|
||||||
"start_assigning_members_above": "Üyeleri en üstten itibaren atamaya başlayın",
|
"start_assigning_members_above": "Üyeleri en üstten itibaren atamaya başlayın",
|
||||||
@@ -849,7 +847,6 @@
|
|||||||
"next_step": "Adımı geç",
|
"next_step": "Adımı geç",
|
||||||
"prev_step": "Önceki adım",
|
"prev_step": "Önceki adım",
|
||||||
"install": "Yükle",
|
"install": "Yükle",
|
||||||
"install_paid_app": "Abone Ol",
|
|
||||||
"installed": "Yüklendi",
|
"installed": "Yüklendi",
|
||||||
"active_install_one": "{{count}} aktif yükleme",
|
"active_install_one": "{{count}} aktif yükleme",
|
||||||
"active_install_other": "{{count}} aktif yükleme",
|
"active_install_other": "{{count}} aktif yükleme",
|
||||||
@@ -1153,6 +1150,7 @@
|
|||||||
"active_on": "Aktif",
|
"active_on": "Aktif",
|
||||||
"workflow_updated_successfully": "{{workflowName}} iş akışı başarıyla güncellendi",
|
"workflow_updated_successfully": "{{workflowName}} iş akışı başarıyla güncellendi",
|
||||||
"premium_to_standard_username_description": "Bu, standart bir kullanıcı adıdır ve güncelleme işlemi eski sürüme geçmeniz için sizi faturalandırma sayfasına yönlendirir.",
|
"premium_to_standard_username_description": "Bu, standart bir kullanıcı adıdır ve güncelleme işlemi eski sürüme geçmeniz için sizi faturalandırma sayfasına yönlendirir.",
|
||||||
|
"premium_username": "Bu premium bir kullanıcı adıdır, {{price}} karşılığında kendi adınızı alın",
|
||||||
"current": "Mevcut",
|
"current": "Mevcut",
|
||||||
"premium": "premium",
|
"premium": "premium",
|
||||||
"standard": "standart",
|
"standard": "standart",
|
||||||
@@ -1218,9 +1216,6 @@
|
|||||||
"attendee_name_variable": "Katılımcı",
|
"attendee_name_variable": "Katılımcı",
|
||||||
"event_date_variable": "Etkinlik tarihi",
|
"event_date_variable": "Etkinlik tarihi",
|
||||||
"event_time_variable": "Etkinlik saati",
|
"event_time_variable": "Etkinlik saati",
|
||||||
"timezone_variable": "Saat dilimi",
|
|
||||||
"location_variable": "Konum",
|
|
||||||
"additional_notes_variable": "Ek notlar",
|
|
||||||
"organizer_name_variable": "Düzenleyenin adı",
|
"organizer_name_variable": "Düzenleyenin adı",
|
||||||
"app_upgrade_description": "Bu özelliği kullanmak için Pro hesabına geçmeniz gerekiyor.",
|
"app_upgrade_description": "Bu özelliği kullanmak için Pro hesabına geçmeniz gerekiyor.",
|
||||||
"invalid_number": "Geçersiz telefon numarası",
|
"invalid_number": "Geçersiz telefon numarası",
|
||||||
@@ -1536,6 +1531,7 @@
|
|||||||
"you": "Siz",
|
"you": "Siz",
|
||||||
"resend_email": "E-postayı tekrar gönder",
|
"resend_email": "E-postayı tekrar gönder",
|
||||||
"member_already_invited": "Üye zaten davet edildi",
|
"member_already_invited": "Üye zaten davet edildi",
|
||||||
|
"already_in_use_error": "Kullanıcı adı zaten kullanımda",
|
||||||
"enter_email_or_username": "Bir e-posta veya kullanıcı adı girin",
|
"enter_email_or_username": "Bir e-posta veya kullanıcı adı girin",
|
||||||
"team_name_taken": "Bu ad zaten kullanılıyor",
|
"team_name_taken": "Bu ad zaten kullanılıyor",
|
||||||
"must_enter_team_name": "Ekip adı girilmelidir",
|
"must_enter_team_name": "Ekip adı girilmelidir",
|
||||||
@@ -1986,14 +1982,11 @@
|
|||||||
"google_new_spam_policy": "Google'ın yeni spam politikası nedeniyle bu rezervasyon için e-posta veya takvim bildirimleri alamayabilirsiniz.",
|
"google_new_spam_policy": "Google'ın yeni spam politikası nedeniyle bu rezervasyon için e-posta veya takvim bildirimleri alamayabilirsiniz.",
|
||||||
"resolve": "Çöz",
|
"resolve": "Çöz",
|
||||||
"no_organization_slug": "Bu kuruluş için ekipler oluşturulurken bir hata oluştu. URL bilgisi eksik.",
|
"no_organization_slug": "Bu kuruluş için ekipler oluşturulurken bir hata oluştu. URL bilgisi eksik.",
|
||||||
"org_name": "Kuruluş adı",
|
|
||||||
"org_url": "Kuruluş URL'si",
|
|
||||||
"copy_link_org": "Bağlantıyı kuruluşa kopyala",
|
"copy_link_org": "Bağlantıyı kuruluşa kopyala",
|
||||||
"404_the_org": "Kuruluş",
|
"404_the_org": "Kuruluş",
|
||||||
"404_the_team": "Ekip",
|
"404_the_team": "Ekip",
|
||||||
"404_claim_entity_org": "Kuruluşunuz için alt alan adınızı talep edin",
|
"404_claim_entity_org": "Kuruluşunuz için alt alan adınızı talep edin",
|
||||||
"404_claim_entity_team": "Bu ekibi sahiplenin ve planlamaları toplu şekilde yönetmeye başlayın",
|
"404_claim_entity_team": "Bu ekibi sahiplenin ve planlamaları toplu şekilde yönetmeye başlayın",
|
||||||
"insights_all_org_filter": "Tümü",
|
|
||||||
"insights_team_filter": "Ekip: {{teamName}}",
|
"insights_team_filter": "Ekip: {{teamName}}",
|
||||||
"insights_user_filter": "Kullanıcı: {{userName}}",
|
"insights_user_filter": "Kullanıcı: {{userName}}",
|
||||||
"insights_subtitle": "Etkinliklerinizdeki rezervasyon insights'ı görüntüleyin",
|
"insights_subtitle": "Etkinliklerinizdeki rezervasyon insights'ı görüntüleyin",
|
||||||
@@ -2005,7 +1998,6 @@
|
|||||||
"select_date": "Tarihi Seçin",
|
"select_date": "Tarihi Seçin",
|
||||||
"see_all_available_times": "Tüm müsait saatleri görün",
|
"see_all_available_times": "Tüm müsait saatleri görün",
|
||||||
"org_team_names_example": "Örneğin. Pazarlama ekibi",
|
"org_team_names_example": "Örneğin. Pazarlama ekibi",
|
||||||
"org_team_names_example_1": "Örneğin. Pazarlama ekibi",
|
|
||||||
"org_team_names_example_2": "Örn. Satış Ekibi",
|
"org_team_names_example_2": "Örn. Satış Ekibi",
|
||||||
"org_team_names_example_3": "Örn. Tasarım Ekibi",
|
"org_team_names_example_3": "Örn. Tasarım Ekibi",
|
||||||
"org_team_names_example_4": "Örn. Mühendislik Ekibi",
|
"org_team_names_example_4": "Örn. Mühendislik Ekibi",
|
||||||
@@ -2067,6 +2059,9 @@
|
|||||||
"include_calendar_event": "Takvim etkinliğini dahil et",
|
"include_calendar_event": "Takvim etkinliğini dahil et",
|
||||||
"oAuth": "OAuth",
|
"oAuth": "OAuth",
|
||||||
"recently_added": "Son eklenen",
|
"recently_added": "Son eklenen",
|
||||||
|
"connect_all_calendars": "Tüm takvimlerinizi bağlayın",
|
||||||
|
"workflow_automation": "İş akışı otomasyonu",
|
||||||
|
"scheduling_for_your_team": "İş akışı otomasyonu",
|
||||||
"no_members_found": "Üye bulunamadı",
|
"no_members_found": "Üye bulunamadı",
|
||||||
"event_setup_length_error": "Etkinlik Kurulumu: Süre en az 1 dakika olmalıdır.",
|
"event_setup_length_error": "Etkinlik Kurulumu: Süre en az 1 dakika olmalıdır.",
|
||||||
"availability_schedules": "Müsaitlik Planları",
|
"availability_schedules": "Müsaitlik Planları",
|
||||||
@@ -2090,6 +2085,7 @@
|
|||||||
"edit_users_availability": "Kullanıcının müsaitlik durumunu düzenleyin: {{username}}",
|
"edit_users_availability": "Kullanıcının müsaitlik durumunu düzenleyin: {{username}}",
|
||||||
"resend_invitation": "Davetiyeyi yeniden gönder",
|
"resend_invitation": "Davetiyeyi yeniden gönder",
|
||||||
"invitation_resent": "Davetiye tekrar gönderildi.",
|
"invitation_resent": "Davetiye tekrar gönderildi.",
|
||||||
|
"saml_sso": "SAML",
|
||||||
"add_client": "Müşteri ekle",
|
"add_client": "Müşteri ekle",
|
||||||
"copy_client_secret_info": "Gizli bilgiyi kopyaladıktan sonra artık görüntüleyemeyeceksiniz",
|
"copy_client_secret_info": "Gizli bilgiyi kopyaladıktan sonra artık görüntüleyemeyeceksiniz",
|
||||||
"add_new_client": "Yeni Müşteri Ekle",
|
"add_new_client": "Yeni Müşteri Ekle",
|
||||||
@@ -2101,5 +2097,6 @@
|
|||||||
"lock_timezone_toggle_on_booking_page": "Rezervasyon sayfasında saat dilimini kilitle",
|
"lock_timezone_toggle_on_booking_page": "Rezervasyon sayfasında saat dilimini kilitle",
|
||||||
"description_lock_timezone_toggle_on_booking_page": "Rezervasyon sayfasında saat dilimini kilitlemek kişisel etkinlikler için kullanışlıdır.",
|
"description_lock_timezone_toggle_on_booking_page": "Rezervasyon sayfasında saat dilimini kilitlemek kişisel etkinlikler için kullanışlıdır.",
|
||||||
"extensive_whitelabeling": "Özel işe alıştırma ve mühendislik desteği",
|
"extensive_whitelabeling": "Özel işe alıştırma ve mühendislik desteği",
|
||||||
|
"need_help": "Yardıma mı ihtiyacınız var?",
|
||||||
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Yeni dizelerinizi yukarıya ekleyin ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Yeni dizelerinizi yukarıya ekleyin ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
||||||
}
|
}
|
||||||
@@ -666,8 +666,6 @@
|
|||||||
"managed_event_url_clarification": "Поле «username» буде заповнено іменами користувачів призначених учасників",
|
"managed_event_url_clarification": "Поле «username» буде заповнено іменами користувачів призначених учасників",
|
||||||
"assign_to": "Кому призначити:",
|
"assign_to": "Кому призначити:",
|
||||||
"add_members": "Додати учасників…",
|
"add_members": "Додати учасників…",
|
||||||
"count_members_one": "{{count}} учасник",
|
|
||||||
"count_members_other": "Учасників: {{count}}",
|
|
||||||
"no_assigned_members": "Немає призначених учасників",
|
"no_assigned_members": "Немає призначених учасників",
|
||||||
"assigned_to": "Кому призначено:",
|
"assigned_to": "Кому призначено:",
|
||||||
"start_assigning_members_above": "Почніть призначати учасників вище",
|
"start_assigning_members_above": "Почніть призначати учасників вище",
|
||||||
@@ -849,7 +847,6 @@
|
|||||||
"next_step": "Пропустити крок",
|
"next_step": "Пропустити крок",
|
||||||
"prev_step": "Попередній крок",
|
"prev_step": "Попередній крок",
|
||||||
"install": "Установити",
|
"install": "Установити",
|
||||||
"install_paid_app": "Підписатися",
|
|
||||||
"installed": "Установлено",
|
"installed": "Установлено",
|
||||||
"active_install_one": "{{count}} активна інсталяція",
|
"active_install_one": "{{count}} активна інсталяція",
|
||||||
"active_install_other": "Активних інсталяцій: {{count}}",
|
"active_install_other": "Активних інсталяцій: {{count}}",
|
||||||
@@ -1153,6 +1150,7 @@
|
|||||||
"active_on": "Активується",
|
"active_on": "Активується",
|
||||||
"workflow_updated_successfully": "Робочий процес «{{workflowName}}» оновлено",
|
"workflow_updated_successfully": "Робочий процес «{{workflowName}}» оновлено",
|
||||||
"premium_to_standard_username_description": "Це стандартне ім’я користувача. Якщо оновити його, ви перейдете до оформлення підписки з вужчим функціоналом.",
|
"premium_to_standard_username_description": "Це стандартне ім’я користувача. Якщо оновити його, ви перейдете до оформлення підписки з вужчим функціоналом.",
|
||||||
|
"premium_username": "Це ім’я користувача класу преміум, отримай своє за {{price}}",
|
||||||
"current": "Поточна",
|
"current": "Поточна",
|
||||||
"premium": "преміум",
|
"premium": "преміум",
|
||||||
"standard": "стандарт",
|
"standard": "стандарт",
|
||||||
@@ -1218,9 +1216,6 @@
|
|||||||
"attendee_name_variable": "Учасник",
|
"attendee_name_variable": "Учасник",
|
||||||
"event_date_variable": "Дата заходу",
|
"event_date_variable": "Дата заходу",
|
||||||
"event_time_variable": "Час заходу",
|
"event_time_variable": "Час заходу",
|
||||||
"timezone_variable": "Часовий пояс",
|
|
||||||
"location_variable": "Розташування",
|
|
||||||
"additional_notes_variable": "Додаткові примітки",
|
|
||||||
"organizer_name_variable": "Ім’я організатора",
|
"organizer_name_variable": "Ім’я організатора",
|
||||||
"app_upgrade_description": "Щоб користуватися цією функцією, потрібен обліковий запис Pro.",
|
"app_upgrade_description": "Щоб користуватися цією функцією, потрібен обліковий запис Pro.",
|
||||||
"invalid_number": "Недійсний номер телефону",
|
"invalid_number": "Недійсний номер телефону",
|
||||||
@@ -1536,6 +1531,7 @@
|
|||||||
"you": "Ви",
|
"you": "Ви",
|
||||||
"resend_email": "Повторно надіслати лист",
|
"resend_email": "Повторно надіслати лист",
|
||||||
"member_already_invited": "Учасника вже запрошено",
|
"member_already_invited": "Учасника вже запрошено",
|
||||||
|
"already_in_use_error": "Це ім’я користувача вже використовується",
|
||||||
"enter_email_or_username": "Введіть електронну адресу або ім’я користувача",
|
"enter_email_or_username": "Введіть електронну адресу або ім’я користувача",
|
||||||
"team_name_taken": "Це ім’я вже зайнято",
|
"team_name_taken": "Це ім’я вже зайнято",
|
||||||
"must_enter_team_name": "Потрібно ввести назву команди",
|
"must_enter_team_name": "Потрібно ввести назву команди",
|
||||||
@@ -1986,14 +1982,11 @@
|
|||||||
"google_new_spam_policy": "Через нову політику Google щодо спаму ви можете не отримати електронний лист або сповіщення календаря щодо цього бронювання.",
|
"google_new_spam_policy": "Через нову політику Google щодо спаму ви можете не отримати електронний лист або сповіщення календаря щодо цього бронювання.",
|
||||||
"resolve": "Вирішити",
|
"resolve": "Вирішити",
|
||||||
"no_organization_slug": "Сталася помилка під час створення команд для цієї організації. Відсутня URL-адреса.",
|
"no_organization_slug": "Сталася помилка під час створення команд для цієї організації. Відсутня URL-адреса.",
|
||||||
"org_name": "Назва організації",
|
|
||||||
"org_url": "URL-адреса організації",
|
|
||||||
"copy_link_org": "Копіювати посилання на організацію",
|
"copy_link_org": "Копіювати посилання на організацію",
|
||||||
"404_the_org": "Організація",
|
"404_the_org": "Організація",
|
||||||
"404_the_team": "Команда",
|
"404_the_team": "Команда",
|
||||||
"404_claim_entity_org": "Отримайте піддомен для своєї організації",
|
"404_claim_entity_org": "Отримайте піддомен для своєї організації",
|
||||||
"404_claim_entity_team": "Приєднайтеся до цієї команди й почніть спільно керувати розкладами",
|
"404_claim_entity_team": "Приєднайтеся до цієї команди й почніть спільно керувати розкладами",
|
||||||
"insights_all_org_filter": "Усі",
|
|
||||||
"insights_team_filter": "Команда: {{teamName}}",
|
"insights_team_filter": "Команда: {{teamName}}",
|
||||||
"insights_user_filter": "Користувач: {{userName}}",
|
"insights_user_filter": "Користувач: {{userName}}",
|
||||||
"insights_subtitle": "Переглядайте дані Insights про бронювання для своїх заходів",
|
"insights_subtitle": "Переглядайте дані Insights про бронювання для своїх заходів",
|
||||||
@@ -2005,7 +1998,6 @@
|
|||||||
"select_date": "Виберіть дату",
|
"select_date": "Виберіть дату",
|
||||||
"see_all_available_times": "Переглянути доступні часові проміжки",
|
"see_all_available_times": "Переглянути доступні часові проміжки",
|
||||||
"org_team_names_example": "напр. команда маркетингу",
|
"org_team_names_example": "напр. команда маркетингу",
|
||||||
"org_team_names_example_1": "напр. маркетинговий відділ",
|
|
||||||
"org_team_names_example_2": "напр. відділ продажів",
|
"org_team_names_example_2": "напр. відділ продажів",
|
||||||
"org_team_names_example_3": "напр. дизайнерський відділ",
|
"org_team_names_example_3": "напр. дизайнерський відділ",
|
||||||
"org_team_names_example_4": "e.g. інженерний відділ",
|
"org_team_names_example_4": "e.g. інженерний відділ",
|
||||||
@@ -2067,6 +2059,9 @@
|
|||||||
"include_calendar_event": "Включити календарний захід",
|
"include_calendar_event": "Включити календарний захід",
|
||||||
"oAuth": "OAuth",
|
"oAuth": "OAuth",
|
||||||
"recently_added": "Нещодавно додані",
|
"recently_added": "Нещодавно додані",
|
||||||
|
"connect_all_calendars": "Можливість підключення всіх календарів",
|
||||||
|
"workflow_automation": "Автоматизація робочого процесу",
|
||||||
|
"scheduling_for_your_team": "Автоматизація робочого процесу",
|
||||||
"no_members_found": "Учасників не знайдено",
|
"no_members_found": "Учасників не знайдено",
|
||||||
"event_setup_length_error": "Налаштування заходу: мінімальна тривалість — 1 хвилина.",
|
"event_setup_length_error": "Налаштування заходу: мінімальна тривалість — 1 хвилина.",
|
||||||
"availability_schedules": "Розклад доступності",
|
"availability_schedules": "Розклад доступності",
|
||||||
@@ -2090,6 +2085,7 @@
|
|||||||
"edit_users_availability": "Редагувати доступність користувача: {{username}}",
|
"edit_users_availability": "Редагувати доступність користувача: {{username}}",
|
||||||
"resend_invitation": "Повторно надіслати запрошення",
|
"resend_invitation": "Повторно надіслати запрошення",
|
||||||
"invitation_resent": "Запрошення надіслано повторно.",
|
"invitation_resent": "Запрошення надіслано повторно.",
|
||||||
|
"saml_sso": "SAML",
|
||||||
"add_client": "Додати клієнта",
|
"add_client": "Додати клієнта",
|
||||||
"copy_client_secret_info": "Скопіювавши секрет, ви більше не зможете його переглянути",
|
"copy_client_secret_info": "Скопіювавши секрет, ви більше не зможете його переглянути",
|
||||||
"add_new_client": "Додати нового клієнта",
|
"add_new_client": "Додати нового клієнта",
|
||||||
@@ -2101,5 +2097,6 @@
|
|||||||
"lock_timezone_toggle_on_booking_page": "Заблокуйте часовий пояс на сторінці бронювання",
|
"lock_timezone_toggle_on_booking_page": "Заблокуйте часовий пояс на сторінці бронювання",
|
||||||
"description_lock_timezone_toggle_on_booking_page": "Для блокування часового поясу на сторінці бронювання (корисне для окремих заходів)",
|
"description_lock_timezone_toggle_on_booking_page": "Для блокування часового поясу на сторінці бронювання (корисне для окремих заходів)",
|
||||||
"extensive_whitelabeling": "Технічна підтримка й підтримка під час ознайомлення",
|
"extensive_whitelabeling": "Технічна підтримка й підтримка під час ознайомлення",
|
||||||
|
"need_help": "Потрібна допомога?",
|
||||||
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Add your new strings above here ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Add your new strings above here ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
||||||
}
|
}
|
||||||
@@ -666,8 +666,6 @@
|
|||||||
"managed_event_url_clarification": "\"username\" sẽ được điền vào theo tên người dùng của những thành viên được phân công",
|
"managed_event_url_clarification": "\"username\" sẽ được điền vào theo tên người dùng của những thành viên được phân công",
|
||||||
"assign_to": "Phân công cho",
|
"assign_to": "Phân công cho",
|
||||||
"add_members": "Thêm thành viên...",
|
"add_members": "Thêm thành viên...",
|
||||||
"count_members_one": "{{count}} thành viên",
|
|
||||||
"count_members_other": "{{count}} thành viên",
|
|
||||||
"no_assigned_members": "Không thành viên nào được phân công",
|
"no_assigned_members": "Không thành viên nào được phân công",
|
||||||
"assigned_to": "Được phân công cho",
|
"assigned_to": "Được phân công cho",
|
||||||
"start_assigning_members_above": "Bắt đầu phân công những thành viên bên trên",
|
"start_assigning_members_above": "Bắt đầu phân công những thành viên bên trên",
|
||||||
@@ -849,7 +847,6 @@
|
|||||||
"next_step": "Bỏ qua bước",
|
"next_step": "Bỏ qua bước",
|
||||||
"prev_step": "Bước trước",
|
"prev_step": "Bước trước",
|
||||||
"install": "Cài đặt",
|
"install": "Cài đặt",
|
||||||
"install_paid_app": "Đăng ký",
|
|
||||||
"installed": "Đã cài đặt",
|
"installed": "Đã cài đặt",
|
||||||
"active_install_one": "{{count}} cài đặt hoạt động",
|
"active_install_one": "{{count}} cài đặt hoạt động",
|
||||||
"active_install_other": "{{count}} cài đặt hoạt động",
|
"active_install_other": "{{count}} cài đặt hoạt động",
|
||||||
@@ -1153,6 +1150,7 @@
|
|||||||
"active_on": "Hoạt động vào",
|
"active_on": "Hoạt động vào",
|
||||||
"workflow_updated_successfully": "Đã cập nhật thành công tiến độ công việc {{workflowName}}",
|
"workflow_updated_successfully": "Đã cập nhật thành công tiến độ công việc {{workflowName}}",
|
||||||
"premium_to_standard_username_description": "Đây là tên người dùng tiêu chuẩn và việc cập nhật sẽ đưa bạn đến khâu thanh toán để hạ cấp độ.",
|
"premium_to_standard_username_description": "Đây là tên người dùng tiêu chuẩn và việc cập nhật sẽ đưa bạn đến khâu thanh toán để hạ cấp độ.",
|
||||||
|
"premium_username": "Đây là tên người dùng cao cấp, hãy nhận lấy một cái cho bạn với mức {{price}}",
|
||||||
"current": "Hiện tại",
|
"current": "Hiện tại",
|
||||||
"premium": "cao cấp",
|
"premium": "cao cấp",
|
||||||
"standard": "tiêu chuẩn",
|
"standard": "tiêu chuẩn",
|
||||||
@@ -1218,9 +1216,6 @@
|
|||||||
"attendee_name_variable": "Tên người tham dự",
|
"attendee_name_variable": "Tên người tham dự",
|
||||||
"event_date_variable": "Ngày sự kiện",
|
"event_date_variable": "Ngày sự kiện",
|
||||||
"event_time_variable": "Thời gian sự kiện",
|
"event_time_variable": "Thời gian sự kiện",
|
||||||
"timezone_variable": "Múi giờ",
|
|
||||||
"location_variable": "Vị trí",
|
|
||||||
"additional_notes_variable": "Ghi chú bổ sung",
|
|
||||||
"organizer_name_variable": "Tên nhà tổ chức",
|
"organizer_name_variable": "Tên nhà tổ chức",
|
||||||
"app_upgrade_description": "Để sử dụng tính năng này, bạn cần nâng cấp lên tài khoản Pro.",
|
"app_upgrade_description": "Để sử dụng tính năng này, bạn cần nâng cấp lên tài khoản Pro.",
|
||||||
"invalid_number": "Số điện thoại không hợp lệ",
|
"invalid_number": "Số điện thoại không hợp lệ",
|
||||||
@@ -1536,6 +1531,7 @@
|
|||||||
"you": "Bạn",
|
"you": "Bạn",
|
||||||
"resend_email": "Gửi lại email",
|
"resend_email": "Gửi lại email",
|
||||||
"member_already_invited": "Thành viên đã được mời rồi",
|
"member_already_invited": "Thành viên đã được mời rồi",
|
||||||
|
"already_in_use_error": "Tên người dùng đã được dùng",
|
||||||
"enter_email_or_username": "Nhập một email hoặc tên người dùng",
|
"enter_email_or_username": "Nhập một email hoặc tên người dùng",
|
||||||
"team_name_taken": "Tên này đã có người lấy rồi",
|
"team_name_taken": "Tên này đã có người lấy rồi",
|
||||||
"must_enter_team_name": "Cần phải nhập một tên nhóm",
|
"must_enter_team_name": "Cần phải nhập một tên nhóm",
|
||||||
@@ -1986,14 +1982,11 @@
|
|||||||
"google_new_spam_policy": "Chính sách thư rác mới của Google có thể ngăn bạn nhận bất kì thông báo nào về email và lịch liên quan đến lịch hẹn này.",
|
"google_new_spam_policy": "Chính sách thư rác mới của Google có thể ngăn bạn nhận bất kì thông báo nào về email và lịch liên quan đến lịch hẹn này.",
|
||||||
"resolve": "Giải quyết",
|
"resolve": "Giải quyết",
|
||||||
"no_organization_slug": "Có lỗi khi tạo nhóm cho tổ chức này. Slug URL bị thiếu.",
|
"no_organization_slug": "Có lỗi khi tạo nhóm cho tổ chức này. Slug URL bị thiếu.",
|
||||||
"org_name": "Tên tổ chức",
|
|
||||||
"org_url": "URL của tổ chức",
|
|
||||||
"copy_link_org": "Sao chép liên kết đến tổ chức",
|
"copy_link_org": "Sao chép liên kết đến tổ chức",
|
||||||
"404_the_org": "Tổ chức",
|
"404_the_org": "Tổ chức",
|
||||||
"404_the_team": "Nhóm",
|
"404_the_team": "Nhóm",
|
||||||
"404_claim_entity_org": "Lấy tên miền phụ cho tổ chức của bạn",
|
"404_claim_entity_org": "Lấy tên miền phụ cho tổ chức của bạn",
|
||||||
"404_claim_entity_team": "Lấy nhóm này và bắt đầu quản lý lịch hẹn theo tập thể",
|
"404_claim_entity_team": "Lấy nhóm này và bắt đầu quản lý lịch hẹn theo tập thể",
|
||||||
"insights_all_org_filter": "Tất cả",
|
|
||||||
"insights_team_filter": "Nhóm: {{teamName}}",
|
"insights_team_filter": "Nhóm: {{teamName}}",
|
||||||
"insights_user_filter": "Người dùng: {{userName}}",
|
"insights_user_filter": "Người dùng: {{userName}}",
|
||||||
"insights_subtitle": "Xem insights của đặt lịch ở mọi sự kiện của bạn",
|
"insights_subtitle": "Xem insights của đặt lịch ở mọi sự kiện của bạn",
|
||||||
@@ -2005,7 +1998,6 @@
|
|||||||
"select_date": "Chọn ngày",
|
"select_date": "Chọn ngày",
|
||||||
"see_all_available_times": "Xem tất cả những thời gian trống",
|
"see_all_available_times": "Xem tất cả những thời gian trống",
|
||||||
"org_team_names_example": "ví dụ Nhóm Tiếp thị",
|
"org_team_names_example": "ví dụ Nhóm Tiếp thị",
|
||||||
"org_team_names_example_1": "ví dụ Nhóm Tiếp thị",
|
|
||||||
"org_team_names_example_2": "ví dụ Nhóm Kinh doanh",
|
"org_team_names_example_2": "ví dụ Nhóm Kinh doanh",
|
||||||
"org_team_names_example_3": "ví dụ Nhóm Thiết kế",
|
"org_team_names_example_3": "ví dụ Nhóm Thiết kế",
|
||||||
"org_team_names_example_4": "ví dụ Nhóm Kỹ thuật",
|
"org_team_names_example_4": "ví dụ Nhóm Kỹ thuật",
|
||||||
@@ -2067,6 +2059,9 @@
|
|||||||
"include_calendar_event": "Bao gồm sự kiện lịch",
|
"include_calendar_event": "Bao gồm sự kiện lịch",
|
||||||
"oAuth": "OAuth",
|
"oAuth": "OAuth",
|
||||||
"recently_added": "Đã thêm vào gần đây",
|
"recently_added": "Đã thêm vào gần đây",
|
||||||
|
"connect_all_calendars": "Kết nối tất cả lịch của bạn",
|
||||||
|
"workflow_automation": "Tự động hoá dòng công việc",
|
||||||
|
"scheduling_for_your_team": "Tự động hoá dòng công việc",
|
||||||
"no_members_found": "Không tìm thấy thành viên nào",
|
"no_members_found": "Không tìm thấy thành viên nào",
|
||||||
"event_setup_length_error": "Thiết lập sự kiện: Thời lượng phải ít nhất 1 phút.",
|
"event_setup_length_error": "Thiết lập sự kiện: Thời lượng phải ít nhất 1 phút.",
|
||||||
"availability_schedules": "Lịch trống",
|
"availability_schedules": "Lịch trống",
|
||||||
@@ -2090,6 +2085,7 @@
|
|||||||
"edit_users_availability": "Sửa tình trạng trống lịch của người dùng: {{username}}",
|
"edit_users_availability": "Sửa tình trạng trống lịch của người dùng: {{username}}",
|
||||||
"resend_invitation": "Gửi lại lời mời",
|
"resend_invitation": "Gửi lại lời mời",
|
||||||
"invitation_resent": "Lời mời đã được gửi lại.",
|
"invitation_resent": "Lời mời đã được gửi lại.",
|
||||||
|
"saml_sso": "SAML",
|
||||||
"add_client": "Thêm khách hàng",
|
"add_client": "Thêm khách hàng",
|
||||||
"copy_client_secret_info": "Sau khi sao chép bí mật, bạn sẽ không thể xem nó được nữa",
|
"copy_client_secret_info": "Sau khi sao chép bí mật, bạn sẽ không thể xem nó được nữa",
|
||||||
"add_new_client": "Thêm khách hàng mới",
|
"add_new_client": "Thêm khách hàng mới",
|
||||||
@@ -2101,5 +2097,6 @@
|
|||||||
"lock_timezone_toggle_on_booking_page": "Khoá múi giờ trên trang lịch hẹn",
|
"lock_timezone_toggle_on_booking_page": "Khoá múi giờ trên trang lịch hẹn",
|
||||||
"description_lock_timezone_toggle_on_booking_page": "Để khoá múi giờ trên trang lịch hẹn, hữu dụng cho những sự kiện đích thân tham dự.",
|
"description_lock_timezone_toggle_on_booking_page": "Để khoá múi giờ trên trang lịch hẹn, hữu dụng cho những sự kiện đích thân tham dự.",
|
||||||
"extensive_whitelabeling": "Hướng dẫn bắt đầu và hỗ trợ kỹ thuật chuyên biệt",
|
"extensive_whitelabeling": "Hướng dẫn bắt đầu và hỗ trợ kỹ thuật chuyên biệt",
|
||||||
|
"need_help": "Cần hỗ trợ?",
|
||||||
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Add your new strings above here ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Add your new strings above here ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
||||||
}
|
}
|
||||||
@@ -666,8 +666,6 @@
|
|||||||
"managed_event_url_clarification": "“用户名”将填写所分配成员的用户名",
|
"managed_event_url_clarification": "“用户名”将填写所分配成员的用户名",
|
||||||
"assign_to": "分配给",
|
"assign_to": "分配给",
|
||||||
"add_members": "添加成员...",
|
"add_members": "添加成员...",
|
||||||
"count_members_one": "{{count}} 个成员",
|
|
||||||
"count_members_other": "{{count}} 个成员",
|
|
||||||
"no_assigned_members": "没有已分配的成员",
|
"no_assigned_members": "没有已分配的成员",
|
||||||
"assigned_to": "已分配给",
|
"assigned_to": "已分配给",
|
||||||
"start_assigning_members_above": "开始分配以上成员",
|
"start_assigning_members_above": "开始分配以上成员",
|
||||||
@@ -849,7 +847,6 @@
|
|||||||
"next_step": "跳过步骤",
|
"next_step": "跳过步骤",
|
||||||
"prev_step": "上一步",
|
"prev_step": "上一步",
|
||||||
"install": "安装",
|
"install": "安装",
|
||||||
"install_paid_app": "订阅",
|
|
||||||
"start_paid_trial": "开始免费试用",
|
"start_paid_trial": "开始免费试用",
|
||||||
"installed": "已安装",
|
"installed": "已安装",
|
||||||
"active_install_one": "{{count}} 个活动安装",
|
"active_install_one": "{{count}} 个活动安装",
|
||||||
@@ -1154,6 +1151,7 @@
|
|||||||
"active_on": "活跃于",
|
"active_on": "活跃于",
|
||||||
"workflow_updated_successfully": "{{workflowName}} 工作流程已成功更新",
|
"workflow_updated_successfully": "{{workflowName}} 工作流程已成功更新",
|
||||||
"premium_to_standard_username_description": "这是一个标准用户名,更新流程会将您引导至账单页面进行降级。",
|
"premium_to_standard_username_description": "这是一个标准用户名,更新流程会将您引导至账单页面进行降级。",
|
||||||
|
"premium_username": "这是高级用户名,支付 {{price}} 即可获得您的高级用户名",
|
||||||
"current": "当前",
|
"current": "当前",
|
||||||
"premium": "高级",
|
"premium": "高级",
|
||||||
"standard": "标准",
|
"standard": "标准",
|
||||||
@@ -1219,9 +1217,6 @@
|
|||||||
"attendee_name_variable": "参与者",
|
"attendee_name_variable": "参与者",
|
||||||
"event_date_variable": "活动日期",
|
"event_date_variable": "活动日期",
|
||||||
"event_time_variable": "活动时间",
|
"event_time_variable": "活动时间",
|
||||||
"timezone_variable": "时区",
|
|
||||||
"location_variable": "位置",
|
|
||||||
"additional_notes_variable": "附加备注",
|
|
||||||
"organizer_name_variable": "组织者姓名",
|
"organizer_name_variable": "组织者姓名",
|
||||||
"app_upgrade_description": "要使用此功能,您需要升级到专业版帐户。",
|
"app_upgrade_description": "要使用此功能,您需要升级到专业版帐户。",
|
||||||
"invalid_number": "电话号码无效",
|
"invalid_number": "电话号码无效",
|
||||||
@@ -1537,6 +1532,7 @@
|
|||||||
"you": "您",
|
"you": "您",
|
||||||
"resend_email": "重新发送电子邮件",
|
"resend_email": "重新发送电子邮件",
|
||||||
"member_already_invited": "成员已被邀请",
|
"member_already_invited": "成员已被邀请",
|
||||||
|
"already_in_use_error": "用户名已在使用中",
|
||||||
"enter_email_or_username": "输入电子邮件或用户名",
|
"enter_email_or_username": "输入电子邮件或用户名",
|
||||||
"team_name_taken": "此名称已被使用",
|
"team_name_taken": "此名称已被使用",
|
||||||
"must_enter_team_name": "必须输入团队名称",
|
"must_enter_team_name": "必须输入团队名称",
|
||||||
@@ -1987,14 +1983,11 @@
|
|||||||
"google_new_spam_policy": "Google 的新垃圾邮件政策可能会阻止您收到任何有关此预约的电子邮件和日历通知。",
|
"google_new_spam_policy": "Google 的新垃圾邮件政策可能会阻止您收到任何有关此预约的电子邮件和日历通知。",
|
||||||
"resolve": "解决",
|
"resolve": "解决",
|
||||||
"no_organization_slug": "为该组织创建团队时出错。缺少链接 slug。",
|
"no_organization_slug": "为该组织创建团队时出错。缺少链接 slug。",
|
||||||
"org_name": "组织名称",
|
|
||||||
"org_url": "组织链接",
|
|
||||||
"copy_link_org": "复制组织链接",
|
"copy_link_org": "复制组织链接",
|
||||||
"404_the_org": "组织",
|
"404_the_org": "组织",
|
||||||
"404_the_team": "团队",
|
"404_the_team": "团队",
|
||||||
"404_claim_entity_org": "为您的组织声明子域",
|
"404_claim_entity_org": "为您的组织声明子域",
|
||||||
"404_claim_entity_team": "声明成为此团队的一员并开始集体管理时间表",
|
"404_claim_entity_team": "声明成为此团队的一员并开始集体管理时间表",
|
||||||
"insights_all_org_filter": "所有应用",
|
|
||||||
"insights_team_filter": "团队:{{teamName}}",
|
"insights_team_filter": "团队:{{teamName}}",
|
||||||
"insights_user_filter": "用户:{{userName}}",
|
"insights_user_filter": "用户:{{userName}}",
|
||||||
"insights_subtitle": "查看您活动的预约 insights",
|
"insights_subtitle": "查看您活动的预约 insights",
|
||||||
@@ -2006,7 +1999,6 @@
|
|||||||
"select_date": "选择日期",
|
"select_date": "选择日期",
|
||||||
"see_all_available_times": "查看所有可预约时间",
|
"see_all_available_times": "查看所有可预约时间",
|
||||||
"org_team_names_example": "例如,营销团队",
|
"org_team_names_example": "例如,营销团队",
|
||||||
"org_team_names_example_1": "例如,营销团队",
|
|
||||||
"org_team_names_example_2": "例如,销售团队",
|
"org_team_names_example_2": "例如,销售团队",
|
||||||
"org_team_names_example_3": "例如,设计团队",
|
"org_team_names_example_3": "例如,设计团队",
|
||||||
"org_team_names_example_4": "例如,工程团队",
|
"org_team_names_example_4": "例如,工程团队",
|
||||||
@@ -2068,6 +2060,9 @@
|
|||||||
"include_calendar_event": "包括日历活动",
|
"include_calendar_event": "包括日历活动",
|
||||||
"oAuth": "OAuth",
|
"oAuth": "OAuth",
|
||||||
"recently_added": "最近添加",
|
"recently_added": "最近添加",
|
||||||
|
"connect_all_calendars": "连接您的所有日历",
|
||||||
|
"workflow_automation": "工作流程自动化",
|
||||||
|
"scheduling_for_your_team": "工作流程自动化",
|
||||||
"no_members_found": "未找到成员",
|
"no_members_found": "未找到成员",
|
||||||
"event_setup_length_error": "获得设置:持续时间必须至少为 1 分钟。",
|
"event_setup_length_error": "获得设置:持续时间必须至少为 1 分钟。",
|
||||||
"availability_schedules": "可预约时间表",
|
"availability_schedules": "可预约时间表",
|
||||||
@@ -2091,6 +2086,7 @@
|
|||||||
"edit_users_availability": "编辑用户的可预约时间:{{username}}",
|
"edit_users_availability": "编辑用户的可预约时间:{{username}}",
|
||||||
"resend_invitation": "重新发送邀请",
|
"resend_invitation": "重新发送邀请",
|
||||||
"invitation_resent": "邀请已重新发送。",
|
"invitation_resent": "邀请已重新发送。",
|
||||||
|
"saml_sso": "SAML",
|
||||||
"add_client": "添加客户",
|
"add_client": "添加客户",
|
||||||
"copy_client_secret_info": "复制密码后,您将无法再查看",
|
"copy_client_secret_info": "复制密码后,您将无法再查看",
|
||||||
"add_new_client": "添加新客户",
|
"add_new_client": "添加新客户",
|
||||||
@@ -2102,5 +2098,6 @@
|
|||||||
"lock_timezone_toggle_on_booking_page": "在预约页面上锁定时区",
|
"lock_timezone_toggle_on_booking_page": "在预约页面上锁定时区",
|
||||||
"description_lock_timezone_toggle_on_booking_page": "在预约页面上锁定时区,这对面对面活动非常有用。",
|
"description_lock_timezone_toggle_on_booking_page": "在预约页面上锁定时区,这对面对面活动非常有用。",
|
||||||
"extensive_whitelabeling": "专门的入门和工程支持",
|
"extensive_whitelabeling": "专门的入门和工程支持",
|
||||||
|
"need_help": "需要帮助?",
|
||||||
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ 在此上方添加您的新字符串 ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ 在此上方添加您的新字符串 ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
||||||
}
|
}
|
||||||
@@ -666,8 +666,6 @@
|
|||||||
"managed_event_url_clarification": "「使用者名稱」會填入所指派成員的使用者名稱",
|
"managed_event_url_clarification": "「使用者名稱」會填入所指派成員的使用者名稱",
|
||||||
"assign_to": "指派給",
|
"assign_to": "指派給",
|
||||||
"add_members": "新增成員…",
|
"add_members": "新增成員…",
|
||||||
"count_members_one": "{{count}} 名成員",
|
|
||||||
"count_members_other": "{{count}} 名成員",
|
|
||||||
"no_assigned_members": "無已指派成員",
|
"no_assigned_members": "無已指派成員",
|
||||||
"assigned_to": "已指派給",
|
"assigned_to": "已指派給",
|
||||||
"start_assigning_members_above": "開始指派以上成員",
|
"start_assigning_members_above": "開始指派以上成員",
|
||||||
@@ -849,7 +847,6 @@
|
|||||||
"next_step": "跳過步驟",
|
"next_step": "跳過步驟",
|
||||||
"prev_step": "上個步驟",
|
"prev_step": "上個步驟",
|
||||||
"install": "安裝",
|
"install": "安裝",
|
||||||
"install_paid_app": "訂閱",
|
|
||||||
"installed": "已安裝",
|
"installed": "已安裝",
|
||||||
"active_install_one": "{{count}} 個有效安裝",
|
"active_install_one": "{{count}} 個有效安裝",
|
||||||
"active_install_other": "{{count}} 個有效安裝",
|
"active_install_other": "{{count}} 個有效安裝",
|
||||||
@@ -1153,6 +1150,7 @@
|
|||||||
"active_on": "啟用類型:",
|
"active_on": "啟用類型:",
|
||||||
"workflow_updated_successfully": "已成功更新 {{workflowName}}",
|
"workflow_updated_successfully": "已成功更新 {{workflowName}}",
|
||||||
"premium_to_standard_username_description": "此為標準使用者名稱,更新系統會帶您前往付費頁面進行降級。",
|
"premium_to_standard_username_description": "此為標準使用者名稱,更新系統會帶您前往付費頁面進行降級。",
|
||||||
|
"premium_username": "此為高級使用者名稱,支付 {{price}} 即可擁有",
|
||||||
"current": "目前",
|
"current": "目前",
|
||||||
"premium": "高級",
|
"premium": "高級",
|
||||||
"standard": "標準",
|
"standard": "標準",
|
||||||
@@ -1218,9 +1216,6 @@
|
|||||||
"attendee_name_variable": "與會者姓名",
|
"attendee_name_variable": "與會者姓名",
|
||||||
"event_date_variable": "活動日期",
|
"event_date_variable": "活動日期",
|
||||||
"event_time_variable": "活動時間",
|
"event_time_variable": "活動時間",
|
||||||
"timezone_variable": "時區",
|
|
||||||
"location_variable": "地點",
|
|
||||||
"additional_notes_variable": "備註",
|
|
||||||
"organizer_name_variable": "主辦者姓名",
|
"organizer_name_variable": "主辦者姓名",
|
||||||
"app_upgrade_description": "您必須升級至專業版帳號才能使用此功能。",
|
"app_upgrade_description": "您必須升級至專業版帳號才能使用此功能。",
|
||||||
"invalid_number": "電話號碼無效",
|
"invalid_number": "電話號碼無效",
|
||||||
@@ -1536,6 +1531,7 @@
|
|||||||
"you": "您",
|
"you": "您",
|
||||||
"resend_email": "重新傳送電子郵件",
|
"resend_email": "重新傳送電子郵件",
|
||||||
"member_already_invited": "已邀請成員",
|
"member_already_invited": "已邀請成員",
|
||||||
|
"already_in_use_error": "此使用者名稱已在使用中",
|
||||||
"enter_email_or_username": "輸入電子郵件或使用者名稱",
|
"enter_email_or_username": "輸入電子郵件或使用者名稱",
|
||||||
"team_name_taken": "已有人使用此名稱",
|
"team_name_taken": "已有人使用此名稱",
|
||||||
"must_enter_team_name": "團隊名稱為必填",
|
"must_enter_team_name": "團隊名稱為必填",
|
||||||
@@ -1986,14 +1982,11 @@
|
|||||||
"google_new_spam_policy": "新的 Google 垃圾郵件政策可能會使您收不到任何關於此預約的電子郵件和行事曆通知。",
|
"google_new_spam_policy": "新的 Google 垃圾郵件政策可能會使您收不到任何關於此預約的電子郵件和行事曆通知。",
|
||||||
"resolve": "解決",
|
"resolve": "解決",
|
||||||
"no_organization_slug": "為此組織建立團隊時發生錯誤。缺少網址 slug。",
|
"no_organization_slug": "為此組織建立團隊時發生錯誤。缺少網址 slug。",
|
||||||
"org_name": "組織名稱",
|
|
||||||
"org_url": "組織網址",
|
|
||||||
"copy_link_org": "複製組織連結",
|
"copy_link_org": "複製組織連結",
|
||||||
"404_the_org": "組織",
|
"404_the_org": "組織",
|
||||||
"404_the_team": "團隊",
|
"404_the_team": "團隊",
|
||||||
"404_claim_entity_org": "為您的組織預留子網域",
|
"404_claim_entity_org": "為您的組織預留子網域",
|
||||||
"404_claim_entity_team": "加入此團隊並開始共同管理行程表",
|
"404_claim_entity_team": "加入此團隊並開始共同管理行程表",
|
||||||
"insights_all_org_filter": "所有應用程式",
|
|
||||||
"insights_team_filter": "團隊:{{teamName}}",
|
"insights_team_filter": "團隊:{{teamName}}",
|
||||||
"insights_user_filter": "使用者:{{userName}}",
|
"insights_user_filter": "使用者:{{userName}}",
|
||||||
"insights_subtitle": "查看所有活動的預約 Insight",
|
"insights_subtitle": "查看所有活動的預約 Insight",
|
||||||
@@ -2005,7 +1998,6 @@
|
|||||||
"select_date": "選取日期",
|
"select_date": "選取日期",
|
||||||
"see_all_available_times": "查看所有可預約時段",
|
"see_all_available_times": "查看所有可預約時段",
|
||||||
"org_team_names_example": "例如行銷團隊",
|
"org_team_names_example": "例如行銷團隊",
|
||||||
"org_team_names_example_1": "例如行銷團隊",
|
|
||||||
"org_team_names_example_2": "例如銷售團隊",
|
"org_team_names_example_2": "例如銷售團隊",
|
||||||
"org_team_names_example_3": "例如設計團隊",
|
"org_team_names_example_3": "例如設計團隊",
|
||||||
"org_team_names_example_4": "例如工程團隊",
|
"org_team_names_example_4": "例如工程團隊",
|
||||||
@@ -2067,6 +2059,9 @@
|
|||||||
"include_calendar_event": "包含行事曆活動",
|
"include_calendar_event": "包含行事曆活動",
|
||||||
"oAuth": "OAuth",
|
"oAuth": "OAuth",
|
||||||
"recently_added": "最近新增",
|
"recently_added": "最近新增",
|
||||||
|
"connect_all_calendars": "連接您的所有行事曆",
|
||||||
|
"workflow_automation": "工作流程自動化",
|
||||||
|
"scheduling_for_your_team": "工作流程自動化",
|
||||||
"no_members_found": "找不到成員",
|
"no_members_found": "找不到成員",
|
||||||
"event_setup_length_error": "活動設定:持續時間至少必須為 1 分鐘。",
|
"event_setup_length_error": "活動設定:持續時間至少必須為 1 分鐘。",
|
||||||
"availability_schedules": "可預約時間行程表",
|
"availability_schedules": "可預約時間行程表",
|
||||||
@@ -2090,6 +2085,7 @@
|
|||||||
"edit_users_availability": "編輯使用者的可預約時間:{{username}}",
|
"edit_users_availability": "編輯使用者的可預約時間:{{username}}",
|
||||||
"resend_invitation": "重新傳送邀請",
|
"resend_invitation": "重新傳送邀請",
|
||||||
"invitation_resent": "邀請已重新傳送。",
|
"invitation_resent": "邀請已重新傳送。",
|
||||||
|
"saml_sso": "SAML",
|
||||||
"add_client": "新增用戶端",
|
"add_client": "新增用戶端",
|
||||||
"copy_client_secret_info": "密碼複製後即無法再查看",
|
"copy_client_secret_info": "密碼複製後即無法再查看",
|
||||||
"add_new_client": "新增客戶",
|
"add_new_client": "新增客戶",
|
||||||
@@ -2101,5 +2097,6 @@
|
|||||||
"lock_timezone_toggle_on_booking_page": "鎖定預約頁面的時區",
|
"lock_timezone_toggle_on_booking_page": "鎖定預約頁面的時區",
|
||||||
"description_lock_timezone_toggle_on_booking_page": "鎖定預約頁面的時區,安排實體活動時非常實用。",
|
"description_lock_timezone_toggle_on_booking_page": "鎖定預約頁面的時區,安排實體活動時非常實用。",
|
||||||
"extensive_whitelabeling": "專屬的入門和工程支援",
|
"extensive_whitelabeling": "專屬的入門和工程支援",
|
||||||
|
"need_help": "需要協助?",
|
||||||
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ 請在此處新增您的字串 ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
"ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ 請在此處新增您的字串 ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑"
|
||||||
}
|
}
|
||||||
@@ -547,6 +547,45 @@ export function expectCalendarEventCreationFailureEmails({
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function expectSuccessfulRoudRobinReschedulingEmails({
|
||||||
|
emails,
|
||||||
|
newOrganizer,
|
||||||
|
prevOrganizer,
|
||||||
|
}: {
|
||||||
|
emails: Fixtures["emails"];
|
||||||
|
newOrganizer: { email: string; name: string };
|
||||||
|
prevOrganizer: { email: string; name: string };
|
||||||
|
}) {
|
||||||
|
if (newOrganizer !== prevOrganizer) {
|
||||||
|
// new organizer should recieve scheduling emails
|
||||||
|
expect(emails).toHaveEmail(
|
||||||
|
{
|
||||||
|
heading: "new_event_scheduled",
|
||||||
|
to: `${newOrganizer.email}`,
|
||||||
|
},
|
||||||
|
`${newOrganizer.email}`
|
||||||
|
);
|
||||||
|
|
||||||
|
// old organizer should recieve cancelled emails
|
||||||
|
expect(emails).toHaveEmail(
|
||||||
|
{
|
||||||
|
heading: "event_request_cancelled",
|
||||||
|
to: `${prevOrganizer.email}`,
|
||||||
|
},
|
||||||
|
`${prevOrganizer.email}`
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
// organizer should recieve rescheduled emails
|
||||||
|
expect(emails).toHaveEmail(
|
||||||
|
{
|
||||||
|
heading: "event_has_been_rescheduled",
|
||||||
|
to: `${newOrganizer.email}`,
|
||||||
|
},
|
||||||
|
`${newOrganizer.email}`
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
export function expectSuccessfulBookingRescheduledEmails({
|
export function expectSuccessfulBookingRescheduledEmails({
|
||||||
emails,
|
emails,
|
||||||
organizer,
|
organizer,
|
||||||
|
|||||||
@@ -104,10 +104,9 @@ function generateFiles() {
|
|||||||
* If a file has index.ts or index.tsx, it can be imported after removing the index.ts* part
|
* If a file has index.ts or index.tsx, it can be imported after removing the index.ts* part
|
||||||
*/
|
*/
|
||||||
function getModulePath(path: string, moduleName: string) {
|
function getModulePath(path: string, moduleName: string) {
|
||||||
return (
|
return `./${path.replace(/\\/g, "/")}/${moduleName
|
||||||
`./${path.replace(/\\/g, "/")}/` +
|
.replace(/\/index\.ts|\/index\.tsx/, "")
|
||||||
moduleName.replace(/\/index\.ts|\/index\.tsx/, "").replace(/\.tsx$|\.ts$/, "")
|
.replace(/\.tsx$|\.ts$/, "")}`;
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
type ImportConfig =
|
type ImportConfig =
|
||||||
|
|||||||
@@ -7,8 +7,6 @@ items:
|
|||||||
- 5.jpg
|
- 5.jpg
|
||||||
---
|
---
|
||||||
|
|
||||||
**FREE TRIAL until December 1st, 2023**
|
|
||||||
|
|
||||||
{DESCRIPTION}
|
{DESCRIPTION}
|
||||||
|
|
||||||
## Example questions:
|
## Example questions:
|
||||||
|
|||||||
@@ -1,57 +1,14 @@
|
|||||||
import type { NextApiRequest, NextApiResponse } from "next";
|
import type { NextApiRequest, NextApiResponse } from "next";
|
||||||
|
|
||||||
import { defaultResponder } from "@calcom/lib/server";
|
import { defaultResponder } from "@calcom/lib/server";
|
||||||
import { createContext } from "@calcom/trpc/server/createContext";
|
|
||||||
import { apiKeysRouter } from "@calcom/trpc/server/routers/viewer/apiKeys/_router";
|
|
||||||
|
|
||||||
import checkSession from "../../_utils/auth";
|
import checkSession from "../../_utils/auth";
|
||||||
import getInstalledAppPath from "../../_utils/getInstalledAppPath";
|
|
||||||
import { checkInstalled, createDefaultInstallation } from "../../_utils/installation";
|
|
||||||
import { withPaidAppRedirect } from "../../_utils/paid-apps";
|
import { withPaidAppRedirect } from "../../_utils/paid-apps";
|
||||||
import appConfig from "../config.json";
|
import appConfig from "../config.json";
|
||||||
|
|
||||||
const trialEndDate = new Date(Date.UTC(2023, 11, 1));
|
|
||||||
|
|
||||||
export async function getHandler(req: NextApiRequest, res: NextApiResponse) {
|
export async function getHandler(req: NextApiRequest, res: NextApiResponse) {
|
||||||
const session = checkSession(req);
|
const session = checkSession(req);
|
||||||
|
|
||||||
// if date is in the future, we install normally.
|
|
||||||
if (new Date() < trialEndDate) {
|
|
||||||
const ctx = await createContext({ req, res });
|
|
||||||
const caller = apiKeysRouter.createCaller(ctx);
|
|
||||||
|
|
||||||
const apiKey = await caller.create({
|
|
||||||
note: "Cal.ai",
|
|
||||||
expiresAt: null,
|
|
||||||
appId: "cal-ai",
|
|
||||||
});
|
|
||||||
|
|
||||||
await checkInstalled(appConfig.slug, session.user.id);
|
|
||||||
await createDefaultInstallation({
|
|
||||||
appType: appConfig.type,
|
|
||||||
userId: session.user.id,
|
|
||||||
slug: appConfig.slug,
|
|
||||||
key: {
|
|
||||||
apiKey,
|
|
||||||
},
|
|
||||||
});
|
|
||||||
|
|
||||||
await fetch(
|
|
||||||
`${process.env.NODE_ENV === "development" ? "http://localhost:3005" : "https://cal.ai"}/api/onboard`,
|
|
||||||
{
|
|
||||||
method: "POST",
|
|
||||||
headers: {
|
|
||||||
"Content-Type": "application/json",
|
|
||||||
},
|
|
||||||
body: JSON.stringify({
|
|
||||||
userId: session.user.id,
|
|
||||||
}),
|
|
||||||
}
|
|
||||||
);
|
|
||||||
|
|
||||||
return { url: getInstalledAppPath({ variant: appConfig.variant, slug: "cal-ai" }) };
|
|
||||||
}
|
|
||||||
|
|
||||||
const redirectUrl = await withPaidAppRedirect({
|
const redirectUrl = await withPaidAppRedirect({
|
||||||
appPaidMode: appConfig.paid.mode,
|
appPaidMode: appConfig.paid.mode,
|
||||||
appSlug: appConfig.slug,
|
appSlug: appConfig.slug,
|
||||||
|
|||||||
@@ -166,6 +166,7 @@ const MultiSelectWidget = ({
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<Select
|
<Select
|
||||||
|
aria-label="multi-select-dropdown"
|
||||||
className="mb-2"
|
className="mb-2"
|
||||||
onChange={(items) => {
|
onChange={(items) => {
|
||||||
setValue(items?.map((item) => item.value));
|
setValue(items?.map((item) => item.value));
|
||||||
@@ -193,6 +194,7 @@ function SelectWidget({ listValues, setValue, value, ...remainingProps }: Select
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<Select
|
<Select
|
||||||
|
aria-label="select-dropdown"
|
||||||
className="data-testid-select mb-2"
|
className="data-testid-select mb-2"
|
||||||
onChange={(item) => {
|
onChange={(item) => {
|
||||||
if (!item) {
|
if (!item) {
|
||||||
|
|||||||
@@ -323,7 +323,8 @@ export default class EventManager {
|
|||||||
public async reschedule(
|
public async reschedule(
|
||||||
event: CalendarEvent,
|
event: CalendarEvent,
|
||||||
rescheduleUid: string,
|
rescheduleUid: string,
|
||||||
newBookingId?: number
|
newBookingId?: number,
|
||||||
|
changedOrganizer?: boolean
|
||||||
): Promise<CreateUpdateResult> {
|
): Promise<CreateUpdateResult> {
|
||||||
const originalEvt = processLocation(event);
|
const originalEvt = processLocation(event);
|
||||||
const evt = cloneDeep(originalEvt);
|
const evt = cloneDeep(originalEvt);
|
||||||
@@ -376,32 +377,37 @@ export default class EventManager {
|
|||||||
// As the reschedule requires confirmation, we can't update the events and meetings to new time yet. So, just delete them and let it be handled when organizer confirms the booking.
|
// As the reschedule requires confirmation, we can't update the events and meetings to new time yet. So, just delete them and let it be handled when organizer confirms the booking.
|
||||||
await this.deleteEventsAndMeetings({ booking, event });
|
await this.deleteEventsAndMeetings({ booking, event });
|
||||||
} else {
|
} else {
|
||||||
// If the reschedule doesn't require confirmation, we can "update" the events and meetings to new time.
|
if (changedOrganizer) {
|
||||||
const isDedicated = evt.location ? isDedicatedIntegration(evt.location) : null;
|
log.debug("RescheduleOrganizerChanged: Deleting Event and Meeting for previous booking");
|
||||||
// If and only if event type is a dedicated meeting, update the dedicated video meeting.
|
await this.deleteEventsAndMeetings({ booking, event });
|
||||||
if (isDedicated) {
|
// New event is created in handleNewBooking
|
||||||
const result = await this.updateVideoEvent(evt, booking);
|
} else {
|
||||||
const [updatedEvent] = Array.isArray(result.updatedEvent)
|
// If the reschedule doesn't require confirmation, we can "update" the events and meetings to new time.
|
||||||
? result.updatedEvent
|
const isDedicated = evt.location ? isDedicatedIntegration(evt.location) : null;
|
||||||
: [result.updatedEvent];
|
// If and only if event type is a dedicated meeting, update the dedicated video meeting.
|
||||||
|
if (isDedicated) {
|
||||||
|
const result = await this.updateVideoEvent(evt, booking);
|
||||||
|
const [updatedEvent] = Array.isArray(result.updatedEvent)
|
||||||
|
? result.updatedEvent
|
||||||
|
: [result.updatedEvent];
|
||||||
|
|
||||||
if (updatedEvent) {
|
if (updatedEvent) {
|
||||||
evt.videoCallData = updatedEvent;
|
evt.videoCallData = updatedEvent;
|
||||||
evt.location = updatedEvent.url;
|
evt.location = updatedEvent.url;
|
||||||
|
}
|
||||||
|
results.push(result);
|
||||||
}
|
}
|
||||||
results.push(result);
|
|
||||||
}
|
|
||||||
|
|
||||||
const bookingCalendarReference = booking.references.find((reference) =>
|
const bookingCalendarReference = booking.references.find((reference) =>
|
||||||
reference.type.includes("_calendar")
|
reference.type.includes("_calendar")
|
||||||
);
|
);
|
||||||
// There was a case that booking didn't had any reference and we don't want to throw error on function
|
// There was a case that booking didn't had any reference and we don't want to throw error on function
|
||||||
if (bookingCalendarReference) {
|
if (bookingCalendarReference) {
|
||||||
// Update all calendar events.
|
// Update all calendar events.
|
||||||
results.push(...(await this.updateAllCalendarEvents(evt, booking, newBookingId)));
|
results.push(...(await this.updateAllCalendarEvents(evt, booking, newBookingId)));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const bookingPayment = booking?.payment;
|
const bookingPayment = booking?.payment;
|
||||||
|
|
||||||
// Updating all payment to new
|
// Updating all payment to new
|
||||||
|
|||||||
@@ -102,6 +102,37 @@ export const sendScheduledEmails = async (
|
|||||||
await Promise.all(emailsToSend);
|
await Promise.all(emailsToSend);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// for rescheduled round robin booking that assigned new members
|
||||||
|
export const sendRoundRobinScheduledEmails = async (calEvent: CalendarEvent, members: Person[]) => {
|
||||||
|
const emailsToSend: Promise<unknown>[] = [];
|
||||||
|
|
||||||
|
for (const teamMember of members) {
|
||||||
|
emailsToSend.push(sendEmail(() => new OrganizerScheduledEmail({ calEvent, teamMember })));
|
||||||
|
}
|
||||||
|
|
||||||
|
await Promise.all(emailsToSend);
|
||||||
|
};
|
||||||
|
|
||||||
|
export const sendRoundRobinRescheduledEmails = async (calEvent: CalendarEvent, members: Person[]) => {
|
||||||
|
const emailsToSend: Promise<unknown>[] = [];
|
||||||
|
|
||||||
|
for (const teamMember of members) {
|
||||||
|
emailsToSend.push(sendEmail(() => new OrganizerRescheduledEmail({ calEvent, teamMember })));
|
||||||
|
}
|
||||||
|
|
||||||
|
await Promise.all(emailsToSend);
|
||||||
|
};
|
||||||
|
|
||||||
|
export const sendRoundRobinCancelledEmails = async (calEvent: CalendarEvent, members: Person[]) => {
|
||||||
|
const emailsToSend: Promise<unknown>[] = [];
|
||||||
|
|
||||||
|
for (const teamMember of members) {
|
||||||
|
emailsToSend.push(sendEmail(() => new OrganizerCancelledEmail({ calEvent, teamMember })));
|
||||||
|
}
|
||||||
|
|
||||||
|
await Promise.all(emailsToSend);
|
||||||
|
};
|
||||||
|
|
||||||
export const sendRescheduledEmails = async (calEvent: CalendarEvent) => {
|
export const sendRescheduledEmails = async (calEvent: CalendarEvent) => {
|
||||||
const emailsToSend: Promise<unknown>[] = [];
|
const emailsToSend: Promise<unknown>[] = [];
|
||||||
|
|
||||||
|
|||||||
@@ -78,13 +78,13 @@ export const TeamInviteEmail = (
|
|||||||
marginTop: "48px",
|
marginTop: "48px",
|
||||||
lineHeightStep: "24px",
|
lineHeightStep: "24px",
|
||||||
}}>
|
}}>
|
||||||
<>
|
{/* <>
|
||||||
{props.language("email_no_user_invite_steps_intro", {
|
{props.language("email_no_user_invite_steps_intro", {
|
||||||
entity: props.language(props.isOrg ? "organization" : "team").toLowerCase(),
|
entity: props.language(props.isOrg ? "organization" : "team").toLowerCase(),
|
||||||
})}
|
})}
|
||||||
</>
|
</> */}
|
||||||
</p>
|
</p>
|
||||||
|
{/*
|
||||||
{!props.isCalcomMember && (
|
{!props.isCalcomMember && (
|
||||||
<div style={{ display: "flex", flexDirection: "column", gap: "32px" }}>
|
<div style={{ display: "flex", flexDirection: "column", gap: "32px" }}>
|
||||||
<EmailStep
|
<EmailStep
|
||||||
@@ -120,7 +120,7 @@ export const TeamInviteEmail = (
|
|||||||
}
|
}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
)}
|
)} */}
|
||||||
|
|
||||||
<div className="">
|
<div className="">
|
||||||
<p
|
<p
|
||||||
|
|||||||
@@ -0,0 +1,207 @@
|
|||||||
|
import type { NextApiResponse } from "next";
|
||||||
|
|
||||||
|
import stripe from "@calcom/app-store/stripepayment/lib/server";
|
||||||
|
import { getPremiumMonthlyPlanPriceId } from "@calcom/app-store/stripepayment/lib/utils";
|
||||||
|
import { hashPassword } from "@calcom/features/auth/lib/hashPassword";
|
||||||
|
import { sendEmailVerification } from "@calcom/features/auth/lib/verifyEmail";
|
||||||
|
import { WEBAPP_URL } from "@calcom/lib/constants";
|
||||||
|
import { getLocaleFromRequest } from "@calcom/lib/getLocaleFromRequest";
|
||||||
|
import { HttpError } from "@calcom/lib/http-error";
|
||||||
|
import { usernameHandler, type RequestWithUsernameStatus } from "@calcom/lib/server/username";
|
||||||
|
import { createWebUser as syncServicesCreateWebUser } from "@calcom/lib/sync/SyncServiceManager";
|
||||||
|
import { closeComUpsertTeamUser } from "@calcom/lib/sync/SyncServiceManager";
|
||||||
|
import { validateUsername } from "@calcom/lib/validateUsername";
|
||||||
|
import { prisma } from "@calcom/prisma";
|
||||||
|
import { IdentityProvider, MembershipRole } from "@calcom/prisma/enums";
|
||||||
|
import { signupSchema, teamMetadataSchema } from "@calcom/prisma/zod-utils";
|
||||||
|
|
||||||
|
import { joinAnyChildTeamOnOrgInvite } from "../utils/organization";
|
||||||
|
import { findTokenByToken, throwIfTokenExpired, validateUsernameForTeam } from "../utils/token";
|
||||||
|
|
||||||
|
async function handler(req: RequestWithUsernameStatus, res: NextApiResponse) {
|
||||||
|
const {
|
||||||
|
email: _email,
|
||||||
|
password,
|
||||||
|
token,
|
||||||
|
} = signupSchema
|
||||||
|
.pick({
|
||||||
|
email: true,
|
||||||
|
password: true,
|
||||||
|
token: true,
|
||||||
|
})
|
||||||
|
.parse(req.body);
|
||||||
|
let username: string | null = req.usernameStatus.requestedUserName;
|
||||||
|
let checkoutSessionId: string | null = null;
|
||||||
|
|
||||||
|
// Check for premium username
|
||||||
|
if (req.usernameStatus.statusCode === 418) {
|
||||||
|
return res.status(req.usernameStatus.statusCode).json(req.usernameStatus.json);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Validate the user
|
||||||
|
if (!username) {
|
||||||
|
throw new HttpError({
|
||||||
|
statusCode: 422,
|
||||||
|
message: "Invalid username",
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
const email = _email.toLowerCase();
|
||||||
|
|
||||||
|
let foundToken: { id: number; teamId: number | null; expires: Date } | null = null;
|
||||||
|
if (token) {
|
||||||
|
foundToken = await findTokenByToken({ token });
|
||||||
|
throwIfTokenExpired(foundToken?.expires);
|
||||||
|
await validateUsernameForTeam({ username, email, teamId: foundToken?.teamId ?? null });
|
||||||
|
} else {
|
||||||
|
const usernameAndEmailValidation = await validateUsername(username, email);
|
||||||
|
if (!usernameAndEmailValidation.isValid) {
|
||||||
|
throw new HttpError({
|
||||||
|
statusCode: 409,
|
||||||
|
message: "Username or email is already taken",
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Create the customer in Stripe
|
||||||
|
const customer = await stripe.customers.create({
|
||||||
|
email,
|
||||||
|
metadata: {
|
||||||
|
email /* Stripe customer email can be changed, so we add this to keep track of which email was used to signup */,
|
||||||
|
username,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
|
||||||
|
const returnUrl = `${WEBAPP_URL}/api/integrations/stripepayment/paymentCallback?checkoutSessionId={CHECKOUT_SESSION_ID}&callbackUrl=/auth/verify?sessionId={CHECKOUT_SESSION_ID}`;
|
||||||
|
|
||||||
|
// Pro username, must be purchased
|
||||||
|
if (req.usernameStatus.statusCode === 402) {
|
||||||
|
const checkoutSession = await stripe.checkout.sessions.create({
|
||||||
|
mode: "subscription",
|
||||||
|
payment_method_types: ["card"],
|
||||||
|
customer: customer.id,
|
||||||
|
line_items: [
|
||||||
|
{
|
||||||
|
price: getPremiumMonthlyPlanPriceId(),
|
||||||
|
quantity: 1,
|
||||||
|
},
|
||||||
|
],
|
||||||
|
success_url: returnUrl,
|
||||||
|
cancel_url: returnUrl,
|
||||||
|
allow_promotion_codes: true,
|
||||||
|
});
|
||||||
|
|
||||||
|
/** We create a username-less user until he pays */
|
||||||
|
checkoutSessionId = checkoutSession.id;
|
||||||
|
username = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Hash the password
|
||||||
|
const hashedPassword = await hashPassword(password);
|
||||||
|
|
||||||
|
if (foundToken && foundToken?.teamId) {
|
||||||
|
const team = await prisma.team.findUnique({
|
||||||
|
where: {
|
||||||
|
id: foundToken.teamId,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
if (team) {
|
||||||
|
const teamMetadata = teamMetadataSchema.parse(team?.metadata);
|
||||||
|
|
||||||
|
const user = await prisma.user.upsert({
|
||||||
|
where: { email },
|
||||||
|
update: {
|
||||||
|
username,
|
||||||
|
password: hashedPassword,
|
||||||
|
emailVerified: new Date(Date.now()),
|
||||||
|
identityProvider: IdentityProvider.CAL,
|
||||||
|
},
|
||||||
|
create: {
|
||||||
|
username,
|
||||||
|
email,
|
||||||
|
password: hashedPassword,
|
||||||
|
identityProvider: IdentityProvider.CAL,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
|
||||||
|
// Wrapping in a transaction as if one fails we want to rollback the whole thing to preventa any data inconsistencies
|
||||||
|
const membership = await prisma.$transaction(async (tx) => {
|
||||||
|
if (teamMetadata?.isOrganization) {
|
||||||
|
await tx.user.update({
|
||||||
|
where: {
|
||||||
|
id: user.id,
|
||||||
|
},
|
||||||
|
data: {
|
||||||
|
organizationId: team.id,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
}
|
||||||
|
const membership = await tx.membership.upsert({
|
||||||
|
where: {
|
||||||
|
userId_teamId: { userId: user.id, teamId: team.id },
|
||||||
|
},
|
||||||
|
update: {
|
||||||
|
accepted: true,
|
||||||
|
},
|
||||||
|
create: {
|
||||||
|
userId: user.id,
|
||||||
|
teamId: team.id,
|
||||||
|
role: MembershipRole.MEMBER,
|
||||||
|
accepted: true,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
return membership;
|
||||||
|
});
|
||||||
|
|
||||||
|
closeComUpsertTeamUser(team, user, membership.role);
|
||||||
|
|
||||||
|
// Accept any child team invites for orgs.
|
||||||
|
if (team.parentId) {
|
||||||
|
await joinAnyChildTeamOnOrgInvite({
|
||||||
|
userId: user.id,
|
||||||
|
orgId: team.parentId,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Cleanup token after use
|
||||||
|
await prisma.verificationToken.delete({
|
||||||
|
where: {
|
||||||
|
id: foundToken.id,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
// Create the user
|
||||||
|
const user = await prisma.user.create({
|
||||||
|
data: {
|
||||||
|
username,
|
||||||
|
email,
|
||||||
|
password: hashedPassword,
|
||||||
|
metadata: {
|
||||||
|
stripeCustomerId: customer.id,
|
||||||
|
checkoutSessionId,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
});
|
||||||
|
|
||||||
|
sendEmailVerification({
|
||||||
|
email,
|
||||||
|
language: await getLocaleFromRequest(req),
|
||||||
|
username: username || "",
|
||||||
|
});
|
||||||
|
// Sync Services
|
||||||
|
await syncServicesCreateWebUser(user);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (checkoutSessionId) {
|
||||||
|
console.log("Created user but missing payment", checkoutSessionId);
|
||||||
|
return res.status(402).json({
|
||||||
|
message: "Created user but missing payment",
|
||||||
|
checkoutSessionId,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
return res.status(201).json({ message: "Created user", stripeCustomerId: customer.id });
|
||||||
|
}
|
||||||
|
|
||||||
|
export default usernameHandler(handler);
|
||||||
@@ -0,0 +1,147 @@
|
|||||||
|
import type { NextApiRequest, NextApiResponse } from "next";
|
||||||
|
|
||||||
|
import { checkPremiumUsername } from "@calcom/ee/common/lib/checkPremiumUsername";
|
||||||
|
import { hashPassword } from "@calcom/features/auth/lib/hashPassword";
|
||||||
|
import { sendEmailVerification } from "@calcom/features/auth/lib/verifyEmail";
|
||||||
|
import { IS_PREMIUM_USERNAME_ENABLED } from "@calcom/lib/constants";
|
||||||
|
import slugify from "@calcom/lib/slugify";
|
||||||
|
import { closeComUpsertTeamUser } from "@calcom/lib/sync/SyncServiceManager";
|
||||||
|
import { validateUsername } from "@calcom/lib/validateUsername";
|
||||||
|
import prisma from "@calcom/prisma";
|
||||||
|
import { IdentityProvider, MembershipRole } from "@calcom/prisma/enums";
|
||||||
|
import { signupSchema } from "@calcom/prisma/zod-utils";
|
||||||
|
import { teamMetadataSchema } from "@calcom/prisma/zod-utils";
|
||||||
|
|
||||||
|
import { joinAnyChildTeamOnOrgInvite } from "../utils/organization";
|
||||||
|
import { findTokenByToken, throwIfTokenExpired, validateUsernameForTeam } from "../utils/token";
|
||||||
|
|
||||||
|
export default async function handler(req: NextApiRequest, res: NextApiResponse) {
|
||||||
|
const data = req.body;
|
||||||
|
const { email, password, language, token } = signupSchema.parse(data);
|
||||||
|
|
||||||
|
const username = slugify(data.username);
|
||||||
|
const userEmail = email.toLowerCase();
|
||||||
|
|
||||||
|
if (!username) {
|
||||||
|
res.status(422).json({ message: "Invalid username" });
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
let foundToken: { id: number; teamId: number | null; expires: Date } | null = null;
|
||||||
|
if (token) {
|
||||||
|
foundToken = await findTokenByToken({ token });
|
||||||
|
throwIfTokenExpired(foundToken?.expires);
|
||||||
|
await validateUsernameForTeam({ username, email: userEmail, teamId: foundToken?.teamId });
|
||||||
|
} else {
|
||||||
|
const userValidation = await validateUsername(username, userEmail);
|
||||||
|
if (!userValidation.isValid) {
|
||||||
|
return res.status(409).json({ message: "Username or email is already taken" });
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
const hashedPassword = await hashPassword(password);
|
||||||
|
|
||||||
|
if (foundToken && foundToken?.teamId) {
|
||||||
|
const team = await prisma.team.findUnique({
|
||||||
|
where: {
|
||||||
|
id: foundToken.teamId,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
if (team) {
|
||||||
|
const teamMetadata = teamMetadataSchema.parse(team?.metadata);
|
||||||
|
|
||||||
|
const user = await prisma.user.upsert({
|
||||||
|
where: { email: userEmail },
|
||||||
|
update: {
|
||||||
|
username,
|
||||||
|
password: hashedPassword,
|
||||||
|
emailVerified: new Date(Date.now()),
|
||||||
|
identityProvider: IdentityProvider.CAL,
|
||||||
|
},
|
||||||
|
create: {
|
||||||
|
username,
|
||||||
|
email: userEmail,
|
||||||
|
password: hashedPassword,
|
||||||
|
identityProvider: IdentityProvider.CAL,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
|
||||||
|
const membership = await prisma.$transaction(async (tx) => {
|
||||||
|
if (teamMetadata?.isOrganization) {
|
||||||
|
await tx.user.update({
|
||||||
|
where: {
|
||||||
|
id: user.id,
|
||||||
|
},
|
||||||
|
data: {
|
||||||
|
organizationId: team.id,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
}
|
||||||
|
const membership = await tx.membership.upsert({
|
||||||
|
where: {
|
||||||
|
userId_teamId: { userId: user.id, teamId: team.id },
|
||||||
|
},
|
||||||
|
update: {
|
||||||
|
accepted: true,
|
||||||
|
},
|
||||||
|
create: {
|
||||||
|
userId: user.id,
|
||||||
|
teamId: team.id,
|
||||||
|
role: MembershipRole.MEMBER,
|
||||||
|
accepted: true,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
return membership;
|
||||||
|
});
|
||||||
|
|
||||||
|
closeComUpsertTeamUser(team, user, membership.role);
|
||||||
|
|
||||||
|
// Accept any child team invites for orgs.
|
||||||
|
if (team.parentId) {
|
||||||
|
await joinAnyChildTeamOnOrgInvite({
|
||||||
|
userId: user.id,
|
||||||
|
orgId: team.parentId,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Cleanup token after use
|
||||||
|
await prisma.verificationToken.delete({
|
||||||
|
where: {
|
||||||
|
id: foundToken.id,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
if (IS_PREMIUM_USERNAME_ENABLED) {
|
||||||
|
const checkUsername = await checkPremiumUsername(username);
|
||||||
|
if (checkUsername.premium) {
|
||||||
|
res.status(422).json({
|
||||||
|
message: "Sign up from https://cal.com/signup to claim your premium username",
|
||||||
|
});
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
await prisma.user.upsert({
|
||||||
|
where: { email: userEmail },
|
||||||
|
update: {
|
||||||
|
username,
|
||||||
|
password: hashedPassword,
|
||||||
|
emailVerified: new Date(Date.now()),
|
||||||
|
identityProvider: IdentityProvider.CAL,
|
||||||
|
},
|
||||||
|
create: {
|
||||||
|
username,
|
||||||
|
email: userEmail,
|
||||||
|
password: hashedPassword,
|
||||||
|
identityProvider: IdentityProvider.CAL,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
await sendEmailVerification({
|
||||||
|
email: userEmail,
|
||||||
|
username,
|
||||||
|
language,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
res.status(201).json({ message: "Created user" });
|
||||||
|
}
|
||||||
@@ -0,0 +1,124 @@
|
|||||||
|
import type { NextApiRequest, NextApiResponse } from "next";
|
||||||
|
import { z } from "zod";
|
||||||
|
|
||||||
|
import notEmpty from "@calcom/lib/notEmpty";
|
||||||
|
import { isPremiumUserName, generateUsernameSuggestion } from "@calcom/lib/server/username";
|
||||||
|
import slugify from "@calcom/lib/slugify";
|
||||||
|
import prisma from "@calcom/prisma";
|
||||||
|
|
||||||
|
export type RequestWithUsernameStatus = NextApiRequest & {
|
||||||
|
usernameStatus: {
|
||||||
|
/**
|
||||||
|
* ```text
|
||||||
|
* 200: Username is available
|
||||||
|
* 402: Pro username, must be purchased
|
||||||
|
* 418: A user exists with that username
|
||||||
|
* ```
|
||||||
|
*/
|
||||||
|
statusCode: 200 | 402 | 418;
|
||||||
|
requestedUserName: string;
|
||||||
|
json: {
|
||||||
|
available: boolean;
|
||||||
|
premium: boolean;
|
||||||
|
message?: string;
|
||||||
|
suggestion?: string;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
export const usernameStatusSchema = z.object({
|
||||||
|
statusCode: z.union([z.literal(200), z.literal(402), z.literal(418)]),
|
||||||
|
requestedUserName: z.string(),
|
||||||
|
json: z.object({
|
||||||
|
available: z.boolean(),
|
||||||
|
premium: z.boolean(),
|
||||||
|
message: z.string().optional(),
|
||||||
|
suggestion: z.string().optional(),
|
||||||
|
}),
|
||||||
|
});
|
||||||
|
|
||||||
|
type CustomNextApiHandler<T = unknown> = (
|
||||||
|
req: RequestWithUsernameStatus,
|
||||||
|
res: NextApiResponse<T>
|
||||||
|
) => void | Promise<void>;
|
||||||
|
|
||||||
|
const usernameHandler =
|
||||||
|
(handler: CustomNextApiHandler) =>
|
||||||
|
async (req: RequestWithUsernameStatus, res: NextApiResponse): Promise<void> => {
|
||||||
|
const username = slugify(req.body.username);
|
||||||
|
const check = await usernameCheck(username);
|
||||||
|
|
||||||
|
req.usernameStatus = {
|
||||||
|
statusCode: 200,
|
||||||
|
requestedUserName: username,
|
||||||
|
json: {
|
||||||
|
available: true,
|
||||||
|
premium: false,
|
||||||
|
message: "Username is available",
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
|
if (check.premium) {
|
||||||
|
req.usernameStatus.statusCode = 402;
|
||||||
|
req.usernameStatus.json.premium = true;
|
||||||
|
req.usernameStatus.json.message = "This is a premium username.";
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!check.available) {
|
||||||
|
req.usernameStatus.statusCode = 418;
|
||||||
|
req.usernameStatus.json.available = false;
|
||||||
|
req.usernameStatus.json.message = "A user exists with that username";
|
||||||
|
}
|
||||||
|
|
||||||
|
req.usernameStatus.json.suggestion = check.suggestedUsername;
|
||||||
|
|
||||||
|
return handler(req, res);
|
||||||
|
};
|
||||||
|
|
||||||
|
const usernameCheck = async (usernameRaw: string) => {
|
||||||
|
const response = {
|
||||||
|
available: true,
|
||||||
|
premium: false,
|
||||||
|
suggestedUsername: "",
|
||||||
|
};
|
||||||
|
|
||||||
|
const username = slugify(usernameRaw);
|
||||||
|
|
||||||
|
const user = await prisma.user.findFirst({
|
||||||
|
where: { username, organizationId: null },
|
||||||
|
select: {
|
||||||
|
username: true,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
|
||||||
|
if (user) {
|
||||||
|
response.available = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (await isPremiumUserName(username)) {
|
||||||
|
response.premium = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
// get list of similar usernames in the db
|
||||||
|
const users = await prisma.user.findMany({
|
||||||
|
where: {
|
||||||
|
username: {
|
||||||
|
contains: username,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
select: {
|
||||||
|
username: true,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
|
||||||
|
// We only need suggestedUsername if the username is not available
|
||||||
|
if (!response.available) {
|
||||||
|
response.suggestedUsername = await generateUsernameSuggestion(
|
||||||
|
users.map((user) => user.username).filter(notEmpty),
|
||||||
|
username
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
return response;
|
||||||
|
};
|
||||||
|
|
||||||
|
export { usernameHandler, usernameCheck };
|
||||||
@@ -0,0 +1,55 @@
|
|||||||
|
import prisma from "@calcom/prisma";
|
||||||
|
|
||||||
|
export async function joinOrganization({
|
||||||
|
organizationId,
|
||||||
|
userId,
|
||||||
|
}: {
|
||||||
|
userId: number;
|
||||||
|
organizationId: number;
|
||||||
|
}) {
|
||||||
|
return await prisma.user.update({
|
||||||
|
where: {
|
||||||
|
id: userId,
|
||||||
|
},
|
||||||
|
data: {
|
||||||
|
organizationId: organizationId,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
export async function joinAnyChildTeamOnOrgInvite({ userId, orgId }: { userId: number; orgId: number }) {
|
||||||
|
await prisma.$transaction([
|
||||||
|
prisma.user.update({
|
||||||
|
where: {
|
||||||
|
id: userId,
|
||||||
|
},
|
||||||
|
data: {
|
||||||
|
organizationId: orgId,
|
||||||
|
},
|
||||||
|
}),
|
||||||
|
prisma.membership.updateMany({
|
||||||
|
where: {
|
||||||
|
userId,
|
||||||
|
team: {
|
||||||
|
id: orgId,
|
||||||
|
},
|
||||||
|
accepted: false,
|
||||||
|
},
|
||||||
|
data: {
|
||||||
|
accepted: true,
|
||||||
|
},
|
||||||
|
}),
|
||||||
|
prisma.membership.updateMany({
|
||||||
|
where: {
|
||||||
|
userId,
|
||||||
|
team: {
|
||||||
|
parentId: orgId,
|
||||||
|
},
|
||||||
|
accepted: false,
|
||||||
|
},
|
||||||
|
data: {
|
||||||
|
accepted: true,
|
||||||
|
},
|
||||||
|
}),
|
||||||
|
]);
|
||||||
|
}
|
||||||
@@ -0,0 +1,55 @@
|
|||||||
|
import dayjs from "@calcom/dayjs";
|
||||||
|
import { HttpError } from "@calcom/lib/http-error";
|
||||||
|
import { validateUsernameInTeam } from "@calcom/lib/validateUsername";
|
||||||
|
import { prisma } from "@calcom/prisma";
|
||||||
|
|
||||||
|
export async function findTokenByToken({ token }: { token: string }) {
|
||||||
|
const foundToken = await prisma.verificationToken.findFirst({
|
||||||
|
where: {
|
||||||
|
token,
|
||||||
|
},
|
||||||
|
select: {
|
||||||
|
id: true,
|
||||||
|
expires: true,
|
||||||
|
teamId: true,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
|
||||||
|
if (!foundToken) {
|
||||||
|
throw new HttpError({
|
||||||
|
statusCode: 401,
|
||||||
|
message: "Invalid Token",
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
return foundToken;
|
||||||
|
}
|
||||||
|
|
||||||
|
export function throwIfTokenExpired(expires?: Date) {
|
||||||
|
if (!expires) return;
|
||||||
|
if (dayjs(expires).isBefore(dayjs())) {
|
||||||
|
throw new HttpError({
|
||||||
|
statusCode: 401,
|
||||||
|
message: "Token expired",
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export async function validateUsernameForTeam({
|
||||||
|
username,
|
||||||
|
email,
|
||||||
|
teamId,
|
||||||
|
}: {
|
||||||
|
username: string;
|
||||||
|
email: string;
|
||||||
|
teamId: number | null;
|
||||||
|
}) {
|
||||||
|
if (!teamId) return;
|
||||||
|
const teamUserValidation = await validateUsernameInTeam(username, email, teamId);
|
||||||
|
if (!teamUserValidation.isValid) {
|
||||||
|
throw new HttpError({
|
||||||
|
statusCode: 409,
|
||||||
|
message: "Username or email is already taken",
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -247,6 +247,8 @@ const BookerComponent = ({
|
|||||||
"bg-default dark:bg-muted sticky top-0 z-10"
|
"bg-default dark:bg-muted sticky top-0 z-10"
|
||||||
)}>
|
)}>
|
||||||
<Header
|
<Header
|
||||||
|
username={username}
|
||||||
|
eventSlug={eventSlug}
|
||||||
enabledLayouts={bookerLayouts.enabledLayouts}
|
enabledLayouts={bookerLayouts.enabledLayouts}
|
||||||
extraDays={layout === BookerLayouts.COLUMN_VIEW ? columnViewExtraDays.current : extraDays}
|
extraDays={layout === BookerLayouts.COLUMN_VIEW ? columnViewExtraDays.current : extraDays}
|
||||||
isMobile={isMobile}
|
isMobile={isMobile}
|
||||||
|
|||||||
@@ -1,11 +1,13 @@
|
|||||||
import { ChevronLeft, ChevronRight } from "lucide-react";
|
import { ChevronLeft, ChevronRight } from "lucide-react";
|
||||||
|
import { useSession } from "next-auth/react";
|
||||||
import { useCallback, useMemo } from "react";
|
import { useCallback, useMemo } from "react";
|
||||||
import { shallow } from "zustand/shallow";
|
import { shallow } from "zustand/shallow";
|
||||||
|
|
||||||
import dayjs from "@calcom/dayjs";
|
import dayjs from "@calcom/dayjs";
|
||||||
|
import { WEBAPP_URL } from "@calcom/lib/constants";
|
||||||
import { useLocale } from "@calcom/lib/hooks/useLocale";
|
import { useLocale } from "@calcom/lib/hooks/useLocale";
|
||||||
import { BookerLayouts } from "@calcom/prisma/zod-utils";
|
import { BookerLayouts } from "@calcom/prisma/zod-utils";
|
||||||
import { Button, ButtonGroup, ToggleGroup } from "@calcom/ui";
|
import { Button, ButtonGroup, ToggleGroup, Tooltip } from "@calcom/ui";
|
||||||
import { Calendar, Columns, Grid } from "@calcom/ui/components/icon";
|
import { Calendar, Columns, Grid } from "@calcom/ui/components/icon";
|
||||||
|
|
||||||
import { TimeFormatToggle } from "../../components/TimeFormatToggle";
|
import { TimeFormatToggle } from "../../components/TimeFormatToggle";
|
||||||
@@ -18,13 +20,19 @@ export function Header({
|
|||||||
isMobile,
|
isMobile,
|
||||||
enabledLayouts,
|
enabledLayouts,
|
||||||
nextSlots,
|
nextSlots,
|
||||||
|
username,
|
||||||
|
eventSlug,
|
||||||
}: {
|
}: {
|
||||||
extraDays: number;
|
extraDays: number;
|
||||||
isMobile: boolean;
|
isMobile: boolean;
|
||||||
enabledLayouts: BookerLayouts[];
|
enabledLayouts: BookerLayouts[];
|
||||||
nextSlots: number;
|
nextSlots: number;
|
||||||
|
username: string;
|
||||||
|
eventSlug: string;
|
||||||
}) {
|
}) {
|
||||||
const { t, i18n } = useLocale();
|
const { t, i18n } = useLocale();
|
||||||
|
const session = useSession();
|
||||||
|
|
||||||
const [layout, setLayout] = useBookerStore((state) => [state.layout, state.setLayout], shallow);
|
const [layout, setLayout] = useBookerStore((state) => [state.layout, state.setLayout], shallow);
|
||||||
const selectedDateString = useBookerStore((state) => state.selectedDate);
|
const selectedDateString = useBookerStore((state) => state.selectedDate);
|
||||||
const setSelectedDate = useBookerStore((state) => state.setSelectedDate);
|
const setSelectedDate = useBookerStore((state) => state.setSelectedDate);
|
||||||
@@ -54,12 +62,24 @@ export function Header({
|
|||||||
<LayoutToggle onLayoutToggle={onLayoutToggle} layout={layout} enabledLayouts={enabledLayouts} />
|
<LayoutToggle onLayoutToggle={onLayoutToggle} layout={layout} enabledLayouts={enabledLayouts} />
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
const isMyLink = username === session?.data?.user.username; // TODO: check for if the user is the owner of the link
|
||||||
|
|
||||||
// In month view we only show the layout toggle.
|
// In month view we only show the layout toggle.
|
||||||
if (isMonthView) {
|
if (isMonthView) {
|
||||||
return (
|
return (
|
||||||
<div className="flex gap-2">
|
<div className="flex gap-2">
|
||||||
<OverlayCalendarContainer />
|
{isMyLink ? (
|
||||||
|
<Tooltip content={t("troubleshooter_tooltip")} side="bottom">
|
||||||
|
<Button
|
||||||
|
color="primary"
|
||||||
|
target="_blank"
|
||||||
|
href={`${WEBAPP_URL}/availability/troubleshoot?eventType=${eventSlug}`}>
|
||||||
|
{t("need_help")}
|
||||||
|
</Button>
|
||||||
|
</Tooltip>
|
||||||
|
) : (
|
||||||
|
<OverlayCalendarContainer />
|
||||||
|
)}
|
||||||
<LayoutToggleWithData />
|
<LayoutToggleWithData />
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -30,6 +30,9 @@ import {
|
|||||||
sendOrganizerRequestEmail,
|
sendOrganizerRequestEmail,
|
||||||
sendRescheduledEmails,
|
sendRescheduledEmails,
|
||||||
sendRescheduledSeatEmail,
|
sendRescheduledSeatEmail,
|
||||||
|
sendRoundRobinCancelledEmails,
|
||||||
|
sendRoundRobinRescheduledEmails,
|
||||||
|
sendRoundRobinScheduledEmails,
|
||||||
sendScheduledEmails,
|
sendScheduledEmails,
|
||||||
sendScheduledSeatsEmails,
|
sendScheduledSeatsEmails,
|
||||||
} from "@calcom/emails";
|
} from "@calcom/emails";
|
||||||
@@ -467,8 +470,26 @@ async function getOriginalRescheduledBooking(uid: string, seatsEventType?: boole
|
|||||||
email: true,
|
email: true,
|
||||||
locale: true,
|
locale: true,
|
||||||
timeZone: true,
|
timeZone: true,
|
||||||
|
destinationCalendar: true,
|
||||||
|
credentials: {
|
||||||
|
select: {
|
||||||
|
id: true,
|
||||||
|
userId: true,
|
||||||
|
key: true,
|
||||||
|
type: true,
|
||||||
|
teamId: true,
|
||||||
|
appId: true,
|
||||||
|
invalid: true,
|
||||||
|
user: {
|
||||||
|
select: {
|
||||||
|
email: true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
destinationCalendar: true,
|
||||||
payment: true,
|
payment: true,
|
||||||
references: true,
|
references: true,
|
||||||
workflowReminders: true,
|
workflowReminders: true,
|
||||||
@@ -663,8 +684,6 @@ async function handler(
|
|||||||
};
|
};
|
||||||
const {
|
const {
|
||||||
recurringCount,
|
recurringCount,
|
||||||
allRecurringDates,
|
|
||||||
currentRecurringIndex,
|
|
||||||
noEmail,
|
noEmail,
|
||||||
eventTypeId,
|
eventTypeId,
|
||||||
eventTypeSlug,
|
eventTypeSlug,
|
||||||
@@ -900,6 +919,7 @@ async function handler(
|
|||||||
|
|
||||||
let originalRescheduledBooking: BookingType = null;
|
let originalRescheduledBooking: BookingType = null;
|
||||||
|
|
||||||
|
//this gets the orginal rescheduled booking
|
||||||
if (rescheduleUid) {
|
if (rescheduleUid) {
|
||||||
// rescheduleUid can be bookingUid and bookingSeatUid
|
// rescheduleUid can be bookingUid and bookingSeatUid
|
||||||
bookingSeat = await prisma.bookingSeat.findUnique({
|
bookingSeat = await prisma.bookingSeat.findUnique({
|
||||||
@@ -923,6 +943,7 @@ async function handler(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//checks what users are available
|
||||||
if (!eventType.seatsPerTimeSlot && !skipAvailabilityCheck) {
|
if (!eventType.seatsPerTimeSlot && !skipAvailabilityCheck) {
|
||||||
const availableUsers = await ensureAvailableUsers(
|
const availableUsers = await ensureAvailableUsers(
|
||||||
{
|
{
|
||||||
@@ -1897,11 +1918,16 @@ async function handler(
|
|||||||
evt.recurringEvent = eventType.recurringEvent;
|
evt.recurringEvent = eventType.recurringEvent;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const changedOrganizer =
|
||||||
|
!!originalRescheduledBooking &&
|
||||||
|
eventType.schedulingType === SchedulingType.ROUND_ROBIN &&
|
||||||
|
originalRescheduledBooking.userId !== evt.organizer.id;
|
||||||
|
|
||||||
async function createBooking() {
|
async function createBooking() {
|
||||||
if (originalRescheduledBooking) {
|
if (originalRescheduledBooking) {
|
||||||
evt.title = originalRescheduledBooking?.title || evt.title;
|
evt.title = originalRescheduledBooking?.title || evt.title;
|
||||||
evt.description = originalRescheduledBooking?.description || evt.description;
|
evt.description = originalRescheduledBooking?.description || evt.description;
|
||||||
evt.location = originalRescheduledBooking?.location || evt.location;
|
evt.location = changedOrganizer ? evt.location : originalRescheduledBooking?.location || evt.location;
|
||||||
}
|
}
|
||||||
|
|
||||||
const eventTypeRel = !eventTypeId
|
const eventTypeRel = !eventTypeId
|
||||||
@@ -2146,6 +2172,7 @@ async function handler(
|
|||||||
|
|
||||||
let videoCallUrl;
|
let videoCallUrl;
|
||||||
|
|
||||||
|
//this is the actual rescheduling logic
|
||||||
if (originalRescheduledBooking?.uid) {
|
if (originalRescheduledBooking?.uid) {
|
||||||
log.silly("Rescheduling booking", originalRescheduledBooking.uid);
|
log.silly("Rescheduling booking", originalRescheduledBooking.uid);
|
||||||
try {
|
try {
|
||||||
@@ -2158,9 +2185,7 @@ async function handler(
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Use EventManager to conditionally use all needed integrations.
|
|
||||||
addVideoCallDataToEvt(originalRescheduledBooking.references);
|
addVideoCallDataToEvt(originalRescheduledBooking.references);
|
||||||
const updateManager = await eventManager.reschedule(evt, originalRescheduledBooking.uid);
|
|
||||||
|
|
||||||
//update original rescheduled booking (no seats event)
|
//update original rescheduled booking (no seats event)
|
||||||
if (!eventType.seatsPerTimeSlot) {
|
if (!eventType.seatsPerTimeSlot) {
|
||||||
@@ -2175,6 +2200,21 @@ async function handler(
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const newDesinationCalendar = evt.destinationCalendar;
|
||||||
|
|
||||||
|
evt.destinationCalendar = originalRescheduledBooking?.destinationCalendar
|
||||||
|
? [originalRescheduledBooking?.destinationCalendar]
|
||||||
|
: originalRescheduledBooking?.user?.destinationCalendar
|
||||||
|
? [originalRescheduledBooking?.user.destinationCalendar]
|
||||||
|
: evt.destinationCalendar;
|
||||||
|
|
||||||
|
const updateManager = await eventManager.reschedule(
|
||||||
|
evt,
|
||||||
|
originalRescheduledBooking.uid,
|
||||||
|
undefined,
|
||||||
|
changedOrganizer
|
||||||
|
);
|
||||||
|
|
||||||
// This gets overridden when updating the event - to check if notes have been hidden or not. We just reset this back
|
// This gets overridden when updating the event - to check if notes have been hidden or not. We just reset this back
|
||||||
// to the default description when we are sending the emails.
|
// to the default description when we are sending the emails.
|
||||||
evt.description = eventType.description;
|
evt.description = eventType.description;
|
||||||
@@ -2200,23 +2240,179 @@ async function handler(
|
|||||||
: calendarResult?.updatedEvent?.iCalUID || undefined;
|
: calendarResult?.updatedEvent?.iCalUID || undefined;
|
||||||
}
|
}
|
||||||
|
|
||||||
const { metadata, videoCallUrl: _videoCallUrl } = getVideoCallDetails({
|
const { metadata: videoMetadata, videoCallUrl: _videoCallUrl } = getVideoCallDetails({
|
||||||
results,
|
results,
|
||||||
});
|
});
|
||||||
|
|
||||||
|
let metadata: AdditionalInformation = {};
|
||||||
|
metadata = videoMetadata;
|
||||||
videoCallUrl = _videoCallUrl;
|
videoCallUrl = _videoCallUrl;
|
||||||
|
|
||||||
|
//if organizer changed we need to create a new booking (reschedule only cancels the old one)
|
||||||
|
if (changedOrganizer) {
|
||||||
|
evt.destinationCalendar = newDesinationCalendar;
|
||||||
|
evt.title = getEventName(eventNameObject);
|
||||||
|
|
||||||
|
// location might changed and will be new created in eventManager.create (organizer default location)
|
||||||
|
evt.videoCallData = undefined;
|
||||||
|
const createManager = await eventManager.create(evt);
|
||||||
|
|
||||||
|
// This gets overridden when creating the event - to check if notes have been hidden or not. We just reset this back
|
||||||
|
// to the default description when we are sending the emails.
|
||||||
|
evt.description = eventType.description;
|
||||||
|
|
||||||
|
results = createManager.results;
|
||||||
|
referencesToCreate = createManager.referencesToCreate;
|
||||||
|
videoCallUrl = evt.videoCallData && evt.videoCallData.url ? evt.videoCallData.url : null;
|
||||||
|
|
||||||
|
if (results.length > 0 && results.every((res) => !res.success)) {
|
||||||
|
const error = {
|
||||||
|
errorCode: "BookingCreatingMeetingFailed",
|
||||||
|
message: "Booking rescheduling failed",
|
||||||
|
};
|
||||||
|
|
||||||
|
loggerWithEventDetails.error(
|
||||||
|
`EventManager.create failure in some of the integrations ${organizerUser.username}`,
|
||||||
|
safeStringify({ error, results })
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
if (results.length) {
|
||||||
|
// Handle Google Meet results
|
||||||
|
// We use the original booking location since the evt location changes to daily
|
||||||
|
if (bookingLocation === MeetLocationType) {
|
||||||
|
const googleMeetResult = {
|
||||||
|
appName: GoogleMeetMetadata.name,
|
||||||
|
type: "conferencing",
|
||||||
|
uid: results[0].uid,
|
||||||
|
originalEvent: results[0].originalEvent,
|
||||||
|
};
|
||||||
|
|
||||||
|
// Find index of google_calendar inside createManager.referencesToCreate
|
||||||
|
const googleCalIndex = createManager.referencesToCreate.findIndex(
|
||||||
|
(ref) => ref.type === "google_calendar"
|
||||||
|
);
|
||||||
|
const googleCalResult = results[googleCalIndex];
|
||||||
|
|
||||||
|
if (!googleCalResult) {
|
||||||
|
loggerWithEventDetails.warn("Google Calendar not installed but using Google Meet as location");
|
||||||
|
results.push({
|
||||||
|
...googleMeetResult,
|
||||||
|
success: false,
|
||||||
|
calWarnings: [tOrganizer("google_meet_warning")],
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
if (googleCalResult?.createdEvent?.hangoutLink) {
|
||||||
|
results.push({
|
||||||
|
...googleMeetResult,
|
||||||
|
success: true,
|
||||||
|
});
|
||||||
|
|
||||||
|
// Add google_meet to referencesToCreate in the same index as google_calendar
|
||||||
|
createManager.referencesToCreate[googleCalIndex] = {
|
||||||
|
...createManager.referencesToCreate[googleCalIndex],
|
||||||
|
meetingUrl: googleCalResult.createdEvent.hangoutLink,
|
||||||
|
};
|
||||||
|
|
||||||
|
// Also create a new referenceToCreate with type video for google_meet
|
||||||
|
createManager.referencesToCreate.push({
|
||||||
|
type: "google_meet_video",
|
||||||
|
meetingUrl: googleCalResult.createdEvent.hangoutLink,
|
||||||
|
uid: googleCalResult.uid,
|
||||||
|
credentialId: createManager.referencesToCreate[googleCalIndex].credentialId,
|
||||||
|
});
|
||||||
|
} else if (googleCalResult && !googleCalResult.createdEvent?.hangoutLink) {
|
||||||
|
results.push({
|
||||||
|
...googleMeetResult,
|
||||||
|
success: false,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
metadata.hangoutLink = results[0].createdEvent?.hangoutLink;
|
||||||
|
metadata.conferenceData = results[0].createdEvent?.conferenceData;
|
||||||
|
metadata.entryPoints = results[0].createdEvent?.entryPoints;
|
||||||
|
evt.appsStatus = handleAppsStatus(results, booking);
|
||||||
|
videoCallUrl =
|
||||||
|
metadata.hangoutLink ||
|
||||||
|
results[0].createdEvent?.url ||
|
||||||
|
organizerOrFirstDynamicGroupMemberDefaultLocationUrl ||
|
||||||
|
videoCallUrl;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
evt.appsStatus = handleAppsStatus(results, booking);
|
evt.appsStatus = handleAppsStatus(results, booking);
|
||||||
|
|
||||||
// If there is an integration error, we don't send successful rescheduling email, instead broken integration email should be sent that are handled by either CalendarManager or videoClient
|
// If there is an integration error, we don't send successful rescheduling email, instead broken integration email should be sent that are handled by either CalendarManager or videoClient
|
||||||
if (noEmail !== true && isConfirmedByDefault && !isThereAnIntegrationError) {
|
if (noEmail !== true && isConfirmedByDefault && !isThereAnIntegrationError) {
|
||||||
const copyEvent = cloneDeep(evt);
|
const copyEvent = cloneDeep(evt);
|
||||||
loggerWithEventDetails.debug("Emails: Sending rescheduled emails for booking confirmation");
|
const copyEventAdditionalInfo = {
|
||||||
await sendRescheduledEmails({
|
|
||||||
...copyEvent,
|
...copyEvent,
|
||||||
additionalInformation: metadata,
|
additionalInformation: metadata,
|
||||||
additionalNotes, // Resets back to the additionalNote input and not the override value
|
additionalNotes, // Resets back to the additionalNote input and not the override value
|
||||||
cancellationReason: `$RCH$${rescheduleReason ? rescheduleReason : ""}`, // Removable code prefix to differentiate cancellation from rescheduling for email
|
cancellationReason: `$RCH$${rescheduleReason ? rescheduleReason : ""}`, // Removable code prefix to differentiate cancellation from rescheduling for email
|
||||||
});
|
};
|
||||||
|
loggerWithEventDetails.debug("Emails: Sending rescheduled emails for booking confirmation");
|
||||||
|
|
||||||
|
/*
|
||||||
|
handle emails for round robin
|
||||||
|
- if booked rr host is the same, then rescheduling email
|
||||||
|
- if new rr host is booked, then cancellation email to old host and confirmation email to new host
|
||||||
|
*/
|
||||||
|
if (eventType.schedulingType === SchedulingType.ROUND_ROBIN) {
|
||||||
|
const originalBookingMemberEmails: Person[] = [];
|
||||||
|
|
||||||
|
for (const user of originalRescheduledBooking.attendees) {
|
||||||
|
const translate = await getTranslation(user.locale ?? "en", "common");
|
||||||
|
originalBookingMemberEmails.push({
|
||||||
|
name: user.name,
|
||||||
|
email: user.email,
|
||||||
|
timeZone: user.timeZone,
|
||||||
|
language: { translate, locale: user.locale ?? "en" },
|
||||||
|
});
|
||||||
|
}
|
||||||
|
if (originalRescheduledBooking.user) {
|
||||||
|
const translate = await getTranslation(originalRescheduledBooking.user.locale ?? "en", "common");
|
||||||
|
originalBookingMemberEmails.push({
|
||||||
|
...originalRescheduledBooking.user,
|
||||||
|
name: originalRescheduledBooking.user.name || "",
|
||||||
|
language: { translate, locale: originalRescheduledBooking.user.locale ?? "en" },
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
const newBookingMemberEmails: Person[] =
|
||||||
|
copyEvent.team?.members
|
||||||
|
.map((member) => member)
|
||||||
|
.concat(copyEvent.organizer)
|
||||||
|
.concat(copyEvent.attendees) || [];
|
||||||
|
|
||||||
|
// scheduled Emails
|
||||||
|
const newBookedMembers = newBookingMemberEmails.filter(
|
||||||
|
(member) =>
|
||||||
|
!originalBookingMemberEmails.find((originalMember) => originalMember.email === member.email)
|
||||||
|
);
|
||||||
|
// cancelled Emails
|
||||||
|
const cancelledMembers = originalBookingMemberEmails.filter(
|
||||||
|
(member) => !newBookingMemberEmails.find((newMember) => newMember.email === member.email)
|
||||||
|
);
|
||||||
|
// rescheduled Emails
|
||||||
|
const rescheduledMembers = newBookingMemberEmails.filter((member) =>
|
||||||
|
originalBookingMemberEmails.find((orignalMember) => orignalMember.email === member.email)
|
||||||
|
);
|
||||||
|
|
||||||
|
sendRoundRobinRescheduledEmails(copyEventAdditionalInfo, rescheduledMembers);
|
||||||
|
sendRoundRobinScheduledEmails(copyEventAdditionalInfo, newBookedMembers);
|
||||||
|
sendRoundRobinCancelledEmails(copyEventAdditionalInfo, cancelledMembers);
|
||||||
|
} else {
|
||||||
|
// send normal rescheduled emails (non round robin event, where organizers stay the same)
|
||||||
|
await sendRescheduledEmails({
|
||||||
|
...copyEvent,
|
||||||
|
additionalInformation: metadata,
|
||||||
|
additionalNotes, // Resets back to the additionalNote input and not the override value
|
||||||
|
cancellationReason: `$RCH$${rescheduleReason ? rescheduleReason : ""}`, // Removable code prefix to differentiate cancellation from rescheduling for email
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
// If it's not a reschedule, doesn't require confirmation and there's no price,
|
// If it's not a reschedule, doesn't require confirmation and there's no price,
|
||||||
// Create a booking
|
// Create a booking
|
||||||
@@ -2376,7 +2572,7 @@ async function handler(
|
|||||||
|
|
||||||
const metadata = videoCallUrl
|
const metadata = videoCallUrl
|
||||||
? {
|
? {
|
||||||
videoCallUrl: getVideoCallUrlFromCalEvent(evt),
|
videoCallUrl: getVideoCallUrlFromCalEvent(evt) || videoCallUrl,
|
||||||
}
|
}
|
||||||
: undefined;
|
: undefined;
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import React, { Fragment, useEffect } from "react";
|
|||||||
|
|
||||||
import { SUPPORT_MAIL_ADDRESS, WEBAPP_URL } from "@calcom/lib/constants";
|
import { SUPPORT_MAIL_ADDRESS, WEBAPP_URL } from "@calcom/lib/constants";
|
||||||
import { useLocale } from "@calcom/lib/hooks/useLocale";
|
import { useLocale } from "@calcom/lib/hooks/useLocale";
|
||||||
import { EmptyScreen, TopBanner } from "@calcom/ui";
|
import { EmptyScreen, Alert } from "@calcom/ui";
|
||||||
import { AlertTriangle } from "@calcom/ui/components/icon";
|
import { AlertTriangle } from "@calcom/ui/components/icon";
|
||||||
|
|
||||||
type LicenseRequiredProps = {
|
type LicenseRequiredProps = {
|
||||||
@@ -37,9 +37,10 @@ const LicenseRequired = ({ children, as = "", ...rest }: LicenseRequiredProps) =
|
|||||||
) : process.env.NODE_ENV === "development" ? (
|
) : process.env.NODE_ENV === "development" ? (
|
||||||
/** We only show a warning in development mode, but allow the feature to be displayed for development/testing purposes */
|
/** We only show a warning in development mode, but allow the feature to be displayed for development/testing purposes */
|
||||||
<>
|
<>
|
||||||
<TopBanner
|
<Alert
|
||||||
text=""
|
className="mb-4"
|
||||||
actions={
|
severity="warning"
|
||||||
|
title={
|
||||||
<>
|
<>
|
||||||
{t("enterprise_license")}.{" "}
|
{t("enterprise_license")}.{" "}
|
||||||
<Trans i18nKey="enterprise_license_development">
|
<Trans i18nKey="enterprise_license_development">
|
||||||
@@ -52,7 +53,6 @@ const LicenseRequired = ({ children, as = "", ...rest }: LicenseRequiredProps) =
|
|||||||
</Trans>
|
</Trans>
|
||||||
</>
|
</>
|
||||||
}
|
}
|
||||||
variant="warning"
|
|
||||||
/>
|
/>
|
||||||
{children}
|
{children}
|
||||||
</>
|
</>
|
||||||
|
|||||||
@@ -23,13 +23,22 @@ From the [Original RFC](https://github.com/calcom/cal.com/issues/7142):
|
|||||||
1. `sudo npx hostile app.cal.local`
|
1. `sudo npx hostile app.cal.local`
|
||||||
2. Add it yourself
|
2. Add it yourself
|
||||||
|
|
||||||
4. Add `acme.cal.local` to host file given that the org create for it will be `acme`, otherwise do this for whatever slug will be assigned to the org. This is needed to test org-related public URLs, such as sub-teams, members and event-types.
|
6. Add `acme.cal.local` to host file given that the org create for it will be `acme`, otherwise do this for whatever slug will be assigned to the org. This is needed to test org-related public URLs, such as sub-teams, members and event-types.
|
||||||
|
|
||||||
5. Be sure to be logged in with any type of user and visit `/settings/organizations/new` and follow setup steps with the slug matching the org slug from step 3
|
7. Be sure to be logged in with any type of user and visit `/settings/organizations/new` and follow setup steps with the slug matching the org slug from step 3
|
||||||
|
|
||||||
6. Log in as admin and go to Settings and under Organizations you will need to accept the newly created organization in order to be operational
|
8. Log in as admin and go to Settings and under Organizations you will need to accept the newly created organization in order to be operational
|
||||||
|
|
||||||
|
9. After finishing the org creation, you will be automatically logged in as the owner of the organization, and the app will be shown in organization mode
|
||||||
|
|
||||||
|
### Note
|
||||||
|
|
||||||
|
Browsers do not allow camera/mic access on any non-HTTPS hosts except for localhost. To test cal video organization meeting links locally (`app.cal.local/video/[uid]`). You can access the meeting link by replacing app.cal.local with localhost in the URL.
|
||||||
|
|
||||||
|
For eg:- Use `http://localhost:3000/video/nAjnkjejuzis99NhN72rGt` instead of `http://app.cal.local:3000/video/nAjnkjejuzis99NhN72rGt`.
|
||||||
|
|
||||||
|
You can also use `ngrok` or you can generate SSL certificate for your local domain using `mkcert`.
|
||||||
|
|
||||||
7. After finishing the org creation, you will be automatically logged in as the owner of the organization, and the app will be shown in organization mode
|
|
||||||
|
|
||||||
## DNS setup
|
## DNS setup
|
||||||
|
|
||||||
|
|||||||
@@ -1,10 +1,11 @@
|
|||||||
// import { debounce } from "lodash";
|
// import { debounce } from "lodash";
|
||||||
import { useSession } from "next-auth/react";
|
import { useSession } from "next-auth/react";
|
||||||
import { useSearchParams, useRouter } from "next/navigation";
|
import { useRouter } from "next/navigation";
|
||||||
import { useState, useEffect } from "react";
|
import { useState, useEffect } from "react";
|
||||||
|
|
||||||
import MemberInvitationModal from "@calcom/ee/teams/components/MemberInvitationModal";
|
import MemberInvitationModal from "@calcom/ee/teams/components/MemberInvitationModal";
|
||||||
import { useLocale } from "@calcom/lib/hooks/useLocale";
|
import { useLocale } from "@calcom/lib/hooks/useLocale";
|
||||||
|
import { useParamsWithFallback } from "@calcom/lib/hooks/useParamsWithFallback";
|
||||||
import { MembershipRole } from "@calcom/prisma/enums";
|
import { MembershipRole } from "@calcom/prisma/enums";
|
||||||
import { trpc } from "@calcom/trpc/react";
|
import { trpc } from "@calcom/trpc/react";
|
||||||
import type { RouterOutputs } from "@calcom/trpc/react";
|
import type { RouterOutputs } from "@calcom/trpc/react";
|
||||||
@@ -57,8 +58,8 @@ function MembersList(props: MembersListProps) {
|
|||||||
const MembersView = () => {
|
const MembersView = () => {
|
||||||
const { t, i18n } = useLocale();
|
const { t, i18n } = useLocale();
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
const searchParams = useSearchParams();
|
const params = useParamsWithFallback();
|
||||||
const teamId = Number(searchParams?.get("id"));
|
const teamId = Number(params.id);
|
||||||
const session = useSession();
|
const session = useSession();
|
||||||
const utils = trpc.useContext();
|
const utils = trpc.useContext();
|
||||||
const [offset, setOffset] = useState<number>(1);
|
const [offset, setOffset] = useState<number>(1);
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import { zodResolver } from "@hookform/resolvers/zod";
|
|||||||
import type { Prisma } from "@prisma/client";
|
import type { Prisma } from "@prisma/client";
|
||||||
import { useSession } from "next-auth/react";
|
import { useSession } from "next-auth/react";
|
||||||
import Link from "next/link";
|
import Link from "next/link";
|
||||||
import { useRouter, useSearchParams } from "next/navigation";
|
import { useRouter } from "next/navigation";
|
||||||
import { useState, useLayoutEffect } from "react";
|
import { useState, useLayoutEffect } from "react";
|
||||||
import { Controller, useForm } from "react-hook-form";
|
import { Controller, useForm } from "react-hook-form";
|
||||||
import { z } from "zod";
|
import { z } from "zod";
|
||||||
@@ -10,6 +10,7 @@ import { z } from "zod";
|
|||||||
import { IS_TEAM_BILLING_ENABLED, WEBAPP_URL } from "@calcom/lib/constants";
|
import { IS_TEAM_BILLING_ENABLED, WEBAPP_URL } from "@calcom/lib/constants";
|
||||||
import { getPlaceholderAvatar } from "@calcom/lib/defaultAvatarImage";
|
import { getPlaceholderAvatar } from "@calcom/lib/defaultAvatarImage";
|
||||||
import { useLocale } from "@calcom/lib/hooks/useLocale";
|
import { useLocale } from "@calcom/lib/hooks/useLocale";
|
||||||
|
import { useParamsWithFallback } from "@calcom/lib/hooks/useParamsWithFallback";
|
||||||
import { md } from "@calcom/lib/markdownIt";
|
import { md } from "@calcom/lib/markdownIt";
|
||||||
import { markdownToSafeHTML } from "@calcom/lib/markdownToSafeHTML";
|
import { markdownToSafeHTML } from "@calcom/lib/markdownToSafeHTML";
|
||||||
import objectKeys from "@calcom/lib/objectKeys";
|
import objectKeys from "@calcom/lib/objectKeys";
|
||||||
@@ -76,8 +77,8 @@ const OtherTeamProfileView = () => {
|
|||||||
const form = useForm({
|
const form = useForm({
|
||||||
resolver: zodResolver(teamProfileFormSchema),
|
resolver: zodResolver(teamProfileFormSchema),
|
||||||
});
|
});
|
||||||
const searchParams = useSearchParams();
|
const params = useParamsWithFallback();
|
||||||
const teamId = Number(searchParams?.get("id"));
|
const teamId = Number(params.id);
|
||||||
const { data: team, isLoading } = trpc.viewer.organizations.getOtherTeam.useQuery(
|
const { data: team, isLoading } = trpc.viewer.organizations.getOtherTeam.useQuery(
|
||||||
{ teamId: teamId },
|
{ teamId: teamId },
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -116,7 +116,7 @@ const OrgProfileView = () => {
|
|||||||
<div className="border-subtle flex rounded-b-md border border-t-0 px-4 py-8 sm:px-6">
|
<div className="border-subtle flex rounded-b-md border border-t-0 px-4 py-8 sm:px-6">
|
||||||
<div className="flex-grow">
|
<div className="flex-grow">
|
||||||
<div>
|
<div>
|
||||||
<Label className="text-emphasis">{t("org_name")}</Label>
|
<Label className="text-emphasis">{t("organization_name")}</Label>
|
||||||
<p className="text-default text-sm">{currentOrganisation?.name}</p>
|
<p className="text-default text-sm">{currentOrganisation?.name}</p>
|
||||||
</div>
|
</div>
|
||||||
{!isBioEmpty && (
|
{!isBioEmpty && (
|
||||||
@@ -245,7 +245,7 @@ const OrgProfileForm = ({ defaultValues }: { defaultValues: FormValues }) => {
|
|||||||
<div className="mt-8">
|
<div className="mt-8">
|
||||||
<TextField
|
<TextField
|
||||||
name="name"
|
name="name"
|
||||||
label={t("org_name")}
|
label={t("organization_name")}
|
||||||
value={value}
|
value={value}
|
||||||
onChange={(e) => {
|
onChange={(e) => {
|
||||||
form.setValue("name", e?.target.value, { shouldDirty: true });
|
form.setValue("name", e?.target.value, { shouldDirty: true });
|
||||||
@@ -261,7 +261,7 @@ const OrgProfileForm = ({ defaultValues }: { defaultValues: FormValues }) => {
|
|||||||
<div className="mt-8">
|
<div className="mt-8">
|
||||||
<TextField
|
<TextField
|
||||||
name="slug"
|
name="slug"
|
||||||
label={t("org_url")}
|
label={t("organization_url")}
|
||||||
value={value}
|
value={value}
|
||||||
disabled
|
disabled
|
||||||
addOnSuffix={`.${subdomainSuffix()}`}
|
addOnSuffix={`.${subdomainSuffix()}`}
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ import { Controller, useForm } from "react-hook-form";
|
|||||||
|
|
||||||
import TeamInviteFromOrg from "@calcom/ee/organizations/components/TeamInviteFromOrg";
|
import TeamInviteFromOrg from "@calcom/ee/organizations/components/TeamInviteFromOrg";
|
||||||
import { classNames } from "@calcom/lib";
|
import { classNames } from "@calcom/lib";
|
||||||
import { IS_TEAM_BILLING_ENABLED, WEBAPP_URL } from "@calcom/lib/constants";
|
import { IS_TEAM_BILLING_ENABLED } from "@calcom/lib/constants";
|
||||||
import { useLocale } from "@calcom/lib/hooks/useLocale";
|
import { useLocale } from "@calcom/lib/hooks/useLocale";
|
||||||
import { MembershipRole } from "@calcom/prisma/enums";
|
import { MembershipRole } from "@calcom/prisma/enums";
|
||||||
import type { RouterOutputs } from "@calcom/trpc";
|
import type { RouterOutputs } from "@calcom/trpc";
|
||||||
@@ -25,7 +25,6 @@ import {
|
|||||||
TextAreaField,
|
TextAreaField,
|
||||||
} from "@calcom/ui";
|
} from "@calcom/ui";
|
||||||
import { Link } from "@calcom/ui/components/icon";
|
import { Link } from "@calcom/ui/components/icon";
|
||||||
import type { Window as WindowWithClipboardValue } from "@calcom/web/playwright/fixtures/clipboard";
|
|
||||||
|
|
||||||
import type { PendingMember } from "../lib/types";
|
import type { PendingMember } from "../lib/types";
|
||||||
import { GoogleWorkspaceInviteButton } from "./GoogleWorkspaceInviteButton";
|
import { GoogleWorkspaceInviteButton } from "./GoogleWorkspaceInviteButton";
|
||||||
@@ -76,8 +75,8 @@ export default function MemberInvitationModal(props: MemberInvitationModalProps)
|
|||||||
);
|
);
|
||||||
|
|
||||||
const createInviteMutation = trpc.viewer.teams.createInvite.useMutation({
|
const createInviteMutation = trpc.viewer.teams.createInvite.useMutation({
|
||||||
onSuccess(token) {
|
async onSuccess({ inviteLink }) {
|
||||||
copyInviteLinkToClipboard(token);
|
await copyInviteLinkToClipboard(inviteLink);
|
||||||
trpcContext.viewer.teams.get.invalidate();
|
trpcContext.viewer.teams.get.invalidate();
|
||||||
trpcContext.viewer.teams.list.invalidate();
|
trpcContext.viewer.teams.list.invalidate();
|
||||||
},
|
},
|
||||||
@@ -86,20 +85,11 @@ export default function MemberInvitationModal(props: MemberInvitationModalProps)
|
|||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
const copyInviteLinkToClipboard = async (token: string) => {
|
const copyInviteLinkToClipboard = async (inviteLink: string) => {
|
||||||
const isOrgInvite = isOrg;
|
|
||||||
const teamInviteLink = `${WEBAPP_URL}/teams?token=${token}`;
|
|
||||||
const orgInviteLink = `${WEBAPP_URL}/signup?token=${token}&callbackUrl=/getting-started`;
|
|
||||||
|
|
||||||
const inviteLink =
|
|
||||||
isOrgInvite || (props?.orgMembers && props.orgMembers?.length > 0) ? orgInviteLink : teamInviteLink;
|
|
||||||
try {
|
try {
|
||||||
await navigator.clipboard.writeText(inviteLink);
|
await navigator.clipboard.writeText(inviteLink);
|
||||||
showToast(t("invite_link_copied"), "success");
|
showToast(t("invite_link_copied"), "success");
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
if (process.env.NEXT_PUBLIC_IS_E2E) {
|
|
||||||
(window as WindowWithClipboardValue).E2E_CLIPBOARD_VALUE = inviteLink;
|
|
||||||
}
|
|
||||||
console.error(e);
|
console.error(e);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@@ -373,11 +363,9 @@ export default function MemberInvitationModal(props: MemberInvitationModalProps)
|
|||||||
type="button"
|
type="button"
|
||||||
color="minimal"
|
color="minimal"
|
||||||
variant="icon"
|
variant="icon"
|
||||||
onClick={() =>
|
onClick={() => {
|
||||||
props.token
|
createInviteMutation.mutate({ teamId: props.teamId, token: props.token });
|
||||||
? copyInviteLinkToClipboard(props.token)
|
}}
|
||||||
: createInviteMutation.mutate({ teamId: props.teamId })
|
|
||||||
}
|
|
||||||
className={classNames("gap-2", props.token && "opacity-50")}
|
className={classNames("gap-2", props.token && "opacity-50")}
|
||||||
data-testid="copy-invite-link-button">
|
data-testid="copy-invite-link-button">
|
||||||
<Link className="text-default h-4 w-4" aria-hidden="true" />
|
<Link className="text-default h-4 w-4" aria-hidden="true" />
|
||||||
|
|||||||
@@ -1,9 +1,15 @@
|
|||||||
import { IS_SELF_HOSTED } from "@calcom/lib/constants";
|
import { CAL_URL, IS_SELF_HOSTED, WEBAPP_URL } from "@calcom/lib/constants";
|
||||||
|
|
||||||
import type { PreviewState } from "../types";
|
import type { PreviewState } from "../types";
|
||||||
import { embedLibUrl } from "./constants";
|
import { embedLibUrl } from "./constants";
|
||||||
import { getDimension } from "./getDimension";
|
import { getDimension } from "./getDimension";
|
||||||
|
|
||||||
|
export const doWeNeedCalOriginProp = (embedCalOrigin: string) => {
|
||||||
|
// If we are self hosted, calOrigin won't be app.cal.com so we need to pass it
|
||||||
|
// If we are not self hosted but it's still different from WEBAPP_URL and CAL_URL, we need to pass it -> It happens for organization booking URL at the moment
|
||||||
|
return IS_SELF_HOSTED || (embedCalOrigin !== WEBAPP_URL && embedCalOrigin !== CAL_URL);
|
||||||
|
};
|
||||||
|
|
||||||
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
||||||
export const Codes = {
|
export const Codes = {
|
||||||
react: {
|
react: {
|
||||||
@@ -33,13 +39,9 @@ export const Codes = {
|
|||||||
return <Cal
|
return <Cal
|
||||||
calLink="${calLink}"
|
calLink="${calLink}"
|
||||||
style={{width:"${width}",height:"${height}",overflow:"scroll"}}
|
style={{width:"${width}",height:"${height}",overflow:"scroll"}}
|
||||||
${previewState.layout ? `config={{layout: '${previewState.layout}'}}` : ""}${
|
${previewState.layout ? `config={{layout: '${previewState.layout}'}}` : ""}
|
||||||
IS_SELF_HOSTED
|
${doWeNeedCalOriginProp(embedCalOrigin) ? ` calOrigin="${embedCalOrigin}"` : ""}
|
||||||
? `
|
${IS_SELF_HOSTED ? `calJsUrl="${embedLibUrl}"` : ""}
|
||||||
calOrigin="${embedCalOrigin}"
|
|
||||||
calJsUrl="${embedLibUrl}"`
|
|
||||||
: ""
|
|
||||||
}
|
|
||||||
/>;
|
/>;
|
||||||
};`;
|
};`;
|
||||||
},
|
},
|
||||||
@@ -53,7 +55,7 @@ export const Codes = {
|
|||||||
return code`
|
return code`
|
||||||
import { getCalApi } from "@calcom/embed-react";
|
import { getCalApi } from "@calcom/embed-react";
|
||||||
import { useEffect } from "react";
|
import { useEffect } from "react";
|
||||||
export default function App() {
|
export default function MyApp() {
|
||||||
useEffect(()=>{
|
useEffect(()=>{
|
||||||
(async function () {
|
(async function () {
|
||||||
const cal = await getCalApi(${IS_SELF_HOSTED ? `"${embedLibUrl}"` : ""});
|
const cal = await getCalApi(${IS_SELF_HOSTED ? `"${embedLibUrl}"` : ""});
|
||||||
@@ -77,7 +79,7 @@ export const Codes = {
|
|||||||
return code`
|
return code`
|
||||||
import { getCalApi } from "@calcom/embed-react";
|
import { getCalApi } from "@calcom/embed-react";
|
||||||
import { useEffect } from "react";
|
import { useEffect } from "react";
|
||||||
export default function App() {
|
export default function MyApp() {
|
||||||
useEffect(()=>{
|
useEffect(()=>{
|
||||||
(async function () {
|
(async function () {
|
||||||
const cal = await getCalApi(${IS_SELF_HOSTED ? `"${embedLibUrl}"` : ""});
|
const cal = await getCalApi(${IS_SELF_HOSTED ? `"${embedLibUrl}"` : ""});
|
||||||
@@ -85,7 +87,8 @@ export const Codes = {
|
|||||||
})();
|
})();
|
||||||
}, [])
|
}, [])
|
||||||
return <button
|
return <button
|
||||||
data-cal-link="${calLink}"${IS_SELF_HOSTED ? `\ndata-cal-origin="${embedCalOrigin}"` : ""}
|
data-cal-link="${calLink}"
|
||||||
|
${doWeNeedCalOriginProp(embedCalOrigin) ? ` data-cal-origin="${embedCalOrigin}"` : ""}
|
||||||
${`data-cal-config='${JSON.stringify({
|
${`data-cal-config='${JSON.stringify({
|
||||||
layout: previewState.layout,
|
layout: previewState.layout,
|
||||||
})}'`}
|
})}'`}
|
||||||
|
|||||||
@@ -2,14 +2,14 @@ import { forwardRef } from "react";
|
|||||||
import type { MutableRefObject } from "react";
|
import type { MutableRefObject } from "react";
|
||||||
|
|
||||||
import type { BookerLayout } from "@calcom/features/bookings/Booker/types";
|
import type { BookerLayout } from "@calcom/features/bookings/Booker/types";
|
||||||
import { APP_NAME, IS_SELF_HOSTED } from "@calcom/lib/constants";
|
import { APP_NAME } from "@calcom/lib/constants";
|
||||||
import { useBookerUrl } from "@calcom/lib/hooks/useBookerUrl";
|
import { useBookerUrl } from "@calcom/lib/hooks/useBookerUrl";
|
||||||
import { useLocale } from "@calcom/lib/hooks/useLocale";
|
import { useLocale } from "@calcom/lib/hooks/useLocale";
|
||||||
import { TextArea } from "@calcom/ui";
|
import { TextArea } from "@calcom/ui";
|
||||||
import { Code, Trello } from "@calcom/ui/components/icon";
|
import { Code, Trello } from "@calcom/ui/components/icon";
|
||||||
|
|
||||||
import type { EmbedType, PreviewState, EmbedFramework } from "../types";
|
import type { EmbedType, PreviewState, EmbedFramework } from "../types";
|
||||||
import { Codes } from "./EmbedCodes";
|
import { Codes, doWeNeedCalOriginProp } from "./EmbedCodes";
|
||||||
import { EMBED_PREVIEW_HTML_URL, embedLibUrl } from "./constants";
|
import { EMBED_PREVIEW_HTML_URL, embedLibUrl } from "./constants";
|
||||||
import { getDimension } from "./getDimension";
|
import { getDimension } from "./getDimension";
|
||||||
import { useEmbedCalOrigin } from "./hooks";
|
import { useEmbedCalOrigin } from "./hooks";
|
||||||
@@ -193,7 +193,7 @@ const getEmbedTypeSpecificString = ({
|
|||||||
} else if (embedType === "floating-popup") {
|
} else if (embedType === "floating-popup") {
|
||||||
const floatingButtonArg = {
|
const floatingButtonArg = {
|
||||||
calLink,
|
calLink,
|
||||||
...(IS_SELF_HOSTED ? { calOrigin: embedCalOrigin } : null),
|
...(doWeNeedCalOriginProp(embedCalOrigin) ? { calOrigin: embedCalOrigin } : null),
|
||||||
...previewState.floatingPopup,
|
...previewState.floatingPopup,
|
||||||
};
|
};
|
||||||
return frameworkCodes[embedType]({
|
return frameworkCodes[embedType]({
|
||||||
|
|||||||
@@ -20,6 +20,7 @@ import {
|
|||||||
CheckboxField,
|
CheckboxField,
|
||||||
} from "@calcom/ui";
|
} from "@calcom/ui";
|
||||||
import { UserPlus, X } from "@calcom/ui/components/icon";
|
import { UserPlus, X } from "@calcom/ui/components/icon";
|
||||||
|
import InfoBadge from "@calcom/web/components/ui/InfoBadge";
|
||||||
|
|
||||||
import { ComponentForField } from "./FormBuilderField";
|
import { ComponentForField } from "./FormBuilderField";
|
||||||
import { propsTypes } from "./propsTypes";
|
import { propsTypes } from "./propsTypes";
|
||||||
@@ -395,6 +396,7 @@ export const Components: Record<FieldType, Component> = {
|
|||||||
}
|
}
|
||||||
}, [options, setValue, value]);
|
}, [options, setValue, value]);
|
||||||
|
|
||||||
|
const { t } = useLocale();
|
||||||
return (
|
return (
|
||||||
<div>
|
<div>
|
||||||
<div>
|
<div>
|
||||||
@@ -418,17 +420,25 @@ export const Components: Record<FieldType, Component> = {
|
|||||||
checked={value?.value === option.value}
|
checked={value?.value === option.value}
|
||||||
/>
|
/>
|
||||||
<span className="text-emphasis me-2 ms-2 text-sm">{option.label ?? ""}</span>
|
<span className="text-emphasis me-2 ms-2 text-sm">{option.label ?? ""}</span>
|
||||||
|
<span>
|
||||||
|
{option.value === "phone" && (
|
||||||
|
<InfoBadge content={t("number_in_international_format")} />
|
||||||
|
)}
|
||||||
|
</span>
|
||||||
</label>
|
</label>
|
||||||
);
|
);
|
||||||
})
|
})
|
||||||
) : (
|
) : (
|
||||||
// Show option itself as label because there is just one option
|
// Show option itself as label because there is just one option
|
||||||
<>
|
<>
|
||||||
<Label>
|
<Label className="flex">
|
||||||
{options[0].label}
|
{options[0].label}
|
||||||
{!readOnly && optionsInputs[options[0].value]?.required ? (
|
{!readOnly && optionsInputs[options[0].value]?.required ? (
|
||||||
<span className="text-default mb-1 ml-1 text-sm font-medium">*</span>
|
<span className="text-default mb-1 ml-1 text-sm font-medium">*</span>
|
||||||
) : null}
|
) : null}
|
||||||
|
{options[0].value === "phone" && (
|
||||||
|
<InfoBadge content={t("number_in_international_format")} />
|
||||||
|
)}
|
||||||
</Label>
|
</Label>
|
||||||
</>
|
</>
|
||||||
)}
|
)}
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import { classNames } from "@calcom/lib";
|
|||||||
import { useLocale } from "@calcom/lib/hooks/useLocale";
|
import { useLocale } from "@calcom/lib/hooks/useLocale";
|
||||||
import { Label } from "@calcom/ui";
|
import { Label } from "@calcom/ui";
|
||||||
import { Info } from "@calcom/ui/components/icon";
|
import { Info } from "@calcom/ui/components/icon";
|
||||||
|
import InfoBadge from "@calcom/web/components/ui/InfoBadge";
|
||||||
|
|
||||||
import { Components, isValidValueProp } from "./Components";
|
import { Components, isValidValueProp } from "./Components";
|
||||||
import { fieldTypesConfigMap } from "./fieldTypes";
|
import { fieldTypesConfigMap } from "./fieldTypes";
|
||||||
@@ -126,6 +127,8 @@ const WithLabel = ({
|
|||||||
readOnly: boolean;
|
readOnly: boolean;
|
||||||
children: React.ReactNode;
|
children: React.ReactNode;
|
||||||
}) => {
|
}) => {
|
||||||
|
const { t } = useLocale();
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div>
|
<div>
|
||||||
{/* multiemail doesnt show label initially. It is shown on clicking CTA */}
|
{/* multiemail doesnt show label initially. It is shown on clicking CTA */}
|
||||||
@@ -133,11 +136,12 @@ const WithLabel = ({
|
|||||||
{/* Component itself managing it's label should remove these checks */}
|
{/* Component itself managing it's label should remove these checks */}
|
||||||
{field.type !== "boolean" && field.type !== "multiemail" && field.label && (
|
{field.type !== "boolean" && field.type !== "multiemail" && field.label && (
|
||||||
<div className="mb-2 flex items-center">
|
<div className="mb-2 flex items-center">
|
||||||
<Label className="!mb-0">
|
<Label className="!mb-0 flex">
|
||||||
<span>{field.label}</span>
|
<span>{field.label}</span>
|
||||||
<span className="text-emphasis -mb-1 ml-1 text-sm font-medium leading-none">
|
<span className="text-emphasis -mb-1 ml-1 text-sm font-medium leading-none">
|
||||||
{!readOnly && field.required ? "*" : ""}
|
{!readOnly && field.required ? "*" : ""}
|
||||||
</span>
|
</span>
|
||||||
|
{field.type === "phone" && <InfoBadge content={t("number_in_international_format")} />}
|
||||||
</Label>
|
</Label>
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
|
|||||||