mirror of
https://github.com/XRPLF/xrpl-dev-portal.git
synced 2025-11-19 11:15:49 +00:00
feat: migrate to the realm rc version
This commit is contained in:
@@ -1,12 +1,11 @@
|
|||||||
import * as React from "react";
|
import * as React from "react";
|
||||||
import styled from "styled-components";
|
import styled from "styled-components";
|
||||||
import { useThemeConfig } from "@theme/hooks/useThemeConfig";
|
import { useThemeConfig, useThemeHooks } from "@redocly/theme/core/hooks";
|
||||||
import { LanguagePicker } from "@theme/i18n/LanguagePicker";
|
import { LanguagePicker } from "@redocly/theme/components/LanguagePicker/LanguagePicker";
|
||||||
import { useI18n, useTranslate } from "@portal/hooks";
|
|
||||||
import { slugify } from "../../helpers";
|
import { slugify } from "../../helpers";
|
||||||
import { Link } from "@portal/Link";
|
import { Link } from "@redocly/theme/components/Link/Link";
|
||||||
import { ColorModeSwitcher } from "@theme/components/ColorModeSwitcher/ColorModeSwitcher";
|
import { ColorModeSwitcher } from "@redocly/theme/components/ColorModeSwitcher/ColorModeSwitcher";
|
||||||
import { Search } from "@theme/components/Search/Search";
|
import { Search } from "@redocly/theme/components/Search/Search";
|
||||||
|
|
||||||
// @ts-ignore
|
// @ts-ignore
|
||||||
|
|
||||||
@@ -20,6 +19,7 @@ const alertBanner = {
|
|||||||
export function Navbar(props) {
|
export function Navbar(props) {
|
||||||
// const [isOpen, setIsOpen] = useMobileMenu(false);
|
// const [isOpen, setIsOpen] = useMobileMenu(false);
|
||||||
const themeConfig = useThemeConfig();
|
const themeConfig = useThemeConfig();
|
||||||
|
const { useI18n } = useThemeHooks();
|
||||||
const { changeLanguage } = useI18n();
|
const { changeLanguage } = useI18n();
|
||||||
const menu = themeConfig.navbar?.items;
|
const menu = themeConfig.navbar?.items;
|
||||||
const logo = themeConfig.logo;
|
const logo = themeConfig.logo;
|
||||||
@@ -104,10 +104,10 @@ export function Navbar(props) {
|
|||||||
<Search className="topnav-search" />
|
<Search className="topnav-search" />
|
||||||
</div>
|
</div>
|
||||||
<div id="topnav-language" className="nav-item">
|
<div id="topnav-language" className="nav-item">
|
||||||
<LanguagePicker onChangeLanguage={changeLanguage} onlyIcon />
|
<LanguagePicker onChangeLanguage={changeLanguage} onlyIcon alignment="end" />
|
||||||
</div>
|
</div>
|
||||||
<div id="topnav-theme" className="nav-item">
|
<div id="topnav-theme" className="nav-item">
|
||||||
<StyledColorModeSwitcher />
|
<ColorModeSwitcher />
|
||||||
</div>
|
</div>
|
||||||
</NavItems>
|
</NavItems>
|
||||||
</TopNavCollapsible>
|
</TopNavCollapsible>
|
||||||
@@ -116,10 +116,6 @@ export function Navbar(props) {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
const StyledColorModeSwitcher = styled(ColorModeSwitcher)`
|
|
||||||
padding: 10px;
|
|
||||||
`;
|
|
||||||
|
|
||||||
export function AlertBanner(props) {
|
export function AlertBanner(props) {
|
||||||
const { message, button, link } = props;
|
const { message, button, link } = props;
|
||||||
return (
|
return (
|
||||||
@@ -151,6 +147,7 @@ export function TopNavCollapsible(props) {
|
|||||||
|
|
||||||
export function NavDropdown(props) {
|
export function NavDropdown(props) {
|
||||||
const { label, items, pathPrefix, labelTranslationKey } = props;
|
const { label, items, pathPrefix, labelTranslationKey } = props;
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
|
|
||||||
const dropdownGroups = items.map((item, index) => {
|
const dropdownGroups = items.map((item, index) => {
|
||||||
@@ -283,6 +280,7 @@ export function MobileMenuIcon() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export function GetStartedButton() {
|
export function GetStartedButton() {
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
|
|
||||||
return (
|
return (
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import * as React from 'react';
|
import * as React from 'react';
|
||||||
import dynamicReact from '@markdoc/markdoc/dist/react';
|
import dynamicReact from '@markdoc/markdoc/dist/react';
|
||||||
import { Link } from '@portal/Link';
|
import { Link } from '@redocly/theme/components/Link/Link';
|
||||||
|
|
||||||
export interface XRPLCardProps {
|
export interface XRPLCardProps {
|
||||||
title: string,
|
title: string,
|
||||||
|
|||||||
@@ -2,8 +2,8 @@ import * as React from 'react';
|
|||||||
import { useLocation } from 'react-router-dom';
|
import { useLocation } from 'react-router-dom';
|
||||||
// @ts-ignore
|
// @ts-ignore
|
||||||
import dynamicReact from '@markdoc/markdoc/dist/react';
|
import dynamicReact from '@markdoc/markdoc/dist/react';
|
||||||
import { usePageSharedData, useTranslate } from '@portal/hooks';
|
import { Link } from '@redocly/theme/components/Link/Link';
|
||||||
import { Link } from '@portal/Link';
|
import { useThemeHooks } from '@redocly/theme/core/hooks'
|
||||||
import { idify } from '../helpers';
|
import { idify } from '../helpers';
|
||||||
|
|
||||||
export {default as XRPLoader} from '../components/XRPLoader';
|
export {default as XRPLoader} from '../components/XRPLoader';
|
||||||
@@ -11,6 +11,7 @@ export { XRPLCard, CardGrid } from '../components/XRPLCard';
|
|||||||
|
|
||||||
|
|
||||||
export function IndexPageItems() {
|
export function IndexPageItems() {
|
||||||
|
const { usePageSharedData } = useThemeHooks();
|
||||||
const data = usePageSharedData('index-page-items') as any[];
|
const data = usePageSharedData('index-page-items') as any[];
|
||||||
return (
|
return (
|
||||||
<div className="children-display">
|
<div className="children-display">
|
||||||
@@ -148,6 +149,7 @@ function shieldsIoEscape(s: string) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export function NotEnabled() {
|
export function NotEnabled() {
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
return (
|
return (
|
||||||
<span className="status not_enabled" title={translate("This feature is not currently enabled on the production XRP Ledger.")}><i className="fa fa-flask"></i></span>
|
<span className="status not_enabled" title={translate("This feature is not currently enabled on the production XRP Ledger.")}><i className="fa fa-flask"></i></span>
|
||||||
|
|||||||
@@ -163,29 +163,26 @@ ul.nav.navbar-nav {
|
|||||||
--color-primary-text: #161087;
|
--color-primary-text: #161087;
|
||||||
--color-primary-text-active: #0d086e;*/
|
--color-primary-text-active: #0d086e;*/
|
||||||
|
|
||||||
--link-text-color: #fff;
|
--link-color-primary: #fff;
|
||||||
--link-decoration: underline;
|
--link-decoration: underline;
|
||||||
--link-font-weight: var(--font-weight-regular);
|
--link-font-weight: var(--font-weight-regular);
|
||||||
|
|
||||||
--link-hover-text-color: #9a52ff;
|
--link-color-primary-hover: #9a52ff;
|
||||||
--link-hover-decoration: underline;
|
--link-decoration-hover: underline;
|
||||||
|
|
||||||
--link-active-decoration: underline;
|
--link-color-visited: #fff;
|
||||||
--link-active-text-color: var(--color-blue-7);
|
|
||||||
|
|
||||||
--link-visited-text-color: #fff;
|
|
||||||
--link-visited-decoration: underline;
|
--link-visited-decoration: underline;
|
||||||
|
|
||||||
--bg-base: var(--color-gray-10);
|
--bg-color: var(--color-gray-10);
|
||||||
--bg-raised: var(--color-gray-8);
|
--bg-color-raised: var(--color-gray-8);
|
||||||
--background-color: var(--bg-base);
|
--background-color: var(--bg-color);
|
||||||
|
|
||||||
--font-family-base: 'Work Sans', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
|
--font-family-base: 'Work Sans', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
|
||||||
--heading-font-family: var(--font-family-base);
|
--heading-font-family: var(--font-family-base);
|
||||||
|
|
||||||
--inline-code-font-family: "Space Mono", monospace;
|
--inline-code-font-family: "Space Mono", monospace;
|
||||||
--inline-code-text-color: #5beb9d; /* $green-400 */
|
--inline-code-text-color: #5beb9d; /* $green-400 */
|
||||||
--inline-code-background-color: #0a2e1b; /* $green-1000 */
|
--inline-code-bg-color: #0a2e1b; /* $green-1000 */
|
||||||
--inline-code-border-radius: 0;
|
--inline-code-border-radius: 0;
|
||||||
|
|
||||||
--heading-anchor-color: #9a52ff;
|
--heading-anchor-color: #9a52ff;
|
||||||
@@ -197,65 +194,64 @@ ul.nav.navbar-nav {
|
|||||||
--h5-font-size: 1.25rem;
|
--h5-font-size: 1.25rem;
|
||||||
|
|
||||||
--sidebar-border-color: transparent;
|
--sidebar-border-color: transparent;
|
||||||
--sidebar-background-color: transparent;
|
--sidebar-bg-color: transparent;
|
||||||
|
--sidebar-margin-horizontal: 32px;
|
||||||
--search-item-active-text-color: #E8E9E7;
|
|
||||||
|
|
||||||
--border-radius-md: 4px;
|
--border-radius-md: 4px;
|
||||||
|
|
||||||
--code-block-background-color: #232325;
|
--code-block-bg-color: #232325;
|
||||||
--code-block-controls-background-color: #232325;
|
--code-block-controls-bg-color: #232325;
|
||||||
--code-block-controls-border: none;
|
--code-block-controls-border: none;
|
||||||
--code-block-border-color: #232325;
|
|
||||||
--code-block-padding: 0 2rem 1.5rem 2rem;
|
--code-block-padding: 0 2rem 1.5rem 2rem;
|
||||||
--code-block-border-radius: 4px;
|
|
||||||
|
|
||||||
--breadcrumbs-margin-bottom: 0.5rem;
|
--breadcrumbs-margin-bottom: 0.5rem;
|
||||||
--breadcrumbs-text-color: var(--color-gray-4);
|
--breadcrumbs-text-color: var(--color-gray-4);
|
||||||
--breadcrumbs-gap: 0 8px;
|
--breadcrumbs-gap: 0 8px;
|
||||||
--breadcrumbs-font-size: 0.833em;
|
--breadcrumbs-font-size: 0.833em;
|
||||||
|
|
||||||
--language-picker-min-height: 38px;
|
--footer-bg-color: transparent;
|
||||||
|
--footer-column-divider-color: transparent;
|
||||||
--footer-background-color: transparent;
|
|
||||||
--footer-dividing-border-color: transparent;
|
|
||||||
--footer-border-color: transparent;
|
--footer-border-color: transparent;
|
||||||
--footer-title-font-weight: 600;
|
--footer-title-font-weight: 600;
|
||||||
--footer-title-font-size: 1rem;
|
--footer-title-font-size: 1rem;
|
||||||
--footer-title-text-color: #A2A2A4;
|
--footer-title-text-color: #A2A2A4;
|
||||||
|
|
||||||
--sidebar-margin-horizontal: 32px;
|
--menu-item-padding-horizontal: 0px;
|
||||||
--sidebar-item-padding-horizontal: 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
:root.light {
|
:root.light {
|
||||||
--link-hover-text-color: #4A00B2;
|
--link-color-primary-hover: #4A00B2;
|
||||||
--link-visited-text-color: #000;
|
--link-color-visited: #000;
|
||||||
--text-secondary: #000;
|
--text-color-secondary: #000;
|
||||||
--code-block-background-color: #E0E0E1;
|
--code-block-bg-color: #E0E0E1;
|
||||||
--code-block-controls-background-color: #E0E0E1;
|
--code-block-controls-bg-color: #E0E0E1;
|
||||||
--code-block-controls-border: none;
|
--code-block-controls-border: none;
|
||||||
--code-block-border-color: #E0E0E1;
|
--md-tabs-active-tab-bg-color: #C1C1C2;
|
||||||
--md-tabs-active-tab-background-color: #C1C1C2;
|
|
||||||
|
|
||||||
--code-block-tokens-function-color: #B23C00;
|
--code-block-tokens-function-color: #B23C00;
|
||||||
--code-block-tokens-operator-color: #000;
|
--code-block-tokens-operator-color: #000;
|
||||||
--code-block-tokens-comment-color: #343437;
|
--code-block-tokens-comment-color: #343437;
|
||||||
--code-block-tokens-string-color: #145C35;
|
--code-block-tokens-string-color: #145C35;
|
||||||
--inline-code-background-color: #E0E0E1;
|
--inline-code-bg-color: #E0E0E1;
|
||||||
|
|
||||||
|
--search-trigger-bg-color: #E0E0E1;
|
||||||
|
--search-trigger-color: #838386;
|
||||||
|
|
||||||
--search-trigger-background-color: #E0E0E1;
|
|
||||||
--search-trigger-text-color: #838386;
|
|
||||||
--language-picker-border-color: #C1C1C2;
|
--language-picker-border-color: #C1C1C2;
|
||||||
--language-picker-background-color: #E0E0E1;
|
--language-picker-background-color: #E0E0E1;
|
||||||
--select-list-background-color: #E0E0E1;
|
--select-list-bg-color: #E0E0E1;
|
||||||
|
|
||||||
--footer-title-text-color: #000;
|
--footer-title-text-color: #000;
|
||||||
--bg-base: var(--color-gray-1);
|
--bg-color: var(--color-gray-1);
|
||||||
--bg-raised: var(--color-gray-2);
|
--bg-color-raised: var(--color-gray-2);
|
||||||
--button-background-color: var(--color-gray-2);
|
--button-content-color-link: #000;
|
||||||
}
|
}
|
||||||
|
|
||||||
:root .form-control-plaintext {
|
:root .form-control-plaintext {
|
||||||
color: var(--text-color);
|
color: var(--text-color);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[data-component-name="Search/SearchTrigger"] > div {
|
||||||
|
justify-content: start;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import * as React from "react";
|
import * as React from "react";
|
||||||
import { useTranslate } from "@portal/hooks";
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
|
|
||||||
export const frontmatter = {
|
export const frontmatter = {
|
||||||
seo: {
|
seo: {
|
||||||
@@ -9,6 +9,7 @@ export const frontmatter = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
export default function History() {
|
export default function History() {
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
const [openSections, setOpenSections] = React.useState({});
|
const [openSections, setOpenSections] = React.useState({});
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import React, { useState } from "react";
|
import React, { useState } from "react";
|
||||||
import { useTranslate } from "@portal/hooks";
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
import mapDark from "../static/js/impact/mapDark.json";
|
import mapDark from "../static/js/impact/mapDark.json";
|
||||||
import mapLight from "../static/js/impact/mapLight.json";
|
import mapLight from "../static/js/impact/mapLight.json";
|
||||||
import { useLottie } from "lottie-react";
|
import { useLottie } from "lottie-react";
|
||||||
@@ -16,6 +16,7 @@ export const frontmatter = {
|
|||||||
export default function Impact() {
|
export default function Impact() {
|
||||||
const theme = useThemeFromClassList(["dark", "light"]);
|
const theme = useThemeFromClassList(["dark", "light"]);
|
||||||
const [videoVisible, setVideoVisible] = useState(false); // State to control visibility
|
const [videoVisible, setVideoVisible] = useState(false); // State to control visibility
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
const handleVideoClick = () => {
|
const handleVideoClick = () => {
|
||||||
setVideoVisible(true); // Show the iframe
|
setVideoVisible(true); // Show the iframe
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import * as React from "react";
|
import * as React from "react";
|
||||||
import { useTranslate } from "@portal/hooks";
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
|
|
||||||
export const frontmatter = {
|
export const frontmatter = {
|
||||||
seo: {
|
seo: {
|
||||||
@@ -27,6 +27,7 @@ const faqs = [
|
|||||||
];
|
];
|
||||||
|
|
||||||
export default function XrplOverview() {
|
export default function XrplOverview() {
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
const [videoOne, setVideoOne] = React.useState(false);
|
const [videoOne, setVideoOne] = React.useState(false);
|
||||||
const [currentVideoUrl, setCurrentVideoUrl] = React.useState("");
|
const [currentVideoUrl, setCurrentVideoUrl] = React.useState("");
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import * as React from "react";
|
import * as React from "react";
|
||||||
import { useTranslate } from "@portal/hooks";
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
import numLight from "../static/js/ecosystem/numbers-animation-light.json";
|
import numLight from "../static/js/ecosystem/numbers-animation-light.json";
|
||||||
import numDark from "../static/js/ecosystem/numbers-animation.json";
|
import numDark from "../static/js/ecosystem/numbers-animation.json";
|
||||||
import arrow from "../static/js/ecosystem/arrow-animation.json";
|
import arrow from "../static/js/ecosystem/arrow-animation.json";
|
||||||
@@ -473,6 +473,7 @@ const uses = [
|
|||||||
|
|
||||||
export default function Uses() {
|
export default function Uses() {
|
||||||
const theme = useThemeFromClassList(["dark", "light"]);
|
const theme = useThemeFromClassList(["dark", "light"]);
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
const [displayModal, setDisplayModal] = React.useState(false);
|
const [displayModal, setDisplayModal] = React.useState(false);
|
||||||
const [currentIndex, setCurrentIndex] = React.useState(0);
|
const [currentIndex, setCurrentIndex] = React.useState(0);
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import * as React from "react";
|
import * as React from "react";
|
||||||
import { useTranslate } from "@portal/hooks";
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
import briefcaseIcon from "../static/img/icons/briefcase.svg";
|
import briefcaseIcon from "../static/img/icons/briefcase.svg";
|
||||||
import userIcon from "../static/img/icons/user.svg";
|
import userIcon from "../static/img/icons/user.svg";
|
||||||
export const frontmatter = {
|
export const frontmatter = {
|
||||||
@@ -72,6 +72,7 @@ const exchanges = [
|
|||||||
];
|
];
|
||||||
|
|
||||||
export default function XrpOverview() {
|
export default function XrpOverview() {
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
const [activeSection, setActiveSection] = React.useState(null);
|
const [activeSection, setActiveSection] = React.useState(null);
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import * as React from "react";
|
import * as React from "react";
|
||||||
import { useState, useRef, useEffect } from "react";
|
import { useState, useRef, useEffect } from "react";
|
||||||
import { useTranslate, usePageSharedData } from "@portal/hooks";
|
import { useThemeHooks } from "@redocly/theme/core/hooks";
|
||||||
import moment from "moment";
|
import moment from "moment";
|
||||||
|
|
||||||
export const frontmatter = {
|
export const frontmatter = {
|
||||||
@@ -24,6 +24,7 @@ const categories = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
export default function Index() {
|
export default function Index() {
|
||||||
|
const { useTranslate, usePageSharedData } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
const { blogPosts } = usePageSharedData<any>("blog-posts");
|
const { blogPosts } = usePageSharedData<any>("blog-posts");
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import * as React from 'react';
|
import * as React from 'react';
|
||||||
import { useTranslate } from '@portal/hooks';
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
|
|
||||||
export const frontmatter = {
|
export const frontmatter = {
|
||||||
seo: {
|
seo: {
|
||||||
@@ -13,6 +13,7 @@ false
|
|||||||
const target= {prefix: ''}; // TODO: fixme
|
const target= {prefix: ''}; // TODO: fixme
|
||||||
|
|
||||||
export default function Ambassadors() {
|
export default function Ambassadors() {
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
|
|
||||||
return (
|
return (
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import * as React from "react";
|
import * as React from "react";
|
||||||
import { useTranslate } from "@portal/hooks";
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
|
|
||||||
export const frontmatter = {
|
export const frontmatter = {
|
||||||
seo: {
|
seo: {
|
||||||
@@ -13,6 +13,7 @@ false;
|
|||||||
const target = { prefix: "" }; // TODO: fixme
|
const target = { prefix: "" }; // TODO: fixme
|
||||||
|
|
||||||
export default function Funding() {
|
export default function Funding() {
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
|
|
||||||
return (
|
return (
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import { useState, useMemo } from "react";
|
import { useState, useMemo } from "react";
|
||||||
import * as React from "react";
|
import * as React from "react";
|
||||||
import { useTranslate } from "@portal/hooks";
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
const moment = require("moment");
|
const moment = require("moment");
|
||||||
const amaImage = require("../static/img/events/AMAs.png")
|
const amaImage = require("../static/img/events/AMAs.png")
|
||||||
const hackathon = require("../static/img/events/Hackathons.png")
|
const hackathon = require("../static/img/events/Hackathons.png")
|
||||||
@@ -686,6 +686,7 @@ const events = [
|
|||||||
];
|
];
|
||||||
|
|
||||||
export default function Events() {
|
export default function Events() {
|
||||||
|
const { useTranslate} = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
const { past, upcoming } = useMemo(() => categorizeDates(events), []);
|
const { past, upcoming } = useMemo(() => categorizeDates(events), []);
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import React, { useEffect, useState } from "react";
|
import React, { useEffect, useState } from "react";
|
||||||
import { useTranslate } from "@portal/hooks";
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
import moment from "moment";
|
import moment from "moment";
|
||||||
|
|
||||||
export const frontmatter = {
|
export const frontmatter = {
|
||||||
@@ -167,6 +167,7 @@ const events = [
|
|||||||
];
|
];
|
||||||
const { nearestDateDiff, nearestEvent } = findNearestUpcomingEvent(events);
|
const { nearestDateDiff, nearestEvent } = findNearestUpcomingEvent(events);
|
||||||
const XrplEventsAndCarouselSection = ({ events }) => {
|
const XrplEventsAndCarouselSection = ({ events }) => {
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
const [currentIndex, setCurrentIndex] = useState(7);
|
const [currentIndex, setCurrentIndex] = useState(7);
|
||||||
|
|
||||||
@@ -302,6 +303,7 @@ const XrplEventsAndCarouselSection = ({ events }) => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
const CommunityPage: React.FC = () => {
|
const CommunityPage: React.FC = () => {
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
return (
|
return (
|
||||||
<div className="no-sidebar landing page-community">
|
<div className="no-sidebar landing page-community">
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import * as React from 'react';
|
import * as React from 'react';
|
||||||
import { useTranslate } from '@portal/hooks';
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
|
|
||||||
export const frontmatter = {
|
export const frontmatter = {
|
||||||
seo: {
|
seo: {
|
||||||
@@ -208,6 +208,7 @@ function VideoCard(props: { url: string; title: string; src: string }) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function DevToolCard(props: { link: string; title: string; description: string }) {
|
function DevToolCard(props: { link: string; title: string; description: string }) {
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
const { link, title, description } = props;
|
const { link, title, description } = props;
|
||||||
return (
|
return (
|
||||||
@@ -228,6 +229,7 @@ function PrimaryButton(props: { href: string; text: string; isArrowUp: boolean }
|
|||||||
}
|
}
|
||||||
|
|
||||||
export default function Docs() {
|
export default function Docs() {
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
|
|
||||||
return (
|
return (
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import { useTranslate } from '@portal/hooks';
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
|
|
||||||
export const frontmatter = {
|
export const frontmatter = {
|
||||||
seo: {
|
seo: {
|
||||||
@@ -103,6 +103,7 @@ const features = [
|
|||||||
];
|
];
|
||||||
|
|
||||||
export default function Index() {
|
export default function Index() {
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
|
|
||||||
return (
|
return (
|
||||||
|
|||||||
1552
package-lock.json
generated
1552
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -15,7 +15,7 @@
|
|||||||
"@codemirror/state": "6.3.3",
|
"@codemirror/state": "6.3.3",
|
||||||
"@codemirror/view": "^6.22.2",
|
"@codemirror/view": "^6.22.2",
|
||||||
"@lezer/highlight": "^1.2.0",
|
"@lezer/highlight": "^1.2.0",
|
||||||
"@redocly/realm": "^0.82.4",
|
"@redocly/realm": "0.83.0-rc.1",
|
||||||
"@uiw/codemirror-themes": "4.21.21",
|
"@uiw/codemirror-themes": "4.21.21",
|
||||||
"@uiw/react-codemirror": "^4.21.21",
|
"@uiw/react-codemirror": "^4.21.21",
|
||||||
"@xrplf/isomorphic": "^1.0.0-beta.1",
|
"@xrplf/isomorphic": "^1.0.0-beta.1",
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import * as React from 'react';
|
import * as React from 'react';
|
||||||
import { usePageSharedData, useTranslate } from '@portal/hooks';
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
|
|
||||||
export const frontmatter = {
|
export const frontmatter = {
|
||||||
seo: {
|
seo: {
|
||||||
@@ -24,6 +24,7 @@ const target = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
export default function CodeSamples() {
|
export default function CodeSamples() {
|
||||||
|
const { useTranslate, usePageSharedData } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
const { codeSamples, langs } = usePageSharedData<any>('code-samples');
|
const { codeSamples, langs } = usePageSharedData<any>('code-samples');
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import clsx from 'clsx'
|
import clsx from 'clsx'
|
||||||
import * as React from 'react';
|
import * as React from 'react';
|
||||||
import { useTranslate } from '@portal/hooks';
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
|
|
||||||
const alertStyle = {
|
const alertStyle = {
|
||||||
position: "relative",
|
position: "relative",
|
||||||
@@ -30,6 +30,7 @@ interface AlertTemplateProps {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export default function AlertTemplate ({ message, options, style, close }: AlertTemplateProps): React.JSX.Element {
|
export default function AlertTemplate ({ message, options, style, close }: AlertTemplateProps): React.JSX.Element {
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate()
|
const { translate } = useTranslate()
|
||||||
return(
|
return(
|
||||||
<div className={clsx("bootstrap-growl alert alert-dismissible", typeToClass(options.type))} style={{ ...alertStyle, ...style }}>
|
<div className={clsx("bootstrap-growl alert alert-dismissible", typeToClass(options.type))} style={{ ...alertStyle, ...style }}>
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import * as React from 'react';
|
import * as React from 'react';
|
||||||
import { useState } from 'react';
|
import { useState } from 'react';
|
||||||
import { useTranslate } from '@portal/hooks';
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
import { clsx } from 'clsx'
|
import { clsx } from 'clsx'
|
||||||
import { isValidAddress } from 'xrpl'
|
import { isValidAddress } from 'xrpl'
|
||||||
|
|
||||||
@@ -27,6 +27,7 @@ export function DestinationAddressInput(
|
|||||||
setDestinationAddress,
|
setDestinationAddress,
|
||||||
} : DestinationAddressInputProps
|
} : DestinationAddressInputProps
|
||||||
): React.JSX.Element {
|
): React.JSX.Element {
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate()
|
const { translate } = useTranslate()
|
||||||
const [ isValidDestinationAddress, setIsValidDestinationAddress ] = useState(true)
|
const [ isValidDestinationAddress, setIsValidDestinationAddress ] = useState(true)
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import * as React from 'react';
|
import * as React from 'react';
|
||||||
import { useTranslate } from '@portal/hooks';
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
import { clsx } from 'clsx'
|
import { clsx } from 'clsx'
|
||||||
|
|
||||||
import { Client, type Wallet, type TxResponse, dropsToXrp } from 'xrpl'
|
import { Client, type Wallet, type TxResponse, dropsToXrp } from 'xrpl'
|
||||||
@@ -176,6 +176,7 @@ export function InitButton({
|
|||||||
isInitEnabled: boolean,
|
isInitEnabled: boolean,
|
||||||
toInit: InitializationProps
|
toInit: InitializationProps
|
||||||
}): React.JSX.Element {
|
}): React.JSX.Element {
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate()
|
const { translate } = useTranslate()
|
||||||
|
|
||||||
return (<div className="form-group">
|
return (<div className="form-group">
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
import * as React from 'react';
|
import * as React from 'react';
|
||||||
import { useTranslate } from "@portal/hooks";
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
|
|
||||||
export const Loader = () => {
|
export const Loader = () => {
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
|
|
||||||
return <img className="throbber" src="/img/xrp-loader-96.png" alt={translate("(loading)")} />
|
return <img className="throbber" src="/img/xrp-loader-96.png" alt={translate("(loading)")} />
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import * as React from 'react';
|
import * as React from 'react';
|
||||||
import { useTranslate } from '@portal/hooks';
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
import { clsx } from 'clsx'
|
import { clsx } from 'clsx'
|
||||||
|
|
||||||
export const CLASS_GOOD = "badge badge-success"
|
export const CLASS_GOOD = "badge badge-success"
|
||||||
@@ -60,6 +60,7 @@ export function LogEntry({
|
|||||||
status
|
status
|
||||||
}: LogEntryItem)
|
}: LogEntryItem)
|
||||||
{
|
{
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const {translate} = useTranslate()
|
const {translate} = useTranslate()
|
||||||
let icon = undefined
|
let icon = undefined
|
||||||
if(!!(status?.icon)) {
|
if(!!(status?.icon)) {
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import React, { JSX, ReactElement, ReactNode } from 'react';
|
import React, { JSX, ReactElement, ReactNode } from 'react';
|
||||||
import { useTranslate } from '@portal/hooks';
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
|
|
||||||
interface ModalProps {
|
interface ModalProps {
|
||||||
id: string // used for targeting animations
|
id: string // used for targeting animations
|
||||||
@@ -48,6 +48,7 @@ export const Modal = ({title, footer, children, onClose, id}: ModalProps) => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export const ModalCloseBtn = ({onClick}) => {
|
export const ModalCloseBtn = ({onClick}) => {
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
|
|
||||||
return <button
|
return <button
|
||||||
@@ -61,6 +62,7 @@ export const ModalCloseBtn = ({onClick}) => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export const ModalClipboardBtn = ({textareaRef}) => {
|
export const ModalClipboardBtn = ({textareaRef}) => {
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
|
|
||||||
return <button
|
return <button
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import * as React from 'react';
|
import * as React from 'react';
|
||||||
import { useTranslate } from '@portal/hooks';
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
import { clsx } from 'clsx'
|
import { clsx } from 'clsx'
|
||||||
|
|
||||||
import { type Wallet } from 'xrpl'
|
import { type Wallet } from 'xrpl'
|
||||||
@@ -16,6 +16,7 @@ export function StatusSidebar({
|
|||||||
connectionReady: boolean,
|
connectionReady: boolean,
|
||||||
txHistory: React.JSX.Element[],
|
txHistory: React.JSX.Element[],
|
||||||
}) {
|
}) {
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
|
|
||||||
return (<aside className="right-sidebar col-lg-6 order-lg-4">
|
return (<aside className="right-sidebar col-lg-6 order-lg-4">
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import * as React from 'react';
|
import * as React from 'react';
|
||||||
import { useState } from 'react'
|
import { useState } from 'react'
|
||||||
import { useTranslate } from '@portal/hooks';
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
import { LogEntry, LogEntryItem } from './LogEntry';
|
import { LogEntry, LogEntryItem } from './LogEntry';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -42,6 +42,7 @@ export interface TextLookupFormProps {
|
|||||||
* @returns A single-entry form which displays logs after submitting.
|
* @returns A single-entry form which displays logs after submitting.
|
||||||
*/
|
*/
|
||||||
export function TextLookupForm(props: TextLookupFormProps) {
|
export function TextLookupForm(props: TextLookupFormProps) {
|
||||||
|
const { useTranslate } = useThemeHooks()
|
||||||
const { translate } = useTranslate()
|
const { translate } = useTranslate()
|
||||||
|
|
||||||
const { title, description, buttonDescription, formPlaceholder, handleSubmit } = props
|
const { title, description, buttonDescription, formPlaceholder, handleSubmit } = props
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import * as React from 'react';
|
import * as React from 'react';
|
||||||
import { useState } from 'react'
|
import { useState } from 'react'
|
||||||
import { useTranslate } from '@portal/hooks';
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
import { clsx } from 'clsx'
|
import { clsx } from 'clsx'
|
||||||
|
|
||||||
import { type Transaction, type Wallet } from 'xrpl'
|
import { type Transaction, type Wallet } from 'xrpl'
|
||||||
@@ -65,6 +65,7 @@ export function TransactionButton({
|
|||||||
checkBox,
|
checkBox,
|
||||||
customOnClick
|
customOnClick
|
||||||
}: TransactionButtonProps ) {
|
}: TransactionButtonProps ) {
|
||||||
|
const { useTranslate } = useThemeHooks()
|
||||||
const { translate } = useTranslate()
|
const { translate } = useTranslate()
|
||||||
|
|
||||||
const [waitingForTransaction, setWaitingForTransaction] = useState(false)
|
const [waitingForTransaction, setWaitingForTransaction] = useState(false)
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import { useTranslate } from '@portal/hooks'
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
import { ReactElement, useState } from 'react';
|
import { ReactElement, useState } from 'react';
|
||||||
import JsonView from 'react18-json-view'
|
import JsonView from 'react18-json-view'
|
||||||
|
|
||||||
@@ -26,6 +26,7 @@ export const RPCResponseGroup = ({ response, anchor, customExpanded, customExpan
|
|||||||
}
|
}
|
||||||
|
|
||||||
const RPCResponseGroupExpanders = ({ customExpanded, customExpandedText, setExpanded }) => {
|
const RPCResponseGroupExpanders = ({ customExpanded, customExpandedText, setExpanded }) => {
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
|
|
||||||
return <ul className="nav nav-pills">
|
return <ul className="nav nav-pills">
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import { useTranslate } from "@portal/hooks";
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
import { Connection } from './types';
|
import { Connection } from './types';
|
||||||
import { ChangeEvent } from 'react';
|
import { ChangeEvent } from 'react';
|
||||||
import { Modal } from '../Modal';
|
import { Modal } from '../Modal';
|
||||||
@@ -19,6 +19,7 @@ export const ConnectionModal: React.FC<ConnectionProps> = ({
|
|||||||
closeConnectionModal,
|
closeConnectionModal,
|
||||||
connections,
|
connections,
|
||||||
}) => {
|
}) => {
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
const handleConnectionChange = (event: ChangeEvent<HTMLInputElement>) => {
|
const handleConnectionChange = (event: ChangeEvent<HTMLInputElement>) => {
|
||||||
const selectedValue = event.target.value;
|
const selectedValue = event.target.value;
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import { useTranslate } from "@portal/hooks";
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
import { Connection } from './types';
|
import { Connection } from './types';
|
||||||
import { useRef, useState } from 'react';
|
import { useRef, useState } from 'react';
|
||||||
import { Modal, ModalClipboardBtn, ModalCloseBtn } from '../Modal';
|
import { Modal, ModalClipboardBtn, ModalCloseBtn } from '../Modal';
|
||||||
@@ -37,6 +37,7 @@ export const CurlModal: React.FC<CurlProps> = ({
|
|||||||
selectedConnection,
|
selectedConnection,
|
||||||
}) => {
|
}) => {
|
||||||
const curlRef = useRef(null);
|
const curlRef = useRef(null);
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
const footer = <>
|
const footer = <>
|
||||||
<ModalClipboardBtn textareaRef={curlRef} />
|
<ModalClipboardBtn textareaRef={curlRef} />
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import React, { useRef, useState } from 'react';
|
import React, { useRef, useState } from 'react';
|
||||||
import { useTranslate } from "@portal/hooks";
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
import { Connection } from './types';
|
import { Connection } from './types';
|
||||||
import { Modal, ModalClipboardBtn, ModalCloseBtn } from '../Modal';
|
import { Modal, ModalClipboardBtn, ModalCloseBtn } from '../Modal';
|
||||||
|
|
||||||
@@ -17,6 +17,7 @@ const PermalinkModal: React.FC<PermaLinkProps> = ({
|
|||||||
currentBody,
|
currentBody,
|
||||||
selectedConnection
|
selectedConnection
|
||||||
}) => {
|
}) => {
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
const permalinkRef = useRef(null);
|
const permalinkRef = useRef(null);
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import React, { Fragment } from 'react';
|
import React, { Fragment } from 'react';
|
||||||
import { useTranslate } from "@portal/hooks";
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
import { Link } from "@portal/Link";
|
import { Link } from "@redocly/theme/components/Link/Link";
|
||||||
import { slugify } from "./slugify";
|
import { slugify } from "./slugify";
|
||||||
import { CommandGroup, CommandMethod } from './types';
|
import { CommandGroup, CommandMethod } from './types';
|
||||||
|
|
||||||
@@ -15,6 +15,7 @@ export const RightSideBar: React.FC<RightSideBarProps> = ({
|
|||||||
currentMethod,
|
currentMethod,
|
||||||
setCurrentMethod,
|
setCurrentMethod,
|
||||||
}) => {
|
}) => {
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
return (
|
return (
|
||||||
<div className="command-list-wrapper">
|
<div className="command-list-wrapper">
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import * as React from "react";
|
import * as React from "react";
|
||||||
import { useTranslate } from "@portal/hooks";
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
import { decode } from "ripple-binary-codec";
|
import { decode } from "ripple-binary-codec";
|
||||||
import addressCodec, { encodeNodePublic } from "ripple-address-codec";
|
import addressCodec, { encodeNodePublic } from "ripple-address-codec";
|
||||||
import { verify as keyCodecVerify } from "ripple-keypairs";
|
import { verify as keyCodecVerify } from "ripple-keypairs";
|
||||||
@@ -19,6 +19,7 @@ const TIPS =
|
|||||||
<p>Check if the xrp-ledger.toml file is actually hosted in the /.well-known/ location at the domain in your manifest. Check your server\'s HTTPS settings and certificate, and make sure your server provides the required <a href="xrp-ledger-toml.html#cors-setup">CORS header.</a></p>;
|
<p>Check if the xrp-ledger.toml file is actually hosted in the /.well-known/ location at the domain in your manifest. Check your server\'s HTTPS settings and certificate, and make sure your server provides the required <a href="xrp-ledger-toml.html#cors-setup">CORS header.</a></p>;
|
||||||
|
|
||||||
const DomainVerificationPage = () => {
|
const DomainVerificationPage = () => {
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
const TOML_PATH = "/.well-known/xrp-ledger.toml";
|
const TOML_PATH = "/.well-known/xrp-ledger.toml";
|
||||||
let query_param = 0;
|
let query_param = 0;
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import * as React from "react";
|
import * as React from "react";
|
||||||
import { useTranslate } from "@portal/hooks";
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
|
|
||||||
export const frontmatter = {
|
export const frontmatter = {
|
||||||
seo: {
|
seo: {
|
||||||
@@ -119,6 +119,7 @@ const other = [
|
|||||||
];
|
];
|
||||||
|
|
||||||
export default function DevTools() {
|
export default function DevTools() {
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
|
|
||||||
return (
|
return (
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { useTranslate } from "@portal/hooks";
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
import { Link } from '@portal/Link';
|
import { Link } from '@redocly/theme/components/Link/Link';
|
||||||
import { useState, useEffect } from "react";
|
import { useState, useEffect } from "react";
|
||||||
import { useLocation } from "react-router-dom";
|
import { useLocation } from "react-router-dom";
|
||||||
import JsonView from 'react18-json-view'
|
import JsonView from 'react18-json-view'
|
||||||
@@ -25,6 +25,7 @@ export default function RpcTool() {
|
|||||||
const [ledgerResponse, setLedgerResponse] = useState(null);
|
const [ledgerResponse, setLedgerResponse] = useState(null);
|
||||||
const [inputText, setInputText] = useState(slug ? slug.slice(1) : "");
|
const [inputText, setInputText] = useState(slug ? slug.slice(1) : "");
|
||||||
const [errorText, setErrorText] = useState(null);
|
const [errorText, setErrorText] = useState(null);
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
const [inputType, setInputType] = useState("");
|
const [inputType, setInputType] = useState("");
|
||||||
const [showResult, setShowResult] = useState(false);
|
const [showResult, setShowResult] = useState(false);
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import * as React from 'react';
|
import * as React from 'react';
|
||||||
import { useTranslate } from '@portal/hooks';
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
import axios, { AxiosError } from "axios";
|
import axios, { AxiosError } from "axios";
|
||||||
import { parse } from "smol-toml";
|
import { parse } from "smol-toml";
|
||||||
import { getListEntries } from "./ListTomlFields";
|
import { getListEntries } from "./ListTomlFields";
|
||||||
@@ -25,7 +25,8 @@ async function validateAndDisplayFields(
|
|||||||
domainToVerify?: string,
|
domainToVerify?: string,
|
||||||
filterDisplayedFieldsTo?: Function): Promise<boolean> {
|
filterDisplayedFieldsTo?: Function): Promise<boolean> {
|
||||||
|
|
||||||
const { translate } = useTranslate()
|
const { useTranslate } = useThemeHooks();
|
||||||
|
const { translate } = useTranslate();
|
||||||
|
|
||||||
// If there's no data, do nothing
|
// If there's no data, do nothing
|
||||||
if(!fields) {
|
if(!fields) {
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import * as React from 'react';
|
import * as React from 'react';
|
||||||
import { useState } from 'react'
|
import { useState } from 'react'
|
||||||
import { useTranslate } from '@portal/hooks';
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
|
|
||||||
import AlertTemplate from './components/AlertTemplate';
|
import AlertTemplate from './components/AlertTemplate';
|
||||||
import { transitions, positions, Provider as AlertProvider } from 'react-alert'
|
import { transitions, positions, Provider as AlertProvider } from 'react-alert'
|
||||||
@@ -104,6 +104,7 @@ async function onClickCreateEscrow(
|
|||||||
}
|
}
|
||||||
|
|
||||||
function TxSenderBody(): React.JSX.Element {
|
function TxSenderBody(): React.JSX.Element {
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
|
|
||||||
const [client, setClient] = useState<Client | undefined>(undefined)
|
const [client, setClient] = useState<Client | undefined>(undefined)
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import { useEffect, useState, useRef } from 'react';
|
import { useEffect, useState, useRef } from 'react';
|
||||||
import { useLocation } from "react-router-dom";
|
import { useLocation } from "react-router-dom";
|
||||||
import { useTranslate } from "@portal/hooks";
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
import {
|
import {
|
||||||
JsonParam,
|
JsonParam,
|
||||||
StringParam,
|
StringParam,
|
||||||
@@ -38,6 +38,7 @@ export function WebsocketApiTool() {
|
|||||||
})
|
})
|
||||||
|
|
||||||
const { hash: slug } = useLocation();
|
const { hash: slug } = useLocation();
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
const [isConnectionModalVisible, setIsConnectionModalVisible] =
|
const [isConnectionModalVisible, setIsConnectionModalVisible] =
|
||||||
useState(false);
|
useState(false);
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import * as React from 'react';
|
import * as React from 'react';
|
||||||
import { useTranslate } from '@portal/hooks';
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
import { useState } from 'react';
|
import { useState } from 'react';
|
||||||
import { Client, dropsToXrp, Wallet } from 'xrpl';
|
import { Client, dropsToXrp, Wallet } from 'xrpl';
|
||||||
import * as faucetData from './faucets.json'
|
import * as faucetData from './faucets.json'
|
||||||
@@ -43,6 +43,7 @@ async function waitForSequence(client: Client, address: string):
|
|||||||
}
|
}
|
||||||
|
|
||||||
function FaucetEndpoints({ faucet, givenKey } : { faucet: FaucetInfo, givenKey: string}) {
|
function FaucetEndpoints({ faucet, givenKey } : { faucet: FaucetInfo, givenKey: string}) {
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
|
|
||||||
return (<div key={givenKey}>
|
return (<div key={givenKey}>
|
||||||
@@ -68,6 +69,7 @@ function FaucetSidebar({ faucets }: { faucets: FaucetInfo[] }): React.JSX.Elemen
|
|||||||
}
|
}
|
||||||
|
|
||||||
export default function XRPFaucets(): React.JSX.Element {
|
export default function XRPFaucets(): React.JSX.Element {
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
|
|
||||||
const faucets: FaucetInfo[] = faucetData.knownFaucets
|
const faucets: FaucetInfo[] = faucetData.knownFaucets
|
||||||
@@ -124,6 +126,7 @@ async function generateFaucetCredentialsAndUpdateUI(
|
|||||||
setSecret("")
|
setSecret("")
|
||||||
setBalance("")
|
setBalance("")
|
||||||
setSequence("")
|
setSequence("")
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
|
|
||||||
|
|
||||||
@@ -150,6 +153,7 @@ async function generateFaucetCredentialsAndUpdateUI(
|
|||||||
}
|
}
|
||||||
|
|
||||||
function TestCredentials({selectedFaucet}) {
|
function TestCredentials({selectedFaucet}) {
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
|
|
||||||
const [generatedCredentialsFaucet, setGeneratedCredentialsFaucet] = useState("")
|
const [generatedCredentialsFaucet, setGeneratedCredentialsFaucet] = useState("")
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import * as React from 'react';
|
import * as React from 'react';
|
||||||
import { useTranslate } from '@portal/hooks';
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
import { TextLookupForm, type TextLookupFormProps } from './components/TextLookupForm';
|
import { TextLookupForm, type TextLookupFormProps } from './components/TextLookupForm';
|
||||||
import { fetchFile, fetchWallet } from './toml-checker/ValidateTomlSteps';
|
import { fetchFile, fetchWallet } from './toml-checker/ValidateTomlSteps';
|
||||||
import { LogEntryItem } from './components/LogEntry';
|
import { LogEntryItem } from './components/LogEntry';
|
||||||
@@ -45,6 +45,7 @@ function handleSubmitDomain(
|
|||||||
}
|
}
|
||||||
|
|
||||||
export default function TomlChecker() {
|
export default function TomlChecker() {
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
|
|
||||||
const domainButtonProps: TextLookupFormProps = {
|
const domainButtonProps: TextLookupFormProps = {
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
@@ -1,4 +1,4 @@
|
|||||||
import { useTranslate } from '@portal/hooks';
|
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
||||||
import { isFunction } from './type-helpers'
|
import { isFunction } from './type-helpers'
|
||||||
import { FC } from 'react'
|
import { FC } from 'react'
|
||||||
import { useEffect, useState } from 'react'
|
import { useEffect, useState } from 'react'
|
||||||
@@ -63,7 +63,7 @@ export const XRPLGuard: FC<{ testCheck?: () => boolean, children }> = ({
|
|||||||
testCheck,
|
testCheck,
|
||||||
children,
|
children,
|
||||||
}) => {
|
}) => {
|
||||||
|
const { useTranslate } = useThemeHooks();
|
||||||
const { translate } = useTranslate();
|
const { translate } = useTranslate();
|
||||||
const isXRPLLoaded = useThrottledCheck(
|
const isXRPLLoaded = useThrottledCheck(
|
||||||
testCheck ?? (() => typeof xrpl === 'object'),
|
testCheck ?? (() => typeof xrpl === 'object'),
|
||||||
|
|||||||
@@ -3,6 +3,8 @@ button.MarkpromptFloatingTrigger {
|
|||||||
border-radius: $border-radius-sm;
|
border-radius: $border-radius-sm;
|
||||||
right: 16px;
|
right: 16px;
|
||||||
border: 1px solid transparent;
|
border: 1px solid transparent;
|
||||||
|
color: var(--markprompt-primaryForeground);
|
||||||
|
background-color: var(--markprompt-primary);
|
||||||
|
|
||||||
@include media-breakpoint-up(lg) {
|
@include media-breakpoint-up(lg) {
|
||||||
right: 32px;
|
right: 32px;
|
||||||
|
|||||||
@@ -1,2 +0,0 @@
|
|||||||
theme.page.previousButton: "Previous: {{label}}"
|
|
||||||
theme.page.nextButton: "Next: {{label}}"
|
|
||||||
@@ -4,14 +4,7 @@
|
|||||||
"baseUrl": ".",
|
"baseUrl": ".",
|
||||||
"jsx": "react-jsx",
|
"jsx": "react-jsx",
|
||||||
"resolveJsonModule": true,
|
"resolveJsonModule": true,
|
||||||
"paths": {
|
"module": "es2015",
|
||||||
"@theme/*": [
|
"moduleResolution": "bundler"
|
||||||
"./@theme/*",
|
|
||||||
"./node_modules/@redocly/theme/src/*"
|
|
||||||
],
|
|
||||||
"@portal/*": [
|
|
||||||
"./node_modules/@redocly/realm/dist/client/app/*"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user