From 397a5fd8b87f84d68f1183e5204e089694626ba5 Mon Sep 17 00:00:00 2001 From: beniaminmunteanu Date: Tue, 16 Sep 2025 21:16:07 +0300 Subject: [PATCH 01/22] initial commit of first apdu commands --- release/application.zip | Bin 0 -> 222312 bytes src/lib/generateAC.ts | 184 ++++++++++++++++++++++++++++++++++++++ src/lib/paymentService.ts | 34 +++++++ src/manifest.webapp.json | 2 +- src/pages/Setup.tsx | 16 +++- src/pages/WaitCard.tsx | 112 +++++++++++++++++++++-- src/state/AppStore.tsx | 43 ++++++--- tsconfig.json | 1 + 8 files changed, 367 insertions(+), 25 deletions(-) create mode 100644 release/application.zip create mode 100644 src/lib/generateAC.ts create mode 100644 src/lib/paymentService.ts diff --git a/release/application.zip b/release/application.zip new file mode 100644 index 0000000000000000000000000000000000000000..f16f78a2a100aea129e3ba48f3af8ce04bd2c059 GIT binary patch literal 222312 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ⅅURb{ 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 z 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�-s_A8D&se{G6n_UICni$O5Vwl-b0fp>jxaGuZT0JZ+FznN;?EnMoN~ikPKEeG|#`@Y3cJlF**ql zDmA!%?MFT7o0eRZa#5O=XM{f%#$MK&f7jDSphcOLyS2?H6Nf|i01l1Jclf&u?!hO? zGUnGWd)u{p7C5?gUw-6YE5%DPD`gIg$L zU~-lJyq)YZ!u&zu??nV3IZ8?Dcx;%Q4$w`m$SHK^zNn`BOk;Yc3HR+2^_ zMOW)y$3g1qX(jm(Nq|~QCJ&JwC^mMZy13Sk{vhYzNjgM*TY5|uuI*?%lViReNPE0d zfb7n?9aC!i4op&4pshdu)O73FELaBT!cyR!9t%f@`&FM1VEg_u;{s48nsQ2impXh| zaN9R!c68yulrSvc%a7)Qfxz@_PkyfuzGQx8e9!R)=h9>N&exiDRPr5)WvFOP1MFG} zvB={6`|!JP8?^$+esYwYCRfNcvQAziuaQ4&=U+R0lu6zkphP_L#8_>lVxam-;s-c@ zriC|%Fo=O_yV!vsdW5l0`HD){q6qPRCIDhma@hluQuC4rrb(Z0LYq;Oo-VZyZo7uf z><3%}PqxiV=s==2q3d`R`w1sRd56<0?a7rDAg_G<#TTCc$kR`)TwA&J=%w@LPM$b? zXwUA&g}Ir@@nT;-hf(PnoW!QVy&Y2(hBbA?P_UVf4Y|TJMOVCX414RLsdp*&P}gBvg7P5cN`OFi(R38{zbp9-q&>I{L)8wi?J3Dz*#7k z{4>z!U-FBvi(lvbI?EKjIcK4G7beO80|&E|Izx>tKvc;lcErcr*}Uu7HsikMO`n^2 zWPQiU9n3Pr5Z<7rYPDp^iFj=2`ymX&kuVGo7bfKJ*b;t2Z;52D|5HP?!bGY~wn_-x zf!lgCbg;cY4v@Wy?tb)qMtjb!F{v$9KOa6p=oyDB%^sRb3=-!H)(@<+r@ z8DeNS)Zssg!4%QVI6`Jy%d_Qg{!!N)oBBEk+#zEaU5W!JB)r2hG^C)P;3;f)pFrD? z$4==)t5QDlJ!z0JsLM?lV>PE`^>Szms8xp(w^bvR%+-TJxZON?_28>Yy}H_=vEuDD zPo8YTos-QUIC8eVY-Ek)_NDLFAj@JcDn=)pcbW);p!e_Jze_>q11yru?TbF6gzi9z z8gzHS@jCEhNIB4hZHW_WCQvmS-5zU1aIQzRXh{_OH2#1yJ8L8TivtT$U`kSgzJzj+ zEnLFLJq9+@IblNN*r(`EA@ex>(%0mr%0f{(ppf@ROvEG{`F_zcPtkC`L30gNrrf z@F$#LwBpgHNP=;eo^h$<_mjwrG|>T=IX3?p0_%59WNMIbX%_0h^uu~BN|v#y<_ z(pkMhAGwa``~Fk}zV*;=67uys$WZR09rjgE86U~Psd_%^p>vdY@r z-1r4J#8?SwGM}$9*V^YrHj`AmP2-OF=mRVzX**Gpj8jf<5^r54uR@T>3=AJRKn?Loqr#-|^i$K!lrh*==u&2j6KhFO z@a8eKNj!aS}$n1TD#Q^jV&1w2itpg zO-_td$^(Tsj}aWLg*cCOIp3UzGS!ue+ezN5{y}tb1Wr2^T1zaJ)zsycrY5{n%;!pW z)rY+(RgljV%0|C8)6c0BI5r)wqdv3cmG*^&%L)O#bnpTm<1Yi%Q=o0Kt)XQ57t$J;t z(HoltR}y>YjV&M0mS&{l+Rl?JeR<`(wgO=plB;6j{L%5@SSdTjk86+V+ug+`c3eAF z(O|i3D-~DzclJpRj2aeR45%>TiN10yvm3X&(W8VAlgwz_-`nIgIY%y$74igmlB|(u z$w$b?+AltS>D=;JVTdOlTe))i;)Mh4=_#8Vj~pL&Ig?`<3hX1#efZhy>uXOx_2g=` z(iiy@3P7lF;+jJdpCk7B24`|*X;ND-&268wb zi>*^D1Uz_qS4nyxs^V3?_dOI8cw$@|8#l|}|Jc0=AKYvH- zZP&;?a-Mvce5(Du*Ds$vz?HQ)TL~~y{Y1tNnX-tb$SvvXL=nnvxnMeADbrf>I-_oc zLU4A;0LJ*$Kv2&3nTr?pFOApH-?8@OV=EUveDT9)P8~bEbbkN&h54DO`o8hKgQaZ7 zskyaeW*2Rn*{wgB1r;k>BzZ-Bt+W-2^~G`&QJ%nSB5LKeYA#W z;;4s~VSsu7U(@r&x6^4U$Tl@B!?W5fKL~~m3vJ7D&4V)0xb_PE#_yXR4CW7YcEi!+ zEXzqx^3rMN70;Rh35IQ09t`Ja@Vd7X3GG=tdCu?i0f=kP<%glWKRL;@(sM8-k!n4k zufs{=k^#(>!|BW$diKtfc`?U&zl!tXGeAnkD5C^%!4bL!^{jPRH*}3wszNJLGa7tN z#o@*~VXQ_iQ*sV_O;d7qTLobphk^Psx1~vcl3UV5_erNsGD(H(B#Y$N+x7 z2nH(xM^+Z$;zSuCZ3*$BMKGxsh5N7r#yC{YfZs$v&6^fb8ziIhx&mf!oVRsZ#i*;O z1Bkxc6Ia?p(^IxZNMmklae8rlY@{0Je9x-b6=D)IhZ7AH`Dw-Yl(g`fNkaQmWp#XR zaDjbct~y_FgS^#Z(BaU`=$$YQH8H#3zBH0P&jtyV~ATf;rOYQMHo4) z#|gP+Q{&3?@4D%0+@6*45SfuTZ5Yh|YJPAq|NWu!*(5Hzz2yUHUie$N!NJ_Oa)aQ! z)b2K@4_G8Nxa0Tl!Pnr6q>n6NT*TY}1v)m2+3hDdN@U=)`IZiH)JCY2=$E`k81vbw zQjw8et(mFOk>XNmDdUhn7OQkBSEg|eqotGN&!!HFOP}Vh+*G~WGX}6b@qx zin+;L31{ULi2 z$19WeGy8nYLwGjqI(xe1TV8U{XSFW~V?hRy06GW+qknY%G^1}Kf`)KJ{4%B;GkCv* zosCAuBkd|)NIN(kR*Yu-)VSXvcKqg*efzHL`(KVq!w6rk3 z^kKRTv3m%OY6YfU_wL53<9y>jk-~Hx%lKQWtUkW+r!T6qdU@kdIe5S}{tN5*+XnGS z4t;H*$$$uQJW!ON)XB?Pkh#gxa3KyWwYm(G3|9QiO8EVpD+v3?Cg+2u_n}tJ_OpC$R*r zIF&1vI%}{ox3FJpx@l9&65!wi#-(Msg1#gzWkB0N6c(L1(KtyTX*}IHNr!h;esg|g zwK@-RJ^yrd9PuEM?5k@>mG z)A3jV<|io?7$P$%^+r|8>5R}*qQcDfeZi~oUIWwLtG*N81?|{bQn<5mk$QR zvL%U6eVzMX-F#?qyjkBC_y9AjQwI-D>BXb3z4quTE?_m?vpRKfHQl%R=xaS?nIiki z`S#f=aFN4_`w5KEB!b@}7*9=&Tg1S5`Avyg!W2WIG_Q?xacw}B_AWH*wemn17=lc} zPTdZcQ~5D8_bss`Dp=~2_k=7~@1(J{78eL|8JRM>c@Xj<q1* zef;vdGwuCzQ$vFpUwz*Ei74auxX95CPW3~O)NSf}#!*8;vmAh|2a{CSG^W7m?AfmI zwyF2&M~KcZG-mcBb8)Rx-I*q8!_PNqJxcVaU(z1YUn0A(a6@#_wNi(4G&L!-E>_mV}Njg zdWK;ek@P5|G|CIZGQhK3k&n&c9?q;e?O1{e{Z2BCrThVAFM=0i`L)k^V9a88xQ z1m=-RW_XfGG@hbPH{}dv(eW@Ow)Pw*UCAV_3TElUIKbb+TNr-y0e?}tX+aIk&^Kr} zKwT*@+*Z2i63%WfsS)*_*SSHV&2U@K+aW!K!M&%*@ILR1={vKTz>6B%Mt)XnHhz+f zV*KPF2p(CKvJr%apTLHLaiRS^sPnm{^Cn5xUGDEIWCGU~oQ%R~S4~p46lkr}NtkiU z$;u`sjjW6pwD#hB4PJ=~IB70KuK-Syi^a^xDgAinw%#zrk)SqT3yv6~G&We!VE z9?s|(nEUs&)?}8H$t-gGM*)lkQ>F*$*cEZA7%>b?13?UkaSikJjk7?;>eb3XG0umc zjXu|u&!*EtlJ>WegeI3ESI0?7q9}!tTbEBV9vMGa0Ye>Pb#nR}Ooj zwM1KJ;qLCyCdqu9#PIewEb+ZY1j-(0!nc%qb%;V?-t|Wt;LgXC>cGb#D>itx>@K)Q zY$bar_`?IHH$LXOb9qXK&~1r_*^Bv|c+iY?P4-8{y%%ZJ9~C1<8P&Pml|VVTk##Z$ z4@8-c3)4~VW1}aPqvPL=w4eJrk;EfeQY3?S3rXI0FEHMpe6g}(HkgG3IXvP{OQg7vqe=G-w%cuM9lf9o9n1J6H z7{7b><8pKs`d+q={M^8qzTX~%5&q*U?{EBZ_2}UB3Guhf>l0$_d;a)HX>ViW;vXLy zzq~8&zy9M2i!ylsA5tJ+Bqh|5%KHj)&)`Ha95VeaQ8Qd8%gKiegTuED9a4T?9Xh1) zzUo8jpO> z#e8Qh_q}dxHF6O5wRaO`fV%u`%Wq0Fj1V~6TF7)@;?%&vz{o&#tQloSC6ZXX;ce9} zl3@>|SfP3@QCot0)ZoGtLp2NK>kmdH!;welv=(L`=O$;WHG^BXr3w9!3O%-aNT-|= zO3LIu`B}I_hLWi6q3=+>;o;%2;re*nJN5l2mlA+7SDn{%Zt zkIm}z`R%22^X_IT0dA9bv@Jc*Z#MGGG#eL%ZasPmh=T)%0DQg~ud|t-1HWUTSyrdR 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

Merchant setup

-
); } diff --git a/src/pages/WaitCard.tsx b/src/pages/WaitCard.tsx index 0afa727..a58ea76 100644 --- a/src/pages/WaitCard.tsx +++ b/src/pages/WaitCard.tsx @@ -1,6 +1,14 @@ // WaitCard.tsx import { useEffect, useRef, useCallback } from "preact/hooks"; import { route } from "preact-router"; +import { + createTransactionData, + createGenerateACCommand, + uint8ArrayToHexString, + APDU_COMMANDS, + hexStringToUint8Array, +} from "@lib/generateAC"; +import { createPaymentServiceData } from "@lib/paymentService"; declare global { interface Navigator { @@ -11,6 +19,17 @@ declare global { } } +interface MozNFCTag { + id: Uint8Array; + techList: string[]; + isLost: boolean; + selectTech: (techType: string) => any; +} + +interface MozNFCTech { + transceive: (data: Uint8Array) => Promise; +} + type WaitCardProps = { decrement?: (tag: any) => void; playRingtone?: () => void; @@ -31,8 +50,78 @@ export default function WaitCard({ }: { path?: string } & WaitCardProps) { const panelRef = useRef(null); + const sendAPDUCommands = useCallback(async (tag: MozNFCTag) => { + try { + console.log("Starting APDU communication with tag..."); + + if (tag.techList.indexOf("ISO-DEP") === -1) { + console.error("Tag does not support ISO-DEP protocol"); + return; + } + + const tech = tag.selectTech("ISO-DEP"); + if (!tech) { + console.error("Failed to select ISO-DEP technology"); + return; + } + + console.log("Selected ISO-DEP technology, tech object:", tech); + + // Send SELECT PPSE command + console.log("=== SELECT PPSE COMMAND ==="); + console.log("Command hex string:", APDU_COMMANDS.SELECT_PPSE); + const selectPPSE = hexStringToUint8Array(APDU_COMMANDS.SELECT_PPSE); + console.log("Command bytes (Uint8Array):", selectPPSE); + console.log("Command bytes (hex):", uint8ArrayToHexString(selectPPSE)); + + const selectResponse = await tech.transceive(selectPPSE); + console.log("Response bytes (Uint8Array):", selectResponse); + console.log( + "Response bytes (hex):", + uint8ArrayToHexString(selectResponse), + ); + console.log("Response length:", selectResponse.length, "bytes"); + + // Create transaction data + console.log("=== TRANSACTION DATA ==="); + const transactionData = createTransactionData(10); // 10 cents + console.log( + "Transaction data:", + JSON.stringify(transactionData, null, 2), + ); + + // Send GENERATE AC command with transaction data + console.log("=== GENERATE AC COMMAND ==="); + const generateAC = createGenerateACCommand(transactionData); + console.log("Command bytes (Uint8Array):", generateAC); + console.log("Command bytes (hex):", uint8ArrayToHexString(generateAC)); + console.log("Command length:", generateAC.length, "bytes"); + + const generateResponse = await tech.transceive(generateAC); + console.log("Response bytes (Uint8Array):", generateResponse); + console.log( + "Response bytes (hex):", + uint8ArrayToHexString(generateResponse), + ); + console.log("Response length:", generateResponse.length, "bytes"); + + // Create payment service data + const paymentData = createPaymentServiceData(transactionData); + console.log("=== PAYMENT SERVICE JSON ==="); + console.log( + "Transaction JSON for payment service:", + JSON.stringify(paymentData, null, 2), + ); + + console.log("APDU communication completed successfully"); + } catch (error) { + console.error("Error during APDU communication:", error); + } + }, []); + const handleTagFound = useCallback( (event: any) => { + console.log("event", event); const { tag } = event; console.log("NfcDemo tag found:", tag); @@ -42,21 +131,31 @@ export default function WaitCard({ if ("vibrate" in navigator) navigator.vibrate?.(100); playRingtone?.(); - // Your logic: only act on MIFARE-Classic if ( Array.isArray(tag.techList) && - tag.techList.includes("MIFARE-Classic") + tag.techList.indexOf("ISO-DEP") !== -1 ) { + console.log("Tag supports ISO-DEP, starting APDU communication..."); + console.log("Available technologies:", tag.techList); + console.log("Tag object methods:", Object.getOwnPropertyNames(tag)); + // prevent default so mozNfc doesn't immediately fire taglost if (typeof event.preventDefault === "function") { try { event.preventDefault(); - } catch { } + } catch {} } - decrement?.(tag); + + // Send APDU commands + sendAPDUCommands(tag as MozNFCTag); + } else { + console.log( + "Tag does not support required technologies:", + tag.techList, + ); } }, - [decrement, playRingtone], + [decrement, playRingtone, sendAPDUCommands], ); const handleTagLost = useCallback( @@ -95,12 +194,11 @@ export default function WaitCard({ useEffect(() => { const handleKeyDown = (e: KeyboardEvent) => { - if ( e.key === "Backspace" || e.key === "ArrowLeft" || e.key === "SoftRight" || //lets see if this works. - e.key === "EndCall" //lets see if this works. + e.key === "EndCall" //lets see if this works. ) { route("/sell"); e.preventDefault(); diff --git a/src/state/AppStore.tsx b/src/state/AppStore.tsx index 7497983..f2c5dfd 100644 --- a/src/state/AppStore.tsx +++ b/src/state/AppStore.tsx @@ -1,5 +1,5 @@ - import { createContext } from "preact"; +import React from "preact/compat"; import { useContext, useReducer, useEffect } from "preact/hooks"; export type Tx = { @@ -65,7 +65,6 @@ const sampleTx: Tx[] = [ }, ]; - const initialState: Store = { paymentPointer: "", currency: "EUR", @@ -94,12 +93,15 @@ function reducer(state: Store, action: Action): Store { } } -const StoreContext = createContext< - | [Store, React.Dispatch] - | undefined ->(undefined); +const StoreContext = createContext<[Store, React.Dispatch] | undefined>( + undefined, +); -export function AppStoreProvider({ children }: { children: preact.ComponentChildren }) { +export function AppStoreProvider({ + children, +}: { + children: preact.ComponentChildren; +}) { const [state, dispatch] = useReducer(reducer, initialState); // Hydrate from localStorage @@ -108,10 +110,18 @@ export function AppStoreProvider({ children }: { children: preact.ComponentChild const raw = localStorage.getItem("ilfpos"); if (raw) { const parsed = JSON.parse(raw); - dispatch({ type: "setPaymentPointer", value: parsed.paymentPointer || "" }); + dispatch({ + type: "setPaymentPointer", + value: parsed.paymentPointer || "https://ilp.dev/009" || "", + }); dispatch({ type: "setCurrency", value: parsed.currency || "EUR" }); dispatch({ type: "setAmount", value: parsed.amount || "0" }); - dispatch({ type: "setTx", value: Array.isArray(parsed.tx) ? parsed.tx.map((t: any) => ({ ...t, ts: new Date(t.ts) })) : sampleTx }); + dispatch({ + type: "setTx", + value: Array.isArray(parsed.tx) + ? parsed.tx.map((t: any) => ({ ...t, ts: new Date(t.ts) })) + : sampleTx, + }); dispatch({ type: "setError", value: parsed.error || null }); } } catch (e) { @@ -126,14 +136,19 @@ export function AppStoreProvider({ children }: { children: preact.ComponentChild // Serialize to a plain object for localStorage const toSave = { ...state, - tx: state.tx.map((t) => ({ ...t, ts: t.ts instanceof Date ? t.ts.toISOString() : t.ts })), + tx: state.tx.map((t) => ({ + ...t, + ts: t.ts instanceof Date ? t.ts.toISOString() : t.ts, + })), }; localStorage.setItem("ilfpos", JSON.stringify(toSave)); } }, [state]); return ( - {children} + + {children} + ); } @@ -145,12 +160,14 @@ export function useAppStore() { // Provide state and setter functions for compatibility return { ...state, - setPaymentPointer: (v: string) => dispatch({ type: "setPaymentPointer", value: v }), + setPaymentPointer: (v: string) => + dispatch({ type: "setPaymentPointer", value: v }), setCurrency: (v: string) => dispatch({ type: "setCurrency", value: v }), setAmount: (v: string) => dispatch({ type: "setAmount", value: v }), setTx: (tx: Tx[]) => dispatch({ type: "setTx", value: tx }), setError: (v: string | null) => dispatch({ type: "setError", value: v }), - setHasHydrated: (v: boolean) => dispatch({ type: "setHasHydrated", value: v }), + setHasHydrated: (v: boolean) => + dispatch({ type: "setHasHydrated", value: v }), }; } diff --git a/tsconfig.json b/tsconfig.json index 9ae5ea0..5b6fc0d 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -5,6 +5,7 @@ "lib": [ "es5", "es6", + "es2017", "dom", "es2015.promise", "scripthost" From b64211ebc1f1631889fd6d58f1cb8dba9f211841 Mon Sep 17 00:00:00 2001 From: beniaminmunteanu Date: Wed, 17 Sep 2025 15:18:34 +0300 Subject: [PATCH 02/22] adhere to new format of cdol1, create payment object that is to be sent in body of request to rafiki pos service sync amount and receiverWalletAddress to be the values set by the merchant --- release/application.zip | Bin 222312 -> 223017 bytes src/lib/generateAC.ts | 122 ++++++++++++++++++++++++++++--------- src/lib/paymentService.ts | 49 +++++++++------ src/pages/Settings.tsx | 13 ++-- src/pages/WaitCard.tsx | 125 ++++++++++++++++++-------------------- 5 files changed, 193 insertions(+), 116 deletions(-) diff --git a/release/application.zip b/release/application.zip index f16f78a2a100aea129e3ba48f3af8ce04bd2c059..5e1cc94237b2996c1c71a674c7475698aa4f9554 100644 GIT binary patch delta 22636 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 delta 21905 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 diff --git a/src/lib/generateAC.ts b/src/lib/generateAC.ts index 067a733..096ecd6 100644 --- a/src/lib/generateAC.ts +++ b/src/lib/generateAC.ts @@ -1,11 +1,10 @@ -// generateAC.ts - APDU command generation utilities - -// Transaction data structure for human-readable format export interface TransactionData { + applicationTransactionCounter: number; // ATC - 2 bytes amount: number; currencyCode: string; transactionCurrencyExponent: number; date: string; + time: string; unpredictableNumber: number; senderWalletAddress: string; receiverWalletAddress: string; @@ -33,16 +32,20 @@ export function uint8ArrayToHexString(uint8Array: Uint8Array): string { .join(" "); } -// (12 digits) +// Convert amount to BCD format (12 digits, 6 bytes) export function createBCDAmount(amount: number): Uint8Array { const amountStr = Math.floor(amount * 100) .toString() .padStart(12, "0"); + const bcd = new Uint8Array(6); + // Convert each pair of decimal digits to BCD for (let i = 0; i < 6; i++) { const pair = amountStr.substr(i * 2, 2); - bcd[i] = parseInt(pair, 16); + const tens = parseInt(pair[0], 10); + const ones = parseInt(pair[1], 10); + bcd[i] = (tens << 4) | ones; // BCD encoding: tens in high nibble, ones in low nibble } return bcd; @@ -77,36 +80,66 @@ export function dateStringToBytes(dateStr: string): Uint8Array { return new Uint8Array([year, month, day]); } -export function createTransactionData(amount = 10): TransactionData { +// Helper function to convert time string to bytes (HHMMSS format) +export function timeStringToBytes(timeStr: string): Uint8Array { + const hour = parseInt(timeStr.substr(0, 2), 10); + const minute = parseInt(timeStr.substr(2, 2), 10); + const second = parseInt(timeStr.substr(4, 2), 10); + return new Uint8Array([hour, minute, second]); +} + +// Helper function to convert ATC to 2-byte Uint8Array +export function numberTo2Bytes(value: number): Uint8Array { + const bytes = new Uint8Array(2); + bytes[0] = (value >> 8) & 0xff; + bytes[1] = value & 0xff; + return bytes; +} + +export function createTransactionData( + amount: number, + receiverWalletAddress: string, +): TransactionData { const now = new Date(); const year = now.getFullYear() % 100; const month = now.getMonth() + 1; const day = now.getDate(); + const hour = now.getHours(); + const minute = now.getMinutes(); + const second = now.getSeconds(); // Generate random 4-byte unpredictable number - const unpredictableNumber = Math.floor(Math.random() * 0x100000000); // 0 to 0xFFFFFFFF + const unpredictableNumber = Math.floor(Math.random() * 0x100000000); // 0 to 0xffffffff + + // ATC (Application Transaction Counter) - hardcoded for now + // In the future, this will be retrieved from the card via READ RECORD APDU command + const applicationTransactionCounter = 0x0001; // Hardcoded to 1 for now return { + applicationTransactionCounter, amount, currencyCode: "EUR", transactionCurrencyExponent: 2, date: `${year.toString().padStart(2, "0")}${month.toString().padStart(2, "0")}${day.toString().padStart(2, "0")}`, + time: `${hour.toString().padStart(2, "0")}${minute.toString().padStart(2, "0")}${second.toString().padStart(2, "0")}`, unpredictableNumber: unpredictableNumber, senderWalletAddress: "https://wallet.example/alice", - receiverWalletAddress: "https://wallet.example/alice", + receiverWalletAddress: receiverWalletAddress, }; } export function createGenerateACCommand( transactionData: TransactionData, ): Uint8Array { - // Convert transaction data to raw bytes for CDOL + // Convert transaction data to raw bytes for CDOL (concatenated, not TLV) + const atcData = numberTo2Bytes(transactionData.applicationTransactionCounter); const amountData = createBCDAmount(transactionData.amount / 100); const currencyData = currencyCodeToBytes(transactionData.currencyCode); const exponentData = new Uint8Array([ transactionData.transactionCurrencyExponent, ]); const dateData = dateStringToBytes(transactionData.date); + const timeData = timeStringToBytes(transactionData.time); const unpredictableData = numberTo4Bytes(transactionData.unpredictableNumber); const createPaddedPaymentPointer = (pointer: string): Uint8Array => { @@ -114,7 +147,6 @@ export function createGenerateACCommand( const encoder = new TextEncoder(); const encoded = encoder.encode(pointer); asciiData.set(encoded, 0); - // Rest is already padded with zeros return asciiData; }; @@ -125,34 +157,52 @@ export function createGenerateACCommand( transactionData.senderWalletAddress, ); - console.log("=== RAW DATA STRUCTURE ==="); - console.log("Amount (6 bytes):", uint8ArrayToHexString(amountData)); - console.log("Currency (2 bytes):", uint8ArrayToHexString(currencyData)); - console.log("Exponent (1 byte):", uint8ArrayToHexString(exponentData)); - console.log("Date (3 bytes):", uint8ArrayToHexString(dateData)); + console.log("=== PAYLOAD BREAKDOWN ==="); + console.log( + `ATC: ${transactionData.applicationTransactionCounter} -> ${uint8ArrayToHexString(atcData)}`, + ); + console.log( + `Amount: ${transactionData.amount} cents -> ${uint8ArrayToHexString(amountData)}`, + ); + console.log( + `Currency: ${transactionData.currencyCode} -> ${uint8ArrayToHexString(currencyData)}`, + ); console.log( - "Unpredictable (4 bytes):", - uint8ArrayToHexString(unpredictableData), + `Exponent: ${transactionData.transactionCurrencyExponent} -> ${uint8ArrayToHexString(exponentData)}`, + ); + console.log( + `Date: ${transactionData.date} (YYMMDD) -> [${Array.from(dateData).join(", ")}]`, + ); + console.log( + `Time: ${transactionData.time} (HHMMSS) -> [${Array.from(timeData).join(", ")}]`, + ); + console.log( + `Unpredictable: ${transactionData.unpredictableNumber} -> ${uint8ArrayToHexString(unpredictableData)}`, + ); + console.log( + `Receiver: ${transactionData.receiverWalletAddress} -> ${uint8ArrayToHexString(recipientData)}`, + ); + console.log( + `Sender: ${transactionData.senderWalletAddress} -> ${uint8ArrayToHexString(senderData)}`, ); - console.log("Recipient (64 bytes):", uint8ArrayToHexString(recipientData)); - console.log("Sender (64 bytes):", uint8ArrayToHexString(senderData)); - // Combine all raw data fields in order (no TLV encoding) + // Combine all raw data fields in order (concatenated, no TLV encoding) const rawDataFields = [ - amountData, // 6 bytes - currencyData, // 2 bytes - exponentData, // 1 byte - dateData, // 3 bytes - unpredictableData, // 4 bytes - recipientData, // 64 bytes - senderData, // 64 bytes + atcData, // 2 bytes - ATC + amountData, // 6 bytes - Amount + currencyData, // 2 bytes - Currency + exponentData, // 1 byte - Exponent + dateData, // 3 bytes - Date + timeData, // 3 bytes - Time + unpredictableData, // 4 bytes - Unpredictable + recipientData, // 64 bytes - Receiver + senderData, // 64 bytes - Sender ]; const totalLength = rawDataFields.reduce( (sum, field) => sum + field.length, 0, ); - console.log("Total raw data length:", totalLength, "bytes"); // Concatenate all raw data const rawData = new Uint8Array(totalLength); @@ -163,6 +213,10 @@ export function createGenerateACCommand( offset += field.length; } + console.log("=== COMPLETE PAYLOAD ==="); + console.log(`Total length: ${totalLength} bytes`); + console.log(`Hex: ${uint8ArrayToHexString(rawData)}`); + const commandHeader = hexStringToUint8Array(APDU_COMMANDS.GENERATE_AC); const lc = new Uint8Array([rawData.length]); // Length of data const le = new Uint8Array([0x00]); // Expected response length @@ -182,3 +236,15 @@ export function createGenerateACCommand( return completeCommand; } + +// Helper function to extract raw data from APDU command +export function extractRawDataFromAPDU(apduCommand: Uint8Array): Uint8Array { + // APDU structure: [CLA, INS, P1, P2, LC, DATA..., LE] + // Raw data starts after the LC byte (5th byte) and excludes the LE byte (last byte) + const lcIndex = 4; // LC is at index 4 + const lc = apduCommand[lcIndex]; // Length of data + const dataStart = lcIndex + 1; + const dataEnd = dataStart + lc; + + return apduCommand.slice(dataStart, dataEnd); +} diff --git a/src/lib/paymentService.ts b/src/lib/paymentService.ts index 2255db9..ae3c7bc 100644 --- a/src/lib/paymentService.ts +++ b/src/lib/paymentService.ts @@ -1,34 +1,45 @@ -// paymentService.ts - Payment service utilities - import type { TransactionData } from "./generateAC"; -// Payment service data structure +// Payment data to be sent to Rafiki export interface PaymentServiceData { - applicationTransactionCounter: string; - amount: number; - currencyCode: string; - transactionCurrencyExponent: number; - date: string; - unpredictableNumber: string; + signature: string; // hex string (GEN AC result) + payload: string; // hex string (GEN AC payload - raw data only) + amount: { + value: string; // amount in cents as string + assetScale: number; // transaction currency exponent + assetCode: string; // currency code + }; senderWalletAddress: string; receiverWalletAddress: string; + timestamp: number; // UTC timestamp from Date.getTime() } export function createPaymentServiceData( transactionData: TransactionData, + signature: Uint8Array, // APDU response + payload: Uint8Array, // Raw data sent to card + timestamp: number, // UTC timestamp ): PaymentServiceData { return { - applicationTransactionCounter: transactionData.unpredictableNumber - .toString(16) - .padStart(8, "0"), - amount: transactionData.amount, // Already in cents - currencyCode: transactionData.currencyCode, - transactionCurrencyExponent: transactionData.transactionCurrencyExponent, - date: transactionData.date, - unpredictableNumber: transactionData.unpredictableNumber - .toString(16) - .padStart(8, "0"), + signature: uint8ArrayToHexString(signature), + payload: uint8ArrayToHexString(payload), + amount: { + value: transactionData.amount.toString(), // Already in cents + assetScale: transactionData.transactionCurrencyExponent, + assetCode: transactionData.currencyCode, + }, senderWalletAddress: transactionData.senderWalletAddress, receiverWalletAddress: transactionData.receiverWalletAddress, + timestamp: timestamp, }; } + +// Helper function to convert Uint8Array to hex string +function uint8ArrayToHexString(uint8Array: Uint8Array): string { + return Array.from(uint8Array) + .map((byte) => { + const hex = byte.toString(16); + return hex.length === 1 ? "0" + hex : hex; + }) + .join(""); +} diff --git a/src/pages/Settings.tsx b/src/pages/Settings.tsx index ffd9346..dca7c39 100644 --- a/src/pages/Settings.tsx +++ b/src/pages/Settings.tsx @@ -5,9 +5,10 @@ import { useAppStore } from "@state/AppStore"; import { handlePaymentPointerEnter } from "@lib/paymentPointer"; export default function Settings(_props: { path?: string }) { const nav = route; - const { error, - setError, setCurrency, paymentPointer, setPaymentPointer } = useAppStore(); - const [paymentPointerInput, setPaymentPointerInput] = useState(paymentPointer); + const { error, setError, setCurrency, paymentPointer, setPaymentPointer } = + useAppStore(); + const [paymentPointerInput, setPaymentPointerInput] = + useState(paymentPointer); // handleEnterPress is now handled by handlePaymentPointerEnter helper @@ -23,7 +24,11 @@ export default function Settings(_props: { path?: string }) { // const active = document.activeElement; // const isInput = active && (active.tagName === "INPUT" || active.tagName === "SELECT" || active.tagName === "TEXTAREA"); // !isInput && || e.key === "Backspace" - if ((e.key === "ArrowLeft" || e.key === "SoftRight" || e.key === "EndCall")) { + if ( + e.key === "ArrowLeft" || + e.key === "SoftRight" || + e.key === "EndCall" + ) { nav("/menu"); e.preventDefault(); } diff --git a/src/pages/WaitCard.tsx b/src/pages/WaitCard.tsx index a58ea76..9db885f 100644 --- a/src/pages/WaitCard.tsx +++ b/src/pages/WaitCard.tsx @@ -7,8 +7,10 @@ import { uint8ArrayToHexString, APDU_COMMANDS, hexStringToUint8Array, + extractRawDataFromAPDU, } from "@lib/generateAC"; import { createPaymentServiceData } from "@lib/paymentService"; +import { useAppStore } from "@state/AppStore"; declare global { interface Navigator { @@ -49,75 +51,68 @@ export default function WaitCard({ className = "", }: { path?: string } & WaitCardProps) { const panelRef = useRef(null); + const { paymentPointer, amount } = useAppStore(); - const sendAPDUCommands = useCallback(async (tag: MozNFCTag) => { - try { - console.log("Starting APDU communication with tag..."); + const sendAPDUCommands = useCallback( + async (tag: MozNFCTag) => { + try { + console.log("Starting APDU communication with tag..."); - if (tag.techList.indexOf("ISO-DEP") === -1) { - console.error("Tag does not support ISO-DEP protocol"); - return; - } + if (tag.techList.indexOf("ISO-DEP") === -1) { + console.error("Tag does not support ISO-DEP protocol"); + return; + } - const tech = tag.selectTech("ISO-DEP"); - if (!tech) { - console.error("Failed to select ISO-DEP technology"); - return; - } + const tech = tag.selectTech("ISO-DEP"); + if (!tech) { + console.error("Failed to select ISO-DEP technology"); + return; + } - console.log("Selected ISO-DEP technology, tech object:", tech); - - // Send SELECT PPSE command - console.log("=== SELECT PPSE COMMAND ==="); - console.log("Command hex string:", APDU_COMMANDS.SELECT_PPSE); - const selectPPSE = hexStringToUint8Array(APDU_COMMANDS.SELECT_PPSE); - console.log("Command bytes (Uint8Array):", selectPPSE); - console.log("Command bytes (hex):", uint8ArrayToHexString(selectPPSE)); - - const selectResponse = await tech.transceive(selectPPSE); - console.log("Response bytes (Uint8Array):", selectResponse); - console.log( - "Response bytes (hex):", - uint8ArrayToHexString(selectResponse), - ); - console.log("Response length:", selectResponse.length, "bytes"); - - // Create transaction data - console.log("=== TRANSACTION DATA ==="); - const transactionData = createTransactionData(10); // 10 cents - console.log( - "Transaction data:", - JSON.stringify(transactionData, null, 2), - ); - - // Send GENERATE AC command with transaction data - console.log("=== GENERATE AC COMMAND ==="); - const generateAC = createGenerateACCommand(transactionData); - console.log("Command bytes (Uint8Array):", generateAC); - console.log("Command bytes (hex):", uint8ArrayToHexString(generateAC)); - console.log("Command length:", generateAC.length, "bytes"); - - const generateResponse = await tech.transceive(generateAC); - console.log("Response bytes (Uint8Array):", generateResponse); - console.log( - "Response bytes (hex):", - uint8ArrayToHexString(generateResponse), - ); - console.log("Response length:", generateResponse.length, "bytes"); - - // Create payment service data - const paymentData = createPaymentServiceData(transactionData); - console.log("=== PAYMENT SERVICE JSON ==="); - console.log( - "Transaction JSON for payment service:", - JSON.stringify(paymentData, null, 2), - ); - - console.log("APDU communication completed successfully"); - } catch (error) { - console.error("Error during APDU communication:", error); - } - }, []); + console.log("Selected ISO-DEP technology, tech object:", tech); + + // Send SELECT PPSE command + const selectPPSE = hexStringToUint8Array(APDU_COMMANDS.SELECT_PPSE); + await tech.transceive(selectPPSE); + + const now = new Date(); + const timestamp = now.getTime(); // UTC timestamp + const amountInCents = Math.floor(parseFloat(amount || "0") * 100); + const transactionData = createTransactionData( + amountInCents, + paymentPointer, + ); + + const generateAC = createGenerateACCommand(transactionData); + + const rawData = extractRawDataFromAPDU(generateAC); + + console.log("=== GENERATE AC COMMAND ==="); + console.log(uint8ArrayToHexString(generateAC)); + + const generateResponse = await tech.transceive(generateAC); + + console.log("=== GENERATE AC RESPONSE ==="); + console.log(uint8ArrayToHexString(generateResponse)); + + // Create payment json to be sent to rafiki + const paymentData = createPaymentServiceData( + transactionData, + generateResponse, + rawData, + timestamp, + ); + + console.log("=== Rafiki payment JSON ==="); + console.log(JSON.stringify(paymentData, null, 2)); + + console.log("APDU communication completed successfully"); + } catch (error) { + console.error("Error during APDU communication:", error); + } + }, + [amount, paymentPointer], + ); const handleTagFound = useCallback( (event: any) => { From f29836de9b87eccbfa08e8ff711a9625ad175e0c Mon Sep 17 00:00:00 2001 From: Adrian Boros Date: Wed, 17 Sep 2025 15:45:32 -0600 Subject: [PATCH 03/22] fix: wip UI work, translation support, remove tailwind --- assets/fonts/TitilliumWeb-Bold.ttf | Bin 0 -> 53896 bytes assets/fonts/TitilliumWeb-Regular.ttf | Bin 0 -> 57392 bytes assets/icons/balance.png | Bin 0 -> 627 bytes assets/icons/debit-card.png | Bin 0 -> 2123 bytes assets/icons/eod.png | Bin 0 -> 456 bytes assets/icons/logo.png | Bin 0 -> 5585 bytes assets/icons/sell.png | Bin 0 -> 696 bytes assets/icons/settings.png | Bin 0 -> 681 bytes package.json | 3 +- pnpm-lock.yaml | 389 ++-------------- postcss.config.js | 2 +- src/components/ErrorBoundary.tsx | 2 +- src/components/Header.tsx | 14 +- src/components/Keypad.tsx | 4 +- src/components/Layout.tsx | 25 +- src/components/StatCard.tsx | 4 +- src/index.css | 11 - src/index.html | 9 +- src/index.scss | 614 ++++++++++++++++++++++++++ src/lib/commonHelper.ts | 26 ++ src/lib/hashHistory.ts | 2 +- src/lib/paymentPointer.ts | 4 +- src/locales/kai-pos.en-US.properties | 41 ++ src/locales/kai-pos.ro-RO.properties | 38 ++ src/main.tsx | 3 +- src/manifest.webapp.json | 23 +- src/pages/Balance.tsx | 20 +- src/pages/EndOfDay.tsx | 16 +- src/pages/Menu.tsx | 41 +- src/pages/Sell.tsx | 16 +- src/pages/Settings.tsx | 83 ++-- src/pages/Setup.tsx | 10 +- src/pages/Splash.tsx | 11 +- src/pages/WaitCard.tsx | 36 +- src/state/AppStore.tsx | 4 +- src/types/global.d.ts | 32 -- src/types/globals.d.ts | 51 +++ tailwind.config.js | 5 +- webpack.common.cjs | 1 + 39 files changed, 994 insertions(+), 546 deletions(-) create mode 100644 assets/fonts/TitilliumWeb-Bold.ttf create mode 100644 assets/fonts/TitilliumWeb-Regular.ttf create mode 100644 assets/icons/balance.png create mode 100644 assets/icons/debit-card.png create mode 100644 assets/icons/eod.png create mode 100644 assets/icons/logo.png create mode 100644 assets/icons/sell.png create mode 100644 assets/icons/settings.png delete mode 100644 src/index.css create mode 100644 src/index.scss create mode 100644 src/lib/commonHelper.ts create mode 100644 src/locales/kai-pos.en-US.properties create mode 100644 src/locales/kai-pos.ro-RO.properties delete mode 100644 src/types/global.d.ts create mode 100644 src/types/globals.d.ts diff --git a/assets/fonts/TitilliumWeb-Bold.ttf b/assets/fonts/TitilliumWeb-Bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..b3d8c34f7930aee35b50617c781b502f50a688d5 GIT binary patch literal 53896 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 X)(&e`X1^@s6D=Y3@00009a7bBm000XU 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 B|1$sp literal 0 HcmV?d00001 diff --git a/assets/icons/eod.png b/assets/icons/eod.png new file mode 100644 index 0000000000000000000000000000000000000000..fc7d558911c416bbdeceb88ddf56c8731140d737 GIT binary patch literal 456 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 literal 0 HcmV?d00001 diff --git a/assets/icons/sell.png b/assets/icons/sell.png new file mode 100644 index 0000000000000000000000000000000000000000..2490bcf9b3e6b212d6f4e8492730a4d65775d59b GIT binary patch literal 696 zcmV;p0!RIcP)X1^@s6D=Y3@00009a7bBm000XU z000XU0RWnu7ytkO0drDELIAGL9O(c600d`2O+f$vv5yPLoK~#7FomRVc z(?AftlEOJOoU?Rvh>kAK7bN__x}zi=9ij#&asoBs3y8nKn~E~>7vPc(@ddaCOWavG zv7}u`o6I?Sjb`W0-g!t79wNC`JdaReA2psL!XLy~AUDgtX@vWTIIi%HcNq`mu~-u5 zxDAvbRC1lt`FGyE=J9xk)idtsEe>A-i=PWo#0ZrN*AQB|QVO)kI>$t3;Q%N4l;_mZ z*O=kVOucI&oFdaIbO&!d4h+ssjwZ|(Jg<5d3Qv#?C;5XuVy3PgeT)PArIQ3-xRb9o zVt1Fz;T^;d@7o9;*&Hl(I2TDnC{kW+g>UxVnaLQ$E4UQdwIKkdS6j2@E6iB{zgYKT zbLCsRhapK&(2-9s)w5zA(v9ZOv58O&??9rf3DOsdUYvh61#5l|Uk)P7!pbzkdyh7y z18qB8uCDV-23Ldu$ZTn9eb&*(oJ$pccvh4Im^L^$>wL{MuT(Emxx@7Le1p3Dv zN=}5fn!T~cRUe?~&^05BY@H8@M0wGfN6plg&QImNF9!I(;`S?d$>>jxLds`YG`mt1b|Ly_u~<8F~2 zxUIDCPiCmZwg<}XV;`OEjfcsKNgnrqUG~VWBre_j+ccx#+^}nP!NwU;_uT&b+$|-$ eS9o{63I72%7PM7-r5jlQ0000X1^@s6D=Y3@00009a7bBm000XU z000XU0RWnu7ytkO0drDELIAGL9O(c600d`2O+f$vv5yPG_XN-+Qnsw?pV#+h zjB8WdgC#x*(7bv7e*-`VY_`75pDr@u6sGl4@QpaHDnx{v$#8kClhqmsU;L4U;<4_o zXQK1zowsX~H$a1426oe3mKh&GgGvMsTYrWC{R_wY!RL_jZJHt^Cc93Ucz213u1ir6 zZ@<@rd1}GETZ*bM@bk%^8$#UWf_u7PrV*Tmh-7S%=_`43rvvZ4Fu>Ny)5j)HyFx~m z;MjG%y{v&@!SYlo&_(+;Uakq{^((h!oZ#CG(bLI@{NCg* z67nol7Pz*k)G1@P+V8=`v%eD{!Up|OY~p2ZNP!DYMz)Z5Lg78)YC81hbz0WX0UMYd z(@D8=aHtqGt~jXHtO9FjhpP;K)sUldv_>fc8){M{4ADHThWJoJwK*FV1FSr+K^7Kj)-ShLah$EB&>Ld`DSm-wjI2cX^y^9kyni%n zwNKR!$Psl)5l(22_j6={zuS%SLcIA}mcd z&CYe+_W#=10'} - '@ampproject/remapping@2.3.0': resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} engines: {node: '>=6.0.0'} @@ -904,10 +903,6 @@ packages: '@interledger/openapi@2.0.4': resolution: {integrity: sha512-3V6xCk2dKnpBiS6ppBDtQsItZ4r1r/YO9T93Pag2yMxIIAe0NAwUfq5yWPYJtNTQ8j2br+z/AwlgWwenxKffWg==} - '@isaacs/cliui@8.0.2': - resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} - engines: {node: '>=12'} - '@jest/schemas@29.6.3': resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} @@ -986,10 +981,6 @@ packages: resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} engines: {node: '>= 8'} - '@pkgjs/parseargs@0.11.0': - resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} - engines: {node: '>=14'} - '@pkgr/core@0.2.9': resolution: {integrity: sha512-QNqXyfVS2wm9hweSYD2O7F0G06uurj9kZ96TRQE5Y9hU7+tgdZwIkbAKc5Ocy1HxEY2kuDQa6cQ1WRs/O5LFKA==} engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} @@ -1423,21 +1414,10 @@ packages: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} engines: {node: '>=8'} - ansi-regex@6.2.0: - resolution: {integrity: sha512-TKY5pyBkHyADOPYlRT9Lx6F544mPl0vS5Ew7BJ45hA08Q+t3GjbueLliBWN3sMICk6+y7HdyxSzC4bWS8baBdg==} - engines: {node: '>=12'} - ansi-styles@4.3.0: resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} engines: {node: '>=8'} - ansi-styles@6.2.1: - resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} - engines: {node: '>=12'} - - any-promise@1.3.0: - resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} - anymatch@3.1.3: resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} engines: {node: '>= 8'} @@ -1445,9 +1425,6 @@ packages: aproba@1.2.0: resolution: {integrity: sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==} - arg@5.0.2: - resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==} - argparse@2.0.1: resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} @@ -1627,10 +1604,6 @@ packages: camel-case@4.1.2: resolution: {integrity: sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==} - camelcase-css@2.0.1: - resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} - engines: {node: '>= 6'} - caniuse-api@3.0.0: resolution: {integrity: sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==} @@ -1698,10 +1671,6 @@ packages: commander@2.20.3: resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} - commander@4.1.1: - resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} - engines: {node: '>= 6'} - commander@7.2.0: resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==} engines: {node: '>= 10'} @@ -2008,12 +1977,6 @@ packages: detect-node@2.1.0: resolution: {integrity: sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==} - didyoumean@1.2.2: - resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} - - dlv@1.1.3: - resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==} - dns-packet@5.6.1: resolution: {integrity: sha512-l4gcSouhcgIKRvyy99RNVOgxXiicE+2jZoNmaNmZ6JXiGajBOJAesk1OBlJuM5k2c+eudGdLxDqXuPCKIj6kpw==} engines: {node: '>=6'} @@ -2058,21 +2021,12 @@ packages: duplexify@3.7.1: resolution: {integrity: sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==} - eastasianwidth@0.2.0: - resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} - ee-first@1.1.1: resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} electron-to-chromium@1.5.209: resolution: {integrity: sha512-Xoz0uMrim9ZETCQt8UgM5FxQF9+imA7PBpokoGcZloA1uw2LeHzTlip5cb5KOAsXZLjh/moN2vReN3ZjJmjI9A==} - emoji-regex@8.0.0: - resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} - - emoji-regex@9.2.2: - resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} - emojis-list@3.0.0: resolution: {integrity: sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==} engines: {node: '>= 4'} @@ -2306,6 +2260,12 @@ packages: resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==} engines: {node: '>=16.0.0'} + file-loader@6.2.0: + resolution: {integrity: sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==} + engines: {node: '>= 10.13.0'} + peerDependencies: + webpack: ^4.0.0 || ^5.0.0 + fill-range@7.1.1: resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} engines: {node: '>=8'} @@ -2365,10 +2325,6 @@ packages: resolution: {integrity: sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==} engines: {node: '>= 0.4'} - foreground-child@3.3.1: - resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==} - engines: {node: '>=14'} - forwarded@0.2.0: resolution: {integrity: sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==} engines: {node: '>= 0.6'} @@ -2438,10 +2394,6 @@ packages: glob-to-regexp@0.4.1: resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==} - glob@10.4.5: - resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==} - hasBin: true - glob@7.2.3: resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} deprecated: Glob versions prior to v9 are no longer supported @@ -2699,10 +2651,6 @@ packages: resolution: {integrity: sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==} engines: {node: '>= 0.4'} - is-fullwidth-code-point@3.0.0: - resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} - engines: {node: '>=8'} - is-generator-function@1.1.0: resolution: {integrity: sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==} engines: {node: '>= 0.4'} @@ -2817,9 +2765,6 @@ packages: resolution: {integrity: sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g==} engines: {node: '>= 0.4'} - jackspeak@3.4.3: - resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} - jest-util@29.7.0: resolution: {integrity: sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} @@ -2884,6 +2829,9 @@ packages: resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==} engines: {node: '>=4.0'} + kaios-gaia-l10n@0.0.1: + resolution: {integrity: sha512-3BJ5A7RjGpMl7hz90kiWxvuJ0t2I7Nsi4tD5vz9nw/S6OMcLvygzP7kbndUW/EgMA2nhxI5yuyHL9Z1wfjro0w==} + keygrip@1.1.0: resolution: {integrity: sha512-iYSchDJ+liQ8iwbSI2QqsQOvqv58eJCEanyJPJi+Khyu8smkcKSFUCbPwzFcL7YVtZ6eONjqRX/38caJ7QjRAQ==} engines: {node: '>= 0.6'} @@ -2980,9 +2928,6 @@ packages: lower-case@2.0.2: resolution: {integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==} - lru-cache@10.4.3: - resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} - lru-cache@5.1.1: resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} @@ -3067,10 +3012,6 @@ packages: minimist@1.2.8: resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} - minipass@7.1.2: - resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} - engines: {node: '>=16 || 14 >=14.17'} - mississippi@3.0.0: resolution: {integrity: sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==} engines: {node: '>=4.0.0'} @@ -3093,9 +3034,6 @@ packages: resolution: {integrity: sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==} hasBin: true - mz@2.7.0: - resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} - nanoid@3.3.11: resolution: {integrity: sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} @@ -3147,10 +3085,6 @@ packages: resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} engines: {node: '>=0.10.0'} - object-hash@3.0.0: - resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} - engines: {node: '>= 6'} - object-inspect@1.13.4: resolution: {integrity: sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==} engines: {node: '>= 0.4'} @@ -3271,9 +3205,6 @@ packages: resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} engines: {node: '>=6'} - package-json-from-dist@1.0.1: - resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} - parallel-transform@1.2.0: resolution: {integrity: sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==} @@ -3321,10 +3252,6 @@ packages: path-parse@1.0.7: resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} - path-scurry@1.11.1: - resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} - engines: {node: '>=16 || 14 >=14.18'} - path-to-regexp@0.1.12: resolution: {integrity: sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==} @@ -3365,10 +3292,6 @@ packages: resolution: {integrity: sha512-ip4qdzjkAyDDZklUaZkcRFb2iA118H9SgRh8yzTkSQK8HilsOJF7rSY8HoW5+I0M46AZgX/pxbprf2vvzQCE0Q==} hasBin: true - pirates@4.0.7: - resolution: {integrity: sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==} - engines: {node: '>= 6'} - pkg-dir@3.0.0: resolution: {integrity: sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==} engines: {node: '>=6'} @@ -3510,30 +3433,6 @@ packages: peerDependencies: postcss: ^8.4.32 - postcss-import@15.1.0: - resolution: {integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==} - engines: {node: '>=14.0.0'} - peerDependencies: - postcss: ^8.0.0 - - postcss-js@4.0.1: - resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} - engines: {node: ^12 || ^14 || >= 16} - peerDependencies: - postcss: ^8.4.21 - - postcss-load-config@4.0.2: - resolution: {integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==} - engines: {node: '>= 14'} - peerDependencies: - postcss: '>=8.0.9' - ts-node: '>=9.0.0' - peerDependenciesMeta: - postcss: - optional: true - ts-node: - optional: true - postcss-loader@8.1.1: resolution: {integrity: sha512-0IeqyAsG6tYiDRCYKQJLAmgQr47DX6N7sFSWvQxt6AcupX8DIdmykuk/o/tx0Lze3ErGHJEp5OSRxrelC6+NdQ==} engines: {node: '>= 18.12.0'} @@ -3679,12 +3578,6 @@ packages: peerDependencies: postcss: ^8.1.0 - postcss-nested@6.2.0: - resolution: {integrity: sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==} - engines: {node: '>=12.0'} - peerDependencies: - postcss: ^8.2.14 - postcss-normalize-charset@5.1.0: resolution: {integrity: sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg==} engines: {node: ^10 || ^12 || >=14.0} @@ -4041,9 +3934,6 @@ packages: react-is@16.13.1: resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} - read-cache@1.0.0: - resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==} - readable-stream@2.3.8: resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==} @@ -4284,10 +4174,6 @@ packages: resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==} engines: {node: '>= 0.4'} - signal-exit@4.1.0: - resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} - engines: {node: '>=14'} - simple-code-frame@1.3.0: resolution: {integrity: sha512-MB4pQmETUBlNs62BBeRjIFGeuy/x6gGKh7+eRUemn1rCFhqo7K+4slPqsyizCbcbYLnaYqaoZ2FWsZ/jN06D8w==} @@ -4359,14 +4245,6 @@ packages: stream-shift@1.0.3: resolution: {integrity: sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ==} - string-width@4.2.3: - resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} - engines: {node: '>=8'} - - string-width@5.1.2: - resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} - engines: {node: '>=12'} - string.prototype.matchall@4.0.12: resolution: {integrity: sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==} engines: {node: '>= 0.4'} @@ -4396,10 +4274,6 @@ packages: resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} engines: {node: '>=8'} - strip-ansi@7.1.0: - resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} - engines: {node: '>=12'} - strip-json-comments@3.1.1: resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} engines: {node: '>=8'} @@ -4429,11 +4303,6 @@ packages: peerDependencies: postcss: ^8.4.32 - sucrase@3.35.0: - resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==} - engines: {node: '>=16 || 14 >=14.17'} - hasBin: true - supports-color@7.2.0: resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} engines: {node: '>=8'} @@ -4465,11 +4334,6 @@ packages: resolution: {integrity: sha512-MeQTA1r0litLUf0Rp/iisCaL8761lKAZHaimlbGK4j0HysC4PLfqygQj9srcs0m2RdtDYnF8UuYyKpbjHYp7Jw==} engines: {node: ^14.18.0 || >=16.0.0} - tailwindcss@3.4.17: - resolution: {integrity: sha512-w33E2aCvSDP0tW9RZuNXadXlkHXqFzSkQew/aIa2i/Sj8fThxwovwlXHSPXTbAHwEIhBFXAedUhP2tueAKP8Og==} - engines: {node: '>=14.0.0'} - hasBin: true - tapable@2.2.3: resolution: {integrity: sha512-ZL6DDuAlRlLGghwcfmSn9sK3Hr6ArtyudlSAiCqQ6IfE+b+HHbydbYDIG15IfS5do+7XQQBdBiubF/cV2dnDzg==} engines: {node: '>=6'} @@ -4495,13 +4359,6 @@ packages: engines: {node: '>=10'} hasBin: true - thenify-all@1.6.0: - resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==} - engines: {node: '>=0.8'} - - thenify@3.3.1: - resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} - thingies@2.5.0: resolution: {integrity: sha512-s+2Bwztg6PhWUD7XMfeYm5qliDdSiZm7M7n8KjTkIsm3l/2lgVRc2/Gx/v+ZX8lT4FMA+i8aQvhcWylldc+ZNw==} engines: {node: '>=10.18'} @@ -4537,9 +4394,6 @@ packages: peerDependencies: typescript: '>=4.8.4' - ts-interface-checker@0.1.13: - resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} - ts-loader@9.5.4: resolution: {integrity: sha512-nCz0rEwunlTZiy6rXFByQU1kVVpCIgUpc/psFiKVrUwrizdnIbRFu8w7bxhUF0X613DYwT4XzrZHpVyMe758hQ==} engines: {node: '>=12.0.0'} @@ -4827,14 +4681,6 @@ packages: worker-farm@1.7.0: resolution: {integrity: sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==} - wrap-ansi@7.0.0: - resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} - engines: {node: '>=10'} - - wrap-ansi@8.1.0: - resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} - engines: {node: '>=12'} - wrappy@1.0.2: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} @@ -4868,11 +4714,6 @@ packages: resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} engines: {node: '>= 6'} - yaml@2.8.1: - resolution: {integrity: sha512-lcYcMxX2PO9XMGvAJkJ3OsNMw+/7FKes7/hgerGUYWIoWu5j/+YQqcZr5JnPZWzOsEBgMbSbiSTn/dv/69Mkpw==} - engines: {node: '>= 14.6'} - hasBin: true - yazl@2.5.1: resolution: {integrity: sha512-phENi2PLiHnHb6QBVot+dJnaAZ0xosj7p3fWl+znIjBDlnMI2PsZCJZ306BPTFOaHf5qdDEI8x5qFrSOBN5vrw==} @@ -4899,8 +4740,6 @@ packages: snapshots: - '@alloc/quick-lru@5.2.0': {} - '@ampproject/remapping@2.3.0': dependencies: '@jridgewell/gen-mapping': 0.3.13 @@ -5798,15 +5637,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@isaacs/cliui@8.0.2': - dependencies: - string-width: 5.1.2 - string-width-cjs: string-width@4.2.3 - strip-ansi: 7.1.0 - strip-ansi-cjs: strip-ansi@6.0.1 - wrap-ansi: 8.1.0 - wrap-ansi-cjs: wrap-ansi@7.0.0 - '@jest/schemas@29.6.3': dependencies: '@sinclair/typebox': 0.27.8 @@ -5890,9 +5720,6 @@ snapshots: '@nodelib/fs.scandir': 2.1.5 fastq: 1.19.1 - '@pkgjs/parseargs@0.11.0': - optional: true - '@pkgr/core@0.2.9': {} '@preact/preset-vite@2.10.2(@babel/core@7.28.3)(preact@10.27.1)(vite@5.4.19(@types/node@24.3.0)(terser@5.43.1))': @@ -6364,16 +6191,10 @@ snapshots: ansi-regex@5.0.1: {} - ansi-regex@6.2.0: {} - ansi-styles@4.3.0: dependencies: color-convert: 2.0.1 - ansi-styles@6.2.1: {} - - any-promise@1.3.0: {} - anymatch@3.1.3: dependencies: normalize-path: 3.0.0 @@ -6381,8 +6202,6 @@ snapshots: aproba@1.2.0: {} - arg@5.0.2: {} - argparse@2.0.1: {} array-buffer-byte-length@1.0.2: @@ -6623,8 +6442,6 @@ snapshots: pascal-case: 3.1.2 tslib: 2.8.1 - camelcase-css@2.0.1: {} - caniuse-api@3.0.0: dependencies: browserslist: 4.25.3 @@ -6690,8 +6507,6 @@ snapshots: commander@2.20.3: {} - commander@4.1.1: {} - commander@7.2.0: {} commander@8.3.0: {} @@ -7068,10 +6883,6 @@ snapshots: detect-node@2.1.0: {} - didyoumean@1.2.2: {} - - dlv@1.1.3: {} - dns-packet@5.6.1: dependencies: '@leichtgewicht/ip-codec': 2.0.5 @@ -7136,16 +6947,10 @@ snapshots: readable-stream: 2.3.8 stream-shift: 1.0.3 - eastasianwidth@0.2.0: {} - ee-first@1.1.1: {} electron-to-chromium@1.5.209: {} - emoji-regex@8.0.0: {} - - emoji-regex@9.2.2: {} - emojis-list@3.0.0: {} encodeurl@1.0.2: {} @@ -7506,6 +7311,12 @@ snapshots: dependencies: flat-cache: 4.0.1 + file-loader@6.2.0(webpack@5.101.3): + dependencies: + loader-utils: 2.0.4 + schema-utils: 3.3.0 + webpack: 5.101.3(webpack-cli@5.1.4) + fill-range@7.1.1: dependencies: to-regex-range: 5.0.1 @@ -7572,11 +7383,6 @@ snapshots: dependencies: is-callable: 1.2.7 - foreground-child@3.3.1: - dependencies: - cross-spawn: 7.0.6 - signal-exit: 4.1.0 - forwarded@0.2.0: {} fraction.js@4.3.7: {} @@ -7653,15 +7459,6 @@ snapshots: glob-to-regexp@0.4.1: {} - glob@10.4.5: - dependencies: - foreground-child: 3.3.1 - jackspeak: 3.4.3 - minimatch: 9.0.5 - minipass: 7.1.2 - package-json-from-dist: 1.0.1 - path-scurry: 1.11.1 - glob@7.2.3: dependencies: fs.realpath: 1.0.0 @@ -7932,8 +7729,6 @@ snapshots: dependencies: call-bound: 1.0.4 - is-fullwidth-code-point@3.0.0: {} - is-generator-function@1.1.0: dependencies: call-bound: 1.0.4 @@ -8040,12 +7835,6 @@ snapshots: has-symbols: 1.1.0 set-function-name: 2.0.2 - jackspeak@3.4.3: - dependencies: - '@isaacs/cliui': 8.0.2 - optionalDependencies: - '@pkgjs/parseargs': 0.11.0 - jest-util@29.7.0: dependencies: '@jest/types': 29.6.3 @@ -8103,6 +7892,8 @@ snapshots: object.assign: 4.1.7 object.values: 1.2.1 + kaios-gaia-l10n@0.0.1: {} + keygrip@1.1.0: dependencies: tsscmp: 1.0.6 @@ -8216,8 +8007,6 @@ snapshots: dependencies: tslib: 2.8.1 - lru-cache@10.4.3: {} - lru-cache@5.1.1: dependencies: yallist: 3.1.1 @@ -8291,8 +8080,6 @@ snapshots: minimist@1.2.8: {} - minipass@7.1.2: {} - mississippi@3.0.0: dependencies: concat-stream: 1.6.2 @@ -8328,12 +8115,6 @@ snapshots: dns-packet: 5.6.1 thunky: 1.1.0 - mz@2.7.0: - dependencies: - any-promise: 1.3.0 - object-assign: 4.1.1 - thenify-all: 1.6.0 - nanoid@3.3.11: {} natural-compare@1.4.0: {} @@ -8370,8 +8151,6 @@ snapshots: object-assign@4.1.1: {} - object-hash@3.0.0: {} - object-inspect@1.13.4: {} object-keys@1.1.1: {} @@ -8518,8 +8297,6 @@ snapshots: p-try@2.2.0: {} - package-json-from-dist@1.0.1: {} - parallel-transform@1.2.0: dependencies: cyclist: 1.0.2 @@ -8563,11 +8340,6 @@ snapshots: path-parse@1.0.7: {} - path-scurry@1.11.1: - dependencies: - lru-cache: 10.4.3 - minipass: 7.1.2 - path-to-regexp@0.1.12: {} path-type@6.0.0: {} @@ -8607,8 +8379,6 @@ snapshots: sonic-boom: 3.8.1 thread-stream: 2.7.0 - pirates@4.0.7: {} - pkg-dir@3.0.0: dependencies: find-up: 3.0.0 @@ -8732,25 +8502,6 @@ snapshots: dependencies: postcss: 8.5.6 - postcss-import@15.1.0(postcss@8.5.6): - dependencies: - postcss: 8.5.6 - postcss-value-parser: 4.2.0 - read-cache: 1.0.0 - resolve: 1.22.10 - - postcss-js@4.0.1(postcss@8.5.6): - dependencies: - camelcase-css: 2.0.1 - postcss: 8.5.6 - - postcss-load-config@4.0.2(postcss@8.5.6): - dependencies: - lilconfig: 3.1.3 - yaml: 2.8.1 - optionalDependencies: - postcss: 8.5.6 - postcss-loader@8.1.1(postcss@8.5.6)(typescript@5.9.2)(webpack@5.101.3): dependencies: cosmiconfig: 9.0.0(typescript@5.9.2) @@ -8898,11 +8649,6 @@ snapshots: icss-utils: 5.1.0(postcss@8.5.6) postcss: 8.5.6 - postcss-nested@6.2.0(postcss@8.5.6): - dependencies: - postcss: 8.5.6 - postcss-selector-parser: 6.1.2 - postcss-normalize-charset@5.1.0(postcss@8.5.6): dependencies: postcss: 8.5.6 @@ -9224,10 +8970,6 @@ snapshots: react-is@16.13.1: {} - read-cache@1.0.0: - dependencies: - pify: 2.3.0 - readable-stream@2.3.8: dependencies: core-util-is: 1.0.3 @@ -9553,8 +9295,6 @@ snapshots: side-channel-map: 1.0.1 side-channel-weakmap: 1.0.2 - signal-exit@4.1.0: {} - simple-code-frame@1.3.0: dependencies: kolorist: 1.8.0 @@ -9631,18 +9371,6 @@ snapshots: stream-shift@1.0.3: {} - string-width@4.2.3: - dependencies: - emoji-regex: 8.0.0 - is-fullwidth-code-point: 3.0.0 - strip-ansi: 6.0.1 - - string-width@5.1.2: - dependencies: - eastasianwidth: 0.2.0 - emoji-regex: 9.2.2 - strip-ansi: 7.1.0 - string.prototype.matchall@4.0.12: dependencies: call-bind: 1.0.8 @@ -9699,10 +9427,6 @@ snapshots: dependencies: ansi-regex: 5.0.1 - strip-ansi@7.1.0: - dependencies: - ansi-regex: 6.2.0 - strip-json-comments@3.1.1: {} structured-headers@0.5.0: {} @@ -9727,16 +9451,6 @@ snapshots: postcss: 8.5.6 postcss-selector-parser: 7.1.0 - sucrase@3.35.0: - dependencies: - '@jridgewell/gen-mapping': 0.3.13 - commander: 4.1.1 - glob: 10.4.5 - lines-and-columns: 1.2.4 - mz: 2.7.0 - pirates: 4.0.7 - ts-interface-checker: 0.1.13 - supports-color@7.2.0: dependencies: has-flag: 4.0.0 @@ -9781,33 +9495,6 @@ snapshots: dependencies: '@pkgr/core': 0.2.9 - tailwindcss@3.4.17: - dependencies: - '@alloc/quick-lru': 5.2.0 - arg: 5.0.2 - chokidar: 3.6.0 - didyoumean: 1.2.2 - dlv: 1.1.3 - fast-glob: 3.3.3 - glob-parent: 6.0.2 - is-glob: 4.0.3 - jiti: 1.21.7 - lilconfig: 3.1.3 - micromatch: 4.0.8 - normalize-path: 3.0.0 - object-hash: 3.0.0 - picocolors: 1.1.1 - postcss: 8.5.6 - postcss-import: 15.1.0(postcss@8.5.6) - postcss-js: 4.0.1(postcss@8.5.6) - postcss-load-config: 4.0.2(postcss@8.5.6) - postcss-nested: 6.2.0(postcss@8.5.6) - postcss-selector-parser: 6.1.2 - resolve: 1.22.10 - sucrase: 3.35.0 - transitivePeerDependencies: - - ts-node - tapable@2.2.3: {} terser-webpack-plugin@5.3.14(webpack@5.101.3): @@ -9826,14 +9513,6 @@ snapshots: commander: 2.20.3 source-map-support: 0.5.21 - thenify-all@1.6.0: - dependencies: - thenify: 3.3.1 - - thenify@3.3.1: - dependencies: - any-promise: 1.3.0 - thingies@2.5.0(tslib@2.8.1): dependencies: tslib: 2.8.1 @@ -9863,8 +9542,6 @@ snapshots: dependencies: typescript: 5.9.2 - ts-interface-checker@0.1.13: {} - ts-loader@9.5.4(typescript@5.9.2)(webpack@5.101.3): dependencies: chalk: 4.1.2 @@ -9995,12 +9672,14 @@ snapshots: dependencies: punycode: 2.3.1 - url-loader@4.1.1(webpack@5.101.3): + url-loader@4.1.1(file-loader@6.2.0(webpack@5.101.3))(webpack@5.101.3): dependencies: loader-utils: 2.0.4 mime-types: 2.1.35 schema-utils: 3.3.0 webpack: 5.101.3(webpack-cli@5.1.4) + optionalDependencies: + file-loader: 6.2.0(webpack@5.101.3) util-deprecate@1.0.2: {} @@ -10220,18 +9899,6 @@ snapshots: dependencies: errno: 0.1.8 - wrap-ansi@7.0.0: - dependencies: - ansi-styles: 4.3.0 - string-width: 4.2.3 - strip-ansi: 6.0.1 - - wrap-ansi@8.1.0: - dependencies: - ansi-styles: 6.2.1 - string-width: 5.1.2 - strip-ansi: 7.1.0 - wrappy@1.0.2: {} ws@8.18.3: {} @@ -10248,8 +9915,6 @@ snapshots: yaml@1.10.2: {} - yaml@2.8.1: {} - yazl@2.5.1: dependencies: buffer-crc32: 0.2.13 diff --git a/postcss.config.js b/postcss.config.js index 99417eb..035942b 100644 --- a/postcss.config.js +++ b/postcss.config.js @@ -1 +1 @@ -export default { plugins: { tailwindcss: {}, autoprefixer: {} } }; +export default { plugins: { autoprefixer: {} } }; diff --git a/src/components/ErrorBoundary.tsx b/src/components/ErrorBoundary.tsx index 76862b8..9a6a013 100644 --- a/src/components/ErrorBoundary.tsx +++ b/src/components/ErrorBoundary.tsx @@ -25,7 +25,7 @@ export class ErrorBoundary extends Component< return this.state.hasError ? (

Something went wrong

-

Please refresh the page.

+

Please refresh the page.

) : ( this.props.children diff --git a/src/components/Header.tsx b/src/components/Header.tsx index aca178c..a3d0c39 100644 --- a/src/components/Header.tsx +++ b/src/components/Header.tsx @@ -1,28 +1,32 @@ import { h } from "preact"; import { route } from "preact-router"; import { useAppStore } from "@state/AppStore"; -//import { shortenPaymentPointer } from "@lib/paymentPointer"; +import { getLocation } from "@lib/hashHistory"; + export function Header() { const { paymentPointer } = useAppStore(); + const location = getLocation(); + const isSplash = location.pathname === "/" || location.pathname === "/setup"; + if (isSplash) return null; return ( -
+
{paymentPointer ? ( <> - + {paymentPointer.split("/").pop()} diff --git a/src/components/Keypad.tsx b/src/components/Keypad.tsx index 31dd7df..644de6c 100644 --- a/src/components/Keypad.tsx +++ b/src/components/Keypad.tsx @@ -21,7 +21,7 @@ export function Keypad({ onKey }: { onKey: (k: string) => void }) { @@ -29,7 +29,7 @@ export function Keypad({ onKey }: { onKey: (k: string) => void }) { diff --git a/src/components/Layout.tsx b/src/components/Layout.tsx index a617fc6..364ee39 100644 --- a/src/components/Layout.tsx +++ b/src/components/Layout.tsx @@ -1,14 +1,23 @@ import { h } from "preact"; -import { Header } from "@components/Header"; -export default function Layout({ - children, -}: { - children?: preact.ComponentChildren; -}) { +//import { Header } from "@components/Header"; +// import { getLocation } from "@lib/hashHistory"; +// import Splash from "@pages/Splash"; +export default function Layout({ children }: { children?: preact.ComponentChildren }) { + + // const location = getLocation(); + // console.log("Layout", location); + // const isSplash = location.pathname === "/" || location.pathname === "/setup"; + + // console.log("isSplash", isSplash); return ( -
-
+
+ {/*
*/}
{children}
+ {/*
+
Back
+
SELECT
+
Options
+
*/}
); } diff --git a/src/components/StatCard.tsx b/src/components/StatCard.tsx index b6ea6e3..571166a 100644 --- a/src/components/StatCard.tsx +++ b/src/components/StatCard.tsx @@ -1,8 +1,8 @@ import { h } from "preact"; export function StatCard({ label, value }: { label: string; value: string }) { return ( -
-
{label}
+
+
{label}
{value}
); diff --git a/src/index.css b/src/index.css deleted file mode 100644 index deebc0b..0000000 --- a/src/index.css +++ /dev/null @@ -1,11 +0,0 @@ -@tailwind base; -@tailwind components; -@tailwind utilities; -html, -body, -#root { - height: 100%; -} -body { - background: #0f172a; -} diff --git a/src/index.html b/src/index.html index 9360c76..19ab9d7 100644 --- a/src/index.html +++ b/src/index.html @@ -2,10 +2,15 @@ - + + + + + Interledger POS + - +
- - + + + + + + + Interledger POS + + + + +
+ + + + \ No newline at end of file diff --git a/src/index.scss b/src/index.scss index 33026c6..8ea679e 100644 --- a/src/index.scss +++ b/src/index.scss @@ -3,6 +3,7 @@ --default-icon-size: 2.2rem; --title-bar-height: 2.8rem; --tab-bar-height: 3.6rem; + --menu-item-height: 5.8rem; --color-gs100: #000000; --color-gs90: #323232; --color-gs70: #6a6a6a; @@ -11,6 +12,7 @@ --color-gs10: #e6e6e6; --color-gs00: #ffffff; --color-app-bg: #D9D9D9; + --color-field-bg: #e6e6e6; --highlight-color: #00ae57; --color-alpha: #333333; @@ -145,10 +147,46 @@ input[type="date"]::-moz-focus-inner { border-radius: 0.75rem; } +.menu-height { + min-height: var(--menu-item-height); +} + +.absolute { + position: absolute; +} + +.fixed { + position: fixed; +} + +.b { + bottom: 0; +} + +.l { + left: 0; +} + +.r { + right: 0; +} + +.t { + top: 0; +} + +.bg-transparent { + background: transparent; +} + .bg-white-10 { background: rgba(255, 255, 255, 0.1); } +.bg-white-90 { + background: rgba(255, 255, 255, 0.9); +} + .bg-white-5 { background: rgba(255, 255, 255, 0.05); } @@ -169,6 +207,10 @@ input[type="date"]::-moz-focus-inner { background: #047857; } +.bg-red-200 { + background: #fecaca; +} + .bg-red-600 { background: #dc2626; } @@ -430,6 +472,10 @@ input[type="date"]::-moz-focus-inner { flex-direction: row; } +.flex-grow { + flex-grow: 1; +} + .items-center { align-items: center; } @@ -438,6 +484,10 @@ input[type="date"]::-moz-focus-inner { justify-content: space-between; } +.justify-center { + justify-content: center; +} + .text-center { text-align: center; } @@ -454,10 +504,22 @@ input[type="date"]::-moz-focus-inner { border: 1px solid black; } +.border-white { + border: 1px solid white; +} + .border-green { border: 1px solid green; } +.border-red { + border: 1px solid red; +} + +.border-red-600 { + border: 1px solid #dc2626; +} + .rounded-2xl { border-radius: 1rem; } @@ -483,6 +545,14 @@ input[type="date"]::-moz-focus-inner { color: #007E50; } +.w-45 { + width: 11.25rem; +} + +.w-30 { + width: 7.5rem; +} + .w-15 { width: 3.75rem; } @@ -547,6 +617,14 @@ input[type="date"]::-moz-focus-inner { height: 90vh; } +.h-64 { + height: 64px; +} + +.h-96 { + height: 96px; +} + .my-2 { margin-top: 0.5rem; margin-bottom: 0.5rem; @@ -585,10 +663,6 @@ input[type="date"]::-moz-focus-inner { display: block; } -.w-full { - width: 100%; -} - .rounded { border-radius: 0.25rem; } @@ -605,6 +679,10 @@ input[type="date"]::-moz-focus-inner { margin-top: 1rem; } +.mb-4 { + margin-bottom: 1rem; +} + .mt-6 { margin-top: 1.5rem; } @@ -640,9 +718,10 @@ input[type="date"]::-moz-focus-inner { opacity: 0.8; } - -// --- End Tailwind to SCSS conversion --- - +.webkit-fill { + width: 100%; + width: -webkit-fill-available; +} .color-white { color: var(--color-white); @@ -652,8 +731,13 @@ input[type="date"]::-moz-focus-inner { background-color: var(--color-white); } -.item-bg { +.active-item-bg { background-color: var(--highlight-color); + color: var(--color-white); +} + +.bg-field { + background-color: var(--color-field-bg); } :focus { diff --git a/src/lib/currency.ts b/src/lib/currency.ts index 526a87c..95e68a1 100644 --- a/src/lib/currency.ts +++ b/src/lib/currency.ts @@ -9,14 +9,21 @@ export function currencySymbol(c: string) { } export function formatCurrency(value: number, currency: string) { + console.log("formatCurrency", value, currency); try { - return new Intl.NumberFormat(undefined, { + const formatted = new Intl.NumberFormat(undefined, { style: "currency", currency, + currencyDisplay: "symbol", + minimumFractionDigits: 0, + maximumFractionDigits: 2 }).format(value || 0); + console.log("Formatted currency:", formatted); + return formatted; } catch { + console.error("Intl.NumberFormat missing Error formatting currency:", value, currency); const s = currencySymbol(currency); - return `${s} ${(value || 0).toFixed(2)}`; + return `${s} ${(value || 0)}`; } } export function formatValue(value: number) { diff --git a/src/lib/paymentPointer.ts b/src/lib/paymentPointer.ts index 37f62da..70a9c1b 100644 --- a/src/lib/paymentPointer.ts +++ b/src/lib/paymentPointer.ts @@ -23,9 +23,9 @@ export async function handlePaymentPointerEnter( return false; } try { - const data = { assetCode: "USD" }; //await get(pp); + const data = { assetCode: "EUR" }; //await get(pp); // Disabled actual fetch for demo purposes setPaymentPointer(pp); - setCurrency(data.assetCode || "USD"); + setCurrency(data.assetCode || "EUR"); nav("/menu"); return true; } catch (error) { diff --git a/src/locales/kai-pos.en-US.properties b/src/locales/kai-pos.en-US.properties index dd14212..a978463 100644 --- a/src/locales/kai-pos.en-US.properties +++ b/src/locales/kai-pos.en-US.properties @@ -22,6 +22,7 @@ menu=Menu balance=Balance total-balance=Total balance recent-transactions=Recent transactions +load-more=Load more #setup page wallet-setup=Merchant Setup payment-pointer=Payment pointer @@ -36,7 +37,10 @@ email-report=Email report first-transaction=Date time of first transaction last-transaction=Date time of last transaction +menu-menu=Menu menu-sell=Sell +menu-sell-ARQC=Sell (ARQC) +menu-sell-ILP=Sell (ILP) menu-sell-hint=Start a new sale menu-balance=Balance menu-balance-hint=View recent transactions @@ -44,3 +48,19 @@ menu-eod=End of day report menu-eod-hint=Generate an end of day report menu-settings=Settings menu-settings-hint=Configure device +menu-payment-pointer=Payment pointer +menu-payment-pointer-hint=Set or change payment pointer + +#sell page +sell-amount=Enter amount + +#wait-card=Waiting for card +wait-card=Waiting for card... +statuses-0-key=Total Sum +statuses-0-key-message=Hold card near the reader. +statuses-1-key=Processing +statuses-1-key-message=Please wait... +statuses-2-key=Complete +statuses-2-key-message=Thank you. +statuses-3-key=Failed +statuses-3-key-message=Please try again. \ No newline at end of file diff --git a/src/manifest.webapp.json b/src/manifest.webapp.json index a19f82c..2f583ba 100644 --- a/src/manifest.webapp.json +++ b/src/manifest.webapp.json @@ -1,7 +1,7 @@ { "name": "Interledger POS", "version": "1.0.0", - "description": "Interledger POS App that works with the Interledger cards", + "description": "Interledger POS", "launch_path": "/index.html", "type": "certified", "developer": { @@ -18,12 +18,12 @@ "theme_color": "#6054EF", "locales": { "en-US": { - "name": "Interledger POS App", + "name": "Interledger POS", "subtitle": "Interledger POS App", "description": "POS app that works with the Interledger cards" }, "ro-RO": { - "name": "Interledger POS App", + "name": "Interledger POS", "subtitle": "Aplicatia Interledger POS", "description": "POS app care merge cu cardurile Interledger" } diff --git a/src/pages/Balance.tsx b/src/pages/Balance.tsx index 8563628..2cf1134 100644 --- a/src/pages/Balance.tsx +++ b/src/pages/Balance.tsx @@ -1,17 +1,27 @@ import { route } from "preact-router"; +import { useEffect, useState } from "preact/hooks"; import { useAppStore, selectTotalBalance } from "@state/AppStore"; import { formatCurrency, currencySymbol, formatValue } from "@lib/currency"; -import { useEffect } from "preact/hooks"; +import { Header } from "@components/Header"; +import { Footer } from "@components/Footer"; + export default function Balance(_props: { path?: string }) { const nav = route; const { currency, tx } = useAppStore(); const totalBalance = selectTotalBalance({ tx }); + const [loadMoreTx, setLoadMoreTx] = useState(false); useEffect(() => { const handleKeyDown = (e: KeyboardEvent) => { - if (e.key === "ArrowLeft" || e.key === "Backspace") { + if (e.key === "SoftLeft" || e.key === "Backspace") { nav("/menu"); e.preventDefault(); + } else if (e.key === "Enter" || e.key === " ") { + setLoadMoreTx(true) + e.preventDefault(); + } else if (e.key === "SoftRight") { + route("/settings"); + e.preventDefault(); } }; window.addEventListener("keydown", handleKeyDown); @@ -19,12 +29,8 @@ export default function Balance(_props: { path?: string }) { }, [nav]); return (
-
- nav("/menu")} className="text-lg">← Back -
-
-
-
+
+
{formatCurrency(totalBalance, currency)} @@ -36,7 +42,25 @@ export default function Balance(_props: { path?: string }) { {tx.slice(0, 10).map((t) => (
  • +
    +
    +
    + {formatValue(t.amount)} +
    +
    + {t.ts.toLocaleString?.() || String(t.ts)} +
    +
    +
    {currencySymbol(t.currency)}
    +
    +
  • + ))} + {loadMoreTx && tx.length > 10 && tx.slice(10).map((t) => ( +
  • @@ -51,8 +75,18 @@ export default function Balance(_props: { path?: string }) {
  • ))} + {!loadMoreTx && ( +
    setLoadMoreTx(true)} + className="w-45 mx-auto text-center p-4 mt-2 text-3xl text-white bg-green-500 font-semibold rounded-4xl" + > + +
    + )}
    + +
    ); } diff --git a/src/pages/EndOfDay.tsx b/src/pages/EndOfDay.tsx index 6d4116d..228587d 100644 --- a/src/pages/EndOfDay.tsx +++ b/src/pages/EndOfDay.tsx @@ -3,6 +3,9 @@ import { route } from "preact-router"; import { useAppStore } from "@state/AppStore"; import { formatCurrency, currencySymbol, formatValue } from "@lib/currency"; import { computeDailyReport } from "@services/reports"; +import { Header } from "@components/Header"; +import { Footer } from "@components/Footer"; + export default function EndOfDay(_props: { path?: string }) { const nav = route; const { currency, tx } = useAppStore(); @@ -18,9 +21,19 @@ export default function EndOfDay(_props: { path?: string }) { useEffect(() => { const handleKeyDown = (e: KeyboardEvent) => { - if (e.key === "ArrowLeft" || e.key === "Backspace") { + if (e.key === "SoftLeft" || e.key === "Backspace") { nav("/menu"); e.preventDefault(); + } else if (e.key === "SoftRight") { + route("/settings"); + e.preventDefault(); + } else if (e.key === "Enter" || e.key === " ") { + console.log(focused); + setFocused((f) => (f + 1) % 2); + const input = document.getElementById("date-input"); + input?.focus(); + (input as HTMLInputElement)?.showPicker?.(); + e.preventDefault(); } }; window.addEventListener("keydown", handleKeyDown); @@ -28,20 +41,10 @@ export default function EndOfDay(_props: { path?: string }) { }, [nav]); return (
    -
    - nav("/menu")} className="text-lg">← Back -
    -
    -
    +
    { - console.log(e.key); - if (e.key === "Enter") { - document.getElementById("date-input")?.focus(); - } - }} + className=" mt-4 p-4 bg-white focus:ring-2 focus:ring-emerald-400" >
    -
    +
    {items.map((t, i) => (
  • )}
  • +
    ); } diff --git a/src/pages/Menu.tsx b/src/pages/Menu.tsx index a986084..ebfb093 100644 --- a/src/pages/Menu.tsx +++ b/src/pages/Menu.tsx @@ -2,6 +2,12 @@ import { useAppStore } from "@state/AppStore"; import { useEffect, useRef, useState } from "preact/hooks"; import { route } from "preact-router"; +import { Footer } from "@components/Footer"; +import { Header } from "@components/Header"; +import { SellIcon } from "@components/icons/SellIcon"; +import { BalanceIcon } from "@components/icons/BalanceIcon"; +import { EodIcon } from "@components/icons/EodIcon"; + export default function Menu(_props: { path?: string }) { const nav = route; const { paymentPointer } = useAppStore(); @@ -9,7 +15,6 @@ export default function Menu(_props: { path?: string }) { { key: "sell", path: "/sell" }, { key: "balance", path: "/balance" }, { key: "eod", path: "/eod" }, - { key: "settings", path: "/settings" }, ]; const [focused, setFocused] = useState(0); // 0 = Sell const btnRefs = useRef<(HTMLButtonElement | null)[]>([]); @@ -35,6 +40,9 @@ export default function Menu(_props: { path?: string }) { } else if (e.key === "Enter" || e.key === " ") { nav(items[focused].path); e.preventDefault(); + } else if (e.key === "SoftRight") { + route("/settings"); + e.preventDefault(); } }; window.addEventListener("keydown", handleKeyDown); @@ -42,15 +50,8 @@ export default function Menu(_props: { path?: string }) { }, [focused, nav]); return ( -
    -
    -
    -
    -
    -
    +
    + {/*
    */} {items.map((it, i) => ( - ))} -
    + )) + } +
    +
    +
    ); } diff --git a/src/pages/PaymentPointer.tsx b/src/pages/PaymentPointer.tsx index 5e5db72..d4feae6 100644 --- a/src/pages/PaymentPointer.tsx +++ b/src/pages/PaymentPointer.tsx @@ -3,9 +3,13 @@ import { route } from "preact-router"; import { useEffect, useRef, useState } from "preact/hooks"; import { useAppStore } from "@state/AppStore"; import { handlePaymentPointerEnter } from "@lib/paymentPointer"; +import { Footer } from "@components/Footer"; +import { Header } from "@components/Header"; +import { currencySymbol } from "@lib/currency"; + export default function PaymentPointer(_props: { path?: string }) { const nav = route; - const { error, setError, setCurrency, paymentPointer, setPaymentPointer } = + const { error, setError, currency, setCurrency, paymentPointer, setPaymentPointer } = useAppStore(); const [paymentPointerInput, setPaymentPointerInput] = useState(paymentPointer); @@ -13,8 +17,6 @@ export default function PaymentPointer(_props: { path?: string }) { const inputRef = useRef(null); const deleteBtnRef = useRef(null); - // handleEnterPress is now handled by handlePaymentPointerEnter helper - useEffect(() => { if (paymentPointer.length == 0) { nav("/setup"); @@ -23,7 +25,7 @@ export default function PaymentPointer(_props: { path?: string }) { useEffect(() => { const handleKeyDown = (e: KeyboardEvent) => { - const backKeys = ["SoftRight", "EndCall"]; + const backKeys = ["SoftLeft", "EndCall"]; if (e.key === "ArrowDown" || e.key === "ArrowRight") { setFocused((f) => (f + 1) % 2); e.preventDefault(); @@ -31,7 +33,7 @@ export default function PaymentPointer(_props: { path?: string }) { setFocused((f) => (f - 1 + 2) % 2); e.preventDefault(); } else if (backKeys.indexOf(e.key) !== -1) { - nav("/menu"); + nav("/settings"); e.preventDefault(); } }; @@ -45,23 +47,14 @@ export default function PaymentPointer(_props: { path?: string }) { }, [focused]); return (
    -
    - -
    Payment pointer
    -
    -
    -
    ); } diff --git a/src/pages/Sell-ILP.tsx b/src/pages/Sell-ILP.tsx new file mode 100644 index 0000000..5e2b3d5 --- /dev/null +++ b/src/pages/Sell-ILP.tsx @@ -0,0 +1,77 @@ +import { useEffect } from "preact/hooks"; +import { route } from "preact-router"; +import { formatCurrency } from "@lib/currency"; +import { useAppStore } from "@state/AppStore"; +export default function SellILP(_props: { path?: string }) { + const nav = route; + const { paymentPointer, currency, amount, setAmount } = useAppStore(); + const onKey = (key: string) => { + let newAmount = amount; + if (key === "C") { + newAmount = "0"; + } else if (key === "⌫") { + newAmount = amount.length <= 1 ? "0" : amount.slice(0, -1); + } else if (key === ".") { + newAmount = amount.includes(".") ? amount : amount + "."; + } else if (/^\d$/.test(key)) { + if (amount === "0") newAmount = key; + else if (amount.length < 9) newAmount = amount + key; + // else leave as is + } + setAmount(newAmount); + }; + + useEffect(() => { + const handleKeyDown = (e: KeyboardEvent) => { + console.log(e.key); + if (e.repeat) return; + if (e.key >= "0" && e.key <= "9") { + onKey(e.key); + e.preventDefault(); + } else if (e.key === "." || e.key === "," || e.key === "*") { + onKey("."); + e.preventDefault(); + } else if (e.key === "Backspace") { + // Backspace: go to menu if amount is 0, else delete + if (parseFloat(amount || "0") === 0) { + nav("/menu"); + } else { + onKey("⌫"); + } + e.preventDefault(); + } else if (e.key === "ArrowLeft") { + nav("/menu"); + e.preventDefault(); + } else if (e.key.toLowerCase() === "c") { + onKey("C"); + e.preventDefault(); + } else if (e.key === "Enter") { + if (parseFloat(amount || "0") > 0) { + nav("/wait-card-ILP"); + } + e.preventDefault(); + } + }; + window.addEventListener("keydown", handleKeyDown); + return () => window.removeEventListener("keydown", handleKeyDown); + }, [amount, nav]); + useEffect(() => { + if (paymentPointer.length == 0) { + nav("/setup"); + } + }, []); + return ( +
    +
    + nav("/menu")} className="text-lg">← +
    +
    +
    +
    +
    + {formatCurrency(parseFloat(amount || "0"), currency)} +
    +
    +
    + ); +} diff --git a/src/pages/Sell.tsx b/src/pages/Sell.tsx index da2e0d2..af75dd6 100644 --- a/src/pages/Sell.tsx +++ b/src/pages/Sell.tsx @@ -1,5 +1,7 @@ import { useEffect } from "preact/hooks"; import { route } from "preact-router"; +import { Footer } from "@components/Footer"; +import { Header } from "@components/Header"; import { formatCurrency } from "@lib/currency"; import { useAppStore } from "@state/AppStore"; export default function Sell(_props: { path?: string }) { @@ -39,8 +41,8 @@ export default function Sell(_props: { path?: string }) { onKey("⌫"); } e.preventDefault(); - } else if (e.key === "ArrowLeft") { - nav("/menu"); + } else if (e.key === "SoftLeft") { + route("/menu"); e.preventDefault(); } else if (e.key.toLowerCase() === "c") { onKey("C"); @@ -62,16 +64,13 @@ export default function Sell(_props: { path?: string }) { }, []); return (
    -
    - nav("/menu")} className="text-lg">← -
    -
    -
    +
    {formatCurrency(parseFloat(amount || "0"), currency)}
    +
    ); } diff --git a/src/pages/SellARQC.tsx b/src/pages/SellARQC.tsx new file mode 100644 index 0000000..d97030b --- /dev/null +++ b/src/pages/SellARQC.tsx @@ -0,0 +1,77 @@ +import { useEffect } from "preact/hooks"; +import { route } from "preact-router"; +import { formatCurrency } from "@lib/currency"; +import { useAppStore } from "@state/AppStore"; +export default function SellARQC(_props: { path?: string }) { + const nav = route; + const { paymentPointer, currency, amount, setAmount } = useAppStore(); + const onKey = (key: string) => { + let newAmount = amount; + if (key === "C") { + newAmount = "0"; + } else if (key === "⌫") { + newAmount = amount.length <= 1 ? "0" : amount.slice(0, -1); + } else if (key === ".") { + newAmount = amount.includes(".") ? amount : amount + "."; + } else if (/^\d$/.test(key)) { + if (amount === "0") newAmount = key; + else if (amount.length < 9) newAmount = amount + key; + // else leave as is + } + setAmount(newAmount); + }; + + useEffect(() => { + const handleKeyDown = (e: KeyboardEvent) => { + console.log(e.key); + if (e.repeat) return; + if (e.key >= "0" && e.key <= "9") { + onKey(e.key); + e.preventDefault(); + } else if (e.key === "." || e.key === "," || e.key === "*") { + onKey("."); + e.preventDefault(); + } else if (e.key === "Backspace") { + // Backspace: go to menu if amount is 0, else delete + if (parseFloat(amount || "0") === 0) { + nav("/menu"); + } else { + onKey("⌫"); + } + e.preventDefault(); + } else if (e.key === "ArrowLeft") { + nav("/menu"); + e.preventDefault(); + } else if (e.key.toLowerCase() === "c") { + onKey("C"); + e.preventDefault(); + } else if (e.key === "Enter") { + if (parseFloat(amount || "0") > 0) { + nav("/wait-card-ARQC"); + } + e.preventDefault(); + } + }; + window.addEventListener("keydown", handleKeyDown); + return () => window.removeEventListener("keydown", handleKeyDown); + }, [amount, nav]); + useEffect(() => { + if (paymentPointer.length == 0) { + nav("/setup"); + } + }, []); + return ( +
    +
    + nav("/menu")} className="text-lg">← +
    +
    +
    +
    +
    + {formatCurrency(parseFloat(amount || "0"), currency)} +
    +
    +
    + ); +} diff --git a/src/pages/Settings.tsx b/src/pages/Settings.tsx index efc4b6d..ee63b84 100644 --- a/src/pages/Settings.tsx +++ b/src/pages/Settings.tsx @@ -2,7 +2,10 @@ import { h } from "preact"; import { route } from "preact-router"; import { useEffect, useRef, useState } from "preact/hooks"; import { useAppStore } from "@state/AppStore"; -import { handlePaymentPointerEnter } from "@lib/paymentPointer"; +import { Footer } from "@components/Footer"; +import { Header } from "@components/Header"; +import { PpIcon } from "@components/icons/PpIcon"; + export default function Settings(_props: { path?: string }) { const nav = route; const { error, setError, setCurrency, paymentPointer, setPaymentPointer } = @@ -11,6 +14,7 @@ export default function Settings(_props: { path?: string }) { useState(paymentPointer); const [focused, setFocused] = useState(0); // 0 = input, 1 = delete button const inputRef = useRef(null); + const btnRefs = useRef<(HTMLButtonElement | null)[]>([]); const deleteBtnRef = useRef(null); // handleEnterPress is now handled by handlePaymentPointerEnter helper @@ -23,16 +27,18 @@ export default function Settings(_props: { path?: string }) { useEffect(() => { const handleKeyDown = (e: KeyboardEvent) => { - const backKeys = ["SoftRight", "EndCall"]; - if (e.key === "ArrowDown" || e.key === "ArrowRight") { + if (e.key === "ArrowDown") { setFocused((f) => (f + 1) % 2); e.preventDefault(); - } else if (e.key === "ArrowUp" || e.key === "ArrowLeft") { + } else if (e.key === "ArrowUp") { setFocused((f) => (f - 1 + 2) % 2); e.preventDefault(); - } else if (backKeys.indexOf(e.key) !== -1) { + } else if (e.key === "SoftLeft" || e.key === "Backspace") { nav("/menu"); e.preventDefault(); + } else if (e.key === "Enter" || e.key === " ") { + nav('/payment-pointer'); + e.preventDefault(); } }; window.addEventListener("keydown", handleKeyDown); @@ -43,28 +49,39 @@ export default function Settings(_props: { path?: string }) { if (focused === 0) inputRef.current?.focus(); else if (focused === 1) deleteBtnRef.current?.focus(); }, [focused]); + return (
    -
    - nav("/menu")} className="text-lg">← Back -
    Settings
    -
    - -
    +
    nav("/payment-pointer")} > -
    - +
    ); } diff --git a/src/pages/Setup.tsx b/src/pages/Setup.tsx index ebe8d69..b08d2ac 100644 --- a/src/pages/Setup.tsx +++ b/src/pages/Setup.tsx @@ -54,7 +54,7 @@ export default function Setup(_props: { path?: string }) { return (

    -
    ); From e264bb49e831b78091ef1aef12e9e09c3053056c Mon Sep 17 00:00:00 2001 From: Adrian Boros Date: Sat, 27 Sep 2025 21:02:06 +0300 Subject: [PATCH 12/22] fix: remove doamne ajuta from the menu --- src/pages/Menu.tsx | 1 - 1 file changed, 1 deletion(-) diff --git a/src/pages/Menu.tsx b/src/pages/Menu.tsx index b3205eb..b23c3b8 100644 --- a/src/pages/Menu.tsx +++ b/src/pages/Menu.tsx @@ -16,7 +16,6 @@ export default function Menu(_props: { path?: string }) { { key: "sell", path: "/sell", icon: "sell.png" }, { key: "balance", path: "/balance", icon: "balance.png" }, { key: "eod", path: "/eod", icon: "eod.png" }, - { key: "doamne", path: "/settings", icon: "settings.png" }, ]; const [focused, setFocused] = useState(0); // 0 = Sell const btnRefs = useRef<(HTMLButtonElement | null)[]>([]); From 9c5c4970638a1488cf52c054b0b9f04ee3bd0533 Mon Sep 17 00:00:00 2001 From: Adrian Boros Date: Sat, 27 Sep 2025 21:34:51 +0300 Subject: [PATCH 13/22] fix: remove release zip file from git --- release/application.zip | Bin 223017 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 release/application.zip diff --git a/release/application.zip b/release/application.zip deleted file mode 100644 index 5e1cc94237b2996c1c71a674c7475698aa4f9554..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 223017 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%0D4Kk2#OviF~i>=%7B{<_)lVhTrR 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 YYpbn6^k4S64crE9aK@ms#aRRRf8c3!TmS$7 From a430a269f09e3d26ac94cb9bacb1a372d1747514 Mon Sep 17 00:00:00 2001 From: golobitch Date: Sun, 28 Sep 2025 18:37:01 +0200 Subject: [PATCH 14/22] chore(locale): setup a folder structure for crowdin --- .../{kai-pos.en-US.properties => sources/messages.properties} | 0 .../messages.es-ES.properties} | 0 .../messages.ro-RO.properties} | 0 3 files changed, 0 insertions(+), 0 deletions(-) rename src/locales/{kai-pos.en-US.properties => sources/messages.properties} (100%) rename src/locales/{kai-pos.es-ES.properties => translations/messages.es-ES.properties} (100%) rename src/locales/{kai-pos.ro-RO.properties => translations/messages.ro-RO.properties} (100%) diff --git a/src/locales/kai-pos.en-US.properties b/src/locales/sources/messages.properties similarity index 100% rename from src/locales/kai-pos.en-US.properties rename to src/locales/sources/messages.properties diff --git a/src/locales/kai-pos.es-ES.properties b/src/locales/translations/messages.es-ES.properties similarity index 100% rename from src/locales/kai-pos.es-ES.properties rename to src/locales/translations/messages.es-ES.properties diff --git a/src/locales/kai-pos.ro-RO.properties b/src/locales/translations/messages.ro-RO.properties similarity index 100% rename from src/locales/kai-pos.ro-RO.properties rename to src/locales/translations/messages.ro-RO.properties From 801a34bfe1b5da0f4f5ff0cb798d6ff5534c8921 Mon Sep 17 00:00:00 2001 From: Tadej Golobic Date: Sun, 28 Sep 2025 18:41:04 +0200 Subject: [PATCH 15/22] Update Crowdin configuration file --- crowdin.yml | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 crowdin.yml diff --git a/crowdin.yml b/crowdin.yml new file mode 100644 index 0000000..7149c28 --- /dev/null +++ b/crowdin.yml @@ -0,0 +1,3 @@ +files: + - source: /src/locales/sources/messages.properties + translation: /src/locales/translations/messages.%locale%.properties From c8ca34e6f598c16b560c1685dc0bddaf7ffe401b Mon Sep 17 00:00:00 2001 From: Tadej Golobic Date: Sun, 28 Sep 2025 19:07:57 +0200 Subject: [PATCH 16/22] Update Crowdin configuration file --- crowdin.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/crowdin.yml b/crowdin.yml index 7149c28..5efffa9 100644 --- a/crowdin.yml +++ b/crowdin.yml @@ -1,3 +1,3 @@ files: - - source: /src/locales/sources/messages.properties + - source: src/locales/sources/*.properties translation: /src/locales/translations/messages.%locale%.properties From 0eed0bcd32e3e2ba8a53dbe9163399d106b9edd1 Mon Sep 17 00:00:00 2001 From: golobitch Date: Sun, 28 Sep 2025 21:03:31 +0200 Subject: [PATCH 17/22] fix(locale): line break --- src/locales/sources/messages.properties | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/locales/sources/messages.properties b/src/locales/sources/messages.properties index aadf854..ad19146 100644 --- a/src/locales/sources/messages.properties +++ b/src/locales/sources/messages.properties @@ -72,7 +72,8 @@ statuses-3-key-message=Please try again. #language page app-language=App Language select-language=Select your language -language-hint=Select your preferred languagesetup-qr-title=Setup by QR +language-hint=Select your preferred language +setup-qr-title=Setup by QR setup-qr-result-label=QR Data setup-qr-error=Camera access error setup-qr-instructions=Point the camera at a QR code. From b598beab75381f46e037361d8a701bd65fdcf4e7 Mon Sep 17 00:00:00 2001 From: Adrian Boros Date: Tue, 30 Sep 2025 14:16:44 +0300 Subject: [PATCH 18/22] fix: small cleanup --- .gitignore | 1 + src/index.scss | 3 --- tailwind.config.js | 32 -------------------------------- 3 files changed, 1 insertion(+), 35 deletions(-) delete mode 100644 tailwind.config.js diff --git a/.gitignore b/.gitignore index 988d234..2fe95b7 100644 --- a/.gitignore +++ b/.gitignore @@ -2,6 +2,7 @@ /node_modules /dist /build +/release /.env /.env.local /.env.development.local diff --git a/src/index.scss b/src/index.scss index f642afe..cd9cb74 100644 --- a/src/index.scss +++ b/src/index.scss @@ -129,8 +129,6 @@ input[type="date"]::-moz-focus-inner { border: 0; } -// --- Begin Tailwind to SCSS conversion --- - .min-h-screen { min-height: 100vh; } @@ -536,7 +534,6 @@ input[type="date"]::-moz-focus-inner { border-radius: 2rem; } - .max-w-md { max-width: 28rem; } diff --git a/tailwind.config.js b/tailwind.config.js deleted file mode 100644 index 735b143..0000000 --- a/tailwind.config.js +++ /dev/null @@ -1,32 +0,0 @@ -/** @type {import('tailwindcss').Config} */ -export default { - content: ["./src/index.html", "./src/**/*.{ts,tsx}"], - theme: { - extend: { - screens: { - kai: "270px", - }, - colors: { - transparent: 'transparent', - kaiBg: "#00ba91", - kaiAccent: "#82c51b", - kaiText: "#fff", - kaiMuted: "#b0b0b0", - }, - fontSize: { - xs: ["10px", "14px"], - sm: ["12px", "16px"], - base: ["14px", "18px"], - lg: ["16px", "20px"], - xl: ["18px", "22px"], - }, - borderRadius: { - kai: "8px", - }, - spacing: { - kai: "2px", - }, - }, - }, - plugins: [], -}; From 39cca43c1a742c6c3a346f4cacee9113c6bc558a Mon Sep 17 00:00:00 2001 From: Adrian Boros Date: Tue, 30 Sep 2025 14:17:35 +0300 Subject: [PATCH 19/22] fix: small cleanup and fix translations file renaming issue --- src/index.html | 14 +------------- src/pages/WaitCard.tsx | 4 ++-- 2 files changed, 3 insertions(+), 15 deletions(-) diff --git a/src/index.html b/src/index.html index d88f454..a025c4b 100644 --- a/src/index.html +++ b/src/index.html @@ -8,23 +8,11 @@ Interledger POS - +

    - \ No newline at end of file diff --git a/src/pages/WaitCard.tsx b/src/pages/WaitCard.tsx index 6a5012f..3942877 100644 --- a/src/pages/WaitCard.tsx +++ b/src/pages/WaitCard.tsx @@ -233,7 +233,7 @@ export default function WaitCard({ tabIndex={-1} className={`${className}`} > -
    +

    @@ -243,7 +243,7 @@ export default function WaitCard({

    )} - Hold card near the reader +
    From 7eec49a92c113a968b4e963ce5e2d8b3441441b6 Mon Sep 17 00:00:00 2001 From: Adrian Boros Date: Fri, 3 Oct 2025 22:15:20 +0300 Subject: [PATCH 20/22] Feat/pin page (#13) * feat: pin page, pin component and state logic * feat: extract a TransactionStatus component --- src/components/PinComponent.tsx | 82 ++++++++++++++++++++++++++++ src/components/TransactionStatus.tsx | 36 ++++++++++++ src/constants/statuses.ts | 7 +++ src/index.scss | 10 ++++ src/pages/Pin.tsx | 13 +++++ src/pages/Sell.tsx | 4 +- src/pages/WaitCard.tsx | 34 +++++------- src/routes/router.tsx | 2 + src/state/AppStore.tsx | 16 +++++- tsconfig.json | 35 +++++++++--- webpack.common.cjs | 1 + 11 files changed, 208 insertions(+), 32 deletions(-) create mode 100644 src/components/PinComponent.tsx create mode 100644 src/components/TransactionStatus.tsx create mode 100644 src/constants/statuses.ts create mode 100644 src/pages/Pin.tsx diff --git a/src/components/PinComponent.tsx b/src/components/PinComponent.tsx new file mode 100644 index 0000000..e42370c --- /dev/null +++ b/src/components/PinComponent.tsx @@ -0,0 +1,82 @@ +import { useEffect, useState } from "preact/hooks"; +import { route } from "preact-router"; +import { useAppStore } from "@state/AppStore"; + +const PIN_LENGTH = 4; + +export function PinComponent() { + const nav = route; + const { pin, setPin, pinTries, setPinTries } = useAppStore(); + const [localPin, setLocalPin] = useState(""); + const [error, setError] = useState(""); + + useEffect(() => { + setPinTries(0); + setPin(""); + setLocalPin(""); + setError(""); + }, []); + + const onKey = (key: string) => { + if (/^\d$/.test(key)) { + if (localPin.length < PIN_LENGTH) setLocalPin(localPin + key); + } else if (key === "Backspace" || key === "⌫") { + setLocalPin(localPin.slice(0, -1)); + } else if (key.toLowerCase() === "c") { + setLocalPin(""); + setError(""); + } + }; + + useEffect(() => { + const handleKeyDown = (e: KeyboardEvent) => { + if (e.repeat) return; + if (e.key >= "0" && e.key <= "9") { + onKey(e.key); + e.preventDefault(); + } else if (e.key === "Backspace") { + onKey("Backspace"); + e.preventDefault(); + } else if (e.key === "SoftLeft") { + nav("/menu"); + e.preventDefault(); + } else if (e.key.toLowerCase() === "c") { + onKey("c"); + e.preventDefault(); + } else if (e.key === "Enter") { + if (localPin.length === PIN_LENGTH) { + setPin(localPin); + setPinTries(pinTries + 1); + if (localPin === "1234") { + setPin(localPin); + setError(""); + nav("/menu"); + } else { + setError("Invalid PIN"); + setPin(""); + } + setLocalPin(""); + } + e.preventDefault(); + } + }; + window.addEventListener("keydown", handleKeyDown); + return () => window.removeEventListener("keydown", handleKeyDown); + }, [localPin, nav, pinTries, setPin, setPinTries]); + + return ( +
    +
    + {Array.from({ length: PIN_LENGTH }).map((_, i) => { + return ( +
    + {i < localPin.length ? "●" : "○"} +
    + ); + })} +
    {localPin} - {pin} +
    Tries: {pinTries}
    + {error &&
    {error}
    } +
    + ); +} diff --git a/src/components/TransactionStatus.tsx b/src/components/TransactionStatus.tsx new file mode 100644 index 0000000..463f643 --- /dev/null +++ b/src/components/TransactionStatus.tsx @@ -0,0 +1,36 @@ +import { formatCurrency } from "@lib/currency"; +import { statuses } from "@constants/statuses"; + +export function TransactionStatus({ + transactionStatus, + amount, + currency, +}: { + transactionStatus: number; + amount: string | undefined; + currency: string | undefined; +}) { + return ( +
    +

    + {transactionStatus === 0 && ( +

    + {formatCurrency(parseFloat(amount || "0"), currency || "EUR")} +

    + )} + +
    + +
    +
    + ); +} diff --git a/src/constants/statuses.ts b/src/constants/statuses.ts new file mode 100644 index 0000000..39e88f9 --- /dev/null +++ b/src/constants/statuses.ts @@ -0,0 +1,7 @@ +export const statuses = [ + { index: 0, key: "debit-card", icon: "debit-card" }, + { index: 1, key: "processing", icon: "processing" }, + { index: 2, key: "complete", icon: "checked" }, + { index: 3, key: "failed", icon: "failed" }, + { index: 4, key: "pin", icon: "" }, +]; diff --git a/src/index.scss b/src/index.scss index cd9cb74..b8371dd 100644 --- a/src/index.scss +++ b/src/index.scss @@ -291,6 +291,12 @@ input[type="date"]::-moz-focus-inner { /* 40px */ } +.text-5xl { + font-size: 3.5rem; + /* 48px */ + line-height: 4rem; +} + .font-normal { font-weight: 400; } @@ -311,6 +317,10 @@ input[type="date"]::-moz-focus-inner { font-variant-numeric: tabular-nums; } +.tracking-widest { + letter-spacing: 0.1em; +} + .italic { font-style: italic; } diff --git a/src/pages/Pin.tsx b/src/pages/Pin.tsx new file mode 100644 index 0000000..16e02bf --- /dev/null +++ b/src/pages/Pin.tsx @@ -0,0 +1,13 @@ +import { Footer } from "@components/Footer"; +import { Header } from "@components/Header"; +import { PinComponent } from "@components/PinComponent"; + +export default function Pin(_props: { path?: string }) { + return ( +
    +
    + +
    +
    + ); +} \ No newline at end of file diff --git a/src/pages/Sell.tsx b/src/pages/Sell.tsx index af75dd6..a1f772d 100644 --- a/src/pages/Sell.tsx +++ b/src/pages/Sell.tsx @@ -48,7 +48,9 @@ export default function Sell(_props: { path?: string }) { onKey("C"); e.preventDefault(); } else if (e.key === "Enter") { - if (parseFloat(amount || "0") > 0) { + if (parseFloat(amount || "0") > 1000) { + nav("/pin"); + } else if (parseFloat(amount || "0") > 0) { nav("/wait-card"); } e.preventDefault(); diff --git a/src/pages/WaitCard.tsx b/src/pages/WaitCard.tsx index 3942877..7507027 100644 --- a/src/pages/WaitCard.tsx +++ b/src/pages/WaitCard.tsx @@ -18,6 +18,9 @@ import { playRingtone } from "@lib/commonHelper"; import { formatCurrency } from "@lib/currency"; import { Header } from "@components/Header"; import { Footer } from "@components/Footer"; +import { PinComponent } from "@components/PinComponent"; +import { statuses } from "@constants/statuses"; +import { TransactionStatus } from "@components/TransactionStatus"; interface MozNFCTag { @@ -54,13 +57,6 @@ export default function WaitCard({ const [transactionStatus, setTransactionStatus] = useState(0); - const statuses = [ - { index: 0, key: "debit-card", icon: "debit-card" }, - { index: 1, key: "processing", icon: "processing" }, - { index: 2, key: "complete", icon: "checked" }, - { index: 3, key: "failed", icon: "failed" }, - - ]; const sendAPDUCommands = useCallback( async (tag: MozNFCTag) => { try { @@ -234,20 +230,16 @@ export default function WaitCard({ className={`${className}`} >
    -
    - -

    - {transactionStatus === 0 && ( -

    - {formatCurrency(parseFloat(amount || "0"), currency)} -

    - )} - - -
    - -
    -
    + {transactionStatus === 4 && ( + + )} + {transactionStatus < 4 && ( + + )}
    ); diff --git a/src/routes/router.tsx b/src/routes/router.tsx index 752ebab..01c1dcb 100644 --- a/src/routes/router.tsx +++ b/src/routes/router.tsx @@ -13,6 +13,7 @@ import Settings from "@pages/Settings"; import PaymentPointer from "@pages/PaymentPointer"; import Language from "@pages/Language"; import SetupByQR from "@pages/SetupByQR"; +import Pin from "@pages/Pin"; export default function AppRouter() { return ( @@ -29,6 +30,7 @@ export default function AppRouter() { + ); diff --git a/src/state/AppStore.tsx b/src/state/AppStore.tsx index 0ff1663..e24203e 100644 --- a/src/state/AppStore.tsx +++ b/src/state/AppStore.tsx @@ -18,6 +18,8 @@ export type Store = { locale: string; _hasHydrated: boolean; signSecret: string; + pin: string; + pinTries: number; }; type Action = @@ -28,7 +30,9 @@ type Action = | { type: "setError"; value: string | null } | { type: "setLocale"; value: string } | { type: "setHasHydrated"; value: boolean } - | { type: "setSignSecret"; value: string }; + | { type: "setSignSecret"; value: string } + | { type: "setPin"; value: string } + | { type: "setPinTries"; value: number } const sampleTx: Tx[] = [ { @@ -147,6 +151,8 @@ const initialState: Store = { locale: "en-US", _hasHydrated: false, signSecret: "", + pin: "", + pinTries: 0, }; function reducer(state: Store, action: Action): Store { @@ -167,6 +173,10 @@ function reducer(state: Store, action: Action): Store { return { ...state, _hasHydrated: action.value }; case "setSignSecret": return { ...state, signSecret: action.value }; + case "setPin": + return { ...state, pin: action.value }; + case "setPinTries": + return { ...state, pinTries: action.value }; default: return state; } @@ -205,6 +215,8 @@ export function AppStoreProvider({ dispatch({ type: "setError", value: parsed.error || null }); dispatch({ type: "setLocale", value: parsed.locale || "en-US" }); dispatch({ type: "setSignSecret", value: parsed.signSecret || "" }); + dispatch({ type: "setPin", value: parsed.pin || "" }); + dispatch({ type: "setPinTries", value: parsed.pinTries || 0 }); } if (!raw) { console.log("[AppStore] No persisted state found in localStorage"); @@ -257,6 +269,8 @@ export function useAppStore() { setHasHydrated: (v: boolean) => dispatch({ type: "setHasHydrated", value: v }), setSignSecret: (v: string) => dispatch({ type: "setSignSecret", value: v }), + setPin: (v: string) => dispatch({ type: "setPin", value: v }), + setPinTries: (v: number) => dispatch({ type: "setPinTries", value: v }), }; } diff --git a/tsconfig.json b/tsconfig.json index 5b6fc0d..e4805a6 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,6 +1,6 @@ { "compilerOptions": { - "target": "ES5", + "target": "ES5", "useDefineForClassFields": true, "lib": [ "es5", @@ -21,13 +21,30 @@ "strict": true, "baseUrl": "./", "paths": { - "@components/*": ["src/components/*"], - "@pages/*": ["src/pages/*"], - "@routes/*": ["src/routes/*"], - "@state/*": ["src/state/*"], - "@services/*": ["src/services/*"], - "@lib/*": ["src/lib/*"] + "@components/*": [ + "src/components/*" + ], + "@pages/*": [ + "src/pages/*" + ], + "@routes/*": [ + "src/routes/*" + ], + "@state/*": [ + "src/state/*" + ], + "@services/*": [ + "src/services/*" + ], + "@lib/*": [ + "src/lib/*" + ], + "@constants/*": [ + "src/constants/*" + ] } }, - "include": ["src"] -} + "include": [ + "src" + ] +} \ No newline at end of file diff --git a/webpack.common.cjs b/webpack.common.cjs index 7ec35fc..7709de8 100644 --- a/webpack.common.cjs +++ b/webpack.common.cjs @@ -38,6 +38,7 @@ module.exports = { "@state": resolveApp("./src/state/"), "@lib": resolveApp("./src/lib/"), "@services": resolveApp("./src/services/"), + "@constants": resolveApp("./src/constants/"), }, }, optimization: { From 91eb5c48ba4f5e77e302514eb2ac2021fab6a22a Mon Sep 17 00:00:00 2001 From: xplicit <111863110+beniaminmunteanu@users.noreply.github.com> Date: Sat, 4 Oct 2025 13:34:23 +0300 Subject: [PATCH 21/22] feat(pos): the payment flow now makes use of the different transaction status options, and also integrates the pin component (#14) --- src/components/PinComponent.tsx | 22 +++-- src/components/TransactionStatus.tsx | 10 +- src/lib/paymentService.ts | 51 +++++----- src/pages/Sell.tsx | 4 +- src/pages/WaitCard.tsx | 140 ++++++++++++++++++++------- src/state/AppStore.tsx | 13 ++- 6 files changed, 165 insertions(+), 75 deletions(-) diff --git a/src/components/PinComponent.tsx b/src/components/PinComponent.tsx index e42370c..8e7a777 100644 --- a/src/components/PinComponent.tsx +++ b/src/components/PinComponent.tsx @@ -4,15 +4,21 @@ import { useAppStore } from "@state/AppStore"; const PIN_LENGTH = 4; -export function PinComponent() { +type PinComponentProps = { + onComplete?: () => void; + onCancel?: () => void; +}; + +export function PinComponent({ onComplete, onCancel }: PinComponentProps) { const nav = route; - const { pin, setPin, pinTries, setPinTries } = useAppStore(); + const { pin, setPin, pinTries, setPinTries, setPinVerified } = useAppStore(); const [localPin, setLocalPin] = useState(""); const [error, setError] = useState(""); useEffect(() => { setPinTries(0); setPin(""); + setPinVerified(false); setLocalPin(""); setError(""); }, []); @@ -38,7 +44,8 @@ export function PinComponent() { onKey("Backspace"); e.preventDefault(); } else if (e.key === "SoftLeft") { - nav("/menu"); + if (onCancel) onCancel(); + else nav("/menu"); e.preventDefault(); } else if (e.key.toLowerCase() === "c") { onKey("c"); @@ -50,10 +57,13 @@ export function PinComponent() { if (localPin === "1234") { setPin(localPin); setError(""); - nav("/menu"); + setPinVerified(true); + if (onComplete) onComplete(); + else nav("/menu"); } else { setError("Invalid PIN"); setPin(""); + setPinVerified(false); } setLocalPin(""); } @@ -62,7 +72,7 @@ export function PinComponent() { }; window.addEventListener("keydown", handleKeyDown); return () => window.removeEventListener("keydown", handleKeyDown); - }, [localPin, nav, pinTries, setPin, setPinTries]); + }, [localPin, nav, onCancel, onComplete, pinTries, setPin, setPinTries]); return (
    @@ -74,7 +84,7 @@ export function PinComponent() {
    ); })} -
    {localPin} - {pin} +
    Tries: {pinTries}
    {error &&
    {error}
    }
    diff --git a/src/components/TransactionStatus.tsx b/src/components/TransactionStatus.tsx index 463f643..b7ae387 100644 --- a/src/components/TransactionStatus.tsx +++ b/src/components/TransactionStatus.tsx @@ -26,10 +26,12 @@ export function TransactionStatus({ className="mt-4 mb-2 px-4 text-xl text-center" >
    - + {statuses[transactionStatus].icon && ( + + )}
    ); diff --git a/src/lib/paymentService.ts b/src/lib/paymentService.ts index c1e634a..0fe841f 100644 --- a/src/lib/paymentService.ts +++ b/src/lib/paymentService.ts @@ -1,6 +1,5 @@ import type { TransactionData } from "./generateAC"; -// Payment data to be sent to Rafiki export interface PaymentServiceData { signature: string; // hex string (GEN AC result) payload: string; // hex string (GEN AC payload - raw data only) @@ -50,16 +49,15 @@ function uint8ArrayToHexString(uint8Array: Uint8Array): string { .join(""); } -// Send payment data to Rafiki POS service -export async function sendPaymentToRafiki( +export async function sendPaymentToPosService( paymentData: PaymentServiceData, signSecret: string, ): Promise<{ success: boolean; response?: any; error?: string }> { //Change this to your local service that exposes pos service (any link that redirects to -> localhost:4008/payment with rafiki localenv started) - const endpoint = "https://84c92ece1b62.ngrok-free.app/payment"; + const endpoint = "https://5f87cc0f2b55.ngrok-free.app/payment"; try { - console.log("=== SENDING PAYMENT TO RAFIKI ==="); + console.log("=== SENDING PAYMENT TO POS SERVICE ==="); console.log("Endpoint:", endpoint); console.log("Request data:", JSON.stringify(paymentData, null, 2)); @@ -68,7 +66,7 @@ export async function sendPaymentToRafiki( if (!signSecret) { console.warn( - "sendPaymentToRafiki called without signSecret; request will not be signed", + "sendPaymentToPosService called without signSecret; request will not be signed", ); } @@ -99,29 +97,32 @@ export async function sendPaymentToRafiki( body: jsonString, }); - console.log("=== RAFIKI RESPONSE ==="); + console.log("=== POS SERVICE RESPONSE ==="); console.log("Status:", response.status); - console.log("Status Text:", response.statusText); + const contentType = response.headers.get("content-type") || ""; + console.log("Content-Type:", contentType || ""); - // Get response text first to debug + // Read response body as text once const responseText = await response.text(); - console.log("Raw response text:", responseText); let responseData; - try { - responseData = JSON.parse(responseText); - console.log( - "Parsed response data:", - JSON.stringify(responseData, null, 2), - ); - } catch (parseError) { - console.error("Failed to parse response as JSON:", parseError); - console.error("Response text that failed to parse:", responseText); - return { - success: false, - error: `Invalid JSON response: ${parseError instanceof Error ? parseError.message : "Unknown parse error"}`, - response: responseText, - }; + const isJsonContentType = contentType.toLowerCase().includes("json"); + if (isJsonContentType) { + try { + responseData = JSON.parse(responseText); + } catch (parseError) { + return { + success: false, + error: `Invalid JSON response: ${ + parseError instanceof Error + ? parseError.message + : "Unknown parse error" + }`, + response: responseText, + }; + } + } else { + responseData = responseText; } if (response.ok) { @@ -134,7 +135,7 @@ export async function sendPaymentToRafiki( }; } } catch (error) { - console.error("=== RAFIKI REQUEST ERROR ==="); + console.error("=== POS SERVICE REQUEST ERROR ==="); console.error("Error:", error); return { success: false, diff --git a/src/pages/Sell.tsx b/src/pages/Sell.tsx index a1f772d..af75dd6 100644 --- a/src/pages/Sell.tsx +++ b/src/pages/Sell.tsx @@ -48,9 +48,7 @@ export default function Sell(_props: { path?: string }) { onKey("C"); e.preventDefault(); } else if (e.key === "Enter") { - if (parseFloat(amount || "0") > 1000) { - nav("/pin"); - } else if (parseFloat(amount || "0") > 0) { + if (parseFloat(amount || "0") > 0) { nav("/wait-card"); } e.preventDefault(); diff --git a/src/pages/WaitCard.tsx b/src/pages/WaitCard.tsx index 7507027..93ff215 100644 --- a/src/pages/WaitCard.tsx +++ b/src/pages/WaitCard.tsx @@ -11,7 +11,7 @@ import { } from "@lib/generateAC"; import { createPaymentServiceData, - sendPaymentToRafiki, + sendPaymentToPosService, } from "@lib/paymentService"; import { useAppStore } from "@state/AppStore"; import { playRingtone } from "@lib/commonHelper"; @@ -21,7 +21,7 @@ import { Footer } from "@components/Footer"; import { PinComponent } from "@components/PinComponent"; import { statuses } from "@constants/statuses"; import { TransactionStatus } from "@components/TransactionStatus"; - +import type { PaymentServiceData } from "@lib/paymentService"; interface MozNFCTag { id: Uint8Array; @@ -53,24 +53,34 @@ export default function WaitCard({ className = "", }: { path?: string } & WaitCardProps) { const panelRef = useRef(null); - const { currency, paymentPointer, amount, signSecret } = useAppStore(); - + const { + currency, + paymentPointer, + amount, + signSecret, + pinVerified, + setPinVerified, + } = useAppStore(); + const [preparedPayment, setPreparedPayment] = + useState(null); + + // 0: waiting for card, 4: pin, 1: processing, 2: complete, 3: failed const [transactionStatus, setTransactionStatus] = useState(0); const sendAPDUCommands = useCallback( - async (tag: MozNFCTag) => { + async (tag: MozNFCTag): Promise => { try { console.log("Starting APDU communication with tag..."); if (tag.techList.indexOf("ISO-DEP") === -1) { console.error("Tag does not support ISO-DEP protocol"); - return; + return null; } const tech = tag.selectTech("ISO-DEP"); if (!tech) { console.error("Failed to select ISO-DEP technology"); - return; + return null; } console.log("Selected ISO-DEP technology, tech object:", tech); @@ -99,34 +109,24 @@ export default function WaitCard({ console.log("=== GENERATE AC RESPONSE ==="); console.log(uint8ArrayToHexString(generateResponse)); - // Create payment json to be sent to rafiki + // Create payment json to be sent to pos service const paymentData = createPaymentServiceData( transactionData, generateResponse, rawData, timestamp, ); - - console.log("=== Rafiki payment JSON ==="); + console.log("=== POS SERVICE payment JSON (prepared) ==="); console.log(JSON.stringify(paymentData, null, 2)); - // Send payment to Rafiki POS service - const rafikiResult = await sendPaymentToRafiki(paymentData, signSecret); - - if (rafikiResult.success) { - console.log("Payment sent to Rafiki successfully!"); - // Play success sound - playRingtone?.(); - } else { - console.error( - "Failed to send payment to Rafiki:", - rafikiResult.error, - ); - } - - console.log("APDU communication completed successfully"); + console.log( + "APDU communication completed successfully; payment prepared", + ); + return paymentData; } catch (error) { console.error("Error during APDU communication:", error); + setTransactionStatus(3); // failed + return null; } }, [amount, paymentPointer, signSecret], @@ -156,11 +156,45 @@ export default function WaitCard({ if (typeof event.preventDefault === "function") { try { event.preventDefault(); - } catch { } + } catch {} } - // Send APDU commands - sendAPDUCommands(tag as MozNFCTag); + // Decide PIN requirement by amount + const amountNumber = parseFloat(amount || "0"); + const pinThreshold = 100; // threshold for requiring PIN + const requirePin = amountNumber > pinThreshold && !pinVerified; + + // Show processing while talking to the card + setTransactionStatus(1); + + (async () => { + const paymentData = await sendAPDUCommands(tag as MozNFCTag); + if (!paymentData) return; + setPreparedPayment(paymentData); + + if (requirePin) { + setTransactionStatus(4); + } else { + // Send directly to POS SERVICE + const posServiceResult = await sendPaymentToPosService( + paymentData, + signSecret, + ); + if (posServiceResult.success) { + console.log("Payment sent to POS SERVICE!"); + playRingtone?.(); + setPinVerified(false); + setPreparedPayment(null); + setTransactionStatus(2); + } else { + console.error( + "Failed to send payment to POS SERVIEC:", + posServiceResult.error, + ); + setTransactionStatus(3); + } + } + })(); } else { console.log( "Tag does not support required technologies:", @@ -168,7 +202,14 @@ export default function WaitCard({ ); } }, - [decrement, playRingtone, sendAPDUCommands], + [ + decrement, + playRingtone, + sendAPDUCommands, + amount, + pinVerified, + signSecret, + ], ); const handleTagLost = useCallback( @@ -215,7 +256,7 @@ export default function WaitCard({ route("/sell"); e.preventDefault(); } else if (e.key === "Enter") { - setTransactionStatus((s) => (s + 1) % statuses.length); + // prevent manual cycling; Enter does nothing here e.preventDefault(); } }; @@ -224,14 +265,41 @@ export default function WaitCard({ }, []); return ( -
    +
    {transactionStatus === 4 && ( - + { + // Mark verified and send prepared payment to POS service + setPinVerified(true); + if (preparedPayment) { + setTransactionStatus(1); + (async () => { + const posServiceResult = await sendPaymentToPosService( + preparedPayment, + signSecret, + ); + if (posServiceResult.success) { + playRingtone?.(); + setPinVerified(false); + setPreparedPayment(null); + setTransactionStatus(2); + } else { + console.error( + "Failed to send payment to POS service:", + posServiceResult.error, + ); + setTransactionStatus(3); + } + })(); + } else { + setTransactionStatus(3); + } + }} + onCancel={() => { + setTransactionStatus(3); + }} + /> )} {transactionStatus < 4 && ( ({ ...t, ts: t.ts instanceof Date ? t.ts.toISOString() : t.ts, @@ -271,6 +280,8 @@ export function useAppStore() { setSignSecret: (v: string) => dispatch({ type: "setSignSecret", value: v }), setPin: (v: string) => dispatch({ type: "setPin", value: v }), setPinTries: (v: number) => dispatch({ type: "setPinTries", value: v }), + setPinVerified: (v: boolean) => + dispatch({ type: "setPinVerified", value: v }), }; } From 86823b522059bbb8aee46b63c03f3d827f21aa1b Mon Sep 17 00:00:00 2001 From: Adrian Boros Date: Wed, 8 Oct 2025 12:56:44 +0300 Subject: [PATCH 22/22] feat: language page update, menu icon and translations updates (#15) * feat: language page update, menu icon and translations updates * fix: remove language hint as not needed --- src/components/icons/Check.tsx | 8 +++ src/components/icons/LangIcon.tsx | 21 ++++++++ src/locales/sources/messages.properties | 20 ++----- .../translations/messages.es-ES.properties | 28 +++++----- .../translations/messages.ro-RO.properties | 22 +++----- src/pages/Language.tsx | 54 ++++++++++--------- src/pages/Settings.tsx | 5 +- 7 files changed, 83 insertions(+), 75 deletions(-) create mode 100644 src/components/icons/Check.tsx create mode 100644 src/components/icons/LangIcon.tsx diff --git a/src/components/icons/Check.tsx b/src/components/icons/Check.tsx new file mode 100644 index 0000000..a587962 --- /dev/null +++ b/src/components/icons/Check.tsx @@ -0,0 +1,8 @@ +import { h } from "preact"; +export function CheckIcon({ fill = "#007E50", ...props }: { fill?: string } & preact.JSX.SVGAttributes) { + return ( + + + + ); +} diff --git a/src/components/icons/LangIcon.tsx b/src/components/icons/LangIcon.tsx new file mode 100644 index 0000000..d92cea7 --- /dev/null +++ b/src/components/icons/LangIcon.tsx @@ -0,0 +1,21 @@ +import { h } from "preact"; +export function LangIcon({ fill = "currentColor", ...props }: { fill?: string } & preact.JSX.SVGAttributes) { + return ( + + + + + + + + + + + + + + + + + ); +} diff --git a/src/locales/sources/messages.properties b/src/locales/sources/messages.properties index ad19146..03f17d6 100644 --- a/src/locales/sources/messages.properties +++ b/src/locales/sources/messages.properties @@ -1,16 +1,3 @@ -reader=Reader mode -card=Card mode -card-id=Card ID -card-tech=Card Type -template-button=Template Button -deduction-colon=Deduction: -debit-success=Successful! -place-card=Please place card at the bottom area. -use-right=Please use right NFC card. -kai-travel-card=KaiOS Travel Card -balance-colon=Balance: -aid-colon=AID: -newest-transaction=Newest transaction #common back=Back @@ -52,8 +39,6 @@ menu-payment-pointer=Payment pointer menu-payment-pointer-hint=Set or change payment pointer menu-language=Language menu-language-hint=Set or change language -menu-doamne=God bless -menu-doamne-hint=To everyone #sell page sell-amount=Enter amount @@ -73,6 +58,11 @@ statuses-3-key-message=Please try again. app-language=App Language select-language=Select your language language-hint=Select your preferred language +menu-en-US=English (US) +menu-ro-RO=Romanian (Romania) +menu-es-ES=Spanish (Spain) + +#setup qr page setup-qr-title=Setup by QR setup-qr-result-label=QR Data setup-qr-error=Camera access error diff --git a/src/locales/translations/messages.es-ES.properties b/src/locales/translations/messages.es-ES.properties index 232c90b..96392d4 100644 --- a/src/locales/translations/messages.es-ES.properties +++ b/src/locales/translations/messages.es-ES.properties @@ -1,17 +1,3 @@ -reader=Modo lector -card=Modo tarjeta -card-id=ID de tarjeta -card-tech=Tipo de tarjeta -template-button=Botón de plantilla -deduction-colon=Deducción: -debit-success=¡Éxito! -place-card=Por favor, coloque la tarjeta en la zona inferior. -use-right=Por favor, use la tarjeta NFC correcta. -kai-travel-card=Tarjeta de viaje KaiOS -balance-colon=Saldo: -aid-colon=AID: -newest-transaction=Transacción más reciente - #common back=Atrás select=Seleccionar @@ -44,14 +30,14 @@ menu-balance=Saldo menu-balance-hint=Ver transacciones recientes menu-eod=Informe de fin de día menu-eod-hint=Generar un informe de fin de día +menu-setup-qr=Configuración por QR +menu-setup-qr-hint=Escanee un código QR para configurar menu-settings=Configuración menu-settings-hint=Configurar dispositivo menu-payment-pointer=Identificador de pago menu-payment-pointer-hint=Establecer o cambiar identificador de pago menu-language=Idioma menu-language-hint=Establecer o cambiar idioma -menu-doamne=Dios bendiga -menu-doamne-hint=Para todos #sell page sell-amount=Ingrese el monto @@ -71,3 +57,13 @@ statuses-3-key-message=Por favor, inténtelo de nuevo. app-language=Idioma de la aplicación select-language=Seleccione su idioma language-hint=Seleccione su idioma preferido +menu-en-US=Inglés (EE.UU.) +menu-ro-RO=Rumano (Rumanía) +menu-es-ES=Español (España) + +#setup qr page +setup-qr-title=Configuración por QR +setup-qr-result-label=Datos del código QR +setup-qr-error=Error de acceso a la cámara +setup-qr-instructions=Apunte la cámara a un código QR. +setup-qr-no-result=Aún no se ha detectado un código QR. diff --git a/src/locales/translations/messages.ro-RO.properties b/src/locales/translations/messages.ro-RO.properties index d5f15e1..6d7be2b 100644 --- a/src/locales/translations/messages.ro-RO.properties +++ b/src/locales/translations/messages.ro-RO.properties @@ -1,17 +1,4 @@ -reader=Reader mode -card=Card mode -card-id=Card ID -card-tech=Card Type -template-button=Template Button -deduction-colon=Deduction: -debit-success=Successful! -place-card=Please place card at the bottom area. -use-right=Please use right NFC card. -kai-travel-card=KaiOS Travel Card -balance-colon=Balance: -aid-colon=AID: -newest-transaction=Newest transaction #common back=Înapoi @@ -43,7 +30,7 @@ last-transaction=Data și ora ultimei tranzacții menu-menu=Meniu menu-sell=Vinde menu-sell-hint=Începeți o nouă vânzare -menu-balance=Banlanța +menu-balance=Balanța menu-balance-hint=Vizualizați tranzacțiile recente menu-eod=Raport de încheiere a zilei menu-eod-hint=Generați raportul @@ -55,8 +42,6 @@ menu-payment-pointer=Pointer de plată menu-payment-pointer-hint=Setați sau schimbați pointerul de plată menu-language=Limbă menu-language-hint=Setați sau schimbați limba -menu-doamne=Doamne Ajută -menu-doamne-hint=La toată lumea #sell page sell-amount=Introduceți suma @@ -76,6 +61,11 @@ statuses-3-key-message=Încercați din nou. app-language=Limba aplicației select-language=Selectați limba dvs. language-hint=Selectați limba preferată +menu-en-US=Engleză (SUA) +menu-ro-RO=Română (România) +menu-es-ES=Spaniolă (Spania) + +#setup qr page setup-qr-title=Configurare prin QR setup-qr-result-label=Date din codul QR setup-qr-error=Eroare la accesarea camerei diff --git a/src/pages/Language.tsx b/src/pages/Language.tsx index b2843b7..62e7fc0 100644 --- a/src/pages/Language.tsx +++ b/src/pages/Language.tsx @@ -4,6 +4,7 @@ import { useEffect, useRef, useState } from "preact/hooks"; import { useAppStore } from "@state/AppStore"; import { Footer } from "@components/Footer"; import { Header } from "@components/Header"; +import { CheckIcon } from "@components/icons/Check"; export default function Language(_props: { path?: string }) { const nav = route; @@ -13,7 +14,7 @@ export default function Language(_props: { path?: string }) { setLocale, } = useAppStore(); const [focused, setFocused] = useState(0); - const inputRef = useRef(null); + const btnRefs = useRef<(HTMLButtonElement | null)[]>([]); const availableLanguages = [ { code: "en-US", label: "English" }, @@ -22,8 +23,7 @@ export default function Language(_props: { path?: string }) { ]; - function handleLocaleChange(e: Event) { - const newLocale = (e.target as HTMLSelectElement).value; + function handleLocaleChange(newLocale: string) { console.log("Changing locale to", newLocale); setLocale(newLocale); setTimeout(() => { @@ -36,6 +36,9 @@ export default function Language(_props: { path?: string }) { nav("/setup"); } }, []); + useEffect(() => { + btnRefs.current[focused]?.focus(); + }, [focused]); useEffect(() => { const handleKeyDown = (e: KeyboardEvent) => { @@ -44,16 +47,10 @@ export default function Language(_props: { path?: string }) { nav("/settings"); e.preventDefault(); } else if (e.key === "ArrowDown" || e.key === "ArrowRight") { - setFocused((f) => (f + 1) % 2); + setFocused((f) => (f + 1) % availableLanguages.length); e.preventDefault(); } else if (e.key === "ArrowUp" || e.key === "ArrowLeft") { - setFocused((f) => (f - 1 + 2) % 2); - e.preventDefault(); - } else if ((e.key === "Enter" || e.key === " ") && focused === 0) { - // Open the select dropdown for locale selection - inputRef.current?.focus(); - // Some browsers support showPicker for input, but not for select - // For select, focus is the best we can do + setFocused((f) => (f - 1 + availableLanguages.length) % availableLanguages.length); e.preventDefault(); } }; @@ -64,22 +61,27 @@ export default function Language(_props: { path?: string }) { return (
    -
    - -
    - -
    +
    +
    + +
    +
    + {locale === lang.code && } +
    +
    + + ))}
    diff --git a/src/pages/Settings.tsx b/src/pages/Settings.tsx index 4a9a9d2..86621bf 100644 --- a/src/pages/Settings.tsx +++ b/src/pages/Settings.tsx @@ -6,6 +6,7 @@ import { Footer } from "@components/Footer"; import { Header } from "@components/Header"; import { PpIcon } from "@components/icons/PpIcon"; import { ChevronIcon } from "@components/icons/ChevronIcon"; +import { LangIcon } from "@components/icons/LangIcon"; export default function Settings(_props: { path?: string }) { const nav = route; @@ -54,7 +55,7 @@ export default function Settings(_props: { path?: string }) { >

    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 { + const hex = byte.toString(16); + return hex.length === 1 ? "0" + hex : hex; + }) + .join(" "); +} + +// (12 digits) +export function createBCDAmount(amount: number): Uint8Array { + const amountStr = Math.floor(amount * 100) + .toString() + .padStart(12, "0"); + const bcd = new Uint8Array(6); + + for (let i = 0; i < 6; i++) { + const pair = amountStr.substr(i * 2, 2); + bcd[i] = parseInt(pair, 16); + } + + return bcd; +} + +export function createDate(date: Date): Uint8Array { + const year = date.getFullYear() % 100; + const month = date.getMonth() + 1; + const day = date.getDate(); + + return new Uint8Array([year, month, day]); +} + +export function currencyCodeToBytes(_currencyCode: string): Uint8Array { + // Hardcoded to EUR for now + return new Uint8Array([0x09, 0x78]); +} + +export function numberTo4Bytes(value: number): Uint8Array { + const bytes = new Uint8Array(4); + bytes[0] = (value >> 24) & 0xff; + bytes[1] = (value >> 16) & 0xff; + bytes[2] = (value >> 8) & 0xff; + bytes[3] = value & 0xff; + return bytes; +} + +export function dateStringToBytes(dateStr: string): Uint8Array { + const year = parseInt(dateStr.substr(0, 2), 10); + const month = parseInt(dateStr.substr(2, 2), 10); + const day = parseInt(dateStr.substr(4, 2), 10); + return new Uint8Array([year, month, day]); +} + +export function createTransactionData(amount = 10): TransactionData { + const now = new Date(); + const year = now.getFullYear() % 100; + const month = now.getMonth() + 1; + const day = now.getDate(); + + // Generate random 4-byte unpredictable number + const unpredictableNumber = Math.floor(Math.random() * 0x100000000); // 0 to 0xFFFFFFFF + + return { + amount, + currencyCode: "EUR", + transactionCurrencyExponent: 2, + date: `${year.toString().padStart(2, "0")}${month.toString().padStart(2, "0")}${day.toString().padStart(2, "0")}`, + unpredictableNumber: unpredictableNumber, + senderWalletAddress: "https://wallet.example/alice", + receiverWalletAddress: "https://wallet.example/alice", + }; +} + +export function createGenerateACCommand( + transactionData: TransactionData, +): Uint8Array { + // Convert transaction data to raw bytes for CDOL + const amountData = createBCDAmount(transactionData.amount / 100); + const currencyData = currencyCodeToBytes(transactionData.currencyCode); + const exponentData = new Uint8Array([ + transactionData.transactionCurrencyExponent, + ]); + const dateData = dateStringToBytes(transactionData.date); + const unpredictableData = numberTo4Bytes(transactionData.unpredictableNumber); + + const createPaddedPaymentPointer = (pointer: string): Uint8Array => { + const asciiData = new Uint8Array(64); + const encoder = new TextEncoder(); + const encoded = encoder.encode(pointer); + asciiData.set(encoded, 0); + // Rest is already padded with zeros + return asciiData; + }; + + const recipientData = createPaddedPaymentPointer( + transactionData.receiverWalletAddress, + ); + const senderData = createPaddedPaymentPointer( + transactionData.senderWalletAddress, + ); + + console.log("=== RAW DATA STRUCTURE ==="); + console.log("Amount (6 bytes):", uint8ArrayToHexString(amountData)); + console.log("Currency (2 bytes):", uint8ArrayToHexString(currencyData)); + console.log("Exponent (1 byte):", uint8ArrayToHexString(exponentData)); + console.log("Date (3 bytes):", uint8ArrayToHexString(dateData)); + console.log( + "Unpredictable (4 bytes):", + uint8ArrayToHexString(unpredictableData), + ); + console.log("Recipient (64 bytes):", uint8ArrayToHexString(recipientData)); + console.log("Sender (64 bytes):", uint8ArrayToHexString(senderData)); + + // Combine all raw data fields in order (no TLV encoding) + const rawDataFields = [ + amountData, // 6 bytes + currencyData, // 2 bytes + exponentData, // 1 byte + dateData, // 3 bytes + unpredictableData, // 4 bytes + recipientData, // 64 bytes + senderData, // 64 bytes + ]; + + const totalLength = rawDataFields.reduce( + (sum, field) => sum + field.length, + 0, + ); + console.log("Total raw data length:", totalLength, "bytes"); + + // Concatenate all raw data + const rawData = new Uint8Array(totalLength); + let offset = 0; + + for (const field of rawDataFields) { + rawData.set(field, offset); + offset += field.length; + } + + const commandHeader = hexStringToUint8Array(APDU_COMMANDS.GENERATE_AC); + const lc = new Uint8Array([rawData.length]); // Length of data + const le = new Uint8Array([0x00]); // Expected response length + + const completeCommand = new Uint8Array( + commandHeader.length + lc.length + rawData.length + le.length, + ); + + let cmdOffset = 0; + completeCommand.set(commandHeader, cmdOffset); + cmdOffset += commandHeader.length; + completeCommand.set(lc, cmdOffset); + cmdOffset += lc.length; + completeCommand.set(rawData, cmdOffset); + cmdOffset += rawData.length; + completeCommand.set(le, cmdOffset); + + return completeCommand; +} diff --git a/src/lib/paymentService.ts b/src/lib/paymentService.ts new file mode 100644 index 0000000..2255db9 --- /dev/null +++ b/src/lib/paymentService.ts @@ -0,0 +1,34 @@ +// paymentService.ts - Payment service utilities + +import type { TransactionData } from "./generateAC"; + +// Payment service data structure +export interface PaymentServiceData { + applicationTransactionCounter: string; + amount: number; + currencyCode: string; + transactionCurrencyExponent: number; + date: string; + unpredictableNumber: string; + senderWalletAddress: string; + receiverWalletAddress: string; +} + +export function createPaymentServiceData( + transactionData: TransactionData, +): PaymentServiceData { + return { + applicationTransactionCounter: transactionData.unpredictableNumber + .toString(16) + .padStart(8, "0"), + amount: transactionData.amount, // Already in cents + currencyCode: transactionData.currencyCode, + transactionCurrencyExponent: transactionData.transactionCurrencyExponent, + date: transactionData.date, + unpredictableNumber: transactionData.unpredictableNumber + .toString(16) + .padStart(8, "0"), + senderWalletAddress: transactionData.senderWalletAddress, + receiverWalletAddress: transactionData.receiverWalletAddress, + }; +} diff --git a/src/manifest.webapp.json b/src/manifest.webapp.json index c8b5c41..59dd11a 100644 --- a/src/manifest.webapp.json +++ b/src/manifest.webapp.json @@ -3,7 +3,7 @@ "version": "1.0.0", "description": "Interledger POS App that works with the Interledger cards", "launch_path": "/index.html", - "type": "web", + "type": "certified", "developer": { "name": "Interledger", "url": "https://github.com/interledger/", diff --git a/src/pages/Setup.tsx b/src/pages/Setup.tsx index 599d7d6..9430726 100644 --- a/src/pages/Setup.tsx +++ b/src/pages/Setup.tsx @@ -19,7 +19,9 @@ export default function Setup(_props: { path?: string }) { } const initialPointer = useRef(paymentPointer); - const [paymentPointerInput, setPaymentPointerInput] = useState(""); + const [paymentPointerInput, setPaymentPointerInput] = useState( + "https://ilp.dev/009", + ); useEffect(() => { setError(""); @@ -34,7 +36,11 @@ export default function Setup(_props: { path?: string }) { useEffect(() => { const handleKeyDown = (e: KeyboardEvent) => { - if (paymentPointer !== "" && paymentPointerInput !== "" && (e.key === "ArrowLeft" || e.key === "Backspace")) { + if ( + paymentPointer !== "" && + paymentPointerInput !== "" && + (e.key === "ArrowLeft" || e.key === "Backspace") + ) { console.log("Navigating to menu", paymentPointerInput); nav("/menu"); e.preventDefault(); @@ -51,7 +57,10 @@ export default function Setup(_props: { path?: string }) {