diff --git a/package.json b/package.json index 3faecabf1..c3655389a 100644 --- a/package.json +++ b/package.json @@ -24,14 +24,14 @@ "@chakra-ui/breakpoint-utils": "^2.0.8", "@chakra-ui/icons": "^2.2.4", "@chakra-ui/media-query": "^3.3.0", - "@chakra-ui/react": "^2.10.5", + "@chakra-ui/react": "^2.10.6", "@chakra-ui/shared-utils": "^2.0.4", "@chakra-ui/styled-system": "^2.12.0", "@chakra-ui/theme-tools": "^2.2.6", "@codemirror/autocomplete": "^6.18.6", "@codemirror/lang-json": "^6.0.1", "@codemirror/language": "^6.10.8", - "@codemirror/view": "^6.36.2", + "@codemirror/view": "^6.36.3", "@emoji-mart/data": "^1.2.1", "@emoji-mart/react": "^1.1.1", "@emotion/react": "^11.14.0", @@ -60,13 +60,13 @@ "blossom-client-sdk": "^3.0.1", "blurhash": "^2.0.5", "canvas-confetti": "^1.9.3", - "chart.js": "^4.4.7", + "chart.js": "^4.4.8", "chroma-js": "^2.6.0", "codemirror": "^6.0.1", "codemirror-json-schema": "^0.7.9", "dayjs": "^1.11.13", "debug": "^4.4.0", - "easymde": "^2.18.0", + "easymde": "^2.19.0", "emoji-regex": "^10.4.0", "file-saver": "^2.0.5", "framer-motion": "^10.18.0", @@ -121,7 +121,7 @@ "three-spritetext": "^1.9.4", "three-stdlib": "^2.35.13", "unified": "^11.0.5", - "uuid": "^11.0.5", + "uuid": "^11.1.0", "vite-plugin-funding": "^0.1.0", "webln": "^0.3.2", "workbox-core": "7.0.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 6bef136f1..3888943e3 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -23,13 +23,13 @@ importers: version: 2.0.8 '@chakra-ui/icons': specifier: ^2.2.4 - version: 2.2.4(@chakra-ui/react@2.10.5(@emotion/react@11.14.0(@types/react@18.3.18)(react@19.0.0))(@emotion/styled@11.14.0(@emotion/react@11.14.0(@types/react@18.3.18)(react@19.0.0))(@types/react@18.3.18)(react@19.0.0))(@types/react@18.3.18)(framer-motion@10.18.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react@19.0.0) + version: 2.2.4(@chakra-ui/react@2.10.6(@emotion/react@11.14.0(@types/react@18.3.18)(react@19.0.0))(@emotion/styled@11.14.0(@emotion/react@11.14.0(@types/react@18.3.18)(react@19.0.0))(@types/react@18.3.18)(react@19.0.0))(@types/react@18.3.18)(framer-motion@10.18.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react@19.0.0) '@chakra-ui/media-query': specifier: ^3.3.0 version: 3.3.0(@chakra-ui/system@2.6.2(@emotion/react@11.14.0(@types/react@18.3.18)(react@19.0.0))(@emotion/styled@11.14.0(@emotion/react@11.14.0(@types/react@18.3.18)(react@19.0.0))(@types/react@18.3.18)(react@19.0.0))(react@19.0.0))(react@19.0.0) '@chakra-ui/react': - specifier: ^2.10.5 - version: 2.10.5(@emotion/react@11.14.0(@types/react@18.3.18)(react@19.0.0))(@emotion/styled@11.14.0(@emotion/react@11.14.0(@types/react@18.3.18)(react@19.0.0))(@types/react@18.3.18)(react@19.0.0))(@types/react@18.3.18)(framer-motion@10.18.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + specifier: ^2.10.6 + version: 2.10.6(@emotion/react@11.14.0(@types/react@18.3.18)(react@19.0.0))(@emotion/styled@11.14.0(@emotion/react@11.14.0(@types/react@18.3.18)(react@19.0.0))(@types/react@18.3.18)(react@19.0.0))(@types/react@18.3.18)(framer-motion@10.18.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0) '@chakra-ui/shared-utils': specifier: ^2.0.4 version: 2.0.4 @@ -49,8 +49,8 @@ importers: specifier: ^6.10.8 version: 6.10.8 '@codemirror/view': - specifier: ^6.36.2 - version: 6.36.2 + specifier: ^6.36.3 + version: 6.36.3 '@emoji-mart/data': specifier: ^1.2.1 version: 1.2.1 @@ -92,10 +92,10 @@ importers: version: 1.3.1 '@uiw/codemirror-theme-github': specifier: ^4.23.8 - version: 4.23.8(@codemirror/language@6.10.8)(@codemirror/state@6.5.2)(@codemirror/view@6.36.2) + version: 4.23.8(@codemirror/language@6.10.8)(@codemirror/state@6.5.2)(@codemirror/view@6.36.3) '@uiw/react-codemirror': specifier: ^4.23.8 - version: 4.23.8(@babel/runtime@7.26.9)(@codemirror/autocomplete@6.18.6)(@codemirror/language@6.10.8)(@codemirror/lint@6.8.4)(@codemirror/search@6.5.9)(@codemirror/state@6.5.2)(@codemirror/theme-one-dark@6.1.2)(@codemirror/view@6.36.2)(codemirror@6.0.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + version: 4.23.8(@babel/runtime@7.26.9)(@codemirror/autocomplete@6.18.6)(@codemirror/language@6.10.8)(@codemirror/lint@6.8.4)(@codemirror/search@6.5.9)(@codemirror/state@6.5.2)(@codemirror/theme-one-dark@6.1.2)(@codemirror/view@6.36.3)(codemirror@6.0.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) '@webscopeio/react-textarea-autocomplete': specifier: ^4.9.2 version: 4.9.2(prop-types@15.8.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) @@ -104,25 +104,25 @@ importers: version: 0.7.2 applesauce-accounts: specifier: next - version: 0.0.0-next-20250217190527(typescript@5.7.3) + version: 0.0.0-next-20250219163923(typescript@5.7.3) applesauce-content: specifier: next - version: 0.0.0-next-20250217190527(typescript@5.7.3) + version: 0.0.0-next-20250219163923(typescript@5.7.3) applesauce-core: specifier: next - version: 0.0.0-next-20250217190527(typescript@5.7.3) + version: 0.0.0-next-20250219163923(typescript@5.7.3) applesauce-factory: specifier: next - version: 0.0.0-next-20250217190527(typescript@5.7.3) + version: 0.0.0-next-20250219163923(typescript@5.7.3) applesauce-loaders: specifier: next - version: 0.0.0-next-20250217190527(typescript@5.7.3) + version: 0.0.0-next-20250219163923(typescript@5.7.3) applesauce-react: specifier: next - version: 0.0.0-next-20250217190527(react-dom@19.0.0(react@19.0.0))(typescript@5.7.3) + version: 0.0.0-next-20250219163923(react-dom@19.0.0(react@19.0.0))(typescript@5.7.3) applesauce-signers: specifier: next - version: 0.0.0-next-20250217190527(typescript@5.7.3) + version: 0.0.0-next-20250219163923(typescript@5.7.3) bech32: specifier: ^2.0.0 version: 2.0.0 @@ -136,8 +136,8 @@ importers: specifier: ^1.9.3 version: 1.9.3 chart.js: - specifier: ^4.4.7 - version: 4.4.7 + specifier: ^4.4.8 + version: 4.4.8 chroma-js: specifier: ^2.6.0 version: 2.6.0 @@ -146,7 +146,7 @@ importers: version: 6.0.1 codemirror-json-schema: specifier: ^0.7.9 - version: 0.7.9(@codemirror/language@6.10.8)(@codemirror/lint@6.8.4)(@codemirror/state@6.5.2)(@codemirror/view@6.36.2)(@lezer/common@1.2.3) + version: 0.7.9(@codemirror/language@6.10.8)(@codemirror/lint@6.8.4)(@codemirror/state@6.5.2)(@codemirror/view@6.36.3)(@lezer/common@1.2.3) dayjs: specifier: ^1.11.13 version: 1.11.13 @@ -154,8 +154,8 @@ importers: specifier: ^4.4.0 version: 4.4.0 easymde: - specifier: ^2.18.0 - version: 2.18.0 + specifier: ^2.19.0 + version: 2.19.0 emoji-regex: specifier: ^10.4.0 version: 10.4.0 @@ -242,7 +242,7 @@ importers: version: 19.0.0 react-chartjs-2: specifier: ^5.3.0 - version: 5.3.0(chart.js@4.4.7)(react@19.0.0) + version: 5.3.0(chart.js@4.4.8)(react@19.0.0) react-diff-viewer-continued: specifier: ^3.4.0 version: 3.4.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) @@ -281,7 +281,7 @@ importers: version: 6.29.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) react-simplemde-editor: specifier: ^5.2.0 - version: 5.2.0(easymde@2.18.0)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + version: 5.2.0(easymde@2.19.0)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) react-singleton-hook: specifier: ^4.0.1 version: 4.0.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0) @@ -319,8 +319,8 @@ importers: specifier: ^11.0.5 version: 11.0.5 uuid: - specifier: ^11.0.5 - version: 11.0.5 + specifier: ^11.1.0 + version: 11.1.0 vite-plugin-funding: specifier: ^0.1.0 version: 0.1.0 @@ -1047,8 +1047,8 @@ packages: '@chakra-ui/anatomy@2.3.4': resolution: {integrity: sha512-fFIYN7L276gw0Q7/ikMMlZxP7mvnjRaWJ7f3Jsf9VtDOi6eAYIBRrhQe6+SZ0PGmoOkRaBc7gSE5oeIbgFFyrw==} - '@chakra-ui/anatomy@2.3.5': - resolution: {integrity: sha512-3im33cUOxCbISjaBlINE2u8BOwJSCdzpjCX0H+0JxK2xz26UaVA5xeI3NYHUoxDnr/QIrgfrllGxS0szYwOcyg==} + '@chakra-ui/anatomy@2.3.6': + resolution: {integrity: sha512-TjmjyQouIZzha/l8JxdBZN1pKZTj7sLpJ0YkFnQFyqHcbfWggW9jKWzY1E0VBnhtFz/xF3KC6UAVuZVSJx+y0g==} '@chakra-ui/breakpoint-utils@2.0.8': resolution: {integrity: sha512-Pq32MlEX9fwb5j5xx8s18zJMARNHlQZH2VH1RZgfgRDpp7DcEgtRW5AInfN5CfqdHLO1dGxA7I3MqEuL5JnIsA==} @@ -1058,8 +1058,8 @@ packages: peerDependencies: react: '>=18' - '@chakra-ui/hooks@2.4.3': - resolution: {integrity: sha512-Sr2zsoTZw3p7HbrUy4aLpTIkE2XXUelAUgg3NGwMzrmx75bE0qVyiuuTFOuyEzGxYVV2Fe8QtcKKilm6RwzTGg==} + '@chakra-ui/hooks@2.4.4': + resolution: {integrity: sha512-+gMwLIkabtddIL/GICU7JmnYtvfONP+fNiTfdYLV9/I1eyCz8igKgLmFJOGM6F+BpUev6hh+/+DX5ezGQ9VTbQ==} peerDependencies: react: '>=18' @@ -1093,8 +1093,8 @@ packages: peerDependencies: react: '>=18' - '@chakra-ui/react@2.10.5': - resolution: {integrity: sha512-wCetfxT1iXWNmAwSLF1d0zyTQOQYswA3YJcw05grY1XEngO6956PScRB0Or5ZQJ6rGMcz5pcUhVgrb3q7AE+gQ==} + '@chakra-ui/react@2.10.6': + resolution: {integrity: sha512-9cdzcUR3LV3E2as0QhZhHAH5qjbyspV12kU1E1Ibcv6/uKUi6bIfPfMSC6R/Tw8Beqhn2ClJFPqjtXzL+C0knQ==} peerDependencies: '@emotion/react': '>=11' '@emotion/styled': '>=11' @@ -1111,8 +1111,8 @@ packages: '@chakra-ui/styled-system@2.12.0': resolution: {integrity: sha512-zoqLw1I2y4GlZ0LDoyw8o0JjoDOW6u0IwFPAoHuw0UMbP8glHUGvwEL1STug/i/GzBKw83yoF6ae41HIQvhMww==} - '@chakra-ui/styled-system@2.12.1': - resolution: {integrity: sha512-DQph1nDiCPtgze7nDe0a36530ByXb5VpPosKGyWMvKocVeZJcDtYG6XM0+V5a0wKuFBXsViBBRIFUTiUesJAcg==} + '@chakra-ui/styled-system@2.12.2': + resolution: {integrity: sha512-BlQ7i3+GYC0S0c72B+paa0sYo+QeNSMfz6fwQRFsc8A5Aax9i9lSdRL+vwJVC+k6r/0HWfRwk016R2RD2ihEwQ==} '@chakra-ui/styled-system@2.9.2': resolution: {integrity: sha512-To/Z92oHpIE+4nk11uVMWqo2GGRS86coeMmjxtpnErmWRdLcp1WVCVRAvn+ZwpLiNR+reWFr2FFqJRsREuZdAg==} @@ -1134,8 +1134,8 @@ packages: peerDependencies: '@chakra-ui/styled-system': '>=2.0.0' - '@chakra-ui/theme-tools@2.2.7': - resolution: {integrity: sha512-K/VJd0QcnKik7m+qZTkggqNLep6+MPUu8IP5TUpHsnSM5R/RVjsJIR7gO8IZVAIMIGLLTIhGshHxeMekqv6LcQ==} + '@chakra-ui/theme-tools@2.2.8': + resolution: {integrity: sha512-X2i2qgkG+k3DQfh/adn3zzM4Ty8QrGobVPjMl9rMrEYq3ac+pur6KVdVHy/SwwoPvB6S4i84uq7y35+KbJan9g==} peerDependencies: '@chakra-ui/styled-system': '>=2.0.0' @@ -1147,8 +1147,8 @@ packages: peerDependencies: '@chakra-ui/styled-system': '>=2.8.0' - '@chakra-ui/theme@3.4.7': - resolution: {integrity: sha512-pfewthgZTFNUYeUwGvhPQO/FTIyf375cFV1AT8N1y0aJiw4KDe7YTGm7p0aFy4AwAjH2ydMgeEx/lua4tx8qyQ==} + '@chakra-ui/theme@3.4.8': + resolution: {integrity: sha512-ZLMP2Gek38ZTIlj+sMZLsd1TW27yVdmUKMfBmjsr1psAeOa5bDBLKDszICjhEqk7gAbiWB7jr1/HzBXid4kduQ==} peerDependencies: '@chakra-ui/styled-system': '>=2.8.0' @@ -1160,8 +1160,8 @@ packages: peerDependencies: react: '>=16.8.0' - '@chakra-ui/utils@2.2.3': - resolution: {integrity: sha512-cldoCQuexZ6e07/9hWHKD4l1QXXlM1Nax9tuQOBvVf/EgwNZt3nZu8zZRDFlhAOKCTQDkmpLTTu+eXXjChNQOw==} + '@chakra-ui/utils@2.2.4': + resolution: {integrity: sha512-nRpR9SnX7aLcJx7lKu8kgQWxdJso1oR/78HcBI+mzidvWdTykbTGdm5Q2R7S0PVH1IFBzBTgi6TiAjHvu96auA==} peerDependencies: react: '>=16.8.0' @@ -1247,8 +1247,8 @@ packages: '@codemirror/theme-one-dark@6.1.2': resolution: {integrity: sha512-F+sH0X16j/qFLMAfbciKTxVOwkdAS336b7AXTKOZhy8BR3eH/RelsnLgLFINrpST63mmN2OuwUt0W2ndUgYwUA==} - '@codemirror/view@6.36.2': - resolution: {integrity: sha512-DZ6ONbs8qdJK0fdN7AB82CgI6tYXf4HWk1wSVa0+9bhVznCuuvhQtX8bFBoy3dv8rZSQqUd8GvhVAcielcidrA==} + '@codemirror/view@6.36.3': + resolution: {integrity: sha512-N2bilM47QWC8Hnx0rMdDxO2x2ImJ1FvZWXubwKgjeoOrWwEiFrtpA7SFHcuZ+o2Ze2VzbkgbzWVj4+V18LVkeg==} '@cspotcode/source-map-support@0.8.1': resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} @@ -2189,26 +2189,26 @@ packages: engines: {node: '>=8.0.0'} hasBin: true - applesauce-accounts@0.0.0-next-20250217190527: - resolution: {integrity: sha512-7LqaMpG7sJOGIQClQrGzVAeCZmUor6OW+26w3/QJHiCmcwgfCNPToJFMw4LZmYOhR5XQceayX1bKDE72h99Mpw==} + applesauce-accounts@0.0.0-next-20250219163923: + resolution: {integrity: sha512-NfdlI0q3c2s6seWsMnCUzIp6MEy6QJ3VAk33jDA8obIQgJVDhrYx16zkvcQNKviawP39ZClVP6o9eDZajPkgRw==} - applesauce-content@0.0.0-next-20250217190527: - resolution: {integrity: sha512-h5TQRNEnHFG0rqdOW51SlfLyDV2WbaFwM+zwItajSmi3bMC6hvgJN6xChsU66SCXIvIcP2wjz/JoQEXybgy3PA==} + applesauce-content@0.0.0-next-20250219163923: + resolution: {integrity: sha512-cd353dh+D0VRrwtQKCetxXIgvBuDhYxPqNl03CtFkUHzrzVF8V+OITIuTfKcAtM4OGCUSOYqZSN0rJgpK3s6QA==} - applesauce-core@0.0.0-next-20250217190527: - resolution: {integrity: sha512-mygX/r30QRwfNOJqfyCHVLtJ79f9hQmEXnnZhnTOfO4VB7QoxvoGEMT/VugjQVxLqcp8nYqcs4f87el2ht77Ww==} + applesauce-core@0.0.0-next-20250219163923: + resolution: {integrity: sha512-WJn3hrvNzz/dwEK2GV1FP8WNbrs3hz4yODHAZnkrpl32o6RFkk/0zIgirBjcAKmAhMzblqhrw+lxNceYFyo7hA==} - applesauce-factory@0.0.0-next-20250217190527: - resolution: {integrity: sha512-pG/kT9x4YTsp6sT9Xc5G9zI5zLef9GXg028O0qREgONBhNNyPSmezv3HTKIsD66lwGAiqjE3SZ/RPJfYG3OrdA==} + applesauce-factory@0.0.0-next-20250219163923: + resolution: {integrity: sha512-fxzcNHoR8SDPQsWTN3OkRPX+vTQJGLNDq2LcEpxYuNKmiacEVzoOd1YOHigERmEbge3CCY12+wzUUdWLhnQO0A==} - applesauce-loaders@0.0.0-next-20250217190527: - resolution: {integrity: sha512-aECxPx0EZzWfGvzJJHbwUwmhkRf8kz5xWIGkFOcKz/z7afaYog8BO07TixHVpL14p3IxXixswR+t+lSc//42ig==} + applesauce-loaders@0.0.0-next-20250219163923: + resolution: {integrity: sha512-nVTM18FsEN2lub2UXqsShI0i+9/RvlcHKRAP8pGWF2ADSImPAFTlBdGO0eqlJwToUISyMuSfJFrjHL+KprrLkA==} - applesauce-react@0.0.0-next-20250217190527: - resolution: {integrity: sha512-7hEPhvIDP60/roDKSgNXuFxIUM8u19VLNIilXiiwOqW5wThTtVtT9+wwOzPTGqR2WwRiSteBhOKmofihomQHkA==} + applesauce-react@0.0.0-next-20250219163923: + resolution: {integrity: sha512-rXzRURwVHRwoFPLGRLbvhidhKMmp2fkj6SNnH27LKaHQUqG5RK46SSA9SWMQq9VXag3sYymvrFu0Sbcrnqi/4g==} - applesauce-signers@0.0.0-next-20250217190527: - resolution: {integrity: sha512-k96JCa9P+5PAfn61Nv2eXTytxr4gr5WoeD7NHf6dEdKCryIOZfMNHNEk/ldOjKv/NII5DWKvoVwEXJO5zAp7bg==} + applesauce-signers@0.0.0-next-20250219163923: + resolution: {integrity: sha512-nTQz+qW1rZnHVVxnASrzqYOMIq/4VGAV43VtUcqydmMNUF20vrR5scCzKB4Eyf7NhIBcxlPY8RHpC5NdAzBfaw==} arg@4.1.3: resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==} @@ -2490,8 +2490,8 @@ packages: chardet@0.7.0: resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==} - chart.js@4.4.7: - resolution: {integrity: sha512-pwkcKfdzTMAU/+jNosKhNL2bHtJc/sSmYgVbuGTEDhzkrhmyihmP7vUc/5ZK9WopidMDHNe3Wm7jOd/WhuHWuw==} + chart.js@4.4.8: + resolution: {integrity: sha512-IkGZlVpXP+83QpMm4uxEiGqSI7jFizwVtF3+n5Pc3k7sMO+tkd0qxh2OzLhenM0K80xtmAONWGBn082EiBQSDA==} engines: {pnpm: '>=8'} cheerio-select@2.1.0: @@ -3009,8 +3009,8 @@ packages: resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} engines: {node: '>= 0.4'} - easymde@2.18.0: - resolution: {integrity: sha512-IxVVUxNWIoXLeqtBU4BLc+eS/ScYhT1Dcb6yF5Wchoj1iXAV+TIIDWx+NCaZhY7RcSHqDPKllbYq7nwGKILnoA==} + easymde@2.19.0: + resolution: {integrity: sha512-4F1aNImqse+9xIjLh9ttfpOVenecjFPxUmKbl1tGp72Z+OyIqLZPE/SgNyy88c/xU0mOy0WC3+tfbZDQ5PDWhg==} ebnf@1.9.1: resolution: {integrity: sha512-uW2UKSsuty9ANJ3YByIQE4ANkD8nqUPO7r6Fwcc1ADKPe9FRdcPpMl3VEput4JSvKBJ4J86npIC2MLP0pYkCuw==} @@ -3202,8 +3202,8 @@ packages: fast-uri@3.0.6: resolution: {integrity: sha512-Atfo14OibSv5wAp4VWNsFYE1AchQRTv9cBGWET4pZWHzYshFSS9NQI6I57rdKn9croWVMbYFbLhJ+yJvmZIIHw==} - fast-xml-parser@4.5.1: - resolution: {integrity: sha512-y655CeyUQ+jj7KBbYMc4FG01V8ZQqjN+gDYGJ50RtfsUB8iG9AmwmwoAgeKLJdmueKKMrH1RJ7yXHTSoczdv5w==} + fast-xml-parser@4.5.2: + resolution: {integrity: sha512-xmnYV9o0StIz/0ArdzmWTxn9oDy0lH8Z80/8X/TD2EUQKXY4DHxoT9mYBqgGIG17DgddCJtH1M6DriMbalNsAA==} hasBin: true fastest-stable-stringify@2.0.2: @@ -3489,11 +3489,11 @@ packages: resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} engines: {node: '>= 0.4'} - hast-util-to-html@9.0.4: - resolution: {integrity: sha512-wxQzXtdbhiwGAUKrnQJXlOPmHnEehzphwkK7aluUPQ+lEc1xefC8pblMgpp2w5ldBTEfveRIrADcrhGIWrlTDA==} + hast-util-to-html@9.0.5: + resolution: {integrity: sha512-OguPdidb+fbHQSU4Q4ZiLKnzWo8Wwsf5bZfbvu7//a9oTYoqD/fWpe96NuHkoS9h0ccGOTe0C4NGXdtS0iObOw==} - hast-util-to-jsx-runtime@2.3.2: - resolution: {integrity: sha512-1ngXYb+V9UT5h+PxNRa1O1FYguZK/XL+gkeqvp7EdHlB9oHUG0eYRo/vY5inBdcqo3RkPMC58/H94HvkbfGdyg==} + hast-util-to-jsx-runtime@2.3.3: + resolution: {integrity: sha512-pdpkP8YD4v+qMKn2lnKSiJvZvb3FunDmFYQvVOsoO08+eTNWdaWKPMrC5wwNICtU3dQWHhElj5Sf5jPEnv4qJg==} hast-util-whitespace@3.0.0: resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==} @@ -4634,15 +4634,15 @@ packages: resolution: {integrity: sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==} engines: {node: '>= 0.4'} - postcss@8.5.2: - resolution: {integrity: sha512-MjOadfU3Ys9KYoX0AdkBlFEF1Vx37uCCeN4ZHnmwm9FfpbsGWMZeBLMmmpY+6Ocqod7mkdZ0DT31OlbsFrLlkA==} + postcss@8.5.3: + resolution: {integrity: sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==} engines: {node: ^10 || ^12 || >=14} potpack@1.0.2: resolution: {integrity: sha512-choctRBIV9EMT9WGAZHn3V7t0Z2pMQyl0EZE6pFc/6ml3ssw7Dlf/oAOvFwjm1HVsqfQN8GfeFyJ+d8tRzqueQ==} - preact@10.26.0: - resolution: {integrity: sha512-6ugi/Mb7lyV5RA6KlnijFyDLMU253i7L0RRiObIzDoqj59KT9iTeNJbA/YGw6M7jP4vxaab0DOA8DgodTOA6EQ==} + preact@10.26.2: + resolution: {integrity: sha512-0gNmv4qpS9HaN3+40CLBAnKe0ZfyE4ZWo5xKlC1rVrr0ckkEvJvAQqKaHANdFKsGstoxrY4AItZ7kZSGVoVjgg==} prebuild-install@7.1.3: resolution: {integrity: sha512-8Mf2cbV7x1cXPUILADGI3wuhfqWvtiLA1iclTDbFRZkgRQS0NqsPZphna9V+HyTEadheuPmjaJMsbzKQFOzLug==} @@ -4677,8 +4677,8 @@ packages: prop-types@15.8.1: resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} - property-information@6.5.0: - resolution: {integrity: sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==} + property-information@7.0.0: + resolution: {integrity: sha512-7D/qOz/+Y4X/rzSB6jKxKUsQnphO046ei8qxG59mtM3RG3DHgTK81HrxrmoDVINJb8NKT5ZsRbwHvQ6B68Iyhg==} proxy-addr@2.0.7: resolution: {integrity: sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==} @@ -5526,8 +5526,8 @@ packages: peerDependencies: three: '>=0.118.3' - three-render-objects@1.38.1: - resolution: {integrity: sha512-w51UYkIXnyULX9b7m8fJCDHy9HSviCbubYFIpI4Ox5gluAXRlKDvYg2E9ZKhBf4SXr1ieCpPLVfqLwWfo+ceRA==} + three-render-objects@1.39.0: + resolution: {integrity: sha512-kWH7rhq6uVj29kVwqM25S/MqSRcheNECKrqzEK8CaE65m37F+HCS2OqTFs0NAXJiCGI0hRLRSl5rcTKskB+WwQ==} engines: {node: '>=12'} peerDependencies: three: '>=0.168' @@ -5565,8 +5565,8 @@ packages: tinycolor2@1.6.0: resolution: {integrity: sha512-XPaBkWQJdsf3pLKJV9p4qN/S+fm2Oj8AIPo1BTUhg5oxkvm9+SVEGFdhyOz7tTdUTfvxMiAs4sp6/eZO2Ew+pw==} - tinyglobby@0.2.10: - resolution: {integrity: sha512-Zc+8eJlFMvgatPZTl6A9L/yht8QqdmUNtURHaKZLmKBE12hNPSrqNkUp2cs3M/UKmNVVAMFQYSjYIVHDjW5zew==} + tinyglobby@0.2.11: + resolution: {integrity: sha512-32TmKeeKUahv0Go8WmQgiEp9Y21NuxjwjqiRC1nrUB51YacfSwuB44xgXD+HdIppmMRgjQNPdrHyA6vIybYZ+g==} engines: {node: '>=12.0.0'} tmp@0.0.33: @@ -5813,8 +5813,8 @@ packages: resolution: {integrity: sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==} engines: {node: '>= 0.4.0'} - uuid@11.0.5: - resolution: {integrity: sha512-508e6IcKLrhxKdBbcA2b4KQZlLVp2+J5UwQ6F7Drckkc5N9ZJwFa4TgWtsww9UG8fGHbm6gbV19TdM5pQ4GaIA==} + uuid@11.1.0: + resolution: {integrity: sha512-0/A9rDy9P7cJ+8w1c9WD9V//9Wj15Ce2MPz8Ri6032usz+NfePxx5AcN3bN+r6ZL6jEo066/yNYB3tn4pQEx+A==} hasBin: true uuid@7.0.3: @@ -6162,7 +6162,7 @@ snapshots: kapsule: 1.16.0 three: 0.170.0 three-forcegraph: 1.42.12(three@0.170.0) - three-render-objects: 1.38.1(three@0.170.0) + three-render-objects: 1.39.0(three@0.170.0) '@ampproject/remapping@2.3.0': dependencies: @@ -6974,7 +6974,7 @@ snapshots: '@chakra-ui/anatomy@2.3.4': {} - '@chakra-ui/anatomy@2.3.5': {} + '@chakra-ui/anatomy@2.3.6': {} '@chakra-ui/breakpoint-utils@2.0.8': dependencies: @@ -6985,17 +6985,17 @@ snapshots: '@chakra-ui/react-use-safe-layout-effect': 2.1.0(react@19.0.0) react: 19.0.0 - '@chakra-ui/hooks@2.4.3(react@19.0.0)': + '@chakra-ui/hooks@2.4.4(react@19.0.0)': dependencies: - '@chakra-ui/utils': 2.2.3(react@19.0.0) + '@chakra-ui/utils': 2.2.4(react@19.0.0) '@zag-js/element-size': 0.31.1 copy-to-clipboard: 3.3.3 framesync: 6.1.2 react: 19.0.0 - '@chakra-ui/icons@2.2.4(@chakra-ui/react@2.10.5(@emotion/react@11.14.0(@types/react@18.3.18)(react@19.0.0))(@emotion/styled@11.14.0(@emotion/react@11.14.0(@types/react@18.3.18)(react@19.0.0))(@types/react@18.3.18)(react@19.0.0))(@types/react@18.3.18)(framer-motion@10.18.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react@19.0.0)': + '@chakra-ui/icons@2.2.4(@chakra-ui/react@2.10.6(@emotion/react@11.14.0(@types/react@18.3.18)(react@19.0.0))(@emotion/styled@11.14.0(@emotion/react@11.14.0(@types/react@18.3.18)(react@19.0.0))(@types/react@18.3.18)(react@19.0.0))(@types/react@18.3.18)(framer-motion@10.18.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react@19.0.0)': dependencies: - '@chakra-ui/react': 2.10.5(@emotion/react@11.14.0(@types/react@18.3.18)(react@19.0.0))(@emotion/styled@11.14.0(@emotion/react@11.14.0(@types/react@18.3.18)(react@19.0.0))(@types/react@18.3.18)(react@19.0.0))(@types/react@18.3.18)(framer-motion@10.18.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@chakra-ui/react': 2.10.6(@emotion/react@11.14.0(@types/react@18.3.18)(react@19.0.0))(@emotion/styled@11.14.0(@emotion/react@11.14.0(@types/react@18.3.18)(react@19.0.0))(@types/react@18.3.18)(react@19.0.0))(@types/react@18.3.18)(framer-motion@10.18.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0) react: 19.0.0 '@chakra-ui/media-query@3.3.0(@chakra-ui/system@2.6.2(@emotion/react@11.14.0(@types/react@18.3.18)(react@19.0.0))(@emotion/styled@11.14.0(@emotion/react@11.14.0(@types/react@18.3.18)(react@19.0.0))(@types/react@18.3.18)(react@19.0.0))(react@19.0.0))(react@19.0.0)': @@ -7022,12 +7022,12 @@ snapshots: '@chakra-ui/utils': 2.0.15 react: 19.0.0 - '@chakra-ui/react@2.10.5(@emotion/react@11.14.0(@types/react@18.3.18)(react@19.0.0))(@emotion/styled@11.14.0(@emotion/react@11.14.0(@types/react@18.3.18)(react@19.0.0))(@types/react@18.3.18)(react@19.0.0))(@types/react@18.3.18)(framer-motion@10.18.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': + '@chakra-ui/react@2.10.6(@emotion/react@11.14.0(@types/react@18.3.18)(react@19.0.0))(@emotion/styled@11.14.0(@emotion/react@11.14.0(@types/react@18.3.18)(react@19.0.0))(@types/react@18.3.18)(react@19.0.0))(@types/react@18.3.18)(framer-motion@10.18.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: - '@chakra-ui/hooks': 2.4.3(react@19.0.0) - '@chakra-ui/styled-system': 2.12.1(react@19.0.0) - '@chakra-ui/theme': 3.4.7(@chakra-ui/styled-system@2.12.1(react@19.0.0))(react@19.0.0) - '@chakra-ui/utils': 2.2.3(react@19.0.0) + '@chakra-ui/hooks': 2.4.4(react@19.0.0) + '@chakra-ui/styled-system': 2.12.2(react@19.0.0) + '@chakra-ui/theme': 3.4.8(@chakra-ui/styled-system@2.12.2(react@19.0.0))(react@19.0.0) + '@chakra-ui/utils': 2.2.4(react@19.0.0) '@emotion/react': 11.14.0(@types/react@18.3.18)(react@19.0.0) '@emotion/styled': 11.14.0(@emotion/react@11.14.0(@types/react@18.3.18)(react@19.0.0))(@types/react@18.3.18)(react@19.0.0) '@popperjs/core': 2.11.8 @@ -7053,9 +7053,9 @@ snapshots: transitivePeerDependencies: - react - '@chakra-ui/styled-system@2.12.1(react@19.0.0)': + '@chakra-ui/styled-system@2.12.2(react@19.0.0)': dependencies: - '@chakra-ui/utils': 2.2.3(react@19.0.0) + '@chakra-ui/utils': 2.2.4(react@19.0.0) csstype: 3.1.3 transitivePeerDependencies: - react @@ -7095,11 +7095,11 @@ snapshots: transitivePeerDependencies: - react - '@chakra-ui/theme-tools@2.2.7(@chakra-ui/styled-system@2.12.1(react@19.0.0))(react@19.0.0)': + '@chakra-ui/theme-tools@2.2.8(@chakra-ui/styled-system@2.12.2(react@19.0.0))(react@19.0.0)': dependencies: - '@chakra-ui/anatomy': 2.3.5 - '@chakra-ui/styled-system': 2.12.1(react@19.0.0) - '@chakra-ui/utils': 2.2.3(react@19.0.0) + '@chakra-ui/anatomy': 2.3.6 + '@chakra-ui/styled-system': 2.12.2(react@19.0.0) + '@chakra-ui/utils': 2.2.4(react@19.0.0) color2k: 2.0.3 transitivePeerDependencies: - react @@ -7118,12 +7118,12 @@ snapshots: '@chakra-ui/styled-system': 2.9.2 '@chakra-ui/theme-tools': 2.1.2(@chakra-ui/styled-system@2.9.2) - '@chakra-ui/theme@3.4.7(@chakra-ui/styled-system@2.12.1(react@19.0.0))(react@19.0.0)': + '@chakra-ui/theme@3.4.8(@chakra-ui/styled-system@2.12.2(react@19.0.0))(react@19.0.0)': dependencies: - '@chakra-ui/anatomy': 2.3.5 - '@chakra-ui/styled-system': 2.12.1(react@19.0.0) - '@chakra-ui/theme-tools': 2.2.7(@chakra-ui/styled-system@2.12.1(react@19.0.0))(react@19.0.0) - '@chakra-ui/utils': 2.2.3(react@19.0.0) + '@chakra-ui/anatomy': 2.3.6 + '@chakra-ui/styled-system': 2.12.2(react@19.0.0) + '@chakra-ui/theme-tools': 2.2.8(@chakra-ui/styled-system@2.12.2(react@19.0.0))(react@19.0.0) + '@chakra-ui/utils': 2.2.4(react@19.0.0) transitivePeerDependencies: - react @@ -7140,7 +7140,7 @@ snapshots: lodash.mergewith: 4.6.2 react: 19.0.0 - '@chakra-ui/utils@2.2.3(react@19.0.0)': + '@chakra-ui/utils@2.2.4(react@19.0.0)': dependencies: '@types/lodash.mergewith': 4.6.9 lodash.mergewith: 4.6.2 @@ -7292,14 +7292,14 @@ snapshots: dependencies: '@codemirror/language': 6.10.8 '@codemirror/state': 6.5.2 - '@codemirror/view': 6.36.2 + '@codemirror/view': 6.36.3 '@lezer/common': 1.2.3 '@codemirror/commands@6.8.0': dependencies: '@codemirror/language': 6.10.8 '@codemirror/state': 6.5.2 - '@codemirror/view': 6.36.2 + '@codemirror/view': 6.36.3 '@lezer/common': 1.2.3 '@codemirror/lang-json@6.0.1': @@ -7321,7 +7321,7 @@ snapshots: '@codemirror/language@6.10.8': dependencies: '@codemirror/state': 6.5.2 - '@codemirror/view': 6.36.2 + '@codemirror/view': 6.36.3 '@lezer/common': 1.2.3 '@lezer/highlight': 1.2.1 '@lezer/lr': 1.4.2 @@ -7330,13 +7330,13 @@ snapshots: '@codemirror/lint@6.8.4': dependencies: '@codemirror/state': 6.5.2 - '@codemirror/view': 6.36.2 + '@codemirror/view': 6.36.3 crelt: 1.0.6 '@codemirror/search@6.5.9': dependencies: '@codemirror/state': 6.5.2 - '@codemirror/view': 6.36.2 + '@codemirror/view': 6.36.3 crelt: 1.0.6 '@codemirror/state@6.5.2': @@ -7347,10 +7347,10 @@ snapshots: dependencies: '@codemirror/language': 6.10.8 '@codemirror/state': 6.5.2 - '@codemirror/view': 6.36.2 + '@codemirror/view': 6.36.3 '@lezer/highlight': 1.2.1 - '@codemirror/view@6.36.2': + '@codemirror/view@6.36.3': dependencies: '@codemirror/state': 6.5.2 style-mod: 4.1.2 @@ -8026,7 +8026,7 @@ snapshots: '@shikijs/types': 1.29.2 '@shikijs/vscode-textmate': 10.0.2 '@types/hast': 3.0.4 - hast-util-to-html: 9.0.4 + hast-util-to-html: 9.0.5 '@shikijs/engine-javascript@1.29.2': dependencies: @@ -8285,7 +8285,7 @@ snapshots: '@types/webxr@0.5.21': {} - '@uiw/codemirror-extensions-basic-setup@4.23.8(@codemirror/autocomplete@6.18.6)(@codemirror/commands@6.8.0)(@codemirror/language@6.10.8)(@codemirror/lint@6.8.4)(@codemirror/search@6.5.9)(@codemirror/state@6.5.2)(@codemirror/view@6.36.2)': + '@uiw/codemirror-extensions-basic-setup@4.23.8(@codemirror/autocomplete@6.18.6)(@codemirror/commands@6.8.0)(@codemirror/language@6.10.8)(@codemirror/lint@6.8.4)(@codemirror/search@6.5.9)(@codemirror/state@6.5.2)(@codemirror/view@6.36.3)': dependencies: '@codemirror/autocomplete': 6.18.6 '@codemirror/commands': 6.8.0 @@ -8293,30 +8293,30 @@ snapshots: '@codemirror/lint': 6.8.4 '@codemirror/search': 6.5.9 '@codemirror/state': 6.5.2 - '@codemirror/view': 6.36.2 + '@codemirror/view': 6.36.3 - '@uiw/codemirror-theme-github@4.23.8(@codemirror/language@6.10.8)(@codemirror/state@6.5.2)(@codemirror/view@6.36.2)': + '@uiw/codemirror-theme-github@4.23.8(@codemirror/language@6.10.8)(@codemirror/state@6.5.2)(@codemirror/view@6.36.3)': dependencies: - '@uiw/codemirror-themes': 4.23.8(@codemirror/language@6.10.8)(@codemirror/state@6.5.2)(@codemirror/view@6.36.2) + '@uiw/codemirror-themes': 4.23.8(@codemirror/language@6.10.8)(@codemirror/state@6.5.2)(@codemirror/view@6.36.3) transitivePeerDependencies: - '@codemirror/language' - '@codemirror/state' - '@codemirror/view' - '@uiw/codemirror-themes@4.23.8(@codemirror/language@6.10.8)(@codemirror/state@6.5.2)(@codemirror/view@6.36.2)': + '@uiw/codemirror-themes@4.23.8(@codemirror/language@6.10.8)(@codemirror/state@6.5.2)(@codemirror/view@6.36.3)': dependencies: '@codemirror/language': 6.10.8 '@codemirror/state': 6.5.2 - '@codemirror/view': 6.36.2 + '@codemirror/view': 6.36.3 - '@uiw/react-codemirror@4.23.8(@babel/runtime@7.26.9)(@codemirror/autocomplete@6.18.6)(@codemirror/language@6.10.8)(@codemirror/lint@6.8.4)(@codemirror/search@6.5.9)(@codemirror/state@6.5.2)(@codemirror/theme-one-dark@6.1.2)(@codemirror/view@6.36.2)(codemirror@6.0.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': + '@uiw/react-codemirror@4.23.8(@babel/runtime@7.26.9)(@codemirror/autocomplete@6.18.6)(@codemirror/language@6.10.8)(@codemirror/lint@6.8.4)(@codemirror/search@6.5.9)(@codemirror/state@6.5.2)(@codemirror/theme-one-dark@6.1.2)(@codemirror/view@6.36.3)(codemirror@6.0.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: '@babel/runtime': 7.26.9 '@codemirror/commands': 6.8.0 '@codemirror/state': 6.5.2 '@codemirror/theme-one-dark': 6.1.2 - '@codemirror/view': 6.36.2 - '@uiw/codemirror-extensions-basic-setup': 4.23.8(@codemirror/autocomplete@6.18.6)(@codemirror/commands@6.8.0)(@codemirror/language@6.10.8)(@codemirror/lint@6.8.4)(@codemirror/search@6.5.9)(@codemirror/state@6.5.2)(@codemirror/view@6.36.2) + '@codemirror/view': 6.36.3 + '@uiw/codemirror-extensions-basic-setup': 4.23.8(@codemirror/autocomplete@6.18.6)(@codemirror/commands@6.8.0)(@codemirror/language@6.10.8)(@codemirror/lint@6.8.4)(@codemirror/search@6.5.9)(@codemirror/state@6.5.2)(@codemirror/view@6.36.3) codemirror: 6.0.1 react: 19.0.0 react-dom: 19.0.0(react@19.0.0) @@ -8422,10 +8422,10 @@ snapshots: dependencies: entities: 2.2.0 - applesauce-accounts@0.0.0-next-20250217190527(typescript@5.7.3): + applesauce-accounts@0.0.0-next-20250219163923(typescript@5.7.3): dependencies: '@noble/hashes': 1.7.1 - applesauce-signers: 0.0.0-next-20250217190527(typescript@5.7.3) + applesauce-signers: 0.0.0-next-20250219163923(typescript@5.7.3) nanoid: 5.1.0 nostr-tools: 2.10.4(typescript@5.7.3) rxjs: 7.8.1 @@ -8433,13 +8433,13 @@ snapshots: - supports-color - typescript - applesauce-content@0.0.0-next-20250217190527(typescript@5.7.3): + applesauce-content@0.0.0-next-20250219163923(typescript@5.7.3): dependencies: '@cashu/cashu-ts': 2.0.0-rc1 '@types/hast': 3.0.4 '@types/mdast': 4.0.4 '@types/unist': 3.0.3 - applesauce-core: 0.0.0-next-20250217190527(typescript@5.7.3) + applesauce-core: 0.0.0-next-20250219163923(typescript@5.7.3) mdast-util-find-and-replace: 3.0.2 nostr-tools: 2.10.4(typescript@5.7.3) remark: 15.0.1 @@ -8450,7 +8450,7 @@ snapshots: - supports-color - typescript - applesauce-core@0.0.0-next-20250217190527(typescript@5.7.3): + applesauce-core@0.0.0-next-20250219163923(typescript@5.7.3): dependencies: '@scure/base': 1.2.4 debug: 4.4.0 @@ -8464,19 +8464,19 @@ snapshots: - supports-color - typescript - applesauce-factory@0.0.0-next-20250217190527(typescript@5.7.3): + applesauce-factory@0.0.0-next-20250219163923(typescript@5.7.3): dependencies: - applesauce-content: 0.0.0-next-20250217190527(typescript@5.7.3) - applesauce-core: 0.0.0-next-20250217190527(typescript@5.7.3) + applesauce-content: 0.0.0-next-20250219163923(typescript@5.7.3) + applesauce-core: 0.0.0-next-20250219163923(typescript@5.7.3) nanoid: 5.1.0 nostr-tools: 2.10.4(typescript@5.7.3) transitivePeerDependencies: - supports-color - typescript - applesauce-loaders@0.0.0-next-20250217190527(typescript@5.7.3): + applesauce-loaders@0.0.0-next-20250219163923(typescript@5.7.3): dependencies: - applesauce-core: 0.0.0-next-20250217190527(typescript@5.7.3) + applesauce-core: 0.0.0-next-20250219163923(typescript@5.7.3) nanoid: 5.1.0 nostr-tools: 2.10.4(typescript@5.7.3) rx-nostr: 3.5.0 @@ -8485,12 +8485,12 @@ snapshots: - supports-color - typescript - applesauce-react@0.0.0-next-20250217190527(react-dom@19.0.0(react@19.0.0))(typescript@5.7.3): + applesauce-react@0.0.0-next-20250219163923(react-dom@19.0.0(react@19.0.0))(typescript@5.7.3): dependencies: - applesauce-accounts: 0.0.0-next-20250217190527(typescript@5.7.3) - applesauce-content: 0.0.0-next-20250217190527(typescript@5.7.3) - applesauce-core: 0.0.0-next-20250217190527(typescript@5.7.3) - applesauce-factory: 0.0.0-next-20250217190527(typescript@5.7.3) + applesauce-accounts: 0.0.0-next-20250219163923(typescript@5.7.3) + applesauce-content: 0.0.0-next-20250219163923(typescript@5.7.3) + applesauce-core: 0.0.0-next-20250219163923(typescript@5.7.3) + applesauce-factory: 0.0.0-next-20250219163923(typescript@5.7.3) nostr-tools: 2.10.4(typescript@5.7.3) observable-hooks: 4.2.4(react-dom@19.0.0(react@19.0.0))(react@18.3.1)(rxjs@7.8.1) react: 18.3.1 @@ -8500,12 +8500,12 @@ snapshots: - supports-color - typescript - applesauce-signers@0.0.0-next-20250217190527(typescript@5.7.3): + applesauce-signers@0.0.0-next-20250219163923(typescript@5.7.3): dependencies: '@noble/hashes': 1.7.1 '@noble/secp256k1': 1.7.1 '@scure/base': 1.2.4 - applesauce-core: 0.0.0-next-20250217190527(typescript@5.7.3) + applesauce-core: 0.0.0-next-20250219163923(typescript@5.7.3) debug: 4.4.0 nanoid: 5.1.0 nostr-tools: 2.10.4(typescript@5.7.3) @@ -8816,7 +8816,7 @@ snapshots: chardet@0.7.0: {} - chart.js@4.4.7: + chart.js@4.4.8: dependencies: '@kurkle/color': 0.3.4 @@ -8877,12 +8877,12 @@ snapshots: strip-ansi: 6.0.1 wrap-ansi: 7.0.0 - codemirror-json-schema@0.7.9(@codemirror/language@6.10.8)(@codemirror/lint@6.8.4)(@codemirror/state@6.5.2)(@codemirror/view@6.36.2)(@lezer/common@1.2.3): + codemirror-json-schema@0.7.9(@codemirror/language@6.10.8)(@codemirror/lint@6.8.4)(@codemirror/state@6.5.2)(@codemirror/view@6.36.3)(@lezer/common@1.2.3): dependencies: '@codemirror/language': 6.10.8 '@codemirror/lint': 6.8.4 '@codemirror/state': 6.5.2 - '@codemirror/view': 6.36.2 + '@codemirror/view': 6.36.3 '@lezer/common': 1.2.3 '@sagold/json-pointer': 5.1.2 '@shikijs/markdown-it': 1.29.2 @@ -8904,7 +8904,7 @@ snapshots: dependencies: '@codemirror/language': 6.10.8 '@codemirror/state': 6.5.2 - '@codemirror/view': 6.36.2 + '@codemirror/view': 6.36.3 '@lezer/common': 1.2.3 '@lezer/highlight': 1.2.1 json5: 2.2.3 @@ -8925,7 +8925,7 @@ snapshots: '@codemirror/lint': 6.8.4 '@codemirror/search': 6.5.9 '@codemirror/state': 6.5.2 - '@codemirror/view': 6.36.2 + '@codemirror/view': 6.36.3 color-convert@1.9.3: dependencies: @@ -9411,7 +9411,7 @@ snapshots: es-errors: 1.3.0 gopd: 1.2.0 - easymde@2.18.0: + easymde@2.19.0: dependencies: '@types/codemirror': 5.60.15 '@types/marked': 4.3.2 @@ -9672,7 +9672,7 @@ snapshots: fast-uri@3.0.6: {} - fast-xml-parser@4.5.1: + fast-xml-parser@4.5.2: dependencies: strnum: 1.0.5 @@ -9733,7 +9733,7 @@ snapshots: dependencies: d3-selection: 3.0.0 kapsule: 1.16.0 - preact: 10.26.0 + preact: 10.26.2 focus-lock@1.3.6: dependencies: @@ -9987,7 +9987,7 @@ snapshots: dependencies: function-bind: 1.1.2 - hast-util-to-html@9.0.4: + hast-util-to-html@9.0.5: dependencies: '@types/hast': 3.0.4 '@types/unist': 3.0.3 @@ -9996,12 +9996,12 @@ snapshots: hast-util-whitespace: 3.0.0 html-void-elements: 3.0.0 mdast-util-to-hast: 13.2.0 - property-information: 6.5.0 + property-information: 7.0.0 space-separated-tokens: 2.0.2 stringify-entities: 4.0.4 zwitch: 2.0.4 - hast-util-to-jsx-runtime@2.3.2: + hast-util-to-jsx-runtime@2.3.3: dependencies: '@types/estree': 1.0.6 '@types/hast': 3.0.4 @@ -10013,7 +10013,7 @@ snapshots: mdast-util-mdx-expression: 2.0.1 mdast-util-mdx-jsx: 3.2.0 mdast-util-mdxjs-esm: 2.0.1 - property-information: 6.5.0 + property-information: 7.0.0 space-separated-tokens: 2.0.2 style-to-object: 1.0.8 unist-util-position: 5.0.0 @@ -10942,7 +10942,7 @@ snapshots: block-stream2: 2.1.0 browser-or-node: 2.1.1 buffer-crc32: 0.2.13 - fast-xml-parser: 4.5.1 + fast-xml-parser: 4.5.2 ipaddr.js: 2.2.0 json-stream: 1.0.0 lodash: 4.17.21 @@ -11313,7 +11313,7 @@ snapshots: possible-typed-array-names@1.1.0: {} - postcss@8.5.2: + postcss@8.5.3: dependencies: nanoid: 3.3.8 picocolors: 1.1.1 @@ -11321,7 +11321,7 @@ snapshots: potpack@1.0.2: {} - preact@10.26.0: {} + preact@10.26.2: {} prebuild-install@7.1.3: dependencies: @@ -11359,7 +11359,7 @@ snapshots: object-assign: 4.1.1 react-is: 16.13.1 - property-information@6.5.0: {} + property-information@7.0.0: {} proxy-addr@2.0.7: dependencies: @@ -11429,9 +11429,9 @@ snapshots: transitivePeerDependencies: - dnd-core - react-chartjs-2@5.3.0(chart.js@4.4.7)(react@19.0.0): + react-chartjs-2@5.3.0(chart.js@4.4.8)(react@19.0.0): dependencies: - chart.js: 4.4.7 + chart.js: 4.4.8 react: 19.0.0 react-clientside-effect@1.2.7(react@19.0.0): @@ -11540,7 +11540,7 @@ snapshots: '@types/hast': 3.0.4 '@types/react': 18.3.18 devlop: 1.1.0 - hast-util-to-jsx-runtime: 2.3.2 + hast-util-to-jsx-runtime: 2.3.3 html-url-attributes: 3.0.1 mdast-util-to-hast: 13.2.0 react: 19.0.0 @@ -11617,10 +11617,10 @@ snapshots: '@remix-run/router': 1.22.0 react: 19.0.0 - react-simplemde-editor@5.2.0(easymde@2.18.0)(react-dom@19.0.0(react@19.0.0))(react@19.0.0): + react-simplemde-editor@5.2.0(easymde@2.19.0)(react-dom@19.0.0(react@19.0.0))(react@19.0.0): dependencies: '@types/codemirror': 5.60.15 - easymde: 2.18.0 + easymde: 2.19.0 react: 19.0.0 react-dom: 19.0.0(react@19.0.0) @@ -12404,7 +12404,7 @@ snapshots: three: 0.170.0 tinycolor2: 1.6.0 - three-render-objects@1.38.1(three@0.170.0): + three-render-objects@1.39.0(three@0.170.0): dependencies: '@tweenjs/tween.js': 25.0.0 accessor-fn: 1.5.1 @@ -12446,7 +12446,7 @@ snapshots: tinycolor2@1.6.0: {} - tinyglobby@0.2.10: + tinyglobby@0.2.11: dependencies: fdir: 6.4.3(picomatch@4.0.2) picomatch: 4.0.2 @@ -12676,7 +12676,7 @@ snapshots: utils-merge@1.0.1: {} - uuid@11.0.5: {} + uuid@11.1.0: {} uuid@7.0.3: {} @@ -12709,7 +12709,7 @@ snapshots: dependencies: debug: 4.4.0 pretty-bytes: 6.1.1 - tinyglobby: 0.2.10 + tinyglobby: 0.2.11 vite: 5.4.14(@types/node@22.13.4)(terser@5.39.0) workbox-build: 7.3.0(@types/babel__core@7.20.5) workbox-window: 7.3.0 @@ -12730,7 +12730,7 @@ snapshots: vite@5.4.14(@types/node@22.13.4)(terser@5.39.0): dependencies: esbuild: 0.21.5 - postcss: 8.5.2 + postcss: 8.5.3 rollup: 4.34.8 optionalDependencies: '@types/node': 22.13.4 diff --git a/src/components/layout/presets/simple-parent-view.tsx b/src/components/layout/presets/simple-parent-view.tsx index dfa8ce2c6..84ab30735 100644 --- a/src/components/layout/presets/simple-parent-view.tsx +++ b/src/components/layout/presets/simple-parent-view.tsx @@ -5,6 +5,7 @@ import { Flex, FlexProps, Spinner } from "@chakra-ui/react"; import { useBreakpointValue } from "../../../providers/global/breakpoint-provider"; import SimpleHeader from "./simple-header"; import { ErrorBoundary } from "../../error-boundary"; +import useScrollRestoreRef from "../../../hooks/use-scroll-restore"; export default function SimpleParentView({ children, @@ -30,8 +31,10 @@ export default function SimpleParentView({ const isMobile = useBreakpointValue({ base: true, lg: false }); const showMenu = !isMobile || !!match; + const ref = useScrollRestoreRef("parent"); + return ( - + {showMenu && ( {title && {actions}} @@ -43,6 +46,7 @@ export default function SimpleParentView({ overflowY={scroll ? "auto" : "hidden"} overflowX="hidden" flex={1} + ref={ref} > {children} diff --git a/src/components/layout/presets/simple-view.tsx b/src/components/layout/presets/simple-view.tsx index dcc518ed0..5f8bd0939 100644 --- a/src/components/layout/presets/simple-view.tsx +++ b/src/components/layout/presets/simple-view.tsx @@ -1,8 +1,8 @@ -import { ReactNode } from "react"; +import { ReactNode, useRef } from "react"; import { Flex, FlexProps } from "@chakra-ui/react"; import SimpleHeader from "./simple-header"; -import { UNSAFE_useScrollRestoration } from "react-router-dom"; +import useScrollRestoreRef from "../../../hooks/use-scroll-restore"; export default function SimpleView({ children, @@ -22,6 +22,7 @@ export default function SimpleView({ center?: boolean; scroll?: boolean; }) { + const ref = useScrollRestoreRef(); const content = ( ); - UNSAFE_useScrollRestoration; - return ( - + {actions} {scroll ? ( - + {content} ) : ( diff --git a/src/components/vertical-page-layout.tsx b/src/components/vertical-page-layout.tsx index 704e8cb07..d08b244ad 100644 --- a/src/components/vertical-page-layout.tsx +++ b/src/components/vertical-page-layout.tsx @@ -1,8 +1,11 @@ import { Box, ComponentWithAs, Flex, FlexProps } from "@chakra-ui/react"; +import useScrollRestoreRef from "../hooks/use-scroll-restore"; const VerticalPageLayout: ComponentWithAs<"div", FlexProps> = ({ children, ...props }: FlexProps) => { + const ref = useScrollRestoreRef(); + return ( - + {children} diff --git a/src/hooks/use-scroll-restore.ts b/src/hooks/use-scroll-restore.ts new file mode 100644 index 000000000..30bb2c953 --- /dev/null +++ b/src/hooks/use-scroll-restore.ts @@ -0,0 +1,28 @@ +import { useLayoutEffect, useRef } from "react"; +import { useLocation } from "react-router-dom"; + +export default function useScrollRestoreRef(name = "default") { + const ref = useRef(null); + const location = useLocation(); + const key = "scroll_" + name + "_" + location.key + location.pathname; + + useLayoutEffect(() => { + const container = ref.current; + // Restore scroll position on mount + if (container) { + const savedScroll = sessionStorage.getItem(key); + if (savedScroll) container.scrollTop = parseInt(savedScroll, 10); + } + + // Save scroll position before unmounting + return () => { + if (!container) return; + + const y = container?.scrollTop; + if (y) sessionStorage.setItem(key, String(y)); + else sessionStorage.removeItem(key); + }; + }, [key]); + + return ref; +} diff --git a/src/views/messages/chat.tsx b/src/views/messages/chat.tsx index 57610ae7d..a87da6b04 100644 --- a/src/views/messages/chat.tsx +++ b/src/views/messages/chat.tsx @@ -1,4 +1,4 @@ -import { memo, useCallback, useContext, useEffect, useMemo, useState } from "react"; +import { memo, useCallback, useContext, useEffect, useMemo, useRef, useState } from "react"; import { Button, ButtonGroup, Flex, IconButton } from "@chakra-ui/react"; import { UNSAFE_DataRouterContext, useLocation, useNavigate } from "react-router-dom"; import { mergeRelaySets } from "applesauce-core/helpers"; @@ -26,6 +26,7 @@ import decryptionCacheService from "../../services/decryption-cache"; import UserDnsIdentityIcon from "../../components/user/user-dns-identity-icon"; import UserAvatarLink from "../../components/user/user-avatar-link"; import SimpleView from "../../components/layout/presets/simple-view"; +import useScrollRestoreRef from "../../hooks/use-scroll-restore"; /** This is broken out from DirectMessageChatPage for performance reasons. Don't use outside of file */ const ChatLog = memo(({ messages }: { messages: NostrEvent[] }) => { @@ -111,6 +112,9 @@ function DirectMessageChatPage({ pubkey }: { pubkey: string }) { const callback = useTimelineCurserIntersectionCallback(loader); + // restore scroll on navigation + const scroll = useScrollRestoreRef(); + return ( @@ -140,7 +144,16 @@ function DirectMessageChatPage({ pubkey }: { pubkey: string }) { scroll={false} flush > - + diff --git a/src/views/messages/index.tsx b/src/views/messages/index.tsx index d7ec4b4b8..db7b25bb2 100644 --- a/src/views/messages/index.tsx +++ b/src/views/messages/index.tsx @@ -24,6 +24,8 @@ import useUserMailboxes from "../../hooks/use-user-mailboxes"; import useUserContacts from "../../hooks/use-user-contacts"; import useUserMutes from "../../hooks/use-user-mutes"; import SimpleParentView from "../../components/layout/presets/simple-parent-view"; +import useScrollRestoreRef from "../../hooks/use-scroll-restore"; +import useRouteStateValue from "../../hooks/use-route-state-value"; export function useDirectMessagesTimeline(pubkey?: string) { const mailboxes = useUserMailboxes(pubkey); @@ -78,7 +80,7 @@ function ConversationCard({ index, style, data }: ListChildComponentProps("contacts"); + const { value: filter, setValue: setFilter } = useRouteStateValue<"contacts" | "other" | "muted">("tab", "contacts"); const account = useActiveAccount()!; const contacts = useUserContacts(account?.pubkey, undefined, true)?.map((p) => p.pubkey); @@ -108,6 +110,7 @@ function MessagesHomePage() { }, [messages, account.pubkey, contacts?.length, filter, mutes?.pubkeys.size]); const callback = useTimelineCurserIntersectionCallback(loader); + const scroll = useScrollRestoreRef("chats"); return ( @@ -133,6 +136,7 @@ function MessagesHomePage() { itemCount={conversations?.length ?? 0} itemKey={(i, data) => data[i].myself + data[i].correspondent} itemSize={64} + innerRef={scroll} > {ConversationCard}