Merge pull request #258 from Hunter275/issue-257-node-sorting
fix sorting + new protobufs
This commit is contained in:
+33
-33
@@ -21,64 +21,64 @@
|
|||||||
},
|
},
|
||||||
"homepage": "https://meshtastic.org",
|
"homepage": "https://meshtastic.org",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@bufbuild/protobuf": "^1.8.0",
|
"@bufbuild/protobuf": "^1.10.0",
|
||||||
"@emeraldpay/hashicon-react": "^0.5.2",
|
"@emeraldpay/hashicon-react": "^0.5.2",
|
||||||
"@meshtastic/js": "2.3.4-0",
|
"@meshtastic/js": "2.3.7-0",
|
||||||
"@radix-ui/react-accordion": "^1.1.2",
|
"@radix-ui/react-accordion": "^1.2.0",
|
||||||
"@radix-ui/react-checkbox": "^1.0.4",
|
"@radix-ui/react-checkbox": "^1.1.0",
|
||||||
"@radix-ui/react-dialog": "^1.0.5",
|
"@radix-ui/react-dialog": "^1.1.1",
|
||||||
"@radix-ui/react-dropdown-menu": "^2.0.6",
|
"@radix-ui/react-dropdown-menu": "^2.1.1",
|
||||||
"@radix-ui/react-label": "^2.0.2",
|
"@radix-ui/react-label": "^2.1.0",
|
||||||
"@radix-ui/react-menubar": "^1.0.4",
|
"@radix-ui/react-menubar": "^1.1.1",
|
||||||
"@radix-ui/react-popover": "^1.0.7",
|
"@radix-ui/react-popover": "^1.1.1",
|
||||||
"@radix-ui/react-scroll-area": "^1.0.5",
|
"@radix-ui/react-scroll-area": "^1.1.0",
|
||||||
"@radix-ui/react-select": "^2.0.0",
|
"@radix-ui/react-select": "^2.1.1",
|
||||||
"@radix-ui/react-separator": "^1.0.3",
|
"@radix-ui/react-separator": "^1.1.0",
|
||||||
"@radix-ui/react-switch": "^1.0.3",
|
"@radix-ui/react-switch": "^1.1.0",
|
||||||
"@radix-ui/react-tabs": "^1.0.4",
|
"@radix-ui/react-tabs": "^1.1.0",
|
||||||
"@radix-ui/react-toast": "^1.1.5",
|
"@radix-ui/react-toast": "^1.2.1",
|
||||||
"@radix-ui/react-tooltip": "^1.0.7",
|
"@radix-ui/react-tooltip": "^1.1.1",
|
||||||
"@turf/turf": "^6.5.0",
|
"@turf/turf": "^6.5.0",
|
||||||
"base64-js": "^1.5.1",
|
"base64-js": "^1.5.1",
|
||||||
"class-transformer": "^0.5.1",
|
"class-transformer": "^0.5.1",
|
||||||
"class-validator": "^0.14.1",
|
"class-validator": "^0.14.1",
|
||||||
"class-variance-authority": "^0.7.0",
|
"class-variance-authority": "^0.7.0",
|
||||||
"clsx": "^2.1.0",
|
"clsx": "^2.1.1",
|
||||||
"cmdk": "^1.0.0",
|
"cmdk": "^1.0.0",
|
||||||
"immer": "^10.0.4",
|
"immer": "^10.1.1",
|
||||||
"lucide-react": "^0.363.0",
|
"lucide-react": "^0.363.0",
|
||||||
"mapbox-gl": "npm:empty-npm-package@^1.0.0",
|
"mapbox-gl": "npm:empty-npm-package@^1.0.0",
|
||||||
"maplibre-gl": "4.1.2",
|
"maplibre-gl": "4.1.2",
|
||||||
"react": "^18.2.0",
|
"react": "^18.3.1",
|
||||||
"react-dom": "^18.2.0",
|
"react-dom": "^18.3.1",
|
||||||
"react-hook-form": "^7.51.2",
|
"react-hook-form": "^7.52.0",
|
||||||
"react-map-gl": "7.1.7",
|
"react-map-gl": "7.1.7",
|
||||||
"react-qrcode-logo": "^2.9.0",
|
"react-qrcode-logo": "^2.10.0",
|
||||||
"rfc4648": "^1.5.3",
|
"rfc4648": "^1.5.3",
|
||||||
"tailwind-merge": "^2.2.2",
|
"tailwind-merge": "^2.3.0",
|
||||||
"tailwindcss-animate": "^1.0.7",
|
"tailwindcss-animate": "^1.0.7",
|
||||||
"timeago-react": "^3.0.6",
|
"timeago-react": "^3.0.6",
|
||||||
"zustand": "4.5.2"
|
"zustand": "4.5.2"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@biomejs/biome": "^1.8.1",
|
"@biomejs/biome": "^1.8.2",
|
||||||
"@buf/meshtastic_protobufs.bufbuild_es": "1.8.0-20240325205556-b11811405eea.2",
|
"@buf/meshtastic_protobufs.bufbuild_es": "1.10.0-20240613143006-244927bc441a.1",
|
||||||
"@types/chrome": "^0.0.263",
|
"@types/chrome": "^0.0.263",
|
||||||
"@types/node": "^20.11.30",
|
"@types/node": "^20.14.9",
|
||||||
"@types/react": "^18.2.73",
|
"@types/react": "^18.3.3",
|
||||||
"@types/react-dom": "^18.2.23",
|
"@types/react-dom": "^18.3.0",
|
||||||
"@types/w3c-web-serial": "^1.0.6",
|
"@types/w3c-web-serial": "^1.0.6",
|
||||||
"@types/web-bluetooth": "^0.0.20",
|
"@types/web-bluetooth": "^0.0.20",
|
||||||
"@vitejs/plugin-react": "^4.2.1",
|
"@vitejs/plugin-react": "^4.3.1",
|
||||||
"autoprefixer": "^10.4.19",
|
"autoprefixer": "^10.4.19",
|
||||||
"gzipper": "^7.2.0",
|
"gzipper": "^7.2.0",
|
||||||
"postcss": "^8.4.38",
|
"postcss": "^8.4.38",
|
||||||
"rollup-plugin-visualizer": "^5.12.0",
|
"rollup-plugin-visualizer": "^5.12.0",
|
||||||
"tailwindcss": "^3.4.3",
|
"tailwindcss": "^3.4.4",
|
||||||
"tar": "^6.2.1",
|
"tar": "^6.2.1",
|
||||||
"tslib": "^2.6.2",
|
"tslib": "^2.6.3",
|
||||||
"typescript": "^5.4.3",
|
"typescript": "^5.5.2",
|
||||||
"vite": "^5.2.6",
|
"vite": "^5.3.1",
|
||||||
"vite-plugin-environment": "^1.1.3"
|
"vite-plugin-environment": "^1.1.3"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Generated
+4231
-3173
File diff suppressed because it is too large
Load Diff
@@ -34,12 +34,8 @@ export const Table = ({ headings, rows }: TableProps): JSX.Element => {
|
|||||||
|
|
||||||
// Custom comparison for 'Last Heard' column
|
// Custom comparison for 'Last Heard' column
|
||||||
if (sortColumn === "Last Heard") {
|
if (sortColumn === "Last Heard") {
|
||||||
const aTimestamp = a[columnIndex].props.timestamp
|
const aTimestamp = aValue.props.timestamp ?? 0;
|
||||||
? a[columnIndex].props.timestamp
|
const bTimestamp = bValue.props.timestamp ?? 0;
|
||||||
: 0;
|
|
||||||
const bTimestamp = b[columnIndex].props.timestamp
|
|
||||||
? b[columnIndex].props.timestamp
|
|
||||||
: 0;
|
|
||||||
|
|
||||||
if (aTimestamp < bTimestamp) {
|
if (aTimestamp < bTimestamp) {
|
||||||
return sortOrder === "asc" ? -1 : 1;
|
return sortOrder === "asc" ? -1 : 1;
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import type { Message } from "@bufbuild/protobuf";
|
import type { Message } from "@bufbuild/protobuf";
|
||||||
import { Protobuf } from "@meshtastic/js";
|
import { Protobuf } from "@meshtastic/js";
|
||||||
import { IsBoolean, IsEnum, IsInt } from "class-validator";
|
import { IsBoolean, IsEnum, IsInt, IsString } from "class-validator";
|
||||||
|
|
||||||
export class DeviceValidation
|
export class DeviceValidation
|
||||||
implements Omit<Protobuf.Config.Config_DeviceConfig, keyof Message>
|
implements Omit<Protobuf.Config.Config_DeviceConfig, keyof Message>
|
||||||
@@ -34,4 +34,10 @@ export class DeviceValidation
|
|||||||
|
|
||||||
@IsBoolean()
|
@IsBoolean()
|
||||||
disableTripleClick: boolean;
|
disableTripleClick: boolean;
|
||||||
|
|
||||||
|
@IsBoolean()
|
||||||
|
ledHeartbeatDisabled: boolean;
|
||||||
|
|
||||||
|
@IsString()
|
||||||
|
tzdef: string;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -34,4 +34,7 @@ export class DisplayValidation
|
|||||||
|
|
||||||
@IsBoolean()
|
@IsBoolean()
|
||||||
wakeOnTapOrMotion: boolean;
|
wakeOnTapOrMotion: boolean;
|
||||||
|
|
||||||
|
@IsEnum(Protobuf.Config.Config_DisplayConfig_CompassOrientation)
|
||||||
|
compassOrientation: Protobuf.Config.Config_DisplayConfig_CompassOrientation;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -11,4 +11,10 @@ export class PaxcounterValidation
|
|||||||
|
|
||||||
@IsInt()
|
@IsInt()
|
||||||
paxcounterUpdateInterval: number;
|
paxcounterUpdateInterval: number;
|
||||||
|
|
||||||
|
@IsInt()
|
||||||
|
bleThreshold: number;
|
||||||
|
|
||||||
|
@IsInt()
|
||||||
|
wifiThreshold: number;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user