aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2023-02-28 00:43:53 -0800
committerAdam Soltys <[email protected]>2023-02-28 00:43:53 -0800
commit759c053c3ae1eb8f3d885b12cd1a5e7ba11cfa78 (patch)
tree8f59fc8c5a4879734785d9164e2ea63feb4ab90a
parentce3a8006405be03fa96240fc0adaa7c1fa1c1009 (diff)
downloadcoinos-ui-759c053c3ae1eb8f3d885b12cd1a5e7ba11cfa78.tar.gz
coinos-ui-759c053c3ae1eb8f3d885b12cd1a5e7ba11cfa78.zip
docs
-rw-r--r--package.json1
-rw-r--r--pnpm-lock.yaml268
-rw-r--r--src/components/Code.svelte22
-rw-r--r--src/lib/samples.js9
-rw-r--r--src/routes/(static)/docs/+page.svelte29
5 files changed, 95 insertions, 234 deletions
diff --git a/package.json b/package.json
index ac67d8b3..2af9cbd3 100644
--- a/package.json
+++ b/package.json
@@ -23,6 +23,7 @@
"leaflet": "^1.9.3",
"leaflet.markercluster": "^1.5.3",
"nostr": "^0.2.7",
+ "nostr-tools": "^1.7.1",
"postcss": "^8.4.20",
"prettier": "^2.8.1",
"prettier-plugin-svelte": "^2.9.0",
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index a0c68508..1e3d9beb 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -16,6 +16,7 @@ specifiers:
leaflet: ^1.9.3
leaflet.markercluster: ^1.5.3
nostr: ^0.2.7
+ nostr-tools: ^1.7.1
postcss: ^8.4.20
prettier: ^2.8.1
prettier-plugin-svelte: ^2.9.0
@@ -56,6 +57,7 @@ devDependencies:
leaflet: 1.9.3
leaflet.markercluster: [email protected]
nostr: 0.2.7
+ nostr-tools: 1.7.1
postcss: 8.4.20
prettier: 2.8.1
prettier-plugin-svelte: 2.9.0_ajxj753sv7dbwexjherrch25ta
@@ -278,6 +280,18 @@ packages:
resolution: {integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==}
dev: false
+ /@noble/hashes/1.0.0:
+ resolution: {integrity: sha512-DZVbtY62kc3kkBtMHqwCOfXrT/hnoORy5BJ4+HU1IR59X0KWAOqsfzQPcUl/lQLlG7qXbe/fZ3r/emxtAl+sqg==}
+ dev: true
+
+ /@noble/hashes/1.2.0:
+ resolution: {integrity: sha512-FZfhjEDbT5GRswV3C6uvLPHMiVD6lQBmpoX5+eSiPaMTXte/IKqI5dykDxzZB/WBeK/CDuQRBWarPdi3FNY2zQ==}
+ dev: true
+
+ /@noble/secp256k1/1.7.1:
+ resolution: {integrity: sha512-hOUk6AyBFmqVrv7k5WAw/LpszxVbj9gGN4JRkIX52fdFAj1UA61KXmZDvqVEm+pOyec3+fIeZB02LYa/pWOArw==}
+ dev: true
+
/@nodelib/fs.scandir/2.1.5:
resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
engines: {node: '>= 8'}
@@ -390,6 +404,25 @@ packages:
rollup: 3.8.1
dev: false
+ /@scure/base/1.1.1:
+ resolution: {integrity: sha512-ZxOhsSyxYwLJj3pLZCefNitxsj093tb2vq90mp2txoYeBqbcjDjqFhyM8eUjq/uFm6zJ+mUuqxlS2FkuSY1MTA==}
+ dev: true
+
+ /@scure/bip32/1.1.5:
+ resolution: {integrity: sha512-XyNh1rB0SkEqd3tXcXMi+Xe1fvg+kUIcoRIEujP1Jgv7DqW2r9lg3Ah0NkFaCs9sTkQAQA8kw7xiRXzENi9Rtw==}
+ dependencies:
+ '@noble/hashes': 1.2.0
+ '@noble/secp256k1': 1.7.1
+ '@scure/base': 1.1.1
+ dev: true
+
+ /@scure/bip39/1.1.1:
+ resolution: {integrity: sha512-t+wDck2rVkh65Hmv280fYdVdY25J9YeEUIgn2LG1WM6gxFkGzcksoDiUkWVpVp3Oex9xGC68JU2dSbUfwZ2jPg==}
+ dependencies:
+ '@noble/hashes': 1.2.0
+ '@scure/base': 1.1.1
+ dev: true
+
/@sveltejs/adapter-node/1.1.4_@[email protected]:
resolution: {integrity: sha512-3iEBqi1fXLXP9YIbVuz2LXajoebRJCmAFEQbN40DlxAnA7G+InxUgnqFun3q9gBMz2Qvd99K51g/HxWetXRe8Q==}
peerDependencies:
@@ -584,10 +617,6 @@ packages:
/@types/estree/0.0.39:
resolution: {integrity: sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==}
- /@types/estree/0.0.39:
- resolution: {integrity: sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==}
- dev: true
-
/@types/estree/1.0.0:
resolution: {integrity: sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ==}
dev: false
@@ -939,10 +968,6 @@ packages:
resolution: {integrity: sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==}
dev: true
- /builtin-status-codes/3.0.0:
- resolution: {integrity: sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==}
- dev: true
-
/busboy/1.6.0:
resolution: {integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==}
engines: {node: '>=10.16.0'}
@@ -1008,14 +1033,6 @@ packages:
resolution: {integrity: sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==}
dev: true
- /console-browserify/1.2.0:
- resolution: {integrity: sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==}
- dev: true
-
- /constants-browserify/1.0.0:
- resolution: {integrity: sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==}
- dev: true
-
/cookie/0.5.0:
resolution: {integrity: sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==}
engines: {node: '>= 0.6'}
@@ -1028,13 +1045,6 @@ packages:
elliptic: 6.5.4
dev: true
- /create-ecdh/4.0.4:
- resolution: {integrity: sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==}
- dependencies:
- bn.js: 4.12.0
- elliptic: 6.5.4
- dev: true
-
/create-hash/1.2.0:
resolution: {integrity: sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==}
dependencies:
@@ -1112,14 +1122,6 @@ packages:
object-keys: 1.1.1
dev: true
- /define-properties/1.1.4:
- resolution: {integrity: sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==}
- engines: {node: '>= 0.4'}
- dependencies:
- has-property-descriptors: 1.0.0
- object-keys: 1.1.1
- dev: true
-
/defined/1.0.1:
resolution: {integrity: sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==}
dev: true
@@ -1462,18 +1464,6 @@ packages:
safe-buffer: 5.2.1
dev: true
- /events/3.3.0:
- resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==}
- engines: {node: '>=0.8.x'}
- dev: true
-
- /evp_bytestokey/1.0.3:
- resolution: {integrity: sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==}
- dependencies:
- md5.js: 1.3.5
- safe-buffer: 5.2.1
- dev: true
-
/fast-glob/3.2.12:
resolution: {integrity: sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==}
engines: {node: '>=8.6.0'}
@@ -1587,12 +1577,6 @@ packages:
get-intrinsic: 1.1.3
dev: true
- /gopd/1.0.1:
- resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==}
- dependencies:
- get-intrinsic: 1.1.3
- dev: true
-
/graceful-fs/4.2.10:
resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==}
dev: true
@@ -1670,14 +1654,6 @@ packages:
has-tostringtag: 1.0.0
dev: true
- /is-arguments/1.1.1:
- resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==}
- engines: {node: '>= 0.4'}
- dependencies:
- call-bind: 1.0.2
- has-tostringtag: 1.0.0
- dev: true
-
/is-binary-path/2.1.0:
resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==}
engines: {node: '>=8'}
@@ -1697,11 +1673,6 @@ packages:
engines: {node: '>= 0.4'}
dev: true
- /is-callable/1.2.7:
- resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==}
- engines: {node: '>= 0.4'}
- dev: true
-
/is-core-module/2.11.0:
resolution: {integrity: sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==}
dependencies:
@@ -1738,14 +1709,6 @@ packages:
define-properties: 1.1.4
dev: true
- /is-nan/1.3.2:
- resolution: {integrity: sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==}
- engines: {node: '>= 0.4'}
- dependencies:
- call-bind: 1.0.2
- define-properties: 1.1.4
- dev: true
-
/is-number/7.0.0:
resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
engines: {node: '>=0.12.0'}
@@ -1773,22 +1736,6 @@ packages:
engines: {node: '>=10'}
dev: true
- /is-typed-array/1.1.10:
- resolution: {integrity: sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==}
- engines: {node: '>= 0.4'}
- dependencies:
- available-typed-arrays: 1.0.5
- call-bind: 1.0.2
- for-each: 0.3.3
- gopd: 1.0.1
- has-tostringtag: 1.0.0
- dev: true
-
- /isomorphic-timers-promises/1.0.1:
- resolution: {integrity: sha512-u4sej9B1LPSxTGKB/HiuzvEQnXH0ECYkSVQU39koSwmFAxhlEAFl9RdTvLv4TOTQUgBS5O3O5fwUxk6byBZ+IQ==}
- engines: {node: '>=10'}
- dev: true
-
/kleur/4.1.5:
resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==}
engines: {node: '>=6'}
@@ -1977,39 +1924,6 @@ packages:
vm-browserify: 1.1.2
dev: true
- /node-stdlib-browser/1.2.0:
- resolution: {integrity: sha512-VSjFxUhRhkyed8AtLwSCkMrJRfQ3e2lGtG3sP6FEgaLKBBbxM/dLfjRe1+iLhjvyLFW3tBQ8+c0pcOtXGbAZJg==}
- engines: {node: '>=10'}
- dependencies:
- assert: 2.0.0
- browser-resolve: 2.0.0
- browserify-zlib: 0.2.0
- buffer: 5.7.1
- console-browserify: 1.2.0
- constants-browserify: 1.0.0
- create-require: 1.1.1
- crypto-browserify: 3.12.0
- domain-browser: 4.22.0
- events: 3.3.0
- https-browserify: 1.0.0
- isomorphic-timers-promises: 1.0.1
- os-browserify: 0.3.0
- path-browserify: 1.0.1
- pkg-dir: 5.0.0
- process: 0.11.10
- punycode: 1.4.1
- querystring-es3: 0.2.1
- readable-stream: 3.6.0
- stream-browserify: 3.0.0
- stream-http: 3.2.0
- string_decoder: 1.3.0
- timers-browserify: 2.0.12
- tty-browserify: 0.0.1
- url: 0.11.0
- util: 0.12.5
- vm-browserify: 1.1.2
- dev: true
-
/normalize-path/3.0.0:
resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==}
engines: {node: '>=0.10.0'}
@@ -2020,6 +1934,17 @@ packages:
engines: {node: '>=0.10.0'}
dev: true
+ /nostr-tools/1.7.1:
+ resolution: {integrity: sha512-r72KpbLVz6Gaqei6LIj6m+cyp24eF3myiIMlmv93WCgDFCI5w72u+OrZzjSrJaeE94vYoEJfOF16/2Rl5o5z5w==}
+ dependencies:
+ '@noble/hashes': 1.0.0
+ '@noble/secp256k1': 1.7.1
+ '@scure/base': 1.1.1
+ '@scure/bip32': 1.1.5
+ '@scure/bip39': 1.1.1
+ prettier: 2.8.4
+ dev: true
+
/nostr/0.2.7:
resolution: {integrity: sha512-Yq5tkiCTJtohs7H7Fx+Ki83bR8b3xapdwYi17HunhW5EQfZ9rI0cIXFyihj2ZRkv/0YYvVBiCp/KIaLYt5LyfQ==}
dependencies:
@@ -2098,47 +2023,6 @@ packages:
engines: {node: '>=8'}
dev: true
- /os-browserify/0.3.0:
- resolution: {integrity: sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==}
- dev: true
-
- /p-limit/3.1.0:
- resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==}
- engines: {node: '>=10'}
- dependencies:
- yocto-queue: 0.1.0
- dev: true
-
- /p-locate/5.0.0:
- resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==}
- engines: {node: '>=10'}
- dependencies:
- p-limit: 3.1.0
- dev: true
-
- /pako/1.0.11:
- resolution: {integrity: sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==}
- dev: true
-
- /parse-asn1/5.1.6:
- resolution: {integrity: sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==}
- dependencies:
- asn1.js: 5.4.1
- browserify-aes: 1.2.0
- evp_bytestokey: 1.0.3
- pbkdf2: 3.1.2
- safe-buffer: 5.2.1
- dev: true
-
- /path-browserify/1.0.1:
- resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==}
- dev: true
-
- /path-exists/4.0.0:
- resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==}
- engines: {node: '>=8'}
- dev: true
-
/path-is-absolute/1.0.1:
resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==}
engines: {node: '>=0.10.0'}
@@ -2158,17 +2042,6 @@ packages:
sha.js: 2.4.11
dev: true
- /pbkdf2/3.1.2:
- resolution: {integrity: sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==}
- engines: {node: '>=0.12'}
- dependencies:
- create-hash: 1.2.0
- create-hmac: 1.1.7
- ripemd160: 2.0.2
- safe-buffer: 5.2.1
- sha.js: 2.4.11
- dev: true
-
/picocolors/1.0.0:
resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==}
@@ -2273,6 +2146,12 @@ packages:
hasBin: true
dev: true
+ /prettier/2.8.4:
+ resolution: {integrity: sha512-vIS4Rlc2FNh0BySk3Wkd6xmwxB0FpOndW5fisM5H8hsZSxU2VWVB5CWIkIjWvrHjIhxk2g3bfMKM87zNTrZddw==}
+ engines: {node: '>=10.13.0'}
+ hasBin: true
+ dev: true
+
/process/0.11.10:
resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==}
engines: {node: '>= 0.6.0'}
@@ -2474,10 +2353,6 @@ packages:
resolution: {integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==}
dev: true
- /setimmediate/1.0.5:
- resolution: {integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==}
- dev: true
-
/sha.js/2.4.11:
resolution: {integrity: sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==}
hasBin: true
@@ -2542,22 +2417,6 @@ packages:
xtend: 4.0.2
dev: true
- /stream-browserify/3.0.0:
- resolution: {integrity: sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==}
- dependencies:
- inherits: 2.0.4
- readable-stream: 3.6.0
- dev: true
-
- /stream-http/3.2.0:
- resolution: {integrity: sha512-Oq1bLqisTyK3TSCXpPbT4sdeYNdmyZJv1LxpEm2vu1ZhK89kSE5YXwZc3cWk0MagGaKriBh9mCFbVGtO+vY29A==}
- dependencies:
- builtin-status-codes: 3.0.0
- inherits: 2.0.4
- readable-stream: 3.6.0
- xtend: 4.0.2
- dev: true
-
/streamsearch/1.1.0:
resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==}
engines: {node: '>=10.0.0'}
@@ -2734,13 +2593,6 @@ packages:
uint8array-tools: 0.0.7
dev: true
- /tiny-secp256k1/2.2.1:
- resolution: {integrity: sha512-/U4xfVqnVxJXN4YVsru0E6t5wVncu2uunB8+RVR40fYUxkKYUPS10f+ePQZgFBoE/Jbf9H1NBveupF2VmB58Ng==}
- engines: {node: '>=14.0.0'}
- dependencies:
- uint8array-tools: 0.0.7
- dev: true
-
/to-regex-range/5.0.1:
resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
engines: {node: '>=8.0'}
@@ -2757,10 +2609,6 @@ packages:
resolution: {integrity: sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==}
dev: true
- /tty-browserify/0.0.1:
- resolution: {integrity: sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==}
- dev: true
-
/typeforce/1.18.0:
resolution: {integrity: sha512-7uc1O8h1M1g0rArakJdf0uLRSSgFcYexrVoKo+bzJd32gd4gDy2L/Z+8/FjPnU9ydY3pEnVPtr9FyscYY60K1g==}
dev: true
@@ -2946,22 +2794,6 @@ packages:
is-typed-array: 1.1.10
dev: true
- /vm-browserify/1.1.2:
- resolution: {integrity: sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==}
- dev: true
-
- /which-typed-array/1.1.9:
- resolution: {integrity: sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==}
- engines: {node: '>= 0.4'}
- dependencies:
- available-typed-arrays: 1.0.5
- call-bind: 1.0.2
- for-each: 0.3.3
- gopd: 1.0.1
- has-tostringtag: 1.0.0
- is-typed-array: 1.1.10
- dev: true
-
/wif/2.0.6:
resolution: {integrity: sha512-HIanZn1zmduSF+BQhkE+YXIbEiH0xPr1012QbFEGB0xsKqJii0/SqJjyn8dFv6y36kOznMgMB+LGcbZTJ1xACQ==}
dependencies:
diff --git a/src/components/Code.svelte b/src/components/Code.svelte
index b3181d0a..0e09191e 100644
--- a/src/components/Code.svelte
+++ b/src/components/Code.svelte
@@ -5,11 +5,27 @@
export let sample;
</script>
-<div class="bg-black text-white rounded-lg p-4 flex gap-4 whitespace-pre-wrap font-mono">
- <div class="w-full break-all">{samples[sample]}</div>
+<div
+ class="bg-black text-white rounded-lg p-4 flex gap-4 whitespace-pre-wrap font-mono"
+>
+ <div class="overflow-x-scroll max-w-full scrollbar-hide">
+ <div class="break-all min-w-[800px]">{samples[sample]}</div>
+ </div>
<button
class="ml-auto my-auto invert opacity-90"
on:click={() => copy(samples[sample].replace(/^\s+/gm, '').replace(/\n/g, ''))}
- ><Icon icon="copy" style="w-8" /></button
+ ><Icon icon="copy" style="w-10 max-w-none" /></button
>
</div>
+
+<style>
+ .scrollbar-hide::-webkit-scrollbar {
+ display: none;
+ }
+
+ /* For IE, Edge and Firefox */
+ .scrollbar-hide {
+ -ms-overflow-style: none; /* IE and Edge */
+ scrollbar-width: none; /* Firefox */
+ }
+</style>
diff --git a/src/lib/samples.js b/src/lib/samples.js
index 4af61822..93b9aa24 100644
--- a/src/lib/samples.js
+++ b/src/lib/samples.js
@@ -1,13 +1,13 @@
export default {
- register: `curl -s "https://coinos.io/api/register" -H "application/json" -d '{
+ register: `curl "https://coinos.io/api/register" -H "application/json" -d '{
"username": "adam",
"password": "hunter2"
}'`,
- login: `curl -s "https://coinos.io/api/login" -H "application/json" -d '{
+ login: `curl "https://coinos.io/api/login" -H "application/json" -d '{
"username": "adam",
"password": "hunter2"
}'`,
- invoice: `curl -s "https://coinos.io/api/invoice"
+ invoice: `curl "https://coinos.io/api/invoice"
-H "application/json"
-H "Authorization: Bearer $token"
-d '{
@@ -18,5 +18,6 @@ export default {
"secret": "hunter2"
},
}'`,
- fetchInvoice: `curl -s "https://coinos.io/api/invoice/bc1qmhfk9stzffhd9umzmld92vff7zg3mdlh7rvvaj" -H "application/json" }'`
+ fetchInvoice: `curl "https://coinos.io/api/invoice/bc1qmhfk9stzffhd9umzmld92vff7zg3mdlh7rvvaj"
+ -H "application/json"'`
};
diff --git a/src/routes/(static)/docs/+page.svelte b/src/routes/(static)/docs/+page.svelte
index d44204d8..cb82bd05 100644
--- a/src/routes/(static)/docs/+page.svelte
+++ b/src/routes/(static)/docs/+page.svelte
@@ -1,10 +1,16 @@
<script>
+ import { copy } from '$lib/utils';
import { Code, Icon } from '$comp';
+ import { PUBLIC_COINOS_URL } from '$env/static/public';
export let data;
let { token } = data;
+ let api = PUBLIC_COINOS_URL + '/api';
+
+ if (!token) token = '<login to see your token here>';
+ let tokenSample = `export token="${token}"`;
</script>
-<div class="space-y-8 text-xl mt-20">
+<div class="space-y-8 lg:text-xl mt-20 w-full max-w-full">
<h1 class="text-4xl">API Documentation</h1>
<p class="text-secondary">
@@ -16,15 +22,19 @@
<h2 class="text-2xl">Base URL</h2>
<div class="bg-black text-white rounded-lg p-4 flex gap-4">
- <div>https://coinos.io/api</div>
- <div class="ml-auto my-auto invert opacity-90"><Icon icon="copy" style="w-8" /></div>
+ <div>{api}</div>
+ <button class="ml-auto my-auto invert opacity-90" on:click={() => copy(api)}
+ ><Icon icon="copy" style="w-10 max-w-none" /></button
+ >
</div>
<h2 class="text-2xl">Auth Token</h2>
<p class="text-secondary">This JWT authorizes you to use the API</p>
<div class="bg-black text-white rounded-lg p-4 flex gap-4">
- <div class="w-full break-all">export token="{token}"</div>
- <div class="ml-auto my-auto invert opacity-90"><Icon icon="copy" style="w-8" /></div>
+ <div class="w-full break-all">{tokenSample}</div>
+ <button class="ml-auto my-auto invert opacity-90" on:click={() => copy(tokenSample)}
+ ><Icon icon="copy" style="w-10 max-w-none" /></button
+ >
</div>
<h2 class="text-2xl">POST /register</h2>
@@ -42,17 +52,17 @@
<span class="font-mono font-bold">type</span>: bitcoin or lightning
</div>
<div class="text-secondary">
- <span class="font-mono font-bold">amount</span>: integer satoshis (optional)
+ <span class="font-mono font-bold">amount</span>: amount in satoshis
</div>
<div class="text-secondary">
- <span class="font-mono font-bold">webhook</span>: a URL that we'll POST to when the invoice is
- paid (optional)
+ <span class="font-mono font-bold">webhook</span>: an endpoint to hit when the invoice is paid
</div>
<div class="text-secondary">
- <span class="font-mono font-bold">secret</span>: a secret to send with the POST (optional)
+ <span class="font-mono font-bold">secret</span>: a secret string for the webhook to check
</div>
</div>
+ hey
<Code sample="invoice" />
<h2 class="text-2xl">GET /invoice/:hash</h2>
@@ -123,4 +133,5 @@
<!-- -->
<!-- curl -s "$api/bitcoin/send" -H "$json" -H "$auth" -d '{"address": "bc1qqc9azhdjjpdxenrndt8cw4tw9del5pyrjn0wln", "tx": { "hex": "'$hex'", "fee": "'$fee'" }}' | jq -r '{ amount, fee, balance: (.account.balance)}' -->
<!-- echo "" -->
+
<!-- `} -->