diff --git a/.changeset/pink-rings-roll.md b/.changeset/pink-rings-roll.md
new file mode 100644
index 0000000..cc71850
--- /dev/null
+++ b/.changeset/pink-rings-roll.md
@@ -0,0 +1,5 @@
+---
+"nsite-ts": minor
+---
+
+Replace homepage with simple welcome page
diff --git a/.changeset/real-ladybugs-remain.md b/.changeset/real-ladybugs-remain.md
new file mode 100644
index 0000000..29f0a8e
--- /dev/null
+++ b/.changeset/real-ladybugs-remain.md
@@ -0,0 +1,5 @@
+---
+"nsite-ts": minor
+---
+
+Add option to download another nsite as a homepage
diff --git a/.env.example b/.env.example
index 2eaf90c..e6cd6a8 100644
--- a/.env.example
+++ b/.env.example
@@ -17,6 +17,13 @@ MAX_FILE_SIZE='2 MB'
# The cache folder for nginx
NGINX_CACHE_DIR='/var/nginx/cache'
+# A nprofile pointer for an nsite to use as the default homepage
+# Setting this will override anything in the ./public folder
+NSITE_HOMEPAGE=""
+
+# a local directory to download the homepage to
+NSITE_HOMEPAGE_DIR="public"
+
# Screenshots require Puppeteer to be setup https://pptr.dev/troubleshooting#setting-up-chrome-linux-sandbox
ENABLE_SCREENSHOTS="false"
SCREENSHOTS_DIR="./screenshots"
diff --git a/package.json b/package.json
index 0fa7f70..9160cee 100644
--- a/package.json
+++ b/package.json
@@ -33,6 +33,7 @@
"koa-static": "^5.0.0",
"mime": "^4.0.6",
"nostr-tools": "^2.10.4",
+ "nsite-cli": "^0.1.14",
"pac-proxy-agent": "^7.1.0",
"proxy-agent": "^6.5.0",
"puppeteer": "^23.11.1",
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index c2c3a42..e06ba33 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -53,6 +53,9 @@ importers:
nostr-tools:
specifier: ^2.10.4
version: 2.10.4(typescript@5.7.3)
+ nsite-cli:
+ specifier: ^0.1.14
+ version: 0.1.14(@types/node@20.17.14)(typescript@5.7.3)
pac-proxy-agent:
specifier: ^7.1.0
version: 7.1.0
@@ -214,6 +217,94 @@ packages:
'@gar/promisify@1.1.3':
resolution: {integrity: sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==}
+ '@inquirer/checkbox@4.0.6':
+ resolution: {integrity: sha512-PgP35JfmGjHU0LSXOyRew0zHuA9N6OJwOlos1fZ20b7j8ISeAdib3L+n0jIxBtX958UeEpte6xhG/gxJ5iUqMw==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ '@types/node': '>=18'
+
+ '@inquirer/confirm@5.1.3':
+ resolution: {integrity: sha512-fuF9laMmHoOgWapF9h9hv6opA5WvmGFHsTYGCmuFxcghIhEhb3dN0CdQR4BUMqa2H506NCj8cGX4jwMsE4t6dA==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ '@types/node': '>=18'
+
+ '@inquirer/core@10.1.4':
+ resolution: {integrity: sha512-5y4/PUJVnRb4bwWY67KLdebWOhOc7xj5IP2J80oWXa64mVag24rwQ1VAdnj7/eDY/odhguW0zQ1Mp1pj6fO/2w==}
+ engines: {node: '>=18'}
+
+ '@inquirer/core@3.1.2':
+ resolution: {integrity: sha512-lR2GaqBkp42Ew9BOAOqf2pSp+ymVES1qN8OC90WWh45yeoYLl0Ty1GyCxmkKqBJtq/+Ea1MF12AdFcZcpRNFsw==}
+ engines: {node: '>=14.18.0'}
+
+ '@inquirer/editor@4.2.3':
+ resolution: {integrity: sha512-S9KnIOJuTZpb9upeRSBBhoDZv7aSV3pG9TECrBj0f+ZsFwccz886hzKBrChGrXMJwd4NKY+pOA9Vy72uqnd6Eg==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ '@types/node': '>=18'
+
+ '@inquirer/expand@4.0.6':
+ resolution: {integrity: sha512-TRTfi1mv1GeIZGyi9PQmvAaH65ZlG4/FACq6wSzs7Vvf1z5dnNWsAAXBjWMHt76l+1hUY8teIqJFrWBk5N6gsg==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ '@types/node': '>=18'
+
+ '@inquirer/figures@1.0.9':
+ resolution: {integrity: sha512-BXvGj0ehzrngHTPTDqUoDT3NXL8U0RxUk2zJm2A66RhCEIWdtU1v6GuUqNAgArW4PQ9CinqIWyHdQgdwOj06zQ==}
+ engines: {node: '>=18'}
+
+ '@inquirer/input@4.1.3':
+ resolution: {integrity: sha512-zeo++6f7hxaEe7OjtMzdGZPHiawsfmCZxWB9X1NpmYgbeoyerIbWemvlBxxl+sQIlHC0WuSAG19ibMq3gbhaqQ==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ '@types/node': '>=18'
+
+ '@inquirer/number@3.0.6':
+ resolution: {integrity: sha512-xO07lftUHk1rs1gR0KbqB+LJPhkUNkyzV/KhH+937hdkMazmAYHLm1OIrNKpPelppeV1FgWrgFDjdUD8mM+XUg==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ '@types/node': '>=18'
+
+ '@inquirer/password@4.0.6':
+ resolution: {integrity: sha512-QLF0HmMpHZPPMp10WGXh6F+ZPvzWE7LX6rNoccdktv/Rov0B+0f+eyXkAcgqy5cH9V+WSpbLxu2lo3ysEVK91w==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ '@types/node': '>=18'
+
+ '@inquirer/prompts@7.2.3':
+ resolution: {integrity: sha512-hzfnm3uOoDySDXfDNOm9usOuYIaQvTgKp/13l1uJoe6UNY+Zpcn2RYt0jXz3yA+yemGHvDOxVzqWl3S5sQq53Q==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ '@types/node': '>=18'
+
+ '@inquirer/rawlist@4.0.6':
+ resolution: {integrity: sha512-QoE4s1SsIPx27FO4L1b1mUjVcoHm1pWE/oCmm4z/Hl+V1Aw5IXl8FYYzGmfXaBT0l/sWr49XmNSiq7kg3Kd/Lg==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ '@types/node': '>=18'
+
+ '@inquirer/search@3.0.6':
+ resolution: {integrity: sha512-eFZ2hiAq0bZcFPuFFBmZEtXU1EarHLigE+ENCtpO+37NHCl4+Yokq1P/d09kUblObaikwfo97w+0FtG/EXl5Ng==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ '@types/node': '>=18'
+
+ '@inquirer/select@4.0.6':
+ resolution: {integrity: sha512-yANzIiNZ8fhMm4NORm+a74+KFYHmf7BZphSOBovIzYPVLquseTGEkU5l2UTnBOf5k0VLmTgPighNDLE9QtbViQ==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ '@types/node': '>=18'
+
+ '@inquirer/type@1.5.5':
+ resolution: {integrity: sha512-MzICLu4yS7V8AA61sANROZ9vT1H3ooca5dSmI1FjZkzq7o/koMsRfQSzRtFo+F3Ao4Sf1C0bpLKejpKB/+j6MA==}
+ engines: {node: '>=18'}
+
+ '@inquirer/type@3.0.2':
+ resolution: {integrity: sha512-ZhQ4TvhwHZF+lGhQ2O/rsjo80XoZR5/5qhOY3t6FJuX5XBg5Be8YzYTvaUGJnc12AUGI2nr4QSUE4PhKSigx7g==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ '@types/node': '>=18'
+
'@ioredis/commands@1.2.0':
resolution: {integrity: sha512-Sx1pU8EM64o2BrqNpEO1CNLtKQwyhuXuqyfH7oGKCk+1a33d2r5saW8zNwm3j6BTExtjrv2BxTgzzkMwts6vGg==}
@@ -266,6 +357,9 @@ packages:
resolution: {integrity: sha512-B8XBPsn4vT/KJAGqDzbwztd+6Yte3P4V7iafm24bxgDe/mlRuK6xmWPuCNrKt2vDafZ8MfJLlchDG/vYafQEjQ==}
engines: {node: ^14.21.3 || >=16}
+ '@noble/secp256k1@2.2.3':
+ resolution: {integrity: sha512-l7r5oEQym9Us7EAigzg30/PQAvynhMt2uoYtT3t26eGDVm9Yii5mZ5jWSWmZ/oSIR2Et0xfc6DXrG0bZ787V3w==}
+
'@nodelib/fs.scandir@2.1.5':
resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
engines: {node: '>= 8'}
@@ -278,6 +372,10 @@ packages:
resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
engines: {node: '>= 8'}
+ '@nostr-dev-kit/ndk@2.11.0':
+ resolution: {integrity: sha512-FKIMtcVsVcquzrC+yir9lOXHCIHmQ3IKEVCMohqEB7N96HjP2qrI9s5utbjI3lkavFNF5tXg1Gp9ODEo7XCfLA==}
+ engines: {node: '>=16'}
+
'@npmcli/fs@1.1.1':
resolution: {integrity: sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ==}
@@ -534,6 +632,9 @@ packages:
'@types/ms@2.1.0':
resolution: {integrity: sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==}
+ '@types/mute-stream@0.0.1':
+ resolution: {integrity: sha512-0yQLzYhCqGz7CQPE3iDmYjhb7KMBFOP+tBkyw+/Y2YyDI5wpS7itXXxneN1zSsUwWx3Ji6YiVYrhAnpQGS/vkw==}
+
'@types/node@12.20.55':
resolution: {integrity: sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==}
@@ -555,6 +656,9 @@ packages:
'@types/serve-static@1.15.7':
resolution: {integrity: sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw==}
+ '@types/wrap-ansi@3.0.0':
+ resolution: {integrity: sha512-ltIpx+kM7g/MLRZfkbL7EsCEjfzCcScLpkg37eXEtx5kmrAKBkTJwd1GIAjDSL8wTpM6Hzn5YO4pSb91BEwu1g==}
+
'@types/ws@8.5.13':
resolution: {integrity: sha512-osM/gWBTPKgHV8XkTunnegTRIsvF6owmf5w+JtAfOw472dptdm0dlGv4xCt6GwQRcC2XVOvvRE/0bAoQcL2QkA==}
@@ -588,6 +692,10 @@ packages:
resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==}
engines: {node: '>=6'}
+ ansi-escapes@4.3.2:
+ resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==}
+ engines: {node: '>=8'}
+
ansi-regex@5.0.1:
resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==}
engines: {node: '>=8'}
@@ -622,6 +730,12 @@ packages:
resolution: {integrity: sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==}
engines: {node: '>=4'}
+ asynckit@0.4.0:
+ resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==}
+
+ axios@1.7.9:
+ resolution: {integrity: sha512-LhLcE7Hbiryz8oMDdDptSrWowmB4Bl6RCt6sIJKpRB4XtVf0iEgewX3au/pJqm+Py1kCASkb/FFKjxQaLtxJvw==}
+
b4a@1.6.7:
resolution: {integrity: sha512-OnAYlL5b7LEkALw87fUVafQw5rVR9RjwGd4KUwNQ6DrrNmaVaUCgLipfVlzrPQ4tWOR9P0IXGNOx50jYCCdSJg==}
@@ -721,6 +835,10 @@ packages:
resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
engines: {node: '>=6'}
+ chalk@4.1.2:
+ resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
+ engines: {node: '>=10'}
+
chardet@0.7.0:
resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==}
@@ -748,6 +866,14 @@ packages:
resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==}
engines: {node: '>=6'}
+ cli-spinners@2.9.2:
+ resolution: {integrity: sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==}
+ engines: {node: '>=6'}
+
+ cli-width@4.1.0:
+ resolution: {integrity: sha512-ouuZd4/dm2Sw5Gmqy6bGyNNNe1qt9RpmxveLSO7KcgsTnU7RXfsw+/bukWGo1abgBiMAic068rclZsO4IWmmxQ==}
+ engines: {node: '>= 12'}
+
cliui@8.0.1:
resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==}
engines: {node: '>=12'}
@@ -774,6 +900,14 @@ packages:
colorette@2.0.20:
resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==}
+ combined-stream@1.0.8:
+ resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==}
+ engines: {node: '>= 0.8'}
+
+ commander@12.1.0:
+ resolution: {integrity: sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==}
+ engines: {node: '>=18'}
+
concat-map@0.0.1:
resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==}
@@ -805,6 +939,10 @@ packages:
resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==}
engines: {node: '>= 8'}
+ data-uri-to-buffer@4.0.1:
+ resolution: {integrity: sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==}
+ engines: {node: '>= 12'}
+
data-uri-to-buffer@6.0.2:
resolution: {integrity: sha512-7hvf7/GW8e86rW0ptuwS3OcBGDjIi6SZva7hCyWC0yYry2cOPmLIjXAUHI6DK2HsnwJd9ifmt57i8eV2n4YNpw==}
engines: {node: '>= 14'}
@@ -849,6 +987,10 @@ packages:
resolution: {integrity: sha512-TllpMR/t0M5sqCXfj85i4XaAzxmS5tVA16dqvdkMwGmzI+dXLXnw3J+3Vdv7VKw+ThlTMboK6i9rnZ6Nntj5CQ==}
engines: {node: '>= 14'}
+ delayed-stream@1.0.0:
+ resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==}
+ engines: {node: '>=0.4.0'}
+
delegates@1.0.0:
resolution: {integrity: sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==}
@@ -940,6 +1082,14 @@ packages:
escape-html@1.0.3:
resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==}
+ escape-string-regexp@1.0.5:
+ resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==}
+ engines: {node: '>=0.8.0'}
+
+ escape-string-regexp@5.0.0:
+ resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==}
+ engines: {node: '>=12'}
+
escodegen@2.1.0:
resolution: {integrity: sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==}
engines: {node: '>=6.0'}
@@ -987,6 +1137,18 @@ packages:
fd-slicer@1.1.0:
resolution: {integrity: sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==}
+ fetch-blob@3.2.0:
+ resolution: {integrity: sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==}
+ engines: {node: ^12.20 || >= 14.13}
+
+ figures@3.2.0:
+ resolution: {integrity: sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==}
+ engines: {node: '>=8'}
+
+ figures@5.0.0:
+ resolution: {integrity: sha512-ej8ksPF4x6e5wvK9yevct0UCXh8TTFlWGVLlgjZuoBH1HwjIfKE/IdL5mq89sFA7zELi1VhKpmtDnrs7zWyeyg==}
+ engines: {node: '>=14'}
+
file-uri-to-path@1.0.0:
resolution: {integrity: sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==}
@@ -1007,6 +1169,14 @@ packages:
debug:
optional: true
+ form-data@4.0.1:
+ resolution: {integrity: sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==}
+ engines: {node: '>= 6'}
+
+ formdata-polyfill@4.0.10:
+ resolution: {integrity: sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==}
+ engines: {node: '>=12.20.0'}
+
fresh@0.5.2:
resolution: {integrity: sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==}
engines: {node: '>= 0.6'}
@@ -1088,6 +1258,10 @@ packages:
resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==}
engines: {node: '>=4'}
+ has-flag@4.0.0:
+ resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}
+ engines: {node: '>=8'}
+
has-symbols@1.1.0:
resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==}
engines: {node: '>= 0.4'}
@@ -1189,6 +1363,16 @@ packages:
ini@1.3.8:
resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==}
+ inquirer-autocomplete-standalone@0.8.1:
+ resolution: {integrity: sha512-mlzwCTiXDX1Cw4yJL5PCq32k23XYLTK8K6BDFoL1a76iJeFB5ul6IoMU9spgdDagl2SM7P6ZaCNjj8VNXRDPOQ==}
+ engines: {node: '>=16'}
+
+ inquirer@12.3.2:
+ resolution: {integrity: sha512-YjQCIcDd3yyDuQrbII0FBtm/ZqNoWtvaC71yeCnd5Vbg4EgzsAGaemzfpzmqfvIZEp2roSwuZZKdM0C65hA43g==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ '@types/node': '>=18'
+
ioredis@5.4.2:
resolution: {integrity: sha512-0SZXGNGZ+WzISQ67QDyZ2x0+wVxjjUndtD8oSeik/4ajifeiRufed8fCb8QW8VMyi4MXcS+UO1k/0NGhvq1PAg==}
engines: {node: '>=12.22.0'}
@@ -1235,6 +1419,10 @@ packages:
resolution: {integrity: sha512-2AT6j+gXe/1ueqbW6fLZJiIw3F8iXGJtt0yDrZaBhAZEG1raiTxKWU+IPqMCzQAXOUCKdA4UDMgacKH25XG2Cw==}
engines: {node: '>=4'}
+ is-unicode-supported@1.3.0:
+ resolution: {integrity: sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==}
+ engines: {node: '>=12'}
+
is-windows@1.0.2:
resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==}
engines: {node: '>=0.10.0'}
@@ -1291,6 +1479,9 @@ packages:
resolution: {integrity: sha512-j/8tY9j5t+GVMLeioLaxweJiKUayFhlGqNTzf2ZGwL0ZCQijd2RLHK0SLW5Tsko8YyyqCZC2cojIb0/s62qTAg==}
engines: {node: ^4.8.4 || ^6.10.1 || ^7.10.1 || >= 8.1.4}
+ light-bolt11-decoder@3.2.0:
+ resolution: {integrity: sha512-3QEofgiBOP4Ehs9BI+RkZdXZNtSys0nsJ6fyGeSiAGCBsMwHGUDS/JQlY/sTnWs91A2Nh0S9XXfA8Sy9g6QpuQ==}
+
lines-and-columns@1.2.4:
resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==}
@@ -1415,6 +1606,14 @@ packages:
ms@2.1.3:
resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
+ mute-stream@1.0.0:
+ resolution: {integrity: sha512-avsJQhyd+680gKXyG/sQc0nXaC6rBkPOfyHYcFb9+hdkqQkR9bdnkJ0AMZhke0oesPqIO+mFFJ+IdBc7mst4IA==}
+ engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
+
+ mute-stream@2.0.0:
+ resolution: {integrity: sha512-WWdIxpyjEn+FhQJQQv9aQAYlHoNVdzIzUySNV1gHUPDSdZJ3yZn7pAAbQcV7B56Mvu881q9FZV+0Vx2xC44VWA==}
+ engines: {node: ^18.17.0 || >=20.5.0}
+
napi-build-utils@2.0.0:
resolution: {integrity: sha512-GEbrYkbfF7MoNaoh2iGG84Mnf/WZfB0GdGEsM8wz7Expx/LlWf5U8t9nvJKXSp3qr5IsEbK04cBGhol/KwOsWA==}
@@ -1437,6 +1636,14 @@ packages:
node-addon-api@7.1.1:
resolution: {integrity: sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==}
+ node-domexception@1.0.0:
+ resolution: {integrity: sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==}
+ engines: {node: '>=10.5.0'}
+
+ node-fetch@3.3.2:
+ resolution: {integrity: sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
node-gyp@8.4.1:
resolution: {integrity: sha512-olTJRgUtAb/hOXG0E93wZDs5YiJlgbXxTwQAFHyNlRsXQnYzUaF2aGgujZbw+hR8aF4ZG/rST57bWMWD16jr9w==}
engines: {node: '>= 10.12.0'}
@@ -1472,6 +1679,11 @@ packages:
engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0}
deprecated: This package is no longer supported.
+ nsite-cli@0.1.14:
+ resolution: {integrity: sha512-ZPIIrft//YJJpKINrVDOiTxA1ut1vK5YocrY/Dwf2dSM0xzER2ipF6QL5hfVHbT84wC5R3Ea9O1IoH17nuFHoQ==}
+ engines: {node: '>=20.0.0', npm: '>=8.0.0 '}
+ hasBin: true
+
on-finished@2.3.0:
resolution: {integrity: sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==}
engines: {node: '>= 0.8'}
@@ -1696,9 +1908,16 @@ packages:
deprecated: Rimraf versions prior to v4 are no longer supported
hasBin: true
+ run-async@3.0.0:
+ resolution: {integrity: sha512-540WwVDOMxA6dN6We19EcT9sc3hkXPw5mzRNGM3FkdN/vtE9NFvj5lFAPNwUDmJjXidm3v7TC1cTE7t17Ulm1Q==}
+ engines: {node: '>=0.12.0'}
+
run-parallel@1.2.0:
resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==}
+ rxjs@7.8.1:
+ resolution: {integrity: sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==}
+
safe-buffer@5.1.2:
resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==}
@@ -1827,6 +2046,10 @@ packages:
resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==}
engines: {node: '>=4'}
+ supports-color@7.2.0:
+ resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==}
+ engines: {node: '>=8'}
+
tar-fs@2.1.2:
resolution: {integrity: sha512-EsaAXwxmx8UB7FRKqeozqEPop69DXcmYwTQwXvyAPF352HJsPdkVhvTaDPYqfNgruveJIJy3TA2l+2zj8LJIJA==}
@@ -1870,6 +2093,9 @@ packages:
resolution: {integrity: sha512-r0eojU4bI8MnHr8c5bNo7lJDdI2qXlWWJk6a9EAFG7vbhTjElYhBVS3/miuE0uOuoLdb8Mc/rVfsmm6eo5o9GA==}
hasBin: true
+ tseep@1.3.1:
+ resolution: {integrity: sha512-ZPtfk1tQnZVyr7BPtbJ93qaAh2lZuIOpTMjhrYa4XctT8xe7t4SAW9LIxrySDuYMsfNNayE51E/WNGrNVgVicQ==}
+
tslib@2.8.1:
resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==}
@@ -1883,6 +2109,10 @@ packages:
tunnel-agent@0.6.0:
resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==}
+ type-fest@0.21.3:
+ resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==}
+ engines: {node: '>=10'}
+
type-is@1.6.18:
resolution: {integrity: sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==}
engines: {node: '>= 0.6'}
@@ -1890,6 +2120,9 @@ packages:
typed-query-selector@2.12.0:
resolution: {integrity: sha512-SbklCd1F0EiZOyPiW192rrHZzZ5sBijB6xM+cpmrwDqObvdtunOHHIk9fCGsoK5JVIYXoyEp4iEdE3upFH3PAg==}
+ typescript-lru-cache@2.0.0:
+ resolution: {integrity: sha512-Jp57Qyy8wXeMkdNuZiglE6v2Cypg13eDA1chHwDG6kq51X7gk4K7P7HaDdzZKCxkegXkVHNcPD0n5aW6OZH3aA==}
+
typescript@5.7.3:
resolution: {integrity: sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==}
engines: {node: '>=14.17'}
@@ -1914,6 +2147,10 @@ packages:
resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==}
engines: {node: '>= 4.0.0'}
+ utf8-buffer@1.0.0:
+ resolution: {integrity: sha512-ueuhzvWnp5JU5CiGSY4WdKbiN/PO2AZ/lpeLiz2l38qwdLy/cW40XobgyuIWucNyum0B33bVB0owjFCeGBSLqg==}
+ engines: {node: '>=8'}
+
util-deprecate@1.0.2:
resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
@@ -1921,6 +2158,10 @@ packages:
resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==}
engines: {node: '>= 0.8'}
+ web-streams-polyfill@3.3.3:
+ resolution: {integrity: sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==}
+ engines: {node: '>= 8'}
+
websocket-polyfill@1.0.0:
resolution: {integrity: sha512-QwfEy8jcOOCVO9su9UP+msEmhZa4a9WSJfePIdCT8GxwVl2Z9toM7nCqFfDDxA/sRmxgf1KNiwL6PXvjJ9qRxw==}
@@ -1932,6 +2173,10 @@ packages:
wide-align@1.1.5:
resolution: {integrity: sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==}
+ wrap-ansi@6.2.0:
+ resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==}
+ engines: {node: '>=8'}
+
wrap-ansi@7.0.0:
resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==}
engines: {node: '>=10'}
@@ -1977,6 +2222,10 @@ packages:
resolution: {integrity: sha512-2OQsPNEmBCvXuFlIni/a+Rn+R2pHW9INm0BxXJ4hVDA8TirqMj+J/Rp9ItLatT/5pZqWwefVrTQcHpixsxnVlA==}
engines: {node: '>= 4.0.0'}
+ yoctocolors-cjs@2.1.2:
+ resolution: {integrity: sha512-cYVsTjKl8b+FrnidjibDWskAv7UKOfcwaVZdp/it9n1s9fU3IkgDbhdIRKCW4JDsAlECJY0ytoVPT3sK6kideA==}
+ engines: {node: '>=18'}
+
zod@3.23.8:
resolution: {integrity: sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==}
@@ -2171,6 +2420,132 @@ snapshots:
'@gar/promisify@1.1.3':
optional: true
+ '@inquirer/checkbox@4.0.6(@types/node@20.17.14)':
+ dependencies:
+ '@inquirer/core': 10.1.4(@types/node@20.17.14)
+ '@inquirer/figures': 1.0.9
+ '@inquirer/type': 3.0.2(@types/node@20.17.14)
+ '@types/node': 20.17.14
+ ansi-escapes: 4.3.2
+ yoctocolors-cjs: 2.1.2
+
+ '@inquirer/confirm@5.1.3(@types/node@20.17.14)':
+ dependencies:
+ '@inquirer/core': 10.1.4(@types/node@20.17.14)
+ '@inquirer/type': 3.0.2(@types/node@20.17.14)
+ '@types/node': 20.17.14
+
+ '@inquirer/core@10.1.4(@types/node@20.17.14)':
+ dependencies:
+ '@inquirer/figures': 1.0.9
+ '@inquirer/type': 3.0.2(@types/node@20.17.14)
+ ansi-escapes: 4.3.2
+ cli-width: 4.1.0
+ mute-stream: 2.0.0
+ signal-exit: 4.1.0
+ strip-ansi: 6.0.1
+ wrap-ansi: 6.2.0
+ yoctocolors-cjs: 2.1.2
+ transitivePeerDependencies:
+ - '@types/node'
+
+ '@inquirer/core@3.1.2':
+ dependencies:
+ '@inquirer/type': 1.5.5
+ '@types/mute-stream': 0.0.1
+ '@types/node': 20.17.14
+ '@types/wrap-ansi': 3.0.0
+ ansi-escapes: 4.3.2
+ chalk: 4.1.2
+ cli-spinners: 2.9.2
+ cli-width: 4.1.0
+ figures: 3.2.0
+ mute-stream: 1.0.0
+ run-async: 3.0.0
+ strip-ansi: 6.0.1
+ wrap-ansi: 6.2.0
+
+ '@inquirer/editor@4.2.3(@types/node@20.17.14)':
+ dependencies:
+ '@inquirer/core': 10.1.4(@types/node@20.17.14)
+ '@inquirer/type': 3.0.2(@types/node@20.17.14)
+ '@types/node': 20.17.14
+ external-editor: 3.1.0
+
+ '@inquirer/expand@4.0.6(@types/node@20.17.14)':
+ dependencies:
+ '@inquirer/core': 10.1.4(@types/node@20.17.14)
+ '@inquirer/type': 3.0.2(@types/node@20.17.14)
+ '@types/node': 20.17.14
+ yoctocolors-cjs: 2.1.2
+
+ '@inquirer/figures@1.0.9': {}
+
+ '@inquirer/input@4.1.3(@types/node@20.17.14)':
+ dependencies:
+ '@inquirer/core': 10.1.4(@types/node@20.17.14)
+ '@inquirer/type': 3.0.2(@types/node@20.17.14)
+ '@types/node': 20.17.14
+
+ '@inquirer/number@3.0.6(@types/node@20.17.14)':
+ dependencies:
+ '@inquirer/core': 10.1.4(@types/node@20.17.14)
+ '@inquirer/type': 3.0.2(@types/node@20.17.14)
+ '@types/node': 20.17.14
+
+ '@inquirer/password@4.0.6(@types/node@20.17.14)':
+ dependencies:
+ '@inquirer/core': 10.1.4(@types/node@20.17.14)
+ '@inquirer/type': 3.0.2(@types/node@20.17.14)
+ '@types/node': 20.17.14
+ ansi-escapes: 4.3.2
+
+ '@inquirer/prompts@7.2.3(@types/node@20.17.14)':
+ dependencies:
+ '@inquirer/checkbox': 4.0.6(@types/node@20.17.14)
+ '@inquirer/confirm': 5.1.3(@types/node@20.17.14)
+ '@inquirer/editor': 4.2.3(@types/node@20.17.14)
+ '@inquirer/expand': 4.0.6(@types/node@20.17.14)
+ '@inquirer/input': 4.1.3(@types/node@20.17.14)
+ '@inquirer/number': 3.0.6(@types/node@20.17.14)
+ '@inquirer/password': 4.0.6(@types/node@20.17.14)
+ '@inquirer/rawlist': 4.0.6(@types/node@20.17.14)
+ '@inquirer/search': 3.0.6(@types/node@20.17.14)
+ '@inquirer/select': 4.0.6(@types/node@20.17.14)
+ '@types/node': 20.17.14
+
+ '@inquirer/rawlist@4.0.6(@types/node@20.17.14)':
+ dependencies:
+ '@inquirer/core': 10.1.4(@types/node@20.17.14)
+ '@inquirer/type': 3.0.2(@types/node@20.17.14)
+ '@types/node': 20.17.14
+ yoctocolors-cjs: 2.1.2
+
+ '@inquirer/search@3.0.6(@types/node@20.17.14)':
+ dependencies:
+ '@inquirer/core': 10.1.4(@types/node@20.17.14)
+ '@inquirer/figures': 1.0.9
+ '@inquirer/type': 3.0.2(@types/node@20.17.14)
+ '@types/node': 20.17.14
+ yoctocolors-cjs: 2.1.2
+
+ '@inquirer/select@4.0.6(@types/node@20.17.14)':
+ dependencies:
+ '@inquirer/core': 10.1.4(@types/node@20.17.14)
+ '@inquirer/figures': 1.0.9
+ '@inquirer/type': 3.0.2(@types/node@20.17.14)
+ '@types/node': 20.17.14
+ ansi-escapes: 4.3.2
+ yoctocolors-cjs: 2.1.2
+
+ '@inquirer/type@1.5.5':
+ dependencies:
+ mute-stream: 1.0.0
+
+ '@inquirer/type@3.0.2(@types/node@20.17.14)':
+ dependencies:
+ '@types/node': 20.17.14
+
'@ioredis/commands@1.2.0': {}
'@keyv/redis@3.0.1':
@@ -2237,6 +2612,8 @@ snapshots:
'@noble/hashes@1.7.1': {}
+ '@noble/secp256k1@2.2.3': {}
+
'@nodelib/fs.scandir@2.1.5':
dependencies:
'@nodelib/fs.stat': 2.0.5
@@ -2249,6 +2626,25 @@ snapshots:
'@nodelib/fs.scandir': 2.1.5
fastq: 1.18.0
+ '@nostr-dev-kit/ndk@2.11.0(typescript@5.7.3)':
+ dependencies:
+ '@noble/curves': 1.8.1
+ '@noble/hashes': 1.7.1
+ '@noble/secp256k1': 2.2.3
+ '@scure/base': 1.2.4
+ debug: 4.4.0(supports-color@5.5.0)
+ light-bolt11-decoder: 3.2.0
+ nostr-tools: 2.10.4(typescript@5.7.3)
+ tseep: 1.3.1
+ typescript-lru-cache: 2.0.0
+ utf8-buffer: 1.0.0
+ websocket-polyfill: 1.0.0
+ transitivePeerDependencies:
+ - bufferutil
+ - supports-color
+ - typescript
+ - utf-8-validate
+
'@npmcli/fs@1.1.1':
dependencies:
'@gar/promisify': 1.1.3
@@ -2522,6 +2918,10 @@ snapshots:
'@types/ms@2.1.0': {}
+ '@types/mute-stream@0.0.1':
+ dependencies:
+ '@types/node': 20.17.14
+
'@types/node@12.20.55': {}
'@types/node@20.17.14':
@@ -2547,6 +2947,8 @@ snapshots:
'@types/node': 20.17.14
'@types/send': 0.17.4
+ '@types/wrap-ansi@3.0.0': {}
+
'@types/ws@8.5.13':
dependencies:
'@types/node': 20.17.14
@@ -2586,6 +2988,10 @@ snapshots:
ansi-colors@4.1.3: {}
+ ansi-escapes@4.3.2:
+ dependencies:
+ type-fest: 0.21.3
+
ansi-regex@5.0.1: {}
ansi-styles@4.3.0:
@@ -2618,6 +3024,16 @@ snapshots:
dependencies:
tslib: 2.8.1
+ asynckit@0.4.0: {}
+
+ axios@1.7.9(debug@4.4.0):
+ dependencies:
+ follow-redirects: 1.15.9(debug@4.4.0)
+ form-data: 4.0.1
+ proxy-from-env: 1.1.0
+ transitivePeerDependencies:
+ - debug
+
b4a@1.6.7: {}
balanced-match@1.0.2: {}
@@ -2742,6 +3158,11 @@ snapshots:
callsites@3.1.0: {}
+ chalk@4.1.2:
+ dependencies:
+ ansi-styles: 4.3.0
+ supports-color: 7.2.0
+
chardet@0.7.0: {}
chokidar@3.6.0:
@@ -2771,6 +3192,10 @@ snapshots:
clean-stack@2.2.0:
optional: true
+ cli-spinners@2.9.2: {}
+
+ cli-width@4.1.0: {}
+
cliui@8.0.1:
dependencies:
string-width: 4.2.3
@@ -2792,6 +3217,12 @@ snapshots:
colorette@2.0.20: {}
+ combined-stream@1.0.8:
+ dependencies:
+ delayed-stream: 1.0.0
+
+ commander@12.1.0: {}
+
concat-map@0.0.1: {}
console-control-strings@1.1.0:
@@ -2823,6 +3254,8 @@ snapshots:
shebang-command: 2.0.0
which: 2.0.2
+ data-uri-to-buffer@4.0.1: {}
+
data-uri-to-buffer@6.0.2: {}
debug@2.6.9:
@@ -2853,6 +3286,8 @@ snapshots:
escodegen: 2.1.0
esprima: 4.0.1
+ delayed-stream@1.0.0: {}
+
delegates@1.0.0: {}
denque@2.1.0: {}
@@ -2922,6 +3357,10 @@ snapshots:
escape-html@1.0.3: {}
+ escape-string-regexp@1.0.5: {}
+
+ escape-string-regexp@5.0.0: {}
+
escodegen@2.1.0:
dependencies:
esprima: 4.0.1
@@ -2974,6 +3413,20 @@ snapshots:
dependencies:
pend: 1.2.0
+ fetch-blob@3.2.0:
+ dependencies:
+ node-domexception: 1.0.0
+ web-streams-polyfill: 3.3.3
+
+ figures@3.2.0:
+ dependencies:
+ escape-string-regexp: 1.0.5
+
+ figures@5.0.0:
+ dependencies:
+ escape-string-regexp: 5.0.0
+ is-unicode-supported: 1.3.0
+
file-uri-to-path@1.0.0: {}
fill-range@7.1.1:
@@ -2989,6 +3442,16 @@ snapshots:
optionalDependencies:
debug: 4.4.0(supports-color@5.5.0)
+ form-data@4.0.1:
+ dependencies:
+ asynckit: 0.4.0
+ combined-stream: 1.0.8
+ mime-types: 2.1.35
+
+ formdata-polyfill@4.0.10:
+ dependencies:
+ fetch-blob: 3.2.0
+
fresh@0.5.2: {}
fs-constants@1.0.0: {}
@@ -3092,6 +3555,8 @@ snapshots:
has-flag@3.0.0: {}
+ has-flag@4.0.0: {}
+
has-symbols@1.1.0: {}
has-tostringtag@1.0.2:
@@ -3209,6 +3674,24 @@ snapshots:
ini@1.3.8: {}
+ inquirer-autocomplete-standalone@0.8.1:
+ dependencies:
+ '@inquirer/core': 3.1.2
+ '@inquirer/type': 1.5.5
+ figures: 5.0.0
+ picocolors: 1.1.1
+
+ inquirer@12.3.2(@types/node@20.17.14):
+ dependencies:
+ '@inquirer/core': 10.1.4(@types/node@20.17.14)
+ '@inquirer/prompts': 7.2.3(@types/node@20.17.14)
+ '@inquirer/type': 3.0.2(@types/node@20.17.14)
+ '@types/node': 20.17.14
+ ansi-escapes: 4.3.2
+ mute-stream: 2.0.0
+ run-async: 3.0.0
+ rxjs: 7.8.1
+
ioredis@5.4.2:
dependencies:
'@ioredis/commands': 1.2.0
@@ -3265,6 +3748,8 @@ snapshots:
dependencies:
better-path-resolve: 1.0.0
+ is-unicode-supported@1.3.0: {}
+
is-windows@1.0.2: {}
isexe@2.0.0: {}
@@ -3352,6 +3837,10 @@ snapshots:
transitivePeerDependencies:
- supports-color
+ light-bolt11-decoder@3.2.0:
+ dependencies:
+ '@scure/base': 1.1.1
+
lines-and-columns@1.2.4: {}
locate-path@5.0.0:
@@ -3483,6 +3972,10 @@ snapshots:
ms@2.1.3: {}
+ mute-stream@1.0.0: {}
+
+ mute-stream@2.0.0: {}
+
napi-build-utils@2.0.0: {}
negotiator@0.6.3: {}
@@ -3498,6 +3991,14 @@ snapshots:
node-addon-api@7.1.1: {}
+ node-domexception@1.0.0: {}
+
+ node-fetch@3.3.2:
+ dependencies:
+ data-uri-to-buffer: 4.0.1
+ fetch-blob: 3.2.0
+ formdata-polyfill: 4.0.10
+
node-gyp@8.4.1:
dependencies:
env-paths: 2.2.1
@@ -3558,6 +4059,30 @@ snapshots:
set-blocking: 2.0.0
optional: true
+ nsite-cli@0.1.14(@types/node@20.17.14)(typescript@5.7.3):
+ dependencies:
+ '@noble/hashes': 1.7.1
+ '@nostr-dev-kit/ndk': 2.11.0(typescript@5.7.3)
+ axios: 1.7.9(debug@4.4.0)
+ blossom-client-sdk: 2.1.1
+ commander: 12.1.0
+ debug: 4.4.0(supports-color@5.5.0)
+ dotenv: 16.4.7
+ inquirer: 12.3.2(@types/node@20.17.14)
+ inquirer-autocomplete-standalone: 0.8.1
+ mime-types: 2.1.35
+ node-fetch: 3.3.2
+ nostr-tools: 2.10.4(typescript@5.7.3)
+ proxy-agent: 6.5.0
+ websocket-polyfill: 1.0.0
+ ws: 8.18.0
+ transitivePeerDependencies:
+ - '@types/node'
+ - bufferutil
+ - supports-color
+ - typescript
+ - utf-8-validate
+
on-finished@2.3.0:
dependencies:
ee-first: 1.1.1
@@ -3802,10 +4327,16 @@ snapshots:
glob: 7.2.3
optional: true
+ run-async@3.0.0: {}
+
run-parallel@1.2.0:
dependencies:
queue-microtask: 1.2.3
+ rxjs@7.8.1:
+ dependencies:
+ tslib: 2.8.1
+
safe-buffer@5.1.2: {}
safe-buffer@5.2.1: {}
@@ -3943,6 +4474,10 @@ snapshots:
dependencies:
has-flag: 3.0.0
+ supports-color@7.2.0:
+ dependencies:
+ has-flag: 4.0.0
+
tar-fs@2.1.2:
dependencies:
chownr: 1.1.4
@@ -4003,6 +4538,8 @@ snapshots:
touch@3.1.1: {}
+ tseep@1.3.1: {}
+
tslib@2.8.1: {}
tsscmp@1.0.6: {}
@@ -4013,6 +4550,8 @@ snapshots:
dependencies:
safe-buffer: 5.2.1
+ type-fest@0.21.3: {}
+
type-is@1.6.18:
dependencies:
media-typer: 0.3.0
@@ -4020,6 +4559,8 @@ snapshots:
typed-query-selector@2.12.0: {}
+ typescript-lru-cache@2.0.0: {}
+
typescript@5.7.3: {}
unbzip2-stream@1.4.3:
@@ -4043,10 +4584,14 @@ snapshots:
universalify@0.1.2: {}
+ utf8-buffer@1.0.0: {}
+
util-deprecate@1.0.2: {}
vary@1.1.2: {}
+ web-streams-polyfill@3.3.3: {}
+
websocket-polyfill@1.0.0:
dependencies:
import2: 1.0.3
@@ -4065,6 +4610,12 @@ snapshots:
string-width: 4.2.3
optional: true
+ wrap-ansi@6.2.0:
+ dependencies:
+ ansi-styles: 4.3.0
+ string-width: 4.2.3
+ strip-ansi: 6.0.1
+
wrap-ansi@7.0.0:
dependencies:
ansi-styles: 4.3.0
@@ -4100,4 +4651,6 @@ snapshots:
ylru@1.4.0: {}
+ yoctocolors-cjs@2.1.2: {}
+
zod@3.23.8: {}
diff --git a/public/components/nsite-card.js b/public/components/nsite-card.js
deleted file mode 100644
index d7e002c..0000000
--- a/public/components/nsite-card.js
+++ /dev/null
@@ -1,110 +0,0 @@
-import { html, css, LitElement } from "lit";
-import { nip19 } from "nostr-tools";
-import { pool, relays } from "../pool.js";
-
-export class NsiteCard extends LitElement {
- static styles = css`
- :host {
- min-width: 3in;
- max-width: 4in;
- border: 1px solid lightslategray;
- display: flex;
- flex-direction: column;
- padding: 0.5em;
- gap: 0.3em;
- border-radius: 0.5em;
- }
-
- .title {
- display: flex;
- gap: 0.5em;
- align-items: center;
- color: initial;
- text-decoration: none;
- }
- .title h3 {
- margin: 0;
- }
- .avatar {
- width: 3rem;
- height: 3rem;
- border: none;
- outline: none;
- border-radius: 50%;
- }
-
- .thumb {
- display: flex;
- overflow: hidden;
- }
-
- .thumb > img {
- width: 100%;
- border-radius: 0.5em;
- }
-
- .about {
- display: -webkit-box;
- -webkit-line-clamp: 3;
- -webkit-box-orient: vertical;
- overflow: hidden;
- }
-
- time {
- margin-top: auto;
- }
- `;
-
- static properties = {
- nsite: { type: Object },
- profile: { state: true, type: Object },
- hasThumb: { state: true, type: Boolean },
- };
-
- constructor() {
- super();
- this.hasThumb = true;
- }
-
- connectedCallback() {
- super.connectedCallback();
-
- pool.get(relays, { kinds: [0], authors: [this.nsite.pubkey] }).then((event) => {
- if (event) this.profile = JSON.parse(event.content);
- });
- }
-
- handleError() {
- this.hasThumb = false;
- }
-
- render() {
- const npub = nip19.npubEncode(this.nsite.pubkey);
- const url = new URL("/", `${location.protocol}//${npub}.${location.host}`);
-
- return html`
- ${this.hasThumb
- ? html`
-
-
-
- `
- : undefined}
-
- ${this.profile && html`
`}
-
${this.profile.display_name || this.profile.name}
- ${this.profile.nip05}
- `
- : html`${npub.slice(0, 8)}
`}
-
${this.profile.about}
`} - - `; - } -} - -customElements.define("nsite-card", NsiteCard); diff --git a/public/favicon.ico b/public/favicon.ico deleted file mode 100644 index ce391bc..0000000 Binary files a/public/favicon.ico and /dev/null differ diff --git a/public/index.html b/public/index.html index cea69c8..89e0726 100644 --- a/public/index.html +++ b/public/index.html @@ -3,27 +3,65 @@ -If you're seeing this page, nsite-ts has been successfully installed and is working.
+ +
+ To set a custom homepage, set the NSITE_HOMEPAGE
environment variable to your desired nprofile
+
+ Example:
+
+ NSITE_HOMEPAGE=nprofile1qqspspfsrjnurtf0jdyswm8jstustv7pu4qw3pn4u99etptvgzm4uvcpz9mhxue69uhkummnw3e82efwvdhk6qg5waehxw309aex2mrp0yhxgctdw4eju6t04mzfem
+
+ For more information about configuring nsite-ts, please refer to the + documentation +
+