Merge branch 'main' into dm_fix

This commit is contained in:
Jay Sitter 2023-07-02 11:46:51 -04:00 committed by GitHub
commit 28dc62d44c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 29 additions and 11 deletions

View file

@ -81,6 +81,7 @@
} }
.vote-bar { .vote-bar {
min-width: 5ch;
margin-top: -6.5px; margin-top: -6.5px;
} }

View file

@ -473,7 +473,7 @@ export class MarkdownTextArea extends Component<
// Keybind handler // Keybind handler
// Keybinds inspired by github comment area // Keybinds inspired by github comment area
handleKeyBinds(i: MarkdownTextArea, event: KeyboardEvent) { handleKeyBinds(i: MarkdownTextArea, event: KeyboardEvent) {
if (event.ctrlKey) { if (event.ctrlKey || event.metaKey) {
switch (event.key) { switch (event.key) {
case "k": { case "k": {
i.handleInsertLink(i, event); i.handleInsertLink(i, event);

View file

@ -174,7 +174,7 @@ export class VoteButtons extends Component<VoteButtonsProps, VoteButtonsState> {
render() { render() {
return ( return (
<div className="vote-bar pe-0 small text-center"> <div className="vote-bar small text-center">
<button <button
type="button" type="button"
className={`btn-animate btn btn-link p-0 ${ className={`btn-animate btn btn-link p-0 ${
@ -193,7 +193,7 @@ export class VoteButtons extends Component<VoteButtonsProps, VoteButtonsState> {
</button> </button>
{showScores() ? ( {showScores() ? (
<div <div
className="unselectable pointer text-muted px-1 post-score" className="unselectable pointer text-muted post-score"
data-tippy-content={tippy(this.props.counts)} data-tippy-content={tippy(this.props.counts)}
> >
{numToSI(this.props.counts.score)} {numToSI(this.props.counts.score)}

View file

@ -333,7 +333,7 @@ export class PostListing extends Component<PostListingProps, PostListingState> {
return ( return (
<button <button
type="button" type="button"
className="thumbnail rounded overflow-hidden d-inline-block position-relative p-0 border-0" className="thumbnail rounded overflow-hidden d-inline-block position-relative p-0 border-0 bg-transparent"
data-tippy-content={I18NextService.i18n.t("expand_here")} data-tippy-content={I18NextService.i18n.t("expand_here")}
onClick={linkEvent(this, this.handleImageExpandClick)} onClick={linkEvent(this, this.handleImageExpandClick)}
aria-label={I18NextService.i18n.t("expand_here")} aria-label={I18NextService.i18n.t("expand_here")}

View file

@ -38,6 +38,7 @@ export class UserService {
secure: isHttps(), secure: isHttps(),
domain: location.hostname, domain: location.hostname,
sameSite: true, sameSite: true,
path: "/",
}); });
this.#setJwtInfo(); this.#setJwtInfo();
} }

View file

@ -1,10 +1,12 @@
import setDefaultOptions from "date-fns/setDefaultOptions"; import setDefaultOptions from "date-fns/setDefaultOptions";
import { I18NextService } from "../../services"; import { I18NextService } from "../../services";
const EN_US = "en-US";
export default async function () { export default async function () {
let lang = I18NextService.i18n.language; let lang = I18NextService.i18n.language;
if (lang === "en") { if (lang === "en") {
lang = "en-US"; lang = EN_US;
} }
// if lang and country are the same, then date-fns expects only the lang // if lang and country are the same, then date-fns expects only the lang
@ -17,12 +19,26 @@ export default async function () {
} }
} }
const locale = ( let locale;
await import(
/* webpackExclude: /\.js\.flow$/ */ try {
`date-fns/locale/${lang}` locale = (
) await import(
).default; /* webpackExclude: /\.js\.flow$/ */
`date-fns/locale/${lang}`
)
).default;
} catch (e) {
console.log(
`Could not load locale ${lang} from date-fns, falling back to ${EN_US}`
);
locale = (
await import(
/* webpackExclude: /\.js\.flow$/ */
`date-fns/locale/${EN_US}`
)
).default;
}
setDefaultOptions({ setDefaultOptions({
locale, locale,
}); });