Skip to content

Commit 7718a2c

Browse files
authored
chore: merge v5.0.0 changes (#7)
* feat(wallet): add full signing capabilities * fix(flow): fix reconnect flow * feat(protocolVersion): introduce protocol version 2 * fix(state): fix wallet state issue * feat(examples): v2 * fix(code): cleanup * fix(code): cleanup * fix(code): naming * feat(ui): unify methods * feat(ui): poll balance * chore(code): remove unused code * chore(code): remove magic numbers * fix(test): restore wallet for tests * chore(P2PClient): adjust comment * chore(pipeline): allow to publish alpha via pipeline and version bump * fix(pipeline): adjust chmod during build step to reference new script * feat(modal): add options for terms and privacy policy links * feat(): 5.0.0-alpha.1 * fix(wallet): add v3 response handling * fix(wallet): update v3 example * chore(release): version 5.0.0-alpha.2 * feat(wallet): update v3 example * fix(matrix): add client-side request timeout to prevent connection staleness * chore(release): version 5.0.0-alpha.3 * fix(ui): isolate modal from host page styles with Shadow DOM reset (airgap-it#921) * fix(ui): resolve extension detection and add deprecated wallet support (airgap-it#920) * feat(ui): implement dynamic wallet registry and deprecated wallet support (airgap-it#914, airgap-it#920) * chore(release): version 5.0.0-alpha.4 * feat(errors): bubble up errors * feat(examples): add Chrome extension wallet with session key helpers and storage fix * fix(e2e): update Temple Wallet test to match new extension detection UI * chore(release): version 5.0.0-beta.1 * chore(examples): remove unused function from dapp and add curve selection to wallet * feat(matrix): improve resilience when Matrix local state is out of sync * feat(): tallinnnet * fix(dapp): reject requestPermissions() promise when user closes modal (airgap-it#905) * chore(release): version 5.0.0-beta.2 * fix(ci): bundle new wallets * feat(): tezlink shadownet * chore(release): version 5.0.0-beta.3 * fix(chrome-extension): improved lifecycle for sample wallet * chore(tezos): adjust tezlink shadownet identifier * chore(wallets): update to latest wallets list * feat(): 5.0.0 * fix(beacon-ui): resolve rollup native module error in CI * chore: rename beacon-sdk to octez.connect for v5.0.0 - Rename all @airgap/beacon-* packages to @tezos-x/octez.connect-* - Rename package directories from beacon-* to octez.connect-* - Update GitHub URLs from airgap-it/beacon-sdk to trilitech/octez.connect - Update documentation URLs to octez-connect.tezos.com - Update Matrix relay nodes to octez.io - Set internal package versions to 1.0.0 - Update SDK_VERSION constant to 1.0.0 - Update tsconfig paths, webpack scripts, and CI workflows * fix: correct stale tsconfig paths for blockchain data imports The migration script missed relative directory references in tsconfig.json path mappings. All 3 blockchain packages pointed to ../beacon-ui/src/data/* instead of ../octez.connect-ui/src/data/* causing TS2307 build errors. * fix: correct stale references missed by migration script - Fix typedocs URL: typeoctez-connect.tezos.com → typedocs.octez-connect.tezos.com - Fix homepage URL: octez.connect.trilitech.com → octez-connect.tezos.com - Fix root package.json homepage: trilitech.com → octez-connect.tezos.com - Replace all beacon-sdk text references with octez.connect-sdk in READMEs - Update package.json descriptions from beacon-sdk to octez.connect-sdk - Fix chrome extension example appUrl to trilitech/octez.connect - Update .gitlab-ci.yml container tags from beacon-sdk to octez-connect - Fix events.ts JSDoc comment * fix: address Copilot review feedback - Fix SDK tsconfig path alias pointing to dapp instead of sdk - Add missing walletconnect transport dependency to SDK package.json - Fix typo 'occured' → 'occurred' in UnknownBeaconError - Fix grammar 'scope were' → 'scopes were' in MissingRequiredScope - Fix errorCode logic in InvalidReceivedSessionNamespace to use type instead of data presence - Fix walletconnect README header to use correct package name - Fix chrome-extension README: npm run watch → npm run dev - Update chrome-extension README description to reference octez.connect * fix: resolve e2e test failures in p2p and WalletConnect flows 1. Toast closeToast regression: The octez.connect refactoring added configDelayTimer tracking to scheduleConfigUpdate, but closeToast() was cancelling the pending timer. This caused the success toast (scheduled with a 500ms delay) to be dropped when the "request sent" toast auto-closed first. Fix: don't cancel configDelayTimer in closeToast(), and re-open the toast when the delayed config fires. 2. Rate limit test flakiness: The test clicked #sendToSelf twice, relying on the pairing permission request still being in the 5-second rate limit window (threshold is >2). When pairing took >5s, only 2 requests were counted, which didn't exceed the limit. Fix: send 3 rapid requests to reliably trigger the rate limit. * fix: restore isInitPending guard in makeRequest to prevent transport destruction The v5 makeRequest()/makeRequestV3() methods unconditionally destroyed transports and aborted init on every call, even when init had already completed successfully. This was a regression from v4 which used an isInitPending flag to guard the abort block. Root cause: v5 replaced v4's isInitPending check with _initPromiseReject as a presence flag, but _initPromiseReject was never cleared after successful init resolution. This caused every makeRequest() call to: 1. Reject the (already resolved) init promise 2. Disconnect all transports (destroying WC sessions) 3. Nullify transport references 4. Force a full re-initialization This broke: - WC sign flow: transport disconnection destroyed the active WC session, so the wallet never received the sign request and the success toast never appeared - Rate limiting: concurrent makeRequest() calls aborted each other's init, so only the last call reached addRequestAndCheckIfRateLimited() with a count of 1, never exceeding the threshold of 2 Fix: Restore v4's isInitPending pattern - only enter the abort/disconnect block when init is genuinely still pending, and never unconditionally nullify transport references. * chore: clean up taquito/beacon refs + deploy dapp * chore: clean up taquito/beacon refs * fix: address Copilot review comments — stale imports, dead links, and type safety - Fix stale @airga/beacon-* imports in tezos-sapling, tezos, and substrate README examples - Replace dead generate-wallet-list.ts links with beacon-wallet-list repo reference - Fix dapp.html PAIR_ABORTED handler accessing .reason on undefined event data - Improve diagnostics.ts type narrowing for errorData using intermediate cast - Pin tsx as devDependency (used by prebuild script) * fix rate limit failing tests * add author name to package.json
1 parent 5c951cf commit 7718a2c

File tree

199 files changed

+15681
-7812
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

199 files changed

+15681
-7812
lines changed

.github/workflows/deploy-docs.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,10 @@ jobs:
3232
run: |
3333
npm run typedoc
3434
cd docs
35+
echo 'typedocs.octez-connect.tezos.com' > CNAME
3536
git config --global user.email "support+actions@github.com"
3637
git config --global user.name "github-actions-bot"
3738
git init
3839
git add -A
3940
git commit -m 'chore(docs): including latest changes'
40-
git push -f https://git:${GITHUB_TOKEN}@github.com/trilitech/beacon-sdk.git master:gh-pages
41+
git push -f https://git:${GITHUB_TOKEN}@github.com/trilitech/octez.connect.git master:gh-pages

.github/workflows/dev-demo-deploy.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name: Deploy to Netlify on pull requests
22

33
on:
4-
workflow_dispatch:
4+
push:
55

66
jobs:
77
build:

.gitlab-ci.yml

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
image: docker:latest
22

33
variables:
4-
GOOGLE_TAG: eu.gcr.io/papers-kubernetes/beacon-sdk:$CI_COMMIT_SHA
5-
GOOGLE_TAG_LATEST: eu.gcr.io/papers-kubernetes/beacon-sdk:latest
4+
GOOGLE_TAG: eu.gcr.io/papers-kubernetes/octez-connect:$CI_COMMIT_SHA
5+
GOOGLE_TAG_LATEST: eu.gcr.io/papers-kubernetes/octez-connect:latest
66

77
stages:
88
- build
@@ -65,11 +65,12 @@ build:
6565
# tags:
6666
# - docker
6767

68-
publish_beta:
68+
# Publishes prerelease versions (alpha or beta) with --dist-tag next
69+
publish_prerelease:
6970
stage: publish
7071
when: manual
7172
script:
72-
- docker run --env NPM_AUTH_TOKEN --rm $GOOGLE_TAG ./npm-ci-publish-beta-only.sh
73+
- docker run --env NPM_AUTH_TOKEN --rm $GOOGLE_TAG ./npm-ci-publish-prerelease.sh
7374
tags:
7475
- docker
7576

.gitlab/issue_templates/Bug.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,4 +43,4 @@ logs, and code as it's tough to read otherwise. --->
4343

4444
<!--- these standard labels will be added to this issue>--->
4545

46-
/label ~"type::bug" ~"proj::trilitech" ~"proj::beacon"
46+
/label ~"type::bug" ~"proj::beacon"

.gitlab/issue_templates/Epic.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,12 @@ on the highest group/project level necessary and add it to this issue as well
1414
## Which issues need to be completed
1515

1616
<!--- List all issues that need to be done. Example:
17+
- [] trilitech/octez.connect
1718
If you use this format, add the + at the end of the path
1819
--->
1920

2021
<!--- --------------------------------------------------- --->
2122

2223
<!--- these standard labels will be added to this issue, leave it as it is --->
2324

24-
/label ~2141 ~"proj::trilitech" ~"proj::beacon"
25+
/label ~2141 ~"proj::beacon"

.gitlab/issue_templates/Feature.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,4 +34,4 @@
3434

3535
<!--- these standard labels will be added to this issue, leave it as it is --->
3636

37-
/label ~"type::feature" ~"proj::trilitech" ~"proj::beacon"
37+
/label ~"type::feature" ~"proj::beacon"

.gitlab/issue_templates/Task.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,4 +30,4 @@
3030

3131
<!--- these standard labels will be added to this issue, leave it as it is --->
3232

33-
/label ~"type::task" ~"proj::trilitech" ~"proj::beacon"
33+
/label ~"type::task" ~"proj::beacon"

.prettierignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,5 +9,5 @@
99
coverage
1010
dist
1111
node_modules
12-
npm-ci-publish-beta-only.sh
12+
npm-ci-publish-prerelease.sh
1313
npm-ci-publish.sh

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
https://octez-connect.tezos.com/CHANGELOG

Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ RUN export NODE_ENV=production
1515
# install dependencies
1616
RUN npm install
1717

18-
RUN chmod +x ./npm-ci-publish-beta-only.sh
18+
RUN chmod +x ./npm-ci-publish-prerelease.sh
1919
RUN chmod +x ./npm-ci-publish.sh
2020

2121
CMD ["npm", "run", "test"]

0 commit comments

Comments
 (0)