Skip to content

Commit 16e08f7

Browse files
authored
Merge pull request #73 from element-hq/florianduros/biome
2 parents cf4ebed + 196caf2 commit 16e08f7

File tree

11 files changed

+142
-101
lines changed

11 files changed

+142
-101
lines changed

biome.json

Lines changed: 29 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,37 @@
11
{
2-
"$schema": "https://biomejs.dev/schemas/1.9.4/schema.json",
2+
"$schema": "https://biomejs.dev/schemas/2.0.6/schema.json",
33
"files": {
4-
"ignore": ["src/generated", "rust_modules", "dist"]
4+
"includes": [
5+
"**",
6+
"!**/src/generated",
7+
"!**/rust_modules",
8+
"!**/dist",
9+
"!**/.zed"
10+
]
11+
},
12+
"css": {
13+
"parser": {
14+
"cssModules": true
15+
}
516
},
617
"formatter": {
718
"indentStyle": "space",
819
"indentWidth": 4
20+
},
21+
"linter": {
22+
"rules": {
23+
"style": {
24+
"noParameterAssign": "error",
25+
"useAsConstAssertion": "error",
26+
"useDefaultParameterLast": "error",
27+
"useEnumInitializers": "error",
28+
"useSelfClosingElements": "error",
29+
"useSingleVarDeclarator": "error",
30+
"noUnusedTemplateLiteral": "error",
31+
"useNumberNamespace": "error",
32+
"noInferrableTypes": "error",
33+
"noUselessElse": "error"
34+
}
35+
}
936
}
1037
}

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
"uniffi-bindgen-react-native": "git+https://github.com/jhugman/uniffi-bindgen-react-native#5c01f3f7025d069aac1dd1fd51ca72bb76fdb243"
3535
},
3636
"devDependencies": {
37-
"@biomejs/biome": "^1.9.4",
37+
"@biomejs/biome": "2.0.6",
3838
"@tauri-apps/cli": "^1.5.8",
3939
"@types/lodash-es": "^4.17.12",
4040
"@types/react": "^19.0.0",

src/MemberList/BaseAvatar.tsx

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,10 @@ const calculateUrls = (
5151
const useImageUrl = ({
5252
url,
5353
urls,
54-
}: { url?: string | null; urls?: string[] }): [string, () => void] => {
54+
}: {
55+
url?: string | null;
56+
urls?: string[];
57+
}): [string, () => void] => {
5558
// Since this is a hot code path and the settings store can be slow, we
5659
// use the cached lowBandwidth value from the room context if it exists
5760
// const roomContext = useScopedRoomContext("lowBandwidth");

src/MemberList/MemberListView.tsx

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,10 @@ const MemberListView: React.FC<IProps> = (props: IProps) => {
6060
const rowRenderer = ({
6161
index,
6262
data,
63-
}: { index: number; data: MemberWithSeparator }): JSX.Element => {
63+
}: {
64+
index: number;
65+
data: MemberWithSeparator;
66+
}): JSX.Element => {
6467
if (index === memberCount) {
6568
// We've rendered all the members,
6669
// now we render an empty div to add some space to the end of the list.

src/RecoveryKeyEntryScreen.tsx

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -36,11 +36,7 @@ export const RecoveryKeyEntryScreen: React.FC<RecoveryKeyEntryScreenProps> = ({
3636

3737
return (
3838
<div className={styles.container}>
39-
{error && (
40-
<div className={styles.error}>
41-
{error}
42-
</div>
43-
)}
39+
{error && <div className={styles.error}>{error}</div>}
4440

4541
<Form.Root onSubmit={handleRecover}>
4642
<Form.Field name="recoveryKey">

src/ResetIdentityPasswordScreen.tsx

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,9 @@ export function ResetIdentityPasswordScreen({
3838
<div className={styles.content}>
3939
<form onSubmit={handleSubmit} className={styles.form}>
4040
<div className={styles.passwordSection}>
41-
<label htmlFor="password" className={styles.label}>Password</label>
41+
<label htmlFor="password" className={styles.label}>
42+
Password
43+
</label>
4244
<input
4345
id="password"
4446
type="password"
@@ -52,7 +54,9 @@ export function ResetIdentityPasswordScreen({
5254
/>
5355
</div>
5456

55-
{error && <div className={styles.errorMessage}>{error}</div>}
57+
{error && (
58+
<div className={styles.errorMessage}>{error}</div>
59+
)}
5660

5761
<div className={styles.buttonGroup}>
5862
<button

src/RoomListView.tsx

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,14 @@ export function RoomListView({
2525
vm,
2626
onRoomSelected,
2727
}: RoomListViewProps): JSX.Element {
28-
const { rooms, visibleSections, visibleRooms, groupCounts, currentRoomId, loading } =
29-
useViewModel(vm);
28+
const {
29+
rooms,
30+
visibleSections,
31+
visibleRooms,
32+
groupCounts,
33+
currentRoomId,
34+
loading,
35+
} = useViewModel(vm);
3036

3137
// Show centered spinner while waiting for room list to load
3238
if (loading) {

src/UsernamePasswordScreen.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,9 @@ export interface UsernamePasswordScreenProps {
77
loginViewModel: LoginViewModel;
88
}
99

10-
export const UsernamePasswordScreen: React.FC<
11-
UsernamePasswordScreenProps
12-
> = ({ loginViewModel }) => {
10+
export const UsernamePasswordScreen: React.FC<UsernamePasswordScreenProps> = ({
11+
loginViewModel,
12+
}) => {
1313
const { server, username, password, canSubmit, loggingIn, error } =
1414
useViewModel(loginViewModel);
1515

src/index.web.ts

Lines changed: 30 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,46 +1,45 @@
11
// Generated by uniffi-bindgen-react-native
22
// Export the generated bindings to the app.
3-
export * from './generated/matrix_sdk';
4-
export * from './generated/matrix_sdk_base';
5-
export * from './generated/matrix_sdk_common';
6-
export * from './generated/matrix_sdk_crypto';
7-
export * from './generated/matrix_sdk_ffi';
8-
export * from './generated/matrix_sdk_ui';
3+
export * from "./generated/matrix_sdk";
4+
export * from "./generated/matrix_sdk_base";
5+
export * from "./generated/matrix_sdk_common";
6+
export * from "./generated/matrix_sdk_crypto";
7+
export * from "./generated/matrix_sdk_ffi";
8+
export * from "./generated/matrix_sdk_ui";
99

1010
// Now import the bindings so we can:
1111
// - intialize them
1212
// - export them as namespaced objects as the default export.
13-
import * as matrix_sdk from './generated/matrix_sdk';
14-
import * as matrix_sdk_base from './generated/matrix_sdk_base';
15-
import * as matrix_sdk_common from './generated/matrix_sdk_common';
16-
import * as matrix_sdk_crypto from './generated/matrix_sdk_crypto';
17-
import * as matrix_sdk_ffi from './generated/matrix_sdk_ffi';
18-
import * as matrix_sdk_ui from './generated/matrix_sdk_ui';
13+
import * as matrix_sdk from "./generated/matrix_sdk";
14+
import * as matrix_sdk_base from "./generated/matrix_sdk_base";
15+
import * as matrix_sdk_common from "./generated/matrix_sdk_common";
16+
import * as matrix_sdk_crypto from "./generated/matrix_sdk_crypto";
17+
import * as matrix_sdk_ffi from "./generated/matrix_sdk_ffi";
18+
import * as matrix_sdk_ui from "./generated/matrix_sdk_ui";
1919

20-
import initAsync from './generated/wasm-bindgen/index.js';
21-
import wasmPath from './generated/wasm-bindgen/index_bg.wasm?url';
20+
import initAsync from "./generated/wasm-bindgen/index.js";
21+
import wasmPath from "./generated/wasm-bindgen/index_bg.wasm?url";
2222

2323
export async function uniffiInitAsync() {
24-
await initAsync({ module_or_path: wasmPath })
24+
await initAsync({ module_or_path: wasmPath });
2525

26-
// Initialize the generated bindings: mostly checksums, but also callbacks.
27-
// - the boolean flag ensures this loads exactly once, even if the JS code
28-
// is reloaded (e.g. during development with metro).
29-
matrix_sdk.default.initialize();
30-
matrix_sdk_base.default.initialize();
31-
matrix_sdk_common.default.initialize();
32-
matrix_sdk_crypto.default.initialize();
33-
matrix_sdk_ffi.default.initialize();
34-
matrix_sdk_ui.default.initialize();
26+
// Initialize the generated bindings: mostly checksums, but also callbacks.
27+
// - the boolean flag ensures this loads exactly once, even if the JS code
28+
// is reloaded (e.g. during development with metro).
29+
matrix_sdk.default.initialize();
30+
matrix_sdk_base.default.initialize();
31+
matrix_sdk_common.default.initialize();
32+
matrix_sdk_crypto.default.initialize();
33+
matrix_sdk_ffi.default.initialize();
34+
matrix_sdk_ui.default.initialize();
3535
}
3636

3737
// Export the crates as individually namespaced objects.
3838
export default {
39-
matrix_sdk,
40-
matrix_sdk_base,
41-
matrix_sdk_common,
42-
matrix_sdk_crypto,
43-
matrix_sdk_ffi,
44-
matrix_sdk_ui,
39+
matrix_sdk,
40+
matrix_sdk_base,
41+
matrix_sdk_common,
42+
matrix_sdk_crypto,
43+
matrix_sdk_ffi,
44+
matrix_sdk_ui,
4545
};
46-

src/viewmodel/RoomListViewModel.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,10 @@ export class RoomListViewModel
141141
visibleRooms: RoomSummary[];
142142
groupCounts: number[];
143143
} {
144-
const visibleSections: Array<{ section: RoomSection; originalIndex: number }> = [];
144+
const visibleSections: Array<{
145+
section: RoomSection;
146+
originalIndex: number;
147+
}> = [];
145148
const visibleRooms: RoomSummary[] = [];
146149
const groupCounts: number[] = [];
147150

0 commit comments

Comments
 (0)