@@ -177,15 +193,9 @@ export default function Event({ event }: { event: IEvent }) {
// Generates `/posts/1` and `/posts/2`
export async function getStaticPaths() {
- const filePath = path.join(process.cwd(), 'pages', 'events', '_md');
-
- const files = fs.readdirSync(filePath, 'utf8');
-
- const paths = files
- .filter((f) => f.endsWith('.md'))
- .map((f) => {
- return { params: { event: f.replace(/\.md$/, '') } };
- });
+ const paths = Object.keys(events).map((event) => {
+ return { params: { event } };
+ });
return {
paths,
@@ -200,7 +210,7 @@ export async function getStaticProps({ params }: any) {
'pages',
'events',
'_md',
- `${params.event}.md`,
+ `${params.event}.mdx`,
);
const fileContents = fs.readFileSync(filePath, 'utf8');
@@ -215,7 +225,8 @@ export async function getStaticProps({ params }: any) {
const event = {
event: params.event,
content: contentHtml,
- frontMatter: data,
+ // @ts-ignore
+ frontMatter: { ...data, ...events[params.event] },
};
return {
diff --git a/src/apps/devdoc/pages/events/_md/1.md b/src/apps/devdoc/pages/events/_md/1.md
deleted file mode 100644
index 7ba143b05..000000000
--- a/src/apps/devdoc/pages/events/_md/1.md
+++ /dev/null
@@ -1,27 +0,0 @@
----
-title: "Code Unbound: No Builds, No Deploys The New Era of Developments"
-metaTitle: "Code Unbound: No Builds, No Deploys The New Era of Developments"
-date: "2024-09-11"
-starttime: "16:00"
-endtime: "18:00"
-type: "Online"
-banner: "1"
-organizer:
- author: "Karthik Thriumalasetti"
- title: "Founder & CEO, Kloudlite"
----
-
-# Overview
-Lorem ipsum dolor sit amet. Aut voluptatem quod non iste cumque eos omnis velit. Et modi omnis qui facere nostrum aut tempore rerum et voluptate corrupti aut autem internos. Nam commodi iste sed internos officiis qui quas veniam ut eaque consequatur qui cupiditate amet qui corporis ratione! Hic quae veritatis est atque possimus ea incidunt laboriosam sit cumque quasi et autem dolores sit explicabo dolore.
-
-## Key takeaways:
-- Lorem ipsum dolor sit amet. Aut voluptatem quod non iste cumque eos omnis velit. Et modi omnis qui facere nostrum aut tempore rerum et voluptate corrupti aut autem internos.
-- Nam commodi iste sed internos officiis qui quas veniam ut eaque consequatur qui cupiditate amet qui corporis ratione! Hic quae veritatis est atque possimus ea incidunt laboriosam sit cumque quasi et autem dolores sit explicabo dolore.\
-- Lorem ipsum dolor sit amet. Aut voluptatem quod non iste cumque eos omnis velit. Et modi omnis qui facere nostrum aut tempore rerum et voluptate corrupti aut autem internos.
-
-## Who should attend
-- IT Decision-Makers
-- CTOs and CIOs
-- Application Developers
-- Data Scientists
-- Digital Transformation Leaders
diff --git a/src/apps/devdoc/pages/events/_md/code-unbound-new-age-development-environments.mdx b/src/apps/devdoc/pages/events/_md/code-unbound-new-age-development-environments.mdx
new file mode 100644
index 000000000..67b8ae12f
--- /dev/null
+++ b/src/apps/devdoc/pages/events/_md/code-unbound-new-age-development-environments.mdx
@@ -0,0 +1,31 @@
+---
+banner: "1"
+organizer:
+ author: "Karthik Thriumalasetti"
+ title: "Founder & CEO, Kloudlite"
+---
+
+### Host:
+
+Kloudlite – A Developer Experience Company
+
+### Overview:
+
+Get ready to revolutionize your development process with our latest event, "New Era of Development with Workspaces & Environments." This isn’t just another tech talk—it’s a deep dive into the future of development, where traditional roadblocks like build and deploy steps are a thing of the past.
+
+### What to Expect:
+
+- No Build, No Deploy: Discover how to instantly see your code in action without the delays of building or deploying. Kloudlite is leading the charge in this evolution, making development faster, smoother, and more productive.
+- Seamless Integration: Learn how to connect your local workspaces directly with remote environments, ensuring your development setup is always in sync with production.
+- Boost Productivity: Whether you're working on microservices, cloud-native applications, or distributed systems, we’ll show you how to streamline your workflows and collaborate effortlessly across teams.
+
+### Why Attend?
+
+This event is your opportunity to be part of the next generation of developers who are embracing innovative workflows that eliminate friction and boost efficiency. Hosted by Kloudlite, a tech pioneer from India, we’ll share insights on how we’ve evolved our platform to empower developers like you.
+
+
+### Don’t Miss Out!
+
+Join us and transform the way you code—say goodbye to the old way of doing things and embrace the future with Kloudlite.
+
+
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/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/public/sitemap.xml b/src/apps/devdoc/public/sitemap.xml
index f092db2c1..9df1a6ecf 100644
--- a/src/apps/devdoc/public/sitemap.xml
+++ b/src/apps/devdoc/public/sitemap.xml
@@ -1,57 +1,59 @@
-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-19T11:22:09.535Zdaily0.7
+https://kloudlite.io/about-us2024-09-19T11:22:09.535Zdaily0.7
+https://kloudlite.io/blog2024-09-19T11:22:09.535Zdaily0.7
+https://kloudlite.io/blog/collaborative-development2024-09-19T11:22:09.535Zdaily0.7
+https://kloudlite.io/blog/containerisation-reviving-legacy-apps-for-developers2024-09-19T11:22:09.535Zdaily0.7
+https://kloudlite.io/blog/demystifying-7-common-misconceptions-about-containers2024-09-19T11:22:09.535Zdaily0.7
+https://kloudlite.io/blog/development-workflow2024-09-19T11:22:09.535Zdaily0.7
+https://kloudlite.io/blog/distributed-environment-as-a-service2024-09-19T11:22:09.535Zdaily0.7
+https://kloudlite.io/blog/environments-workspaces2024-09-19T11:22:09.535Zdaily0.7
+https://kloudlite.io/blog/remote-local-environments2024-09-19T11:22:09.535Zdaily0.7
+https://kloudlite.io/blog/role-of-open-source-in-modern-software-development2024-09-19T11:22:09.535Zdaily0.7
+https://kloudlite.io/blog/the-evolution-of-development-workflows-an-introduction-to-deaas2024-09-19T11:22:09.535Zdaily0.7
+https://kloudlite.io/contact-us2024-09-19T11:22:09.535Zdaily0.7
+https://kloudlite.io/docs2024-09-19T11:22:09.535Zdaily0.7
+https://kloudlite.io/docs/app-intercept2024-09-19T11:22:09.535Zdaily0.7
+https://kloudlite.io/docs/apps2024-09-19T11:22:09.535Zdaily0.7
+https://kloudlite.io/docs/basic-concepts2024-09-19T11:22:09.535Zdaily0.7
+https://kloudlite.io/docs/basic-concepts/development-loop2024-09-19T11:22:09.535Zdaily0.7
+https://kloudlite.io/docs/basic-concepts/environments2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/docs/basic-concepts/remote-local2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/docs/basic-concepts/workspaces2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/docs/configs-secrets2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/docs/contributing2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/docs/contributing/code-of-conduct2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/docs/contributing/documentation2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/docs/contributing/feature-stages2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/docs/contributing/frontend2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/docs/contributing/security2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/docs/environments2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/docs/faq2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/docs/faq/feature-capabilities2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/docs/faq/general-questions2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/docs/faq/onboarding2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/docs/faq/plans-pricing2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/docs/faq/setup-configuration2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/docs/faq/troubleshooting-support2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/docs/getting-started2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/docs/global-vpn2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/docs/ide-integrations2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/docs/ide-integrations/intellij2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/docs/ide-integrations/ssh-access2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/docs/ide-integrations/vscode2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/docs/infrastructure2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/docs/integrated-resources2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/docs/integrated-services2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/docs/setup-connect2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/docs/uninstall2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/docs/workspace-management2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/events/_md/code-unbound-new-age-development-environments2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/legal/cancellation-refund-policy2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/legal/privacy-policy2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/legal/terms-of-services2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/pricing2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/privacy-policy2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/terms-of-services2024-09-19T11:22:09.536Zdaily0.7
+https://kloudlite.io/events/code-unbound-new-age-development-environments2024-09-19T11:22:09.536Zdaily0.7
\ No newline at end of file
diff --git a/src/apps/devdoc/style.css b/src/apps/devdoc/style.css
index 350eea1cd..41a2ffa48 100644
--- a/src/apps/devdoc/style.css
+++ b/src/apps/devdoc/style.css
@@ -218,3 +218,7 @@ canvas {
transform: translateX(-400%);
}
}
+
+.grecaptcha-badge {
+ visibility: hidden;
+}
diff --git a/src/apps/devdoc/web/components/fullscreen.tsx b/src/apps/devdoc/web/components/fullscreen.tsx
index 74597f819..34c375fb8 100644
--- a/src/apps/devdoc/web/components/fullscreen.tsx
+++ b/src/apps/devdoc/web/components/fullscreen.tsx
@@ -1,4 +1,11 @@
-import { ReactNode, useEffect, useId, useState } from 'react';
+import React, {
+ ReactNode,
+ cloneElement,
+ isValidElement,
+ useEffect,
+ useId,
+ useState,
+} from 'react';
import { cn } from '../utils/commons';
import { IconButton } from 'kl-design-system/atoms/button';
import { XFill } from '@jengaicons/react';
@@ -32,17 +39,6 @@ const Fullscreen = ({
return (
<>
- {fullscreen && (
-
-
- {children?.({ fullscreen: true })}
-
-
- )}
{
if (!user) {
@@ -81,20 +81,24 @@ const UserComponent = ({
);
}
- if (isInHeader && user) {
- return (
-
- );
- }
if (user) {
return (
-
+
Access console
+ ) : (
+ 'Access console'
+ )
+ }
+ variant="outline"
+ suffix={}
block
size={size}
linkComponent={Link}
@@ -158,6 +162,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 +207,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}
-
Continue with email
- }
- prefix={}
- linkComponent={Link}
- toLabel="href"
- to={signupUrl}
- className="!wb-w-full md:wb-w-auto"
- size="lg"
- />
-
-
- By continuing, you agree Kloudlite's
-
- Terms of Service
-
- and
-
- Privacy Policy.
-
-
+
+
+ {hasProvider && (
+
+ {oathProviders?.githubLoginUrl && (
+ Continue with Github
+ }
+ prefix={}
+ linkComponent={Link}
+ toLabel="href"
+ to={oathProviders.githubLoginUrl}
+ className="!wb-w-full md:wb-w-auto"
+ size="lg"
+ />
+ )}
+ {oathProviders?.gitlabLoginUrl && (
+ Continue with Gitlab
+ }
+ prefix={}
+ linkComponent={Link}
+ toLabel="href"
+ to={oathProviders.gitlabLoginUrl}
+ className="!wb-w-full md:wb-w-auto"
+ size="lg"
+ />
+ )}
+ {oathProviders?.googleLoginUrl && (
+ Continue with Google
+ }
+ prefix={}
+ linkComponent={Link}
+ toLabel="href"
+ to={oathProviders.googleLoginUrl}
+ className="!wb-w-full md:wb-w-auto"
+ size="lg"
+ />
+ )}
-
-
- {show === 'signup' ? (
- <>Already have an account? >
- ) : (
- <>New to Kloudlite? >
- )}
-
+ {hasProvider ? (
+
+ ) : null}
+ Continue with email
}
- >
- {show === 'signup' ? 'Sign in' : 'Sign up'}
-
+ prefix={
}
+ linkComponent={Link}
+ toLabel="href"
+ to={show === 'signup' ? signupUrl : signinUrl}
+ className="!wb-w-full md:wb-w-auto"
+ size="lg"
+ />
+
+
+ By continuing, you agree Kloudlite's
+
+ Terms of Service
+
+ and
+
+ Privacy Policy.
+
+
- )}
+
+ {show === 'signup' ? (
+ <>Already have an account? >
+ ) : (
+ <>New to Kloudlite? >
+ )}
+
+ {show === 'signup' ? 'Sign in' : 'Sign up'}
+
+
+
diff --git a/src/apps/devdoc/web/components/page/contact-us.tsx b/src/apps/devdoc/web/components/page/contact-us.tsx
index fb0274f0b..d4765d85a 100644
--- a/src/apps/devdoc/web/components/page/contact-us.tsx
+++ b/src/apps/devdoc/web/components/page/contact-us.tsx
@@ -1,22 +1,22 @@
-import { TextInput, TextArea } from 'kl-design-system/atoms/input';
+import { CircleNotch, JengaIconCommonProps } from '@jengaicons/react';
+import axios from 'axios';
+import { getCookie, setCookie } from 'cookies-next';
+import { TextArea, TextInput } from 'kl-design-system/atoms/input';
import Select from 'kl-design-system/atoms/select';
+import { toast } from 'kl-design-system/molecule/toast';
import Link from 'next/link';
-import { ComponentProps, ReactNode, useEffect, useMemo, useState } from 'react';
-import { addDoc, collection, getFirestore } from '@firebase/firestore';
-import { FirebaseApp } from 'firebase/app';
+import { ComponentProps, ReactNode, useEffect, useState } from 'react';
import { Controller, useForm } from 'react-hook-form';
-import { useFirebase } from '~/app/utils/useFirebase';
-import { supportEmail } from '~/app/utils/config';
-import Wrapper from '../wrapper';
-import Button from '../button';
-import countries from '~/app/utils/countries.json';
-import { GraphItem } from '../graph';
+import { contactUrl, supportEmail } from '~/app/utils/config';
import consts from '~/app/utils/const';
-import { getCookie, setCookie } from 'cookies-next';
+import countries from '~/app/utils/countries.json';
+import grecaptcha from '~/app/utils/g-recaptcha';
+import Button from '../button';
import { Block } from '../commons';
-import ResponsiveContainer from '../responsive-container';
import FAQSection from '../faq';
-import { CircleNotch, JengaIconCommonProps } from '@jengaicons/react';
+import { GraphItem } from '../graph';
+import ResponsiveContainer from '../responsive-container';
+import Wrapper from '../wrapper';
const SupportIcon = (props: ComponentProps<'svg'>) => {
const { height, width } = props;
@@ -77,28 +77,19 @@ const SupportIcon = (props: ComponentProps<'svg'>) => {
);
};
-const addContact = async (
- app: FirebaseApp | null,
- data: {
- email: string;
- fullname: string;
- companyName: string;
- mobile: string;
- country: string;
- message: string;
- },
-) => {
- if (!app) {
- return;
- }
- const firestore = getFirestore(app);
- const col = collection(firestore, 'web-contact-form');
- const contactData = {
- ...data,
- createdAt: new Date(),
- };
-
- await addDoc(col, contactData);
+const addContact = async (data: {
+ email: string;
+ fullname: string;
+ companyName: string;
+ mobile: string;
+ country: string;
+ message: string;
+ token: string;
+}) => {
+ return axios(contactUrl, {
+ method: 'post',
+ data,
+ });
};
type Inputs = {
@@ -230,7 +221,6 @@ const ThankYouMessage = () => {
};
const FormSection = () => {
- const { firebaseApp } = useFirebase();
const [loading, setLoading] = useState(false);
const [pageLoading, setPageLoading] = useState(true);
@@ -258,16 +248,33 @@ const FormSection = () => {
const onFormSubmit = handleSubmit(async (d) => {
setLoading(true);
- await addContact(firebaseApp, d);
- setLoading(false);
- const expiryMinutes = consts.contactUs.cookies.cookieTime || 5;
- const date = new Date();
- date.setTime(date.getTime() + expiryMinutes * 60 * 1000);
- setCookie(consts.contactUs.cookies.submitCookie, true, {
- expires: date,
- });
- setHasFormSubmitted(true);
- reset();
+ const token = await grecaptcha.execute(
+ process.env.NEXT_PUBLIC_RECAPTCHA_SITE_KEY || "",
+ {
+ action: 'login',
+ },
+ );
+ if (!token) {
+ toast.error('Something went wrong.');
+ return;
+ }
+
+ try {
+ await addContact({ ...d, token });
+ setLoading(false);
+ const expiryMinutes = consts.contactUs.cookies.cookieTime || 5;
+ const date = new Date();
+ date.setTime(date.getTime() + expiryMinutes * 60 * 1000);
+ setCookie(consts.contactUs.cookies.submitCookie, true, {
+ expires: date,
+ });
+ setHasFormSubmitted(true);
+ reset();
+ } catch {
+ setHasFormSubmitted(false);
+ setLoading(false);
+ toast.error('Error submitting contact detail.');
+ }
});
const getFormComponent = () => {
@@ -290,6 +297,12 @@ const FormSection = () => {
onSubmit={onFormSubmit}
className="wb-flex wb-flex-col wb-gap-5xl wb-flex-1 wb-p-3xl md:wb-p-6xl"
>
+
{
Privacy policy.
-
+
+
+
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/components/website/home/events.tsx b/src/apps/devdoc/web/components/website/home/events.tsx
index 2e6bce708..c8f7a988c 100644
--- a/src/apps/devdoc/web/components/website/home/events.tsx
+++ b/src/apps/devdoc/web/components/website/home/events.tsx
@@ -29,18 +29,6 @@ const events = [
eventAuthorDetail: 'Founder & CEO, Kloudlite',
eventImage: eventImage.src,
},
-
- {
- eventTitle:
- 'Next-Gen Workflows Streamline Development with Workspaces & Environments 2',
- eventId: '2',
- eventType: 'Online',
- eventDate: 'Aug 31, 2024',
- eventTime: '11:00 to 12:00 pm',
- eventAuthorName: 'Karthik Thriumalasetti',
- eventAuthorDetail: 'Founder & CEO, Kloudlite',
- eventImage: eventImage2.src,
- },
];
const Events = () => {
@@ -106,30 +94,30 @@ const Events = () => {
r1440Dark={`/events/${banner}-1440.jpg`}
r1920={`/events/${banner}-1440.jpg`}
r1920Dark={`/events/${banner}-1440.jpg`}
- className="wb-w-full wb-h-full wb-object-cover 2xl:wb-max-h-[448px]"
+ className="wb-w-full wb-h-full wb-object-cover 2xl:wb-max-h-[416px]"
/>
-
-
-
+
+
+
{es.eventDate}
-
+
{es.eventTime}
-
-
+
{es.eventTitle}
diff --git a/src/apps/devdoc/web/layout/theme.tsx b/src/apps/devdoc/web/layout/theme.tsx
index e20a38438..c3657ac6c 100644
--- a/src/apps/devdoc/web/layout/theme.tsx
+++ b/src/apps/devdoc/web/layout/theme.tsx
@@ -1,4 +1,3 @@
-import Head from 'next/head';
import type { NextraThemeLayoutProps } from 'nextra';
import { MDXProvider } from 'nextra/mdx';
import { useEffect, useMemo } from 'react';
@@ -6,7 +5,6 @@ import { useFSRoute } from 'nextra/hooks';
import { Item, normalizePages } from 'nextra/normalize-pages';
import { useRouter } from 'next/router';
import { ArrowUpLg } from '@jengaicons/react';
-import axios from 'axios';
import Container from '~/app/components/container';
import { NavLinks } from '~/app/components/nav-links';
import { TOC } from '~/app/components/toc';
@@ -30,7 +28,6 @@ import { Block } from '../components/commons';
import { deleteCookie } from 'cookies-next';
import Banner from '../components/website/event/banner';
import ExternalLayout from './alternate-layout';
-import { authUrl } from '../utils/config';
function GitTimestamp({ timestamp }: { timestamp: Date }) {
const { locale = DEFAULT_LOCALE } = useRouter();
@@ -285,71 +282,12 @@ const Main = ({ children, pageOpts }: NextraThemeLayoutProps) => {
);
};
-export const fetchProviders = async () => {
- try {
- const res = await axios({
- url: `${authUrl}/api`,
- method: 'post',
- withCredentials: false,
- data: {
- method: 'loginPageInitUrls',
- args: [{}],
- },
- headers: {
- 'Content-Type': 'application/json; charset=utf-8',
- connection: 'keep-alive',
- },
- });
- if (res.data?.data) {
- return res.data.data;
- }
- return null;
- } catch (e) {
- return null;
- }
-};
-
-const getUser = async () => {
- try {
- const res = await axios({
- url: `${authUrl}/api`,
- method: 'post',
- withCredentials: true,
- data: {
- method: 'whoAmI',
- args: [{}],
- },
- headers: {
- 'Content-Type': 'application/json; charset=utf-8',
- connection: 'keep-alive',
- },
- });
- if (res.data?.data) {
- return res.data.data;
- }
- return null;
- } catch (e) {
- return null;
- }
-};
-
export default function Layout(props: NextraThemeLayoutProps) {
const { pageOpts } = props;
+
const { setConfig } = useConfig();
useEffect(() => {
- setConfig((prev) => ({ ...prev, userApiLoading: true }));
- (async () => {
- const user = await getUser();
- setConfig((prev) => ({ ...prev, user, userApiLoading: false }));
- })();
-
- (async () => {
- const prov = await fetchProviders();
- setConfig((prev) => ({ ...prev, oathProviders: prov }));
- })();
-
setConfig((prev) => ({ ...prev, pageOpts }));
}, []);
-
return
;
}
diff --git a/src/apps/devdoc/web/utils/config.tsx b/src/apps/devdoc/web/utils/config.tsx
index a9df52b2f..5df30770c 100644
--- a/src/apps/devdoc/web/utils/config.tsx
+++ b/src/apps/devdoc/web/utils/config.tsx
@@ -1,22 +1,24 @@
-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.';
export const basePath = 'https://kloudlite.io';
export const authUrl = `${process.env.AUTH_URL}` || 'https://auth.kloudlite.io';
+export const webinarUrl = 'https://webinar.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';
@@ -25,6 +27,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 +41,9 @@ const SocialMenu = () => {
+
+
+
diff --git a/src/apps/devdoc/web/utils/const.tsx b/src/apps/devdoc/web/utils/const.tsx
index a7be23f7c..bbf39ccf4 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,9 +87,7 @@ 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';
+import { authUrl, webinarUrl } from './config';
export const linkedInPrefix = 'https://www.linkedin.com/in/';
export const githubPrefix = 'https://github.com/';
@@ -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
+
+ You can host kloudlite on your own infrastructure, giving you
+ full control over the platform. Follow the setup instructions
+ from
+
+
+ to get started.
+
+ ),
+ // 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.',
},
],
},
@@ -836,11 +864,11 @@ const consts = {
>
),
- time: '12:00-1:00 pm',
- date: 'Sep 14, 2024',
+ time: '12:15-1:15 pm',
+ date: 'Sep 21, 2024',
enabled: false,
linkContent: 'Register today',
- link: authUrl + '/signup',
+ link: `${webinarUrl}/code-unbound-new-age-development-environments/join`,
},
contactUs: {
cookies: {
diff --git a/src/apps/devdoc/web/utils/g-recaptcha.tsx b/src/apps/devdoc/web/utils/g-recaptcha.tsx
new file mode 100644
index 000000000..c83ef7547
--- /dev/null
+++ b/src/apps/devdoc/web/utils/g-recaptcha.tsx
@@ -0,0 +1,53 @@
+declare global {
+ interface Window {
+ grecaptcha: {
+ enterprise: {
+ ready: (callback: Promise
) => void;
+ execute: (
+ sitekey: string,
+ action: {
+ action: string;
+ },
+ ) => Promise;
+ };
+ };
+ }
+}
+
+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 = async (
+ 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;
+ return exec(sitekey, action);
+};
+
+const grecaptcha = {
+ onReady,
+ execute,
+};
+
+export default grecaptcha;
diff --git a/src/apps/webinar/.dockerignore b/src/apps/webinar/.dockerignore
index fd3dbb571..a84107af3 100644
--- a/src/apps/webinar/.dockerignore
+++ b/src/apps/webinar/.dockerignore
@@ -26,6 +26,7 @@ yarn-debug.log*
yarn-error.log*
# local env files
+.env
.env*.local
# vercel
diff --git a/src/apps/webinar/.env.development b/src/apps/webinar/.env.development
deleted file mode 100644
index 3a0d2cc96..000000000
--- a/src/apps/webinar/.env.development
+++ /dev/null
@@ -1,3 +0,0 @@
-NEXT_PUBLIC_AUTH_URL="https://auth.dev.kloudlite.io"
-NEXT_PUBLIC_Callback_URL="https://events.dev.kloudlite.io"
-NEXT_PUBLIC_REDIRECT_URL="https://auth.dev.kloudlite.io/login"
\ No newline at end of file
diff --git a/src/apps/webinar/Taskfile.yaml b/src/apps/webinar/Taskfile.yaml
index 4e55336c1..f166dca05 100644
--- a/src/apps/webinar/Taskfile.yaml
+++ b/src/apps/webinar/Taskfile.yaml
@@ -7,12 +7,20 @@ tasks:
- task: start
dev:
+ dotenv:
+ - .secrets/env
cmds:
- npm run dev
build:
cmds:
- npm run build
+
+ run:build:
+ dotenv:
+ - .secrets/env
+ cmds:
+ - PORT=4000 pnpm start
container:build:
preconditions:
@@ -33,4 +41,4 @@ tasks:
- docker buildx build -t {{.Image}} --platform linux/amd64 --push .
# - docker buildx build . -t {{.Image}} --platform linux/amd64,linux/arm64 --output=type=image,compression=zstd,force-compression=true,compression-level=12,push=true
# - docker build -t {{.Image}} .
- # - docker push {{.Image}}
\ No newline at end of file
+ # - docker push {{.Image}}
diff --git a/src/apps/webinar/next.config.mjs b/src/apps/webinar/next.config.mjs
index ae254d94e..4c68d4f7d 100644
--- a/src/apps/webinar/next.config.mjs
+++ b/src/apps/webinar/next.config.mjs
@@ -1,7 +1,11 @@
/** @type {import('next').NextConfig} */
const nextConfig = {
env: {
- customKey: process.env.keyName, // pulls from .env file
+ // customKey: process.env.keyName,
+ NEXT_PUBLIC_DYTE_ORG_ID: process.env.NEXT_PUBLIC_DYTE_ORG_ID,
+ NEXT_PUBLIC_DYTE_API_KEY: process.env.NEXT_PUBLIC_DYTE_API_KEY,
+ NEXT_PUBLIC_DYTE_MEETING_ID: process.env.NEXT_PUBLIC_DYTE_MEETING_ID,
+ NEXT_PUBLIC_MARKETING_API_URL: process.env.NEXT_PUBLIC_MARKETING_API_URL,
},
};
diff --git a/src/apps/webinar/package.json b/src/apps/webinar/package.json
index b1974f1d2..2e0f0849e 100644
--- a/src/apps/webinar/package.json
+++ b/src/apps/webinar/package.json
@@ -3,10 +3,11 @@
"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"
+ "lint": "next lint",
+ "clean": "rm -rf .next"
},
"dependencies": {
"@dytesdk/react-ui-kit": "^2.0.1",
diff --git a/src/apps/webinar/pnpm-lock.yaml b/src/apps/webinar/pnpm-lock.yaml
index 48dc3fd4b..6879b0b6e 100644
--- a/src/apps/webinar/pnpm-lock.yaml
+++ b/src/apps/webinar/pnpm-lock.yaml
@@ -6,13 +6,13 @@ settings:
dependencies:
'@dytesdk/react-ui-kit':
- specifier: ^2.0.1
- version: 2.0.1(react-dom@18.3.1)(react@18.2.0)
+ specifier: ^2.0.3
+ version: 2.0.3(react-dom@18.3.1)(react@18.2.0)
'@dytesdk/react-web-core':
- specifier: ^2.0.4
- version: 2.0.4(react@18.2.0)
+ specifier: ^2.0.7
+ version: 2.0.7(react@18.2.0)
'@jengaicons/react':
- specifier: ^1.3.0
+ specifier: ^1.9.0
version: 1.9.0(react@18.2.0)
axios:
specifier: ^1.7.7
@@ -27,37 +27,37 @@ dependencies:
specifier: 18.2.0
version: 18.2.0
react-dom:
- specifier: ^18.2.0
+ specifier: ^18.3.1
version: 18.3.1(react@18.2.0)
devDependencies:
'@types/node':
- specifier: ^20
- version: 20.16.3
+ specifier: ^20.16.5
+ version: 20.16.5
'@types/react':
- specifier: ^18.2.46
- version: 18.2.46
+ specifier: ^18.3.7
+ version: 18.3.7
'@types/react-dom':
- specifier: ^18.2.18
+ specifier: ^18.3.0
version: 18.3.0
'@typescript-eslint/eslint-plugin':
- specifier: ^6.16.0
- version: 6.21.0(@typescript-eslint/parser@6.21.0)(eslint@8.57.0)(typescript@5.5.4)
+ specifier: ^6.21.0
+ version: 6.21.0(@typescript-eslint/parser@6.21.0)(eslint@8.57.1)(typescript@5.6.2)
'@typescript-eslint/parser':
- specifier: ^6.16.0
- version: 6.21.0(eslint@8.57.0)(typescript@5.5.4)
+ specifier: ^6.21.0
+ version: 6.21.0(eslint@8.57.1)(typescript@5.6.2)
eslint:
- specifier: ^8.56.0
- version: 8.57.0
+ specifier: ^8.57.1
+ version: 8.57.1
eslint-config-airbnb:
specifier: 19.0.4
- version: 19.0.4(eslint-plugin-import@2.29.1)(eslint-plugin-jsx-a11y@6.9.0)(eslint-plugin-react-hooks@4.6.2)(eslint-plugin-react@7.35.0)(eslint@8.57.0)
+ version: 19.0.4(eslint-plugin-import@2.30.0)(eslint-plugin-jsx-a11y@6.10.0)(eslint-plugin-react-hooks@4.6.2)(eslint-plugin-react@7.36.1)(eslint@8.57.1)
eslint-config-next:
- specifier: ^14.0.4
- version: 14.2.7(eslint@8.57.0)(typescript@5.5.4)
+ specifier: ^14.2.12
+ version: 14.2.12(eslint@8.57.1)(typescript@5.6.2)
eslint-config-prettier:
specifier: ^8.10.0
- version: 8.10.0(eslint@8.57.0)
+ version: 8.10.0(eslint@8.57.1)
eslint-import-resolver-jsconfig:
specifier: ^1.1.0
version: 1.1.0
@@ -65,38 +65,38 @@ devDependencies:
specifier: ^0.3.9
version: 0.3.9
eslint-import-resolver-typescript:
- specifier: ^3.6.1
- version: 3.6.3(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0)
+ specifier: ^3.6.3
+ version: 3.6.3(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.30.0)(eslint@8.57.1)
eslint-plugin-import:
- specifier: ^2.29.1
- version: 2.29.1(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.0)
+ specifier: ^2.30.0
+ version: 2.30.0(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.1)
eslint-plugin-jsx-a11y:
- specifier: ^6.8.0
- version: 6.9.0(eslint@8.57.0)
+ specifier: ^6.10.0
+ version: 6.10.0(eslint@8.57.1)
eslint-plugin-mdx:
- specifier: ^3.1.1
- version: 3.1.5(eslint@8.57.0)
+ specifier: ^3.1.5
+ version: 3.1.5(eslint@8.57.1)
eslint-plugin-prefer-arrow-functions:
- specifier: ^3.2.4
- version: 3.4.1(eslint@8.57.0)
+ specifier: ^3.4.1
+ version: 3.4.1(eslint@8.57.1)
eslint-plugin-prettier:
specifier: ^4.2.1
- version: 4.2.1(eslint-config-prettier@8.10.0)(eslint@8.57.0)(prettier@3.3.3)
+ version: 4.2.1(eslint-config-prettier@8.10.0)(eslint@8.57.1)(prettier@3.3.3)
eslint-plugin-react:
- specifier: ^7.33.2
- version: 7.35.0(eslint@8.57.0)
+ specifier: ^7.36.1
+ version: 7.36.1(eslint@8.57.1)
eslint-plugin-react-hooks:
- specifier: ^4.6.0
- version: 4.6.2(eslint@8.57.0)
+ specifier: ^4.6.2
+ version: 4.6.2(eslint@8.57.1)
postcss:
- specifier: ^8
- version: 8.4.43
+ specifier: ^8.4.47
+ version: 8.4.47
tailwindcss:
- specifier: ^3.4.1
- version: 3.4.10
+ specifier: ^3.4.12
+ version: 3.4.12
typescript:
- specifier: ^5
- version: 5.5.4
+ specifier: ^5.6.2
+ version: 5.6.2
packages:
@@ -110,7 +110,7 @@ packages:
engines: {node: '>=6.9.0'}
dependencies:
'@babel/highlight': 7.24.7
- picocolors: 1.0.1
+ picocolors: 1.1.0
dev: true
/@babel/helper-validator-identifier@7.24.7:
@@ -125,7 +125,7 @@ packages:
'@babel/helper-validator-identifier': 7.24.7
chalk: 2.4.2
js-tokens: 4.0.0
- picocolors: 1.0.1
+ picocolors: 1.1.0
dev: true
/@babel/runtime@7.25.6:
@@ -135,32 +135,32 @@ packages:
regenerator-runtime: 0.14.1
dev: false
- /@dytesdk/react-ui-kit@2.0.1(react-dom@18.3.1)(react@18.2.0):
- resolution: {integrity: sha512-if6JlAZFc2ZLDF3fpYTe+vwLCAR0l2uYUS37tuAIppQAwgvzefOBD1AmumxRf0jYHJe5tyr3Z6ufJYdAw9dl9w==}
+ /@dytesdk/react-ui-kit@2.0.3(react-dom@18.3.1)(react@18.2.0):
+ resolution: {integrity: sha512-qFzeOdpfLsekETCA9DL9EapO/1kgL3D7qUob7BKBbVpeTmaBzgJS739KTtplzhYyM2SBlGmAfPKzkJl6QzOkbQ==}
peerDependencies:
react: '>=16.8.6'
react-dom: '>=16.8.6'
dependencies:
- '@dytesdk/ui-kit': 2.0.1
+ '@dytesdk/ui-kit': 2.0.3
react: 18.2.0
react-dom: 18.3.1(react@18.2.0)
dev: false
- /@dytesdk/react-web-core@2.0.4(react@18.2.0):
- resolution: {integrity: sha512-Q7uHDNNAtThnLEdnqqwZDEOuQb6PJZbfrXRX1O8ZBwUjcqrbor/H8fu6OE1AYGstV2T1CF4g5fIfC0Q5kQM+wQ==}
+ /@dytesdk/react-web-core@2.0.7(react@18.2.0):
+ resolution: {integrity: sha512-Bm/PLGY/XbrD+DzkwMx3nNQxoGHqcEiDi11+MmHDidccHFPqjUX22hzdsxI1Dqfa4TcLETZ8Rtotf0+atPZjfg==}
peerDependencies:
react: '>=16.8.6'
dependencies:
- '@dytesdk/web-core': 2.0.4
+ '@dytesdk/web-core': 2.0.7
react: 18.2.0
dev: false
- /@dytesdk/ui-kit@2.0.1:
- resolution: {integrity: sha512-eo92yUm7r9FnItB5/FDjEox5JglNviCAIUy9gJk/Kfdpf8khkxnkmQl5kATavcIHy3mWbBx8rLfTSq1Po3FURQ==}
+ /@dytesdk/ui-kit@2.0.3:
+ resolution: {integrity: sha512-KGqqqXplccFMBm4OuGLG03XN/6vnGFsIYOL7UHYla+G7P2vH/GcRDq/Tv5rNVAs9T/mRCSlLHvKVPbaseZD4xw==}
dev: false
- /@dytesdk/web-core@2.0.4:
- resolution: {integrity: sha512-tdjs29XZ1ht4yESxfhgnCOkpLEWxHQVwncGHLrhu8GnnGXSrUG0Uq0Ctz16YvLfn03fQMDj1fEaWej1fbTwBiw==}
+ /@dytesdk/web-core@2.0.7:
+ resolution: {integrity: sha512-rbk+dRbGhHAVhBfUGlgaaa082xqHaWN26ATLTbUt7H1Eqe+24/T15CvN0oJxskjDeWI7BqSh9v0zF6clnY2ylw==}
dependencies:
'@protobuf-ts/runtime': 2.9.4
bowser: 2.11.0
@@ -183,18 +183,18 @@ packages:
dev: false
optional: true
- /@eslint-community/eslint-utils@4.4.0(eslint@8.57.0):
+ /@eslint-community/eslint-utils@4.4.0(eslint@8.57.1):
resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
dependencies:
- eslint: 8.57.0
+ eslint: 8.57.1
eslint-visitor-keys: 3.4.3
dev: true
- /@eslint-community/regexpp@4.11.0:
- resolution: {integrity: sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==}
+ /@eslint-community/regexpp@4.11.1:
+ resolution: {integrity: sha512-m4DVN9ZqskZoLU5GlWZadwDnYo3vAEydiUayB9widCl9ffWx2IvPnp6n3on5rJmziJSw9Bv+Z3ChDVdMwXCY8Q==}
engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
dev: true
@@ -203,7 +203,7 @@ packages:
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
dependencies:
ajv: 6.12.6
- debug: 4.3.6
+ debug: 4.3.7
espree: 9.6.1
globals: 13.24.0
ignore: 5.3.2
@@ -215,18 +215,18 @@ packages:
- supports-color
dev: true
- /@eslint/js@8.57.0:
- resolution: {integrity: sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==}
+ /@eslint/js@8.57.1:
+ resolution: {integrity: sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
dev: true
- /@humanwhocodes/config-array@0.11.14:
- resolution: {integrity: sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==}
+ /@humanwhocodes/config-array@0.13.0:
+ resolution: {integrity: sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==}
engines: {node: '>=10.10.0'}
deprecated: Use @eslint/config-array instead
dependencies:
'@humanwhocodes/object-schema': 2.0.3
- debug: 4.3.6
+ debug: 4.3.7
minimatch: 3.1.2
transitivePeerDependencies:
- supports-color
@@ -296,8 +296,8 @@ packages:
resolution: {integrity: sha512-OTx9y6I3xE/eih+qtthppwLytmpJVPM5PPoJxChFsbjIEFXIayG0h/xLzefHGJviAa3Q5+Fd+9uYojKkHDKxoQ==}
dev: false
- /@next/eslint-plugin-next@14.2.7:
- resolution: {integrity: sha512-+7xh142AdhZGjY9/L0iFo7mqRBMJHe+q+uOL+hto1Lfo9DeWCGcR6no4StlFbVSVcA6fQLKEX6y6qhMsSKbgNQ==}
+ /@next/eslint-plugin-next@14.2.12:
+ resolution: {integrity: sha512-cPrKbXtK8NTThOOFNxRGGTw+5s02Ek8z8ri/hZqeKs6uP8LOTGqFyBy6hpCXt7TvLzzriWiiwRyD4h0XYmPEEg==}
dependencies:
glob: 10.3.10
dev: true
@@ -414,7 +414,7 @@ packages:
engines: {node: ^16.14.0 || >=18.0.0}
dependencies:
'@npmcli/map-workspaces': 3.0.6
- '@npmcli/package-json': 5.2.0
+ '@npmcli/package-json': 5.2.1
ci-info: 4.0.0
ini: 4.1.3
nopt: 7.2.1
@@ -457,8 +457,8 @@ packages:
engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
dev: true
- /@npmcli/package-json@5.2.0:
- resolution: {integrity: sha512-qe/kiqqkW0AGtvBjL8TJKZk/eBBSpnJkUWvHdQ9jM2lKHXRYYJuyNpJPlJw3c8QjC2ow6NZYiLExhUaeJelbxQ==}
+ /@npmcli/package-json@5.2.1:
+ resolution: {integrity: sha512-f7zYC6kQautXHvNbLEWgD/uGu1+xCn9izgqBfgItWSx22U0ZDekxN08A1vM8cTxj/cRVe0Q94Ode+tdoYmIOOQ==}
engines: {node: ^16.14.0 || >=18.0.0}
dependencies:
'@npmcli/git': 5.0.8
@@ -495,6 +495,10 @@ packages:
resolution: {integrity: sha512-vHRFWtJJB/SiogWDF0ypoKfRIZ41Kq+G9cEFj6Qm1eQaAhJ1LDFvgZ7Ja4tb3iLOQhz0PaoPnnOijF1qmEqTxg==}
dev: false
+ /@rtsao/scc@1.1.0:
+ resolution: {integrity: sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==}
+ dev: true
+
/@rushstack/eslint-patch@1.10.4:
resolution: {integrity: sha512-WJgX9nzTqknM393q1QJDJmoW28kUfEnybeTfVNcNAPnIx210RXm2DiXiHzfNPJNIUUb1tJnz/l4QGtJ30PgWmA==}
dev: true
@@ -513,13 +517,13 @@ packages:
/@types/acorn@4.0.6:
resolution: {integrity: sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==}
dependencies:
- '@types/estree': 1.0.5
+ '@types/estree': 1.0.6
dev: true
/@types/concat-stream@2.0.3:
resolution: {integrity: sha512-3qe4oQAPNwVNwK4C9c8u+VJqv9kez+2MR4qJpoPFfXtgxxif1QbFusvXzK0/Wra2VX07smostI2VMmJNSpZjuQ==}
dependencies:
- '@types/node': 20.16.3
+ '@types/node': 20.16.5
dev: true
/@types/debug@4.1.12:
@@ -531,11 +535,11 @@ packages:
/@types/estree-jsx@1.0.5:
resolution: {integrity: sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg==}
dependencies:
- '@types/estree': 1.0.5
+ '@types/estree': 1.0.6
dev: true
- /@types/estree@1.0.5:
- resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==}
+ /@types/estree@1.0.6:
+ resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==}
dev: true
/@types/hast@3.0.4:
@@ -572,34 +576,29 @@ packages:
resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==}
dev: true
- /@types/node@20.16.3:
- resolution: {integrity: sha512-/wdGiWRkMOm53gAsSyFMXFZHbVg7C6CbkrzHNpaHoYfsUWPg7m6ZRKtvQjgvQ9i8WT540a3ydRlRQbxjY30XxQ==}
+ /@types/node@20.16.5:
+ resolution: {integrity: sha512-VwYCweNo3ERajwy0IUlqqcyZ8/A7Zwa9ZP3MnENWcB11AejO+tLy3pu850goUW2FC/IJMdZUfKpX/yxL1gymCA==}
dependencies:
undici-types: 6.19.8
dev: true
- /@types/prop-types@15.7.12:
- resolution: {integrity: sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==}
+ /@types/prop-types@15.7.13:
+ resolution: {integrity: sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA==}
dev: true
/@types/react-dom@18.3.0:
resolution: {integrity: sha512-EhwApuTmMBmXuFOikhQLIBUn6uFg81SwLMOAUgodJF14SOBOCMdU04gDoYi0WOJJHD144TL32z4yDqCW3dnkQg==}
dependencies:
- '@types/react': 18.2.46
+ '@types/react': 18.3.7
dev: true
- /@types/react@18.2.46:
- resolution: {integrity: sha512-nNCvVBcZlvX4NU1nRRNV/mFl1nNRuTuslAJglQsq+8ldXe5Xv0Wd2f7WTE3jOxhLH2BFfiZGC6GCp+kHQbgG+w==}
+ /@types/react@18.3.7:
+ resolution: {integrity: sha512-KUnDCJF5+AiZd8owLIeVHqmW9yM4sqmDVf2JRJiBMFkGvkoZ4/WyV2lL4zVsoinmRS/W3FeEdZLEWFRofnT2FQ==}
dependencies:
- '@types/prop-types': 15.7.12
- '@types/scheduler': 0.23.0
+ '@types/prop-types': 15.7.13
csstype: 3.1.3
dev: true
- /@types/scheduler@0.23.0:
- resolution: {integrity: sha512-YIoDCTH3Af6XM5VuwGG/QL/CJqga1Zm3NkU3HZ4ZHK2fRMPYP1VczsTUqtsf43PH/iJNVlPHAo2oWX7BSdB2Hw==}
- dev: true
-
/@types/semver@7.5.8:
resolution: {integrity: sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==}
dev: true
@@ -616,7 +615,7 @@ packages:
resolution: {integrity: sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==}
dev: true
- /@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0)(eslint@8.57.0)(typescript@5.5.4):
+ /@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0)(eslint@8.57.1)(typescript@5.6.2):
resolution: {integrity: sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==}
engines: {node: ^16.0.0 || >=18.0.0}
peerDependencies:
@@ -627,25 +626,25 @@ packages:
typescript:
optional: true
dependencies:
- '@eslint-community/regexpp': 4.11.0
- '@typescript-eslint/parser': 6.21.0(eslint@8.57.0)(typescript@5.5.4)
+ '@eslint-community/regexpp': 4.11.1
+ '@typescript-eslint/parser': 6.21.0(eslint@8.57.1)(typescript@5.6.2)
'@typescript-eslint/scope-manager': 6.21.0
- '@typescript-eslint/type-utils': 6.21.0(eslint@8.57.0)(typescript@5.5.4)
- '@typescript-eslint/utils': 6.21.0(eslint@8.57.0)(typescript@5.5.4)
+ '@typescript-eslint/type-utils': 6.21.0(eslint@8.57.1)(typescript@5.6.2)
+ '@typescript-eslint/utils': 6.21.0(eslint@8.57.1)(typescript@5.6.2)
'@typescript-eslint/visitor-keys': 6.21.0
- debug: 4.3.6
- eslint: 8.57.0
+ debug: 4.3.7
+ eslint: 8.57.1
graphemer: 1.4.0
ignore: 5.3.2
natural-compare: 1.4.0
semver: 7.6.3
- ts-api-utils: 1.3.0(typescript@5.5.4)
- typescript: 5.5.4
+ ts-api-utils: 1.3.0(typescript@5.6.2)
+ typescript: 5.6.2
transitivePeerDependencies:
- supports-color
dev: true
- /@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.5.4):
+ /@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.6.2):
resolution: {integrity: sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==}
engines: {node: ^16.0.0 || >=18.0.0}
peerDependencies:
@@ -657,11 +656,11 @@ packages:
dependencies:
'@typescript-eslint/scope-manager': 6.21.0
'@typescript-eslint/types': 6.21.0
- '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.5.4)
+ '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.6.2)
'@typescript-eslint/visitor-keys': 6.21.0
- debug: 4.3.6
- eslint: 8.57.0
- typescript: 5.5.4
+ debug: 4.3.7
+ eslint: 8.57.1
+ typescript: 5.6.2
transitivePeerDependencies:
- supports-color
dev: true
@@ -674,7 +673,7 @@ packages:
'@typescript-eslint/visitor-keys': 6.21.0
dev: true
- /@typescript-eslint/type-utils@6.21.0(eslint@8.57.0)(typescript@5.5.4):
+ /@typescript-eslint/type-utils@6.21.0(eslint@8.57.1)(typescript@5.6.2):
resolution: {integrity: sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==}
engines: {node: ^16.0.0 || >=18.0.0}
peerDependencies:
@@ -684,12 +683,12 @@ packages:
typescript:
optional: true
dependencies:
- '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.5.4)
- '@typescript-eslint/utils': 6.21.0(eslint@8.57.0)(typescript@5.5.4)
- debug: 4.3.6
- eslint: 8.57.0
- ts-api-utils: 1.3.0(typescript@5.5.4)
- typescript: 5.5.4
+ '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.6.2)
+ '@typescript-eslint/utils': 6.21.0(eslint@8.57.1)(typescript@5.6.2)
+ debug: 4.3.7
+ eslint: 8.57.1
+ ts-api-utils: 1.3.0(typescript@5.6.2)
+ typescript: 5.6.2
transitivePeerDependencies:
- supports-color
dev: true
@@ -699,7 +698,7 @@ packages:
engines: {node: ^16.0.0 || >=18.0.0}
dev: true
- /@typescript-eslint/typescript-estree@6.21.0(typescript@5.5.4):
+ /@typescript-eslint/typescript-estree@6.21.0(typescript@5.6.2):
resolution: {integrity: sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==}
engines: {node: ^16.0.0 || >=18.0.0}
peerDependencies:
@@ -710,30 +709,30 @@ packages:
dependencies:
'@typescript-eslint/types': 6.21.0
'@typescript-eslint/visitor-keys': 6.21.0
- debug: 4.3.6
+ debug: 4.3.7
globby: 11.1.0
is-glob: 4.0.3
minimatch: 9.0.3
semver: 7.6.3
- ts-api-utils: 1.3.0(typescript@5.5.4)
- typescript: 5.5.4
+ ts-api-utils: 1.3.0(typescript@5.6.2)
+ typescript: 5.6.2
transitivePeerDependencies:
- supports-color
dev: true
- /@typescript-eslint/utils@6.21.0(eslint@8.57.0)(typescript@5.5.4):
+ /@typescript-eslint/utils@6.21.0(eslint@8.57.1)(typescript@5.6.2):
resolution: {integrity: sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==}
engines: {node: ^16.0.0 || >=18.0.0}
peerDependencies:
eslint: ^7.0.0 || ^8.0.0
dependencies:
- '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0)
+ '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.1)
'@types/json-schema': 7.0.15
'@types/semver': 7.5.8
'@typescript-eslint/scope-manager': 6.21.0
'@typescript-eslint/types': 6.21.0
- '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.5.4)
- eslint: 8.57.0
+ '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.6.2)
+ eslint: 8.57.1
semver: 7.6.3
transitivePeerDependencies:
- supports-color
@@ -785,8 +784,8 @@ packages:
engines: {node: '>=8'}
dev: true
- /ansi-regex@6.0.1:
- resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==}
+ /ansi-regex@6.1.0:
+ resolution: {integrity: sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==}
engines: {node: '>=12'}
dev: true
@@ -952,17 +951,16 @@ packages:
/axios@1.7.7:
resolution: {integrity: sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==}
dependencies:
- follow-redirects: 1.15.6
+ follow-redirects: 1.15.9
form-data: 4.0.0
proxy-from-env: 1.1.0
transitivePeerDependencies:
- debug
dev: false
- /axobject-query@3.1.1:
- resolution: {integrity: sha512-goKlv8DZrK9hUh975fnHzhNIO4jUnFCfv/dszV5VwUGDFjI6vQ2VwoyjYjYNEbBE8AH87TduWP5uyDR1D+Iteg==}
- dependencies:
- deep-equal: 2.2.3
+ /axobject-query@4.1.0:
+ resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==}
+ engines: {node: '>= 0.4'}
dev: true
/bail@2.0.2:
@@ -1034,8 +1032,8 @@ packages:
engines: {node: '>= 6'}
dev: true
- /caniuse-lite@1.0.30001655:
- resolution: {integrity: sha512-jRGVy3iSGO5Uutn2owlb5gR6qsGngTw9ZTb4ali9f3glshcNmJ2noam4Mo9zia5P9Dk3jNNydy7vQjuE5dQmfg==}
+ /caniuse-lite@1.0.30001662:
+ resolution: {integrity: sha512-sgMUVwLmGseH8ZIrm1d51UbrhqMCH3jvS7gF/M6byuHOnKyLOBL7W8yz5V02OHwgLGA36o/AFhWzzh4uc5aqTA==}
dev: false
/ccount@2.0.1:
@@ -1223,8 +1221,8 @@ packages:
ms: 2.1.3
dev: true
- /debug@4.3.6:
- resolution: {integrity: sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==}
+ /debug@4.3.7:
+ resolution: {integrity: sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==}
engines: {node: '>=6.0'}
peerDependencies:
supports-color: '*'
@@ -1232,7 +1230,7 @@ packages:
supports-color:
optional: true
dependencies:
- ms: 2.1.2
+ ms: 2.1.3
dev: true
/decode-named-character-reference@1.0.2:
@@ -1510,7 +1508,7 @@ packages:
engines: {node: '>=10'}
dev: true
- /eslint-config-airbnb-base@15.0.0(eslint-plugin-import@2.29.1)(eslint@8.57.0):
+ /eslint-config-airbnb-base@15.0.0(eslint-plugin-import@2.30.0)(eslint@8.57.1):
resolution: {integrity: sha512-xaX3z4ZZIcFLvh2oUNvcX5oEofXda7giYmuplVxoOg5A7EXJMrUyqRgR+mhDhPK8LZ4PttFOBvCYDbX3sUoUig==}
engines: {node: ^10.12.0 || >=12.0.0}
peerDependencies:
@@ -1518,14 +1516,14 @@ packages:
eslint-plugin-import: ^2.25.2
dependencies:
confusing-browser-globals: 1.0.11
- eslint: 8.57.0
- eslint-plugin-import: 2.29.1(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.0)
+ eslint: 8.57.1
+ eslint-plugin-import: 2.30.0(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.1)
object.assign: 4.1.5
object.entries: 1.1.8
semver: 6.3.1
dev: true
- /eslint-config-airbnb@19.0.4(eslint-plugin-import@2.29.1)(eslint-plugin-jsx-a11y@6.9.0)(eslint-plugin-react-hooks@4.6.2)(eslint-plugin-react@7.35.0)(eslint@8.57.0):
+ /eslint-config-airbnb@19.0.4(eslint-plugin-import@2.30.0)(eslint-plugin-jsx-a11y@6.10.0)(eslint-plugin-react-hooks@4.6.2)(eslint-plugin-react@7.36.1)(eslint@8.57.1):
resolution: {integrity: sha512-T75QYQVQX57jiNgpF9r1KegMICE94VYwoFQyMGhrvc+lB8YF2E/M/PYDaQe1AJcWaEgqLE+ErXV1Og/+6Vyzew==}
engines: {node: ^10.12.0 || ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
@@ -1535,18 +1533,18 @@ packages:
eslint-plugin-react: ^7.28.0
eslint-plugin-react-hooks: ^4.3.0
dependencies:
- eslint: 8.57.0
- eslint-config-airbnb-base: 15.0.0(eslint-plugin-import@2.29.1)(eslint@8.57.0)
- eslint-plugin-import: 2.29.1(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.0)
- eslint-plugin-jsx-a11y: 6.9.0(eslint@8.57.0)
- eslint-plugin-react: 7.35.0(eslint@8.57.0)
- eslint-plugin-react-hooks: 4.6.2(eslint@8.57.0)
+ eslint: 8.57.1
+ eslint-config-airbnb-base: 15.0.0(eslint-plugin-import@2.30.0)(eslint@8.57.1)
+ eslint-plugin-import: 2.30.0(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.1)
+ eslint-plugin-jsx-a11y: 6.10.0(eslint@8.57.1)
+ eslint-plugin-react: 7.36.1(eslint@8.57.1)
+ eslint-plugin-react-hooks: 4.6.2(eslint@8.57.1)
object.assign: 4.1.5
object.entries: 1.1.8
dev: true
- /eslint-config-next@14.2.7(eslint@8.57.0)(typescript@5.5.4):
- resolution: {integrity: sha512-ppmy+QdQ7qkuCHGDlPjWaoSbJvjGpWSBD4zEW8f1eWlxYXYpZK7QzBOer1EcHKT3uKhlY1JjUus9g7Kvv712rw==}
+ /eslint-config-next@14.2.12(eslint@8.57.1)(typescript@5.6.2):
+ resolution: {integrity: sha512-fzUIlF6Ng1cUFFd013wn9H3YhKe3vV/cZBC0Ec9S64q/wGoTq0HlASA7WgiOwDAISSbzkLprInLiIMu6U8bqEw==}
peerDependencies:
eslint: ^7.23.0 || ^8.0.0
typescript: '>=3.3.1'
@@ -1554,30 +1552,31 @@ packages:
typescript:
optional: true
dependencies:
- '@next/eslint-plugin-next': 14.2.7
+ '@next/eslint-plugin-next': 14.2.12
'@rushstack/eslint-patch': 1.10.4
- '@typescript-eslint/parser': 6.21.0(eslint@8.57.0)(typescript@5.5.4)
- eslint: 8.57.0
+ '@typescript-eslint/eslint-plugin': 6.21.0(@typescript-eslint/parser@6.21.0)(eslint@8.57.1)(typescript@5.6.2)
+ '@typescript-eslint/parser': 6.21.0(eslint@8.57.1)(typescript@5.6.2)
+ eslint: 8.57.1
eslint-import-resolver-node: 0.3.9
- eslint-import-resolver-typescript: 3.6.3(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0)
- eslint-plugin-import: 2.29.1(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.0)
- eslint-plugin-jsx-a11y: 6.9.0(eslint@8.57.0)
- eslint-plugin-react: 7.35.0(eslint@8.57.0)
- eslint-plugin-react-hooks: 4.6.2(eslint@8.57.0)
- typescript: 5.5.4
+ eslint-import-resolver-typescript: 3.6.3(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.30.0)(eslint@8.57.1)
+ eslint-plugin-import: 2.30.0(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.1)
+ eslint-plugin-jsx-a11y: 6.10.0(eslint@8.57.1)
+ eslint-plugin-react: 7.36.1(eslint@8.57.1)
+ eslint-plugin-react-hooks: 4.6.2(eslint@8.57.1)
+ typescript: 5.6.2
transitivePeerDependencies:
- eslint-import-resolver-webpack
- eslint-plugin-import-x
- supports-color
dev: true
- /eslint-config-prettier@8.10.0(eslint@8.57.0):
+ /eslint-config-prettier@8.10.0(eslint@8.57.1):
resolution: {integrity: sha512-SM8AMJdeQqRYT9O9zguiruQZaN7+z+E4eAP9oiLNGKMtomwaB1E9dcgUD6ZAn/eQAb52USbvezbiljfZUhbJcg==}
hasBin: true
peerDependencies:
eslint: '>=7.0.0'
dependencies:
- eslint: 8.57.0
+ eslint: 8.57.1
dev: true
/eslint-import-resolver-jsconfig@1.1.0:
@@ -1598,7 +1597,7 @@ packages:
- supports-color
dev: true
- /eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0):
+ /eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.30.0)(eslint@8.57.1):
resolution: {integrity: sha512-ud9aw4szY9cCT1EWWdGv1L1XR6hh2PaRWif0j2QjQ0pgTY/69iw+W0Z4qZv5wHahOl8isEr+k/JnyAqNQkLkIA==}
engines: {node: ^14.18.0 || >=16.0.0}
peerDependencies:
@@ -1612,14 +1611,14 @@ packages:
optional: true
dependencies:
'@nolyfill/is-core-module': 1.0.39
- debug: 4.3.6
+ debug: 4.3.7
enhanced-resolve: 5.17.1
- eslint: 8.57.0
- eslint-module-utils: 2.8.2(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.0)
- eslint-plugin-import: 2.29.1(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.0)
+ eslint: 8.57.1
+ eslint-module-utils: 2.11.0(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.1)
+ eslint-plugin-import: 2.30.0(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.1)
fast-glob: 3.3.2
- get-tsconfig: 4.8.0
- is-bun-module: 1.1.0
+ get-tsconfig: 4.8.1
+ is-bun-module: 1.2.1
is-glob: 4.0.3
transitivePeerDependencies:
- '@typescript-eslint/parser'
@@ -1628,7 +1627,7 @@ packages:
- supports-color
dev: true
- /eslint-mdx@3.1.5(eslint@8.57.0):
+ /eslint-mdx@3.1.5(eslint@8.57.1):
resolution: {integrity: sha512-ynztX0k7CQ3iDL7fDEIeg3g0O/d6QPv7IBI9fdYLhXp5fAp0fi8X22xF/D3+Pk0f90R27uwqa1clHpay6t0l8Q==}
engines: {node: '>=18.0.0'}
peerDependencies:
@@ -1636,7 +1635,7 @@ packages:
dependencies:
acorn: 8.12.1
acorn-jsx: 5.3.2(acorn@8.12.1)
- eslint: 8.57.0
+ eslint: 8.57.1
espree: 9.6.1
estree-util-visit: 2.0.0
remark-mdx: 3.0.1
@@ -1654,8 +1653,8 @@ packages:
- supports-color
dev: true
- /eslint-module-utils@2.8.2(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.0):
- resolution: {integrity: sha512-3XnC5fDyc8M4J2E8pt8pmSVRX2M+5yWMCfI/kDZwauQeFgzQOuhcRBFKjTeJagqgk4sFKxe1mvNVnaWwImx/Tg==}
+ /eslint-module-utils@2.11.0(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.1):
+ resolution: {integrity: sha512-gbBE5Hitek/oG6MUVj6sFuzEjA/ClzNflVrLovHi/JgLdC7fiN5gLAY1WIPW1a0V5I999MnsrvVrCOGmmVqDBQ==}
engines: {node: '>=4'}
peerDependencies:
'@typescript-eslint/parser': '*'
@@ -1675,17 +1674,17 @@ packages:
eslint-import-resolver-webpack:
optional: true
dependencies:
- '@typescript-eslint/parser': 6.21.0(eslint@8.57.0)(typescript@5.5.4)
+ '@typescript-eslint/parser': 6.21.0(eslint@8.57.1)(typescript@5.6.2)
debug: 3.2.7
- eslint: 8.57.0
+ eslint: 8.57.1
eslint-import-resolver-node: 0.3.9
- eslint-import-resolver-typescript: 3.6.3(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0)
+ eslint-import-resolver-typescript: 3.6.3(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.30.0)(eslint@8.57.1)
transitivePeerDependencies:
- supports-color
dev: true
- /eslint-plugin-import@2.29.1(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.0):
- resolution: {integrity: sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==}
+ /eslint-plugin-import@2.30.0(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.1):
+ resolution: {integrity: sha512-/mHNE9jINJfiD2EKkg1BKyPyUk4zdnT54YgbOgfjSakWT5oyX/qQLVNTkehyfpcMxZXMy1zyonZ2v7hZTX43Yw==}
engines: {node: '>=4'}
peerDependencies:
'@typescript-eslint/parser': '*'
@@ -1694,16 +1693,17 @@ packages:
'@typescript-eslint/parser':
optional: true
dependencies:
- '@typescript-eslint/parser': 6.21.0(eslint@8.57.0)(typescript@5.5.4)
+ '@rtsao/scc': 1.1.0
+ '@typescript-eslint/parser': 6.21.0(eslint@8.57.1)(typescript@5.6.2)
array-includes: 3.1.8
array.prototype.findlastindex: 1.2.5
array.prototype.flat: 1.3.2
array.prototype.flatmap: 1.3.2
debug: 3.2.7
doctrine: 2.1.0
- eslint: 8.57.0
+ eslint: 8.57.1
eslint-import-resolver-node: 0.3.9
- eslint-module-utils: 2.8.2(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.0)
+ eslint-module-utils: 2.11.0(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3)(eslint@8.57.1)
hasown: 2.0.2
is-core-module: 2.15.1
is-glob: 4.0.3
@@ -1719,22 +1719,22 @@ packages:
- supports-color
dev: true
- /eslint-plugin-jsx-a11y@6.9.0(eslint@8.57.0):
- resolution: {integrity: sha512-nOFOCaJG2pYqORjK19lqPqxMO/JpvdCZdPtNdxY3kvom3jTvkAbOvQvD8wuD0G8BYR0IGAGYDlzqWJOh/ybn2g==}
+ /eslint-plugin-jsx-a11y@6.10.0(eslint@8.57.1):
+ resolution: {integrity: sha512-ySOHvXX8eSN6zz8Bywacm7CvGNhUtdjvqfQDVe6020TUK34Cywkw7m0KsCCk1Qtm9G1FayfTN1/7mMYnYO2Bhg==}
engines: {node: '>=4.0'}
peerDependencies:
- eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8
+ eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9
dependencies:
aria-query: 5.1.3
array-includes: 3.1.8
array.prototype.flatmap: 1.3.2
ast-types-flow: 0.0.8
axe-core: 4.10.0
- axobject-query: 3.1.1
+ axobject-query: 4.1.0
damerau-levenshtein: 1.0.8
emoji-regex: 9.2.2
es-iterator-helpers: 1.0.19
- eslint: 8.57.0
+ eslint: 8.57.1
hasown: 2.0.2
jsx-ast-utils: 3.3.5
language-tags: 1.0.9
@@ -1744,27 +1744,27 @@ packages:
string.prototype.includes: 2.0.0
dev: true
- /eslint-plugin-markdown@3.0.1(eslint@8.57.0):
+ /eslint-plugin-markdown@3.0.1(eslint@8.57.1):
resolution: {integrity: sha512-8rqoc148DWdGdmYF6WSQFT3uQ6PO7zXYgeBpHAOAakX/zpq+NvFYbDA/H7PYzHajwtmaOzAwfxyl++x0g1/N9A==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
dependencies:
- eslint: 8.57.0
+ eslint: 8.57.1
mdast-util-from-markdown: 0.8.5
transitivePeerDependencies:
- supports-color
dev: true
- /eslint-plugin-mdx@3.1.5(eslint@8.57.0):
+ /eslint-plugin-mdx@3.1.5(eslint@8.57.1):
resolution: {integrity: sha512-lUE7tP7IrIRHU3gTtASDe5u4YM2SvQveYVJfuo82yn3MLh/B/v05FNySURCK4aIxIYF1QYo3IRemQG/lyQzpAg==}
engines: {node: '>=18.0.0'}
peerDependencies:
eslint: '>=8.0.0'
dependencies:
- eslint: 8.57.0
- eslint-mdx: 3.1.5(eslint@8.57.0)
- eslint-plugin-markdown: 3.0.1(eslint@8.57.0)
+ eslint: 8.57.1
+ eslint-mdx: 3.1.5(eslint@8.57.1)
+ eslint-plugin-markdown: 3.0.1(eslint@8.57.1)
remark-mdx: 3.0.1
remark-parse: 11.0.0
remark-stringify: 11.0.0
@@ -1776,16 +1776,16 @@ packages:
- supports-color
dev: true
- /eslint-plugin-prefer-arrow-functions@3.4.1(eslint@8.57.0):
+ /eslint-plugin-prefer-arrow-functions@3.4.1(eslint@8.57.1):
resolution: {integrity: sha512-c8NP0E8xpkRqDq2eDSRr+wA4jwkwOEVNnZx4YY3O0V9M7OhtKdQIj5zmzIXwu+ueURmbwYrnz65sEoLLoIVZpg==}
engines: {node: '>=18.0.0'}
peerDependencies:
eslint: '>=8.0.0'
dependencies:
- eslint: 8.57.0
+ eslint: 8.57.1
dev: true
- /eslint-plugin-prettier@4.2.1(eslint-config-prettier@8.10.0)(eslint@8.57.0)(prettier@3.3.3):
+ /eslint-plugin-prettier@4.2.1(eslint-config-prettier@8.10.0)(eslint@8.57.1)(prettier@3.3.3):
resolution: {integrity: sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==}
engines: {node: '>=12.0.0'}
peerDependencies:
@@ -1796,23 +1796,23 @@ packages:
eslint-config-prettier:
optional: true
dependencies:
- eslint: 8.57.0
- eslint-config-prettier: 8.10.0(eslint@8.57.0)
+ eslint: 8.57.1
+ eslint-config-prettier: 8.10.0(eslint@8.57.1)
prettier: 3.3.3
prettier-linter-helpers: 1.0.0
dev: true
- /eslint-plugin-react-hooks@4.6.2(eslint@8.57.0):
+ /eslint-plugin-react-hooks@4.6.2(eslint@8.57.1):
resolution: {integrity: sha512-QzliNJq4GinDBcD8gPB5v0wh6g8q3SUi6EFF0x8N/BL9PoVs0atuGc47ozMRyOWAKdwaZ5OnbOEa3WR+dSGKuQ==}
engines: {node: '>=10'}
peerDependencies:
eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0
dependencies:
- eslint: 8.57.0
+ eslint: 8.57.1
dev: true
- /eslint-plugin-react@7.35.0(eslint@8.57.0):
- resolution: {integrity: sha512-v501SSMOWv8gerHkk+IIQBkcGRGrO2nfybfj5pLxuJNFTPxxA3PSryhXTK+9pNbtkggheDdsC0E9Q8CuPk6JKA==}
+ /eslint-plugin-react@7.36.1(eslint@8.57.1):
+ resolution: {integrity: sha512-/qwbqNXZoq+VP30s1d4Nc1C5GTxjJQjk4Jzs4Wq2qzxFM7dSmuG2UkIjg2USMLh3A/aVcUNrK7v0J5U1XEGGwA==}
engines: {node: '>=4'}
peerDependencies:
eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7
@@ -1823,7 +1823,7 @@ packages:
array.prototype.tosorted: 1.1.4
doctrine: 2.1.0
es-iterator-helpers: 1.0.19
- eslint: 8.57.0
+ eslint: 8.57.1
estraverse: 5.3.0
hasown: 2.0.2
jsx-ast-utils: 3.3.5
@@ -1851,23 +1851,23 @@ packages:
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
dev: true
- /eslint@8.57.0:
- resolution: {integrity: sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==}
+ /eslint@8.57.1:
+ resolution: {integrity: sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
hasBin: true
dependencies:
- '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0)
- '@eslint-community/regexpp': 4.11.0
+ '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.1)
+ '@eslint-community/regexpp': 4.11.1
'@eslint/eslintrc': 2.1.4
- '@eslint/js': 8.57.0
- '@humanwhocodes/config-array': 0.11.14
+ '@eslint/js': 8.57.1
+ '@humanwhocodes/config-array': 0.13.0
'@humanwhocodes/module-importer': 1.0.1
'@nodelib/fs.walk': 1.2.8
'@ungap/structured-clone': 1.2.0
ajv: 6.12.6
chalk: 4.1.2
cross-spawn: 7.0.3
- debug: 4.3.6
+ debug: 4.3.7
doctrine: 3.0.0
escape-string-regexp: 4.0.0
eslint-scope: 7.2.2
@@ -2026,8 +2026,8 @@ packages:
resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==}
dev: true
- /follow-redirects@1.15.6:
- resolution: {integrity: sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==}
+ /follow-redirects@1.15.9:
+ resolution: {integrity: sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==}
engines: {node: '>=4.0'}
peerDependencies:
debug: '*'
@@ -2132,8 +2132,8 @@ packages:
get-intrinsic: 1.2.4
dev: true
- /get-tsconfig@4.8.0:
- resolution: {integrity: sha512-Pgba6TExTZ0FJAn1qkJAjIeKoDJ3CsI2ChuLohJnZl/tTU8MVrq3b+2t5UOPfRa4RMsorClBjJALkJUMjG1PAw==}
+ /get-tsconfig@4.8.1:
+ resolution: {integrity: sha512-k9PN+cFBmaLWtVz29SkUoqU5O0slLuHJXt/2P+tMVFT+phsSGXGkp9t3rQIqdz0e+06EHNGs3oM6ZX1s2zHxRg==}
dependencies:
resolve-pkg-maps: 1.0.0
dev: true
@@ -2401,8 +2401,8 @@ packages:
has-tostringtag: 1.0.2
dev: true
- /is-bun-module@1.1.0:
- resolution: {integrity: sha512-4mTAVPlrXpaN3jtF0lsnPCMGnq4+qZjVIKq0HCpfcqf8OC1SM5oATCIAPM5V5FN05qp2NNnFndphmdZS9CV3hA==}
+ /is-bun-module@1.2.1:
+ resolution: {integrity: sha512-AmidtEM6D6NmUiLOvvU7+IePxjEjOzra2h0pSrsfSAcXwl/83zLLXDByafUJy9k/rKK0pvXMLdwKwGHlX2Ke6Q==}
dependencies:
semver: 7.6.3
dev: true
@@ -2778,8 +2778,8 @@ packages:
- supports-color
dev: true
- /mdast-util-mdx-expression@2.0.0:
- resolution: {integrity: sha512-fGCu8eWdKUKNu5mohVGkhBXCXGnOTLuFqOvGMvdikr+J1w7lDJgxThOKpwRWzzbyXAU2hhSwsmssOY4yTokluw==}
+ /mdast-util-mdx-expression@2.0.1:
+ resolution: {integrity: sha512-J6f+9hUp+ldTZqKRSg7Vw5V6MqjATc+3E4gf3CFNcuZNWD8XdyI6zQ8GqH7f8169MM6P7hMBRDVGnn7oHB9kXQ==}
dependencies:
'@types/estree-jsx': 1.0.5
'@types/hast': 3.0.4
@@ -2814,7 +2814,7 @@ packages:
resolution: {integrity: sha512-JfbYLAW7XnYTTbUsmpu0kdBUVe+yKVJZBItEjwyYJiDJuZ9w4eeaqks4HQO+R7objWgS2ymV60GYpI14Ug554w==}
dependencies:
mdast-util-from-markdown: 2.0.1
- mdast-util-mdx-expression: 2.0.0
+ mdast-util-mdx-expression: 2.0.1
mdast-util-mdx-jsx: 3.1.3
mdast-util-mdxjs-esm: 2.0.1
mdast-util-to-markdown: 2.1.0
@@ -2894,9 +2894,9 @@ packages:
/micromark-extension-mdx-expression@3.0.0:
resolution: {integrity: sha512-sI0nwhUDz97xyzqJAbHQhp5TfaxEvZZZ2JDqUo+7NvyIYG6BZ5CPPqj2ogUoPJlmXHBnyZUzISg9+oUmU6tUjQ==}
dependencies:
- '@types/estree': 1.0.5
+ '@types/estree': 1.0.6
devlop: 1.1.0
- micromark-factory-mdx-expression: 2.0.1
+ micromark-factory-mdx-expression: 2.0.2
micromark-factory-space: 2.0.0
micromark-util-character: 2.1.0
micromark-util-events-to-acorn: 2.0.2
@@ -2904,16 +2904,17 @@ packages:
micromark-util-types: 2.0.0
dev: true
- /micromark-extension-mdx-jsx@3.0.0:
- resolution: {integrity: sha512-uvhhss8OGuzR4/N17L1JwvmJIpPhAd8oByMawEKx6NVdBCbesjH4t+vjEp3ZXft9DwvlKSD07fCeI44/N0Vf2w==}
+ /micromark-extension-mdx-jsx@3.0.1:
+ resolution: {integrity: sha512-vNuFb9czP8QCtAQcEJn0UJQJZA8Dk6DXKBqx+bg/w0WGuSxDxNr7hErW89tHUY31dUW4NqEOWwmEUNhjTFmHkg==}
dependencies:
'@types/acorn': 4.0.6
- '@types/estree': 1.0.5
+ '@types/estree': 1.0.6
devlop: 1.1.0
estree-util-is-identifier-name: 3.0.0
- micromark-factory-mdx-expression: 2.0.1
+ micromark-factory-mdx-expression: 2.0.2
micromark-factory-space: 2.0.0
micromark-util-character: 2.1.0
+ micromark-util-events-to-acorn: 2.0.2
micromark-util-symbol: 2.0.0
micromark-util-types: 2.0.0
vfile-message: 4.0.2
@@ -2928,7 +2929,7 @@ packages:
/micromark-extension-mdxjs-esm@3.0.0:
resolution: {integrity: sha512-DJFl4ZqkErRpq/dAPyeWp15tGrcrrJho1hKK5uBS70BCtfrIFg81sqcTVu3Ta+KD1Tk5vAtBNElWxtAa+m8K9A==}
dependencies:
- '@types/estree': 1.0.5
+ '@types/estree': 1.0.6
devlop: 1.1.0
micromark-core-commonmark: 2.0.1
micromark-util-character: 2.1.0
@@ -2945,7 +2946,7 @@ packages:
acorn: 8.12.1
acorn-jsx: 5.3.2(acorn@8.12.1)
micromark-extension-mdx-expression: 3.0.0
- micromark-extension-mdx-jsx: 3.0.0
+ micromark-extension-mdx-jsx: 3.0.1
micromark-extension-mdx-md: 2.0.0
micromark-extension-mdxjs-esm: 3.0.0
micromark-util-combine-extensions: 2.0.0
@@ -2969,11 +2970,12 @@ packages:
micromark-util-types: 2.0.0
dev: true
- /micromark-factory-mdx-expression@2.0.1:
- resolution: {integrity: sha512-F0ccWIUHRLRrYp5TC9ZYXmZo+p2AM13ggbsW4T0b5CRKP8KHVRB8t4pwtBgTxtjRmwrK0Irwm7vs2JOZabHZfg==}
+ /micromark-factory-mdx-expression@2.0.2:
+ resolution: {integrity: sha512-5E5I2pFzJyg2CtemqAbcyCktpHXuJbABnsb32wX2U8IQKhhVFBqkcZR5LRm1WVoFqa4kTueZK4abep7wdo9nrw==}
dependencies:
- '@types/estree': 1.0.5
+ '@types/estree': 1.0.6
devlop: 1.1.0
+ micromark-factory-space: 2.0.0
micromark-util-character: 2.1.0
micromark-util-events-to-acorn: 2.0.2
micromark-util-symbol: 2.0.0
@@ -3058,7 +3060,7 @@ packages:
resolution: {integrity: sha512-Fk+xmBrOv9QZnEDguL9OI9/NQQp6Hz4FuQ4YmCb/5V7+9eAh1s6AYSvL20kHkD67YIg7EpE54TiSlcsf3vyZgA==}
dependencies:
'@types/acorn': 4.0.6
- '@types/estree': 1.0.5
+ '@types/estree': 1.0.6
'@types/unist': 3.0.3
devlop: 1.1.0
estree-util-visit: 2.0.0
@@ -3111,7 +3113,7 @@ packages:
/micromark@2.11.4:
resolution: {integrity: sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA==}
dependencies:
- debug: 4.3.6
+ debug: 4.3.7
parse-entities: 2.0.0
transitivePeerDependencies:
- supports-color
@@ -3121,7 +3123,7 @@ packages:
resolution: {integrity: sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==}
dependencies:
'@types/debug': 4.1.12
- debug: 4.3.6
+ debug: 4.3.7
decode-named-character-reference: 1.0.2
devlop: 1.1.0
micromark-core-commonmark: 2.0.1
@@ -3195,10 +3197,6 @@ packages:
engines: {node: '>=4'}
dev: true
- /ms@2.1.2:
- resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==}
- dev: true
-
/ms@2.1.3:
resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
dev: true
@@ -3241,7 +3239,7 @@ packages:
'@next/env': 14.2.7
'@swc/helpers': 0.5.5
busboy: 1.6.0
- caniuse-lite: 1.0.30001655
+ caniuse-lite: 1.0.30001662
graceful-fs: 4.2.11
postcss: 8.4.31
react: 18.2.0
@@ -3501,8 +3499,8 @@ packages:
engines: {node: '>=8'}
dev: true
- /picocolors@1.0.1:
- resolution: {integrity: sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==}
+ /picocolors@1.1.0:
+ resolution: {integrity: sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==}
/picomatch@2.3.1:
resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
@@ -3533,29 +3531,29 @@ packages:
engines: {node: '>= 0.4'}
dev: true
- /postcss-import@15.1.0(postcss@8.4.43):
+ /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.43
+ 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.43):
+ /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.43
+ postcss: 8.4.47
dev: true
- /postcss-load-config@4.0.2(postcss@8.4.43):
+ /postcss-load-config@4.0.2(postcss@8.4.47):
resolution: {integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==}
engines: {node: '>= 14'}
peerDependencies:
@@ -3568,17 +3566,17 @@ packages:
optional: true
dependencies:
lilconfig: 3.1.2
- postcss: 8.4.43
- yaml: 2.5.0
+ postcss: 8.4.47
+ yaml: 2.5.1
dev: true
- /postcss-nested@6.2.0(postcss@8.4.43):
+ /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.43
+ postcss: 8.4.47
postcss-selector-parser: 6.1.2
dev: true
@@ -3599,17 +3597,17 @@ packages:
engines: {node: ^10 || ^12 || >=14}
dependencies:
nanoid: 3.3.7
- picocolors: 1.0.1
- source-map-js: 1.2.0
+ picocolors: 1.1.0
+ source-map-js: 1.2.1
dev: false
- /postcss@8.4.43:
- resolution: {integrity: sha512-gJAQVYbh5R3gYm33FijzCZj7CHyQ3hWMgJMprLUlIYqCwTeZhBQ19wp0e9mA25BUbEvY5+EXuuaAjqQsrBxQBQ==}
+ /postcss@8.4.47:
+ resolution: {integrity: sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==}
engines: {node: ^10 || ^12 || >=14}
dependencies:
nanoid: 3.3.7
- picocolors: 1.0.1
- source-map-js: 1.2.0
+ picocolors: 1.1.0
+ source-map-js: 1.2.1
dev: true
/prelude-ls@1.2.1:
@@ -3936,8 +3934,8 @@ packages:
engines: {node: '>=8'}
dev: true
- /source-map-js@1.2.0:
- resolution: {integrity: sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==}
+ /source-map-js@1.2.1:
+ resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==}
engines: {node: '>=0.10.0'}
/spdx-correct@3.2.0:
@@ -4084,7 +4082,7 @@ packages:
resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==}
engines: {node: '>=12'}
dependencies:
- ansi-regex: 6.0.1
+ ansi-regex: 6.1.0
dev: true
/strip-bom@3.0.0:
@@ -4167,8 +4165,8 @@ packages:
tslib: 2.7.0
dev: true
- /tailwindcss@3.4.10:
- resolution: {integrity: sha512-KWZkVPm7yJRhdu4SRSl9d4AK2wM3a50UsvgHZO7xY77NQr2V+fIrEuoDGQcbvswWvFGbS2f6e+jC/6WJm1Dl0w==}
+ /tailwindcss@3.4.12:
+ resolution: {integrity: sha512-Htf/gHj2+soPb9UayUNci/Ja3d8pTmu9ONTfh4QY8r3MATTZOzmv6UYWF7ZwikEIC8okpfqmGqrmDehua8mF8w==}
engines: {node: '>=14.0.0'}
hasBin: true
dependencies:
@@ -4185,12 +4183,12 @@ packages:
micromatch: 4.0.8
normalize-path: 3.0.0
object-hash: 3.0.0
- picocolors: 1.0.1
- postcss: 8.4.43
- postcss-import: 15.1.0(postcss@8.4.43)
- postcss-js: 4.0.1(postcss@8.4.43)
- postcss-load-config: 4.0.2(postcss@8.4.43)
- postcss-nested: 6.2.0(postcss@8.4.43)
+ picocolors: 1.1.0
+ 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
@@ -4231,13 +4229,13 @@ packages:
resolution: {integrity: sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==}
dev: true
- /ts-api-utils@1.3.0(typescript@5.5.4):
+ /ts-api-utils@1.3.0(typescript@5.6.2):
resolution: {integrity: sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==}
engines: {node: '>=16'}
peerDependencies:
typescript: '>=4.2.0'
dependencies:
- typescript: 5.5.4
+ typescript: 5.6.2
dev: true
/ts-interface-checker@0.1.13:
@@ -4321,8 +4319,8 @@ packages:
resolution: {integrity: sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==}
dev: true
- /typescript@5.5.4:
- resolution: {integrity: sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==}
+ /typescript@5.6.2:
+ resolution: {integrity: sha512-NW8ByodCSNCwZeghjN3o+JX5OFH0Ojg6sadjEKY4huZ52TqbJTJnDo5+Tw98lSy63NZvi4n+ez5m2u5d4PkZyw==}
engines: {node: '>=14.17'}
hasBin: true
dev: true
@@ -4346,10 +4344,10 @@ packages:
'@types/concat-stream': 2.0.3
'@types/debug': 4.1.12
'@types/is-empty': 1.2.3
- '@types/node': 20.16.3
+ '@types/node': 20.16.5
'@types/unist': 3.0.3
concat-stream: 2.0.0
- debug: 4.3.6
+ debug: 4.3.7
extend: 3.0.2
glob: 10.4.5
ignore: 5.3.2
@@ -4363,7 +4361,7 @@ packages:
vfile-message: 4.0.2
vfile-reporter: 8.1.1
vfile-statistics: 3.0.0
- yaml: 2.5.0
+ yaml: 2.5.1
transitivePeerDependencies:
- bluebird
- supports-color
@@ -4626,8 +4624,8 @@ packages:
resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}
dev: true
- /yaml@2.5.0:
- resolution: {integrity: sha512-2wWLbGbYDiSqqIKoPjar3MPgB94ErzCtrNE1FdqGuaO0pi2JGjmE8aW8TDZwzU7vuxcGRdL/4gPQwQ7hD5AMSw==}
+ /yaml@2.5.1:
+ resolution: {integrity: sha512-bLQOjaX/ADgQ20isPJRvF0iRUHIxVhYvr53Of7wGcWlO2jvtUlH5m87DsmulFVxRpNLOnI4tB6p/oh8D7kpn9Q==}
engines: {node: '>= 14'}
hasBin: true
dev: true
@@ -4642,7 +4640,7 @@ packages:
dev: true
file:../../design-system/out/kl-design-system-1.0.1.tgz(framer-motion@4.1.17)(react-dom@18.3.1)(react@18.2.0):
- resolution: {integrity: sha512-B4dI/qL5nQGk+vMIgmmKFoKZlReCP753yGVD0I0UMNx8TdzB3sHu6l162CLLJGz5fV/4vE8qApBqVbNCmytIWQ==, tarball: file:../../design-system/out/kl-design-system-1.0.1.tgz}
+ resolution: {integrity: sha512-oetCZ4l/auJBtk88ONXil1zjEUV76tFVCQap23+KPbjvg3n+Il0MK4Tgl3Tl8hHlc1zZ2YPTxD7WpWpYZlYjag==, 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/webinar/src/app/[eventHash]/join/components/events-ui.tsx b/src/apps/webinar/src/app/[eventHash]/join/components/events-ui.tsx
new file mode 100644
index 000000000..9809ed52f
--- /dev/null
+++ b/src/apps/webinar/src/app/[eventHash]/join/components/events-ui.tsx
@@ -0,0 +1,83 @@
+"use client";
+import { DyteProvider, useDyteClient } from '@dytesdk/react-web-core';
+import axios from 'axios';
+import { useParams } from 'next/navigation';
+import { useEffect, useState } from 'react';
+import eventsData from '~/root/lib/shared-statics/events.json';
+import { MyMeetingUI } from '../../../orgs/my-meeting-ui';
+//@ts-ignore
+
+type UesrData = {
+ id: string,
+ email: string,
+ verified: boolean,
+ name: string,
+ approved: boolean,
+}
+
+export const EventsUi = ({ userData, dyteOrgId, dyteApiKey }: { userData: UesrData, dyteOrgId: string, dyteApiKey: string }) => {
+ const [meeting, initMeeting] = useDyteClient();
+ const [authToken, setAuthToken] = useState('');
+
+ const params = useParams();
+ const selectedEventHash = params.eventHash as string;
+
+ const handleJoinMeeting = async ({ name, email, meetingId }: { name: string, email: string, meetingId: string }) => {
+ const token = btoa(`${dyteOrgId}:${dyteApiKey}`);
+ try {
+ const { data: { success, data } } = await axios.post(
+ `https://api.dyte.io/v2/meetings/${meetingId}/participants`,
+ {
+ name,
+ picture: "https://i.imgur.com/test.jpg",
+ preset_name: "webinar_viewer",
+ custom_participant_id: email,
+ },
+ {
+ headers: {
+ Authorization: `Basic ${token}`,
+ },
+ }
+ );
+ if (!success) {
+ throw new Error('Failed to join meeting');
+ }
+ setAuthToken(data.token);
+ } catch (error) {
+ console.error(error);
+ }
+ };
+
+ useEffect(() => {
+ //@ts-ignore
+ const selectedEvents = eventsData[selectedEventHash];
+ const meetingId = selectedEvents.dyteMeetingId;
+ const name = userData.name;
+ const email = userData.email;
+
+ if (meetingId && name && email) {
+ (async () => {
+ await handleJoinMeeting({ name, email, meetingId });
+ })();
+ }
+ }, [params]);
+
+ useEffect(() => {
+ if (authToken) {
+ initMeeting({
+ authToken: authToken,
+ defaults: {
+ audio: false,
+ video: false,
+ },
+ });
+ }
+ }, [authToken]);
+
+
+ return (
+
+
+
+ );
+}
\ No newline at end of file
diff --git a/src/apps/webinar/src/app/[eventHash]/join/page.tsx b/src/apps/webinar/src/app/[eventHash]/join/page.tsx
new file mode 100644
index 000000000..6c05e7c13
--- /dev/null
+++ b/src/apps/webinar/src/app/[eventHash]/join/page.tsx
@@ -0,0 +1,74 @@
+import axios from 'axios';
+import { Suspense } from 'react';
+import { EventsUi } from './components/events-ui';
+//@ts-ignore
+import { cookies } from 'next/headers';
+import { redirect } from "next/navigation";
+
+
+type EnvVars = {
+ dyteOrgId: string,
+ dyteApiKey: string,
+ dyteMeetingId: string,
+ marketApiUrl: string,
+}
+
+export default async function App(props: any) {
+
+ const dyteOrgId = process.env.DYTE_ORG_ID || "";
+ const dyteApiKey = process.env.DYTE_API_KEY || "";
+
+ const cookie = cookies().get("hotspot-session")
+ const callbackUrl = props.searchParams.eventHashUrl || process.env.CALLBACK_URL;
+ const redirectUrl = `${process.env.REDIRECT_URL}?callback=${callbackUrl}`;
+ const token = btoa(`${process.env.DYTE_ORG_ID}:${process.env.DYTE_API_KEY}`);
+
+ try {
+ const res = await axios({
+ url: `${process.env.AUTH_URL}/api` || 'https://auth.kloudlite.io/api',
+ method: 'post',
+ data: {
+ method: 'whoAmI',
+ args: [{}],
+ },
+ headers: {
+ 'Content-Type': 'application/json; charset=utf-8',
+ connection: 'keep-alive',
+ cookie: 'hotspot-session=' + cookie?.value + ';',
+ },
+ });
+
+ const { data: { success, data } } = await axios.get(
+ `https://api.dyte.io/v2/meetings/${process.env.DYTE_MEETING_ID}`,
+ {
+ headers: {
+ Authorization: `Basic ${token}`,
+ }
+ }
+ )
+ if (!success) {
+ throw new Error('Failed to get meeting details');
+ }
+
+ const userDetails = res.data.data;
+ if (userDetails) {
+
+ const envVars: EnvVars = {
+ dyteOrgId: process.env.DYTE_ORG_ID as string,
+ dyteApiKey: process.env.DYTE_API_KEY as string,
+ dyteMeetingId: process.env.DYTE_MEETING_ID as string,
+ marketApiUrl: process.env.MARKETING_API_URL as string,
+ }
+
+ return (
+
+
+
+
+ );
+ }
+ redirect(redirectUrl);
+ } catch (e) {
+ redirect(redirectUrl);
+ }
+}
diff --git a/src/apps/webinar/src/app/api/get-envs/route.tsx b/src/apps/webinar/src/app/api/get-envs/route.tsx
new file mode 100644
index 000000000..73db5d02e
--- /dev/null
+++ b/src/apps/webinar/src/app/api/get-envs/route.tsx
@@ -0,0 +1,19 @@
+import { NextResponse } from "next/server";
+
+export async function GET() {
+ // console.log("all-env", process.env)
+
+ const dyteOrgId = process.env.NEXT_PUBLIC_DYTE_ORG_ID;
+ const dyteApiKey = process.env.NEXT_PUBLIC_DYTE_API_KEY;
+ const dyteMeetingId = process.env.NEXT_PUBLIC_DYTE_MEETING_ID;
+ const marketApiUrl = process.env.NEXT_PUBLIC_MARKETING_API_URL;
+
+
+
+ return NextResponse.json({
+ dyteOrgId,
+ dyteApiKey,
+ dyteMeetingId,
+ marketApiUrl,
+ });
+}
\ No newline at end of file
diff --git a/src/apps/webinar/src/app/api/get-user/route.ts b/src/apps/webinar/src/app/api/get-user/route.ts
index 6a852f0ec..34e91944a 100644
--- a/src/apps/webinar/src/app/api/get-user/route.ts
+++ b/src/apps/webinar/src/app/api/get-user/route.ts
@@ -4,6 +4,11 @@
import { NextResponse } from "next/server";
+// export async function GET(request: NextRequest) {
+// const url = request.url;
+// return new Response(JSON.stringify({ url }), { status: 200 });
+// }
+
// // To handle a GET request to /api
// export async function GET(request) {
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..e14694fd5
--- /dev/null
+++ b/src/apps/webinar/src/app/components/container.tsx
@@ -0,0 +1,27 @@
+//@ts-ignore
+import { cn } from 'kl-design-system/utils';
+import { 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..25eb5eb4a
--- /dev/null
+++ b/src/apps/webinar/src/app/components/header.tsx
@@ -0,0 +1,34 @@
+//@ts-ignore
+import { Button } from 'kl-design-system/atoms/button';
+//@ts-ignore
+import { BrandLogo } from 'kl-design-system/branding/brand-logo';
+import { 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/join-webinar.tsx b/src/apps/webinar/src/app/components/join-webinar.tsx
index ca0d0b97f..c332a14f3 100644
--- a/src/apps/webinar/src/app/components/join-webinar.tsx
+++ b/src/apps/webinar/src/app/components/join-webinar.tsx
@@ -2,6 +2,10 @@
import { ArrowRightLg } from '@jengaicons/react';
//@ts-ignore
import { Button } from 'kl-design-system/atoms/button';
+import Link from 'next/link';
+import { useRouter } from "next/navigation";
+
+
type UesrData = {
id: string,
@@ -11,22 +15,29 @@ 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 }) => {
+
+ const router = useRouter()
+
return (
-
Join}
- suffix={}
- disabled={meetingStatus !== 'ACTIVE'}
- block
- onClick={() => {
- window.location.href = `/pages/meeting?email=${userData.email}&name=${userData.name}&meetingId=${process.env.NEXT_PUBLIC_DYTE_MEETING_ID}`
- }}
- />
+
+ {meetingStatus === 'ACTIVE' ? 'Join' : 'Meeting is not active'}}
+ suffix={meetingStatus === 'ACTIVE' ? : null}
+ disabled={meetingStatus !== 'ACTIVE'}
+ block
+ // onClick={() => {
+ // // 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}`
+ // // router.push(`/pages/meeting?email=${userData.email}&name=${userData.name}&meetingId=${meetingId}`)
+ // }}
+ />
+
)
}
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/components/wrapper.tsx b/src/apps/webinar/src/app/components/wrapper.tsx
new file mode 100644
index 000000000..55b940654
--- /dev/null
+++ b/src/apps/webinar/src/app/components/wrapper.tsx
@@ -0,0 +1,24 @@
+//@ts-ignore
+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/favicon.ico b/src/apps/webinar/src/app/favicon.ico
index 718d6fea4..13f35b4e3 100644
Binary files a/src/apps/webinar/src/app/favicon.ico and b/src/apps/webinar/src/app/favicon.ico differ
diff --git a/src/apps/webinar/src/app/layout.tsx b/src/apps/webinar/src/app/layout.tsx
index 25ff529bf..e1ad0b5ef 100644
--- a/src/apps/webinar/src/app/layout.tsx
+++ b/src/apps/webinar/src/app/layout.tsx
@@ -1,13 +1,42 @@
import 'kl-design-system/index.css';
-import type { Metadata } from "next";
-import { Inter } from "next/font/google";
-import "./globals.css";
-const inter = Inter({ subsets: ["latin"] });
+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';
+
+const inter = Inter({ subsets: ['latin'] });
export const metadata: Metadata = {
- title: "Create Next App",
- description: "Generated by create next app",
+ title: 'Kloudlite Events',
+ description: 'Generated by create next app',
+};
+
+const getServerEnv = () => {
+ return {
+ ...(process.env.MARKETING_API_URL
+ ? { MARKETING_API_URL: process.env.MARKETING_API_URL }
+ : {}),
+ ...(process.env.DYTE_ORG_ID
+ ? { DYTE_ORG_ID: process.env.DYTE_ORG_ID }
+ : {}),
+ ...(process.env.DYTE_API_KEY
+ ? { DYTE_API_KEY: process.env.DYTE_API_KEY }
+ : {}),
+ ...(process.env.DYTE_MEETING_ID
+ ? { DYTE_MEETING_ID: process.env.DYTE_MEETING_ID }
+ : {}),
+ };
+};
+
+const getClientEnv = (env: any) => {
+ const { DYTE_ORG_ID, MARKETING_API_URL, DYTE_API_KEY, DYTE_MEETING_ID } = env;
+ return `
+${MARKETING_API_URL ? `window.MARKETING_API_URL = ${`'${MARKETING_API_URL}'`}` : ''}
+${DYTE_ORG_ID ? `window.DYTE_ORG_ID = ${`'${DYTE_ORG_ID}'`}` : ''}
+${DYTE_API_KEY ? `window.DYTE_API_KEY = ${`'${DYTE_API_KEY}'`}` : ''}
+${DYTE_MEETING_ID ? `window.DYTE_MEETING_ID = ${`'${DYTE_MEETING_ID}'`}` : ''}`;
};
export default function RootLayout({
@@ -15,9 +44,23 @@ export default function RootLayout({
}: Readonly<{
children: React.ReactNode;
}>) {
+ const env = getServerEnv();
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
new file mode 100644
index 000000000..9deded140
--- /dev/null
+++ b/src/apps/webinar/src/app/orgs/webinar-ui.tsx
@@ -0,0 +1,221 @@
+'use client';
+//@ts-ignore
+import { Button } from 'kl-design-system/atoms/button';
+//@ts-ignore
+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';
+//@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';
+import useEnv from '../utils/use-env';
+
+
+type WebinarUIProps = {
+ userDetails: any;
+ meetingStatus: string;
+};
+
+// {eventName, dyte-meeting-id, date-time}
+
+// check if event is live if live show join or else show register
+
+// kloudlite.io/events/code-unbound-webinar-event-1/join
+// check if user is logged in . If not redirect to login page. After login redirect to kloudlite.io/events/code-unbound-webinar-event-1/join
+// check if user is registered . if event is live take him to the event
+// else send him the email thanking for registering, If possible calendar invite
+
+// kloudlite.io/events/code-unbound-webinar-event-1
+
+export const WebinarUI = ({ userDetails, meetingStatus }: WebinarUIProps) => {
+ const env = useEnv();
+ const [visible, setVisible] = useState(false);
+
+ return (
+ {
+ setVisible(true);
+ }}
+ />
+ }
+ >
+
+
+
+
+
+ Join Kloudlite webinar
+
+
+ Join webinar and experience the power of Kloudlite
+
+
+
+
+ {visible && (
+
+ )}
+
+
+
+
+ );
+};
+
+const HandleRegisterForm = ({
+ visible,
+ setVisible,
+ marketApiUrl,
+}: {
+ visible: boolean;
+ setVisible: (v: boolean) => void;
+ marketApiUrl: string;
+}) => {
+ const [formData, setFormData] = useState({
+ name: '',
+ companyName: '',
+ email: '',
+ country: '',
+ mobileNo: '',
+ message: '',
+ });
+
+ const handleInputChange = (e: any) => {
+ setFormData({ ...formData, [e.target.name]: e.target.value });
+ };
+
+ 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: any) {
+ if (error.response && error.response.status === 400) {
+ toast.error("You are already registered for this event.");
+ } else {
+ toast.error("Error while registering to Kloudlite events.");
+ }
+ // toast.error('Error while registering to kloudlite events');
+ }
+ };
+
+ return (
+
+
+
+
+
+
+ setVisible(false)}
+ />
+
+
+
+
+ );
+};
diff --git a/src/apps/webinar/src/app/page.tsx b/src/apps/webinar/src/app/page.tsx
index d3d5b25b9..23dc5190d 100644
--- a/src/apps/webinar/src/app/page.tsx
+++ b/src/apps/webinar/src/app/page.tsx
@@ -1,23 +1,22 @@
import axios from 'axios';
//@ts-ignore
-import { cn } from 'kl-design-system/utils';
import { cookies } from 'next/headers';
-import { redirect } from "next/navigation";
-import { JoinWebinar } from './components/join-webinar';
+import { redirect } from 'next/navigation';
+import { WebinarUI } from './orgs/webinar-ui';
-export default async function Home() {
+export default async function Home(props: any) {
const cookie = cookies().get("hotspot-session")
- // const callbackUrl = "https://auth-piyush.dev.kloudlite.io";
- // const redirectUrl = "https://auth.dev.kloudlite.io/login?callback=" + callbackUrl;
- const callbackUrl = process.env.NEXT_PUBLIC_Callback_URL;
- const redirectUrl = `${process.env.NEXT_PUBLIC_REDIRECT_URL}?callback=${callbackUrl}`;
- const token = btoa(`${process.env.NEXT_PUBLIC_DYTE_ORG_ID}:${process.env.NEXT_PUBLIC_DYTE_API_KEY}`);
+ const callbackUrl = props.searchParams.eventHashUrl || process.env.CALLBACK_URL;
+ const redirectUrl = `${process.env.REDIRECT_URL}?callback=${callbackUrl}`;
+ const token = btoa(`${process.env.DYTE_ORG_ID}:${process.env.DYTE_API_KEY}`);
+
+ console.log("props", props.searchParams.eventHashUrl)
try {
const res = await axios({
- url: `${process.env.NEXT_PUBLIC_AUTH_URL}/api` || 'https://auth.kloudlite.io/api',
+ url: `${process.env.AUTH_URL}/api` || 'https://auth.kloudlite.io/api',
method: 'post',
data: {
method: 'whoAmI',
@@ -30,14 +29,16 @@ export default async function Home() {
},
});
- const { data: { success, data } } = await axios.get(
- `https://api.dyte.io/v2/meetings/${process.env.NEXT_PUBLIC_DYTE_MEETING_ID}`,
+ const {
+ data: { success, data },
+ } = await axios.get(
+ `https://api.dyte.io/v2/meetings/${process.env.DYTE_MEETING_ID}`,
{
headers: {
Authorization: `Basic ${token}`,
- }
- }
- )
+ },
+ },
+ );
if (!success) {
throw new Error('Failed to get meeting details');
}
@@ -45,28 +46,13 @@ export default async function Home() {
const userDetails = res.data.data;
if (userDetails) {
return (
-
-
-
-
-
-
- Join Kloudlite webinar
-
-
- Join webinar and experience the power of Kloudlite
-
-
-
-
-
-
-
+
+
+
);
}
redirect(redirectUrl);
} catch (e) {
redirect(redirectUrl);
}
-
}
diff --git a/src/apps/webinar/src/app/pages/meeting/components/meeting.tsx b/src/apps/webinar/src/app/pages/meeting/components/meeting.tsx
new file mode 100644
index 000000000..a2b655aa0
--- /dev/null
+++ b/src/apps/webinar/src/app/pages/meeting/components/meeting.tsx
@@ -0,0 +1,72 @@
+"use client";
+import { DyteProvider, useDyteClient } from '@dytesdk/react-web-core';
+import axios from 'axios';
+import { useSearchParams } from 'next/navigation';
+import { useEffect, useState } from 'react';
+import { MyMeetingUI } from '../../../orgs/my-meeting-ui';
+
+
+export const Meeting = ({ dyteOrgId, dyteApiKey }: { dyteOrgId: string, dyteApiKey: string }) => {
+ const [meeting, initMeeting] = useDyteClient();
+ const [authToken, setAuthToken] = useState('');
+
+ const params = useSearchParams();
+
+ const handleJoinMeeting = async ({ name, email, meetingId }: { name: string, email: string, meetingId: string }) => {
+
+ // const token = btoa(`${process.env.NEXT_PUBLIC_DYTE_ORG_ID}:${process.env.NEXT_PUBLIC_DYTE_API_KEY}`);
+ const token = btoa(`${dyteOrgId}:${dyteApiKey}`);
+ try {
+ const { data: { success, data } } = await axios.post(
+ `https://api.dyte.io/v2/meetings/${meetingId}/participants`,
+ {
+ name,
+ picture: "https://i.imgur.com/test.jpg",
+ preset_name: "webinar_viewer",
+ custom_participant_id: email,
+ },
+ {
+ headers: {
+ Authorization: `Basic ${token}`,
+ },
+ }
+ );
+ if (!success) {
+ throw new Error('Failed to join meeting');
+ }
+ setAuthToken(data.token);
+ } catch (error) {
+ console.error(error);
+ }
+ };
+
+ useEffect(() => {
+ const meetingId = params.get('meetingId');
+ const name = params.get('name');
+ const email = params.get('email');
+
+ if (meetingId && name && email) {
+ (async () => {
+ await handleJoinMeeting({ name, email, meetingId });
+ })();
+ }
+ }, [params]);
+
+ useEffect(() => {
+ if (authToken) {
+ initMeeting({
+ authToken: authToken,
+ defaults: {
+ audio: false,
+ video: false,
+ },
+ });
+ }
+ }, [authToken]);
+
+ return (
+
+
+
+ );
+}
\ No newline at end of file
diff --git a/src/apps/webinar/src/app/pages/meeting/page.tsx b/src/apps/webinar/src/app/pages/meeting/page.tsx
index 42a4a5b80..a91856bd4 100644
--- a/src/apps/webinar/src/app/pages/meeting/page.tsx
+++ b/src/apps/webinar/src/app/pages/meeting/page.tsx
@@ -1,78 +1,15 @@
-"use client";
-import { DyteProvider, useDyteClient } from '@dytesdk/react-web-core';
-import axios from 'axios';
-import { useSearchParams } from 'next/navigation';
-import { Suspense, useEffect, useState } from 'react';
-import { MyMeetingUI } from '../../orgs/my-meeting-ui';
+import { Suspense } from 'react';
+import { Meeting } from "./components/meeting";
-const Meeting = () => {
- const [meeting, initMeeting] = useDyteClient();
- const [authToken, setAuthToken] = useState('');
+export default async function App() {
- const params = useSearchParams();
+ const dyteOrgId = process.env.DYTE_ORG_ID || "";
+ const dyteApiKey = process.env.DYTE_API_KEY || "";
- const handleJoinMeeting = async ({ name, email, meetingId }: { name: string, email: string, meetingId: string }) => {
- const token = btoa(`${process.env.NEXT_PUBLIC_DYTE_ORG_ID}:${process.env.NEXT_PUBLIC_DYTE_API_KEY}`);
- try {
- const { data: { success, data } } = await axios.post(
- `https://api.dyte.io/v2/meetings/${meetingId}/participants`,
- {
- name,
- picture: "https://i.imgur.com/test.jpg",
- preset_name: "webinar_viewer",
- custom_participant_id: email,
- },
- {
- headers: {
- Authorization: `Basic ${token}`,
- },
- }
- );
- if (!success) {
- throw new Error('Failed to join meeting');
- }
- setAuthToken(data.token);
- } catch (error) {
- console.error(error);
- }
- };
-
- useEffect(() => {
- const meetingId = params.get('meetingId');
- const name = params.get('name');
- const email = params.get('email');
-
- if (meetingId && name && email) {
- (async () => {
- await handleJoinMeeting({ name, email, meetingId });
- })();
- }
- }, [params]);
-
- useEffect(() => {
- if (authToken) {
- initMeeting({
- authToken: authToken,
- defaults: {
- audio: false,
- video: false,
- },
- });
- }
- }, [authToken]);
-
- return (
-
-
-
- );
-}
-
-export default function App() {
return (
-
+
);
-}
\ No newline at end of file
+}
diff --git a/src/apps/webinar/src/app/utils/use-env.ts b/src/apps/webinar/src/app/utils/use-env.ts
new file mode 100644
index 000000000..21879bf90
--- /dev/null
+++ b/src/apps/webinar/src/app/utils/use-env.ts
@@ -0,0 +1,18 @@
+import { useEffect, useState } from 'react';
+declare global {
+ interface Window {
+ env: {
+ [key: string]: any;
+ };
+ }
+}
+
+const useEnv = () => {
+ const [env, setEnv] = useState({});
+ useEffect(() => {
+ setEnv(window);
+ });
+ return env;
+};
+
+export default useEnv;
diff --git a/src/design-system/pnpm-lock.yaml b/src/design-system/pnpm-lock.yaml
index 47ef598c9..9e4978d3e 100644
--- a/src/design-system/pnpm-lock.yaml
+++ b/src/design-system/pnpm-lock.yaml
@@ -27,8 +27,8 @@ devDependencies:
specifier: ^0.2.2
version: 0.2.2
'@types/uuid':
- specifier: ^9.0.7
- version: 9.0.7
+ specifier: 10.0.0
+ version: 10.0.0
'@vitejs/plugin-react':
specifier: ^4.2.1
version: 4.2.1(vite@4.5.3)
@@ -3510,6 +3510,10 @@ packages:
resolution: {integrity: sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==}
dev: true
+ /@types/uuid@10.0.0:
+ resolution: {integrity: sha512-7gqG38EyHgyP1S+7+xomFtL+ZNHcKv6DwNaCZmJmo1vgMugyF3TCnXVg4t1uk89mLNwnLtnY3TpOpCOyp1/xHQ==}
+ dev: true
+
/@types/uuid@9.0.7:
resolution: {integrity: sha512-WUtIVRUZ9i5dYXefDEAI7sh9/O7jGvHg7Df/5O/gtH3Yabe5odI3UWopVR1qbPXQtvOxWu3mM4XxlYeZtMWF4g==}
dev: true
diff --git a/src/generated/package.json b/src/generated/package.json
index 1771f15d3..60528374a 100644
--- a/src/generated/package.json
+++ b/src/generated/package.json
@@ -3,7 +3,7 @@
"version": "1.0.0",
"description": "",
"scripts": {
- "postinstall": "cd plugin && pnpm i",
+ "postinstall": "cd plugin && pnpm i --frozen-lockfile",
"json": "esbuild test/index.ts --bundle --format=cjs --outfile=test/index.cjs --platform=node && node test/index.cjs",
"build:plugin": "cd plugin && pnpm build",
"tsgen": "gql-gen --config codegen-sdl.yml & gql-gen --config codegen.yml",