diff --git a/assets/icons/contacts_filled_corner2_rounded.svg b/assets/icons/contacts_filled_corner2_rounded.svg new file mode 100644 index 0000000000..4f116ca10b --- /dev/null +++ b/assets/icons/contacts_filled_corner2_rounded.svg @@ -0,0 +1 @@ + diff --git a/package.json b/package.json index ef97b9d71b..5d4d7ff872 100644 --- a/package.json +++ b/package.json @@ -225,7 +225,7 @@ "zod": "^3.20.2" }, "devDependencies": { - "@atproto/dev-env": "^0.3.193", + "@atproto/dev-env": "^0.3.195", "@babel/core": "^7.26.0", "@babel/preset-env": "^7.26.0", "@babel/runtime": "^7.26.0", diff --git a/src/components/icons/Contacts.tsx b/src/components/icons/Contacts.tsx index 4467a396d5..93a08e30d9 100644 --- a/src/components/icons/Contacts.tsx +++ b/src/components/icons/Contacts.tsx @@ -3,3 +3,7 @@ import {createSinglePathSVG} from './TEMPLATE' export const Contacts_Stroke2_Corner2_Rounded = createSinglePathSVG({ path: 'M7 4a1 1 0 0 0-1 1v12.05q.243-.05.5-.05H18V4H7Zm5 7c.894 0 1.57.188 2.068.513.445.29.683.647.806.937l.046.12c.285.836-.43 1.43-1.03 1.43h-3.78c-.6 0-1.315-.594-1.03-1.43l.046-.12c.123-.29.361-.647.806-.937C10.43 11.188 11.106 11 12 11Zm0-4a1.75 1.75 0 1 1 0 3.5A1.75 1.75 0 0 1 12 7Zm8 11a1 1 0 0 1-1 1H6.5a.5.5 0 0 0 0 1H19a1 1 0 1 1 0 2H6.5A2.5 2.5 0 0 1 4 19.5V5a3 3 0 0 1 3-3h11a2 2 0 0 1 2 2v14Z', }) + +export const Contacts_Filled_Corner2_Rounded = createSinglePathSVG({ + path: 'M7 2a3 3 0 0 0-3 3v14.5A2.5 2.5 0 0 0 6.5 22H19a1 1 0 1 0 0-2H6.5a.5.5 0 0 1 0-1H19a1 1 0 0 0 1-1V4a2 2 0 0 0-2-2H7Zm5 5a1.75 1.75 0 1 0 0 3.5A1.75 1.75 0 0 0 12 7Zm0 4c-.894 0-1.57.188-2.068.512a2.07 2.07 0 0 0-.852 1.058c-.286.838.432 1.43 1.03 1.43h3.78c.598 0 1.316-.592 1.03-1.43a2.07 2.07 0 0 0-.852-1.058C13.57 11.189 12.894 11 12 11Z', +}) diff --git a/src/state/queries/notifications/types.ts b/src/state/queries/notifications/types.ts index a7b837086b..1b66dd1759 100644 --- a/src/state/queries/notifications/types.ts +++ b/src/state/queries/notifications/types.ts @@ -49,6 +49,7 @@ type OtherNotificationType = | 'like-via-repost' | 'repost-via-repost' | 'subscribed-post' + | 'contact-match' | 'unknown' type FeedNotificationBase = { diff --git a/src/view/com/notifications/NotificationFeedItem.tsx b/src/view/com/notifications/NotificationFeedItem.tsx index 6d3f57b717..8d622f3bf0 100644 --- a/src/view/com/notifications/NotificationFeedItem.tsx +++ b/src/view/com/notifications/NotificationFeedItem.tsx @@ -1,11 +1,4 @@ -import { - memo, - type ReactElement, - useCallback, - useEffect, - useMemo, - useState, -} from 'react' +import {memo, useCallback, useEffect, useMemo, useState} from 'react' import { Animated, type GestureResponderEvent, @@ -61,6 +54,7 @@ import { ChevronBottom_Stroke2_Corner0_Rounded as ChevronDownIcon, ChevronTop_Stroke2_Corner0_Rounded as ChevronUpIcon, } from '#/components/icons/Chevron' +import {Contacts_Filled_Corner2_Rounded as ContactsIconFilled} from '#/components/icons/Contacts' import {Heart2_Filled_Stroke2_Corner0_Rounded as HeartIconFilled} from '#/components/icons/Heart2' import {PersonPlus_Filled_Stroke2_Corner0_Rounded as PersonPlusIcon} from '#/components/icons/Person' import {PlusLarge_Stroke2_Corner0_Rounded as PlusIcon} from '#/components/icons/Plus' @@ -116,6 +110,7 @@ let NotificationFeedItem = ({ break } case 'follow': + case 'contact-match': case 'verified': case 'unverified': { return makeProfileLink(item.notification.author) @@ -279,7 +274,7 @@ let NotificationFeedItem = ({ : '' let a11yLabel = '' - let notificationContent: ReactElement + let notificationContent: React.ReactElement let icon = ( + } else if (item.type === 'contact-match') { + a11yLabel = _(msg`Your contact ${firstAuthorName} is on Bluesky`) + notificationContent = ( + Your contact {firstAuthorLink} is on Bluesky + ) + icon = ( + + ) } else if (item.type === 'feedgen-like') { a11yLabel = hasMultipleAuthors ? _( @@ -438,7 +441,7 @@ let NotificationFeedItem = ({ notificationContent = hasMultipleAuthors ? ( {firstAuthorLink} and{' '} - + {firstAuthorLink} and{' '} - + - {item.type === 'follow' && !hasMultipleAuthors && !isFollowBack ? ( + {(item.type === 'follow' && !hasMultipleAuthors && !isFollowBack) || + (item.type === 'contact-match' && + !item.notification.author.viewer?.following) ? ( ) : null} {item.type === 'post-like' || @@ -809,6 +814,7 @@ function FollowBackButton({profile}: {profile: AppBskyActorDefs.ProfileView}) { } const isFollowing = profileShadow.viewer.following + const isFollowedBy = profileShadow.viewer.followedBy const followingLabel = _( msg({ message: 'Following', @@ -832,14 +838,14 @@ function FollowBackButton({profile}: {profile: AppBskyActorDefs.ProfileView}) { ) : ( )} diff --git a/yarn.lock b/yarn.lock index b105073342..ddcf78c48c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -82,21 +82,7 @@ "@atproto/xrpc" "^0.7.6" "@atproto/xrpc-server" "^0.10.0" -"@atproto/api@^0.18.4": - version "0.18.4" - resolved "https://registry.yarnpkg.com/@atproto/api/-/api-0.18.4.tgz#e6742f3b81acec2bcf63dd3787304166eb2891cb" - integrity sha512-+kSxto/GRFXRFFlGwfERrwEKnC6OqTgK34BUToer/Fv08q4WMR+GYPRabbWlnDoJWu3owcQfeYdcblQ88vi16g== - dependencies: - "@atproto/common-web" "^0.4.6" - "@atproto/lexicon" "^0.5.2" - "@atproto/syntax" "^0.4.2" - "@atproto/xrpc" "^0.7.6" - await-lock "^2.2.2" - multiformats "^9.9.0" - tlds "^1.234.0" - zod "^3.23.8" - -"@atproto/api@^0.18.6": +"@atproto/api@^0.18.5", "@atproto/api@^0.18.6": version "0.18.6" resolved "https://registry.yarnpkg.com/@atproto/api/-/api-0.18.6.tgz#04c26b97bda01cbe276dea523de6e4a184894c18" integrity sha512-dkzy2OHSAGgzG9GExvOiwRY73EzVD2AiD3nksng+V6erG0kwLfbmVYjoP9mq9Y16BCXr/7q9lekfogthqU614Q== @@ -128,23 +114,23 @@ multiformats "^9.9.0" uint8arrays "3.0.0" -"@atproto/bsky@^0.0.199": - version "0.0.199" - resolved "https://registry.yarnpkg.com/@atproto/bsky/-/bsky-0.0.199.tgz#44ee12e0192b0f946745317bed474525f45e02c9" - integrity sha512-DtW1G5k8dSBP5rs3fid0RRV+5efsWe2WG0AB1MxhnhU8718CnpGsPX8sx6uZtMvaTKgDynfN7fPNtaxNomVGFA== +"@atproto/bsky@^0.0.201": + version "0.0.201" + resolved "https://registry.yarnpkg.com/@atproto/bsky/-/bsky-0.0.201.tgz#b97fe2690c147ac4b0a20a4d970c6ca0dd9da791" + integrity sha512-74QIjyhBRQyTt/GICMSMnuKc+ltDt+A2OoLxY7rkwuf1M0+PXj0pS8yA42j0pUM/mvKi5wxCV6d0+0GUUKQXUw== dependencies: "@atproto-labs/fetch-node" "0.2.0" "@atproto-labs/xrpc-utils" "0.0.24" - "@atproto/api" "^0.18.4" - "@atproto/common" "^0.5.2" + "@atproto/api" "^0.18.6" + "@atproto/common" "^0.5.3" "@atproto/crypto" "^0.4.5" "@atproto/did" "^0.2.3" "@atproto/identity" "^0.4.10" - "@atproto/lexicon" "^0.5.2" - "@atproto/repo" "^0.8.11" - "@atproto/sync" "^0.1.38" + "@atproto/lexicon" "^0.6.0" + "@atproto/repo" "^0.8.12" + "@atproto/sync" "^0.1.39" "@atproto/syntax" "^0.4.2" - "@atproto/xrpc-server" "^0.10.2" + "@atproto/xrpc-server" "^0.10.3" "@bufbuild/protobuf" "^1.5.0" "@connectrpc/connect" "^1.1.4" "@connectrpc/connect-express" "^1.1.4" @@ -244,6 +230,18 @@ multiformats "^9.9.0" pino "^8.21.0" +"@atproto/common@^0.5.3": + version "0.5.3" + resolved "https://registry.yarnpkg.com/@atproto/common/-/common-0.5.3.tgz#256883425c854a21fc9946b1501cbd0bb4c49d69" + integrity sha512-jMC9ikl8QbJcnh21upe9Gb9mIaSJWsdp8sgaelmntUtChWnxxvCC/pI3TBX11PT7XlHUE6UyuvY+S3hh6WZVEg== + dependencies: + "@atproto/common-web" "^0.4.7" + "@atproto/lex-cbor" "0.0.3" + "@atproto/lex-data" "0.0.3" + iso-datestring-validator "^2.2.2" + multiformats "^9.9.0" + pino "^8.21.0" + "@atproto/crypto@0.1.0": version "0.1.0" resolved "https://registry.yarnpkg.com/@atproto/crypto/-/crypto-0.1.0.tgz#bc73a479f9dbe06fa025301c182d7f7ab01bc568" @@ -273,23 +271,23 @@ "@noble/hashes" "^1.6.1" uint8arrays "3.0.0" -"@atproto/dev-env@^0.3.193": - version "0.3.193" - resolved "https://registry.yarnpkg.com/@atproto/dev-env/-/dev-env-0.3.193.tgz#198333a46d3f337f36fe30c7456c6287cebc8393" - integrity sha512-QPftK8FbVLGrj9IhDnPP7JCIIweYNXZ/zeaZAjolZxpIaCouPHYXXgRMZqrYxN8+RmO0s6T9czm5+xaFuXjkkw== +"@atproto/dev-env@^0.3.195": + version "0.3.195" + resolved "https://registry.yarnpkg.com/@atproto/dev-env/-/dev-env-0.3.195.tgz#6cbcff3845747448bc5bf1573f1b670655ea1750" + integrity sha512-jcwQuflQZSAABAJEgA7/dgCHsUmg7ll3Rmrse0vaciIa2Eg2m7H7adBw94n5TxyR8NdplsLAs7tsymrFL9/w8Q== dependencies: - "@atproto/api" "^0.18.4" - "@atproto/bsky" "^0.0.199" + "@atproto/api" "^0.18.6" + "@atproto/bsky" "^0.0.201" "@atproto/bsync" "^0.0.23" - "@atproto/common-web" "^0.4.6" + "@atproto/common-web" "^0.4.7" "@atproto/crypto" "^0.4.5" "@atproto/identity" "^0.4.10" - "@atproto/lexicon" "^0.5.2" - "@atproto/ozone" "^0.1.159" - "@atproto/pds" "^0.4.197" - "@atproto/sync" "^0.1.38" + "@atproto/lexicon" "^0.6.0" + "@atproto/ozone" "^0.1.160" + "@atproto/pds" "^0.4.199" + "@atproto/sync" "^0.1.39" "@atproto/syntax" "^0.4.2" - "@atproto/xrpc-server" "^0.10.2" + "@atproto/xrpc-server" "^0.10.3" "@did-plc/lib" "^0.0.1" "@did-plc/server" "^0.0.1" dotenv "^16.0.3" @@ -330,7 +328,7 @@ multiformats "^9.9.0" zod "^3.23.8" -"@atproto/lex-cbor@0.0.2", "@atproto/lex-cbor@^0.0.2": +"@atproto/lex-cbor@0.0.2": version "0.0.2" resolved "https://registry.yarnpkg.com/@atproto/lex-cbor/-/lex-cbor-0.0.2.tgz#b05035940407f64dfad80289855776814ff85314" integrity sha512-sTr3UCL2SgxEoYVpzJGgWTnNl4TpngP5tMcRyaOvi21Se4m3oR4RDsoVDPz8AS6XphiteRwzwPstquN7aWWMbA== @@ -339,17 +337,26 @@ multiformats "^9.9.0" tslib "^2.8.1" -"@atproto/lex-client@0.0.3": +"@atproto/lex-cbor@0.0.3", "@atproto/lex-cbor@^0.0.3": version "0.0.3" - resolved "https://registry.yarnpkg.com/@atproto/lex-client/-/lex-client-0.0.3.tgz#07079d42fe7b09fa44dde160f72579bed7aee486" - integrity sha512-EvS6tmRA5jJwsWleVpxRYpbNpfm9a9VT2A/muFdPuvUuYRPzVKm2cKCperwEnQmT7HuTA7p35dIg/0if75V0Qw== + resolved "https://registry.yarnpkg.com/@atproto/lex-cbor/-/lex-cbor-0.0.3.tgz#13712fa5216cd336ebbd31fbd34d35bf6ea21492" + integrity sha512-N8lCV3kK5ZcjSOWxKLWqzlnaSpK4isjXRZ0EqApl/5y9KB64s78hQ/U3KIE5qnPRlBbW5kSH3YACoU27u9nTOA== dependencies: - "@atproto/lex-data" "0.0.2" - "@atproto/lex-json" "0.0.2" - "@atproto/lex-schema" "0.0.3" + "@atproto/lex-data" "0.0.3" + multiformats "^9.9.0" tslib "^2.8.1" -"@atproto/lex-data@0.0.2", "@atproto/lex-data@^0.0.2": +"@atproto/lex-client@0.0.4": + version "0.0.4" + resolved "https://registry.yarnpkg.com/@atproto/lex-client/-/lex-client-0.0.4.tgz#04fca87296f3177ba122e41bed89d36b4d81b01a" + integrity sha512-tGaenywYo6IvzKKMYuZB+sMBQNDkQ53PLz/NM0WeXnaa/e58VhOGzwVLnNSI/QR9qLlwHFfMf8AIFZyAVHBWCw== + dependencies: + "@atproto/lex-data" "0.0.3" + "@atproto/lex-json" "0.0.3" + "@atproto/lex-schema" "0.0.4" + tslib "^2.8.1" + +"@atproto/lex-data@0.0.2": version "0.0.2" resolved "https://registry.yarnpkg.com/@atproto/lex-data/-/lex-data-0.0.2.tgz#f90e7ac52dd6056199a84efc7a3c5196de7ceb63" integrity sha512-euV2rDGi+coH8qvZOU+ieUOEbwPwff9ca6IiXIqjZJ76AvlIpj7vtAyIRCxHUW2BoU6h9yqyJgn9MKD2a7oIwg== @@ -360,7 +367,7 @@ uint8arrays "3.0.0" unicode-segmenter "^0.14.0" -"@atproto/lex-data@0.0.3": +"@atproto/lex-data@0.0.3", "@atproto/lex-data@^0.0.3": version "0.0.3" resolved "https://registry.yarnpkg.com/@atproto/lex-data/-/lex-data-0.0.3.tgz#1ce1bd19e17af41b2991a2a02ad439a136dec4e9" integrity sha512-ivo1IpY/EX+RIpxPgCf4cPhQo5bfu4nrpa1vJCt8hCm9SfoonJkDFGa0n4SMw4JnXZoUcGcrJ46L+D8bH6GI2g== @@ -371,12 +378,12 @@ uint8arrays "3.0.0" unicode-segmenter "^0.14.0" -"@atproto/lex-document@0.0.4": - version "0.0.4" - resolved "https://registry.yarnpkg.com/@atproto/lex-document/-/lex-document-0.0.4.tgz#2ada83e30bcef84cc0ff010c5dd8eb2514160731" - integrity sha512-oYT3MHcAkXgPfgSzSgZuBy6R/kxkIdFAr4ohcykGquyxm0ZLWFWilgKzqKiOSzFHY0SX+Q9sWKGVt5y45ebLIw== +"@atproto/lex-document@0.0.5": + version "0.0.5" + resolved "https://registry.yarnpkg.com/@atproto/lex-document/-/lex-document-0.0.5.tgz#8d4851b351149ba673c1de9c1898c3c9ebd8b4b3" + integrity sha512-faGcwsupdtvoFZ8ILEu14MYJ0z/pCiQ+Yu4WEkVtJvy8jIkFxeZ8MxxZgm8KrlSt6jxsyYvMpscQCtYpVmafFQ== dependencies: - "@atproto/lex-schema" "0.0.3" + "@atproto/lex-schema" "0.0.4" core-js "^3" tslib "^2.8.1" @@ -396,27 +403,27 @@ "@atproto/lex-data" "0.0.3" tslib "^2.8.1" -"@atproto/lex-resolver@0.0.4": - version "0.0.4" - resolved "https://registry.yarnpkg.com/@atproto/lex-resolver/-/lex-resolver-0.0.4.tgz#769b10e95860a055bce6d7dbf876f2d7612b1c7a" - integrity sha512-ZEZYXGCYXhDy9kxPOr/WacXr62gg4R9zNf2VNk6Y/BZ+9hycW/rlEoLMo6rAsG8PxvA6D3h3o87z6xQZEI/oyw== +"@atproto/lex-resolver@0.0.5": + version "0.0.5" + resolved "https://registry.yarnpkg.com/@atproto/lex-resolver/-/lex-resolver-0.0.5.tgz#9d0645c43423cb99b491ca8e658770395d2cd630" + integrity sha512-gBqHY1HS/g2rxuk8CPzB1cmMxmOWK897/jIboMhYDXnuavg8zh54eljCFXr8GvaJdo5DnMGyBEilHNppJOD4mg== dependencies: "@atproto-labs/did-resolver" "0.2.4" "@atproto/crypto" "0.4.5" - "@atproto/lex-client" "0.0.3" - "@atproto/lex-data" "0.0.2" - "@atproto/lex-document" "0.0.4" - "@atproto/lex-schema" "0.0.3" - "@atproto/repo" "0.8.11" + "@atproto/lex-client" "0.0.4" + "@atproto/lex-data" "0.0.3" + "@atproto/lex-document" "0.0.5" + "@atproto/lex-schema" "0.0.4" + "@atproto/repo" "0.8.12" "@atproto/syntax" "0.4.2" tslib "^2.8.1" -"@atproto/lex-schema@0.0.3": - version "0.0.3" - resolved "https://registry.yarnpkg.com/@atproto/lex-schema/-/lex-schema-0.0.3.tgz#2f5a65b3592577d0056e51742f834991093a1cd3" - integrity sha512-GI0YWGRxTa/qQMHfkIrWzdEALN64ZMcKjD5lHIwuggDg8a2TwLvaN0WafSnivJGZ9m7oUNu5b97MJiDoJdeAUw== +"@atproto/lex-schema@0.0.4": + version "0.0.4" + resolved "https://registry.yarnpkg.com/@atproto/lex-schema/-/lex-schema-0.0.4.tgz#382998f5c384b864a1bc0c00bd073c1168503895" + integrity sha512-WlF+w/OH16KR9XYW9J7hNEDgHp37uG2EWm8/iJknDFsWYjbhgl71x1jcqqCM8BcDxAYxyJLOvPuadOC6cG5JjA== dependencies: - "@atproto/lex-data" "0.0.2" + "@atproto/lex-data" "0.0.3" "@atproto/syntax" "0.4.2" tslib "^2.8.1" @@ -464,22 +471,22 @@ optionalDependencies: "@atproto/oauth-provider-api" "0.3.4" -"@atproto/oauth-provider@^0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@atproto/oauth-provider/-/oauth-provider-0.14.0.tgz#bcae0a70250a0ca93853a90f75538acacbda46a4" - integrity sha512-eznIEvLu7iZ6mg90R8mn+WiCFkMJywHjB0wn5a9/ajWuUWPHhNSxllWy1BXtwjLvC1g1ECAwAXAY+x3Y8yfgaA== +"@atproto/oauth-provider@^0.14.1": + version "0.14.1" + resolved "https://registry.yarnpkg.com/@atproto/oauth-provider/-/oauth-provider-0.14.1.tgz#b1fd01408bb988ee29f19e2ab6ab323a31ea7590" + integrity sha512-n0qHOhUfSwp6w3i54tC5IjmeE5raoxEyxchJkqvoj/xWBiysdMJwpLTIvQ90rcXbjIA22Jv58oQ/mtx07w82xA== dependencies: "@atproto-labs/fetch" "0.2.3" "@atproto-labs/fetch-node" "0.2.0" "@atproto-labs/pipe" "0.1.1" "@atproto-labs/simple-store" "0.3.0" "@atproto-labs/simple-store-memory" "0.1.4" - "@atproto/common" "^0.5.2" + "@atproto/common" "^0.5.3" "@atproto/did" "0.2.3" "@atproto/jwk" "0.6.0" "@atproto/jwk-jose" "0.1.11" - "@atproto/lex-document" "0.0.4" - "@atproto/lex-resolver" "0.0.4" + "@atproto/lex-document" "0.0.5" + "@atproto/lex-resolver" "0.0.5" "@atproto/oauth-provider-api" "0.3.4" "@atproto/oauth-provider-frontend" "0.2.5" "@atproto/oauth-provider-ui" "0.3.6" @@ -515,20 +522,20 @@ "@atproto/jwk" "0.6.0" zod "^3.23.8" -"@atproto/ozone@^0.1.159": - version "0.1.159" - resolved "https://registry.yarnpkg.com/@atproto/ozone/-/ozone-0.1.159.tgz#217408581120754d3711eb68699e213d78757052" - integrity sha512-d2XVTXA0KA5hbXRgEek+jgafQ3Im6xBEJ7encsVVMc3bf6KTd7zegXmHKHddo7MS8qJbwcOgzj9N/bUQw7DuCw== +"@atproto/ozone@^0.1.160": + version "0.1.160" + resolved "https://registry.yarnpkg.com/@atproto/ozone/-/ozone-0.1.160.tgz#1131fa6c0d1b37e3a7b0aaa2f788b36eb2f7a750" + integrity sha512-p0CP5/1Anv1qbxoRBC4IOaSkFe28Y3nKmzfrx0Z6in/o8VF/LZ9dhuW1UgrDQs4PyMzMOar3UFfO2ZUL4Gg58A== dependencies: - "@atproto/api" "^0.18.4" - "@atproto/common" "^0.5.2" + "@atproto/api" "^0.18.5" + "@atproto/common" "^0.5.3" "@atproto/crypto" "^0.4.5" "@atproto/identity" "^0.4.10" - "@atproto/lexicon" "^0.5.2" + "@atproto/lexicon" "^0.6.0" "@atproto/syntax" "^0.4.2" "@atproto/ws-client" "^0.0.3" - "@atproto/xrpc" "^0.7.6" - "@atproto/xrpc-server" "^0.10.2" + "@atproto/xrpc" "^0.7.7" + "@atproto/xrpc-server" "^0.10.3" "@did-plc/lib" "^0.0.1" compression "^1.7.4" cors "^2.8.5" @@ -546,30 +553,30 @@ undici "^6.14.1" ws "^8.12.0" -"@atproto/pds@^0.4.197": - version "0.4.197" - resolved "https://registry.yarnpkg.com/@atproto/pds/-/pds-0.4.197.tgz#16992c19a6b45dfe1c802b17f6702b6af113ffd9" - integrity sha512-KzPKo00/eOgsShklVLXlHT5ogKVXcOkMLt3NeEQzC3IOQRvAC4BRjPrFs2zRuQoWfTD3ClSpGVsF2zN5bQw+KQ== +"@atproto/pds@^0.4.199": + version "0.4.199" + resolved "https://registry.yarnpkg.com/@atproto/pds/-/pds-0.4.199.tgz#8cdf10ad449c57206b4820191ecfb358346908bd" + integrity sha512-EtXVzPusvLVRIhjUutKcb75lPN9oWD24bZGbRrDaehcbI0QXbosGek/vgil0ZFLn0YW3G/BssM0K63KUotscrw== dependencies: "@atproto-labs/fetch-node" "0.2.0" "@atproto-labs/simple-store" "0.3.0" "@atproto-labs/simple-store-memory" "0.1.4" "@atproto-labs/simple-store-redis" "0.0.1" "@atproto-labs/xrpc-utils" "0.0.24" - "@atproto/api" "^0.18.4" + "@atproto/api" "^0.18.6" "@atproto/aws" "^0.2.31" - "@atproto/common" "^0.5.2" + "@atproto/common" "^0.5.3" "@atproto/crypto" "^0.4.5" "@atproto/identity" "^0.4.10" - "@atproto/lex-cbor" "^0.0.2" - "@atproto/lex-data" "^0.0.2" - "@atproto/lexicon" "^0.5.2" - "@atproto/oauth-provider" "^0.14.0" + "@atproto/lex-cbor" "^0.0.3" + "@atproto/lex-data" "^0.0.3" + "@atproto/lexicon" "^0.6.0" + "@atproto/oauth-provider" "^0.14.1" "@atproto/oauth-scopes" "^0.3.0" - "@atproto/repo" "^0.8.11" + "@atproto/repo" "^0.8.12" "@atproto/syntax" "^0.4.2" - "@atproto/xrpc" "^0.7.6" - "@atproto/xrpc-server" "^0.10.2" + "@atproto/xrpc" "^0.7.7" + "@atproto/xrpc-server" "^0.10.3" "@did-plc/lib" "^0.0.4" "@hapi/address" "^5.1.1" better-sqlite3 "^10.0.0" @@ -599,7 +606,22 @@ undici "^6.19.8" zod "^3.23.8" -"@atproto/repo@0.8.11", "@atproto/repo@^0.8.11": +"@atproto/repo@0.8.12", "@atproto/repo@^0.8.12": + version "0.8.12" + resolved "https://registry.yarnpkg.com/@atproto/repo/-/repo-0.8.12.tgz#f1caee2ff954a917f921569eac22ab669b39a0af" + integrity sha512-QpVTVulgfz5PUiCTELlDBiRvnsnwrFWi+6CfY88VwXzrRHd9NE8GItK7sfxQ6U65vD/idH8ddCgFrlrsn1REPQ== + dependencies: + "@atproto/common" "^0.5.3" + "@atproto/common-web" "^0.4.7" + "@atproto/crypto" "^0.4.5" + "@atproto/lexicon" "^0.6.0" + "@ipld/dag-cbor" "^7.0.0" + multiformats "^9.9.0" + uint8arrays "3.0.0" + varint "^6.0.0" + zod "^3.23.8" + +"@atproto/repo@^0.8.11": version "0.8.11" resolved "https://registry.yarnpkg.com/@atproto/repo/-/repo-0.8.11.tgz#3698e4164811adbeb269fd4412639babc4be90ca" integrity sha512-b/WCu5ITws4ILHoXiZz0XXB5U9C08fUVzkBQDwpnme62GXv8gUaAPL/ttG61OusW09ARwMMQm4vxoP0hTFg+zA== @@ -614,17 +636,17 @@ varint "^6.0.0" zod "^3.23.8" -"@atproto/sync@^0.1.38": - version "0.1.38" - resolved "https://registry.yarnpkg.com/@atproto/sync/-/sync-0.1.38.tgz#26244d1e916e6b5c30545eb55c3c3e68cdf1b4a8" - integrity sha512-2rE0SM21Nk4hWw/XcIYFnzlWO6/gBg8mrzuWbOvDhD49sA/wW4zyjaHZ5t1gvk28/SLok2VZiIR8nYBdbf7F5Q== +"@atproto/sync@^0.1.39": + version "0.1.39" + resolved "https://registry.yarnpkg.com/@atproto/sync/-/sync-0.1.39.tgz#0bb4a2a7391cfe73cf0be0a3905bc75d699ddf43" + integrity sha512-JE0flkb6cDHc1dFNclkX6QB2PYXR+Taa1HDP7prI1lyFtkEASO0AOt+VtbL2JKhEa7VEy8ckko1T9glpCwGNYA== dependencies: - "@atproto/common" "^0.5.0" + "@atproto/common" "^0.5.3" "@atproto/identity" "^0.4.10" - "@atproto/lexicon" "^0.5.2" - "@atproto/repo" "^0.8.11" - "@atproto/syntax" "^0.4.1" - "@atproto/xrpc-server" "^0.10.0" + "@atproto/lexicon" "^0.6.0" + "@atproto/repo" "^0.8.12" + "@atproto/syntax" "^0.4.2" + "@atproto/xrpc-server" "^0.10.3" multiformats "^9.9.0" p-queue "^6.6.2" ws "^8.12.0" @@ -647,7 +669,7 @@ "@atproto/common" "^0.5.0" ws "^8.12.0" -"@atproto/xrpc-server@^0.10.0", "@atproto/xrpc-server@^0.10.2": +"@atproto/xrpc-server@^0.10.0": version "0.10.2" resolved "https://registry.yarnpkg.com/@atproto/xrpc-server/-/xrpc-server-0.10.2.tgz#b68f42a7b6df5bb8081525e5c981a709b9b02739" integrity sha512-5AzN8xoV8K1Omn45z6qKH414+B3Z35D536rrScwF3aQGDEdpObAS+vya9UoSg+Gvm2+oOtVEbVri7riLTBW3Vg== @@ -666,6 +688,25 @@ ws "^8.12.0" zod "^3.23.8" +"@atproto/xrpc-server@^0.10.3": + version "0.10.3" + resolved "https://registry.yarnpkg.com/@atproto/xrpc-server/-/xrpc-server-0.10.3.tgz#94daece26a697e0faa50a776e943a5ff34fb5959" + integrity sha512-jcYykZ8dJDGtEsnIM3ExSeoACYgivizHgrfh/WO/b2rr48/epTPVOdupiqs2lSM7RJ6yIqir9/3Az7AD4GaZJg== + dependencies: + "@atproto/common" "^0.5.3" + "@atproto/crypto" "^0.4.5" + "@atproto/lex-cbor" "0.0.3" + "@atproto/lex-data" "0.0.3" + "@atproto/lexicon" "^0.6.0" + "@atproto/ws-client" "^0.0.3" + "@atproto/xrpc" "^0.7.7" + express "^4.17.2" + http-errors "^2.0.0" + mime-types "^2.1.35" + rate-limiter-flexible "^2.4.1" + ws "^8.12.0" + zod "^3.23.8" + "@atproto/xrpc@^0.7.6": version "0.7.6" resolved "https://registry.yarnpkg.com/@atproto/xrpc/-/xrpc-0.7.6.tgz#bc12b0e37f81fa76589691634d4fac9774fd0cb5"