From 97eceb9c58d3aad7828a5afb7860d383e9c162af Mon Sep 17 00:00:00 2001 From: David <33458145+davidmcpowell@users.noreply.github.com> Date: Thu, 17 Jul 2025 10:34:06 +0100 Subject: [PATCH] Merge pull request #27174 from overleaf/dp-subscription-settings Add subscription option to settings modal GitOrigin-RevId: 5f38db41c1d4f5727d56e2d0a4e0740e83114f15 --- ...alSymbolsRoundedUnfilledPartialSlice.woff2 | Bin 5168 -> 5300 bytes .../material-symbols/unfilled-symbols.mjs | 1 + .../components/settings/settings-modal.tsx | 6 ++++++ 3 files changed, 7 insertions(+) diff --git a/services/web/frontend/fonts/material-symbols/MaterialSymbolsRoundedUnfilledPartialSlice.woff2 b/services/web/frontend/fonts/material-symbols/MaterialSymbolsRoundedUnfilledPartialSlice.woff2 index 260d4c367026d78dbd1a1eba997a33c6c2030afb..34f72414102f6e5f55915f7a1239accb71c875bd 100644 GIT binary patch literal 5300 zcmV;l6ie%OPew8T0RR9102H(U4gdfE04zWN02EsQ0RR9100000000000000000000 z0000Si#7&eKT}jeRAK;wJ`o5Cy==5f3w8hjHUcCAb_5^=g$@TG3EbdB5GOlD7JG7D+8 zJ$du8MAL7?-ELtj!Byi;-A{1!fG_AusSAwjncKK z(SAS*<~@2es7uQx<7VN~pu~V71({CtT68H>Ev;}d2w8x+{MO4z#)&bGNrM`71{4|6 zqR2SOOOS{;WI#*Q6ID=IhX5Z7+*CSL3GvZ5lxwl+1r&2ghq6+!vG@g)g2d#wZ&v72VwTpG(b599hAqRkF^*sxw=y|gGN^m(ds+jq6rLn$df1qODP7&-ydkh+J!#WP z`O%?$=xJg^4`~K&Ya^K^hQ#KbhIV8T$($fTi4Qj9i58ji0v)TXE0KB?2&tRp?onPB zH=(iUMze$>B)ICSy$ZLq<&HaU$?F7vKC1?!dqAzSuS;)>^1AZ69?*)Dff~fwM*&tt zZn5=t+f}*7EqB>?Ga(Qso^$Mi+^0Q{gQ*0?!5HyrSC5Nc-f=N z-d^_W^7M*>R(!JZ*p*jA*=Wb;#OT!M%IJpZj_9%I+35Lbe)QjLVm6%pW%l2%xBFqY zA9wlj>>qFcZQb9_`t#Y*2nbl6138#uIb|^qy}O-1)8i?@d6j?mpA|gw?CNOF==ITS zqgP?(zM0)-n(&#NeqidYsk^6kp4xo!gvp&IgNfh9pB&#de_Q_6oRR%Fdmm&k&YqP$ zC3{$Q`|RP_O|y2^&U}?=XHw~Bz2_3oCGJg}XUzqDX9R};K+N`nMcR!;AFl!R;oJc_ zIyoE!ab}qIOfedfD52}zdruqt39yfX_|2$(gKKC;&o$IDEa8m;GP3H+l2GFagi7aU zXy_MUeqKoh6)*9bNxB{FIjD-FC`HS4t@t3}x~Z(=S-P%zp69ua?>LUT5yI;$J8obY zzUrxyo|o}bsjTOC$2iyZ$8rJOr)Q

0n%qX=c)OGalL{yI3p^?V+^jd0V#RUVmS| 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 diff --git a/services/web/frontend/fonts/material-symbols/unfilled-symbols.mjs b/services/web/frontend/fonts/material-symbols/unfilled-symbols.mjs index da5a97585c..09862b2d5f 100644 --- a/services/web/frontend/fonts/material-symbols/unfilled-symbols.mjs +++ b/services/web/frontend/fonts/material-symbols/unfilled-symbols.mjs @@ -4,6 +4,7 @@ // You may need to hard reload your browser window to see the changes. export default /** @type {const} */ ([ + 'account_balance', 'auto_delete', 'book_5', 'brush', diff --git a/services/web/frontend/js/features/ide-redesign/components/settings/settings-modal.tsx b/services/web/frontend/js/features/ide-redesign/components/settings/settings-modal.tsx index 8da0045f2b..c4461a669d 100644 --- a/services/web/frontend/js/features/ide-redesign/components/settings/settings-modal.tsx +++ b/services/web/frontend/js/features/ide-redesign/components/settings/settings-modal.tsx @@ -43,6 +43,12 @@ const SettingsModal = () => { icon: 'settings', href: '/user/settings', }, + { + key: 'subscription', + title: t('subscription'), + icon: 'account_balance', + href: '/user/subscription', + }, ], [t] )