WIP: A simple cli for daily tangled use cases and AI integration. This is for my personal use right now, but happy if others get mileage from it! :)
10
fork

Configure Feed

Select the types of activity you want to include in your feed.

Add authentication dependencies

- @atproto/api for AT Protocol client
- @inquirer/prompts for interactive CLI prompts
- @napi-rs/keyring for secure OS keychain access (replaces archived keytar)
- zod for input validation

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

+891 -6
+879 -4
package-lock.json
··· 7 7 "": { 8 8 "name": "tangled-cli", 9 9 "version": "0.0.1", 10 - "license": "ISC", 10 + "license": "MIT", 11 11 "dependencies": { 12 - "commander": "^12.1.0" 12 + "@atproto/api": "^0.18.20", 13 + "@inquirer/prompts": "^8.2.0", 14 + "@napi-rs/keyring": "^1.2.0", 15 + "commander": "^12.1.0", 16 + "zod": "^4.3.6" 13 17 }, 14 18 "bin": { 15 19 "tangled": "dist/index.js" ··· 23 27 }, 24 28 "engines": { 25 29 "node": ">=22.0.0" 30 + } 31 + }, 32 + "node_modules/@atproto/api": { 33 + "version": "0.18.20", 34 + "resolved": "https://registry.npmjs.org/@atproto/api/-/api-0.18.20.tgz", 35 + "integrity": "sha512-BZYZkh2VJIFCXEnc/vzKwAwWjAQQTgbNJ8FBxpBK+z+KYh99O0uPCsRYKoCQsRrnkgrhzdU9+g2G+7zanTIGbw==", 36 + "license": "MIT", 37 + "dependencies": { 38 + "@atproto/common-web": "^0.4.15", 39 + "@atproto/lexicon": "^0.6.1", 40 + "@atproto/syntax": "^0.4.3", 41 + "@atproto/xrpc": "^0.7.7", 42 + "await-lock": "^2.2.2", 43 + "multiformats": "^9.9.0", 44 + "tlds": "^1.234.0", 45 + "zod": "^3.23.8" 46 + } 47 + }, 48 + "node_modules/@atproto/api/node_modules/zod": { 49 + "version": "3.25.76", 50 + "resolved": "https://registry.npmjs.org/zod/-/zod-3.25.76.tgz", 51 + "integrity": "sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==", 52 + "license": "MIT", 53 + "funding": { 54 + "url": "https://github.com/sponsors/colinhacks" 55 + } 56 + }, 57 + "node_modules/@atproto/common-web": { 58 + "version": "0.4.16", 59 + "resolved": "https://registry.npmjs.org/@atproto/common-web/-/common-web-0.4.16.tgz", 60 + "integrity": "sha512-Ufvaff5JgxUyUyTAG0/3o7ltpy3lnZ1DvLjyAnvAf+hHfiK7OMQg+8byr+orN+KP9MtIQaRTsCgYPX+PxMKUoA==", 61 + "license": "MIT", 62 + "dependencies": { 63 + "@atproto/lex-data": "^0.0.11", 64 + "@atproto/lex-json": "^0.0.11", 65 + "@atproto/syntax": "^0.4.3", 66 + "zod": "^3.23.8" 67 + } 68 + }, 69 + "node_modules/@atproto/common-web/node_modules/zod": { 70 + "version": "3.25.76", 71 + "resolved": "https://registry.npmjs.org/zod/-/zod-3.25.76.tgz", 72 + "integrity": "sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==", 73 + "license": "MIT", 74 + "funding": { 75 + "url": "https://github.com/sponsors/colinhacks" 76 + } 77 + }, 78 + "node_modules/@atproto/lex-data": { 79 + "version": "0.0.11", 80 + "resolved": "https://registry.npmjs.org/@atproto/lex-data/-/lex-data-0.0.11.tgz", 81 + "integrity": "sha512-4+KTtHdqwlhiTKA7D4SACea4jprsNpCQsNALW09wsZ6IHhCDGO5tr1cmV+QnLYe3G3mu1E1yXHXbPUHrUUDT/A==", 82 + "license": "MIT", 83 + "dependencies": { 84 + "multiformats": "^9.9.0", 85 + "tslib": "^2.8.1", 86 + "uint8arrays": "3.0.0", 87 + "unicode-segmenter": "^0.14.0" 88 + } 89 + }, 90 + "node_modules/@atproto/lex-json": { 91 + "version": "0.0.11", 92 + "resolved": "https://registry.npmjs.org/@atproto/lex-json/-/lex-json-0.0.11.tgz", 93 + "integrity": "sha512-2IExAoQ4KsR5fyPa1JjIvtR316PvdgRH/l3BVGLBd3cSxM3m5MftIv1B6qZ9HjNiK60SgkWp0mi9574bTNDhBQ==", 94 + "license": "MIT", 95 + "dependencies": { 96 + "@atproto/lex-data": "^0.0.11", 97 + "tslib": "^2.8.1" 98 + } 99 + }, 100 + "node_modules/@atproto/lexicon": { 101 + "version": "0.6.1", 102 + "resolved": "https://registry.npmjs.org/@atproto/lexicon/-/lexicon-0.6.1.tgz", 103 + "integrity": "sha512-/vI1kVlY50Si+5MXpvOucelnYwb0UJ6Qto5mCp+7Q5C+Jtp+SoSykAPVvjVtTnQUH2vrKOFOwpb3C375vSKzXw==", 104 + "license": "MIT", 105 + "dependencies": { 106 + "@atproto/common-web": "^0.4.13", 107 + "@atproto/syntax": "^0.4.3", 108 + "iso-datestring-validator": "^2.2.2", 109 + "multiformats": "^9.9.0", 110 + "zod": "^3.23.8" 111 + } 112 + }, 113 + "node_modules/@atproto/lexicon/node_modules/zod": { 114 + "version": "3.25.76", 115 + "resolved": "https://registry.npmjs.org/zod/-/zod-3.25.76.tgz", 116 + "integrity": "sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==", 117 + "license": "MIT", 118 + "funding": { 119 + "url": "https://github.com/sponsors/colinhacks" 120 + } 121 + }, 122 + "node_modules/@atproto/syntax": { 123 + "version": "0.4.3", 124 + "resolved": "https://registry.npmjs.org/@atproto/syntax/-/syntax-0.4.3.tgz", 125 + "integrity": "sha512-YoZUz40YAJr5nPwvCDWgodEOlt5IftZqPJvA0JDWjuZKD8yXddTwSzXSaKQAzGOpuM+/A3uXRtPzJJqlScc+iA==", 126 + "license": "MIT", 127 + "dependencies": { 128 + "tslib": "^2.8.1" 129 + } 130 + }, 131 + "node_modules/@atproto/xrpc": { 132 + "version": "0.7.7", 133 + "resolved": "https://registry.npmjs.org/@atproto/xrpc/-/xrpc-0.7.7.tgz", 134 + "integrity": "sha512-K1ZyO/BU8JNtXX5dmPp7b5UrkLMMqpsIa/Lrj5D3Su+j1Xwq1m6QJ2XJ1AgjEjkI1v4Muzm7klianLE6XGxtmA==", 135 + "license": "MIT", 136 + "dependencies": { 137 + "@atproto/lexicon": "^0.6.0", 138 + "zod": "^3.23.8" 139 + } 140 + }, 141 + "node_modules/@atproto/xrpc/node_modules/zod": { 142 + "version": "3.25.76", 143 + "resolved": "https://registry.npmjs.org/zod/-/zod-3.25.76.tgz", 144 + "integrity": "sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==", 145 + "license": "MIT", 146 + "funding": { 147 + "url": "https://github.com/sponsors/colinhacks" 26 148 } 27 149 }, 28 150 "node_modules/@biomejs/biome": { ··· 631 753 "node": ">=18" 632 754 } 633 755 }, 756 + "node_modules/@inquirer/ansi": { 757 + "version": "2.0.3", 758 + "resolved": "https://registry.npmjs.org/@inquirer/ansi/-/ansi-2.0.3.tgz", 759 + "integrity": "sha512-g44zhR3NIKVs0zUesa4iMzExmZpLUdTLRMCStqX3GE5NT6VkPcxQGJ+uC8tDgBUC/vB1rUhUd55cOf++4NZcmw==", 760 + "license": "MIT", 761 + "engines": { 762 + "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" 763 + } 764 + }, 765 + "node_modules/@inquirer/checkbox": { 766 + "version": "5.0.4", 767 + "resolved": "https://registry.npmjs.org/@inquirer/checkbox/-/checkbox-5.0.4.tgz", 768 + "integrity": "sha512-DrAMU3YBGMUAp6ArwTIp/25CNDtDbxk7UjIrrtM25JVVrlVYlVzHh5HR1BDFu9JMyUoZ4ZanzeaHqNDttf3gVg==", 769 + "license": "MIT", 770 + "dependencies": { 771 + "@inquirer/ansi": "^2.0.3", 772 + "@inquirer/core": "^11.1.1", 773 + "@inquirer/figures": "^2.0.3", 774 + "@inquirer/type": "^4.0.3" 775 + }, 776 + "engines": { 777 + "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" 778 + }, 779 + "peerDependencies": { 780 + "@types/node": ">=18" 781 + }, 782 + "peerDependenciesMeta": { 783 + "@types/node": { 784 + "optional": true 785 + } 786 + } 787 + }, 788 + "node_modules/@inquirer/confirm": { 789 + "version": "6.0.4", 790 + "resolved": "https://registry.npmjs.org/@inquirer/confirm/-/confirm-6.0.4.tgz", 791 + "integrity": "sha512-WdaPe7foUnoGYvXzH4jp4wH/3l+dBhZ3uwhKjXjwdrq5tEIFaANxj6zrGHxLdsIA0yKM0kFPVcEalOZXBB5ISA==", 792 + "license": "MIT", 793 + "dependencies": { 794 + "@inquirer/core": "^11.1.1", 795 + "@inquirer/type": "^4.0.3" 796 + }, 797 + "engines": { 798 + "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" 799 + }, 800 + "peerDependencies": { 801 + "@types/node": ">=18" 802 + }, 803 + "peerDependenciesMeta": { 804 + "@types/node": { 805 + "optional": true 806 + } 807 + } 808 + }, 809 + "node_modules/@inquirer/core": { 810 + "version": "11.1.1", 811 + "resolved": "https://registry.npmjs.org/@inquirer/core/-/core-11.1.1.tgz", 812 + "integrity": "sha512-hV9o15UxX46OyQAtaoMqAOxGR8RVl1aZtDx1jHbCtSJy1tBdTfKxLPKf7utsE4cRy4tcmCQ4+vdV+ca+oNxqNA==", 813 + "license": "MIT", 814 + "dependencies": { 815 + "@inquirer/ansi": "^2.0.3", 816 + "@inquirer/figures": "^2.0.3", 817 + "@inquirer/type": "^4.0.3", 818 + "cli-width": "^4.1.0", 819 + "mute-stream": "^3.0.0", 820 + "signal-exit": "^4.1.0", 821 + "wrap-ansi": "^9.0.2" 822 + }, 823 + "engines": { 824 + "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" 825 + }, 826 + "peerDependencies": { 827 + "@types/node": ">=18" 828 + }, 829 + "peerDependenciesMeta": { 830 + "@types/node": { 831 + "optional": true 832 + } 833 + } 834 + }, 835 + "node_modules/@inquirer/editor": { 836 + "version": "5.0.4", 837 + "resolved": "https://registry.npmjs.org/@inquirer/editor/-/editor-5.0.4.tgz", 838 + "integrity": "sha512-QI3Jfqcv6UO2/VJaEFONH8Im1ll++Xn/AJTBn9Xf+qx2M+H8KZAdQ5sAe2vtYlo+mLW+d7JaMJB4qWtK4BG3pw==", 839 + "license": "MIT", 840 + "dependencies": { 841 + "@inquirer/core": "^11.1.1", 842 + "@inquirer/external-editor": "^2.0.3", 843 + "@inquirer/type": "^4.0.3" 844 + }, 845 + "engines": { 846 + "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" 847 + }, 848 + "peerDependencies": { 849 + "@types/node": ">=18" 850 + }, 851 + "peerDependenciesMeta": { 852 + "@types/node": { 853 + "optional": true 854 + } 855 + } 856 + }, 857 + "node_modules/@inquirer/expand": { 858 + "version": "5.0.4", 859 + "resolved": "https://registry.npmjs.org/@inquirer/expand/-/expand-5.0.4.tgz", 860 + "integrity": "sha512-0I/16YwPPP0Co7a5MsomlZLpch48NzYfToyqYAOWtBmaXSB80RiNQ1J+0xx2eG+Wfxt0nHtpEWSRr6CzNVnOGg==", 861 + "license": "MIT", 862 + "dependencies": { 863 + "@inquirer/core": "^11.1.1", 864 + "@inquirer/type": "^4.0.3" 865 + }, 866 + "engines": { 867 + "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" 868 + }, 869 + "peerDependencies": { 870 + "@types/node": ">=18" 871 + }, 872 + "peerDependenciesMeta": { 873 + "@types/node": { 874 + "optional": true 875 + } 876 + } 877 + }, 878 + "node_modules/@inquirer/external-editor": { 879 + "version": "2.0.3", 880 + "resolved": "https://registry.npmjs.org/@inquirer/external-editor/-/external-editor-2.0.3.tgz", 881 + "integrity": "sha512-LgyI7Agbda74/cL5MvA88iDpvdXI2KuMBCGRkbCl2Dg1vzHeOgs+s0SDcXV7b+WZJrv2+ERpWSM65Fpi9VfY3w==", 882 + "license": "MIT", 883 + "dependencies": { 884 + "chardet": "^2.1.1", 885 + "iconv-lite": "^0.7.2" 886 + }, 887 + "engines": { 888 + "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" 889 + }, 890 + "peerDependencies": { 891 + "@types/node": ">=18" 892 + }, 893 + "peerDependenciesMeta": { 894 + "@types/node": { 895 + "optional": true 896 + } 897 + } 898 + }, 899 + "node_modules/@inquirer/figures": { 900 + "version": "2.0.3", 901 + "resolved": "https://registry.npmjs.org/@inquirer/figures/-/figures-2.0.3.tgz", 902 + "integrity": "sha512-y09iGt3JKoOCBQ3w4YrSJdokcD8ciSlMIWsD+auPu+OZpfxLuyz+gICAQ6GCBOmJJt4KEQGHuZSVff2jiNOy7g==", 903 + "license": "MIT", 904 + "engines": { 905 + "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" 906 + } 907 + }, 908 + "node_modules/@inquirer/input": { 909 + "version": "5.0.4", 910 + "resolved": "https://registry.npmjs.org/@inquirer/input/-/input-5.0.4.tgz", 911 + "integrity": "sha512-4B3s3jvTREDFvXWit92Yc6jF1RJMDy2VpSqKtm4We2oVU65YOh2szY5/G14h4fHlyQdpUmazU5MPCFZPRJ0AOw==", 912 + "license": "MIT", 913 + "dependencies": { 914 + "@inquirer/core": "^11.1.1", 915 + "@inquirer/type": "^4.0.3" 916 + }, 917 + "engines": { 918 + "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" 919 + }, 920 + "peerDependencies": { 921 + "@types/node": ">=18" 922 + }, 923 + "peerDependenciesMeta": { 924 + "@types/node": { 925 + "optional": true 926 + } 927 + } 928 + }, 929 + "node_modules/@inquirer/number": { 930 + "version": "4.0.4", 931 + "resolved": "https://registry.npmjs.org/@inquirer/number/-/number-4.0.4.tgz", 932 + "integrity": "sha512-CmMp9LF5HwE+G/xWsC333TlCzYYbXMkcADkKzcawh49fg2a1ryLc7JL1NJYYt1lJ+8f4slikNjJM9TEL/AljYQ==", 933 + "license": "MIT", 934 + "dependencies": { 935 + "@inquirer/core": "^11.1.1", 936 + "@inquirer/type": "^4.0.3" 937 + }, 938 + "engines": { 939 + "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" 940 + }, 941 + "peerDependencies": { 942 + "@types/node": ">=18" 943 + }, 944 + "peerDependenciesMeta": { 945 + "@types/node": { 946 + "optional": true 947 + } 948 + } 949 + }, 950 + "node_modules/@inquirer/password": { 951 + "version": "5.0.4", 952 + "resolved": "https://registry.npmjs.org/@inquirer/password/-/password-5.0.4.tgz", 953 + "integrity": "sha512-ZCEPyVYvHK4W4p2Gy6sTp9nqsdHQCfiPXIP9LbJVW4yCinnxL/dDDmPaEZVysGrj8vxVReRnpfS2fOeODe9zjg==", 954 + "license": "MIT", 955 + "dependencies": { 956 + "@inquirer/ansi": "^2.0.3", 957 + "@inquirer/core": "^11.1.1", 958 + "@inquirer/type": "^4.0.3" 959 + }, 960 + "engines": { 961 + "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" 962 + }, 963 + "peerDependencies": { 964 + "@types/node": ">=18" 965 + }, 966 + "peerDependenciesMeta": { 967 + "@types/node": { 968 + "optional": true 969 + } 970 + } 971 + }, 972 + "node_modules/@inquirer/prompts": { 973 + "version": "8.2.0", 974 + "resolved": "https://registry.npmjs.org/@inquirer/prompts/-/prompts-8.2.0.tgz", 975 + "integrity": "sha512-rqTzOprAj55a27jctS3vhvDDJzYXsr33WXTjODgVOru21NvBo9yIgLIAf7SBdSV0WERVly3dR6TWyp7ZHkvKFA==", 976 + "license": "MIT", 977 + "dependencies": { 978 + "@inquirer/checkbox": "^5.0.4", 979 + "@inquirer/confirm": "^6.0.4", 980 + "@inquirer/editor": "^5.0.4", 981 + "@inquirer/expand": "^5.0.4", 982 + "@inquirer/input": "^5.0.4", 983 + "@inquirer/number": "^4.0.4", 984 + "@inquirer/password": "^5.0.4", 985 + "@inquirer/rawlist": "^5.2.0", 986 + "@inquirer/search": "^4.1.0", 987 + "@inquirer/select": "^5.0.4" 988 + }, 989 + "engines": { 990 + "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" 991 + }, 992 + "peerDependencies": { 993 + "@types/node": ">=18" 994 + }, 995 + "peerDependenciesMeta": { 996 + "@types/node": { 997 + "optional": true 998 + } 999 + } 1000 + }, 1001 + "node_modules/@inquirer/rawlist": { 1002 + "version": "5.2.0", 1003 + "resolved": "https://registry.npmjs.org/@inquirer/rawlist/-/rawlist-5.2.0.tgz", 1004 + "integrity": "sha512-CciqGoOUMrFo6HxvOtU5uL8fkjCmzyeB6fG7O1vdVAZVSopUBYECOwevDBlqNLyyYmzpm2Gsn/7nLrpruy9RFg==", 1005 + "license": "MIT", 1006 + "dependencies": { 1007 + "@inquirer/core": "^11.1.1", 1008 + "@inquirer/type": "^4.0.3" 1009 + }, 1010 + "engines": { 1011 + "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" 1012 + }, 1013 + "peerDependencies": { 1014 + "@types/node": ">=18" 1015 + }, 1016 + "peerDependenciesMeta": { 1017 + "@types/node": { 1018 + "optional": true 1019 + } 1020 + } 1021 + }, 1022 + "node_modules/@inquirer/search": { 1023 + "version": "4.1.0", 1024 + "resolved": "https://registry.npmjs.org/@inquirer/search/-/search-4.1.0.tgz", 1025 + "integrity": "sha512-EAzemfiP4IFvIuWnrHpgZs9lAhWDA0GM3l9F4t4mTQ22IFtzfrk8xbkMLcAN7gmVML9O/i+Hzu8yOUyAaL6BKA==", 1026 + "license": "MIT", 1027 + "dependencies": { 1028 + "@inquirer/core": "^11.1.1", 1029 + "@inquirer/figures": "^2.0.3", 1030 + "@inquirer/type": "^4.0.3" 1031 + }, 1032 + "engines": { 1033 + "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" 1034 + }, 1035 + "peerDependencies": { 1036 + "@types/node": ">=18" 1037 + }, 1038 + "peerDependenciesMeta": { 1039 + "@types/node": { 1040 + "optional": true 1041 + } 1042 + } 1043 + }, 1044 + "node_modules/@inquirer/select": { 1045 + "version": "5.0.4", 1046 + "resolved": "https://registry.npmjs.org/@inquirer/select/-/select-5.0.4.tgz", 1047 + "integrity": "sha512-s8KoGpPYMEQ6WXc0dT9blX2NtIulMdLOO3LA1UKOiv7KFWzlJ6eLkEYTDBIi+JkyKXyn8t/CD6TinxGjyLt57g==", 1048 + "license": "MIT", 1049 + "dependencies": { 1050 + "@inquirer/ansi": "^2.0.3", 1051 + "@inquirer/core": "^11.1.1", 1052 + "@inquirer/figures": "^2.0.3", 1053 + "@inquirer/type": "^4.0.3" 1054 + }, 1055 + "engines": { 1056 + "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" 1057 + }, 1058 + "peerDependencies": { 1059 + "@types/node": ">=18" 1060 + }, 1061 + "peerDependenciesMeta": { 1062 + "@types/node": { 1063 + "optional": true 1064 + } 1065 + } 1066 + }, 1067 + "node_modules/@inquirer/type": { 1068 + "version": "4.0.3", 1069 + "resolved": "https://registry.npmjs.org/@inquirer/type/-/type-4.0.3.tgz", 1070 + "integrity": "sha512-cKZN7qcXOpj1h+1eTTcGDVLaBIHNMT1Rz9JqJP5MnEJ0JhgVWllx7H/tahUp5YEK1qaByH2Itb8wLG/iScD5kw==", 1071 + "license": "MIT", 1072 + "engines": { 1073 + "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" 1074 + }, 1075 + "peerDependencies": { 1076 + "@types/node": ">=18" 1077 + }, 1078 + "peerDependenciesMeta": { 1079 + "@types/node": { 1080 + "optional": true 1081 + } 1082 + } 1083 + }, 634 1084 "node_modules/@jridgewell/sourcemap-codec": { 635 1085 "version": "1.5.5", 636 1086 "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", ··· 638 1088 "dev": true, 639 1089 "license": "MIT" 640 1090 }, 1091 + "node_modules/@napi-rs/keyring": { 1092 + "version": "1.2.0", 1093 + "resolved": "https://registry.npmjs.org/@napi-rs/keyring/-/keyring-1.2.0.tgz", 1094 + "integrity": "sha512-d0d4Oyxm+v980PEq1ZH2PmS6cvpMIRc17eYpiU47KgW+lzxklMu6+HOEOPmxrpnF/XQZ0+Q78I2mgMhbIIo/dg==", 1095 + "license": "MIT", 1096 + "engines": { 1097 + "node": ">= 10" 1098 + }, 1099 + "funding": { 1100 + "type": "github", 1101 + "url": "https://github.com/sponsors/Brooooooklyn" 1102 + }, 1103 + "optionalDependencies": { 1104 + "@napi-rs/keyring-darwin-arm64": "1.2.0", 1105 + "@napi-rs/keyring-darwin-x64": "1.2.0", 1106 + "@napi-rs/keyring-freebsd-x64": "1.2.0", 1107 + "@napi-rs/keyring-linux-arm-gnueabihf": "1.2.0", 1108 + "@napi-rs/keyring-linux-arm64-gnu": "1.2.0", 1109 + "@napi-rs/keyring-linux-arm64-musl": "1.2.0", 1110 + "@napi-rs/keyring-linux-riscv64-gnu": "1.2.0", 1111 + "@napi-rs/keyring-linux-x64-gnu": "1.2.0", 1112 + "@napi-rs/keyring-linux-x64-musl": "1.2.0", 1113 + "@napi-rs/keyring-win32-arm64-msvc": "1.2.0", 1114 + "@napi-rs/keyring-win32-ia32-msvc": "1.2.0", 1115 + "@napi-rs/keyring-win32-x64-msvc": "1.2.0" 1116 + } 1117 + }, 1118 + "node_modules/@napi-rs/keyring-darwin-arm64": { 1119 + "version": "1.2.0", 1120 + "resolved": "https://registry.npmjs.org/@napi-rs/keyring-darwin-arm64/-/keyring-darwin-arm64-1.2.0.tgz", 1121 + "integrity": "sha512-CA83rDeyONDADO25JLZsh3eHY8yTEtm/RS6ecPsY+1v+dSawzT9GywBMu2r6uOp1IEhQs/xAfxgybGAFr17lSA==", 1122 + "cpu": [ 1123 + "arm64" 1124 + ], 1125 + "license": "MIT", 1126 + "optional": true, 1127 + "os": [ 1128 + "darwin" 1129 + ], 1130 + "engines": { 1131 + "node": ">= 10" 1132 + } 1133 + }, 1134 + "node_modules/@napi-rs/keyring-darwin-x64": { 1135 + "version": "1.2.0", 1136 + "resolved": "https://registry.npmjs.org/@napi-rs/keyring-darwin-x64/-/keyring-darwin-x64-1.2.0.tgz", 1137 + "integrity": "sha512-dBHjtKRCj4ByfnfqIKIJLo3wueQNJhLRyuxtX/rR4K/XtcS7VLlRD01XXizjpre54vpmObj63w+ZpHG+mGM8uA==", 1138 + "cpu": [ 1139 + "x64" 1140 + ], 1141 + "license": "MIT", 1142 + "optional": true, 1143 + "os": [ 1144 + "darwin" 1145 + ], 1146 + "engines": { 1147 + "node": ">= 10" 1148 + } 1149 + }, 1150 + "node_modules/@napi-rs/keyring-freebsd-x64": { 1151 + "version": "1.2.0", 1152 + "resolved": "https://registry.npmjs.org/@napi-rs/keyring-freebsd-x64/-/keyring-freebsd-x64-1.2.0.tgz", 1153 + "integrity": "sha512-DPZFr11pNJSnaoh0dzSUNF+T6ORhy3CkzUT3uGixbA71cAOPJ24iG8e8QrLOkuC/StWrAku3gBnth2XMWOcR3Q==", 1154 + "cpu": [ 1155 + "x64" 1156 + ], 1157 + "license": "MIT", 1158 + "optional": true, 1159 + "os": [ 1160 + "freebsd" 1161 + ], 1162 + "engines": { 1163 + "node": ">= 10" 1164 + } 1165 + }, 1166 + "node_modules/@napi-rs/keyring-linux-arm-gnueabihf": { 1167 + "version": "1.2.0", 1168 + "resolved": "https://registry.npmjs.org/@napi-rs/keyring-linux-arm-gnueabihf/-/keyring-linux-arm-gnueabihf-1.2.0.tgz", 1169 + "integrity": "sha512-8xv6DyEMlvRdqJzp4F39RLUmmTQsLcGYYv/3eIfZNZN1O5257tHxTrFYqAsny659rJJK2EKeSa7PhrSibQqRWQ==", 1170 + "cpu": [ 1171 + "arm" 1172 + ], 1173 + "license": "MIT", 1174 + "optional": true, 1175 + "os": [ 1176 + "linux" 1177 + ], 1178 + "engines": { 1179 + "node": ">= 10" 1180 + } 1181 + }, 1182 + "node_modules/@napi-rs/keyring-linux-arm64-gnu": { 1183 + "version": "1.2.0", 1184 + "resolved": "https://registry.npmjs.org/@napi-rs/keyring-linux-arm64-gnu/-/keyring-linux-arm64-gnu-1.2.0.tgz", 1185 + "integrity": "sha512-Pu2V6Py+PBt7inryEecirl+t+ti8bhZphjP+W68iVaXHUxLdWmkgL9KI1VkbRHbx5k8K5Tew9OP218YfmVguIA==", 1186 + "cpu": [ 1187 + "arm64" 1188 + ], 1189 + "license": "MIT", 1190 + "optional": true, 1191 + "os": [ 1192 + "linux" 1193 + ], 1194 + "engines": { 1195 + "node": ">= 10" 1196 + } 1197 + }, 1198 + "node_modules/@napi-rs/keyring-linux-arm64-musl": { 1199 + "version": "1.2.0", 1200 + "resolved": "https://registry.npmjs.org/@napi-rs/keyring-linux-arm64-musl/-/keyring-linux-arm64-musl-1.2.0.tgz", 1201 + "integrity": "sha512-8TDymrpC4P1a9iDEaegT7RnrkmrJN5eNZh3Im3UEV5PPYGtrb82CRxsuFohthCWQW81O483u1bu+25+XA4nKUw==", 1202 + "cpu": [ 1203 + "arm64" 1204 + ], 1205 + "license": "MIT", 1206 + "optional": true, 1207 + "os": [ 1208 + "linux" 1209 + ], 1210 + "engines": { 1211 + "node": ">= 10" 1212 + } 1213 + }, 1214 + "node_modules/@napi-rs/keyring-linux-riscv64-gnu": { 1215 + "version": "1.2.0", 1216 + "resolved": "https://registry.npmjs.org/@napi-rs/keyring-linux-riscv64-gnu/-/keyring-linux-riscv64-gnu-1.2.0.tgz", 1217 + "integrity": "sha512-awsB5XI1MYL7fwfjMDGmKOWvNgJEO7mM7iVEMS0fO39f0kVJnOSjlu7RHcXAF0LOx+0VfF3oxbWqJmZbvRCRHw==", 1218 + "cpu": [ 1219 + "riscv64" 1220 + ], 1221 + "license": "MIT", 1222 + "optional": true, 1223 + "os": [ 1224 + "linux" 1225 + ], 1226 + "engines": { 1227 + "node": ">= 10" 1228 + } 1229 + }, 1230 + "node_modules/@napi-rs/keyring-linux-x64-gnu": { 1231 + "version": "1.2.0", 1232 + "resolved": "https://registry.npmjs.org/@napi-rs/keyring-linux-x64-gnu/-/keyring-linux-x64-gnu-1.2.0.tgz", 1233 + "integrity": "sha512-8E+7z4tbxSJXxIBqA+vfB1CGajpCDRyTyqXkBig5NtASrv4YXcntSo96Iah2QDR5zD3dSTsmbqJudcj9rKKuHQ==", 1234 + "cpu": [ 1235 + "x64" 1236 + ], 1237 + "license": "MIT", 1238 + "optional": true, 1239 + "os": [ 1240 + "linux" 1241 + ], 1242 + "engines": { 1243 + "node": ">= 10" 1244 + } 1245 + }, 1246 + "node_modules/@napi-rs/keyring-linux-x64-musl": { 1247 + "version": "1.2.0", 1248 + "resolved": "https://registry.npmjs.org/@napi-rs/keyring-linux-x64-musl/-/keyring-linux-x64-musl-1.2.0.tgz", 1249 + "integrity": "sha512-8RZ8yVEnmWr/3BxKgBSzmgntI7lNEsY7xouNfOsQkuVAiCNmxzJwETspzK3PQ2FHtDxgz5vHQDEBVGMyM4hUHA==", 1250 + "cpu": [ 1251 + "x64" 1252 + ], 1253 + "license": "MIT", 1254 + "optional": true, 1255 + "os": [ 1256 + "linux" 1257 + ], 1258 + "engines": { 1259 + "node": ">= 10" 1260 + } 1261 + }, 1262 + "node_modules/@napi-rs/keyring-win32-arm64-msvc": { 1263 + "version": "1.2.0", 1264 + "resolved": "https://registry.npmjs.org/@napi-rs/keyring-win32-arm64-msvc/-/keyring-win32-arm64-msvc-1.2.0.tgz", 1265 + "integrity": "sha512-AoqaDZpQ6KPE19VBLpxyORcp+yWmHI9Xs9Oo0PJ4mfHma4nFSLVdhAubJCxdlNptHe5va7ghGCHj3L9Akiv4cQ==", 1266 + "cpu": [ 1267 + "arm64" 1268 + ], 1269 + "license": "MIT", 1270 + "optional": true, 1271 + "os": [ 1272 + "win32" 1273 + ], 1274 + "engines": { 1275 + "node": ">= 10" 1276 + } 1277 + }, 1278 + "node_modules/@napi-rs/keyring-win32-ia32-msvc": { 1279 + "version": "1.2.0", 1280 + "resolved": "https://registry.npmjs.org/@napi-rs/keyring-win32-ia32-msvc/-/keyring-win32-ia32-msvc-1.2.0.tgz", 1281 + "integrity": "sha512-EYL+EEI6bCsYi3LfwcQdnX3P/R76ENKNn+3PmpGheBsUFLuh0gQuP7aMVHM4rTw6UVe+L3vCLZSptq/oeacz0A==", 1282 + "cpu": [ 1283 + "ia32" 1284 + ], 1285 + "license": "MIT", 1286 + "optional": true, 1287 + "os": [ 1288 + "win32" 1289 + ], 1290 + "engines": { 1291 + "node": ">= 10" 1292 + } 1293 + }, 1294 + "node_modules/@napi-rs/keyring-win32-x64-msvc": { 1295 + "version": "1.2.0", 1296 + "resolved": "https://registry.npmjs.org/@napi-rs/keyring-win32-x64-msvc/-/keyring-win32-x64-msvc-1.2.0.tgz", 1297 + "integrity": "sha512-xFlx/TsmqmCwNU9v+AVnEJgoEAlBYgzFF5Ihz1rMpPAt4qQWWkMd4sCyM1gMJ1A/GnRqRegDiQpwaxGUHFtFbA==", 1298 + "cpu": [ 1299 + "x64" 1300 + ], 1301 + "license": "MIT", 1302 + "optional": true, 1303 + "os": [ 1304 + "win32" 1305 + ], 1306 + "engines": { 1307 + "node": ">= 10" 1308 + } 1309 + }, 641 1310 "node_modules/@rollup/rollup-android-arm-eabi": { 642 1311 "version": "4.57.1", 643 1312 "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.57.1.tgz", ··· 999 1668 "version": "22.19.10", 1000 1669 "resolved": "https://registry.npmjs.org/@types/node/-/node-22.19.10.tgz", 1001 1670 "integrity": "sha512-tF5VOugLS/EuDlTBijk0MqABfP8UxgYazTLo3uIn3b4yJgg26QRbVYJYsDtHrjdDUIRfP70+VfhTTc+CE1yskw==", 1002 - "dev": true, 1671 + "devOptional": true, 1003 1672 "license": "MIT", 1004 1673 "dependencies": { 1005 1674 "undici-types": "~6.21.0" ··· 1118 1787 "url": "https://opencollective.com/vitest" 1119 1788 } 1120 1789 }, 1790 + "node_modules/ansi-regex": { 1791 + "version": "6.2.2", 1792 + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.2.tgz", 1793 + "integrity": "sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==", 1794 + "license": "MIT", 1795 + "engines": { 1796 + "node": ">=12" 1797 + }, 1798 + "funding": { 1799 + "url": "https://github.com/chalk/ansi-regex?sponsor=1" 1800 + } 1801 + }, 1802 + "node_modules/ansi-styles": { 1803 + "version": "6.2.3", 1804 + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz", 1805 + "integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==", 1806 + "license": "MIT", 1807 + "engines": { 1808 + "node": ">=12" 1809 + }, 1810 + "funding": { 1811 + "url": "https://github.com/chalk/ansi-styles?sponsor=1" 1812 + } 1813 + }, 1121 1814 "node_modules/assertion-error": { 1122 1815 "version": "2.0.1", 1123 1816 "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-2.0.1.tgz", ··· 1127 1820 "engines": { 1128 1821 "node": ">=12" 1129 1822 } 1823 + }, 1824 + "node_modules/await-lock": { 1825 + "version": "2.2.2", 1826 + "resolved": "https://registry.npmjs.org/await-lock/-/await-lock-2.2.2.tgz", 1827 + "integrity": "sha512-aDczADvlvTGajTDjcjpJMqRkOF6Qdz3YbPZm/PyW6tKPkx2hlYBzxMhEywM/tU72HrVZjgl5VCdRuMlA7pZ8Gw==", 1828 + "license": "MIT" 1130 1829 }, 1131 1830 "node_modules/cac": { 1132 1831 "version": "6.7.14", ··· 1155 1854 "node": ">=18" 1156 1855 } 1157 1856 }, 1857 + "node_modules/chardet": { 1858 + "version": "2.1.1", 1859 + "resolved": "https://registry.npmjs.org/chardet/-/chardet-2.1.1.tgz", 1860 + "integrity": "sha512-PsezH1rqdV9VvyNhxxOW32/d75r01NY7TQCmOqomRo15ZSOKbpTFVsfjghxo6JloQUCGnH4k1LGu0R4yCLlWQQ==", 1861 + "license": "MIT" 1862 + }, 1158 1863 "node_modules/check-error": { 1159 1864 "version": "2.1.3", 1160 1865 "resolved": "https://registry.npmjs.org/check-error/-/check-error-2.1.3.tgz", ··· 1165 1870 "node": ">= 16" 1166 1871 } 1167 1872 }, 1873 + "node_modules/cli-width": { 1874 + "version": "4.1.0", 1875 + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-4.1.0.tgz", 1876 + "integrity": "sha512-ouuZd4/dm2Sw5Gmqy6bGyNNNe1qt9RpmxveLSO7KcgsTnU7RXfsw+/bukWGo1abgBiMAic068rclZsO4IWmmxQ==", 1877 + "license": "ISC", 1878 + "engines": { 1879 + "node": ">= 12" 1880 + } 1881 + }, 1168 1882 "node_modules/commander": { 1169 1883 "version": "12.1.0", 1170 1884 "resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz", ··· 1201 1915 "engines": { 1202 1916 "node": ">=6" 1203 1917 } 1918 + }, 1919 + "node_modules/emoji-regex": { 1920 + "version": "10.6.0", 1921 + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.6.0.tgz", 1922 + "integrity": "sha512-toUI84YS5YmxW219erniWD0CIVOo46xGKColeNQRgOzDorgBi1v4D71/OFzgD9GO2UGKIv1C3Sp8DAn0+j5w7A==", 1923 + "license": "MIT" 1204 1924 }, 1205 1925 "node_modules/es-module-lexer": { 1206 1926 "version": "1.7.0", ··· 1286 2006 "node": "^8.16.0 || ^10.6.0 || >=11.0.0" 1287 2007 } 1288 2008 }, 2009 + "node_modules/get-east-asian-width": { 2010 + "version": "1.4.0", 2011 + "resolved": "https://registry.npmjs.org/get-east-asian-width/-/get-east-asian-width-1.4.0.tgz", 2012 + "integrity": "sha512-QZjmEOC+IT1uk6Rx0sX22V6uHWVwbdbxf1faPqJ1QhLdGgsRGCZoyaQBm/piRdJy/D2um6hM1UP7ZEeQ4EkP+Q==", 2013 + "license": "MIT", 2014 + "engines": { 2015 + "node": ">=18" 2016 + }, 2017 + "funding": { 2018 + "url": "https://github.com/sponsors/sindresorhus" 2019 + } 2020 + }, 1289 2021 "node_modules/get-tsconfig": { 1290 2022 "version": "4.13.6", 1291 2023 "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.13.6.tgz", ··· 1299 2031 "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" 1300 2032 } 1301 2033 }, 2034 + "node_modules/iconv-lite": { 2035 + "version": "0.7.2", 2036 + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.7.2.tgz", 2037 + "integrity": "sha512-im9DjEDQ55s9fL4EYzOAv0yMqmMBSZp6G0VvFyTMPKWxiSBHUj9NW/qqLmXUwXrrM7AvqSlTCfvqRb0cM8yYqw==", 2038 + "license": "MIT", 2039 + "dependencies": { 2040 + "safer-buffer": ">= 2.1.2 < 3.0.0" 2041 + }, 2042 + "engines": { 2043 + "node": ">=0.10.0" 2044 + }, 2045 + "funding": { 2046 + "type": "opencollective", 2047 + "url": "https://opencollective.com/express" 2048 + } 2049 + }, 2050 + "node_modules/iso-datestring-validator": { 2051 + "version": "2.2.2", 2052 + "resolved": "https://registry.npmjs.org/iso-datestring-validator/-/iso-datestring-validator-2.2.2.tgz", 2053 + "integrity": "sha512-yLEMkBbLZTlVQqOnQ4FiMujR6T4DEcCb1xizmvXS+OxuhwcbtynoosRzdMA69zZCShCNAbi+gJ71FxZBBXx1SA==", 2054 + "license": "MIT" 2055 + }, 1302 2056 "node_modules/loupe": { 1303 2057 "version": "3.2.1", 1304 2058 "resolved": "https://registry.npmjs.org/loupe/-/loupe-3.2.1.tgz", ··· 1323 2077 "dev": true, 1324 2078 "license": "MIT" 1325 2079 }, 2080 + "node_modules/multiformats": { 2081 + "version": "9.9.0", 2082 + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", 2083 + "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==", 2084 + "license": "(Apache-2.0 AND MIT)" 2085 + }, 2086 + "node_modules/mute-stream": { 2087 + "version": "3.0.0", 2088 + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-3.0.0.tgz", 2089 + "integrity": "sha512-dkEJPVvun4FryqBmZ5KhDo0K9iDXAwn08tMLDinNdRBNPcYEDiWYysLcc6k3mjTMlbP9KyylvRpd4wFtwrT9rw==", 2090 + "license": "ISC", 2091 + "engines": { 2092 + "node": "^20.17.0 || >=22.9.0" 2093 + } 2094 + }, 1326 2095 "node_modules/nanoid": { 1327 2096 "version": "3.3.11", 1328 2097 "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", ··· 1450 2219 "fsevents": "~2.3.2" 1451 2220 } 1452 2221 }, 2222 + "node_modules/safer-buffer": { 2223 + "version": "2.1.2", 2224 + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", 2225 + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", 2226 + "license": "MIT" 2227 + }, 1453 2228 "node_modules/siginfo": { 1454 2229 "version": "2.0.0", 1455 2230 "resolved": "https://registry.npmjs.org/siginfo/-/siginfo-2.0.0.tgz", ··· 1457 2232 "dev": true, 1458 2233 "license": "ISC" 1459 2234 }, 2235 + "node_modules/signal-exit": { 2236 + "version": "4.1.0", 2237 + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", 2238 + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", 2239 + "license": "ISC", 2240 + "engines": { 2241 + "node": ">=14" 2242 + }, 2243 + "funding": { 2244 + "url": "https://github.com/sponsors/isaacs" 2245 + } 2246 + }, 1460 2247 "node_modules/source-map-js": { 1461 2248 "version": "1.2.1", 1462 2249 "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", ··· 1481 2268 "dev": true, 1482 2269 "license": "MIT" 1483 2270 }, 2271 + "node_modules/string-width": { 2272 + "version": "7.2.0", 2273 + "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.2.0.tgz", 2274 + "integrity": "sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==", 2275 + "license": "MIT", 2276 + "dependencies": { 2277 + "emoji-regex": "^10.3.0", 2278 + "get-east-asian-width": "^1.0.0", 2279 + "strip-ansi": "^7.1.0" 2280 + }, 2281 + "engines": { 2282 + "node": ">=18" 2283 + }, 2284 + "funding": { 2285 + "url": "https://github.com/sponsors/sindresorhus" 2286 + } 2287 + }, 2288 + "node_modules/strip-ansi": { 2289 + "version": "7.1.2", 2290 + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.2.tgz", 2291 + "integrity": "sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==", 2292 + "license": "MIT", 2293 + "dependencies": { 2294 + "ansi-regex": "^6.0.1" 2295 + }, 2296 + "engines": { 2297 + "node": ">=12" 2298 + }, 2299 + "funding": { 2300 + "url": "https://github.com/chalk/strip-ansi?sponsor=1" 2301 + } 2302 + }, 1484 2303 "node_modules/tinybench": { 1485 2304 "version": "2.9.0", 1486 2305 "resolved": "https://registry.npmjs.org/tinybench/-/tinybench-2.9.0.tgz", ··· 1525 2344 "node": ">=14.0.0" 1526 2345 } 1527 2346 }, 2347 + "node_modules/tlds": { 2348 + "version": "1.261.0", 2349 + "resolved": "https://registry.npmjs.org/tlds/-/tlds-1.261.0.tgz", 2350 + "integrity": "sha512-QXqwfEl9ddlGBaRFXIvNKK6OhipSiLXuRuLJX5DErz0o0Q0rYxulWLdFryTkV5PkdZct5iMInwYEGe/eR++1AA==", 2351 + "license": "MIT", 2352 + "bin": { 2353 + "tlds": "bin.js" 2354 + } 2355 + }, 2356 + "node_modules/tslib": { 2357 + "version": "2.8.1", 2358 + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", 2359 + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", 2360 + "license": "0BSD" 2361 + }, 1528 2362 "node_modules/tsx": { 1529 2363 "version": "4.21.0", 1530 2364 "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.21.0.tgz", ··· 1559 2393 "node": ">=14.17" 1560 2394 } 1561 2395 }, 2396 + "node_modules/uint8arrays": { 2397 + "version": "3.0.0", 2398 + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-3.0.0.tgz", 2399 + "integrity": "sha512-HRCx0q6O9Bfbp+HHSfQQKD7wU70+lydKVt4EghkdOvlK/NlrF90z+eXV34mUd48rNvVJXwkrMSPpCATkct8fJA==", 2400 + "license": "MIT", 2401 + "dependencies": { 2402 + "multiformats": "^9.4.2" 2403 + } 2404 + }, 1562 2405 "node_modules/undici-types": { 1563 2406 "version": "6.21.0", 1564 2407 "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", 1565 2408 "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", 1566 - "dev": true, 2409 + "devOptional": true, 2410 + "license": "MIT" 2411 + }, 2412 + "node_modules/unicode-segmenter": { 2413 + "version": "0.14.5", 2414 + "resolved": "https://registry.npmjs.org/unicode-segmenter/-/unicode-segmenter-0.14.5.tgz", 2415 + "integrity": "sha512-jHGmj2LUuqDcX3hqY12Ql+uhUTn8huuxNZGq7GvtF6bSybzH3aFgedYu/KTzQStEgt1Ra2F3HxadNXsNjb3m3g==", 1567 2416 "license": "MIT" 1568 2417 }, 1569 2418 "node_modules/vite": { ··· 2160 3009 }, 2161 3010 "engines": { 2162 3011 "node": ">=8" 3012 + } 3013 + }, 3014 + "node_modules/wrap-ansi": { 3015 + "version": "9.0.2", 3016 + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-9.0.2.tgz", 3017 + "integrity": "sha512-42AtmgqjV+X1VpdOfyTGOYRi0/zsoLqtXQckTmqTeybT+BDIbM/Guxo7x3pE2vtpr1ok6xRqM9OpBe+Jyoqyww==", 3018 + "license": "MIT", 3019 + "dependencies": { 3020 + "ansi-styles": "^6.2.1", 3021 + "string-width": "^7.0.0", 3022 + "strip-ansi": "^7.1.0" 3023 + }, 3024 + "engines": { 3025 + "node": ">=18" 3026 + }, 3027 + "funding": { 3028 + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" 3029 + } 3030 + }, 3031 + "node_modules/zod": { 3032 + "version": "4.3.6", 3033 + "resolved": "https://registry.npmjs.org/zod/-/zod-4.3.6.tgz", 3034 + "integrity": "sha512-rftlrkhHZOcjDwkGlnUtZZkvaPHCsDATp4pGpuOOMDaTdDDXF91wuVDJoWoPsKX/3YPQ5fHuF3STjcYyKr+Qhg==", 3035 + "license": "MIT", 3036 + "funding": { 3037 + "url": "https://github.com/sponsors/colinhacks" 2163 3038 } 2164 3039 } 2165 3040 }
+12 -2
package.json
··· 26 26 "type": "git", 27 27 "url": "git@tangled.org:markbennett.ca/tangled-cli" 28 28 }, 29 - "keywords": ["git", "tangled", "pds", "atproto", "cli"], 29 + "keywords": [ 30 + "git", 31 + "tangled", 32 + "pds", 33 + "atproto", 34 + "cli" 35 + ], 30 36 "author": "Mark Bennett", 31 37 "license": "MIT", 32 38 "dependencies": { 33 - "commander": "^12.1.0" 39 + "@atproto/api": "^0.18.20", 40 + "@inquirer/prompts": "^8.2.0", 41 + "@napi-rs/keyring": "^1.2.0", 42 + "commander": "^12.1.0", 43 + "zod": "^4.3.6" 34 44 }, 35 45 "devDependencies": { 36 46 "@biomejs/biome": "^1.9.4",