Commit Graph

152 Commits

Author SHA1 Message Date
vineyardbovines 54deb3ca0f feat(invite): drop themeKey prop from AddToWalletButton, share icon assets 2026-06-26 11:12:19 -04:00
vineyardbovines b98699c379 feat(bskyweb): match Pass Designer pass.json + assets literally 2026-06-26 10:57:26 -04:00
vineyardbovines 54106bde58 feat(bskyweb): drop logoText + DID, match Pass Designer field structure 2026-06-26 10:49:55 -04:00
vineyardbovines 1b6615b492 feat(bskyweb): iOS 27 posterGeneric layout with DID, PDS, MEMBER SINCE 2026-06-26 10:43:30 -04:00
vineyardbovines 2f35ef3cc9 feat(bskyweb): switch to generic pass type, drop strip image 2026-06-25 19:20:49 -04:00
vineyardbovines df26fbbbb0 feat(bskyweb): fetch displayName, add headerField USERNAME, Member Name secondary 2026-06-25 19:17:12 -04:00
vineyardbovines 8e51edec15 feat(bskyweb): minimal storeCard layout - drop primary handle field 2026-06-25 19:12:45 -04:00
vineyardbovines dd8f504f2f feat(bskyweb): regen icon+logo from Bluesky butterfly, drop strip composite 2026-06-25 19:10:03 -04:00
vineyardbovines af1c112a94 chore(bskyweb): use pass.xyz.blueskyweb.app as Pass Type ID 2026-06-25 18:30:33 -04:00
vineyardbovines e147fab647 fix(bskyweb): jpeg avatars, base64 wallet creds, require token secret 2026-06-25 18:14:31 -04:00
vineyardbovines f1d012000e fix(bskyweb): validate avatar URL scheme and bound fetch timeout
- Add SSRF defense: reject avatar URLs not starting with https://
- Add per-fetch timeout (5s) instead of relying on http.DefaultClient
- Document WebInviteWalletHero handler as unauthenticated by design
2026-06-25 16:38:57 -04:00
vineyardbovines 0a0fd72f17 feat(bskyweb): add /invite/pass.* and /invite/wallet/* routes 2026-06-25 16:34:41 -04:00
vineyardbovines 089ee66a30 fix(bskyweb): sanitize DID colons in Google Wallet object id 2026-06-25 16:23:36 -04:00
vineyardbovines 07a3b987ed feat(bskyweb): build Google Wallet save-to-wallet JWT 2026-06-25 16:14:50 -04:00
vineyardbovines 730369e4c1 feat(bskyweb): sign and zip Apple .pkpass bundles 2026-06-25 16:11:57 -04:00
vineyardbovines 5433c9b8d8 feat(bskyweb): composite invite pass strip image 2026-06-25 16:06:36 -04:00
vineyardbovines 52382be168 test(bskyweb): fail loudly on golden JSON unmarshal errors 2026-06-25 16:02:54 -04:00
vineyardbovines 1878d000f4 feat(bskyweb): build Apple pass.json for invite passes 2026-06-25 16:00:53 -04:00
vineyardbovines b9d19295c1 feat(bskyweb): add HMAC download token for invite passes 2026-06-25 15:57:28 -04:00
Michael Black 692d8e5d10 bskyweb: add isPartOf jsonld post attr (#10945) 2026-06-23 12:07:00 -05:00
Jim Calabro 5c04a41a11 Add a Metrics Server to bskyweb (#10863) 2026-06-11 08:52:12 -04:00
Michael Black 3095bbfbec bskyweb: add video objects to jsonld SEO (#10814) 2026-06-10 13:54:24 -05:00
Michael Black 38fb9c2165 bskyweb: meta noindex tag for non-indexable pages (#10803) 2026-06-09 15:54:54 -05:00
Michael Black be30947089 bskyweb: extract gallery media for SEO (#10813) 2026-06-09 11:10:33 -05:00
Samuel Newman c4f3a2cb89 [Chat] Rename invite route to /chat/ (#10782) 2026-06-08 09:26:23 -07:00
DS Boyce 73dae02df3 Create screen for managing chat requests (#10635) 2026-06-02 13:28:06 -07:00
Samuel Newman bccca283b9 [Chat] Add /c/:code handler to bskyweb (#10630) 2026-06-01 08:28:38 -07:00
DS Boyce ce4efc511b Refactor notification settings as dialogs (#10646)
Co-authored-by: Samuel Newman <mozzius@protonmail.com>
2026-05-29 09:35:14 -07:00
Samuel Newman a5e29442b5 [Chat] Add other chat route handlers to bskyweb (#10639) 2026-05-29 06:35:32 -07:00
Michael Black 60917d1125 Refactor and improve seo schema.org data (#10613) 2026-05-28 11:26:25 -05:00
Jim Calabro 28428a5750 Add Prometheus Metrics to Bskyweb (#10370) 2026-05-11 05:41:44 -04:00
bnewbold a7b6cd4504 bskyweb: update to golang v1.26 (#10208) 2026-04-10 10:25:40 -07:00
Eric Bailey 0937f522af Serve og:video tags on post URLs (#10039) 2026-03-11 11:46:27 -05:00
Spence Pope 2bd9811652 [APP-1928] add bot/automated account badge and self-labeling settings (#10008)
Co-authored-by: Eric Bailey <git@esb.lol>
2026-03-10 13:28:49 -05:00
Samuel Newman 8b1c47a499 bskyweb: use avatar thumbnail for post og:image fallback (#9923) 2026-03-02 22:28:16 +00:00
Sylwia 80c0aa35e2 Add CORS headers to /oembed API (#9845) 2026-02-19 22:07:49 -08:00
Samuel Newman 90d650def2 Use video thumbnail as og:image for posts with video embeds (#9877) 2026-02-16 15:35:29 +00:00
Samuel Newman ad7d49ef8f [Contacts] Contacts matching flow (#9486)
* add expo-contacts

* add expo-sms

* update copy

* add basic settings screen

* state machine, flow screen

* phone input screen

* otp screen

* tweak spacing

* resend code logic

* add layoutanimationconfig

* check availablility in settings screen

* get contacts

* matches screen

* search, temp setup for matches UI

* add a bunch of number parsing logic with libphonenumber

* cast to looser type

* rename sync to find

FCF (Find Contacts Flow)

* update geolocation hook

* nicer design for settings screen

* add completed state

* up border contrast

* update expo deps

* add pending spinner

* add country whitelist

* add empty state screen

* drop add more functionality

* upload -> import

* fix typo

* fix permission string

* copy updates

* rm envelope icon

* update sms copy

* add inviteinfo component

* woke is back

* [Contacts] NUXes (#9515)

* add a bunch of number parsing logic with libphonenumber

* add banner nux

* add announcement nux

* native only nux

* rm shitty animation

* move isNative check

* [Contacts] Onboarding step (#9489)

* add a bunch of number parsing logic with libphonenumber

* restructure onboarding to better support dynamic screens

* integrate existing flow into onboarding

* add intro step

* lift state up to allow going back freely

* gate onboarding by geo if unsupported country

* add done button to standalone flow

* [Contacts] Add `contact-match` notification type to feed (#9519)

* add a bunch of number parsing logic with libphonenumber

* add contact-joined notif type

* update string, api package

* Update NotificationFeedItem.tsx

* Update NotificationFeedItem.tsx

* Delete SyncContactsFlow.web.tsx

* fix follow back btn for this case

* [Contacts] API integration (#9487)

* api integration for flow

* copy tweak

* tweaks after running it

* wire up status page

* rename toast

* use api lib

* rm temp code

* maybe fix otp error

* clear code on error/resend

* add 1s delay to verify success

* update package versions

* Delete SyncContactsFlow.web.tsx

* try and fix yarn.lock lint

* even woker

* fix uppercase friends

* surfdude feedback

Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com>

* rm log

* allow resend on invalid code

* Update GetContacts.tsx

* overwrite country code if possible

* fix Apple's Best Feature

* devenv latest

* disable bounces

* interactive keyboard dismiss

* copy changes

* national format

* allow resending immediately

* move success state down a bit

* Update FindContactsSettings.tsx

* [Contacts] More onboarding changes (#9491)

* integrate existing flow into onboarding

* refreshed onboarding styles, rm stepper

* center content on web

* Add back dismiss button for internal onboarding

* Import sort

---------

Co-authored-by: Eric Bailey <git@esb.lol>

* add matches query to shadow

* add clockwise arrow

* update status design, fix dismiss, fix queries

* add metrics

* add more comments

* Update metrics.ts

* refetch both queries on PTR

* fix shadow state in matches page

* reduce empty space at bottom

* show contact info on matches

* filter out contacts without numbers at an earlier stage

* Error handling 

* get notifs working

* filter out businesses

* rm log

* remove TODO from learn more links

* try and exclude from web bundle

---------

Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com>
Co-authored-by: Eric Bailey <git@esb.lol>
2025-12-12 10:32:06 -08:00
Jim Calabro f7e61056f5 Sitemap Handlers for bsky.app (#9525)
* implement sitemap handlers for users

* ensure compressed payload is passed through

* improved handling

* reverse header order

* add the sitemap to robots.txt
2025-12-11 09:09:52 -05:00
Jim Calabro 7735183af4 Merge pull request #9475 from bluesky-social/jc/cache
Use FromCache Rather Than FromFile on Template Render
2025-12-03 16:47:46 -05:00
David Buchanan fd14bbfef9 move yt embed script to its own source file (#9337) 2025-11-06 10:15:49 -08:00
Hailey 4a9185b0f5 nit 2025-10-06 20:41:04 -07:00
Hailey 1354bf987d check for self labels when determining if we should hide embeds 2025-10-06 20:39:43 -07:00
Elijah Seed-Arita 7f4e302b85 feat: hide embeds for moderated posts (#9152) 2025-10-06 19:34:26 -07:00
hailey cbcce8c960 improve og profile card (#9051) 2025-09-22 11:05:49 -07:00
Caidan ac71ea235f improve: enhance post OpenGraph metadata with engagement data and auth handling (#9046) 2025-09-17 14:30:10 -07:00
Caidan Williams f5079b8158 feat: add OpenGraph metadata for feed URLs in bskyweb
Enable rich link previews when feed URLs are shared in iMessage, Slack, and other social platforms. Adds feed title, description, creator info, and avatar images to improve sharing experience.
2025-09-09 20:03:50 -07:00
Eric Bailey 535d4d6cf7 📓 Bookmarks (#8976)
* Add button to controls, respace

* Hook up shadow and mutation

* Add Bookmarks screen

* Build out Bookmarks screen

* Handle removals via shadow

* Use truncateAndInvalidate strategy

* Add empty state

* Add toasts

* Add undo buttons to toasts

* Stage NUX, needs image

* Finesse post controls

* New reply icon

* Use curvier variant of repost icon

* Prevent layout shift with align_start

* Update api pkg

* Swap in new image

* Limit spacing on desktop

* Rm decimals over 10k

* Better optimistic adding/removing

* Add metrics

* Comment

* Remove unused code block

* Remove debug limit

* Fork shadow for web/native

* Tweak alt

* add preventExpansion: true

* Refine hitslop

* Add count to anchor

* Reduce space in compact mode

---------

Co-authored-by: Samuel Newman <mozzius@protonmail.com>
2025-09-04 17:30:15 -05:00
Caidan Williams eb45154823 refactor: rename canonical filter to canonicalize_url for better clarity
- Rename filter from 'canonical' to 'canonicalize_url' to follow Pongo2
naming conventions
- Update function name from filterCanonical to filterCanonicalizeURL
- Update template usage in post.html and profile.html
- Update test function name and all references
2025-08-25 17:18:15 -07:00
Caidan Williams 685650b296 test: add comprehensive coverage for canonical URL filter
- Verify clean URL passthrough behavior
- Test query parameter removal functionality
- Test fragment removal functionality
- Test combined query params and fragments handling
- Ensure graceful degradation for malformed URLs
2025-08-25 16:04:45 -07:00