Implement Set Name feature (0x6d01)

- Add MemoSetName service with 77-byte UTF-8 validation and broadcast.
- Add SetNamePage controller with byte counter and navigation to /account.
- Add AccountPage controller showing stored name and Set Name button.
- Add Profiles session store to share the new name across pages.
- Add React views /memo/set-name and /account, plus nav link.
- Update acceptance handlers for set-name scenarios and fix fake wallet
  sendOpReturn signature to match public minimal-slp-wallet API.
- Update existing post memo tests to match the corrected wallet API.

By coder.
This commit is contained in:
Chris Troutner
2026-08-25 19:50:27 -07:00
parent 359cc20fd6
commit bd2eac54cf
19 changed files with 1116 additions and 11 deletions
+50
View File
@@ -29,8 +29,11 @@
"use-query-params": "1.2.3"
},
"devDependencies": {
"crap4javascript": "github:FullStack-Agents/crap4javascript",
"dry4javascript": "github:FullStack-Agents/dry4javascript",
"husky": "9.1.7",
"minimal-slp-wallet": "5.13.1",
"mutate4javascript": "github:FullStack-Agents/mutate4javascript",
"semantic-release": "24.2.3",
"standard": "17.0.0",
"web3.storage": "4.3.0"
@@ -7566,6 +7569,22 @@
"node": ">=10"
}
},
"node_modules/crap4javascript": {
"version": "0.1.0",
"resolved": "git+ssh://git@github.com/FullStack-Agents/crap4javascript.git#32a11e784c5ccc4c8d8ada8659826c0641269479",
"dev": true,
"license": "UNLICENSED",
"dependencies": {
"@babel/parser": "^7.26.0",
"@babel/traverse": "^7.26.0"
},
"bin": {
"crap4javascript": "bin/crap4javascript.js"
},
"engines": {
"node": ">=20"
}
},
"node_modules/create-hash": {
"version": "1.2.0",
"license": "MIT",
@@ -8451,6 +8470,21 @@
"node": ">=0.10"
}
},
"node_modules/dry4javascript": {
"version": "0.1.0",
"resolved": "git+ssh://git@github.com/FullStack-Agents/dry4javascript.git#8ba1585b1c817e3492e94a616bda5237afcae73c",
"dev": true,
"license": "UNLICENSED",
"dependencies": {
"@babel/parser": "^7.26.0"
},
"bin": {
"dry4javascript": "bin/dry4javascript.js"
},
"engines": {
"node": ">=18"
}
},
"node_modules/dunder-proto": {
"version": "1.0.1",
"license": "MIT",
@@ -16341,6 +16375,22 @@
"node": ">=8.0.0"
}
},
"node_modules/mutate4javascript": {
"version": "0.1.0",
"resolved": "git+ssh://git@github.com/FullStack-Agents/mutate4javascript.git#553998e78e31ade25d13814d66cbcabc6749c50c",
"dev": true,
"license": "UNLICENSED",
"dependencies": {
"@babel/parser": "^7.26.0",
"@babel/traverse": "^7.26.0"
},
"bin": {
"mutate4javascript": "bin/mutate4javascript.js"
},
"engines": {
"node": ">=20"
}
},
"node_modules/mz": {
"version": "2.7.0",
"license": "MIT",