From d828bcf1c4032d48819128f39de400267e726eb6 Mon Sep 17 00:00:00 2001 From: Eduardo <orthmann2811@gmail.com> Date: Tue, 26 Mar 2024 10:44:06 -0300 Subject: [PATCH] add plugin props --- locales/de.json | 3 +++ locales/en.json | 3 +++ .../[locale]/wallet/plugins/[plugin]/page.tsx | 19 +++++++++++++++++-- 3 files changed, 23 insertions(+), 2 deletions(-) diff --git a/locales/de.json b/locales/de.json index f7d42c9..6f0e869 100644 --- a/locales/de.json +++ b/locales/de.json @@ -133,5 +133,8 @@ "Issuance": { "title": "Ausgabe", "select": "Wählen" + }, + "Plugin": { + "not-found": "Plugin nicht gefunden" } } diff --git a/locales/en.json b/locales/en.json index f877637..b212499 100644 --- a/locales/en.json +++ b/locales/en.json @@ -133,5 +133,8 @@ "Issuance": { "title": "Issuance", "select": "Select" + }, + "Plugin": { + "not-found": "Plugin not found" } } \ No newline at end of file diff --git a/src/app/[locale]/wallet/plugins/[plugin]/page.tsx b/src/app/[locale]/wallet/plugins/[plugin]/page.tsx index 673eeab..0d144a7 100644 --- a/src/app/[locale]/wallet/plugins/[plugin]/page.tsx +++ b/src/app/[locale]/wallet/plugins/[plugin]/page.tsx @@ -3,6 +3,8 @@ import { RemoteComponent } from '@/RemoteComponent'; import { type Plugin as IPlugin } from '@/components/side-menu/WalletSideMenu'; import { useQueryClient } from '@tanstack/react-query'; +import { useTranslations } from 'next-intl'; +import { useAuth } from 'oidc-react'; import { useEffect, useState } from 'react'; interface PluginProps { @@ -14,6 +16,13 @@ interface PluginProps { const Plugin = ({ params }: PluginProps): JSX.Element => { const [PluginComponent, setPluginComponent] = useState<JSX.Element>(); const pluginDiscoveryData = useQueryClient().getQueryData<IPlugin[]>(['pluginDiscovery']); + const t = useTranslations('Plugin'); + const { userData } = useAuth(); + const pluginMetadata = { + example1: 'Example 1', + example2: 'Example 2', + example3: 'Example 3', + }; const fetchPluginData = (pluginDiscovery: IPlugin[], pluginRoute: string): void => { const foundPlugin = pluginDiscovery.find(plugin => plugin.route === pluginRoute); @@ -22,12 +31,18 @@ const Plugin = ({ params }: PluginProps): JSX.Element => { process.env.NODE_ENV !== 'development' ? process.env.ENV_URL : 'https://cloud-wallet.xfsc.dev' }/api/dynamic/plugins${foundPlugin?.url}/main.js`; - setPluginComponent(<RemoteComponent url={url} />); + setPluginComponent( + <RemoteComponent + url={url} + token={userData?.access_token} + metadata={pluginMetadata} + /> + ); }; useEffect(() => { if (!pluginDiscoveryData) { - setPluginComponent(<div>Plugin not found</div>); + setPluginComponent(<div>{t('not-found')}</div>); } else { fetchPluginData(pluginDiscoveryData, params.plugin); } -- GitLab