From a957e61a9ca05c35e6f40697a343f8c815b6edea Mon Sep 17 00:00:00 2001
From: Sebastian <sebasjm@gmail.com>
Date: Tue, 2 May 2023 09:56:44 -0300
Subject: fix #7828

---
 .../src/wallet/AddNewActionView.tsx                | 26 ++++++++++------------
 1 file changed, 12 insertions(+), 14 deletions(-)

(limited to 'packages/taler-wallet-webextension/src/wallet/AddNewActionView.tsx')

diff --git a/packages/taler-wallet-webextension/src/wallet/AddNewActionView.tsx b/packages/taler-wallet-webextension/src/wallet/AddNewActionView.tsx
index 68a90f8b5..7f142f58b 100644
--- a/packages/taler-wallet-webextension/src/wallet/AddNewActionView.tsx
+++ b/packages/taler-wallet-webextension/src/wallet/AddNewActionView.tsx
@@ -13,13 +13,13 @@
  You should have received a copy of the GNU General Public License along with
  GNU Taler; see the file COPYING.  If not, see <http://www.gnu.org/licenses/>
  */
-import { classifyTalerUri, TalerUriType } from "@gnu-taler/taler-util";
+import { parseTalerUri, TalerUriAction } from "@gnu-taler/taler-util";
+import { useTranslationContext } from "@gnu-taler/web-util/lib/index.browser";
 import { Fragment, h, VNode } from "preact";
 import { useState } from "preact/hooks";
-import { platform } from "../platform/foreground.js";
 import { InputWithLabel } from "../components/styled/index.js";
-import { useTranslationContext } from "@gnu-taler/web-util/lib/index.browser";
 import { Button } from "../mui/Button.js";
+import { platform } from "../platform/foreground.js";
 
 export interface Props {
   onCancel: () => Promise<void>;
@@ -27,19 +27,17 @@ export interface Props {
 
 export function AddNewActionView({ onCancel }: Props): VNode {
   const [url, setUrl] = useState("");
-  const uriType = classifyTalerUri(url);
+  const uri = parseTalerUri(url);
   const { i18n } = useTranslationContext();
 
   async function redirectToWallet(): Promise<void> {
-    platform.openWalletURIFromPopup(url);
+    platform.openWalletURIFromPopup(uri!);
   }
 
   return (
     <Fragment>
       <section>
-        <InputWithLabel
-          invalid={url !== "" && uriType === TalerUriType.Unknown}
-        >
+        <InputWithLabel invalid={url !== "" && !uri}>
           <label>GNU Taler URI</label>
           <div>
             <input
@@ -56,21 +54,21 @@ export function AddNewActionView({ onCancel }: Props): VNode {
         <Button variant="contained" color="secondary" onClick={onCancel}>
           <i18n.Translate>Cancel</i18n.Translate>
         </Button>
-        {uriType !== TalerUriType.Unknown && (
+        {uri && (
           <Button
             variant="contained"
             color="success"
             onClick={redirectToWallet}
           >
             {(() => {
-              switch (uriType) {
-                case TalerUriType.TalerPay:
+              switch (uri.type) {
+                case TalerUriAction.Pay:
                   return <i18n.Translate>Open pay page</i18n.Translate>;
-                case TalerUriType.TalerRefund:
+                case TalerUriAction.Refund:
                   return <i18n.Translate>Open refund page</i18n.Translate>;
-                case TalerUriType.TalerTip:
+                case TalerUriAction.Tip:
                   return <i18n.Translate>Open tip page</i18n.Translate>;
-                case TalerUriType.TalerWithdraw:
+                case TalerUriAction.Withdraw:
                   return <i18n.Translate>Open withdraw page</i18n.Translate>;
               }
               return <Fragment />;
-- 
cgit v1.2.3

