commit
8dd7c100af
3 changed files with 26 additions and 4 deletions
|
@ -631,7 +631,7 @@
|
||||||
"PAIR_WITH_PIN": "Pair with PIN",
|
"PAIR_WITH_PIN": "Pair with PIN",
|
||||||
"CHOOSE_DEVICE_FROM_BROWSER": "Choose a cast-compatible device from the browser popup.",
|
"CHOOSE_DEVICE_FROM_BROWSER": "Choose a cast-compatible device from the browser popup.",
|
||||||
"PAIR_WITH_PIN_WORKS_FOR_ANY_LARGE_SCREEN_DEVICE": "Pair with PIN works for any large screen device you want to play your album on.",
|
"PAIR_WITH_PIN_WORKS_FOR_ANY_LARGE_SCREEN_DEVICE": "Pair with PIN works for any large screen device you want to play your album on.",
|
||||||
"VISIT_CAST_ENTE_IO": "Visit cast.ente.io on the device you want to pair.",
|
"VISIT_CAST_ENTE_IO": "Visit <a>{{url}}</a> on the device you want to pair.",
|
||||||
"CAST_AUTO_PAIR_FAILED": "Chromecast Auto Pair failed. Please try again.",
|
"CAST_AUTO_PAIR_FAILED": "Chromecast Auto Pair failed. Please try again.",
|
||||||
"CACHE_DIRECTORY": "Cache folder",
|
"CACHE_DIRECTORY": "Cache folder",
|
||||||
"FREEHAND": "Freehand",
|
"FREEHAND": "Freehand",
|
||||||
|
|
|
@ -10,9 +10,10 @@ import { loadSender } from "@ente/shared/hooks/useCastSender";
|
||||||
import { addLogLine } from "@ente/shared/logging";
|
import { addLogLine } from "@ente/shared/logging";
|
||||||
import castGateway from "@ente/shared/network/cast";
|
import castGateway from "@ente/shared/network/cast";
|
||||||
import { logError } from "@ente/shared/sentry";
|
import { logError } from "@ente/shared/sentry";
|
||||||
import { Typography } from "@mui/material";
|
import { Link, Typography } from "@mui/material";
|
||||||
import { t } from "i18next";
|
import { t } from "i18next";
|
||||||
import { useEffect, useState } from "react";
|
import { useEffect, useState } from "react";
|
||||||
|
import { Trans } from "react-i18next";
|
||||||
import { Collection } from "types/collection";
|
import { Collection } from "types/collection";
|
||||||
import { v4 as uuidv4 } from "uuid";
|
import { v4 as uuidv4 } from "uuid";
|
||||||
|
|
||||||
|
@ -220,7 +221,20 @@ export default function AlbumCastDialog(props: Props) {
|
||||||
)}
|
)}
|
||||||
{view === "pin" && (
|
{view === "pin" && (
|
||||||
<>
|
<>
|
||||||
<Typography>{t("VISIT_CAST_ENTE_IO")}</Typography>
|
<Typography>
|
||||||
|
<Trans
|
||||||
|
i18nKey="VISIT_CAST_ENTE_IO"
|
||||||
|
components={{
|
||||||
|
a: (
|
||||||
|
<Link
|
||||||
|
target="_blank"
|
||||||
|
href="https://cast.ente.io"
|
||||||
|
/>
|
||||||
|
),
|
||||||
|
}}
|
||||||
|
values={{ url: "cast.ente.io" }}
|
||||||
|
/>
|
||||||
|
</Typography>
|
||||||
<Typography>{t("ENTER_CAST_PIN_CODE")}</Typography>
|
<Typography>{t("ENTER_CAST_PIN_CODE")}</Typography>
|
||||||
<SingleInputForm
|
<SingleInputForm
|
||||||
callback={onSubmit}
|
callback={onSubmit}
|
||||||
|
|
|
@ -2,7 +2,15 @@ import { ButtonProps } from "@mui/material";
|
||||||
|
|
||||||
export interface DialogBoxAttributesV2 {
|
export interface DialogBoxAttributesV2 {
|
||||||
icon?: React.ReactNode;
|
icon?: React.ReactNode;
|
||||||
title?: string;
|
/**
|
||||||
|
* The dialog's title
|
||||||
|
*
|
||||||
|
* Usually this will be a string, but it can be any {@link ReactNode}. Note
|
||||||
|
* that it always gets wrapped in a Typography element to set the font
|
||||||
|
* style, so if your ReactNode wants to do its own thing, it'll need to
|
||||||
|
* reset or override these customizations.
|
||||||
|
*/
|
||||||
|
title?: React.ReactNode;
|
||||||
staticBackdrop?: boolean;
|
staticBackdrop?: boolean;
|
||||||
nonClosable?: boolean;
|
nonClosable?: boolean;
|
||||||
content?: any;
|
content?: any;
|
||||||
|
|
Loading…
Reference in a new issue