Commit graph

74 commits

Author SHA1 Message Date
renovate[bot] be25491f15
Update dependency @types/node to v20.12.5 2024-04-06 01:54:17 +00:00
Corwin 3a1f1691f9
swap start and select 2024-04-05 22:23:47 +01:00
Corwin e61fdb7f97
make wider on mobile 2024-04-05 22:23:35 +01:00
Corwin c433dbefdc
Mobile support for website (#607)
Adds mobile control scheme that sort of works.
I feel like it doesn't quite work.

Also, frame rate problems on mobile.

- [ ] Changelog updated / no changelog update needed
2024-04-05 20:24:29 +01:00
Corwin a1e8ac76fe
add docs link 2024-04-05 19:53:38 +01:00
Corwin 34c66cc61e
specify dependency array 2024-04-05 19:50:12 +01:00
Corwin 48373faa17
finish adding mobile controls 2024-04-05 19:47:04 +01:00
Corwin 552f8f878d
more mobile stuff 2024-04-05 17:09:50 +01:00
Corwin e43d2d5a3e
make widths work on mobile 2024-04-05 12:09:13 +01:00
Corwin 994e1fe717
make start and select work by default 2024-04-05 00:58:38 +01:00
renovate[bot] 2877ea2177
Update dependency @testing-library/jest-dom to v6 2024-04-04 22:47:37 +00:00
Corwin b9c76511a2
Update dependency prettier to v3 (#602)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [prettier](https://prettier.io)
([source](https://togithub.com/prettier/prettier)) | [`2.8.8` ->
`3.2.5`](https://renovatebot.com/diffs/npm/prettier/2.8.8/3.2.5) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/prettier/3.2.5?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/prettier/3.2.5?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/prettier/2.8.8/3.2.5?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/prettier/2.8.8/3.2.5?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>prettier/prettier (prettier)</summary>

###
[`v3.2.5`](https://togithub.com/prettier/prettier/blob/HEAD/CHANGELOG.md#325)

[Compare
Source](https://togithub.com/prettier/prettier/compare/3.2.4...3.2.5)

[diff](https://togithub.com/prettier/prettier/compare/3.2.4...3.2.5)

##### Support Angular inline styles as single template literal
([#&#8203;15968](https://togithub.com/prettier/prettier/pull/15968) by
[@&#8203;sosukesuzuki](https://togithub.com/sosukesuzuki))

[Angular
v17](https://blog.angular.io/introducing-angular-v17-4d7033312e4b)
supports single string inline styles.

<!-- prettier-ignore -->

```ts
// Input
@&#8203;Component({
  template: `<div>...</div>`,
  styles: `h1 { color: blue; }`,
})
export class AppComponent {}

// Prettier 3.2.4
@&#8203;Component({
  template: `<div>...</div>`,
  styles: `h1 { color: blue; }`,
})
export class AppComponent {}

// Prettier 3.2.5
@&#8203;Component({
  template: `<div>...</div>`,
  styles: `
    h1 {
      color: blue;
    }
  `,
})
export class AppComponent {}

```

##### Unexpected embedded formatting for Angular template
([#&#8203;15969](https://togithub.com/prettier/prettier/pull/15969) by
[@&#8203;JounQin](https://togithub.com/JounQin))

Computed template should not be considered as Angular component template

<!-- prettier-ignore -->

```ts
// Input
const template = "foobar";

@&#8203;Component({
  [template]: `<h1>{{       hello }}</h1>`,
})
export class AppComponent {}

// Prettier 3.2.4
const template = "foobar";

@&#8203;Component({
  [template]: `<h1>{{ hello }}</h1>`,
})
export class AppComponent {}

// Prettier 3.2.5
const template = "foobar";

@&#8203;Component({
  [template]: `<h1>{{       hello }}</h1>`,
})
export class AppComponent {}
```

##### Use `"json"` parser for `tsconfig.json` by default
([#&#8203;16012](https://togithub.com/prettier/prettier/pull/16012) by
[@&#8203;sosukesuzuki](https://togithub.com/sosukesuzuki))

In
[v2.3.0](https://prettier.io/blog/2024/01/12/3.2.0#new-jsonc-parser-added-15831httpsgithubcomprettierprettierpull15831-by-fiskerhttpsgithubcomfisker),
we introduced `"jsonc"` parser which adds trialing comma **by default**.

When adding a new parser we also define how it will be used based on the
[`linguist-languages`](https://www.npmjs.com/package/linguist-languages)
data.

`tsconfig.json` is a special file used by
[TypeScript](https://www.typescriptlang.org/docs/handbook/tsconfig-json.html#using-tsconfigjson-or-jsconfigjson),
it uses `.json` file extension, but it actually uses the [JSON with
Comments](https://code.visualstudio.com/docs/languages/json#\_json-with-comments)
syntax. However, we found that there are many third-party tools not
recognize it correctly because of the confusing `.json` file extension.

We decide to treat it as a JSON file for now to avoid the extra
configuration step.

To keep using the `"jsonc"` parser for your `tsconfig.json` files, add
the following to your `.pretterrc` file

```json
{
  "overrides": [
    {
      "files": ["tsconfig.json", "jsconfig.json"],
      "options": {
        "parser": "jsonc"
      }
    }
  ]
}
```

<!-- prettier-ignore -->

```
```

###
[`v3.2.4`](https://togithub.com/prettier/prettier/blob/HEAD/CHANGELOG.md#324)

[Compare
Source](https://togithub.com/prettier/prettier/compare/3.2.3...3.2.4)

[diff](https://togithub.com/prettier/prettier/compare/3.2.3...3.2.4)

##### Fix incorrect parser inference
([#&#8203;15947](https://togithub.com/prettier/prettier/pull/15947) by
[@&#8203;fisker](https://togithub.com/fisker))

Files like `.eslintrc.json` were incorrectly formatted as JSONC files.

<!-- prettier-ignore -->

```jsx
// Input
prettier --file-info .eslintrc.json
{ "ignored": false, "inferredParser": "jsonc" }

// Prettier 3.2.4
prettier --file-info .eslintrc.json
{ "ignored": false, "inferredParser": "json" }
```

###
[`v3.2.3`](https://togithub.com/prettier/prettier/blob/HEAD/CHANGELOG.md#323)

[Compare
Source](https://togithub.com/prettier/prettier/compare/3.2.2...3.2.3)

[diff](https://togithub.com/prettier/prettier/compare/3.2.2...3.2.3)

##### Throw errors for invalid code
([#&#8203;15881](https://togithub.com/prettier/prettier/pull/15881) by
[@&#8203;fisker](https://togithub.com/fisker),
[@&#8203;Josh-Cena](https://togithub.com/Josh-Cena),
[@&#8203;auvred](https://togithub.com/auvred))

<!-- prettier-ignore -->

```ts
// Input
1++;

// Prettier 3.2.2
1++;

// Prettier 3.2.3
SyntaxError: Invalid left-hand side expression in unary operation (1:1)
> 1 | 1++;
    | ^
```

<!-- prettier-ignore -->

```ts
// Input
try {} catch (error = 1){}

// Prettier 3.2.2
try {
} catch (error) {}

// Prettier 3.2.3
SyntaxError: Catch clause variable cannot have an initializer. (1:23)
> 1 | try {} catch (error = 1){}
    |                       ^
```

##### Fix parser inference
([#&#8203;15927](https://togithub.com/prettier/prettier/pull/15927) by
[@&#8203;fisker](https://togithub.com/fisker))

<!-- prettier-ignore -->

```console
// Prettier 3.2.2
prettier --file-info tsconfig.json
{ "ignored": false, "inferredParser": "json" }

// Prettier 3.2.3
prettier --file-info tsconfig.json
{ "ignored": false, "inferredParser": "jsonc" }
```

###
[`v3.2.2`](https://togithub.com/prettier/prettier/blob/HEAD/CHANGELOG.md#322)

[Compare
Source](https://togithub.com/prettier/prettier/compare/3.2.1...3.2.2)

[diff](https://togithub.com/prettier/prettier/compare/3.2.1...3.2.2)

##### Fix crash when parsing template literal CSS in a JSX style tag
using a spread attribute
([#&#8203;15896](https://togithub.com/prettier/prettier/pull/15896) by
[@&#8203;eelco](https://togithub.com/eelco))

For example this code would crash before:

<!-- prettier-ignore -->

```jsx
<style {...spread}>{`.{}`}</style>
```

##### Fix formatting error on optional call expression and member chain
([#&#8203;15920](https://togithub.com/prettier/prettier/pull/15920) by
[@&#8203;sosukesuzuki](https://togithub.com/sosukesuzuki))

<!-- prettier-ignore -->

```jsx
// Input
a(() => {}, c?.d());

// Prettier 3.2.1
TypeError: Cannot read properties of undefined (reading 'type')

// Prettier 3.2.2
a(() => {}, c?.d());
```

###
[`v3.2.1`](https://togithub.com/prettier/prettier/blob/HEAD/CHANGELOG.md#321)

[Compare
Source](https://togithub.com/prettier/prettier/compare/3.2.0...3.2.1)

[diff](https://togithub.com/prettier/prettier/compare/3.2.0...3.2.1)

##### Fix formatting error on member chain
([#&#8203;15915](https://togithub.com/prettier/prettier/pull/15915) by
[@&#8203;sosukesuzuki](https://togithub.com/sosukesuzuki))

<!-- prettier-ignore -->

```jsx
// Input
test().test2().test2(thing?.something);

// Prettier 3.2.0
TypeError: Cannot read properties of undefined (reading 'type')

// Prettier 3.2.1
test().test2().test2(thing?.something);

```

###
[`v3.2.0`](https://togithub.com/prettier/prettier/blob/HEAD/CHANGELOG.md#320)

[Compare
Source](https://togithub.com/prettier/prettier/compare/3.1.1...3.2.0)

[diff](https://togithub.com/prettier/prettier/compare/3.1.1...3.2.0)

🔗 [Release Notes](https://prettier.io/blog/2024/01/13/3.2.0.html)

###
[`v3.1.1`](https://togithub.com/prettier/prettier/blob/HEAD/CHANGELOG.md#311)

[Compare
Source](https://togithub.com/prettier/prettier/compare/3.1.0...3.1.1)

[diff](https://togithub.com/prettier/prettier/compare/3.1.0...3.1.1)

##### Fix config file search
([#&#8203;15363](https://togithub.com/prettier/prettier/pull/15363) by
[@&#8203;fisker](https://togithub.com/fisker))

Previously, we start search for config files from the filePath as a
directory, if it happened to be a directory and contains config file, it
will be used by mistake.

```text
├─ .prettierrc
└─ test.js         (A directory)
  └─ .prettierrc
```

```js
// Prettier 3.1.0
await prettier.resolveConfigFile(new URL("./test.js", import.meta.url));
// <CWD>/test.js/.prettierrc

// Prettier 3.1.1
await prettier.resolveConfigFile(new URL("./test.js", import.meta.url));
// <CWD>/.prettierrc
```

##### Skip explicitly passed symbolic links with
`--no-error-on-unmatched-pattern`
([#&#8203;15533](https://togithub.com/prettier/prettier/pull/15533) by
[@&#8203;sanmai-NL](https://togithub.com/sanmai-NL))

Since Prettier v3, we stopped following symbolic links, however in some
use cases, the symbolic link patterns can't be filtered out, and there
is no way to prevent Prettier from throwing errors.

In Prettier 3.1.1, you can use `--no-error-on-unmatched-pattern` to
simply skip symbolic links.

##### Consistently use tabs in ternaries when `useTabs` is `true`
([#&#8203;15662](https://togithub.com/prettier/prettier/pull/15662) by
[@&#8203;auvred](https://togithub.com/auvred))

<!-- prettier-ignore -->

```jsx
// Input
aaaaaaaaaaaaaaa
	? bbbbbbbbbbbbbbbbbb
	: ccccccccccccccc
	  ? ddddddddddddddd
	  : eeeeeeeeeeeeeee
	    ? fffffffffffffff
	    : gggggggggggggggg;

// Prettier 3.1.0
aaaaaaaaaaaaaaa
	? bbbbbbbbbbbbbbbbbb
	: ccccccccccccccc
	  ? ddddddddddddddd
	  : eeeeeeeeeeeeeee
	    ? fffffffffffffff
	    : gggggggggggggggg;

// Prettier 3.1.1
aaaaaaaaaaaaaaa
	? bbbbbbbbbbbbbbbbbb
	: ccccccccccccccc
		? ddddddddddddddd
		: eeeeeeeeeeeeeee
			? fffffffffffffff
			: gggggggggggggggg;
```

##### Improve config file search
([#&#8203;15663](https://togithub.com/prettier/prettier/pull/15663) by
[@&#8203;fisker](https://togithub.com/fisker))

The Prettier config file search performance has been improved by more
effective cache strategy.

##### Fix unstable and ugly formatting for comments in destructuring
patterns
([#&#8203;15708](https://togithub.com/prettier/prettier/pull/15708) by
[@&#8203;sosukesuzuki](https://togithub.com/sosukesuzuki))

<!-- prettier-ignore -->

```tsx
// Input
const {
  foo,
  // bar
  // baz
}: Foo = expr;

// Prettier 3.1.0
const {
  foo1,
} // bar
// baz
: Foo = expr;

// Prettier 3.1.0 second output
const {
  foo1, // bar
} // baz
: Foo = expr;

// Prettier 3.1.1
const {
  foo1,
  // bar
  // baz
}: Foo = expr;
```

##### Support "Import Attributes"
([#&#8203;15718](https://togithub.com/prettier/prettier/pull/15718) by
[@&#8203;fisker](https://togithub.com/fisker))

[TypeScript
5.3](https://devblogs.microsoft.com/typescript/announcing-typescript-5-3/#import-attributes)
supports the latest updates to the [import
attributes](https://togithub.com/tc39/proposal-import-attributes)
proposal.

```tsx
import something from "./something.json" with { type: "json" };
```

##### Fix false claim in docs that cursorOffset is incompatible with
rangeStart/rangeEnd
([#&#8203;15750](https://togithub.com/prettier/prettier/pull/15750) by
[@&#8203;ExplodingCabbage](https://togithub.com/ExplodingCabbage))

The cursorOffset option has in fact been compatible with
rangeStart/rangeEnd for over 5 years, thanks to work by
[@&#8203;ds300](https://togithub.com/ds300). However, Prettier's
documentation (including the CLI `--help` text) continued to claim
otherwise, falsely. The documentation is now fixed.

##### Keep curly braces and `from` keyword in empty `import` statements
([#&#8203;15756](https://togithub.com/prettier/prettier/pull/15756) by
[@&#8203;fisker](https://togithub.com/fisker))

<!-- prettier-ignore -->

```js
// Input
import { } from 'foo';
import { /* comment */ } from 'bar';

// Prettier 3.1.0
import {} from "foo";
import /* comment */ "bar";

// Prettier 3.1.1
import {} from "foo";
import {} from /* comment */ "bar";
```

##### Keep empty import attributes and assertions
([#&#8203;15757](https://togithub.com/prettier/prettier/pull/15757) by
[@&#8203;fisker](https://togithub.com/fisker))

<!-- prettier-ignore -->

```js
// Input
import foo from "foo" with {};
import bar from "bar" assert {};

// Prettier 3.1.0
import foo from "foo";
import bar from "bar";

// Prettier 3.1.1
import foo from "foo" with {};
import bar from "bar" assert {};
```

###
[`v3.1.0`](https://togithub.com/prettier/prettier/blob/HEAD/CHANGELOG.md#310)

[Compare
Source](https://togithub.com/prettier/prettier/compare/3.0.3...3.1.0)

[diff](https://togithub.com/prettier/prettier/compare/3.0.3...3.1.0)

🔗 [Release Notes](https://prettier.io/blog/2023/11/13/3.1.0.html)

###
[`v3.0.3`](https://togithub.com/prettier/prettier/blob/HEAD/CHANGELOG.md#303)

[Compare
Source](https://togithub.com/prettier/prettier/compare/3.0.2...3.0.3)

[diff](https://togithub.com/prettier/prettier/compare/3.0.2...3.0.3)

##### Add `preferUnplugged: true` to `package.json`
([#&#8203;15169](https://togithub.com/prettier/prettier/pull/15169) by
[@&#8203;fisker](https://togithub.com/fisker) and
[@&#8203;so1ve](https://togithub.com/so1ve))

Prettier v3 uses dynamic imports, user [will need to unplug
Prettier](https://togithub.com/yarnpkg/berry/pull/5411#issuecomment-1523502224)
when Yarn's PnP mode is enabled, add [`preferUnplugged:
true`](https://yarnpkg.com/configuration/manifest#preferUnplugged) to
`package.json`, so Yarn will install Prettier as unplug by default.

##### Support shared config that forbids `require()`
([#&#8203;15233](https://togithub.com/prettier/prettier/pull/15233) by
[@&#8203;fisker](https://togithub.com/fisker))

If an external shared config package is used, and the package `exports`
don't have `require` or `default` export.

In Prettier 3.0.2 Prettier fails when attempt to `require()` the
package, and throws an error.

```text
Error [ERR_PACKAGE_PATH_NOT_EXPORTED]: No "exports" main defined in <packageName>/package.json
```

##### Allow argument of `require()` to break
([#&#8203;15256](https://togithub.com/prettier/prettier/pull/15256) by
[@&#8203;fisker](https://togithub.com/fisker))

<!-- prettier-ignore -->

```jsx
// Input
const plugin = require(
  global.STANDALONE
    ? path.join(__dirname, "../standalone.js")
    : path.join(__dirname, "..")
);

// Prettier 3.0.2
const plugin = require(global.STANDALONE
  ? path.join(__dirname, "../standalone.js")
  : path.join(__dirname, ".."));

// Prettier 3.0.3
const plugin = require(
  global.STANDALONE
    ? path.join(__dirname, "../standalone.js")
    : path.join(__dirname, "..")
);
```

##### Do not print trailing commas in arrow function type parameter
lists in `ts` code blocks
([#&#8203;15286](https://togithub.com/prettier/prettier/pull/15286) by
[@&#8203;sosukesuzuki](https://togithub.com/sosukesuzuki))

<!-- prettier-ignore -->

````md
<!-- Input -->
```ts
const foo = <T>() => {}
```

<!-- Prettier 3.0.2 -->
```ts
const foo = <T,>() => {}
```

<!-- Prettier 3.0.3 -->
```ts
const foo = <T>() => {}
```
````

##### Support TypeScript 5.2 `using` / `await using` declaration
([#&#8203;15321](https://togithub.com/prettier/prettier/pull/15321) by
[@&#8203;sosukesuzuki](https://togithub.com/sosukesuzuki))

Support for the upcoming Explicit Resource Management feature in
ECMAScript. [`using` / `await using`
declaration](https://devblogs.microsoft.com/typescript/announcing-typescript-5-2/#using-declarations-and-explicit-resource-management)

<!-- prettier-ignore -->

```tsx
{
   using foo = new Foo();
   await using bar = new Bar();
}
```

###
[`v3.0.2`](https://togithub.com/prettier/prettier/blob/HEAD/CHANGELOG.md#302)

[Compare
Source](https://togithub.com/prettier/prettier/compare/3.0.1...3.0.2)

[diff](https://togithub.com/prettier/prettier/compare/3.0.1...3.0.2)

##### Break after `=` of assignment if RHS is poorly breakable
AwaitExpression or YieldExpression
([#&#8203;15204](https://togithub.com/prettier/prettier/pull/15204) by
[@&#8203;seiyab](https://togithub.com/seiyab))

<!-- prettier-ignore -->

```js
// Input
const { section, rubric, authors, tags } = await utils.upsertCommonData(mainData);

// Prettier 3.0.1
const { section, rubric, authors, tags } = await utils.upsertCommonData(
  mainData,
);

// Prettier 3.0.2
const { section, rubric, authors, tags } =
  await utils.upsertCommonData(mainData);
```

##### Do not add trailing comma for grouped scss comments
([#&#8203;15217](https://togithub.com/prettier/prettier/pull/15217) by
[@&#8203;auvred](https://togithub.com/auvred))

<!-- prettier-ignore -->

```scss
/* Input */
$foo: (
	'property': (),
	// comment 1
	// comment 2
)

/* Prettier 3.0.1 */
$foo: (
  "property": (),
  // comment 1
  // comment 2,
);

/* Prettier 3.0.2 */
$foo: (
  "property": (),
  // comment 1
  // comment 2
);
```

##### Print `declare` and `export` keywords for nested namespace
([#&#8203;15249](https://togithub.com/prettier/prettier/pull/15249) by
[@&#8203;sosukesuzuki](https://togithub.com/sosukesuzuki))

<!-- prettier-ignore -->

```tsx
// Input
declare namespace abc1.def {}
export namespace abc2.def {}

// Prettier 3.0.1
namespace abc1.def {}
namespace abc2.def {}

// Prettier 3.0.2
declare namespace abc1.def {}
export namespace abc2.def {}
```

###
[`v3.0.1`](https://togithub.com/prettier/prettier/blob/HEAD/CHANGELOG.md#301)

[Compare
Source](https://togithub.com/prettier/prettier/compare/3.0.0...3.0.1)

[diff](https://togithub.com/prettier/prettier/compare/3.0.0...3.0.1)

##### Fix cursor positioning for a special case
([#&#8203;14812](https://togithub.com/prettier/prettier/pull/14812) by
[@&#8203;fisker](https://togithub.com/fisker))

<!-- prettier-ignore -->

```js
// <|> is the cursor position

/* Input */
// All messages are represented in JSON.
// So, the prettier.py controls a subprocess which spawns "node {this_file}".
import {<|>  } from "fs"

/* Prettier 3.0.0 */
// All messages are represented in JSON.
// So, the prettier.py <|>controls a subprocess which spawns "node {this_file}".
import {} from "fs"

/* Prettier 3.0.1 */
// All messages are represented in JSON.
// So, the prettier.py controls a subprocess which spawns "node {this_file}".
import {<|>} from "fs"
```

##### Fix plugins/estree.d.ts to make it a module
([#&#8203;15018](https://togithub.com/prettier/prettier/pull/15018) by
[@&#8203;kingyue737](https://togithub.com/kingyue737))

Add `export {}` in `plugins/estree.d.ts` to fix the "File is not a
module" error

##### Add parenthesis around leading multiline comment in return
statement
([#&#8203;15037](https://togithub.com/prettier/prettier/pull/15037) by
[@&#8203;auvred](https://togithub.com/auvred))

<!-- prettier-ignore -->

```jsx
// Input
function fn() {
  return (
    /**
     * @&#8203;type {...}
     */ expresssion
  )
}

// Prettier 3.0.0
function fn() {
  return /**
   * @&#8203;type {...}
   */ expresssion;
}

// Prettier 3.0.1
function fn() {
  return (
    /**
     * @&#8203;type {...}
     */ expresssion
  );
}
```

##### Add support for Vue "Generic Components"
([#&#8203;15066](https://togithub.com/prettier/prettier/pull/15066) by
[@&#8203;auvred](https://togithub.com/auvred))

https://blog.vuejs.org/posts/vue-3-3#generic-components

<!-- prettier-ignore -->

```vue
<!-- Input -->
<script setup lang="ts" generic="T extends Type1 & Type2 & (Type3 | Type4), U extends string | number | boolean"></script>

<!-- Prettier 3.0.0 -->
<script
  setup
  lang="ts"
  generic="T extends Type1 & Type2 & (Type3 | Type4), U extends string | number | boolean"
></script>

<!-- Prettier 3.0.1 -->
<script
  setup
  lang="ts"
  generic="
    T extends Type1 & Type2 & (Type3 | Type4),
    U extends string | number | boolean
  "
></script>
```

##### Fix comments print in `IfStatement`
([#&#8203;15076](https://togithub.com/prettier/prettier/pull/15076) by
[@&#8203;fisker](https://togithub.com/fisker))

<!-- prettier-ignore -->

```js
function a(b) {
  if (b) return 1; // comment
  else return 2;
}

/* Prettier 3.0.0 */
Error: Comment "comment" was not printed. Please report this error!

/* Prettier 3.0.1 */
function a(b) {
  if (b) return 1; // comment
  else return 2;
}
```

##### Add missing type definition for `printer.preprocess`
([#&#8203;15123](https://togithub.com/prettier/prettier/pull/15123) by
[@&#8203;so1ve](https://togithub.com/so1ve))

```diff
export interface Printer<T = any> {
  // ...
+ preprocess?:
+   | ((ast: T, options: ParserOptions<T>) => T | Promise<T>)
+   | undefined;
}
```

##### Add missing `getVisitorKeys` method type definition for `Printer`
([#&#8203;15125](https://togithub.com/prettier/prettier/pull/15125) by
[@&#8203;auvred](https://togithub.com/auvred))

```tsx
const printer: Printer = {
  print: () => [],
  getVisitorKeys(node, nonTraversableKeys) {
    return ["body"];
  },
};
```

##### Add typing to support `readonly` array properties of AST Node
([#&#8203;15127](https://togithub.com/prettier/prettier/pull/15127) by
[@&#8203;auvred](https://togithub.com/auvred))

<!-- prettier-ignore -->

```tsx
// Input
interface TestNode {
  readonlyArray: readonly string[];
}

declare const path: AstPath<TestNode>;

path.map(() => "", "readonlyArray");

// Prettier 3.0.0
interface TestNode {
  readonlyArray: readonly string[];
}

declare const path: AstPath<TestNode>;

path.map(() => "", "readonlyArray");
//                  ^ Argument of type '"readonlyArray"' is not assignable to parameter of type '"regularArray"'. ts(2345)

// Prettier 3.0.1
interface TestNode {
  readonlyArray: readonly string[];
}

declare const path: AstPath<TestNode>;

path.map(() => "", "readonlyArray");
```

##### Add space before unary minus followed by a function call
([#&#8203;15129](https://togithub.com/prettier/prettier/pull/15129) by
[@&#8203;pamelalozano](https://togithub.com/pamelalozano))

<!-- prettier-ignore -->

```less
// Input
div {
  margin: - func();
}

// Prettier 3.0.0
div {
  margin: -func();
}

// Prettier 3.0.1
div {
  margin: - func();
}
```

###
[`v3.0.0`](https://togithub.com/prettier/prettier/blob/HEAD/CHANGELOG.md#300)

[Compare
Source](https://togithub.com/prettier/prettier/compare/2.8.8...3.0.0)

[diff](https://togithub.com/prettier/prettier/compare/3.0.0-alpha.6...3.0.0)

🔗 [Release Notes](https://prettier.io/blog/2023/07/05/3.0.0.html)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log [here](https://developer.mend.io/github/agbrs/agb).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yNjkuMiIsInVwZGF0ZWRJblZlciI6IjM3LjI2OS4yIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIn0=-->
2024-04-04 22:33:36 +00:00
Corwin e57df6f03f
Update dependency web-vitals to v3.5.2 (#600)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [web-vitals](https://togithub.com/GoogleChrome/web-vitals) | [`3.3.2`
-> `3.5.2`](https://renovatebot.com/diffs/npm/web-vitals/3.3.2/3.5.2) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/web-vitals/3.5.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/web-vitals/3.5.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/web-vitals/3.3.2/3.5.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/web-vitals/3.3.2/3.5.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>GoogleChrome/web-vitals (web-vitals)</summary>

###
[`v3.5.2`](https://togithub.com/GoogleChrome/web-vitals/blob/HEAD/CHANGELOG.md#v352-2024-01-25)

[Compare
Source](https://togithub.com/GoogleChrome/web-vitals/compare/v3.5.1...v3.5.2)

- Pick the first non-null `target` for INP attribution
([#&#8203;421](https://togithub.com/GoogleChrome/web-vitals/pull/421))

###
[`v3.5.1`](https://togithub.com/GoogleChrome/web-vitals/blob/HEAD/CHANGELOG.md#v351-2023-12-27)

[Compare
Source](https://togithub.com/GoogleChrome/web-vitals/compare/v3.5.0...v3.5.1)

- Add extra guard for `PerformanceEventTiming` not existing
([#&#8203;403](https://togithub.com/GoogleChrome/web-vitals/pull/403))

###
[`v3.5.0`](https://togithub.com/GoogleChrome/web-vitals/blob/HEAD/CHANGELOG.md#v350-2023-09-28)

[Compare
Source](https://togithub.com/GoogleChrome/web-vitals/compare/v3.4.0...v3.5.0)

- Run `onLCP` callback in separate task
([#&#8203;386](https://togithub.com/GoogleChrome/web-vitals/pull/386))
- Fix INP durationThreshold bug when set to 0
([#&#8203;372](https://togithub.com/GoogleChrome/web-vitals/pull/372))
- Prevent FID entries being emitted as INP for non-supporting browsers
([#&#8203;368](https://togithub.com/GoogleChrome/web-vitals/pull/368))

###
[`v3.4.0`](https://togithub.com/GoogleChrome/web-vitals/blob/HEAD/CHANGELOG.md#v340-2023-07-11)

[Compare
Source](https://togithub.com/GoogleChrome/web-vitals/compare/v3.3.2...v3.4.0)

- Make `bindReporter` generic over metric type
([#&#8203;359](https://togithub.com/GoogleChrome/web-vitals/pull/359))
- Update INP status in README
([#&#8203;362](https://togithub.com/GoogleChrome/web-vitals/pull/362))
- Fix Metric types for better TypeScript support
([#&#8203;356](https://togithub.com/GoogleChrome/web-vitals/pull/356))
- Fix selector for SVGs for attribution build
([#&#8203;354](https://togithub.com/GoogleChrome/web-vitals/pull/354))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log [here](https://developer.mend.io/github/agbrs/agb).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yNjkuMiIsInVwZGF0ZWRJblZlciI6IjM3LjI2OS4yIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIn0=-->
2024-04-04 22:32:17 +00:00
Corwin 658b4c387b
Update dependency styled-components to v6.1.8 (#599)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [styled-components](https://styled-components.com)
([source](https://togithub.com/styled-components/styled-components)) |
[`6.0.2` ->
`6.1.8`](https://renovatebot.com/diffs/npm/styled-components/6.0.2/6.1.8)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/styled-components/6.1.8?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/styled-components/6.1.8?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/styled-components/6.0.2/6.1.8?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/styled-components/6.0.2/6.1.8?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>styled-components/styled-components
(styled-components)</summary>

###
[`v6.1.8`](https://togithub.com/styled-components/styled-components/releases/tag/v6.1.8)

[Compare
Source](https://togithub.com/styled-components/styled-components/compare/v6.1.7...v6.1.8)

Revert adding `peerDependencies` from v6.1.7; apparently some build
tools do not respect `peerDependenciesMeta[package].optional` which is
[causing
issues](https://togithub.com/styled-components/styled-components/pull/4243#issuecomment-1881571372).
Will revisit at a later date if possible.

**Full Changelog**:
https://github.com/styled-components/styled-components/compare/v6.1.7...v6.1.8

###
[`v6.1.7`](https://togithub.com/styled-components/styled-components/releases/tag/v6.1.7)

[Compare
Source](https://togithub.com/styled-components/styled-components/compare/v6.1.6...v6.1.7)

##### What's Changed

- chore: add all missing peer dependency statements by
[@&#8203;quantizor](https://togithub.com/quantizor) in
[https://github.com/styled-components/styled-components/pull/4243](https://togithub.com/styled-components/styled-components/pull/4243)

NOTE: this change may cause some installed dependency duplication until
[this NPM bug](https://togithub.com/npm/cli/issues/7106) is addressed
but yarn and pnpm have correct behavior. Bun also has [a similar
bug](https://togithub.com/oven-sh/bun/issues/7869).

Overall these changes ensure that styled-components is specifying a
known working version of all utilized libraries, while instructing the
client package manager that higher semver-compliant versions are
*permissible and should work*, assuming the relevant libraries are
compliant in practice.

**Full Changelog**:
https://github.com/styled-components/styled-components/compare/v6.1.6...v6.1.7

###
[`v6.1.6`](https://togithub.com/styled-components/styled-components/releases/tag/v6.1.6)

[Compare
Source](https://togithub.com/styled-components/styled-components/compare/v6.1.5...v6.1.6)

##### What's Changed

- fix: bump stylis to 4.3.1 to resolve issue with leaking nested
selectors by [@&#8203;quantizor](https://togithub.com/quantizor) in
[https://github.com/styled-components/styled-components/pull/4245](https://togithub.com/styled-components/styled-components/pull/4245)

**Full Changelog**:
https://github.com/styled-components/styled-components/compare/v6.1.5...v6.1.6

###
[`v6.1.5`](https://togithub.com/styled-components/styled-components/releases/tag/v6.1.5)

[Compare
Source](https://togithub.com/styled-components/styled-components/compare/v6.1.4...v6.1.5)

##### What's Changed

- fix: further constrain self-referencing to match v5 behavior by
[@&#8203;quantizor](https://togithub.com/quantizor) in
[https://github.com/styled-components/styled-components/pull/4244](https://togithub.com/styled-components/styled-components/pull/4244)

**Full Changelog**:
https://github.com/styled-components/styled-components/compare/v6.1.4...v6.1.5

###
[`v6.1.4`](https://togithub.com/styled-components/styled-components/releases/tag/v6.1.4)

[Compare
Source](https://togithub.com/styled-components/styled-components/compare/v6.1.3...v6.1.4)

#### What's Changed

- fix: allow using `attrs` to provide a custom `theme` prop to child
components by [@&#8203;quantizor](https://togithub.com/quantizor) in
[https://github.com/styled-components/styled-components/pull/4242](https://togithub.com/styled-components/styled-components/pull/4242)

**Full Changelog**:
https://github.com/styled-components/styled-components/compare/v6.1.3...v6.1.4

###
[`v6.1.3`](https://togithub.com/styled-components/styled-components/releases/tag/v6.1.3)

[Compare
Source](https://togithub.com/styled-components/styled-components/compare/v6.1.2...v6.1.3)

#### What's Changed

- fix(types): missing type declarations by
[@&#8203;benjaminrae](https://togithub.com/benjaminrae) in
[https://github.com/styled-components/styled-components/pull/4237](https://togithub.com/styled-components/styled-components/pull/4237)
- fix(deps): pin dependencies to exact versions prior to bun migration
by [@&#8203;quantizor](https://togithub.com/quantizor) in
[https://github.com/styled-components/styled-components/pull/4238](https://togithub.com/styled-components/styled-components/pull/4238)
- fix(types): nested styled with additional prop types by
[@&#8203;justinbhopper](https://togithub.com/justinbhopper) in
[https://github.com/styled-components/styled-components/pull/4236](https://togithub.com/styled-components/styled-components/pull/4236)

#### New Contributors

- [@&#8203;benjaminrae](https://togithub.com/benjaminrae) made their
first contribution in
[https://github.com/styled-components/styled-components/pull/4237](https://togithub.com/styled-components/styled-components/pull/4237)

**Full Changelog**:
https://github.com/styled-components/styled-components/compare/v6.1.2...v6.1.3

###
[`v6.1.2`](https://togithub.com/styled-components/styled-components/releases/tag/v6.1.2)

[Compare
Source](https://togithub.com/styled-components/styled-components/compare/v6.1.1...v6.1.2)

#### What's Changed

- fix(types): StyledObject type to allow nested selectors by
[@&#8203;maximebiloe](https://togithub.com/maximebiloe) in
[https://github.com/styled-components/styled-components/pull/4212](https://togithub.com/styled-components/styled-components/pull/4212)
- feat(types): expose FastOmit to improve emit performance by
[@&#8203;justinbhopper](https://togithub.com/justinbhopper) in
[https://github.com/styled-components/styled-components/pull/4230](https://togithub.com/styled-components/styled-components/pull/4230)

#### New Contributors

- [@&#8203;maximebiloe](https://togithub.com/maximebiloe) made their
first contribution in
[https://github.com/styled-components/styled-components/pull/4212](https://togithub.com/styled-components/styled-components/pull/4212)

**Full Changelog**:
https://github.com/styled-components/styled-components/compare/v6.1.1...v6.1.2

###
[`v6.1.1`](https://togithub.com/styled-components/styled-components/releases/tag/v6.1.1)

[Compare
Source](https://togithub.com/styled-components/styled-components/compare/v6.1.0...v6.1.1)

#### What's Changed

- fix(types): remove duplicated type by
[@&#8203;takurinton](https://togithub.com/takurinton) in
[https://github.com/styled-components/styled-components/pull/4200](https://togithub.com/styled-components/styled-components/pull/4200)
- fix(native): image unsupported border color style by
[@&#8203;nazmeln](https://togithub.com/nazmeln) in
[https://github.com/styled-components/styled-components/pull/4195](https://togithub.com/styled-components/styled-components/pull/4195)
- fix(styled): add displayName in all environments by
[@&#8203;delijah](https://togithub.com/delijah) in
[https://github.com/styled-components/styled-components/pull/4208](https://togithub.com/styled-components/styled-components/pull/4208)
- fix(ssr): correctly place new rules after hydrated rules by
[@&#8203;probablyup](https://togithub.com/probablyup) in
[https://github.com/styled-components/styled-components/pull/4210](https://togithub.com/styled-components/styled-components/pull/4210)

#### New Contributors

- [@&#8203;nazmeln](https://togithub.com/nazmeln) made their first
contribution in
[https://github.com/styled-components/styled-components/pull/4195](https://togithub.com/styled-components/styled-components/pull/4195)
- [@&#8203;delijah](https://togithub.com/delijah) made their first
contribution in
[https://github.com/styled-components/styled-components/pull/4208](https://togithub.com/styled-components/styled-components/pull/4208)

**Full Changelog**:
https://github.com/styled-components/styled-components/compare/v6.1.0...v6.1.1

###
[`v6.1.0`](https://togithub.com/styled-components/styled-components/releases/tag/v6.1.0)

[Compare
Source](https://togithub.com/styled-components/styled-components/compare/v6.0.9...v6.1.0)

#### What's Changed

- fix(native): bump postcss version from 8.4.23 to 8.4.31 by
[@&#8203;davidlacasse](https://togithub.com/davidlacasse) in
[https://github.com/styled-components/styled-components/pull/4188](https://togithub.com/styled-components/styled-components/pull/4188)
- fix(native): solve ts warning by
[@&#8203;krudos](https://togithub.com/krudos) in
[https://github.com/styled-components/styled-components/pull/4190](https://togithub.com/styled-components/styled-components/pull/4190)
- chore: remove babel macro due to lack of usage by
[@&#8203;probablyup](https://togithub.com/probablyup) in
[https://github.com/styled-components/styled-components/pull/4193](https://togithub.com/styled-components/styled-components/pull/4193)

#### New Contributors

- [@&#8203;davidlacasse](https://togithub.com/davidlacasse) made their
first contribution in
[https://github.com/styled-components/styled-components/pull/4188](https://togithub.com/styled-components/styled-components/pull/4188)

**Full Changelog**:
https://github.com/styled-components/styled-components/compare/v6.0.9...v6.1.0

###
[`v6.0.9`](https://togithub.com/styled-components/styled-components/releases/tag/v6.0.9)

[Compare
Source](https://togithub.com/styled-components/styled-components/compare/v6.0.8...v6.0.9)

fix bundling to not hardcode `window` (should fix some testing use cases
that were incorrectly assuming a server environment when JSDOM and
similar are in use)

**Full Changelog**:
https://github.com/styled-components/styled-components/compare/v6.0.8...v6.0.9

###
[`v6.0.8`](https://togithub.com/styled-components/styled-components/releases/tag/v6.0.8)

[Compare
Source](https://togithub.com/styled-components/styled-components/compare/v6.0.7...v6.0.8)

#### What's Changed

- feat(native): add `toStyleSheet` function by
[@&#8203;krudos](https://togithub.com/krudos) in
[https://github.com/styled-components/styled-components/pull/4124](https://togithub.com/styled-components/styled-components/pull/4124)
- fix: prevent `StyleSheetManager` updating context on every render by
[@&#8203;keeganstreet](https://togithub.com/keeganstreet) in
[https://github.com/styled-components/styled-components/pull/4159](https://togithub.com/styled-components/styled-components/pull/4159)
- fix(types): ensure typing for static properties defined on third-party
components wrapped by styled-components by
[@&#8203;MartinPELCAT](https://togithub.com/MartinPELCAT) in
[https://github.com/styled-components/styled-components/pull/4141](https://togithub.com/styled-components/styled-components/pull/4141)
- fix: production mode inconsistent CSS rendering when dynamic property
values are the same but property names are different by
[@&#8203;bcole808](https://togithub.com/bcole808) in
[https://github.com/styled-components/styled-components/pull/4132](https://togithub.com/styled-components/styled-components/pull/4132)
- fix(types): decrease type complexity by moving off of
`JSX.IntrinsicElements` for the supported element list by
[@&#8203;RJWadley](https://togithub.com/RJWadley) in
[https://github.com/styled-components/styled-components/pull/4149](https://togithub.com/styled-components/styled-components/pull/4149)
- fix(types): adopt ref typing from forwardedAs by
[@&#8203;probablyup](https://togithub.com/probablyup) in
[https://github.com/styled-components/styled-components/pull/4163](https://togithub.com/styled-components/styled-components/pull/4163)
- chore: update typescript reference on issue template by
[@&#8203;chilled-capybara](https://togithub.com/chilled-capybara) in
[https://github.com/styled-components/styled-components/pull/4150](https://togithub.com/styled-components/styled-components/pull/4150)
- chore(types): add type exports for `StyleFunction`, `Interpolation` by
[@&#8203;bcole808](https://togithub.com/bcole808) in
[https://github.com/styled-components/styled-components/pull/4140](https://togithub.com/styled-components/styled-components/pull/4140)
- chore: updated Contributing guide benchmark instructions by
[@&#8203;bcole808](https://togithub.com/bcole808) in
[https://github.com/styled-components/styled-components/pull/4137](https://togithub.com/styled-components/styled-components/pull/4137)
- chore(types): add missing types `CSSProperties`, `CSSObject`,
`CSSPseudos` and `CSSKeyframes` by
[@&#8203;takurinton](https://togithub.com/takurinton) in
[https://github.com/styled-components/styled-components/pull/4117](https://togithub.com/styled-components/styled-components/pull/4117)

#### New Contributors

- [@&#8203;takurinton](https://togithub.com/takurinton) made their first
contribution in
[https://github.com/styled-components/styled-components/pull/4117](https://togithub.com/styled-components/styled-components/pull/4117)
- [@&#8203;krudos](https://togithub.com/krudos) made their first
contribution in
[https://github.com/styled-components/styled-components/pull/4124](https://togithub.com/styled-components/styled-components/pull/4124)
- [@&#8203;chilled-capybara](https://togithub.com/chilled-capybara) made
their first contribution in
[https://github.com/styled-components/styled-components/pull/4150](https://togithub.com/styled-components/styled-components/pull/4150)
- [@&#8203;MartinPELCAT](https://togithub.com/MartinPELCAT) made their
first contribution in
[https://github.com/styled-components/styled-components/pull/4141](https://togithub.com/styled-components/styled-components/pull/4141)
- [@&#8203;RJWadley](https://togithub.com/RJWadley) made their first
contribution in
[https://github.com/styled-components/styled-components/pull/4149](https://togithub.com/styled-components/styled-components/pull/4149)

**Full Changelog**:
https://github.com/styled-components/styled-components/compare/v6.0.7...v6.0.8

###
[`v6.0.7`](https://togithub.com/styled-components/styled-components/releases/tag/v6.0.7)

[Compare
Source](https://togithub.com/styled-components/styled-components/compare/v6.0.6...v6.0.7)

#### What's Changed

- refactor(types): enable `exactOptionalPropertyTypes` check by
[@&#8203;aspirisen](https://togithub.com/aspirisen) in
[https://github.com/styled-components/styled-components/pull/3993](https://togithub.com/styled-components/styled-components/pull/3993)
- fix(types): allow number for height/width/etc
([#&#8203;4090](https://togithub.com/styled-components/styled-components/issues/4090))
by [@&#8203;drewbrend](https://togithub.com/drewbrend) in
[https://github.com/styled-components/styled-components/pull/4111](https://togithub.com/styled-components/styled-components/pull/4111)

#### New Contributors

- [@&#8203;aspirisen](https://togithub.com/aspirisen) made their first
contribution in
[https://github.com/styled-components/styled-components/pull/3993](https://togithub.com/styled-components/styled-components/pull/3993)
- [@&#8203;drewbrend](https://togithub.com/drewbrend) made their first
contribution in
[https://github.com/styled-components/styled-components/pull/4111](https://togithub.com/styled-components/styled-components/pull/4111)

**Full Changelog**:
https://github.com/styled-components/styled-components/compare/v6.0.6...v6.0.7

###
[`v6.0.6`](https://togithub.com/styled-components/styled-components/releases/tag/v6.0.6)

[Compare
Source](https://togithub.com/styled-components/styled-components/compare/v6.0.5...v6.0.6)

#### What's Changed

- fix(types): issues with StyleFunctions and StyledObjects by
[@&#8203;bcole808](https://togithub.com/bcole808) in
[https://github.com/styled-components/styled-components/pull/4107](https://togithub.com/styled-components/styled-components/pull/4107)

#### New Contributors

- [@&#8203;bcole808](https://togithub.com/bcole808) made their first
contribution in
[https://github.com/styled-components/styled-components/pull/4107](https://togithub.com/styled-components/styled-components/pull/4107)

**Full Changelog**:
https://github.com/styled-components/styled-components/compare/v6.0.5...v6.0.6

###
[`v6.0.5`](https://togithub.com/styled-components/styled-components/releases/tag/v6.0.5)

[Compare
Source](https://togithub.com/styled-components/styled-components/compare/v6.0.4...v6.0.5)

#### What's Changed

- Fix createGlobalStyle not removing styles on unmount by
[@&#8203;mdeschamps](https://togithub.com/mdeschamps) in
[https://github.com/styled-components/styled-components/pull/4101](https://togithub.com/styled-components/styled-components/pull/4101)

#### New Contributors

- [@&#8203;mdeschamps](https://togithub.com/mdeschamps) made their first
contribution in
[https://github.com/styled-components/styled-components/pull/4101](https://togithub.com/styled-components/styled-components/pull/4101)

**Full Changelog**:
https://github.com/styled-components/styled-components/compare/v6.0.4...v6.0.5

###
[`v6.0.4`](https://togithub.com/styled-components/styled-components/releases/tag/v6.0.4)

[Compare
Source](https://togithub.com/styled-components/styled-components/compare/v6.0.3...v6.0.4)

#### What's Changed

- refactor: dev warning on unknown props retargeted specifically toward
HTML targets rather than other React components by
[@&#8203;woodreamz](https://togithub.com/woodreamz) in
[https://github.com/styled-components/styled-components/pull/4084](https://togithub.com/styled-components/styled-components/pull/4084)
- fix: untyped event handler callbacks by
[@&#8203;ziolekjj](https://togithub.com/ziolekjj) in
[https://github.com/styled-components/styled-components/pull/4086](https://togithub.com/styled-components/styled-components/pull/4086)

#### New Contributors

- [@&#8203;woodreamz](https://togithub.com/woodreamz) made their first
contribution in
[https://github.com/styled-components/styled-components/pull/4084](https://togithub.com/styled-components/styled-components/pull/4084)
- [@&#8203;ziolekjj](https://togithub.com/ziolekjj) made their first
contribution in
[https://github.com/styled-components/styled-components/pull/4086](https://togithub.com/styled-components/styled-components/pull/4086)

**Full Changelog**:
https://github.com/styled-components/styled-components/compare/v6.0.3...v6.0.4

###
[`v6.0.3`](https://togithub.com/styled-components/styled-components/releases/tag/v6.0.3)

[Compare
Source](https://togithub.com/styled-components/styled-components/compare/v6.0.2...v6.0.3)

#### What's Changed

- fix: StyleSheetManager missing Stylis types by
[@&#8203;MattIPv4](https://togithub.com/MattIPv4) in
[https://github.com/styled-components/styled-components/pull/4078](https://togithub.com/styled-components/styled-components/pull/4078)

#### New Contributors

- [@&#8203;MattIPv4](https://togithub.com/MattIPv4) made their first
contribution in
[https://github.com/styled-components/styled-components/pull/4078](https://togithub.com/styled-components/styled-components/pull/4078)

**Full Changelog**:
https://github.com/styled-components/styled-components/compare/v6.0.2...v6.0.3

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log [here](https://developer.mend.io/github/agbrs/agb).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yNjkuMiIsInVwZGF0ZWRJblZlciI6IjM3LjI2OS4yIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIn0=-->
2024-04-04 22:31:40 +00:00
Corwin 702036d5ae
Update dependency @types/node to v20.12.4 (#598)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[@types/node](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node)
([source](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node))
| [`20.3.3` ->
`20.12.4`](https://renovatebot.com/diffs/npm/@types%2fnode/20.3.3/20.12.4)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/20.12.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnode/20.12.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnode/20.3.3/20.12.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/20.3.3/20.12.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log [here](https://developer.mend.io/github/agbrs/agb).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yNjkuMiIsInVwZGF0ZWRJblZlciI6IjM3LjI2OS4yIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIn0=-->
2024-04-04 22:31:30 +00:00
Corwin 14e7eaedf7
Update dependency @testing-library/react to v14.2.2 (#596)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[@testing-library/react](https://togithub.com/testing-library/react-testing-library)
| [`14.0.0` ->
`14.2.2`](https://renovatebot.com/diffs/npm/@testing-library%2freact/14.0.0/14.2.2)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@testing-library%2freact/14.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@testing-library%2freact/14.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@testing-library%2freact/14.0.0/14.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@testing-library%2freact/14.0.0/14.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>testing-library/react-testing-library
(@&#8203;testing-library/react)</summary>

###
[`v14.2.2`](https://togithub.com/testing-library/react-testing-library/compare/v14.2.1...3da62fd9741ca74bcd0d2bc668ba76a2d8f3751f)

[Compare
Source](https://togithub.com/testing-library/react-testing-library/compare/v14.2.1...v14.2.2)

###
[`v14.2.1`](https://togithub.com/testing-library/react-testing-library/releases/tag/v14.2.1)

[Compare
Source](https://togithub.com/testing-library/react-testing-library/compare/v14.2.0...v14.2.1)

##### Bug Fixes

- Update types to support all possible react component return values
([#&#8203;1272](https://togithub.com/testing-library/react-testing-library/issues/1272))
([55e79c2](55e79c290d))

###
[`v14.2.0`](https://togithub.com/testing-library/react-testing-library/releases/tag/v14.2.0)

[Compare
Source](https://togithub.com/testing-library/react-testing-library/compare/v14.1.2...v14.2.0)

##### Features

- add `reactStrictMode` option to enable strict mode render
([#&#8203;1241](https://togithub.com/testing-library/react-testing-library/issues/1241))
([0880eba](0880eba4a0))

###
[`v14.1.2`](https://togithub.com/testing-library/react-testing-library/releases/tag/v14.1.2)

[Compare
Source](https://togithub.com/testing-library/react-testing-library/compare/v14.1.1...v14.1.2)

##### Bug Fixes

- revert missing hooks warnings
([#&#8203;1255](https://togithub.com/testing-library/react-testing-library/issues/1255))
([1c67477](1c67477443))

###
[`v14.1.1`](https://togithub.com/testing-library/react-testing-library/releases/tag/v14.1.1)

[Compare
Source](https://togithub.com/testing-library/react-testing-library/compare/v14.1.0...v14.1.1)

##### Bug Fixes

- log globals warning only once
([#&#8203;1252](https://togithub.com/testing-library/react-testing-library/issues/1252))
([fd52a59](fd52a593a7)),
closes
[#&#8203;1249](https://togithub.com/testing-library/react-testing-library/issues/1249)

###
[`v14.1.0`](https://togithub.com/testing-library/react-testing-library/releases/tag/v14.1.0)

[Compare
Source](https://togithub.com/testing-library/react-testing-library/compare/v14.0.0...v14.1.0)

##### Features

- add warnings when globals are missing
([#&#8203;1244](https://togithub.com/testing-library/react-testing-library/issues/1244))
([d80319f](d80319f569))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log [here](https://developer.mend.io/github/agbrs/agb).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yNjkuMiIsInVwZGF0ZWRJblZlciI6IjM3LjI2OS4yIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIn0=-->
2024-04-04 22:30:47 +00:00
Corwin 3964c75c24
Update dependency @testing-library/jest-dom to v5.17.0 (#595)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[@testing-library/jest-dom](https://togithub.com/testing-library/jest-dom)
| [`5.16.5` ->
`5.17.0`](https://renovatebot.com/diffs/npm/@testing-library%2fjest-dom/5.16.5/5.17.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@testing-library%2fjest-dom/5.17.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@testing-library%2fjest-dom/5.17.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@testing-library%2fjest-dom/5.16.5/5.17.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@testing-library%2fjest-dom/5.16.5/5.17.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>testing-library/jest-dom
(@&#8203;testing-library/jest-dom)</summary>

###
[`v5.17.0`](https://togithub.com/testing-library/jest-dom/releases/tag/v5.17.0)

[Compare
Source](https://togithub.com/testing-library/jest-dom/compare/v5.16.5...v5.17.0)

##### Features

- New `toHaveAccessibleErrorMessage` better implementing the spec,
deprecate `toHaveErrorMessage`
([#&#8203;503](https://togithub.com/testing-library/jest-dom/issues/503))
([d717c66](d717c66cb4))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log [here](https://developer.mend.io/github/agbrs/agb).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yNjkuMiIsInVwZGF0ZWRJblZlciI6IjM3LjI2OS4yIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIn0=-->
2024-04-04 22:30:25 +00:00
Corwin 0d8ac19871
Update dependency @testing-library/user-event to v14.5.2 (#597)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[@testing-library/user-event](https://togithub.com/testing-library/user-event)
| [`14.4.3` ->
`14.5.2`](https://renovatebot.com/diffs/npm/@testing-library%2fuser-event/14.4.3/14.5.2)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@testing-library%2fuser-event/14.5.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@testing-library%2fuser-event/14.5.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@testing-library%2fuser-event/14.4.3/14.5.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@testing-library%2fuser-event/14.4.3/14.5.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>testing-library/user-event
(@&#8203;testing-library/user-event)</summary>

###
[`v14.5.2`](https://togithub.com/testing-library/user-event/releases/tag/v14.5.2)

[Compare
Source](https://togithub.com/testing-library/user-event/compare/v14.5.1...v14.5.2)

##### Bug Fixes

- remove interop and deep DTL imports
([6a3c896](6a3c896bd2))

###
[`v14.5.1`](https://togithub.com/testing-library/user-event/releases/tag/v14.5.1)

[Compare
Source](https://togithub.com/testing-library/user-event/compare/v14.5.0...v14.5.1)

##### Bug Fixes

- incorrect default import from
[@&#8203;testing-library/dom](https://togithub.com/testing-library/dom)
([#&#8203;1162](https://togithub.com/testing-library/user-event/issues/1162))
([d7483f0](d7483f049a))

###
[`v14.5.0`](https://togithub.com/testing-library/user-event/releases/tag/v14.5.0)

[Compare
Source](https://togithub.com/testing-library/user-event/compare/v14.4.3...v14.5.0)

##### Bug Fixes

- **exports:** add a named export for userEvent
([4019cee](4019ceeaba)),
closes
[#&#8203;1146](https://togithub.com/testing-library/user-event/issues/1146)

##### Features

- **types:** Add additional type exports for UserEvent & Options
([#&#8203;1112](https://togithub.com/testing-library/user-event/issues/1112))
([da00e8d](da00e8d610))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log [here](https://developer.mend.io/github/agbrs/agb).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yNjkuMiIsInVwZGF0ZWRJblZlciI6IjM3LjI2OS4yIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIn0=-->
2024-04-04 22:30:25 +00:00
Corwin 503655a78b
Update dependency @types/jest to v29.5.12 (#592)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[@types/jest](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest)
([source](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jest))
| [`29.5.2` ->
`29.5.12`](https://renovatebot.com/diffs/npm/@types%2fjest/29.5.2/29.5.12)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fjest/29.5.12?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fjest/29.5.12?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fjest/29.5.2/29.5.12?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fjest/29.5.2/29.5.12?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log [here](https://developer.mend.io/github/agbrs/agb).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yNjkuMiIsInVwZGF0ZWRJblZlciI6IjM3LjI2OS4yIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIn0=-->
2024-04-04 22:29:44 +00:00
renovate[bot] 78e153840f
Update dependency prettier to v3 2024-04-04 22:27:30 +00:00
renovate[bot] 06632a2885
Update dependency web-vitals to v3.5.2 2024-04-04 22:26:52 +00:00
renovate[bot] d4eb3a09e0
Update dependency styled-components to v6.1.8 2024-04-04 22:26:29 +00:00
renovate[bot] b5d028fdce
Update dependency @types/node to v20.12.4 2024-04-04 22:26:16 +00:00
renovate[bot] 9e54fdbe42
Update dependency @testing-library/user-event to v14.5.2 2024-04-04 22:25:19 +00:00
renovate[bot] 27a6bd98f6
Update dependency @testing-library/react to v14.2.2 2024-04-04 22:25:05 +00:00
renovate[bot] 68bb3ee463
Update dependency @testing-library/jest-dom to v5.17.0 2024-04-04 22:24:52 +00:00
renovate[bot] 3930c2f168
Update react monorepo 2024-04-04 22:24:39 +00:00
renovate[bot] 5d7712aee9
Update dependency @types/jest to v29.5.12 2024-04-04 22:24:25 +00:00
renovate[bot] 990fe578c9
Update dependency @types/styled-components to v5.1.34 2024-04-04 20:58:09 +00:00
Corwin 2760a8451f
I'm 92% sure this is intentional 2024-04-04 19:59:19 +01:00
Corwin 36f204958e
remove unused import 2024-04-04 19:51:49 +01:00
Corwin 713fc168ae
load game based on path hash 2024-04-04 17:57:06 +01:00
Corwin 3574253df8
pointless margins 2024-04-04 17:47:53 +01:00
Corwin b2b93be33d
clean up the edges 2024-04-04 17:46:11 +01:00
Corwin 374b45be48
make crash the index 2024-04-04 01:31:26 +01:00
Corwin 366b135b0f
Revert "update homepage"
This reverts commit 903f793874.
2024-04-04 01:09:58 +01:00
Corwin 903f793874
update homepage 2024-04-04 01:08:49 +01:00
Corwin 98ce760d77
remove unused import 2024-04-04 01:07:29 +01:00
Corwin 8cb306a9b7
add book 2024-04-04 01:07:10 +01:00
Corwin 662cdc73d6
ignore game 2024-04-04 00:57:10 +01:00
Corwin 190f5c7600
remove game 2024-04-04 00:57:05 +01:00
Corwin f8d4620ed5
update site 2024-04-04 00:54:23 +01:00
Corwin e1453cb4c8
build mgba wasm 2024-04-04 00:54:23 +01:00
Corwin a7de8c07d2
move mgba app to own directory 2024-04-04 00:54:23 +01:00
Corwin dc2d969930
auto overflow 2024-04-04 00:54:23 +01:00
Corwin fb5414a036
itch specific changes 2024-04-04 00:54:23 +01:00
Corwin 064a919bd6
handle overflow of dialog 2024-04-04 00:54:23 +01:00
Corwin 7665135329
refer to local paths 2024-04-04 00:54:23 +01:00
Corwin cb68d8c695
add depdendency array 2024-04-04 00:54:23 +01:00
Gwilym Inzani f354cff108
Add a mute button 2024-04-04 00:54:23 +01:00