Files
slippi-launcher/electron-builder.json
Vince Au f3a6307ea8 Add DatabaseReplayProvider (#400)
* wip

* add database replay provider wip

* still crashes unfortunately

* add migration and fix adding replays

* add database

* add database syncing

* fix migration not matching schema

* fix stat not working

* it hecking works lets hecking go

* reduce the number of fetched items for now

* add players

* move repositories into subfolder

* fix isDev flag

* log when using in-memory db

* add mapping function

* add consts and indicate load complete

* fix incorrect player type

* use partition

* ignore invalid files

* update log messages

* reorder columns and add unique constraint

* add date time inference to database provider

* check database before adding game

* add stats calculation to database replay provider

* allow empty database path

* add database tests

* add test for row count

* add more tests

* add test for players

* add test for unique player index

* move partition to own file

* move mocks into own file

* clean up database tests

* allow size bytes to be undefined when inserting

* update database name

* clean up replay provider logic

* clean up replay providers

* rename file to snake case

* use dynamic imports

* add proper migration handling

* simplify migrations webpack conf

* add kysely workers and fix broken tests

* add user id

* add ranked info to games table

* remove default exports from migration

* clean up code

* infer start time before writing to db

* add set info to game table

* add ability to re-index database from scratch

* fix typo

* return all replays for now

* update migration name format

* update database path alias

* remove test repository file

* add total folder size calculation

* use promise.all

* fix migration schema

* refactor repositories

* rename sequence index to sequence number

* add missing drop index

* move record generation outside of class

* no need to explicitly drop indexes

* add retry logic for database creation

* rename replay table to file

* add readme to database folder

* chore(deps): move kysely to prod dependency

* optimize player fetching

* also index by player index

* use forEach

* optimise database calls

* remove else condition

* return player records too on insertion

* rename game record to game and file record

* go back to using a for-loop for speed
2023-11-19 22:24:11 +11:00

108 lines
2.5 KiB
JSON

{
"productName": "Slippi Launcher",
"appId": "com.github.projectslippi.slippidesktopapp",
"asar": true,
"asarUnpack": [
"**\\*.{node,dll}",
"./dist/main/*.js",
"./node_modules/**/*.{js,json}"
],
"files": ["dist", "node_modules", "package.json"],
"afterSign": ".erb/scripts/notarize.js",
"fileAssociations": {
"ext": "slp",
"name": "slp",
"description": "Slippi File Format",
"icon": "./assets/file.ico"
},
"artifactName": "Slippi-Launcher-${version}-${os}.${ext}",
"mac": {
"target": {
"target": "default",
"arch": "universal"
},
"fileAssociations": {
"ext": "slp",
"role": "Viewer"
},
"type": "distribution",
"mergeASARs": false,
"hardenedRuntime": true,
"entitlements": "assets/entitlements.mac.plist",
"entitlementsInherit": "assets/entitlements.mac.plist",
"category": "public.app-category.games",
"gatekeeperAssess": false,
"extendInfo": {
"NSAppTransportSecurity": {
"NSAllowsArbitraryLoads": true
}
},
"minimumSystemVersion": "10.13.6"
},
"dmg": {
"artifactName": "Slippi-Launcher-${version}.${ext}",
"icon": "assets/icon.icns",
"contents": [
{
"x": 130,
"y": 220
},
{
"x": 410,
"y": 220,
"type": "link",
"path": "/Applications"
}
]
},
"win": {
"target": ["nsis"],
"icon": "assets/icon.ico",
"publisherName": "Slippi LLC",
"sign": ".erb/scripts/windows-sign.js",
"signDlls": true,
"signingHashAlgorithms": ["sha256"]
},
"nsis": {
"artifactName": "Slippi-Launcher-Setup-${version}.${ext}",
"include": ".erb/scripts/installer.nsh",
"warningsAsErrors": false,
"allowElevation": true,
"oneClick": false,
"allowToChangeInstallationDirectory": true,
"createStartMenuShortcut": true
},
"linux": {
"target": ["AppImage"],
"category": "Development"
},
"appImage": {
"artifactName": "Slippi-Launcher-${version}-x86_64.${ext}"
},
"protocols": [
{
"name": "slippi",
"role": "Viewer",
"schemes": ["slippi"]
}
],
"directories": {
"app": "release/app",
"buildResources": "assets",
"output": "release/build"
},
"extraResources": [
"./assets/include/**",
{
"from": "./release/app/dist/migrations",
"to": "./migrations",
"filter": ["**/*.js"]
}
],
"publish": {
"provider": "github",
"owner": "project-slippi",
"repo": "slippi-launcher"
}
}