diff --git a/src/app/modules/main/wallet_section/wallet_connect/controller.nim b/src/app/modules/main/wallet_section/wallet_connect/controller.nim index 8c5359e320..084b2b0131 100644 --- a/src/app/modules/main/wallet_section/wallet_connect/controller.nim +++ b/src/app/modules/main/wallet_section/wallet_connect/controller.nim @@ -74,6 +74,13 @@ QtObject: if not self.hasActivePairings.get(false): self.hasActivePairings = some(true) + proc deletePairing(self: Controller, topic: string) {.slot.} = + if backend.deletePairing(topic): + if self.hasActivePairings.get(false): + self.hasActivePairings = some(backend.hasActivePairings()) + else: + error "Failed to delete pairing" + proc getHasActivePairings*(self: Controller): bool {.slot.} = if self.hasActivePairings.isNone: self.hasActivePairings = some(backend.hasActivePairings()) diff --git a/src/backend/wallet_connect.nim b/src/backend/wallet_connect.nim index 565e0e18bc..15ee50c621 100644 --- a/src/backend/wallet_connect.nim +++ b/src/backend/wallet_connect.nim @@ -31,6 +31,10 @@ rpc(wCPairSessionProposal, "wallet"): rpc(wCRecordSuccessfulPairing, "wallet"): sessionProposalJson: string +rpc(wCChangePairingState, "wallet"): + topic: string + active: bool + rpc(wCHasActivePairings, "wallet"): discard @@ -39,9 +43,7 @@ rpc(wCSessionRequest, "wallet"): proc isErrorResponse(rpcResponse: RpcResponse[JsonNode]): bool = - if not rpcResponse.error.isNil: - return true - return false + return not rpcResponse.error.isNil proc prepareResponse(res: var JsonNode, rpcResponse: RpcResponse[JsonNode]): string = if isErrorResponse(rpcResponse): @@ -99,6 +101,14 @@ proc recordSuccessfulPairing*(sessionProposalJson: string): bool = warn e.msg return false +proc deletePairing*(topic: string): bool = + try: + let response = wCChangePairingState(topic, false) + return not isErrorResponse(response) + except Exception as e: + warn e.msg + return false + proc hasActivePairings*(): bool = try: let response = wCHasActivePairings() diff --git a/storybook/pages/WalletConnectPage.qml b/storybook/pages/WalletConnectPage.qml index a933b26f0a..9970908f11 100644 --- a/storybook/pages/WalletConnectPage.qml +++ b/storybook/pages/WalletConnectPage.qml @@ -34,9 +34,46 @@ Item { controller: WalletConnectController { pairSessionProposal: function(sessionProposalJson) { - proposeUserPair(sessionProposalJson, `{"eip155":{"methods":["eth_sendTransaction","personal_sign"],"chains":["eip155:5"],"events":["accountsChanged","chainChanged"],"accounts":["eip155:5:0x53780d79E83876dAA21beB8AFa87fd64CC29990b","eip155:5:0xBd54A96c0Ae19a220C8E1234f54c940DFAB34639","eip155:5:0x5D7905390b77A937Ae8c444aA8BF7Fa9a6A7DBA0"]}}`) + proposeUserPair(sessionProposalJson, `{"eip155":{"methods":[ + "personal_sign", + "eth_sendTransaction", + "eth_signTransaction", + "eth_sign", + "eth_signTypedData", + "eth_signTypedData_v4" + ], + "chains":["eip155:5"], + "events":[ + "chainChanged", + "accountsChanged" + ], + "accounts":["eip155:5:0xBd54A96c0Ae19a220C8E1234f54c940DFAB34639"]}}`) } + recordSuccessfulPairing: function(sessionProposalJson) { + const sessionProposal = JSON.parse(sessionProposalJson) + + pairingsModel.append({ + topic: sessionProposal.params.pairingTopic, + expiry: sessionProposal.params.expiry, + active: true, + }) + root.saveListModel(pairingsModel) + } + deletePairing: function(pairingTopic) { + var found = false + for (var i = 0; i < pairingsModel.count; i++) { + if (pairingsModel.get(i).topic === pairingTopic) { + pairingsModel.get.active = false + found = true + break; + } + } + if (!found) { + console.error("Mock Controller: pairing not found", pairingTopic) + } + root.saveListModel(pairingsModel) + } sessionRequest: function(sessionRequestJson, password) { const signedJson = "0x1234567890" this.respondSessionRequest(sessionRequestJson, signedJson, respondError.checked) @@ -74,6 +111,7 @@ Item { checked: wc.sdk.webEngineLoader.active enabled: false } + RowLayout { id: optionsHeader @@ -95,14 +133,64 @@ Item { checked: false } + StatusBaseText { text: "Pairings History"; font.bold: true } + StatusButton { + text: "Clear" + onClicked: { pairingsModel.clear(); root.saveListModel(pairingsModel); } + } + Pairings { + id: pairingsView + + Layout.fillWidth: true + Layout.minimumWidth: count > 0 ? 400 : 0 + Layout.preferredHeight: contentHeight + Layout.maximumHeight: 300 + + onDisconnect: function(pairingTopic) { + wc.sdk.disconnectPairing(pairingTopic) + } + + model: ListModel { + id: pairingsModel + } + clip: true + } + // spacer ColumnLayout {} } } + + Settings { id: settings + property bool hasActivePairings: hasActivePairingsCheckBox.checked + property string pairingsHistory: "" + } + + Component.onCompleted: { + loadListModel(pairingsModel) + } + + function saveListModel(model) { + var listArray = []; + for (var i = 0; i < model.count; i++) { + listArray.push(model.get(i)); + } + settings.pairingsHistory = JSON.stringify(listArray); + } + + function loadListModel(model) { + pairingsModel.clear(); + if (!settings.pairingsHistory) { + return; + } + var listArray = JSON.parse(settings.pairingsHistory); + listArray.forEach(function(entry) { + pairingsModel.append(entry); + }); } } diff --git a/storybook/stubs/nim/WalletConnectController.qml b/storybook/stubs/nim/WalletConnectController.qml index 6708e2a58d..a9fb3525aa 100644 --- a/storybook/stubs/nim/WalletConnectController.qml +++ b/storybook/stubs/nim/WalletConnectController.qml @@ -10,6 +10,10 @@ Item { // function pairSessionProposal(/*string*/ sessionProposalJson) required property var pairSessionProposal + // function pairSessionRequest(/*string*/ sessionRequestJson) + required property var recordSuccessfulPairing + // function deletePairing(/*string*/ topic) + required property var deletePairing signal respondSessionRequest(string sessionRequestJson, string signedJson, bool error) diff --git a/test/go/test-wallet_connect/go.sum b/test/go/test-wallet_connect/go.sum index dfd63fdfeb..ad57ef40ec 100644 --- a/test/go/test-wallet_connect/go.sum +++ b/test/go/test-wallet_connect/go.sum @@ -1988,8 +1988,8 @@ github.com/status-im/gomoji v1.1.3-0.20220213022530-e5ac4a8732d4/go.mod h1:hmpnZ github.com/status-im/keycard-go v0.0.0-20190316090335-8537d3370df4/go.mod h1:RZLeN1LMWmRsyYjvAu+I6Dm9QmlDaIIt+Y+4Kd7Tp+Q= github.com/status-im/keycard-go v0.0.0-20200402102358-957c09536969 h1:Oo2KZNP70KE0+IUJSidPj/BFS/RXNHmKIJOdckzml2E= github.com/status-im/keycard-go v0.0.0-20200402102358-957c09536969/go.mod h1:RZLeN1LMWmRsyYjvAu+I6Dm9QmlDaIIt+Y+4Kd7Tp+Q= -github.com/status-im/markdown v0.0.0-20230314100416-26c6f74522d5 h1:Mie/nQtRrI/+qqyV4j5ydesjoPh6v6KF583NOPLKFQY= -github.com/status-im/markdown v0.0.0-20230314100416-26c6f74522d5/go.mod h1:5rjPyv3KffPNVbFjnsVy0NGj9+JeW40WvXLdxH1VKuE= +github.com/status-im/markdown v0.0.0-20231114210825-6c2d15b5dc57 h1:AuJFXERIFVzUjf9rrTb8vamFubB6Ks/e8aUasDr4pOM= +github.com/status-im/markdown v0.0.0-20231114210825-6c2d15b5dc57/go.mod h1:5rjPyv3KffPNVbFjnsVy0NGj9+JeW40WvXLdxH1VKuE= github.com/status-im/migrate/v4 v4.6.2-status.2/go.mod h1:c/kc90n47GZu/58nnz1OMLTf7uE4Da4gZP5qmU+A/v8= github.com/status-im/migrate/v4 v4.6.2-status.3 h1:Khwjb59NzniloUr5i9s9AtkEyqBbQFt1lkoAu66sAu0= github.com/status-im/migrate/v4 v4.6.2-status.3/go.mod h1:c/kc90n47GZu/58nnz1OMLTf7uE4Da4gZP5qmU+A/v8= diff --git a/test/go/test-wallet_connect/helpers.go b/test/go/test-wallet_connect/helpers.go index b61d823097..d6e5a9be49 100644 --- a/test/go/test-wallet_connect/helpers.go +++ b/test/go/test-wallet_connect/helpers.go @@ -91,8 +91,9 @@ func callPrivateMethod(method string, params []interface{}) string { } type Config struct { - HashedPassword string `json:"hashedPassword"` - NodeConfigFile string `json:"nodeConfigFile"` + HashedPassword string `json:"hashedPassword"` + NodeConfigFile string `json:"nodeConfigFile"` + DataDir *string `json:"dataDir,omitempty"` } func processConfigArgs() (config *Config, nodeConfigJson string, userFolder string, err error) { @@ -128,6 +129,11 @@ func processConfigArgs() (config *Config, nodeConfigJson string, userFolder stri if err == nil { nodeConfigJson = string(nodeConfigData) } + + if config.DataDir != nil { + userFolder = *config.DataDir + } + return } diff --git a/test/go/test-wallet_connect/index.html b/test/go/test-wallet_connect/index.html index cfd19d361b..83b96b0188 100644 --- a/test/go/test-wallet_connect/index.html +++ b/test/go/test-wallet_connect/index.html @@ -9,6 +9,8 @@
diff --git a/test/go/test-wallet_connect/main.go b/test/go/test-wallet_connect/main.go index eac15253ce..9b238e03ea 100644 --- a/test/go/test-wallet_connect/main.go +++ b/test/go/test-wallet_connect/main.go @@ -63,9 +63,9 @@ func signalHandler(jsonEvent string) { return } // TODO: continue from here - if walletEvent.Type == "WalletConnectProposeUserPair" { - eventQueue <- GoEvent{Name: "proposeUserPair", Payload: walletEvent.Message} - } + // if walletEvent.Type == "WalletConnectProposeUserPair" { + // eventQueue <- GoEvent{Name: "proposeUserPair", Payload: walletEvent.Message} + // } } } @@ -91,30 +91,31 @@ func main() { w.SetTitle("WC status-go test") w.SetSize(1280, 1024, webview.HintNone) - w.Bind("pairSessionProposal", func(sessionProposalJson string) bool { - sessionProposalRes := callPrivateMethod("wallet_wCPairSessionProposal", []interface{}{sessionProposalJson}) - var apiResponse wc.PairSessionResponse - err = getRPCAPIResponse(sessionProposalRes, &apiResponse) - if err != nil { - l.Error("Error parsing the API response", "error", err) - return false - } - - go func() { - eventQueue <- GoEvent{Name: "proposeUserPair", Payload: apiResponse} - }() - - return true - }) - w.Bind("sessionRequest", func(sessionRequestJson, hashedPassword string) bool { - sessionReqRes := callPrivateMethod("wallet_wCSessionRequest", []interface{}{sessionRequestJson, hashedPassword}) + fmt.Println("sessionRequestJson:", sessionRequestJson) + sessionReqRes := callPrivateMethod("wallet_wCSessionRequest", []interface{}{sessionRequestJson}) + fmt.Println("sessionReqRes:", sessionReqRes) var apiResponse wc.SessionRequestResponse err = getRPCAPIResponse(sessionReqRes, &apiResponse) if err != nil { - l.Error("Error parsing the API response", "error", err) + l.Error("Error parsing wallet_wCSessionRequest response", "error", err) return false } + if apiResponse.SignOnKeycard { + l.Error("SignOnKeycard is not supported in this test") + return false + } + + sessionReqRes = callPrivateMethod("wallet_wCSignMessage", []interface{}{apiResponse.MessageToSign, apiResponse.Address, hashedPassword}) + fmt.Println("sessionReqRes:", sessionReqRes) + var signature string + err = getRPCAPIResponse(sessionReqRes, &signature) + if err != nil { + l.Error("Error parsing wallet_wCSignMessage response", "error", err) + return false + } + + // TODO: process the request type ... go func() { eventQueue <- GoEvent{Name: "sessionRequestResult", Payload: apiResponse} @@ -146,6 +147,9 @@ func main() { } }) + mockStatusObject(w) + mockController(w) + // Start a local server to serve the files http.HandleFunc("/bundle.js", func(w http.ResponseWriter, r *http.Request) { w.Header().Set("Cache-Control", "no-store, no-cache, must-revalidate, post-check=0, pre-check=0") @@ -162,3 +166,64 @@ func main() { w.Navigate("http://localhost:8080") w.Run() } + +func mockController(w webview.WebView) { + w.Bind("controller_recordSuccessfulPairing", func(sessionProposalJson string) { + fmt.Println("controller_recordSuccessfulPairing:", sessionProposalJson) + sessionProposalRes := callPrivateMethod("wallet_wCRecordSuccessfulPairing", []interface{}{sessionProposalJson}) + var apiResponse wc.PairSessionResponse + err := getRPCAPIResponse(sessionProposalRes, &apiResponse) + if err != nil { + l.Error("Error parsing the API response", "error", err) + } + }) + + w.Bind("controller_changePairingState", func(topic string, active bool) { + sessionProposalRes := callPrivateMethod("wallet_wCChangePairingState", []interface{}{topic, active}) + var apiResponse wc.PairSessionResponse + err := getRPCAPIResponse(sessionProposalRes, &apiResponse) + if err != nil { + l.Error("Error parsing the API response", "error", err) + } + }) +} + +func mockStatusObject(w webview.WebView) { + w.Bind("statusObject_sdkInitialized", func(error string) { + // All OK here + }) + w.Bind("statusObject_onSessionProposal", func(sessionProposalJson string) bool { + sessionProposalRes := callPrivateMethod("wallet_wCPairSessionProposal", []interface{}{sessionProposalJson}) + var apiResponse wc.PairSessionResponse + err := getRPCAPIResponse(sessionProposalRes, &apiResponse) + if err != nil { + l.Error("Error parsing the API response", "error", err) + return false + } + + go func() { + eventQueue <- GoEvent{Name: "proposeUserPair", Payload: apiResponse} + }() + + return true + }) + w.Bind("statusObject_onSessionRequest", func(sessionRequestJson string) bool { + sessionReqRes := callPrivateMethod("wallet_wCSessionRequest", []interface{}{sessionRequestJson}) + var apiResponse wc.SessionRequestResponse + err := getRPCAPIResponse(sessionReqRes, &apiResponse) + if err != nil { + l.Error("Error parsing the API response", "error", err) + return false + } + return true + }) + + // function onSessionUpdate(details) + // function onSessionExtend(details) + // function onSessionPing(details) + // function onSessionDelete(details) + // function onSessionExpire(details) + // function onSessionRequestSent(details) + // function onSessionEvent(details) + // function onProposalExpire(details) +} diff --git a/ui/app/AppLayouts/Wallet/views/walletconnect/Pairings.qml b/ui/app/AppLayouts/Wallet/views/walletconnect/Pairings.qml new file mode 100644 index 0000000000..b9b12b52d4 --- /dev/null +++ b/ui/app/AppLayouts/Wallet/views/walletconnect/Pairings.qml @@ -0,0 +1,37 @@ +import QtQuick 2.15 +import QtQuick.Controls 2.15 +import QtQuick.Layouts 1.15 + +import StatusQ.Controls 0.1 +import StatusQ.Core 0.1 +import StatusQ.Core.Utils 0.1 as SQUtils + +ListView { + id: root + + signal disconnect(string topic) + + delegate: Item { + implicitWidth: delegateLayout.implicitWidth + implicitHeight: delegateLayout.implicitHeight + + RowLayout { + id: delegateLayout + width: root.width + + StatusBaseText { + text: `${SQUtils.Utils.elideText(model.topic, 6, 6)}\n${new Date(model.expiry * 1000).toLocaleString()}` + color: model.active ? "green" : "orange" + } + StatusButton { + text: "Disconnect" + + visible: model.active + + onClicked: { + root.disconnect(model.topic) + } + } + } + } +} \ No newline at end of file diff --git a/ui/app/AppLayouts/Wallet/views/walletconnect/WalletConnect.qml b/ui/app/AppLayouts/Wallet/views/walletconnect/WalletConnect.qml index 9a9f700efb..f1e65ea040 100644 --- a/ui/app/AppLayouts/Wallet/views/walletconnect/WalletConnect.qml +++ b/ui/app/AppLayouts/Wallet/views/walletconnect/WalletConnect.qml @@ -28,5 +28,8 @@ Item { onSessionRequestEvent: (details) => { modal.openWithSessionRequestEvent(details) } + onSessionDelete: (deletePayload) => { + root.controller.deletePairing(deletePayload.topic) + } } } diff --git a/ui/app/AppLayouts/Wallet/views/walletconnect/WalletConnectModal.qml b/ui/app/AppLayouts/Wallet/views/walletconnect/WalletConnectModal.qml index 868c58b767..e2e644dd11 100644 --- a/ui/app/AppLayouts/Wallet/views/walletconnect/WalletConnectModal.qml +++ b/ui/app/AppLayouts/Wallet/views/walletconnect/WalletConnectModal.qml @@ -4,14 +4,13 @@ import QtQuick.Layouts 1.15 import StatusQ.Controls 0.1 import StatusQ.Core 0.1 -import StatusQ.Core.Utils 0.1 as SQUtils import StatusQ.Popups 0.1 Popup { id: root - implicitWidth: Math.min(mainLayout.implicitWidth, 400) - implicitHeight: Math.min(mainLayout.implicitHeight, 700) + implicitWidth: 500 + implicitHeight: Math.min(mainLayout.implicitHeight * 2, 700) required property WalletConnectSDK sdk @@ -38,89 +37,87 @@ Popup { anchors.fill: parent - contentWidth: mainLayout.width - contentHeight: mainLayout.height + contentWidth: mainLayout.implicitWidth + contentHeight: mainLayout.implicitHeight + + interactive: contentHeight > height || contentWidth > width ColumnLayout { - id: mainLayout + id: mainLayout - StatusBaseText { - text: qsTr("Debugging UX until design is ready") - } - - StatusInput { - id: pairLinkInput - - Layout.fillWidth: true - - placeholderText: "Insert pair link" - } - - RowLayout { - Layout.fillWidth: true - - StatusButton { - text: "Pair" - onClicked: { - statusText.text = "Pairing..." - sdk.pair(pairLinkInput.text) - } - enabled: pairLinkInput.text.length > 0 && sdk.sdkReady - } - - StatusButton { - text: "Auth" - onClicked: { - statusText.text = "Authenticating..." - sdk.auth() - } - enabled: false && pairLinkInput.text.length > 0 && sdk.sdkReady - } - - StatusButton { - text: "Accept" - onClicked: { - sdk.approvePairSession(d.sessionProposal, d.supportedNamespaces) - } - visible: d.state === d.waitingPairState - } - StatusButton { - text: "Reject" - onClicked: { - sdk.rejectPairSession(d.sessionProposal.id) - } - visible: d.state === d.waitingPairState - } - } - - ColumnLayout { StatusBaseText { - id: statusText - text: "-" + text: qsTr("Debugging UX until design is ready") } - StatusBaseText { - text: "Pairings" - visible: sdk.pairingsModel.count > 0 - } - StatusListView { + + StatusInput { + id: pairLinkInput + Layout.fillWidth: true - Layout.preferredHeight: contentHeight - Layout.maximumHeight: 200 - model: sdk.pairingsModel + placeholderText: "Insert pair link" + } - delegate: StatusBaseText { - text: `${SQUtils.Utils.elideText(topic, 6, 6)} - ${new Date(expiry * 1000).toLocaleString()}` - color: active ? "green" : "orange" + RowLayout { + Layout.fillWidth: true + + StatusButton { + text: "Pair" + + onClicked: { + statusText.text = "Pairing..." + sdk.pair(pairLinkInput.text) + } + enabled: pairLinkInput.text.length > 0 && sdk.sdkReady + } + + StatusButton { + text: "Auth" + onClicked: { + statusText.text = "Authenticating..." + sdk.auth() + } + enabled: false && pairLinkInput.text.length > 0 && sdk.sdkReady + } + + StatusButton { + text: "Accept" + onClicked: { + sdk.approvePairSession(d.sessionProposal, d.supportedNamespaces) + // Will trigger an onPairAcceptedResult if successful + } + visible: d.state === d.waitingPairState + } + StatusButton { + text: "Reject" + onClicked: { + sdk.rejectPairSession(d.sessionProposal.id) + } + visible: d.state === d.waitingPairState } } - Flickable { - Layout.fillWidth: true - Layout.preferredHeight: 200 - Layout.maximumHeight: 400 - contentWidth: detailsText.width - contentHeight: detailsText.height + ColumnLayout { + StatusBaseText { + id: statusText + text: "-" + } + StatusBaseText { + text: "Pairings" + visible: sdk.pairingsModel.count > 0 + } + + Pairings { + Layout.fillWidth: true + Layout.minimumWidth: count > 0 ? 400 : 0 + Layout.preferredHeight: contentHeight + Layout.maximumHeight: 300 + + model: sdk.pairingsModel + + onDisconnect: function (topic) { + sdk.disconnectPairing(topic) + } + } StatusBaseText { id: detailsText @@ -130,42 +127,37 @@ Popup { color: "#FF00FF" } - ScrollBar.vertical: ScrollBar {} + RowLayout { + StatusButton { + text: "Accept" + onClicked: { + root.controller.sessionRequest(JSON.stringify(d.sessionRequest), passwordInput.text) + } + visible: d.state === d.waitingUserResponseToSessionRequest + } + StatusButton { + text: "Reject" + onClicked: { + sdk.rejectSessionRequest(d.sessionRequest.topic, d.sessionRequest.id, false) + } + visible: d.state === d.waitingUserResponseToSessionRequest + } + StatusInput { + id: passwordInput - clip: true + text: "1234567890" + placeholderText: "Insert account password" + visible: d.state === d.waitingUserResponseToSessionRequest + } + } + + ColumnLayout { /* spacer */ } } - RowLayout { - StatusButton { - text: "Accept" - onClicked: { - root.controller.sessionRequest(JSON.stringify(d.sessionRequest), passwordInput.text) - } - visible: d.state === d.waitingUserResponseToSessionRequest - } - StatusButton { - text: "Reject" - onClicked: { - sdk.rejectSessionRequest(d.sessionRequest.topic, d.sessionRequest.id, false) - } - visible: d.state === d.waitingUserResponseToSessionRequest - } - StatusInput { - id: passwordInput - - text: "1234567890" - placeholderText: "Insert account password" - visible: d.state === d.waitingUserResponseToSessionRequest - } - } - - ColumnLayout { /* spacer */ } + // Separator + ColumnLayout {} } - // Separator - ColumnLayout {} - } - ScrollBar.vertical: ScrollBar {} clip: true @@ -190,7 +182,7 @@ Popup { if (success) { d.setStatusText("Pair ID: " + sessionProposal.id + "; Topic: " + sessionProposal.params.pairingTopic) root.controller.pairSessionProposal(JSON.stringify(sessionProposal)) - // Expecting signal onProposeUserPair from controller + // Expecting signal onProposeUserPair(..., true, ...) from controller } else { d.setStatusText("Pairing error", "red") } diff --git a/ui/app/AppLayouts/Wallet/views/walletconnect/WalletConnectSDK.qml b/ui/app/AppLayouts/Wallet/views/walletconnect/WalletConnectSDK.qml index 0eedc7a2ba..73a6a20ed2 100644 --- a/ui/app/AppLayouts/Wallet/views/walletconnect/WalletConnectSDK.qml +++ b/ui/app/AppLayouts/Wallet/views/walletconnect/WalletConnectSDK.qml @@ -31,11 +31,18 @@ Item { signal sessionRequestEvent(var sessionRequest) signal sessionRequestUserAnswerResult(bool accept, string error) + signal sessionDelete(var deletePayload) + function pair(pairLink) { wcCalls.pair(pairLink) } + function disconnectPairing(topic) + { + wcCalls.disconnectPairing(topic) + } + function approvePairSession(sessionProposal, supportedNamespaces) { wcCalls.approvePairSession(sessionProposal, supportedNamespaces) @@ -108,7 +115,7 @@ Item { function init() { console.debug(`WC WalletConnectSDK.wcCall.init; root.projectId: ${root.projectId}`) - d.engine.runJavaScript(`wc.init("${root.projectId}")`, function(result) { + d.engine.runJavaScript(`wc.init("${root.projectId}").catch((error) => {wc.statusObject.sdkInitialized("SDK init error: "+error);})`, function(result) { console.debug(`WC WalletConnectSDK.wcCall.init; response: ${JSON.stringify(result, null, 2)}`) @@ -252,6 +259,22 @@ Item { d.resetPairingsModel() }) } + + function disconnectPairing(topic) { + console.debug(`WC WalletConnectSDK.wcCall.disconnectPairing; topic: "${topic}"`) + + d.engine.runJavaScript(`wc.disconnect("${topic}")`, function(result) { + console.debug(`WC WalletConnectSDK.wcCall.disconnect; response: ${JSON.stringify(result, null, 2)}`) + + if (result) { + if (!!result.error) { + console.error("disconnect: ", result.error) + return + } + } + d.resetPairingsModel() + }) + } } QtObject { @@ -300,7 +323,8 @@ Item { function onSessionDelete(details) { - console.debug(`WC TODO WalletConnectSDK.onSessionDelete; details: ${JSON.stringify(details, null, 2)}`) + console.debug(`WC WalletConnectSDK.onSessionDelete; details: ${JSON.stringify(details, null, 2)}`) + root.sessionDelete(details) } function onSessionExpire(details) diff --git a/ui/app/AppLayouts/Wallet/views/walletconnect/qmldir b/ui/app/AppLayouts/Wallet/views/walletconnect/qmldir index 63841aa260..fb795772d3 100644 --- a/ui/app/AppLayouts/Wallet/views/walletconnect/qmldir +++ b/ui/app/AppLayouts/Wallet/views/walletconnect/qmldir @@ -1,3 +1,4 @@ WalletConnect 1.0 WalletConnect.qml WalletConnectModal 1.0 WalletConnectModal.qml -WalletConnectSDK 1.0 WalletConnectSDK.qml \ No newline at end of file +WalletConnectSDK 1.0 WalletConnectSDK.qml +Pairings 1.0 Pairings.qml \ No newline at end of file diff --git a/ui/app/AppLayouts/Wallet/views/walletconnect/sdk/README.md b/ui/app/AppLayouts/Wallet/views/walletconnect/sdk/README.md index 85eedebeac..df7affb1b1 100644 --- a/ui/app/AppLayouts/Wallet/views/walletconnect/sdk/README.md +++ b/ui/app/AppLayouts/Wallet/views/walletconnect/sdk/README.md @@ -18,7 +18,8 @@ Install dependencies steps by executing commands in this directory: - update the [`package.json`](./package.json) versions and run `npm install` - alternatively - use the command `npm install @ --save` for individual packages - - or to update to the latest run `npm update` in here + - or to update to the latest run `ncu -u; npm install` in here + - run `npm install -g npm-check-updates` for `ncu` command - these commands will also create or update a `package-lock.json` file and populate the `node_modules` directory - update the [`bundle.js`](./dist/main.js) file by running `npm run build` - the result will be embedded with the app and loaded by [`WalletConnectSDK.qml`](../WalletConnectSDK.qml) component diff --git a/ui/app/AppLayouts/Wallet/views/walletconnect/sdk/generated/bundle.js b/ui/app/AppLayouts/Wallet/views/walletconnect/sdk/generated/bundle.js index 8fadebf32a..11c742da3b 100644 --- a/ui/app/AppLayouts/Wallet/views/walletconnect/sdk/generated/bundle.js +++ b/ui/app/AppLayouts/Wallet/views/walletconnect/sdk/generated/bundle.js @@ -424,7 +424,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \***********************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CORE_CONTEXT: () => (/* binding */ X),\n/* harmony export */ CORE_DEFAULT: () => (/* binding */ Xe),\n/* harmony export */ CORE_PROTOCOL: () => (/* binding */ ue),\n/* harmony export */ CORE_STORAGE_OPTIONS: () => (/* binding */ Qe),\n/* harmony export */ CORE_STORAGE_PREFIX: () => (/* binding */ O),\n/* harmony export */ CORE_VERSION: () => (/* binding */ We),\n/* harmony export */ CRYPTO_CLIENT_SEED: () => (/* binding */ le),\n/* harmony export */ CRYPTO_CONTEXT: () => (/* binding */ Ze),\n/* harmony export */ CRYPTO_JWT_TTL: () => (/* binding */ et),\n/* harmony export */ Core: () => (/* binding */ Ar),\n/* harmony export */ Crypto: () => (/* binding */ _t),\n/* harmony export */ EXPIRER_CONTEXT: () => (/* binding */ It),\n/* harmony export */ EXPIRER_DEFAULT_TTL: () => (/* binding */ pr),\n/* harmony export */ EXPIRER_EVENTS: () => (/* binding */ v),\n/* harmony export */ EXPIRER_STORAGE_VERSION: () => (/* binding */ Ct),\n/* harmony export */ Expirer: () => (/* binding */ kt),\n/* harmony export */ HISTORY_CONTEXT: () => (/* binding */ wt),\n/* harmony export */ HISTORY_EVENTS: () => (/* binding */ R),\n/* harmony export */ HISTORY_STORAGE_VERSION: () => (/* binding */ vt),\n/* harmony export */ JsonRpcHistory: () => (/* binding */ Mt),\n/* harmony export */ KEYCHAIN_CONTEXT: () => (/* binding */ tt),\n/* harmony export */ KEYCHAIN_STORAGE_VERSION: () => (/* binding */ it),\n/* harmony export */ KeyChain: () => (/* binding */ Rt),\n/* harmony export */ MESSAGES_CONTEXT: () => (/* binding */ st),\n/* harmony export */ MESSAGES_STORAGE_VERSION: () => (/* binding */ rt),\n/* harmony export */ MessageTracker: () => (/* binding */ St),\n/* harmony export */ PAIRING_CONTEXT: () => (/* binding */ ft),\n/* harmony export */ PAIRING_DEFAULT_TTL: () => (/* binding */ gr),\n/* harmony export */ PAIRING_EVENTS: () => (/* binding */ B),\n/* harmony export */ PAIRING_RPC_OPTS: () => (/* binding */ F),\n/* harmony export */ PAIRING_STORAGE_VERSION: () => (/* binding */ Et),\n/* harmony export */ PENDING_SUB_RESOLUTION_TIMEOUT: () => (/* binding */ bt),\n/* harmony export */ PUBLISHER_CONTEXT: () => (/* binding */ at),\n/* harmony export */ PUBLISHER_DEFAULT_TTL: () => (/* binding */ nt),\n/* harmony export */ Pairing: () => (/* binding */ $t),\n/* harmony export */ RELAYER_CONTEXT: () => (/* binding */ ct),\n/* harmony export */ RELAYER_DEFAULT_LOGGER: () => (/* binding */ ht),\n/* harmony export */ RELAYER_DEFAULT_PROTOCOL: () => (/* binding */ ot),\n/* harmony export */ RELAYER_DEFAULT_RELAY_URL: () => (/* binding */ de),\n/* harmony export */ RELAYER_EVENTS: () => (/* binding */ D),\n/* harmony export */ RELAYER_FAILOVER_RELAY_URL: () => (/* binding */ ge),\n/* harmony export */ RELAYER_PROVIDER_EVENTS: () => (/* binding */ T),\n/* harmony export */ RELAYER_RECONNECT_TIMEOUT: () => (/* binding */ lt),\n/* harmony export */ RELAYER_SDK_VERSION: () => (/* binding */ dt),\n/* harmony export */ RELAYER_STORAGE_OPTIONS: () => (/* binding */ lr),\n/* harmony export */ RELAYER_SUBSCRIBER_SUFFIX: () => (/* binding */ ut),\n/* harmony export */ RELAYER_TRANSPORT_CUTOFF: () => (/* binding */ gt),\n/* harmony export */ Relayer: () => (/* binding */ zt),\n/* harmony export */ STORE_STORAGE_VERSION: () => (/* binding */ pt),\n/* harmony export */ SUBSCRIBER_CONTEXT: () => (/* binding */ yt),\n/* harmony export */ SUBSCRIBER_DEFAULT_TTL: () => (/* binding */ dr),\n/* harmony export */ SUBSCRIBER_EVENTS: () => (/* binding */ w),\n/* harmony export */ SUBSCRIBER_STORAGE_VERSION: () => (/* binding */ mt),\n/* harmony export */ Store: () => (/* binding */ Ft),\n/* harmony export */ Subscriber: () => (/* binding */ xt),\n/* harmony export */ VERIFY_CONTEXT: () => (/* binding */ Q),\n/* harmony export */ VERIFY_FALLBACK_SERVER: () => (/* binding */ pe),\n/* harmony export */ VERIFY_SERVER: () => (/* binding */ Z),\n/* harmony export */ Verify: () => (/* binding */ Kt),\n/* harmony export */ WALLETCONNECT_CLIENT_ID: () => (/* binding */ Dt),\n/* harmony export */ \"default\": () => (/* binding */ ee)\n/* harmony export */ });\n/* harmony import */ var events__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! events */ \"./node_modules/events/events.js\");\n/* harmony import */ var events__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(events__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _walletconnect_keyvaluestorage__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @walletconnect/keyvaluestorage */ \"./node_modules/@walletconnect/keyvaluestorage/dist/cjs/browser/index.js\");\n/* harmony import */ var _walletconnect_heartbeat__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @walletconnect/heartbeat */ \"./node_modules/@walletconnect/heartbeat/dist/cjs/index.js\");\n/* harmony import */ var _walletconnect_heartbeat__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_walletconnect_heartbeat__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @walletconnect/logger */ \"./node_modules/@walletconnect/logger/dist/cjs/index.js\");\n/* harmony import */ var _walletconnect_logger__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _walletconnect_types__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! @walletconnect/types */ \"./node_modules/@walletconnect/types/dist/index.es.js\");\n/* harmony import */ var _walletconnect_safe_json__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @walletconnect/safe-json */ \"./node_modules/@walletconnect/safe-json/dist/esm/index.js\");\n/* harmony import */ var _walletconnect_relay_auth__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @walletconnect/relay-auth */ \"./node_modules/@walletconnect/relay-auth/dist/esm/index.js\");\n/* harmony import */ var _walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! @walletconnect/utils */ \"./node_modules/@walletconnect/utils/dist/index.es.js\");\n/* harmony import */ var uint8arrays__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! uint8arrays */ \"./node_modules/uint8arrays/esm/src/index.js\");\n/* harmony import */ var _walletconnect_time__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @walletconnect/time */ \"./node_modules/@walletconnect/time/dist/cjs/index.js\");\n/* harmony import */ var _walletconnect_time__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_walletconnect_time__WEBPACK_IMPORTED_MODULE_7__);\n/* harmony import */ var _walletconnect_jsonrpc_provider__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @walletconnect/jsonrpc-provider */ \"./node_modules/@walletconnect/jsonrpc-provider/dist/esm/index.js\");\n/* harmony import */ var _walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @walletconnect/jsonrpc-utils */ \"./node_modules/@walletconnect/jsonrpc-utils/dist/esm/index.js\");\n/* harmony import */ var _walletconnect_jsonrpc_ws_connection__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @walletconnect/jsonrpc-ws-connection */ \"./node_modules/@walletconnect/jsonrpc-ws-connection/dist/esm/index.js\");\n/* harmony import */ var lodash_isequal__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! lodash.isequal */ \"./node_modules/lodash.isequal/index.js\");\n/* harmony import */ var lodash_isequal__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(lodash_isequal__WEBPACK_IMPORTED_MODULE_11__);\nfunction Ki(r,e){if(r.length>=255)throw new TypeError(\"Alphabet too long\");for(var t=new Uint8Array(256),i=0;i>>0,b=new Uint8Array(S);I!==_;){for(var P=c[I],A=0,C=S-1;(P!==0||A>>0,b[C]=P%o>>>0,P=P/o>>>0;if(P!==0)throw new Error(\"Non-zero carry\");z=A,I++}for(var x=S-z;x!==S&&b[x]===0;)x++;for(var q=h.repeat(m);x>>0,S=new Uint8Array(_);c[m];){var b=t[c.charCodeAt(m)];if(b===255)return;for(var P=0,A=_-1;(b!==0||P>>0,S[A]=b%256>>>0,b=b/256>>>0;if(b!==0)throw new Error(\"Non-zero carry\");I=P,m++}if(c[m]!==\" \"){for(var C=_-I;C!==_&&S[C]===0;)C++;for(var x=new Uint8Array(z+(_-C)),q=z;C!==_;)x[q++]=S[C++];return x}}}function $(c){var m=y(c);if(m)return m;throw new Error(`Non-${e} character`)}return{encode:p,decodeUnsafe:y,decode:$}}var Bi=Ki,Vi=Bi;const ze=r=>{if(r instanceof Uint8Array&&r.constructor.name===\"Uint8Array\")return r;if(r instanceof ArrayBuffer)return new Uint8Array(r);if(ArrayBuffer.isView(r))return new Uint8Array(r.buffer,r.byteOffset,r.byteLength);throw new Error(\"Unknown type, must be binary type\")},qi=r=>new TextEncoder().encode(r),ji=r=>new TextDecoder().decode(r);class Yi{constructor(e,t,i){this.name=e,this.prefix=t,this.baseEncode=i}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error(\"Unknown type, must be binary type\")}}class Gi{constructor(e,t,i){if(this.name=e,this.prefix=t,t.codePointAt(0)===void 0)throw new Error(\"Invalid prefix character\");this.prefixCodePoint=t.codePointAt(0),this.baseDecode=i}decode(e){if(typeof e==\"string\"){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}else throw Error(\"Can only multibase decode strings\")}or(e){return Ne(this,e)}}class Hi{constructor(e){this.decoders=e}or(e){return Ne(this,e)}decode(e){const t=e[0],i=this.decoders[t];if(i)return i.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}}const Ne=(r,e)=>new Hi({...r.decoders||{[r.prefix]:r},...e.decoders||{[e.prefix]:e}});class Ji{constructor(e,t,i,s){this.name=e,this.prefix=t,this.baseEncode=i,this.baseDecode=s,this.encoder=new Yi(e,t,i),this.decoder=new Gi(e,t,s)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}}const W=({name:r,prefix:e,encode:t,decode:i})=>new Ji(r,e,t,i),K=({prefix:r,name:e,alphabet:t})=>{const{encode:i,decode:s}=Vi(t,e);return W({prefix:r,name:e,encode:i,decode:n=>ze(s(n))})},Wi=(r,e,t,i)=>{const s={};for(let d=0;d=8&&(o-=8,a[u++]=255&h>>o)}if(o>=t||255&h<<8-o)throw new SyntaxError(\"Unexpected end of data\");return a},Xi=(r,e,t)=>{const i=e[e.length-1]===\"=\",s=(1<t;)a-=t,n+=e[s&o>>a];if(a&&(n+=e[s&o<W({prefix:e,name:r,encode(s){return Xi(s,i,t)},decode(s){return Wi(s,i,t,r)}}),Qi=W({prefix:\"\\0\",name:\"identity\",encode:r=>ji(r),decode:r=>qi(r)});var Zi=Object.freeze({__proto__:null,identity:Qi});const es=g({prefix:\"0\",name:\"base2\",alphabet:\"01\",bitsPerChar:1});var ts=Object.freeze({__proto__:null,base2:es});const is=g({prefix:\"7\",name:\"base8\",alphabet:\"01234567\",bitsPerChar:3});var ss=Object.freeze({__proto__:null,base8:is});const rs=K({prefix:\"9\",name:\"base10\",alphabet:\"0123456789\"});var ns=Object.freeze({__proto__:null,base10:rs});const as=g({prefix:\"f\",name:\"base16\",alphabet:\"0123456789abcdef\",bitsPerChar:4}),os=g({prefix:\"F\",name:\"base16upper\",alphabet:\"0123456789ABCDEF\",bitsPerChar:4});var hs=Object.freeze({__proto__:null,base16:as,base16upper:os});const cs=g({prefix:\"b\",name:\"base32\",alphabet:\"abcdefghijklmnopqrstuvwxyz234567\",bitsPerChar:5}),us=g({prefix:\"B\",name:\"base32upper\",alphabet:\"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567\",bitsPerChar:5}),ls=g({prefix:\"c\",name:\"base32pad\",alphabet:\"abcdefghijklmnopqrstuvwxyz234567=\",bitsPerChar:5}),ds=g({prefix:\"C\",name:\"base32padupper\",alphabet:\"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=\",bitsPerChar:5}),gs=g({prefix:\"v\",name:\"base32hex\",alphabet:\"0123456789abcdefghijklmnopqrstuv\",bitsPerChar:5}),ps=g({prefix:\"V\",name:\"base32hexupper\",alphabet:\"0123456789ABCDEFGHIJKLMNOPQRSTUV\",bitsPerChar:5}),Ds=g({prefix:\"t\",name:\"base32hexpad\",alphabet:\"0123456789abcdefghijklmnopqrstuv=\",bitsPerChar:5}),ys=g({prefix:\"T\",name:\"base32hexpadupper\",alphabet:\"0123456789ABCDEFGHIJKLMNOPQRSTUV=\",bitsPerChar:5}),ms=g({prefix:\"h\",name:\"base32z\",alphabet:\"ybndrfg8ejkmcpqxot1uwisza345h769\",bitsPerChar:5});var bs=Object.freeze({__proto__:null,base32:cs,base32upper:us,base32pad:ls,base32padupper:ds,base32hex:gs,base32hexupper:ps,base32hexpad:Ds,base32hexpadupper:ys,base32z:ms});const fs=K({prefix:\"k\",name:\"base36\",alphabet:\"0123456789abcdefghijklmnopqrstuvwxyz\"}),Es=K({prefix:\"K\",name:\"base36upper\",alphabet:\"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ\"});var ws=Object.freeze({__proto__:null,base36:fs,base36upper:Es});const vs=K({name:\"base58btc\",prefix:\"z\",alphabet:\"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz\"}),Is=K({name:\"base58flickr\",prefix:\"Z\",alphabet:\"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ\"});var Cs=Object.freeze({__proto__:null,base58btc:vs,base58flickr:Is});const Rs=g({prefix:\"m\",name:\"base64\",alphabet:\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\",bitsPerChar:6}),_s=g({prefix:\"M\",name:\"base64pad\",alphabet:\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\",bitsPerChar:6}),Ss=g({prefix:\"u\",name:\"base64url\",alphabet:\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_\",bitsPerChar:6}),Ps=g({prefix:\"U\",name:\"base64urlpad\",alphabet:\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=\",bitsPerChar:6});var Ts=Object.freeze({__proto__:null,base64:Rs,base64pad:_s,base64url:Ss,base64urlpad:Ps});const Le=Array.from(\"\\u{1F680}\\u{1FA90}\\u2604\\u{1F6F0}\\u{1F30C}\\u{1F311}\\u{1F312}\\u{1F313}\\u{1F314}\\u{1F315}\\u{1F316}\\u{1F317}\\u{1F318}\\u{1F30D}\\u{1F30F}\\u{1F30E}\\u{1F409}\\u2600\\u{1F4BB}\\u{1F5A5}\\u{1F4BE}\\u{1F4BF}\\u{1F602}\\u2764\\u{1F60D}\\u{1F923}\\u{1F60A}\\u{1F64F}\\u{1F495}\\u{1F62D}\\u{1F618}\\u{1F44D}\\u{1F605}\\u{1F44F}\\u{1F601}\\u{1F525}\\u{1F970}\\u{1F494}\\u{1F496}\\u{1F499}\\u{1F622}\\u{1F914}\\u{1F606}\\u{1F644}\\u{1F4AA}\\u{1F609}\\u263A\\u{1F44C}\\u{1F917}\\u{1F49C}\\u{1F614}\\u{1F60E}\\u{1F607}\\u{1F339}\\u{1F926}\\u{1F389}\\u{1F49E}\\u270C\\u2728\\u{1F937}\\u{1F631}\\u{1F60C}\\u{1F338}\\u{1F64C}\\u{1F60B}\\u{1F497}\\u{1F49A}\\u{1F60F}\\u{1F49B}\\u{1F642}\\u{1F493}\\u{1F929}\\u{1F604}\\u{1F600}\\u{1F5A4}\\u{1F603}\\u{1F4AF}\\u{1F648}\\u{1F447}\\u{1F3B6}\\u{1F612}\\u{1F92D}\\u2763\\u{1F61C}\\u{1F48B}\\u{1F440}\\u{1F62A}\\u{1F611}\\u{1F4A5}\\u{1F64B}\\u{1F61E}\\u{1F629}\\u{1F621}\\u{1F92A}\\u{1F44A}\\u{1F973}\\u{1F625}\\u{1F924}\\u{1F449}\\u{1F483}\\u{1F633}\\u270B\\u{1F61A}\\u{1F61D}\\u{1F634}\\u{1F31F}\\u{1F62C}\\u{1F643}\\u{1F340}\\u{1F337}\\u{1F63B}\\u{1F613}\\u2B50\\u2705\\u{1F97A}\\u{1F308}\\u{1F608}\\u{1F918}\\u{1F4A6}\\u2714\\u{1F623}\\u{1F3C3}\\u{1F490}\\u2639\\u{1F38A}\\u{1F498}\\u{1F620}\\u261D\\u{1F615}\\u{1F33A}\\u{1F382}\\u{1F33B}\\u{1F610}\\u{1F595}\\u{1F49D}\\u{1F64A}\\u{1F639}\\u{1F5E3}\\u{1F4AB}\\u{1F480}\\u{1F451}\\u{1F3B5}\\u{1F91E}\\u{1F61B}\\u{1F534}\\u{1F624}\\u{1F33C}\\u{1F62B}\\u26BD\\u{1F919}\\u2615\\u{1F3C6}\\u{1F92B}\\u{1F448}\\u{1F62E}\\u{1F646}\\u{1F37B}\\u{1F343}\\u{1F436}\\u{1F481}\\u{1F632}\\u{1F33F}\\u{1F9E1}\\u{1F381}\\u26A1\\u{1F31E}\\u{1F388}\\u274C\\u270A\\u{1F44B}\\u{1F630}\\u{1F928}\\u{1F636}\\u{1F91D}\\u{1F6B6}\\u{1F4B0}\\u{1F353}\\u{1F4A2}\\u{1F91F}\\u{1F641}\\u{1F6A8}\\u{1F4A8}\\u{1F92C}\\u2708\\u{1F380}\\u{1F37A}\\u{1F913}\\u{1F619}\\u{1F49F}\\u{1F331}\\u{1F616}\\u{1F476}\\u{1F974}\\u25B6\\u27A1\\u2753\\u{1F48E}\\u{1F4B8}\\u2B07\\u{1F628}\\u{1F31A}\\u{1F98B}\\u{1F637}\\u{1F57A}\\u26A0\\u{1F645}\\u{1F61F}\\u{1F635}\\u{1F44E}\\u{1F932}\\u{1F920}\\u{1F927}\\u{1F4CC}\\u{1F535}\\u{1F485}\\u{1F9D0}\\u{1F43E}\\u{1F352}\\u{1F617}\\u{1F911}\\u{1F30A}\\u{1F92F}\\u{1F437}\\u260E\\u{1F4A7}\\u{1F62F}\\u{1F486}\\u{1F446}\\u{1F3A4}\\u{1F647}\\u{1F351}\\u2744\\u{1F334}\\u{1F4A3}\\u{1F438}\\u{1F48C}\\u{1F4CD}\\u{1F940}\\u{1F922}\\u{1F445}\\u{1F4A1}\\u{1F4A9}\\u{1F450}\\u{1F4F8}\\u{1F47B}\\u{1F910}\\u{1F92E}\\u{1F3BC}\\u{1F975}\\u{1F6A9}\\u{1F34E}\\u{1F34A}\\u{1F47C}\\u{1F48D}\\u{1F4E3}\\u{1F942}\"),xs=Le.reduce((r,e,t)=>(r[t]=e,r),[]),Os=Le.reduce((r,e,t)=>(r[e.codePointAt(0)]=t,r),[]);function As(r){return r.reduce((e,t)=>(e+=xs[t],e),\"\")}function zs(r){const e=[];for(const t of r){const i=Os[t.codePointAt(0)];if(i===void 0)throw new Error(`Non-base256emoji character: ${t}`);e.push(i)}return new Uint8Array(e)}const Ns=W({prefix:\"\\u{1F680}\",name:\"base256emoji\",encode:As,decode:zs});var Ls=Object.freeze({__proto__:null,base256emoji:Ns}),Us=Fe,Ue=128,Fs=127,$s=~Fs,Ms=Math.pow(2,31);function Fe(r,e,t){e=e||[],t=t||0;for(var i=t;r>=Ms;)e[t++]=r&255|Ue,r/=128;for(;r&$s;)e[t++]=r&255|Ue,r>>>=7;return e[t]=r|0,Fe.bytes=t-i+1,e}var ks=oe,Ks=128,$e=127;function oe(r,i){var t=0,i=i||0,s=0,n=i,a,o=r.length;do{if(n>=o)throw oe.bytes=0,new RangeError(\"Could not decode varint\");a=r[n++],t+=s<28?(a&$e)<=Ks);return oe.bytes=n-i,t}var Bs=Math.pow(2,7),Vs=Math.pow(2,14),qs=Math.pow(2,21),js=Math.pow(2,28),Ys=Math.pow(2,35),Gs=Math.pow(2,42),Hs=Math.pow(2,49),Js=Math.pow(2,56),Ws=Math.pow(2,63),Xs=function(r){return r(Me.encode(r,e,t),e),Ke=r=>Me.encodingLength(r),he=(r,e)=>{const t=e.byteLength,i=Ke(r),s=i+Ke(t),n=new Uint8Array(s+t);return ke(r,n,0),ke(t,n,i),n.set(e,s),new Zs(r,t,e,n)};class Zs{constructor(e,t,i,s){this.code=e,this.size=t,this.digest=i,this.bytes=s}}const Be=({name:r,code:e,encode:t})=>new er(r,e,t);class er{constructor(e,t,i){this.name=e,this.code=t,this.encode=i}digest(e){if(e instanceof Uint8Array){const t=this.encode(e);return t instanceof Uint8Array?he(this.code,t):t.then(i=>he(this.code,i))}else throw Error(\"Unknown type, must be binary type\")}}const Ve=r=>async e=>new Uint8Array(await crypto.subtle.digest(r,e)),tr=Be({name:\"sha2-256\",code:18,encode:Ve(\"SHA-256\")}),ir=Be({name:\"sha2-512\",code:19,encode:Ve(\"SHA-512\")});var sr=Object.freeze({__proto__:null,sha256:tr,sha512:ir});const qe=0,rr=\"identity\",je=ze,nr=r=>he(qe,je(r)),ar={code:qe,name:rr,encode:je,digest:nr};var or=Object.freeze({__proto__:null,identity:ar});new TextEncoder,new TextDecoder;const Ye={...Zi,...ts,...ss,...ns,...hs,...bs,...ws,...Cs,...Ts,...Ls};({...sr,...or});function Ge(r){return globalThis.Buffer!=null?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r}function hr(r=0){return globalThis.Buffer!=null&&globalThis.Buffer.allocUnsafe!=null?Ge(globalThis.Buffer.allocUnsafe(r)):new Uint8Array(r)}function He(r,e,t,i){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:t},decoder:{decode:i}}}const Je=He(\"utf8\",\"u\",r=>\"u\"+new TextDecoder(\"utf8\").decode(r),r=>new TextEncoder().encode(r.substring(1))),ce=He(\"ascii\",\"a\",r=>{let e=\"a\";for(let t=0;t{r=r.substring(1);const e=hr(r.length);for(let t=0;t{if(!this.initialized){const i=await this.getKeyChain();typeof i<\"u\"&&(this.keychain=i),this.initialized=!0}},this.has=i=>(this.isInitialized(),this.keychain.has(i)),this.set=async(i,s)=>{this.isInitialized(),this.keychain.set(i,s),await this.persist()},this.get=i=>{this.isInitialized();const s=this.keychain.get(i);if(typeof s>\"u\"){const{message:n}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"NO_MATCHING_KEY\",`${this.name}: ${i}`);throw new Error(n)}return s},this.del=async i=>{this.isInitialized(),this.keychain.delete(i),await this.persist()},this.core=e,this.logger=(0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.generateChildLogger)(t,this.name)}get context(){return (0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.getLoggerContext)(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+\"//\"+this.name}async setKeyChain(e){await this.core.storage.setItem(this.storageKey,(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.mapToObj)(e))}async getKeyChain(){const e=await this.core.storage.getItem(this.storageKey);return typeof e<\"u\"?(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.objToMap)(e):void 0}async persist(){await this.setKeyChain(this.keychain)}isInitialized(){if(!this.initialized){const{message:e}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"NOT_INITIALIZED\",this.name);throw new Error(e)}}}class _t{constructor(e,t,i){this.core=e,this.logger=t,this.name=Ze,this.initialized=!1,this.init=async()=>{this.initialized||(await this.keychain.init(),this.initialized=!0)},this.hasKeys=s=>(this.isInitialized(),this.keychain.has(s)),this.getClientId=async()=>{this.isInitialized();const s=await this.getClientSeed(),n=_walletconnect_relay_auth__WEBPACK_IMPORTED_MODULE_5__.generateKeyPair(s);return _walletconnect_relay_auth__WEBPACK_IMPORTED_MODULE_5__.encodeIss(n.publicKey)},this.generateKeyPair=()=>{this.isInitialized();const s=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.generateKeyPair)();return this.setPrivateKey(s.publicKey,s.privateKey)},this.signJWT=async s=>{this.isInitialized();const n=await this.getClientSeed(),a=_walletconnect_relay_auth__WEBPACK_IMPORTED_MODULE_5__.generateKeyPair(n),o=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.generateRandomBytes32)(),h=et;return await _walletconnect_relay_auth__WEBPACK_IMPORTED_MODULE_5__.signJWT(o,s,h,a)},this.generateSharedKey=(s,n,a)=>{this.isInitialized();const o=this.getPrivateKey(s),h=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.deriveSymKey)(o,n);return this.setSymKey(h,a)},this.setSymKey=async(s,n)=>{this.isInitialized();const a=n||(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.hashKey)(s);return await this.keychain.set(a,s),a},this.deleteKeyPair=async s=>{this.isInitialized(),await this.keychain.del(s)},this.deleteSymKey=async s=>{this.isInitialized(),await this.keychain.del(s)},this.encode=async(s,n,a)=>{this.isInitialized();const o=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.validateEncoding)(a),h=(0,_walletconnect_safe_json__WEBPACK_IMPORTED_MODULE_4__.safeJsonStringify)(n);if((0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isTypeOneEnvelope)(o)){const y=o.senderPublicKey,$=o.receiverPublicKey;s=await this.generateSharedKey(y,$)}const u=this.getSymKey(s),{type:d,senderPublicKey:p}=o;return (0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.encrypt)({type:d,symKey:u,message:h,senderPublicKey:p})},this.decode=async(s,n,a)=>{this.isInitialized();const o=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.validateDecoding)(n,a);if((0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isTypeOneEnvelope)(o)){const h=o.receiverPublicKey,u=o.senderPublicKey;s=await this.generateSharedKey(h,u)}try{const h=this.getSymKey(s),u=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.decrypt)({symKey:h,encoded:n});return (0,_walletconnect_safe_json__WEBPACK_IMPORTED_MODULE_4__.safeJsonParse)(u)}catch(h){this.logger.error(`Failed to decode message from topic: '${s}', clientId: '${await this.getClientId()}'`),this.logger.error(h)}},this.getPayloadType=s=>{const n=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.deserialize)(s);return (0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.decodeTypeByte)(n.type)},this.getPayloadSenderPublicKey=s=>{const n=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.deserialize)(s);return n.senderPublicKey?(0,uint8arrays__WEBPACK_IMPORTED_MODULE_6__.toString)(n.senderPublicKey,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.BASE16):void 0},this.core=e,this.logger=(0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.generateChildLogger)(t,this.name),this.keychain=i||new Rt(this.core,this.logger)}get context(){return (0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.getLoggerContext)(this.logger)}async setPrivateKey(e,t){return await this.keychain.set(e,t),e}getPrivateKey(e){return this.keychain.get(e)}async getClientSeed(){let e=\"\";try{e=this.keychain.get(le)}catch{e=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.generateRandomBytes32)(),await this.keychain.set(le,e)}return ur(e,\"base16\")}getSymKey(e){return this.keychain.get(e)}isInitialized(){if(!this.initialized){const{message:e}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"NOT_INITIALIZED\",this.name);throw new Error(e)}}}class St extends _walletconnect_types__WEBPACK_IMPORTED_MODULE_13__.IMessageTracker{constructor(e,t){super(e,t),this.logger=e,this.core=t,this.messages=new Map,this.name=st,this.version=rt,this.initialized=!1,this.storagePrefix=O,this.init=async()=>{if(!this.initialized){this.logger.trace(\"Initialized\");try{const i=await this.getRelayerMessages();typeof i<\"u\"&&(this.messages=i),this.logger.debug(`Successfully Restored records for ${this.name}`),this.logger.trace({type:\"method\",method:\"restore\",size:this.messages.size})}catch(i){this.logger.debug(`Failed to Restore records for ${this.name}`),this.logger.error(i)}finally{this.initialized=!0}}},this.set=async(i,s)=>{this.isInitialized();const n=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.hashMessage)(s);let a=this.messages.get(i);return typeof a>\"u\"&&(a={}),typeof a[n]<\"u\"||(a[n]=s,this.messages.set(i,a),await this.persist()),n},this.get=i=>{this.isInitialized();let s=this.messages.get(i);return typeof s>\"u\"&&(s={}),s},this.has=(i,s)=>{this.isInitialized();const n=this.get(i),a=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.hashMessage)(s);return typeof n[a]<\"u\"},this.del=async i=>{this.isInitialized(),this.messages.delete(i),await this.persist()},this.logger=(0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.generateChildLogger)(e,this.name),this.core=t}get context(){return (0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.getLoggerContext)(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+\"//\"+this.name}async setRelayerMessages(e){await this.core.storage.setItem(this.storageKey,(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.mapToObj)(e))}async getRelayerMessages(){const e=await this.core.storage.getItem(this.storageKey);return typeof e<\"u\"?(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.objToMap)(e):void 0}async persist(){await this.setRelayerMessages(this.messages)}isInitialized(){if(!this.initialized){const{message:e}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"NOT_INITIALIZED\",this.name);throw new Error(e)}}}class Dr extends _walletconnect_types__WEBPACK_IMPORTED_MODULE_13__.IPublisher{constructor(e,t){super(e,t),this.relayer=e,this.logger=t,this.events=new events__WEBPACK_IMPORTED_MODULE_0__.EventEmitter,this.name=at,this.queue=new Map,this.publishTimeout=(0,_walletconnect_time__WEBPACK_IMPORTED_MODULE_7__.toMiliseconds)(_walletconnect_time__WEBPACK_IMPORTED_MODULE_7__.TEN_SECONDS),this.needsTransportRestart=!1,this.publish=async(i,s,n)=>{var a;this.logger.debug(\"Publishing Payload\"),this.logger.trace({type:\"method\",method:\"publish\",params:{topic:i,message:s,opts:n}});try{const o=n?.ttl||nt,h=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getRelayProtocolName)(n),u=n?.prompt||!1,d=n?.tag||0,p=n?.id||(0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_9__.getBigIntRpcId)().toString(),y={topic:i,message:s,opts:{ttl:o,relay:h,prompt:u,tag:d,id:p}},$=setTimeout(()=>this.queue.set(p,y),this.publishTimeout);try{await await (0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.createExpiringPromise)(this.rpcPublish(i,s,o,h,u,d,p),this.publishTimeout,\"Failed to publish payload, please try again.\"),this.removeRequestFromQueue(p),this.relayer.events.emit(D.publish,y)}catch(c){if(this.logger.debug(\"Publishing Payload stalled\"),this.needsTransportRestart=!0,(a=n?.internal)!=null&&a.throwOnFailedPublish)throw this.removeRequestFromQueue(p),c;return}finally{clearTimeout($)}this.logger.debug(\"Successfully Published Payload\"),this.logger.trace({type:\"method\",method:\"publish\",params:{topic:i,message:s,opts:n}})}catch(o){throw this.logger.debug(\"Failed to Publish Payload\"),this.logger.error(o),o}},this.on=(i,s)=>{this.events.on(i,s)},this.once=(i,s)=>{this.events.once(i,s)},this.off=(i,s)=>{this.events.off(i,s)},this.removeListener=(i,s)=>{this.events.removeListener(i,s)},this.relayer=e,this.logger=(0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.generateChildLogger)(t,this.name),this.registerEventListeners()}get context(){return (0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.getLoggerContext)(this.logger)}rpcPublish(e,t,i,s,n,a,o){var h,u,d,p;const y={method:(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getRelayProtocolApi)(s.protocol).publish,params:{topic:e,message:t,ttl:i,prompt:n,tag:a},id:o};return (0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isUndefined)((h=y.params)==null?void 0:h.prompt)&&((u=y.params)==null||delete u.prompt),(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isUndefined)((d=y.params)==null?void 0:d.tag)&&((p=y.params)==null||delete p.tag),this.logger.debug(\"Outgoing Relay Payload\"),this.logger.trace({type:\"message\",direction:\"outgoing\",request:y}),this.relayer.request(y)}removeRequestFromQueue(e){this.queue.delete(e)}checkQueue(){this.queue.forEach(async e=>{const{topic:t,message:i,opts:s}=e;await this.publish(t,i,s)})}registerEventListeners(){this.relayer.core.heartbeat.on(_walletconnect_heartbeat__WEBPACK_IMPORTED_MODULE_2__.HEARTBEAT_EVENTS.pulse,()=>{if(this.needsTransportRestart){this.needsTransportRestart=!1,this.relayer.events.emit(D.connection_stalled);return}this.checkQueue()}),this.relayer.on(D.message_ack,e=>{this.removeRequestFromQueue(e.id.toString())})}}class yr{constructor(){this.map=new Map,this.set=(e,t)=>{const i=this.get(e);this.exists(e,t)||this.map.set(e,[...i,t])},this.get=e=>this.map.get(e)||[],this.exists=(e,t)=>this.get(e).includes(t),this.delete=(e,t)=>{if(typeof t>\"u\"){this.map.delete(e);return}if(!this.map.has(e))return;const i=this.get(e);if(!this.exists(e,t))return;const s=i.filter(n=>n!==t);if(!s.length){this.map.delete(e);return}this.map.set(e,s)},this.clear=()=>{this.map.clear()}}get topics(){return Array.from(this.map.keys())}}var mr=Object.defineProperty,br=Object.defineProperties,fr=Object.getOwnPropertyDescriptors,Pt=Object.getOwnPropertySymbols,Er=Object.prototype.hasOwnProperty,wr=Object.prototype.propertyIsEnumerable,Tt=(r,e,t)=>e in r?mr(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,V=(r,e)=>{for(var t in e||(e={}))Er.call(e,t)&&Tt(r,t,e[t]);if(Pt)for(var t of Pt(e))wr.call(e,t)&&Tt(r,t,e[t]);return r},De=(r,e)=>br(r,fr(e));class xt extends _walletconnect_types__WEBPACK_IMPORTED_MODULE_13__.ISubscriber{constructor(e,t){super(e,t),this.relayer=e,this.logger=t,this.subscriptions=new Map,this.topicMap=new yr,this.events=new events__WEBPACK_IMPORTED_MODULE_0__.EventEmitter,this.name=yt,this.version=mt,this.pending=new Map,this.cached=[],this.initialized=!1,this.pendingSubscriptionWatchLabel=\"pending_sub_watch_label\",this.pollingInterval=20,this.storagePrefix=O,this.subscribeTimeout=1e4,this.restartInProgress=!1,this.batchSubscribeTopicsLimit=500,this.init=async()=>{this.initialized||(this.logger.trace(\"Initialized\"),this.registerEventListeners(),this.clientId=await this.relayer.core.crypto.getClientId())},this.subscribe=async(i,s)=>{await this.restartToComplete(),this.isInitialized(),this.logger.debug(\"Subscribing Topic\"),this.logger.trace({type:\"method\",method:\"subscribe\",params:{topic:i,opts:s}});try{const n=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getRelayProtocolName)(s),a={topic:i,relay:n};this.pending.set(i,a);const o=await this.rpcSubscribe(i,n);return this.onSubscribe(o,a),this.logger.debug(\"Successfully Subscribed Topic\"),this.logger.trace({type:\"method\",method:\"subscribe\",params:{topic:i,opts:s}}),o}catch(n){throw this.logger.debug(\"Failed to Subscribe Topic\"),this.logger.error(n),n}},this.unsubscribe=async(i,s)=>{await this.restartToComplete(),this.isInitialized(),typeof s?.id<\"u\"?await this.unsubscribeById(i,s.id,s):await this.unsubscribeByTopic(i,s)},this.isSubscribed=async i=>this.topics.includes(i)?!0:await new Promise((s,n)=>{const a=new _walletconnect_time__WEBPACK_IMPORTED_MODULE_7__.Watch;a.start(this.pendingSubscriptionWatchLabel);const o=setInterval(()=>{!this.pending.has(i)&&this.topics.includes(i)&&(clearInterval(o),a.stop(this.pendingSubscriptionWatchLabel),s(!0)),a.elapsed(this.pendingSubscriptionWatchLabel)>=bt&&(clearInterval(o),a.stop(this.pendingSubscriptionWatchLabel),n(new Error(\"Subscription resolution timeout\")))},this.pollingInterval)}).catch(()=>!1),this.on=(i,s)=>{this.events.on(i,s)},this.once=(i,s)=>{this.events.once(i,s)},this.off=(i,s)=>{this.events.off(i,s)},this.removeListener=(i,s)=>{this.events.removeListener(i,s)},this.restart=async()=>{this.restartInProgress=!0,await this.restore(),await this.reset(),this.restartInProgress=!1},this.relayer=e,this.logger=(0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.generateChildLogger)(t,this.name),this.clientId=\"\"}get context(){return (0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.getLoggerContext)(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.relayer.core.customStoragePrefix+\"//\"+this.name}get length(){return this.subscriptions.size}get ids(){return Array.from(this.subscriptions.keys())}get values(){return Array.from(this.subscriptions.values())}get topics(){return this.topicMap.topics}hasSubscription(e,t){let i=!1;try{i=this.getSubscription(e).topic===t}catch{}return i}onEnable(){this.cached=[],this.initialized=!0}onDisable(){this.cached=this.values,this.subscriptions.clear(),this.topicMap.clear()}async unsubscribeByTopic(e,t){const i=this.topicMap.get(e);await Promise.all(i.map(async s=>await this.unsubscribeById(e,s,t)))}async unsubscribeById(e,t,i){this.logger.debug(\"Unsubscribing Topic\"),this.logger.trace({type:\"method\",method:\"unsubscribe\",params:{topic:e,id:t,opts:i}});try{const s=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getRelayProtocolName)(i);await this.rpcUnsubscribe(e,t,s);const n=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getSdkError)(\"USER_DISCONNECTED\",`${this.name}, ${e}`);await this.onUnsubscribe(e,t,n),this.logger.debug(\"Successfully Unsubscribed Topic\"),this.logger.trace({type:\"method\",method:\"unsubscribe\",params:{topic:e,id:t,opts:i}})}catch(s){throw this.logger.debug(\"Failed to Unsubscribe Topic\"),this.logger.error(s),s}}async rpcSubscribe(e,t){const i={method:(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getRelayProtocolApi)(t.protocol).subscribe,params:{topic:e}};this.logger.debug(\"Outgoing Relay Payload\"),this.logger.trace({type:\"payload\",direction:\"outgoing\",request:i});try{await await (0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.createExpiringPromise)(this.relayer.request(i),this.subscribeTimeout)}catch{this.logger.debug(\"Outgoing Relay Subscribe Payload stalled\"),this.relayer.events.emit(D.connection_stalled)}return (0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.hashMessage)(e+this.clientId)}async rpcBatchSubscribe(e){if(!e.length)return;const t=e[0].relay,i={method:(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getRelayProtocolApi)(t.protocol).batchSubscribe,params:{topics:e.map(s=>s.topic)}};this.logger.debug(\"Outgoing Relay Payload\"),this.logger.trace({type:\"payload\",direction:\"outgoing\",request:i});try{return await await (0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.createExpiringPromise)(this.relayer.request(i),this.subscribeTimeout)}catch{this.logger.debug(\"Outgoing Relay Payload stalled\"),this.relayer.events.emit(D.connection_stalled)}}rpcUnsubscribe(e,t,i){const s={method:(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getRelayProtocolApi)(i.protocol).unsubscribe,params:{topic:e,id:t}};return this.logger.debug(\"Outgoing Relay Payload\"),this.logger.trace({type:\"payload\",direction:\"outgoing\",request:s}),this.relayer.request(s)}onSubscribe(e,t){this.setSubscription(e,De(V({},t),{id:e})),this.pending.delete(t.topic)}onBatchSubscribe(e){e.length&&e.forEach(t=>{this.setSubscription(t.id,V({},t)),this.pending.delete(t.topic)})}async onUnsubscribe(e,t,i){this.events.removeAllListeners(t),this.hasSubscription(t,e)&&this.deleteSubscription(t,i),await this.relayer.messages.del(e)}async setRelayerSubscriptions(e){await this.relayer.core.storage.setItem(this.storageKey,e)}async getRelayerSubscriptions(){return await this.relayer.core.storage.getItem(this.storageKey)}setSubscription(e,t){this.subscriptions.has(e)||(this.logger.debug(\"Setting subscription\"),this.logger.trace({type:\"method\",method:\"setSubscription\",id:e,subscription:t}),this.addSubscription(e,t))}addSubscription(e,t){this.subscriptions.set(e,V({},t)),this.topicMap.set(t.topic,e),this.events.emit(w.created,t)}getSubscription(e){this.logger.debug(\"Getting subscription\"),this.logger.trace({type:\"method\",method:\"getSubscription\",id:e});const t=this.subscriptions.get(e);if(!t){const{message:i}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"NO_MATCHING_KEY\",`${this.name}: ${e}`);throw new Error(i)}return t}deleteSubscription(e,t){this.logger.debug(\"Deleting subscription\"),this.logger.trace({type:\"method\",method:\"deleteSubscription\",id:e,reason:t});const i=this.getSubscription(e);this.subscriptions.delete(e),this.topicMap.delete(i.topic,e),this.events.emit(w.deleted,De(V({},i),{reason:t}))}async persist(){await this.setRelayerSubscriptions(this.values),this.events.emit(w.sync)}async reset(){if(this.cached.length){const e=Math.ceil(this.cached.length/this.batchSubscribeTopicsLimit);for(let t=0;t\"u\"||!e.length)return;if(this.subscriptions.size){const{message:t}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"RESTORE_WILL_OVERRIDE\",this.name);throw this.logger.error(t),this.logger.error(`${this.name}: ${JSON.stringify(this.values)}`),new Error(t)}this.cached=e,this.logger.debug(`Successfully Restored subscriptions for ${this.name}`),this.logger.trace({type:\"method\",method:\"restore\",subscriptions:this.values})}catch(e){this.logger.debug(`Failed to Restore subscriptions for ${this.name}`),this.logger.error(e)}}async batchSubscribe(e){if(!e.length)return;const t=await this.rpcBatchSubscribe(e);(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isValidArray)(t)&&this.onBatchSubscribe(t.map((i,s)=>De(V({},e[s]),{id:i})))}async onConnect(){this.restartInProgress||(await this.restart(),this.onEnable())}onDisconnect(){this.onDisable()}async checkPending(){if(!this.initialized||this.relayer.transportExplicitlyClosed)return;const e=[];this.pending.forEach(t=>{e.push(t)}),await this.batchSubscribe(e)}registerEventListeners(){this.relayer.core.heartbeat.on(_walletconnect_heartbeat__WEBPACK_IMPORTED_MODULE_2__.HEARTBEAT_EVENTS.pulse,async()=>{await this.checkPending()}),this.relayer.on(D.connect,async()=>{await this.onConnect()}),this.relayer.on(D.disconnect,()=>{this.onDisconnect()}),this.events.on(w.created,async e=>{const t=w.created;this.logger.info(`Emitting ${t}`),this.logger.debug({type:\"event\",event:t,data:e}),await this.persist()}),this.events.on(w.deleted,async e=>{const t=w.deleted;this.logger.info(`Emitting ${t}`),this.logger.debug({type:\"event\",event:t,data:e}),await this.persist()})}isInitialized(){if(!this.initialized){const{message:e}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"NOT_INITIALIZED\",this.name);throw new Error(e)}}async restartToComplete(){this.restartInProgress&&await new Promise(e=>{const t=setInterval(()=>{this.restartInProgress||(clearInterval(t),e())},this.pollingInterval)})}}var vr=Object.defineProperty,Ot=Object.getOwnPropertySymbols,Ir=Object.prototype.hasOwnProperty,Cr=Object.prototype.propertyIsEnumerable,At=(r,e,t)=>e in r?vr(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Rr=(r,e)=>{for(var t in e||(e={}))Ir.call(e,t)&&At(r,t,e[t]);if(Ot)for(var t of Ot(e))Cr.call(e,t)&&At(r,t,e[t]);return r};class zt extends _walletconnect_types__WEBPACK_IMPORTED_MODULE_13__.IRelayer{constructor(e){super(e),this.protocol=\"wc\",this.version=2,this.events=new events__WEBPACK_IMPORTED_MODULE_0__.EventEmitter,this.name=ct,this.transportExplicitlyClosed=!1,this.initialized=!1,this.connectionAttemptInProgress=!1,this.connectionStatusPollingInterval=20,this.staleConnectionErrors=[\"socket hang up\",\"socket stalled\"],this.hasExperiencedNetworkDisruption=!1,this.request=async t=>{this.logger.debug(\"Publishing Request Payload\");try{return await this.toEstablishConnection(),await this.provider.request(t)}catch(i){throw this.logger.debug(\"Failed to Publish Request\"),this.logger.error(i),i}},this.onPayloadHandler=t=>{this.onProviderPayload(t)},this.onConnectHandler=()=>{this.events.emit(D.connect)},this.onDisconnectHandler=()=>{this.onProviderDisconnect()},this.onProviderErrorHandler=t=>{this.logger.error(t),this.events.emit(D.error,t),this.logger.info(\"Fatal socket error received, closing transport\"),this.transportClose()},this.registerProviderListeners=()=>{this.provider.on(T.payload,this.onPayloadHandler),this.provider.on(T.connect,this.onConnectHandler),this.provider.on(T.disconnect,this.onDisconnectHandler),this.provider.on(T.error,this.onProviderErrorHandler)},this.core=e.core,this.logger=typeof e.logger<\"u\"&&typeof e.logger!=\"string\"?(0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.generateChildLogger)(e.logger,this.name):(0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.pino)((0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.getDefaultLoggerOptions)({level:e.logger||ht})),this.messages=new St(this.logger,e.core),this.subscriber=new xt(this,this.logger),this.publisher=new Dr(this,this.logger),this.relayUrl=e?.relayUrl||de,this.projectId=e.projectId,this.provider={}}async init(){this.logger.trace(\"Initialized\"),this.registerEventListeners(),await this.createProvider(),await Promise.all([this.messages.init(),this.subscriber.init()]);try{await this.transportOpen()}catch{this.logger.warn(`Connection via ${this.relayUrl} failed, attempting to connect via failover domain ${ge}...`),await this.restartTransport(ge)}this.initialized=!0,setTimeout(async()=>{this.subscriber.topics.length===0&&(this.logger.info(\"No topics subscribed to after init, closing transport\"),await this.transportClose(),this.transportExplicitlyClosed=!1)},gt)}get context(){return (0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.getLoggerContext)(this.logger)}get connected(){return this.provider.connection.connected}get connecting(){return this.provider.connection.connecting}async publish(e,t,i){this.isInitialized(),await this.publisher.publish(e,t,i),await this.recordMessageEvent({topic:e,message:t,publishedAt:Date.now()})}async subscribe(e,t){var i;this.isInitialized();let s=((i=this.subscriber.topicMap.get(e))==null?void 0:i[0])||\"\";if(s)return s;let n;const a=o=>{o.topic===e&&(this.subscriber.off(w.created,a),n())};return await Promise.all([new Promise(o=>{n=o,this.subscriber.on(w.created,a)}),new Promise(async o=>{s=await this.subscriber.subscribe(e,t),o()})]),s}async unsubscribe(e,t){this.isInitialized(),await this.subscriber.unsubscribe(e,t)}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}off(e,t){this.events.off(e,t)}removeListener(e,t){this.events.removeListener(e,t)}async transportClose(){this.transportExplicitlyClosed=!0,this.hasExperiencedNetworkDisruption&&this.connected?await (0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.createExpiringPromise)(this.provider.disconnect(),1e3,\"provider.disconnect()\").catch(()=>this.onProviderDisconnect()):this.connected&&await this.provider.disconnect()}async transportOpen(e){if(this.transportExplicitlyClosed=!1,await this.confirmOnlineStateOrThrow(),!this.connectionAttemptInProgress){e&&e!==this.relayUrl&&(this.relayUrl=e,await this.transportClose(),await this.createProvider()),this.connectionAttemptInProgress=!0;try{await Promise.all([new Promise(t=>{if(!this.initialized)return t();this.subscriber.once(w.resubscribed,()=>{t()})}),new Promise(async(t,i)=>{try{await (0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.createExpiringPromise)(this.provider.connect(),1e4,`Socket stalled when trying to connect to ${this.relayUrl}`)}catch(s){i(s);return}t()})])}catch(t){this.logger.error(t);const i=t;if(!this.isConnectionStalled(i.message))throw t;this.provider.events.emit(T.disconnect)}finally{this.connectionAttemptInProgress=!1,this.hasExperiencedNetworkDisruption=!1}}}async restartTransport(e){await this.confirmOnlineStateOrThrow(),!this.connectionAttemptInProgress&&(this.relayUrl=e||this.relayUrl,await this.transportClose(),await this.createProvider(),await this.transportOpen())}async confirmOnlineStateOrThrow(){if(!await (0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isOnline)())throw new Error(\"No internet connection detected. Please restart your network and try again.\")}isConnectionStalled(e){return this.staleConnectionErrors.some(t=>e.includes(t))}async createProvider(){this.provider.connection&&this.unregisterProviderListeners();const e=await this.core.crypto.signJWT(this.relayUrl);this.provider=new _walletconnect_jsonrpc_provider__WEBPACK_IMPORTED_MODULE_8__.JsonRpcProvider(new _walletconnect_jsonrpc_ws_connection__WEBPACK_IMPORTED_MODULE_10__[\"default\"]((0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.formatRelayRpcUrl)({sdkVersion:dt,protocol:this.protocol,version:this.version,relayUrl:this.relayUrl,projectId:this.projectId,auth:e,useOnCloseEvent:!0}))),this.registerProviderListeners()}async recordMessageEvent(e){const{topic:t,message:i}=e;await this.messages.set(t,i)}async shouldIgnoreMessageEvent(e){const{topic:t,message:i}=e;if(!i||i.length===0)return this.logger.debug(`Ignoring invalid/empty message: ${i}`),!0;if(!await this.subscriber.isSubscribed(t))return this.logger.debug(`Ignoring message for non-subscribed topic ${t}`),!0;const s=this.messages.has(t,i);return s&&this.logger.debug(`Ignoring duplicate message: ${i}`),s}async onProviderPayload(e){if(this.logger.debug(\"Incoming Relay Payload\"),this.logger.trace({type:\"payload\",direction:\"incoming\",payload:e}),(0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_9__.isJsonRpcRequest)(e)){if(!e.method.endsWith(ut))return;const t=e.params,{topic:i,message:s,publishedAt:n}=t.data,a={topic:i,message:s,publishedAt:n};this.logger.debug(\"Emitting Relayer Payload\"),this.logger.trace(Rr({type:\"event\",event:t.id},a)),this.events.emit(t.id,a),await this.acknowledgePayload(e),await this.onMessageEvent(a)}else (0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_9__.isJsonRpcResponse)(e)&&this.events.emit(D.message_ack,e)}async onMessageEvent(e){await this.shouldIgnoreMessageEvent(e)||(this.events.emit(D.message,e),await this.recordMessageEvent(e))}async acknowledgePayload(e){const t=(0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_9__.formatJsonRpcResult)(e.id,!0);await this.provider.connection.send(t)}unregisterProviderListeners(){this.provider.off(T.payload,this.onPayloadHandler),this.provider.off(T.connect,this.onConnectHandler),this.provider.off(T.disconnect,this.onDisconnectHandler),this.provider.off(T.error,this.onProviderErrorHandler)}async registerEventListeners(){this.events.on(D.connection_stalled,()=>{this.restartTransport().catch(t=>this.logger.error(t))});let e=await (0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isOnline)();(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.subscribeToNetworkChange)(async t=>{this.initialized&&e!==t&&(e=t,t?await this.restartTransport().catch(i=>this.logger.error(i)):(this.hasExperiencedNetworkDisruption=!0,await this.transportClose().catch(i=>this.logger.error(i))))})}onProviderDisconnect(){this.events.emit(D.disconnect),this.attemptToReconnect()}attemptToReconnect(){this.transportExplicitlyClosed||(this.logger.info(\"attemptToReconnect called. Connecting...\"),setTimeout(async()=>{await this.restartTransport().catch(e=>this.logger.error(e))},(0,_walletconnect_time__WEBPACK_IMPORTED_MODULE_7__.toMiliseconds)(lt)))}isInitialized(){if(!this.initialized){const{message:e}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"NOT_INITIALIZED\",this.name);throw new Error(e)}}async toEstablishConnection(){if(await this.confirmOnlineStateOrThrow(),!this.connected){if(this.connectionAttemptInProgress)return await new Promise(e=>{const t=setInterval(()=>{this.connected&&(clearInterval(t),e())},this.connectionStatusPollingInterval)});await this.restartTransport()}}}var _r=Object.defineProperty,Nt=Object.getOwnPropertySymbols,Sr=Object.prototype.hasOwnProperty,Pr=Object.prototype.propertyIsEnumerable,Lt=(r,e,t)=>e in r?_r(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Ut=(r,e)=>{for(var t in e||(e={}))Sr.call(e,t)&&Lt(r,t,e[t]);if(Nt)for(var t of Nt(e))Pr.call(e,t)&&Lt(r,t,e[t]);return r};class Ft extends _walletconnect_types__WEBPACK_IMPORTED_MODULE_13__.IStore{constructor(e,t,i,s=O,n=void 0){super(e,t,i,s),this.core=e,this.logger=t,this.name=i,this.map=new Map,this.version=pt,this.cached=[],this.initialized=!1,this.storagePrefix=O,this.init=async()=>{this.initialized||(this.logger.trace(\"Initialized\"),await this.restore(),this.cached.forEach(a=>{this.getKey&&a!==null&&!(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isUndefined)(a)?this.map.set(this.getKey(a),a):(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isProposalStruct)(a)?this.map.set(a.id,a):(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isSessionStruct)(a)&&this.map.set(a.topic,a)}),this.cached=[],this.initialized=!0)},this.set=async(a,o)=>{this.isInitialized(),this.map.has(a)?await this.update(a,o):(this.logger.debug(\"Setting value\"),this.logger.trace({type:\"method\",method:\"set\",key:a,value:o}),this.map.set(a,o),await this.persist())},this.get=a=>(this.isInitialized(),this.logger.debug(\"Getting value\"),this.logger.trace({type:\"method\",method:\"get\",key:a}),this.getData(a)),this.getAll=a=>(this.isInitialized(),a?this.values.filter(o=>Object.keys(a).every(h=>lodash_isequal__WEBPACK_IMPORTED_MODULE_11___default()(o[h],a[h]))):this.values),this.update=async(a,o)=>{this.isInitialized(),this.logger.debug(\"Updating value\"),this.logger.trace({type:\"method\",method:\"update\",key:a,update:o});const h=Ut(Ut({},this.getData(a)),o);this.map.set(a,h),await this.persist()},this.delete=async(a,o)=>{this.isInitialized(),this.map.has(a)&&(this.logger.debug(\"Deleting value\"),this.logger.trace({type:\"method\",method:\"delete\",key:a,reason:o}),this.map.delete(a),await this.persist())},this.logger=(0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.generateChildLogger)(t,this.name),this.storagePrefix=s,this.getKey=n}get context(){return (0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.getLoggerContext)(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+\"//\"+this.name}get length(){return this.map.size}get keys(){return Array.from(this.map.keys())}get values(){return Array.from(this.map.values())}async setDataStore(e){await this.core.storage.setItem(this.storageKey,e)}async getDataStore(){return await this.core.storage.getItem(this.storageKey)}getData(e){const t=this.map.get(e);if(!t){const{message:i}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"NO_MATCHING_KEY\",`${this.name}: ${e}`);throw this.logger.error(i),new Error(i)}return t}async persist(){await this.setDataStore(this.values)}async restore(){try{const e=await this.getDataStore();if(typeof e>\"u\"||!e.length)return;if(this.map.size){const{message:t}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"RESTORE_WILL_OVERRIDE\",this.name);throw this.logger.error(t),new Error(t)}this.cached=e,this.logger.debug(`Successfully Restored value for ${this.name}`),this.logger.trace({type:\"method\",method:\"restore\",value:this.values})}catch(e){this.logger.debug(`Failed to Restore value for ${this.name}`),this.logger.error(e)}}isInitialized(){if(!this.initialized){const{message:e}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"NOT_INITIALIZED\",this.name);throw new Error(e)}}}class $t{constructor(e,t){this.core=e,this.logger=t,this.name=ft,this.version=Et,this.events=new (events__WEBPACK_IMPORTED_MODULE_0___default()),this.initialized=!1,this.storagePrefix=O,this.ignoredPayloadTypes=[_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.TYPE_1],this.registeredMethods=[],this.init=async()=>{this.initialized||(await this.pairings.init(),await this.cleanup(),this.registerRelayerEvents(),this.registerExpirerEvents(),this.initialized=!0,this.logger.trace(\"Initialized\"))},this.register=({methods:i})=>{this.isInitialized(),this.registeredMethods=[...new Set([...this.registeredMethods,...i])]},this.create=async()=>{this.isInitialized();const i=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.generateRandomBytes32)(),s=await this.core.crypto.setSymKey(i),n=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.calcExpiry)(_walletconnect_time__WEBPACK_IMPORTED_MODULE_7__.FIVE_MINUTES),a={protocol:ot},o={topic:s,expiry:n,relay:a,active:!1},h=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.formatUri)({protocol:this.core.protocol,version:this.core.version,topic:s,symKey:i,relay:a});return await this.pairings.set(s,o),await this.core.relayer.subscribe(s),this.core.expirer.set(s,n),{topic:s,uri:h}},this.pair=async i=>{this.isInitialized(),this.isValidPair(i);const{topic:s,symKey:n,relay:a}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.parseUri)(i.uri);let o;if(this.pairings.keys.includes(s)&&(o=this.pairings.get(s),o.active))throw new Error(`Pairing already exists: ${s}. Please try again with a new connection URI.`);this.core.crypto.keychain.has(s)||(await this.core.crypto.setSymKey(n,s),await this.core.relayer.subscribe(s,{relay:a}));const h=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.calcExpiry)(_walletconnect_time__WEBPACK_IMPORTED_MODULE_7__.FIVE_MINUTES),u={topic:s,relay:a,expiry:h,active:!1};return await this.pairings.set(s,u),this.core.expirer.set(s,h),i.activatePairing&&await this.activate({topic:s}),this.events.emit(B.create,u),u},this.activate=async({topic:i})=>{this.isInitialized();const s=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.calcExpiry)(_walletconnect_time__WEBPACK_IMPORTED_MODULE_7__.THIRTY_DAYS);await this.pairings.update(i,{active:!0,expiry:s}),this.core.expirer.set(i,s)},this.ping=async i=>{this.isInitialized(),await this.isValidPing(i);const{topic:s}=i;if(this.pairings.keys.includes(s)){const n=await this.sendRequest(s,\"wc_pairingPing\",{}),{done:a,resolve:o,reject:h}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.createDelayedPromise)();this.events.once((0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.engineEvent)(\"pairing_ping\",n),({error:u})=>{u?h(u):o()}),await a()}},this.updateExpiry=async({topic:i,expiry:s})=>{this.isInitialized(),await this.pairings.update(i,{expiry:s})},this.updateMetadata=async({topic:i,metadata:s})=>{this.isInitialized(),await this.pairings.update(i,{peerMetadata:s})},this.getPairings=()=>(this.isInitialized(),this.pairings.values),this.disconnect=async i=>{this.isInitialized(),await this.isValidDisconnect(i);const{topic:s}=i;this.pairings.keys.includes(s)&&(await this.sendRequest(s,\"wc_pairingDelete\",(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getSdkError)(\"USER_DISCONNECTED\")),await this.deletePairing(s))},this.sendRequest=async(i,s,n)=>{const a=(0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_9__.formatJsonRpcRequest)(s,n),o=await this.core.crypto.encode(i,a),h=F[s].req;return this.core.history.set(i,a),this.core.relayer.publish(i,o,h),a.id},this.sendResult=async(i,s,n)=>{const a=(0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_9__.formatJsonRpcResult)(i,n),o=await this.core.crypto.encode(s,a),h=await this.core.history.get(s,i),u=F[h.request.method].res;await this.core.relayer.publish(s,o,u),await this.core.history.resolve(a)},this.sendError=async(i,s,n)=>{const a=(0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_9__.formatJsonRpcError)(i,n),o=await this.core.crypto.encode(s,a),h=await this.core.history.get(s,i),u=F[h.request.method]?F[h.request.method].res:F.unregistered_method.res;await this.core.relayer.publish(s,o,u),await this.core.history.resolve(a)},this.deletePairing=async(i,s)=>{await this.core.relayer.unsubscribe(i),await Promise.all([this.pairings.delete(i,(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getSdkError)(\"USER_DISCONNECTED\")),this.core.crypto.deleteSymKey(i),s?Promise.resolve():this.core.expirer.del(i)])},this.cleanup=async()=>{const i=this.pairings.getAll().filter(s=>(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isExpired)(s.expiry));await Promise.all(i.map(s=>this.deletePairing(s.topic)))},this.onRelayEventRequest=i=>{const{topic:s,payload:n}=i;switch(n.method){case\"wc_pairingPing\":return this.onPairingPingRequest(s,n);case\"wc_pairingDelete\":return this.onPairingDeleteRequest(s,n);default:return this.onUnknownRpcMethodRequest(s,n)}},this.onRelayEventResponse=async i=>{const{topic:s,payload:n}=i,a=(await this.core.history.get(s,n.id)).request.method;switch(a){case\"wc_pairingPing\":return this.onPairingPingResponse(s,n);default:return this.onUnknownRpcMethodResponse(a)}},this.onPairingPingRequest=async(i,s)=>{const{id:n}=s;try{this.isValidPing({topic:i}),await this.sendResult(n,i,!0),this.events.emit(B.ping,{id:n,topic:i})}catch(a){await this.sendError(n,i,a),this.logger.error(a)}},this.onPairingPingResponse=(i,s)=>{const{id:n}=s;setTimeout(()=>{(0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_9__.isJsonRpcResult)(s)?this.events.emit((0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.engineEvent)(\"pairing_ping\",n),{}):(0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_9__.isJsonRpcError)(s)&&this.events.emit((0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.engineEvent)(\"pairing_ping\",n),{error:s.error})},500)},this.onPairingDeleteRequest=async(i,s)=>{const{id:n}=s;try{this.isValidDisconnect({topic:i}),await this.deletePairing(i),this.events.emit(B.delete,{id:n,topic:i})}catch(a){await this.sendError(n,i,a),this.logger.error(a)}},this.onUnknownRpcMethodRequest=async(i,s)=>{const{id:n,method:a}=s;try{if(this.registeredMethods.includes(a))return;const o=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getSdkError)(\"WC_METHOD_UNSUPPORTED\",a);await this.sendError(n,i,o),this.logger.error(o)}catch(o){await this.sendError(n,i,o),this.logger.error(o)}},this.onUnknownRpcMethodResponse=i=>{this.registeredMethods.includes(i)||this.logger.error((0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getSdkError)(\"WC_METHOD_UNSUPPORTED\",i))},this.isValidPair=i=>{if(!(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isValidParams)(i)){const{message:s}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"MISSING_OR_INVALID\",`pair() params: ${i}`);throw new Error(s)}if(!(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isValidUrl)(i.uri)){const{message:s}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"MISSING_OR_INVALID\",`pair() uri: ${i.uri}`);throw new Error(s)}},this.isValidPing=async i=>{if(!(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isValidParams)(i)){const{message:n}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"MISSING_OR_INVALID\",`ping() params: ${i}`);throw new Error(n)}const{topic:s}=i;await this.isValidPairingTopic(s)},this.isValidDisconnect=async i=>{if(!(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isValidParams)(i)){const{message:n}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"MISSING_OR_INVALID\",`disconnect() params: ${i}`);throw new Error(n)}const{topic:s}=i;await this.isValidPairingTopic(s)},this.isValidPairingTopic=async i=>{if(!(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isValidString)(i,!1)){const{message:s}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"MISSING_OR_INVALID\",`pairing topic should be a string: ${i}`);throw new Error(s)}if(!this.pairings.keys.includes(i)){const{message:s}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"NO_MATCHING_KEY\",`pairing topic doesn't exist: ${i}`);throw new Error(s)}if((0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isExpired)(this.pairings.get(i).expiry)){await this.deletePairing(i);const{message:s}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"EXPIRED\",`pairing topic: ${i}`);throw new Error(s)}},this.core=e,this.logger=(0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.generateChildLogger)(t,this.name),this.pairings=new Ft(this.core,this.logger,this.name,this.storagePrefix)}get context(){return (0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.getLoggerContext)(this.logger)}isInitialized(){if(!this.initialized){const{message:e}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"NOT_INITIALIZED\",this.name);throw new Error(e)}}registerRelayerEvents(){this.core.relayer.on(D.message,async e=>{const{topic:t,message:i}=e;if(!this.pairings.keys.includes(t)||this.ignoredPayloadTypes.includes(this.core.crypto.getPayloadType(i)))return;const s=await this.core.crypto.decode(t,i);try{(0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_9__.isJsonRpcRequest)(s)?(this.core.history.set(t,s),this.onRelayEventRequest({topic:t,payload:s})):(0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_9__.isJsonRpcResponse)(s)&&(await this.core.history.resolve(s),await this.onRelayEventResponse({topic:t,payload:s}),this.core.history.delete(t,s.id))}catch(n){this.logger.error(n)}})}registerExpirerEvents(){this.core.expirer.on(v.expired,async e=>{const{topic:t}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.parseExpirerTarget)(e.target);t&&this.pairings.keys.includes(t)&&(await this.deletePairing(t,!0),this.events.emit(B.expire,{topic:t}))})}}class Mt extends _walletconnect_types__WEBPACK_IMPORTED_MODULE_13__.IJsonRpcHistory{constructor(e,t){super(e,t),this.core=e,this.logger=t,this.records=new Map,this.events=new events__WEBPACK_IMPORTED_MODULE_0__.EventEmitter,this.name=wt,this.version=vt,this.cached=[],this.initialized=!1,this.storagePrefix=O,this.init=async()=>{this.initialized||(this.logger.trace(\"Initialized\"),await this.restore(),this.cached.forEach(i=>this.records.set(i.id,i)),this.cached=[],this.registerEventListeners(),this.initialized=!0)},this.set=(i,s,n)=>{if(this.isInitialized(),this.logger.debug(\"Setting JSON-RPC request history record\"),this.logger.trace({type:\"method\",method:\"set\",topic:i,request:s,chainId:n}),this.records.has(s.id))return;const a={id:s.id,topic:i,request:{method:s.method,params:s.params||null},chainId:n,expiry:(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.calcExpiry)(_walletconnect_time__WEBPACK_IMPORTED_MODULE_7__.THIRTY_DAYS)};this.records.set(a.id,a),this.events.emit(R.created,a)},this.resolve=async i=>{if(this.isInitialized(),this.logger.debug(\"Updating JSON-RPC response history record\"),this.logger.trace({type:\"method\",method:\"update\",response:i}),!this.records.has(i.id))return;const s=await this.getRecord(i.id);typeof s.response>\"u\"&&(s.response=(0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_9__.isJsonRpcError)(i)?{error:i.error}:{result:i.result},this.records.set(s.id,s),this.events.emit(R.updated,s))},this.get=async(i,s)=>(this.isInitialized(),this.logger.debug(\"Getting record\"),this.logger.trace({type:\"method\",method:\"get\",topic:i,id:s}),await this.getRecord(s)),this.delete=(i,s)=>{this.isInitialized(),this.logger.debug(\"Deleting record\"),this.logger.trace({type:\"method\",method:\"delete\",id:s}),this.values.forEach(n=>{if(n.topic===i){if(typeof s<\"u\"&&n.id!==s)return;this.records.delete(n.id),this.events.emit(R.deleted,n)}})},this.exists=async(i,s)=>(this.isInitialized(),this.records.has(s)?(await this.getRecord(s)).topic===i:!1),this.on=(i,s)=>{this.events.on(i,s)},this.once=(i,s)=>{this.events.once(i,s)},this.off=(i,s)=>{this.events.off(i,s)},this.removeListener=(i,s)=>{this.events.removeListener(i,s)},this.logger=(0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.generateChildLogger)(t,this.name)}get context(){return (0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.getLoggerContext)(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+\"//\"+this.name}get size(){return this.records.size}get keys(){return Array.from(this.records.keys())}get values(){return Array.from(this.records.values())}get pending(){const e=[];return this.values.forEach(t=>{if(typeof t.response<\"u\")return;const i={topic:t.topic,request:(0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_9__.formatJsonRpcRequest)(t.request.method,t.request.params,t.id),chainId:t.chainId};return e.push(i)}),e}async setJsonRpcRecords(e){await this.core.storage.setItem(this.storageKey,e)}async getJsonRpcRecords(){return await this.core.storage.getItem(this.storageKey)}getRecord(e){this.isInitialized();const t=this.records.get(e);if(!t){const{message:i}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"NO_MATCHING_KEY\",`${this.name}: ${e}`);throw new Error(i)}return t}async persist(){await this.setJsonRpcRecords(this.values),this.events.emit(R.sync)}async restore(){try{const e=await this.getJsonRpcRecords();if(typeof e>\"u\"||!e.length)return;if(this.records.size){const{message:t}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"RESTORE_WILL_OVERRIDE\",this.name);throw this.logger.error(t),new Error(t)}this.cached=e,this.logger.debug(`Successfully Restored records for ${this.name}`),this.logger.trace({type:\"method\",method:\"restore\",records:this.values})}catch(e){this.logger.debug(`Failed to Restore records for ${this.name}`),this.logger.error(e)}}registerEventListeners(){this.events.on(R.created,e=>{const t=R.created;this.logger.info(`Emitting ${t}`),this.logger.debug({type:\"event\",event:t,record:e}),this.persist()}),this.events.on(R.updated,e=>{const t=R.updated;this.logger.info(`Emitting ${t}`),this.logger.debug({type:\"event\",event:t,record:e}),this.persist()}),this.events.on(R.deleted,e=>{const t=R.deleted;this.logger.info(`Emitting ${t}`),this.logger.debug({type:\"event\",event:t,record:e}),this.persist()}),this.core.heartbeat.on(_walletconnect_heartbeat__WEBPACK_IMPORTED_MODULE_2__.HEARTBEAT_EVENTS.pulse,()=>{this.cleanup()})}cleanup(){try{this.records.forEach(e=>{(0,_walletconnect_time__WEBPACK_IMPORTED_MODULE_7__.toMiliseconds)(e.expiry||0)-Date.now()<=0&&(this.logger.info(`Deleting expired history log: ${e.id}`),this.delete(e.topic,e.id))})}catch(e){this.logger.warn(e)}}isInitialized(){if(!this.initialized){const{message:e}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"NOT_INITIALIZED\",this.name);throw new Error(e)}}}class kt extends _walletconnect_types__WEBPACK_IMPORTED_MODULE_13__.IExpirer{constructor(e,t){super(e,t),this.core=e,this.logger=t,this.expirations=new Map,this.events=new events__WEBPACK_IMPORTED_MODULE_0__.EventEmitter,this.name=It,this.version=Ct,this.cached=[],this.initialized=!1,this.storagePrefix=O,this.init=async()=>{this.initialized||(this.logger.trace(\"Initialized\"),await this.restore(),this.cached.forEach(i=>this.expirations.set(i.target,i)),this.cached=[],this.registerEventListeners(),this.initialized=!0)},this.has=i=>{try{const s=this.formatTarget(i);return typeof this.getExpiration(s)<\"u\"}catch{return!1}},this.set=(i,s)=>{this.isInitialized();const n=this.formatTarget(i),a={target:n,expiry:s};this.expirations.set(n,a),this.checkExpiry(n,a),this.events.emit(v.created,{target:n,expiration:a})},this.get=i=>{this.isInitialized();const s=this.formatTarget(i);return this.getExpiration(s)},this.del=i=>{if(this.isInitialized(),this.has(i)){const s=this.formatTarget(i),n=this.getExpiration(s);this.expirations.delete(s),this.events.emit(v.deleted,{target:s,expiration:n})}},this.on=(i,s)=>{this.events.on(i,s)},this.once=(i,s)=>{this.events.once(i,s)},this.off=(i,s)=>{this.events.off(i,s)},this.removeListener=(i,s)=>{this.events.removeListener(i,s)},this.logger=(0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.generateChildLogger)(t,this.name)}get context(){return (0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.getLoggerContext)(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+\"//\"+this.name}get length(){return this.expirations.size}get keys(){return Array.from(this.expirations.keys())}get values(){return Array.from(this.expirations.values())}formatTarget(e){if(typeof e==\"string\")return (0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.formatTopicTarget)(e);if(typeof e==\"number\")return (0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.formatIdTarget)(e);const{message:t}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"UNKNOWN_TYPE\",`Target type: ${typeof e}`);throw new Error(t)}async setExpirations(e){await this.core.storage.setItem(this.storageKey,e)}async getExpirations(){return await this.core.storage.getItem(this.storageKey)}async persist(){await this.setExpirations(this.values),this.events.emit(v.sync)}async restore(){try{const e=await this.getExpirations();if(typeof e>\"u\"||!e.length)return;if(this.expirations.size){const{message:t}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"RESTORE_WILL_OVERRIDE\",this.name);throw this.logger.error(t),new Error(t)}this.cached=e,this.logger.debug(`Successfully Restored expirations for ${this.name}`),this.logger.trace({type:\"method\",method:\"restore\",expirations:this.values})}catch(e){this.logger.debug(`Failed to Restore expirations for ${this.name}`),this.logger.error(e)}}getExpiration(e){const t=this.expirations.get(e);if(!t){const{message:i}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"NO_MATCHING_KEY\",`${this.name}: ${e}`);throw this.logger.error(i),new Error(i)}return t}checkExpiry(e,t){const{expiry:i}=t;(0,_walletconnect_time__WEBPACK_IMPORTED_MODULE_7__.toMiliseconds)(i)-Date.now()<=0&&this.expire(e,t)}expire(e,t){this.expirations.delete(e),this.events.emit(v.expired,{target:e,expiration:t})}checkExpirations(){this.core.relayer.connected&&this.expirations.forEach((e,t)=>this.checkExpiry(t,e))}registerEventListeners(){this.core.heartbeat.on(_walletconnect_heartbeat__WEBPACK_IMPORTED_MODULE_2__.HEARTBEAT_EVENTS.pulse,()=>this.checkExpirations()),this.events.on(v.created,e=>{const t=v.created;this.logger.info(`Emitting ${t}`),this.logger.debug({type:\"event\",event:t,data:e}),this.persist()}),this.events.on(v.expired,e=>{const t=v.expired;this.logger.info(`Emitting ${t}`),this.logger.debug({type:\"event\",event:t,data:e}),this.persist()}),this.events.on(v.deleted,e=>{const t=v.deleted;this.logger.info(`Emitting ${t}`),this.logger.debug({type:\"event\",event:t,data:e}),this.persist()})}isInitialized(){if(!this.initialized){const{message:e}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"NOT_INITIALIZED\",this.name);throw new Error(e)}}}class Kt extends _walletconnect_types__WEBPACK_IMPORTED_MODULE_13__.IVerify{constructor(e,t){super(e,t),this.projectId=e,this.logger=t,this.name=Q,this.initialized=!1,this.queue=[],this.verifyDisabled=!1,this.init=async()=>{if(this.verifyDisabled||(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isReactNative)()||!(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isBrowser)())return;const i=Z;this.verifyUrl!==i&&this.removeIframe(),this.verifyUrl=i;try{await this.createIframe()}catch(s){this.logger.info(`Verify iframe failed to load: ${this.verifyUrl}`),this.logger.info(s)}if(!this.initialized){this.removeIframe(),this.verifyUrl=pe;try{await this.createIframe()}catch(s){this.logger.info(`Verify iframe failed to load: ${this.verifyUrl}`),this.logger.info(s),this.verifyDisabled=!0}}},this.register=async i=>{this.initialized?this.sendPost(i.attestationId):(this.addToQueue(i.attestationId),await this.init())},this.resolve=async i=>{if(this.isDevEnv)return\"\";const s=i?.verifyUrl||Z;let n;try{n=await this.fetchAttestation(i.attestationId,s)}catch(a){this.logger.info(`failed to resolve attestation: ${i.attestationId} from url: ${s}`),this.logger.info(a),n=await this.fetchAttestation(i.attestationId,pe)}return n},this.fetchAttestation=async(i,s)=>{this.logger.info(`resolving attestation: ${i} from url: ${s}`);const n=this.startAbortTimer(_walletconnect_time__WEBPACK_IMPORTED_MODULE_7__.ONE_SECOND*2),a=await fetch(`${s}/attestation/${i}`,{signal:this.abortController.signal});return clearTimeout(n),a.status===200?await a.json():void 0},this.addToQueue=i=>{this.queue.push(i)},this.processQueue=()=>{this.queue.length!==0&&(this.queue.forEach(i=>this.sendPost(i)),this.queue=[])},this.sendPost=i=>{var s;try{if(!this.iframe)return;(s=this.iframe.contentWindow)==null||s.postMessage(i,\"*\"),this.logger.info(`postMessage sent: ${i} ${this.verifyUrl}`)}catch{}},this.createIframe=async()=>{let i;const s=n=>{n.data===\"verify_ready\"&&(this.initialized=!0,this.processQueue(),window.removeEventListener(\"message\",s),i())};await Promise.race([new Promise(n=>{if(document.getElementById(Q))return n();window.addEventListener(\"message\",s);const a=document.createElement(\"iframe\");a.id=Q,a.src=`${this.verifyUrl}/${this.projectId}`,a.style.display=\"none\",document.body.append(a),this.iframe=a,i=n}),new Promise((n,a)=>setTimeout(()=>{window.removeEventListener(\"message\",s),a(\"verify iframe load timeout\")},(0,_walletconnect_time__WEBPACK_IMPORTED_MODULE_7__.toMiliseconds)(_walletconnect_time__WEBPACK_IMPORTED_MODULE_7__.FIVE_SECONDS)))])},this.removeIframe=()=>{this.iframe&&(this.iframe.remove(),this.iframe=void 0,this.initialized=!1)},this.logger=(0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.generateChildLogger)(t,this.name),this.verifyUrl=Z,this.abortController=new AbortController,this.isDevEnv=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isNode)()&&process.env.IS_VITEST}get context(){return (0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.getLoggerContext)(this.logger)}startAbortTimer(e){return this.abortController=new AbortController,setTimeout(()=>this.abortController.abort(),(0,_walletconnect_time__WEBPACK_IMPORTED_MODULE_7__.toMiliseconds)(e))}}var Tr=Object.defineProperty,Bt=Object.getOwnPropertySymbols,xr=Object.prototype.hasOwnProperty,Or=Object.prototype.propertyIsEnumerable,Vt=(r,e,t)=>e in r?Tr(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,qt=(r,e)=>{for(var t in e||(e={}))xr.call(e,t)&&Vt(r,t,e[t]);if(Bt)for(var t of Bt(e))Or.call(e,t)&&Vt(r,t,e[t]);return r};class ee extends _walletconnect_types__WEBPACK_IMPORTED_MODULE_13__.ICore{constructor(e){super(e),this.protocol=ue,this.version=We,this.name=X,this.events=new events__WEBPACK_IMPORTED_MODULE_0__.EventEmitter,this.initialized=!1,this.on=(i,s)=>this.events.on(i,s),this.once=(i,s)=>this.events.once(i,s),this.off=(i,s)=>this.events.off(i,s),this.removeListener=(i,s)=>this.events.removeListener(i,s),this.projectId=e?.projectId,this.relayUrl=e?.relayUrl||de,this.customStoragePrefix=e!=null&&e.customStoragePrefix?`:${e.customStoragePrefix}`:\"\";const t=typeof e?.logger<\"u\"&&typeof e?.logger!=\"string\"?e.logger:(0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.pino)((0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.getDefaultLoggerOptions)({level:e?.logger||Xe.logger}));this.logger=(0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.generateChildLogger)(t,this.name),this.heartbeat=new _walletconnect_heartbeat__WEBPACK_IMPORTED_MODULE_2__.HeartBeat,this.crypto=new _t(this,this.logger,e?.keychain),this.history=new Mt(this,this.logger),this.expirer=new kt(this,this.logger),this.storage=e!=null&&e.storage?e.storage:new _walletconnect_keyvaluestorage__WEBPACK_IMPORTED_MODULE_1__[\"default\"](qt(qt({},Qe),e?.storageOptions)),this.relayer=new zt({core:this,logger:this.logger,relayUrl:this.relayUrl,projectId:this.projectId}),this.pairing=new $t(this,this.logger),this.verify=new Kt(this.projectId||\"\",this.logger)}static async init(e){const t=new ee(e);await t.initialize();const i=await t.crypto.getClientId();return await t.storage.setItem(Dt,i),t}get context(){return (0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.getLoggerContext)(this.logger)}async start(){this.initialized||await this.initialize()}async initialize(){this.logger.trace(\"Initialized\");try{await this.crypto.init(),await this.history.init(),await this.expirer.init(),await this.relayer.init(),await this.heartbeat.init(),await this.pairing.init(),this.initialized=!0,this.logger.info(\"Core Initialization Success\")}catch(e){throw this.logger.warn(`Core Initialization Failure at epoch ${Date.now()}`,e),this.logger.error(e.message),e}}}const Ar=ee;\n//# sourceMappingURL=index.es.js.map\n\n\n//# sourceURL=webpack://wallet_connect_integration/./node_modules/@walletconnect/core/dist/index.es.js?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CORE_CONTEXT: () => (/* binding */ Q),\n/* harmony export */ CORE_DEFAULT: () => (/* binding */ Xe),\n/* harmony export */ CORE_PROTOCOL: () => (/* binding */ le),\n/* harmony export */ CORE_STORAGE_OPTIONS: () => (/* binding */ Qe),\n/* harmony export */ CORE_STORAGE_PREFIX: () => (/* binding */ O),\n/* harmony export */ CORE_VERSION: () => (/* binding */ We),\n/* harmony export */ CRYPTO_CLIENT_SEED: () => (/* binding */ de),\n/* harmony export */ CRYPTO_CONTEXT: () => (/* binding */ Ze),\n/* harmony export */ CRYPTO_JWT_TTL: () => (/* binding */ et),\n/* harmony export */ Core: () => (/* binding */ Nr),\n/* harmony export */ Crypto: () => (/* binding */ St),\n/* harmony export */ EXPIRER_CONTEXT: () => (/* binding */ It),\n/* harmony export */ EXPIRER_DEFAULT_TTL: () => (/* binding */ yr),\n/* harmony export */ EXPIRER_EVENTS: () => (/* binding */ v),\n/* harmony export */ EXPIRER_STORAGE_VERSION: () => (/* binding */ Ct),\n/* harmony export */ Expirer: () => (/* binding */ Kt),\n/* harmony export */ HISTORY_CONTEXT: () => (/* binding */ wt),\n/* harmony export */ HISTORY_EVENTS: () => (/* binding */ R),\n/* harmony export */ HISTORY_STORAGE_VERSION: () => (/* binding */ vt),\n/* harmony export */ JsonRpcHistory: () => (/* binding */ kt),\n/* harmony export */ KEYCHAIN_CONTEXT: () => (/* binding */ tt),\n/* harmony export */ KEYCHAIN_STORAGE_VERSION: () => (/* binding */ it),\n/* harmony export */ KeyChain: () => (/* binding */ _t),\n/* harmony export */ MESSAGES_CONTEXT: () => (/* binding */ st),\n/* harmony export */ MESSAGES_STORAGE_VERSION: () => (/* binding */ rt),\n/* harmony export */ MessageTracker: () => (/* binding */ Tt),\n/* harmony export */ PAIRING_CONTEXT: () => (/* binding */ ft),\n/* harmony export */ PAIRING_DEFAULT_TTL: () => (/* binding */ Dr),\n/* harmony export */ PAIRING_EVENTS: () => (/* binding */ V),\n/* harmony export */ PAIRING_RPC_OPTS: () => (/* binding */ F),\n/* harmony export */ PAIRING_STORAGE_VERSION: () => (/* binding */ Et),\n/* harmony export */ PENDING_SUB_RESOLUTION_TIMEOUT: () => (/* binding */ mt),\n/* harmony export */ PUBLISHER_CONTEXT: () => (/* binding */ at),\n/* harmony export */ PUBLISHER_DEFAULT_TTL: () => (/* binding */ nt),\n/* harmony export */ Pairing: () => (/* binding */ Mt),\n/* harmony export */ RELAYER_CONTEXT: () => (/* binding */ ct),\n/* harmony export */ RELAYER_DEFAULT_LOGGER: () => (/* binding */ ht),\n/* harmony export */ RELAYER_DEFAULT_PROTOCOL: () => (/* binding */ ot),\n/* harmony export */ RELAYER_DEFAULT_RELAY_URL: () => (/* binding */ ge),\n/* harmony export */ RELAYER_EVENTS: () => (/* binding */ D),\n/* harmony export */ RELAYER_FAILOVER_RELAY_URL: () => (/* binding */ pe),\n/* harmony export */ RELAYER_PROVIDER_EVENTS: () => (/* binding */ P),\n/* harmony export */ RELAYER_RECONNECT_TIMEOUT: () => (/* binding */ lt),\n/* harmony export */ RELAYER_SDK_VERSION: () => (/* binding */ dt),\n/* harmony export */ RELAYER_STORAGE_OPTIONS: () => (/* binding */ gr),\n/* harmony export */ RELAYER_SUBSCRIBER_SUFFIX: () => (/* binding */ ut),\n/* harmony export */ RELAYER_TRANSPORT_CUTOFF: () => (/* binding */ gt),\n/* harmony export */ Relayer: () => (/* binding */ Nt),\n/* harmony export */ STORE_STORAGE_VERSION: () => (/* binding */ pt),\n/* harmony export */ SUBSCRIBER_CONTEXT: () => (/* binding */ yt),\n/* harmony export */ SUBSCRIBER_DEFAULT_TTL: () => (/* binding */ pr),\n/* harmony export */ SUBSCRIBER_EVENTS: () => (/* binding */ w),\n/* harmony export */ SUBSCRIBER_STORAGE_VERSION: () => (/* binding */ bt),\n/* harmony export */ Store: () => (/* binding */ $t),\n/* harmony export */ Subscriber: () => (/* binding */ Ot),\n/* harmony export */ TRUSTED_VERIFY_URLS: () => (/* binding */ Rt),\n/* harmony export */ VERIFY_CONTEXT: () => (/* binding */ Z),\n/* harmony export */ VERIFY_FALLBACK_SERVER: () => (/* binding */ ee),\n/* harmony export */ VERIFY_SERVER: () => (/* binding */ $),\n/* harmony export */ Verify: () => (/* binding */ Bt),\n/* harmony export */ WALLETCONNECT_CLIENT_ID: () => (/* binding */ Dt),\n/* harmony export */ \"default\": () => (/* binding */ te)\n/* harmony export */ });\n/* harmony import */ var events__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! events */ \"./node_modules/events/events.js\");\n/* harmony import */ var events__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(events__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _walletconnect_keyvaluestorage__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @walletconnect/keyvaluestorage */ \"./node_modules/@walletconnect/keyvaluestorage/dist/index.es.js\");\n/* harmony import */ var _walletconnect_heartbeat__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @walletconnect/heartbeat */ \"./node_modules/@walletconnect/heartbeat/dist/cjs/index.js\");\n/* harmony import */ var _walletconnect_heartbeat__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_walletconnect_heartbeat__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @walletconnect/logger */ \"./node_modules/@walletconnect/logger/dist/cjs/index.js\");\n/* harmony import */ var _walletconnect_logger__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _walletconnect_types__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! @walletconnect/types */ \"./node_modules/@walletconnect/types/dist/index.es.js\");\n/* harmony import */ var _walletconnect_safe_json__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @walletconnect/safe-json */ \"./node_modules/@walletconnect/safe-json/dist/esm/index.js\");\n/* harmony import */ var _walletconnect_relay_auth__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @walletconnect/relay-auth */ \"./node_modules/@walletconnect/relay-auth/dist/esm/index.js\");\n/* harmony import */ var _walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! @walletconnect/utils */ \"./node_modules/@walletconnect/utils/dist/index.es.js\");\n/* harmony import */ var uint8arrays__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! uint8arrays */ \"./node_modules/uint8arrays/esm/src/index.js\");\n/* harmony import */ var _walletconnect_time__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @walletconnect/time */ \"./node_modules/@walletconnect/time/dist/cjs/index.js\");\n/* harmony import */ var _walletconnect_time__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_walletconnect_time__WEBPACK_IMPORTED_MODULE_7__);\n/* harmony import */ var _walletconnect_jsonrpc_provider__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @walletconnect/jsonrpc-provider */ \"./node_modules/@walletconnect/jsonrpc-provider/dist/esm/index.js\");\n/* harmony import */ var _walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @walletconnect/jsonrpc-utils */ \"./node_modules/@walletconnect/jsonrpc-utils/dist/esm/index.js\");\n/* harmony import */ var _walletconnect_jsonrpc_ws_connection__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @walletconnect/jsonrpc-ws-connection */ \"./node_modules/@walletconnect/jsonrpc-ws-connection/dist/index.es.js\");\n/* harmony import */ var lodash_isequal__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! lodash.isequal */ \"./node_modules/lodash.isequal/index.js\");\n/* harmony import */ var lodash_isequal__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(lodash_isequal__WEBPACK_IMPORTED_MODULE_11__);\nfunction Vi(r,e){if(r.length>=255)throw new TypeError(\"Alphabet too long\");for(var t=new Uint8Array(256),i=0;i>>0,m=new Uint8Array(S);I!==_;){for(var T=c[I],A=0,C=S-1;(T!==0||A>>0,m[C]=T%o>>>0,T=T/o>>>0;if(T!==0)throw new Error(\"Non-zero carry\");z=A,I++}for(var x=S-z;x!==S&&m[x]===0;)x++;for(var j=h.repeat(b);x>>0,S=new Uint8Array(_);c[b];){var m=t[c.charCodeAt(b)];if(m===255)return;for(var T=0,A=_-1;(m!==0||T>>0,S[A]=m%256>>>0,m=m/256>>>0;if(m!==0)throw new Error(\"Non-zero carry\");I=T,b++}if(c[b]!==\" \"){for(var C=_-I;C!==_&&S[C]===0;)C++;for(var x=new Uint8Array(z+(_-C)),j=z;C!==_;)x[j++]=S[C++];return x}}}function M(c){var b=y(c);if(b)return b;throw new Error(`Non-${e} character`)}return{encode:p,decodeUnsafe:y,decode:M}}var qi=Vi,ji=qi;const ze=r=>{if(r instanceof Uint8Array&&r.constructor.name===\"Uint8Array\")return r;if(r instanceof ArrayBuffer)return new Uint8Array(r);if(ArrayBuffer.isView(r))return new Uint8Array(r.buffer,r.byteOffset,r.byteLength);throw new Error(\"Unknown type, must be binary type\")},Yi=r=>new TextEncoder().encode(r),Gi=r=>new TextDecoder().decode(r);class Hi{constructor(e,t,i){this.name=e,this.prefix=t,this.baseEncode=i}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error(\"Unknown type, must be binary type\")}}class Ji{constructor(e,t,i){if(this.name=e,this.prefix=t,t.codePointAt(0)===void 0)throw new Error(\"Invalid prefix character\");this.prefixCodePoint=t.codePointAt(0),this.baseDecode=i}decode(e){if(typeof e==\"string\"){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}else throw Error(\"Can only multibase decode strings\")}or(e){return Ne(this,e)}}class Wi{constructor(e){this.decoders=e}or(e){return Ne(this,e)}decode(e){const t=e[0],i=this.decoders[t];if(i)return i.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}}const Ne=(r,e)=>new Wi({...r.decoders||{[r.prefix]:r},...e.decoders||{[e.prefix]:e}});class Xi{constructor(e,t,i,s){this.name=e,this.prefix=t,this.baseEncode=i,this.baseDecode=s,this.encoder=new Hi(e,t,i),this.decoder=new Ji(e,t,s)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}}const X=({name:r,prefix:e,encode:t,decode:i})=>new Xi(r,e,t,i),B=({prefix:r,name:e,alphabet:t})=>{const{encode:i,decode:s}=ji(t,e);return X({prefix:r,name:e,encode:i,decode:n=>ze(s(n))})},Qi=(r,e,t,i)=>{const s={};for(let d=0;d=8&&(o-=8,a[u++]=255&h>>o)}if(o>=t||255&h<<8-o)throw new SyntaxError(\"Unexpected end of data\");return a},Zi=(r,e,t)=>{const i=e[e.length-1]===\"=\",s=(1<t;)a-=t,n+=e[s&o>>a];if(a&&(n+=e[s&o<X({prefix:e,name:r,encode(s){return Zi(s,i,t)},decode(s){return Qi(s,i,t,r)}}),es=X({prefix:\"\\0\",name:\"identity\",encode:r=>Gi(r),decode:r=>Yi(r)});var ts=Object.freeze({__proto__:null,identity:es});const is=g({prefix:\"0\",name:\"base2\",alphabet:\"01\",bitsPerChar:1});var ss=Object.freeze({__proto__:null,base2:is});const rs=g({prefix:\"7\",name:\"base8\",alphabet:\"01234567\",bitsPerChar:3});var ns=Object.freeze({__proto__:null,base8:rs});const as=B({prefix:\"9\",name:\"base10\",alphabet:\"0123456789\"});var os=Object.freeze({__proto__:null,base10:as});const hs=g({prefix:\"f\",name:\"base16\",alphabet:\"0123456789abcdef\",bitsPerChar:4}),cs=g({prefix:\"F\",name:\"base16upper\",alphabet:\"0123456789ABCDEF\",bitsPerChar:4});var us=Object.freeze({__proto__:null,base16:hs,base16upper:cs});const ls=g({prefix:\"b\",name:\"base32\",alphabet:\"abcdefghijklmnopqrstuvwxyz234567\",bitsPerChar:5}),ds=g({prefix:\"B\",name:\"base32upper\",alphabet:\"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567\",bitsPerChar:5}),gs=g({prefix:\"c\",name:\"base32pad\",alphabet:\"abcdefghijklmnopqrstuvwxyz234567=\",bitsPerChar:5}),ps=g({prefix:\"C\",name:\"base32padupper\",alphabet:\"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=\",bitsPerChar:5}),Ds=g({prefix:\"v\",name:\"base32hex\",alphabet:\"0123456789abcdefghijklmnopqrstuv\",bitsPerChar:5}),ys=g({prefix:\"V\",name:\"base32hexupper\",alphabet:\"0123456789ABCDEFGHIJKLMNOPQRSTUV\",bitsPerChar:5}),bs=g({prefix:\"t\",name:\"base32hexpad\",alphabet:\"0123456789abcdefghijklmnopqrstuv=\",bitsPerChar:5}),ms=g({prefix:\"T\",name:\"base32hexpadupper\",alphabet:\"0123456789ABCDEFGHIJKLMNOPQRSTUV=\",bitsPerChar:5}),fs=g({prefix:\"h\",name:\"base32z\",alphabet:\"ybndrfg8ejkmcpqxot1uwisza345h769\",bitsPerChar:5});var Es=Object.freeze({__proto__:null,base32:ls,base32upper:ds,base32pad:gs,base32padupper:ps,base32hex:Ds,base32hexupper:ys,base32hexpad:bs,base32hexpadupper:ms,base32z:fs});const ws=B({prefix:\"k\",name:\"base36\",alphabet:\"0123456789abcdefghijklmnopqrstuvwxyz\"}),vs=B({prefix:\"K\",name:\"base36upper\",alphabet:\"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ\"});var Is=Object.freeze({__proto__:null,base36:ws,base36upper:vs});const Cs=B({name:\"base58btc\",prefix:\"z\",alphabet:\"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz\"}),Rs=B({name:\"base58flickr\",prefix:\"Z\",alphabet:\"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ\"});var _s=Object.freeze({__proto__:null,base58btc:Cs,base58flickr:Rs});const Ss=g({prefix:\"m\",name:\"base64\",alphabet:\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\",bitsPerChar:6}),Ts=g({prefix:\"M\",name:\"base64pad\",alphabet:\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\",bitsPerChar:6}),Ps=g({prefix:\"u\",name:\"base64url\",alphabet:\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_\",bitsPerChar:6}),xs=g({prefix:\"U\",name:\"base64urlpad\",alphabet:\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=\",bitsPerChar:6});var Os=Object.freeze({__proto__:null,base64:Ss,base64pad:Ts,base64url:Ps,base64urlpad:xs});const Ue=Array.from(\"\\u{1F680}\\u{1FA90}\\u2604\\u{1F6F0}\\u{1F30C}\\u{1F311}\\u{1F312}\\u{1F313}\\u{1F314}\\u{1F315}\\u{1F316}\\u{1F317}\\u{1F318}\\u{1F30D}\\u{1F30F}\\u{1F30E}\\u{1F409}\\u2600\\u{1F4BB}\\u{1F5A5}\\u{1F4BE}\\u{1F4BF}\\u{1F602}\\u2764\\u{1F60D}\\u{1F923}\\u{1F60A}\\u{1F64F}\\u{1F495}\\u{1F62D}\\u{1F618}\\u{1F44D}\\u{1F605}\\u{1F44F}\\u{1F601}\\u{1F525}\\u{1F970}\\u{1F494}\\u{1F496}\\u{1F499}\\u{1F622}\\u{1F914}\\u{1F606}\\u{1F644}\\u{1F4AA}\\u{1F609}\\u263A\\u{1F44C}\\u{1F917}\\u{1F49C}\\u{1F614}\\u{1F60E}\\u{1F607}\\u{1F339}\\u{1F926}\\u{1F389}\\u{1F49E}\\u270C\\u2728\\u{1F937}\\u{1F631}\\u{1F60C}\\u{1F338}\\u{1F64C}\\u{1F60B}\\u{1F497}\\u{1F49A}\\u{1F60F}\\u{1F49B}\\u{1F642}\\u{1F493}\\u{1F929}\\u{1F604}\\u{1F600}\\u{1F5A4}\\u{1F603}\\u{1F4AF}\\u{1F648}\\u{1F447}\\u{1F3B6}\\u{1F612}\\u{1F92D}\\u2763\\u{1F61C}\\u{1F48B}\\u{1F440}\\u{1F62A}\\u{1F611}\\u{1F4A5}\\u{1F64B}\\u{1F61E}\\u{1F629}\\u{1F621}\\u{1F92A}\\u{1F44A}\\u{1F973}\\u{1F625}\\u{1F924}\\u{1F449}\\u{1F483}\\u{1F633}\\u270B\\u{1F61A}\\u{1F61D}\\u{1F634}\\u{1F31F}\\u{1F62C}\\u{1F643}\\u{1F340}\\u{1F337}\\u{1F63B}\\u{1F613}\\u2B50\\u2705\\u{1F97A}\\u{1F308}\\u{1F608}\\u{1F918}\\u{1F4A6}\\u2714\\u{1F623}\\u{1F3C3}\\u{1F490}\\u2639\\u{1F38A}\\u{1F498}\\u{1F620}\\u261D\\u{1F615}\\u{1F33A}\\u{1F382}\\u{1F33B}\\u{1F610}\\u{1F595}\\u{1F49D}\\u{1F64A}\\u{1F639}\\u{1F5E3}\\u{1F4AB}\\u{1F480}\\u{1F451}\\u{1F3B5}\\u{1F91E}\\u{1F61B}\\u{1F534}\\u{1F624}\\u{1F33C}\\u{1F62B}\\u26BD\\u{1F919}\\u2615\\u{1F3C6}\\u{1F92B}\\u{1F448}\\u{1F62E}\\u{1F646}\\u{1F37B}\\u{1F343}\\u{1F436}\\u{1F481}\\u{1F632}\\u{1F33F}\\u{1F9E1}\\u{1F381}\\u26A1\\u{1F31E}\\u{1F388}\\u274C\\u270A\\u{1F44B}\\u{1F630}\\u{1F928}\\u{1F636}\\u{1F91D}\\u{1F6B6}\\u{1F4B0}\\u{1F353}\\u{1F4A2}\\u{1F91F}\\u{1F641}\\u{1F6A8}\\u{1F4A8}\\u{1F92C}\\u2708\\u{1F380}\\u{1F37A}\\u{1F913}\\u{1F619}\\u{1F49F}\\u{1F331}\\u{1F616}\\u{1F476}\\u{1F974}\\u25B6\\u27A1\\u2753\\u{1F48E}\\u{1F4B8}\\u2B07\\u{1F628}\\u{1F31A}\\u{1F98B}\\u{1F637}\\u{1F57A}\\u26A0\\u{1F645}\\u{1F61F}\\u{1F635}\\u{1F44E}\\u{1F932}\\u{1F920}\\u{1F927}\\u{1F4CC}\\u{1F535}\\u{1F485}\\u{1F9D0}\\u{1F43E}\\u{1F352}\\u{1F617}\\u{1F911}\\u{1F30A}\\u{1F92F}\\u{1F437}\\u260E\\u{1F4A7}\\u{1F62F}\\u{1F486}\\u{1F446}\\u{1F3A4}\\u{1F647}\\u{1F351}\\u2744\\u{1F334}\\u{1F4A3}\\u{1F438}\\u{1F48C}\\u{1F4CD}\\u{1F940}\\u{1F922}\\u{1F445}\\u{1F4A1}\\u{1F4A9}\\u{1F450}\\u{1F4F8}\\u{1F47B}\\u{1F910}\\u{1F92E}\\u{1F3BC}\\u{1F975}\\u{1F6A9}\\u{1F34E}\\u{1F34A}\\u{1F47C}\\u{1F48D}\\u{1F4E3}\\u{1F942}\"),As=Ue.reduce((r,e,t)=>(r[t]=e,r),[]),zs=Ue.reduce((r,e,t)=>(r[e.codePointAt(0)]=t,r),[]);function Ns(r){return r.reduce((e,t)=>(e+=As[t],e),\"\")}function Us(r){const e=[];for(const t of r){const i=zs[t.codePointAt(0)];if(i===void 0)throw new Error(`Non-base256emoji character: ${t}`);e.push(i)}return new Uint8Array(e)}const Ls=X({prefix:\"\\u{1F680}\",name:\"base256emoji\",encode:Ns,decode:Us});var Fs=Object.freeze({__proto__:null,base256emoji:Ls}),$s=Fe,Le=128,Ms=127,ks=~Ms,Ks=Math.pow(2,31);function Fe(r,e,t){e=e||[],t=t||0;for(var i=t;r>=Ks;)e[t++]=r&255|Le,r/=128;for(;r&ks;)e[t++]=r&255|Le,r>>>=7;return e[t]=r|0,Fe.bytes=t-i+1,e}var Bs=he,Vs=128,$e=127;function he(r,i){var t=0,i=i||0,s=0,n=i,a,o=r.length;do{if(n>=o)throw he.bytes=0,new RangeError(\"Could not decode varint\");a=r[n++],t+=s<28?(a&$e)<=Vs);return he.bytes=n-i,t}var qs=Math.pow(2,7),js=Math.pow(2,14),Ys=Math.pow(2,21),Gs=Math.pow(2,28),Hs=Math.pow(2,35),Js=Math.pow(2,42),Ws=Math.pow(2,49),Xs=Math.pow(2,56),Qs=Math.pow(2,63),Zs=function(r){return r(Me.encode(r,e,t),e),Ke=r=>Me.encodingLength(r),ce=(r,e)=>{const t=e.byteLength,i=Ke(r),s=i+Ke(t),n=new Uint8Array(s+t);return ke(r,n,0),ke(t,n,i),n.set(e,s),new tr(r,t,e,n)};class tr{constructor(e,t,i,s){this.code=e,this.size=t,this.digest=i,this.bytes=s}}const Be=({name:r,code:e,encode:t})=>new ir(r,e,t);class ir{constructor(e,t,i){this.name=e,this.code=t,this.encode=i}digest(e){if(e instanceof Uint8Array){const t=this.encode(e);return t instanceof Uint8Array?ce(this.code,t):t.then(i=>ce(this.code,i))}else throw Error(\"Unknown type, must be binary type\")}}const Ve=r=>async e=>new Uint8Array(await crypto.subtle.digest(r,e)),sr=Be({name:\"sha2-256\",code:18,encode:Ve(\"SHA-256\")}),rr=Be({name:\"sha2-512\",code:19,encode:Ve(\"SHA-512\")});var nr=Object.freeze({__proto__:null,sha256:sr,sha512:rr});const qe=0,ar=\"identity\",je=ze,or=r=>ce(qe,je(r)),hr={code:qe,name:ar,encode:je,digest:or};var cr=Object.freeze({__proto__:null,identity:hr});new TextEncoder,new TextDecoder;const Ye={...ts,...ss,...ns,...os,...us,...Es,...Is,..._s,...Os,...Fs};({...nr,...cr});function Ge(r){return globalThis.Buffer!=null?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r}function ur(r=0){return globalThis.Buffer!=null&&globalThis.Buffer.allocUnsafe!=null?Ge(globalThis.Buffer.allocUnsafe(r)):new Uint8Array(r)}function He(r,e,t,i){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:t},decoder:{decode:i}}}const Je=He(\"utf8\",\"u\",r=>\"u\"+new TextDecoder(\"utf8\").decode(r),r=>new TextEncoder().encode(r.substring(1))),ue=He(\"ascii\",\"a\",r=>{let e=\"a\";for(let t=0;t{r=r.substring(1);const e=ur(r.length);for(let t=0;t{if(!this.initialized){const i=await this.getKeyChain();typeof i<\"u\"&&(this.keychain=i),this.initialized=!0}},this.has=i=>(this.isInitialized(),this.keychain.has(i)),this.set=async(i,s)=>{this.isInitialized(),this.keychain.set(i,s),await this.persist()},this.get=i=>{this.isInitialized();const s=this.keychain.get(i);if(typeof s>\"u\"){const{message:n}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"NO_MATCHING_KEY\",`${this.name}: ${i}`);throw new Error(n)}return s},this.del=async i=>{this.isInitialized(),this.keychain.delete(i),await this.persist()},this.core=e,this.logger=(0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.generateChildLogger)(t,this.name)}get context(){return (0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.getLoggerContext)(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+\"//\"+this.name}async setKeyChain(e){await this.core.storage.setItem(this.storageKey,(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.mapToObj)(e))}async getKeyChain(){const e=await this.core.storage.getItem(this.storageKey);return typeof e<\"u\"?(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.objToMap)(e):void 0}async persist(){await this.setKeyChain(this.keychain)}isInitialized(){if(!this.initialized){const{message:e}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"NOT_INITIALIZED\",this.name);throw new Error(e)}}}class St{constructor(e,t,i){this.core=e,this.logger=t,this.name=Ze,this.initialized=!1,this.init=async()=>{this.initialized||(await this.keychain.init(),this.initialized=!0)},this.hasKeys=s=>(this.isInitialized(),this.keychain.has(s)),this.getClientId=async()=>{this.isInitialized();const s=await this.getClientSeed(),n=_walletconnect_relay_auth__WEBPACK_IMPORTED_MODULE_5__.generateKeyPair(s);return _walletconnect_relay_auth__WEBPACK_IMPORTED_MODULE_5__.encodeIss(n.publicKey)},this.generateKeyPair=()=>{this.isInitialized();const s=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.generateKeyPair)();return this.setPrivateKey(s.publicKey,s.privateKey)},this.signJWT=async s=>{this.isInitialized();const n=await this.getClientSeed(),a=_walletconnect_relay_auth__WEBPACK_IMPORTED_MODULE_5__.generateKeyPair(n),o=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.generateRandomBytes32)(),h=et;return await _walletconnect_relay_auth__WEBPACK_IMPORTED_MODULE_5__.signJWT(o,s,h,a)},this.generateSharedKey=(s,n,a)=>{this.isInitialized();const o=this.getPrivateKey(s),h=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.deriveSymKey)(o,n);return this.setSymKey(h,a)},this.setSymKey=async(s,n)=>{this.isInitialized();const a=n||(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.hashKey)(s);return await this.keychain.set(a,s),a},this.deleteKeyPair=async s=>{this.isInitialized(),await this.keychain.del(s)},this.deleteSymKey=async s=>{this.isInitialized(),await this.keychain.del(s)},this.encode=async(s,n,a)=>{this.isInitialized();const o=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.validateEncoding)(a),h=(0,_walletconnect_safe_json__WEBPACK_IMPORTED_MODULE_4__.safeJsonStringify)(n);if((0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isTypeOneEnvelope)(o)){const y=o.senderPublicKey,M=o.receiverPublicKey;s=await this.generateSharedKey(y,M)}const u=this.getSymKey(s),{type:d,senderPublicKey:p}=o;return (0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.encrypt)({type:d,symKey:u,message:h,senderPublicKey:p})},this.decode=async(s,n,a)=>{this.isInitialized();const o=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.validateDecoding)(n,a);if((0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isTypeOneEnvelope)(o)){const h=o.receiverPublicKey,u=o.senderPublicKey;s=await this.generateSharedKey(h,u)}try{const h=this.getSymKey(s),u=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.decrypt)({symKey:h,encoded:n});return (0,_walletconnect_safe_json__WEBPACK_IMPORTED_MODULE_4__.safeJsonParse)(u)}catch(h){this.logger.error(`Failed to decode message from topic: '${s}', clientId: '${await this.getClientId()}'`),this.logger.error(h)}},this.getPayloadType=s=>{const n=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.deserialize)(s);return (0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.decodeTypeByte)(n.type)},this.getPayloadSenderPublicKey=s=>{const n=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.deserialize)(s);return n.senderPublicKey?(0,uint8arrays__WEBPACK_IMPORTED_MODULE_6__.toString)(n.senderPublicKey,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.BASE16):void 0},this.core=e,this.logger=(0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.generateChildLogger)(t,this.name),this.keychain=i||new _t(this.core,this.logger)}get context(){return (0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.getLoggerContext)(this.logger)}async setPrivateKey(e,t){return await this.keychain.set(e,t),e}getPrivateKey(e){return this.keychain.get(e)}async getClientSeed(){let e=\"\";try{e=this.keychain.get(de)}catch{e=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.generateRandomBytes32)(),await this.keychain.set(de,e)}return dr(e,\"base16\")}getSymKey(e){return this.keychain.get(e)}isInitialized(){if(!this.initialized){const{message:e}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"NOT_INITIALIZED\",this.name);throw new Error(e)}}}class Tt extends _walletconnect_types__WEBPACK_IMPORTED_MODULE_13__.IMessageTracker{constructor(e,t){super(e,t),this.logger=e,this.core=t,this.messages=new Map,this.name=st,this.version=rt,this.initialized=!1,this.storagePrefix=O,this.init=async()=>{if(!this.initialized){this.logger.trace(\"Initialized\");try{const i=await this.getRelayerMessages();typeof i<\"u\"&&(this.messages=i),this.logger.debug(`Successfully Restored records for ${this.name}`),this.logger.trace({type:\"method\",method:\"restore\",size:this.messages.size})}catch(i){this.logger.debug(`Failed to Restore records for ${this.name}`),this.logger.error(i)}finally{this.initialized=!0}}},this.set=async(i,s)=>{this.isInitialized();const n=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.hashMessage)(s);let a=this.messages.get(i);return typeof a>\"u\"&&(a={}),typeof a[n]<\"u\"||(a[n]=s,this.messages.set(i,a),await this.persist()),n},this.get=i=>{this.isInitialized();let s=this.messages.get(i);return typeof s>\"u\"&&(s={}),s},this.has=(i,s)=>{this.isInitialized();const n=this.get(i),a=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.hashMessage)(s);return typeof n[a]<\"u\"},this.del=async i=>{this.isInitialized(),this.messages.delete(i),await this.persist()},this.logger=(0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.generateChildLogger)(e,this.name),this.core=t}get context(){return (0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.getLoggerContext)(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+\"//\"+this.name}async setRelayerMessages(e){await this.core.storage.setItem(this.storageKey,(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.mapToObj)(e))}async getRelayerMessages(){const e=await this.core.storage.getItem(this.storageKey);return typeof e<\"u\"?(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.objToMap)(e):void 0}async persist(){await this.setRelayerMessages(this.messages)}isInitialized(){if(!this.initialized){const{message:e}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"NOT_INITIALIZED\",this.name);throw new Error(e)}}}class br extends _walletconnect_types__WEBPACK_IMPORTED_MODULE_13__.IPublisher{constructor(e,t){super(e,t),this.relayer=e,this.logger=t,this.events=new events__WEBPACK_IMPORTED_MODULE_0__.EventEmitter,this.name=at,this.queue=new Map,this.publishTimeout=(0,_walletconnect_time__WEBPACK_IMPORTED_MODULE_7__.toMiliseconds)(_walletconnect_time__WEBPACK_IMPORTED_MODULE_7__.TEN_SECONDS),this.needsTransportRestart=!1,this.publish=async(i,s,n)=>{var a;this.logger.debug(\"Publishing Payload\"),this.logger.trace({type:\"method\",method:\"publish\",params:{topic:i,message:s,opts:n}});try{const o=n?.ttl||nt,h=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getRelayProtocolName)(n),u=n?.prompt||!1,d=n?.tag||0,p=n?.id||(0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_9__.getBigIntRpcId)().toString(),y={topic:i,message:s,opts:{ttl:o,relay:h,prompt:u,tag:d,id:p}},M=setTimeout(()=>this.queue.set(p,y),this.publishTimeout);try{await await (0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.createExpiringPromise)(this.rpcPublish(i,s,o,h,u,d,p),this.publishTimeout,\"Failed to publish payload, please try again.\"),this.removeRequestFromQueue(p),this.relayer.events.emit(D.publish,y)}catch(c){if(this.logger.debug(\"Publishing Payload stalled\"),this.needsTransportRestart=!0,(a=n?.internal)!=null&&a.throwOnFailedPublish)throw this.removeRequestFromQueue(p),c;return}finally{clearTimeout(M)}this.logger.debug(\"Successfully Published Payload\"),this.logger.trace({type:\"method\",method:\"publish\",params:{topic:i,message:s,opts:n}})}catch(o){throw this.logger.debug(\"Failed to Publish Payload\"),this.logger.error(o),o}},this.on=(i,s)=>{this.events.on(i,s)},this.once=(i,s)=>{this.events.once(i,s)},this.off=(i,s)=>{this.events.off(i,s)},this.removeListener=(i,s)=>{this.events.removeListener(i,s)},this.relayer=e,this.logger=(0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.generateChildLogger)(t,this.name),this.registerEventListeners()}get context(){return (0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.getLoggerContext)(this.logger)}rpcPublish(e,t,i,s,n,a,o){var h,u,d,p;const y={method:(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getRelayProtocolApi)(s.protocol).publish,params:{topic:e,message:t,ttl:i,prompt:n,tag:a},id:o};return (0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isUndefined)((h=y.params)==null?void 0:h.prompt)&&((u=y.params)==null||delete u.prompt),(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isUndefined)((d=y.params)==null?void 0:d.tag)&&((p=y.params)==null||delete p.tag),this.logger.debug(\"Outgoing Relay Payload\"),this.logger.trace({type:\"message\",direction:\"outgoing\",request:y}),this.relayer.request(y)}removeRequestFromQueue(e){this.queue.delete(e)}checkQueue(){this.queue.forEach(async e=>{const{topic:t,message:i,opts:s}=e;await this.publish(t,i,s)})}registerEventListeners(){this.relayer.core.heartbeat.on(_walletconnect_heartbeat__WEBPACK_IMPORTED_MODULE_2__.HEARTBEAT_EVENTS.pulse,()=>{if(this.needsTransportRestart){this.needsTransportRestart=!1,this.relayer.events.emit(D.connection_stalled);return}this.checkQueue()}),this.relayer.on(D.message_ack,e=>{this.removeRequestFromQueue(e.id.toString())})}}class mr{constructor(){this.map=new Map,this.set=(e,t)=>{const i=this.get(e);this.exists(e,t)||this.map.set(e,[...i,t])},this.get=e=>this.map.get(e)||[],this.exists=(e,t)=>this.get(e).includes(t),this.delete=(e,t)=>{if(typeof t>\"u\"){this.map.delete(e);return}if(!this.map.has(e))return;const i=this.get(e);if(!this.exists(e,t))return;const s=i.filter(n=>n!==t);if(!s.length){this.map.delete(e);return}this.map.set(e,s)},this.clear=()=>{this.map.clear()}}get topics(){return Array.from(this.map.keys())}}var fr=Object.defineProperty,Er=Object.defineProperties,wr=Object.getOwnPropertyDescriptors,Pt=Object.getOwnPropertySymbols,vr=Object.prototype.hasOwnProperty,Ir=Object.prototype.propertyIsEnumerable,xt=(r,e,t)=>e in r?fr(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,q=(r,e)=>{for(var t in e||(e={}))vr.call(e,t)&&xt(r,t,e[t]);if(Pt)for(var t of Pt(e))Ir.call(e,t)&&xt(r,t,e[t]);return r},De=(r,e)=>Er(r,wr(e));class Ot extends _walletconnect_types__WEBPACK_IMPORTED_MODULE_13__.ISubscriber{constructor(e,t){super(e,t),this.relayer=e,this.logger=t,this.subscriptions=new Map,this.topicMap=new mr,this.events=new events__WEBPACK_IMPORTED_MODULE_0__.EventEmitter,this.name=yt,this.version=bt,this.pending=new Map,this.cached=[],this.initialized=!1,this.pendingSubscriptionWatchLabel=\"pending_sub_watch_label\",this.pollingInterval=20,this.storagePrefix=O,this.subscribeTimeout=1e4,this.restartInProgress=!1,this.batchSubscribeTopicsLimit=500,this.init=async()=>{this.initialized||(this.logger.trace(\"Initialized\"),this.registerEventListeners(),this.clientId=await this.relayer.core.crypto.getClientId())},this.subscribe=async(i,s)=>{await this.restartToComplete(),this.isInitialized(),this.logger.debug(\"Subscribing Topic\"),this.logger.trace({type:\"method\",method:\"subscribe\",params:{topic:i,opts:s}});try{const n=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getRelayProtocolName)(s),a={topic:i,relay:n};this.pending.set(i,a);const o=await this.rpcSubscribe(i,n);return this.onSubscribe(o,a),this.logger.debug(\"Successfully Subscribed Topic\"),this.logger.trace({type:\"method\",method:\"subscribe\",params:{topic:i,opts:s}}),o}catch(n){throw this.logger.debug(\"Failed to Subscribe Topic\"),this.logger.error(n),n}},this.unsubscribe=async(i,s)=>{await this.restartToComplete(),this.isInitialized(),typeof s?.id<\"u\"?await this.unsubscribeById(i,s.id,s):await this.unsubscribeByTopic(i,s)},this.isSubscribed=async i=>this.topics.includes(i)?!0:await new Promise((s,n)=>{const a=new _walletconnect_time__WEBPACK_IMPORTED_MODULE_7__.Watch;a.start(this.pendingSubscriptionWatchLabel);const o=setInterval(()=>{!this.pending.has(i)&&this.topics.includes(i)&&(clearInterval(o),a.stop(this.pendingSubscriptionWatchLabel),s(!0)),a.elapsed(this.pendingSubscriptionWatchLabel)>=mt&&(clearInterval(o),a.stop(this.pendingSubscriptionWatchLabel),n(new Error(\"Subscription resolution timeout\")))},this.pollingInterval)}).catch(()=>!1),this.on=(i,s)=>{this.events.on(i,s)},this.once=(i,s)=>{this.events.once(i,s)},this.off=(i,s)=>{this.events.off(i,s)},this.removeListener=(i,s)=>{this.events.removeListener(i,s)},this.restart=async()=>{this.restartInProgress=!0,await this.restore(),await this.reset(),this.restartInProgress=!1},this.relayer=e,this.logger=(0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.generateChildLogger)(t,this.name),this.clientId=\"\"}get context(){return (0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.getLoggerContext)(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.relayer.core.customStoragePrefix+\"//\"+this.name}get length(){return this.subscriptions.size}get ids(){return Array.from(this.subscriptions.keys())}get values(){return Array.from(this.subscriptions.values())}get topics(){return this.topicMap.topics}hasSubscription(e,t){let i=!1;try{i=this.getSubscription(e).topic===t}catch{}return i}onEnable(){this.cached=[],this.initialized=!0}onDisable(){this.cached=this.values,this.subscriptions.clear(),this.topicMap.clear()}async unsubscribeByTopic(e,t){const i=this.topicMap.get(e);await Promise.all(i.map(async s=>await this.unsubscribeById(e,s,t)))}async unsubscribeById(e,t,i){this.logger.debug(\"Unsubscribing Topic\"),this.logger.trace({type:\"method\",method:\"unsubscribe\",params:{topic:e,id:t,opts:i}});try{const s=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getRelayProtocolName)(i);await this.rpcUnsubscribe(e,t,s);const n=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getSdkError)(\"USER_DISCONNECTED\",`${this.name}, ${e}`);await this.onUnsubscribe(e,t,n),this.logger.debug(\"Successfully Unsubscribed Topic\"),this.logger.trace({type:\"method\",method:\"unsubscribe\",params:{topic:e,id:t,opts:i}})}catch(s){throw this.logger.debug(\"Failed to Unsubscribe Topic\"),this.logger.error(s),s}}async rpcSubscribe(e,t){const i={method:(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getRelayProtocolApi)(t.protocol).subscribe,params:{topic:e}};this.logger.debug(\"Outgoing Relay Payload\"),this.logger.trace({type:\"payload\",direction:\"outgoing\",request:i});try{await await (0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.createExpiringPromise)(this.relayer.request(i),this.subscribeTimeout)}catch{this.logger.debug(\"Outgoing Relay Subscribe Payload stalled\"),this.relayer.events.emit(D.connection_stalled)}return (0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.hashMessage)(e+this.clientId)}async rpcBatchSubscribe(e){if(!e.length)return;const t=e[0].relay,i={method:(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getRelayProtocolApi)(t.protocol).batchSubscribe,params:{topics:e.map(s=>s.topic)}};this.logger.debug(\"Outgoing Relay Payload\"),this.logger.trace({type:\"payload\",direction:\"outgoing\",request:i});try{return await await (0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.createExpiringPromise)(this.relayer.request(i),this.subscribeTimeout)}catch{this.logger.debug(\"Outgoing Relay Payload stalled\"),this.relayer.events.emit(D.connection_stalled)}}rpcUnsubscribe(e,t,i){const s={method:(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getRelayProtocolApi)(i.protocol).unsubscribe,params:{topic:e,id:t}};return this.logger.debug(\"Outgoing Relay Payload\"),this.logger.trace({type:\"payload\",direction:\"outgoing\",request:s}),this.relayer.request(s)}onSubscribe(e,t){this.setSubscription(e,De(q({},t),{id:e})),this.pending.delete(t.topic)}onBatchSubscribe(e){e.length&&e.forEach(t=>{this.setSubscription(t.id,q({},t)),this.pending.delete(t.topic)})}async onUnsubscribe(e,t,i){this.events.removeAllListeners(t),this.hasSubscription(t,e)&&this.deleteSubscription(t,i),await this.relayer.messages.del(e)}async setRelayerSubscriptions(e){await this.relayer.core.storage.setItem(this.storageKey,e)}async getRelayerSubscriptions(){return await this.relayer.core.storage.getItem(this.storageKey)}setSubscription(e,t){this.subscriptions.has(e)||(this.logger.debug(\"Setting subscription\"),this.logger.trace({type:\"method\",method:\"setSubscription\",id:e,subscription:t}),this.addSubscription(e,t))}addSubscription(e,t){this.subscriptions.set(e,q({},t)),this.topicMap.set(t.topic,e),this.events.emit(w.created,t)}getSubscription(e){this.logger.debug(\"Getting subscription\"),this.logger.trace({type:\"method\",method:\"getSubscription\",id:e});const t=this.subscriptions.get(e);if(!t){const{message:i}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"NO_MATCHING_KEY\",`${this.name}: ${e}`);throw new Error(i)}return t}deleteSubscription(e,t){this.logger.debug(\"Deleting subscription\"),this.logger.trace({type:\"method\",method:\"deleteSubscription\",id:e,reason:t});const i=this.getSubscription(e);this.subscriptions.delete(e),this.topicMap.delete(i.topic,e),this.events.emit(w.deleted,De(q({},i),{reason:t}))}async persist(){await this.setRelayerSubscriptions(this.values),this.events.emit(w.sync)}async reset(){if(this.cached.length){const e=Math.ceil(this.cached.length/this.batchSubscribeTopicsLimit);for(let t=0;t\"u\"||!e.length)return;if(this.subscriptions.size){const{message:t}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"RESTORE_WILL_OVERRIDE\",this.name);throw this.logger.error(t),this.logger.error(`${this.name}: ${JSON.stringify(this.values)}`),new Error(t)}this.cached=e,this.logger.debug(`Successfully Restored subscriptions for ${this.name}`),this.logger.trace({type:\"method\",method:\"restore\",subscriptions:this.values})}catch(e){this.logger.debug(`Failed to Restore subscriptions for ${this.name}`),this.logger.error(e)}}async batchSubscribe(e){if(!e.length)return;const t=await this.rpcBatchSubscribe(e);(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isValidArray)(t)&&this.onBatchSubscribe(t.map((i,s)=>De(q({},e[s]),{id:i})))}async onConnect(){this.restartInProgress||(await this.restart(),this.onEnable())}onDisconnect(){this.onDisable()}async checkPending(){if(!this.initialized||this.relayer.transportExplicitlyClosed)return;const e=[];this.pending.forEach(t=>{e.push(t)}),await this.batchSubscribe(e)}registerEventListeners(){this.relayer.core.heartbeat.on(_walletconnect_heartbeat__WEBPACK_IMPORTED_MODULE_2__.HEARTBEAT_EVENTS.pulse,async()=>{await this.checkPending()}),this.relayer.on(D.connect,async()=>{await this.onConnect()}),this.relayer.on(D.disconnect,()=>{this.onDisconnect()}),this.events.on(w.created,async e=>{const t=w.created;this.logger.info(`Emitting ${t}`),this.logger.debug({type:\"event\",event:t,data:e}),await this.persist()}),this.events.on(w.deleted,async e=>{const t=w.deleted;this.logger.info(`Emitting ${t}`),this.logger.debug({type:\"event\",event:t,data:e}),await this.persist()})}isInitialized(){if(!this.initialized){const{message:e}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"NOT_INITIALIZED\",this.name);throw new Error(e)}}async restartToComplete(){this.restartInProgress&&await new Promise(e=>{const t=setInterval(()=>{this.restartInProgress||(clearInterval(t),e())},this.pollingInterval)})}}var Cr=Object.defineProperty,At=Object.getOwnPropertySymbols,Rr=Object.prototype.hasOwnProperty,_r=Object.prototype.propertyIsEnumerable,zt=(r,e,t)=>e in r?Cr(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Sr=(r,e)=>{for(var t in e||(e={}))Rr.call(e,t)&&zt(r,t,e[t]);if(At)for(var t of At(e))_r.call(e,t)&&zt(r,t,e[t]);return r};class Nt extends _walletconnect_types__WEBPACK_IMPORTED_MODULE_13__.IRelayer{constructor(e){super(e),this.protocol=\"wc\",this.version=2,this.events=new events__WEBPACK_IMPORTED_MODULE_0__.EventEmitter,this.name=ct,this.transportExplicitlyClosed=!1,this.initialized=!1,this.connectionAttemptInProgress=!1,this.connectionStatusPollingInterval=20,this.staleConnectionErrors=[\"socket hang up\",\"socket stalled\"],this.hasExperiencedNetworkDisruption=!1,this.request=async t=>{this.logger.debug(\"Publishing Request Payload\");try{return await this.toEstablishConnection(),await this.provider.request(t)}catch(i){throw this.logger.debug(\"Failed to Publish Request\"),this.logger.error(i),i}},this.onPayloadHandler=t=>{this.onProviderPayload(t)},this.onConnectHandler=()=>{this.events.emit(D.connect)},this.onDisconnectHandler=()=>{this.onProviderDisconnect()},this.onProviderErrorHandler=t=>{this.logger.error(t),this.events.emit(D.error,t),this.logger.info(\"Fatal socket error received, closing transport\"),this.transportClose()},this.registerProviderListeners=()=>{this.provider.on(P.payload,this.onPayloadHandler),this.provider.on(P.connect,this.onConnectHandler),this.provider.on(P.disconnect,this.onDisconnectHandler),this.provider.on(P.error,this.onProviderErrorHandler)},this.core=e.core,this.logger=typeof e.logger<\"u\"&&typeof e.logger!=\"string\"?(0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.generateChildLogger)(e.logger,this.name):(0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.pino)((0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.getDefaultLoggerOptions)({level:e.logger||ht})),this.messages=new Tt(this.logger,e.core),this.subscriber=new Ot(this,this.logger),this.publisher=new br(this,this.logger),this.relayUrl=e?.relayUrl||ge,this.projectId=e.projectId,this.bundleId=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getBundleId)(),this.provider={}}async init(){this.logger.trace(\"Initialized\"),this.registerEventListeners(),await this.createProvider(),await Promise.all([this.messages.init(),this.subscriber.init()]);try{await this.transportOpen()}catch{this.logger.warn(`Connection via ${this.relayUrl} failed, attempting to connect via failover domain ${pe}...`),await this.restartTransport(pe)}this.initialized=!0,setTimeout(async()=>{this.subscriber.topics.length===0&&(this.logger.info(\"No topics subscribed to after init, closing transport\"),await this.transportClose(),this.transportExplicitlyClosed=!1)},gt)}get context(){return (0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.getLoggerContext)(this.logger)}get connected(){return this.provider.connection.connected}get connecting(){return this.provider.connection.connecting}async publish(e,t,i){this.isInitialized(),await this.publisher.publish(e,t,i),await this.recordMessageEvent({topic:e,message:t,publishedAt:Date.now()})}async subscribe(e,t){var i;this.isInitialized();let s=((i=this.subscriber.topicMap.get(e))==null?void 0:i[0])||\"\";if(s)return s;let n;const a=o=>{o.topic===e&&(this.subscriber.off(w.created,a),n())};return await Promise.all([new Promise(o=>{n=o,this.subscriber.on(w.created,a)}),new Promise(async o=>{s=await this.subscriber.subscribe(e,t),o()})]),s}async unsubscribe(e,t){this.isInitialized(),await this.subscriber.unsubscribe(e,t)}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}off(e,t){this.events.off(e,t)}removeListener(e,t){this.events.removeListener(e,t)}async transportClose(){this.transportExplicitlyClosed=!0,this.hasExperiencedNetworkDisruption&&this.connected?await (0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.createExpiringPromise)(this.provider.disconnect(),1e3,\"provider.disconnect()\").catch(()=>this.onProviderDisconnect()):this.connected&&await this.provider.disconnect()}async transportOpen(e){if(this.transportExplicitlyClosed=!1,await this.confirmOnlineStateOrThrow(),!this.connectionAttemptInProgress){e&&e!==this.relayUrl&&(this.relayUrl=e,await this.transportClose(),await this.createProvider()),this.connectionAttemptInProgress=!0;try{await Promise.all([new Promise(t=>{if(!this.initialized)return t();this.subscriber.once(w.resubscribed,()=>{t()})}),new Promise(async(t,i)=>{try{await (0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.createExpiringPromise)(this.provider.connect(),1e4,`Socket stalled when trying to connect to ${this.relayUrl}`)}catch(s){i(s);return}t()})])}catch(t){this.logger.error(t);const i=t;if(!this.isConnectionStalled(i.message))throw t;this.provider.events.emit(P.disconnect)}finally{this.connectionAttemptInProgress=!1,this.hasExperiencedNetworkDisruption=!1}}}async restartTransport(e){await this.confirmOnlineStateOrThrow(),!this.connectionAttemptInProgress&&(this.relayUrl=e||this.relayUrl,await this.transportClose(),await this.createProvider(),await this.transportOpen())}async confirmOnlineStateOrThrow(){if(!await (0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isOnline)())throw new Error(\"No internet connection detected. Please restart your network and try again.\")}isConnectionStalled(e){return this.staleConnectionErrors.some(t=>e.includes(t))}async createProvider(){this.provider.connection&&this.unregisterProviderListeners();const e=await this.core.crypto.signJWT(this.relayUrl);this.provider=new _walletconnect_jsonrpc_provider__WEBPACK_IMPORTED_MODULE_8__.JsonRpcProvider(new _walletconnect_jsonrpc_ws_connection__WEBPACK_IMPORTED_MODULE_10__[\"default\"]((0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.formatRelayRpcUrl)({sdkVersion:dt,protocol:this.protocol,version:this.version,relayUrl:this.relayUrl,projectId:this.projectId,auth:e,useOnCloseEvent:!0,bundleId:this.bundleId}))),this.registerProviderListeners()}async recordMessageEvent(e){const{topic:t,message:i}=e;await this.messages.set(t,i)}async shouldIgnoreMessageEvent(e){const{topic:t,message:i}=e;if(!i||i.length===0)return this.logger.debug(`Ignoring invalid/empty message: ${i}`),!0;if(!await this.subscriber.isSubscribed(t))return this.logger.debug(`Ignoring message for non-subscribed topic ${t}`),!0;const s=this.messages.has(t,i);return s&&this.logger.debug(`Ignoring duplicate message: ${i}`),s}async onProviderPayload(e){if(this.logger.debug(\"Incoming Relay Payload\"),this.logger.trace({type:\"payload\",direction:\"incoming\",payload:e}),(0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_9__.isJsonRpcRequest)(e)){if(!e.method.endsWith(ut))return;const t=e.params,{topic:i,message:s,publishedAt:n}=t.data,a={topic:i,message:s,publishedAt:n};this.logger.debug(\"Emitting Relayer Payload\"),this.logger.trace(Sr({type:\"event\",event:t.id},a)),this.events.emit(t.id,a),await this.acknowledgePayload(e),await this.onMessageEvent(a)}else (0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_9__.isJsonRpcResponse)(e)&&this.events.emit(D.message_ack,e)}async onMessageEvent(e){await this.shouldIgnoreMessageEvent(e)||(this.events.emit(D.message,e),await this.recordMessageEvent(e))}async acknowledgePayload(e){const t=(0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_9__.formatJsonRpcResult)(e.id,!0);await this.provider.connection.send(t)}unregisterProviderListeners(){this.provider.off(P.payload,this.onPayloadHandler),this.provider.off(P.connect,this.onConnectHandler),this.provider.off(P.disconnect,this.onDisconnectHandler),this.provider.off(P.error,this.onProviderErrorHandler)}async registerEventListeners(){this.events.on(D.connection_stalled,()=>{this.restartTransport().catch(t=>this.logger.error(t))});let e=await (0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isOnline)();(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.subscribeToNetworkChange)(async t=>{this.initialized&&e!==t&&(e=t,t?await this.restartTransport().catch(i=>this.logger.error(i)):(this.hasExperiencedNetworkDisruption=!0,await this.transportClose().catch(i=>this.logger.error(i))))})}onProviderDisconnect(){this.events.emit(D.disconnect),this.attemptToReconnect()}attemptToReconnect(){this.transportExplicitlyClosed||(this.logger.info(\"attemptToReconnect called. Connecting...\"),setTimeout(async()=>{await this.restartTransport().catch(e=>this.logger.error(e))},(0,_walletconnect_time__WEBPACK_IMPORTED_MODULE_7__.toMiliseconds)(lt)))}isInitialized(){if(!this.initialized){const{message:e}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"NOT_INITIALIZED\",this.name);throw new Error(e)}}async toEstablishConnection(){if(await this.confirmOnlineStateOrThrow(),!this.connected){if(this.connectionAttemptInProgress)return await new Promise(e=>{const t=setInterval(()=>{this.connected&&(clearInterval(t),e())},this.connectionStatusPollingInterval)});await this.restartTransport()}}}var Tr=Object.defineProperty,Ut=Object.getOwnPropertySymbols,Pr=Object.prototype.hasOwnProperty,xr=Object.prototype.propertyIsEnumerable,Lt=(r,e,t)=>e in r?Tr(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Ft=(r,e)=>{for(var t in e||(e={}))Pr.call(e,t)&&Lt(r,t,e[t]);if(Ut)for(var t of Ut(e))xr.call(e,t)&&Lt(r,t,e[t]);return r};class $t extends _walletconnect_types__WEBPACK_IMPORTED_MODULE_13__.IStore{constructor(e,t,i,s=O,n=void 0){super(e,t,i,s),this.core=e,this.logger=t,this.name=i,this.map=new Map,this.version=pt,this.cached=[],this.initialized=!1,this.storagePrefix=O,this.init=async()=>{this.initialized||(this.logger.trace(\"Initialized\"),await this.restore(),this.cached.forEach(a=>{this.getKey&&a!==null&&!(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isUndefined)(a)?this.map.set(this.getKey(a),a):(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isProposalStruct)(a)?this.map.set(a.id,a):(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isSessionStruct)(a)&&this.map.set(a.topic,a)}),this.cached=[],this.initialized=!0)},this.set=async(a,o)=>{this.isInitialized(),this.map.has(a)?await this.update(a,o):(this.logger.debug(\"Setting value\"),this.logger.trace({type:\"method\",method:\"set\",key:a,value:o}),this.map.set(a,o),await this.persist())},this.get=a=>(this.isInitialized(),this.logger.debug(\"Getting value\"),this.logger.trace({type:\"method\",method:\"get\",key:a}),this.getData(a)),this.getAll=a=>(this.isInitialized(),a?this.values.filter(o=>Object.keys(a).every(h=>lodash_isequal__WEBPACK_IMPORTED_MODULE_11___default()(o[h],a[h]))):this.values),this.update=async(a,o)=>{this.isInitialized(),this.logger.debug(\"Updating value\"),this.logger.trace({type:\"method\",method:\"update\",key:a,update:o});const h=Ft(Ft({},this.getData(a)),o);this.map.set(a,h),await this.persist()},this.delete=async(a,o)=>{this.isInitialized(),this.map.has(a)&&(this.logger.debug(\"Deleting value\"),this.logger.trace({type:\"method\",method:\"delete\",key:a,reason:o}),this.map.delete(a),await this.persist())},this.logger=(0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.generateChildLogger)(t,this.name),this.storagePrefix=s,this.getKey=n}get context(){return (0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.getLoggerContext)(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+\"//\"+this.name}get length(){return this.map.size}get keys(){return Array.from(this.map.keys())}get values(){return Array.from(this.map.values())}async setDataStore(e){await this.core.storage.setItem(this.storageKey,e)}async getDataStore(){return await this.core.storage.getItem(this.storageKey)}getData(e){const t=this.map.get(e);if(!t){const{message:i}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"NO_MATCHING_KEY\",`${this.name}: ${e}`);throw this.logger.error(i),new Error(i)}return t}async persist(){await this.setDataStore(this.values)}async restore(){try{const e=await this.getDataStore();if(typeof e>\"u\"||!e.length)return;if(this.map.size){const{message:t}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"RESTORE_WILL_OVERRIDE\",this.name);throw this.logger.error(t),new Error(t)}this.cached=e,this.logger.debug(`Successfully Restored value for ${this.name}`),this.logger.trace({type:\"method\",method:\"restore\",value:this.values})}catch(e){this.logger.debug(`Failed to Restore value for ${this.name}`),this.logger.error(e)}}isInitialized(){if(!this.initialized){const{message:e}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"NOT_INITIALIZED\",this.name);throw new Error(e)}}}class Mt{constructor(e,t){this.core=e,this.logger=t,this.name=ft,this.version=Et,this.events=new (events__WEBPACK_IMPORTED_MODULE_0___default()),this.initialized=!1,this.storagePrefix=O,this.ignoredPayloadTypes=[_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.TYPE_1],this.registeredMethods=[],this.init=async()=>{this.initialized||(await this.pairings.init(),await this.cleanup(),this.registerRelayerEvents(),this.registerExpirerEvents(),this.initialized=!0,this.logger.trace(\"Initialized\"))},this.register=({methods:i})=>{this.isInitialized(),this.registeredMethods=[...new Set([...this.registeredMethods,...i])]},this.create=async()=>{this.isInitialized();const i=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.generateRandomBytes32)(),s=await this.core.crypto.setSymKey(i),n=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.calcExpiry)(_walletconnect_time__WEBPACK_IMPORTED_MODULE_7__.FIVE_MINUTES),a={protocol:ot},o={topic:s,expiry:n,relay:a,active:!1},h=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.formatUri)({protocol:this.core.protocol,version:this.core.version,topic:s,symKey:i,relay:a});return await this.pairings.set(s,o),await this.core.relayer.subscribe(s),this.core.expirer.set(s,n),{topic:s,uri:h}},this.pair=async i=>{this.isInitialized(),this.isValidPair(i);const{topic:s,symKey:n,relay:a}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.parseUri)(i.uri);let o;if(this.pairings.keys.includes(s)&&(o=this.pairings.get(s),o.active))throw new Error(`Pairing already exists: ${s}. Please try again with a new connection URI.`);this.core.crypto.keychain.has(s)||(await this.core.crypto.setSymKey(n,s),await this.core.relayer.subscribe(s,{relay:a}));const h=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.calcExpiry)(_walletconnect_time__WEBPACK_IMPORTED_MODULE_7__.FIVE_MINUTES),u={topic:s,relay:a,expiry:h,active:!1};return await this.pairings.set(s,u),this.core.expirer.set(s,h),i.activatePairing&&await this.activate({topic:s}),this.events.emit(V.create,u),u},this.activate=async({topic:i})=>{this.isInitialized();const s=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.calcExpiry)(_walletconnect_time__WEBPACK_IMPORTED_MODULE_7__.THIRTY_DAYS);await this.pairings.update(i,{active:!0,expiry:s}),this.core.expirer.set(i,s)},this.ping=async i=>{this.isInitialized(),await this.isValidPing(i);const{topic:s}=i;if(this.pairings.keys.includes(s)){const n=await this.sendRequest(s,\"wc_pairingPing\",{}),{done:a,resolve:o,reject:h}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.createDelayedPromise)();this.events.once((0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.engineEvent)(\"pairing_ping\",n),({error:u})=>{u?h(u):o()}),await a()}},this.updateExpiry=async({topic:i,expiry:s})=>{this.isInitialized(),await this.pairings.update(i,{expiry:s})},this.updateMetadata=async({topic:i,metadata:s})=>{this.isInitialized(),await this.pairings.update(i,{peerMetadata:s})},this.getPairings=()=>(this.isInitialized(),this.pairings.values),this.disconnect=async i=>{this.isInitialized(),await this.isValidDisconnect(i);const{topic:s}=i;this.pairings.keys.includes(s)&&(await this.sendRequest(s,\"wc_pairingDelete\",(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getSdkError)(\"USER_DISCONNECTED\")),await this.deletePairing(s))},this.sendRequest=async(i,s,n)=>{const a=(0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_9__.formatJsonRpcRequest)(s,n),o=await this.core.crypto.encode(i,a),h=F[s].req;return this.core.history.set(i,a),this.core.relayer.publish(i,o,h),a.id},this.sendResult=async(i,s,n)=>{const a=(0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_9__.formatJsonRpcResult)(i,n),o=await this.core.crypto.encode(s,a),h=await this.core.history.get(s,i),u=F[h.request.method].res;await this.core.relayer.publish(s,o,u),await this.core.history.resolve(a)},this.sendError=async(i,s,n)=>{const a=(0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_9__.formatJsonRpcError)(i,n),o=await this.core.crypto.encode(s,a),h=await this.core.history.get(s,i),u=F[h.request.method]?F[h.request.method].res:F.unregistered_method.res;await this.core.relayer.publish(s,o,u),await this.core.history.resolve(a)},this.deletePairing=async(i,s)=>{await this.core.relayer.unsubscribe(i),await Promise.all([this.pairings.delete(i,(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getSdkError)(\"USER_DISCONNECTED\")),this.core.crypto.deleteSymKey(i),s?Promise.resolve():this.core.expirer.del(i)])},this.cleanup=async()=>{const i=this.pairings.getAll().filter(s=>(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isExpired)(s.expiry));await Promise.all(i.map(s=>this.deletePairing(s.topic)))},this.onRelayEventRequest=i=>{const{topic:s,payload:n}=i;switch(n.method){case\"wc_pairingPing\":return this.onPairingPingRequest(s,n);case\"wc_pairingDelete\":return this.onPairingDeleteRequest(s,n);default:return this.onUnknownRpcMethodRequest(s,n)}},this.onRelayEventResponse=async i=>{const{topic:s,payload:n}=i,a=(await this.core.history.get(s,n.id)).request.method;switch(a){case\"wc_pairingPing\":return this.onPairingPingResponse(s,n);default:return this.onUnknownRpcMethodResponse(a)}},this.onPairingPingRequest=async(i,s)=>{const{id:n}=s;try{this.isValidPing({topic:i}),await this.sendResult(n,i,!0),this.events.emit(V.ping,{id:n,topic:i})}catch(a){await this.sendError(n,i,a),this.logger.error(a)}},this.onPairingPingResponse=(i,s)=>{const{id:n}=s;setTimeout(()=>{(0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_9__.isJsonRpcResult)(s)?this.events.emit((0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.engineEvent)(\"pairing_ping\",n),{}):(0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_9__.isJsonRpcError)(s)&&this.events.emit((0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.engineEvent)(\"pairing_ping\",n),{error:s.error})},500)},this.onPairingDeleteRequest=async(i,s)=>{const{id:n}=s;try{this.isValidDisconnect({topic:i}),await this.deletePairing(i),this.events.emit(V.delete,{id:n,topic:i})}catch(a){await this.sendError(n,i,a),this.logger.error(a)}},this.onUnknownRpcMethodRequest=async(i,s)=>{const{id:n,method:a}=s;try{if(this.registeredMethods.includes(a))return;const o=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getSdkError)(\"WC_METHOD_UNSUPPORTED\",a);await this.sendError(n,i,o),this.logger.error(o)}catch(o){await this.sendError(n,i,o),this.logger.error(o)}},this.onUnknownRpcMethodResponse=i=>{this.registeredMethods.includes(i)||this.logger.error((0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getSdkError)(\"WC_METHOD_UNSUPPORTED\",i))},this.isValidPair=i=>{if(!(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isValidParams)(i)){const{message:s}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"MISSING_OR_INVALID\",`pair() params: ${i}`);throw new Error(s)}if(!(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isValidUrl)(i.uri)){const{message:s}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"MISSING_OR_INVALID\",`pair() uri: ${i.uri}`);throw new Error(s)}},this.isValidPing=async i=>{if(!(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isValidParams)(i)){const{message:n}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"MISSING_OR_INVALID\",`ping() params: ${i}`);throw new Error(n)}const{topic:s}=i;await this.isValidPairingTopic(s)},this.isValidDisconnect=async i=>{if(!(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isValidParams)(i)){const{message:n}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"MISSING_OR_INVALID\",`disconnect() params: ${i}`);throw new Error(n)}const{topic:s}=i;await this.isValidPairingTopic(s)},this.isValidPairingTopic=async i=>{if(!(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isValidString)(i,!1)){const{message:s}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"MISSING_OR_INVALID\",`pairing topic should be a string: ${i}`);throw new Error(s)}if(!this.pairings.keys.includes(i)){const{message:s}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"NO_MATCHING_KEY\",`pairing topic doesn't exist: ${i}`);throw new Error(s)}if((0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isExpired)(this.pairings.get(i).expiry)){await this.deletePairing(i);const{message:s}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"EXPIRED\",`pairing topic: ${i}`);throw new Error(s)}},this.core=e,this.logger=(0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.generateChildLogger)(t,this.name),this.pairings=new $t(this.core,this.logger,this.name,this.storagePrefix)}get context(){return (0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.getLoggerContext)(this.logger)}isInitialized(){if(!this.initialized){const{message:e}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"NOT_INITIALIZED\",this.name);throw new Error(e)}}registerRelayerEvents(){this.core.relayer.on(D.message,async e=>{const{topic:t,message:i}=e;if(!this.pairings.keys.includes(t)||this.ignoredPayloadTypes.includes(this.core.crypto.getPayloadType(i)))return;const s=await this.core.crypto.decode(t,i);try{(0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_9__.isJsonRpcRequest)(s)?(this.core.history.set(t,s),this.onRelayEventRequest({topic:t,payload:s})):(0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_9__.isJsonRpcResponse)(s)&&(await this.core.history.resolve(s),await this.onRelayEventResponse({topic:t,payload:s}),this.core.history.delete(t,s.id))}catch(n){this.logger.error(n)}})}registerExpirerEvents(){this.core.expirer.on(v.expired,async e=>{const{topic:t}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.parseExpirerTarget)(e.target);t&&this.pairings.keys.includes(t)&&(await this.deletePairing(t,!0),this.events.emit(V.expire,{topic:t}))})}}class kt extends _walletconnect_types__WEBPACK_IMPORTED_MODULE_13__.IJsonRpcHistory{constructor(e,t){super(e,t),this.core=e,this.logger=t,this.records=new Map,this.events=new events__WEBPACK_IMPORTED_MODULE_0__.EventEmitter,this.name=wt,this.version=vt,this.cached=[],this.initialized=!1,this.storagePrefix=O,this.init=async()=>{this.initialized||(this.logger.trace(\"Initialized\"),await this.restore(),this.cached.forEach(i=>this.records.set(i.id,i)),this.cached=[],this.registerEventListeners(),this.initialized=!0)},this.set=(i,s,n)=>{if(this.isInitialized(),this.logger.debug(\"Setting JSON-RPC request history record\"),this.logger.trace({type:\"method\",method:\"set\",topic:i,request:s,chainId:n}),this.records.has(s.id))return;const a={id:s.id,topic:i,request:{method:s.method,params:s.params||null},chainId:n,expiry:(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.calcExpiry)(_walletconnect_time__WEBPACK_IMPORTED_MODULE_7__.THIRTY_DAYS)};this.records.set(a.id,a),this.events.emit(R.created,a)},this.resolve=async i=>{if(this.isInitialized(),this.logger.debug(\"Updating JSON-RPC response history record\"),this.logger.trace({type:\"method\",method:\"update\",response:i}),!this.records.has(i.id))return;const s=await this.getRecord(i.id);typeof s.response>\"u\"&&(s.response=(0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_9__.isJsonRpcError)(i)?{error:i.error}:{result:i.result},this.records.set(s.id,s),this.events.emit(R.updated,s))},this.get=async(i,s)=>(this.isInitialized(),this.logger.debug(\"Getting record\"),this.logger.trace({type:\"method\",method:\"get\",topic:i,id:s}),await this.getRecord(s)),this.delete=(i,s)=>{this.isInitialized(),this.logger.debug(\"Deleting record\"),this.logger.trace({type:\"method\",method:\"delete\",id:s}),this.values.forEach(n=>{if(n.topic===i){if(typeof s<\"u\"&&n.id!==s)return;this.records.delete(n.id),this.events.emit(R.deleted,n)}})},this.exists=async(i,s)=>(this.isInitialized(),this.records.has(s)?(await this.getRecord(s)).topic===i:!1),this.on=(i,s)=>{this.events.on(i,s)},this.once=(i,s)=>{this.events.once(i,s)},this.off=(i,s)=>{this.events.off(i,s)},this.removeListener=(i,s)=>{this.events.removeListener(i,s)},this.logger=(0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.generateChildLogger)(t,this.name)}get context(){return (0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.getLoggerContext)(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+\"//\"+this.name}get size(){return this.records.size}get keys(){return Array.from(this.records.keys())}get values(){return Array.from(this.records.values())}get pending(){const e=[];return this.values.forEach(t=>{if(typeof t.response<\"u\")return;const i={topic:t.topic,request:(0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_9__.formatJsonRpcRequest)(t.request.method,t.request.params,t.id),chainId:t.chainId};return e.push(i)}),e}async setJsonRpcRecords(e){await this.core.storage.setItem(this.storageKey,e)}async getJsonRpcRecords(){return await this.core.storage.getItem(this.storageKey)}getRecord(e){this.isInitialized();const t=this.records.get(e);if(!t){const{message:i}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"NO_MATCHING_KEY\",`${this.name}: ${e}`);throw new Error(i)}return t}async persist(){await this.setJsonRpcRecords(this.values),this.events.emit(R.sync)}async restore(){try{const e=await this.getJsonRpcRecords();if(typeof e>\"u\"||!e.length)return;if(this.records.size){const{message:t}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"RESTORE_WILL_OVERRIDE\",this.name);throw this.logger.error(t),new Error(t)}this.cached=e,this.logger.debug(`Successfully Restored records for ${this.name}`),this.logger.trace({type:\"method\",method:\"restore\",records:this.values})}catch(e){this.logger.debug(`Failed to Restore records for ${this.name}`),this.logger.error(e)}}registerEventListeners(){this.events.on(R.created,e=>{const t=R.created;this.logger.info(`Emitting ${t}`),this.logger.debug({type:\"event\",event:t,record:e}),this.persist()}),this.events.on(R.updated,e=>{const t=R.updated;this.logger.info(`Emitting ${t}`),this.logger.debug({type:\"event\",event:t,record:e}),this.persist()}),this.events.on(R.deleted,e=>{const t=R.deleted;this.logger.info(`Emitting ${t}`),this.logger.debug({type:\"event\",event:t,record:e}),this.persist()}),this.core.heartbeat.on(_walletconnect_heartbeat__WEBPACK_IMPORTED_MODULE_2__.HEARTBEAT_EVENTS.pulse,()=>{this.cleanup()})}cleanup(){try{this.records.forEach(e=>{(0,_walletconnect_time__WEBPACK_IMPORTED_MODULE_7__.toMiliseconds)(e.expiry||0)-Date.now()<=0&&(this.logger.info(`Deleting expired history log: ${e.id}`),this.delete(e.topic,e.id))})}catch(e){this.logger.warn(e)}}isInitialized(){if(!this.initialized){const{message:e}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"NOT_INITIALIZED\",this.name);throw new Error(e)}}}class Kt extends _walletconnect_types__WEBPACK_IMPORTED_MODULE_13__.IExpirer{constructor(e,t){super(e,t),this.core=e,this.logger=t,this.expirations=new Map,this.events=new events__WEBPACK_IMPORTED_MODULE_0__.EventEmitter,this.name=It,this.version=Ct,this.cached=[],this.initialized=!1,this.storagePrefix=O,this.init=async()=>{this.initialized||(this.logger.trace(\"Initialized\"),await this.restore(),this.cached.forEach(i=>this.expirations.set(i.target,i)),this.cached=[],this.registerEventListeners(),this.initialized=!0)},this.has=i=>{try{const s=this.formatTarget(i);return typeof this.getExpiration(s)<\"u\"}catch{return!1}},this.set=(i,s)=>{this.isInitialized();const n=this.formatTarget(i),a={target:n,expiry:s};this.expirations.set(n,a),this.checkExpiry(n,a),this.events.emit(v.created,{target:n,expiration:a})},this.get=i=>{this.isInitialized();const s=this.formatTarget(i);return this.getExpiration(s)},this.del=i=>{if(this.isInitialized(),this.has(i)){const s=this.formatTarget(i),n=this.getExpiration(s);this.expirations.delete(s),this.events.emit(v.deleted,{target:s,expiration:n})}},this.on=(i,s)=>{this.events.on(i,s)},this.once=(i,s)=>{this.events.once(i,s)},this.off=(i,s)=>{this.events.off(i,s)},this.removeListener=(i,s)=>{this.events.removeListener(i,s)},this.logger=(0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.generateChildLogger)(t,this.name)}get context(){return (0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.getLoggerContext)(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+\"//\"+this.name}get length(){return this.expirations.size}get keys(){return Array.from(this.expirations.keys())}get values(){return Array.from(this.expirations.values())}formatTarget(e){if(typeof e==\"string\")return (0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.formatTopicTarget)(e);if(typeof e==\"number\")return (0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.formatIdTarget)(e);const{message:t}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"UNKNOWN_TYPE\",`Target type: ${typeof e}`);throw new Error(t)}async setExpirations(e){await this.core.storage.setItem(this.storageKey,e)}async getExpirations(){return await this.core.storage.getItem(this.storageKey)}async persist(){await this.setExpirations(this.values),this.events.emit(v.sync)}async restore(){try{const e=await this.getExpirations();if(typeof e>\"u\"||!e.length)return;if(this.expirations.size){const{message:t}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"RESTORE_WILL_OVERRIDE\",this.name);throw this.logger.error(t),new Error(t)}this.cached=e,this.logger.debug(`Successfully Restored expirations for ${this.name}`),this.logger.trace({type:\"method\",method:\"restore\",expirations:this.values})}catch(e){this.logger.debug(`Failed to Restore expirations for ${this.name}`),this.logger.error(e)}}getExpiration(e){const t=this.expirations.get(e);if(!t){const{message:i}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"NO_MATCHING_KEY\",`${this.name}: ${e}`);throw this.logger.error(i),new Error(i)}return t}checkExpiry(e,t){const{expiry:i}=t;(0,_walletconnect_time__WEBPACK_IMPORTED_MODULE_7__.toMiliseconds)(i)-Date.now()<=0&&this.expire(e,t)}expire(e,t){this.expirations.delete(e),this.events.emit(v.expired,{target:e,expiration:t})}checkExpirations(){this.core.relayer.connected&&this.expirations.forEach((e,t)=>this.checkExpiry(t,e))}registerEventListeners(){this.core.heartbeat.on(_walletconnect_heartbeat__WEBPACK_IMPORTED_MODULE_2__.HEARTBEAT_EVENTS.pulse,()=>this.checkExpirations()),this.events.on(v.created,e=>{const t=v.created;this.logger.info(`Emitting ${t}`),this.logger.debug({type:\"event\",event:t,data:e}),this.persist()}),this.events.on(v.expired,e=>{const t=v.expired;this.logger.info(`Emitting ${t}`),this.logger.debug({type:\"event\",event:t,data:e}),this.persist()}),this.events.on(v.deleted,e=>{const t=v.deleted;this.logger.info(`Emitting ${t}`),this.logger.debug({type:\"event\",event:t,data:e}),this.persist()})}isInitialized(){if(!this.initialized){const{message:e}=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.getInternalError)(\"NOT_INITIALIZED\",this.name);throw new Error(e)}}}class Bt extends _walletconnect_types__WEBPACK_IMPORTED_MODULE_13__.IVerify{constructor(e,t){super(e,t),this.projectId=e,this.logger=t,this.name=Z,this.initialized=!1,this.queue=[],this.verifyDisabled=!1,this.init=async i=>{if(this.verifyDisabled||(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isReactNative)()||!(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isBrowser)())return;const s=this.getVerifyUrl(i?.verifyUrl);this.verifyUrl!==s&&this.removeIframe(),this.verifyUrl=s;try{await this.createIframe()}catch(n){this.logger.info(`Verify iframe failed to load: ${this.verifyUrl}`),this.logger.info(n)}if(!this.initialized){this.removeIframe(),this.verifyUrl=ee;try{await this.createIframe()}catch(n){this.logger.info(`Verify iframe failed to load: ${this.verifyUrl}`),this.logger.info(n),this.verifyDisabled=!0}}},this.register=async i=>{this.initialized?this.sendPost(i.attestationId):(this.addToQueue(i.attestationId),await this.init())},this.resolve=async i=>{if(this.isDevEnv)return\"\";const s=this.getVerifyUrl(i?.verifyUrl);let n;try{n=await this.fetchAttestation(i.attestationId,s)}catch(a){this.logger.info(`failed to resolve attestation: ${i.attestationId} from url: ${s}`),this.logger.info(a),n=await this.fetchAttestation(i.attestationId,ee)}return n},this.fetchAttestation=async(i,s)=>{this.logger.info(`resolving attestation: ${i} from url: ${s}`);const n=this.startAbortTimer(_walletconnect_time__WEBPACK_IMPORTED_MODULE_7__.ONE_SECOND*2),a=await fetch(`${s}/attestation/${i}`,{signal:this.abortController.signal});return clearTimeout(n),a.status===200?await a.json():void 0},this.addToQueue=i=>{this.queue.push(i)},this.processQueue=()=>{this.queue.length!==0&&(this.queue.forEach(i=>this.sendPost(i)),this.queue=[])},this.sendPost=i=>{var s;try{if(!this.iframe)return;(s=this.iframe.contentWindow)==null||s.postMessage(i,\"*\"),this.logger.info(`postMessage sent: ${i} ${this.verifyUrl}`)}catch{}},this.createIframe=async()=>{let i;const s=n=>{n.data===\"verify_ready\"&&(this.initialized=!0,this.processQueue(),window.removeEventListener(\"message\",s),i())};await Promise.race([new Promise(n=>{if(document.getElementById(Z))return n();window.addEventListener(\"message\",s);const a=document.createElement(\"iframe\");a.id=Z,a.src=`${this.verifyUrl}/${this.projectId}`,a.style.display=\"none\",document.body.append(a),this.iframe=a,i=n}),new Promise((n,a)=>setTimeout(()=>{window.removeEventListener(\"message\",s),a(\"verify iframe load timeout\")},(0,_walletconnect_time__WEBPACK_IMPORTED_MODULE_7__.toMiliseconds)(_walletconnect_time__WEBPACK_IMPORTED_MODULE_7__.FIVE_SECONDS)))])},this.removeIframe=()=>{this.iframe&&(this.iframe.remove(),this.iframe=void 0,this.initialized=!1)},this.getVerifyUrl=i=>{let s=i||$;return Rt.includes(s)||(this.logger.info(`verify url: ${s}, not included in trusted list, assigning default: ${$}`),s=$),s},this.logger=(0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.generateChildLogger)(t,this.name),this.verifyUrl=$,this.abortController=new AbortController,this.isDevEnv=(0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_12__.isNode)()&&process.env.IS_VITEST}get context(){return (0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.getLoggerContext)(this.logger)}startAbortTimer(e){return this.abortController=new AbortController,setTimeout(()=>this.abortController.abort(),(0,_walletconnect_time__WEBPACK_IMPORTED_MODULE_7__.toMiliseconds)(e))}}var Or=Object.defineProperty,Vt=Object.getOwnPropertySymbols,Ar=Object.prototype.hasOwnProperty,zr=Object.prototype.propertyIsEnumerable,qt=(r,e,t)=>e in r?Or(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,jt=(r,e)=>{for(var t in e||(e={}))Ar.call(e,t)&&qt(r,t,e[t]);if(Vt)for(var t of Vt(e))zr.call(e,t)&&qt(r,t,e[t]);return r};class te extends _walletconnect_types__WEBPACK_IMPORTED_MODULE_13__.ICore{constructor(e){super(e),this.protocol=le,this.version=We,this.name=Q,this.events=new events__WEBPACK_IMPORTED_MODULE_0__.EventEmitter,this.initialized=!1,this.on=(i,s)=>this.events.on(i,s),this.once=(i,s)=>this.events.once(i,s),this.off=(i,s)=>this.events.off(i,s),this.removeListener=(i,s)=>this.events.removeListener(i,s),this.projectId=e?.projectId,this.relayUrl=e?.relayUrl||ge,this.customStoragePrefix=e!=null&&e.customStoragePrefix?`:${e.customStoragePrefix}`:\"\";const t=typeof e?.logger<\"u\"&&typeof e?.logger!=\"string\"?e.logger:(0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.pino)((0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.getDefaultLoggerOptions)({level:e?.logger||Xe.logger}));this.logger=(0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.generateChildLogger)(t,this.name),this.heartbeat=new _walletconnect_heartbeat__WEBPACK_IMPORTED_MODULE_2__.HeartBeat,this.crypto=new St(this,this.logger,e?.keychain),this.history=new kt(this,this.logger),this.expirer=new Kt(this,this.logger),this.storage=e!=null&&e.storage?e.storage:new _walletconnect_keyvaluestorage__WEBPACK_IMPORTED_MODULE_1__[\"default\"](jt(jt({},Qe),e?.storageOptions)),this.relayer=new Nt({core:this,logger:this.logger,relayUrl:this.relayUrl,projectId:this.projectId}),this.pairing=new Mt(this,this.logger),this.verify=new Bt(this.projectId||\"\",this.logger)}static async init(e){const t=new te(e);await t.initialize();const i=await t.crypto.getClientId();return await t.storage.setItem(Dt,i),t}get context(){return (0,_walletconnect_logger__WEBPACK_IMPORTED_MODULE_3__.getLoggerContext)(this.logger)}async start(){this.initialized||await this.initialize()}async initialize(){this.logger.trace(\"Initialized\");try{await this.crypto.init(),await this.history.init(),await this.expirer.init(),await this.relayer.init(),await this.heartbeat.init(),await this.pairing.init(),this.initialized=!0,this.logger.info(\"Core Initialization Success\")}catch(e){throw this.logger.warn(`Core Initialization Failure at epoch ${Date.now()}`,e),this.logger.error(e.message),e}}}const Nr=te;\n//# sourceMappingURL=index.es.js.map\n\n\n//# sourceURL=webpack://wallet_connect_integration/./node_modules/@walletconnect/core/dist/index.es.js?"); /***/ }), @@ -698,93 +698,23 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac /***/ }), -/***/ "./node_modules/@walletconnect/jsonrpc-ws-connection/dist/esm/index.js": -/*!*****************************************************************************!*\ - !*** ./node_modules/@walletconnect/jsonrpc-ws-connection/dist/esm/index.js ***! - \*****************************************************************************/ +/***/ "./node_modules/@walletconnect/jsonrpc-ws-connection/dist/index.es.js": +/*!****************************************************************************!*\ + !*** ./node_modules/@walletconnect/jsonrpc-ws-connection/dist/index.es.js ***! + \****************************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ WsConnection: () => (/* reexport safe */ _ws__WEBPACK_IMPORTED_MODULE_0__.WsConnection),\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _ws__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./ws */ \"./node_modules/@walletconnect/jsonrpc-ws-connection/dist/esm/ws.js\");\n\n\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_ws__WEBPACK_IMPORTED_MODULE_0__[\"default\"]);\n//# sourceMappingURL=index.js.map\n\n//# sourceURL=webpack://wallet_connect_integration/./node_modules/@walletconnect/jsonrpc-ws-connection/dist/esm/index.js?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ WsConnection: () => (/* binding */ f),\n/* harmony export */ \"default\": () => (/* binding */ f)\n/* harmony export */ });\n/* harmony import */ var events__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! events */ \"./node_modules/events/events.js\");\n/* harmony import */ var events__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(events__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _walletconnect_safe_json__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @walletconnect/safe-json */ \"./node_modules/@walletconnect/safe-json/dist/esm/index.js\");\n/* harmony import */ var _walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @walletconnect/jsonrpc-utils */ \"./node_modules/@walletconnect/jsonrpc-utils/dist/esm/index.js\");\nconst w=()=>typeof WebSocket<\"u\"?WebSocket:typeof __webpack_require__.g<\"u\"&&typeof __webpack_require__.g.WebSocket<\"u\"?__webpack_require__.g.WebSocket:typeof window<\"u\"&&typeof window.WebSocket<\"u\"?window.WebSocket:typeof self<\"u\"&&typeof self.WebSocket<\"u\"?self.WebSocket:__webpack_require__(/*! ws */ \"./node_modules/ws/browser.js\"),b=()=>typeof WebSocket<\"u\"||typeof __webpack_require__.g<\"u\"&&typeof __webpack_require__.g.WebSocket<\"u\"||typeof window<\"u\"&&typeof window.WebSocket<\"u\"||typeof self<\"u\"&&typeof self.WebSocket<\"u\",a=c=>c.split(\"?\")[0],h=10,S=w();class f{constructor(e){if(this.url=e,this.events=new events__WEBPACK_IMPORTED_MODULE_0__.EventEmitter,this.registering=!1,!(0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_2__.isWsUrl)(e))throw new Error(`Provided URL is not compatible with WebSocket connection: ${e}`);this.url=e}get connected(){return typeof this.socket<\"u\"}get connecting(){return this.registering}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}off(e,t){this.events.off(e,t)}removeListener(e,t){this.events.removeListener(e,t)}async open(e=this.url){await this.register(e)}async close(){return new Promise((e,t)=>{if(typeof this.socket>\"u\"){t(new Error(\"Connection already closed\"));return}this.socket.onclose=n=>{this.onClose(n),e()},this.socket.close()})}async send(e){typeof this.socket>\"u\"&&(this.socket=await this.register());try{this.socket.send((0,_walletconnect_safe_json__WEBPACK_IMPORTED_MODULE_1__.safeJsonStringify)(e))}catch(t){this.onError(e.id,t)}}register(e=this.url){if(!(0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_2__.isWsUrl)(e))throw new Error(`Provided URL is not compatible with WebSocket connection: ${e}`);if(this.registering){const t=this.events.getMaxListeners();return(this.events.listenerCount(\"register_error\")>=t||this.events.listenerCount(\"open\")>=t)&&this.events.setMaxListeners(t+1),new Promise((n,o)=>{this.events.once(\"register_error\",s=>{this.resetMaxListeners(),o(s)}),this.events.once(\"open\",()=>{if(this.resetMaxListeners(),typeof this.socket>\"u\")return o(new Error(\"WebSocket connection is missing or invalid\"));n(this.socket)})})}return this.url=e,this.registering=!0,new Promise((t,n)=>{const o=new URLSearchParams(e).get(\"origin\"),s=(0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_2__.isReactNative)()?{headers:{origin:o}}:{rejectUnauthorized:!(0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_2__.isLocalhostUrl)(e)},i=new S(e,[],s);b()?i.onerror=r=>{const l=r;n(this.emitError(l.error))}:i.on(\"error\",r=>{n(this.emitError(r))}),i.onopen=()=>{this.onOpen(i),t(i)}})}onOpen(e){e.onmessage=t=>this.onPayload(t),e.onclose=t=>this.onClose(t),this.socket=e,this.registering=!1,this.events.emit(\"open\")}onClose(e){this.socket=void 0,this.registering=!1,this.events.emit(\"close\",e)}onPayload(e){if(typeof e.data>\"u\")return;const t=typeof e.data==\"string\"?(0,_walletconnect_safe_json__WEBPACK_IMPORTED_MODULE_1__.safeJsonParse)(e.data):e.data;this.events.emit(\"payload\",t)}onError(e,t){const n=this.parseError(t),o=n.message||n.toString(),s=(0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_2__.formatJsonRpcError)(e,o);this.events.emit(\"payload\",s)}parseError(e,t=this.url){return (0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_2__.parseConnectionError)(e,a(t),\"WS\")}resetMaxListeners(){this.events.getMaxListeners()>h&&this.events.setMaxListeners(h)}emitError(e){const t=this.parseError(new Error(e?.message||`WebSocket connection failed for host: ${a(this.url)}`));return this.events.emit(\"register_error\",t),t}}\n//# sourceMappingURL=index.es.js.map\n\n\n//# sourceURL=webpack://wallet_connect_integration/./node_modules/@walletconnect/jsonrpc-ws-connection/dist/index.es.js?"); /***/ }), -/***/ "./node_modules/@walletconnect/jsonrpc-ws-connection/dist/esm/utils.js": -/*!*****************************************************************************!*\ - !*** ./node_modules/@walletconnect/jsonrpc-ws-connection/dist/esm/utils.js ***! - \*****************************************************************************/ +/***/ "./node_modules/@walletconnect/keyvaluestorage/dist/index.es.js": +/*!**********************************************************************!*\ + !*** ./node_modules/@walletconnect/keyvaluestorage/dist/index.es.js ***! + \**********************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ hasBuiltInWebSocket: () => (/* binding */ hasBuiltInWebSocket),\n/* harmony export */ isBrowser: () => (/* binding */ isBrowser),\n/* harmony export */ resolveWebSocketImplementation: () => (/* binding */ resolveWebSocketImplementation),\n/* harmony export */ truncateQuery: () => (/* binding */ truncateQuery)\n/* harmony export */ });\nconst resolveWebSocketImplementation = () => {\n if (typeof WebSocket !== \"undefined\") {\n return WebSocket;\n }\n else if (typeof __webpack_require__.g !== \"undefined\" && typeof __webpack_require__.g.WebSocket !== \"undefined\") {\n return __webpack_require__.g.WebSocket;\n }\n else if (typeof window !== \"undefined\" && typeof window.WebSocket !== \"undefined\") {\n return window.WebSocket;\n }\n else if (typeof self !== \"undefined\" && typeof self.WebSocket !== \"undefined\") {\n return self.WebSocket;\n }\n return __webpack_require__(/*! ws */ \"./node_modules/@walletconnect/jsonrpc-ws-connection/node_modules/ws/browser.js\");\n};\nconst hasBuiltInWebSocket = () => typeof WebSocket !== \"undefined\" ||\n (typeof __webpack_require__.g !== \"undefined\" && typeof __webpack_require__.g.WebSocket !== \"undefined\") ||\n (typeof window !== \"undefined\" && typeof window.WebSocket !== \"undefined\") ||\n (typeof self !== \"undefined\" && typeof self.WebSocket !== \"undefined\");\nconst isBrowser = () => typeof window !== \"undefined\";\nconst truncateQuery = (wssUrl) => wssUrl.split(\"?\")[0];\n//# sourceMappingURL=utils.js.map\n\n//# sourceURL=webpack://wallet_connect_integration/./node_modules/@walletconnect/jsonrpc-ws-connection/dist/esm/utils.js?"); - -/***/ }), - -/***/ "./node_modules/@walletconnect/jsonrpc-ws-connection/dist/esm/ws.js": -/*!**************************************************************************!*\ - !*** ./node_modules/@walletconnect/jsonrpc-ws-connection/dist/esm/ws.js ***! - \**************************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ WsConnection: () => (/* binding */ WsConnection),\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var events__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! events */ \"./node_modules/events/events.js\");\n/* harmony import */ var events__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(events__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _walletconnect_safe_json__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @walletconnect/safe-json */ \"./node_modules/@walletconnect/safe-json/dist/esm/index.js\");\n/* harmony import */ var _walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @walletconnect/jsonrpc-utils */ \"./node_modules/@walletconnect/jsonrpc-utils/dist/esm/index.js\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./utils */ \"./node_modules/@walletconnect/jsonrpc-ws-connection/dist/esm/utils.js\");\n\n\n\n\nconst EVENT_EMITTER_MAX_LISTENERS_DEFAULT = 10;\nconst WS = (0,_utils__WEBPACK_IMPORTED_MODULE_3__.resolveWebSocketImplementation)();\nclass WsConnection {\n constructor(url) {\n this.url = url;\n this.events = new events__WEBPACK_IMPORTED_MODULE_0__.EventEmitter();\n this.registering = false;\n if (!(0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_2__.isWsUrl)(url)) {\n throw new Error(`Provided URL is not compatible with WebSocket connection: ${url}`);\n }\n this.url = url;\n }\n get connected() {\n return typeof this.socket !== \"undefined\";\n }\n get connecting() {\n return this.registering;\n }\n on(event, listener) {\n this.events.on(event, listener);\n }\n once(event, listener) {\n this.events.once(event, listener);\n }\n off(event, listener) {\n this.events.off(event, listener);\n }\n removeListener(event, listener) {\n this.events.removeListener(event, listener);\n }\n async open(url = this.url) {\n await this.register(url);\n }\n async close() {\n return new Promise((resolve, reject) => {\n if (typeof this.socket === \"undefined\") {\n reject(new Error(\"Connection already closed\"));\n return;\n }\n this.socket.onclose = event => {\n this.onClose(event);\n resolve();\n };\n this.socket.close();\n });\n }\n async send(payload, context) {\n if (typeof this.socket === \"undefined\") {\n this.socket = await this.register();\n }\n try {\n this.socket.send((0,_walletconnect_safe_json__WEBPACK_IMPORTED_MODULE_1__.safeJsonStringify)(payload));\n }\n catch (e) {\n this.onError(payload.id, e);\n }\n }\n register(url = this.url) {\n if (!(0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_2__.isWsUrl)(url)) {\n throw new Error(`Provided URL is not compatible with WebSocket connection: ${url}`);\n }\n if (this.registering) {\n const currentMaxListeners = this.events.getMaxListeners();\n if (this.events.listenerCount(\"register_error\") >= currentMaxListeners ||\n this.events.listenerCount(\"open\") >= currentMaxListeners) {\n this.events.setMaxListeners(currentMaxListeners + 1);\n }\n return new Promise((resolve, reject) => {\n this.events.once(\"register_error\", error => {\n this.resetMaxListeners();\n reject(error);\n });\n this.events.once(\"open\", () => {\n this.resetMaxListeners();\n if (typeof this.socket === \"undefined\") {\n return reject(new Error(\"WebSocket connection is missing or invalid\"));\n }\n resolve(this.socket);\n });\n });\n }\n this.url = url;\n this.registering = true;\n return new Promise((resolve, reject) => {\n const opts = !(0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_2__.isReactNative)() ? { rejectUnauthorized: !(0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_2__.isLocalhostUrl)(url) } : undefined;\n const socket = new WS(url, [], opts);\n if ((0,_utils__WEBPACK_IMPORTED_MODULE_3__.hasBuiltInWebSocket)()) {\n socket.onerror = (event) => {\n const errorEvent = event;\n reject(this.emitError(errorEvent.error));\n };\n }\n else {\n socket.on(\"error\", (errorEvent) => {\n reject(this.emitError(errorEvent));\n });\n }\n socket.onopen = () => {\n this.onOpen(socket);\n resolve(socket);\n };\n });\n }\n onOpen(socket) {\n socket.onmessage = (event) => this.onPayload(event);\n socket.onclose = event => this.onClose(event);\n this.socket = socket;\n this.registering = false;\n this.events.emit(\"open\");\n }\n onClose(event) {\n this.socket = undefined;\n this.registering = false;\n this.events.emit(\"close\", event);\n }\n onPayload(e) {\n if (typeof e.data === \"undefined\")\n return;\n const payload = typeof e.data === \"string\" ? (0,_walletconnect_safe_json__WEBPACK_IMPORTED_MODULE_1__.safeJsonParse)(e.data) : e.data;\n this.events.emit(\"payload\", payload);\n }\n onError(id, e) {\n const error = this.parseError(e);\n const message = error.message || error.toString();\n const payload = (0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_2__.formatJsonRpcError)(id, message);\n this.events.emit(\"payload\", payload);\n }\n parseError(e, url = this.url) {\n return (0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_2__.parseConnectionError)(e, (0,_utils__WEBPACK_IMPORTED_MODULE_3__.truncateQuery)(url), \"WS\");\n }\n resetMaxListeners() {\n if (this.events.getMaxListeners() > EVENT_EMITTER_MAX_LISTENERS_DEFAULT) {\n this.events.setMaxListeners(EVENT_EMITTER_MAX_LISTENERS_DEFAULT);\n }\n }\n emitError(errorEvent) {\n const error = this.parseError(new Error((errorEvent === null || errorEvent === void 0 ? void 0 : errorEvent.message) || `WebSocket connection failed for host: ${(0,_utils__WEBPACK_IMPORTED_MODULE_3__.truncateQuery)(this.url)}`));\n this.events.emit(\"register_error\", error);\n return error;\n }\n}\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (WsConnection);\n//# sourceMappingURL=ws.js.map\n\n//# sourceURL=webpack://wallet_connect_integration/./node_modules/@walletconnect/jsonrpc-ws-connection/dist/esm/ws.js?"); - -/***/ }), - -/***/ "./node_modules/@walletconnect/jsonrpc-ws-connection/node_modules/ws/browser.js": -/*!**************************************************************************************!*\ - !*** ./node_modules/@walletconnect/jsonrpc-ws-connection/node_modules/ws/browser.js ***! - \**************************************************************************************/ -/***/ ((module) => { - -eval("\n\nmodule.exports = function () {\n throw new Error(\n 'ws does not work in the browser. Browser clients must use the native ' +\n 'WebSocket object'\n );\n};\n\n\n//# sourceURL=webpack://wallet_connect_integration/./node_modules/@walletconnect/jsonrpc-ws-connection/node_modules/ws/browser.js?"); - -/***/ }), - -/***/ "./node_modules/@walletconnect/keyvaluestorage/dist/cjs/browser/index.js": -/*!*******************************************************************************!*\ - !*** ./node_modules/@walletconnect/keyvaluestorage/dist/cjs/browser/index.js ***! - \*******************************************************************************/ -/***/ ((__unused_webpack_module, exports, __webpack_require__) => { - -eval("\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\nexports.KeyValueStorage = void 0;\nconst tslib_1 = __webpack_require__(/*! tslib */ \"./node_modules/tslib/tslib.es6.js\");\nconst safe_json_utils_1 = __webpack_require__(/*! safe-json-utils */ \"./node_modules/safe-json-utils/dist/cjs/index.js\");\nconst localStorage_1 = tslib_1.__importDefault(__webpack_require__(/*! ./lib/localStorage */ \"./node_modules/@walletconnect/keyvaluestorage/dist/cjs/browser/lib/localStorage.js\"));\nconst shared_1 = __webpack_require__(/*! ../shared */ \"./node_modules/@walletconnect/keyvaluestorage/dist/cjs/shared/index.js\");\nclass KeyValueStorage {\n constructor() {\n this.localStorage = localStorage_1.default;\n }\n getKeys() {\n return tslib_1.__awaiter(this, void 0, void 0, function* () {\n return Object.keys(this.localStorage);\n });\n }\n getEntries() {\n return tslib_1.__awaiter(this, void 0, void 0, function* () {\n return Object.entries(this.localStorage).map(shared_1.parseEntry);\n });\n }\n getItem(key) {\n return tslib_1.__awaiter(this, void 0, void 0, function* () {\n const item = this.localStorage.getItem(key);\n if (item === null) {\n return undefined;\n }\n return safe_json_utils_1.safeJsonParse(item);\n });\n }\n setItem(key, value) {\n return tslib_1.__awaiter(this, void 0, void 0, function* () {\n this.localStorage.setItem(key, safe_json_utils_1.safeJsonStringify(value));\n });\n }\n removeItem(key) {\n return tslib_1.__awaiter(this, void 0, void 0, function* () {\n this.localStorage.removeItem(key);\n });\n }\n}\nexports.KeyValueStorage = KeyValueStorage;\nexports[\"default\"] = KeyValueStorage;\n//# sourceMappingURL=index.js.map\n\n//# sourceURL=webpack://wallet_connect_integration/./node_modules/@walletconnect/keyvaluestorage/dist/cjs/browser/index.js?"); - -/***/ }), - -/***/ "./node_modules/@walletconnect/keyvaluestorage/dist/cjs/browser/lib/localStorage.js": -/*!******************************************************************************************!*\ - !*** ./node_modules/@walletconnect/keyvaluestorage/dist/cjs/browser/lib/localStorage.js ***! - \******************************************************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -eval("\n(function () {\n \"use strict\";\n let db;\n function LocalStorage() { }\n db = LocalStorage;\n db.prototype.getItem = function (key) {\n if (this.hasOwnProperty(key)) {\n return String(this[key]);\n }\n return null;\n };\n db.prototype.setItem = function (key, val) {\n this[key] = String(val);\n };\n db.prototype.removeItem = function (key) {\n delete this[key];\n };\n db.prototype.clear = function () {\n const self = this;\n Object.keys(self).forEach(function (key) {\n self[key] = undefined;\n delete self[key];\n });\n };\n db.prototype.key = function (i) {\n i = i || 0;\n return Object.keys(this)[i];\n };\n db.prototype.__defineGetter__(\"length\", function () {\n return Object.keys(this).length;\n });\n if (typeof __webpack_require__.g !== \"undefined\" && __webpack_require__.g.localStorage) {\n module.exports = __webpack_require__.g.localStorage;\n }\n else if (typeof window !== \"undefined\" && window.localStorage) {\n module.exports = window.localStorage;\n }\n else {\n module.exports = new LocalStorage();\n }\n})();\n//# sourceMappingURL=localStorage.js.map\n\n//# sourceURL=webpack://wallet_connect_integration/./node_modules/@walletconnect/keyvaluestorage/dist/cjs/browser/lib/localStorage.js?"); - -/***/ }), - -/***/ "./node_modules/@walletconnect/keyvaluestorage/dist/cjs/shared/index.js": -/*!******************************************************************************!*\ - !*** ./node_modules/@walletconnect/keyvaluestorage/dist/cjs/shared/index.js ***! - \******************************************************************************/ -/***/ ((__unused_webpack_module, exports, __webpack_require__) => { - -eval("\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\nconst tslib_1 = __webpack_require__(/*! tslib */ \"./node_modules/tslib/tslib.es6.js\");\ntslib_1.__exportStar(__webpack_require__(/*! ./types */ \"./node_modules/@walletconnect/keyvaluestorage/dist/cjs/shared/types.js\"), exports);\ntslib_1.__exportStar(__webpack_require__(/*! ./utils */ \"./node_modules/@walletconnect/keyvaluestorage/dist/cjs/shared/utils.js\"), exports);\n//# sourceMappingURL=index.js.map\n\n//# sourceURL=webpack://wallet_connect_integration/./node_modules/@walletconnect/keyvaluestorage/dist/cjs/shared/index.js?"); - -/***/ }), - -/***/ "./node_modules/@walletconnect/keyvaluestorage/dist/cjs/shared/types.js": -/*!******************************************************************************!*\ - !*** ./node_modules/@walletconnect/keyvaluestorage/dist/cjs/shared/types.js ***! - \******************************************************************************/ -/***/ ((__unused_webpack_module, exports) => { - -eval("\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\nexports.IKeyValueStorage = void 0;\nclass IKeyValueStorage {\n}\nexports.IKeyValueStorage = IKeyValueStorage;\n//# sourceMappingURL=types.js.map\n\n//# sourceURL=webpack://wallet_connect_integration/./node_modules/@walletconnect/keyvaluestorage/dist/cjs/shared/types.js?"); - -/***/ }), - -/***/ "./node_modules/@walletconnect/keyvaluestorage/dist/cjs/shared/utils.js": -/*!******************************************************************************!*\ - !*** ./node_modules/@walletconnect/keyvaluestorage/dist/cjs/shared/utils.js ***! - \******************************************************************************/ -/***/ ((__unused_webpack_module, exports, __webpack_require__) => { - -eval("\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\nexports.parseEntry = void 0;\nconst safe_json_utils_1 = __webpack_require__(/*! safe-json-utils */ \"./node_modules/safe-json-utils/dist/cjs/index.js\");\nfunction parseEntry(entry) {\n var _a;\n return [entry[0], safe_json_utils_1.safeJsonParse((_a = entry[1]) !== null && _a !== void 0 ? _a : \"\")];\n}\nexports.parseEntry = parseEntry;\n//# sourceMappingURL=utils.js.map\n\n//# sourceURL=webpack://wallet_connect_integration/./node_modules/@walletconnect/keyvaluestorage/dist/cjs/shared/utils.js?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ KeyValueStorage: () => (/* binding */ h),\n/* harmony export */ \"default\": () => (/* binding */ h)\n/* harmony export */ });\n/* harmony import */ var unstorage__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! unstorage */ \"./node_modules/unstorage/dist/index.mjs\");\n/* harmony import */ var idb_keyval__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! idb-keyval */ \"./node_modules/idb-keyval/dist/index.js\");\n/* harmony import */ var _walletconnect_safe_json__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @walletconnect/safe-json */ \"./node_modules/@walletconnect/safe-json/dist/esm/index.js\");\nfunction C(i){return i}const x=\"idb-keyval\";var z=(i={})=>{const t=i.base&&i.base.length>0?`${i.base}:`:\"\",e=s=>t+s;let n;return i.dbName&&i.storeName&&(n=(0,idb_keyval__WEBPACK_IMPORTED_MODULE_1__.createStore)(i.dbName,i.storeName)),{name:x,options:i,async hasItem(s){return!(typeof await (0,idb_keyval__WEBPACK_IMPORTED_MODULE_1__.get)(e(s),n)>\"u\")},async getItem(s){return await (0,idb_keyval__WEBPACK_IMPORTED_MODULE_1__.get)(e(s),n)??null},setItem(s,a){return (0,idb_keyval__WEBPACK_IMPORTED_MODULE_1__.set)(e(s),a,n)},removeItem(s){return (0,idb_keyval__WEBPACK_IMPORTED_MODULE_1__.del)(e(s),n)},getKeys(){return (0,idb_keyval__WEBPACK_IMPORTED_MODULE_1__.keys)(n)},clear(){return (0,idb_keyval__WEBPACK_IMPORTED_MODULE_1__.clear)(n)}}};const D=\"WALLET_CONNECT_V2_INDEXED_DB\",E=\"keyvaluestorage\";class _{constructor(){this.indexedDb=(0,unstorage__WEBPACK_IMPORTED_MODULE_2__.createStorage)({driver:z({dbName:D,storeName:E})})}async getKeys(){return this.indexedDb.getKeys()}async getEntries(){return(await this.indexedDb.getItems(await this.indexedDb.getKeys())).map(t=>[t.key,t.value])}async getItem(t){const e=await this.indexedDb.getItem(t);if(e!==null)return e}async setItem(t,e){await this.indexedDb.setItem(t,(0,_walletconnect_safe_json__WEBPACK_IMPORTED_MODULE_0__.safeJsonStringify)(e))}async removeItem(t){await this.indexedDb.removeItem(t)}}var l=typeof globalThis<\"u\"?globalThis:typeof window<\"u\"?window:typeof __webpack_require__.g<\"u\"?__webpack_require__.g:typeof self<\"u\"?self:{},c={exports:{}};(function(){let i;function t(){}i=t,i.prototype.getItem=function(e){return this.hasOwnProperty(e)?String(this[e]):null},i.prototype.setItem=function(e,n){this[e]=String(n)},i.prototype.removeItem=function(e){delete this[e]},i.prototype.clear=function(){const e=this;Object.keys(e).forEach(function(n){e[n]=void 0,delete e[n]})},i.prototype.key=function(e){return e=e||0,Object.keys(this)[e]},i.prototype.__defineGetter__(\"length\",function(){return Object.keys(this).length}),typeof l<\"u\"&&l.localStorage?c.exports=l.localStorage:typeof window<\"u\"&&window.localStorage?c.exports=window.localStorage:c.exports=new t})();function k(i){var t;return[i[0],(0,_walletconnect_safe_json__WEBPACK_IMPORTED_MODULE_0__.safeJsonParse)((t=i[1])!=null?t:\"\")]}class K{constructor(){this.localStorage=c.exports}async getKeys(){return Object.keys(this.localStorage)}async getEntries(){return Object.entries(this.localStorage).map(k)}async getItem(t){const e=this.localStorage.getItem(t);if(e!==null)return (0,_walletconnect_safe_json__WEBPACK_IMPORTED_MODULE_0__.safeJsonParse)(e)}async setItem(t,e){this.localStorage.setItem(t,(0,_walletconnect_safe_json__WEBPACK_IMPORTED_MODULE_0__.safeJsonStringify)(e))}async removeItem(t){this.localStorage.removeItem(t)}}const N=\"wc_storage_version\",y=1,O=async(i,t,e)=>{const n=N,s=await t.getItem(n);if(s&&s>=y){e(t);return}const a=await i.getKeys();if(!a.length){e(t);return}const m=[];for(;a.length;){const r=a.shift();if(!r)continue;const o=r.toLowerCase();if(o.includes(\"wc@\")||o.includes(\"walletconnect\")||o.includes(\"wc_\")||o.includes(\"wallet_connect\")){const f=await i.getItem(r);await t.setItem(r,f),m.push(r)}}await t.setItem(n,y),e(t),j(i,m)},j=async(i,t)=>{t.length&&t.forEach(async e=>{await i.removeItem(e)})};class h{constructor(){this.initialized=!1,this.setInitialized=e=>{this.storage=e,this.initialized=!0};const t=new K;this.storage=t;try{const e=new _;O(t,e,this.setInitialized)}catch{this.initialized=!0}}async getKeys(){return await this.initialize(),this.storage.getKeys()}async getEntries(){return await this.initialize(),this.storage.getEntries()}async getItem(t){return await this.initialize(),this.storage.getItem(t)}async setItem(t,e){return await this.initialize(),this.storage.setItem(t,e)}async removeItem(t){return await this.initialize(),this.storage.removeItem(t)}async initialize(){this.initialized||await new Promise(t=>{const e=setInterval(()=>{this.initialized&&(clearInterval(e),t())},20)})}}\n//# sourceMappingURL=index.es.js.map\n\n\n//# sourceURL=webpack://wallet_connect_integration/./node_modules/@walletconnect/keyvaluestorage/dist/index.es.js?"); /***/ }), @@ -1064,7 +994,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac \************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BASE10: () => (/* binding */ J),\n/* harmony export */ BASE16: () => (/* binding */ p),\n/* harmony export */ BASE64: () => (/* binding */ x),\n/* harmony export */ COLON: () => (/* binding */ Gn),\n/* harmony export */ DEFAULT_DEPTH: () => (/* binding */ ne),\n/* harmony export */ EMPTY_SPACE: () => (/* binding */ H),\n/* harmony export */ ENV_MAP: () => (/* binding */ m),\n/* harmony export */ MemoryStore: () => (/* binding */ er),\n/* harmony export */ ONE_THOUSAND: () => (/* binding */ Wn),\n/* harmony export */ REACT_NATIVE_PRODUCT: () => (/* binding */ Ce),\n/* harmony export */ RELAYER_DEFAULT_PROTOCOL: () => (/* binding */ Fe),\n/* harmony export */ SDK_TYPE: () => (/* binding */ je),\n/* harmony export */ SLASH: () => (/* binding */ $e),\n/* harmony export */ TYPE_0: () => (/* binding */ Q),\n/* harmony export */ TYPE_1: () => (/* binding */ _),\n/* harmony export */ UTF8: () => (/* binding */ F),\n/* harmony export */ appendToQueryString: () => (/* binding */ De),\n/* harmony export */ assertType: () => (/* binding */ Zn),\n/* harmony export */ buildApprovedNamespaces: () => (/* binding */ Ut),\n/* harmony export */ calcExpiry: () => (/* binding */ lt),\n/* harmony export */ capitalize: () => (/* binding */ ot),\n/* harmony export */ capitalizeWord: () => (/* binding */ xe),\n/* harmony export */ createDelayedPromise: () => (/* binding */ st),\n/* harmony export */ createExpiringPromise: () => (/* binding */ it),\n/* harmony export */ decodeTypeByte: () => (/* binding */ $),\n/* harmony export */ decrypt: () => (/* binding */ Ln),\n/* harmony export */ deriveSymKey: () => (/* binding */ kn),\n/* harmony export */ deserialize: () => (/* binding */ ee),\n/* harmony export */ encodeTypeByte: () => (/* binding */ Pe),\n/* harmony export */ encrypt: () => (/* binding */ Kn),\n/* harmony export */ engineEvent: () => (/* binding */ ft),\n/* harmony export */ enumify: () => (/* binding */ rt),\n/* harmony export */ formatAccountId: () => (/* binding */ Ee),\n/* harmony export */ formatAccountWithChain: () => (/* binding */ Pn),\n/* harmony export */ formatChainId: () => (/* binding */ ge),\n/* harmony export */ formatExpirerTarget: () => (/* binding */ re),\n/* harmony export */ formatIdTarget: () => (/* binding */ at),\n/* harmony export */ formatMessage: () => (/* binding */ Cn),\n/* harmony export */ formatMessageContext: () => (/* binding */ Xn),\n/* harmony export */ formatRelayParams: () => (/* binding */ We),\n/* harmony export */ formatRelayRpcUrl: () => (/* binding */ Jn),\n/* harmony export */ formatTopicTarget: () => (/* binding */ ct),\n/* harmony export */ formatUA: () => (/* binding */ Me),\n/* harmony export */ formatUri: () => (/* binding */ Nt),\n/* harmony export */ generateKeyPair: () => (/* binding */ jn),\n/* harmony export */ generateRandomBytes32: () => (/* binding */ Dn),\n/* harmony export */ getAccountsChains: () => (/* binding */ A),\n/* harmony export */ getAccountsFromNamespaces: () => (/* binding */ Rn),\n/* harmony export */ getAddressFromAccount: () => (/* binding */ be),\n/* harmony export */ getAddressesFromAccounts: () => (/* binding */ Tn),\n/* harmony export */ getAppMetadata: () => (/* binding */ zn),\n/* harmony export */ getBrowserOnlineStatus: () => (/* binding */ dn),\n/* harmony export */ getChainFromAccount: () => (/* binding */ Ne),\n/* harmony export */ getChainsFromAccounts: () => (/* binding */ Oe),\n/* harmony export */ getChainsFromNamespace: () => (/* binding */ K),\n/* harmony export */ getChainsFromNamespaces: () => (/* binding */ An),\n/* harmony export */ getChainsFromRequiredNamespaces: () => (/* binding */ Un),\n/* harmony export */ getDidAddress: () => (/* binding */ we),\n/* harmony export */ getDidAddressSegments: () => (/* binding */ L),\n/* harmony export */ getDidChainId: () => (/* binding */ Se),\n/* harmony export */ getEnvironment: () => (/* binding */ R),\n/* harmony export */ getHttpUrl: () => (/* binding */ Qn),\n/* harmony export */ getInternalError: () => (/* binding */ N),\n/* harmony export */ getJavascriptID: () => (/* binding */ Ve),\n/* harmony export */ getJavascriptOS: () => (/* binding */ ke),\n/* harmony export */ getLastItems: () => (/* binding */ Le),\n/* harmony export */ getNamespacedDidChainId: () => (/* binding */ _n),\n/* harmony export */ getNamespacesChains: () => (/* binding */ Je),\n/* harmony export */ getNamespacesEventsForChainId: () => (/* binding */ Ze),\n/* harmony export */ getNamespacesMethodsForChainId: () => (/* binding */ Qe),\n/* harmony export */ getNodeOnlineStatus: () => (/* binding */ pn),\n/* harmony export */ getReactNativeOnlineStatus: () => (/* binding */ fn),\n/* harmony export */ getRelayClientMetadata: () => (/* binding */ Yn),\n/* harmony export */ getRelayProtocolApi: () => (/* binding */ yt),\n/* harmony export */ getRelayProtocolName: () => (/* binding */ mt),\n/* harmony export */ getRequiredNamespacesFromNamespaces: () => (/* binding */ At),\n/* harmony export */ getSdkError: () => (/* binding */ U),\n/* harmony export */ getUniqueValues: () => (/* binding */ Y),\n/* harmony export */ handleDeeplinkRedirect: () => (/* binding */ pt),\n/* harmony export */ hasOverlap: () => (/* binding */ O),\n/* harmony export */ hashKey: () => (/* binding */ Vn),\n/* harmony export */ hashMessage: () => (/* binding */ Mn),\n/* harmony export */ isBrowser: () => (/* binding */ q),\n/* harmony export */ isCaipNamespace: () => (/* binding */ oe),\n/* harmony export */ isConformingNamespaces: () => (/* binding */ un),\n/* harmony export */ isExpired: () => (/* binding */ dt),\n/* harmony export */ isNode: () => (/* binding */ te),\n/* harmony export */ isOnline: () => (/* binding */ Zt),\n/* harmony export */ isProposalStruct: () => (/* binding */ Dt),\n/* harmony export */ isReactNative: () => (/* binding */ j),\n/* harmony export */ isSessionCompatible: () => (/* binding */ $t),\n/* harmony export */ isSessionStruct: () => (/* binding */ kt),\n/* harmony export */ isTypeOneEnvelope: () => (/* binding */ Fn),\n/* harmony export */ isUndefined: () => (/* binding */ w),\n/* harmony export */ isValidAccountId: () => (/* binding */ en),\n/* harmony export */ isValidAccounts: () => (/* binding */ rn),\n/* harmony export */ isValidActions: () => (/* binding */ sn),\n/* harmony export */ isValidArray: () => (/* binding */ D),\n/* harmony export */ isValidChainId: () => (/* binding */ k),\n/* harmony export */ isValidChains: () => (/* binding */ nn),\n/* harmony export */ isValidController: () => (/* binding */ Vt),\n/* harmony export */ isValidErrorReason: () => (/* binding */ Ft),\n/* harmony export */ isValidEvent: () => (/* binding */ Bt),\n/* harmony export */ isValidId: () => (/* binding */ Lt),\n/* harmony export */ isValidNamespaceAccounts: () => (/* binding */ on),\n/* harmony export */ isValidNamespaceActions: () => (/* binding */ ce),\n/* harmony export */ isValidNamespaceChains: () => (/* binding */ tn),\n/* harmony export */ isValidNamespaceMethodsOrEvents: () => (/* binding */ ie),\n/* harmony export */ isValidNamespaces: () => (/* binding */ cn),\n/* harmony export */ isValidNamespacesChainId: () => (/* binding */ Gt),\n/* harmony export */ isValidNamespacesEvent: () => (/* binding */ zt),\n/* harmony export */ isValidNamespacesRequest: () => (/* binding */ Wt),\n/* harmony export */ isValidNumber: () => (/* binding */ G),\n/* harmony export */ isValidObject: () => (/* binding */ B),\n/* harmony export */ isValidParams: () => (/* binding */ xt),\n/* harmony export */ isValidRelay: () => (/* binding */ an),\n/* harmony export */ isValidRelays: () => (/* binding */ Kt),\n/* harmony export */ isValidRequest: () => (/* binding */ Ht),\n/* harmony export */ isValidRequestExpiry: () => (/* binding */ Qt),\n/* harmony export */ isValidRequiredNamespaces: () => (/* binding */ Mt),\n/* harmony export */ isValidResponse: () => (/* binding */ qt),\n/* harmony export */ isValidString: () => (/* binding */ h),\n/* harmony export */ isValidUrl: () => (/* binding */ jt),\n/* harmony export */ mapEntries: () => (/* binding */ tt),\n/* harmony export */ mapToObj: () => (/* binding */ et),\n/* harmony export */ mergeArrays: () => (/* binding */ S),\n/* harmony export */ normalizeNamespaces: () => (/* binding */ se),\n/* harmony export */ objToMap: () => (/* binding */ nt),\n/* harmony export */ parseAccountId: () => (/* binding */ z),\n/* harmony export */ parseChainId: () => (/* binding */ ve),\n/* harmony export */ parseContextNames: () => (/* binding */ Ke),\n/* harmony export */ parseExpirerTarget: () => (/* binding */ ut),\n/* harmony export */ parseNamespaceKey: () => (/* binding */ Xe),\n/* harmony export */ parseRelayParams: () => (/* binding */ Be),\n/* harmony export */ parseTopic: () => (/* binding */ Ge),\n/* harmony export */ parseUri: () => (/* binding */ bt),\n/* harmony export */ serialize: () => (/* binding */ Te),\n/* harmony export */ subscribeToBrowserNetworkChange: () => (/* binding */ mn),\n/* harmony export */ subscribeToNetworkChange: () => (/* binding */ Xt),\n/* harmony export */ subscribeToReactNativeNetworkChange: () => (/* binding */ yn),\n/* harmony export */ validateDecoding: () => (/* binding */ xn),\n/* harmony export */ validateEncoding: () => (/* binding */ Re)\n/* harmony export */ });\n/* harmony import */ var _stablelib_chacha20poly1305__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @stablelib/chacha20poly1305 */ \"./node_modules/@stablelib/chacha20poly1305/lib/chacha20poly1305.js\");\n/* harmony import */ var _stablelib_hkdf__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @stablelib/hkdf */ \"./node_modules/@stablelib/hkdf/lib/hkdf.js\");\n/* harmony import */ var _stablelib_random__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @stablelib/random */ \"./node_modules/@stablelib/random/lib/random.js\");\n/* harmony import */ var _stablelib_sha256__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @stablelib/sha256 */ \"./node_modules/@stablelib/sha256/lib/sha256.js\");\n/* harmony import */ var _stablelib_x25519__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @stablelib/x25519 */ \"./node_modules/@stablelib/x25519/lib/x25519.js\");\n/* harmony import */ var uint8arrays__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! uint8arrays */ \"./node_modules/uint8arrays/esm/src/index.js\");\n/* harmony import */ var detect_browser__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! detect-browser */ \"./node_modules/detect-browser/es/index.js\");\n/* harmony import */ var _walletconnect_time__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @walletconnect/time */ \"./node_modules/@walletconnect/time/dist/cjs/index.js\");\n/* harmony import */ var _walletconnect_time__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_walletconnect_time__WEBPACK_IMPORTED_MODULE_6__);\n/* harmony import */ var _walletconnect_window_getters__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @walletconnect/window-getters */ \"./node_modules/@walletconnect/window-getters/dist/cjs/index.js\");\n/* harmony import */ var _walletconnect_window_metadata__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @walletconnect/window-metadata */ \"./node_modules/@walletconnect/window-metadata/dist/cjs/index.js\");\n/* harmony import */ var query_string__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! query-string */ \"./node_modules/query-string/index.js\");\n/* harmony import */ var _walletconnect_relay_api__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @walletconnect/relay-api */ \"./node_modules/@walletconnect/relay-api/dist/esm/index.js\");\nconst M=\":\";function ve(e){const[n,t]=e.split(M);return{namespace:n,reference:t}}function ge(e){const{namespace:n,reference:t}=e;return[n,t].join(M)}function z(e){const[n,t,r]=e.split(M);return{namespace:n,reference:t,address:r}}function Ee(e){const{namespace:n,reference:t,address:r}=e;return[n,t,r].join(M)}function Y(e,n){const t=[];return e.forEach(r=>{const o=n(r);t.includes(o)||t.push(o)}),t}function be(e){const{address:n}=z(e);return n}function Ne(e){const{namespace:n,reference:t}=z(e);return ge({namespace:n,reference:t})}function Pn(e,n){const{namespace:t,reference:r}=ve(n);return Ee({namespace:t,reference:r,address:e})}function Tn(e){return Y(e,be)}function Oe(e){return Y(e,Ne)}function Rn(e,n=[]){const t=[];return Object.keys(e).forEach(r=>{if(n.length&&!n.includes(r))return;const o=e[r];t.push(...o.accounts)}),t}function An(e,n=[]){const t=[];return Object.keys(e).forEach(r=>{if(n.length&&!n.includes(r))return;const o=e[r];t.push(...Oe(o.accounts))}),t}function Un(e,n=[]){const t=[];return Object.keys(e).forEach(r=>{if(n.length&&!n.includes(r))return;const o=e[r];t.push(...K(r,o))}),t}function K(e,n){return e.includes(\":\")?[e]:n.chains||[]}const L=e=>e?.split(\":\"),Se=e=>{const n=e&&L(e);if(n)return n[3]},_n=e=>{const n=e&&L(e);if(n)return n[2]+\":\"+n[3]},we=e=>{const n=e&&L(e);if(n)return n.pop()},Cn=(e,n)=>{const t=`${e.domain} wants you to sign in with your Ethereum account:`,r=we(n),o=e.statement,s=`URI: ${e.aud}`,i=`Version: ${e.version}`,l=`Chain ID: ${Se(n)}`,d=`Nonce: ${e.nonce}`,c=`Issued At: ${e.iat}`,u=e.resources&&e.resources.length>0?`Resources:\n${e.resources.map(a=>`- ${a}`).join(`\n`)}`:void 0;return[t,r,\"\",o,\"\",s,i,l,d,c,u].filter(a=>a!=null).join(`\n`)},J=\"base10\",p=\"base16\",x=\"base64pad\",F=\"utf8\",Q=0,_=1,$n=0,Ie=1,Z=12,X=32;function jn(){const e=_stablelib_x25519__WEBPACK_IMPORTED_MODULE_4__.generateKeyPair();return{privateKey:(0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.toString)(e.secretKey,p),publicKey:(0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.toString)(e.publicKey,p)}}function Dn(){const e=(0,_stablelib_random__WEBPACK_IMPORTED_MODULE_2__.randomBytes)(X);return (0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.toString)(e,p)}function kn(e,n){const t=_stablelib_x25519__WEBPACK_IMPORTED_MODULE_4__.sharedKey((0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.fromString)(e,p),(0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.fromString)(n,p),!0),r=new _stablelib_hkdf__WEBPACK_IMPORTED_MODULE_1__.HKDF(_stablelib_sha256__WEBPACK_IMPORTED_MODULE_3__.SHA256,t).expand(X);return (0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.toString)(r,p)}function Vn(e){const n=(0,_stablelib_sha256__WEBPACK_IMPORTED_MODULE_3__.hash)((0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.fromString)(e,p));return (0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.toString)(n,p)}function Mn(e){const n=(0,_stablelib_sha256__WEBPACK_IMPORTED_MODULE_3__.hash)((0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.fromString)(e,F));return (0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.toString)(n,p)}function Pe(e){return (0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.fromString)(`${e}`,J)}function $(e){return Number((0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.toString)(e,J))}function Kn(e){const n=Pe(typeof e.type<\"u\"?e.type:Q);if($(n)===_&&typeof e.senderPublicKey>\"u\")throw new Error(\"Missing sender public key for type 1 envelope\");const t=typeof e.senderPublicKey<\"u\"?(0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.fromString)(e.senderPublicKey,p):void 0,r=typeof e.iv<\"u\"?(0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.fromString)(e.iv,p):(0,_stablelib_random__WEBPACK_IMPORTED_MODULE_2__.randomBytes)(Z),o=new _stablelib_chacha20poly1305__WEBPACK_IMPORTED_MODULE_0__.ChaCha20Poly1305((0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.fromString)(e.symKey,p)).seal(r,(0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.fromString)(e.message,F));return Te({type:n,sealed:o,iv:r,senderPublicKey:t})}function Ln(e){const n=new _stablelib_chacha20poly1305__WEBPACK_IMPORTED_MODULE_0__.ChaCha20Poly1305((0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.fromString)(e.symKey,p)),{sealed:t,iv:r}=ee(e.encoded),o=n.open(r,t);if(o===null)throw new Error(\"Failed to decrypt\");return (0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.toString)(o,F)}function Te(e){if($(e.type)===_){if(typeof e.senderPublicKey>\"u\")throw new Error(\"Missing sender public key for type 1 envelope\");return (0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.toString)((0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.concat)([e.type,e.senderPublicKey,e.iv,e.sealed]),x)}return (0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.toString)((0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.concat)([e.type,e.iv,e.sealed]),x)}function ee(e){const n=(0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.fromString)(e,x),t=n.slice($n,Ie),r=Ie;if($(t)===_){const l=r+X,d=l+Z,c=n.slice(r,l),u=n.slice(l,d),a=n.slice(d);return{type:t,sealed:a,iv:u,senderPublicKey:c}}const o=r+Z,s=n.slice(r,o),i=n.slice(o);return{type:t,sealed:i,iv:s}}function xn(e,n){const t=ee(e);return Re({type:$(t.type),senderPublicKey:typeof t.senderPublicKey<\"u\"?(0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.toString)(t.senderPublicKey,p):void 0,receiverPublicKey:n?.receiverPublicKey})}function Re(e){const n=e?.type||Q;if(n===_){if(typeof e?.senderPublicKey>\"u\")throw new Error(\"missing sender public key\");if(typeof e?.receiverPublicKey>\"u\")throw new Error(\"missing receiver public key\")}return{type:n,senderPublicKey:e?.senderPublicKey,receiverPublicKey:e?.receiverPublicKey}}function Fn(e){return e.type===_&&typeof e.senderPublicKey==\"string\"&&typeof e.receiverPublicKey==\"string\"}var Hn=Object.defineProperty,Ae=Object.getOwnPropertySymbols,qn=Object.prototype.hasOwnProperty,Bn=Object.prototype.propertyIsEnumerable,Ue=(e,n,t)=>n in e?Hn(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,_e=(e,n)=>{for(var t in n||(n={}))qn.call(n,t)&&Ue(e,t,n[t]);if(Ae)for(var t of Ae(n))Bn.call(n,t)&&Ue(e,t,n[t]);return e};const Ce=\"ReactNative\",m={reactNative:\"react-native\",node:\"node\",browser:\"browser\",unknown:\"unknown\"},H=\" \",Gn=\":\",$e=\"/\",ne=2,Wn=1e3,je=\"js\";function te(){return typeof process<\"u\"&&typeof process.versions<\"u\"&&typeof process.versions.node<\"u\"}function j(){return!(0,_walletconnect_window_getters__WEBPACK_IMPORTED_MODULE_7__.getDocument)()&&!!(0,_walletconnect_window_getters__WEBPACK_IMPORTED_MODULE_7__.getNavigator)()&&navigator.product===Ce}function q(){return!te()&&!!(0,_walletconnect_window_getters__WEBPACK_IMPORTED_MODULE_7__.getNavigator)()}function R(){return j()?m.reactNative:te()?m.node:q()?m.browser:m.unknown}function De(e,n){let t=query_string__WEBPACK_IMPORTED_MODULE_9__.parse(e);return t=_e(_e({},t),n),e=query_string__WEBPACK_IMPORTED_MODULE_9__.stringify(t),e}function zn(){return (0,_walletconnect_window_metadata__WEBPACK_IMPORTED_MODULE_8__.getWindowMetadata)()||{name:\"\",description:\"\",url:\"\",icons:[\"\"]}}function Yn(e,n){var t;const r=R(),o={protocol:e,version:n,env:r};return r===\"browser\"&&(o.host=((t=(0,_walletconnect_window_getters__WEBPACK_IMPORTED_MODULE_7__.getLocation)())==null?void 0:t.host)||\"unknown\"),o}function ke(){if(R()===m.reactNative&&typeof __webpack_require__.g<\"u\"&&typeof(__webpack_require__.g==null?void 0:__webpack_require__.g.Platform)<\"u\"){const{OS:t,Version:r}=__webpack_require__.g.Platform;return[t,r].join(\"-\")}const e=(0,detect_browser__WEBPACK_IMPORTED_MODULE_11__.detect)();if(e===null)return\"unknown\";const n=e.os?e.os.replace(\" \",\"\").toLowerCase():\"unknown\";return e.type===\"browser\"?[n,e.name,e.version].join(\"-\"):[n,e.version].join(\"-\")}function Ve(){var e;const n=R();return n===m.browser?[n,((e=(0,_walletconnect_window_getters__WEBPACK_IMPORTED_MODULE_7__.getLocation)())==null?void 0:e.host)||\"unknown\"].join(\":\"):n}function Me(e,n,t){const r=ke(),o=Ve();return[[e,n].join(\"-\"),[je,t].join(\"-\"),r,o].join(\"/\")}function Jn({protocol:e,version:n,relayUrl:t,sdkVersion:r,auth:o,projectId:s,useOnCloseEvent:i}){const l=t.split(\"?\"),d=Me(e,n,r),c={auth:o,ua:d,projectId:s,useOnCloseEvent:i||void 0},u=De(l[1]||\"\",c);return l[0]+\"?\"+u}function Qn(e){let n=(e.match(/^[^:]+(?=:\\/\\/)/gi)||[])[0];const t=typeof n<\"u\"?e.split(\"://\")[1]:e;return n=n===\"wss\"?\"https\":\"http\",[n,t].join(\"://\")}function Zn(e,n,t){if(!e[n]||typeof e[n]!==t)throw new Error(`Missing or invalid \"${n}\" param`)}function Ke(e,n=ne){return Le(e.split($e),n)}function Xn(e){return Ke(e).join(H)}function O(e,n){return e.filter(t=>n.includes(t)).length===e.length}function Le(e,n=ne){return e.slice(Math.max(e.length-n,0))}function et(e){return Object.fromEntries(e.entries())}function nt(e){return new Map(Object.entries(e))}function tt(e,n){const t={};return Object.keys(e).forEach(r=>{t[r]=n(e[r])}),t}const rt=e=>e;function xe(e){return e.trim().replace(/^\\w/,n=>n.toUpperCase())}function ot(e){return e.split(H).map(n=>xe(n)).join(H)}function st(e=_walletconnect_time__WEBPACK_IMPORTED_MODULE_6__.FIVE_MINUTES,n){const t=(0,_walletconnect_time__WEBPACK_IMPORTED_MODULE_6__.toMiliseconds)(e||_walletconnect_time__WEBPACK_IMPORTED_MODULE_6__.FIVE_MINUTES);let r,o,s;return{resolve:i=>{s&&r&&(clearTimeout(s),r(i))},reject:i=>{s&&o&&(clearTimeout(s),o(i))},done:()=>new Promise((i,l)=>{s=setTimeout(()=>{l(new Error(n))},t),r=i,o=l})}}function it(e,n,t){return new Promise(async(r,o)=>{const s=setTimeout(()=>o(new Error(t)),n);try{const i=await e;r(i)}catch(i){o(i)}clearTimeout(s)})}function re(e,n){if(typeof n==\"string\"&&n.startsWith(`${e}:`))return n;if(e.toLowerCase()===\"topic\"){if(typeof n!=\"string\")throw new Error('Value must be \"string\" for expirer target type: topic');return`topic:${n}`}else if(e.toLowerCase()===\"id\"){if(typeof n!=\"number\")throw new Error('Value must be \"number\" for expirer target type: id');return`id:${n}`}throw new Error(`Unknown expirer target type: ${e}`)}function ct(e){return re(\"topic\",e)}function at(e){return re(\"id\",e)}function ut(e){const[n,t]=e.split(\":\"),r={id:void 0,topic:void 0};if(n===\"topic\"&&typeof t==\"string\")r.topic=t;else if(n===\"id\"&&Number.isInteger(Number(t)))r.id=Number(t);else throw new Error(`Invalid target, expected id:number or topic:string, got ${n}:${t}`);return r}function lt(e,n){return (0,_walletconnect_time__WEBPACK_IMPORTED_MODULE_6__.fromMiliseconds)((n||Date.now())+(0,_walletconnect_time__WEBPACK_IMPORTED_MODULE_6__.toMiliseconds)(e))}function dt(e){return Date.now()>=(0,_walletconnect_time__WEBPACK_IMPORTED_MODULE_6__.toMiliseconds)(e)}function ft(e,n){return`${e}${n?`:${n}`:\"\"}`}function S(e=[],n=[]){return[...new Set([...e,...n])]}async function pt({id:e,topic:n,wcDeepLink:t}){try{if(!t)return;const r=typeof t==\"string\"?JSON.parse(t):t;let o=r?.href;if(typeof o!=\"string\")return;o.endsWith(\"/\")&&(o=o.slice(0,-1));const s=`${o}/wc?requestId=${e}&sessionTopic=${n}`,i=R();i===m.browser?s.startsWith(\"https://\")?window.open(s,\"_blank\",\"noreferrer noopener\"):window.open(s,\"_self\",\"noreferrer noopener\"):i===m.reactNative&&typeof(__webpack_require__.g==null?void 0:__webpack_require__.g.Linking)<\"u\"&&await __webpack_require__.g.Linking.openURL(s)}catch(r){console.error(r)}}const Fe=\"irn\";function mt(e){return e?.relay||{protocol:Fe}}function yt(e){const n=_walletconnect_relay_api__WEBPACK_IMPORTED_MODULE_10__.RELAY_JSONRPC[e];if(typeof n>\"u\")throw new Error(`Relay Protocol not supported: ${e}`);return n}var ht=Object.defineProperty,He=Object.getOwnPropertySymbols,vt=Object.prototype.hasOwnProperty,gt=Object.prototype.propertyIsEnumerable,qe=(e,n,t)=>n in e?ht(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,Et=(e,n)=>{for(var t in n||(n={}))vt.call(n,t)&&qe(e,t,n[t]);if(He)for(var t of He(n))gt.call(n,t)&&qe(e,t,n[t]);return e};function Be(e,n=\"-\"){const t={},r=\"relay\"+n;return Object.keys(e).forEach(o=>{if(o.startsWith(r)){const s=o.replace(r,\"\"),i=e[o];t[s]=i}}),t}function bt(e){const n=e.indexOf(\":\"),t=e.indexOf(\"?\")!==-1?e.indexOf(\"?\"):void 0,r=e.substring(0,n),o=e.substring(n+1,t).split(\"@\"),s=typeof t<\"u\"?e.substring(t):\"\",i=query_string__WEBPACK_IMPORTED_MODULE_9__.parse(s);return{protocol:r,topic:Ge(o[0]),version:parseInt(o[1],10),symKey:i.symKey,relay:Be(i)}}function Ge(e){return e.startsWith(\"//\")?e.substring(2):e}function We(e,n=\"-\"){const t=\"relay\",r={};return Object.keys(e).forEach(o=>{const s=t+n+o;e[o]&&(r[s]=e[o])}),r}function Nt(e){return`${e.protocol}:${e.topic}@${e.version}?`+query_string__WEBPACK_IMPORTED_MODULE_9__.stringify(Et({symKey:e.symKey},We(e.relay)))}var Ot=Object.defineProperty,St=Object.defineProperties,wt=Object.getOwnPropertyDescriptors,ze=Object.getOwnPropertySymbols,It=Object.prototype.hasOwnProperty,Pt=Object.prototype.propertyIsEnumerable,Ye=(e,n,t)=>n in e?Ot(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,Tt=(e,n)=>{for(var t in n||(n={}))It.call(n,t)&&Ye(e,t,n[t]);if(ze)for(var t of ze(n))Pt.call(n,t)&&Ye(e,t,n[t]);return e},Rt=(e,n)=>St(e,wt(n));function A(e){const n=[];return e.forEach(t=>{const[r,o]=t.split(\":\");n.push(`${r}:${o}`)}),n}function Je(e){const n=[];return Object.values(e).forEach(t=>{n.push(...A(t.accounts))}),n}function Qe(e,n){const t=[];return Object.values(e).forEach(r=>{A(r.accounts).includes(n)&&t.push(...r.methods)}),t}function Ze(e,n){const t=[];return Object.values(e).forEach(r=>{A(r.accounts).includes(n)&&t.push(...r.events)}),t}function At(e,n){const t=cn(e,n);if(t)throw new Error(t.message);const r={};for(const[o,s]of Object.entries(e))r[o]={methods:s.methods,events:s.events,chains:s.accounts.map(i=>`${i.split(\":\")[0]}:${i.split(\":\")[1]}`)};return r}function Ut(e){const{proposal:{requiredNamespaces:n,optionalNamespaces:t={}},supportedNamespaces:r}=e,o=se(n),s=se(t),i={};Object.keys(r).forEach(c=>{const u=r[c].chains,a=r[c].methods,b=r[c].events,I=r[c].accounts;u.forEach(y=>{if(!I.some(f=>f.includes(y)))throw new Error(`No accounts provided for chain ${y} in namespace ${c}`)}),i[c]={chains:u,methods:a,events:b,accounts:I}});const l=un(n,i,\"approve()\");if(l)throw new Error(l.message);const d={};return!Object.keys(n).length&&!Object.keys(t).length?i:(Object.keys(o).forEach(c=>{const u=r[c].chains.filter(y=>{var f,v;return(v=(f=o[c])==null?void 0:f.chains)==null?void 0:v.includes(y)}),a=r[c].methods.filter(y=>{var f,v;return(v=(f=o[c])==null?void 0:f.methods)==null?void 0:v.includes(y)}),b=r[c].events.filter(y=>{var f,v;return(v=(f=o[c])==null?void 0:f.events)==null?void 0:v.includes(y)}),I=u.map(y=>r[c].accounts.filter(f=>f.includes(`${y}:`))).flat();d[c]={chains:u,methods:a,events:b,accounts:I}}),Object.keys(s).forEach(c=>{var u,a,b,I,y,f;if(!r[c])return;const v=(a=(u=s[c])==null?void 0:u.chains)==null?void 0:a.filter(P=>r[c].chains.includes(P)),hn=r[c].methods.filter(P=>{var T,C;return(C=(T=s[c])==null?void 0:T.methods)==null?void 0:C.includes(P)}),vn=r[c].events.filter(P=>{var T,C;return(C=(T=s[c])==null?void 0:T.events)==null?void 0:C.includes(P)}),gn=v?.map(P=>r[c].accounts.filter(T=>T.includes(`${P}:`))).flat();d[c]={chains:S((b=d[c])==null?void 0:b.chains,v),methods:S((I=d[c])==null?void 0:I.methods,hn),events:S((y=d[c])==null?void 0:y.events,vn),accounts:S((f=d[c])==null?void 0:f.accounts,gn)}}),d)}function oe(e){return e.includes(\":\")}function Xe(e){return oe(e)?e.split(\":\")[0]:e}function se(e){var n,t,r;const o={};if(!B(e))return o;for(const[s,i]of Object.entries(e)){const l=oe(s)?[s]:i.chains,d=i.methods||[],c=i.events||[],u=Xe(s);o[u]=Rt(Tt({},o[u]),{chains:S(l,(n=o[u])==null?void 0:n.chains),methods:S(d,(t=o[u])==null?void 0:t.methods),events:S(c,(r=o[u])==null?void 0:r.events)})}return o}const _t={INVALID_METHOD:{message:\"Invalid method.\",code:1001},INVALID_EVENT:{message:\"Invalid event.\",code:1002},INVALID_UPDATE_REQUEST:{message:\"Invalid update request.\",code:1003},INVALID_EXTEND_REQUEST:{message:\"Invalid extend request.\",code:1004},INVALID_SESSION_SETTLE_REQUEST:{message:\"Invalid session settle request.\",code:1005},UNAUTHORIZED_METHOD:{message:\"Unauthorized method.\",code:3001},UNAUTHORIZED_EVENT:{message:\"Unauthorized event.\",code:3002},UNAUTHORIZED_UPDATE_REQUEST:{message:\"Unauthorized update request.\",code:3003},UNAUTHORIZED_EXTEND_REQUEST:{message:\"Unauthorized extend request.\",code:3004},USER_REJECTED:{message:\"User rejected.\",code:5e3},USER_REJECTED_CHAINS:{message:\"User rejected chains.\",code:5001},USER_REJECTED_METHODS:{message:\"User rejected methods.\",code:5002},USER_REJECTED_EVENTS:{message:\"User rejected events.\",code:5003},UNSUPPORTED_CHAINS:{message:\"Unsupported chains.\",code:5100},UNSUPPORTED_METHODS:{message:\"Unsupported methods.\",code:5101},UNSUPPORTED_EVENTS:{message:\"Unsupported events.\",code:5102},UNSUPPORTED_ACCOUNTS:{message:\"Unsupported accounts.\",code:5103},UNSUPPORTED_NAMESPACE_KEY:{message:\"Unsupported namespace key.\",code:5104},USER_DISCONNECTED:{message:\"User disconnected.\",code:6e3},SESSION_SETTLEMENT_FAILED:{message:\"Session settlement failed.\",code:7e3},WC_METHOD_UNSUPPORTED:{message:\"Unsupported wc_ method.\",code:10001}},Ct={NOT_INITIALIZED:{message:\"Not initialized.\",code:1},NO_MATCHING_KEY:{message:\"No matching key.\",code:2},RESTORE_WILL_OVERRIDE:{message:\"Restore will override.\",code:3},RESUBSCRIBED:{message:\"Resubscribed.\",code:4},MISSING_OR_INVALID:{message:\"Missing or invalid.\",code:5},EXPIRED:{message:\"Expired.\",code:6},UNKNOWN_TYPE:{message:\"Unknown type.\",code:7},MISMATCHED_TOPIC:{message:\"Mismatched topic.\",code:8},NON_CONFORMING_NAMESPACES:{message:\"Non conforming namespaces.\",code:9}};function N(e,n){const{message:t,code:r}=Ct[e];return{message:n?`${t} ${n}`:t,code:r}}function U(e,n){const{message:t,code:r}=_t[e];return{message:n?`${t} ${n}`:t,code:r}}function D(e,n){return Array.isArray(e)?typeof n<\"u\"&&e.length?e.every(n):!0:!1}function B(e){return Object.getPrototypeOf(e)===Object.prototype&&Object.keys(e).length}function w(e){return typeof e>\"u\"}function h(e,n){return n&&w(e)?!0:typeof e==\"string\"&&!!e.trim().length}function G(e,n){return n&&w(e)?!0:typeof e==\"number\"&&!isNaN(e)}function $t(e,n){const{requiredNamespaces:t}=n,r=Object.keys(e.namespaces),o=Object.keys(t);let s=!0;return O(o,r)?(r.forEach(i=>{const{accounts:l,methods:d,events:c}=e.namespaces[i],u=A(l),a=t[i];(!O(K(i,a),u)||!O(a.methods,d)||!O(a.events,c))&&(s=!1)}),s):!1}function k(e){return h(e,!1)&&e.includes(\":\")?e.split(\":\").length===2:!1}function en(e){if(h(e,!1)&&e.includes(\":\")){const n=e.split(\":\");if(n.length===3){const t=n[0]+\":\"+n[1];return!!n[2]&&k(t)}}return!1}function jt(e){if(h(e,!1))try{return typeof new URL(e)<\"u\"}catch{return!1}return!1}function Dt(e){var n;return(n=e?.proposer)==null?void 0:n.publicKey}function kt(e){return e?.topic}function Vt(e,n){let t=null;return h(e?.publicKey,!1)||(t=N(\"MISSING_OR_INVALID\",`${n} controller public key should be a string`)),t}function ie(e){let n=!0;return D(e)?e.length&&(n=e.every(t=>h(t,!1))):n=!1,n}function nn(e,n,t){let r=null;return D(n)&&n.length?n.forEach(o=>{r||k(o)||(r=U(\"UNSUPPORTED_CHAINS\",`${t}, chain ${o} should be a string and conform to \"namespace:chainId\" format`))}):k(e)||(r=U(\"UNSUPPORTED_CHAINS\",`${t}, chains must be defined as \"namespace:chainId\" e.g. \"eip155:1\": {...} in the namespace key OR as an array of CAIP-2 chainIds e.g. eip155: { chains: [\"eip155:1\", \"eip155:5\"] }`)),r}function tn(e,n,t){let r=null;return Object.entries(e).forEach(([o,s])=>{if(r)return;const i=nn(o,K(o,s),`${n} ${t}`);i&&(r=i)}),r}function rn(e,n){let t=null;return D(e)?e.forEach(r=>{t||en(r)||(t=U(\"UNSUPPORTED_ACCOUNTS\",`${n}, account ${r} should be a string and conform to \"namespace:chainId:address\" format`))}):t=U(\"UNSUPPORTED_ACCOUNTS\",`${n}, accounts should be an array of strings conforming to \"namespace:chainId:address\" format`),t}function on(e,n){let t=null;return Object.values(e).forEach(r=>{if(t)return;const o=rn(r?.accounts,`${n} namespace`);o&&(t=o)}),t}function sn(e,n){let t=null;return ie(e?.methods)?ie(e?.events)||(t=U(\"UNSUPPORTED_EVENTS\",`${n}, events should be an array of strings or empty array for no events`)):t=U(\"UNSUPPORTED_METHODS\",`${n}, methods should be an array of strings or empty array for no methods`),t}function ce(e,n){let t=null;return Object.values(e).forEach(r=>{if(t)return;const o=sn(r,`${n}, namespace`);o&&(t=o)}),t}function Mt(e,n,t){let r=null;if(e&&B(e)){const o=ce(e,n);o&&(r=o);const s=tn(e,n,t);s&&(r=s)}else r=N(\"MISSING_OR_INVALID\",`${n}, ${t} should be an object with data`);return r}function cn(e,n){let t=null;if(e&&B(e)){const r=ce(e,n);r&&(t=r);const o=on(e,n);o&&(t=o)}else t=N(\"MISSING_OR_INVALID\",`${n}, namespaces should be an object with data`);return t}function an(e){return h(e.protocol,!0)}function Kt(e,n){let t=!1;return n&&!e?t=!0:e&&D(e)&&e.length&&e.forEach(r=>{t=an(r)}),t}function Lt(e){return typeof e==\"number\"}function xt(e){return typeof e<\"u\"&&typeof e!==null}function Ft(e){return!(!e||typeof e!=\"object\"||!e.code||!G(e.code,!1)||!e.message||!h(e.message,!1))}function Ht(e){return!(w(e)||!h(e.method,!1))}function qt(e){return!(w(e)||w(e.result)&&w(e.error)||!G(e.id,!1)||!h(e.jsonrpc,!1))}function Bt(e){return!(w(e)||!h(e.name,!1))}function Gt(e,n){return!(!k(n)||!Je(e).includes(n))}function Wt(e,n,t){return h(t,!1)?Qe(e,n).includes(t):!1}function zt(e,n,t){return h(t,!1)?Ze(e,n).includes(t):!1}function un(e,n,t){let r=null;const o=Yt(e),s=Jt(n),i=Object.keys(o),l=Object.keys(s),d=ln(Object.keys(e)),c=ln(Object.keys(n)),u=d.filter(a=>!c.includes(a));return u.length&&(r=N(\"NON_CONFORMING_NAMESPACES\",`${t} namespaces keys don't satisfy requiredNamespaces.\n Required: ${u.toString()}\n Received: ${Object.keys(n).toString()}`)),O(i,l)||(r=N(\"NON_CONFORMING_NAMESPACES\",`${t} namespaces chains don't satisfy required namespaces.\n Required: ${i.toString()}\n Approved: ${l.toString()}`)),Object.keys(n).forEach(a=>{if(!a.includes(\":\")||r)return;const b=A(n[a].accounts);b.includes(a)||(r=N(\"NON_CONFORMING_NAMESPACES\",`${t} namespaces accounts don't satisfy namespace accounts for ${a}\n Required: ${a}\n Approved: ${b.toString()}`))}),i.forEach(a=>{r||(O(o[a].methods,s[a].methods)?O(o[a].events,s[a].events)||(r=N(\"NON_CONFORMING_NAMESPACES\",`${t} namespaces events don't satisfy namespace events for ${a}`)):r=N(\"NON_CONFORMING_NAMESPACES\",`${t} namespaces methods don't satisfy namespace methods for ${a}`))}),r}function Yt(e){const n={};return Object.keys(e).forEach(t=>{var r;t.includes(\":\")?n[t]=e[t]:(r=e[t].chains)==null||r.forEach(o=>{n[o]={methods:e[t].methods,events:e[t].events}})}),n}function ln(e){return[...new Set(e.map(n=>n.includes(\":\")?n.split(\":\")[0]:n))]}function Jt(e){const n={};return Object.keys(e).forEach(t=>{if(t.includes(\":\"))n[t]=e[t];else{const r=A(e[t].accounts);r?.forEach(o=>{n[o]={accounts:e[t].accounts.filter(s=>s.includes(`${o}:`)),methods:e[t].methods,events:e[t].events}})}}),n}function Qt(e,n){return G(e,!1)&&e<=n.max&&e>=n.min}function Zt(){const e=R();return new Promise(n=>{switch(e){case m.browser:n(dn());break;case m.reactNative:n(fn());break;case m.node:n(pn());break;default:n(!0)}})}function dn(){return q()&&navigator?.onLine}async function fn(){if(j()&&typeof __webpack_require__.g<\"u\"&&__webpack_require__.g!=null&&__webpack_require__.g.NetInfo){const e=await(__webpack_require__.g==null?void 0:__webpack_require__.g.NetInfo.fetch());return e?.isConnected}return!0}function pn(){return!0}function Xt(e){switch(R()){case m.browser:mn(e);break;case m.reactNative:yn(e);break;case m.node:break}}function mn(e){!j()&&q()&&(window.addEventListener(\"online\",()=>e(!0)),window.addEventListener(\"offline\",()=>e(!1)))}function yn(e){j()&&typeof __webpack_require__.g<\"u\"&&__webpack_require__.g!=null&&__webpack_require__.g.NetInfo&&__webpack_require__.g?.NetInfo.addEventListener(n=>e(n?.isConnected))}const ae={};class er{static get(n){return ae[n]}static set(n,t){ae[n]=t}static delete(n){delete ae[n]}}\n//# sourceMappingURL=index.es.js.map\n\n\n//# sourceURL=webpack://wallet_connect_integration/./node_modules/@walletconnect/utils/dist/index.es.js?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BASE10: () => (/* binding */ J),\n/* harmony export */ BASE16: () => (/* binding */ p),\n/* harmony export */ BASE64: () => (/* binding */ x),\n/* harmony export */ COLON: () => (/* binding */ Gn),\n/* harmony export */ DEFAULT_DEPTH: () => (/* binding */ ne),\n/* harmony export */ EMPTY_SPACE: () => (/* binding */ H),\n/* harmony export */ ENV_MAP: () => (/* binding */ m),\n/* harmony export */ MemoryStore: () => (/* binding */ nr),\n/* harmony export */ ONE_THOUSAND: () => (/* binding */ Wn),\n/* harmony export */ REACT_NATIVE_PRODUCT: () => (/* binding */ Ce),\n/* harmony export */ RELAYER_DEFAULT_PROTOCOL: () => (/* binding */ Fe),\n/* harmony export */ SDK_TYPE: () => (/* binding */ je),\n/* harmony export */ SLASH: () => (/* binding */ $e),\n/* harmony export */ TYPE_0: () => (/* binding */ Q),\n/* harmony export */ TYPE_1: () => (/* binding */ _),\n/* harmony export */ UTF8: () => (/* binding */ F),\n/* harmony export */ appendToQueryString: () => (/* binding */ De),\n/* harmony export */ assertType: () => (/* binding */ Xn),\n/* harmony export */ buildApprovedNamespaces: () => (/* binding */ _t),\n/* harmony export */ calcExpiry: () => (/* binding */ dt),\n/* harmony export */ capitalize: () => (/* binding */ st),\n/* harmony export */ capitalizeWord: () => (/* binding */ xe),\n/* harmony export */ createDelayedPromise: () => (/* binding */ it),\n/* harmony export */ createExpiringPromise: () => (/* binding */ ct),\n/* harmony export */ decodeTypeByte: () => (/* binding */ j),\n/* harmony export */ decrypt: () => (/* binding */ Ln),\n/* harmony export */ deriveSymKey: () => (/* binding */ kn),\n/* harmony export */ deserialize: () => (/* binding */ ee),\n/* harmony export */ encodeTypeByte: () => (/* binding */ Pe),\n/* harmony export */ encrypt: () => (/* binding */ Kn),\n/* harmony export */ engineEvent: () => (/* binding */ pt),\n/* harmony export */ enumify: () => (/* binding */ ot),\n/* harmony export */ formatAccountId: () => (/* binding */ Ee),\n/* harmony export */ formatAccountWithChain: () => (/* binding */ Pn),\n/* harmony export */ formatChainId: () => (/* binding */ ve),\n/* harmony export */ formatExpirerTarget: () => (/* binding */ re),\n/* harmony export */ formatIdTarget: () => (/* binding */ ut),\n/* harmony export */ formatMessage: () => (/* binding */ Cn),\n/* harmony export */ formatMessageContext: () => (/* binding */ et),\n/* harmony export */ formatRelayParams: () => (/* binding */ We),\n/* harmony export */ formatRelayRpcUrl: () => (/* binding */ Qn),\n/* harmony export */ formatTopicTarget: () => (/* binding */ at),\n/* harmony export */ formatUA: () => (/* binding */ Me),\n/* harmony export */ formatUri: () => (/* binding */ Ot),\n/* harmony export */ generateKeyPair: () => (/* binding */ jn),\n/* harmony export */ generateRandomBytes32: () => (/* binding */ Dn),\n/* harmony export */ getAccountsChains: () => (/* binding */ A),\n/* harmony export */ getAccountsFromNamespaces: () => (/* binding */ Rn),\n/* harmony export */ getAddressFromAccount: () => (/* binding */ be),\n/* harmony export */ getAddressesFromAccounts: () => (/* binding */ Tn),\n/* harmony export */ getAppMetadata: () => (/* binding */ Yn),\n/* harmony export */ getBrowserOnlineStatus: () => (/* binding */ dn),\n/* harmony export */ getBundleId: () => (/* binding */ zn),\n/* harmony export */ getChainFromAccount: () => (/* binding */ Ne),\n/* harmony export */ getChainsFromAccounts: () => (/* binding */ Oe),\n/* harmony export */ getChainsFromNamespace: () => (/* binding */ K),\n/* harmony export */ getChainsFromNamespaces: () => (/* binding */ An),\n/* harmony export */ getChainsFromRequiredNamespaces: () => (/* binding */ Un),\n/* harmony export */ getDidAddress: () => (/* binding */ we),\n/* harmony export */ getDidAddressSegments: () => (/* binding */ L),\n/* harmony export */ getDidChainId: () => (/* binding */ Se),\n/* harmony export */ getEnvironment: () => (/* binding */ R),\n/* harmony export */ getHttpUrl: () => (/* binding */ Zn),\n/* harmony export */ getInternalError: () => (/* binding */ N),\n/* harmony export */ getJavascriptID: () => (/* binding */ Ve),\n/* harmony export */ getJavascriptOS: () => (/* binding */ ke),\n/* harmony export */ getLastItems: () => (/* binding */ Le),\n/* harmony export */ getNamespacedDidChainId: () => (/* binding */ _n),\n/* harmony export */ getNamespacesChains: () => (/* binding */ Je),\n/* harmony export */ getNamespacesEventsForChainId: () => (/* binding */ Ze),\n/* harmony export */ getNamespacesMethodsForChainId: () => (/* binding */ Qe),\n/* harmony export */ getNodeOnlineStatus: () => (/* binding */ pn),\n/* harmony export */ getReactNativeOnlineStatus: () => (/* binding */ fn),\n/* harmony export */ getRelayClientMetadata: () => (/* binding */ Jn),\n/* harmony export */ getRelayProtocolApi: () => (/* binding */ ht),\n/* harmony export */ getRelayProtocolName: () => (/* binding */ yt),\n/* harmony export */ getRequiredNamespacesFromNamespaces: () => (/* binding */ Ut),\n/* harmony export */ getSdkError: () => (/* binding */ U),\n/* harmony export */ getUniqueValues: () => (/* binding */ Y),\n/* harmony export */ handleDeeplinkRedirect: () => (/* binding */ mt),\n/* harmony export */ hasOverlap: () => (/* binding */ O),\n/* harmony export */ hashKey: () => (/* binding */ Vn),\n/* harmony export */ hashMessage: () => (/* binding */ Mn),\n/* harmony export */ isBrowser: () => (/* binding */ q),\n/* harmony export */ isCaipNamespace: () => (/* binding */ oe),\n/* harmony export */ isConformingNamespaces: () => (/* binding */ un),\n/* harmony export */ isExpired: () => (/* binding */ ft),\n/* harmony export */ isNode: () => (/* binding */ te),\n/* harmony export */ isOnline: () => (/* binding */ Xt),\n/* harmony export */ isProposalStruct: () => (/* binding */ kt),\n/* harmony export */ isReactNative: () => (/* binding */ C),\n/* harmony export */ isSessionCompatible: () => (/* binding */ jt),\n/* harmony export */ isSessionStruct: () => (/* binding */ Vt),\n/* harmony export */ isTypeOneEnvelope: () => (/* binding */ Fn),\n/* harmony export */ isUndefined: () => (/* binding */ w),\n/* harmony export */ isValidAccountId: () => (/* binding */ en),\n/* harmony export */ isValidAccounts: () => (/* binding */ rn),\n/* harmony export */ isValidActions: () => (/* binding */ sn),\n/* harmony export */ isValidArray: () => (/* binding */ D),\n/* harmony export */ isValidChainId: () => (/* binding */ k),\n/* harmony export */ isValidChains: () => (/* binding */ nn),\n/* harmony export */ isValidController: () => (/* binding */ Mt),\n/* harmony export */ isValidErrorReason: () => (/* binding */ Ht),\n/* harmony export */ isValidEvent: () => (/* binding */ Gt),\n/* harmony export */ isValidId: () => (/* binding */ xt),\n/* harmony export */ isValidNamespaceAccounts: () => (/* binding */ on),\n/* harmony export */ isValidNamespaceActions: () => (/* binding */ ce),\n/* harmony export */ isValidNamespaceChains: () => (/* binding */ tn),\n/* harmony export */ isValidNamespaceMethodsOrEvents: () => (/* binding */ ie),\n/* harmony export */ isValidNamespaces: () => (/* binding */ cn),\n/* harmony export */ isValidNamespacesChainId: () => (/* binding */ Wt),\n/* harmony export */ isValidNamespacesEvent: () => (/* binding */ Yt),\n/* harmony export */ isValidNamespacesRequest: () => (/* binding */ zt),\n/* harmony export */ isValidNumber: () => (/* binding */ G),\n/* harmony export */ isValidObject: () => (/* binding */ B),\n/* harmony export */ isValidParams: () => (/* binding */ Ft),\n/* harmony export */ isValidRelay: () => (/* binding */ an),\n/* harmony export */ isValidRelays: () => (/* binding */ Lt),\n/* harmony export */ isValidRequest: () => (/* binding */ qt),\n/* harmony export */ isValidRequestExpiry: () => (/* binding */ Zt),\n/* harmony export */ isValidRequiredNamespaces: () => (/* binding */ Kt),\n/* harmony export */ isValidResponse: () => (/* binding */ Bt),\n/* harmony export */ isValidString: () => (/* binding */ h),\n/* harmony export */ isValidUrl: () => (/* binding */ Dt),\n/* harmony export */ mapEntries: () => (/* binding */ rt),\n/* harmony export */ mapToObj: () => (/* binding */ nt),\n/* harmony export */ mergeArrays: () => (/* binding */ S),\n/* harmony export */ normalizeNamespaces: () => (/* binding */ se),\n/* harmony export */ objToMap: () => (/* binding */ tt),\n/* harmony export */ parseAccountId: () => (/* binding */ z),\n/* harmony export */ parseChainId: () => (/* binding */ ge),\n/* harmony export */ parseContextNames: () => (/* binding */ Ke),\n/* harmony export */ parseExpirerTarget: () => (/* binding */ lt),\n/* harmony export */ parseNamespaceKey: () => (/* binding */ Xe),\n/* harmony export */ parseRelayParams: () => (/* binding */ Be),\n/* harmony export */ parseTopic: () => (/* binding */ Ge),\n/* harmony export */ parseUri: () => (/* binding */ Nt),\n/* harmony export */ serialize: () => (/* binding */ Te),\n/* harmony export */ subscribeToBrowserNetworkChange: () => (/* binding */ mn),\n/* harmony export */ subscribeToNetworkChange: () => (/* binding */ er),\n/* harmony export */ subscribeToReactNativeNetworkChange: () => (/* binding */ yn),\n/* harmony export */ validateDecoding: () => (/* binding */ xn),\n/* harmony export */ validateEncoding: () => (/* binding */ Re)\n/* harmony export */ });\n/* harmony import */ var _stablelib_chacha20poly1305__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @stablelib/chacha20poly1305 */ \"./node_modules/@stablelib/chacha20poly1305/lib/chacha20poly1305.js\");\n/* harmony import */ var _stablelib_hkdf__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @stablelib/hkdf */ \"./node_modules/@stablelib/hkdf/lib/hkdf.js\");\n/* harmony import */ var _stablelib_random__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @stablelib/random */ \"./node_modules/@stablelib/random/lib/random.js\");\n/* harmony import */ var _stablelib_sha256__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @stablelib/sha256 */ \"./node_modules/@stablelib/sha256/lib/sha256.js\");\n/* harmony import */ var _stablelib_x25519__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @stablelib/x25519 */ \"./node_modules/@stablelib/x25519/lib/x25519.js\");\n/* harmony import */ var uint8arrays__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! uint8arrays */ \"./node_modules/uint8arrays/esm/src/index.js\");\n/* harmony import */ var detect_browser__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! detect-browser */ \"./node_modules/detect-browser/es/index.js\");\n/* harmony import */ var _walletconnect_time__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @walletconnect/time */ \"./node_modules/@walletconnect/time/dist/cjs/index.js\");\n/* harmony import */ var _walletconnect_time__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_walletconnect_time__WEBPACK_IMPORTED_MODULE_6__);\n/* harmony import */ var _walletconnect_window_getters__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @walletconnect/window-getters */ \"./node_modules/@walletconnect/window-getters/dist/cjs/index.js\");\n/* harmony import */ var _walletconnect_window_metadata__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @walletconnect/window-metadata */ \"./node_modules/@walletconnect/window-metadata/dist/cjs/index.js\");\n/* harmony import */ var query_string__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! query-string */ \"./node_modules/query-string/index.js\");\n/* harmony import */ var _walletconnect_relay_api__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @walletconnect/relay-api */ \"./node_modules/@walletconnect/relay-api/dist/esm/index.js\");\nconst M=\":\";function ge(e){const[n,t]=e.split(M);return{namespace:n,reference:t}}function ve(e){const{namespace:n,reference:t}=e;return[n,t].join(M)}function z(e){const[n,t,r]=e.split(M);return{namespace:n,reference:t,address:r}}function Ee(e){const{namespace:n,reference:t,address:r}=e;return[n,t,r].join(M)}function Y(e,n){const t=[];return e.forEach(r=>{const o=n(r);t.includes(o)||t.push(o)}),t}function be(e){const{address:n}=z(e);return n}function Ne(e){const{namespace:n,reference:t}=z(e);return ve({namespace:n,reference:t})}function Pn(e,n){const{namespace:t,reference:r}=ge(n);return Ee({namespace:t,reference:r,address:e})}function Tn(e){return Y(e,be)}function Oe(e){return Y(e,Ne)}function Rn(e,n=[]){const t=[];return Object.keys(e).forEach(r=>{if(n.length&&!n.includes(r))return;const o=e[r];t.push(...o.accounts)}),t}function An(e,n=[]){const t=[];return Object.keys(e).forEach(r=>{if(n.length&&!n.includes(r))return;const o=e[r];t.push(...Oe(o.accounts))}),t}function Un(e,n=[]){const t=[];return Object.keys(e).forEach(r=>{if(n.length&&!n.includes(r))return;const o=e[r];t.push(...K(r,o))}),t}function K(e,n){return e.includes(\":\")?[e]:n.chains||[]}const L=e=>e?.split(\":\"),Se=e=>{const n=e&&L(e);if(n)return n[3]},_n=e=>{const n=e&&L(e);if(n)return n[2]+\":\"+n[3]},we=e=>{const n=e&&L(e);if(n)return n.pop()},Cn=(e,n)=>{const t=`${e.domain} wants you to sign in with your Ethereum account:`,r=we(n),o=e.statement,s=`URI: ${e.aud}`,i=`Version: ${e.version}`,d=`Chain ID: ${Se(n)}`,l=`Nonce: ${e.nonce}`,c=`Issued At: ${e.iat}`,u=e.resources&&e.resources.length>0?`Resources:\n${e.resources.map(a=>`- ${a}`).join(`\n`)}`:void 0;return[t,r,\"\",o,\"\",s,i,d,l,c,u].filter(a=>a!=null).join(`\n`)},J=\"base10\",p=\"base16\",x=\"base64pad\",F=\"utf8\",Q=0,_=1,$n=0,Ie=1,Z=12,X=32;function jn(){const e=_stablelib_x25519__WEBPACK_IMPORTED_MODULE_4__.generateKeyPair();return{privateKey:(0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.toString)(e.secretKey,p),publicKey:(0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.toString)(e.publicKey,p)}}function Dn(){const e=(0,_stablelib_random__WEBPACK_IMPORTED_MODULE_2__.randomBytes)(X);return (0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.toString)(e,p)}function kn(e,n){const t=_stablelib_x25519__WEBPACK_IMPORTED_MODULE_4__.sharedKey((0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.fromString)(e,p),(0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.fromString)(n,p),!0),r=new _stablelib_hkdf__WEBPACK_IMPORTED_MODULE_1__.HKDF(_stablelib_sha256__WEBPACK_IMPORTED_MODULE_3__.SHA256,t).expand(X);return (0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.toString)(r,p)}function Vn(e){const n=(0,_stablelib_sha256__WEBPACK_IMPORTED_MODULE_3__.hash)((0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.fromString)(e,p));return (0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.toString)(n,p)}function Mn(e){const n=(0,_stablelib_sha256__WEBPACK_IMPORTED_MODULE_3__.hash)((0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.fromString)(e,F));return (0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.toString)(n,p)}function Pe(e){return (0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.fromString)(`${e}`,J)}function j(e){return Number((0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.toString)(e,J))}function Kn(e){const n=Pe(typeof e.type<\"u\"?e.type:Q);if(j(n)===_&&typeof e.senderPublicKey>\"u\")throw new Error(\"Missing sender public key for type 1 envelope\");const t=typeof e.senderPublicKey<\"u\"?(0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.fromString)(e.senderPublicKey,p):void 0,r=typeof e.iv<\"u\"?(0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.fromString)(e.iv,p):(0,_stablelib_random__WEBPACK_IMPORTED_MODULE_2__.randomBytes)(Z),o=new _stablelib_chacha20poly1305__WEBPACK_IMPORTED_MODULE_0__.ChaCha20Poly1305((0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.fromString)(e.symKey,p)).seal(r,(0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.fromString)(e.message,F));return Te({type:n,sealed:o,iv:r,senderPublicKey:t})}function Ln(e){const n=new _stablelib_chacha20poly1305__WEBPACK_IMPORTED_MODULE_0__.ChaCha20Poly1305((0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.fromString)(e.symKey,p)),{sealed:t,iv:r}=ee(e.encoded),o=n.open(r,t);if(o===null)throw new Error(\"Failed to decrypt\");return (0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.toString)(o,F)}function Te(e){if(j(e.type)===_){if(typeof e.senderPublicKey>\"u\")throw new Error(\"Missing sender public key for type 1 envelope\");return (0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.toString)((0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.concat)([e.type,e.senderPublicKey,e.iv,e.sealed]),x)}return (0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.toString)((0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.concat)([e.type,e.iv,e.sealed]),x)}function ee(e){const n=(0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.fromString)(e,x),t=n.slice($n,Ie),r=Ie;if(j(t)===_){const d=r+X,l=d+Z,c=n.slice(r,d),u=n.slice(d,l),a=n.slice(l);return{type:t,sealed:a,iv:u,senderPublicKey:c}}const o=r+Z,s=n.slice(r,o),i=n.slice(o);return{type:t,sealed:i,iv:s}}function xn(e,n){const t=ee(e);return Re({type:j(t.type),senderPublicKey:typeof t.senderPublicKey<\"u\"?(0,uint8arrays__WEBPACK_IMPORTED_MODULE_5__.toString)(t.senderPublicKey,p):void 0,receiverPublicKey:n?.receiverPublicKey})}function Re(e){const n=e?.type||Q;if(n===_){if(typeof e?.senderPublicKey>\"u\")throw new Error(\"missing sender public key\");if(typeof e?.receiverPublicKey>\"u\")throw new Error(\"missing receiver public key\")}return{type:n,senderPublicKey:e?.senderPublicKey,receiverPublicKey:e?.receiverPublicKey}}function Fn(e){return e.type===_&&typeof e.senderPublicKey==\"string\"&&typeof e.receiverPublicKey==\"string\"}var Hn=Object.defineProperty,Ae=Object.getOwnPropertySymbols,qn=Object.prototype.hasOwnProperty,Bn=Object.prototype.propertyIsEnumerable,Ue=(e,n,t)=>n in e?Hn(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,_e=(e,n)=>{for(var t in n||(n={}))qn.call(n,t)&&Ue(e,t,n[t]);if(Ae)for(var t of Ae(n))Bn.call(n,t)&&Ue(e,t,n[t]);return e};const Ce=\"ReactNative\",m={reactNative:\"react-native\",node:\"node\",browser:\"browser\",unknown:\"unknown\"},H=\" \",Gn=\":\",$e=\"/\",ne=2,Wn=1e3,je=\"js\";function te(){return typeof process<\"u\"&&typeof process.versions<\"u\"&&typeof process.versions.node<\"u\"}function C(){return!(0,_walletconnect_window_getters__WEBPACK_IMPORTED_MODULE_7__.getDocument)()&&!!(0,_walletconnect_window_getters__WEBPACK_IMPORTED_MODULE_7__.getNavigator)()&&navigator.product===Ce}function q(){return!te()&&!!(0,_walletconnect_window_getters__WEBPACK_IMPORTED_MODULE_7__.getNavigator)()}function R(){return C()?m.reactNative:te()?m.node:q()?m.browser:m.unknown}function zn(){var e;try{return C()&&typeof __webpack_require__.g<\"u\"&&typeof(__webpack_require__.g==null?void 0:__webpack_require__.g.Application)<\"u\"?(e=__webpack_require__.g.Application)==null?void 0:e.applicationId:void 0}catch{return}}function De(e,n){let t=query_string__WEBPACK_IMPORTED_MODULE_9__.parse(e);return t=_e(_e({},t),n),e=query_string__WEBPACK_IMPORTED_MODULE_9__.stringify(t),e}function Yn(){return (0,_walletconnect_window_metadata__WEBPACK_IMPORTED_MODULE_8__.getWindowMetadata)()||{name:\"\",description:\"\",url:\"\",icons:[\"\"]}}function Jn(e,n){var t;const r=R(),o={protocol:e,version:n,env:r};return r===\"browser\"&&(o.host=((t=(0,_walletconnect_window_getters__WEBPACK_IMPORTED_MODULE_7__.getLocation)())==null?void 0:t.host)||\"unknown\"),o}function ke(){if(R()===m.reactNative&&typeof __webpack_require__.g<\"u\"&&typeof(__webpack_require__.g==null?void 0:__webpack_require__.g.Platform)<\"u\"){const{OS:t,Version:r}=__webpack_require__.g.Platform;return[t,r].join(\"-\")}const e=(0,detect_browser__WEBPACK_IMPORTED_MODULE_11__.detect)();if(e===null)return\"unknown\";const n=e.os?e.os.replace(\" \",\"\").toLowerCase():\"unknown\";return e.type===\"browser\"?[n,e.name,e.version].join(\"-\"):[n,e.version].join(\"-\")}function Ve(){var e;const n=R();return n===m.browser?[n,((e=(0,_walletconnect_window_getters__WEBPACK_IMPORTED_MODULE_7__.getLocation)())==null?void 0:e.host)||\"unknown\"].join(\":\"):n}function Me(e,n,t){const r=ke(),o=Ve();return[[e,n].join(\"-\"),[je,t].join(\"-\"),r,o].join(\"/\")}function Qn({protocol:e,version:n,relayUrl:t,sdkVersion:r,auth:o,projectId:s,useOnCloseEvent:i,bundleId:d}){const l=t.split(\"?\"),c=Me(e,n,r),u={auth:o,ua:c,projectId:s,useOnCloseEvent:i||void 0,origin:d||void 0},a=De(l[1]||\"\",u);return l[0]+\"?\"+a}function Zn(e){let n=(e.match(/^[^:]+(?=:\\/\\/)/gi)||[])[0];const t=typeof n<\"u\"?e.split(\"://\")[1]:e;return n=n===\"wss\"?\"https\":\"http\",[n,t].join(\"://\")}function Xn(e,n,t){if(!e[n]||typeof e[n]!==t)throw new Error(`Missing or invalid \"${n}\" param`)}function Ke(e,n=ne){return Le(e.split($e),n)}function et(e){return Ke(e).join(H)}function O(e,n){return e.filter(t=>n.includes(t)).length===e.length}function Le(e,n=ne){return e.slice(Math.max(e.length-n,0))}function nt(e){return Object.fromEntries(e.entries())}function tt(e){return new Map(Object.entries(e))}function rt(e,n){const t={};return Object.keys(e).forEach(r=>{t[r]=n(e[r])}),t}const ot=e=>e;function xe(e){return e.trim().replace(/^\\w/,n=>n.toUpperCase())}function st(e){return e.split(H).map(n=>xe(n)).join(H)}function it(e=_walletconnect_time__WEBPACK_IMPORTED_MODULE_6__.FIVE_MINUTES,n){const t=(0,_walletconnect_time__WEBPACK_IMPORTED_MODULE_6__.toMiliseconds)(e||_walletconnect_time__WEBPACK_IMPORTED_MODULE_6__.FIVE_MINUTES);let r,o,s;return{resolve:i=>{s&&r&&(clearTimeout(s),r(i))},reject:i=>{s&&o&&(clearTimeout(s),o(i))},done:()=>new Promise((i,d)=>{s=setTimeout(()=>{d(new Error(n))},t),r=i,o=d})}}function ct(e,n,t){return new Promise(async(r,o)=>{const s=setTimeout(()=>o(new Error(t)),n);try{const i=await e;r(i)}catch(i){o(i)}clearTimeout(s)})}function re(e,n){if(typeof n==\"string\"&&n.startsWith(`${e}:`))return n;if(e.toLowerCase()===\"topic\"){if(typeof n!=\"string\")throw new Error('Value must be \"string\" for expirer target type: topic');return`topic:${n}`}else if(e.toLowerCase()===\"id\"){if(typeof n!=\"number\")throw new Error('Value must be \"number\" for expirer target type: id');return`id:${n}`}throw new Error(`Unknown expirer target type: ${e}`)}function at(e){return re(\"topic\",e)}function ut(e){return re(\"id\",e)}function lt(e){const[n,t]=e.split(\":\"),r={id:void 0,topic:void 0};if(n===\"topic\"&&typeof t==\"string\")r.topic=t;else if(n===\"id\"&&Number.isInteger(Number(t)))r.id=Number(t);else throw new Error(`Invalid target, expected id:number or topic:string, got ${n}:${t}`);return r}function dt(e,n){return (0,_walletconnect_time__WEBPACK_IMPORTED_MODULE_6__.fromMiliseconds)((n||Date.now())+(0,_walletconnect_time__WEBPACK_IMPORTED_MODULE_6__.toMiliseconds)(e))}function ft(e){return Date.now()>=(0,_walletconnect_time__WEBPACK_IMPORTED_MODULE_6__.toMiliseconds)(e)}function pt(e,n){return`${e}${n?`:${n}`:\"\"}`}function S(e=[],n=[]){return[...new Set([...e,...n])]}async function mt({id:e,topic:n,wcDeepLink:t}){try{if(!t)return;const r=typeof t==\"string\"?JSON.parse(t):t;let o=r?.href;if(typeof o!=\"string\")return;o.endsWith(\"/\")&&(o=o.slice(0,-1));const s=`${o}/wc?requestId=${e}&sessionTopic=${n}`,i=R();i===m.browser?s.startsWith(\"https://\")?window.open(s,\"_blank\",\"noreferrer noopener\"):window.open(s,\"_self\",\"noreferrer noopener\"):i===m.reactNative&&typeof(__webpack_require__.g==null?void 0:__webpack_require__.g.Linking)<\"u\"&&await __webpack_require__.g.Linking.openURL(s)}catch(r){console.error(r)}}const Fe=\"irn\";function yt(e){return e?.relay||{protocol:Fe}}function ht(e){const n=_walletconnect_relay_api__WEBPACK_IMPORTED_MODULE_10__.RELAY_JSONRPC[e];if(typeof n>\"u\")throw new Error(`Relay Protocol not supported: ${e}`);return n}var gt=Object.defineProperty,He=Object.getOwnPropertySymbols,vt=Object.prototype.hasOwnProperty,Et=Object.prototype.propertyIsEnumerable,qe=(e,n,t)=>n in e?gt(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,bt=(e,n)=>{for(var t in n||(n={}))vt.call(n,t)&&qe(e,t,n[t]);if(He)for(var t of He(n))Et.call(n,t)&&qe(e,t,n[t]);return e};function Be(e,n=\"-\"){const t={},r=\"relay\"+n;return Object.keys(e).forEach(o=>{if(o.startsWith(r)){const s=o.replace(r,\"\"),i=e[o];t[s]=i}}),t}function Nt(e){e=e.includes(\"wc://\")?e.replace(\"wc://\",\"\"):e,e=e.includes(\"wc:\")?e.replace(\"wc:\",\"\"):e;const n=e.indexOf(\":\"),t=e.indexOf(\"?\")!==-1?e.indexOf(\"?\"):void 0,r=e.substring(0,n),o=e.substring(n+1,t).split(\"@\"),s=typeof t<\"u\"?e.substring(t):\"\",i=query_string__WEBPACK_IMPORTED_MODULE_9__.parse(s);return{protocol:r,topic:Ge(o[0]),version:parseInt(o[1],10),symKey:i.symKey,relay:Be(i)}}function Ge(e){return e.startsWith(\"//\")?e.substring(2):e}function We(e,n=\"-\"){const t=\"relay\",r={};return Object.keys(e).forEach(o=>{const s=t+n+o;e[o]&&(r[s]=e[o])}),r}function Ot(e){return`${e.protocol}:${e.topic}@${e.version}?`+query_string__WEBPACK_IMPORTED_MODULE_9__.stringify(bt({symKey:e.symKey},We(e.relay)))}var St=Object.defineProperty,wt=Object.defineProperties,It=Object.getOwnPropertyDescriptors,ze=Object.getOwnPropertySymbols,Pt=Object.prototype.hasOwnProperty,Tt=Object.prototype.propertyIsEnumerable,Ye=(e,n,t)=>n in e?St(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,Rt=(e,n)=>{for(var t in n||(n={}))Pt.call(n,t)&&Ye(e,t,n[t]);if(ze)for(var t of ze(n))Tt.call(n,t)&&Ye(e,t,n[t]);return e},At=(e,n)=>wt(e,It(n));function A(e){const n=[];return e.forEach(t=>{const[r,o]=t.split(\":\");n.push(`${r}:${o}`)}),n}function Je(e){const n=[];return Object.values(e).forEach(t=>{n.push(...A(t.accounts))}),n}function Qe(e,n){const t=[];return Object.values(e).forEach(r=>{A(r.accounts).includes(n)&&t.push(...r.methods)}),t}function Ze(e,n){const t=[];return Object.values(e).forEach(r=>{A(r.accounts).includes(n)&&t.push(...r.events)}),t}function Ut(e,n){const t=cn(e,n);if(t)throw new Error(t.message);const r={};for(const[o,s]of Object.entries(e))r[o]={methods:s.methods,events:s.events,chains:s.accounts.map(i=>`${i.split(\":\")[0]}:${i.split(\":\")[1]}`)};return r}function _t(e){const{proposal:{requiredNamespaces:n,optionalNamespaces:t={}},supportedNamespaces:r}=e,o=se(n),s=se(t),i={};Object.keys(r).forEach(c=>{const u=r[c].chains,a=r[c].methods,b=r[c].events,I=r[c].accounts;u.forEach(y=>{if(!I.some(f=>f.includes(y)))throw new Error(`No accounts provided for chain ${y} in namespace ${c}`)}),i[c]={chains:u,methods:a,events:b,accounts:I}});const d=un(n,i,\"approve()\");if(d)throw new Error(d.message);const l={};return!Object.keys(n).length&&!Object.keys(t).length?i:(Object.keys(o).forEach(c=>{const u=r[c].chains.filter(y=>{var f,g;return(g=(f=o[c])==null?void 0:f.chains)==null?void 0:g.includes(y)}),a=r[c].methods.filter(y=>{var f,g;return(g=(f=o[c])==null?void 0:f.methods)==null?void 0:g.includes(y)}),b=r[c].events.filter(y=>{var f,g;return(g=(f=o[c])==null?void 0:f.events)==null?void 0:g.includes(y)}),I=u.map(y=>r[c].accounts.filter(f=>f.includes(`${y}:`))).flat();l[c]={chains:u,methods:a,events:b,accounts:I}}),Object.keys(s).forEach(c=>{var u,a,b,I,y,f;if(!r[c])return;const g=(a=(u=s[c])==null?void 0:u.chains)==null?void 0:a.filter(P=>r[c].chains.includes(P)),hn=r[c].methods.filter(P=>{var T,$;return($=(T=s[c])==null?void 0:T.methods)==null?void 0:$.includes(P)}),gn=r[c].events.filter(P=>{var T,$;return($=(T=s[c])==null?void 0:T.events)==null?void 0:$.includes(P)}),vn=g?.map(P=>r[c].accounts.filter(T=>T.includes(`${P}:`))).flat();l[c]={chains:S((b=l[c])==null?void 0:b.chains,g),methods:S((I=l[c])==null?void 0:I.methods,hn),events:S((y=l[c])==null?void 0:y.events,gn),accounts:S((f=l[c])==null?void 0:f.accounts,vn)}}),l)}function oe(e){return e.includes(\":\")}function Xe(e){return oe(e)?e.split(\":\")[0]:e}function se(e){var n,t,r;const o={};if(!B(e))return o;for(const[s,i]of Object.entries(e)){const d=oe(s)?[s]:i.chains,l=i.methods||[],c=i.events||[],u=Xe(s);o[u]=At(Rt({},o[u]),{chains:S(d,(n=o[u])==null?void 0:n.chains),methods:S(l,(t=o[u])==null?void 0:t.methods),events:S(c,(r=o[u])==null?void 0:r.events)})}return o}const Ct={INVALID_METHOD:{message:\"Invalid method.\",code:1001},INVALID_EVENT:{message:\"Invalid event.\",code:1002},INVALID_UPDATE_REQUEST:{message:\"Invalid update request.\",code:1003},INVALID_EXTEND_REQUEST:{message:\"Invalid extend request.\",code:1004},INVALID_SESSION_SETTLE_REQUEST:{message:\"Invalid session settle request.\",code:1005},UNAUTHORIZED_METHOD:{message:\"Unauthorized method.\",code:3001},UNAUTHORIZED_EVENT:{message:\"Unauthorized event.\",code:3002},UNAUTHORIZED_UPDATE_REQUEST:{message:\"Unauthorized update request.\",code:3003},UNAUTHORIZED_EXTEND_REQUEST:{message:\"Unauthorized extend request.\",code:3004},USER_REJECTED:{message:\"User rejected.\",code:5e3},USER_REJECTED_CHAINS:{message:\"User rejected chains.\",code:5001},USER_REJECTED_METHODS:{message:\"User rejected methods.\",code:5002},USER_REJECTED_EVENTS:{message:\"User rejected events.\",code:5003},UNSUPPORTED_CHAINS:{message:\"Unsupported chains.\",code:5100},UNSUPPORTED_METHODS:{message:\"Unsupported methods.\",code:5101},UNSUPPORTED_EVENTS:{message:\"Unsupported events.\",code:5102},UNSUPPORTED_ACCOUNTS:{message:\"Unsupported accounts.\",code:5103},UNSUPPORTED_NAMESPACE_KEY:{message:\"Unsupported namespace key.\",code:5104},USER_DISCONNECTED:{message:\"User disconnected.\",code:6e3},SESSION_SETTLEMENT_FAILED:{message:\"Session settlement failed.\",code:7e3},WC_METHOD_UNSUPPORTED:{message:\"Unsupported wc_ method.\",code:10001}},$t={NOT_INITIALIZED:{message:\"Not initialized.\",code:1},NO_MATCHING_KEY:{message:\"No matching key.\",code:2},RESTORE_WILL_OVERRIDE:{message:\"Restore will override.\",code:3},RESUBSCRIBED:{message:\"Resubscribed.\",code:4},MISSING_OR_INVALID:{message:\"Missing or invalid.\",code:5},EXPIRED:{message:\"Expired.\",code:6},UNKNOWN_TYPE:{message:\"Unknown type.\",code:7},MISMATCHED_TOPIC:{message:\"Mismatched topic.\",code:8},NON_CONFORMING_NAMESPACES:{message:\"Non conforming namespaces.\",code:9}};function N(e,n){const{message:t,code:r}=$t[e];return{message:n?`${t} ${n}`:t,code:r}}function U(e,n){const{message:t,code:r}=Ct[e];return{message:n?`${t} ${n}`:t,code:r}}function D(e,n){return Array.isArray(e)?typeof n<\"u\"&&e.length?e.every(n):!0:!1}function B(e){return Object.getPrototypeOf(e)===Object.prototype&&Object.keys(e).length}function w(e){return typeof e>\"u\"}function h(e,n){return n&&w(e)?!0:typeof e==\"string\"&&!!e.trim().length}function G(e,n){return n&&w(e)?!0:typeof e==\"number\"&&!isNaN(e)}function jt(e,n){const{requiredNamespaces:t}=n,r=Object.keys(e.namespaces),o=Object.keys(t);let s=!0;return O(o,r)?(r.forEach(i=>{const{accounts:d,methods:l,events:c}=e.namespaces[i],u=A(d),a=t[i];(!O(K(i,a),u)||!O(a.methods,l)||!O(a.events,c))&&(s=!1)}),s):!1}function k(e){return h(e,!1)&&e.includes(\":\")?e.split(\":\").length===2:!1}function en(e){if(h(e,!1)&&e.includes(\":\")){const n=e.split(\":\");if(n.length===3){const t=n[0]+\":\"+n[1];return!!n[2]&&k(t)}}return!1}function Dt(e){if(h(e,!1))try{return typeof new URL(e)<\"u\"}catch{return!1}return!1}function kt(e){var n;return(n=e?.proposer)==null?void 0:n.publicKey}function Vt(e){return e?.topic}function Mt(e,n){let t=null;return h(e?.publicKey,!1)||(t=N(\"MISSING_OR_INVALID\",`${n} controller public key should be a string`)),t}function ie(e){let n=!0;return D(e)?e.length&&(n=e.every(t=>h(t,!1))):n=!1,n}function nn(e,n,t){let r=null;return D(n)&&n.length?n.forEach(o=>{r||k(o)||(r=U(\"UNSUPPORTED_CHAINS\",`${t}, chain ${o} should be a string and conform to \"namespace:chainId\" format`))}):k(e)||(r=U(\"UNSUPPORTED_CHAINS\",`${t}, chains must be defined as \"namespace:chainId\" e.g. \"eip155:1\": {...} in the namespace key OR as an array of CAIP-2 chainIds e.g. eip155: { chains: [\"eip155:1\", \"eip155:5\"] }`)),r}function tn(e,n,t){let r=null;return Object.entries(e).forEach(([o,s])=>{if(r)return;const i=nn(o,K(o,s),`${n} ${t}`);i&&(r=i)}),r}function rn(e,n){let t=null;return D(e)?e.forEach(r=>{t||en(r)||(t=U(\"UNSUPPORTED_ACCOUNTS\",`${n}, account ${r} should be a string and conform to \"namespace:chainId:address\" format`))}):t=U(\"UNSUPPORTED_ACCOUNTS\",`${n}, accounts should be an array of strings conforming to \"namespace:chainId:address\" format`),t}function on(e,n){let t=null;return Object.values(e).forEach(r=>{if(t)return;const o=rn(r?.accounts,`${n} namespace`);o&&(t=o)}),t}function sn(e,n){let t=null;return ie(e?.methods)?ie(e?.events)||(t=U(\"UNSUPPORTED_EVENTS\",`${n}, events should be an array of strings or empty array for no events`)):t=U(\"UNSUPPORTED_METHODS\",`${n}, methods should be an array of strings or empty array for no methods`),t}function ce(e,n){let t=null;return Object.values(e).forEach(r=>{if(t)return;const o=sn(r,`${n}, namespace`);o&&(t=o)}),t}function Kt(e,n,t){let r=null;if(e&&B(e)){const o=ce(e,n);o&&(r=o);const s=tn(e,n,t);s&&(r=s)}else r=N(\"MISSING_OR_INVALID\",`${n}, ${t} should be an object with data`);return r}function cn(e,n){let t=null;if(e&&B(e)){const r=ce(e,n);r&&(t=r);const o=on(e,n);o&&(t=o)}else t=N(\"MISSING_OR_INVALID\",`${n}, namespaces should be an object with data`);return t}function an(e){return h(e.protocol,!0)}function Lt(e,n){let t=!1;return n&&!e?t=!0:e&&D(e)&&e.length&&e.forEach(r=>{t=an(r)}),t}function xt(e){return typeof e==\"number\"}function Ft(e){return typeof e<\"u\"&&typeof e!==null}function Ht(e){return!(!e||typeof e!=\"object\"||!e.code||!G(e.code,!1)||!e.message||!h(e.message,!1))}function qt(e){return!(w(e)||!h(e.method,!1))}function Bt(e){return!(w(e)||w(e.result)&&w(e.error)||!G(e.id,!1)||!h(e.jsonrpc,!1))}function Gt(e){return!(w(e)||!h(e.name,!1))}function Wt(e,n){return!(!k(n)||!Je(e).includes(n))}function zt(e,n,t){return h(t,!1)?Qe(e,n).includes(t):!1}function Yt(e,n,t){return h(t,!1)?Ze(e,n).includes(t):!1}function un(e,n,t){let r=null;const o=Jt(e),s=Qt(n),i=Object.keys(o),d=Object.keys(s),l=ln(Object.keys(e)),c=ln(Object.keys(n)),u=l.filter(a=>!c.includes(a));return u.length&&(r=N(\"NON_CONFORMING_NAMESPACES\",`${t} namespaces keys don't satisfy requiredNamespaces.\n Required: ${u.toString()}\n Received: ${Object.keys(n).toString()}`)),O(i,d)||(r=N(\"NON_CONFORMING_NAMESPACES\",`${t} namespaces chains don't satisfy required namespaces.\n Required: ${i.toString()}\n Approved: ${d.toString()}`)),Object.keys(n).forEach(a=>{if(!a.includes(\":\")||r)return;const b=A(n[a].accounts);b.includes(a)||(r=N(\"NON_CONFORMING_NAMESPACES\",`${t} namespaces accounts don't satisfy namespace accounts for ${a}\n Required: ${a}\n Approved: ${b.toString()}`))}),i.forEach(a=>{r||(O(o[a].methods,s[a].methods)?O(o[a].events,s[a].events)||(r=N(\"NON_CONFORMING_NAMESPACES\",`${t} namespaces events don't satisfy namespace events for ${a}`)):r=N(\"NON_CONFORMING_NAMESPACES\",`${t} namespaces methods don't satisfy namespace methods for ${a}`))}),r}function Jt(e){const n={};return Object.keys(e).forEach(t=>{var r;t.includes(\":\")?n[t]=e[t]:(r=e[t].chains)==null||r.forEach(o=>{n[o]={methods:e[t].methods,events:e[t].events}})}),n}function ln(e){return[...new Set(e.map(n=>n.includes(\":\")?n.split(\":\")[0]:n))]}function Qt(e){const n={};return Object.keys(e).forEach(t=>{if(t.includes(\":\"))n[t]=e[t];else{const r=A(e[t].accounts);r?.forEach(o=>{n[o]={accounts:e[t].accounts.filter(s=>s.includes(`${o}:`)),methods:e[t].methods,events:e[t].events}})}}),n}function Zt(e,n){return G(e,!1)&&e<=n.max&&e>=n.min}function Xt(){const e=R();return new Promise(n=>{switch(e){case m.browser:n(dn());break;case m.reactNative:n(fn());break;case m.node:n(pn());break;default:n(!0)}})}function dn(){return q()&&navigator?.onLine}async function fn(){if(C()&&typeof __webpack_require__.g<\"u\"&&__webpack_require__.g!=null&&__webpack_require__.g.NetInfo){const e=await(__webpack_require__.g==null?void 0:__webpack_require__.g.NetInfo.fetch());return e?.isConnected}return!0}function pn(){return!0}function er(e){switch(R()){case m.browser:mn(e);break;case m.reactNative:yn(e);break;case m.node:break}}function mn(e){!C()&&q()&&(window.addEventListener(\"online\",()=>e(!0)),window.addEventListener(\"offline\",()=>e(!1)))}function yn(e){C()&&typeof __webpack_require__.g<\"u\"&&__webpack_require__.g!=null&&__webpack_require__.g.NetInfo&&__webpack_require__.g?.NetInfo.addEventListener(n=>e(n?.isConnected))}const ae={};class nr{static get(n){return ae[n]}static set(n,t){ae[n]=t}static delete(n){delete ae[n]}}\n//# sourceMappingURL=index.es.js.map\n\n\n//# sourceURL=webpack://wallet_connect_integration/./node_modules/@walletconnect/utils/dist/index.es.js?"); /***/ }), @@ -1338,16 +1268,6 @@ eval("\nfunction tryStringify (o) {\n try { return JSON.stringify(o) } catch(e) /***/ }), -/***/ "./node_modules/safe-json-utils/dist/cjs/index.js": -/*!********************************************************!*\ - !*** ./node_modules/safe-json-utils/dist/cjs/index.js ***! - \********************************************************/ -/***/ ((__unused_webpack_module, exports) => { - -eval("\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\nfunction safeJsonParse(value) {\n if (typeof value !== 'string') {\n throw new Error(`Cannot safe json parse value of type ${typeof value}`);\n }\n try {\n return JSON.parse(value);\n }\n catch (_a) {\n return value;\n }\n}\nexports.safeJsonParse = safeJsonParse;\nfunction safeJsonStringify(value) {\n return typeof value === 'string'\n ? value\n : JSON.stringify(value, (key, value) => typeof value === 'undefined' ? null : value);\n}\nexports.safeJsonStringify = safeJsonStringify;\n//# sourceMappingURL=index.js.map\n\n//# sourceURL=webpack://wallet_connect_integration/./node_modules/safe-json-utils/dist/cjs/index.js?"); - -/***/ }), - /***/ "./node_modules/split-on-first/index.js": /*!**********************************************!*\ !*** ./node_modules/split-on-first/index.js ***! @@ -1388,13 +1308,23 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac /***/ }), +/***/ "./node_modules/ws/browser.js": +/*!************************************!*\ + !*** ./node_modules/ws/browser.js ***! + \************************************/ +/***/ ((module) => { + +eval("\n\nmodule.exports = function () {\n throw new Error(\n 'ws does not work in the browser. Browser clients must use the native ' +\n 'WebSocket object'\n );\n};\n\n\n//# sourceURL=webpack://wallet_connect_integration/./node_modules/ws/browser.js?"); + +/***/ }), + /***/ "./src/index.js": /*!**********************!*\ !*** ./src/index.js ***! \**********************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _walletconnect_core__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @walletconnect/core */ \"./node_modules/@walletconnect/core/dist/index.es.js\");\n/* harmony import */ var _walletconnect_web3wallet__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @walletconnect/web3wallet */ \"./node_modules/@walletconnect/web3wallet/dist/index.es.js\");\n/* harmony import */ var _walletconnect_auth_client__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @walletconnect/auth-client */ \"./node_modules/@walletconnect/auth-client/dist/index.es.js\");\n/* harmony import */ var _walletconnect_utils__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @walletconnect/utils */ \"./node_modules/@walletconnect/utils/dist/index.es.js\");\n/* harmony import */ var _walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @walletconnect/jsonrpc-utils */ \"./node_modules/@walletconnect/jsonrpc-utils/dist/esm/index.js\");\n\n\n\n\n\n// import the builder util\n\n\n\nwindow.wc = {\n core: null,\n web3wallet: null,\n authClient: null,\n statusObject: null,\n\n init: function (projectId) {\n (async () => {\n if (!window.statusq) {\n console.error('missing window.statusq! Forgot to execute \"ui/StatusQ/src/StatusQ/Components/private/qwebchannel/helpers.js\" first?');\n return;\n }\n\n if (window.statusq.error) {\n console.error(\"Failed initializing WebChannel: \" + window.statusq.error);\n return;\n }\n\n wc.statusObject = window.statusq.channel.objects.statusObject;\n if (!wc.statusObject) {\n console.error(\"Failed initializing WebChannel or initialization not run\");\n return;\n }\n\n window.wc.core = new _walletconnect_core__WEBPACK_IMPORTED_MODULE_2__.Core({\n projectId: projectId,\n });\n\n window.wc.web3wallet = await _walletconnect_web3wallet__WEBPACK_IMPORTED_MODULE_3__.Web3Wallet.init({\n core: window.wc.core, // <- pass the shared `core` instance\n metadata: {\n name: \"Status\",\n description: \"Status Wallet\",\n url: \"http://localhost\",\n icons: ['https://status.im/img/status-footer-logo.svg'],\n },\n });\n\n window.wc.authClient = await _walletconnect_auth_client__WEBPACK_IMPORTED_MODULE_0__[\"default\"].init({\n projectId: projectId,\n metadata: window.wc.web3wallet.metadata,\n });\n\n // connect session responses https://specs.walletconnect.com/2.0/specs/clients/sign/session-events#events\n window.wc.web3wallet.on(\"session_proposal\", async (details) => {\n wc.statusObject.onSessionProposal(details)\n });\n\n window.wc.web3wallet.on(\"session_update\", async (details) => {\n wc.statusObject.onSessionUpdate(details)\n });\n\n window.wc.web3wallet.on(\"session_extend\", async (details) => {\n wc.statusObject.onSessionExtend(details)\n });\n\n window.wc.web3wallet.on(\"session_ping\", async (details) => {\n wc.statusObject.onSessionPing(details)\n });\n\n window.wc.web3wallet.on(\"session_delete\", async (details) => {\n wc.statusObject.onSessionDelete(details)\n });\n\n window.wc.web3wallet.on(\"session_expire\", async (details) => {\n wc.statusObject.onSessionExpire(details)\n });\n\n window.wc.web3wallet.on(\"session_request\", async (details) => {\n wc.statusObject.onSessionRequest(details)\n });\n\n window.wc.web3wallet.on(\"session_request_sent\", async (details) => {\n wc.statusObject.onSessionRequestSent(details)\n });\n\n window.wc.web3wallet.on(\"session_event\", async (details) => {\n wc.statusObject.onSessionEvent(details)\n });\n\n window.wc.web3wallet.on(\"proposal_expire\", async (details) => {\n wc.statusObject.onProposalExpire(details)\n });\n\n wc.statusObject.sdkInitialized(\"\");\n })();\n\n return { result: \"ok\", error: \"\" };\n },\n\n // TODO: there is a corner case when attempting to pair with a link that is already paired or was rejected won't trigger any event back\n pair: function (uri) {\n return {\n result: window.wc.web3wallet.pair({ uri }),\n error: \"\"\n };\n },\n\n getPairings: function () {\n return {\n result: window.wc.core.pairing.getPairings(),\n error: \"\"\n };\n },\n\n disconnect: function (topic) {\n return {\n result: window.wc.core.pairing.disconnect({ topic: topic }),\n error: \"\"\n };\n },\n\n approvePairSession: function (sessionProposal, supportedNamespaces) {\n const { id, params } = sessionProposal;\n\n const approvedNamespaces = (0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_4__.buildApprovedNamespaces)({\n proposal: params,\n supportedNamespaces: supportedNamespaces,\n });\n\n return {\n result: window.wc.web3wallet.approveSession({\n id,\n namespaces: approvedNamespaces,\n }),\n error: \"\"\n };\n },\n rejectPairSession: function (id) {\n return {\n result: window.wc.web3wallet.rejectSession({\n id: id,\n reason: (0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_4__.getSdkError)(\"USER_REJECTED\"), // TODO USER_REJECTED_METHODS, USER_REJECTED_CHAINS, USER_REJECTED_EVENTS\n }),\n error: \"\"\n };\n },\n\n auth: function (uri) {\n return {\n result: window.wc.authClient.core.pairing.pair({ uri }),\n error: \"\"\n };\n },\n\n approveAuth: function (authProposal) {\n const { id, params } = authProposal;\n\n // TODO: source user’s address\n const iss = `did:pkh:eip155:1:${\"0x0123456789\"}`;\n\n // format the cacao payload with the user’s address\n const message = window.wc.authClient.formatMessage(params.cacaoPayload, iss);\n\n // TODO: signature\n const signature = \"0x123456789\"\n\n return {\n result: window.wc.authClient.respond(\n {\n id: id,\n signature: {\n s: signature,\n t: \"eip191\",\n },\n },\n iss),\n error: \"\"\n };\n },\n\n rejectAuth: function (id) {\n return {\n result: window.wc.authClient.reject(id),\n error: \"\"\n };\n },\n\n respondSessionRequest: function (topic, id, signature) {\n const response = (0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_1__.formatJsonRpcResult)(id, signature)\n\n try {\n let r = window.wc.web3wallet.respondSessionRequest({ topic: topic, response: response });\n return {\n result: r,\n error: \"\"\n };\n\n } catch (e) {\n wc.statusObject.bubbleConsoleMessage(\"error\", `respondSessionRequest error: ${JSON.stringify(e, null, 2)}`)\n return {\n result: \"\",\n error: e\n };\n }\n },\n\n rejectSessionRequest: function (topic, id, error = false) {\n const errorType = error ? \"SESSION_SETTLEMENT_FAILED\" : \"USER_REJECTED\";\n return {\n result: window.wc.web3wallet.respondSessionRequest({\n topic: topic,\n response: (0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_1__.formatJsonRpcError)(id, (0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_4__.getSdkError)(errorType)),\n }),\n error: \"\"\n };\n },\n};\n\n\n//# sourceURL=webpack://wallet_connect_integration/./src/index.js?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _walletconnect_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @walletconnect/core */ \"./node_modules/@walletconnect/core/dist/index.es.js\");\n/* harmony import */ var _walletconnect_web3wallet__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @walletconnect/web3wallet */ \"./node_modules/@walletconnect/web3wallet/dist/index.es.js\");\n/* harmony import */ var _walletconnect_utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @walletconnect/utils */ \"./node_modules/@walletconnect/utils/dist/index.es.js\");\n/* harmony import */ var _walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @walletconnect/jsonrpc-utils */ \"./node_modules/@walletconnect/jsonrpc-utils/dist/esm/index.js\");\n\n\n\n// Disabled for now to debug the issue with wrong pairing topic\n//import AuthClient from '@walletconnect/auth-client'\n\n// import the builder util\n\n\n\nwindow.wc = {\n core: null,\n web3wallet: null,\n authClient: null,\n statusObject: null,\n\n init: function (projectId) {\n return new Promise(async (resolve, reject) => {\n if (!window.statusq) {\n const errMsg = 'missing window.statusq! Forgot to execute \"ui/StatusQ/src/StatusQ/Components/private/qwebchannel/helpers.js\" first?'\n console.error(errMsg);\n reject(errMsg);\n }\n\n if (window.statusq.error) {\n const errMsg = \"Failed initializing WebChannel: \" + window.statusq.error\n console.error(errMsg);\n reject(errMsg);\n }\n\n wc.statusObject = window.statusq.channel.objects.statusObject;\n if (!wc.statusObject) {\n const errMsg = \"Failed initializing WebChannel or initialization not run\"\n console.error(errMsg);\n reject(errMsg);\n }\n\n window.wc.core = new _walletconnect_core__WEBPACK_IMPORTED_MODULE_1__.Core({\n projectId: projectId,\n });\n\n window.wc.web3wallet = await _walletconnect_web3wallet__WEBPACK_IMPORTED_MODULE_2__.Web3Wallet.init({\n core: window.wc.core, // <- pass the shared `core` instance\n metadata: {\n name: \"Status\",\n description: \"Status Wallet\",\n url: \"http://localhost\",\n icons: ['https://status.im/img/status-footer-logo.svg'],\n },\n });\n\n //window.wc.authClient = await AuthClient.init({\n // projectId: projectId,\n // metadata: window.wc.web3wallet.metadata,\n //});\n\n // connect session responses https://specs.walletconnect.com/2.0/specs/clients/sign/session-events#events\n window.wc.web3wallet.on(\"session_proposal\", async (details) => {\n wc.statusObject.onSessionProposal(details)\n });\n\n window.wc.web3wallet.on(\"session_update\", async (details) => {\n wc.statusObject.onSessionUpdate(details)\n });\n\n window.wc.web3wallet.on(\"session_extend\", async (details) => {\n wc.statusObject.onSessionExtend(details)\n });\n\n window.wc.web3wallet.on(\"session_ping\", async (details) => {\n wc.statusObject.onSessionPing(details)\n });\n\n window.wc.web3wallet.on(\"session_delete\", async (details) => {\n wc.statusObject.onSessionDelete(details)\n });\n\n window.wc.web3wallet.on(\"session_expire\", async (details) => {\n wc.statusObject.onSessionExpire(details)\n });\n\n window.wc.web3wallet.on(\"session_request\", async (details) => {\n wc.statusObject.onSessionRequest(details)\n });\n\n window.wc.web3wallet.on(\"session_request_sent\", async (details) => {\n wc.statusObject.onSessionRequestSent(details)\n });\n\n window.wc.web3wallet.on(\"session_event\", async (details) => {\n wc.statusObject.onSessionEvent(details)\n });\n\n window.wc.web3wallet.on(\"proposal_expire\", async (details) => {\n wc.statusObject.onProposalExpire(details)\n });\n\n wc.statusObject.sdkInitialized(\"\");\n resolve(\"\");\n });\n },\n\n // TODO: there is a corner case when attempting to pair with a link that is already paired or was rejected won't trigger any event back\n pair: function (uri) {\n return {\n result: window.wc.web3wallet.pair({ uri }),\n error: \"\"\n };\n },\n\n getPairings: function () {\n return {\n result: window.wc.core.pairing.getPairings(),\n error: \"\"\n };\n },\n\n disconnect: function (topic) {\n return {\n result: window.wc.core.pairing.disconnect({ topic: topic }),\n error: \"\"\n };\n },\n\n approvePairSession: function (sessionProposal, supportedNamespaces) {\n const { id, params } = sessionProposal;\n\n const approvedNamespaces = (0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_3__.buildApprovedNamespaces)({\n proposal: params,\n supportedNamespaces: supportedNamespaces,\n });\n\n wc.statusObject.bubbleConsoleMessage(\"debug\", `web3wallet.approveSession id: ${id} ${JSON.stringify(approvedNamespaces, null, 2)}`)\n return {\n result: window.wc.web3wallet.approveSession({\n id,\n namespaces: approvedNamespaces,\n }),\n error: \"\"\n };\n },\n rejectPairSession: function (id) {\n return {\n result: window.wc.web3wallet.rejectSession({\n id: id,\n reason: (0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_3__.getSdkError)(\"USER_REJECTED\"), // TODO USER_REJECTED_METHODS, USER_REJECTED_CHAINS, USER_REJECTED_EVENTS\n }),\n error: \"\"\n };\n },\n\n // auth: function (uri) {\n // return {\n // result: window.wc.authClient.core.pairing.pair({ uri }),\n // error: \"\"\n // };\n // },\n\n // approveAuth: function (authProposal) {\n // const { id, params } = authProposal;\n\n // // TODO: source user’s address\n // const iss = `did:pkh:eip155:1:${\"0x0123456789\"}`;\n\n // // format the cacao payload with the user’s address\n // const message = window.wc.authClient.formatMessage(params.cacaoPayload, iss);\n\n // // TODO: signature\n // const signature = \"0x123456789\"\n\n // return {\n // result: window.wc.authClient.respond(\n // {\n // id: id,\n // signature: {\n // s: signature,\n // t: \"eip191\",\n // },\n // },\n // iss),\n // error: \"\"\n // };\n // },\n\n // rejectAuth: function (id) {\n // return {\n // result: window.wc.authClient.reject(id),\n // error: \"\"\n // };\n // },\n\n respondSessionRequest: function (topic, id, signature) {\n const response = (0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_0__.formatJsonRpcResult)(id, signature)\n\n try {\n let r = window.wc.web3wallet.respondSessionRequest({ topic: topic, response: response });\n return {\n result: r,\n error: \"\"\n };\n\n } catch (e) {\n wc.statusObject.bubbleConsoleMessage(\"error\", `respondSessionRequest error: ${JSON.stringify(e, null, 2)}`)\n return {\n result: \"\",\n error: e\n };\n }\n },\n\n rejectSessionRequest: function (topic, id, error = false) {\n const errorType = error ? \"SESSION_SETTLEMENT_FAILED\" : \"USER_REJECTED\";\n return {\n result: window.wc.web3wallet.respondSessionRequest({\n topic: topic,\n response: (0,_walletconnect_jsonrpc_utils__WEBPACK_IMPORTED_MODULE_0__.formatJsonRpcError)(id, (0,_walletconnect_utils__WEBPACK_IMPORTED_MODULE_3__.getSdkError)(errorType)),\n }),\n error: \"\"\n };\n },\n};\n\n\n//# sourceURL=webpack://wallet_connect_integration/./src/index.js?"); /***/ }), @@ -1428,6 +1358,26 @@ eval("\n\nconst format = __webpack_require__(/*! quick-format-unescaped */ \"./n /***/ }), +/***/ "./node_modules/destr/dist/index.mjs": +/*!*******************************************!*\ + !*** ./node_modules/destr/dist/index.mjs ***! + \*******************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (/* binding */ destr),\n/* harmony export */ destr: () => (/* binding */ destr),\n/* harmony export */ safeDestr: () => (/* binding */ safeDestr)\n/* harmony export */ });\nconst suspectProtoRx = /\"(?:_|\\\\u0{2}5[Ff]){2}(?:p|\\\\u0{2}70)(?:r|\\\\u0{2}72)(?:o|\\\\u0{2}6[Ff])(?:t|\\\\u0{2}74)(?:o|\\\\u0{2}6[Ff])(?:_|\\\\u0{2}5[Ff]){2}\"\\s*:/;\nconst suspectConstructorRx = /\"(?:c|\\\\u0063)(?:o|\\\\u006[Ff])(?:n|\\\\u006[Ee])(?:s|\\\\u0073)(?:t|\\\\u0074)(?:r|\\\\u0072)(?:u|\\\\u0075)(?:c|\\\\u0063)(?:t|\\\\u0074)(?:o|\\\\u006[Ff])(?:r|\\\\u0072)\"\\s*:/;\nconst JsonSigRx = /^\\s*[\"[{]|^\\s*-?\\d{1,16}(\\.\\d{1,17})?([Ee][+-]?\\d+)?\\s*$/;\nfunction jsonParseTransform(key, value) {\n if (key === \"__proto__\" || key === \"constructor\" && value && typeof value === \"object\" && \"prototype\" in value) {\n warnKeyDropped(key);\n return;\n }\n return value;\n}\nfunction warnKeyDropped(key) {\n console.warn(`[destr] Dropping \"${key}\" key to prevent prototype pollution.`);\n}\nfunction destr(value, options = {}) {\n if (typeof value !== \"string\") {\n return value;\n }\n const _value = value.trim();\n if (\n // eslint-disable-next-line unicorn/prefer-at\n value[0] === '\"' && value.at(-1) === '\"' && !value.includes(\"\\\\\")\n ) {\n return _value.slice(1, -1);\n }\n if (_value.length <= 9) {\n const _lval = _value.toLowerCase();\n if (_lval === \"true\") {\n return true;\n }\n if (_lval === \"false\") {\n return false;\n }\n if (_lval === \"undefined\") {\n return void 0;\n }\n if (_lval === \"null\") {\n return null;\n }\n if (_lval === \"nan\") {\n return Number.NaN;\n }\n if (_lval === \"infinity\") {\n return Number.POSITIVE_INFINITY;\n }\n if (_lval === \"-infinity\") {\n return Number.NEGATIVE_INFINITY;\n }\n }\n if (!JsonSigRx.test(value)) {\n if (options.strict) {\n throw new SyntaxError(\"[destr] Invalid JSON\");\n }\n return value;\n }\n try {\n if (suspectProtoRx.test(value) || suspectConstructorRx.test(value)) {\n if (options.strict) {\n throw new Error(\"[destr] Possible prototype pollution\");\n }\n return JSON.parse(value, jsonParseTransform);\n }\n return JSON.parse(value);\n } catch (error) {\n if (options.strict) {\n throw error;\n }\n return value;\n }\n}\nfunction safeDestr(value, options = {}) {\n return destr(value, { ...options, strict: true });\n}\n\n\n\n\n//# sourceURL=webpack://wallet_connect_integration/./node_modules/destr/dist/index.mjs?"); + +/***/ }), + +/***/ "./node_modules/idb-keyval/dist/index.js": +/*!***********************************************!*\ + !*** ./node_modules/idb-keyval/dist/index.js ***! + \***********************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ clear: () => (/* binding */ clear),\n/* harmony export */ createStore: () => (/* binding */ createStore),\n/* harmony export */ del: () => (/* binding */ del),\n/* harmony export */ delMany: () => (/* binding */ delMany),\n/* harmony export */ entries: () => (/* binding */ entries),\n/* harmony export */ get: () => (/* binding */ get),\n/* harmony export */ getMany: () => (/* binding */ getMany),\n/* harmony export */ keys: () => (/* binding */ keys),\n/* harmony export */ promisifyRequest: () => (/* binding */ promisifyRequest),\n/* harmony export */ set: () => (/* binding */ set),\n/* harmony export */ setMany: () => (/* binding */ setMany),\n/* harmony export */ update: () => (/* binding */ update),\n/* harmony export */ values: () => (/* binding */ values)\n/* harmony export */ });\nfunction promisifyRequest(request) {\n return new Promise((resolve, reject) => {\n // @ts-ignore - file size hacks\n request.oncomplete = request.onsuccess = () => resolve(request.result);\n // @ts-ignore - file size hacks\n request.onabort = request.onerror = () => reject(request.error);\n });\n}\nfunction createStore(dbName, storeName) {\n const request = indexedDB.open(dbName);\n request.onupgradeneeded = () => request.result.createObjectStore(storeName);\n const dbp = promisifyRequest(request);\n return (txMode, callback) => dbp.then((db) => callback(db.transaction(storeName, txMode).objectStore(storeName)));\n}\nlet defaultGetStoreFunc;\nfunction defaultGetStore() {\n if (!defaultGetStoreFunc) {\n defaultGetStoreFunc = createStore('keyval-store', 'keyval');\n }\n return defaultGetStoreFunc;\n}\n/**\n * Get a value by its key.\n *\n * @param key\n * @param customStore Method to get a custom store. Use with caution (see the docs).\n */\nfunction get(key, customStore = defaultGetStore()) {\n return customStore('readonly', (store) => promisifyRequest(store.get(key)));\n}\n/**\n * Set a value with a key.\n *\n * @param key\n * @param value\n * @param customStore Method to get a custom store. Use with caution (see the docs).\n */\nfunction set(key, value, customStore = defaultGetStore()) {\n return customStore('readwrite', (store) => {\n store.put(value, key);\n return promisifyRequest(store.transaction);\n });\n}\n/**\n * Set multiple values at once. This is faster than calling set() multiple times.\n * It's also atomic – if one of the pairs can't be added, none will be added.\n *\n * @param entries Array of entries, where each entry is an array of `[key, value]`.\n * @param customStore Method to get a custom store. Use with caution (see the docs).\n */\nfunction setMany(entries, customStore = defaultGetStore()) {\n return customStore('readwrite', (store) => {\n entries.forEach((entry) => store.put(entry[1], entry[0]));\n return promisifyRequest(store.transaction);\n });\n}\n/**\n * Get multiple values by their keys\n *\n * @param keys\n * @param customStore Method to get a custom store. Use with caution (see the docs).\n */\nfunction getMany(keys, customStore = defaultGetStore()) {\n return customStore('readonly', (store) => Promise.all(keys.map((key) => promisifyRequest(store.get(key)))));\n}\n/**\n * Update a value. This lets you see the old value and update it as an atomic operation.\n *\n * @param key\n * @param updater A callback that takes the old value and returns a new value.\n * @param customStore Method to get a custom store. Use with caution (see the docs).\n */\nfunction update(key, updater, customStore = defaultGetStore()) {\n return customStore('readwrite', (store) => \n // Need to create the promise manually.\n // If I try to chain promises, the transaction closes in browsers\n // that use a promise polyfill (IE10/11).\n new Promise((resolve, reject) => {\n store.get(key).onsuccess = function () {\n try {\n store.put(updater(this.result), key);\n resolve(promisifyRequest(store.transaction));\n }\n catch (err) {\n reject(err);\n }\n };\n }));\n}\n/**\n * Delete a particular key from the store.\n *\n * @param key\n * @param customStore Method to get a custom store. Use with caution (see the docs).\n */\nfunction del(key, customStore = defaultGetStore()) {\n return customStore('readwrite', (store) => {\n store.delete(key);\n return promisifyRequest(store.transaction);\n });\n}\n/**\n * Delete multiple keys at once.\n *\n * @param keys List of keys to delete.\n * @param customStore Method to get a custom store. Use with caution (see the docs).\n */\nfunction delMany(keys, customStore = defaultGetStore()) {\n return customStore('readwrite', (store) => {\n keys.forEach((key) => store.delete(key));\n return promisifyRequest(store.transaction);\n });\n}\n/**\n * Clear all values in the store.\n *\n * @param customStore Method to get a custom store. Use with caution (see the docs).\n */\nfunction clear(customStore = defaultGetStore()) {\n return customStore('readwrite', (store) => {\n store.clear();\n return promisifyRequest(store.transaction);\n });\n}\nfunction eachCursor(store, callback) {\n store.openCursor().onsuccess = function () {\n if (!this.result)\n return;\n callback(this.result);\n this.result.continue();\n };\n return promisifyRequest(store.transaction);\n}\n/**\n * Get all keys in the store.\n *\n * @param customStore Method to get a custom store. Use with caution (see the docs).\n */\nfunction keys(customStore = defaultGetStore()) {\n return customStore('readonly', (store) => {\n // Fast path for modern browsers\n if (store.getAllKeys) {\n return promisifyRequest(store.getAllKeys());\n }\n const items = [];\n return eachCursor(store, (cursor) => items.push(cursor.key)).then(() => items);\n });\n}\n/**\n * Get all values in the store.\n *\n * @param customStore Method to get a custom store. Use with caution (see the docs).\n */\nfunction values(customStore = defaultGetStore()) {\n return customStore('readonly', (store) => {\n // Fast path for modern browsers\n if (store.getAll) {\n return promisifyRequest(store.getAll());\n }\n const items = [];\n return eachCursor(store, (cursor) => items.push(cursor.value)).then(() => items);\n });\n}\n/**\n * Get all entries in the store. Each entry is an array of `[key, value]`.\n *\n * @param customStore Method to get a custom store. Use with caution (see the docs).\n */\nfunction entries(customStore = defaultGetStore()) {\n return customStore('readonly', (store) => {\n // Fast path for modern browsers\n // (although, hopefully we'll get a simpler path some day)\n if (store.getAll && store.getAllKeys) {\n return Promise.all([\n promisifyRequest(store.getAllKeys()),\n promisifyRequest(store.getAll()),\n ]).then(([keys, values]) => keys.map((key, i) => [key, values[i]]));\n }\n const items = [];\n return customStore('readonly', (store) => eachCursor(store, (cursor) => items.push([cursor.key, cursor.value])).then(() => items));\n });\n}\n\n\n\n\n//# sourceURL=webpack://wallet_connect_integration/./node_modules/idb-keyval/dist/index.js?"); + +/***/ }), + /***/ "./node_modules/multiformats/esm/src/bases/base.js": /*!*********************************************************!*\ !*** ./node_modules/multiformats/esm/src/bases/base.js ***! @@ -1766,6 +1716,26 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ xor: () => (/* binding */ xor)\n/* harmony export */ });\n/* harmony import */ var _alloc_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./alloc.js */ \"./node_modules/uint8arrays/esm/src/alloc.js\");\n/* harmony import */ var _util_as_uint8array_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./util/as-uint8array.js */ \"./node_modules/uint8arrays/esm/src/util/as-uint8array.js\");\n\n\nfunction xor(a, b) {\n if (a.length !== b.length) {\n throw new Error('Inputs should have the same length');\n }\n const result = (0,_alloc_js__WEBPACK_IMPORTED_MODULE_0__.allocUnsafe)(a.length);\n for (let i = 0; i < a.length; i++) {\n result[i] = a[i] ^ b[i];\n }\n return (0,_util_as_uint8array_js__WEBPACK_IMPORTED_MODULE_1__.asUint8Array)(result);\n}\n\n//# sourceURL=webpack://wallet_connect_integration/./node_modules/uint8arrays/esm/src/xor.js?"); +/***/ }), + +/***/ "./node_modules/unstorage/dist/index.mjs": +/*!***********************************************!*\ + !*** ./node_modules/unstorage/dist/index.mjs ***! + \***********************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ builtinDrivers: () => (/* binding */ builtinDrivers),\n/* harmony export */ createStorage: () => (/* binding */ createStorage),\n/* harmony export */ defineDriver: () => (/* binding */ defineDriver),\n/* harmony export */ joinKeys: () => (/* reexport safe */ _shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.j),\n/* harmony export */ normalizeBaseKey: () => (/* reexport safe */ _shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.n),\n/* harmony export */ normalizeKey: () => (/* reexport safe */ _shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.a),\n/* harmony export */ prefixStorage: () => (/* reexport safe */ _shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.p),\n/* harmony export */ restoreSnapshot: () => (/* binding */ restoreSnapshot),\n/* harmony export */ snapshot: () => (/* binding */ snapshot)\n/* harmony export */ });\n/* harmony import */ var destr__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! destr */ \"./node_modules/destr/dist/index.mjs\");\n/* harmony import */ var _shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./shared/unstorage.8581f561.mjs */ \"./node_modules/unstorage/dist/shared/unstorage.8581f561.mjs\");\n\n\n\n\nfunction defineDriver(factory) {\n return factory;\n}\n\nconst DRIVER_NAME = \"memory\";\nconst memory = defineDriver(() => {\n const data = /* @__PURE__ */ new Map();\n return {\n name: DRIVER_NAME,\n options: {},\n hasItem(key) {\n return data.has(key);\n },\n getItem(key) {\n return data.get(key) ?? null;\n },\n getItemRaw(key) {\n return data.get(key) ?? null;\n },\n setItem(key, value) {\n data.set(key, value);\n },\n setItemRaw(key, value) {\n data.set(key, value);\n },\n removeItem(key) {\n data.delete(key);\n },\n getKeys() {\n return Array.from(data.keys());\n },\n clear() {\n data.clear();\n },\n dispose() {\n data.clear();\n }\n };\n});\n\nfunction createStorage(options = {}) {\n const context = {\n mounts: { \"\": options.driver || memory() },\n mountpoints: [\"\"],\n watching: false,\n watchListeners: [],\n unwatch: {}\n };\n const getMount = (key) => {\n for (const base of context.mountpoints) {\n if (key.startsWith(base)) {\n return {\n base,\n relativeKey: key.slice(base.length),\n driver: context.mounts[base]\n };\n }\n }\n return {\n base: \"\",\n relativeKey: key,\n driver: context.mounts[\"\"]\n };\n };\n const getMounts = (base, includeParent) => {\n return context.mountpoints.filter(\n (mountpoint) => mountpoint.startsWith(base) || includeParent && base.startsWith(mountpoint)\n ).map((mountpoint) => ({\n relativeBase: base.length > mountpoint.length ? base.slice(mountpoint.length) : void 0,\n mountpoint,\n driver: context.mounts[mountpoint]\n }));\n };\n const onChange = (event, key) => {\n if (!context.watching) {\n return;\n }\n key = (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.a)(key);\n for (const listener of context.watchListeners) {\n listener(event, key);\n }\n };\n const startWatch = async () => {\n if (context.watching) {\n return;\n }\n context.watching = true;\n for (const mountpoint in context.mounts) {\n context.unwatch[mountpoint] = await watch(\n context.mounts[mountpoint],\n onChange,\n mountpoint\n );\n }\n };\n const stopWatch = async () => {\n if (!context.watching) {\n return;\n }\n for (const mountpoint in context.unwatch) {\n await context.unwatch[mountpoint]();\n }\n context.unwatch = {};\n context.watching = false;\n };\n const runBatch = (items, commonOptions, cb) => {\n const batches = /* @__PURE__ */ new Map();\n const getBatch = (mount) => {\n let batch = batches.get(mount.base);\n if (!batch) {\n batch = {\n driver: mount.driver,\n base: mount.base,\n items: []\n };\n batches.set(mount.base, batch);\n }\n return batch;\n };\n for (const item of items) {\n const isStringItem = typeof item === \"string\";\n const key = (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.a)(isStringItem ? item : item.key);\n const value = isStringItem ? void 0 : item.value;\n const options2 = isStringItem || !item.options ? commonOptions : { ...commonOptions, ...item.options };\n const mount = getMount(key);\n getBatch(mount).items.push({\n key,\n value,\n relativeKey: mount.relativeKey,\n options: options2\n });\n }\n return Promise.all([...batches.values()].map((batch) => cb(batch))).then(\n (r) => r.flat()\n );\n };\n const storage = {\n // Item\n hasItem(key, opts = {}) {\n key = (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.a)(key);\n const { relativeKey, driver } = getMount(key);\n return (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.b)(driver.hasItem, relativeKey, opts);\n },\n getItem(key, opts = {}) {\n key = (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.a)(key);\n const { relativeKey, driver } = getMount(key);\n return (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.b)(driver.getItem, relativeKey, opts).then(\n (value) => (0,destr__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(value)\n );\n },\n getItems(items, commonOptions) {\n return runBatch(items, commonOptions, (batch) => {\n if (batch.driver.getItems) {\n return (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.b)(\n batch.driver.getItems,\n batch.items.map((item) => ({\n key: item.relativeKey,\n options: item.options\n })),\n commonOptions\n ).then(\n (r) => r.map((item) => ({\n key: (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.j)(batch.base, item.key),\n value: (0,destr__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(item.value)\n }))\n );\n }\n return Promise.all(\n batch.items.map((item) => {\n return (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.b)(\n batch.driver.getItem,\n item.relativeKey,\n item.options\n ).then((value) => ({\n key: item.key,\n value: (0,destr__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(value)\n }));\n })\n );\n });\n },\n getItemRaw(key, opts = {}) {\n key = (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.a)(key);\n const { relativeKey, driver } = getMount(key);\n if (driver.getItemRaw) {\n return (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.b)(driver.getItemRaw, relativeKey, opts);\n }\n return (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.b)(driver.getItem, relativeKey, opts).then(\n (value) => (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.d)(value)\n );\n },\n async setItem(key, value, opts = {}) {\n if (value === void 0) {\n return storage.removeItem(key);\n }\n key = (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.a)(key);\n const { relativeKey, driver } = getMount(key);\n if (!driver.setItem) {\n return;\n }\n await (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.b)(driver.setItem, relativeKey, (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.s)(value), opts);\n if (!driver.watch) {\n onChange(\"update\", key);\n }\n },\n async setItems(items, commonOptions) {\n await runBatch(items, commonOptions, async (batch) => {\n if (batch.driver.setItems) {\n await (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.b)(\n batch.driver.setItems,\n batch.items.map((item) => ({\n key: item.relativeKey,\n value: (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.s)(item.value),\n options: item.options\n })),\n commonOptions\n );\n }\n if (!batch.driver.setItem) {\n return;\n }\n await Promise.all(\n batch.items.map((item) => {\n return (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.b)(\n batch.driver.setItem,\n item.relativeKey,\n (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.s)(item.value),\n item.options\n );\n })\n );\n });\n },\n async setItemRaw(key, value, opts = {}) {\n if (value === void 0) {\n return storage.removeItem(key, opts);\n }\n key = (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.a)(key);\n const { relativeKey, driver } = getMount(key);\n if (driver.setItemRaw) {\n await (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.b)(driver.setItemRaw, relativeKey, value, opts);\n } else if (driver.setItem) {\n await (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.b)(driver.setItem, relativeKey, (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.c)(value), opts);\n } else {\n return;\n }\n if (!driver.watch) {\n onChange(\"update\", key);\n }\n },\n async removeItem(key, opts = {}) {\n if (typeof opts === \"boolean\") {\n opts = { removeMeta: opts };\n }\n key = (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.a)(key);\n const { relativeKey, driver } = getMount(key);\n if (!driver.removeItem) {\n return;\n }\n await (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.b)(driver.removeItem, relativeKey, opts);\n if (opts.removeMeta || opts.removeMata) {\n await (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.b)(driver.removeItem, relativeKey + \"$\", opts);\n }\n if (!driver.watch) {\n onChange(\"remove\", key);\n }\n },\n // Meta\n async getMeta(key, opts = {}) {\n if (typeof opts === \"boolean\") {\n opts = { nativeOnly: opts };\n }\n key = (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.a)(key);\n const { relativeKey, driver } = getMount(key);\n const meta = /* @__PURE__ */ Object.create(null);\n if (driver.getMeta) {\n Object.assign(meta, await (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.b)(driver.getMeta, relativeKey, opts));\n }\n if (!opts.nativeOnly) {\n const value = await (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.b)(\n driver.getItem,\n relativeKey + \"$\",\n opts\n ).then((value_) => (0,destr__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(value_));\n if (value && typeof value === \"object\") {\n if (typeof value.atime === \"string\") {\n value.atime = new Date(value.atime);\n }\n if (typeof value.mtime === \"string\") {\n value.mtime = new Date(value.mtime);\n }\n Object.assign(meta, value);\n }\n }\n return meta;\n },\n setMeta(key, value, opts = {}) {\n return this.setItem(key + \"$\", value, opts);\n },\n removeMeta(key, opts = {}) {\n return this.removeItem(key + \"$\", opts);\n },\n // Keys\n async getKeys(base, opts = {}) {\n base = (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.n)(base);\n const mounts = getMounts(base, true);\n let maskedMounts = [];\n const allKeys = [];\n for (const mount of mounts) {\n const rawKeys = await (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.b)(\n mount.driver.getKeys,\n mount.relativeBase,\n opts\n );\n const keys = rawKeys.map((key) => mount.mountpoint + (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.a)(key)).filter((key) => !maskedMounts.some((p) => key.startsWith(p)));\n allKeys.push(...keys);\n maskedMounts = [\n mount.mountpoint,\n ...maskedMounts.filter((p) => !p.startsWith(mount.mountpoint))\n ];\n }\n return base ? allKeys.filter((key) => key.startsWith(base) && !key.endsWith(\"$\")) : allKeys.filter((key) => !key.endsWith(\"$\"));\n },\n // Utils\n async clear(base, opts = {}) {\n base = (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.n)(base);\n await Promise.all(\n getMounts(base, false).map(async (m) => {\n if (m.driver.clear) {\n return (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.b)(m.driver.clear, m.relativeBase, opts);\n }\n if (m.driver.removeItem) {\n const keys = await m.driver.getKeys(m.relativeBase || \"\", opts);\n return Promise.all(\n keys.map((key) => m.driver.removeItem(key, opts))\n );\n }\n })\n );\n },\n async dispose() {\n await Promise.all(\n Object.values(context.mounts).map((driver) => dispose(driver))\n );\n },\n async watch(callback) {\n await startWatch();\n context.watchListeners.push(callback);\n return async () => {\n context.watchListeners = context.watchListeners.filter(\n (listener) => listener !== callback\n );\n if (context.watchListeners.length === 0) {\n await stopWatch();\n }\n };\n },\n async unwatch() {\n context.watchListeners = [];\n await stopWatch();\n },\n // Mount\n mount(base, driver) {\n base = (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.n)(base);\n if (base && context.mounts[base]) {\n throw new Error(`already mounted at ${base}`);\n }\n if (base) {\n context.mountpoints.push(base);\n context.mountpoints.sort((a, b) => b.length - a.length);\n }\n context.mounts[base] = driver;\n if (context.watching) {\n Promise.resolve(watch(driver, onChange, base)).then((unwatcher) => {\n context.unwatch[base] = unwatcher;\n }).catch(console.error);\n }\n return storage;\n },\n async unmount(base, _dispose = true) {\n base = (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.n)(base);\n if (!base || !context.mounts[base]) {\n return;\n }\n if (context.watching && base in context.unwatch) {\n context.unwatch[base]();\n delete context.unwatch[base];\n }\n if (_dispose) {\n await dispose(context.mounts[base]);\n }\n context.mountpoints = context.mountpoints.filter((key) => key !== base);\n delete context.mounts[base];\n },\n getMount(key = \"\") {\n key = (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.a)(key) + \":\";\n const m = getMount(key);\n return {\n driver: m.driver,\n base: m.base\n };\n },\n getMounts(base = \"\", opts = {}) {\n base = (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.a)(base);\n const mounts = getMounts(base, opts.parents);\n return mounts.map((m) => ({\n driver: m.driver,\n base: m.mountpoint\n }));\n }\n };\n return storage;\n}\nasync function snapshot(storage, base) {\n base = (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.n)(base);\n const keys = await storage.getKeys(base);\n const snapshot2 = {};\n await Promise.all(\n keys.map(async (key) => {\n snapshot2[key.slice(base.length)] = await storage.getItem(key);\n })\n );\n return snapshot2;\n}\nasync function restoreSnapshot(driver, snapshot2, base = \"\") {\n base = (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.n)(base);\n await Promise.all(\n Object.entries(snapshot2).map((e) => driver.setItem(base + e[0], e[1]))\n );\n}\nfunction watch(driver, onChange, base) {\n return driver.watch ? driver.watch((event, key) => onChange(event, base + key)) : () => {\n };\n}\nasync function dispose(driver) {\n if (typeof driver.dispose === \"function\") {\n await (0,_shared_unstorage_8581f561_mjs__WEBPACK_IMPORTED_MODULE_1__.b)(driver.dispose);\n }\n}\n\nconst builtinDrivers = {\n azureAppConfiguration: \"unstorage/drivers/azure-app-configuration\",\n azureCosmos: \"unstorage/drivers/azure-cosmos\",\n azureKeyVault: \"unstorage/drivers/azure-key-vault\",\n azureStorageBlob: \"unstorage/drivers/azure-storage-blob\",\n azureStorageTable: \"unstorage/drivers/azure-storage-table\",\n cloudflareKVBinding: \"unstorage/drivers/cloudflare-kv-binding\",\n cloudflareKVHTTP: \"unstorage/drivers/cloudflare-kv-http\",\n cloudflareR2Binding: \"unstorage/drivers/cloudflare-r2-binding\",\n fs: \"unstorage/drivers/fs\",\n fsLite: \"unstorage/drivers/fs-lite\",\n github: \"unstorage/drivers/github\",\n http: \"unstorage/drivers/http\",\n indexedb: \"unstorage/drivers/indexedb\",\n localStorage: \"unstorage/drivers/localstorage\",\n lruCache: \"unstorage/drivers/lru-cache\",\n memory: \"unstorage/drivers/memory\",\n mongodb: \"unstorage/drivers/mongodb\",\n netlifyBlobs: \"unstorage/drivers/netlify-blobs\",\n overlay: \"unstorage/drivers/overlay\",\n planetscale: \"unstorage/drivers/planetscale\",\n redis: \"unstorage/drivers/redis\",\n sessionStorage: \"unstorage/drivers/session-storage\",\n vercelKV: \"unstorage/drivers/vercel-kv\",\n /** @deprecated */\n \"cloudflare-kv-binding\": \"unstorage/drivers/cloudflare-kv-binding\",\n /** @deprecated */\n \"cloudflare-kv-http\": \"unstorage/drivers/cloudflare-kv-http\"\n};\n\n\n\n\n//# sourceURL=webpack://wallet_connect_integration/./node_modules/unstorage/dist/index.mjs?"); + +/***/ }), + +/***/ "./node_modules/unstorage/dist/shared/unstorage.8581f561.mjs": +/*!*******************************************************************!*\ + !*** ./node_modules/unstorage/dist/shared/unstorage.8581f561.mjs ***! + \*******************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ a: () => (/* binding */ normalizeKey),\n/* harmony export */ b: () => (/* binding */ asyncCall),\n/* harmony export */ c: () => (/* binding */ serializeRaw),\n/* harmony export */ d: () => (/* binding */ deserializeRaw),\n/* harmony export */ j: () => (/* binding */ joinKeys),\n/* harmony export */ n: () => (/* binding */ normalizeBaseKey),\n/* harmony export */ p: () => (/* binding */ prefixStorage),\n/* harmony export */ s: () => (/* binding */ stringify)\n/* harmony export */ });\nfunction wrapToPromise(value) {\n if (!value || typeof value.then !== \"function\") {\n return Promise.resolve(value);\n }\n return value;\n}\nfunction asyncCall(function_, ...arguments_) {\n try {\n return wrapToPromise(function_(...arguments_));\n } catch (error) {\n return Promise.reject(error);\n }\n}\nfunction isPrimitive(value) {\n const type = typeof value;\n return value === null || type !== \"object\" && type !== \"function\";\n}\nfunction isPureObject(value) {\n const proto = Object.getPrototypeOf(value);\n return !proto || proto.isPrototypeOf(Object);\n}\nfunction stringify(value) {\n if (isPrimitive(value)) {\n return String(value);\n }\n if (isPureObject(value) || Array.isArray(value)) {\n return JSON.stringify(value);\n }\n if (typeof value.toJSON === \"function\") {\n return stringify(value.toJSON());\n }\n throw new Error(\"[unstorage] Cannot stringify value!\");\n}\nfunction checkBufferSupport() {\n if (typeof Buffer === void 0) {\n throw new TypeError(\"[unstorage] Buffer is not supported!\");\n }\n}\nconst BASE64_PREFIX = \"base64:\";\nfunction serializeRaw(value) {\n if (typeof value === \"string\") {\n return value;\n }\n checkBufferSupport();\n const base64 = Buffer.from(value).toString(\"base64\");\n return BASE64_PREFIX + base64;\n}\nfunction deserializeRaw(value) {\n if (typeof value !== \"string\") {\n return value;\n }\n if (!value.startsWith(BASE64_PREFIX)) {\n return value;\n }\n checkBufferSupport();\n return Buffer.from(value.slice(BASE64_PREFIX.length), \"base64\");\n}\n\nconst storageKeyProperties = [\n \"hasItem\",\n \"getItem\",\n \"getItemRaw\",\n \"setItem\",\n \"setItemRaw\",\n \"removeItem\",\n \"getMeta\",\n \"setMeta\",\n \"removeMeta\",\n \"getKeys\",\n \"clear\",\n \"mount\",\n \"unmount\"\n];\nfunction prefixStorage(storage, base) {\n base = normalizeBaseKey(base);\n if (!base) {\n return storage;\n }\n const nsStorage = { ...storage };\n for (const property of storageKeyProperties) {\n nsStorage[property] = (key = \"\", ...args) => (\n // @ts-ignore\n storage[property](base + key, ...args)\n );\n }\n nsStorage.getKeys = (key = \"\", ...arguments_) => storage.getKeys(base + key, ...arguments_).then((keys) => keys.map((key2) => key2.slice(base.length)));\n return nsStorage;\n}\nfunction normalizeKey(key) {\n if (!key) {\n return \"\";\n }\n return key.split(\"?\")[0].replace(/[/\\\\]/g, \":\").replace(/:+/g, \":\").replace(/^:|:$/g, \"\");\n}\nfunction joinKeys(...keys) {\n return normalizeKey(keys.join(\":\"));\n}\nfunction normalizeBaseKey(base) {\n base = normalizeKey(base);\n return base ? base + \":\" : \"\";\n}\n\n\n\n\n//# sourceURL=webpack://wallet_connect_integration/./node_modules/unstorage/dist/shared/unstorage.8581f561.mjs?"); + /***/ }) /******/ }); diff --git a/ui/app/AppLayouts/Wallet/views/walletconnect/sdk/package-lock.json b/ui/app/AppLayouts/Wallet/views/walletconnect/sdk/package-lock.json index 6ee256be59..bb1256d019 100644 --- a/ui/app/AppLayouts/Wallet/views/walletconnect/sdk/package-lock.json +++ b/ui/app/AppLayouts/Wallet/views/walletconnect/sdk/package-lock.json @@ -9,8 +9,7 @@ "version": "0.1.0", "license": "MPL-2.0", "dependencies": { - "@walletconnect/auth-client": "^2.1.2", - "@walletconnect/web3wallet": "^1.9.2" + "@walletconnect/web3wallet": "^1.9.0" }, "devDependencies": { "webpack": "^5.88.2", @@ -375,6 +374,11 @@ "@ethersproject/strings": "^5.7.0" } }, + "node_modules/@ioredis/commands": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ioredis/commands/-/commands-1.2.0.tgz", + "integrity": "sha512-Sx1pU8EM64o2BrqNpEO1CNLtKQwyhuXuqyfH7oGKCk+1a33d2r5saW8zNwm3j6BTExtjrv2BxTgzzkMwts6vGg==" + }, "node_modules/@jridgewell/gen-mapping": { "version": "0.3.3", "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", @@ -424,9 +428,9 @@ "dev": true }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.19", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.19.tgz", - "integrity": "sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==", + "version": "0.3.20", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.20.tgz", + "integrity": "sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==", "dev": true, "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", @@ -439,6 +443,292 @@ "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==", "dev": true }, + "node_modules/@parcel/watcher": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.3.0.tgz", + "integrity": "sha512-pW7QaFiL11O0BphO+bq3MgqeX/INAk9jgBldVDYjlQPO4VddoZnF22TcF9onMhnLVHuNqBJeRf+Fj7eezi/+rQ==", + "hasInstallScript": true, + "dependencies": { + "detect-libc": "^1.0.3", + "is-glob": "^4.0.3", + "micromatch": "^4.0.5", + "node-addon-api": "^7.0.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "@parcel/watcher-android-arm64": "2.3.0", + "@parcel/watcher-darwin-arm64": "2.3.0", + "@parcel/watcher-darwin-x64": "2.3.0", + "@parcel/watcher-freebsd-x64": "2.3.0", + "@parcel/watcher-linux-arm-glibc": "2.3.0", + "@parcel/watcher-linux-arm64-glibc": "2.3.0", + "@parcel/watcher-linux-arm64-musl": "2.3.0", + "@parcel/watcher-linux-x64-glibc": "2.3.0", + "@parcel/watcher-linux-x64-musl": "2.3.0", + "@parcel/watcher-win32-arm64": "2.3.0", + "@parcel/watcher-win32-ia32": "2.3.0", + "@parcel/watcher-win32-x64": "2.3.0" + } + }, + "node_modules/@parcel/watcher-android-arm64": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.3.0.tgz", + "integrity": "sha512-f4o9eA3dgk0XRT3XhB0UWpWpLnKgrh1IwNJKJ7UJek7eTYccQ8LR7XUWFKqw6aEq5KUNlCcGvSzKqSX/vtWVVA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-arm64": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.3.0.tgz", + "integrity": "sha512-mKY+oijI4ahBMc/GygVGvEdOq0L4DxhYgwQqYAz/7yPzuGi79oXrZG52WdpGA1wLBPrYb0T8uBaGFo7I6rvSKw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-x64": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.3.0.tgz", + "integrity": "sha512-20oBj8LcEOnLE3mgpy6zuOq8AplPu9NcSSSfyVKgfOhNAc4eF4ob3ldj0xWjGGbOF7Dcy1Tvm6ytvgdjlfUeow==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-freebsd-x64": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.3.0.tgz", + "integrity": "sha512-7LftKlaHunueAEiojhCn+Ef2CTXWsLgTl4hq0pkhkTBFI3ssj2bJXmH2L67mKpiAD5dz66JYk4zS66qzdnIOgw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm-glibc": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.3.0.tgz", + "integrity": "sha512-1apPw5cD2xBv1XIHPUlq0cO6iAaEUQ3BcY0ysSyD9Kuyw4MoWm1DV+W9mneWI+1g6OeP6dhikiFE6BlU+AToTQ==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-glibc": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.3.0.tgz", + "integrity": "sha512-mQ0gBSQEiq1k/MMkgcSB0Ic47UORZBmWoAWlMrTW6nbAGoLZP+h7AtUM7H3oDu34TBFFvjy4JCGP43JlylkTQA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-musl": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.3.0.tgz", + "integrity": "sha512-LXZAExpepJew0Gp8ZkJ+xDZaTQjLHv48h0p0Vw2VMFQ8A+RKrAvpFuPVCVwKJCr5SE+zvaG+Etg56qXvTDIedw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-glibc": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.3.0.tgz", + "integrity": "sha512-P7Wo91lKSeSgMTtG7CnBS6WrA5otr1K7shhSjKHNePVmfBHDoAOHYRXgUmhiNfbcGk0uMCHVcdbfxtuiZCHVow==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-musl": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.3.0.tgz", + "integrity": "sha512-+kiRE1JIq8QdxzwoYY+wzBs9YbJ34guBweTK8nlzLKimn5EQ2b2FSC+tAOpq302BuIMjyuUGvBiUhEcLIGMQ5g==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-wasm": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-wasm/-/watcher-wasm-2.3.0.tgz", + "integrity": "sha512-ejBAX8H0ZGsD8lSICDNyMbSEtPMWgDL0WFCt/0z7hyf5v8Imz4rAM8xY379mBsECkq/Wdqa5WEDLqtjZ+6NxfA==", + "bundleDependencies": [ + "napi-wasm" + ], + "dependencies": { + "is-glob": "^4.0.3", + "micromatch": "^4.0.5", + "napi-wasm": "^1.1.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-wasm/node_modules/napi-wasm": { + "version": "1.1.0", + "inBundle": true, + "license": "MIT" + }, + "node_modules/@parcel/watcher-win32-arm64": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.3.0.tgz", + "integrity": "sha512-35gXCnaz1AqIXpG42evcoP2+sNL62gZTMZne3IackM+6QlfMcJLy3DrjuL6Iks7Czpd3j4xRBzez3ADCj1l7Aw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-ia32": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.3.0.tgz", + "integrity": "sha512-FJS/IBQHhRpZ6PiCjFt1UAcPr0YmCLHRbTc00IBTrelEjlmmgIVLeOx4MSXzx2HFEy5Jo5YdhGpxCuqCyDJ5ow==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-x64": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.3.0.tgz", + "integrity": "sha512-dLx+0XRdMnVI62kU3wbXvbIRhLck4aE28bIGKbRGS7BJNt54IIj9+c/Dkqb+7DJEbHUZAX1bwaoM8PqVlHJmCA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, "node_modules/@stablelib/aead": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@stablelib/aead/-/aead-1.0.1.tgz", @@ -586,9 +876,9 @@ } }, "node_modules/@types/body-parser": { - "version": "1.19.3", - "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.3.tgz", - "integrity": "sha512-oyl4jvAfTGX9Bt6Or4H9ni1Z447/tQuxnZsytsCaExKlmJiU8sFgnIBRzJUpKwB5eWn9HuBYlUlVA74q/yN0eQ==", + "version": "1.19.5", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz", + "integrity": "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==", "dev": true, "dependencies": { "@types/connect": "*", @@ -596,27 +886,27 @@ } }, "node_modules/@types/bonjour": { - "version": "3.5.11", - "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.11.tgz", - "integrity": "sha512-isGhjmBtLIxdHBDl2xGwUzEM8AOyOvWsADWq7rqirdi/ZQoHnLWErHvsThcEzTX8juDRiZtzp2Qkv5bgNh6mAg==", + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.13.tgz", + "integrity": "sha512-z9fJ5Im06zvUL548KvYNecEVlA7cVDkGUi6kZusb04mpyEFKCIZJvloCcmpmLaIahDpOQGHaHmG6imtPMmPXGQ==", "dev": true, "dependencies": { "@types/node": "*" } }, "node_modules/@types/connect": { - "version": "3.4.36", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.36.tgz", - "integrity": "sha512-P63Zd/JUGq+PdrM1lv0Wv5SBYeA2+CORvbrXbngriYY0jzLUWfQMQQxOhjONEz/wlHOAxOdY7CY65rgQdTjq2w==", + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz", + "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==", "dev": true, "dependencies": { "@types/node": "*" } }, "node_modules/@types/connect-history-api-fallback": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.5.1.tgz", - "integrity": "sha512-iaQslNbARe8fctL5Lk+DsmgWOM83lM+7FzP0eQUJs1jd3kBE8NWqBTIT2S8SqQOJjxvt2eyIjpOuYeRXq2AdMw==", + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.5.4.tgz", + "integrity": "sha512-n6Cr2xS1h4uAulPRdlw6Jl6s1oG8KrVilPN2yUITEs+K48EzMJJ3W1xy8K5eWuFvjp3R74AOIGSmp2UfBJ8HFw==", "dev": true, "dependencies": { "@types/express-serve-static-core": "*", @@ -624,9 +914,9 @@ } }, "node_modules/@types/eslint": { - "version": "8.44.3", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.44.3.tgz", - "integrity": "sha512-iM/WfkwAhwmPff3wZuPLYiHX18HI24jU8k1ZSH7P8FHwxTjZ2P6CoX2wnF43oprR+YXJM6UUxATkNvyv/JHd+g==", + "version": "8.44.7", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.44.7.tgz", + "integrity": "sha512-f5ORu2hcBbKei97U73mf+l9t4zTGl74IqZ0GQk4oVea/VS8tQZYkUveSYojk+frraAVYId0V2WC9O4PTNru2FQ==", "dev": true, "dependencies": { "@types/estree": "*", @@ -634,9 +924,9 @@ } }, "node_modules/@types/eslint-scope": { - "version": "3.7.5", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.5.tgz", - "integrity": "sha512-JNvhIEyxVW6EoMIFIvj93ZOywYFatlpu9deeH6eSx6PE3WHYvHaQtmHmQeNw7aA81bYGBPPQqdtBm6b1SsQMmA==", + "version": "3.7.7", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.7.tgz", + "integrity": "sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==", "dev": true, "dependencies": { "@types/eslint": "*", @@ -644,15 +934,15 @@ } }, "node_modules/@types/estree": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.2.tgz", - "integrity": "sha512-VeiPZ9MMwXjO32/Xu7+OwflfmeoRwkE/qzndw42gGtgJwZopBnzy2gD//NN1+go1mADzkDcqf/KnFRSjTJ8xJA==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", + "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", "dev": true }, "node_modules/@types/express": { - "version": "4.17.18", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.18.tgz", - "integrity": "sha512-Sxv8BSLLgsBYmcnGdGjjEjqET2U+AKAdCRODmMiq02FgjwuV75Ut85DRpvFjyw/Mk0vgUOliGRU0UUmuuZHByQ==", + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz", + "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==", "dev": true, "dependencies": { "@types/body-parser": "*", @@ -662,9 +952,9 @@ } }, "node_modules/@types/express-serve-static-core": { - "version": "4.17.37", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.37.tgz", - "integrity": "sha512-ZohaCYTgGFcOP7u6aJOhY9uIZQgZ2vxC2yWoArY+FeDXlqeH66ZVBjgvg+RLVAS/DWNq4Ap9ZXu1+SUQiiWYMg==", + "version": "4.17.41", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.41.tgz", + "integrity": "sha512-OaJ7XLaelTgrvlZD8/aa0vvvxZdUmlCn6MtWeB7TkiKW70BQLc9XEPpDLPdbo52ZhXUCrznlWdCHWxJWtdyajA==", "dev": true, "dependencies": { "@types/node": "*", @@ -674,48 +964,60 @@ } }, "node_modules/@types/http-errors": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.2.tgz", - "integrity": "sha512-lPG6KlZs88gef6aD85z3HNkztpj7w2R7HmR3gygjfXCQmsLloWNARFkMuzKiiY8FGdh1XDpgBdrSf4aKDiA7Kg==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", + "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==", "dev": true }, "node_modules/@types/http-proxy": { - "version": "1.17.12", - "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.12.tgz", - "integrity": "sha512-kQtujO08dVtQ2wXAuSFfk9ASy3sug4+ogFR8Kd8UgP8PEuc1/G/8yjYRmp//PcDNJEUKOza/MrQu15bouEUCiw==", + "version": "1.17.14", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.14.tgz", + "integrity": "sha512-SSrD0c1OQzlFX7pGu1eXxSEjemej64aaNPRhhVYUGqXh0BtldAAx37MG8btcumvpgKyZp1F5Gn3JkktdxiFv6w==", "dev": true, "dependencies": { "@types/node": "*" } }, "node_modules/@types/json-schema": { - "version": "7.0.13", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.13.tgz", - "integrity": "sha512-RbSSoHliUbnXj3ny0CNFOoxrIDV6SUGyStHsvDqosw6CkdPV8TtWGlfecuK4ToyMEAql6pzNxgCFKanovUzlgQ==", + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", "dev": true }, "node_modules/@types/mime": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.3.tgz", - "integrity": "sha512-Ys+/St+2VF4+xuY6+kDIXGxbNRO0mesVg0bbxEfB97Od1Vjpjx9KD1qxs64Gcb3CWPirk9Xe+PT4YiiHQ9T+eg==", + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", + "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==", "dev": true }, "node_modules/@types/node": { - "version": "20.8.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.8.2.tgz", - "integrity": "sha512-Vvycsc9FQdwhxE3y3DzeIxuEJbWGDsnrxvMADzTDF/lcdR9/K+AQIeAghTQsHtotg/q0j3WEOYS/jQgSdWue3w==", - "dev": true + "version": "20.10.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.0.tgz", + "integrity": "sha512-D0WfRmU9TQ8I9PFx9Yc+EBHw+vSpIub4IDvQivcp26PtPrdMGAq5SDcpXEo/epqa/DXotVpekHiLNTg3iaKXBQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, + "node_modules/@types/node-forge": { + "version": "1.3.10", + "resolved": "https://registry.npmjs.org/@types/node-forge/-/node-forge-1.3.10.tgz", + "integrity": "sha512-y6PJDYN4xYBxwd22l+OVH35N+1fCYWiuC3aiP2SlXVE6Lo7SS+rSx9r89hLxrP4pn6n1lBGhHJ12pj3F3Mpttw==", + "dev": true, + "dependencies": { + "@types/node": "*" + } }, "node_modules/@types/qs": { - "version": "6.9.8", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.8.tgz", - "integrity": "sha512-u95svzDlTysU5xecFNTgfFG5RUWu1A9P0VzgpcIiGZA9iraHOdSzcxMxQ55DyeRaGCSxQi7LxXDI4rzq/MYfdg==", + "version": "6.9.10", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.10.tgz", + "integrity": "sha512-3Gnx08Ns1sEoCrWssEgTSJs/rsT2vhGP+Ja9cnnk9k4ALxinORlQneLXFeFKOTJMOeZUFD1s7w+w2AphTpvzZw==", "dev": true }, "node_modules/@types/range-parser": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.5.tgz", - "integrity": "sha512-xrO9OoVPqFuYyR/loIHjnbvvyRZREYKLjxV4+dY6v3FQR3stQ9ZxIGkaclF7YhI9hfjpuTbu14hZEy94qKLtOA==", + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz", + "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==", "dev": true }, "node_modules/@types/retry": { @@ -725,9 +1027,9 @@ "dev": true }, "node_modules/@types/send": { - "version": "0.17.2", - "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.2.tgz", - "integrity": "sha512-aAG6yRf6r0wQ29bkS+x97BIs64ZLxeE/ARwyS6wrldMm3C1MdKwCcnnEwMC1slI8wuxJOpiUH9MioC0A0i+GJw==", + "version": "0.17.4", + "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.4.tgz", + "integrity": "sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==", "dev": true, "dependencies": { "@types/mime": "^1", @@ -735,18 +1037,18 @@ } }, "node_modules/@types/serve-index": { - "version": "1.9.2", - "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.2.tgz", - "integrity": "sha512-asaEIoc6J+DbBKXtO7p2shWUpKacZOoMBEGBgPG91P8xhO53ohzHWGCs4ScZo5pQMf5ukQzVT9fhX1WzpHihig==", + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.4.tgz", + "integrity": "sha512-qLpGZ/c2fhSs5gnYsQxtDEq3Oy8SXPClIXkW5ghvAvsNuVSA8k+gCONcUCS/UjLEYvYps+e8uBtfgXgvhwfNug==", "dev": true, "dependencies": { "@types/express": "*" } }, "node_modules/@types/serve-static": { - "version": "1.15.3", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.3.tgz", - "integrity": "sha512-yVRvFsEMrv7s0lGhzrggJjNOSmZCdgCjw9xWrPr/kNNLp6FaDfMC1KaYl3TSJ0c58bECwNBMoQrZJ8hA8E1eFg==", + "version": "1.15.5", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.5.tgz", + "integrity": "sha512-PDRk21MnK70hja/YF8AHfC7yIsiQHn1rcXx7ijCFBX/k+XQJhQT/gw3xekXKJvx+5SXaMMS8oqQy09Mzvz2TuQ==", "dev": true, "dependencies": { "@types/http-errors": "*", @@ -755,18 +1057,18 @@ } }, "node_modules/@types/sockjs": { - "version": "0.3.34", - "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.34.tgz", - "integrity": "sha512-R+n7qBFnm/6jinlteC9DBL5dGiDGjWAvjo4viUanpnc/dG1y7uDoacXPIQ/PQEg1fI912SMHIa014ZjRpvDw4g==", + "version": "0.3.36", + "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.36.tgz", + "integrity": "sha512-MK9V6NzAS1+Ud7JV9lJLFqW85VbC9dq3LmwZCuBe4wBDgKC0Kj/jd8Xl+nSviU+Qc3+m7umHHyHg//2KSa0a0Q==", "dev": true, "dependencies": { "@types/node": "*" } }, "node_modules/@types/ws": { - "version": "8.5.6", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.6.tgz", - "integrity": "sha512-8B5EO9jLVCy+B58PLHvLDuOD8DRVMgQzq8d55SjLCOn9kqGyqOvy27exVaTio1q1nX5zLu8/6N0n2ThSxOM6tg==", + "version": "8.5.10", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.10.tgz", + "integrity": "sha512-vmQSUcfalpIq0R9q7uTo2lXs6eGIpt9wtnLdMv9LVpIjCA/+ufZRozlVoVelIYixx1ugCBKDhn89vnsEGOCx9A==", "dev": true, "dependencies": { "@types/node": "*" @@ -796,23 +1098,23 @@ } }, "node_modules/@walletconnect/core": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@walletconnect/core/-/core-2.10.2.tgz", - "integrity": "sha512-JQz/xp3SLEpTeRQctdck2ugSBVEpMxoSE+lFi2voJkZop1hv6P+uqr6E4PzjFluAjeAnKlT1xvra0aFWjPWVcw==", + "version": "2.10.5", + "resolved": "https://registry.npmjs.org/@walletconnect/core/-/core-2.10.5.tgz", + "integrity": "sha512-QnGHkA05KzJrtqExPqXm/TsstM1uTDI8tQT0x86/DuR6LdiYEntzSpVjnv7kKK6Mo9UxlXfud431dNRfOW5uJg==", "dependencies": { "@walletconnect/heartbeat": "1.2.1", "@walletconnect/jsonrpc-provider": "1.0.13", "@walletconnect/jsonrpc-types": "1.0.3", "@walletconnect/jsonrpc-utils": "1.0.8", - "@walletconnect/jsonrpc-ws-connection": "1.0.13", - "@walletconnect/keyvaluestorage": "^1.0.2", + "@walletconnect/jsonrpc-ws-connection": "1.0.14", + "@walletconnect/keyvaluestorage": "^1.1.1", "@walletconnect/logger": "^2.0.1", "@walletconnect/relay-api": "^1.0.9", "@walletconnect/relay-auth": "^1.0.4", "@walletconnect/safe-json": "^1.0.2", "@walletconnect/time": "^1.0.2", - "@walletconnect/types": "2.10.2", - "@walletconnect/utils": "2.10.2", + "@walletconnect/types": "2.10.5", + "@walletconnect/utils": "2.10.5", "events": "^3.3.0", "lodash.isequal": "4.5.0", "uint8arrays": "^3.1.0" @@ -875,55 +1177,31 @@ } }, "node_modules/@walletconnect/jsonrpc-ws-connection": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-ws-connection/-/jsonrpc-ws-connection-1.0.13.tgz", - "integrity": "sha512-mfOM7uFH4lGtQxG+XklYuFBj6dwVvseTt5/ahOkkmpcAEgz2umuzu7fTR+h5EmjQBdrmYyEBOWADbeaFNxdySg==", + "version": "1.0.14", + "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-ws-connection/-/jsonrpc-ws-connection-1.0.14.tgz", + "integrity": "sha512-Jsl6fC55AYcbkNVkwNM6Jo+ufsuCQRqViOQ8ZBPH9pRREHH9welbBiszuTLqEJiQcO/6XfFDl6bzCJIkrEi8XA==", "dependencies": { "@walletconnect/jsonrpc-utils": "^1.0.6", "@walletconnect/safe-json": "^1.0.2", "events": "^3.3.0", - "tslib": "1.14.1", "ws": "^7.5.1" } }, - "node_modules/@walletconnect/jsonrpc-ws-connection/node_modules/ws": { - "version": "7.5.9", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", - "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", - "engines": { - "node": ">=8.3.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, "node_modules/@walletconnect/keyvaluestorage": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@walletconnect/keyvaluestorage/-/keyvaluestorage-1.0.2.tgz", - "integrity": "sha512-U/nNG+VLWoPFdwwKx0oliT4ziKQCEoQ27L5Hhw8YOFGA2Po9A9pULUYNWhDgHkrb0gYDNt//X7wABcEWWBd3FQ==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@walletconnect/keyvaluestorage/-/keyvaluestorage-1.1.1.tgz", + "integrity": "sha512-V7ZQq2+mSxAq7MrRqDxanTzu2RcElfK1PfNYiaVnJgJ7Q7G7hTVwF8voIBx92qsRyGHZihrwNPHuZd1aKkd0rA==", "dependencies": { - "safe-json-utils": "^1.1.1", - "tslib": "1.14.1" + "@walletconnect/safe-json": "^1.0.1", + "idb-keyval": "^6.2.1", + "unstorage": "^1.9.0" }, "peerDependencies": { - "@react-native-async-storage/async-storage": "1.x", - "lokijs": "1.x" + "@react-native-async-storage/async-storage": "1.x" }, "peerDependenciesMeta": { "@react-native-async-storage/async-storage": { "optional": true - }, - "lokijs": { - "optional": true } } }, @@ -967,18 +1245,18 @@ } }, "node_modules/@walletconnect/sign-client": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@walletconnect/sign-client/-/sign-client-2.10.2.tgz", - "integrity": "sha512-vviSLV3f92I0bReX+OLr1HmbH0uIzYEQQFd1MzIfDk9PkfFT/LLAHhUnDaIAMkIdippqDcJia+5QEtT4JihL3Q==", + "version": "2.10.5", + "resolved": "https://registry.npmjs.org/@walletconnect/sign-client/-/sign-client-2.10.5.tgz", + "integrity": "sha512-HEYsoeGC6fGplQy0NIZSRNHgOwZwQ892UWG1Ahkcasf2R35QaBgnTVQkSCisl1PAAOKXZG7yB1YDoAAZBF+g5Q==", "dependencies": { - "@walletconnect/core": "2.10.2", + "@walletconnect/core": "2.10.5", "@walletconnect/events": "^1.0.1", "@walletconnect/heartbeat": "1.2.1", "@walletconnect/jsonrpc-utils": "1.0.8", "@walletconnect/logger": "^2.0.1", "@walletconnect/time": "^1.0.2", - "@walletconnect/types": "2.10.2", - "@walletconnect/utils": "2.10.2", + "@walletconnect/types": "2.10.5", + "@walletconnect/utils": "2.10.5", "events": "^3.3.0" } }, @@ -991,22 +1269,22 @@ } }, "node_modules/@walletconnect/types": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@walletconnect/types/-/types-2.10.2.tgz", - "integrity": "sha512-luNV+07Wdla4STi9AejseCQY31tzWKQ5a7C3zZZaRK/di+rFaAAb7YW04OP4klE7tw/mJRGPTlekZElmHxO8kQ==", + "version": "2.10.5", + "resolved": "https://registry.npmjs.org/@walletconnect/types/-/types-2.10.5.tgz", + "integrity": "sha512-N8xaN7/Kob93rKxKDaT6oy6symgIkAwyLqq0/dLJEhXfv7S/gyNvDka4SosjVVTc4oTvE1+OmxNIR8pB1DuwJw==", "dependencies": { "@walletconnect/events": "^1.0.1", "@walletconnect/heartbeat": "1.2.1", "@walletconnect/jsonrpc-types": "1.0.3", - "@walletconnect/keyvaluestorage": "^1.0.2", + "@walletconnect/keyvaluestorage": "^1.1.1", "@walletconnect/logger": "^2.0.1", "events": "^3.3.0" } }, "node_modules/@walletconnect/utils": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@walletconnect/utils/-/utils-2.10.2.tgz", - "integrity": "sha512-syxXRpc2yhSknMu3IfiBGobxOY7fLfLTJuw+ppKaeO6WUdZpIit3wfuGOcc0Ms3ZPFCrGfyGOoZsCvgdXtptRg==", + "version": "2.10.5", + "resolved": "https://registry.npmjs.org/@walletconnect/utils/-/utils-2.10.5.tgz", + "integrity": "sha512-3yeclD9/AlPEIHBqBVzrHUO/KRAEIXVK0ViIQ5oUH+zT3TpdsDGDiW1Z0TsAQ1EiYoiiz8dOQzd80a3eZVwnrg==", "dependencies": { "@stablelib/chacha20poly1305": "1.0.1", "@stablelib/hkdf": "1.0.1", @@ -1016,7 +1294,7 @@ "@walletconnect/relay-api": "^1.0.9", "@walletconnect/safe-json": "^1.0.2", "@walletconnect/time": "^1.0.2", - "@walletconnect/types": "2.10.2", + "@walletconnect/types": "2.10.5", "@walletconnect/window-getters": "^1.0.1", "@walletconnect/window-metadata": "^1.0.1", "detect-browser": "5.3.0", @@ -1025,18 +1303,18 @@ } }, "node_modules/@walletconnect/web3wallet": { - "version": "1.9.2", - "resolved": "https://registry.npmjs.org/@walletconnect/web3wallet/-/web3wallet-1.9.2.tgz", - "integrity": "sha512-IUEmUWKNErWSIMxyvHmFm8NYinsSybaw2Q2Z+7AJdlP+bTA7jg2eeyOGrJsFmBRrfXD3QT/rS/fRDr/LRIvCGg==", + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/@walletconnect/web3wallet/-/web3wallet-1.9.4.tgz", + "integrity": "sha512-daoISghTC4693wExQN1X7arUBNF9jZuHERRTYCbEokMz2y/AmocMsanFx6g6MlIJumcBX6moYResygWltYI6mg==", "dependencies": { "@walletconnect/auth-client": "2.1.2", - "@walletconnect/core": "2.10.2", + "@walletconnect/core": "2.10.5", "@walletconnect/jsonrpc-provider": "1.0.13", "@walletconnect/jsonrpc-utils": "1.0.8", "@walletconnect/logger": "2.0.1", - "@walletconnect/sign-client": "2.10.2", - "@walletconnect/types": "2.10.2", - "@walletconnect/utils": "2.10.2" + "@walletconnect/sign-client": "2.10.5", + "@walletconnect/types": "2.10.5", + "@walletconnect/utils": "2.10.5" } }, "node_modules/@walletconnect/window-getters": { @@ -1272,10 +1550,9 @@ } }, "node_modules/acorn": { - "version": "8.10.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", - "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", - "dev": true, + "version": "8.11.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.2.tgz", + "integrity": "sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==", "bin": { "acorn": "bin/acorn" }, @@ -1372,7 +1649,6 @@ "version": "3.1.3", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dev": true, "dependencies": { "normalize-path": "^3.0.0", "picomatch": "^2.0.4" @@ -1381,6 +1657,25 @@ "node": ">= 8" } }, + "node_modules/arch": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz", + "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, "node_modules/array-flatten": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", @@ -1411,7 +1706,6 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true, "engines": { "node": ">=8" } @@ -1454,6 +1748,21 @@ "node": ">= 0.8" } }, + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, "node_modules/bonjour-service": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.1.1.tgz", @@ -1480,7 +1789,6 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, "dependencies": { "fill-range": "^7.0.1" }, @@ -1541,22 +1849,23 @@ } }, "node_modules/call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.5.tgz", + "integrity": "sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==", "dev": true, "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.1", + "set-function-length": "^1.1.1" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/caniuse-lite": { - "version": "1.0.30001543", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001543.tgz", - "integrity": "sha512-qxdO8KPWPQ+Zk6bvNpPeQIOH47qZSYdFZd6dXQzb2KzhnSXju4Kd7H1PkSJx6NICSMgo/IhRZRhhfPTHYpJUCA==", + "version": "1.0.30001565", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001565.tgz", + "integrity": "sha512-xrE//a3O7TP0vaJ8ikzkD2c2NgcVUvsEe2IvFTntV4Yd1Z9FVzh+gW+enX96L0psrbaFMcVcH2l90xNuGDWc8w==", "dev": true, "funding": [ { @@ -1577,7 +1886,6 @@ "version": "3.5.3", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "dev": true, "funding": [ { "type": "individual", @@ -1609,6 +1917,30 @@ "node": ">=6.0" } }, + "node_modules/citty": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/citty/-/citty-0.1.5.tgz", + "integrity": "sha512-AS7n5NSc0OQVMV9v6wt3ByujNIrne0/cTjiC2MYqhvao57VNfiuVksTSr2p17nVOhEr2KtqiAkGwHcgMC/qUuQ==", + "dependencies": { + "consola": "^3.2.3" + } + }, + "node_modules/clipboardy": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/clipboardy/-/clipboardy-3.0.0.tgz", + "integrity": "sha512-Su+uU5sr1jkUy1sGRpLKjKrvEOVXgSgiSInwa/qeID6aJ07yh+5NWc3h2QfjHjBnfX4LhtFcuAWKUsJ3r+fjbg==", + "dependencies": { + "arch": "^2.2.0", + "execa": "^5.1.1", + "is-wsl": "^2.2.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/clone-deep": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", @@ -1623,6 +1955,14 @@ "node": ">=6" } }, + "node_modules/cluster-key-slot": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/cluster-key-slot/-/cluster-key-slot-1.1.2.tgz", + "integrity": "sha512-RMr0FhtfXemyinomL4hrWcYJxmX6deFdCxpJzhDttxgO1+bcCnkk+9drydLVDmAMG7NE6aN/fl4F7ucU/90gAA==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/colorette": { "version": "2.0.20", "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", @@ -1665,6 +2005,21 @@ "node": ">= 0.8.0" } }, + "node_modules/compression/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/compression/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, "node_modules/compression/node_modules/safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", @@ -1686,6 +2041,14 @@ "node": ">=0.8" } }, + "node_modules/consola": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/consola/-/consola-3.2.3.tgz", + "integrity": "sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==", + "engines": { + "node": "^14.18.0 || >=16.10.0" + } + }, "node_modules/content-disposition": { "version": "0.5.4", "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", @@ -1716,6 +2079,11 @@ "node": ">= 0.6" } }, + "node_modules/cookie-es": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/cookie-es/-/cookie-es-1.0.0.tgz", + "integrity": "sha512-mWYvfOLrfEc996hlKcdABeIiPHUPC6DM2QYZdGGOvhOTbA3tjm2eBwqlJpoFdjC89NI4Qt6h0Pu06Mp+1Pj5OQ==" + }, "node_modules/cookie-signature": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", @@ -1732,7 +2100,6 @@ "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -1743,12 +2110,19 @@ } }, "node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", "dependencies": { - "ms": "2.0.0" + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } } }, "node_modules/decode-uri-component": { @@ -1771,6 +2145,20 @@ "node": ">= 10" } }, + "node_modules/define-data-property": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.1.tgz", + "integrity": "sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.2.1", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/define-lazy-prop": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", @@ -1780,6 +2168,19 @@ "node": ">=8" } }, + "node_modules/defu": { + "version": "6.1.3", + "resolved": "https://registry.npmjs.org/defu/-/defu-6.1.3.tgz", + "integrity": "sha512-Vy2wmG3NTkmHNg/kzpuvHhkqeIx3ODWqasgCRbKtbXEN0G+HpEEv9BtJLp7ZG1CZloFaC41Ah3ZFbq7aqCqMeQ==" + }, + "node_modules/denque": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/denque/-/denque-2.1.0.tgz", + "integrity": "sha512-HVQE3AAb/pxF8fQAoiqpvg9i3evqug3hoiwakOyZAwJm+6vZehbkYXZ0l4JxS+I3QxM97v5aaRNhj8v5oBhekw==", + "engines": { + "node": ">=0.10" + } + }, "node_modules/depd": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", @@ -1789,6 +2190,11 @@ "node": ">= 0.8" } }, + "node_modules/destr": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/destr/-/destr-2.0.2.tgz", + "integrity": "sha512-65AlobnZMiCET00KaFFjUefxDX0khFA/E4myqZ7a6Sq1yZtR8+FVIvilVX66vF2uobSumxooYZChiRPCKNqhmg==" + }, "node_modules/destroy": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", @@ -1804,6 +2210,17 @@ "resolved": "https://registry.npmjs.org/detect-browser/-/detect-browser-5.3.0.tgz", "integrity": "sha512-53rsFbGdwMwlF7qvCt0ypLM5V5/Mbl0szB7GPN8y9NCcbknYOeVVXdrXEq+90IwAfrrzt6Hd+u2E2ntakICU8w==" }, + "node_modules/detect-libc": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", + "bin": { + "detect-libc": "bin/detect-libc.js" + }, + "engines": { + "node": ">=0.10" + } + }, "node_modules/detect-node": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", @@ -1846,9 +2263,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.539", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.539.tgz", - "integrity": "sha512-wRmWJ8F7rgmINuI32S6r2SLrw/h/bJQsDSvBiq9GBfvc2Lh73qTOwn73r3Cf67mjVgFGJYcYtmERzySa5jIWlg==", + "version": "1.4.596", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.596.tgz", + "integrity": "sha512-zW3zbZ40Icb2BCWjm47nxwcFGYlIgdXkAx85XDO7cyky9J4QQfq8t0W19/TLZqq3JPQXtlv8BPIGmfa9Jb4scg==", "dev": true }, "node_modules/elliptic": { @@ -1901,9 +2318,9 @@ } }, "node_modules/envinfo": { - "version": "7.10.0", - "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.10.0.tgz", - "integrity": "sha512-ZtUjZO6l5mwTHvc1L9+1q5p/R3wTopcfqMW8r5t8SJSKqeVI/LtajORwRFEKpEFuekjD0VBjwu1HMxL4UalIRw==", + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.11.0.tgz", + "integrity": "sha512-G9/6xF1FPbIw0TtalAMaVPpiq2aDEuKLXM314jPVAO9r2fo2a4BLqMNkmRS7O/xPPZ+COAhGIz3ETvHEV3eUcg==", "dev": true, "bin": { "envinfo": "dist/cli.js" @@ -1913,9 +2330,9 @@ } }, "node_modules/es-module-lexer": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.3.1.tgz", - "integrity": "sha512-JUFAyicQV9mXc3YRxPnDlrfBKpqt6hUYzz9/boprUJHs4e4KVr3XwOF70doO6gwXUor6EWZJAyWAfKki84t20Q==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.4.1.tgz", + "integrity": "sha512-cXLGjP0c4T3flZJKQSuziYoq7MlT+rnvfZjfp7h+I7K9BNX54kP9nyWvdbwjQ4u1iWbOL4u96fgeZLToQlZC7w==", "dev": true }, "node_modules/escalade": { @@ -2003,7 +2420,6 @@ "version": "5.1.1", "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "dev": true, "dependencies": { "cross-spawn": "^7.0.3", "get-stream": "^6.0.0", @@ -2070,6 +2486,21 @@ "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", "dev": true }, + "node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/express/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, "node_modules/fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", @@ -2115,7 +2546,6 @@ "version": "7.0.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, "dependencies": { "to-regex-range": "^5.0.1" }, @@ -2149,6 +2579,21 @@ "node": ">= 0.8" } }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, "node_modules/find-up": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", @@ -2162,6 +2607,15 @@ "node": ">=8" } }, + "node_modules/flat": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", + "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", + "dev": true, + "bin": { + "flat": "cli.js" + } + }, "node_modules/follow-redirects": { "version": "1.15.3", "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.3.tgz", @@ -2216,7 +2670,6 @@ "version": "2.3.3", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "dev": true, "hasInstallScript": true, "optional": true, "os": [ @@ -2227,31 +2680,38 @@ } }, "node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/get-intrinsic": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.1.tgz", - "integrity": "sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==", + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.2.tgz", + "integrity": "sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==", "dev": true, "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", + "function-bind": "^1.1.2", "has-proto": "^1.0.1", - "has-symbols": "^1.0.3" + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/get-port-please": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/get-port-please/-/get-port-please-3.1.1.tgz", + "integrity": "sha512-3UBAyM3u4ZBVYDsxOQfJDxEa6XTbpBDrOjp4mf7ExFRt5BKs/QywQQiJsh2B+hxcZLSapWqCRvElUe8DnKcFHA==" + }, "node_modules/get-stream": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true, "engines": { "node": ">=10" }, @@ -2283,7 +2743,6 @@ "version": "5.1.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, "dependencies": { "is-glob": "^4.0.1" }, @@ -2297,30 +2756,45 @@ "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", "dev": true }, + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/graceful-fs": { "version": "4.2.11", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", "dev": true }, + "node_modules/h3": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/h3/-/h3-1.9.0.tgz", + "integrity": "sha512-+F3ZqrNV/CFXXfZ2lXBINHi+rM4Xw3CDC5z2CDK3NMPocjonKipGLLDSkrqY9DOrioZNPTIdDMWfQKm//3X2DA==", + "dependencies": { + "cookie-es": "^1.0.0", + "defu": "^6.1.3", + "destr": "^2.0.2", + "iron-webcrypto": "^1.0.0", + "radix3": "^1.1.0", + "ufo": "^1.3.2", + "uncrypto": "^0.1.3", + "unenv": "^1.7.4" + } + }, "node_modules/handle-thing": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", "dev": true }, - "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1" - }, - "engines": { - "node": ">= 0.4.0" - } - }, "node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -2330,6 +2804,18 @@ "node": ">=8" } }, + "node_modules/has-property-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.1.tgz", + "integrity": "sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.2.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/has-proto": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", @@ -2363,6 +2849,18 @@ "minimalistic-assert": "^1.0.1" } }, + "node_modules/hasown": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", + "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/hmac-drbg": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", @@ -2497,11 +2995,19 @@ } } }, + "node_modules/http-shutdown": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/http-shutdown/-/http-shutdown-1.2.2.tgz", + "integrity": "sha512-S9wWkJ/VSY9/k4qcjG318bqJNruzE4HySUhFYknwmu6LBP97KLLfwNf+n4V1BHurvFNkSKLFnK/RsuUnRTf9Vw==", + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } + }, "node_modules/human-signals": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - "dev": true, "engines": { "node": ">=10.17.0" } @@ -2518,6 +3024,11 @@ "node": ">=0.10.0" } }, + "node_modules/idb-keyval": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/idb-keyval/-/idb-keyval-6.2.1.tgz", + "integrity": "sha512-8Sb3veuYCyrZL+VBt9LJfZjLUPWVvqn8tG28VqYNFCo43KHcKuq+b4EiXGeuaLAQWL2YmyDgMp2aSpH9JHsEQg==" + }, "node_modules/import-local": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", @@ -2561,6 +3072,29 @@ "node": ">=10.13.0" } }, + "node_modules/ioredis": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ioredis/-/ioredis-5.3.2.tgz", + "integrity": "sha512-1DKMMzlIHM02eBBVOFQ1+AolGjs6+xEcM4PDL7NqOS6szq7H9jSaEkIUH6/a5Hl241LzW6JLSiAbNvTQjUupUA==", + "dependencies": { + "@ioredis/commands": "^1.1.1", + "cluster-key-slot": "^1.1.0", + "debug": "^4.3.4", + "denque": "^2.1.0", + "lodash.defaults": "^4.2.0", + "lodash.isarguments": "^3.1.0", + "redis-errors": "^1.2.0", + "redis-parser": "^3.0.0", + "standard-as-callback": "^2.1.0" + }, + "engines": { + "node": ">=12.22.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/ioredis" + } + }, "node_modules/ipaddr.js": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.1.0.tgz", @@ -2570,11 +3104,18 @@ "node": ">= 10" } }, + "node_modules/iron-webcrypto": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/iron-webcrypto/-/iron-webcrypto-1.0.0.tgz", + "integrity": "sha512-anOK1Mktt8U1Xi7fCM3RELTuYbnFikQY5VtrDj7kPgpejV7d43tWKhzgioO0zpkazLEL/j/iayRqnJhrGfqUsg==", + "funding": { + "url": "https://github.com/sponsors/brc-dd" + } + }, "node_modules/is-binary-path": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, "dependencies": { "binary-extensions": "^2.0.0" }, @@ -2583,12 +3124,12 @@ } }, "node_modules/is-core-module": { - "version": "2.13.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.0.tgz", - "integrity": "sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==", + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", "dev": true, "dependencies": { - "has": "^1.0.3" + "hasown": "^2.0.0" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -2598,7 +3139,6 @@ "version": "2.2.1", "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "dev": true, "bin": { "is-docker": "cli.js" }, @@ -2613,7 +3153,6 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true, "engines": { "node": ">=0.10.0" } @@ -2622,7 +3161,6 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, "dependencies": { "is-extglob": "^2.1.1" }, @@ -2634,7 +3172,6 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, "engines": { "node": ">=0.12.0" } @@ -2667,7 +3204,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "dev": true, "engines": { "node": ">=8" }, @@ -2679,7 +3215,6 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dev": true, "dependencies": { "is-docker": "^2.0.0" }, @@ -2696,8 +3231,7 @@ "node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" }, "node_modules/isobject": { "version": "3.0.1", @@ -2731,6 +3265,14 @@ "node": ">= 10.13.0" } }, + "node_modules/jiti": { + "version": "1.21.0", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.0.tgz", + "integrity": "sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==", + "bin": { + "jiti": "bin/jiti.js" + } + }, "node_modules/js-sha3": { "version": "0.8.0", "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", @@ -2748,6 +3290,11 @@ "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", "dev": true }, + "node_modules/jsonc-parser": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz", + "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==" + }, "node_modules/keyvaluestorage-interface": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/keyvaluestorage-interface/-/keyvaluestorage-interface-1.0.0.tgz", @@ -2763,13 +3310,41 @@ } }, "node_modules/launch-editor": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/launch-editor/-/launch-editor-2.6.0.tgz", - "integrity": "sha512-JpDCcQnyAAzZZaZ7vEiSqL690w7dAEyLao+KC96zBplnYbJS7TYNjvM3M7y3dGz+v7aIsJk3hllWuc0kWAjyRQ==", + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/launch-editor/-/launch-editor-2.6.1.tgz", + "integrity": "sha512-eB/uXmFVpY4zezmGp5XtU21kwo7GBbKB+EQ+UZeWtGb9yAM5xt/Evk+lYH3eRNAtId+ej4u7TYPFZ07w4s7rRw==", "dev": true, "dependencies": { "picocolors": "^1.0.0", - "shell-quote": "^1.7.3" + "shell-quote": "^1.8.1" + } + }, + "node_modules/listhen": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/listhen/-/listhen-1.5.5.tgz", + "integrity": "sha512-LXe8Xlyh3gnxdv4tSjTjscD1vpr/2PRpzq8YIaMJgyKzRG8wdISlWVWnGThJfHnlJ6hmLt2wq1yeeix0TEbuoA==", + "dependencies": { + "@parcel/watcher": "^2.3.0", + "@parcel/watcher-wasm": "2.3.0", + "citty": "^0.1.4", + "clipboardy": "^3.0.0", + "consola": "^3.2.3", + "defu": "^6.1.2", + "get-port-please": "^3.1.1", + "h3": "^1.8.1", + "http-shutdown": "^1.2.2", + "jiti": "^1.20.0", + "mlly": "^1.4.2", + "node-forge": "^1.3.1", + "pathe": "^1.1.1", + "std-env": "^3.4.3", + "ufo": "^1.3.0", + "untun": "^0.1.2", + "uqr": "^0.1.2" + }, + "bin": { + "listen": "bin/listhen.mjs", + "listhen": "bin/listhen.mjs" } }, "node_modules/loader-runner": { @@ -2793,11 +3368,29 @@ "node": ">=8" } }, + "node_modules/lodash.defaults": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", + "integrity": "sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ==" + }, + "node_modules/lodash.isarguments": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz", + "integrity": "sha512-chi4NHZlZqZD18a0imDHnZPrDeBbTtVN7GXMwuGdRH9qotxAjYs3aVLKc7zNOG9eddR5Ksd8rvFEBc9SsggPpg==" + }, "node_modules/lodash.isequal": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==" }, + "node_modules/lru-cache": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", + "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==", + "engines": { + "node": "14 || >=16.14" + } + }, "node_modules/media-typer": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", @@ -2828,8 +3421,7 @@ "node_modules/merge-stream": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" }, "node_modules/methods": { "version": "1.1.2", @@ -2844,7 +3436,6 @@ "version": "4.0.5", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dev": true, "dependencies": { "braces": "^3.0.2", "picomatch": "^2.3.1" @@ -2854,15 +3445,14 @@ } }, "node_modules/mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true, + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-3.0.0.tgz", + "integrity": "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==", "bin": { "mime": "cli.js" }, "engines": { - "node": ">=4" + "node": ">=10.0.0" } }, "node_modules/mime-db": { @@ -2890,7 +3480,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true, "engines": { "node": ">=6" } @@ -2917,11 +3506,29 @@ "node": "*" } }, + "node_modules/mlly": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.4.2.tgz", + "integrity": "sha512-i/Ykufi2t1EZ6NaPLdfnZk2AX8cs0d+mTzVKuPfqPKPatxLApaBoxJQ9x1/uckXtrS/U5oisPMDkNs0yQTaBRg==", + "dependencies": { + "acorn": "^8.10.0", + "pathe": "^1.1.1", + "pkg-types": "^1.0.3", + "ufo": "^1.3.0" + } + }, + "node_modules/mri": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz", + "integrity": "sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==", + "engines": { + "node": ">=4" + } + }, "node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" }, "node_modules/multicast-dns": { "version": "7.2.5", @@ -2956,6 +3563,11 @@ "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", "dev": true }, + "node_modules/node-addon-api": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.0.0.tgz", + "integrity": "sha512-vgbBJTS4m5/KkE16t5Ly0WW9hz46swAstv0hYYwMtbG7AznRhNyfLRe8HZAiWIpcHzoO7HxhLuBQj9rJ/Ho0ZA==" + }, "node_modules/node-fetch": { "version": "2.7.0", "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", @@ -2975,11 +3587,15 @@ } } }, + "node_modules/node-fetch-native": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/node-fetch-native/-/node-fetch-native-1.4.1.tgz", + "integrity": "sha512-NsXBU0UgBxo2rQLOeWNZqS3fvflWePMECr8CoSWoSTqCqGbVVsvl9vZu1HfQicYN0g5piV9Gh8RTEvo/uP752w==" + }, "node_modules/node-forge": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", - "dev": true, "engines": { "node": ">= 6.13.0" } @@ -2994,7 +3610,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, "engines": { "node": ">=0.10.0" } @@ -3003,7 +3618,6 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, "dependencies": { "path-key": "^3.0.0" }, @@ -3012,9 +3626,9 @@ } }, "node_modules/object-inspect": { - "version": "1.12.3", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", - "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==", + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", + "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", "dev": true, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -3026,6 +3640,16 @@ "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", "dev": true }, + "node_modules/ofetch": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/ofetch/-/ofetch-1.3.3.tgz", + "integrity": "sha512-s1ZCMmQWXy4b5K/TW9i/DtiN8Ku+xCiHcjQ6/J/nDdssirrQNOoB165Zu8EqLMA2lln1JUth9a0aW9Ap2ctrUg==", + "dependencies": { + "destr": "^2.0.1", + "node-fetch-native": "^1.4.0", + "ufo": "^1.3.0" + } + }, "node_modules/on-exit-leak-free": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/on-exit-leak-free/-/on-exit-leak-free-0.2.0.tgz", @@ -3064,7 +3688,6 @@ "version": "5.1.2", "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dev": true, "dependencies": { "mimic-fn": "^2.1.0" }, @@ -3172,7 +3795,6 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, "engines": { "node": ">=8" } @@ -3189,6 +3811,11 @@ "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==", "dev": true }, + "node_modules/pathe": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.1.tgz", + "integrity": "sha512-d+RQGp0MAYTIaDBIMmOfMwz3E+LOZnxx1HZd5R18mmCZY0QBlK0LDZfPc8FW8Ed2DlvsuE6PRjroDY+wg4+j/Q==" + }, "node_modules/picocolors": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", @@ -3199,7 +3826,6 @@ "version": "2.3.1", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, "engines": { "node": ">=8.6" }, @@ -3254,6 +3880,16 @@ "node": ">=8" } }, + "node_modules/pkg-types": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.0.3.tgz", + "integrity": "sha512-nN7pYi0AQqJnoLPC9eHFQ8AcyaixBUOwvqc5TDnIKCMEE6I0y8P7OKA7fPexsXGCGxQDl/cmrLAp26LhcwxZ4A==", + "dependencies": { + "jsonc-parser": "^3.2.0", + "mlly": "^1.2.0", + "pathe": "^1.1.0" + } + }, "node_modules/process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", @@ -3288,9 +3924,9 @@ } }, "node_modules/punycode": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", - "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", "dev": true, "engines": { "node": ">=6" @@ -3333,6 +3969,11 @@ "resolved": "https://registry.npmjs.org/quick-format-unescaped/-/quick-format-unescaped-4.0.4.tgz", "integrity": "sha512-tYC1Q1hgyRuHgloV/YXs2w15unPVh8qfu/qCTfhTYamaw7fyhumKa2yGpdSo87vY32rIclj+4fWYQXUMs9EHvg==" }, + "node_modules/radix3": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/radix3/-/radix3-1.1.0.tgz", + "integrity": "sha512-pNsHDxbGORSvuSScqNJ+3Km6QAVqk8CfsCBIEoDgpqLrkD2f3QM4I7d1ozJJ172OmIcoUcerZaNWqtLkRXTV3A==" + }, "node_modules/randombytes": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", @@ -3392,7 +4033,6 @@ "version": "3.6.0", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, "dependencies": { "picomatch": "^2.2.1" }, @@ -3420,6 +4060,25 @@ "node": ">= 10.13.0" } }, + "node_modules/redis-errors": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/redis-errors/-/redis-errors-1.2.0.tgz", + "integrity": "sha512-1qny3OExCf0UvUV/5wpYKf2YwPcOqXzkwKKSmKHiE6ZMQs5heeE/c8eXK+PNllPvmjgAbfnsbpkGZWy8cBpn9w==", + "engines": { + "node": ">=4" + } + }, + "node_modules/redis-parser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/redis-parser/-/redis-parser-3.0.0.tgz", + "integrity": "sha512-DJnGAeenTdpMEH6uAJRK/uiyEIH9WVsUmoLwzudwGJUwZPp80PDBWPHXSAGNPwNvIXAbe7MSUB1zQFugFml66A==", + "dependencies": { + "redis-errors": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/require-from-string": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", @@ -3436,9 +4095,9 @@ "dev": true }, "node_modules/resolve": { - "version": "1.22.6", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.6.tgz", - "integrity": "sha512-njhxM7mV12JfufShqGy3Rz8j11RPdLy4xi15UurGJeoHLfJpVXKdh3ueuOqbYUcDZnffr6X739JBo5LzyahEsw==", + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", "dev": true, "dependencies": { "is-core-module": "^2.13.0", @@ -3516,11 +4175,6 @@ } ] }, - "node_modules/safe-json-utils": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/safe-json-utils/-/safe-json-utils-1.1.1.tgz", - "integrity": "sha512-SAJWGKDs50tAbiDXLf89PDwt9XYkWyANFWVzn4dTXl5QyI8t2o/bW5/OJl3lvc2WVU4MEpTo9Yz5NVFNsp+OJQ==" - }, "node_modules/safe-stable-stringify": { "version": "2.4.3", "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz", @@ -3560,11 +4214,12 @@ "dev": true }, "node_modules/selfsigned": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.1.1.tgz", - "integrity": "sha512-GSL3aowiF7wa/WtSFwnUrludWFoNhftq8bUkH9pkzjpN2XSPOAYEgg6e0sS9s0rZwgJzJiQRPU18A6clnoW5wQ==", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.4.1.tgz", + "integrity": "sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==", "dev": true, "dependencies": { + "@types/node-forge": "^1.3.0", "node-forge": "^1" }, "engines": { @@ -3595,6 +4250,33 @@ "node": ">= 0.8.0" } }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/send/node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/send/node_modules/ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", @@ -3628,6 +4310,15 @@ "node": ">= 0.8.0" } }, + "node_modules/serve-index/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, "node_modules/serve-index/node_modules/depd": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", @@ -3658,6 +4349,12 @@ "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", "dev": true }, + "node_modules/serve-index/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, "node_modules/serve-index/node_modules/setprototypeof": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", @@ -3688,6 +4385,21 @@ "node": ">= 0.8.0" } }, + "node_modules/set-function-length": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.1.1.tgz", + "integrity": "sha512-VoaqjbBJKiWtg4yRcKBQ7g7wnGnLV3M8oLvVWwOk2PdYY6PEFegR1vezXR0tw6fZGF9csVakIRjrJiy2veSBFQ==", + "dev": true, + "dependencies": { + "define-data-property": "^1.1.1", + "get-intrinsic": "^1.2.1", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/setprototypeof": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", @@ -3710,7 +4422,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, "dependencies": { "shebang-regex": "^3.0.0" }, @@ -3722,7 +4433,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, "engines": { "node": ">=8" } @@ -3753,8 +4463,7 @@ "node_modules/signal-exit": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" }, "node_modules/sockjs": { "version": "0.3.24", @@ -3824,52 +4533,6 @@ "wbuf": "^1.7.3" } }, - "node_modules/spdy-transport/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/spdy-transport/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "node_modules/spdy/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/spdy/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, "node_modules/split-on-first": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/split-on-first/-/split-on-first-1.1.0.tgz", @@ -3886,6 +4549,11 @@ "node": ">= 10.x" } }, + "node_modules/standard-as-callback": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/standard-as-callback/-/standard-as-callback-2.1.0.tgz", + "integrity": "sha512-qoRRSyROncaz1z0mvYqIE4lCd9p2R90i6GxW3uZv5ucSu8tU7B5HXUP1gG8pVZsYNVaXjk8ClXHPttLyxAL48A==" + }, "node_modules/statuses": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", @@ -3895,6 +4563,11 @@ "node": ">= 0.8" } }, + "node_modules/std-env": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.5.0.tgz", + "integrity": "sha512-JGUEaALvL0Mf6JCfYnJOTcobY+Nc7sG/TemDRBqCA0wEr4DER7zDchaaixTlmOxAjG1uRJmX82EQcxwTQTkqVA==" + }, "node_modules/stream-shift": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", @@ -3920,7 +4593,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "dev": true, "engines": { "node": ">=6" } @@ -3962,9 +4634,9 @@ } }, "node_modules/terser": { - "version": "5.20.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.20.0.tgz", - "integrity": "sha512-e56ETryaQDyebBwJIWYB2TT6f2EZ0fL0sW/JRXNMN26zZdKi2u/E/5my5lG6jNxym6qsrVXfFRmOdV42zlAgLQ==", + "version": "5.24.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.24.0.tgz", + "integrity": "sha512-ZpGR4Hy3+wBEzVEnHvstMvqpD/nABNelQn/z2r0fjVWGQsN3bpOLzQlqDxmb4CDZnXq5lpjnQ+mHQLAOpfM5iw==", "dev": true, "dependencies": { "@jridgewell/source-map": "^0.3.3", @@ -4031,7 +4703,6 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, "dependencies": { "is-number": "^7.0.0" }, @@ -4071,6 +4742,11 @@ "node": ">= 0.6" } }, + "node_modules/ufo": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.3.2.tgz", + "integrity": "sha512-o+ORpgGwaYQXgqGDwd+hkS4PuZ3QnmqMMxRuajK/a38L6fTpcE5GPIfrf+L/KemFzfUpeUQc1rRS1iDBozvnFA==" + }, "node_modules/uint8arrays": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-3.1.1.tgz", @@ -4079,6 +4755,29 @@ "multiformats": "^9.4.2" } }, + "node_modules/uncrypto": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/uncrypto/-/uncrypto-0.1.3.tgz", + "integrity": "sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q==" + }, + "node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "dev": true + }, + "node_modules/unenv": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/unenv/-/unenv-1.8.0.tgz", + "integrity": "sha512-uIGbdCWZfhRRmyKj1UioCepQ0jpq638j/Cf0xFTn4zD1nGJ2lSdzYHLzfdXN791oo/0juUiSWW1fBklXMTsuqg==", + "dependencies": { + "consola": "^3.2.3", + "defu": "^6.1.3", + "mime": "^3.0.0", + "node-fetch-native": "^1.4.1", + "pathe": "^1.1.1" + } + }, "node_modules/unfetch": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/unfetch/-/unfetch-4.2.0.tgz", @@ -4093,6 +4792,89 @@ "node": ">= 0.8" } }, + "node_modules/unstorage": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/unstorage/-/unstorage-1.10.1.tgz", + "integrity": "sha512-rWQvLRfZNBpF+x8D3/gda5nUCQL2PgXy2jNG4U7/Rc9BGEv9+CAJd0YyGCROUBKs9v49Hg8huw3aih5Bf5TAVw==", + "dependencies": { + "anymatch": "^3.1.3", + "chokidar": "^3.5.3", + "destr": "^2.0.2", + "h3": "^1.8.2", + "ioredis": "^5.3.2", + "listhen": "^1.5.5", + "lru-cache": "^10.0.2", + "mri": "^1.2.0", + "node-fetch-native": "^1.4.1", + "ofetch": "^1.3.3", + "ufo": "^1.3.1" + }, + "peerDependencies": { + "@azure/app-configuration": "^1.4.1", + "@azure/cosmos": "^4.0.0", + "@azure/data-tables": "^13.2.2", + "@azure/identity": "^3.3.2", + "@azure/keyvault-secrets": "^4.7.0", + "@azure/storage-blob": "^12.16.0", + "@capacitor/preferences": "^5.0.6", + "@netlify/blobs": "^6.2.0", + "@planetscale/database": "^1.11.0", + "@upstash/redis": "^1.23.4", + "@vercel/kv": "^0.2.3", + "idb-keyval": "^6.2.1" + }, + "peerDependenciesMeta": { + "@azure/app-configuration": { + "optional": true + }, + "@azure/cosmos": { + "optional": true + }, + "@azure/data-tables": { + "optional": true + }, + "@azure/identity": { + "optional": true + }, + "@azure/keyvault-secrets": { + "optional": true + }, + "@azure/storage-blob": { + "optional": true + }, + "@capacitor/preferences": { + "optional": true + }, + "@netlify/blobs": { + "optional": true + }, + "@planetscale/database": { + "optional": true + }, + "@upstash/redis": { + "optional": true + }, + "@vercel/kv": { + "optional": true + }, + "idb-keyval": { + "optional": true + } + } + }, + "node_modules/untun": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/untun/-/untun-0.1.2.tgz", + "integrity": "sha512-wLAMWvxfqyTiBODA1lg3IXHQtjggYLeTK7RnSfqtOXixWJ3bAa2kK/HHmOOg19upteqO3muLvN6O/icbyQY33Q==", + "dependencies": { + "citty": "^0.1.3", + "consola": "^3.2.3", + "pathe": "^1.1.1" + }, + "bin": { + "untun": "bin/untun.mjs" + } + }, "node_modules/update-browserslist-db": { "version": "1.0.13", "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", @@ -4123,6 +4905,11 @@ "browserslist": ">= 4.21.0" } }, + "node_modules/uqr": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/uqr/-/uqr-0.1.2.tgz", + "integrity": "sha512-MJu7ypHq6QasgF5YRTjqscSzQp/W11zoUk6kvmlH+fmWEs63Y0Eib13hYFwAzagRJcVY8WVnlV+eBDUGMJ5IbA==" + }, "node_modules/uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", @@ -4192,9 +4979,9 @@ "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" }, "node_modules/webpack": { - "version": "5.88.2", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.88.2.tgz", - "integrity": "sha512-JmcgNZ1iKj+aiR0OvTYtWQqJwq37Pf683dY9bVORwVbUrDhLhdn/PlO2sHsFHPkj7sHNQF3JwaAkp49V+Sq1tQ==", + "version": "5.89.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.89.0.tgz", + "integrity": "sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw==", "dev": true, "dependencies": { "@types/eslint-scope": "^3.7.3", @@ -4480,13 +5267,35 @@ "url": "https://opencollective.com/webpack" } }, + "node_modules/webpack-dev-server/node_modules/ws": { + "version": "8.14.2", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.14.2.tgz", + "integrity": "sha512-wEBG1ftX4jcglPxgFCMJmZ2PLtSbJ2Peg6TmpJFTbe9GZYOQCDPdMYu/Tm0/bGZkw8paZnJY45J4K2PZrLYq8g==", + "dev": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, "node_modules/webpack-merge": { - "version": "5.9.0", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.9.0.tgz", - "integrity": "sha512-6NbRQw4+Sy50vYNTw7EyOn41OZItPiXB8GNv3INSoe3PSFaHJEz3SHTrYVaRm2LilNGnFUzh0FAwqPEmU/CwDg==", + "version": "5.10.0", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.10.0.tgz", + "integrity": "sha512-+4zXKdx7UnO+1jaN4l2lHVD+mFvnlZQP/6ljaJVb4SZiwIKeUnrT5l0gkT8z+n4hKpC+jpOv6O9R+gLtag7pSA==", "dev": true, "dependencies": { "clone-deep": "^4.0.1", + "flat": "^5.0.2", "wildcard": "^2.0.0" }, "engines": { @@ -4538,7 +5347,6 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, "dependencies": { "isexe": "^2.0.0" }, @@ -4561,16 +5369,15 @@ "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" }, "node_modules/ws": { - "version": "8.14.2", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.14.2.tgz", - "integrity": "sha512-wEBG1ftX4jcglPxgFCMJmZ2PLtSbJ2Peg6TmpJFTbe9GZYOQCDPdMYu/Tm0/bGZkw8paZnJY45J4K2PZrLYq8g==", - "dev": true, + "version": "7.5.9", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", + "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", "engines": { - "node": ">=10.0.0" + "node": ">=8.3.0" }, "peerDependencies": { "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" + "utf-8-validate": "^5.0.2" }, "peerDependenciesMeta": { "bufferutil": { diff --git a/ui/app/AppLayouts/Wallet/views/walletconnect/sdk/package.json b/ui/app/AppLayouts/Wallet/views/walletconnect/sdk/package.json index 40f84d4aa0..9e8a8871c8 100644 --- a/ui/app/AppLayouts/Wallet/views/walletconnect/sdk/package.json +++ b/ui/app/AppLayouts/Wallet/views/walletconnect/sdk/package.json @@ -1,10 +1,10 @@ { "name": "wallet_connect_integration", "version": "0.1.0", - "description": "Wallet Connect Integration for status-desktop", + "description": "Wallet Connect integration for status-desktop", "private": true, "devDependencies": { - "webpack": "^5.88.2", + "webpack": "^5.89.0", "webpack-cli": "^5.1.4", "webpack-dev-server": "^4.15.1" }, @@ -16,7 +16,6 @@ "start": "webpack serve --mode development --open" }, "dependencies": { - "@walletconnect/auth-client": "^2.1.2", - "@walletconnect/web3wallet": "^1.9.2" + "@walletconnect/web3wallet": "^1.9.4" } } diff --git a/ui/app/AppLayouts/Wallet/views/walletconnect/sdk/src/index.js b/ui/app/AppLayouts/Wallet/views/walletconnect/sdk/src/index.js index e6821e3f2d..4ca52861c7 100644 --- a/ui/app/AppLayouts/Wallet/views/walletconnect/sdk/src/index.js +++ b/ui/app/AppLayouts/Wallet/views/walletconnect/sdk/src/index.js @@ -1,7 +1,8 @@ import { Core } from "@walletconnect/core"; import { Web3Wallet } from "@walletconnect/web3wallet"; -import AuthClient from '@walletconnect/auth-client' +// Disabled for now to debug the issue with wrong pairing topic +//import AuthClient from '@walletconnect/auth-client' // import the builder util import { buildApprovedNamespaces, getSdkError } from "@walletconnect/utils"; @@ -14,21 +15,24 @@ window.wc = { statusObject: null, init: function (projectId) { - (async () => { + return new Promise(async (resolve, reject) => { if (!window.statusq) { - console.error('missing window.statusq! Forgot to execute "ui/StatusQ/src/StatusQ/Components/private/qwebchannel/helpers.js" first?'); - return; + const errMsg = 'missing window.statusq! Forgot to execute "ui/StatusQ/src/StatusQ/Components/private/qwebchannel/helpers.js" first?' + console.error(errMsg); + reject(errMsg); } if (window.statusq.error) { - console.error("Failed initializing WebChannel: " + window.statusq.error); - return; + const errMsg = "Failed initializing WebChannel: " + window.statusq.error + console.error(errMsg); + reject(errMsg); } wc.statusObject = window.statusq.channel.objects.statusObject; if (!wc.statusObject) { - console.error("Failed initializing WebChannel or initialization not run"); - return; + const errMsg = "Failed initializing WebChannel or initialization not run" + console.error(errMsg); + reject(errMsg); } window.wc.core = new Core({ @@ -45,10 +49,10 @@ window.wc = { }, }); - window.wc.authClient = await AuthClient.init({ - projectId: projectId, - metadata: window.wc.web3wallet.metadata, - }); + //window.wc.authClient = await AuthClient.init({ + // projectId: projectId, + // metadata: window.wc.web3wallet.metadata, + //}); // connect session responses https://specs.walletconnect.com/2.0/specs/clients/sign/session-events#events window.wc.web3wallet.on("session_proposal", async (details) => { @@ -92,9 +96,8 @@ window.wc = { }); wc.statusObject.sdkInitialized(""); - })(); - - return { result: "ok", error: "" }; + resolve(""); + }); }, // TODO: there is a corner case when attempting to pair with a link that is already paired or was rejected won't trigger any event back @@ -127,6 +130,7 @@ window.wc = { supportedNamespaces: supportedNamespaces, }); + wc.statusObject.bubbleConsoleMessage("debug", `web3wallet.approveSession id: ${id} ${JSON.stringify(approvedNamespaces, null, 2)}`) return { result: window.wc.web3wallet.approveSession({ id, @@ -145,45 +149,45 @@ window.wc = { }; }, - auth: function (uri) { - return { - result: window.wc.authClient.core.pairing.pair({ uri }), - error: "" - }; - }, + // auth: function (uri) { + // return { + // result: window.wc.authClient.core.pairing.pair({ uri }), + // error: "" + // }; + // }, - approveAuth: function (authProposal) { - const { id, params } = authProposal; + // approveAuth: function (authProposal) { + // const { id, params } = authProposal; - // TODO: source user’s address - const iss = `did:pkh:eip155:1:${"0x0123456789"}`; + // // TODO: source user’s address + // const iss = `did:pkh:eip155:1:${"0x0123456789"}`; - // format the cacao payload with the user’s address - const message = window.wc.authClient.formatMessage(params.cacaoPayload, iss); + // // format the cacao payload with the user’s address + // const message = window.wc.authClient.formatMessage(params.cacaoPayload, iss); - // TODO: signature - const signature = "0x123456789" + // // TODO: signature + // const signature = "0x123456789" - return { - result: window.wc.authClient.respond( - { - id: id, - signature: { - s: signature, - t: "eip191", - }, - }, - iss), - error: "" - }; - }, + // return { + // result: window.wc.authClient.respond( + // { + // id: id, + // signature: { + // s: signature, + // t: "eip191", + // }, + // }, + // iss), + // error: "" + // }; + // }, - rejectAuth: function (id) { - return { - result: window.wc.authClient.reject(id), - error: "" - }; - }, + // rejectAuth: function (id) { + // return { + // result: window.wc.authClient.reject(id), + // error: "" + // }; + // }, respondSessionRequest: function (topic, id, signature) { const response = formatJsonRpcResult(id, signature) diff --git a/vendor/status-go b/vendor/status-go index 317ad2f906..c433908834 160000 --- a/vendor/status-go +++ b/vendor/status-go @@ -1 +1 @@ -Subproject commit 317ad2f906dfd97b9ad620e6481a72801dde713d +Subproject commit c433908834ad2d55e40b67da1cbd88014319315f