Client side atproto account migrator in your web browser, along with services for backups and adversarial migrations. pdsmoover.com
pds atproto migrations moo cow

upped versions

+191 -4
+1 -1
justfile
··· 27 27 docker buildx build \ 28 28 --platform linux/arm64,linux/amd64 \ 29 29 --tag fatfingers23/moover_ui:latest \ 30 - --tag fatfingers23/moover_ui:0.0.6 \ 30 + --tag fatfingers23/moover_ui:0.0.7 \ 31 31 --file Dockerfiles/web-ui.Dockerfile \ 32 32 --builder desktop-linux \ 33 33 --push .
+1 -1
web-ui/package.json
··· 17 17 "@atcute/client": "^4.0.5", 18 18 "@atcute/lexicons": "^1.2.2", 19 19 "@pds-moover/lexicons": "^1.0.1", 20 - "@pds-moover/moover": "link:../packages/moover" 20 + "@pds-moover/moover": "^1.0.6" 21 21 }, 22 22 "devDependencies": { 23 23 "@eslint/compat": "^1.4.0",
+189 -2
web-ui/pnpm-lock.yaml
··· 21 21 specifier: ^1.0.1 22 22 version: 1.0.1 23 23 '@pds-moover/moover': 24 - specifier: link:../packages/moover 25 - version: link:../packages/moover 24 + specifier: ^1.0.6 25 + version: 1.0.6(@atcute/identity@1.1.1)(vite@7.1.12(@types/node@22.19.0)) 26 26 devDependencies: 27 27 '@eslint/compat': 28 28 specifier: ^1.4.0 ··· 79 79 '@atcute/atproto@3.1.9': 80 80 resolution: {integrity: sha512-DyWwHCTdR4hY2BPNbLXgVmm7lI+fceOwWbE4LXbGvbvVtSn+ejSVFaAv01Ra3kWDha0whsOmbJL8JP0QPpf1+w==} 81 81 82 + '@atcute/cbor@2.3.2': 83 + resolution: {integrity: sha512-xP2SORSau/VVI00x2V4BjwIkHr6EQ7l/MXEOPaa4LGYtePFc4gnD4L1yN10dT5NEuUnvGEuCh6arLB7gz1smVQ==} 84 + 85 + '@atcute/cid@2.4.1': 86 + resolution: {integrity: sha512-bwhna69RCv7yetXudtj+2qrMPYvhhIQqvJz6YUpUS98v7OdF3X2dnye9Nig2NDrklZcuyOsu7sQo7GOykJXRLQ==} 87 + 82 88 '@atcute/client@4.0.5': 83 89 resolution: {integrity: sha512-R8Qen8goGmEkynYGg2m6XFlVmz0GTDvQ+9w+4QqOob+XMk8/WDpF4aImev7WKEde/rV2gjcqW7zM8E6W9NShDA==} 84 90 91 + '@atcute/crypto@2.3.0': 92 + resolution: {integrity: sha512-w5pkJKCjbNMQu+F4JRHbR3ROQyhi1wbn+GSC6WDQamcYHkZmEZk1/eoI354bIQOOfkEM6aFLv718iskrkon4GQ==} 93 + 94 + '@atcute/did-plc@0.1.7': 95 + resolution: {integrity: sha512-a7yOQNqViae3rB5/xa3U0EPJbFD9l8zOHXx6XASZ5F8+Vy2uTgXK3omurpNZ5UxRpy1ni1AMhSohXr61cqWbkg==} 96 + 97 + '@atcute/identity-resolver@1.2.2': 98 + resolution: {integrity: sha512-eUh/UH4bFvuXS0X7epYCeJC/kj4rbBXfSRumLEH4smMVwNOgTo7cL/0Srty+P/qVPoZEyXdfEbS0PHJyzoXmHw==} 99 + peerDependencies: 100 + '@atcute/identity': ^1.0.0 101 + 85 102 '@atcute/identity@1.1.1': 86 103 resolution: {integrity: sha512-zax42n693VEhnC+5tndvO2KLDTMkHOz8UExwmklvJv7R9VujfEwiSWhcv6Jgwb3ellaG8wjiQ1lMOIjLLvwh0Q==} 87 104 88 105 '@atcute/lexicons@1.2.2': 89 106 resolution: {integrity: sha512-bgEhJq5Z70/0TbK5sx+tAkrR8FsCODNiL2gUEvS5PuJfPxmFmRYNWaMGehxSPaXWpU2+Oa9ckceHiYbrItDTkA==} 90 107 108 + '@atcute/lexicons@1.2.9': 109 + resolution: {integrity: sha512-/RRHm2Cw9o8Mcsrq0eo8fjS9okKYLGfuFwrQ0YoP/6sdSDsXshaTLJsvLlcUcaDaSJ1YFOuHIo3zr2Om2F/16g==} 110 + 111 + '@atcute/multibase@1.1.8': 112 + resolution: {integrity: sha512-pJgtImMZKCjqwRbu+2GzB+4xQjKBXDwdZOzeqe0u97zYKRGftpGYGvYv3+pMe2xXe+msDyu7Nv8iJp+U14otTA==} 113 + 114 + '@atcute/uint8array@1.1.1': 115 + resolution: {integrity: sha512-3LsC8XB8TKe9q/5hOA5sFuzGaIFdJZJNewC5OKa3o/eU6+K7JR6see9Zy2JbQERNVnRl11EzbNov1efgLMAs4g==} 116 + 117 + '@atcute/util-fetch@1.0.5': 118 + resolution: {integrity: sha512-qjHj01BGxjSjIFdPiAjSARnodJIIyKxnCMMEcXMESo9TAyND6XZQqrie5fia+LlYWVXdpsTds8uFQwc9jdKTig==} 119 + 120 + '@atcute/util-text@1.1.1': 121 + resolution: {integrity: sha512-JH0SxzUQJAmbOBTYyhxQbkkI6M33YpjlVLEcbP5GYt43xgFArzV0FJVmEpvIj0kjsmphHB45b6IitdvxPdec9w==} 122 + 123 + '@atproto/api@0.16.11': 124 + resolution: {integrity: sha512-1dhfQNHiclb102RW+Ea8Nft5olfqU0Ev/vlQaSX6mWNo1aP5zT+sPODJ8+BTUOYk3vcuvL7QMkqA/rLYy2PMyw==} 125 + 91 126 '@atproto/common-web@0.4.3': 92 127 resolution: {integrity: sha512-nRDINmSe4VycJzPo6fP/hEltBcULFxt9Kw7fQk6405FyAWZiTluYHlXOnU7GkQfeUK44OENG1qFTBcmCJ7e8pg==} 93 128 ··· 339 374 '@jridgewell/trace-mapping@0.3.31': 340 375 resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==} 341 376 377 + '@noble/secp256k1@3.0.0': 378 + resolution: {integrity: sha512-NJBaR352KyIvj3t6sgT/+7xrNyF9Xk9QlLSIqUGVUYlsnDTAUqY8LOmwpcgEx4AMJXRITQ5XEVHD+mMaPfr3mg==} 379 + 342 380 '@nodelib/fs.scandir@2.1.5': 343 381 resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} 344 382 engines: {node: '>= 8'} ··· 353 391 354 392 '@pds-moover/lexicons@1.0.1': 355 393 resolution: {integrity: sha512-fv5b/DtHM7FEo/JklyF9gdK0ainlb6mWjWrBe6cmSAeg9G/4O2jBlQUOqfOAICY9gOcrCpkOrk9PHgGw//JQ2A==} 394 + 395 + '@pds-moover/moover@1.0.6': 396 + resolution: {integrity: sha512-Zy+wcrZwoyne7NhuG+5MDFoJ+lpteCpfS6w2pmma9F2IKrVTj2G3Pca7ZVDaibGmCMTJMo21XYaPg+9nLXFD4Q==} 356 397 357 398 '@polka/url@1.0.0-next.29': 358 399 resolution: {integrity: sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww==} ··· 505 546 506 547 '@standard-schema/spec@1.0.0': 507 548 resolution: {integrity: sha512-m2bOd0f2RT9k8QJx1JN85cZYyH1RqFBdlwtkSlf4tBDYLCiiZnv1fIIwacK6cqwXavOydf0NPToMQgpKq+dVlA==} 549 + 550 + '@standard-schema/spec@1.1.0': 551 + resolution: {integrity: sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==} 508 552 509 553 '@sveltejs/acorn-typescript@1.0.6': 510 554 resolution: {integrity: sha512-4awhxtMh4cx9blePWl10HRHj8Iivtqj+2QdDCSMDzxG+XKa9+VCNupQuCuvzEhYPzZSrX+0gC+0lHA/0fFKKQQ==} ··· 623 667 resolution: {integrity: sha512-uk574k8IU0rOF/AjniX8qbLSGURJVUCeM5e4MIMKBFFi8weeiLrG1fyQejyLXQpRZbU/1BuQasleV/RfHC3hHg==} 624 668 engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 625 669 670 + '@vue/reactivity@3.1.5': 671 + resolution: {integrity: sha512-1tdfLmNjWG6t/CsPldh+foumYFo3cpyCHgBYQ34ylaMsJ+SNHQ1kApMIa8jN+i593zQuaw3AdWH0nJTARzCFhg==} 672 + 673 + '@vue/shared@3.1.5': 674 + resolution: {integrity: sha512-oJ4F3TnvpXaQwZJNF3ZK+kLPHKarDmJjJ6jyzVNDKH9md1dptjC7lWR//jrGuLdek/U6iltWxqAnYOu8gCiOvA==} 675 + 626 676 acorn-jsx@5.3.2: 627 677 resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} 628 678 peerDependencies: ··· 636 686 ajv@6.12.6: 637 687 resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} 638 688 689 + alpinejs@3.15.8: 690 + resolution: {integrity: sha512-zxIfCRTBGvF1CCLIOMQOxAyBuqibxSEwS6Jm1a3HGA9rgrJVcjEWlwLcQTVGAWGS8YhAsTRLVrtQ5a5QT9bSSQ==} 691 + 639 692 ansi-styles@4.3.0: 640 693 resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} 641 694 engines: {node: '>=8'} ··· 646 699 aria-query@5.3.2: 647 700 resolution: {integrity: sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==} 648 701 engines: {node: '>= 0.4'} 702 + 703 + await-lock@2.2.2: 704 + resolution: {integrity: sha512-aDczADvlvTGajTDjcjpJMqRkOF6Qdz3YbPZm/PyW6tKPkx2hlYBzxMhEywM/tU72HrVZjgl5VCdRuMlA7pZ8Gw==} 649 705 650 706 axobject-query@4.1.0: 651 707 resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==} ··· 1173 1229 resolution: {integrity: sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==} 1174 1230 engines: {node: '>=12.0.0'} 1175 1231 1232 + tlds@1.261.0: 1233 + resolution: {integrity: sha512-QXqwfEl9ddlGBaRFXIvNKK6OhipSiLXuRuLJX5DErz0o0Q0rYxulWLdFryTkV5PkdZct5iMInwYEGe/eR++1AA==} 1234 + hasBin: true 1235 + 1176 1236 to-regex-range@5.0.1: 1177 1237 resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} 1178 1238 engines: {node: '>=8.0'} ··· 1209 1269 undici-types@6.21.0: 1210 1270 resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==} 1211 1271 1272 + unicode-segmenter@0.14.5: 1273 + resolution: {integrity: sha512-jHGmj2LUuqDcX3hqY12Ql+uhUTn8huuxNZGq7GvtF6bSybzH3aFgedYu/KTzQStEgt1Ra2F3HxadNXsNjb3m3g==} 1274 + 1212 1275 uri-js@4.4.1: 1213 1276 resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} 1214 1277 1215 1278 util-deprecate@1.0.2: 1216 1279 resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} 1280 + 1281 + vite-plugin-full-reload@1.2.0: 1282 + resolution: {integrity: sha512-kz18NW79x0IHbxRSHm0jttP4zoO9P9gXh+n6UTwlNKnviTTEpOlum6oS9SmecrTtSr+muHEn5TUuC75UovQzcA==} 1283 + 1284 + vite-rs-plugin@1.0.1: 1285 + resolution: {integrity: sha512-YhgflKQIRzuS5x66J3yICoVLH25D2fNU+jThK8tpYl/jGrXeIKT4w5VH1lkLPRC0SjK2ZCm9S6K9Z2ZFVDHjPQ==} 1286 + hasBin: true 1287 + peerDependencies: 1288 + vite: ^5.0.0 1217 1289 1218 1290 vite@7.1.12: 1219 1291 resolution: {integrity: sha512-ZWyE8YXEXqJrrSLvYgrRP7p62OziLW7xI5HYGWFzOvupfAlrLvURSzv/FyGyy0eidogEM3ujU+kUG1zuHgb6Ug==} ··· 1292 1364 dependencies: 1293 1365 '@atcute/lexicons': 1.2.2 1294 1366 1367 + '@atcute/cbor@2.3.2': 1368 + dependencies: 1369 + '@atcute/cid': 2.4.1 1370 + '@atcute/multibase': 1.1.8 1371 + '@atcute/uint8array': 1.1.1 1372 + 1373 + '@atcute/cid@2.4.1': 1374 + dependencies: 1375 + '@atcute/multibase': 1.1.8 1376 + '@atcute/uint8array': 1.1.1 1377 + 1295 1378 '@atcute/client@4.0.5': 1296 1379 dependencies: 1297 1380 '@atcute/identity': 1.1.1 1298 1381 '@atcute/lexicons': 1.2.2 1299 1382 1383 + '@atcute/crypto@2.3.0': 1384 + dependencies: 1385 + '@atcute/multibase': 1.1.8 1386 + '@atcute/uint8array': 1.1.1 1387 + '@noble/secp256k1': 3.0.0 1388 + 1389 + '@atcute/did-plc@0.1.7': 1390 + dependencies: 1391 + '@atcute/cbor': 2.3.2 1392 + '@atcute/cid': 2.4.1 1393 + '@atcute/crypto': 2.3.0 1394 + '@atcute/identity': 1.1.1 1395 + '@atcute/lexicons': 1.2.2 1396 + '@atcute/multibase': 1.1.8 1397 + '@atcute/uint8array': 1.1.1 1398 + '@badrap/valita': 0.4.6 1399 + 1400 + '@atcute/identity-resolver@1.2.2(@atcute/identity@1.1.1)': 1401 + dependencies: 1402 + '@atcute/identity': 1.1.1 1403 + '@atcute/lexicons': 1.2.9 1404 + '@atcute/util-fetch': 1.0.5 1405 + '@badrap/valita': 0.4.6 1406 + 1300 1407 '@atcute/identity@1.1.1': 1301 1408 dependencies: 1302 1409 '@atcute/lexicons': 1.2.2 ··· 1306 1413 dependencies: 1307 1414 '@standard-schema/spec': 1.0.0 1308 1415 esm-env: 1.2.2 1416 + 1417 + '@atcute/lexicons@1.2.9': 1418 + dependencies: 1419 + '@atcute/uint8array': 1.1.1 1420 + '@atcute/util-text': 1.1.1 1421 + '@standard-schema/spec': 1.1.0 1422 + esm-env: 1.2.2 1423 + 1424 + '@atcute/multibase@1.1.8': 1425 + dependencies: 1426 + '@atcute/uint8array': 1.1.1 1427 + 1428 + '@atcute/uint8array@1.1.1': {} 1429 + 1430 + '@atcute/util-fetch@1.0.5': 1431 + dependencies: 1432 + '@badrap/valita': 0.4.6 1433 + 1434 + '@atcute/util-text@1.1.1': 1435 + dependencies: 1436 + unicode-segmenter: 0.14.5 1437 + 1438 + '@atproto/api@0.16.11': 1439 + dependencies: 1440 + '@atproto/common-web': 0.4.3 1441 + '@atproto/lexicon': 0.5.1 1442 + '@atproto/syntax': 0.4.1 1443 + '@atproto/xrpc': 0.7.5 1444 + await-lock: 2.2.2 1445 + multiformats: 9.9.0 1446 + tlds: 1.261.0 1447 + zod: 3.25.76 1309 1448 1310 1449 '@atproto/common-web@0.4.3': 1311 1450 dependencies: ··· 1491 1630 '@jridgewell/resolve-uri': 3.1.2 1492 1631 '@jridgewell/sourcemap-codec': 1.5.5 1493 1632 1633 + '@noble/secp256k1@3.0.0': {} 1634 + 1494 1635 '@nodelib/fs.scandir@2.1.5': 1495 1636 dependencies: 1496 1637 '@nodelib/fs.stat': 2.0.5 ··· 1508 1649 '@atproto/lexicon': 0.5.1 1509 1650 '@atproto/xrpc': 0.7.5 1510 1651 1652 + '@pds-moover/moover@1.0.6(@atcute/identity@1.1.1)(vite@7.1.12(@types/node@22.19.0))': 1653 + dependencies: 1654 + '@atcute/cbor': 2.3.2 1655 + '@atcute/client': 4.0.5 1656 + '@atcute/crypto': 2.3.0 1657 + '@atcute/did-plc': 0.1.7 1658 + '@atcute/identity-resolver': 1.2.2(@atcute/identity@1.1.1) 1659 + '@atcute/lexicons': 1.2.2 1660 + '@atcute/multibase': 1.1.8 1661 + '@atproto/api': 0.16.11 1662 + '@pds-moover/lexicons': 1.0.1 1663 + alpinejs: 3.15.8 1664 + vite-plugin-full-reload: 1.2.0 1665 + vite-rs-plugin: 1.0.1(vite@7.1.12(@types/node@22.19.0)) 1666 + transitivePeerDependencies: 1667 + - '@atcute/identity' 1668 + - vite 1669 + 1511 1670 '@polka/url@1.0.0-next.29': {} 1512 1671 1513 1672 '@rollup/plugin-commonjs@28.0.9(rollup@4.52.5)': ··· 1613 1772 optional: true 1614 1773 1615 1774 '@standard-schema/spec@1.0.0': {} 1775 + 1776 + '@standard-schema/spec@1.1.0': {} 1616 1777 1617 1778 '@sveltejs/acorn-typescript@1.0.6(acorn@8.15.0)': 1618 1779 dependencies: ··· 1775 1936 '@typescript-eslint/types': 8.46.3 1776 1937 eslint-visitor-keys: 4.2.1 1777 1938 1939 + '@vue/reactivity@3.1.5': 1940 + dependencies: 1941 + '@vue/shared': 3.1.5 1942 + 1943 + '@vue/shared@3.1.5': {} 1944 + 1778 1945 acorn-jsx@5.3.2(acorn@8.15.0): 1779 1946 dependencies: 1780 1947 acorn: 8.15.0 ··· 1788 1955 json-schema-traverse: 0.4.1 1789 1956 uri-js: 4.4.1 1790 1957 1958 + alpinejs@3.15.8: 1959 + dependencies: 1960 + '@vue/reactivity': 3.1.5 1961 + 1791 1962 ansi-styles@4.3.0: 1792 1963 dependencies: 1793 1964 color-convert: 2.0.1 ··· 1795 1966 argparse@2.0.1: {} 1796 1967 1797 1968 aria-query@5.3.2: {} 1969 + 1970 + await-lock@2.2.2: {} 1798 1971 1799 1972 axobject-query@4.1.0: {} 1800 1973 ··· 2331 2504 fdir: 6.5.0(picomatch@4.0.3) 2332 2505 picomatch: 4.0.3 2333 2506 2507 + tlds@1.261.0: {} 2508 + 2334 2509 to-regex-range@5.0.1: 2335 2510 dependencies: 2336 2511 is-number: 7.0.0 ··· 2364 2539 2365 2540 undici-types@6.21.0: {} 2366 2541 2542 + unicode-segmenter@0.14.5: {} 2543 + 2367 2544 uri-js@4.4.1: 2368 2545 dependencies: 2369 2546 punycode: 2.3.1 2370 2547 2371 2548 util-deprecate@1.0.2: {} 2549 + 2550 + vite-plugin-full-reload@1.2.0: 2551 + dependencies: 2552 + picocolors: 1.1.1 2553 + picomatch: 2.3.1 2554 + 2555 + vite-rs-plugin@1.0.1(vite@7.1.12(@types/node@22.19.0)): 2556 + dependencies: 2557 + vite: 7.1.12(@types/node@22.19.0) 2558 + vite-plugin-full-reload: 1.2.0 2372 2559 2373 2560 vite@7.1.12(@types/node@22.19.0): 2374 2561 dependencies: