Did you take a look at how other components handle that?
I’d assume it’s save. At least I have the impression the official category banner component uses html-safe without any separate escaping too
This is an internal plugin that we use on our hosting (similar to CDCK “hosted site”) that adds some extra features that we need to host the site. This specific line replaces the multisite “not found” with a more verbose error message which indicates that the owner of the site has probably misconfigured their DNS.
Since it patches the multisite middleware, every request on every site we host goes through it. If you see this plugin in a stack trace, and the line lib/middleware/enforce_hostname.rb is immediately above it, it is a normal call and not a cause of the issue.
Are you on the stable branch? Maybe the update caused the plugin to be broken on stable. Then it could help if an entry was added to the compatibility file.
Without the Theme Component, the text in the category description is --font-up-3 by default. This is via the .category-heading class. I think that this has grown in recent times.
With the Theme Component, the text in the category description is --font-0. This can be bumped up to --font-up-1(larger) or font-up-2(largest). Neither of these achieve the new normal!
Hi @NateDhaliwal sorry, I was able to figure it out, here are some of the errors:
Discourse v3.4.6 — https://github.com/discourse/discourse/commits/3d149ba824 — Ember v5.12.0
category-header.gjs:51 Uncaught TypeError: Cannot read properties of undefined (reading 'mobileView')
at get showHeader (category-header.gjs:51:61)
at eE (index.js:78:1)
at index.js:78:1
at index.js:78:1
at X (index.js:78:1)
at T (index.js:78:1)
at index.js:78:1
at index.js:78:1
at X (index.js:78:1)
at T (index.js:78:1)
at Object.evaluate (index.js:78:1)
at Object.evaluate (index.js:78:1)
at tV.evaluateSyscall (index.js:78:1)
at tV.evaluateInner (index.js:78:1)
at tV.evaluateOuter (index.js:78:1)
at t1.next (index.js:78:1)
at t1._execute (index.js:78:1)
at t1.execute (index.js:78:1)
at t2.sync (index.js:78:1)
at t6.render (index.js:78:1)
at index.js:78:1
at tx (index.js:78:1)
at io._renderRoots (index.js:78:1)
at io._renderRootsTransaction (index.js:78:1)
at io._revalidate (index.js:78:1)
at invoke (index.js:78:1)
at m.flush (index.js:78:1)
at g.flush (index.js:78:1)
at V._end (index.js:78:1)
at V.end (index.js:78:1)
at V._run (index.js:78:1)
at V.run (index.js:78:1)
at d (deprecate.js:100:1)
at Object.success (video-placeholder.js:39:1)
at l (jquery.js:10:1)
at Object.fireWith [as resolveWith] (jquery.js:10:1)
at C (jquery.js:10:1)
at XMLHttpRequest.<anonymous> (jquery.js:10:1)Understand this error
category-header.gjs:51 Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'mobileView')
at get showHeader (category-header.gjs:51:61)
at eE (index.js:78:1)
at index.js:78:1
at index.js:78:1
at X (index.js:78:1)
at T (index.js:78:1)
at index.js:78:1
at index.js:78:1
at X (index.js:78:1)
at T (index.js:78:1)
at Object.evaluate (index.js:78:1)
at Object.evaluate (index.js:78:1)
at tV.evaluateSyscall (index.js:78:1)
at tV.evaluateInner (index.js:78:1)
at tV.evaluateOuter (index.js:78:1)
at t1.next (index.js:78:1)
at t1._execute (index.js:78:1)
at t1.execute (index.js:78:1)
at t2.sync (index.js:78:1)
at t6.render (index.js:78:1)
at index.js:78:1
at tx (index.js:78:1)
at io._renderRoots (index.js:78:1)
at io._renderRootsTransaction (index.js:78:1)
at io._renderRoot (index.js:78:1)
at io._appendDefinition (index.js:78:1)
at io.appendOutletView (index.js:78:1)
at invoke (index.js:78:1)
at m.flush (index.js:78:1)
at g.flush (index.js:78:1)
at V._end (index.js:78:1)
at index.js:78:1Understand this error
category-header.gjs:51 Uncaught TypeError: Cannot read properties of undefined (reading 'mobileView')
at get showHeader (category-header.gjs:51:61)
at eE (index.js:78:1)
at index.js:78:1
at index.js:78:1
at X (index.js:78:1)
at T (index.js:78:1)
at index.js:78:1
at index.js:78:1
at X (index.js:78:1)
at T (index.js:78:1)
at Object.evaluate (index.js:78:1)
at Object.evaluate (index.js:78:1)
at tV.evaluateSyscall (index.js:78:1)
at tV.evaluateInner (index.js:78:1)
at tV.evaluateOuter (index.js:78:1)
at t1.next (index.js:78:1)
at t1._execute (index.js:78:1)
at t1.execute (index.js:78:1)
at t2.sync (index.js:78:1)
at t6.render (index.js:78:1)
at index.js:78:1
at tx (index.js:78:1)
at io._renderRoots (index.js:78:1)
at io._renderRootsTransaction (index.js:78:1)
at io._revalidate (index.js:78:1)
at invoke (index.js:78:1)
at m.flush (index.js:78:1)
at g.flush (index.js:78:1)
at V._end (index.js:78:1)
at V.end (index.js:78:1)
at V._runExpiredTimers (index.js:78:1)Understand this error
category-header.gjs:51 Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'mobileView')
at get showHeader (category-header.gjs:51:61)
at eE (index.js:78:1)
at index.js:78:1
at index.js:78:1
at X (index.js:78:1)
at T (index.js:78:1)
at index.js:78:1
at index.js:78:1
at X (index.js:78:1)
at T (index.js:78:1)
at Object.evaluate (index.js:78:1)
at Object.evaluate (index.js:78:1)
at tV.evaluateSyscall (index.js:78:1)
at tV.evaluateInner (index.js:78:1)
at tV.evaluateOuter (index.js:78:1)
at t1.next (index.js:78:1)
at t1._execute (index.js:78:1)
at t1.execute (index.js:78:1)
at t2.sync (index.js:78:1)
at t6.render (index.js:78:1)
at index.js:78:1
at tx (index.js:78:1)
at io._renderRoots (index.js:78:1)
at io._renderRootsTransaction (index.js:78:1)
at io._revalidate (index.js:78:1)
at invoke (index.js:78:1)
at m.flush (index.js:78:1)
at g.flush (index.js:78:1)
at V._end (index.js:78:1)
at index.js:78:1Understand this error
That is very odd. It’s strange that this error is appearing now, as this.site.mobileView was in the original version . I cannot repo this with latest tests-passed, could this be a limitation of stable (though, it seems unlikely - core uses this as well).