MoneroWalletFull.createSubaddress(0).getAddress() returns same address until its used
I want to create a unique sub address per transaction for my web app this code returns same sub address until its used

```TS
async function createSubaddress() {
    // Note: I have tried both viewOnly and full wallet!
    let viewOnlyWallet  = await openMoneroWallet();
    await viewOnlyWallet.sync();
    return (await viewOnlyWallet.createSubaddress(0)).getAddress();
}


function openMoneroWallet() {
    return moneroTs.openWalletFull({
        path: getWalletPath(),
        password: "****",
        networkType: moneroTs.MoneroNetworkType.STAGENET,
        server: {
            uri: "****"
        }
    })
    
}
```

In Monero GUI wallet going to receive and clicking create new address creates a new one every time you click it.
![image](https://github.com/user-attachments/assets/1914aed2-15ef-4c16-bef9-b56e55cd07f7)

I have looked through docs and code of the library and also Monero docs but I dont see why I cant create a sub address.

Am I doing something wrong or is this a bug with the library?

