From 372bfdd90a1b7fa23b8aee79c548849d33508a60 Mon Sep 17 00:00:00 2001 From: Piyush Kumar Date: Tue, 17 Sep 2024 13:26:12 +0530 Subject: [PATCH 01/17] adding registration ui --- src/apps/webinar/package.json | 2 +- .../webinar/src/app/components/container.tsx | 26 +++++++++++++++ .../webinar/src/app/components/header.tsx | 33 +++++++++++++++++++ .../webinar/src/app/components/wrapper.tsx | 23 +++++++++++++ src/apps/webinar/src/app/layout.tsx | 7 +++- 5 files changed, 89 insertions(+), 2 deletions(-) create mode 100644 src/apps/webinar/src/app/components/container.tsx create mode 100644 src/apps/webinar/src/app/components/header.tsx create mode 100644 src/apps/webinar/src/app/components/wrapper.tsx diff --git a/src/apps/webinar/package.json b/src/apps/webinar/package.json index b1974f1d2..426a13500 100644 --- a/src/apps/webinar/package.json +++ b/src/apps/webinar/package.json @@ -3,7 +3,7 @@ "version": "0.1.0", "private": true, "scripts": { - "dev": "next dev -p 4001", + "dev": "next dev -p 4000", "build": "next build", "start": "next start", "lint": "next lint" diff --git a/src/apps/webinar/src/app/components/container.tsx b/src/apps/webinar/src/app/components/container.tsx new file mode 100644 index 000000000..8a4f0dfc0 --- /dev/null +++ b/src/apps/webinar/src/app/components/container.tsx @@ -0,0 +1,26 @@ +import { cn } from 'kl-design-system/utils'; +import React, { ReactNode } from 'react'; +import Header from './header'; + +interface IContainer { + children: ReactNode; + headerExtra?: ReactNode; +} + +const Container = ({ children, headerExtra }: IContainer) => { + return ( +
+
+
+ {children} +
+ {/*
*/} +
+ ); +}; + +export default Container; diff --git a/src/apps/webinar/src/app/components/header.tsx b/src/apps/webinar/src/app/components/header.tsx new file mode 100644 index 000000000..6c64487d7 --- /dev/null +++ b/src/apps/webinar/src/app/components/header.tsx @@ -0,0 +1,33 @@ +import { Link } from '@remix-run/react'; +import { Button } from 'kl-design-system/atoms/button'; +import { BrandLogo } from 'kl-design-system/branding/brand-logo'; +import React, { ReactNode } from 'react'; +import Wrapper from './wrapper'; + +const Header = ({ headerExtra }: { headerExtra?: ReactNode }) => { + return ( +
+ + +
+ +
+
+ +
+
+
+
+
+
+ ); +}; + +export default Header; diff --git a/src/apps/webinar/src/app/components/wrapper.tsx b/src/apps/webinar/src/app/components/wrapper.tsx new file mode 100644 index 000000000..54b120224 --- /dev/null +++ b/src/apps/webinar/src/app/components/wrapper.tsx @@ -0,0 +1,23 @@ +import { cn } from 'kl-design-system/utils'; +import React, { ReactNode } from 'react'; + +const Wrapper = ({ + children, + className, +}: { + children: ReactNode; + className?: string; +}) => { + return ( +
+ {children} +
+ ); +}; + +export default Wrapper; diff --git a/src/apps/webinar/src/app/layout.tsx b/src/apps/webinar/src/app/layout.tsx index 25ff529bf..ed6e64600 100644 --- a/src/apps/webinar/src/app/layout.tsx +++ b/src/apps/webinar/src/app/layout.tsx @@ -17,7 +17,12 @@ export default function RootLayout({ }>) { return ( - {children} + {/* {children} */} + + +
{children}
+ + ); } From fc00a87cf6a4e6be301478d37fa94276610eeaa0 Mon Sep 17 00:00:00 2001 From: Piyush Kumar Date: Tue, 17 Sep 2024 16:40:37 +0530 Subject: [PATCH 02/17] update website changes --- src/apps/devdoc/package.json | 2 +- src/apps/devdoc/pnpm-lock.yaml | 45 ++-- .../devdoc/web/components/page/index-new.tsx | 22 +- src/apps/devdoc/web/utils/config.tsx | 14 +- src/apps/devdoc/web/utils/const.tsx | 96 ++++--- src/apps/webinar/src/app/orgs/webinar-ui.tsx | 238 +++++++++++++----- 6 files changed, 270 insertions(+), 147 deletions(-) diff --git a/src/apps/devdoc/package.json b/src/apps/devdoc/package.json index abac059e6..40ee38491 100644 --- a/src/apps/devdoc/package.json +++ b/src/apps/devdoc/package.json @@ -48,6 +48,7 @@ "next-themes": "^0.2.1", "nextra": "^2.13.2", "nextra-theme-docs": "^2.13.2", + "postcss": "^8.4.47", "react": "^18.2.0", "react-dom": "^18.2.0", "react-fast-marquee": "^1.6.4", @@ -86,7 +87,6 @@ "eslint-plugin-react": "^7.33.2", "eslint-plugin-react-hooks": "^4.6.0", "next-sitemap": "^4.2.3", - "postcss": "12.1.5", "prettier": "^2.8.8", "tailwindcss": "^3.4.0", "typescript": "5.2.2" diff --git a/src/apps/devdoc/pnpm-lock.yaml b/src/apps/devdoc/pnpm-lock.yaml index cee06d6dd..634f03f11 100644 --- a/src/apps/devdoc/pnpm-lock.yaml +++ b/src/apps/devdoc/pnpm-lock.yaml @@ -98,6 +98,9 @@ dependencies: nextra-theme-docs: specifier: ^2.13.2 version: 2.13.4(next@14.2.8)(nextra@2.13.4)(react-dom@18.3.1)(react@18.3.1) + postcss: + specifier: ^8.4.47 + version: 8.4.47 react: specifier: ^18.2.0 version: 18.3.1 @@ -162,7 +165,7 @@ devDependencies: version: 6.21.0(eslint@8.57.0)(typescript@5.2.2) autoprefixer: specifier: ^10.4.16 - version: 10.4.20(postcss@8.4.45) + version: 10.4.20(postcss@8.4.47) eslint: specifier: ^8.56.0 version: 8.57.0 @@ -208,9 +211,6 @@ devDependencies: next-sitemap: specifier: ^4.2.3 version: 4.2.3(next@14.2.8) - postcss: - specifier: ^8.4.32 - version: 8.4.45 prettier: specifier: ^2.8.8 version: 2.8.8 @@ -3459,7 +3459,7 @@ packages: resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} dev: false - /autoprefixer@10.4.20(postcss@8.4.45): + /autoprefixer@10.4.20(postcss@8.4.47): resolution: {integrity: sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==} engines: {node: ^10 || ^12 || >=14} hasBin: true @@ -3471,7 +3471,7 @@ packages: fraction.js: 4.3.7 normalize-range: 0.1.2 picocolors: 1.1.0 - postcss: 8.4.45 + postcss: 8.4.47 postcss-value-parser: 4.2.0 dev: true @@ -8352,29 +8352,29 @@ packages: resolution: {integrity: sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==} engines: {node: '>= 0.4'} - /postcss-import@15.1.0(postcss@8.4.45): + /postcss-import@15.1.0(postcss@8.4.47): resolution: {integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==} engines: {node: '>=14.0.0'} peerDependencies: postcss: ^8.0.0 dependencies: - postcss: 8.4.45 + postcss: 8.4.47 postcss-value-parser: 4.2.0 read-cache: 1.0.0 resolve: 1.22.8 dev: true - /postcss-js@4.0.1(postcss@8.4.45): + /postcss-js@4.0.1(postcss@8.4.47): resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} engines: {node: ^12 || ^14 || >= 16} peerDependencies: postcss: ^8.4.21 dependencies: camelcase-css: 2.0.1 - postcss: 8.4.45 + postcss: 8.4.47 dev: true - /postcss-load-config@4.0.2(postcss@8.4.45): + /postcss-load-config@4.0.2(postcss@8.4.47): resolution: {integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==} engines: {node: '>= 14'} peerDependencies: @@ -8387,17 +8387,17 @@ packages: optional: true dependencies: lilconfig: 3.1.2 - postcss: 8.4.45 + postcss: 8.4.47 yaml: 2.5.1 dev: true - /postcss-nested@6.2.0(postcss@8.4.45): + /postcss-nested@6.2.0(postcss@8.4.47): resolution: {integrity: sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==} engines: {node: '>=12.0'} peerDependencies: postcss: ^8.2.14 dependencies: - postcss: 8.4.45 + postcss: 8.4.47 postcss-selector-parser: 6.1.2 dev: true @@ -8421,14 +8421,13 @@ packages: picocolors: 1.1.0 source-map-js: 1.2.1 - /postcss@8.4.45: - resolution: {integrity: sha512-7KTLTdzdZZYscUc65XmjFiB73vBhBfbPztCYdUNvlaso9PrzjzcmjqBPR0lNGkcVlcO4BjiO5rK/qNz+XAen1Q==} + /postcss@8.4.47: + resolution: {integrity: sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==} engines: {node: ^10 || ^12 || >=14} dependencies: nanoid: 3.3.7 picocolors: 1.1.0 source-map-js: 1.2.1 - dev: true /prelude-ls@1.2.1: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} @@ -9550,11 +9549,11 @@ packages: normalize-path: 3.0.0 object-hash: 3.0.0 picocolors: 1.1.0 - postcss: 8.4.45 - postcss-import: 15.1.0(postcss@8.4.45) - postcss-js: 4.0.1(postcss@8.4.45) - postcss-load-config: 4.0.2(postcss@8.4.45) - postcss-nested: 6.2.0(postcss@8.4.45) + postcss: 8.4.47 + postcss-import: 15.1.0(postcss@8.4.47) + postcss-js: 4.0.1(postcss@8.4.47) + postcss-load-config: 4.0.2(postcss@8.4.47) + postcss-nested: 6.2.0(postcss@8.4.47) postcss-selector-parser: 6.1.2 resolve: 1.22.8 sucrase: 3.35.0 @@ -10337,7 +10336,7 @@ packages: resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} file:../../design-system/out/kl-design-system-1.0.1.tgz(framer-motion@10.18.0)(react-dom@18.3.1)(react@18.3.1): - resolution: {integrity: sha512-oetCZ4l/auJBtk88ONXil1zjEUV76tFVCQap23+KPbjvg3n+Il0MK4Tgl3Tl8hHlc1zZ2YPTxD7WpWpYZlYjag==, tarball: file:../../design-system/out/kl-design-system-1.0.1.tgz} + resolution: {integrity: sha512-HXgczghmS1yoeqY0HuIHkekeeZId2m3dzynrpGK/WCjBQ+q2Gt46dTbW6QDCpseFpMYtzNa9VYKREd2Tqqf8WA==, tarball: file:../../design-system/out/kl-design-system-1.0.1.tgz} id: file:../../design-system/out/kl-design-system-1.0.1.tgz name: kl-design-system version: 1.0.1 diff --git a/src/apps/devdoc/web/components/page/index-new.tsx b/src/apps/devdoc/web/components/page/index-new.tsx index 4f6a83492..29b376121 100644 --- a/src/apps/devdoc/web/components/page/index-new.tsx +++ b/src/apps/devdoc/web/components/page/index-new.tsx @@ -1,9 +1,7 @@ -import { Badge } from 'kl-design-system/atoms/badge'; -import { GraphExtended } from '~/app/components/graph'; -import hero from '~/images/homeNew/hero'; -import HomeIllustrationMobileDark from '~/images/homeNew/illustration-mobile-dark.svg'; -import HomeIllustrationMobileWeb from '~/images/homeNew/illustration-mobile.webp'; import DynamicImage from '~/app/components/dynamic-image'; +import { GraphExtended } from '~/app/components/graph'; +import JoinProvidersDialog from '~/app/components/join-provider-dialog'; +import FaqSection from '~/app/components/website/home/faq'; import HowItWorksSection from '~/app/components/website/home/how-it-works'; import KeepExploring from '~/app/components/website/home/keep-exploring'; import KloudliteDevelopment from '~/app/components/website/home/kloudlite-development'; @@ -13,20 +11,14 @@ import PartnerSection from '~/app/components/website/home/partners'; import SecureAtCore from '~/app/components/website/home/secure-at-core'; import SuperCharge from '~/app/components/website/home/supercharge'; import Wrapper from '~/app/components/wrapper'; -import JoinProvidersDialog from '~/app/components/join-provider-dialog'; -import FaqSection from '~/app/components/website/home/faq'; -import Events from '../website/home/events'; +import hero from '~/images/homeNew/hero'; +import HomeIllustrationMobileDark from '~/images/homeNew/illustration-mobile-dark.svg'; +import HomeIllustrationMobileWeb from '~/images/homeNew/illustration-mobile.webp'; const Title = () => { return (
-
- - - Open-Source (Apache 2.0) - - -
+ {' '}

Building distributed applications diff --git a/src/apps/devdoc/web/utils/config.tsx b/src/apps/devdoc/web/utils/config.tsx index a9df52b2f..1658d6dc7 100644 --- a/src/apps/devdoc/web/utils/config.tsx +++ b/src/apps/devdoc/web/utils/config.tsx @@ -1,17 +1,17 @@ -import Link from 'next/link'; +import { DiscordLogo, YoutubeLogoFill } from '@jengaicons/react'; import { BrandLogo } from 'kl-design-system/branding/brand-logo'; +import Link from 'next/link'; import { GithubLogoFill, LinkedinLogoFill, TwitterNewLogoFill, } from '~/app/icons/icons'; -import OssIcon from '~/images/homeNew/oss.svg'; import OssIconDark from '~/images/homeNew/oss-dark.svg'; +import OssIcon from '~/images/homeNew/oss.svg'; +import ThemeSwitcher from '../components/theme-switcher'; import { cn } from './commons'; import { IConfig } from './use-config'; -import ThemeSwitcher from '../components/theme-switcher'; import { useTheme } from './useTheme'; -import { YoutubeLogoFill } from '@jengaicons/react'; export const siteDesc = 'Kloudlite is a remote-local development environment platform designed to streamline the workflow for developers working on distributed applications. By integrating both local and remote environments through Kubernetes, Kloudlite ensures a seamless, productive, and more connected development experience.'; @@ -25,6 +25,7 @@ export const communityUrl = export const changeLogUrl = 'https://github.com/kloudlite/kloudlite/releases'; const linkedinUrl = 'https://linkedin.com/company/kloudlite-io'; const youtubeUrl = 'https://youtube.com/@kloudliteofficial'; +const discordUrl = 'https://discord.gg/4Y7VHccg'; const xUrl = 'https://x.com/kloudlite'; export const supportEmail = 'launch@kloudlite.io'; const socialIconSize = 18; @@ -38,6 +39,9 @@ const SocialMenu = () => { + + + @@ -57,7 +61,7 @@ const BrandMenu = ({ className }: { className?: string }) => {
diff --git a/src/apps/devdoc/web/utils/const.tsx b/src/apps/devdoc/web/utils/const.tsx index a7be23f7c..903f03509 100644 --- a/src/apps/devdoc/web/utils/const.tsx +++ b/src/apps/devdoc/web/utils/const.tsx @@ -13,17 +13,17 @@ import { import Link from 'next/link'; import BlogCover from '~/public/blog/blog-cover.jpeg'; -import profileKarthik from '~/images/about-us/karthik-thirumalasetti.png'; +import profileAbdhesh from '~/images/about-us/abdhesh.jpeg'; import profileAditya from '~/images/about-us/aditya-sharma.png'; +import profileAnshuman from '~/images/about-us/ansuman.jpg'; +import profileBikash from '~/images/about-us/bikash.jpg'; +import profileHarsh from '~/images/about-us/harsh.png'; +import profileKarthik from '~/images/about-us/karthik-thirumalasetti.png'; +import profileMohit from '~/images/about-us/mohit.jpg'; import profilePavani from '~/images/about-us/pavani.png'; +import profilePiyush from '~/images/about-us/piyush.jpg'; import profileSrikanta from '~/images/about-us/s-srikanta.png'; -import profileHarsh from '~/images/about-us/harsh.png'; import profileShweta from '~/images/about-us/shewta.png'; -import profilePiyush from '~/images/about-us/piyush.jpg'; -import profileAbdhesh from '~/images/about-us/abdhesh.jpeg'; -import profileAnshuman from '~/images/about-us/ansuman.jpg'; -import profileMohit from '~/images/about-us/mohit.jpg'; -import profileBikash from '~/images/about-us/bikash.jpg'; import collaborate1440 from '~/images/homeNew/collaborate1440.svg'; import connect1440 from '~/images/homeNew/connect1440.svg'; @@ -57,9 +57,6 @@ import nocommitMobile from '~/images/homeNew/nocommitMobile.svg'; import explore from '~/images/explore.jpeg'; -import Collarative from '~/images/homeNew/exploring/collaborative.jpeg'; -import RemoteLocal from '~/images/homeNew/exploring/remote-local.jpeg'; -import Workflow from '~/images/homeNew/exploring/workflow.jpeg'; import { Agritech, AnscerRoboticsLogo, @@ -74,9 +71,15 @@ import { LockSimple, PlaxonicLogo, Robot, + RocketLaunch, SelectionForeground, Users, } from '~/app/icons/icons'; +import Collarative from '~/images/homeNew/exploring/collaborative.jpeg'; +import RemoteLocal from '~/images/homeNew/exploring/remote-local.jpeg'; +import Workflow from '~/images/homeNew/exploring/workflow.jpeg'; +import Button from '../components/button'; +import JoinProvidersDialog from '../components/join-provider-dialog'; import AnserSvg from '../icons/AnserRobotics'; import BoltzmanSvg from '../icons/Boltzman'; import CrewScaleSvg from '../icons/CrewScale'; @@ -84,8 +87,6 @@ import FibrSvg from '../icons/Fibr'; import PlaxonicSvg from '../icons/Plaxonic'; import RedPlutoSvg from '../icons/RedPluto'; import TalescaleSvg from '../icons/Talescale'; -import Button from '../components/button'; -import JoinProvidersDialog from '../components/join-provider-dialog'; import { authUrl } from './config'; export const linkedInPrefix = 'https://www.linkedin.com/in/'; @@ -237,18 +238,18 @@ const consts = { }, kloudliteDevelopmentData: [ { - label: 'Open source under Apache 2.0 Licences', + label: 'Open source', desc: 'No vendor lock-in, what so ever', icon: OpenSource, }, { - label: 'Instant Setup, Infinite Scale', - desc: 'Jump right into development with environments that scale as you grow', + label: 'Integrated workspaces', + desc: 'Develop in workspaces that are already connected to your application environments', icon: InfinityIcon, }, { label: 'No Build No Deploy, Just Code', - desc: 'Pre-built environments mean less setup and more coding', + desc: 'Intercept the service to swap remote application with your workspace', icon: Code, }, { @@ -258,13 +259,13 @@ const consts = { }, { - label: 'Seamless Collaboration Anywhere', - desc: 'Team up in real-time, in any environment, with zero hassle', + label: 'Seamless Collaboration', + desc: 'Switch into common environment to start collaboration', icon: Users, }, { label: 'Cut the Config Clutter', - desc: 'Manage configs and secrets centrally - keep your code clean and lean', + desc: 'No more configs in your code', icon: SelectionForeground, }, { @@ -273,7 +274,7 @@ const consts = { icon: LockSimple, }, { - label: 'Empower Innovation', + label: 'More time to code', desc: 'Free your focus for creativity with streamlined workflows', icon: Lightbulb, }, @@ -650,7 +651,7 @@ const consts = { environment. you can follow these instructions
+ ), + // desc: 'You can host kloudlite on your own infrastructure, giving you full control over the platform. Follow the setup instructions from this repo to get started.', }, ], }, @@ -840,7 +868,7 @@ const consts = { date: 'Sep 14, 2024', enabled: false, linkContent: 'Register today', - link: authUrl + '/signup', + link: `${authUrl}/signup`, }, contactUs: { cookies: { diff --git a/src/apps/webinar/src/app/orgs/webinar-ui.tsx b/src/apps/webinar/src/app/orgs/webinar-ui.tsx index cddbdf55a..a3261cc27 100644 --- a/src/apps/webinar/src/app/orgs/webinar-ui.tsx +++ b/src/apps/webinar/src/app/orgs/webinar-ui.tsx @@ -2,22 +2,34 @@ //@ts-ignore import { Button } from 'kl-design-system/atoms/button'; //@ts-ignore +import { TextInput } from 'kl-design-system/atoms/input'; +//@ts-ignore +import Popup from 'kl-design-system/molecule/popup'; +//@ts-ignore import { cn } from 'kl-design-system/utils'; -import useForm from '~/root/lib/client/hooks/use-form'; -import Yup from '~/root/lib/server/helpers/yup'; -import { handleError } from '~/root/lib/utils/common'; +// import Yup from '~/root/lib/server/helpers/yup'; +// import { handleError } from '~/root/lib/utils/common'; +import { useState } from 'react'; import Container from '../components/container'; import { JoinWebinar } from '../components/join-webinar'; + + export const WebinarUI = ({ userDetails, meetingStatus }: { userDetails: any, meetingStatus: string }) => { + + const [visible, setVisible] = useState(false); + return ( { + setVisible(true); + }} + // linkComponent={Link} + // to="/login" /> } > @@ -35,6 +47,7 @@ export const WebinarUI = ({ userDetails, meetingStatus }: { userDetails: any, me
+ {visible && }

) @@ -42,70 +55,157 @@ export const WebinarUI = ({ userDetails, meetingStatus }: { userDetails: any, me const HandleRegisterForm = ({ visible, setVisible }: { visible: boolean, setVisible: (v: boolean) => void }) => { - const { values, errors, handleChange, handleSubmit, resetValues, isLoading } = - useForm({ - initialValues: { - name: '', - companyName: '', - email: '', - }, + // const { values, errors, handleChange, handleSubmit, resetValues, isLoading } = + // useForm({ + // initialValues: { + // name: '', + // companyName: '', + // email: '', + // }, + + // // validationSchema: Yup.object({ + // // // name: Yup.string().required('id is required'), + // // }), + // validationSchema: null, + + // onSubmit: async (val) => { + // try { + // // if (!isUpdate) { + // // const { errors: e } = await api.createIotDeployment({ + // // projectName: project.name, + // // deployment: { + // // name: val.name, + // // displayName: val.displayName, + // // CIDR: val.cidr, + // // exposedIps: val.exposedIps, + // // exposedDomains: val.exposedDomains, + // // exposedServices: val.exposedServices.map((service) => { + // // return { + // // name: service.name, + // // ip: service.ip, + // // }; + // // }), + // // }, + // // }); + // // if (e) { + // // throw e[0]; + // // } + // // } else { + // // const { errors: e } = await api.updateIotDeployment({ + // // projectName: project.name, + // // deployment: { + // // name: val.name, + // // displayName: val.displayName, + // // CIDR: val.cidr, + // // exposedIps: val.exposedIps, + // // exposedDomains: val.exposedDomains, + // // exposedServices: val.exposedServices.map((service) => { + // // return { + // // name: service.name, + // // ip: service.ip, + // // }; + // // }), + // // }, + // // }); + // // if (e) { + // // throw e[0]; + // // } + // // } + // // reloadPage(); + // resetValues(); + // // toast.success( + // // `deployment ${isUpdate ? 'updated' : 'created'} successfully` + // // ); + // setVisible(false); + // } catch (err) { + // // handleError(err); + // } + // }, + // }); - validationSchema: Yup.object({ - name: Yup.string().required('id is required'), - }), - onSubmit: async (val) => { - try { - // if (!isUpdate) { - // const { errors: e } = await api.createIotDeployment({ - // projectName: project.name, - // deployment: { - // name: val.name, - // displayName: val.displayName, - // CIDR: val.cidr, - // exposedIps: val.exposedIps, - // exposedDomains: val.exposedDomains, - // exposedServices: val.exposedServices.map((service) => { - // return { - // name: service.name, - // ip: service.ip, - // }; - // }), - // }, - // }); - // if (e) { - // throw e[0]; - // } - // } else { - // const { errors: e } = await api.updateIotDeployment({ - // projectName: project.name, - // deployment: { - // name: val.name, - // displayName: val.displayName, - // CIDR: val.cidr, - // exposedIps: val.exposedIps, - // exposedDomains: val.exposedDomains, - // exposedServices: val.exposedServices.map((service) => { - // return { - // name: service.name, - // ip: service.ip, - // }; - // }), - // }, - // }); - // if (e) { - // throw e[0]; - // } - // } - // reloadPage(); - resetValues(); - // toast.success( - // `deployment ${isUpdate ? 'updated' : 'created'} successfully` - // ); - setVisible(false); - } catch (err) { - handleError(err); - } - }, - }); + return ( + { + // if (!values.isNameError) { + // handleSubmit(e); + // } else { + // e.preventDefault(); + // } + // }} + > + +
+ {/* */} + + + {/* []} + onChange={(val, v) => { + handleChange('exposedDomains')(dummyEvent(v)); + }} + error={!!errors.exposedDomains} + disableWhileLoading + /> */} + + {/* { + handleChange('exposedServices')(dummyEvent(items)); + }} + keyLabel="name" + valueLabel="ip" + error={!!errors.exposedServices} + message={errors.exposedServices} + /> */} +
+
+ + + + +
+ ) } \ No newline at end of file From dc4931533ce78aa9caa23785db50b16707c05d06 Mon Sep 17 00:00:00 2001 From: Piyush Kumar Date: Tue, 17 Sep 2024 16:40:37 +0530 Subject: [PATCH 03/17] update website changes --- src/apps/devdoc/package.json | 3 +- src/apps/devdoc/pnpm-lock.yaml | 751 +++++++++++++++++- .../devdoc/web/components/page/index-new.tsx | 22 +- src/apps/devdoc/web/utils/config.tsx | 14 +- src/apps/devdoc/web/utils/const.tsx | 96 ++- src/apps/webinar/src/app/orgs/webinar-ui.tsx | 238 ++++-- 6 files changed, 971 insertions(+), 153 deletions(-) diff --git a/src/apps/devdoc/package.json b/src/apps/devdoc/package.json index abac059e6..b7d635261 100644 --- a/src/apps/devdoc/package.json +++ b/src/apps/devdoc/package.json @@ -34,6 +34,7 @@ "crypto-js": "^4.2.0", "escape-string-regexp": "^5.0.0", "firebase": "^10.8.0", + "firebase-functions": "^6.0.1", "flexsearch": "^0.7.31", "framer-motion": "^10.16.16", "git-url-parse": "^13.1.1", @@ -48,6 +49,7 @@ "next-themes": "^0.2.1", "nextra": "^2.13.2", "nextra-theme-docs": "^2.13.2", + "postcss": "^8.4.47", "react": "^18.2.0", "react-dom": "^18.2.0", "react-fast-marquee": "^1.6.4", @@ -86,7 +88,6 @@ "eslint-plugin-react": "^7.33.2", "eslint-plugin-react-hooks": "^4.6.0", "next-sitemap": "^4.2.3", - "postcss": "12.1.5", "prettier": "^2.8.8", "tailwindcss": "^3.4.0", "typescript": "5.2.2" diff --git a/src/apps/devdoc/pnpm-lock.yaml b/src/apps/devdoc/pnpm-lock.yaml index cee06d6dd..1b17196d2 100644 --- a/src/apps/devdoc/pnpm-lock.yaml +++ b/src/apps/devdoc/pnpm-lock.yaml @@ -56,6 +56,9 @@ dependencies: firebase: specifier: ^10.8.0 version: 10.13.1 + firebase-functions: + specifier: ^6.0.1 + version: 6.0.1(firebase-admin@12.5.0) flexsearch: specifier: ^0.7.31 version: 0.7.43 @@ -98,6 +101,9 @@ dependencies: nextra-theme-docs: specifier: ^2.13.2 version: 2.13.4(next@14.2.8)(nextra@2.13.4)(react-dom@18.3.1)(react@18.3.1) + postcss: + specifier: ^8.4.47 + version: 8.4.47 react: specifier: ^18.2.0 version: 18.3.1 @@ -162,7 +168,7 @@ devDependencies: version: 6.21.0(eslint@8.57.0)(typescript@5.2.2) autoprefixer: specifier: ^10.4.16 - version: 10.4.20(postcss@8.4.45) + version: 10.4.20(postcss@8.4.47) eslint: specifier: ^8.56.0 version: 8.57.0 @@ -208,9 +214,6 @@ devDependencies: next-sitemap: specifier: ^4.2.3 version: 4.2.3(next@14.2.8) - postcss: - specifier: ^8.4.32 - version: 8.4.45 prettier: specifier: ^2.8.8 version: 2.8.8 @@ -493,6 +496,10 @@ packages: engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true + /@fastify/busboy@3.0.0: + resolution: {integrity: sha512-83rnH2nCvclWaPQQKvkJ2pdOjG4TZyEVuFDnlOF6KP08lDaaceVyw/W63mDuafQT+MKHCvXIPpE5uYWeM0rT4w==} + dev: false + /@firebase/analytics-compat@0.2.13(@firebase/app-compat@0.2.40)(@firebase/app@0.10.10): resolution: {integrity: sha512-aZ4wGfNDMsCxhKzDbK2g1aV0JKsdQ9FbeIsjpNJPzhahV0XYj+z36Y4RNLPpG/6hHU4gxnezxs+yn3HhHkNL8w==} peerDependencies: @@ -980,6 +987,22 @@ packages: resolution: {integrity: sha512-X8R8Oj771YRl/w+c1HqAC1szL8zWQRwFvgDwT129k9ACdBoud/+/rX9V0qiMl6LWUdP9voC2nDVZYPMQQsb6eA==} dev: false + /@google-cloud/firestore@7.10.0: + resolution: {integrity: sha512-VFNhdHvfnmqcHHs6YhmSNHHxQqaaD64GwiL0c+e1qz85S8SWZPC2XFRf8p9yHRTF40Kow424s1KBU9f0fdQa+Q==} + engines: {node: '>=14.0.0'} + requiresBuild: true + dependencies: + '@opentelemetry/api': 1.9.0 + fast-deep-equal: 3.1.3 + functional-red-black-tree: 1.0.1 + google-gax: 4.4.1 + protobufjs: 7.4.0 + transitivePeerDependencies: + - encoding + - supports-color + dev: false + optional: true + /@google-cloud/functions-framework@3.4.2: resolution: {integrity: sha512-yJcxfVgjLoKFO3p6Wy6Fc+Gi6l3PFSwJg4m0mjebx/UHdLeXLYYxgKMP8RCODaApXEWXbSITIjXO0m5kSv2Ilw==} engines: {node: '>=10.0.0'} @@ -997,6 +1020,66 @@ packages: - supports-color dev: false + /@google-cloud/paginator@5.0.2: + resolution: {integrity: sha512-DJS3s0OVH4zFDB1PzjxAsHqJT6sKVbRwwML0ZBP9PbU7Yebtu/7SWMRzvO2J3nUi9pRNITCfu4LJeooM2w4pjg==} + engines: {node: '>=14.0.0'} + requiresBuild: true + dependencies: + arrify: 2.0.1 + extend: 3.0.2 + dev: false + optional: true + + /@google-cloud/projectify@4.0.0: + resolution: {integrity: sha512-MmaX6HeSvyPbWGwFq7mXdo0uQZLGBYCwziiLIGq5JVX+/bdI3SAq6bP98trV5eTWfLuvsMcIC1YJOF2vfteLFA==} + engines: {node: '>=14.0.0'} + requiresBuild: true + dev: false + optional: true + + /@google-cloud/promisify@4.0.0: + resolution: {integrity: sha512-Orxzlfb9c67A15cq2JQEyVc7wEsmFBmHjZWZYQMUyJ1qivXyMwdyNOs9odi79hze+2zqdTtu1E19IM/FtqZ10g==} + engines: {node: '>=14'} + requiresBuild: true + dev: false + optional: true + + /@google-cloud/storage@7.12.1: + resolution: {integrity: sha512-Z3ZzOnF3YKLuvpkvF+TjQ6lztxcAyTILp+FjKonmVpEwPa9vFvxpZjubLR4sB6bf19i/8HL2AXRjA0YFgHFRmQ==} + engines: {node: '>=14'} + requiresBuild: true + dependencies: + '@google-cloud/paginator': 5.0.2 + '@google-cloud/projectify': 4.0.0 + '@google-cloud/promisify': 4.0.0 + abort-controller: 3.0.0 + async-retry: 1.3.3 + duplexify: 4.1.3 + fast-xml-parser: 4.5.0 + gaxios: 6.7.1 + google-auth-library: 9.14.1 + html-entities: 2.5.2 + mime: 3.0.0 + p-limit: 3.1.0 + retry-request: 7.0.2 + teeny-request: 9.0.0 + uuid: 8.3.2 + transitivePeerDependencies: + - encoding + - supports-color + dev: false + optional: true + + /@grpc/grpc-js@1.11.2: + resolution: {integrity: sha512-DWp92gDD7/Qkj7r8kus6/HCINeo3yPZWZ3paKgDgsbKbSpoxKg1yvN8xe2Q8uE3zOsPe3bX8FQX2+XValq2yTw==} + engines: {node: '>=12.10.0'} + requiresBuild: true + dependencies: + '@grpc/proto-loader': 0.7.13 + '@js-sdsl/ordered-map': 4.4.2 + dev: false + optional: true + /@grpc/grpc-js@1.9.15: resolution: {integrity: sha512-nqE7Hc0AzI+euzUwDAy0aY5hCp10r734gMGRdU+qOPX0XSceI2ULrcXB5U2xSc5VkWwalCj4M7GzCAygZl2KoQ==} engines: {node: ^8.13.0 || >=10.10.0} @@ -1281,6 +1364,12 @@ packages: '@jridgewell/sourcemap-codec': 1.5.0 dev: true + /@js-sdsl/ordered-map@4.4.2: + resolution: {integrity: sha512-iUKgm52T8HOE/makSxjqoWhe95ZJA1/G1sYsGev2JDKUSS14KAgg1LHb+Ba+IPow0xflbnSkOsZcO08C7w1gYw==} + requiresBuild: true + dev: false + optional: true + /@lexical/clipboard@0.14.5: resolution: {integrity: sha512-22xbagoQ8jiwImRtMcRl3+pojsiqF0cSfMXbjsHc5fPAq3ULf8OvAMkiSWEOxGQA6I6VIHX30+HtwZ7TgdPJ7A==} dependencies: @@ -2005,6 +2094,13 @@ packages: resolution: {integrity: sha512-CecwLWx3rhxVQF6V4bAgPS5t+So2sTbPgAzafKkVizyi7tlwpcFpdFqq+wqF2OwNBmqFuu6tOyouTuxgpMfzmA==} dev: false + /@opentelemetry/api@1.9.0: + resolution: {integrity: sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg==} + engines: {node: '>=8.0.0'} + requiresBuild: true + dev: false + optional: true + /@pkgjs/parseargs@0.11.0: resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} engines: {node: '>=14'} @@ -2877,6 +2973,13 @@ packages: unist-util-visit: 5.0.0 dev: false + /@tootallnate/once@2.0.0: + resolution: {integrity: sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==} + engines: {node: '>= 10'} + requiresBuild: true + dev: false + optional: true + /@types/acorn@4.0.6: resolution: {integrity: sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==} dependencies: @@ -2889,6 +2992,12 @@ packages: '@types/node': 20.8.4 dev: false + /@types/caseless@0.12.5: + resolution: {integrity: sha512-hWtVTC2q7hc7xZ/RLbxapMvDMgUnDvKvMOpKal4DrMyfGBUfB1oKaZlIRr6mJL+If3bAP6sV/QneGzF6tJjZDg==} + requiresBuild: true + dev: false + optional: true + /@types/concat-stream@2.0.3: resolution: {integrity: sha512-3qe4oQAPNwVNwK4C9c8u+VJqv9kez+2MR4qJpoPFfXtgxxif1QbFusvXzK0/Wra2VX07smostI2VMmJNSpZjuQ==} dependencies: @@ -2905,6 +3014,12 @@ packages: resolution: {integrity: sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==} dev: false + /@types/cors@2.8.17: + resolution: {integrity: sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==} + dependencies: + '@types/node': 20.8.4 + dev: false + /@types/d3-scale-chromatic@3.0.3: resolution: {integrity: sha512-laXM4+1o5ImZv3RpFAsTRn3TEkzqkytiOY0Dz0sq5cnd1dtNlk6sHLon4OvqaiJb28T0S/TdsBI3Sjsy+keJrw==} dev: false @@ -2950,6 +3065,14 @@ packages: '@types/serve-static': 1.15.7 dev: false + /@types/express@4.17.3: + resolution: {integrity: sha512-I8cGRJj3pyOLs/HndoP+25vOqhqWkAZsWMEmq1qXy/b/M3ppufecUwaK2/TVDVxcV61/iSdhykUjQQ2DLSrTdg==} + dependencies: + '@types/body-parser': 1.19.5 + '@types/express-serve-static-core': 4.19.5 + '@types/serve-static': 1.15.7 + dev: false + /@types/flexsearch@0.7.6: resolution: {integrity: sha512-H5IXcRn96/gaDmo+rDl2aJuIJsob8dgOXDqf8K0t8rWZd1AFNaaspmRsElESiU+EWE33qfbFPgI0OC/B1g9FCA==} dev: true @@ -2989,6 +3112,12 @@ packages: resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} dev: true + /@types/jsonwebtoken@9.0.7: + resolution: {integrity: sha512-ugo316mmTYBl2g81zDFnZ7cfxlut3o+/EQdaP7J8QN2kY6lJ22hmQYCK5EHcJHbrW+dkCGSCPgbG8JtYj6qSrg==} + dependencies: + '@types/node': 20.8.4 + dev: false + /@types/katex@0.16.7: resolution: {integrity: sha512-HMwFiRujE5PjrgwHQ25+bsLJgowjGjm5Z8FVSf0N6PwgJrwxH0QxzHYDcKsTfV3wva0vzrpqMTJS2jXPr5BMEQ==} dev: false @@ -2997,6 +3126,12 @@ packages: resolution: {integrity: sha512-8wTvZawATi/lsmNu10/j2hk1KEP0IvjubqPE3cu1Xz7xfXXt5oCq3SNUz4fMIP4XGF9Ky+Ue2tBA3hcS7LSBlA==} dev: true + /@types/long@4.0.2: + resolution: {integrity: sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA==} + requiresBuild: true + dev: false + optional: true + /@types/mdast@3.0.15: resolution: {integrity: sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==} dependencies: @@ -3023,6 +3158,12 @@ packages: dependencies: undici-types: 5.25.3 + /@types/node@22.5.5: + resolution: {integrity: sha512-Xjs4y5UPO/CLdzpgR6GirZJx36yScjh73+2NlLlkFRSoQN8B0DpfXPdZGnvVmLRLOsqDpOfTNv7D9trgGhmOIA==} + dependencies: + undici-types: 6.19.8 + dev: false + /@types/normalize-package-data@2.4.4: resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==} dev: false @@ -3050,6 +3191,17 @@ packages: '@types/prop-types': 15.7.12 csstype: 3.1.3 + /@types/request@2.48.12: + resolution: {integrity: sha512-G3sY+NpsA9jnwm0ixhAFQSJ3Q9JkpLZpJbI3GMv0mIAT0y3mRabYeINzal5WOChIiaTEGQYlHOKgkaM9EisWHw==} + requiresBuild: true + dependencies: + '@types/caseless': 0.12.5 + '@types/node': 20.8.4 + '@types/tough-cookie': 4.0.5 + form-data: 2.5.1 + dev: false + optional: true + /@types/semver@7.5.8: resolution: {integrity: sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==} dev: true @@ -3073,6 +3225,12 @@ packages: resolution: {integrity: sha512-Hy6UMpxhE3j1tLpl27exp1XqHD7n8chAiNPzWfz16LPZoMMoSc4dzLl6w9qijkEb/r5O1ozdu1CWGA2L83ZeZg==} dev: true + /@types/tough-cookie@4.0.5: + resolution: {integrity: sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA==} + requiresBuild: true + dev: false + optional: true + /@types/unist@2.0.11: resolution: {integrity: sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==} @@ -3219,6 +3377,15 @@ packages: engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} dev: true + /abort-controller@3.0.0: + resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==} + engines: {node: '>=6.5'} + requiresBuild: true + dependencies: + event-target-shim: 5.0.1 + dev: false + optional: true + /accepts@1.3.8: resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==} engines: {node: '>= 0.6'} @@ -3239,6 +3406,28 @@ packages: engines: {node: '>=0.4.0'} hasBin: true + /agent-base@6.0.2: + resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} + engines: {node: '>= 6.0.0'} + requiresBuild: true + dependencies: + debug: 4.3.7 + transitivePeerDependencies: + - supports-color + dev: false + optional: true + + /agent-base@7.1.1: + resolution: {integrity: sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==} + engines: {node: '>= 14'} + requiresBuild: true + dependencies: + debug: 4.3.7 + transitivePeerDependencies: + - supports-color + dev: false + optional: true + /ajv-formats@2.1.1(ajv@8.17.1): resolution: {integrity: sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==} peerDependencies: @@ -3446,6 +3635,13 @@ packages: is-shared-array-buffer: 1.0.3 dev: true + /arrify@2.0.1: + resolution: {integrity: sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==} + engines: {node: '>=8'} + requiresBuild: true + dev: false + optional: true + /ast-types-flow@0.0.8: resolution: {integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==} dev: true @@ -3455,11 +3651,19 @@ packages: hasBin: true dev: false + /async-retry@1.3.3: + resolution: {integrity: sha512-wfr/jstw9xNi/0teMHrRW7dsz3Lt5ARhYNZ2ewpadnhaIp5mbALhOAP+EAdsC7t4Z6wqsDVv9+W6gm1Dk9mEyw==} + requiresBuild: true + dependencies: + retry: 0.13.1 + dev: false + optional: true + /asynckit@0.4.0: resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} dev: false - /autoprefixer@10.4.20(postcss@8.4.45): + /autoprefixer@10.4.20(postcss@8.4.47): resolution: {integrity: sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==} engines: {node: ^10 || ^12 || >=14} hasBin: true @@ -3471,7 +3675,7 @@ packages: fraction.js: 4.3.7 normalize-range: 0.1.2 picocolors: 1.1.0 - postcss: 8.4.45 + postcss: 8.4.47 postcss-value-parser: 4.2.0 dev: true @@ -3572,6 +3776,10 @@ packages: update-browserslist-db: 1.1.0(browserslist@4.23.3) dev: true + /buffer-equal-constant-time@1.0.1: + resolution: {integrity: sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==} + dev: false + /buffer-from@1.1.2: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} dev: true @@ -3878,6 +4086,14 @@ packages: cookie: 0.6.0 dev: false + /cors@2.8.5: + resolution: {integrity: sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==} + engines: {node: '>= 0.10'} + dependencies: + object-assign: 4.1.1 + vary: 1.1.2 + dev: false + /cose-base@1.0.3: resolution: {integrity: sha512-s9whTXInMSgAp/NVXVNuVxVKzGH2qck3aQlVHxDCdAEPgtMKwc4Wq6/QKhgdEdgbLSi9rBTAcPoRa6JpiG4ksg==} dependencies: @@ -4430,10 +4646,27 @@ packages: tslib: 2.7.0 dev: false + /duplexify@4.1.3: + resolution: {integrity: sha512-M3BmBhwJRZsSx38lZyhE53Csddgzl5R7xGJNk7CVddZD6CcmwMCH8J+7AprIrQKH7TonKxaCjcv27Qmf+sQ+oA==} + requiresBuild: true + dependencies: + end-of-stream: 1.4.4 + inherits: 2.0.4 + readable-stream: 3.6.2 + stream-shift: 1.0.3 + dev: false + optional: true + /eastasianwidth@0.2.0: resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} dev: true + /ecdsa-sig-formatter@1.0.11: + resolution: {integrity: sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==} + dependencies: + safe-buffer: 5.2.1 + dev: false + /ee-first@1.1.1: resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} dev: false @@ -4462,6 +4695,14 @@ packages: engines: {node: '>= 0.8'} dev: false + /end-of-stream@1.4.4: + resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} + requiresBuild: true + dependencies: + once: 1.4.0 + dev: false + optional: true + /enhanced-resolve@5.17.1: resolution: {integrity: sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==} engines: {node: '>=10.13.0'} @@ -5203,6 +5444,13 @@ packages: es5-ext: 0.10.64 dev: false + /event-target-shim@5.0.1: + resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==} + engines: {node: '>=6'} + requiresBuild: true + dev: false + optional: true + /execa@0.8.0: resolution: {integrity: sha512-zDWS+Rb1E8BlqqhALSt9kUhss8Qq4nN3iof3gsOdyINksElaPyNBtKUMTR62qhvgVWR0CqCX7sdnKe4MnUbFEA==} engines: {node: '>=4'} @@ -5271,6 +5519,11 @@ packages: /extend@3.0.2: resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} + /farmhash-modern@1.1.0: + resolution: {integrity: sha512-6ypT4XfgqJk/F3Yuv4SX26I3doUjt0GTG4a+JgWxXQpxXzTBq8fPUeGHfcYMMDPHJHm3yPOSjaeBwBGAHWXCdA==} + engines: {node: '>=18.0.0'} + dev: false + /fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} @@ -5301,6 +5554,15 @@ packages: resolution: {integrity: sha512-MWipKbbYiYI0UC7cl8m/i/IWTqfC8YXsqjzybjddLsFjStroQzsHXkc73JutMvBiXmOvapk+axIl79ig5t55Bw==} dev: false + /fast-xml-parser@4.5.0: + resolution: {integrity: sha512-/PlTQCI96+fZMAOLMZK4CWG1ItCbfZ/0jx7UIJFChPNrx7tcEgerUgWbeieCM9MfHInUDyK8DWYZ+YrywDJuTg==} + hasBin: true + requiresBuild: true + dependencies: + strnum: 1.0.5 + dev: false + optional: true + /fastq@1.17.1: resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==} dependencies: @@ -5369,6 +5631,44 @@ packages: path-exists: 4.0.0 dev: true + /firebase-admin@12.5.0: + resolution: {integrity: sha512-ad8vnlPcuuZN9scSgY8UnAxPI4mzP2/Q+dsrVLTf+j3h7bIq0FOelDCDGz4StgKJdk244v2kpOxqJjPG3grBHg==} + engines: {node: '>=14'} + dependencies: + '@fastify/busboy': 3.0.0 + '@firebase/database-compat': 1.0.7 + '@firebase/database-types': 1.0.4 + '@types/node': 22.5.5 + farmhash-modern: 1.1.0 + jsonwebtoken: 9.0.2 + jwks-rsa: 3.1.0 + node-forge: 1.3.1 + uuid: 10.0.0 + optionalDependencies: + '@google-cloud/firestore': 7.10.0 + '@google-cloud/storage': 7.12.1 + transitivePeerDependencies: + - encoding + - supports-color + dev: false + + /firebase-functions@6.0.1(firebase-admin@12.5.0): + resolution: {integrity: sha512-0rIpTU6dnLRvP3IK+okn1FDjoqjzShm0/S+i4OMY7JFu/HJoyJ1JNkrT4KjECy1/mCHK49KsmH8iYE0rzrglHg==} + engines: {node: '>=14.10.0'} + hasBin: true + peerDependencies: + firebase-admin: ^11.10.0 || ^12.0.0 + dependencies: + '@types/cors': 2.8.17 + '@types/express': 4.17.3 + cors: 2.8.5 + express: 4.19.2 + firebase-admin: 12.5.0 + protobufjs: 7.4.0 + transitivePeerDependencies: + - supports-color + dev: false + /firebase@10.13.1: resolution: {integrity: sha512-L5BSkmvB2dzCUMpr8i/O8WMJC3Nqj5Ld8Wj/qnak+tz2Ga+JH6/FO93xArg9IGhktCrPXVODoWp6t9ybdgmXCA==} dependencies: @@ -5447,6 +5747,17 @@ packages: signal-exit: 4.1.0 dev: true + /form-data@2.5.1: + resolution: {integrity: sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==} + engines: {node: '>= 0.12'} + requiresBuild: true + dependencies: + asynckit: 0.4.0 + combined-stream: 1.0.8 + mime-types: 2.1.35 + dev: false + optional: true + /form-data@4.0.0: resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} engines: {node: '>= 6'} @@ -5518,10 +5829,45 @@ packages: functions-have-names: 1.2.3 dev: true + /functional-red-black-tree@1.0.1: + resolution: {integrity: sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==} + requiresBuild: true + dev: false + optional: true + /functions-have-names@1.2.3: resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} dev: true + /gaxios@6.7.1: + resolution: {integrity: sha512-LDODD4TMYx7XXdpwxAVRAIAuB0bzv0s+ywFonY46k126qzQHT9ygyoa9tncmOiQmmDrik65UYsEkv3lbfqQ3yQ==} + engines: {node: '>=14'} + requiresBuild: true + dependencies: + extend: 3.0.2 + https-proxy-agent: 7.0.5 + is-stream: 2.0.1 + node-fetch: 2.7.0 + uuid: 9.0.1 + transitivePeerDependencies: + - encoding + - supports-color + dev: false + optional: true + + /gcp-metadata@6.1.0: + resolution: {integrity: sha512-Jh/AIwwgaxan+7ZUUmRLCjtchyDiqh4KjBJ5tW3plBZb5iL/BPcso8A5DlzeD9qlw0duCamnNdpFjxwaT0KyKg==} + engines: {node: '>=14'} + requiresBuild: true + dependencies: + gaxios: 6.7.1 + json-bigint: 1.0.0 + transitivePeerDependencies: + - encoding + - supports-color + dev: false + optional: true + /get-caller-file@2.0.5: resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} engines: {node: 6.* || 8.* || >= 10.*} @@ -5656,6 +6002,46 @@ packages: slash: 3.0.0 dev: true + /google-auth-library@9.14.1: + resolution: {integrity: sha512-Rj+PMjoNFGFTmtItH7gHfbHpGVSb3vmnGK3nwNBqxQF9NoBpttSZI/rc0WiM63ma2uGDQtYEkMHkK9U6937NiA==} + engines: {node: '>=14'} + requiresBuild: true + dependencies: + base64-js: 1.5.1 + ecdsa-sig-formatter: 1.0.11 + gaxios: 6.7.1 + gcp-metadata: 6.1.0 + gtoken: 7.1.0 + jws: 4.0.0 + transitivePeerDependencies: + - encoding + - supports-color + dev: false + optional: true + + /google-gax@4.4.1: + resolution: {integrity: sha512-Phyp9fMfA00J3sZbJxbbB4jC55b7DBjE3F6poyL3wKMEBVKA79q6BGuHcTiM28yOzVql0NDbRL8MLLh8Iwk9Dg==} + engines: {node: '>=14'} + requiresBuild: true + dependencies: + '@grpc/grpc-js': 1.11.2 + '@grpc/proto-loader': 0.7.13 + '@types/long': 4.0.2 + abort-controller: 3.0.0 + duplexify: 4.1.3 + google-auth-library: 9.14.1 + node-fetch: 2.7.0 + object-hash: 3.0.0 + proto3-json-serializer: 2.0.2 + protobufjs: 7.4.0 + retry-request: 7.0.2 + uuid: 9.0.1 + transitivePeerDependencies: + - encoding + - supports-color + dev: false + optional: true + /gopd@1.0.1: resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} dependencies: @@ -5678,6 +6064,19 @@ packages: strip-bom-string: 1.0.0 dev: false + /gtoken@7.1.0: + resolution: {integrity: sha512-pCcEwRi+TKpMlxAQObHDQ56KawURgyAf6jtIY046fJ5tIv3zDe/LEIubckAO8fj6JnAxLdmWkUfNyulQ2iKdEw==} + engines: {node: '>=14.0.0'} + requiresBuild: true + dependencies: + gaxios: 6.7.1 + jws: 4.0.0 + transitivePeerDependencies: + - encoding + - supports-color + dev: false + optional: true + /has-bigints@1.0.2: resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==} dev: true @@ -5949,6 +6348,12 @@ packages: lru-cache: 10.4.3 dev: true + /html-entities@2.5.2: + resolution: {integrity: sha512-K//PSRMQk4FZ78Kyau+mZurHn3FH0Vwr+H36eE0rPbeYkRRi9YxceYPhuN60UwWorxyKHhqoAJl2OFKa4BVtaA==} + requiresBuild: true + dev: false + optional: true + /html-void-elements@3.0.0: resolution: {integrity: sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==} dev: false @@ -5968,6 +6373,43 @@ packages: resolution: {integrity: sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==} dev: false + /http-proxy-agent@5.0.0: + resolution: {integrity: sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==} + engines: {node: '>= 6'} + requiresBuild: true + dependencies: + '@tootallnate/once': 2.0.0 + agent-base: 6.0.2 + debug: 4.3.7 + transitivePeerDependencies: + - supports-color + dev: false + optional: true + + /https-proxy-agent@5.0.1: + resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==} + engines: {node: '>= 6'} + requiresBuild: true + dependencies: + agent-base: 6.0.2 + debug: 4.3.7 + transitivePeerDependencies: + - supports-color + dev: false + optional: true + + /https-proxy-agent@7.0.5: + resolution: {integrity: sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==} + engines: {node: '>= 14'} + requiresBuild: true + dependencies: + agent-base: 7.1.1 + debug: 4.3.7 + transitivePeerDependencies: + - supports-color + dev: false + optional: true + /iconv-lite@0.4.24: resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} engines: {node: '>=0.10.0'} @@ -6307,6 +6749,13 @@ packages: engines: {node: '>=0.10.0'} dev: false + /is-stream@2.0.1: + resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} + engines: {node: '>=8'} + requiresBuild: true + dev: false + optional: true + /is-string@1.0.7: resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} engines: {node: '>= 0.4'} @@ -6394,6 +6843,10 @@ packages: hasBin: true dev: true + /jose@4.15.9: + resolution: {integrity: sha512-1vUQX+IdDMVPj4k8kOxgUqlcK518yluMuGZwqlr44FS1ppZB/5GWh4rZG89erpOBOJjU/OBsnCVFfapsRz6nEA==} + dev: false + /jquery@3.7.1: resolution: {integrity: sha512-m4avr8yL8kmFN8psrbFFFmB/If14iN5o9nw/NgnnM+kybDJpRsAynV2BsfpTYrTRysYUdADVD7CkUUizgkpLfg==} dev: false @@ -6463,6 +6916,22 @@ packages: resolution: {integrity: sha512-HUgH65KyejrUFPvHFPbqOY0rsFip3Bo5wb4ngvdi1EpCYWUQDC5V+Y7mZws+DLkr4M//zQJoanu1SP+87Dv1oQ==} dev: false + /jsonwebtoken@9.0.2: + resolution: {integrity: sha512-PRp66vJ865SSqOlgqS8hujT5U4AOgMfhrwYIuIhfKaoSCZcirrmASQr8CX7cUg+RMih+hgznrjp99o+W4pJLHQ==} + engines: {node: '>=12', npm: '>=6'} + dependencies: + jws: 3.2.2 + lodash.includes: 4.3.0 + lodash.isboolean: 3.0.3 + lodash.isinteger: 4.0.4 + lodash.isnumber: 3.0.3 + lodash.isplainobject: 4.0.6 + lodash.isstring: 4.0.1 + lodash.once: 4.1.1 + ms: 2.1.3 + semver: 7.6.3 + dev: false + /jsx-ast-utils@3.3.5: resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==} engines: {node: '>=4.0'} @@ -6473,6 +6942,54 @@ packages: object.values: 1.2.0 dev: true + /jwa@1.4.1: + resolution: {integrity: sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==} + dependencies: + buffer-equal-constant-time: 1.0.1 + ecdsa-sig-formatter: 1.0.11 + safe-buffer: 5.2.1 + dev: false + + /jwa@2.0.0: + resolution: {integrity: sha512-jrZ2Qx916EA+fq9cEAeCROWPTfCwi1IVHqT2tapuqLEVVDKFDENFw1oL+MwrTvH6msKxsd1YTDVw6uKEcsrLEA==} + requiresBuild: true + dependencies: + buffer-equal-constant-time: 1.0.1 + ecdsa-sig-formatter: 1.0.11 + safe-buffer: 5.2.1 + dev: false + optional: true + + /jwks-rsa@3.1.0: + resolution: {integrity: sha512-v7nqlfezb9YfHHzYII3ef2a2j1XnGeSE/bK3WfumaYCqONAIstJbrEGapz4kadScZzEt7zYCN7bucj8C0Mv/Rg==} + engines: {node: '>=14'} + dependencies: + '@types/express': 4.17.21 + '@types/jsonwebtoken': 9.0.7 + debug: 4.3.7 + jose: 4.15.9 + limiter: 1.1.5 + lru-memoizer: 2.3.0 + transitivePeerDependencies: + - supports-color + dev: false + + /jws@3.2.2: + resolution: {integrity: sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==} + dependencies: + jwa: 1.4.1 + safe-buffer: 5.2.1 + dev: false + + /jws@4.0.0: + resolution: {integrity: sha512-KDncfTmOZoOMTFG4mBlG0qUIOlc03fmzH+ru6RgYVZhPkyiy/92Owlt/8UEN+a4TXR1FQetfIpJE8ApdvdVxTg==} + requiresBuild: true + dependencies: + jwa: 2.0.0 + safe-buffer: 5.2.1 + dev: false + optional: true + /katex@0.16.11: resolution: {integrity: sha512-RQrI8rlHY92OLf3rho/Ts8i/XvjgguEjOkO1BEXcU3N8BqPpSzBNwV/G0Ukr+P/l3ivvJUE/Fa/CwbS6HesGNQ==} hasBin: true @@ -6544,6 +7061,10 @@ packages: engines: {node: '>=14'} dev: true + /limiter@1.1.5: + resolution: {integrity: sha512-FWWMIEOxz3GwUI4Ts/IvgVy6LPvoMPgjMdQ185nN6psJyBJ4yOpzqm695/h5umdLJg2vW3GR5iG11MAkR2AzJA==} + dev: false + /lines-and-columns@1.2.4: resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} @@ -6583,6 +7104,10 @@ packages: resolution: {integrity: sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==} dev: false + /lodash.clonedeep@4.5.0: + resolution: {integrity: sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ==} + dev: false + /lodash.debounce@4.0.8: resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==} dev: false @@ -6591,10 +7116,38 @@ packages: resolution: {integrity: sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==} dev: false + /lodash.includes@4.3.0: + resolution: {integrity: sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w==} + dev: false + + /lodash.isboolean@3.0.3: + resolution: {integrity: sha512-Bz5mupy2SVbPHURB98VAcw+aHh4vRV5IPNhILUCsOzRmsTmSQ17jIuqopAentWoehktxGd9e/hbIXq980/1QJg==} + dev: false + + /lodash.isinteger@4.0.4: + resolution: {integrity: sha512-DBwtEWN2caHQ9/imiNeEA5ys1JoRtRfY3d7V9wkqtbycnAmTvRRmbHKDV4a0EYc678/dia0jrte4tjYwVBaZUA==} + dev: false + + /lodash.isnumber@3.0.3: + resolution: {integrity: sha512-QYqzpfwO3/CWf3XP+Z+tkQsfaLL/EnUlXWVkIk5FUPc4sBdTehEqZONuyRt2P67PXAk+NXmTBcc97zw9t1FQrw==} + dev: false + + /lodash.isplainobject@4.0.6: + resolution: {integrity: sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==} + dev: false + + /lodash.isstring@4.0.1: + resolution: {integrity: sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==} + dev: false + /lodash.merge@4.6.2: resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} dev: true + /lodash.once@4.1.1: + resolution: {integrity: sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==} + dev: false + /lodash@4.17.21: resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} dev: false @@ -6623,6 +7176,20 @@ packages: yallist: 2.1.2 dev: false + /lru-cache@6.0.0: + resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} + engines: {node: '>=10'} + dependencies: + yallist: 4.0.0 + dev: false + + /lru-memoizer@2.3.0: + resolution: {integrity: sha512-GXn7gyHAMhO13WSKrIiNfztwxodVsP8IoZ3XfrJV4yH2x0/OeTO/FIaAHTY5YekdGgW94njfuKmyyt1E0mR6Ug==} + dependencies: + lodash.clonedeep: 4.5.0 + lru-cache: 6.0.0 + dev: false + /lz-string@1.5.0: resolution: {integrity: sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==} hasBin: true @@ -7727,6 +8294,14 @@ packages: hasBin: true dev: false + /mime@3.0.0: + resolution: {integrity: sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==} + engines: {node: '>=10.0.0'} + hasBin: true + requiresBuild: true + dev: false + optional: true + /minimatch@3.1.2: resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} dependencies: @@ -7974,6 +8549,25 @@ packages: - supports-color dev: false + /node-fetch@2.7.0: + resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} + engines: {node: 4.x || >=6.0.0} + requiresBuild: true + peerDependencies: + encoding: ^0.1.0 + peerDependenciesMeta: + encoding: + optional: true + dependencies: + whatwg-url: 5.0.0 + dev: false + optional: true + + /node-forge@1.3.1: + resolution: {integrity: sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==} + engines: {node: '>= 6.13.0'} + dev: false + /node-releases@2.0.18: resolution: {integrity: sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==} dev: true @@ -8069,7 +8663,6 @@ packages: /object-hash@3.0.0: resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} engines: {node: '>= 6'} - dev: true /object-inspect@1.13.2: resolution: {integrity: sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==} @@ -8146,7 +8739,6 @@ packages: resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} dependencies: wrappy: 1.0.2 - dev: true /optionator@0.9.4: resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} @@ -8352,29 +8944,29 @@ packages: resolution: {integrity: sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==} engines: {node: '>= 0.4'} - /postcss-import@15.1.0(postcss@8.4.45): + /postcss-import@15.1.0(postcss@8.4.47): resolution: {integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==} engines: {node: '>=14.0.0'} peerDependencies: postcss: ^8.0.0 dependencies: - postcss: 8.4.45 + postcss: 8.4.47 postcss-value-parser: 4.2.0 read-cache: 1.0.0 resolve: 1.22.8 dev: true - /postcss-js@4.0.1(postcss@8.4.45): + /postcss-js@4.0.1(postcss@8.4.47): resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} engines: {node: ^12 || ^14 || >= 16} peerDependencies: postcss: ^8.4.21 dependencies: camelcase-css: 2.0.1 - postcss: 8.4.45 + postcss: 8.4.47 dev: true - /postcss-load-config@4.0.2(postcss@8.4.45): + /postcss-load-config@4.0.2(postcss@8.4.47): resolution: {integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==} engines: {node: '>= 14'} peerDependencies: @@ -8387,17 +8979,17 @@ packages: optional: true dependencies: lilconfig: 3.1.2 - postcss: 8.4.45 + postcss: 8.4.47 yaml: 2.5.1 dev: true - /postcss-nested@6.2.0(postcss@8.4.45): + /postcss-nested@6.2.0(postcss@8.4.47): resolution: {integrity: sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==} engines: {node: '>=12.0'} peerDependencies: postcss: ^8.2.14 dependencies: - postcss: 8.4.45 + postcss: 8.4.47 postcss-selector-parser: 6.1.2 dev: true @@ -8421,14 +9013,13 @@ packages: picocolors: 1.1.0 source-map-js: 1.2.1 - /postcss@8.4.45: - resolution: {integrity: sha512-7KTLTdzdZZYscUc65XmjFiB73vBhBfbPztCYdUNvlaso9PrzjzcmjqBPR0lNGkcVlcO4BjiO5rK/qNz+XAen1Q==} + /postcss@8.4.47: + resolution: {integrity: sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==} engines: {node: ^10 || ^12 || >=14} dependencies: nanoid: 3.3.7 picocolors: 1.1.0 source-map-js: 1.2.1 - dev: true /prelude-ls@1.2.1: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} @@ -8491,6 +9082,15 @@ packages: resolution: {integrity: sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==} dev: false + /proto3-json-serializer@2.0.2: + resolution: {integrity: sha512-SAzp/O4Yh02jGdRc+uIrGoe87dkN/XtwxfZ4ZyafJHymd79ozp5VG5nyZ7ygqPM5+cpLDjjGnYFUkngonyDPOQ==} + engines: {node: '>=14.0.0'} + requiresBuild: true + dependencies: + protobufjs: 7.4.0 + dev: false + optional: true + /protobufjs@7.4.0: resolution: {integrity: sha512-mRUWCc3KUU4w1jU8sGxICXH/gNS94DvI1gxqDvBzhj1JpcsimQkYiOJfwsPUykUI5ZaspFbSgmBLER8IrQ3tqw==} engines: {node: '>=12.0.0'} @@ -8725,7 +9325,6 @@ packages: inherits: 2.0.4 string_decoder: 1.3.0 util-deprecate: 1.0.2 - dev: true /readdirp@3.6.0: resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} @@ -8984,11 +9583,32 @@ packages: supports-preserve-symlinks-flag: 1.0.0 dev: true + /retry-request@7.0.2: + resolution: {integrity: sha512-dUOvLMJ0/JJYEn8NrpOaGNE7X3vpI5XlZS/u0ANjqtcZVKnIxP7IgCFwrKTxENw29emmwug53awKtaMm4i9g5w==} + engines: {node: '>=14'} + requiresBuild: true + dependencies: + '@types/request': 2.48.12 + extend: 3.0.2 + teeny-request: 9.0.0 + transitivePeerDependencies: + - encoding + - supports-color + dev: false + optional: true + /retry@0.12.0: resolution: {integrity: sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==} engines: {node: '>= 4'} dev: true + /retry@0.13.1: + resolution: {integrity: sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==} + engines: {node: '>= 4'} + requiresBuild: true + dev: false + optional: true + /reusify@1.0.4: resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} engines: {iojs: '>=1.0.0', node: '>=0.10.0'} @@ -9302,6 +9922,20 @@ packages: internal-slot: 1.0.7 dev: true + /stream-events@1.0.5: + resolution: {integrity: sha512-E1GUzBSgvct8Jsb3v2X15pjzN1tYebtbLaMg+eBOUOAxgbLoSbT2NS91ckc5lJD1KfLjId+jXJRgo0qnV5Nerg==} + requiresBuild: true + dependencies: + stubs: 3.0.0 + dev: false + optional: true + + /stream-shift@1.0.3: + resolution: {integrity: sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ==} + requiresBuild: true + dev: false + optional: true + /streamsearch@1.1.0: resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==} engines: {node: '>=10.0.0'} @@ -9403,7 +10037,6 @@ packages: resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} dependencies: safe-buffer: 5.2.1 - dev: true /stringify-entities@4.0.4: resolution: {integrity: sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==} @@ -9444,6 +10077,18 @@ packages: engines: {node: '>=8'} dev: true + /strnum@1.0.5: + resolution: {integrity: sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==} + requiresBuild: true + dev: false + optional: true + + /stubs@3.0.0: + resolution: {integrity: sha512-PdHt7hHUJKxvTCgbKX9C1V/ftOcjJQgz8BZwNfV5c4B6dcGqlpelTbJ999jBGZ2jYiPAwcX5dP6oBwVlBlUbxw==} + requiresBuild: true + dev: false + optional: true + /style-mod@4.1.2: resolution: {integrity: sha512-wnD1HyVqpJUI2+eKZ+eo1UwghftP6yuFheBqqe+bWCotBjC2K1YnteJILRMs3SM4V/0dLEW1SC27MWP5y+mwmw==} dev: false @@ -9550,11 +10195,11 @@ packages: normalize-path: 3.0.0 object-hash: 3.0.0 picocolors: 1.1.0 - postcss: 8.4.45 - postcss-import: 15.1.0(postcss@8.4.45) - postcss-js: 4.0.1(postcss@8.4.45) - postcss-load-config: 4.0.2(postcss@8.4.45) - postcss-nested: 6.2.0(postcss@8.4.45) + postcss: 8.4.47 + postcss-import: 15.1.0(postcss@8.4.47) + postcss-js: 4.0.1(postcss@8.4.47) + postcss-load-config: 4.0.2(postcss@8.4.47) + postcss-nested: 6.2.0(postcss@8.4.47) postcss-selector-parser: 6.1.2 resolve: 1.22.8 sucrase: 3.35.0 @@ -9567,6 +10212,22 @@ packages: engines: {node: '>=6'} dev: true + /teeny-request@9.0.0: + resolution: {integrity: sha512-resvxdc6Mgb7YEThw6G6bExlXKkv6+YbuzGg9xuXxSgxJF7Ozs+o8Y9+2R3sArdWdW8nOokoQb1yrpFB0pQK2g==} + engines: {node: '>=14'} + requiresBuild: true + dependencies: + http-proxy-agent: 5.0.0 + https-proxy-agent: 5.0.1 + node-fetch: 2.7.0 + stream-events: 1.0.5 + uuid: 9.0.1 + transitivePeerDependencies: + - encoding + - supports-color + dev: false + optional: true + /text-table@0.2.0: resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} dev: true @@ -9615,6 +10276,12 @@ packages: resolution: {integrity: sha512-y/mWCZinnvxjTKYhJ+pYxwD0mRLVvOtdS2Awbgxln6iEnt4rk0yBxeSBHkGJcPucRiG0e55mwWp+g/05rsrd6w==} dev: false + /tr46@0.0.3: + resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} + requiresBuild: true + dev: false + optional: true + /trim-lines@3.0.1: resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==} dev: false @@ -9762,6 +10429,10 @@ packages: /undici-types@5.25.3: resolution: {integrity: sha512-Ga1jfYwRn7+cP9v8auvEXN1rX3sWqlayd4HP7OKk4mZWylEmu3KzXDUGrQUN6Ol7qo1gPvB2e5gX6udnyEPgdA==} + /undici-types@6.19.8: + resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==} + dev: false + /undici@6.19.7: resolution: {integrity: sha512-HR3W/bMGPSr90i8AAp2C4DM3wChFdJPLrWYpIS++LxS8K+W535qftjt+4MyjNYHeWabMj1nvtmLIi7l++iq91A==} engines: {node: '>=18.17'} @@ -10021,7 +10692,6 @@ packages: /util-deprecate@1.0.2: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} - dev: true /util@0.12.5: resolution: {integrity: sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==} @@ -10038,6 +10708,11 @@ packages: engines: {node: '>= 0.4.0'} dev: false + /uuid@10.0.0: + resolution: {integrity: sha512-8XkAphELsDnEGrDxUOHB3RGvXz6TeuYSGEZBOjtTtPm2lwhGBjLgOzLHB63IUWfBpNucQjND6d3AOudO+H3RWQ==} + hasBin: true + dev: false + /uuid@8.3.2: resolution: {integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==} hasBin: true @@ -10175,6 +10850,12 @@ packages: resolution: {integrity: sha512-BSR9wyRsy/KOValMgd5kMyr3JzpdeoR9KVId8u5GVlTTAtNChlsE4yTxeY7zMdNSyOmoKBv8NH2qeRY9Tg+IaA==} dev: false + /webidl-conversions@3.0.1: + resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} + requiresBuild: true + dev: false + optional: true + /websocket-driver@0.7.4: resolution: {integrity: sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==} engines: {node: '>=0.8.0'} @@ -10189,6 +10870,15 @@ packages: engines: {node: '>=0.8.0'} dev: false + /whatwg-url@5.0.0: + resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} + requiresBuild: true + dependencies: + tr46: 0.0.3 + webidl-conversions: 3.0.1 + dev: false + optional: true + /which-boxed-primitive@1.0.2: resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} dependencies: @@ -10284,7 +10974,6 @@ packages: /wrappy@1.0.2: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} - dev: true /y18n@5.0.8: resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} @@ -10295,6 +10984,10 @@ packages: resolution: {integrity: sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==} dev: false + /yallist@4.0.0: + resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} + dev: false + /yaml@2.5.1: resolution: {integrity: sha512-bLQOjaX/ADgQ20isPJRvF0iRUHIxVhYvr53Of7wGcWlO2jvtUlH5m87DsmulFVxRpNLOnI4tB6p/oh8D7kpn9Q==} engines: {node: '>= 14'} @@ -10337,7 +11030,7 @@ packages: resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} file:../../design-system/out/kl-design-system-1.0.1.tgz(framer-motion@10.18.0)(react-dom@18.3.1)(react@18.3.1): - resolution: {integrity: sha512-oetCZ4l/auJBtk88ONXil1zjEUV76tFVCQap23+KPbjvg3n+Il0MK4Tgl3Tl8hHlc1zZ2YPTxD7WpWpYZlYjag==, tarball: file:../../design-system/out/kl-design-system-1.0.1.tgz} + resolution: {integrity: sha512-HXgczghmS1yoeqY0HuIHkekeeZId2m3dzynrpGK/WCjBQ+q2Gt46dTbW6QDCpseFpMYtzNa9VYKREd2Tqqf8WA==, tarball: file:../../design-system/out/kl-design-system-1.0.1.tgz} id: file:../../design-system/out/kl-design-system-1.0.1.tgz name: kl-design-system version: 1.0.1 diff --git a/src/apps/devdoc/web/components/page/index-new.tsx b/src/apps/devdoc/web/components/page/index-new.tsx index 4f6a83492..29b376121 100644 --- a/src/apps/devdoc/web/components/page/index-new.tsx +++ b/src/apps/devdoc/web/components/page/index-new.tsx @@ -1,9 +1,7 @@ -import { Badge } from 'kl-design-system/atoms/badge'; -import { GraphExtended } from '~/app/components/graph'; -import hero from '~/images/homeNew/hero'; -import HomeIllustrationMobileDark from '~/images/homeNew/illustration-mobile-dark.svg'; -import HomeIllustrationMobileWeb from '~/images/homeNew/illustration-mobile.webp'; import DynamicImage from '~/app/components/dynamic-image'; +import { GraphExtended } from '~/app/components/graph'; +import JoinProvidersDialog from '~/app/components/join-provider-dialog'; +import FaqSection from '~/app/components/website/home/faq'; import HowItWorksSection from '~/app/components/website/home/how-it-works'; import KeepExploring from '~/app/components/website/home/keep-exploring'; import KloudliteDevelopment from '~/app/components/website/home/kloudlite-development'; @@ -13,20 +11,14 @@ import PartnerSection from '~/app/components/website/home/partners'; import SecureAtCore from '~/app/components/website/home/secure-at-core'; import SuperCharge from '~/app/components/website/home/supercharge'; import Wrapper from '~/app/components/wrapper'; -import JoinProvidersDialog from '~/app/components/join-provider-dialog'; -import FaqSection from '~/app/components/website/home/faq'; -import Events from '../website/home/events'; +import hero from '~/images/homeNew/hero'; +import HomeIllustrationMobileDark from '~/images/homeNew/illustration-mobile-dark.svg'; +import HomeIllustrationMobileWeb from '~/images/homeNew/illustration-mobile.webp'; const Title = () => { return (
-
- - - Open-Source (Apache 2.0) - - -
+ {' '}

Building distributed applications diff --git a/src/apps/devdoc/web/utils/config.tsx b/src/apps/devdoc/web/utils/config.tsx index a9df52b2f..1658d6dc7 100644 --- a/src/apps/devdoc/web/utils/config.tsx +++ b/src/apps/devdoc/web/utils/config.tsx @@ -1,17 +1,17 @@ -import Link from 'next/link'; +import { DiscordLogo, YoutubeLogoFill } from '@jengaicons/react'; import { BrandLogo } from 'kl-design-system/branding/brand-logo'; +import Link from 'next/link'; import { GithubLogoFill, LinkedinLogoFill, TwitterNewLogoFill, } from '~/app/icons/icons'; -import OssIcon from '~/images/homeNew/oss.svg'; import OssIconDark from '~/images/homeNew/oss-dark.svg'; +import OssIcon from '~/images/homeNew/oss.svg'; +import ThemeSwitcher from '../components/theme-switcher'; import { cn } from './commons'; import { IConfig } from './use-config'; -import ThemeSwitcher from '../components/theme-switcher'; import { useTheme } from './useTheme'; -import { YoutubeLogoFill } from '@jengaicons/react'; export const siteDesc = 'Kloudlite is a remote-local development environment platform designed to streamline the workflow for developers working on distributed applications. By integrating both local and remote environments through Kubernetes, Kloudlite ensures a seamless, productive, and more connected development experience.'; @@ -25,6 +25,7 @@ export const communityUrl = export const changeLogUrl = 'https://github.com/kloudlite/kloudlite/releases'; const linkedinUrl = 'https://linkedin.com/company/kloudlite-io'; const youtubeUrl = 'https://youtube.com/@kloudliteofficial'; +const discordUrl = 'https://discord.gg/4Y7VHccg'; const xUrl = 'https://x.com/kloudlite'; export const supportEmail = 'launch@kloudlite.io'; const socialIconSize = 18; @@ -38,6 +39,9 @@ const SocialMenu = () => { + + + @@ -57,7 +61,7 @@ const BrandMenu = ({ className }: { className?: string }) => {
diff --git a/src/apps/devdoc/web/utils/const.tsx b/src/apps/devdoc/web/utils/const.tsx index a7be23f7c..903f03509 100644 --- a/src/apps/devdoc/web/utils/const.tsx +++ b/src/apps/devdoc/web/utils/const.tsx @@ -13,17 +13,17 @@ import { import Link from 'next/link'; import BlogCover from '~/public/blog/blog-cover.jpeg'; -import profileKarthik from '~/images/about-us/karthik-thirumalasetti.png'; +import profileAbdhesh from '~/images/about-us/abdhesh.jpeg'; import profileAditya from '~/images/about-us/aditya-sharma.png'; +import profileAnshuman from '~/images/about-us/ansuman.jpg'; +import profileBikash from '~/images/about-us/bikash.jpg'; +import profileHarsh from '~/images/about-us/harsh.png'; +import profileKarthik from '~/images/about-us/karthik-thirumalasetti.png'; +import profileMohit from '~/images/about-us/mohit.jpg'; import profilePavani from '~/images/about-us/pavani.png'; +import profilePiyush from '~/images/about-us/piyush.jpg'; import profileSrikanta from '~/images/about-us/s-srikanta.png'; -import profileHarsh from '~/images/about-us/harsh.png'; import profileShweta from '~/images/about-us/shewta.png'; -import profilePiyush from '~/images/about-us/piyush.jpg'; -import profileAbdhesh from '~/images/about-us/abdhesh.jpeg'; -import profileAnshuman from '~/images/about-us/ansuman.jpg'; -import profileMohit from '~/images/about-us/mohit.jpg'; -import profileBikash from '~/images/about-us/bikash.jpg'; import collaborate1440 from '~/images/homeNew/collaborate1440.svg'; import connect1440 from '~/images/homeNew/connect1440.svg'; @@ -57,9 +57,6 @@ import nocommitMobile from '~/images/homeNew/nocommitMobile.svg'; import explore from '~/images/explore.jpeg'; -import Collarative from '~/images/homeNew/exploring/collaborative.jpeg'; -import RemoteLocal from '~/images/homeNew/exploring/remote-local.jpeg'; -import Workflow from '~/images/homeNew/exploring/workflow.jpeg'; import { Agritech, AnscerRoboticsLogo, @@ -74,9 +71,15 @@ import { LockSimple, PlaxonicLogo, Robot, + RocketLaunch, SelectionForeground, Users, } from '~/app/icons/icons'; +import Collarative from '~/images/homeNew/exploring/collaborative.jpeg'; +import RemoteLocal from '~/images/homeNew/exploring/remote-local.jpeg'; +import Workflow from '~/images/homeNew/exploring/workflow.jpeg'; +import Button from '../components/button'; +import JoinProvidersDialog from '../components/join-provider-dialog'; import AnserSvg from '../icons/AnserRobotics'; import BoltzmanSvg from '../icons/Boltzman'; import CrewScaleSvg from '../icons/CrewScale'; @@ -84,8 +87,6 @@ import FibrSvg from '../icons/Fibr'; import PlaxonicSvg from '../icons/Plaxonic'; import RedPlutoSvg from '../icons/RedPluto'; import TalescaleSvg from '../icons/Talescale'; -import Button from '../components/button'; -import JoinProvidersDialog from '../components/join-provider-dialog'; import { authUrl } from './config'; export const linkedInPrefix = 'https://www.linkedin.com/in/'; @@ -237,18 +238,18 @@ const consts = { }, kloudliteDevelopmentData: [ { - label: 'Open source under Apache 2.0 Licences', + label: 'Open source', desc: 'No vendor lock-in, what so ever', icon: OpenSource, }, { - label: 'Instant Setup, Infinite Scale', - desc: 'Jump right into development with environments that scale as you grow', + label: 'Integrated workspaces', + desc: 'Develop in workspaces that are already connected to your application environments', icon: InfinityIcon, }, { label: 'No Build No Deploy, Just Code', - desc: 'Pre-built environments mean less setup and more coding', + desc: 'Intercept the service to swap remote application with your workspace', icon: Code, }, { @@ -258,13 +259,13 @@ const consts = { }, { - label: 'Seamless Collaboration Anywhere', - desc: 'Team up in real-time, in any environment, with zero hassle', + label: 'Seamless Collaboration', + desc: 'Switch into common environment to start collaboration', icon: Users, }, { label: 'Cut the Config Clutter', - desc: 'Manage configs and secrets centrally - keep your code clean and lean', + desc: 'No more configs in your code', icon: SelectionForeground, }, { @@ -273,7 +274,7 @@ const consts = { icon: LockSimple, }, { - label: 'Empower Innovation', + label: 'More time to code', desc: 'Free your focus for creativity with streamlined workflows', icon: Lightbulb, }, @@ -650,7 +651,7 @@ const consts = { environment. you can follow these instructions
+ ), + // desc: 'You can host kloudlite on your own infrastructure, giving you full control over the platform. Follow the setup instructions from this repo to get started.', }, ], }, @@ -840,7 +868,7 @@ const consts = { date: 'Sep 14, 2024', enabled: false, linkContent: 'Register today', - link: authUrl + '/signup', + link: `${authUrl}/signup`, }, contactUs: { cookies: { diff --git a/src/apps/webinar/src/app/orgs/webinar-ui.tsx b/src/apps/webinar/src/app/orgs/webinar-ui.tsx index cddbdf55a..a3261cc27 100644 --- a/src/apps/webinar/src/app/orgs/webinar-ui.tsx +++ b/src/apps/webinar/src/app/orgs/webinar-ui.tsx @@ -2,22 +2,34 @@ //@ts-ignore import { Button } from 'kl-design-system/atoms/button'; //@ts-ignore +import { TextInput } from 'kl-design-system/atoms/input'; +//@ts-ignore +import Popup from 'kl-design-system/molecule/popup'; +//@ts-ignore import { cn } from 'kl-design-system/utils'; -import useForm from '~/root/lib/client/hooks/use-form'; -import Yup from '~/root/lib/server/helpers/yup'; -import { handleError } from '~/root/lib/utils/common'; +// import Yup from '~/root/lib/server/helpers/yup'; +// import { handleError } from '~/root/lib/utils/common'; +import { useState } from 'react'; import Container from '../components/container'; import { JoinWebinar } from '../components/join-webinar'; + + export const WebinarUI = ({ userDetails, meetingStatus }: { userDetails: any, meetingStatus: string }) => { + + const [visible, setVisible] = useState(false); + return ( { + setVisible(true); + }} + // linkComponent={Link} + // to="/login" /> } > @@ -35,6 +47,7 @@ export const WebinarUI = ({ userDetails, meetingStatus }: { userDetails: any, me
+ {visible && }

) @@ -42,70 +55,157 @@ export const WebinarUI = ({ userDetails, meetingStatus }: { userDetails: any, me const HandleRegisterForm = ({ visible, setVisible }: { visible: boolean, setVisible: (v: boolean) => void }) => { - const { values, errors, handleChange, handleSubmit, resetValues, isLoading } = - useForm({ - initialValues: { - name: '', - companyName: '', - email: '', - }, + // const { values, errors, handleChange, handleSubmit, resetValues, isLoading } = + // useForm({ + // initialValues: { + // name: '', + // companyName: '', + // email: '', + // }, + + // // validationSchema: Yup.object({ + // // // name: Yup.string().required('id is required'), + // // }), + // validationSchema: null, + + // onSubmit: async (val) => { + // try { + // // if (!isUpdate) { + // // const { errors: e } = await api.createIotDeployment({ + // // projectName: project.name, + // // deployment: { + // // name: val.name, + // // displayName: val.displayName, + // // CIDR: val.cidr, + // // exposedIps: val.exposedIps, + // // exposedDomains: val.exposedDomains, + // // exposedServices: val.exposedServices.map((service) => { + // // return { + // // name: service.name, + // // ip: service.ip, + // // }; + // // }), + // // }, + // // }); + // // if (e) { + // // throw e[0]; + // // } + // // } else { + // // const { errors: e } = await api.updateIotDeployment({ + // // projectName: project.name, + // // deployment: { + // // name: val.name, + // // displayName: val.displayName, + // // CIDR: val.cidr, + // // exposedIps: val.exposedIps, + // // exposedDomains: val.exposedDomains, + // // exposedServices: val.exposedServices.map((service) => { + // // return { + // // name: service.name, + // // ip: service.ip, + // // }; + // // }), + // // }, + // // }); + // // if (e) { + // // throw e[0]; + // // } + // // } + // // reloadPage(); + // resetValues(); + // // toast.success( + // // `deployment ${isUpdate ? 'updated' : 'created'} successfully` + // // ); + // setVisible(false); + // } catch (err) { + // // handleError(err); + // } + // }, + // }); - validationSchema: Yup.object({ - name: Yup.string().required('id is required'), - }), - onSubmit: async (val) => { - try { - // if (!isUpdate) { - // const { errors: e } = await api.createIotDeployment({ - // projectName: project.name, - // deployment: { - // name: val.name, - // displayName: val.displayName, - // CIDR: val.cidr, - // exposedIps: val.exposedIps, - // exposedDomains: val.exposedDomains, - // exposedServices: val.exposedServices.map((service) => { - // return { - // name: service.name, - // ip: service.ip, - // }; - // }), - // }, - // }); - // if (e) { - // throw e[0]; - // } - // } else { - // const { errors: e } = await api.updateIotDeployment({ - // projectName: project.name, - // deployment: { - // name: val.name, - // displayName: val.displayName, - // CIDR: val.cidr, - // exposedIps: val.exposedIps, - // exposedDomains: val.exposedDomains, - // exposedServices: val.exposedServices.map((service) => { - // return { - // name: service.name, - // ip: service.ip, - // }; - // }), - // }, - // }); - // if (e) { - // throw e[0]; - // } - // } - // reloadPage(); - resetValues(); - // toast.success( - // `deployment ${isUpdate ? 'updated' : 'created'} successfully` - // ); - setVisible(false); - } catch (err) { - handleError(err); - } - }, - }); + return ( + { + // if (!values.isNameError) { + // handleSubmit(e); + // } else { + // e.preventDefault(); + // } + // }} + > + +
+ {/* */} + + + {/* []} + onChange={(val, v) => { + handleChange('exposedDomains')(dummyEvent(v)); + }} + error={!!errors.exposedDomains} + disableWhileLoading + /> */} + + {/* { + handleChange('exposedServices')(dummyEvent(items)); + }} + keyLabel="name" + valueLabel="ip" + error={!!errors.exposedServices} + message={errors.exposedServices} + /> */} +
+
+ + + + +
+ ) } \ No newline at end of file From cb7063df1cca46127198a88902238cacb38f7a59 Mon Sep 17 00:00:00 2001 From: Piyush Kumar Date: Tue, 17 Sep 2024 17:12:00 +0530 Subject: [PATCH 04/17] update website changes --- src/apps/devdoc/pages/docs/faq/_meta.json | 6 +++--- src/apps/devdoc/pages/docs/faq/ai-ml-workflows.mdx | 6 ------ src/apps/devdoc/pages/docs/faq/onboarding.mdx | 6 ++++++ src/apps/devdoc/pages/legal/privacy-policy.mdx | 3 +-- src/apps/devdoc/web/components/website/legal-layout.tsx | 2 +- src/design-system/pnpm-lock.yaml | 8 ++++++-- 6 files changed, 17 insertions(+), 14 deletions(-) delete mode 100644 src/apps/devdoc/pages/docs/faq/ai-ml-workflows.mdx create mode 100644 src/apps/devdoc/pages/docs/faq/onboarding.mdx diff --git a/src/apps/devdoc/pages/docs/faq/_meta.json b/src/apps/devdoc/pages/docs/faq/_meta.json index c8697446d..90e009262 100644 --- a/src/apps/devdoc/pages/docs/faq/_meta.json +++ b/src/apps/devdoc/pages/docs/faq/_meta.json @@ -11,10 +11,10 @@ "plans-pricing": { "title": "Plans & Pricing" }, - "ai-ml-workflows": { - "title": "AI & ML Workflows" + "onboarding": { + "title": "Onboarding" }, "troubleshooting-support": { "title": "Troubleshooting & Support" } -} +} \ No newline at end of file diff --git a/src/apps/devdoc/pages/docs/faq/ai-ml-workflows.mdx b/src/apps/devdoc/pages/docs/faq/ai-ml-workflows.mdx deleted file mode 100644 index 17c523119..000000000 --- a/src/apps/devdoc/pages/docs/faq/ai-ml-workflows.mdx +++ /dev/null @@ -1,6 +0,0 @@ -import { FaqDocList } from "~/app/components/faq" -import consts from '~/app/utils/const'; - -# AI & ML Workflows - - diff --git a/src/apps/devdoc/pages/docs/faq/onboarding.mdx b/src/apps/devdoc/pages/docs/faq/onboarding.mdx new file mode 100644 index 000000000..a382034a9 --- /dev/null +++ b/src/apps/devdoc/pages/docs/faq/onboarding.mdx @@ -0,0 +1,6 @@ +import { FaqDocList } from "~/app/components/faq"; +import consts from '~/app/utils/const'; + +# AI & ML Workflows + + diff --git a/src/apps/devdoc/pages/legal/privacy-policy.mdx b/src/apps/devdoc/pages/legal/privacy-policy.mdx index 7f376de49..7f2687bc5 100644 --- a/src/apps/devdoc/pages/legal/privacy-policy.mdx +++ b/src/apps/devdoc/pages/legal/privacy-policy.mdx @@ -1,5 +1,5 @@ -import { InnerContent } from '~/app/components/website/privacy-container'; import Layout from '~/app/components/website/legal-layout'; +import { InnerContent } from '~/app/components/website/privacy-container'; import PrivacyPolicy from '~/app/components/website/privacy/privacy-policy.mdx'; export const { subtitle, label } = { @@ -21,4 +21,3 @@ export const className = 'wb-pb-6xl'; - diff --git a/src/apps/devdoc/web/components/website/legal-layout.tsx b/src/apps/devdoc/web/components/website/legal-layout.tsx index cf15d31bd..fa2abd2ae 100644 --- a/src/apps/devdoc/web/components/website/legal-layout.tsx +++ b/src/apps/devdoc/web/components/website/legal-layout.tsx @@ -73,7 +73,7 @@ const Layout = ({ children }: { children: ReactNode }) => { variant="filled" size="sm" LinkComponent={Link} - toLabel="href" + // toLabel="href" > {tabs.map((t) => ( Date: Tue, 17 Sep 2024 18:39:54 +0530 Subject: [PATCH 05/17] webinar changes --- .../webinar/src/app/components/container.tsx | 3 +- src/apps/webinar/src/app/orgs/webinar-ui.tsx | 124 ++++++------------ 2 files changed, 44 insertions(+), 83 deletions(-) diff --git a/src/apps/webinar/src/app/components/container.tsx b/src/apps/webinar/src/app/components/container.tsx index 8a4f0dfc0..e14694fd5 100644 --- a/src/apps/webinar/src/app/components/container.tsx +++ b/src/apps/webinar/src/app/components/container.tsx @@ -1,5 +1,6 @@ +//@ts-ignore import { cn } from 'kl-design-system/utils'; -import React, { ReactNode } from 'react'; +import { ReactNode } from 'react'; import Header from './header'; interface IContainer { diff --git a/src/apps/webinar/src/app/orgs/webinar-ui.tsx b/src/apps/webinar/src/app/orgs/webinar-ui.tsx index a3261cc27..517e3a41d 100644 --- a/src/apps/webinar/src/app/orgs/webinar-ui.tsx +++ b/src/apps/webinar/src/app/orgs/webinar-ui.tsx @@ -45,9 +45,10 @@ export const WebinarUI = ({ userDetails, meetingStatus }: { userDetails: any, me + {visible && } - {visible && } + {/* {visible && } */} ) @@ -124,88 +125,47 @@ const HandleRegisterForm = ({ visible, setVisible }: { visible: boolean, setVisi // }); return ( - { - // if (!values.isNameError) { - // handleSubmit(e); - // } else { - // e.preventDefault(); - // } - // }} - > - -
- {/* */} - - - {/* []} - onChange={(val, v) => { - handleChange('exposedDomains')(dummyEvent(v)); - }} - error={!!errors.exposedDomains} - disableWhileLoading - /> */} - - {/* { - handleChange('exposedServices')(dummyEvent(items)); - }} - keyLabel="name" - valueLabel="ip" - error={!!errors.exposedServices} - message={errors.exposedServices} - /> */} -
-
- - - - -
+
+ + +
+ + + + setVisible(false)} + /> + + + + + // ) ) } \ No newline at end of file From 07fd258d769b8acee61dbc196032bbef3f22f375 Mon Sep 17 00:00:00 2001 From: Bikash Date: Thu, 19 Sep 2024 09:46:52 +0545 Subject: [PATCH 06/17] updated signup button --- src/apps/devdoc/.env.development | 1 + src/apps/devdoc/.env.production | 1 + src/apps/devdoc/next.config.mjs | 1 + .../web/components/join-provider-dialog.tsx | 268 ++++++++---------- src/apps/devdoc/web/utils/config.tsx | 1 + 5 files changed, 127 insertions(+), 145 deletions(-) diff --git a/src/apps/devdoc/.env.development b/src/apps/devdoc/.env.development index bcb2d6567..9f5035336 100644 --- a/src/apps/devdoc/.env.development +++ b/src/apps/devdoc/.env.development @@ -1,3 +1,4 @@ APP_ENV=development AUTH_URL=https://auth.dev.kloudlite.io CONSOLE_URL=https://console.dev.kloudlite.io +CONTACT_URL=https://marketing-api.dev.kloudlite.io/website/contact-us diff --git a/src/apps/devdoc/.env.production b/src/apps/devdoc/.env.production index a3f026f78..0a4a05549 100644 --- a/src/apps/devdoc/.env.production +++ b/src/apps/devdoc/.env.production @@ -1,3 +1,4 @@ APP_ENV=production AUTH_URL=https://auth.kloudlite.io CONSOLE_URL=https://console.kloudlite.io +CONTACT_URL=https://marketing-api.dev.kloudlite.io/website/contact-us diff --git a/src/apps/devdoc/next.config.mjs b/src/apps/devdoc/next.config.mjs index 6ce87d9bf..2cf89bdd7 100644 --- a/src/apps/devdoc/next.config.mjs +++ b/src/apps/devdoc/next.config.mjs @@ -26,6 +26,7 @@ export default withNextra({ APP_ENV: process.env.APP_ENV, AUTH_URL: process.env.AUTH_URL, CONSOLE_URL: process.env.CONSOLE_URL, + CONTACT_URL: process.env.CONTACT_URL, }, images: { unoptimized: true, diff --git a/src/apps/devdoc/web/components/join-provider-dialog.tsx b/src/apps/devdoc/web/components/join-provider-dialog.tsx index 16fedace3..82d0624cc 100644 --- a/src/apps/devdoc/web/components/join-provider-dialog.tsx +++ b/src/apps/devdoc/web/components/join-provider-dialog.tsx @@ -18,6 +18,7 @@ import { authUrl, consoleUrl } from '../utils/config'; import { cn } from '../utils/commons'; import OptionList from 'kl-design-system/atoms/option-list'; import Profile from 'kl-design-system/molecule/profile'; +import { ArrowRight } from '../icons/icons'; const ProfileMenu = ({ user }: { user: IConfig['user'] }) => { if (!user) { @@ -81,20 +82,24 @@ const UserComponent = ({ ); } - if (isInHeader && user) { - return ( -
- -
- ); - } if (user) { return ( -
+
Access console + ) : ( + 'Access console' + ) + } + variant="outline" + suffix={} block size={size} linkComponent={Link} @@ -158,6 +163,7 @@ const JoinProvidersDialog = ({ const { config } = useConfig(); const { oathProviders } = config; const signupUrl = `${authUrl}/signup?mode=email`; + const signinUrl = `${authUrl}/login?mode=email`; const { setState } = useMenu(); @@ -202,147 +208,119 @@ const JoinProvidersDialog = ({ - {userApproved ? ( -
- - 🔥 Amazing curated Open-Source remote local envs - - - You've been added to our waitlist! - - - Do you have an invite code? -
- - Click here - {' '} - to access. -
-
- ) : ( -
-
-
- - {show === 'signup' - ? 'Create your Kloudlite.io account' - : 'Sign in to Kloudlite.io'} - -
- {show === 'signup' - ? 'Get started for free. No credit card required.' - : 'Start integrating local coding with remote power'} -
+
+
+
+ + {show === 'signup' + ? 'Create your Kloudlite.io account' + : 'Sign in to Kloudlite.io'} + +
+ {show === 'signup' + ? 'Get started for free. No credit card required.' + : 'Start integrating local coding with remote power'}
-
- {hasProvider && ( -
- {oathProviders?.githubLoginUrl && ( -
- )} -
- {hasProvider ? ( - - ) : null} -
+
+ {hasProvider && ( +
+ {oathProviders?.githubLoginUrl && ( +
-
-
- {show === 'signup' ? ( - <>Already have an account?  - ) : ( - <>New to Kloudlite?  - )} - + {hasProvider ? ( + + ) : null} +
- )} +
+ {show === 'signup' ? ( + <>Already have an account?  + ) : ( + <>New to Kloudlite?  + )} + + {show === 'signup' ? 'Sign in' : 'Sign up'} + +
+
diff --git a/src/apps/devdoc/web/utils/config.tsx b/src/apps/devdoc/web/utils/config.tsx index a9df52b2f..0794075d8 100644 --- a/src/apps/devdoc/web/utils/config.tsx +++ b/src/apps/devdoc/web/utils/config.tsx @@ -17,6 +17,7 @@ export const siteDesc = 'Kloudlite is a remote-local development environment platform designed to streamline the workflow for developers working on distributed applications. By integrating both local and remote environments through Kubernetes, Kloudlite ensures a seamless, productive, and more connected development experience.'; export const basePath = 'https://kloudlite.io'; export const authUrl = `${process.env.AUTH_URL}` || 'https://auth.kloudlite.io'; +export const contactUrl = `${process.env.CONTACT_URL}`; export const consoleUrl = `${process.env.CONSOLE_URL}` || 'https://console.kloudlite.io'; export const gitUrl = 'https://github.com/kloudlite/kloudlite'; From c75c219c51645239f60861ccaed299c0471610bf Mon Sep 17 00:00:00 2001 From: Bikash Date: Thu, 19 Sep 2024 09:57:07 +0545 Subject: [PATCH 07/17] merge website/fix --- src/apps/devdoc/public/sitemap.xml | 108 +++++++++--------- .../web/components/website/legal-layout.tsx | 2 +- src/apps/devdoc/web/utils/g-recaptcha.tsx | 53 +++++++++ 3 files changed, 108 insertions(+), 55 deletions(-) create mode 100644 src/apps/devdoc/web/utils/g-recaptcha.tsx diff --git a/src/apps/devdoc/public/sitemap.xml b/src/apps/devdoc/public/sitemap.xml index f092db2c1..483e696d3 100644 --- a/src/apps/devdoc/public/sitemap.xml +++ b/src/apps/devdoc/public/sitemap.xml @@ -1,57 +1,57 @@ -https://kloudlite.io2024-09-13T10:13:38.331Zdaily0.7 -https://kloudlite.io/about-us2024-09-13T10:13:38.334Zdaily0.7 -https://kloudlite.io/blog2024-09-13T10:13:38.334Zdaily0.7 -https://kloudlite.io/blog/collaborative-development2024-09-13T10:13:38.334Zdaily0.7 -https://kloudlite.io/blog/containerisation-reviving-legacy-apps-for-developers2024-09-13T10:13:38.334Zdaily0.7 -https://kloudlite.io/blog/demystifying-7-common-misconceptions-about-containers2024-09-13T10:13:38.334Zdaily0.7 -https://kloudlite.io/blog/development-workflow2024-09-13T10:13:38.334Zdaily0.7 -https://kloudlite.io/blog/distributed-environment-as-a-service2024-09-13T10:13:38.334Zdaily0.7 -https://kloudlite.io/blog/environments-workspaces2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/blog/remote-local-environments2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/blog/role-of-open-source-in-modern-software-development2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/blog/the-evolution-of-development-workflows-an-introduction-to-deaas2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/contact-us2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs/app-intercept2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs/apps2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs/basic-concepts2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs/basic-concepts/development-loop2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs/basic-concepts/environments2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs/basic-concepts/remote-local2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs/basic-concepts/workspaces2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs/configs-secrets2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs/contributing2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs/contributing/code-of-conduct2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs/contributing/documentation2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs/contributing/feature-stages2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs/contributing/frontend2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs/contributing/security2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs/environments2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs/faq2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs/faq/ai-ml-workflows2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs/faq/feature-capabilities2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs/faq/general-questions2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs/faq/plans-pricing2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs/faq/setup-configuration2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs/faq/troubleshooting-support2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs/getting-started2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs/global-vpn2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs/ide-integrations2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs/ide-integrations/intellij2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs/ide-integrations/ssh-access2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs/ide-integrations/vscode2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs/infrastructure2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs/integrated-resources2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs/integrated-services2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs/setup-connect2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs/uninstall2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/docs/workspace-management2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/legal/cancellation-refund-policy2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/legal/privacy-policy2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/legal/terms-of-services2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/pricing2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/privacy-policy2024-09-13T10:13:38.335Zdaily0.7 -https://kloudlite.io/terms-of-services2024-09-13T10:13:38.335Zdaily0.7 +https://kloudlite.io2024-09-19T04:05:53.534Zdaily0.7 +https://kloudlite.io/about-us2024-09-19T04:05:53.534Zdaily0.7 +https://kloudlite.io/blog2024-09-19T04:05:53.534Zdaily0.7 +https://kloudlite.io/blog/collaborative-development2024-09-19T04:05:53.534Zdaily0.7 +https://kloudlite.io/blog/containerisation-reviving-legacy-apps-for-developers2024-09-19T04:05:53.534Zdaily0.7 +https://kloudlite.io/blog/demystifying-7-common-misconceptions-about-containers2024-09-19T04:05:53.534Zdaily0.7 +https://kloudlite.io/blog/development-workflow2024-09-19T04:05:53.534Zdaily0.7 +https://kloudlite.io/blog/distributed-environment-as-a-service2024-09-19T04:05:53.534Zdaily0.7 +https://kloudlite.io/blog/environments-workspaces2024-09-19T04:05:53.534Zdaily0.7 +https://kloudlite.io/blog/remote-local-environments2024-09-19T04:05:53.534Zdaily0.7 +https://kloudlite.io/blog/role-of-open-source-in-modern-software-development2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/blog/the-evolution-of-development-workflows-an-introduction-to-deaas2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/contact-us2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs/app-intercept2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs/apps2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs/basic-concepts2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs/basic-concepts/development-loop2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs/basic-concepts/environments2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs/basic-concepts/remote-local2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs/basic-concepts/workspaces2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs/configs-secrets2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs/contributing2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs/contributing/code-of-conduct2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs/contributing/documentation2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs/contributing/feature-stages2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs/contributing/frontend2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs/contributing/security2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs/environments2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs/faq2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs/faq/feature-capabilities2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs/faq/general-questions2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs/faq/onboarding2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs/faq/plans-pricing2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs/faq/setup-configuration2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs/faq/troubleshooting-support2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs/getting-started2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs/global-vpn2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs/ide-integrations2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs/ide-integrations/intellij2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs/ide-integrations/ssh-access2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs/ide-integrations/vscode2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs/infrastructure2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs/integrated-resources2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs/integrated-services2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs/setup-connect2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs/uninstall2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/docs/workspace-management2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/legal/cancellation-refund-policy2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/legal/privacy-policy2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/legal/terms-of-services2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/pricing2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/privacy-policy2024-09-19T04:05:53.535Zdaily0.7 +https://kloudlite.io/terms-of-services2024-09-19T04:05:53.535Zdaily0.7 \ No newline at end of file diff --git a/src/apps/devdoc/web/components/website/legal-layout.tsx b/src/apps/devdoc/web/components/website/legal-layout.tsx index fa2abd2ae..cf15d31bd 100644 --- a/src/apps/devdoc/web/components/website/legal-layout.tsx +++ b/src/apps/devdoc/web/components/website/legal-layout.tsx @@ -73,7 +73,7 @@ const Layout = ({ children }: { children: ReactNode }) => { variant="filled" size="sm" LinkComponent={Link} - // toLabel="href" + toLabel="href" > {tabs.map((t) => ( ) => void; + execute: ( + sitekey: string, + action: { + action: string; + }, + ) => void; + }; + }; + } +} + +export const onReady = (callback: Promise) => { + if ( + !window.grecaptcha || + !window.grecaptcha.enterprise || + !window.grecaptcha.enterprise.ready + ) { + console.warn('window.grecaptcha.enterprise.ready is not defined.'); + return; + } + const ready = window.grecaptcha.enterprise.ready; + ready(callback); +}; + +export const execute = ( + sitekey: string, + action: { + action: string; + }, +) => { + if ( + !window.grecaptcha || + !window.grecaptcha.enterprise || + !window.grecaptcha.enterprise.ready + ) { + console.warn('window.grecaptcha.enterprises.ready is not defined.'); + return; + } + const exec = window.grecaptcha.enterprise.execute; + exec(sitekey, action); +}; + +const grecaptcha = { + onReady, + execute, +}; + +export default grecaptcha; From 03b213a14fdf2089b5bf9bb5129ac6dad6ff1a65 Mon Sep 17 00:00:00 2001 From: Piyush Kumar Date: Thu, 19 Sep 2024 12:15:12 +0530 Subject: [PATCH 08/17] webinar changes in progress --- .dockerignore | 2 + .gitignore | 2 + Dockerfile.webinar | 17 +- package.json | 4 +- .../web/components/website/legal-layout.tsx | 2 +- src/apps/webinar/.dockerignore | 1 + src/apps/webinar/.env.development | 3 - src/apps/webinar/Taskfile.yaml | 10 +- src/apps/webinar/next.config.mjs | 6 +- src/apps/webinar/package.json | 3 +- .../webinar/src/app/api/get-envs/route.tsx | 20 ++ .../src/app/components/join-webinar.tsx | 5 +- .../webinar/src/app/components/meeting-.tsx | 0 .../src/app/components/toastify-container.tsx | 10 + src/apps/webinar/src/app/layout.tsx | 8 +- .../webinar/src/app/orgs/my-meeting-ui.tsx | 3 +- src/apps/webinar/src/app/orgs/webinar-ui.tsx | 191 ++++++++++-------- src/apps/webinar/src/app/page.tsx | 44 ++-- .../app/pages/meeting/components/meeting.tsx | 73 +++++++ .../webinar/src/app/pages/meeting/page.tsx | 85 ++------ src/generated/package.json | 2 +- 21 files changed, 290 insertions(+), 201 deletions(-) delete mode 100644 src/apps/webinar/.env.development create mode 100644 src/apps/webinar/src/app/api/get-envs/route.tsx create mode 100644 src/apps/webinar/src/app/components/meeting-.tsx create mode 100644 src/apps/webinar/src/app/components/toastify-container.tsx create mode 100644 src/apps/webinar/src/app/pages/meeting/components/meeting.tsx diff --git a/.dockerignore b/.dockerignore index c5935792a..efc1070d6 100644 --- a/.dockerignore +++ b/.dockerignore @@ -20,3 +20,5 @@ src/generated/plugin/node_modules src/design-system/node_modules src/apps/devdoc/node_modules src/apps/devdoc/.next +src/apps/webinar/.env + diff --git a/.gitignore b/.gitignore index 67166f1f2..d3cfbc503 100644 --- a/.gitignore +++ b/.gitignore @@ -35,3 +35,5 @@ out storybook-dist tsconfig-compile.tsbuildinfo + +.secrets diff --git a/Dockerfile.webinar b/Dockerfile.webinar index 8a6028d55..39e729967 100644 --- a/Dockerfile.webinar +++ b/Dockerfile.webinar @@ -1,27 +1,30 @@ -FROM node:20.8.1-alpine as base +FROM node:20.8.1-alpine AS base RUN apk add g++ make py3-pip RUN npm i -g pnpm WORKDIR /app COPY ./package.json ./package.json COPY ./pnpm-lock.yaml ./pnpm-lock.yaml -COPY ./src/generated/package.json ./src/generated/package.json -COPY ./src/generated/plugin/package.json ./src/generated/plugin/package.json - -RUN pnpm i +RUN mkdir -p ./src/generated/plugin +COPY ./src/generated/package.json ./src/generated/pnpm-lock.yaml ./src/generated +COPY ./src/generated/plugin/package.json ./src/generated/plugin/pnpm-lock.yaml ./src/generated/plugin +RUN --mount=type=bind,source=package.json,target=package.json \ + --mount=type=bind,source=pnpm-lock.yaml,target=pnpm-lock.yaml \ + --mount=type=cache,target=/root/.local/share/pnpm/store \ + pnpm i --frozen-lockfile # design system COPY ./src/design-system/ ./src/design-system/ WORKDIR /app/src/design-system -RUN pnpm i -p +RUN pnpm i --frozen-lockfile RUN pnpm local:release # webinar WORKDIR /app COPY ./src/apps/webinar ./src/apps/webinar WORKDIR /app/src/apps/webinar -RUN pnpm i -p +RUN pnpm i --frozen-lockfile RUN pnpm build FROM node:20.8.1-alpine diff --git a/package.json b/package.json index e4d3f048d..e7a0f093a 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,7 @@ "homepage": "https://kloudlite.github.io", "type": "module", "scripts": { - "postinstall": "cd src/generated && pnpm i", + "postinstall": "cd src/generated && ls -al && pnpm i --frozen-lockfile", "fake": "esbuild fake-data-generator/gen.ts --format=cjs --outfile=public/dist/fake-data-generator.cjs --platform=node && node public/dist/fake-data-generator.cjs", "dev": "remix dev", "serve": "remix-serve ./public/${APP}/server", @@ -140,4 +140,4 @@ "typescript": "^5.3.3", "typescript-json-schema": "^0.62.0" } -} \ No newline at end of file +} diff --git a/src/apps/devdoc/web/components/website/legal-layout.tsx b/src/apps/devdoc/web/components/website/legal-layout.tsx index fa2abd2ae..cf15d31bd 100644 --- a/src/apps/devdoc/web/components/website/legal-layout.tsx +++ b/src/apps/devdoc/web/components/website/legal-layout.tsx @@ -73,7 +73,7 @@ const Layout = ({ children }: { children: ReactNode }) => { variant="filled" size="sm" LinkComponent={Link} - // toLabel="href" + toLabel="href" > {tabs.map((t) => ( >>", dyteOrgId, dyteApiKey, dyteMeetingId, marketApiUrl) + + + return NextResponse.json({ + dyteOrgId, + dyteApiKey, + dyteMeetingId, + marketApiUrl, + }); +} \ No newline at end of file diff --git a/src/apps/webinar/src/app/components/join-webinar.tsx b/src/apps/webinar/src/app/components/join-webinar.tsx index 3ef152f82..36a57a9e3 100644 --- a/src/apps/webinar/src/app/components/join-webinar.tsx +++ b/src/apps/webinar/src/app/components/join-webinar.tsx @@ -11,7 +11,7 @@ type UesrData = { approved: boolean, } -export const JoinWebinar = ({ userData, meetingStatus }: { userData: UesrData, meetingStatus: string }) => { +export const JoinWebinar = ({ userData, meetingStatus, meetingId }: { userData: UesrData, meetingStatus: string, meetingId: string }) => { return (
{ - window.location.href = `/pages/meeting?email=${userData.email}&name=${userData.name}&meetingId=${process.env.NEXT_PUBLIC_DYTE_MEETING_ID}` + // window.location.href = `/pages/meeting?email=${userData.email}&name=${userData.name}&meetingId=${process.env.NEXT_PUBLIC_DYTE_MEETING_ID}` + window.location.href = `/pages/meeting?email=${userData.email}&name=${userData.name}&meetingId=${meetingId}` }} />
diff --git a/src/apps/webinar/src/app/components/meeting-.tsx b/src/apps/webinar/src/app/components/meeting-.tsx new file mode 100644 index 000000000..e69de29bb diff --git a/src/apps/webinar/src/app/components/toastify-container.tsx b/src/apps/webinar/src/app/components/toastify-container.tsx new file mode 100644 index 000000000..924614b2e --- /dev/null +++ b/src/apps/webinar/src/app/components/toastify-container.tsx @@ -0,0 +1,10 @@ +"use client"; +// @ts-ignore +import { ToastContainer } from 'kl-design-system/molecule/toast'; +import React from 'react'; + +const ToastifyContainer = () => { + return +} + +export default ToastifyContainer; \ No newline at end of file diff --git a/src/apps/webinar/src/app/layout.tsx b/src/apps/webinar/src/app/layout.tsx index 429cd4a16..718f0a88c 100644 --- a/src/apps/webinar/src/app/layout.tsx +++ b/src/apps/webinar/src/app/layout.tsx @@ -1,6 +1,9 @@ import 'kl-design-system/index.css'; + import type { Metadata } from "next"; import { Inter } from "next/font/google"; +import 'react-toastify/dist/ReactToastify.css'; +import ToastifyContainer from './components/toastify-container'; import "./globals.css"; @@ -18,7 +21,10 @@ export default function RootLayout({ }>) { return ( - {children} + + {children} + + {/*
{children}
diff --git a/src/apps/webinar/src/app/orgs/my-meeting-ui.tsx b/src/apps/webinar/src/app/orgs/my-meeting-ui.tsx index 5ee42c003..5927a7a41 100644 --- a/src/apps/webinar/src/app/orgs/my-meeting-ui.tsx +++ b/src/apps/webinar/src/app/orgs/my-meeting-ui.tsx @@ -1,7 +1,6 @@ - +"use client"; import { DyteMeeting } from '@dytesdk/react-ui-kit'; import { useDyteMeeting } from '@dytesdk/react-web-core'; -import React from 'react'; export const MyMeetingUI = () => { const { meeting } = useDyteMeeting(); diff --git a/src/apps/webinar/src/app/orgs/webinar-ui.tsx b/src/apps/webinar/src/app/orgs/webinar-ui.tsx index 517e3a41d..af421d8e3 100644 --- a/src/apps/webinar/src/app/orgs/webinar-ui.tsx +++ b/src/apps/webinar/src/app/orgs/webinar-ui.tsx @@ -2,21 +2,33 @@ //@ts-ignore import { Button } from 'kl-design-system/atoms/button'; //@ts-ignore -import { TextInput } from 'kl-design-system/atoms/input'; +import { TextArea, TextInput } from 'kl-design-system/atoms/input'; //@ts-ignore import Popup from 'kl-design-system/molecule/popup'; //@ts-ignore import { cn } from 'kl-design-system/utils'; -// import Yup from '~/root/lib/server/helpers/yup'; -// import { handleError } from '~/root/lib/utils/common'; +//@ts-ignore +import axios from 'axios'; +//@ts-ignore +import { toast } from 'kl-design-system/molecule/toast'; import { useState } from 'react'; import Container from '../components/container'; import { JoinWebinar } from '../components/join-webinar'; +type WebinarUIProps = { + userDetails: any; + meetingStatus: string; + envVars: { + dyteOrgId: string, + dyteApiKey: string, + dyteMeetingId: string, + marketApiUrl: string, + }; +}; +export const WebinarUI = ({ userDetails, meetingStatus, envVars }: WebinarUIProps) => { -export const WebinarUI = ({ userDetails, meetingStatus }: { userDetails: any, meetingStatus: string }) => { - + const { dyteOrgId, dyteApiKey, dyteMeetingId, marketApiUrl } = envVars; const [visible, setVisible] = useState(false); return ( @@ -28,8 +40,6 @@ export const WebinarUI = ({ userDetails, meetingStatus }: { userDetails: any, me onClick={() => { setVisible(true); }} - // linkComponent={Link} - // to="/login" /> } > @@ -44,88 +54,42 @@ export const WebinarUI = ({ userDetails, meetingStatus }: { userDetails: any, me Join webinar and experience the power of Kloudlite
- - {visible && } + + {visible && }
- {/* {visible && } */}
) } -const HandleRegisterForm = ({ visible, setVisible }: { visible: boolean, setVisible: (v: boolean) => void }) => { +const HandleRegisterForm = ({ visible, setVisible, marketApiUrl }: { visible: boolean, setVisible: (v: boolean) => void, marketApiUrl: string }) => { + const [formData, setFormData] = useState({ name: '', companyName: '', email: '', country: '', mobileNo: '', message: '' }); - // const { values, errors, handleChange, handleSubmit, resetValues, isLoading } = - // useForm({ - // initialValues: { - // name: '', - // companyName: '', - // email: '', - // }, + const handleInputChange = (e: any) => { + setFormData({ ...formData, [e.target.name]: e.target.value }); + } - // // validationSchema: Yup.object({ - // // // name: Yup.string().required('id is required'), - // // }), - // validationSchema: null, + const handleSubmit = async (e: any) => { + e.preventDefault(); + try { + console.log("environment===", marketApiUrl); + const response = await axios.post(`${marketApiUrl}/events/register-user`, formData, { + headers: { + 'Content-Type': 'application/json', + }, + }); + if (response.status === 200) { + setVisible(false); + toast.success('Thank you for registering to kloudlite events'); + } + } catch (error) { + toast.error("Error while registering to kloudlite events"); + } + } - // onSubmit: async (val) => { - // try { - // // if (!isUpdate) { - // // const { errors: e } = await api.createIotDeployment({ - // // projectName: project.name, - // // deployment: { - // // name: val.name, - // // displayName: val.displayName, - // // CIDR: val.cidr, - // // exposedIps: val.exposedIps, - // // exposedDomains: val.exposedDomains, - // // exposedServices: val.exposedServices.map((service) => { - // // return { - // // name: service.name, - // // ip: service.ip, - // // }; - // // }), - // // }, - // // }); - // // if (e) { - // // throw e[0]; - // // } - // // } else { - // // const { errors: e } = await api.updateIotDeployment({ - // // projectName: project.name, - // // deployment: { - // // name: val.name, - // // displayName: val.displayName, - // // CIDR: val.cidr, - // // exposedIps: val.exposedIps, - // // exposedDomains: val.exposedDomains, - // // exposedServices: val.exposedServices.map((service) => { - // // return { - // // name: service.name, - // // ip: service.ip, - // // }; - // // }), - // // }, - // // }); - // // if (e) { - // // throw e[0]; - // // } - // // } - // // reloadPage(); - // resetValues(); - // // toast.success( - // // `deployment ${isUpdate ? 'updated' : 'created'} successfully` - // // ); - // setVisible(false); - // } catch (err) { - // // handleError(err); - // } - // }, - // }); return ( - // visible && ( @@ -134,20 +98,69 @@ const HandleRegisterForm = ({ visible, setVisible }: { visible: boolean, setVisi label="Full name" size="lg" placeholder="name" + name="name" + value={formData.name} + onChange={handleInputChange} /> -
- - +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+ +