Commit graph

177 commits

Author SHA1 Message Date
Jack
a067a32b7a
chore: move main linting to oxlint (@miodec) (#7144)
- main linting is now done by oxlint. eslint remains for linting json
files in the frontend (until oxlint adds support)
 - move type checking to the lint step (with --type-check)
this improves performance by removing a duplicated typescript parse task
(instead of parsing for linting then again for type checking, it parses
once for both)
- add a `lint-fast` npm script to get some fast fail behavior. it simply
lints with no type information
- oxc plugins are still in preview, so the custom plugin that checks for
`__testing` usage outside of tests runs outside the main linting job
until performance is improved
- fixes some type issues (and config issues) that were not visible due
to a missing type check on some files. now type checking will run on
every file that is linted
 - split up oxc config for easier management

waiting https://github.com/oxc-project/tsgolint/pull/494

seeing around 3x improvement in type aware linting
2025-12-15 22:16:16 +01:00
Jack
660668c530
chore: use oxfmt for formatting (@miodec) (#7187)
8 times faster formatting,
calls prettier internally for unsupported files

waiting on https://github.com/oxc-project/oxc/issues/16637
https://github.com/oxc-project/oxc/issues/16598
https://github.com/oxc-project/oxc/issues/16621

---------

Co-authored-by: Christian Fehmer <cfe@sexy-developer.com>
2025-12-15 16:53:50 +01:00
Miodec
d997ae8746 chore: add script to deploy preview frontend 2025-12-10 14:35:22 +01:00
Christian Fehmer
8cce5bfc7e
build: combine vite config into a single file (@fehmer) (#7190)
- **build: replace dotenv with vite env variables (@fehmer)**
- **build: combine vite config into a single file (@fehmer)**

---------

Co-authored-by: Miodec <jack@monkeytype.com>
2025-12-05 19:45:12 +01:00
Christian Fehmer
445be88754
ci: allow dependabot node version (@fehmer) (#7184) 2025-12-03 16:52:38 +01:00
Miodec
3dfea100d1 chore: upgrade typescript
also disables declaration file generation since we dont use them anyway
2025-11-24 13:33:49 +01:00
Miodec
2107c87fdb chore: upgrade oxlint
also enables prefer-includes
2025-11-20 12:22:58 +01:00
Jack
2536087276
refactor: use animejs instead of jquery (@miodec) (#7101)
Also changes how slow timer is handled - now the animation frame rate is
reduced to 30fps instead of disabling them entirely.
2025-11-17 12:59:56 +01:00
Christian Fehmer
8db1140040
chore: update vitest to 4.0.8 (@fehmer) (#7096) 2025-11-12 12:42:30 +01:00
Christian Fehmer
70dfd2aa6c
chore: language integrity check (@fehmer) (#7074)
Co-authored-by: Miodec <jack@monkeytype.com>
2025-11-07 16:12:35 +01:00
Miodec
c0191da004 chore: bump node version 2025-10-31 14:18:59 +01:00
Miodec
586a19ad3e chore: upgrade oxlint 2025-10-31 14:18:59 +01:00
Jack
7e6a73aac2
chore: upgrade to vite 7 (@miodec) (#7051) 2025-10-27 17:17:21 +01:00
Christian Fehmer
cd8ebd1430
chore: update nodejs to 24.10.0 (@fehmer) (#7035) 2025-10-27 13:38:37 +01:00
Christian Fehmer
4268572be4
build: fix scope of dependency @monkeytype/schemas (@fehmer) (#7033) 2025-10-21 13:05:07 +02:00
dependabot[bot]
c17abc9dc0
build(deps-dev): bump happy-dom from 20.0.0 to 20.0.2 in /frontend (#7022)
Bumps [happy-dom](https://github.com/capricorn86/happy-dom) from 20.0.0
to 20.0.2.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/capricorn86/happy-dom/releases">happy-dom's
releases</a>.</em></p>
<blockquote>
<h2>v20.0.2</h2>
<h3>👷‍♂️ Patch fixes</h3>
<ul>
<li>Adds frozen intrinsics flag to workers in
<code>@happy-dom/server-renderer</code> - By <strong><a
href="https://github.com/capricorn86"><code>@​capricorn86</code></a></strong>
in task <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1934">#1934</a></li>
</ul>
<h2>v20.0.1</h2>
<h3>👷‍♂️ Patch fixes</h3>
<ul>
<li>Adds warning for environment with unfrozen intrinsics (builtins)
when JavaScript evaluation is enabled- By <strong><a
href="https://github.com/capricorn86"><code>@​capricorn86</code></a></strong>
in task <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1932">#1932</a>
<ul>
<li>A security advisory has been reported showing that the recommended
preventive measure of running Node.js with
<code>--disallow-code-generation-from-strings</code> wasn't enough to
protect against attackers escaping the VM context and accessing
process-level functions. Big thanks to <a
href="https://github.com/cristianstaicu"><code>@​cristianstaicu</code></a>
for reporting this!</li>
<li>The documentation for how to run Happy DOM with JavaScript
evaluation enabled in a safer way has been updated. Read more about it
in the <a
href="https://github.com/capricorn86/happy-dom/wiki/JavaScript-Evaluation-Warning">Wiki</a></li>
</ul>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="f4bd4ebe3f"><code>f4bd4eb</code></a>
fix: <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/0">#0</a>
Adds frozen intrinsics flag to server-renderer workers (<a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1934">#1934</a>)</li>
<li><a
href="f45d92e176"><code>f45d92e</code></a>
fix: <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/0">#0</a>
Adds warning for environemnt with unfrozen builtins (<a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1932">#1932</a>)</li>
<li>See full diff in <a
href="https://github.com/capricorn86/happy-dom/compare/v20.0.0...v20.0.2">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=happy-dom&package-manager=npm_and_yarn&previous-version=20.0.0&new-version=20.0.2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/monkeytypegame/monkeytype/network/alerts).

</details>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Miodec <jack@monkeytype.com>
2025-10-17 15:11:32 +02:00
dependabot[bot]
865631db18
build(deps-dev): bump happy-dom from 15.10.2 to 20.0.0 in /frontend (#7018)
Bumps [happy-dom](https://github.com/capricorn86/happy-dom) from 15.10.2
to 20.0.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/capricorn86/happy-dom/releases">happy-dom's
releases</a>.</em></p>
<blockquote>
<h2>v20.0.0</h2>
<p>I avoid making breaking changes as much as possible in Happy DOM.
When I have to make a breaking change, I try to keep it as minimal as
possible. This could be a breaking change that impacts many projects,
and I am truly sorry if you are negatively affected by this.</p>
<h3>💣 Breaking Changes</h3>
<ul>
<li>Due to security risks, JavaScript evaluation is now disabled by
default - By <strong><a
href="https://github.com/capricorn86"><code>@​capricorn86</code></a></strong>
in task <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1930">#1930</a>
<ul>
<li>A security advisory (GHSA-37j7-fg3j-429f) has been reported that
shows a security vulnerability where it's possible to escape the VM
context and get access to process level functionality. Big thanks to <a
href="https://github.com/Mas0nShi"><code>@​Mas0nShi</code></a> for
reporting this!</li>
<li>Due to this security risk, JavaScript evaluation is now disabled by
default to prevent that consumers accidentally executes untrusted code
without taking precautions</li>
<li>JavaScript evaluation can be enabled by setting <a
href="https://github.com/capricorn86/happy-dom/wiki/IOptionalBrowserSettings">enableJavaScriptEvaluation</a>
to &quot;true&quot;. Read more about how to enable this in a safer way
in the <a
href="https://github.com/capricorn86/happy-dom/wiki/Code-Generation-From-Strings-Warning">Wiki</a></li>
</ul>
</li>
</ul>
<h2>v19.0.2</h2>
<h3>👷‍♂️ Patch fixes</h3>
<ul>
<li>Fixes issue related to CSS pseudo selector <code>:scope</code> that
didn't work correctly for direct descendants to root - By <strong><a
href="https://github.com/capricorn86"><code>@​capricorn86</code></a></strong>
in task <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1620">#1620</a></li>
</ul>
<h2>v19.0.1</h2>
<h3>👷‍♂️ Patch fixes</h3>
<ul>
<li>Fixes issue with sending in URLs as string in
<code>@happy-dom/server-renderer</code> config using CLI - By <strong><a
href="https://github.com/capricorn86"><code>@​capricorn86</code></a></strong>
in task <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1908">#1908</a></li>
</ul>
<h2>v19.0.0</h2>
<h3>💣 Breaking Changes</h3>
<ul>
<li>Removes support for CommonJS - By <strong><a
href="https://github.com/capricorn86"><code>@​capricorn86</code></a></strong>
in task <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1730">#1730</a>
<ul>
<li>Support for CommonJS is no longer needed as Node.js v18 is
deprecated and v20 and above supports loading ES modules from CommonJS
using <code>require()</code></li>
</ul>
</li>
<li>Updates Jest to v30 in the <code>@happy-dom/jest-environment</code>
package - By <strong><a
href="https://github.com/capricorn86"><code>@​capricorn86</code></a></strong>
in task <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1730">#1730</a></li>
<li>Makes Jest packages peer dependencies to make it easier to align
versions with the project using <code>@happy-dom/jest-environment</code>
- By <strong><a
href="https://github.com/capricorn86"><code>@​capricorn86</code></a></strong>
in task <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1730">#1730</a></li>
</ul>
<h3>🎨 Features</h3>
<ul>
<li>Adds a new package called <code>@happy-dom/server-renderer</code> -
By <strong><a
href="https://github.com/capricorn86"><code>@​capricorn86</code></a></strong>
in task <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1730">#1730</a>
<ul>
<li>This package provides a simple way to statically render (SSG) or
server-side render (SSR) your client-side application</li>
<li>Read more in the Wiki under <a
href="https://github.com/capricorn86/happy-dom/wiki/Server-Renderer">Server-Renderer</a></li>
</ul>
</li>
<li>Adds support for <code>import.meta</code> to the ESM compiler - By
<strong><a
href="https://github.com/capricorn86"><code>@​capricorn86</code></a></strong>
in task <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1730">#1730</a></li>
<li>Adds support for the CSS pseudo selector <code>:scope</code> - By
<strong><a
href="https://github.com/capricorn86"><code>@​capricorn86</code></a></strong>
in task <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1620">#1620</a></li>
<li>Improves support for <code>MediaList</code> - By <strong><a
href="https://github.com/capricorn86"><code>@​capricorn86</code></a></strong>
in task <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1730">#1730</a></li>
<li>Adds support for <code>CSSKeywordValue</code>,
<code>CSSStyleValue</code>, <code>StylePropertyMap</code>,
<code>StylePropertyMap</code>, <code>StylePropertyMapReadOnly</code> -
By <strong><a
href="https://github.com/capricorn86"><code>@​capricorn86</code></a></strong>
in task <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1730">#1730</a></li>
<li>Improves debug information in the ESM compiler - By <strong><a
href="https://github.com/capricorn86"><code>@​capricorn86</code></a></strong>
in task <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1730">#1730</a></li>
<li>Adds validation of browser settings when creating a new
<code>Browser</code> instance - By <strong><a
href="https://github.com/capricorn86"><code>@​capricorn86</code></a></strong>
in task <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1730">#1730</a></li>
<li>Adds support for the browser setting <a
href="https://github.com/capricorn86/happy-dom/wiki/IBrowserSettings">navigation.beforeContentCallback</a>
which makes it possible to inject event listeners or logic before
content is loaded to the document when navigating a browser frame - By
<strong><a
href="https://github.com/capricorn86"><code>@​capricorn86</code></a></strong>
in task <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1730">#1730</a></li>
<li>Adds support for the browser setting <a
href="https://github.com/capricorn86/happy-dom/wiki/IBrowserSettings">fetch.requestHeaders</a>
which provides with a declarative and simple way to add request headers
- By <strong><a
href="https://github.com/capricorn86"><code>@​capricorn86</code></a></strong>
in task <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1730">#1730</a></li>
<li>Adds support for setting an object to <a
href="https://github.com/capricorn86/happy-dom/wiki/IBrowserSettings">timer.preventTimerLoops</a>
which makes it possible to define different settings for
<code>setTimeout()</code> and <code>requestAnimationFrame()</code> - By
<strong><a
href="https://github.com/capricorn86"><code>@​capricorn86</code></a></strong>
in task <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1730">#1730</a></li>
<li>Adds support for the browser setting <a
href="https://github.com/capricorn86/happy-dom/wiki/IBrowserSettings">viewport</a>
which makes it possible to define a default viewport size - By
<strong><a
href="https://github.com/capricorn86"><code>@​capricorn86</code></a></strong>
in task <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1730">#1730</a></li>
<li>Adds support for the parameters <code>beforeContentCallback</code>
and <code>headers</code> to <code>BrowserFrame.goto()</code>,
<code>BrowserFrame.goBack()</code>,
<code>BrowserFrame.goForward()</code>,
<code>BrowserFrame.goSteps()</code> and
<code>BrowserFrame.reload()</code> - By <strong><a
href="https://github.com/capricorn86"><code>@​capricorn86</code></a></strong>
in task <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1730">#1730</a></li>
<li>Adds support for <code>PopStateEvent</code> and trigger the event
when navigating the page history using <code>History.pushState()</code>
- By <strong><a
href="https://github.com/capricorn86"><code>@​capricorn86</code></a></strong>
in task <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1730">#1730</a></li>
<li>Use local file paths for virtual server files in stack traces - By
<strong><a
href="https://github.com/capricorn86"><code>@​capricorn86</code></a></strong>
in task <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1730">#1730</a></li>
<li>Adds support for <code>ResponseCache.fileSystem.load()</code> and
<code>ResponseCache.fileSystem.save()</code> for storing and loading
cache from the file system - By <strong><a
href="https://github.com/capricorn86"><code>@​capricorn86</code></a></strong>
in task <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1730">#1730</a></li>
</ul>
<h3>👷‍♂️ Patch fixes</h3>
<ul>
<li>Fixes a bug in the ESM compiler that caused it to fail to parse
certain code - By <strong><a
href="https://github.com/capricorn86"><code>@​capricorn86</code></a></strong>
in task <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1730">#1730</a></li>
<li>Disables the same origin policy when navigating a browser frame
using <code>BrowserFrame.goto()</code> - By <strong><a
href="https://github.com/capricorn86"><code>@​capricorn86</code></a></strong>
in task <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1730">#1730</a></li>
<li>Fixes bug where CSS selectors with the pseudos &quot;+&quot; and
&quot;&gt;&quot; failed for selectors without arguments - By <strong><a
href="https://github.com/capricorn86"><code>@​capricorn86</code></a></strong>
in task <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1730">#1730</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="819d15ba28"><code>819d15b</code></a>
BREAKING CHANGE: <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/0">#0</a>
Changes JavaScript evaluation to be disabled by default...</li>
<li><a
href="c80a08f30a"><code>c80a08f</code></a>
fix: <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1620">#1620</a>
Fixes issue related to CSS pseudo selector :scope (<a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1911">#1911</a>)</li>
<li><a
href="220df23dea"><code>220df23</code></a>
fix: <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1908">#1908</a>
Fixes issue with sending in URLs as string in server-renderer co...</li>
<li><a
href="9849f8bb18"><code>9849f8b</code></a>
chore: <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1906">#1906</a>
Fixes failing unit test caused by package version (<a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1907">#1907</a>)</li>
<li><a
href="48d174ec33"><code>48d174e</code></a>
chore: <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1904">#1904</a>
Updates conventional commit package (<a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1905">#1905</a>)</li>
<li><a
href="275efe5f9a"><code>275efe5</code></a>
BREAKING CHANGE: <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1620">#1620</a>
Release v18.0.0</li>
<li><a
href="cf74f5f63c"><code>cf74f5f</code></a>
fix: <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1841">#1841</a>
Addresses an issue where an error occurred if the Element ID was...</li>
<li><a
href="bfd0fffc12"><code>bfd0fff</code></a>
chore: <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1154">#1154</a>
Fixes failing unit test (<a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1843">#1843</a>)</li>
<li><a
href="99ebbfceef"><code>99ebbfc</code></a>
BREAKING CHANGE: <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1154">#1154</a>
Makes the types for Happy DOM strict (<a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1842">#1842</a>)</li>
<li><a
href="a94d780290"><code>a94d780</code></a>
fix: <a
href="https://redirect.github.com/capricorn86/happy-dom/issues/1154">#1154</a>
Removes global typescript definition that was used for custom el...</li>
<li>Additional commits viewable in <a
href="https://github.com/capricorn86/happy-dom/compare/v15.10.2...v20.0.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=happy-dom&package-manager=npm_and_yarn&previous-version=15.10.2&new-version=20.0.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/monkeytypegame/monkeytype/network/alerts).

</details>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Christian Fehmer <cfe@sexy-developer.com>
Co-authored-by: Miodec <jack@monkeytype.com>
2025-10-15 10:59:47 +02:00
Miodec
1fa473744a chore: bump oxlint 2025-09-11 22:04:48 +02:00
dependabot[bot]
b25bcb13e9
build(deps-dev): bump vite from 6.3.4 to 6.3.6 in /frontend (#6948)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite)
from 6.3.4 to 6.3.6.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/vitejs/vite/releases">vite's
releases</a>.</em></p>
<blockquote>
<h2>v6.3.6</h2>
<p>Please refer to <a
href="https://github.com/vitejs/vite/blob/v6.3.6/packages/vite/CHANGELOG.md">CHANGELOG.md</a>
for details.</p>
<h2>v6.3.5</h2>
<p>Please refer to <a
href="https://github.com/vitejs/vite/blob/v6.3.5/packages/vite/CHANGELOG.md">CHANGELOG.md</a>
for details.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/vitejs/vite/blob/v6.3.6/packages/vite/CHANGELOG.md">vite's
changelog</a>.</em></p>
<blockquote>
<h2><!-- raw HTML omitted -->6.3.6 (2025-09-08)<!-- raw HTML omitted
--></h2>
<ul>
<li>fix: apply <code>fs.strict</code> check to HTML files (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/20736">#20736</a>)
(<a
href="0ab19ea9fc">0ab19ea</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/20736">#20736</a></li>
<li>fix: upgrade sirv to 3.0.2 (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/20735">#20735</a>)
(<a
href="e11d24008b">e11d240</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/20735">#20735</a></li>
<li>test: detect ts support via <code>process.features</code> (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/20544">#20544</a>)
(<a
href="7d9922972b">7d99229</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/20544">#20544</a></li>
</ul>
<h2><!-- raw HTML omitted -->6.3.5 (2025-05-05)<!-- raw HTML omitted
--></h2>
<ul>
<li>fix(ssr): handle uninitialized export access as undefined (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19959">#19959</a>)
(<a
href="fd38d076fe">fd38d07</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19959">#19959</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="3f337c5e24"><code>3f337c5</code></a>
release: v6.3.6</li>
<li><a
href="e11d24008b"><code>e11d240</code></a>
fix: upgrade sirv to 3.0.2 (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/20735">#20735</a>)</li>
<li><a
href="0ab19ea9fc"><code>0ab19ea</code></a>
fix: apply <code>fs.strict</code> check to HTML files (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/20736">#20736</a>)</li>
<li><a
href="7d9922972b"><code>7d99229</code></a>
test: detect ts support via <code>process.features</code> (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/20544">#20544</a>)</li>
<li><a
href="84e4647efa"><code>84e4647</code></a>
release: v6.3.5</li>
<li><a
href="fd38d076fe"><code>fd38d07</code></a>
fix(ssr): handle uninitialized export access as undefined (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19959">#19959</a>)</li>
<li>See full diff in <a
href="https://github.com/vitejs/vite/commits/v6.3.6/packages/vite">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=vite&package-manager=npm_and_yarn&previous-version=6.3.4&new-version=6.3.6)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/monkeytypegame/monkeytype/network/alerts).

</details>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Miodec <jack@monkeytype.com>
2025-09-10 16:58:43 +02:00
Christian Fehmer
56b25f30bc
build: rename json-validation to check-assets, improve error messages (@fehmer) (#6933)
- **improve error messages**
- **rename json-validation to check-assets**
2025-09-03 18:10:34 +02:00
Christian Fehmer
4560257110
ci(assets): use zod in json-validation (@fehmer) (#6902) 2025-08-27 15:23:26 +02:00
Copilot
44ceb7137e
impr(sign up): add temporary email detection to registration form (@copilot) (#6912)
Implements temporary email detection for the registration email input
field on the login page. When users focus on the email input, the system
dynamically imports the `disposable-email-domains-js` package to check
for temporary/disposable email addresses.

## Changes Made

- **Dynamic Import**: Added lazy loading of
`disposable-email-domains-js` package that triggers on email input focus
- **Email Validation Enhancement**: Extended the existing email
validation in `login.ts` to include temporary email detection
- **User Warning**: Shows warning message "Be careful when using
temporary emails - you will need it to log into your account" for
detected temporary emails
- **Graceful Degradation**: Handles module import failures silently
without breaking existing functionality
- **Dependency Management**: Added `disposable-email-domains-js` to
frontend package dependencies

## Technical Implementation

The implementation integrates seamlessly with the existing
`validateWithIndicator` system:

```typescript
// Dynamic import on focus
emailInputEl.addEventListener("focus", async () => {
  if (!moduleLoadAttempted) {
    moduleLoadAttempted = true;
    try {
      disposableEmailModule = await import("disposable-email-domains-js");
    } catch (e) {
      // Silent failure - continues without temp email detection
    }
  }
});

// Validation check
if (disposableEmailModule && disposableEmailModule.isDisposableEmail) {
  if (disposableEmailModule.isDisposableEmail(email)) {
    return {
      warning: "Be careful when using temporary emails - you will need it to log into your account"
    };
  }
}
```

## Key Features

- **Non-blocking**: Module only loads when needed and failures don't
interrupt the user experience
- **Warning Level**: Uses the existing warning system, allowing users to
continue with registration
- **Preserved Functionality**: All existing email validation (education
emails, typos) continues to work unchanged
- **Performance Optimized**: Lazy loading prevents unnecessary network
requests until the feature is actually used

## Testing

Verified that:
- Temporary emails (e.g., mailinator.com, 10minutemail.com) show
appropriate warnings
- Regular emails (e.g., gmail.com, outlook.com) pass validation normally
- Education emails continue to show existing warnings
- Module import failures are handled gracefully
- All existing validation behavior is preserved

<screenshot>
![Education email validation still
works](https://github.com/user-attachments/assets/c035e0f8-df39-407b-95aa-85abc4409f38)

![Regular emails pass
validation](https://github.com/user-attachments/assets/f1925ecc-e81e-4dec-867c-a2bc0c19b469)
</screenshot>

Resolves the requirement to detect temporary emails while maintaining a
smooth user experience and backward compatibility.

> [!WARNING]
>
> <details>
> <summary>Firewall rules blocked me from connecting to one or more
addresses (expand for details)</summary>
>
> #### I tried to connect to the following addresses, but was blocked by
firewall rules:
>
> -
`https://api.github.com/repos/mziyut/disposable-email-domains-js/contents/package.json`
>   - Triggering command: `curl -s REDACTED` (http block)
>
> If you need me to access, download, or install something from one of
these locations, you can either:
>
> - Configure [Actions setup
steps](https://gh.io/copilot/actions-setup-steps) to set up my
environment, which run before the firewall is enabled
> - Add the appropriate URLs or hosts to the custom allowlist in this
repository's [Copilot coding agent
settings](https://github.com/monkeytypegame/monkeytype/settings/copilot/coding_agent)
(admins only)
>
> </details>



<!-- START COPILOT CODING AGENT TIPS -->
---

 Let Copilot coding agent [set things up for
you](https://github.com/monkeytypegame/monkeytype/issues/new?title=+Set+up+Copilot+instructions&body=Configure%20instructions%20for%20this%20repository%20as%20documented%20in%20%5BBest%20practices%20for%20Copilot%20coding%20agent%20in%20your%20repository%5D%28https://gh.io/copilot-coding-agent-tips%29%2E%0A%0A%3COnboard%20this%20repo%3E&assignees=copilot)
— coding agent works faster and does higher quality work when set up for
your repo.

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Miodec <13181393+Miodec@users.noreply.github.com>
Co-authored-by: Jack <jack@monkeytype.com>
2025-08-27 14:51:01 +02:00
Miodec
b54052913c chore: bump oxlint version 2025-08-26 17:41:51 +02:00
Christian Fehmer
d2c627fcc8
ci: convert json-validation to typescript (@fehmer) (#6899)
- convert json-validation to typescript
- integrate tests for assets back into the json-validation script
2025-08-21 00:42:21 +02:00
Seif Soliman
e6519b166c
impr(screenshot): switch to modern-screenshot for enhancements (@byseif21) (#6884)
Switching the screenshot library from html2canvas to modern-screenshot.
for both visual for users and some technical/codebase benefits.

### Visual Improvements :
 * Background css filters now shows in the screenshot. 
   fix: #6862 , 
        #1613 ,

https://github.com/monkeytypegame/monkeytype/issues/6249#issuecomment-2651215569
* Sharper, higher-quality screenshots noticeably especially on high-DPI
screens.
* Backgrounds now render correctly on small screens that were previously
missing on mobile or small viewports, now included and properly scaled.
* Previously, with extra height e.g input history opened, the background
failed to cover everything even when it should have.
* The screenshot now more closely matches what users actually see across
devices and layouts.

### Non-Visual (Technical/Codebase) Improvements :
* Supporting modern css makes us now able to use css for the heatmap
instead of the JS.
     #5892 ,
      #5879
  * Reduced bundle size: Dropping html2canvas and its dependencies.
  * Up-to-date library, easier future improvements.

---------

Co-authored-by: Samuel Hautamäki <70753342+SirObby@users.noreply.github.com>
Co-authored-by: samuelhautamaki <samuelhautamaki@noreply.codeberg.org>
Co-authored-by: Miodec <jack@monkeytype.com>
2025-08-20 20:39:15 +02:00
Nad Alaba
a1293e79aa
chore: remove gulp dependency (@NadAlaba) (#6889)
Co-authored-by: Miodec <jack@monkeytype.com>
2025-08-20 20:10:41 +02:00
Miodec
057fdf3fed chore: bump oxlint version 2025-08-18 15:38:13 +02:00
Christian Fehmer
e838f71c78
fix: authentication issues when using multiple tabs (@fehmer) (#6790)
fixes #6279

- store the last use "remember login" state in localstorage
- initialize firebase auth with correct persistence (LOCAL if "remember
me" is set, SESSION otherwise)


initialization of `Auth` needs to by awaited. This required some
refactoring. During debugging it was useful to have easier control over
the `Auth` object.

Summary of the refactoring:

- don't expose firebase `App` or `Auth` (except for email-handler)
- initialise firebase in async method that can be awaited to ensure
setup is done before any call to firebase
- move `authStateChanged` handling from account-controller to our
firebase module which then calls `account-controller.readyFunction`.
- update all direct calls to `Auth` to use functions of our firebase
module
- move error handling and interpretation of `FirebaseError` to our
module and removed duplicate code
- use tryCatch helper on refactored code instead of native `try...
catch`

---------

Co-authored-by: Miodec <jack@monkeytype.com>
Co-authored-by: Lukas <dev@mardybum.de>
Co-authored-by: Seif Soliman <byseif21@gmail.com>
2025-08-11 13:11:51 +02:00
Miodec
5183caf91e chore: upgrade oxlint 2025-08-10 15:08:46 +02:00
Christian Fehmer
bec5606c7a
chore: move knip to project root (@fehmer) (#6842) 2025-08-07 15:00:43 +02:00
Christian Fehmer
01ed9322ec
test: update to vitest3 (@fehmer) (#6811)
- **test: use mongodb testcontainer (@fehmer)**
- **don't run integration tests in parallel**
- **fix premium test**
- **refactor, cleanup**
- **refactor, cleanup**
- **test: add integration tests for daily leaderboards (@fehmer)**
- **trigger**
- **trigger**
- **test: update to vitest3 (@fehmer)**
2025-08-04 15:55:10 +02:00
Christian Fehmer
aa94a8afed
chore: update nodejs to 20.19.4 (@fehmer) (#6805) 2025-07-30 10:06:04 +02:00
Christian Fehmer
f2b34a541f
feat: allow user to use local file as background (@fehmer, @byseif21, @miodec) (#6663)
Allow the user to use a local file as custom background without
uploading it to the server.

Based on @byseif21 work in #6630, thanks!

---------

Co-authored-by: Miodec <jack@monkeytype.com>
Co-authored-by: Lukas <dev@mardybum.de>
Co-authored-by: Seif Soliman <byseif21@gmail.com>
2025-07-28 12:52:07 +02:00
Cameron
2180e3b603
chore(deps): upgrade oxlint to 1.8.0, fix errors (@camc314) (#6776)
### Description

This PR updates oxlint to 1.8.0 and fixes the resulting errors in order
to keep oxlint's ecosystem CI green.

Thanks for using oxlint

---------

Co-authored-by: Miodec <jack@monkeytype.com>
2025-07-24 14:32:12 +02:00
Jack
69cbbe4ab2
refactor(contracts / schemas): move schemas into their own package (@miodec) (#6754) 2025-07-21 14:55:54 +02:00
Miodec
41495981a8 chore: bump oxlint version 2025-07-19 15:02:14 +02:00
Miodec
de2541727a chore: upgrade throttle debounce type 2025-07-04 23:25:17 +02:00
Christian Fehmer
9b26793a6d
chore: update express to 5.1.0 (@fehmer) (#6691) 2025-07-03 15:43:01 +02:00
Miodec
4c05dd8326 chore: bump oxlint version 2025-06-14 14:43:05 +02:00
Miodec
04fbd81c10 chore: bump oxlint version 2025-05-29 13:23:13 +02:00
Christian Fehmer
d47272b636
chore: add eslint compat plugin (@fehmer) (#6542) 2025-05-12 16:52:01 +02:00
dependabot[bot]
79aa3a569f
build(deps-dev): bump vite from 6.3.0 to 6.3.4 in /frontend (#6510)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite)
from 6.3.0 to 6.3.4.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/vitejs/vite/releases">vite's
releases</a>.</em></p>
<blockquote>
<h2>v6.3.4</h2>
<p>Please refer to <a
href="https://github.com/vitejs/vite/blob/v6.3.4/packages/vite/CHANGELOG.md">CHANGELOG.md</a>
for details.</p>
<h2>v6.3.3</h2>
<p>Please refer to <a
href="https://github.com/vitejs/vite/blob/v6.3.3/packages/vite/CHANGELOG.md">CHANGELOG.md</a>
for details.</p>
<h2>v6.3.2</h2>
<p>Please refer to <a
href="https://github.com/vitejs/vite/blob/v6.3.2/packages/vite/CHANGELOG.md">CHANGELOG.md</a>
for details.</p>
<h2>create-vite@6.3.1</h2>
<p>Please refer to <a
href="https://github.com/vitejs/vite/blob/create-vite@6.3.1/packages/create-vite/CHANGELOG.md">CHANGELOG.md</a>
for details.</p>
<h2>v6.3.1</h2>
<p>Please refer to <a
href="https://github.com/vitejs/vite/blob/v6.3.1/packages/vite/CHANGELOG.md">CHANGELOG.md</a>
for details.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md">vite's
changelog</a>.</em></p>
<blockquote>
<h2><!-- raw HTML omitted -->6.3.4 (2025-04-30)<!-- raw HTML omitted
--></h2>
<ul>
<li>fix: check static serve file inside sirv (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19965">#19965</a>)
(<a
href="c22c43de61">c22c43d</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19965">#19965</a></li>
<li>fix(optimizer): return plain object when using <code>require</code>
to import externals in optimized dependenci (<a
href="efc5eab253">efc5eab</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19940">#19940</a></li>
<li>refactor: remove duplicate plugin context type (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19935">#19935</a>)
(<a
href="d6d01c2292">d6d01c2</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19935">#19935</a></li>
</ul>
<h2><!-- raw HTML omitted -->6.3.3 (2025-04-24)<!-- raw HTML omitted
--></h2>
<ul>
<li>fix: ignore malformed uris in tranform middleware (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19853">#19853</a>)
(<a
href="e4d520141b">e4d5201</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19853">#19853</a></li>
<li>fix(assets): ensure ?no-inline is not included in the asset url in
the production environment (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/1949">#1949</a>
(<a
href="16a73c05d3">16a73c0</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19496">#19496</a></li>
<li>fix(css): resolve relative imports in sass properly on Windows (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19920">#19920</a>)
(<a
href="ffab442704">ffab442</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19920">#19920</a></li>
<li>fix(deps): update all non-major dependencies (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19899">#19899</a>)
(<a
href="a4b500ef9c">a4b500e</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19899">#19899</a></li>
<li>fix(ssr): fix execution order of re-export (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19841">#19841</a>)
(<a
href="ed29dee2eb">ed29dee</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19841">#19841</a></li>
<li>fix(ssr): fix live binding of default export declaration and hoist
exports getter (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19842">#19842</a>)
(<a
href="80a91ff824">80a91ff</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19842">#19842</a></li>
<li>perf: skip sourcemap generation for renderChunk hook of
import-analysis-build plugin (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19921">#19921</a>)
(<a
href="55cfd04b10">55cfd04</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19921">#19921</a></li>
<li>test(ssr): test <code>ssrTransform</code> re-export deps and test
stacktrace with first line (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19629">#19629</a>)
(<a
href="9399cdaf8c">9399cda</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19629">#19629</a></li>
</ul>
<h2><!-- raw HTML omitted -->6.3.2 (2025-04-18)<!-- raw HTML omitted
--></h2>
<ul>
<li>fix: match default asserts case insensitive (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19852">#19852</a>)
(<a
href="cbdab1d6a3">cbdab1d</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19852">#19852</a></li>
<li>fix: open first url if host does not match any urls (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19886">#19886</a>)
(<a
href="6abbdce3d7">6abbdce</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19886">#19886</a></li>
<li>fix(css): respect <code>css.lightningcss</code> option in css
minification process (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19879">#19879</a>)
(<a
href="b5055e0dd4">b5055e0</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19879">#19879</a></li>
<li>fix(deps): update all non-major dependencies (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19698">#19698</a>)
(<a
href="bab4cb9224">bab4cb9</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19698">#19698</a></li>
<li>feat(css): improve lightningcss messages (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19880">#19880</a>)
(<a
href="c713f79b5a">c713f79</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19880">#19880</a></li>
</ul>
<h2><!-- raw HTML omitted -->6.3.1 (2025-04-17)<!-- raw HTML omitted
--></h2>
<ul>
<li>fix: avoid using <code>Promise.allSettled</code> in preload function
(<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19805">#19805</a>)
(<a
href="35c7f35e2b">35c7f35</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19805">#19805</a></li>
<li>fix: backward compat for internal plugin <code>transform</code>
calls (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19878">#19878</a>)
(<a
href="a152b7cbac">a152b7c</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19878">#19878</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="b040d547a1"><code>b040d54</code></a>
release: v6.3.4</li>
<li><a
href="c22c43de61"><code>c22c43d</code></a>
fix: check static serve file inside sirv (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19965">#19965</a>)</li>
<li><a
href="efc5eab253"><code>efc5eab</code></a>
fix(optimizer): return plain object when using <code>require</code> to
import externals ...</li>
<li><a
href="d6d01c2292"><code>d6d01c2</code></a>
refactor: remove duplicate plugin context type (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19935">#19935</a>)</li>
<li><a
href="db9eb97b2f"><code>db9eb97</code></a>
release: v6.3.3</li>
<li><a
href="e4d520141b"><code>e4d5201</code></a>
fix: ignore malformed uris in tranform middleware (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19853">#19853</a>)</li>
<li><a
href="55cfd04b10"><code>55cfd04</code></a>
perf: skip sourcemap generation for renderChunk hook of
import-analysis-build...</li>
<li><a
href="ffab442704"><code>ffab442</code></a>
fix(css): resolve relative imports in sass properly on Windows (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19920">#19920</a>)</li>
<li><a
href="16a73c05d3"><code>16a73c0</code></a>
fix(assets): ensure ?no-inline is not included in the asset url in the
produc...</li>
<li><a
href="9399cdaf8c"><code>9399cda</code></a>
test(ssr): test <code>ssrTransform</code> re-export deps and test
stacktrace with first ...</li>
<li>Additional commits viewable in <a
href="https://github.com/vitejs/vite/commits/v6.3.4/packages/vite">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=vite&package-manager=npm_and_yarn&previous-version=6.3.0&new-version=6.3.4)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/monkeytypegame/monkeytype/network/alerts).

</details>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Christian Fehmer <cfe@sexy-developer.com>
2025-05-02 19:50:40 +02:00
Miodec
b0ad7f7c6e chore: bump konami version 2025-04-29 17:57:23 +02:00
Miodec
511d8d1a0a chore: add sentry 2025-04-29 17:36:23 +02:00
Miodec
a424f96480 chore: upgrade oxlint 2025-04-23 18:54:33 +02:00
Miodec
8bec7da619 chore: bump vite and vite plugins versions 2025-04-16 21:42:30 +02:00
Jack
cac8835c77
chore: add oxlint (@miodec) (#6455)
Use oxlint for general linting to provide much quicker feedback. Keep
eslint for type-aware rules. Fully switch to oxlint once it supports
type-aware.
2025-04-16 17:18:50 +02:00
dependabot[bot]
4546243329
build(deps-dev): bump vite from 6.0.12 to 6.0.14 in /frontend (#6423)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite)
from 6.0.12 to 6.0.14.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/vitejs/vite/releases">vite's
releases</a>.</em></p>
<blockquote>
<h2>v6.0.14</h2>
<p>Please refer to <a
href="https://github.com/vitejs/vite/blob/v6.0.14/packages/vite/CHANGELOG.md">CHANGELOG.md</a>
for details.</p>
<h2>v6.0.13</h2>
<p>Please refer to <a
href="https://github.com/vitejs/vite/blob/v6.0.13/packages/vite/CHANGELOG.md">CHANGELOG.md</a>
for details.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/vitejs/vite/blob/v6.0.14/packages/vite/CHANGELOG.md">vite's
changelog</a>.</em></p>
<blockquote>
<h2><!-- raw HTML omitted -->6.0.14 (2025-04-03)<!-- raw HTML omitted
--></h2>
<ul>
<li>fix: backport <a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19782">#19782</a>,
fs check with svg and relative paths (<a
href="48ee91df38">48ee91d</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19782">#19782</a></li>
</ul>
<h2><!-- raw HTML omitted -->6.0.13 (2025-03-31)<!-- raw HTML omitted
--></h2>
<ul>
<li>fix: fs check in transform middleware (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19761">#19761</a>)
(<a
href="1487f393f3">1487f39</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19761">#19761</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="f678baacaf"><code>f678baa</code></a>
release: v6.0.14</li>
<li><a
href="48ee91df38"><code>48ee91d</code></a>
fix: backport <a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19782">#19782</a>,
fs check with svg and relative paths</li>
<li><a
href="0eaadcf952"><code>0eaadcf</code></a>
release: v6.0.13</li>
<li><a
href="1487f393f3"><code>1487f39</code></a>
fix: fs check in transform middleware (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19761">#19761</a>)</li>
<li>See full diff in <a
href="https://github.com/vitejs/vite/commits/v6.0.14/packages/vite">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=vite&package-manager=npm_and_yarn&previous-version=6.0.12&new-version=6.0.14)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/monkeytypegame/monkeytype/network/alerts).

</details>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Miodec <jack@monkeytype.com>
2025-04-07 14:39:49 +02:00
Christian Fehmer
f7be839e74
chore: minify html for production build (@fehmer) (#6413) 2025-03-30 19:50:08 +02:00
dependabot[bot]
5002075dbd
build(deps-dev): bump vite from 6.0.11 to 6.0.12 in /frontend (#6405)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite)
from 6.0.11 to 6.0.12.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/vitejs/vite/releases">vite's
releases</a>.</em></p>
<blockquote>
<h2>v6.0.12</h2>
<p>Please refer to <a
href="https://github.com/vitejs/vite/blob/v6.0.12/packages/vite/CHANGELOG.md">CHANGELOG.md</a>
for details.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/vitejs/vite/blob/v6.0.12/packages/vite/CHANGELOG.md">vite's
changelog</a>.</em></p>
<blockquote>
<h2><!-- raw HTML omitted -->6.0.12 (2025-03-24)<!-- raw HTML omitted
--></h2>
<ul>
<li>fix: fs raw query with query separators (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19702">#19702</a>)
(<a
href="92ca12dc79">92ca12d</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19702">#19702</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="9d981f9d38"><code>9d981f9</code></a>
release: v6.0.12</li>
<li><a
href="92ca12dc79"><code>92ca12d</code></a>
fix: fs raw query with query separators (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19702">#19702</a>)</li>
<li>See full diff in <a
href="https://github.com/vitejs/vite/commits/v6.0.12/packages/vite">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=vite&package-manager=npm_and_yarn&previous-version=6.0.11&new-version=6.0.12)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/monkeytypegame/monkeytype/network/alerts).

</details>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Miodec <jack@monkeytype.com>
2025-03-26 15:21:00 +01:00