discourse/lib/onebox
Rafael dos Santos Silva 6096c3551b
FEATURE: Native Reddit embeds for oneboxes (#39162)
Reddit increasingly blocks server-side fetches from Discourse instances,
which makes the current Reddit onebox path unreliable. This switches
Reddit oneboxes to Reddit's native embed path instead of trying to fetch
and render post metadata on the server.

Changes:
- replace the Reddit onebox engine with a native `embed.reddit.com`
iframe
- listen for Reddit resize messages so embeds grow to the correct height
- remove the now-unused Reddit OAuth site settings and auth mixin
- update Reddit onebox specs and add a JS unit test for the resize
handler

Screenshots:
<img width="704" height="1861" alt="image"
src="https://github.com/user-attachments/assets/ce332dfb-c76b-4700-ab26-fae9123cbd8c"
/>
2026-04-09 11:56:22 -03:00
..
engine FEATURE: Native Reddit embeds for oneboxes (#39162) 2026-04-09 11:56:22 -03:00
mixins FEATURE: Native Reddit embeds for oneboxes (#39162) 2026-04-09 11:56:22 -03:00
templates FEATURE: Include PR number in the GitHub PR oneboxes (#37409) 2026-01-30 11:17:57 -08:00
domain_checker.rb DEV: Fix various rubocop lints (#24749) 2023-12-06 23:25:00 +01:00
engine.rb SECURITY: Restrict allowed URL patterns 2025-02-04 13:32:34 -03:00
file_type_finder.rb DEV: Apply syntax_tree formatting to lib/* 2023-01-09 12:10:19 +00:00
helpers.rb FIX: Support Dropbox /scl/ URL format in video and image oneboxes (#38394) 2026-03-11 10:37:57 +01:00
json_ld.rb DEV: Replace custom Onebox blank implementation with ActiveSupport (#23827) 2023-10-07 19:54:26 +02:00
layout.rb DEV: Replace custom Onebox symbolize_keys implementation with ActiveSupport (#23828) 2023-10-09 09:32:09 +02:00
layout_support.rb DEV: Apply syntax_tree formatting to lib/* 2023-01-09 12:10:19 +00:00
matcher.rb DEV: Apply syntax_tree formatting to lib/* 2023-01-09 12:10:19 +00:00
movie.rb DEV: Apply syntax_tree formatting to lib/* 2023-01-09 12:10:19 +00:00
normalizer.rb FIX: Don't escape HTML entities twice in oneboxes (#37141) 2026-01-16 11:40:18 +01:00
oembed.rb DEV: Replace custom Onebox symbolize_keys implementation with ActiveSupport (#23828) 2023-10-09 09:32:09 +02:00
open_graph.rb DEV: Replace custom Onebox blank implementation with ActiveSupport (#23827) 2023-10-07 19:54:26 +02:00
preview.rb DEV: Remove logical OR assignment of constants (#29201) 2024-10-16 10:09:07 +08:00
sanitize_config.rb DEV: Bump rubocop_discourse (#29608) 2024-11-06 06:27:49 +08:00
status_check.rb SECURITY: Expand and improve SSRF Protections (#18815) 2022-11-01 16:33:17 +00:00
template_support.rb
view.rb