From ddc2b53af9953d246aeda83b28db371758082a44 Mon Sep 17 00:00:00 2001 From: Tommy Ekstrand Date: Thu, 8 Feb 2024 15:23:54 -0600 Subject: [PATCH] fix biome errors (#977) --- .github/workflows/ci.yml | 4 +- biome.json | 3 +- docusaurus.config.js | 252 +++++++++--------- package.json | 2 +- pnpm-lock.yaml | 56 ++-- sidebars.js | 12 +- src/components/ColorMode.tsx | 2 +- src/components/PageLayout.tsx | 2 +- src/components/homepage/SocialCard.tsx | 2 +- src/components/tools/FrequencyCalculator.tsx | 162 +++++------ .../downloads/_components/FirmwareCard.tsx | 6 +- src/pages/downloads/index.tsx | 5 +- src/pages/index.tsx | 5 +- src/pages/tools/OEM.tsx | 13 +- src/utils/calculateADC.ts | 4 +- tailwind.config.ts | 38 +-- 16 files changed, 288 insertions(+), 280 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index faac55cb..6a941be2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -19,7 +19,7 @@ jobs: version: latest - name: Run Biome - run: biome ci . + run: biome ci . --diagnostic-level=error build: runs-on: ubuntu-latest steps: @@ -40,4 +40,4 @@ jobs: run: pnpm install - name: Build Package - run: pnpm run build \ No newline at end of file + run: pnpm run build diff --git a/biome.json b/biome.json index 32a4e0fe..570d35bb 100644 --- a/biome.json +++ b/biome.json @@ -4,7 +4,8 @@ "enabled": true }, "files": { - "ignoreUnknown": true + "ignoreUnknown": true, + "ignore": ["*.json"] }, "vcs": { "enabled": true, diff --git a/docusaurus.config.js b/docusaurus.config.js index 0199cfeb..25e054f8 100644 --- a/docusaurus.config.js +++ b/docusaurus.config.js @@ -4,137 +4,137 @@ require("dotenv").config(); /** @type {import('@docusaurus/types').Config} */ const config = { - title: "Meshtastic", - tagline: - "An open source, off-grid, decentralized, mesh network built to run on affordable, low-power devices", - url: "https://meshtastic.org", - baseUrl: "/", - trailingSlash: true, - onBrokenLinks: "throw", - onBrokenMarkdownLinks: "warn", - favicon: "design/web/favicon.ico", - organizationName: "meshtastic", - projectName: "meshtastic", - themeConfig: /** @type {import('@docusaurus/preset-classic').ThemeConfig} */ { - docs: { - sidebar: { - autoCollapseCategories: true, - }, - }, - navbar: { - title: "Meshtastic", - hideOnScroll: true, - logo: { - alt: "Meshtastic Logo", - src: "design/logo/svg/Mesh_Logo_Black.svg", - srcDark: "design/logo/svg/Mesh_Logo_White.svg", - }, - items: [ - { - label: "Docs", - to: "docs/introduction", - }, - { - label: "Downloads", - to: "downloads", - }, - { - label: "About", - position: "right", - items: [ - { - label: "Introduction", - to: "docs/introduction", - }, - { - label: "Getting Started", - to: "docs/getting-started", - }, - { - label: "Contributing", - to: "docs/contributing", - }, - { - label: "Legal", - to: "docs/legal", - }, - { - label: "FAQs", - to: "docs/faq", - }, - ], - }, - { - href: "https://github.com/meshtastic", - position: "right", - className: "header-github-link", - "aria-label": "GitHub repository", - }, - ], - }, - footer: { - copyright: `Powered by ▲ Vercel | Meshtastic® is a registered trademark of Meshtastic LLC. | Legal Information.`, - }, - algolia: { - appId: "IG2GQB8L3V", - apiKey: "2e4348812173ec7ea6f7879c7032bb21", - indexName: "meshtastic", - contextualSearch: false, - searchPagePath: "search", - }, - colorMode: { - respectPrefersColorScheme: true, - }, - mermaid: { - theme: { light: "base", dark: "base" }, - options: { - themeVariables: { - primaryColor: "#67EA94", - primaryTextColor: "var(--tw-prose-headings)", - primaryBorderColor: "#4D4D4D", - lineColor: "#EAD667", - secondaryColor: "#EA67BD", - tertiaryColor: "#677CEA", - }, - }, - }, + title: "Meshtastic", + tagline: + "An open source, off-grid, decentralized, mesh network built to run on affordable, low-power devices", + url: "https://meshtastic.org", + baseUrl: "/", + trailingSlash: true, + onBrokenLinks: "throw", + onBrokenMarkdownLinks: "warn", + favicon: "design/web/favicon.ico", + organizationName: "meshtastic", + projectName: "meshtastic", + themeConfig: /** @type {import('@docusaurus/preset-classic').ThemeConfig} */ { + docs: { + sidebar: { + autoCollapseCategories: true, + }, }, - plugins: [ - () => { - return { - name: "docusaurus-tailwindcss", - configurePostCss(postcssOptions) { - postcssOptions.plugins.push(require("tailwindcss")); - postcssOptions.plugins.push(require("autoprefixer")); - return postcssOptions; - }, - }; + navbar: { + title: "Meshtastic", + hideOnScroll: true, + logo: { + alt: "Meshtastic Logo", + src: "design/logo/svg/Mesh_Logo_Black.svg", + srcDark: "design/logo/svg/Mesh_Logo_White.svg", + }, + items: [ + { + label: "Docs", + to: "docs/introduction", }, - ], - presets: [ - [ - "@docusaurus/preset-classic", - /** @type {import('@docusaurus/preset-classic').Options} */ + { + label: "Downloads", + to: "downloads", + }, + { + label: "About", + position: "right", + items: [ { - docs: { - sidebarPath: require.resolve("./sidebars.js"), - editUrl: "https://github.com/meshtastic/meshtastic/edit/master/", - breadcrumbs: false, - showLastUpdateAuthor: true, - }, - theme: { - customCss: require.resolve("./src/css/custom.css"), - }, + label: "Introduction", + to: "docs/introduction", }, - ], + { + label: "Getting Started", + to: "docs/getting-started", + }, + { + label: "Contributing", + to: "docs/contributing", + }, + { + label: "Legal", + to: "docs/legal", + }, + { + label: "FAQs", + to: "docs/faq", + }, + ], + }, + { + href: "https://github.com/meshtastic", + position: "right", + className: "header-github-link", + "aria-label": "GitHub repository", + }, + ], + }, + footer: { + copyright: `Powered by ▲ Vercel | Meshtastic® is a registered trademark of Meshtastic LLC. | Legal Information.`, + }, + algolia: { + appId: "IG2GQB8L3V", + apiKey: "2e4348812173ec7ea6f7879c7032bb21", + indexName: "meshtastic", + contextualSearch: false, + searchPagePath: "search", + }, + colorMode: { + respectPrefersColorScheme: true, + }, + mermaid: { + theme: { light: "base", dark: "base" }, + options: { + themeVariables: { + primaryColor: "#67EA94", + primaryTextColor: "var(--tw-prose-headings)", + primaryBorderColor: "#4D4D4D", + lineColor: "#EAD667", + secondaryColor: "#EA67BD", + tertiaryColor: "#677CEA", + }, + }, + }, + }, + plugins: [ + () => { + return { + name: "docusaurus-tailwindcss", + configurePostCss(postcssOptions) { + postcssOptions.plugins.push(require("tailwindcss")); + postcssOptions.plugins.push(require("autoprefixer")); + return postcssOptions; + }, + }; + }, + ], + presets: [ + [ + "@docusaurus/preset-classic", + /** @type {import('@docusaurus/preset-classic').Options} */ + { + docs: { + sidebarPath: require.resolve("./sidebars.js"), + editUrl: "https://github.com/meshtastic/meshtastic/edit/master/", + breadcrumbs: false, + showLastUpdateAuthor: true, + }, + theme: { + customCss: require.resolve("./src/css/custom.css"), + }, + }, ], - customFields: { - API_URL: process.env.API_URL, - }, - markdown: { - mermaid: true, - }, - themes: ["@docusaurus/theme-mermaid"], + ], + customFields: { + API_URL: process.env.API_URL, + }, + markdown: { + mermaid: true, + }, + themes: ["@docusaurus/theme-mermaid"], }; module.exports = config; diff --git a/package.json b/package.json index 7190f1d0..060e19c9 100644 --- a/package.json +++ b/package.json @@ -33,7 +33,7 @@ "tailwindcss": "^3.4.1" }, "devDependencies": { - "@biomejs/biome": "^1.5.0", + "@biomejs/biome": "^1.5.3", "@buf/meshtastic_protobufs.bufbuild_es": "1.6.0-20240106203407-94f78518ac45.1", "@docusaurus/module-type-aliases": "3.1.0", "@tailwindcss/typography": "^0.5.10", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 0e7f8a2e..0c6cfb15 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -65,8 +65,8 @@ dependencies: devDependencies: '@biomejs/biome': - specifier: ^1.5.0 - version: 1.5.0 + specifier: ^1.5.3 + version: 1.5.3 '@buf/meshtastic_protobufs.bufbuild_es': specifier: 1.6.0-20240106203407-94f78518ac45.1 version: 1.6.0-20240106203407-94f78518ac45.1(@bufbuild/protobuf@1.6.0) @@ -1551,24 +1551,24 @@ packages: to-fast-properties: 2.0.0 dev: false - /@biomejs/biome@1.5.0: - resolution: {integrity: sha512-ln+o5jbs109qpeDoA+5n+vlAPai3DhlK0tHtZXzQvu4tswFgxNiJCeIXmlW1DYHziTmtBImV3Y0uhbm2iVSE3Q==} + /@biomejs/biome@1.5.3: + resolution: {integrity: sha512-yvZCa/g3akwTaAQ7PCwPWDCkZs3Qa5ONg/fgOUT9e6wAWsPftCjLQFPXBeGxPK30yZSSpgEmRCfpGTmVbUjGgg==} engines: {node: '>=14.*'} hasBin: true requiresBuild: true optionalDependencies: - '@biomejs/cli-darwin-arm64': 1.5.0 - '@biomejs/cli-darwin-x64': 1.5.0 - '@biomejs/cli-linux-arm64': 1.5.0 - '@biomejs/cli-linux-arm64-musl': 1.5.0 - '@biomejs/cli-linux-x64': 1.5.0 - '@biomejs/cli-linux-x64-musl': 1.5.0 - '@biomejs/cli-win32-arm64': 1.5.0 - '@biomejs/cli-win32-x64': 1.5.0 + '@biomejs/cli-darwin-arm64': 1.5.3 + '@biomejs/cli-darwin-x64': 1.5.3 + '@biomejs/cli-linux-arm64': 1.5.3 + '@biomejs/cli-linux-arm64-musl': 1.5.3 + '@biomejs/cli-linux-x64': 1.5.3 + '@biomejs/cli-linux-x64-musl': 1.5.3 + '@biomejs/cli-win32-arm64': 1.5.3 + '@biomejs/cli-win32-x64': 1.5.3 dev: true - /@biomejs/cli-darwin-arm64@1.5.0: - resolution: {integrity: sha512-3+D7axf04dpadGMOaqb2q+zyQnhWW0o/Imt7TJBWsoE0N3/+28Wht8g3UEHHcUL5FPuGIfsE+NcYntBaaAsEIg==} + /@biomejs/cli-darwin-arm64@1.5.3: + resolution: {integrity: sha512-ImU7mh1HghEDyqNmxEZBoMPr8SxekkZuYcs+gynKlNW+TALQs7swkERiBLkG9NR0K1B3/2uVzlvYowXrmlW8hw==} engines: {node: '>=14.*'} cpu: [arm64] os: [darwin] @@ -1576,8 +1576,8 @@ packages: dev: true optional: true - /@biomejs/cli-darwin-x64@1.5.0: - resolution: {integrity: sha512-8k5aaLWE/B6ZAXLC+z/Vwh9ogyiSaiRIfvg+F9foxuneHl2R/D/2Iy7pvd3Yoi4Kf6/MBdowekPVezGP4/Kbcw==} + /@biomejs/cli-darwin-x64@1.5.3: + resolution: {integrity: sha512-vCdASqYnlpq/swErH7FD6nrFz0czFtK4k/iLgj0/+VmZVjineFPgevOb+Sr9vz0tk0GfdQO60bSpI74zU8M9Dw==} engines: {node: '>=14.*'} cpu: [x64] os: [darwin] @@ -1585,8 +1585,8 @@ packages: dev: true optional: true - /@biomejs/cli-linux-arm64-musl@1.5.0: - resolution: {integrity: sha512-+1B3J8tWLTOvP3+00Cap+XhEXMvxwCHvVfuywUsB7Sqd66NWic3wKJuGbGcS3PuCWtGuIFsiQMNAGqiOXG4uBQ==} + /@biomejs/cli-linux-arm64-musl@1.5.3: + resolution: {integrity: sha512-DYuMizUYUBYfS0IHGjDrOP1RGipqWfMGEvNEJ398zdtmCKLXaUvTimiox5dvx4X15mBK5M2m8wgWUgOP1giUpQ==} engines: {node: '>=14.*'} cpu: [arm64] os: [linux] @@ -1594,8 +1594,8 @@ packages: dev: true optional: true - /@biomejs/cli-linux-arm64@1.5.0: - resolution: {integrity: sha512-RiecxG71E1jnqiJZ3FaikVBDRkk2ohIxBo0O4o68g87y6Hug//G0S83sj6Wqyn8DgKMCRWQg+XYMgk5CwLVowA==} + /@biomejs/cli-linux-arm64@1.5.3: + resolution: {integrity: sha512-cupBQv0sNF1OKqBfx7EDWMSsKwRrBUZfjXawT4s6hKV6ALq7p0QzWlxr/sDmbKMLOaLQtw2Qgu/77N9rm+f9Rg==} engines: {node: '>=14.*'} cpu: [arm64] os: [linux] @@ -1603,8 +1603,8 @@ packages: dev: true optional: true - /@biomejs/cli-linux-x64-musl@1.5.0: - resolution: {integrity: sha512-4S2rLluc0WT+XTbLTgcm9+5EEFwJmoGiUEzR6N0P2sIjZD8c5KNf9Ou46BP1Pdg5AgqV+IIClGPK1I80ApSh1Q==} + /@biomejs/cli-linux-x64-musl@1.5.3: + resolution: {integrity: sha512-UUHiAnlDqr2Y/LpvshBFhUYMWkl2/Jn+bi3U6jKuav0qWbbBKU/ByHgR4+NBxpKBYoCtWxhnmatfH1bpPIuZMw==} engines: {node: '>=14.*'} cpu: [x64] os: [linux] @@ -1612,8 +1612,8 @@ packages: dev: true optional: true - /@biomejs/cli-linux-x64@1.5.0: - resolution: {integrity: sha512-TlTsG+ptSmnDTUsAAYsXyGOXMcFiF8SiwhPdj4YsNkJRgx9M2curEVcTVm66FINIPK6VJTUcEDahFlx3NPUOzA==} + /@biomejs/cli-linux-x64@1.5.3: + resolution: {integrity: sha512-YQrSArQvcv4FYsk7Q91Yv4uuu5F8hJyORVcv3zsjCLGkjIjx2RhjYLpTL733SNL7v33GmOlZY0eFR1ko38tuUw==} engines: {node: '>=14.*'} cpu: [x64] os: [linux] @@ -1621,8 +1621,8 @@ packages: dev: true optional: true - /@biomejs/cli-win32-arm64@1.5.0: - resolution: {integrity: sha512-sWOi1SR+YqJuXElBncGRnWBR7IN7ni6GQY4Zm/vTpP6nVA0dX5C301eQUW1N/VnFQb6fyrJTcBslDUKyemsN/g==} + /@biomejs/cli-win32-arm64@1.5.3: + resolution: {integrity: sha512-HxatYH7vf/kX9nrD+pDYuV2GI9GV8EFo6cfKkahAecTuZLPxryHx1WEfJthp5eNsE0+09STGkKIKjirP0ufaZA==} engines: {node: '>=14.*'} cpu: [arm64] os: [win32] @@ -1630,8 +1630,8 @@ packages: dev: true optional: true - /@biomejs/cli-win32-x64@1.5.0: - resolution: {integrity: sha512-OoqgUXyzmRwX466bklOsWS7WdcvWtBuxF94DXATNe7bUiBa2tlW8QX7VVZvPnMKH57E5J619AkB3b5fhzyUhXA==} + /@biomejs/cli-win32-x64@1.5.3: + resolution: {integrity: sha512-fMvbSouZEASU7mZH8SIJSANDm5OqsjgtVXlbUqxwed6BP7uuHRSs396Aqwh2+VoW8fwTpp6ybIUoC9FrzB0kyA==} engines: {node: '>=14.*'} cpu: [x64] os: [win32] diff --git a/sidebars.js b/sidebars.js index bad0a43f..59c9276a 100644 --- a/sidebars.js +++ b/sidebars.js @@ -2,10 +2,10 @@ /** @type {import('@docusaurus/plugin-content-docs').SidebarsConfig} */ module.exports = { - Sidebar: [ - { - type: "autogenerated", - dirName: ".", - }, - ], + Sidebar: [ + { + type: "autogenerated", + dirName: ".", + }, + ], }; diff --git a/src/components/ColorMode.tsx b/src/components/ColorMode.tsx index ae020458..dbfdde8b 100644 --- a/src/components/ColorMode.tsx +++ b/src/components/ColorMode.tsx @@ -1,4 +1,4 @@ -import React from "react"; +import type React from "react"; export interface ColorModeProps { children: React.ReactNode; diff --git a/src/components/PageLayout.tsx b/src/components/PageLayout.tsx index 2554bd29..6426846a 100644 --- a/src/components/PageLayout.tsx +++ b/src/components/PageLayout.tsx @@ -1,4 +1,4 @@ -import React from "react"; +import type React from "react"; import Layout from "@theme/Layout"; diff --git a/src/components/homepage/SocialCard.tsx b/src/components/homepage/SocialCard.tsx index df145aa3..eee77026 100644 --- a/src/components/homepage/SocialCard.tsx +++ b/src/components/homepage/SocialCard.tsx @@ -1,4 +1,4 @@ -import React from "react"; +import type React from "react"; import { FiExternalLink } from "react-icons/fi"; diff --git a/src/components/tools/FrequencyCalculator.tsx b/src/components/tools/FrequencyCalculator.tsx index 475691e3..aeb53e7a 100644 --- a/src/components/tools/FrequencyCalculator.tsx +++ b/src/components/tools/FrequencyCalculator.tsx @@ -2,11 +2,11 @@ import { Protobuf, Types } from "@meshtastic/js"; import React, { useEffect } from "react"; interface Region { - freq_start: number; - freq_end: number; - duty_cycle: number; + freqStart: number; + freqEnd: number; + dutyCycle: number; spacing: number; - power_limit: number; + powerLimit: number; } interface Modem { @@ -22,181 +22,181 @@ const RegionData = new Map< [ Protobuf.Config.Config_LoRaConfig_RegionCode.US, { - freq_start: 902.0, - freq_end: 928.0, - duty_cycle: 100, + freqStart: 902.0, + freqEnd: 928.0, + dutyCycle: 100, spacing: 0, - power_limit: 30, + powerLimit: 30, }, ], [ Protobuf.Config.Config_LoRaConfig_RegionCode.EU_433, { - freq_start: 433.0, - freq_end: 434.0, - duty_cycle: 10, + freqStart: 433.0, + freqEnd: 434.0, + dutyCycle: 10, spacing: 0, - power_limit: 12, + powerLimit: 12, }, ], [ Protobuf.Config.Config_LoRaConfig_RegionCode.EU_868, { - freq_start: 869.4, - freq_end: 869.65, - duty_cycle: 10, + freqStart: 869.4, + freqEnd: 869.65, + dutyCycle: 10, spacing: 0, - power_limit: 27, + powerLimit: 27, }, ], [ Protobuf.Config.Config_LoRaConfig_RegionCode.CN, { - freq_start: 470.0, - freq_end: 510.0, - duty_cycle: 100, + freqStart: 470.0, + freqEnd: 510.0, + dutyCycle: 100, spacing: 0, - power_limit: 19, + powerLimit: 19, }, ], [ Protobuf.Config.Config_LoRaConfig_RegionCode.JP, { - freq_start: 920.8, - freq_end: 927.8, - duty_cycle: 100, + freqStart: 920.8, + freqEnd: 927.8, + dutyCycle: 100, spacing: 0, - power_limit: 16, + powerLimit: 16, }, ], [ Protobuf.Config.Config_LoRaConfig_RegionCode.ANZ, { - freq_start: 915.0, - freq_end: 928.0, - duty_cycle: 100, + freqStart: 915.0, + freqEnd: 928.0, + dutyCycle: 100, spacing: 0, - power_limit: 30, + powerLimit: 30, }, ], [ Protobuf.Config.Config_LoRaConfig_RegionCode.RU, { - freq_start: 868.7, - freq_end: 869.2, - duty_cycle: 100, + freqStart: 868.7, + freqEnd: 869.2, + dutyCycle: 100, spacing: 0, - power_limit: 20, + powerLimit: 20, }, ], [ Protobuf.Config.Config_LoRaConfig_RegionCode.KR, { - freq_start: 920.0, - freq_end: 923.0, - duty_cycle: 100, + freqStart: 920.0, + freqEnd: 923.0, + dutyCycle: 100, spacing: 0, - power_limit: 0, + powerLimit: 0, }, ], [ Protobuf.Config.Config_LoRaConfig_RegionCode.TW, { - freq_start: 920.0, - freq_end: 925.0, - duty_cycle: 100, + freqStart: 920.0, + freqEnd: 925.0, + dutyCycle: 100, spacing: 0, - power_limit: 0, + powerLimit: 0, }, ], [ Protobuf.Config.Config_LoRaConfig_RegionCode.IN, { - freq_start: 865.0, - freq_end: 867.0, - duty_cycle: 100, + freqStart: 865.0, + freqEnd: 867.0, + dutyCycle: 100, spacing: 0, - power_limit: 30, + powerLimit: 30, }, ], [ Protobuf.Config.Config_LoRaConfig_RegionCode.NZ_865, { - freq_start: 864.0, - freq_end: 868.0, - duty_cycle: 100, + freqStart: 864.0, + freqEnd: 868.0, + dutyCycle: 100, spacing: 0, - power_limit: 36, + powerLimit: 36, }, ], [ Protobuf.Config.Config_LoRaConfig_RegionCode.TH, { - freq_start: 920.0, - freq_end: 925.0, - duty_cycle: 100, + freqStart: 920.0, + freqEnd: 925.0, + dutyCycle: 100, spacing: 0, - power_limit: 16, + powerLimit: 16, }, ], [ Protobuf.Config.Config_LoRaConfig_RegionCode.UA_433, { - freq_start: 433.0, - freq_end: 434.7, - duty_cycle: 10, + freqStart: 433.0, + freqEnd: 434.7, + dutyCycle: 10, spacing: 0, - power_limit: 10, + powerLimit: 10, }, ], [ Protobuf.Config.Config_LoRaConfig_RegionCode.UA_868, { - freq_start: 868.0, - freq_end: 868.6, - duty_cycle: 1, + freqStart: 868.0, + freqEnd: 868.6, + dutyCycle: 1, spacing: 0, - power_limit: 14, + powerLimit: 14, }, ], [ Protobuf.Config.Config_LoRaConfig_RegionCode.MY_433, { - freq_start: 433.0, - freq_end: 435.0, - duty_cycle: 100, + freqStart: 433.0, + freqEnd: 435.0, + dutyCycle: 100, spacing: 0, - power_limit: 20, + powerLimit: 20, }, ], [ Protobuf.Config.Config_LoRaConfig_RegionCode.MY_919, { - freq_start: 919.0, - freq_end: 924.0, - duty_cycle: 100, + freqStart: 919.0, + freqEnd: 924.0, + dutyCycle: 100, spacing: 0, - power_limit: 27, + powerLimit: 27, }, ], [ Protobuf.Config.Config_LoRaConfig_RegionCode.LORA_24, { - freq_start: 2400.0, - freq_end: 2483.5, - duty_cycle: 100, + freqStart: 2400.0, + freqEnd: 2483.5, + dutyCycle: 100, spacing: 0, - power_limit: 10, + powerLimit: 10, }, ], [ Protobuf.Config.Config_LoRaConfig_RegionCode.UNSET, { - freq_start: 902.0, - freq_end: 928.0, - duty_cycle: 100, + freqStart: 902.0, + freqEnd: 928.0, + dutyCycle: 100, spacing: 0, - power_limit: 30, + powerLimit: 30, }, ], ]); @@ -290,7 +290,7 @@ export const FrequencyCalculator = (): JSX.Element => { const selectedRegion = RegionData.get(region); const selectedModemPreset = modemPresets.get(modemPreset); const calculatedNumChannels = Math.floor( - (selectedRegion.freq_end - selectedRegion.freq_start) / + (selectedRegion.freqEnd - selectedRegion.freqStart) / (selectedRegion.spacing + selectedModemPreset.bw / 1000), ); @@ -304,7 +304,7 @@ export const FrequencyCalculator = (): JSX.Element => { setChannel(updatedChannel); setChannelFrequency( - selectedRegion.freq_start + + selectedRegion.freqStart + selectedModemPreset.bw / 2000 + updatedChannel * (selectedModemPreset.bw / 1000), ); @@ -318,7 +318,7 @@ export const FrequencyCalculator = (): JSX.Element => { value={modemPreset} onChange={(e) => setModemPreset( - parseInt( + Number.parseInt( e.target.value, ) as Protobuf.Config.Config_LoRaConfig_ModemPreset, ) @@ -335,7 +335,7 @@ export const FrequencyCalculator = (): JSX.Element => { setChannel(parseInt(e.target.value))} + onChange={(e) => setChannel(Number.parseInt(e.target.value))} > {Array.from(Array(numChannels).keys()).map((key) => (