493 Commits

Author SHA1 Message Date
Maarten van Heusden
855d31f6df chore: set version to v3.1.0, disable maximizing 2026-02-02 09:50:00 +01:00
Maarten van Heusden
2995a28d5c feat: clear terminal button, cleanup styling 2026-02-02 09:44:33 +01:00
Maarten
f12000df52 feat: integrated terminal (#303)
* feat: integrated terminal

* fix: settings modal

* chore: make compatible for windows

* feat: block app when downloading

* docs: update README with new interface

* refactor: cleanup main.ts styling
2026-02-01 17:42:22 +01:00
Maarten van Heusden
3192f1bdc9 chore: update dependencies 2026-01-31 16:16:45 +01:00
Maarten van Heusden
cee99c88f9 chore: update pnpm-lock 2025-09-09 17:52:01 +02:00
Maarten van Heusden
59e3bb07e7 chore: update depotdownloader to v3.4.0 2025-09-09 17:51:42 +02:00
Maarten van Heusden
eb76a004cc fix: add opener plugin to factory 2025-09-09 17:48:58 +02:00
Maarten van Heusden
bba26afbba fix: actually produce debug builds 2025-09-09 17:27:56 +02:00
Maarten van Heusden
ce6846ba8f feat: debug workflow 2025-09-09 17:14:34 +02:00
Maarten van Heusden
cd152c75e8 fix: add Opener plugin to Rust & update fix-path-env 2025-09-09 17:09:48 +02:00
Maarten van Heusden
6794c380ad refactor: remove duplicate permission entry 2025-09-09 17:08:26 +02:00
Maarten van Heusden
dad2daee4a fix: open URLs and directories properly again
migrate to tauri Opener plugin
2025-09-09 17:07:02 +02:00
Maarten van Heusden
3cdc627ea6 chore: update dependencies
- migrate typescript eslint
- remove unused import
- remove unused crate
2025-09-09 16:08:31 +02:00
dependabot[bot]
6c50b0f816 chore(deps): bump ring in /src-tauri in the cargo group (#276)
Bumps the cargo group in /src-tauri with 1 update: [ring](https://github.com/briansmith/ring).


Updates `ring` from 0.17.8 to 0.17.13
- [Changelog](https://github.com/briansmith/ring/blob/main/RELEASES.md)
- [Commits](https://github.com/briansmith/ring/commits)

---
updated-dependencies:
- dependency-name: ring
  dependency-type: indirect
  dependency-group: cargo
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-06 16:02:02 +02:00
dependabot[bot]
2ea8a024d1 chore(deps-dev): bump vite from 6.1.1 to 6.1.2 in the npm_and_yarn group (#277)
Bumps the npm_and_yarn group with 1 update: [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite).


Updates `vite` from 6.1.1 to 6.1.2
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v6.1.2/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v6.1.2/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-type: direct:development
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-06 16:01:54 +02:00
dependabot[bot]
a7a941a4d0 chore(deps): bump the cargo-deps group across 1 directory with 7 updates (#282)
Bumps the cargo-deps group with 7 updates in the /src-tauri directory:

| Package | From | To |
| --- | --- | --- |
| [tauri-plugin-shell](https://github.com/tauri-apps/plugins-workspace) | `2.2.0` | `2.2.1` |
| [tauri-plugin-dialog](https://github.com/tauri-apps/plugins-workspace) | `2.2.0` | `2.2.1` |
| [serde](https://github.com/serde-rs/serde) | `1.0.218` | `1.0.219` |
| [serde_json](https://github.com/serde-rs/json) | `1.0.139` | `1.0.140` |
| [reqwest](https://github.com/seanmonstar/reqwest) | `0.12.12` | `0.12.15` |
| [zip](https://github.com/zip-rs/zip2) | `2.2.2` | `2.6.1` |
| [tauri-build](https://github.com/tauri-apps/tauri) | `2.0.5` | `2.2.0` |



Updates `tauri-plugin-shell` from 2.2.0 to 2.2.1
- [Release notes](https://github.com/tauri-apps/plugins-workspace/releases)
- [Commits](https://github.com/tauri-apps/plugins-workspace/compare/os-v2.2.0...fs-v2.2.1)

Updates `tauri-plugin-dialog` from 2.2.0 to 2.2.1
- [Release notes](https://github.com/tauri-apps/plugins-workspace/releases)
- [Commits](https://github.com/tauri-apps/plugins-workspace/compare/os-v2.2.0...fs-v2.2.1)

Updates `serde` from 1.0.218 to 1.0.219
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.218...v1.0.219)

Updates `serde_json` from 1.0.139 to 1.0.140
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.139...v1.0.140)

Updates `reqwest` from 0.12.12 to 0.12.15
- [Release notes](https://github.com/seanmonstar/reqwest/releases)
- [Changelog](https://github.com/seanmonstar/reqwest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/seanmonstar/reqwest/compare/v0.12.12...v0.12.15)

Updates `zip` from 2.2.2 to 2.6.1
- [Release notes](https://github.com/zip-rs/zip2/releases)
- [Changelog](https://github.com/zip-rs/zip2/blob/master/CHANGELOG.md)
- [Commits](https://github.com/zip-rs/zip2/compare/v2.2.2...v2.6.1)

Updates `tauri-build` from 2.0.5 to 2.2.0
- [Release notes](https://github.com/tauri-apps/tauri/releases)
- [Commits](https://github.com/tauri-apps/tauri/compare/tauri-build-v2.0.5...tauri-build-v2.2.0)

---
updated-dependencies:
- dependency-name: tauri-plugin-shell
  dependency-version: 2.2.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-deps
- dependency-name: tauri-plugin-dialog
  dependency-version: 2.2.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-deps
- dependency-name: serde
  dependency-version: 1.0.219
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-deps
- dependency-name: serde_json
  dependency-version: 1.0.140
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-deps
- dependency-name: reqwest
  dependency-version: 0.12.15
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-deps
- dependency-name: zip
  dependency-version: 2.6.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: cargo-deps
- dependency-name: tauri-build
  dependency-version: 2.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: cargo-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-06 15:56:26 +02:00
dependabot[bot]
7c5b56cada chore(deps): bump the npm-deps group across 1 directory with 9 updates (#283)
Bumps the npm-deps group with 9 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [@tauri-apps/api](https://github.com/tauri-apps/tauri) | `2.2.0` | `2.5.0` |
| [@tauri-apps/plugin-dialog](https://github.com/tauri-apps/plugins-workspace) | `2.2.0` | `2.2.1` |
| [@tauri-apps/plugin-shell](https://github.com/tauri-apps/plugins-workspace) | `2.2.0` | `2.2.1` |
| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.20.0` | `9.25.1` |
| [@tauri-apps/cli](https://github.com/tauri-apps/tauri) | `2.2.7` | `2.5.0` |
| [eslint](https://github.com/eslint/eslint) | `9.20.1` | `9.25.1` |
| [typescript](https://github.com/microsoft/TypeScript) | `5.7.3` | `5.8.3` |
| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.24.1` | `8.31.1` |
| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `6.1.1` | `6.3.4` |



Updates `@tauri-apps/api` from 2.2.0 to 2.5.0
- [Release notes](https://github.com/tauri-apps/tauri/releases)
- [Commits](https://github.com/tauri-apps/tauri/compare/@tauri-apps/api-v2.2.0...@tauri-apps/api-v2.5.0)

Updates `@tauri-apps/plugin-dialog` from 2.2.0 to 2.2.1
- [Release notes](https://github.com/tauri-apps/plugins-workspace/releases)
- [Commits](https://github.com/tauri-apps/plugins-workspace/compare/os-v2.2.0...fs-v2.2.1)

Updates `@tauri-apps/plugin-shell` from 2.2.0 to 2.2.1
- [Release notes](https://github.com/tauri-apps/plugins-workspace/releases)
- [Commits](https://github.com/tauri-apps/plugins-workspace/compare/os-v2.2.0...fs-v2.2.1)

Updates `@eslint/js` from 9.20.0 to 9.25.1
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/commits/v9.25.1/packages/js)

Updates `@tauri-apps/cli` from 2.2.7 to 2.5.0
- [Release notes](https://github.com/tauri-apps/tauri/releases)
- [Commits](https://github.com/tauri-apps/tauri/compare/@tauri-apps/cli-v2.2.7...@tauri-apps/cli-v2.5.0)

Updates `eslint` from 9.20.1 to 9.25.1
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v9.20.1...v9.25.1)

Updates `typescript` from 5.7.3 to 5.8.3
- [Release notes](https://github.com/microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release-publish.yml)
- [Commits](https://github.com/microsoft/TypeScript/compare/v5.7.3...v5.8.3)

Updates `typescript-eslint` from 8.24.1 to 8.31.1
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/typescript-eslint/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.31.1/packages/typescript-eslint)

Updates `vite` from 6.1.1 to 6.3.4
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v6.3.4/packages/vite)

---
updated-dependencies:
- dependency-name: "@tauri-apps/api"
  dependency-version: 2.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: npm-deps
- dependency-name: "@tauri-apps/plugin-dialog"
  dependency-version: 2.2.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: npm-deps
- dependency-name: "@tauri-apps/plugin-shell"
  dependency-version: 2.2.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: npm-deps
- dependency-name: "@eslint/js"
  dependency-version: 9.25.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: npm-deps
- dependency-name: "@tauri-apps/cli"
  dependency-version: 2.5.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: npm-deps
- dependency-name: eslint
  dependency-version: 9.25.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: npm-deps
- dependency-name: typescript
  dependency-version: 5.8.3
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: npm-deps
- dependency-name: typescript-eslint
  dependency-version: 8.31.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: npm-deps
- dependency-name: vite
  dependency-version: 6.3.4
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: npm-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-06 15:56:17 +02:00
Maarten van Heusden
9bee63241e chore(deps): update to DepotDownloader v3.0.0 2025-02-21 14:09:34 +01:00
Maarten van Heusden
91ff8060ca fix: sync pnpm-lock.json with package.json 2025-02-21 13:17:53 +01:00
Maarten van Heusden
a96771685c chore(deps): upgrade dependencies 2025-02-21 12:47:46 +01:00
dependabot[bot]
e61c0ebf34 chore(deps-dev): bump vite in the npm_and_yarn group across 1 directory (#271)
Bumps the npm_and_yarn group with 1 update in the / directory: [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite).


Updates `vite` from 6.0.11 to 6.1.1
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/create-vite@6.1.1/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-type: direct:development
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-21 12:38:03 +01:00
dependabot[bot]
56843f07d2 chore(deps): bump the npm-deps group across 1 directory with 7 updates (#268)
Bumps the npm-deps group with 7 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [@tauri-apps/api](https://github.com/tauri-apps/tauri) | `2.1.1` | `2.2.0` |
| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.17.0` | `9.19.0` |
| [@tauri-apps/cli](https://github.com/tauri-apps/tauri) | `2.1.0` | `2.2.7` |
| [eslint](https://github.com/eslint/eslint) | `9.17.0` | `9.19.0` |
| [typescript](https://github.com/microsoft/TypeScript) | `5.7.2` | `5.7.3` |
| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.18.1` | `8.22.0` |
| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `6.0.5` | `6.0.11` |



Updates `@tauri-apps/api` from 2.1.1 to 2.2.0
- [Release notes](https://github.com/tauri-apps/tauri/releases)
- [Commits](https://github.com/tauri-apps/tauri/compare/@tauri-apps/api-v2.1.1...@tauri-apps/api-v2.2.0)

Updates `@eslint/js` from 9.17.0 to 9.19.0
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/commits/v9.19.0/packages/js)

Updates `@tauri-apps/cli` from 2.1.0 to 2.2.7
- [Release notes](https://github.com/tauri-apps/tauri/releases)
- [Commits](https://github.com/tauri-apps/tauri/compare/@tauri-apps/cli-v2.1.0...@tauri-apps/cli-v2.2.7)

Updates `eslint` from 9.17.0 to 9.19.0
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v9.17.0...v9.19.0)

Updates `typescript` from 5.7.2 to 5.7.3
- [Release notes](https://github.com/microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml)
- [Commits](https://github.com/microsoft/TypeScript/compare/v5.7.2...v5.7.3)

Updates `typescript-eslint` from 8.18.1 to 8.22.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/typescript-eslint/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.22.0/packages/typescript-eslint)

Updates `vite` from 6.0.5 to 6.0.11
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v6.0.11/packages/vite)

---
updated-dependencies:
- dependency-name: "@tauri-apps/api"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: npm-deps
- dependency-name: "@eslint/js"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: npm-deps
- dependency-name: "@tauri-apps/cli"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: npm-deps
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: npm-deps
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: npm-deps
- dependency-name: typescript-eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: npm-deps
- dependency-name: vite
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: npm-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-21 12:36:19 +01:00
dependabot[bot]
e681aceb29 chore(deps): bump the cargo-deps group across 1 directory with 3 updates (#269)
Bumps the cargo-deps group with 3 updates in the /src-tauri directory: [serde](https://github.com/serde-rs/serde), [serde_json](https://github.com/serde-rs/json) and [reqwest](https://github.com/seanmonstar/reqwest).


Updates `serde` from 1.0.216 to 1.0.217
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.216...v1.0.217)

Updates `serde_json` from 1.0.134 to 1.0.138
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.134...v1.0.138)

Updates `reqwest` from 0.12.9 to 0.12.12
- [Release notes](https://github.com/seanmonstar/reqwest/releases)
- [Changelog](https://github.com/seanmonstar/reqwest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/seanmonstar/reqwest/compare/v0.12.9...v0.12.12)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-deps
- dependency-name: serde_json
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-deps
- dependency-name: reqwest
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-21 12:36:07 +01:00
dependabot[bot]
7891ed19e1 chore(deps): bump openssl in /src-tauri in the cargo group (#270)
Bumps the cargo group in /src-tauri with 1 update: [openssl](https://github.com/sfackler/rust-openssl).


Updates `openssl` from 0.10.68 to 0.10.70
- [Release notes](https://github.com/sfackler/rust-openssl/releases)
- [Commits](https://github.com/sfackler/rust-openssl/compare/openssl-v0.10.68...openssl-v0.10.70)

---
updated-dependencies:
- dependency-name: openssl
  dependency-type: indirect
  dependency-group: cargo
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-21 12:35:53 +01:00
Maarten van Heusden
95c2d8efc4 chore(deps): update dependencies & remove unused dependency 2024-12-22 20:50:34 +01:00
Maarten van Heusden
3155054531 fix: macOS 2024-12-22 20:42:52 +01:00
Maarten van Heusden
04e8498edb refactor: disable username field spellcheck 2024-12-22 20:00:12 +01:00
Maarten van Heusden
69ca8dbf97 feat: use localappdata dir instead of temp dir 2024-12-22 19:23:59 +01:00
Maarten van Heusden
b479f50005 perf: further improve Cargo performance 2024-12-19 21:01:04 +01:00
Maarten van Heusden
2cb21bea17 fix: windows workflow glob typo 2024-12-12 22:08:19 +01:00
Maarten van Heusden
63c421ae10 fix: windows action workflow 2024-12-12 21:49:27 +01:00
Maarten van Heusden
9fadf3a627 chore: update branding 2024-12-12 20:40:37 +01:00
dependabot[bot]
ba7c17513a chore(deps): bump rustls in /src-tauri in the cargo group (#254)
Bumps the cargo group in /src-tauri with 1 update: [rustls](https://github.com/rustls/rustls).


Updates `rustls` from 0.23.16 to 0.23.18
- [Release notes](https://github.com/rustls/rustls/releases)
- [Changelog](https://github.com/rustls/rustls/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rustls/rustls/compare/v/0.23.16...v/0.23.18)

---
updated-dependencies:
- dependency-name: rustls
  dependency-type: indirect
  dependency-group: cargo
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-12 21:34:12 +01:00
dependabot[bot]
8d227944cf chore(deps): bump nanoid from 3.3.7 to 3.3.8 in the npm_and_yarn group (#258)
Bumps the npm_and_yarn group with 1 update: [nanoid](https://github.com/ai/nanoid).


Updates `nanoid` from 3.3.7 to 3.3.8
- [Release notes](https://github.com/ai/nanoid/releases)
- [Changelog](https://github.com/ai/nanoid/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ai/nanoid/compare/3.3.7...3.3.8)

---
updated-dependencies:
- dependency-name: nanoid
  dependency-type: indirect
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-12 21:33:56 +01:00
dependabot[bot]
a13d689b8c chore(deps): bump @tauri-apps/plugin-fs (#259)
Bumps the npm-deps group with 1 update in the / directory: [@tauri-apps/plugin-fs](https://github.com/tauri-apps/plugins-workspace).


Updates `@tauri-apps/plugin-fs` from 2.0.2 to 2.2.0
- [Release notes](https://github.com/tauri-apps/plugins-workspace/releases)
- [Commits](https://github.com/tauri-apps/plugins-workspace/compare/fs-v2.0.2...os-v2.2.0)

---
updated-dependencies:
- dependency-name: "@tauri-apps/plugin-fs"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: npm-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-12 21:33:31 +01:00
dependabot[bot]
5f0b9781c6 chore(deps): bump the cargo-deps group across 1 directory with 2 updates (#260)
Bumps the cargo-deps group with 2 updates in the /src-tauri directory: [serde](https://github.com/serde-rs/serde) and [serde_json](https://github.com/serde-rs/json).


Updates `serde` from 1.0.215 to 1.0.216
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.215...v1.0.216)

Updates `serde_json` from 1.0.132 to 1.0.133
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.132...v1.0.133)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-deps
- dependency-name: serde_json
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-12 21:32:56 +01:00
Maarten van Heusden
02a36e997e fix(action): pnpm find version 2024-12-12 20:08:19 +01:00
Maarten van Heusden
9374b9d382 fix: action 2024-12-12 20:05:53 +01:00
Maarten van Heusden
6ed3e71536 chore: update dependencies 2024-12-12 19:48:53 +01:00
Maarten van Heusden
bbdf0955db fix: use temp dir 2024-11-17 20:59:48 +01:00
Maarten van Heusden
a8cd68fce6 fix: spawning, remove shit terminals 2024-11-17 13:31:13 +01:00
Maarten van Heusden
55a65a54dc fix: windows 2024-11-17 12:24:40 +01:00
Maarten van Heusden
90c1c10253 fix(workflow): seperate artifacts 2024-11-17 12:13:01 +01:00
Maarten van Heusden
377a0fcb98 fix(workflow): truncate path 2024-11-17 12:04:41 +01:00
Maarten van Heusden
3f70e4ef91 fix: artifact path 2024-11-17 09:40:34 +01:00
Maarten van Heusden
17434ecaad fix: workflow 2024-11-17 09:33:12 +01:00
Maarten
a2daed0739 chore: update pnpm setup action 2024-11-16 21:50:33 +01:00
Maarten
2406e0ddc8 fix: action 2024-11-16 21:44:58 +01:00
Maarten
5c6094c2f1 feat: tauri build action 2024-11-16 21:38:15 +01:00
Maarten van Heusden
d3bddc0e54 v3.0.0 2024-11-16 18:15:01 +01:00
Maarten van Heusden
8578063b0a chore(deps): update some more dependencies 2024-11-16 18:14:29 +01:00
Maarten van Heusden
27be876501 chore: update DepotDownloader 2024-11-16 18:08:37 +01:00
dependabot[bot]
ab2721716a chore(deps): bump tauri-build from 2.0.2 to 2.0.3 in /src-tauri (#250)
Bumps [tauri-build](https://github.com/tauri-apps/tauri) from 2.0.2 to 2.0.3.
- [Release notes](https://github.com/tauri-apps/tauri/releases)
- [Commits](https://github.com/tauri-apps/tauri/compare/tauri-build-v2.0.2...tauri-build-v2.0.3)

---
updated-dependencies:
- dependency-name: tauri-build
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-16 18:06:34 +01:00
dependabot[bot]
f26c591572 chore(deps): bump the cargo-deps group in /src-tauri with 2 updates (#248)
Bumps the cargo-deps group in /src-tauri with 2 updates: [serde](https://github.com/serde-rs/serde) and [tauri-build](https://github.com/tauri-apps/tauri).


Updates `serde` from 1.0.214 to 1.0.215
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.214...v1.0.215)

Updates `tauri-build` from 2.0.2 to 2.0.3
- [Release notes](https://github.com/tauri-apps/tauri/releases)
- [Commits](https://github.com/tauri-apps/tauri/compare/tauri-build-v2.0.2...tauri-build-v2.0.3)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-deps
- dependency-name: tauri-build
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-16 18:03:55 +01:00
dependabot[bot]
4d70fa086d chore(deps): bump the npm-deps group with 6 updates (#249)
Bumps the npm-deps group with 6 updates:

| Package | From | To |
| --- | --- | --- |
| [@tauri-apps/api](https://github.com/tauri-apps/tauri) | `2.0.3` | `2.1.1` |
| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.13.0` | `9.15.0` |
| [@tauri-apps/cli](https://github.com/tauri-apps/tauri) | `2.0.4` | `2.1.0` |
| [eslint](https://github.com/eslint/eslint) | `9.13.0` | `9.15.0` |
| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.12.2` | `8.14.0` |
| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `5.4.10` | `5.4.11` |


Updates `@tauri-apps/api` from 2.0.3 to 2.1.1
- [Release notes](https://github.com/tauri-apps/tauri/releases)
- [Commits](https://github.com/tauri-apps/tauri/compare/@tauri-apps/api-v2.0.3...@tauri-apps/api-v2.1.1)

Updates `@eslint/js` from 9.13.0 to 9.15.0
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/commits/v9.15.0/packages/js)

Updates `@tauri-apps/cli` from 2.0.4 to 2.1.0
- [Release notes](https://github.com/tauri-apps/tauri/releases)
- [Commits](https://github.com/tauri-apps/tauri/compare/@tauri-apps/cli-v2.0.4...@tauri-apps/cli-v2.1.0)

Updates `eslint` from 9.13.0 to 9.15.0
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v9.13.0...v9.15.0)

Updates `typescript-eslint` from 8.12.2 to 8.14.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/typescript-eslint/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.14.0/packages/typescript-eslint)

Updates `vite` from 5.4.10 to 5.4.11
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v5.4.11/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v5.4.11/packages/vite)

---
updated-dependencies:
- dependency-name: "@tauri-apps/api"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: npm-deps
- dependency-name: "@eslint/js"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: npm-deps
- dependency-name: "@tauri-apps/cli"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: npm-deps
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: npm-deps
- dependency-name: typescript-eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: npm-deps
- dependency-name: vite
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: npm-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-16 18:03:39 +01:00
Maarten van Heusden
f75a8efd8d refactor: use recognizable group names 2024-11-16 18:01:27 +01:00
Maarten van Heusden
10487caa30 fix: shut dependabot up even more 2024-11-16 17:57:01 +01:00
Maarten van Heusden
6bf96a5f3a fix: shut dependabot up 2024-11-16 17:53:11 +01:00
dependabot[bot]
1a8b19ce43 chore(deps): bump @eslint/plugin-kit in the npm_and_yarn group (#239)
Bumps the npm_and_yarn group with 1 update: [@eslint/plugin-kit](https://github.com/eslint/rewrite).


Updates `@eslint/plugin-kit` from 0.2.2 to 0.2.3
- [Release notes](https://github.com/eslint/rewrite/releases)
- [Changelog](https://github.com/eslint/rewrite/blob/main/release-please-config.json)
- [Commits](https://github.com/eslint/rewrite/compare/plugin-kit-v0.2.2...plugin-kit-v0.2.3)

---
updated-dependencies:
- dependency-name: "@eslint/plugin-kit"
  dependency-type: indirect
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-16 17:43:30 +01:00
dependabot[bot]
6e2f0a0872 chore(deps): bump serde from 1.0.213 to 1.0.214 in /src-tauri (#229)
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.213 to 1.0.214.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.213...v1.0.214)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-30 11:57:46 +01:00
dependabot[bot]
6d8b66cf52 chore(deps): bump rollup in the npm_and_yarn group across 1 directory (#235)
Bumps the npm_and_yarn group with 1 update in the / directory: [rollup](https://github.com/rollup/rollup).


Updates `rollup` from 4.21.3 to 4.24.3
- [Release notes](https://github.com/rollup/rollup/releases)
- [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rollup/rollup/compare/v4.21.3...v4.24.3)

---
updated-dependencies:
- dependency-name: rollup
  dependency-type: indirect
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-30 11:57:30 +01:00
Maarten van Heusden
8e2385448b chore(deps): upgrade dependencies 2024-10-30 11:55:17 +01:00
Maarten van Heusden
d6de8b34a1 docs: green emoji 2024-10-30 11:54:53 +01:00
Maarten van Heusden
ad6a3b70aa refactor: cleanup README 2024-10-30 11:47:50 +01:00
Maarten van Heusden
782492857f chore: attach licenses 2024-10-30 11:47:34 +01:00
Maarten van Heusden
f7c293084c refactor: cleanup debug info logging 2024-10-29 14:42:58 +01:00
Maarten van Heusden
90fdca1d1e refactor: remove redundant css & rename 2024-10-29 14:40:49 +01:00
Maarten van Heusden
b9b09778ad refactor: no need for manually handling an issue with response content twice 2024-10-29 14:24:13 +01:00
Maarten van Heusden
7f2833c4ac chore: release v3.0.0-alpha.2 2024-10-22 21:33:26 +02:00
Maarten van Heusden
984f5a66d3 chore(deps): update dependencies 2024-10-22 21:33:26 +02:00
Maarten van Heusden
85af1a555f chore(deps): update dependencies 2024-10-22 21:14:54 +02:00
Maarten van Heusden
3ece7f30b4 fix: macOS dmg bundle 2024-10-06 14:16:35 +02:00
Maarten van Heusden
5fffc3d48a feat: macOS support 2024-10-06 11:11:48 +02:00
Maarten
133191685f fix: actually resize image in README 2024-09-24 11:28:47 +02:00
Maarten van Heusden
b6013321ba docs: add issue templates 2024-09-17 12:37:48 +02:00
Maarten van Heusden
fe46619a57 fix: don't print user passwords 2024-09-16 20:21:05 +02:00
Maarten van Heusden
e7f4d6c0b3 chore: add vectum base 2024-09-16 18:53:40 +02:00
Maarten van Heusden
3df1b699c5 refactor: remove screenshot.png 2024-03-19 10:48:28 +01:00
Maarten van Heusden
ec409a5c93 chore: init tauri project 2024-02-19 15:31:46 +01:00
Maarten van Heusden
c5bde3cde6 chore: empty out READMEs 2024-02-19 14:59:07 +01:00
Maarten van Heusden
cb3a220254 chore: empty out repository 2024-02-19 14:49:39 +01:00
Maarten
e8e741a908 Merge pull request #159 from mmvanheusden/dependabot/npm_and_yarn/electron-28.2.2
chore(deps-dev): bump electron from 28.2.1 to 28.2.2
2024-02-13 20:59:22 +01:00
dependabot[bot]
0f06a45b9a chore(deps-dev): bump electron from 28.2.1 to 28.2.2
Bumps [electron](https://github.com/electron/electron) from 28.2.1 to 28.2.2.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v28.2.1...v28.2.2)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-12 21:40:18 +00:00
Maarten
dbf573c8ec Merge pull request #158 from mmvanheusden/dependabot/npm_and_yarn/electron-28.2.1
chore(deps-dev): bump electron from 28.2.0 to 28.2.1
2024-02-10 03:40:44 +01:00
dependabot[bot]
d1ff298cfa chore(deps-dev): bump electron from 28.2.0 to 28.2.1
Bumps [electron](https://github.com/electron/electron) from 28.2.0 to 28.2.1.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v28.2.0...v28.2.1)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-05 21:06:24 +00:00
Maarten
7fb7c57367 Merge pull request #155 from mmvanheusden/dependabot/npm_and_yarn/follow-redirects-1.15.5
chore(deps): bump follow-redirects from 1.15.4 to 1.15.5
2024-02-04 00:12:43 +01:00
Maarten
b6566e15fa Merge pull request #157 from mmvanheusden/dependabot/npm_and_yarn/electron-28.2.0
chore(deps-dev): bump electron from 28.1.1 to 28.2.0
2024-02-04 00:12:33 +01:00
dependabot[bot]
6583904bd9 chore(deps-dev): bump electron from 28.1.1 to 28.2.0
Bumps [electron](https://github.com/electron/electron) from 28.1.1 to 28.2.0.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v28.1.1...v28.2.0)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-29 21:34:36 +00:00
Maarten
a34d2e4ad9 feat: add steam deck to readme 2024-01-23 10:24:58 +01:00
Maarten van Heusden
c65f47f1d7 fix(css): proper dark colors for hr element 2024-01-22 17:37:57 +01:00
dependabot[bot]
262864fcd4 chore(deps): bump follow-redirects from 1.15.4 to 1.15.5
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.4 to 1.15.5.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.4...v1.15.5)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-15 21:10:17 +00:00
Maarten
930576e28c Merge pull request #152 from mmvanheusden/dependabot/npm_and_yarn/electron-28.1.1
chore(deps-dev): bump electron from 28.1.0 to 28.1.1
2024-01-12 07:38:26 +01:00
dependabot[bot]
352f604b81 chore(deps-dev): bump electron from 28.1.0 to 28.1.1
Bumps [electron](https://github.com/electron/electron) from 28.1.0 to 28.1.1.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v28.1.0...v28.1.1)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-08 21:43:48 +00:00
Maarten
a668731b46 Merge pull request #151 from mmvanheusden/dependabot/npm_and_yarn/follow-redirects-1.15.4
chore(deps): bump follow-redirects from 1.15.3 to 1.15.4
2024-01-02 17:32:42 +01:00
dependabot[bot]
2e2fe928b3 chore(deps): bump follow-redirects from 1.15.3 to 1.15.4
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.3 to 1.15.4.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.3...v1.15.4)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-01 21:49:54 +00:00
Maarten
589381ef6c refactor: refactor download utility 2023-12-26 18:48:31 +01:00
Maarten van Heusden
d1f0fe7116 fix: remove hard-coded color from counters 2023-12-26 12:50:18 +01:00
Maarten van Heusden
0a91fcfccf fix: make settings modal slightly bigger 2023-12-26 12:46:29 +01:00
Maarten van Heusden
a55f16e50d feat: add second .net info banner 2023-12-26 12:39:21 +01:00
Maarten van Heusden
6a747f8ac1 release v2.4.1 2023-12-23 18:38:42 +00:00
Maarten van Heusden
f557af562f chore(deps): update electron 2023-12-23 18:38:31 +00:00
Maarten van Heusden
e84bae7d22 fix: fix keys not working anymore 2023-12-23 18:32:58 +00:00
Maarten
7ba581a2cd v2.4.0 2023-12-23 12:28:27 +01:00
Maarten
dbefebc7d8 chore(deps): update primer 2023-12-23 12:27:39 +01:00
Maarten
010e1b89c5 feat: always open devtools in external window 2023-12-23 11:43:52 +01:00
Maarten
4f6014a2b4 feat: add v8 cache 2023-12-23 11:32:13 +01:00
Maarten
9d4197b237 refactor: export mainWindow 2023-12-23 11:31:17 +01:00
Maarten
8e481132f3 fix: adapt hr to system theme 2023-12-23 11:29:53 +01:00
Maarten
8347005fc4 feat: invert hr when theme changes 2023-12-23 10:05:33 +01:00
Maarten
8bc3c5aef2 Merge pull request #148 from mmvanheusden/dependabot/npm_and_yarn/eslint-8.56.0
Bump eslint from 8.55.0 to 8.56.0
2023-12-20 11:47:42 -08:00
Maarten
5d41b1e94a feat: change easter egg! 2023-12-20 11:38:22 +01:00
Maarten
32153bb2b1 feat: revamp command generating system 2023-12-20 11:34:25 +01:00
Maarten
3813678469 feat(debug): add debugging information 2023-12-20 11:32:10 +01:00
Maarten
da8b528856 refactor(command-builder): cleanup code 2023-12-20 11:31:52 +01:00
Maarten
209847bf97 refactor(command-builder): cleanup code 2023-12-20 11:10:18 +01:00
Maarten van Heusden
ddb110764e fix: fix paths with spaces on Windows 2023-12-19 12:44:46 -08:00
Maarten
827247f4f7 fix(linux): fix spaces in path, linux 2023-12-19 11:52:05 +01:00
Maarten van Heusden
ccd5803ec1 feat: rewrite command builder 2023-12-19 07:23:37 -08:00
dependabot[bot]
3ebf2f920e Bump eslint from 8.55.0 to 8.56.0
Bumps [eslint](https://github.com/eslint/eslint) from 8.55.0 to 8.56.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.55.0...v8.56.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-18 21:14:11 +00:00
Maarten
ab96a2c78a add notice to README 2023-12-18 09:42:35 -08:00
Maarten
f0f7766005 feat: redesign settings pane 2023-12-17 11:41:55 +01:00
Maarten
12f0e8f37b refactor 2023-12-17 08:16:15 +01:00
Maarten
58e87b0b6b feat: add ability to change manifest folder name 2023-12-17 08:14:28 +01:00
Maarten
4ada0a3838 feat: finalize settings modal 2023-12-17 07:39:01 +01:00
Maarten
c8ac9985bb refactor: remove debug print 2023-12-11 21:18:58 +01:00
Maarten
07c65e816c refactor: cleanup 2023-12-11 20:04:22 +01:00
Maarten
e60fa3b9ce fix: make settings page "working" 2023-12-11 19:10:22 +01:00
Maarten
903bdb7a8f feat: add unfinished settings model 2023-12-11 16:26:13 +01:00
Maarten
bde5c534d4 fix: fix checkpath button enabled when it shouldn't 2023-12-09 13:06:42 +01:00
Maarten
434baee9c0 Remove weird dependency from package.lock 2023-12-09 11:28:26 +01:00
Maarten
1a0ba73dc1 set version back to 2.3.0 for now 2023-12-08 17:35:13 +01:00
Maarten
13930669c5 Merge branch 'hotfix-devtools' 2023-12-08 17:29:59 +01:00
Maarten
0c9d18eeb1 fix: prevent devtools from automatically opening on non-dev environments 2023-12-08 17:21:20 +01:00
Maarten
c43e92211e Add tutorials to README 2023-12-07 20:58:37 +01:00
Maarten
0b2d69b118 fix: replace gh asset for YouTube tutorial link 2023-12-06 22:01:05 +01:00
Maarten
983c4c7604 Remove videos, not working 2023-12-06 21:55:49 +01:00
Maarten
9b95a6df53 add vid 2023-12-06 21:54:53 +01:00
Maarten
c4bb1907bf Add tutorial video to repository 2023-12-06 21:52:06 +01:00
Maarten
79067b7092 Add tutorial link to top of README 2023-12-06 21:05:22 +01:00
Maarten
f4cd650f65 Add tutorial video to README 2023-12-06 20:57:44 +01:00
Maarten
9b2a7d0860 Rewrite helper functions docs 2023-12-06 13:09:32 +01:00
Maarten
d47bfacad7 refactor: remove unused function from main.js 2023-12-06 12:42:27 +01:00
Maarten
a576c22543 refactor: use constants for string literals, cleanup 2023-12-06 12:40:06 +01:00
Maarten
a8aa53f6b4 refactor: separate functions, add comments 2023-12-06 11:58:41 +01:00
Maarten
ac0e4b9a7e fix: fix compatibility with other OSes 2023-12-06 11:10:28 +01:00
Maarten
6065338b49 feat: auto terminal detection for Linux 2023-12-06 10:15:37 +01:00
Maarten
a70d8148a0 Update from master 2023-12-03 12:44:41 +01:00
Maarten
7f5775c616 Only update dependencies once a week 2023-12-03 11:53:04 +01:00
Maarten
5c05075d36 Ignore minor updates 2023-12-03 11:51:42 +01:00
Maarten
01a68e3163 Also ignore minor updates 2023-12-03 11:50:51 +01:00
Maarten
753ccd77be Merge pull request #142 from mmvanheusden/dependabot/npm_and_yarn/electron-27.1.3
Bump electron from 27.1.2 to 27.1.3
2023-12-03 11:50:02 +01:00
dependabot[bot]
917d72cbe6 Bump electron from 27.1.2 to 27.1.3
Bumps [electron](https://github.com/electron/electron) from 27.1.2 to 27.1.3.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v27.1.2...v27.1.3)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-01 21:51:12 +00:00
Maarten
b7f3f70bce Update README.md 2023-11-25 23:40:27 +01:00
Maarten
d0c00ff79d Merge pull request #139 from mmvanheusden/dependabot/npm_and_yarn/electron-27.1.2
Bump electron from 27.1.0 to 27.1.2
2023-11-25 23:39:40 +01:00
dependabot[bot]
da494356f2 Bump electron from 27.1.0 to 27.1.2
Bumps [electron](https://github.com/electron/electron) from 27.1.0 to 27.1.2.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v27.1.0...v27.1.2)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-25 22:39:17 +00:00
Maarten
c8719a7421 Merge pull request #140 from mmvanheusden/dependabot/npm_and_yarn/electron-builder-24.9.1
Bump electron-builder from 24.6.4 to 24.9.1
2023-11-25 23:38:41 +01:00
dependabot[bot]
1ad022a1fb Bump electron-builder from 24.6.4 to 24.9.1
Bumps [electron-builder](https://github.com/electron-userland/electron-builder/tree/HEAD/packages/electron-builder) from 24.6.4 to 24.9.1.
- [Release notes](https://github.com/electron-userland/electron-builder/releases)
- [Changelog](https://github.com/electron-userland/electron-builder/blob/master/packages/electron-builder/CHANGELOG.md)
- [Commits](https://github.com/electron-userland/electron-builder/commits/v24.9.1/packages/electron-builder)

---
updated-dependencies:
- dependency-name: electron-builder
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-24 21:17:18 +00:00
Maarten
e9b01c1658 Merge pull request #137 from mmvanheusden/dependabot/npm_and_yarn/electron-27.1.0
Bump electron from 27.0.4 to 27.1.0
2023-11-22 09:28:01 +01:00
Maarten
3674fcf2e9 Merge pull request #138 from mmvanheusden/dependabot/npm_and_yarn/eslint-8.54.0
Bump eslint from 8.53.0 to 8.54.0
2023-11-22 09:27:56 +01:00
Maarten
35994122b9 Merge remote-tracking branch 'origin/master' 2023-11-20 14:16:37 +01:00
Maarten
2323bee305 Update version in package-lock.json, update ss 2023-11-20 14:16:02 +01:00
Maarten
d48f99eb31 Update README.md 2023-11-20 12:49:08 +01:00
Maarten
1576c680ca Update README.md 2023-11-20 12:46:11 +01:00
dependabot[bot]
0b46d66ad0 Bump eslint from 8.53.0 to 8.54.0
Bumps [eslint](https://github.com/eslint/eslint) from 8.53.0 to 8.54.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.53.0...v8.54.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-17 21:48:23 +00:00
dependabot[bot]
f5605aa6a5 Bump electron from 27.0.4 to 27.1.0
Bumps [electron](https://github.com/electron/electron) from 27.0.4 to 27.1.0.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v27.0.4...v27.1.0)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-15 21:15:12 +00:00
Maarten
369bd805c9 2.3.0 2023-11-14 16:14:27 +01:00
Maarten
61f1852db1 Add instructions button
* Add instructions button
* reformat code
2023-11-14 16:13:20 +01:00
Maarten
1a2b91b78a Update README.md 2023-11-14 15:56:40 +01:00
Maarten
5b27e4a2c9 Update README.md 2023-11-14 14:13:13 +01:00
Maarten
882f4aa252 Outrule the possibility that the page might not be fully loaded on older machines will break stuff 2023-11-14 13:21:30 +01:00
Maarten
e7a4964400 Require the terminal dropdown to be filled in...
* Require the terminal dropdown to be filled in
* Add a default value to the terminal selection
2023-11-14 12:51:49 +01:00
Maarten
62e487abfe Add arm64 support, add script for easy renaming 2023-11-14 12:04:35 +01:00
Maarten
1f604460a0 Simplify the check of selection
* Simplify the check of selection
* rephrase and add console debugging output
2023-11-14 10:41:55 +01:00
Maarten
8a53d80502 (possibly) fix .zip path finding on Linux 2023-11-13 22:50:59 +01:00
Maarten
efcf98d0f8 Merge branch 'master' into auto-detect 2023-11-13 22:21:09 +01:00
Maarten
b5ecd66d8e Update README.md 2023-11-13 22:20:38 +01:00
Maarten
e1bacd5b77 Remove copyright year 2023-11-13 22:20:38 +01:00
Maarten
179d1f7f05 Allow spaces in path names.
* Allow spaces in path names. This was previously broken.
* Fix cool-retro-term
2023-11-13 22:20:38 +01:00
Maarten
e57f90a700 Update screenshot 2023-11-13 22:20:38 +01:00
Maarten
8a75924652 Add drop shadow
https://graphicdesign.stackexchange.com/a/117404
2023-11-13 22:20:38 +01:00
Maarten
cbbcce6997 Update screenshot in README
* Update screenshot in README
* auto switch for require star
* New title
2023-11-13 22:20:38 +01:00
dependabot[bot]
cbad0edc81 Bump electron from 27.0.3 to 27.0.4
Bumps [electron](https://github.com/electron/electron) from 27.0.3 to 27.0.4.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v27.0.3...v27.0.4)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-13 22:20:38 +01:00
Maarten
67513abc01 add note 2023-11-13 22:20:38 +01:00
Maarten
f93d53f574 Merge remote-tracking branch 'origin/master' 2023-11-13 22:19:20 +01:00
Maarten
32b014a283 Remove copyright year 2023-11-13 22:19:07 +01:00
Maarten
50de5b676a Update README.md 2023-11-13 22:10:42 +01:00
Maarten
799dea18be Allow spaces in path names.
* Allow spaces in path names. This was previously broken.
* Fix cool-retro-term
2023-11-13 21:58:57 +01:00
Maarten
45e14398f3 Update screenshot 2023-11-12 15:57:57 +01:00
Maarten
120dbb257c Add drop shadow
https://graphicdesign.stackexchange.com/a/117404
2023-11-12 15:17:26 +01:00
Maarten
98a8e5f853 Update screenshot in README
* Update screenshot in README
* auto switch for require star
* New title
2023-11-12 15:07:27 +01:00
Maarten
912ec9927c Merge remote-tracking branch 'origin/master' 2023-11-11 18:22:19 +01:00
Maarten
00d80a603c add note 2023-11-11 18:22:02 +01:00
Maarten
6c0fc19381 Merge pull request #136 from mmvanheusden/dependabot/npm_and_yarn/electron-27.0.4
Bump electron from 27.0.3 to 27.0.4
2023-11-11 16:33:29 +01:00
Maarten van Heusden
8147b3611a try to auto detect terminal 2023-11-10 10:06:45 +01:00
Maarten van Heusden
8f7f231000 improve unzip description 2023-11-09 08:36:12 +01:00
dependabot[bot]
6360e4f553 Bump electron from 27.0.3 to 27.0.4
Bumps [electron](https://github.com/electron/electron) from 27.0.3 to 27.0.4.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v27.0.3...v27.0.4)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-08 21:54:50 +00:00
Maarten van Heusden
dba37f3563 Rewrite Buttons, auto platform detection, new title 2023-11-08 22:18:28 +01:00
Maarten
42ff7dcae3 Merge pull request #135 from mmvanheusden/dependabot/npm_and_yarn/eslint-8.53.0
Bump eslint from 8.52.0 to 8.53.0
2023-11-07 16:29:49 +01:00
dependabot[bot]
d8878896e7 Bump eslint from 8.52.0 to 8.53.0
Bumps [eslint](https://github.com/eslint/eslint) from 8.52.0 to 8.53.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.52.0...v8.53.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-06 21:48:35 +00:00
Maarten
1723bc6af0 Merge pull request #134 from mmvanheusden/dependabot/npm_and_yarn/electron-27.0.3
Bump electron from 27.0.2 to 27.0.3
2023-11-04 20:50:44 +01:00
Maarten
274ece410a Update README.md 2023-11-04 20:47:38 +01:00
Maarten van Heusden
fce3c6cff3 Support more terminal emulators
- The following list of terminals were added:
	* Terminology
	* xterm
	* Kitty
	* LXTerminal
	* Tilix
	* Deepin Terminal
	* cool-retro-term

- The OS selection is now separated from the terminal emulators dropdown, causing less unnecessary bloat for most of the users.

- Primer CSS is updated to v21.0.9.
2023-11-04 20:12:27 +01:00
dependabot[bot]
a613d96f79 Bump electron from 27.0.2 to 27.0.3
Bumps [electron](https://github.com/electron/electron) from 27.0.2 to 27.0.3.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v27.0.2...v27.0.3)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-01 21:40:54 +00:00
Maarten
8686d3145a Merge pull request #122 from mmvanheusden/dependabot/npm_and_yarn/follow-redirects-1.15.3
Bump follow-redirects from 1.15.2 to 1.15.3
2023-10-21 15:19:01 +02:00
Maarten
c2ca657450 Merge pull request #131 from mmvanheusden/dependabot/npm_and_yarn/eslint-8.52.0
Bump eslint from 8.49.0 to 8.52.0
2023-10-21 15:18:48 +02:00
Maarten
8c6ba4dc76 Merge pull request #132 from mmvanheusden/dependabot/npm_and_yarn/electron-27.0.2
Bump electron from 26.2.1 to 27.0.2
2023-10-21 15:18:21 +02:00
dependabot[bot]
0bb41b8f90 Bump electron from 26.2.1 to 27.0.2
Bumps [electron](https://github.com/electron/electron) from 26.2.1 to 27.0.2.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v26.2.1...v27.0.2)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-20 21:58:29 +00:00
dependabot[bot]
eeacf5885d Bump eslint from 8.49.0 to 8.52.0
Bumps [eslint](https://github.com/eslint/eslint) from 8.49.0 to 8.52.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.49.0...v8.52.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-20 21:57:20 +00:00
dependabot[bot]
0bb67ad0fb Bump follow-redirects from 1.15.2 to 1.15.3
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.2 to 1.15.3.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.2...v1.15.3)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-19 21:07:43 +00:00
Maarten
e87bc27904 Merge pull request #119 from mmvanheusden/dependabot/npm_and_yarn/eslint-8.49.0
Bump eslint from 8.48.0 to 8.49.0
2023-09-16 10:53:11 +02:00
Maarten
4de82acadf Merge pull request #120 from mmvanheusden/dependabot/npm_and_yarn/electron-26.2.1
Bump electron from 26.2.0 to 26.2.1
2023-09-16 10:53:01 +02:00
dependabot[bot]
67921755d3 Bump electron from 26.2.0 to 26.2.1
Bumps [electron](https://github.com/electron/electron) from 26.2.0 to 26.2.1.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v26.2.0...v26.2.1)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-12 21:12:44 +00:00
dependabot[bot]
4600cb0715 Bump eslint from 8.48.0 to 8.49.0
Bumps [eslint](https://github.com/eslint/eslint) from 8.48.0 to 8.49.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.48.0...v8.49.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-08 21:17:46 +00:00
Maarten
63647166b0 Merge pull request #117 from mmvanheusden/dependabot/npm_and_yarn/electron-builder-24.6.4
Bump electron-builder from 24.6.3 to 24.6.4
2023-09-08 14:06:31 +02:00
dependabot[bot]
24b4789f16 Bump electron-builder from 24.6.3 to 24.6.4
Bumps [electron-builder](https://github.com/electron-userland/electron-builder/tree/HEAD/packages/electron-builder) from 24.6.3 to 24.6.4.
- [Release notes](https://github.com/electron-userland/electron-builder/releases)
- [Changelog](https://github.com/electron-userland/electron-builder/blob/master/packages/electron-builder/CHANGELOG.md)
- [Commits](https://github.com/electron-userland/electron-builder/commits/v24.6.4/packages/electron-builder)

---
updated-dependencies:
- dependency-name: electron-builder
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-08 11:56:06 +00:00
Maarten
8e60860365 Merge pull request #118 from mmvanheusden/dependabot/npm_and_yarn/electron-26.2.0
Bump electron from 25.8.0 to 26.2.0
2023-09-08 13:55:25 +02:00
dependabot[bot]
efe997e73d Bump electron from 25.8.0 to 26.2.0
Bumps [electron](https://github.com/electron/electron) from 25.8.0 to 26.2.0.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v25.8.0...v26.2.0)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-07 21:58:37 +00:00
Maarten
2f93efc1a5 Fix visitor count badge 2023-09-01 21:20:47 +02:00
mmvanheusden
cdcc7ff250 Merge remote-tracking branch 'origin/master'
# Conflicts:
#	package-lock.json
#	package.json
2023-09-01 09:05:01 +02:00
mmvanheusden
bd0b4c0857 Update DepotDownloader + dependencies 2023-09-01 09:04:36 +02:00
Maarten
1ae267e610 dependabot: ignore patch updates 2023-08-28 16:04:08 +02:00
Maarten
d2bf485db5 Merge pull request #114 from mmvanheusden/dependabot/npm_and_yarn/electron-26.1.0
Bump electron from 26.0.0 to 26.1.0
2023-08-28 15:58:24 +02:00
Maarten
9b436a81af Merge pull request #115 from mmvanheusden/dependabot/npm_and_yarn/eslint-8.48.0
Bump eslint from 8.47.0 to 8.48.0
2023-08-28 15:58:13 +02:00
dependabot[bot]
48ed904863 Bump eslint from 8.47.0 to 8.48.0
Bumps [eslint](https://github.com/eslint/eslint) from 8.47.0 to 8.48.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.47.0...v8.48.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-25 21:23:28 +00:00
dependabot[bot]
11a63612e4 Bump electron from 26.0.0 to 26.1.0
Bumps [electron](https://github.com/electron/electron) from 26.0.0 to 26.1.0.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v26.0.0...v26.1.0)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-23 21:13:45 +00:00
Maarten
e94bafe100 Merge pull request #111 from mmvanheusden/dependabot/npm_and_yarn/eslint-8.47.0
Bump eslint from 8.46.0 to 8.47.0
2023-08-20 22:08:15 +02:00
Maarten
ff55b24bbb Merge pull request #112 from mmvanheusden/dependabot/npm_and_yarn/electron-26.0.0
Bump electron from 25.4.0 to 26.0.0
2023-08-20 22:08:11 +02:00
dependabot[bot]
de11c7bfda Bump electron from 25.4.0 to 26.0.0
Bumps [electron](https://github.com/electron/electron) from 25.4.0 to 26.0.0.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v25.4.0...v26.0.0)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-15 21:11:13 +00:00
dependabot[bot]
e33e2b85f1 Bump eslint from 8.46.0 to 8.47.0
Bumps [eslint](https://github.com/eslint/eslint) from 8.46.0 to 8.47.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.46.0...v8.47.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-11 21:11:47 +00:00
mmvanheusden
ff89270976 2.2.0 2023-08-04 20:06:31 +02:00
mmvanheusden
c63cb94e28 Update dependencies 2023-08-04 20:04:11 +02:00
Maarten
fad16516f0 Merge pull request #106 from mmvanheusden/dependabot/npm_and_yarn/electron-builder-24.6.3
Bump electron-builder from 24.4.0 to 24.6.3
2023-08-04 19:59:47 +02:00
dependabot[bot]
d20f94c449 Bump electron-builder from 24.4.0 to 24.6.3
Bumps [electron-builder](https://github.com/electron-userland/electron-builder/tree/HEAD/packages/electron-builder) from 24.4.0 to 24.6.3.
- [Release notes](https://github.com/electron-userland/electron-builder/releases)
- [Changelog](https://github.com/electron-userland/electron-builder/blob/master/packages/electron-builder/CHANGELOG.md)
- [Commits](https://github.com/electron-userland/electron-builder/commits/v24.6.3/packages/electron-builder)

---
updated-dependencies:
- dependency-name: electron-builder
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-25 21:33:05 +00:00
Maarten van Heusden
1d7fd54c6a Update everything 2023-07-18 09:57:20 +02:00
Maarten
06dd83f99e Merge pull request #103 from mmvanheusden/dependabot/npm_and_yarn/electron-25.3.0
Bump electron from 24.4.0 to 25.3.0
2023-07-18 00:51:36 -07:00
Maarten
0914a832d7 Merge pull request #104 from mmvanheusden/dependabot/npm_and_yarn/eslint-8.45.0
Bump eslint from 8.41.0 to 8.45.0
2023-07-18 00:51:12 -07:00
Maarten
2de0ca8130 Add the ability to select the download location
Tested on Windows and `gnome-terminal`.

Closes #101
2023-07-18 00:49:57 -07:00
Maarten van Heusden
db75c7f623 implement it into the download utility 2023-07-18 00:32:09 -07:00
Maarten van Heusden
219803f01b Polish 2023-07-17 12:45:28 -07:00
dependabot[bot]
c8a9468e3a Bump eslint from 8.41.0 to 8.45.0
Bumps [eslint](https://github.com/eslint/eslint) from 8.41.0 to 8.45.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.41.0...v8.45.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-14 21:54:27 +00:00
dependabot[bot]
27da4d7534 Bump electron from 24.4.0 to 25.3.0
Bumps [electron](https://github.com/electron/electron) from 24.4.0 to 25.3.0.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v24.4.0...v25.3.0)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-13 21:34:29 +00:00
mmvanheusden
c8717de5f7 Cleanup code, polish html 2023-06-30 22:13:55 +02:00
mmvanheusden
0508be5171 remove border 2023-06-30 21:46:25 +02:00
mmvanheusden
199472e4af Add a path selector 2023-06-30 21:42:55 +02:00
Maarten
37b86711a7 Merge pull request #90 from mmvanheusden/dependabot/npm_and_yarn/eslint-8.41.0
Bump eslint from 8.40.0 to 8.41.0
2023-05-29 13:27:46 +02:00
Maarten
92c3ca0f9d Merge pull request #92 from mmvanheusden/dependabot/npm_and_yarn/electron-24.4.0
Bump electron from 24.3.1 to 24.4.0
2023-05-29 13:27:36 +02:00
dependabot[bot]
42d2ca108a Bump electron from 24.3.1 to 24.4.0
Bumps [electron](https://github.com/electron/electron) from 24.3.1 to 24.4.0.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v24.3.1...v24.4.0)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-25 22:00:32 +00:00
dependabot[bot]
481f9165e4 Bump eslint from 8.40.0 to 8.41.0
Bumps [eslint](https://github.com/eslint/eslint) from 8.40.0 to 8.41.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.40.0...v8.41.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-19 22:00:44 +00:00
Maarten
e75e10ba5e Merge pull request #89 from mmvanheusden/dependabot/npm_and_yarn/electron-24.3.1
Bump electron from 24.3.0 to 24.3.1
2023-05-18 20:32:09 +02:00
dependabot[bot]
0c8cf2d15b Bump electron from 24.3.0 to 24.3.1
Bumps [electron](https://github.com/electron/electron) from 24.3.0 to 24.3.1.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v24.3.0...v24.3.1)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-17 22:01:26 +00:00
Maarten
dbc5db4e98 Merge pull request #88 from mmvanheusden/dependabot/npm_and_yarn/electron-24.3.0
Bump electron from 24.1.3 to 24.3.0
2023-05-14 08:25:52 +02:00
Maarten
c7eb98263a Merge pull request #87 from mmvanheusden/dependabot/npm_and_yarn/eslint-8.40.0
Bump eslint from 8.39.0 to 8.40.0
2023-05-14 08:25:38 +02:00
dependabot[bot]
dc5630d3af Bump electron from 24.1.3 to 24.3.0
Bumps [electron](https://github.com/electron/electron) from 24.1.3 to 24.3.0.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v24.1.3...v24.3.0)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-10 22:08:07 +00:00
dependabot[bot]
e76c0b7e0f Bump eslint from 8.39.0 to 8.40.0
Bumps [eslint](https://github.com/eslint/eslint) from 8.39.0 to 8.40.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.39.0...v8.40.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-05 22:00:15 +00:00
Maarten
cc7b4b9578 Merge pull request #84 from mmvanheusden/dependabot/npm_and_yarn/eslint-8.39.0
Bump eslint from 8.38.0 to 8.39.0
2023-04-27 17:38:47 +02:00
Maarten
f7f3a6b254 Merge pull request #85 from mmvanheusden/dependabot/npm_and_yarn/electron-24.1.3
Bump electron from 24.1.2 to 24.1.3
2023-04-27 17:38:29 +02:00
dependabot[bot]
326fbd1d73 Bump electron from 24.1.2 to 24.1.3
Bumps [electron](https://github.com/electron/electron) from 24.1.2 to 24.1.3.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v24.1.2...v24.1.3)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-26 22:00:55 +00:00
dependabot[bot]
12344805f3 Bump eslint from 8.38.0 to 8.39.0
Bumps [eslint](https://github.com/eslint/eslint) from 8.38.0 to 8.39.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.38.0...v8.39.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-21 22:01:19 +00:00
Maarten
0eee1f8c16 Merge pull request #83 from mmvanheusden/dependabot/npm_and_yarn/electron-24.1.2
Bump electron from 24.1.1 to 24.1.2
2023-04-16 00:31:38 +02:00
Maarten van Heusden
64dc7a79b8 Add donate button 2023-04-15 22:05:30 +02:00
dependabot[bot]
f9e5bf4953 Bump electron from 24.1.1 to 24.1.2
Bumps [electron](https://github.com/electron/electron) from 24.1.1 to 24.1.2.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v24.1.1...v24.1.2)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-14 22:01:12 +00:00
Maarten van Heusden
c8d215bf37 Release v2.1.1 2023-04-13 16:39:59 +02:00
Maarten van Heusden
c945f90f36 Fix some characters in the password breaking the command
closes #80
2023-04-13 16:23:51 +02:00
Maarten van Heusden
2943fe62fe Update dependencies 2023-04-13 16:22:44 +02:00
Maarten van Heusden
17e31901a2 Add .NET hardlinks
this ensures the latest .NET SDK 6.0 is always downloaded
2023-04-10 18:09:18 +02:00
Maarten van Heusden
b26e95a992 Update Primer CSS to v21.0.0 2023-04-10 18:08:43 +02:00
Maarten van Heusden
fcbf340a95 Rewrite README, update .NET 2023-04-09 13:08:51 +02:00
Maarten
7aa60d53d9 Merge pull request #78 from mmvanheusden/dependabot/npm_and_yarn/electron-24.0.0
Bump electron from 23.2.1 to 24.0.0
2023-04-05 12:41:08 +02:00
dependabot[bot]
01b9f1eda6 Bump electron from 23.2.1 to 24.0.0
Bumps [electron](https://github.com/electron/electron) from 23.2.1 to 24.0.0.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v23.2.1...v24.0.0)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-04 22:01:17 +00:00
Maarten
b2dcd5279f Merge pull request #76 from mmvanheusden/dependabot/npm_and_yarn/eslint-8.37.0
Bump eslint from 8.36.0 to 8.37.0
2023-04-02 19:38:47 +02:00
Maarten
c655207c04 Merge pull request #77 from mmvanheusden/dependabot/npm_and_yarn/electron-23.2.1
Bump electron from 23.2.0 to 23.2.1
2023-04-02 19:38:37 +02:00
dependabot[bot]
84dde67a4d Bump electron from 23.2.0 to 23.2.1
Bumps [electron](https://github.com/electron/electron) from 23.2.0 to 23.2.1.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v23.2.0...v23.2.1)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-30 22:01:40 +00:00
dependabot[bot]
6b603a004d Bump eslint from 8.36.0 to 8.37.0
Bumps [eslint](https://github.com/eslint/eslint) from 8.36.0 to 8.37.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.36.0...v8.37.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-29 22:02:13 +00:00
Maarten
1d1f66bb7c Update README.md 2023-03-24 21:01:17 +01:00
Maarten
b8fc38b4f9 Merge pull request #75 from mmvanheusden/dependabot/npm_and_yarn/electron-23.2.0
Bump electron from 23.1.4 to 23.2.0
2023-03-24 16:24:27 +01:00
dependabot[bot]
8b7253d9bf Bump electron from 23.1.4 to 23.2.0
Bumps [electron](https://github.com/electron/electron) from 23.1.4 to 23.2.0.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v23.1.4...v23.2.0)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-23 22:02:21 +00:00
Maarten
702a4530ed Merge pull request #74 from mmvanheusden/dependabot/npm_and_yarn/electron-23.1.4
Bump electron from 23.1.3 to 23.1.4
2023-03-22 13:26:55 +01:00
Maarten
f0e378fde2 Merge pull request #73 from mmvanheusden/dependabot/npm_and_yarn/http-cache-semantics-4.1.1
Bump http-cache-semantics from 4.1.0 to 4.1.1
2023-03-22 13:26:39 +01:00
dependabot[bot]
f64655eee2 Bump electron from 23.1.3 to 23.1.4
Bumps [electron](https://github.com/electron/electron) from 23.1.3 to 23.1.4.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v23.1.3...v23.1.4)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-16 22:02:01 +00:00
dependabot[bot]
ab8c23c6db Bump http-cache-semantics from 4.1.0 to 4.1.1
Bumps [http-cache-semantics](https://github.com/kornelski/http-cache-semantics) from 4.1.0 to 4.1.1.
- [Release notes](https://github.com/kornelski/http-cache-semantics/releases)
- [Commits](https://github.com/kornelski/http-cache-semantics/compare/v4.1.0...v4.1.1)

---
updated-dependencies:
- dependency-name: http-cache-semantics
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-14 15:20:10 +00:00
Maarten
36c42910a2 Merge pull request #71 from mmvanheusden/dependabot/npm_and_yarn/electron-23.1.3
Bump electron from 23.1.2 to 23.1.3
2023-03-14 16:19:59 +01:00
Maarten
0f0442cf61 Merge pull request #72 from mmvanheusden/dependabot/npm_and_yarn/eslint-8.36.0
Bump eslint from 8.35.0 to 8.36.0
2023-03-14 16:19:44 +01:00
dependabot[bot]
15eecac4e3 Bump eslint from 8.35.0 to 8.36.0
Bumps [eslint](https://github.com/eslint/eslint) from 8.35.0 to 8.36.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.35.0...v8.36.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-13 22:21:57 +00:00
dependabot[bot]
72febb5c8b Bump electron from 23.1.2 to 23.1.3
Bumps [electron](https://github.com/electron/electron) from 23.1.2 to 23.1.3.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v23.1.2...v23.1.3)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-08 22:04:19 +00:00
Maarten
f8ad3b3566 Merge pull request #70 from mmvanheusden/dependabot/npm_and_yarn/electron-23.1.2
Bump electron from 23.1.1 to 23.1.2
2023-03-08 16:53:33 +01:00
dependabot[bot]
8891e550c5 Bump electron from 23.1.1 to 23.1.2
Bumps [electron](https://github.com/electron/electron) from 23.1.1 to 23.1.2.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v23.1.1...v23.1.2)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-03 22:27:20 +00:00
Maarten
47888668ae Merge pull request #69 from mmvanheusden/dependabot/npm_and_yarn/eslint-8.35.0
Bump eslint from 8.34.0 to 8.35.0
2023-02-28 08:57:50 +01:00
dependabot[bot]
dc6a7d966c Bump eslint from 8.34.0 to 8.35.0
Bumps [eslint](https://github.com/eslint/eslint) from 8.34.0 to 8.35.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.34.0...v8.35.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-27 21:32:40 +00:00
Maarten
4f2b7d6cb5 Merge pull request #68 from mmvanheusden/dependabot/npm_and_yarn/electron-23.1.1
Bump electron from 23.1.0 to 23.1.1
2023-02-25 13:51:16 +01:00
dependabot[bot]
c4085fe6ea Bump electron from 23.1.0 to 23.1.1
Bumps [electron](https://github.com/electron/electron) from 23.1.0 to 23.1.1.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v23.1.0...v23.1.1)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-22 22:06:08 +00:00
Maarten
0073974d25 Merge pull request #67 from mmvanheusden/dependabot/npm_and_yarn/electron-23.1.0
Bump electron from 23.0.0 to 23.1.0
2023-02-17 09:42:05 +01:00
dependabot[bot]
a9cf7aa338 Bump electron from 23.0.0 to 23.1.0
Bumps [electron](https://github.com/electron/electron) from 23.0.0 to 23.1.0.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v23.0.0...v23.1.0)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-16 22:09:30 +00:00
Maarten
b66abf916a Merge pull request #66 from mmvanheusden/dependabot/npm_and_yarn/eslint-8.34.0
Bump eslint from 8.33.0 to 8.34.0
2023-02-12 08:32:27 +01:00
dependabot[bot]
e4b287d2b2 Bump eslint from 8.33.0 to 8.34.0
Bumps [eslint](https://github.com/eslint/eslint) from 8.33.0 to 8.34.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.33.0...v8.34.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-10 22:12:43 +00:00
Maarten
5e39208999 Merge pull request #65 from mmvanheusden/dependabot/npm_and_yarn/electron-23.0.0
Bump electron from 22.2.0 to 23.0.0
2023-02-08 08:32:30 +01:00
dependabot[bot]
b47d1ac1d9 Bump electron from 22.2.0 to 23.0.0
Bumps [electron](https://github.com/electron/electron) from 22.2.0 to 23.0.0.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v22.2.0...v23.0.0)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-07 21:17:19 +00:00
Maarten
3564bf7202 Merge pull request #64 from mmvanheusden/dependabot/npm_and_yarn/electron-22.2.0
Bump electron from 22.1.0 to 22.2.0
2023-02-03 19:13:15 +01:00
dependabot[bot]
1a974f40d9 Bump electron from 22.1.0 to 22.2.0
Bumps [electron](https://github.com/electron/electron) from 22.1.0 to 22.2.0.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v22.1.0...v22.2.0)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-01 21:12:52 +00:00
Maarten
e7e5223132 Merge pull request #63 from mmvanheusden/dependabot/npm_and_yarn/eslint-8.33.0
Bump eslint from 8.32.0 to 8.33.0
2023-01-31 10:49:21 +01:00
dependabot[bot]
d8e20aac62 Bump eslint from 8.32.0 to 8.33.0
Bumps [eslint](https://github.com/eslint/eslint) from 8.32.0 to 8.33.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.32.0...v8.33.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-30 21:20:23 +00:00
Maarten
18915bf7a4 Merge pull request #62 from mmvanheusden/dependabot/npm_and_yarn/electron-22.1.0
Bump electron from 22.0.3 to 22.1.0
2023-01-26 09:59:43 +01:00
dependabot[bot]
9ccdf3e0cb Bump electron from 22.0.3 to 22.1.0
Bumps [electron](https://github.com/electron/electron) from 22.0.3 to 22.1.0.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v22.0.3...v22.1.0)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-25 21:16:47 +00:00
Maarten
a08402fb0e Merge pull request #61 from mmvanheusden/dependabot/npm_and_yarn/electron-22.0.3
Bump electron from 22.0.2 to 22.0.3
2023-01-20 03:35:36 -08:00
dependabot[bot]
95d58b1bfa Bump electron from 22.0.2 to 22.0.3
Bumps [electron](https://github.com/electron/electron) from 22.0.2 to 22.0.3.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v22.0.2...v22.0.3)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-19 21:12:46 +00:00
Maarten
f17386d7c8 Merge pull request #60 from mmvanheusden/dependabot/npm_and_yarn/eslint-8.32.0
Bump eslint from 8.31.0 to 8.32.0
2023-01-18 00:53:36 -08:00
dependabot[bot]
74cbc0fee9 Bump eslint from 8.31.0 to 8.32.0
Bumps [eslint](https://github.com/eslint/eslint) from 8.31.0 to 8.32.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.31.0...v8.32.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-16 21:18:59 +00:00
Maarten
866163b81c Merge pull request #59 from mmvanheusden/dependabot/npm_and_yarn/electron-22.0.2
Bump electron from 22.0.0 to 22.0.2
2023-01-14 10:42:42 -08:00
dependabot[bot]
1682539aba Bump electron from 22.0.0 to 22.0.2
Bumps [electron](https://github.com/electron/electron) from 22.0.0 to 22.0.2.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v22.0.0...v22.0.2)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-13 21:14:45 +00:00
mmvanheusden
4215b3b233 Update everything 2023-01-06 08:16:35 +01:00
Maarten
3e4faa5492 Merge pull request #57 from mmvanheusden/dependabot/npm_and_yarn/json5-2.2.3
Bump json5 from 2.2.1 to 2.2.3
2023-01-03 16:46:13 +01:00
dependabot[bot]
cacd77c246 Bump json5 from 2.2.1 to 2.2.3
Bumps [json5](https://github.com/json5/json5) from 2.2.1 to 2.2.3.
- [Release notes](https://github.com/json5/json5/releases)
- [Changelog](https://github.com/json5/json5/blob/main/CHANGELOG.md)
- [Commits](https://github.com/json5/json5/compare/v2.2.1...v2.2.3)

---
updated-dependencies:
- dependency-name: json5
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-03 15:36:34 +00:00
Maarten
9d5d09c252 Merge pull request #56 from mmvanheusden/dependabot/npm_and_yarn/eslint-8.31.0
Bump eslint from 8.30.0 to 8.31.0
2023-01-03 16:36:11 +01:00
dependabot[bot]
72efb71ca4 Bump eslint from 8.30.0 to 8.31.0
Bumps [eslint](https://github.com/eslint/eslint) from 8.30.0 to 8.31.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.30.0...v8.31.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-02 21:15:47 +00:00
Maarten
be34cc746e Merge pull request #55 from mmvanheusden/dependabot/npm_and_yarn/eslint-8.30.0
Bump eslint from 8.29.0 to 8.30.0
2022-12-21 11:48:54 +01:00
dependabot[bot]
7f669a44d4 Bump eslint from 8.29.0 to 8.30.0
Bumps [eslint](https://github.com/eslint/eslint) from 8.29.0 to 8.30.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.29.0...v8.30.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-19 21:18:05 +00:00
Maarten
e2020d7aa3 yes
got them swag
2022-12-14 11:01:36 +01:00
Maarten
3f185153e9 Update README.md 2022-12-13 15:04:16 +01:00
Maarten
28ea79276e Merge pull request #54 from mmvanheusden/dependabot/npm_and_yarn/eslint-8.29.0
Bump eslint from 8.28.0 to 8.29.0
2022-12-06 08:51:07 +01:00
dependabot[bot]
b1bcac83f5 Bump eslint from 8.28.0 to 8.29.0
Bumps [eslint](https://github.com/eslint/eslint) from 8.28.0 to 8.29.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.28.0...v8.29.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-05 21:17:16 +00:00
Maarten
96fec37650 Merge pull request #53 from mmvanheusden/dependabot/npm_and_yarn/electron-22.0.0
Bump electron from 21.3.1 to 22.0.0
2022-12-01 14:19:34 +01:00
dependabot[bot]
a976d807c1 Bump electron from 21.3.1 to 22.0.0
Bumps [electron](https://github.com/electron/electron) from 21.3.1 to 22.0.0.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v21.3.1...v22.0.0)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-30 21:27:48 +00:00
Maarten
0e56ec477f Merge pull request #52 from mmvanheusden/dependabot/npm_and_yarn/electron-21.3.1
Bump electron from 21.3.0 to 21.3.1
2022-11-25 19:07:53 +01:00
dependabot[bot]
6eed37278d Bump electron from 21.3.0 to 21.3.1
Bumps [electron](https://github.com/electron/electron) from 21.3.0 to 21.3.1.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v21.3.0...v21.3.1)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-24 21:25:10 +00:00
Maarten
11e0316d50 Merge pull request #50 from mmvanheusden/dependabot/npm_and_yarn/eslint-8.28.0
Bump eslint from 8.27.0 to 8.28.0
2022-11-19 10:25:36 +01:00
dependabot[bot]
f59b350acf Bump eslint from 8.27.0 to 8.28.0
Bumps [eslint](https://github.com/eslint/eslint) from 8.27.0 to 8.28.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.27.0...v8.28.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-19 00:50:11 +00:00
Maarten
e82d943cbd Merge pull request #49 from mmvanheusden/dependabot/npm_and_yarn/electron-21.3.0
Bump electron from 21.2.3 to 21.3.0
2022-11-18 07:37:55 +01:00
dependabot[bot]
66a1b6f01a Bump electron from 21.2.3 to 21.3.0
Bumps [electron](https://github.com/electron/electron) from 21.2.3 to 21.3.0.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v21.2.3...v21.3.0)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-17 21:24:19 +00:00
Maarten
9a66fc9921 Create github-repo-stats.yml 2022-11-17 17:06:28 +01:00
Maarten
627630aec2 Update electron-builder.yml 2022-11-11 21:19:00 +01:00
Maarten
afb722f730 fix copyright and package id 2022-11-11 20:46:57 +01:00
Maarten
328e0527ab Merge pull request #48 from mmvanheusden/dependabot/npm_and_yarn/electron-21.2.3
Bump electron from 21.2.2 to 21.2.3
2022-11-10 09:15:24 +01:00
dependabot[bot]
423a93afae Bump electron from 21.2.2 to 21.2.3
Bumps [electron](https://github.com/electron/electron) from 21.2.2 to 21.2.3.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v21.2.2...v21.2.3)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-09 21:14:45 +00:00
Maarten
7bedaadcdd Merge pull request #47 from mmvanheusden/dependabot/npm_and_yarn/eslint-8.27.0
Bump eslint from 8.26.0 to 8.27.0
2022-11-09 15:33:45 +01:00
dependabot[bot]
e41f6b7958 Bump eslint from 8.26.0 to 8.27.0
Bumps [eslint](https://github.com/eslint/eslint) from 8.26.0 to 8.27.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.26.0...v8.27.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-07 21:37:30 +00:00
Maarten
d79f34f6d7 Merge pull request #46 from mmvanheusden/dependabot/npm_and_yarn/electron-21.2.2
Bump electron from 21.2.0 to 21.2.2
2022-11-03 14:29:15 +01:00
dependabot[bot]
f1609d29aa Bump electron from 21.2.0 to 21.2.2
Bumps [electron](https://github.com/electron/electron) from 21.2.0 to 21.2.2.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v21.2.0...v21.2.2)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-02 22:00:42 +00:00
mmvanheusden
f710ed3cce Add a download button to the readme 2022-10-29 14:36:53 +02:00
mmvanheusden
b3f3ea5ef7 Fix typo and remove draft code 2022-10-28 12:08:15 +02:00
mmvanheusden
66b1777be7 Update Primer CSS and slightly improve readme 2022-10-28 12:05:52 +02:00
mmvanheusden
d0b3889a83 Update screenshot 2022-10-25 12:14:53 +02:00
mmvanheusden
038de51557 2.1.0 2022-10-25 12:03:55 +02:00
mmvanheusden
76c1d3c4c5 Fix typo 2022-10-25 12:03:27 +02:00
Maarten
0b8b6cb9ee Add clarification for softpedia users 2022-10-25 11:23:49 +02:00
Maarten
98235b41c9 Asterisk for required fields & highlight red when input is missing 2022-10-24 14:59:55 +02:00
jakobjakobjakob2
beeec6d3bf highlight missing fields in red 2022-10-24 14:27:50 +02:00
jakobjakobjakob2
05b315e30d add asterisk for required form fields 2022-10-24 08:33:15 +02:00
Maarten
1906722c02 replace tooltips with placeholder when information is needed 2022-10-23 18:17:02 +02:00
jakobjakobjakob2
523418d882 replace tooltips with placeholder when information is needed 2022-10-23 14:16:04 +02:00
mmvanheusden
93e2d4dd3e 2.0.6 2022-10-23 09:14:38 +02:00
mmvanheusden
a4b08e7470 Update dependencies 2022-10-23 09:14:19 +02:00
Maarten
4e44cef80c Size the window with respect to the window's frame size
Size the window with respect to the window's frame size
2022-10-23 09:12:35 +02:00
jakobjakobjakob2
cd817a8b8f size the window with respect to the window frames size 2022-10-22 15:32:06 +02:00
Maarten
11b122d5b7 Add CoC 2022-10-20 19:02:44 +02:00
Maarten
a73053278a Add anonymous login support
Add anonymous login support and update Primer CSS
2022-10-19 15:50:19 +02:00
mmvanheusden
0ef69fa1e9 Add anonymous login support and update Primer CSS 2022-10-19 15:39:45 +02:00
mmvanheusden
c84e86ca54 Update dependencies 2022-10-19 14:49:40 +02:00
Jaspreet Singh Saini
69a1cc9edc code of conduct created (#35) 2022-10-17 09:27:29 +05:30
Maarten
deb9f0b53a Fix build.yml typo 2022-10-14 19:58:39 +02:00
Maarten
e711c7b6c6 Merge pull request #33 from mmvanheusden/dependabot/npm_and_yarn/eslint-8.25.0
Bump eslint from 8.24.0 to 8.25.0
2022-10-14 19:29:25 +02:00
Maarten
2531f88fad Merge pull request #34 from mmvanheusden/dependabot/npm_and_yarn/electron-21.1.1
Bump electron from 21.1.0 to 21.1.1
2022-10-14 19:29:15 +02:00
dependabot[bot]
3c932e69ab Bump electron from 21.1.0 to 21.1.1
Bumps [electron](https://github.com/electron/electron) from 21.1.0 to 21.1.1.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v21.1.0...v21.1.1)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-12 21:38:06 +00:00
dependabot[bot]
325d2a2772 Bump eslint from 8.24.0 to 8.25.0
Bumps [eslint](https://github.com/eslint/eslint) from 8.24.0 to 8.25.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.24.0...v8.25.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-11 22:31:45 +00:00
Maarten van Heusden
f3155fb174 Update dependencies 2022-10-07 20:38:43 +02:00
Maarten
52b8aad68b Merge pull request #32 from mmvanheusden/dependabot/npm_and_yarn/electron-21.1.0
Bump electron from 21.0.1 to 21.1.0
2022-10-07 19:17:26 +02:00
dependabot[bot]
4cbaa0b01a Bump electron from 21.0.1 to 21.1.0
Bumps [electron](https://github.com/electron/electron) from 21.0.1 to 21.1.0.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v21.0.1...v21.1.0)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-05 22:02:30 +00:00
Maarten
d310dfd238 Merge pull request #31 from mmvanheusden/predownloadcheck
Rewrite the pre download check and add a empty fields check
2022-10-05 09:01:44 +02:00
mmvanheusden
4558e4bc25 Rewrite the pre download check and add a empty fields check
Signed-off-by: mmvanheusden <50550545+mmvanheusden@users.noreply.github.com>
2022-10-05 08:43:41 +02:00
Maarten
37c074780e Merge pull request #30 from mmvanheusden/dependabot/npm_and_yarn/electron-21.0.1
Bump electron from 21.0.0 to 21.0.1
2022-09-30 17:28:38 +02:00
dependabot[bot]
82ea62b6a9 Bump electron from 21.0.0 to 21.0.1
Bumps [electron](https://github.com/electron/electron) from 21.0.0 to 21.0.1.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v21.0.0...v21.0.1)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-28 22:48:05 +00:00
Maarten
7abe8aeab6 Merge pull request #29 from mmvanheusden/dependabot/npm_and_yarn/electron-21.0.0
Bump electron from 20.2.0 to 21.0.0
2022-09-27 10:48:05 +02:00
Maarten
c1c63152fd Merge pull request #28 from mmvanheusden/dependabot/npm_and_yarn/eslint-8.24.0
Bump eslint from 8.23.1 to 8.24.0
2022-09-27 10:48:00 +02:00
dependabot[bot]
c1715b10f4 Bump electron from 20.2.0 to 21.0.0
Bumps [electron](https://github.com/electron/electron) from 20.2.0 to 21.0.0.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v20.2.0...v21.0.0)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-26 21:40:57 +00:00
dependabot[bot]
07c22285ec Bump eslint from 8.23.1 to 8.24.0
Bumps [eslint](https://github.com/eslint/eslint) from 8.23.1 to 8.24.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.23.1...v8.24.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-26 21:40:33 +00:00
Maarten
e224c69931 Create FUNDING.yml 2022-09-23 20:15:46 +02:00
mmvanheusden
33b83f6841 2.0.5 2022-09-23 19:49:00 +02:00
mmvanheusden
7cf1c9ad8c oops v2 2022-09-23 19:48:40 +02:00
mmvanheusden
6ec2964267 oops 2022-09-23 19:48:01 +02:00
mmvanheusden
b578bb16a6 2.1.1 2022-09-23 19:44:17 +02:00
mmvanheusden
d60ba5695d 2.1.0 2022-09-23 19:44:03 +02:00
mmvanheusden
47f0f43fcc Change license to GNU GPLv3 2022-09-23 19:43:43 +02:00
mmvanheusden
f85f65b40c Update Primer CSS 2022-09-23 19:32:37 +02:00
Maarten
a56803c4d4 Fix codefactor badge 2022-09-23 08:45:45 +02:00
Maarten
6ad1d3652a Merge pull request #27 from mmvanheusden/dependabot/npm_and_yarn/electron-20.2.0
Bump electron from 20.1.4 to 20.2.0
2022-09-23 08:23:26 +02:00
dependabot[bot]
445177d211 Bump electron from 20.1.4 to 20.2.0
Bumps [electron](https://github.com/electron/electron) from 20.1.4 to 20.2.0.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v20.1.4...v20.2.0)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-22 22:07:04 +00:00
Maarten
d1ced1cc53 Update README.md 2022-09-21 09:02:52 +02:00
Maarten
dab989b79f Merge pull request #26 from mmvanheusden/dependabot/npm_and_yarn/electron-20.1.4
Bump electron from 20.1.3 to 20.1.4
2022-09-16 19:17:14 +02:00
dependabot[bot]
6325f509b7 Bump electron from 20.1.3 to 20.1.4
Bumps [electron](https://github.com/electron/electron) from 20.1.3 to 20.1.4.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v20.1.3...v20.1.4)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-14 22:07:41 +00:00
Maarten
7b5897f357 Merge pull request #25 from mmvanheusden/dependabot/npm_and_yarn/follow-redirects-1.15.2
Bump follow-redirects from 1.15.1 to 1.15.2
2022-09-14 06:52:47 +02:00
dependabot[bot]
812457033c Bump follow-redirects from 1.15.1 to 1.15.2
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.1 to 1.15.2.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.1...v1.15.2)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-13 22:31:32 +00:00
mmvanheusden
5036309a84 Update dependencies 2022-09-13 16:58:42 +02:00
Maarten
53281fa643 Bump electron from 20.1.1 to 20.1.3
Bump electron from 20.1.1 to 20.1.3
2022-09-09 21:31:51 +02:00
dependabot[bot]
89733df9b5 Bump electron from 20.1.1 to 20.1.3
Bumps [electron](https://github.com/electron/electron) from 20.1.1 to 20.1.3.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v20.1.1...v20.1.3)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-09 19:31:13 +00:00
Maarten
99f4b5a32b Create dependabot.yml 2022-09-09 21:30:39 +02:00
mmvanheusden
54fb0fedf5 Update dependencies 2022-09-06 16:49:37 +02:00
mmvanheusden
8daacd3148 Update dependencies and Electron to minor release v20.1.1 2022-09-02 16:07:22 +02:00
mmvanheusden
fa9427ea97 Merge remote-tracking branch 'origin/master'
# Conflicts:
#	downloader.js
2022-09-02 16:04:58 +02:00
mmvanheusden
dedbb14a6a add a bit more space 2022-09-02 16:00:05 +02:00
mmvanheusden
687bb2400b Update DepotDownloader to v2.4.7
Signed-off-by: mmvanheusden <50550545+mmvanheusden@users.noreply.github.com>
2022-08-20 19:17:11 +02:00
mmvanheusden
7d2a35738d Update dependencies and Electron to minor release v20.0.3 2022-08-19 08:49:16 +02:00
mmvanheusden
d885150dee Update dependencies 2022-08-14 13:59:04 +02:00
mmvanheusden
697acac76d Update dependencies 2022-08-12 16:47:46 +02:00
mmvanheusden
4ab86662bb Merge remote-tracking branch 'origin/master' 2022-08-11 10:11:54 +02:00
mmvanheusden
ff919b29b0 Update to Electron minor release 20.0.2 2022-08-11 10:10:39 +02:00
Maarten
e552562861 Fix a typo in the readme 2022-08-10 08:58:07 +02:00
mmvanheusden
490e9c81c3 Minor typo fixes 2022-08-09 19:18:41 +02:00
mmvanheusden
b0139b499e 2.0.4 2022-08-08 10:32:17 +02:00
mmvanheusden
2d409f98f2 Update the screenshot 2022-08-08 10:31:22 +02:00
mmvanheusden
f62c5e03bb Add tooltips and SVG icons 2022-08-08 10:30:36 +02:00
mmvanheusden
f96581e87a Update to Electron 20.0.1 2022-08-08 09:47:52 +02:00
mmvanheusden
4fb43dac1a Add useful buttons 2022-08-07 15:58:28 +02:00
mmvanheusden
f3b33eb5af Update screenshot to v2.0.3 2022-08-07 09:09:03 +02:00
mmvanheusden
35b8c476db Release minor version 2.0.3 2022-08-07 08:52:53 +02:00
mmvanheusden
d7260d8976 Cleanup promise utils 2022-08-07 08:52:10 +02:00
mmvanheusden
a7ce59fcd4 Simplify cross-platform compatibility and improve Linux support.Initial cleanup of promise utils 2022-08-07 08:18:00 +02:00
mmvanheusden
cc781b33d2 Make the OS dropdown full-with for improved consistency 2022-08-07 08:15:57 +02:00
mmvanheusden
54a5027f8a Update dependencies 2022-08-06 21:36:08 +02:00
mmvanheusden
1053c7b114 minor fix 2022-07-22 20:48:37 +02:00
mmvanheusden
510d80c58a 2.0.2 2022-07-22 20:20:30 +02:00
mmvanheusden
894197e75e Fix the working directory problem for every platform 2022-07-22 20:18:35 +02:00
mmvanheusden
eca48e2495 Add a notice thing to the youtube tuorial 2022-07-21 09:47:30 +02:00
mmvanheusden
2bd8dc7c41 2.0.1 2022-07-09 09:30:23 +02:00
mmvanheusden
b8eb915788 Add a hacky fix for Windows portable builds
Signed-off-by: mmvanheusden <50550545+mmvanheusden@users.noreply.github.com>
2022-07-09 09:26:40 +02:00
mmvanheusden
5c0fe6fc9a fix badge 2022-07-08 22:05:54 +02:00
mmvanheusden
14ecff0d12 make the GitHub action run on the master branch instead of the rewrite branch 2022-07-08 21:42:51 +02:00
mmvanheusden
9135dbd788 Fix the actions 2022-07-08 21:40:25 +02:00
mmvanheusden
39511b2cbe Merge branch 'rewrite' 2022-07-08 21:37:20 +02:00
mmvanheusden
55db579d88 Fix the github actions build workflow 2 2022-07-08 21:26:19 +02:00
mmvanheusden
8d31196e4d Fix the github actions build workflow 2022-07-08 21:14:24 +02:00
mmvanheusden
49d0378530 add macos commnad 2022-07-08 20:54:38 +02:00
mmvanheusden
67f78a5242 fix workflow 3 2022-07-08 20:45:30 +02:00
mmvanheusden
ed71768d36 fix workflow 2 2022-07-08 20:41:04 +02:00
mmvanheusden
baf017efbd fix workflow 2022-07-08 20:39:33 +02:00
mmvanheusden
567d143cf5 push this as well XD 2022-07-08 20:31:57 +02:00
mmvanheusden
496ad5724b clean 2022-07-08 20:31:26 +02:00
mmvanheusden
76997c1c88 Move utils to utils file 2022-07-08 19:37:29 +02:00
mmvanheusden
6d42c8c886 Merge rewrite into master 2022-07-08 17:50:28 +02:00
mmvanheusden
4c687b3b33 Prepare for first release and block macOS
Signed-off-by: mmvanheusden <50550545+mmvanheusden@users.noreply.github.com>
2022-07-08 17:33:52 +02:00
mmvanheusden
53c7eb9a35 Finalize Windows support 🎉
Signed-off-by: mmvanheusden <50550545+mmvanheusden@users.noreply.github.com>
2022-07-08 17:14:13 +02:00
mmvanheusden
35ceb8ad48 Add untested Windows support 2022-07-08 12:32:00 +02:00
mmvanheusden
d9067650b4 Add contributors info 2022-07-08 12:03:35 +02:00
mmvanheusden
1a3e6d7f04 Rewrite the README 2022-07-08 11:49:52 +02:00
mmvanheusden
33a88f172c Improve the warning banner 2022-07-08 11:22:04 +02:00
mmvanheusden
087e40a705 Make ESLint compatible with nodejs 2022-07-08 11:13:22 +02:00
mmvanheusden
36cadc541a Add a screenshot of the W.I.P rewrite 2022-07-08 11:10:27 +02:00
mmvanheusden
b6852432dd Cleanup .github directory, add .ZIP to gitignore 2022-07-08 11:02:37 +02:00
mmvanheusden
7f6060dc19 Rename index, downloader and update dependencies 2022-07-08 11:00:28 +02:00
mmvanheusden
c4f0177b4a Code the rest and cleanup 2022-07-08 10:27:32 +02:00
mmvanheusden
157a2ecce9 fix the code and add green comments 2022-07-08 09:52:44 +02:00
mmvanheusden
e0f99bd1af start rewrite of entire thing 2022-07-05 14:23:48 +02:00
mmvanheusden
638fef954c Properly center the button 2022-07-01 21:39:15 +02:00
mmvanheusden
cd45a53aee Properly center the button 2022-07-01 21:37:28 +02:00
mmvanheusden
1413a34c69 Add more comments, update Primer CSS, and change var to let 2022-07-01 20:47:10 +02:00
mmvanheusden
0c6a4353a5 Add comments 2022-07-01 20:24:11 +02:00
mmvanheusden
b811201363 ESLint reformat 2022-07-01 20:03:57 +02:00
mmvanheusden
11ab85dbf8 Disable spell checking to form 2022-07-01 20:01:12 +02:00
mmvanheusden
4759a418c6 Revert "Add support for windows (experimental)"
This reverts commit f77477b52e.
2022-07-01 19:17:20 +02:00
mmvanheusden
f77477b52e Add support for windows (experimental) 2022-06-28 17:40:03 +02:00
mmvanheusden
c4df5da15e Add support for linux terminals 2022-06-27 18:45:57 +02:00
mmvanheusden
ca066bcb3c fix actions 3 2022-06-27 15:32:33 +02:00
mmvanheusden
7ed72f79ac fix actions 3 2022-06-26 18:08:12 +02:00
mmvanheusden
7228e4bfbf Update README.md 2022-06-26 18:05:44 +02:00
mmvanheusden
99c97dbfb1 fix actions 2 2022-06-26 17:57:17 +02:00
mmvanheusden
2803eeee08 fix actions 2022-06-26 17:31:45 +02:00
mmvanheusden
c336639baf Add stuff to readme and add github actions 2022-06-26 17:29:41 +02:00
mmvanheusden
2dee6b66dc Add a license, disable resizing, and add a build system 2022-06-26 16:56:21 +02:00
mmvanheusden
7d925ef800 cleanup code 2022-06-26 15:38:47 +02:00
mmvanheusden
f91247c0f0 put everything in a file 2022-06-26 15:10:57 +02:00
mmvanheusden
ad52750cdf 🎉 the downloader works! 2022-06-26 14:56:41 +02:00
mmvanheusden
882f0cbf21 Make the downloader follow redirects 2022-06-26 13:22:45 +02:00
mmvanheusden
6813a268fd IntelliJ cleanup
xD
2022-06-25 20:53:41 +02:00
mmvanheusden
f379eb2e46 Check if dotnet is installed before downloading 2022-06-25 20:52:34 +02:00
mmvanheusden
2cec3f077c Update README.md 2022-06-25 19:40:52 +02:00
mmvanheusden
a385a82773 Merge pull request #22 from SlejmUr/patch-1
[REWRITE] ID's are numbers :)
2022-06-25 19:37:38 +02:00
mmvanheusden
7a6458ce76 Modify the interface a bit 2022-06-25 19:37:14 +02:00
SlejmUr
4eb07780f2 ID's are numbers :)
+added win
2022-06-25 19:12:46 +02:00
mmvanheusden
acba5bf774 download system test 2
not working yet
2022-06-25 18:04:16 +02:00
mmvanheusden
a6115ef016 download system thing 2022-06-25 17:20:42 +02:00
mmvanheusden
878f98bfef Add a linux detector thing 2022-06-25 13:22:07 +02:00
mmvanheusden
f5b6adbdc2 Implement script 2022-06-25 12:06:08 +02:00
mmvanheusden
465111fbdc Create the design 2022-06-25 11:04:17 +02:00
mmvanheusden
3cdb8fe138 Add a README 2022-06-25 09:16:01 +02:00
mmvanheusden
bcde2397cd Update README.md 2022-06-24 22:52:23 +02:00
mmvanheusden
fab7360488 Basic form WIP 2022-06-24 22:17:26 +02:00
mmvanheusden
c6eba0b51b initial init 2022-06-24 21:10:41 +02:00
mmvanheusden
80bdef06c9 Prepare for (possible) rewrite soon™️ 2022-06-24 20:09:13 +02:00
mmvanheusden
7bb99845a5 Merge pull request #19 from morinted/patch-1
Fix support for passwords with spaces and quotes
2022-06-08 07:07:33 +02:00
mmvanheusden
cfc599f753 Merge pull request #20 from SlejmUr/master
Updated to DD 2.4.6
2022-06-08 07:07:09 +02:00
SlejmUr
5c5e6d5b7e Updated to DD 2.4.6 2022-06-07 22:00:48 +02:00
Ted Morin
5347341414 Fix support for passwords with spaces and quotes 2022-02-06 22:48:47 -05:00
Maarten
ae83e0eea9 Update README.md 2021-11-12 19:15:09 +01:00
Maarten
0262e82f3b Delete SECURITY.md
lel
2021-11-05 21:31:12 +01:00
Maarten
4c3e0273d4 Create SECURITY.md 2021-11-05 21:30:34 +01:00
Maarten
d5d8e4112e Update README.md 2021-11-05 21:27:09 +01:00
66 changed files with 10748 additions and 4043 deletions

2
.github/FUNDING.yml vendored
View File

@@ -1 +1 @@
custom: ['https://en.cryptobadges.io/donate/19sE9mHShbag5WiBwZ75nG21BSFZ1UnjpZ']
custom: https://paypal.me/onderkin

View File

@@ -1,38 +1,20 @@
---
name: Bug report
about: Create a report to help us improve
about: Report a bug in this project
title: ''
labels: ''
labels: bug
assignees: ''
---
**Describe the bug**
A clear and concise description of what the bug is.
**Describe the bug**
A clear and concise description of the bug.
**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error
**Is your bug report related to another bug report? Please describe.**
If yes, the issue number and an explanation of why the bug is related to this one.
**Expected behavior**
A clear and concise description of what you expected to happen.
**Describe the solution you'd like**
A clear and concise description of what you want to happen.
**Screenshots**
If applicable, add screenshots to help explain your problem.
**Desktop (please complete the following information):**
- OS: [e.g. iOS]
- Browser [e.g. chrome, safari]
- Version [e.g. 22]
**Smartphone (please complete the following information):**
- Device: [e.g. iPhone6]
- OS: [e.g. iOS8.1]
- Browser [e.g. stock browser, safari]
- Version [e.g. 22]
**Additional context**
Add any other context about the problem here.
**Additional context**
Add any other context or screenshots about the bug report here.

View File

@@ -0,0 +1,23 @@
---
name: Download problem
about: Report a difficulty in downloading a game
title: ''
labels: question
assignees: ''
---
**Describe the game you are trying to download**
A clear and concise description of the bug.
**App ID:** <app id>
**Depot ID:** <depot id>
**Manifest ID:** <manifest id>
**Show the error that DepotDownloader produces**
A screenshot or a copy-paste wrapped in a code-block (` ``` `) of the DepotDownloader terminal output
**Do you own the game?**
If no, you probably can't download the game. You must own the game on Steam to be able to download it.
**Additional context**
Add any other context or screenshots about the issue here.

View File

@@ -2,19 +2,19 @@
name: Feature request
about: Suggest an idea for this project
title: ''
labels: ''
labels: feature
assignees: ''
---
**Is your feature request related to a problem? Please describe.**
**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
**Describe the solution you'd like**
**Describe the solution you'd like**
A clear and concise description of what you want to happen.
**Describe alternatives you've considered**
**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.
**Additional context**
**Additional context**
Add any other context or screenshots about the feature request here.

25
.github/dependabot.yml vendored Normal file
View File

@@ -0,0 +1,25 @@
version: 2
updates:
- package-ecosystem: "npm"
directory: "/"
schedule:
interval: "monthly"
ignore:
- dependency-name: "*"
update-types: ["version-update:semver-major"]
groups:
npm-deps:
patterns:
- "*"
- package-ecosystem: "cargo"
directory: "src-tauri/"
schedule:
interval: "monthly"
ignore:
- dependency-name: "*"
update-types: ["version-update:semver-major"]
groups:
cargo-deps:
patterns:
- "*"

101
.github/workflows/build_debug.yml vendored Normal file
View File

@@ -0,0 +1,101 @@
name: 'build_debug'
on:
workflow_dispatch:
jobs:
build-tauri:
permissions:
contents: write
strategy:
fail-fast: false
matrix:
include:
- platform: 'macos-latest'
arch: 'aarch64'
args: '--target aarch64-apple-darwin --bundles dmg'
- platform: 'macos-latest'
arch: 'x86_64'
args: '--target x86_64-apple-darwin --bundles dmg'
- platform: 'ubuntu-22.04'
args: '--bundles appimage'
- platform: 'windows-latest'
args: ''
runs-on: ${{ matrix.platform }}
steps:
- uses: actions/checkout@v4
- name: install dependencies (ubuntu only)
if: matrix.platform == 'ubuntu-22.04'
run: |
sudo apt-get update
sudo apt-get install -y libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev patchelf
- name: setup pnpm
uses: pnpm/action-setup@v4
- name: setup node
uses: actions/setup-node@v4
with:
node-version: lts/*
cache: 'pnpm'
- name: install Rust stable
uses: dtolnay/rust-toolchain@stable
with:
targets: ${{ matrix.platform == 'macos-latest' && 'aarch64-apple-darwin,x86_64-apple-darwin' || '' }}
- name: Rust cache
uses: swatinem/rust-cache@v2
with:
workspaces: './src-tauri -> target'
- name: install frontend dependencies
# If you don't have `beforeBuildCommand` configured you may want to build your frontend here too.
run: pnpm install # change this to npm or pnpm depending on which one you use.
- uses: tauri-apps/tauri-action@v0
id: build
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
args: ${{ matrix.args }}
includeUpdaterJson: false
includeRelease: 'false'
includeDebug: 'true'
- name: fix JSON
if: matrix.platform != 'windows-latest'
id: truncate_paths
run: echo "paths=$(echo '${{ steps.build.outputs.artifactPaths }}' | sed 's/^..//' | sed 's/..$//')" >> $GITHUB_OUTPUT
- name: upload macos artifacts (M1)
if: matrix.platform == 'macos-latest' && matrix.arch == 'aarch64'
uses: actions/upload-artifact@v4
with:
name: macos-m1-artifacts
path: ${{ steps.truncate_paths.outputs.paths }}
- name: upload macos artifacts (Intel)
if: matrix.platform == 'macos-latest' && matrix.arch == 'x86_64'
uses: actions/upload-artifact@v4
with:
name: macos-intel-artifacts
path: ${{ steps.truncate_paths.outputs.paths }}
- name: upload linux artifacts
if: matrix.platform == 'ubuntu-22.04'
uses: actions/upload-artifact@v4
with:
name: linux-artifacts
path: ${{ steps.truncate_paths.outputs.paths }}
- name: upload windows artifacts
if: matrix.platform == 'windows-latest'
uses: actions/upload-artifact@v4
with:
name: windows-artifacts
path: "./src-tauri/target/debug/bundle/*" # fck windows

99
.github/workflows/build_release.yml vendored Normal file
View File

@@ -0,0 +1,99 @@
name: 'build_release'
on:
workflow_dispatch:
jobs:
build-tauri:
permissions:
contents: write
strategy:
fail-fast: false
matrix:
include:
- platform: 'macos-latest'
arch: 'aarch64'
args: '--target aarch64-apple-darwin --bundles dmg'
- platform: 'macos-latest'
arch: 'x86_64'
args: '--target x86_64-apple-darwin --bundles dmg'
- platform: 'ubuntu-22.04'
args: '--bundles appimage'
- platform: 'windows-latest'
args: ''
runs-on: ${{ matrix.platform }}
steps:
- uses: actions/checkout@v4
- name: install dependencies (ubuntu only)
if: matrix.platform == 'ubuntu-22.04'
run: |
sudo apt-get update
sudo apt-get install -y libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev patchelf
- name: setup pnpm
uses: pnpm/action-setup@v4
- name: setup node
uses: actions/setup-node@v4
with:
node-version: lts/*
cache: 'pnpm'
- name: install Rust stable
uses: dtolnay/rust-toolchain@stable
with:
targets: ${{ matrix.platform == 'macos-latest' && 'aarch64-apple-darwin,x86_64-apple-darwin' || '' }}
- name: Rust cache
uses: swatinem/rust-cache@v2
with:
workspaces: './src-tauri -> target'
- name: install frontend dependencies
# If you don't have `beforeBuildCommand` configured you may want to build your frontend here too.
run: pnpm install # change this to npm or pnpm depending on which one you use.
- uses: tauri-apps/tauri-action@v0
id: build
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
args: ${{ matrix.args }}
includeUpdaterJson: false
- name: fix JSON
if: matrix.platform != 'windows-latest'
id: truncate_paths
run: echo "paths=$(echo '${{ steps.build.outputs.artifactPaths }}' | sed 's/^..//' | sed 's/..$//')" >> $GITHUB_OUTPUT
- name: upload macos artifacts (M1)
if: matrix.platform == 'macos-latest' && matrix.arch == 'aarch64'
uses: actions/upload-artifact@v4
with:
name: macos-m1-artifacts
path: ${{ steps.truncate_paths.outputs.paths }}
- name: upload macos artifacts (Intel)
if: matrix.platform == 'macos-latest' && matrix.arch == 'x86_64'
uses: actions/upload-artifact@v4
with:
name: macos-intel-artifacts
path: ${{ steps.truncate_paths.outputs.paths }}
- name: upload linux artifacts
if: matrix.platform == 'ubuntu-22.04'
uses: actions/upload-artifact@v4
with:
name: linux-artifacts
path: ${{ steps.truncate_paths.outputs.paths }}
- name: upload windows artifacts
if: matrix.platform == 'windows-latest'
uses: actions/upload-artifact@v4
with:
name: windows-artifacts
path: "./src-tauri/target/release/bundle/*" # fck windows

386
.gitignore vendored
View File

@@ -1,362 +1,32 @@
## Ignore Visual Studio temporary files, build results, and
## files generated by popular Visual Studio add-ons.
##
## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore
# User-specific files
*.rsuser
*.suo
*.user
*.userosscache
*.sln.docstates
# User-specific files (MonoDevelop/Xamarin Studio)
*.userprefs
# Mono auto generated files
mono_crash.*
# Build results
[Dd]ebug/
[Dd]ebugPublic/
[Rr]elease/
[Rr]eleases/
x64/
x86/
[Ww][Ii][Nn]32/
[Aa][Rr][Mm]/
[Aa][Rr][Mm]64/
bld/
[Bb]in/
[Oo]bj/
[Ll]og/
[Ll]ogs/
# Visual Studio 2015/2017 cache/options directory
.vs/
# Uncomment if you have tasks that create the project's static files in wwwroot
#wwwroot/
# Visual Studio 2017 auto generated files
Generated\ Files/
# MSTest test Results
[Tt]est[Rr]esult*/
[Bb]uild[Ll]og.*
# NUnit
*.VisualState.xml
TestResult.xml
nunit-*.xml
# Build Results of an ATL Project
[Dd]ebugPS/
[Rr]eleasePS/
dlldata.c
# Benchmark Results
BenchmarkDotNet.Artifacts/
# .NET Core
project.lock.json
project.fragment.lock.json
artifacts/
# ASP.NET Scaffolding
ScaffoldingReadMe.txt
# StyleCop
StyleCopReport.xml
# Files built by Visual Studio
*_i.c
*_p.c
*_h.h
*.ilk
*.meta
*.obj
*.iobj
*.pch
*.pdb
*.ipdb
*.pgc
*.pgd
*.rsp
*.sbr
*.tlb
*.tli
*.tlh
*.tmp
*.tmp_proj
*_wpftmp.csproj
# Logs
logs
*.log
*.vspscc
*.vssscc
.builds
*.pidb
*.svclog
*.scc
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
lerna-debug.log*
# Chutzpah Test files
_Chutzpah*
node_modules
dist
dist-ssr
*.local
# Visual C++ cache files
ipch/
*.aps
*.ncb
*.opendb
*.opensdf
*.sdf
*.cachefile
*.VC.db
*.VC.VC.opendb
# Editor directories and files
.vscode/*
!.vscode/extensions.json
.idea
.DS_Store
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?
*.iml
# Visual Studio profiler
*.psess
*.vsp
*.vspx
*.sap
# Visual Studio Trace Files
*.e2e
# TFS 2012 Local Workspace
$tf/
# Guidance Automation Toolkit
*.gpState
# ReSharper is a .NET coding add-in
_ReSharper*/
*.[Rr]e[Ss]harper
*.DotSettings.user
# TeamCity is a build add-in
_TeamCity*
# DotCover is a Code Coverage Tool
*.dotCover
# AxoCover is a Code Coverage Tool
.axoCover/*
!.axoCover/settings.json
# Coverlet is a free, cross platform Code Coverage Tool
coverage*.json
coverage*.xml
coverage*.info
# Visual Studio code coverage results
*.coverage
*.coveragexml
# NCrunch
_NCrunch_*
.*crunch*.local.xml
nCrunchTemp_*
# MightyMoose
*.mm.*
AutoTest.Net/
# Web workbench (sass)
.sass-cache/
# Installshield output folder
[Ee]xpress/
# DocProject is a documentation generator add-in
DocProject/buildhelp/
DocProject/Help/*.HxT
DocProject/Help/*.HxC
DocProject/Help/*.hhc
DocProject/Help/*.hhk
DocProject/Help/*.hhp
DocProject/Help/Html2
DocProject/Help/html
# Click-Once directory
publish/
# Publish Web Output
*.[Pp]ublish.xml
*.azurePubxml
# Note: Comment the next line if you want to checkin your web deploy settings,
# but database connection strings (with potential passwords) will be unencrypted
*.pubxml
*.publishproj
# Microsoft Azure Web App publish settings. Comment the next line if you want to
# checkin your Azure Web App publish settings, but sensitive information contained
# in these scripts will be unencrypted
PublishScripts/
# NuGet Packages
*.nupkg
# NuGet Symbol Packages
*.snupkg
# The packages folder can be ignored because of Package Restore
**/[Pp]ackages/*
# except build/, which is used as an MSBuild target.
!**/[Pp]ackages/build/
# Uncomment if necessary however generally it will be regenerated when needed
#!**/[Pp]ackages/repositories.config
# NuGet v3's project.json files produces more ignorable files
*.nuget.props
*.nuget.targets
# Microsoft Azure Build Output
csx/
*.build.csdef
# Microsoft Azure Emulator
ecf/
rcf/
# Windows Store app package directories and files
AppPackages/
BundleArtifacts/
Package.StoreAssociation.xml
_pkginfo.txt
*.appx
*.appxbundle
*.appxupload
# Visual Studio cache files
# files ending in .cache can be ignored
*.[Cc]ache
# but keep track of directories ending in .cache
!?*.[Cc]ache/
# Others
ClientBin/
~$*
*~
*.dbmdl
*.dbproj.schemaview
*.jfm
*.pfx
*.publishsettings
orleans.codegen.cs
# Including strong name files can present a security risk
# (https://github.com/github/gitignore/pull/2483#issue-259490424)
#*.snk
# Since there are multiple workflows, uncomment next line to ignore bower_components
# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622)
#bower_components/
# RIA/Silverlight projects
Generated_Code/
# Backup & report files from converting an old project file
# to a newer Visual Studio version. Backup files are not needed,
# because we have git ;-)
_UpgradeReport_Files/
Backup*/
UpgradeLog*.XML
UpgradeLog*.htm
ServiceFabricBackup/
*.rptproj.bak
# SQL Server files
*.mdf
*.ldf
*.ndf
# Business Intelligence projects
*.rdl.data
*.bim.layout
*.bim_*.settings
*.rptproj.rsuser
*- [Bb]ackup.rdl
*- [Bb]ackup ([0-9]).rdl
*- [Bb]ackup ([0-9][0-9]).rdl
# Microsoft Fakes
FakesAssemblies/
# GhostDoc plugin setting file
*.GhostDoc.xml
# Node.js Tools for Visual Studio
.ntvs_analysis.dat
node_modules/
# Visual Studio 6 build log
*.plg
# Visual Studio 6 workspace options file
*.opt
# Visual Studio 6 auto-generated workspace file (contains which files were open etc.)
*.vbw
# Visual Studio LightSwitch build output
**/*.HTMLClient/GeneratedArtifacts
**/*.DesktopClient/GeneratedArtifacts
**/*.DesktopClient/ModelManifest.xml
**/*.Server/GeneratedArtifacts
**/*.Server/ModelManifest.xml
_Pvt_Extensions
# Paket dependency manager
.paket/paket.exe
paket-files/
# FAKE - F# Make
.fake/
# CodeRush personal settings
.cr/personal
# Python Tools for Visual Studio (PTVS)
__pycache__/
*.pyc
# Cake - Uncomment if you are using it
# tools/**
# !tools/packages.config
# Tabs Studio
*.tss
# Telerik's JustMock configuration file
*.jmconfig
# BizTalk build output
*.btp.cs
*.btm.cs
*.odx.cs
*.xsd.cs
# OpenCover UI analysis results
OpenCover/
# Azure Stream Analytics local run output
ASALocalRun/
# MSBuild Binary and Structured Log
*.binlog
# NVidia Nsight GPU debugger configuration file
*.nvuser
# MFractors (Xamarin productivity tool) working folder
.mfractor/
# Local History for Visual Studio
.localhistory/
# BeatPulse healthcheck temp database
healthchecksdb
# Backup folder for Package Reference Convert tool in Visual Studio 2017
MigrationBackup/
# Ionide (cross platform F# VS Code tools) working folder
.ionide/
# Fody - auto-generated XML schema
FodyWeavers.xsd
# SteamDepotDownloaderGUI files
src-tauri/depotdownloader
src-tauri/*.zip
src-tauri/*.exe
**/DepotDownloader
**/DepotDownloader.xml

6
.vscode/extensions.json vendored Normal file
View File

@@ -0,0 +1,6 @@
{
"recommendations": [
"tauri-apps.tauri-vscode",
"rust-lang.rust-analyzer"
]
}

View File

@@ -1,6 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2"/>
</startup>
</configuration>

View File

@@ -3,126 +3,192 @@
## Our Pledge
We as members, contributors, and leaders pledge to make participation in our
community a harassment-free experience for everyone, regardless of age, body
size, visible or invisible disability, ethnicity, sex characteristics, gender
identity and expression, level of experience, education, socio-economic status,
nationality, personal appearance, race, religion, or sexual identity
and orientation.
We pledge to act and interact in ways that contribute to an open, welcoming,
diverse, inclusive, and healthy community.
## Our Standards
Examples of behavior that contributes to a positive environment for our
community include:
* Demonstrating empathy and kindness toward other people
* Being respectful of differing opinions, viewpoints, and experiences
* Giving and gracefully accepting constructive feedback
* Accepting responsibility and apologizing to those affected by our mistakes,
and learning from the experience
* Focusing on what is best not just for us as individuals, but for the
overall community
Examples of unacceptable behavior include:
* The use of sexualized language or imagery, and sexual attention or
advances of any kind
* Trolling, insulting or derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or email
address, without their explicit permission
* Other conduct which could reasonably be considered inappropriate in a
professional setting
## Enforcement Responsibilities
Community leaders are responsible for clarifying and enforcing our standards of
acceptable behavior and will take appropriate and fair corrective action in
response to any behavior that they deem inappropriate, threatening, offensive,
or harmful.
Community leaders have the right and responsibility to remove, edit, or reject
comments, commits, code, wiki edits, issues, and other contributions that are
not aligned to this Code of Conduct, and will communicate reasons for moderation
decisions when appropriate.
## Scope
This Code of Conduct applies within all community spaces, and also applies when
an individual is officially representing the community in public spaces.
Examples of representing our community include using an official e-mail address,
posting via an official social media account, or acting as an appointed
representative at an online or offline event.
## Enforcement
Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported to the community leaders responsible for enforcement at
the repository's webpage.
.
All complaints will be reviewed and investigated promptly and fairly.
All community leaders are obligated to respect the privacy and security of the
reporter of any incident.
## Enforcement Guidelines
Community leaders will follow these Community Impact Guidelines in determining
the consequences for any action they deem in violation of this Code of Conduct:
### 1. Correction
**Community Impact**: Use of inappropriate language or other behavior deemed
unprofessional or unwelcome in the community.
**Consequence**: A private, written warning from community leaders, providing
clarity around the nature of the violation and an explanation of why the
behavior was inappropriate. A public apology may be requested.
### 2. Warning
**Community Impact**: A violation through a single incident or series
of actions.
**Consequence**: A warning with consequences for continued behavior. No
interaction with the people involved, including unsolicited interaction with
those enforcing the Code of Conduct, for a specified period of time. This
includes avoiding interactions in community spaces as well as external channels
like social media. Violating these terms may lead to a temporary or
permanent ban.
### 3. Temporary Ban
**Community Impact**: A serious violation of community standards, including
sustained inappropriate behavior.
**Consequence**: A temporary ban from any sort of interaction or public
communication with the community for a specified period of time. No public or
private interaction with the people involved, including unsolicited interaction
with those enforcing the Code of Conduct, is allowed during this period.
Violating these terms may lead to a permanent ban.
### 4. Permanent Ban
**Community Impact**: Demonstrating a pattern of violation of community
standards, including sustained inappropriate behavior, harassment of an
individual, or aggression toward or disparagement of classes of individuals.
**Consequence**: A permanent ban from any sort of public interaction within
the community.
## Attribution
This Code of Conduct is adapted from the [Contributor Covenant][homepage],
version 2.0, available at
https://www.contributor-covenant.org/version/2/0/code_of_conduct.html.
Community Impact Guidelines were inspired by [Mozilla's code of conduct
enforcement ladder](https://github.com/mozilla/diversity).
version 2.1, available at
[https://www.contributor-covenant.org/version/2/1/code_of_conduct.html][v2.1].
Community Impact Guidelines were inspired by
[Mozilla's code of conduct enforcement ladder][mozilla coc].
For answers to common questions about this code of conduct, see the FAQ at
[https://www.contributor-covenant.org/faq][faq]. Translations are available at
[https://www.contributor-covenant.org/translations][translations].
[homepage]: https://www.contributor-covenant.org
For answers to common questions about this code of conduct, see the FAQ at
https://www.contributor-covenant.org/faq. Translations are available at
https://www.contributor-covenant.org/translations.
[v2.1]: https://www.contributor-covenant.org/version/2/1/code_of_conduct.html
[mozilla coc]: https://github.com/mozilla/diversity
[faq]: https://www.contributor-covenant.org/faq
[translations]: https://www.contributor-covenant.org/translations

View File

@@ -1,94 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{9FE2AF44-2D88-43DB-9B8F-EA410552D8CE}</ProjectGuid>
<OutputType>WinExe</OutputType>
<RootNamespace>DepotDownloaderGUI</RootNamespace>
<AssemblyName>DepotDownloaderGUI</AssemblyName>
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
<Deterministic>true</Deterministic>
<TargetFrameworkProfile />
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup>
<ApplicationIcon>download.ico</ApplicationIcon>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.DirectoryServices" />
<Reference Include="System.IO.Compression.FileSystem" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Deployment" />
<Reference Include="System.Drawing" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="downloadGUI.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="downloadGUI.Designer.cs">
<DependentUpon>downloadGUI.cs</DependentUpon>
</Compile>
<Compile Include="Program.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<EmbeddedResource Include="downloadGUI.resx">
<DependentUpon>downloadGUI.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Properties\Resources.resx">
<Generator>ResXFileCodeGenerator</Generator>
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
<SubType>Designer</SubType>
</EmbeddedResource>
<Compile Include="Properties\Resources.Designer.cs">
<AutoGen>True</AutoGen>
<DependentUpon>Resources.resx</DependentUpon>
<DesignTime>True</DesignTime>
</Compile>
<None Include="Properties\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
</None>
<Compile Include="Properties\Settings.Designer.cs">
<AutoGen>True</AutoGen>
<DependentUpon>Settings.settings</DependentUpon>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
</Compile>
<EmbeddedResource Include="Resources\Poppins-Medium.ttf" />
</ItemGroup>
<ItemGroup>
<None Include="App.config" />
</ItemGroup>
<ItemGroup>
<Content Include="download.ico" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>

View File

@@ -1,25 +0,0 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 16
VisualStudioVersion = 16.0.30907.101
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DepotDownloaderGUI", "DepotDownloaderGUI.csproj", "{9FE2AF44-2D88-43DB-9B8F-EA410552D8CE}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{9FE2AF44-2D88-43DB-9B8F-EA410552D8CE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{9FE2AF44-2D88-43DB-9B8F-EA410552D8CE}.Debug|Any CPU.Build.0 = Debug|Any CPU
{9FE2AF44-2D88-43DB-9B8F-EA410552D8CE}.Release|Any CPU.ActiveCfg = Release|Any CPU
{9FE2AF44-2D88-43DB-9B8F-EA410552D8CE}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {B49312C0-32E2-42A5-9DC8-892A707C0EF8}
EndGlobalSection
EndGlobal

File diff suppressed because it is too large Load Diff

View File

@@ -1,22 +0,0 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace DepotDownloaderGUI
{
static class Program
{
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new downloadGUI());
}
}
}

View File

@@ -1,36 +0,0 @@
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("DepotDownloaderGUI")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("DepotDownloaderGUI")]
[assembly: AssemblyCopyright("Copyright © 2021")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("9fe2af44-2d88-43db-9b8f-ea410552d8ce")]
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]

View File

@@ -1,73 +0,0 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace DepotDownloaderGUI.Properties {
using System;
/// <summary>
/// A strongly-typed resource class, for looking up localized strings, etc.
/// </summary>
// This class was auto-generated by the StronglyTypedResourceBuilder
// class via a tool like ResGen or Visual Studio.
// To add or remove a member, edit your .ResX file then rerun ResGen
// with the /str option, or rebuild your VS project.
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
internal class Resources {
private static global::System.Resources.ResourceManager resourceMan;
private static global::System.Globalization.CultureInfo resourceCulture;
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
internal Resources() {
}
/// <summary>
/// Returns the cached ResourceManager instance used by this class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Resources.ResourceManager ResourceManager {
get {
if (object.ReferenceEquals(resourceMan, null)) {
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("DepotDownloaderGUI.Properties.Resources", typeof(Resources).Assembly);
resourceMan = temp;
}
return resourceMan;
}
}
/// <summary>
/// Overrides the current thread's CurrentUICulture property for all
/// resource lookups using this strongly typed resource class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Globalization.CultureInfo Culture {
get {
return resourceCulture;
}
set {
resourceCulture = value;
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>
internal static byte[] Poppins_Medium {
get {
object obj = ResourceManager.GetObject("Poppins_Medium", resourceCulture);
return ((byte[])(obj));
}
}
}
}

View File

@@ -1,124 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="Poppins_Medium" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Poppins-Medium.ttf;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
</root>

View File

@@ -1,26 +0,0 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace DepotDownloaderGUI.Properties {
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.10.0.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
public static Settings Default {
get {
return defaultInstance;
}
}
}
}

View File

@@ -1,7 +0,0 @@
<?xml version='1.0' encoding='utf-8'?>
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)">
<Profiles>
<Profile Name="(Default)" />
</Profiles>
<Settings />
</SettingsFile>

154
README.md
View File

@@ -1,76 +1,78 @@
<img src="https://socialify.git.ci/mmvanheusden/SteamDepotDownloaderGUI/image?description=1&font=Inter&forks=1&issues=1&language=1&owner=1&pattern=Floating%20Cogs&pulls=1&stargazers=1&theme=Light" alt="Banner" width="768"/>
<p align="center">
<img src="https://img.shields.io/badge/status-Beta-blue" />
<img alt="GitHub all releases" src="https://img.shields.io/github/downloads/mmvanheusden/SteamDepotDownloaderGUI/total?color=orange&label=downloads">
<img alt="GitHub release (latest by date including pre-releases)" src="https://img.shields.io/github/v/release/mmvanheusden/SteamDepotDownloaderGUI?color=seagreen&include_prereleases">
<img alt="GitHub last commit" src="https://img.shields.io/github/last-commit/mmvanheusden/SteamDepotDownloaderGUI?color=crimson">
<a href="https://en.cryptobadges.io/donate/19sE9mHShbag5WiBwZ75nG21BSFZ1UnjpZ"><img src="https://en.cryptobadges.io/badge/small/19sE9mHShbag5WiBwZ75nG21BSFZ1UnjpZ"></a>
<img alt="Visitor Count" src="https://visitor-badge.glitch.me/badge?page_id=mmvanheusden.SteamDepotDownloaderGUI">
</p>
# SteamDepotDownloaderGUI
A simple GUI tool based on [**DepotDownloader**][depotdownloader] for downloading older versions of Steam games.
![The Program](https://raw.githubusercontent.com/mmvanheusden/SteamDepotDownloaderGUI/master/src/readme.md/hero.png "The Program")
## What can you do with the program?
You can download older builds of Steam games and software
## Want an example?
Take a look at [**This**][subnauticawiki] example.
## YouTube Tutorial
<a href="https://www.youtube.com/watch?v=X-tzW5ywCgU">
<img border="0" alt="YouTube Tutorial" src="/src/readme.md/youtube.png" width="768">
</a>
## How use the program?
### step 1:
Download [**.NET Core 2.0**][dotnet] It is required for the program to work properly.
### step 2:
Download and unzip the program. (You can download the latest version [**here**][latest])
### step 3:
Run DepotDownloaderGUI.exe.
### step 4:
First enter your Steam credentials at "Username" and "Password"
### step 5:
Click on "SteamDB Instant Search".
### step 6:
Enter your game/software of choice at the search bar and select the game.
### step 7:
Copy the App ID and paste it in the program at "App ID"
### step 8:
Click on "Depots" in the sidebar.
### step 9:
Select the Windows depot (usually Win32)
### step 10:
Copy the Depot ID and paste it in the program at "Depot ID"
### step 11:
Click on "Manifests" in the sidebar
### step 12:
Choose a Manifest(build) of choice and copy its ID and paste it in the program at "Manifest ID"
### step 13:
If you want a faster download speed, increase the max servers and max chunks.
### step 14:
Click on "Start Download", choose the location and a terminal window will pop up and will show the download progress.
### step 15:
Once the download is done, close the program.
The downloaded game is stored in the specified location
### Enjoy your game!
## Need help?
Open an issue.
[latest]: https://github.com/mmvanheusden/SteamDepotDownloaderGUI/releases/latest
[steamdb]: https://steamdb.info/
[depotdownloader]: https://github.com/SteamRE/DepotDownloader
[subnauticawiki]: https://github.com/mmvanheusden/SteamDepotDownloaderGUI/wiki/How-to-Download-older-versions-of-Subnautica
[dotnet]: https://dotnet.microsoft.com/download/dotnet-core/thank-you/runtime-2.0.9-windows-x64-installer
<div align="center">
<h1>SteamDepotDownloaderGUI</h1>
<h4>A graphical wrapper for DepotDownloader, designed to make downloading older versions of Steam games easy.</h4>
<a href="https://www.youtube.com/watch?v=H2COwT5OUOo" target="_blank"><b>Tutorial</b></a> ~
<a href="https://depotdownloader.aphex.cc/" target="_blank"><b>Website</b></a> ~
<a href="https://www.youtube.com/watch?v=ogiDAuH3VdY" target="_blank"><b>Example usage</b></a>
</h4>
<a href="https://img.shields.io/github/last-commit/mmvanheusden/SteamDepotDownloaderGUI?color=crimson"><img src="https://img.shields.io/github/last-commit/mmvanheusden/SteamDepotDownloaderGUI?color=crimson" alt="Last contribution badge"></a>
<a href="https://github.com/mmvanheusden/SteamDepotDownloaderGUI/releases/latest"><img src="https://img.shields.io/badge/Download -ffbd03?style=for-the-badge&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAABd0lEQVRoge2XwUrDQBCGPz3Ee++2UBSvdsGbeLHeFX0lPQhei+8g2AfwSVREK+LJ1oqHUGjRQ7Z0laRJNtldKPPBwoTM7D9/sks2IAiCsKrsAK/AC7DtSmTd1cTAKbAJtIAzVyIuDURGvOFKxKUBL4iB0IiB0IiB0IiB0IiB0IiB0IiB0IgBoA08Ak+AKpCvdO6AGn416zBwDGyRGLljuQmlc9pAEzipKl6HgVtgpOMGSYOdlLyOvtfQ1yPgpgb9WlDAEPjRYwj0jet+yv0iy80ru8AHiyazxiewF6jHXPJMeG3+CoiBy5J1/5dTlWVzAXwD5yXrAJho4YlFbdqesFnzsa6PLWr/PD0bFPAA3GO/YXN7WMspLpLnktweVvooMTPiKDPLHabmLCtpmYF3I96v3E55Doz4zWaCaxYb6Bno4udNRMCR1pzr92wmagFfZH+UfI0xycHPim5gE2Pg0Lb5OU2SVzgAph6anmqtHhWevCAIgh9+AdLMtu/CZhHJAAAAAElFTkSuQmCC" alt="Download latest release badge"></a>
<a href="https://github.com/mmvanheusden/SteamDepotDownloaderGUI/releases/latest"><img src="https://img.shields.io/github/downloads/mmvanheusden/SteamDepotDownloaderGUI/total?color=orange&label=downloads" alt="Download count badge"></a>
<img src="https://github.com/user-attachments/assets/0a2debcc-617a-449d-971f-9e1cf1d5cb0b" alt="Steam downgrader interface" />
</div>
## Features
> ↓ *The downloader in action:*<br>
> <img src="https://github.com/user-attachments/assets/8739f06e-a258-48b2-a684-ca8fcf84dd7e" alt="Steam downgrader process" style="width: 25svw;"/>
### Cross-platform support
| OS | Supported |
|---------|-----------|
| Windows | ✅ |
| Linux | ✅ |
| macOS | ✅ |
## Installation
> [!CAUTION]
> This GitHub repository is the only official place to download this software.
> If you have paid for this software, or downloaded this from a different place than here, **you are an idiot and at risk**.
### Windows
Download the [latest Windows release](https://github.com/mmvanheusden/SteamDepotDownloaderGUI/releases/latest). There are multiple variants to choose from, but you are probably looking for the file that ends with **`.exe`**.
### Linux
You'll need at least one of the supported terminal emulators. You most likely already have one of these.
Download the [latest Linux release](https://github.com/mmvanheusden/SteamDepotDownloaderGUI/releases/latest). There are multiple formats to choose from.
## Tutorials
* https://www.youtube.com/watch?v=H2COwT5OUOo How to download older versions of Steam games tutorial
* https://www.youtube.com/watch?v=ogiDAuH3VdY How to download older versions of Subnautica tutorial
## Credits
This software makes use of the following projects:
- [**DepotDownloader**](https://github.com/SteamRE/DepotDownloader/)
- [Tauri](https://tauri.app)
- [Primer CSS](https://primer.style/css/)
- [async-process](https://github.com/smol-rs/async-process)
- [Hubut Sans](https://github.com/github/hubot-sans) under [license](https://github.com/github/hubot-sans/blob/05d5ea150c20e6434485db8ffd2277ed18a9e911/LICENSE)
## Donate
You can donate [here](paypal.me/onderkin) or through the **donate** button in the interface.
## Contribute
Every pull request is welcome! ;)
Please cleanup the code using:
```console
$ pnpm eslint --fix src/
```
<p align="center">
<a href="https://www.gnu.org/licenses/gpl-3.0" target="_blank">
<img src="https://github.com/mmvanheusden/SteamDepotDownloaderGUI/assets/50550545/b5649b7f-ea49-45c4-b0cd-5f3788dcd6ca" height="40px">
</a>
<a href="https://aphex.cc" target="_blank">
<img src="https://github.com/mmvanheusden/SteamDepotDownloaderGUI/assets/50550545/83f5f3b2-2bf9-41aa-ab87-880466f785fe" height="40px">
</a>
</p>

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 66 KiB

336
downloadGUI.Designer.cs generated
View File

@@ -1,336 +0,0 @@

namespace DepotDownloaderGUI
{
partial class downloadGUI
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(downloadGUI));
this.label1 = new System.Windows.Forms.Label();
this.label2 = new System.Windows.Forms.Label();
this.label3 = new System.Windows.Forms.Label();
this.label4 = new System.Windows.Forms.Label();
this.label5 = new System.Windows.Forms.Label();
this.label6 = new System.Windows.Forms.Label();
this.label7 = new System.Windows.Forms.Label();
this.label8 = new System.Windows.Forms.Label();
this.textBoxUsername = new System.Windows.Forms.TextBox();
this.textBoxPassword = new System.Windows.Forms.TextBox();
this.textBoxAppID = new System.Windows.Forms.TextBox();
this.textBoxDepotID = new System.Windows.Forms.TextBox();
this.textBoxManifestID = new System.Windows.Forms.TextBox();
this.textBoxArgs = new System.Windows.Forms.TextBox();
this.buttonDownload = new System.Windows.Forms.Button();
this.numericUpDownMaxServers = new System.Windows.Forms.NumericUpDown();
this.numericUpDownMaxChunks = new System.Windows.Forms.NumericUpDown();
this.buttonHelp = new System.Windows.Forms.Button();
this.buttonSearch = new System.Windows.Forms.Button();
this.buttonRepo = new System.Windows.Forms.Button();
this.labelTitle = new System.Windows.Forms.Label();
this.labelIssue = new System.Windows.Forms.Label();
this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
this.RemeberPassCheckBox = new System.Windows.Forms.CheckBox();
((System.ComponentModel.ISupportInitialize)(this.numericUpDownMaxServers)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.numericUpDownMaxChunks)).BeginInit();
this.SuspendLayout();
//
// label1
//
resources.ApplyResources(this.label1, "label1");
this.label1.Name = "label1";
this.toolTip1.SetToolTip(this.label1, resources.GetString("label1.ToolTip"));
//
// label2
//
resources.ApplyResources(this.label2, "label2");
this.label2.Name = "label2";
this.toolTip1.SetToolTip(this.label2, resources.GetString("label2.ToolTip"));
//
// label3
//
resources.ApplyResources(this.label3, "label3");
this.label3.Name = "label3";
this.toolTip1.SetToolTip(this.label3, resources.GetString("label3.ToolTip"));
//
// label4
//
resources.ApplyResources(this.label4, "label4");
this.label4.Name = "label4";
this.toolTip1.SetToolTip(this.label4, resources.GetString("label4.ToolTip"));
//
// label5
//
resources.ApplyResources(this.label5, "label5");
this.label5.Name = "label5";
this.toolTip1.SetToolTip(this.label5, resources.GetString("label5.ToolTip"));
//
// label6
//
resources.ApplyResources(this.label6, "label6");
this.label6.Name = "label6";
this.toolTip1.SetToolTip(this.label6, resources.GetString("label6.ToolTip"));
//
// label7
//
resources.ApplyResources(this.label7, "label7");
this.label7.Name = "label7";
this.toolTip1.SetToolTip(this.label7, resources.GetString("label7.ToolTip"));
//
// label8
//
resources.ApplyResources(this.label8, "label8");
this.label8.Name = "label8";
this.toolTip1.SetToolTip(this.label8, resources.GetString("label8.ToolTip"));
//
// textBoxUsername
//
resources.ApplyResources(this.textBoxUsername, "textBoxUsername");
this.textBoxUsername.BackColor = System.Drawing.Color.Black;
this.textBoxUsername.ForeColor = System.Drawing.Color.White;
this.textBoxUsername.Name = "textBoxUsername";
//
// textBoxPassword
//
resources.ApplyResources(this.textBoxPassword, "textBoxPassword");
this.textBoxPassword.BackColor = System.Drawing.Color.Black;
this.textBoxPassword.ForeColor = System.Drawing.Color.White;
this.textBoxPassword.Name = "textBoxPassword";
//
// textBoxAppID
//
resources.ApplyResources(this.textBoxAppID, "textBoxAppID");
this.textBoxAppID.BackColor = System.Drawing.Color.Black;
this.textBoxAppID.ForeColor = System.Drawing.Color.White;
this.textBoxAppID.Name = "textBoxAppID";
this.textBoxAppID.MouseHover += new System.EventHandler(this.textBoxAppID_MouseHover);
//
// textBoxDepotID
//
resources.ApplyResources(this.textBoxDepotID, "textBoxDepotID");
this.textBoxDepotID.BackColor = System.Drawing.Color.Black;
this.textBoxDepotID.ForeColor = System.Drawing.Color.White;
this.textBoxDepotID.Name = "textBoxDepotID";
//
// textBoxManifestID
//
resources.ApplyResources(this.textBoxManifestID, "textBoxManifestID");
this.textBoxManifestID.BackColor = System.Drawing.Color.Black;
this.textBoxManifestID.ForeColor = System.Drawing.Color.White;
this.textBoxManifestID.Name = "textBoxManifestID";
//
// textBoxArgs
//
resources.ApplyResources(this.textBoxArgs, "textBoxArgs");
this.textBoxArgs.BackColor = System.Drawing.Color.Black;
this.textBoxArgs.ForeColor = System.Drawing.Color.White;
this.textBoxArgs.Name = "textBoxArgs";
//
// buttonDownload
//
resources.ApplyResources(this.buttonDownload, "buttonDownload");
this.buttonDownload.Cursor = System.Windows.Forms.Cursors.Hand;
this.buttonDownload.Name = "buttonDownload";
this.toolTip1.SetToolTip(this.buttonDownload, resources.GetString("buttonDownload.ToolTip"));
this.buttonDownload.UseVisualStyleBackColor = true;
this.buttonDownload.Click += new System.EventHandler(this.buttonDownload_Click);
//
// numericUpDownMaxServers
//
resources.ApplyResources(this.numericUpDownMaxServers, "numericUpDownMaxServers");
this.numericUpDownMaxServers.BackColor = System.Drawing.Color.Black;
this.numericUpDownMaxServers.ForeColor = System.Drawing.Color.White;
this.numericUpDownMaxServers.Increment = new decimal(new int[] {
5,
0,
0,
0});
this.numericUpDownMaxServers.Maximum = new decimal(new int[] {
1000,
0,
0,
0});
this.numericUpDownMaxServers.Minimum = new decimal(new int[] {
10,
0,
0,
0});
this.numericUpDownMaxServers.Name = "numericUpDownMaxServers";
this.numericUpDownMaxServers.Value = new decimal(new int[] {
10,
0,
0,
0});
//
// numericUpDownMaxChunks
//
resources.ApplyResources(this.numericUpDownMaxChunks, "numericUpDownMaxChunks");
this.numericUpDownMaxChunks.BackColor = System.Drawing.Color.Black;
this.numericUpDownMaxChunks.ForeColor = System.Drawing.Color.White;
this.numericUpDownMaxChunks.Increment = new decimal(new int[] {
5,
0,
0,
0});
this.numericUpDownMaxChunks.Maximum = new decimal(new int[] {
1000,
0,
0,
0});
this.numericUpDownMaxChunks.Minimum = new decimal(new int[] {
10,
0,
0,
0});
this.numericUpDownMaxChunks.Name = "numericUpDownMaxChunks";
this.numericUpDownMaxChunks.Value = new decimal(new int[] {
10,
0,
0,
0});
//
// buttonHelp
//
resources.ApplyResources(this.buttonHelp, "buttonHelp");
this.buttonHelp.Cursor = System.Windows.Forms.Cursors.Hand;
this.buttonHelp.Name = "buttonHelp";
this.buttonHelp.UseVisualStyleBackColor = true;
this.buttonHelp.Click += new System.EventHandler(this.buttonHelp_Click);
//
// buttonSearch
//
resources.ApplyResources(this.buttonSearch, "buttonSearch");
this.buttonSearch.Cursor = System.Windows.Forms.Cursors.Hand;
this.buttonSearch.Name = "buttonSearch";
this.toolTip1.SetToolTip(this.buttonSearch, resources.GetString("buttonSearch.ToolTip"));
this.buttonSearch.UseVisualStyleBackColor = true;
this.buttonSearch.Click += new System.EventHandler(this.buttonSearch_Click);
//
// buttonRepo
//
resources.ApplyResources(this.buttonRepo, "buttonRepo");
this.buttonRepo.Cursor = System.Windows.Forms.Cursors.Hand;
this.buttonRepo.Name = "buttonRepo";
this.toolTip1.SetToolTip(this.buttonRepo, resources.GetString("buttonRepo.ToolTip"));
this.buttonRepo.UseVisualStyleBackColor = true;
this.buttonRepo.Click += new System.EventHandler(this.buttonRepo_Click);
//
// labelTitle
//
resources.ApplyResources(this.labelTitle, "labelTitle");
this.labelTitle.Name = "labelTitle";
//
// labelIssue
//
resources.ApplyResources(this.labelIssue, "labelIssue");
this.labelIssue.Name = "labelIssue";
//
// toolTip1
//
this.toolTip1.AutomaticDelay = 0;
this.toolTip1.AutoPopDelay = 0;
this.toolTip1.InitialDelay = 0;
this.toolTip1.IsBalloon = true;
this.toolTip1.ReshowDelay = 600;
this.toolTip1.ToolTipIcon = System.Windows.Forms.ToolTipIcon.Info;
this.toolTip1.ToolTipTitle = "Info";
//
// RemeberPassCheckBox
//
resources.ApplyResources(this.RemeberPassCheckBox, "RemeberPassCheckBox");
this.RemeberPassCheckBox.Name = "RemeberPassCheckBox";
this.RemeberPassCheckBox.UseVisualStyleBackColor = true;
this.RemeberPassCheckBox.CheckedChanged += new System.EventHandler(this.RememberChanged);
//
// downloadGUI
//
resources.ApplyResources(this, "$this");
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.Color.Black;
this.Controls.Add(this.RemeberPassCheckBox);
this.Controls.Add(this.labelIssue);
this.Controls.Add(this.labelTitle);
this.Controls.Add(this.buttonRepo);
this.Controls.Add(this.buttonSearch);
this.Controls.Add(this.buttonHelp);
this.Controls.Add(this.numericUpDownMaxChunks);
this.Controls.Add(this.numericUpDownMaxServers);
this.Controls.Add(this.buttonDownload);
this.Controls.Add(this.textBoxArgs);
this.Controls.Add(this.textBoxManifestID);
this.Controls.Add(this.textBoxDepotID);
this.Controls.Add(this.textBoxAppID);
this.Controls.Add(this.textBoxPassword);
this.Controls.Add(this.textBoxUsername);
this.Controls.Add(this.label8);
this.Controls.Add(this.label7);
this.Controls.Add(this.label6);
this.Controls.Add(this.label5);
this.Controls.Add(this.label4);
this.Controls.Add(this.label3);
this.Controls.Add(this.label2);
this.Controls.Add(this.label1);
this.ForeColor = System.Drawing.Color.White;
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
this.MaximizeBox = false;
this.Name = "downloadGUI";
((System.ComponentModel.ISupportInitialize)(this.numericUpDownMaxServers)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.numericUpDownMaxChunks)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.Label label1;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.Label label3;
private System.Windows.Forms.Label label4;
private System.Windows.Forms.Label label5;
private System.Windows.Forms.Label label6;
private System.Windows.Forms.Label label7;
private System.Windows.Forms.Label label8;
private System.Windows.Forms.TextBox textBoxUsername;
private System.Windows.Forms.TextBox textBoxPassword;
private System.Windows.Forms.TextBox textBoxAppID;
private System.Windows.Forms.TextBox textBoxDepotID;
private System.Windows.Forms.TextBox textBoxManifestID;
private System.Windows.Forms.TextBox textBoxArgs;
private System.Windows.Forms.Button buttonDownload;
private System.Windows.Forms.NumericUpDown numericUpDownMaxServers;
private System.Windows.Forms.NumericUpDown numericUpDownMaxChunks;
private System.Windows.Forms.Button buttonHelp;
private System.Windows.Forms.Button buttonSearch;
private System.Windows.Forms.Button buttonRepo;
private System.Windows.Forms.Label labelTitle;
private System.Windows.Forms.Label labelIssue;
private System.Windows.Forms.ToolTip toolTip1;
private System.Windows.Forms.CheckBox RemeberPassCheckBox;
}
}

View File

@@ -1,134 +0,0 @@
using System;
using System.Drawing;
using System.Windows.Forms;
using System.IO;
using System.Drawing.Text;
using System.Net;
using System.IO.Compression;
namespace DepotDownloaderGUI
{
public partial class downloadGUI : Form
{
[System.Runtime.InteropServices.DllImport("gdi32.dll")]
private static extern IntPtr AddFontMemResourceEx(IntPtr pbFont, uint cbFont,
IntPtr pdv, [System.Runtime.InteropServices.In] ref uint pcFonts);
private PrivateFontCollection fonts = new PrivateFontCollection();
Font Poppins;
//Strings
string ChooseBox_PSW;
string Command;
public downloadGUI()
{
InitializeComponent();
if (!Directory.Exists("DepotDownloader"))
{
//Download
string Download = "https://github.com/SteamRE/DepotDownloader/releases/download/DepotDownloader_2.4.5/depotdownloader-2.4.5.zip";
string zipname = "depotdownloader-2.4.5.zip";
string extractPath = "DepotDownloader";
WebClient ZipDownloader = new WebClient();
ZipDownloader.DownloadFile(Download, zipname);
//Extract
ZipFile.ExtractToDirectory(zipname, extractPath);
//Delete garbage
File.Delete(zipname);
}
Directory.SetCurrentDirectory("./DepotDownloader/");
//Font Adding,creating,etc
byte[] fontData = Properties.Resources.Poppins_Medium;
IntPtr fontPtr = System.Runtime.InteropServices.Marshal.AllocCoTaskMem(fontData.Length);
System.Runtime.InteropServices.Marshal.Copy(fontData, 0, fontPtr, fontData.Length);
uint dummy = 0;
fonts.AddMemoryFont(fontPtr, Properties.Resources.Poppins_Medium.Length);
AddFontMemResourceEx(fontPtr, (uint)Properties.Resources.Poppins_Medium.Length, IntPtr.Zero, ref dummy);
System.Runtime.InteropServices.Marshal.FreeCoTaskMem(fontPtr);
Poppins = new Font(fonts.Families[0], 18.0F);
labelTitle.Font = Poppins;
}
private void buttonDownload_Click(object sender, EventArgs e)
{
if (string.IsNullOrEmpty(textBoxAppID.Text) || string.IsNullOrEmpty(textBoxDepotID.Text) || string.IsNullOrEmpty(textBoxManifestID.Text))
{
MessageBox.Show("Please fill all required fields.");
}
else
{
FolderBrowserDialog folderDlg = new FolderBrowserDialog();
DialogResult result = folderDlg.ShowDialog();
if (result == DialogResult.OK & result != DialogResult.Cancel)
{
string selectedpath = folderDlg.SelectedPath;
//The command
Command = $"/k dotnet DepotDownloader.dll -app {textBoxAppID.Text} -depot {textBoxDepotID.Text} -manifest {textBoxManifestID.Text} -max-servers {numericUpDownMaxServers.Value} -max-downloads {numericUpDownMaxChunks.Value} -dir " + '"' + selectedpath + '"' + " " + textBoxArgs.Text;
//First Checks if password and username are empty (Length is smaller or equal to 0)
if (textBoxPassword.Text.Length <= 0 & textBoxUsername.Text.Length <= 0)
{
MessageBox.Show("No username or password entered, proceeding with anonymous download");
}
//if a username is entered, it will add it to the command
if (textBoxUsername.Text.Length > 0)
{
Command += $" -username { textBoxUsername.Text}";
}
//IIf a password is entered, add it to the args
if (textBoxPassword.Text.Length > 0)
{
Command += $" -password { textBoxPassword.Text}";
}
//Note: remember password only works if a username is entered.
if (textBoxUsername.Text.Length > 0 & ChooseBox_PSW != null & !textBoxArgs.Text.Contains("-remember-password") & textBoxPassword.Text.Length <= 0)
{
Command += ChooseBox_PSW;
}
if (RemeberPassCheckBox.Checked)
{
MessageBox.Show("You don't have to enter your password next time since you checked the checkmark!");
}
//Open CMD with DepotDownloader Args
open("cmd.exe", Command);
}
}
}
private void open(string url, string args = "")
{
System.Diagnostics.Process.Start(url, args);
}
private void buttonHelp_Click(object sender, EventArgs e)
{
open("https://github.com/mmvanheusden/SteamDepotDownloaderGUI/discussions/5");
}
private void buttonSearch_Click(object sender, EventArgs e)
{
string url = "https://steamdb.info/instantsearch/";
open(url);
}
private void buttonRepo_Click(object sender, EventArgs e)
{
open("https://github.com/mmvanheusden/SteamDepotDownloaderGUI");
}
private void RememberChanged(object sender, EventArgs e)
{
if (RemeberPassCheckBox.Checked)
{
ChooseBox_PSW = " -remember-password";
}
else
{
ChooseBox_PSW = null;
}
}
private void textBoxAppID_MouseHover(object sender, EventArgs e)
{
string x = "The unique app-ID";
toolTip1.SetToolTip(textBoxAppID, x);
}
}
}

File diff suppressed because it is too large Load Diff

26
eslint.config.js Normal file
View File

@@ -0,0 +1,26 @@
// @ts-check
import eslint from '@eslint/js';
import {defineConfig} from 'eslint/config';
import tseslint from 'typescript-eslint';
export default defineConfig(
eslint.configs.recommended,
tseslint.configs.stylisticTypeChecked,
{
languageOptions: {
parserOptions: {
project: 'tsconfig.json',
},
},
},
{
files: ["src/**"],
rules: {
"semi": ["error", "always"], // semicolons
"indent": ["error", "tab"], // tabs indents
"linebreak-style": ["error", "unix"],
"quotes": ["error", "double"],
},
},
);

34
package.json Normal file
View File

@@ -0,0 +1,34 @@
{
"name": "vectum",
"private": true,
"version": "3.1.0",
"type": "module",
"license": "GPL-3.0-only",
"scripts": {
"dev": "vite",
"build": "tsc && vite build",
"preview": "vite preview",
"tauri": "tauri"
},
"dependencies": {
"@tailwindcss/vite": "^4.1.18",
"@tauri-apps/api": "2.9.1",
"@tauri-apps/plugin-dialog": "2.6.0",
"@tauri-apps/plugin-opener": "~2.5.3",
"@tauri-apps/plugin-shell": "2.3.4",
"@xterm/addon-fit": "^0.11.0",
"@xterm/xterm": "^6.0.0",
"jquery": "^4.0.0",
"tailwindcss": "^4.1.18"
},
"devDependencies": {
"@eslint/js": "^9.39.2",
"@tauri-apps/cli": "2.9.6",
"@types/jquery": "^3.5.33",
"eslint": "^9.39.2",
"typescript": "^5.9.3",
"typescript-eslint": "^8.54.0",
"vite": "^7.3.1"
},
"packageManager": "pnpm@10.28.2+sha512.41872f037ad22f7348e3b1debbaf7e867cfd448f2726d9cf74c08f19507c31d2c8e7a11525b983febc2df640b5438dee6023ebb1f84ed43cc2d654d2bc326264"
}

2106
pnpm-lock.yaml generated Normal file

File diff suppressed because it is too large Load Diff

16
src-tauri/.gitignore vendored Normal file
View File

@@ -0,0 +1,16 @@
# Generated by Cargo
# will have compiled files and executables
/target/
# Generated by Tauri
# will have schema files for capabilities auto-completion
/gen/schemas
# DepotDownloader
depot/
downloads/
.DepotDownloader/
Games/
Depots/
**/*.sh

6121
src-tauri/Cargo.lock generated Normal file

File diff suppressed because it is too large Load Diff

45
src-tauri/Cargo.toml Normal file
View File

@@ -0,0 +1,45 @@
[package]
name = "vectum"
version = "3.1.0"
description = "Download older versions of Steam games with DepotDownloader"
authors = ["mmvanheusden"]
edition = "2021"
license = "GPL-3.0-only"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[build-dependencies]
tauri-build = { version = "2.4.1", features = [] }
[dependencies]
fix-path-env = { git = "https://github.com/tauri-apps/fix-path-env-rs", rev = "c4c45d503ea115a839aae718d02f79e7c7f0f673" }
serde_json = "1.0.143"
tauri = { version = "2.8.5", features = [] }
tauri-plugin-shell = "2.3.1"
tauri-plugin-dialog = "2.4.0"
serde = { version = "1.0.219", features = ["derive"] }
derive-getters = "0.5.0"
reqwest = { version = "0.13.1",features = ["blocking"] }
zip = "7.2.0"
tauri-plugin-opener = "2"
portable-pty = "0.9.0"
# Bacon - https://dystroy.org/bacon/
# Mold - https://github.com/rui314/mold#how-to-use
# https://discord.com/channels/616186924390023171/731495028677148753/1254902668376150149
[profile.dev]
incremental = true
opt-level = 1
debug = 0
[profile.dev.package."*"]
opt-level = 2
[profile.release]
codegen-units = 1 # Allows LLVM to perform better optimization.
lto = true # Enables link-time-optimizations.
opt-level = 3 # Prioritizes small binary size. Use `3` if you prefer speed.
panic = "abort" # Higher performance by disabling panic handlers.
strip = true # Ensures debug symbols are removed.

3
src-tauri/build.rs Normal file
View File

@@ -0,0 +1,3 @@
fn main() {
tauri_build::build()
}

View File

@@ -0,0 +1,31 @@
{
"$schema": "../gen/schemas/desktop-schema.json",
"identifier": "default",
"description": "Capability for the main window",
"windows": [
"main"
],
"permissions": [
"core:default",
"shell:allow-open",
"dialog:default",
"shell:allow-execute",
"shell:allow-spawn",
{
"identifier": "opener:allow-open-path",
"allow": [
{
"path": "**"
}
]
},
{
"identifier": "opener:allow-open-url",
"allow": [
{
"url": "**"
}
]
}
]
}

BIN
src-tauri/icons/128x128.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.8 KiB

BIN
src-tauri/icons/32x32.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 974 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 903 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

BIN
src-tauri/icons/icon.icns Normal file

Binary file not shown.

BIN
src-tauri/icons/icon.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 85 KiB

BIN
src-tauri/icons/icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

View File

@@ -0,0 +1,111 @@
use crate::get_os;
use std::fs::File;
use std::io::ErrorKind::AlreadyExists;
use std::path::PathBuf;
use std::{fs, io};
use std::{io::Write, path::Path};
pub static DEPOTDOWNLOADER_VERSION: &str = "3.4.0";
/**
See: [`test_get_depotdownloader_url()`]
*/
pub fn get_depotdownloader_url() -> String {
let arch = match std::env::consts::ARCH {
"x86_64" => "x64",
"aarch64" => "arm64",
"arm" => "arm",
_ => "x86_64",
};
format!("https://github.com/SteamRE/DepotDownloader/releases/download/DepotDownloader_{}/DepotDownloader-{}-{}.zip", DEPOTDOWNLOADER_VERSION, get_os(), arch)
}
/// Downloads a file. The file will be saved to the [`filename`] provided.
pub async fn download_file(url: &str, filename: &Path) -> io::Result<()> {
if filename.exists() {
println!("DEBUG: Not downloading. File already exists.");
return Err(io::Error::from(AlreadyExists));
}
// Create any missing directories.
if let Some(p) = filename.parent() {
if !p.exists() {
fs::create_dir_all(p)?;
}
}
let mut file = File::create(filename)?;
let response = reqwest::get(url)
.await
.expect("Failed to contact internet.");
let content = response.bytes().await.unwrap();
file.write_all(&content)?;
Ok(())
}
/// Unzips DepotDownloader zips
pub fn unzip(zip_file: &Path, working_dir: &PathBuf) -> io::Result<()> {
let file = File::open(zip_file)?;
let mut archive = zip::ZipArchive::new(file)?;
for i in 0..archive.len() {
let mut file = archive.by_index(i)?;
let outpath = match file.enclosed_name() {
Some(path) => working_dir.join(path),
None => continue,
};
println!("Extracted {} from archive.", outpath.display());
if let Some(p) = outpath.parent() {
if !p.exists() {
fs::create_dir_all(p)?;
}
}
let mut outfile = File::create(&outpath)?;
io::copy(&mut file, &mut outfile)?;
// Copy over permissions from enclosed file to extracted file on UNIX systems.
#[cfg(unix)]
{
use std::os::unix::fs::PermissionsExt;
// If the mode `file.unix_mode()` is something (not None), copy it over to the extracted file.
if let Some(mode) = file.unix_mode() {
fs::set_permissions(&outpath, fs::Permissions::from_mode(mode))?;
}
// Set executable permission.
if outpath.file_name().unwrap() == "DepotDownloader" {
fs::set_permissions(&outpath, fs::Permissions::from_mode(0o755))?;
}
}
}
Ok(())
}
#[cfg(test)]
mod tests {
use super::*;
use reqwest::blocking;
#[test]
/// checks if all possible DepotDownloader URLs exist.
fn test_get_depotdownloader_url() {
for os in ["windows", "linux", "macos"].iter() {
for arch in ["x64", "arm64", "arm"].iter() {
if arch.eq(&"arm") && !os.eq(&"linux") {
continue;
}
let url = format!("https://github.com/SteamRE/DepotDownloader/releases/download/DepotDownloader_{}/DepotDownloader-{}-{}.zip", DEPOTDOWNLOADER_VERSION, os, arch);
println!("Testing DepotDownloader URL: {}", url);
assert!(blocking::get(url).unwrap().status().is_success());
}
}
}
}

176
src-tauri/src/main.rs Normal file
View File

@@ -0,0 +1,176 @@
// Prevents additional console window on Windows in release, DO NOT REMOVE!!
#![cfg_attr(not(debug_assertions), windows_subsystem = "windows")]
mod depotdownloader;
mod steam;
mod terminal;
use crate::depotdownloader::{get_depotdownloader_url, DEPOTDOWNLOADER_VERSION};
use crate::terminal::{async_read_from_pty, async_resize_pty, async_write_to_pty};
use portable_pty::{native_pty_system, PtyPair, PtySize};
use std::io::ErrorKind::AlreadyExists;
use std::io::{BufReader, Read, Write};
use std::path::{Path, PathBuf};
use std::sync::{Arc, OnceLock};
use std::time::Duration;
use std::{env, thread};
use tauri::async_runtime::Mutex;
use tauri::{AppHandle, Emitter, Manager, State};
struct AppState {
pty_pair: Arc<Mutex<PtyPair>>,
writer: Arc<Mutex<Box<dyn Write + Send>>>,
reader: Arc<Mutex<BufReader<Box<dyn Read + Send>>>>,
}
/// The first terminal found. Used as default terminal.
static WORKING_DIR: OnceLock<PathBuf> = OnceLock::new();
/// This function is called every time the app is reloaded/started. It quickly populates the [`TERMINAL`] variable with a working terminal.
#[tauri::command]
async fn preload_vectum(app: AppHandle) {
// Only fill these variables once.
if WORKING_DIR.get().is_none() {
WORKING_DIR.set(Path::join(&app.path().local_data_dir().unwrap(), "SteamDepotDownloaderGUI")).expect("Failed to configure working directory")
}
}
#[tauri::command]
async fn start_download(steam_download: steam::SteamDownload, app: AppHandle, state: State<'_, AppState>) -> Result<(), String> {
// Also change working directory
// std::env::set_current_dir(&WORKING_DIR.get().unwrap()).unwrap();
println!("\n-------------------------DEBUG INFO------------------------");
println!("received these values from frontend:");
println!("\t- Username: {}", steam_download.username().as_ref().unwrap_or(&String::from("Not provided")));
// println!("\t- Password: {}", steam_download.password().as_ref().unwrap_or(&String::from("Not provided"))); Don't log in prod lol
println!("\t- App ID: {}", steam_download.app_id());
println!("\t- Depot ID: {}", steam_download.depot_id());
println!("\t- Manifest ID: {}", steam_download.manifest_id());
println!("\t- Output Path: {}", steam_download.output_path());
println!("\t- Working directory: {}", &WORKING_DIR.get().unwrap().display());
println!("----------------------------------------------------------\n");
/* Build the command and spawn it in our terminal */
let mut cmd = terminal::create_depotdownloader_command(&steam_download, WORKING_DIR.get().unwrap());
// add the $TERM env variable so we can use clear and other commands
#[cfg(target_os = "windows")]
cmd.env("TERM", "cygwin");
#[cfg(not(target_os = "windows"))]
cmd.env("TERM", "xterm-256color");
let mut child = state
.pty_pair
.lock()
.await
.slave
.spawn_command(cmd)
.map_err(|err| err.to_string())?;
thread::spawn(move || {
let status = child.wait().unwrap();
println!("Command exited with status: {status}");
app.emit("command-exited", {}).unwrap();
// exit(status.exit_code() as i32)
});
Ok(())
}
/// Downloads the DepotDownloader zip file from the internet based on the OS.
#[tauri::command]
async fn download_depotdownloader() {
let url = get_depotdownloader_url();
// Where we store the DepotDownloader zip.
let zip_filename = format!("DepotDownloader-v{}-{}.zip", DEPOTDOWNLOADER_VERSION, env::consts::OS);
let depotdownloader_zip = Path::join(WORKING_DIR.get().unwrap(), Path::new(&zip_filename));
if let Err(e) = depotdownloader::download_file(url.as_str(), depotdownloader_zip.as_path()).await {
if e.kind() == AlreadyExists {
println!("DepotDownloader already exists. Skipping download.");
} else {
println!("Failed to download DepotDownloader: {}", e);
}
return;
} else {
println!("Downloaded DepotDownloader for {} to {}", env::consts::OS, depotdownloader_zip.display());
}
depotdownloader::unzip(depotdownloader_zip.as_path(), WORKING_DIR.get().unwrap()).unwrap();
println!("Succesfully extracted DepotDownloader zip.");
}
/// Checks internet connectivity using Google
#[tauri::command]
async fn internet_connection() -> bool {
let client = reqwest::Client::builder().timeout(Duration::from_secs(5)).build().unwrap();
client.get("https://connectivitycheck.android.com/generate_204").send().await.is_ok()
}
pub fn get_os() -> &'static str {
match env::consts::OS {
"linux" => "linux",
"macos" => "macos",
"windows" => "windows",
_ => "unknown",
}
}
fn main() {
// macOS: change dir to documents because upon opening, our current dir by default is "/".
// todo: Is this still needed ??
/* if get_os() == "macos" {
let _ = fix_path_env::fix();
// let documents_dir = format!(
// "{}/Documents/SteamDepotDownloaderGUI",
// std::env::var_os("HOME").unwrap().to_str().unwrap()
// );
// let documents_dir = Path::new(&documents_dir);
// // println!("{}", documents_dir.display());
// std::fs::create_dir_all(documents_dir).unwrap();
// env::set_current_dir(documents_dir).unwrap();
}*/
/* Initialize the pty system */
let pty_system = native_pty_system();
let pty_pair = pty_system
.openpty(PtySize {
rows: 24,
cols: 80,
pixel_width: 0,
pixel_height: 0,
})
.unwrap();
let reader = pty_pair.master.try_clone_reader().unwrap();
let writer = pty_pair.master.take_writer().unwrap();
println!();
tauri::Builder::default()
.manage(AppState {
pty_pair: Arc::new(Mutex::new(pty_pair)),
writer: Arc::new(Mutex::new(writer)),
reader: Arc::new(Mutex::new(BufReader::new(reader))),
})
.plugin(tauri_plugin_opener::init())
.plugin(tauri_plugin_dialog::init())
.plugin(tauri_plugin_shell::init())
.invoke_handler(tauri::generate_handler![
start_download,
download_depotdownloader,
internet_connection,
preload_vectum,
async_write_to_pty,
async_read_from_pty,
async_resize_pty,
]).run(tauri::generate_context!())
.expect("error while running tauri application");
}

40
src-tauri/src/steam.rs Normal file
View File

@@ -0,0 +1,40 @@
use derive_getters::Getters;
use serde::Deserialize;
use std::path::PathBuf;
/// Represents the data required to download a Steam depot.
#[derive(Deserialize, Debug, Getters)]
pub struct SteamDownload {
username: Option<String>,
password: Option<String>,
app_id: String,
depot_id: String,
manifest_id: String,
options: VectumOptions
}
#[derive(Debug, Deserialize, Getters)]
pub struct VectumOptions {
output_directory: Option<PathBuf>,
directory_name: Option<String>
}
impl SteamDownload {
/// If a username or password are not provided, the download is considered anonymous
pub fn is_anonymous(&self) -> bool {
self.username.is_none() || self.password.is_none()
}
/// The directory where the download should happen
pub fn output_path(&self) -> String {
let sep = std::path::MAIN_SEPARATOR.to_string();
match (&self.options.output_directory, &self.options.directory_name) {
(Some(output_dir), Some(dir_name)) => format!("{}{}{}", output_dir.display(), sep, dir_name),
(Some(output_dir), None) => format!("{}{}{}", output_dir.display(), sep, &self.manifest_id),
(None, Some(dir_name)) => format!(".{}{}", sep, dir_name),
(None, None) => format!(".{}{}", sep, &self.manifest_id)
}
}
}

79
src-tauri/src/terminal.rs Normal file
View File

@@ -0,0 +1,79 @@
use std::io::BufRead;
use std::path::PathBuf;
use portable_pty::{CommandBuilder, PtySize};
use tauri::State;
use crate::AppState;
use crate::steam::SteamDownload;
/* Parts of this file are derived from https://github.com/cablehead/tauri-xtermjs-nushell/blob/0bdd4a27ee2874de12e99bccd6c91d6ec5d28fbc/src-tauri/src/main.rs */
#[tauri::command]
pub async fn async_write_to_pty(data: &str, state: State<'_, AppState>) -> Result<(), ()> {
write!(state.writer.lock().await, "{}", data).map_err(|_| ())
}
#[tauri::command]
pub async fn async_read_from_pty(state: State<'_, AppState>) -> Result<Option<String>, ()> {
let mut reader = state.reader.lock().await;
let data = {
// Read all available text
let data = reader.fill_buf().map_err(|_| ())?;
// Send the data to the webview if necessary
if !data.is_empty() {
std::str::from_utf8(data)
.map(|v| Some(v.to_string()))
.map_err(|_| ())?
} else {
None
}
};
if let Some(data) = &data {
reader.consume(data.len());
}
Ok(data)
}
#[tauri::command]
pub async fn async_resize_pty(rows: u16, cols: u16, state: State<'_, AppState>) -> Result<(), ()> {
state
.pty_pair
.lock()
.await
.master
.resize(PtySize {
rows,
cols,
..Default::default()
})
.map_err(|_| ())
}
/// Creates the DepotDownloader command necessary to download the requested manifest.
pub fn create_depotdownloader_command(steam_download: &SteamDownload, cwd: &PathBuf) -> CommandBuilder {
let depotdownloader_binary = if cfg!(windows) {
"DepotDownloader.exe"
} else {
"DepotDownloader"
};
let program = cwd.join(depotdownloader_binary);
let mut command = CommandBuilder::new(program);
command.cwd(cwd);
if !steam_download.is_anonymous() {
command.args(["-username", &steam_download.username().clone().unwrap()]);
command.args(["-password", &steam_download.password().clone().unwrap()]);
}
command.args(["-app", steam_download.app_id()]);
command.args(["-depot", steam_download.depot_id()]);
command.args(["-manifest", steam_download.manifest_id()]);
command.args(["-dir", &steam_download.output_path()]);
command
}

37
src-tauri/tauri.conf.json Normal file
View File

@@ -0,0 +1,37 @@
{
"productName": "SteamDepotDownloaderGUI",
"version": "3.1.0",
"identifier": "net.oopium.depotdownloader",
"build": {
"beforeDevCommand": "pnpm dev",
"devUrl": "http://localhost:1420",
"beforeBuildCommand": "pnpm build",
"frontendDist": "../dist"
},
"app": {
"withGlobalTauri": true,
"windows": [
{
"title": "SteamDepotDownloaderGUI",
"width": 890,
"height": 650,
"resizable": false,
"maximizable": false
}
],
"security": {
"csp": null
}
},
"bundle": {
"active": true,
"targets": "all",
"icon": [
"icons/32x32.png",
"icons/128x128.png",
"icons/128x128@2x.png",
"icons/icon.icns",
"icons/icon.ico"
]
}
}

BIN
src/assets/Hubot-Sans.woff2 Normal file

Binary file not shown.

BIN
src/assets/Windows.woff Normal file

Binary file not shown.

139
src/css/style.css Normal file
View File

@@ -0,0 +1,139 @@
@import "tailwindcss";
@font-face {
font-family: 'Hubot Sans';
src: url('../assets/Hubot-Sans.woff2') format('woff2 supports variations'),
url('../assets/Hubot-Sans.woff2') format('woff2-variations');
font-weight: 700;
font-stretch: expanded;
}
@font-face {
font-family: 'Windows';
src: url('../assets/Windows.woff') format('woff2 supports variations'),
url('../assets/Windows.woff') format('woff2-variations');
font-weight: 700;
font-stretch: expanded;
}
.f1-light {
font-family: 'Hubot Sans', sans-serif;
overflow: hidden;
white-space: nowrap;
}
.f2-light {
font-family: 'Hubot Sans', sans-serif;
}
/* The grey part */
.settings-surrounding {
display: none;
position: fixed;
z-index: 1;
left: 0;
top: 0;
width: 100%;
height: 100%;
overflow: hidden;
background-color: rgba(0, 0, 0, 0.33);
}
.settings-content {
position: relative;
border-radius: 10px;
overflow: auto;
/*noinspection CssUnresolvedCustomProperty*/
background-color: var(--bgColor-default, var(--color-canvas-default));
margin: 1%;
padding: 25px;
border: 1.5px solid white;
box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1), 0 6px 20px rgba(0, 0, 0, 0.1);
}
[data-color-mode="light"] .settings-content {
border: 1.5px solid black;
}
@media (prefers-color-scheme: light) {
[data-color-mode="auto"] .settings-content {
border: 1.5px solid black;
}
}
.hide {
display: none;
}
hr {
border: 0;
height: 1px;
background: black linear-gradient(to right, #0c1016, #ccc, #0c1016);
}
[data-color-mode="light"] hr {
filter: invert(1);
}
@media (prefers-color-scheme: light) {
[data-color-mode="auto"] hr {
filter: invert(1);
}
}
.version-info {
position: absolute;
bottom: 0;
right: 0;
font-size: 0.9em;
padding: 5px 10px;
font-family: monospace;
cursor: pointer;
}
.AnimatedEllipsis {
display: inline-block;
overflow: hidden;
vertical-align: bottom
}
.AnimatedEllipsis::after {
display: inline-block;
content: "...";
animation: AnimatedEllipsis-keyframes 1s steps(4, jump-none) infinite
}
@keyframes AnimatedEllipsis-keyframes {
0% {
transform: translateX(-100%)
}
}
.opium-button {
position: absolute;
bottom: 0;
left: 0;
cursor: pointer;
margin-left: 5px;
margin-bottom: 4px;
border: 1px solid #000;
background: linear-gradient(180deg, #8C8C8C 25%, #434343 75%);
display: inline-block;
font: 16px "Windows", monospace;
padding: 2px 5px;
color: darkred;
text-decoration: none;
}
.opium-button:hover {
cursor: zoom-in;
background: linear-gradient(180deg, #b0b0b0 25%, #504f4f 75%);
}
.opium-button:active {
cursor: crosshair;
border: 1px inset black;
background: linear-gradient(180deg, #333232 25%, #504f4f 75%);
}

268
src/index.html Normal file
View File

@@ -0,0 +1,268 @@
<!DOCTYPE html>
<html data-color-mode="auto" data-dark-theme="dark" data-light-theme="light" id="theme" lang="en">
<head>
<meta charset="UTF-8">
<meta content="width=device-width, initial-scale=1" name="viewport"/>
<title>SteamDepotDownloaderGUI</title>
<link href="https://unpkg.com/@primer/css@21.3.6/dist/primer.css" rel="stylesheet"/>
<link href="css/style.css" rel="stylesheet">
<script defer src="./ts/preload.ts" type="module"></script>
<script src="./ts/main.ts" type="module"></script>
<script src="./ts/settings.ts" type="module"></script>
<script src="../node_modules/@xterm/xterm/lib/xterm.js"></script>
<link rel="stylesheet" href="../node_modules/@xterm/xterm/css/xterm.css" />
</head>
<body class="select-none">
<div class="f1-light text-center mb-1">Steam Depot Downloader</div>
<div class="flex justify-between gap-2 w-svw flex-row">
<div class="w-1/2 h-full" id="left-side">
<div class="mx-auto">
<form id="theform">
<div class="form-group mx-3 mt-1">
<div class="form-group-header">
<label for="username">Username</label>
</div>
<input spellcheck="false" class="form-control input-block" id="username" placeholder="Leave empty for anonymous download"
type="text"/>
</div>
<div class="form-group mx-3 mt-1">
<div class="form-group-header">
<label for="password">Password</label>
</div>
<input class="form-control input-block" id="password" placeholder="Leave empty for anonymous download"
type="password"/>
</div>
<div class="form-group mx-3 mt-1 required">
<div class="form-group-header">
<label for="appid">App ID</label>
</div>
<input class="form-control input-block" id="appid" type="number"/>
</div>
<div class="form-group mx-3 mt-1 required">
<div class="form-group-header">
<label for="depotid">Depot ID</label>
</div>
<input class="form-control input-block" id="depotid" type="number"/>
</div>
<div class="form-group mx-3 mt-1 required">
<div class="form-group-header">
<label for="manifestid">Manifest ID</label>
</div>
<input class="form-control input-block" id="manifestid" type="number"/>
</div>
<div class="mx-3 mt-1 required">
<div class="form-group-header">
<label>Download Location</label>
</div>
<div aria-label="Pick the path/location where the game will be downloaded to."
class="form-control btn btn-sm tooltipped tooltipped-ne" id="pickpath">
Set location
</div>
<div aria-disabled="true" aria-label="Check the location that has been selected."
class="form-control btn btn-sm ml-2 tooltipped tooltipped-ne" id="checkpath">
Open location
</div>
<span class="Label mt-1 ml-3 Label--warning" id="busy">
<span aria-label="Application is executing a task. Please be patient."
class="tooltipped tooltipped-n">Busy<span class="AnimatedEllipsis"></span>
</span>
</span>
</div>
</form>
<div class="mt-2" id="warning-banners">
<div hidden id="dotnetwarning">
<div class="flash flash-error mx-2 mt-2 color-shadow-medium" id="dotnetalert">
<svg class="octicon" height="16" viewBox="0 0 16 16" width="16" xmlns="http://www.w3.org/2000/svg">
<path
d="M8 1.5a6.5 6.5 0 100 13 6.5 6.5 0 000-13zM0 8a8 8 0 1116 0A8 8 0 010 8zm6.5-.25A.75.75 0 017.25 7h1a.75.75 0 01.75.75v2.75h.25a.75.75 0 010 1.5h-2a.75.75 0 010-1.5h.25v-2h-.25a.75.75 0 01-.75-.75zM8 6a1 1 0 100-2 1 1 0 000 2z"
fill-rule="evenodd"></path>
</svg>
<code><span class="text-italic">dotnet</span></code> was not found.
<button class="btn btn-sm flash-action" id="dotnetalertbtn">
<svg class="octicon" height="16" viewBox="0 0 16 16" width="16"
xmlns="http://www.w3.org/2000/svg">
<path d="M7.47 10.78a.75.75 0 001.06 0l3.75-3.75a.75.75 0 00-1.06-1.06L8.75 8.44V1.75a.75.75 0 00-1.5
0v6.69L4.78 5.97a.75.75 0 00-1.06 1.06l3.75 3.75zM3.75 13a.75.75 0 000 1.5h8.5a.75.75 0 000-1.5h-8.5z"
fill-rule="evenodd"></path>
</svg>
<span class="text-bold">Download</span>
</button>
</div>
</div>
<div hidden id="emptywarning">
<div class="flash flash-warn mx-2 mt-2 color-shadow-medium" id="emptyalert">
<svg class="octicon" height="16" viewBox="0 0 16 16" width="16" xmlns="http://www.w3.org/2000/svg">
<path
d="M8 1.5a6.5 6.5 0 100 13 6.5 6.5 0 000-13zM0 8a8 8 0 1116 0A8 8 0 010 8zm6.5-.25A.75.75 0 017.25 7h1a.75.75 0 01.75.75v2.75h.25a.75.75 0 010 1.5h-2a.75.75 0 010-1.5h.25v-2h-.25a.75.75 0 01-.75-.75zM8 6a1 1 0 100-2 1 1 0 000 2z"
fill-rule="evenodd"></path>
</svg>
Please fill in all required fields.
</div>
</div>
<div id="internet-btns">
<div class="form-group mt-3 ml-3 mr-3">
<div class="BtnGroup d-flex">
<button class="BtnGroup-item btn btn-block btn-primary flex-1" id="downloadbtn">
<svg class="octicon filter-red" height="16"
style="display: inline-block; user-select: none; vertical-align: text-bottom;"
viewBox="0 0 16 16" width="16" xmlns="http://www.w3.org/2000/svg">
<path
d="M7.47 10.78a.75.75 0 001.06 0l3.75-3.75a.75.75 0 00-1.06-1.06L8.75 8.44V1.75a.75.75 0 00-1.5 0v6.69L4.78 5.97a.75.75 0 00-1.06 1.06l3.75 3.75zM3.75 13a.75.75 0 000 1.5h8.5a.75.75 0 000-1.5h-8.5z"
fill-rule="evenodd"></path>
</svg>
Download
</button>
<button class="BtnGroup-item btn flex-0" id="settings-button">
<svg fill="#8B949E" height="16"
style="display: inline-block; user-select: none; vertical-align: text-bottom;"
viewBox="0 0 16 16" width="16" xmlns="http://www.w3.org/2000/svg">
<path
d="M8 0a8.2 8.2 0 0 1 .701.031C9.444.095 9.99.645 10.16 1.29l.288 1.107c.018.066.079.158.212.224.231.114.454.243.668.386.123.082.233.09.299.071l1.103-.303c.644-.176 1.392.021 1.82.63.27.385.506.792.704 1.218.315.675.111 1.422-.364 1.891l-.814.806c-.049.048-.098.147-.088.294.016.257.016.515 0 .772-.01.147.038.246.088.294l.814.806c.475.469.679 1.216.364 1.891a7.977 7.977 0 0 1-.704 1.217c-.428.61-1.176.807-1.82.63l-1.102-.302c-.067-.019-.177-.011-.3.071a5.909 5.909 0 0 1-.668.386c-.133.066-.194.158-.211.224l-.29 1.106c-.168.646-.715 1.196-1.458 1.26a8.006 8.006 0 0 1-1.402 0c-.743-.064-1.289-.614-1.458-1.26l-.289-1.106c-.018-.066-.079-.158-.212-.224a5.738 5.738 0 0 1-.668-.386c-.123-.082-.233-.09-.299-.071l-1.103.303c-.644.176-1.392-.021-1.82-.63a8.12 8.12 0 0 1-.704-1.218c-.315-.675-.111-1.422.363-1.891l.815-.806c.05-.048.098-.147.088-.294a6.214 6.214 0 0 1 0-.772c.01-.147-.038-.246-.088-.294l-.815-.806C.635 6.045.431 5.298.746 4.623a7.92 7.92 0 0 1 .704-1.217c.428-.61 1.176-.807 1.82-.63l1.102.302c.067.019.177.011.3-.071.214-.143.437-.272.668-.386.133-.066.194-.158.211-.224l.29-1.106C6.009.645 6.556.095 7.299.03 7.53.01 7.764 0 8 0Zm-.571 1.525c-.036.003-.108.036-.137.146l-.289 1.105c-.147.561-.549.967-.998 1.189-.173.086-.34.183-.5.29-.417.278-.97.423-1.529.27l-1.103-.303c-.109-.03-.175.016-.195.045-.22.312-.412.644-.573.99-.014.031-.021.11.059.19l.815.806c.411.406.562.957.53 1.456a4.709 4.709 0 0 0 0 .582c.032.499-.119 1.05-.53 1.456l-.815.806c-.081.08-.073.159-.059.19.162.346.353.677.573.989.02.03.085.076.195.046l1.102-.303c.56-.153 1.113-.008 1.53.27.161.107.328.204.501.29.447.222.85.629.997 1.189l.289 1.105c.029.109.101.143.137.146a6.6 6.6 0 0 0 1.142 0c.036-.003.108-.036.137-.146l.289-1.105c.147-.561.549-.967.998-1.189.173-.086.34-.183.5-.29.417-.278.97-.423 1.529-.27l1.103.303c.109.029.175-.016.195-.045.22-.313.411-.644.573-.99.014-.031.021-.11-.059-.19l-.815-.806c-.411-.406-.562-.957-.53-1.456a4.709 4.709 0 0 0 0-.582c-.032-.499.119-1.05.53-1.456l.815-.806c.081-.08.073-.159.059-.19a6.464 6.464 0 0 0-.573-.989c-.02-.03-.085-.076-.195-.046l-1.102.303c-.56.153-1.113.008-1.53-.27a4.44 4.44 0 0 0-.501-.29c-.447-.222-.85-.629-.997-1.189l-.289-1.105c-.029-.11-.101-.143-.137-.146a6.6 6.6 0 0 0-1.142 0ZM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0ZM9.5 8a1.5 1.5 0 1 0-3.001.001A1.5 1.5 0 0 0 9.5 8Z">
</path>
</svg>
</button>
</div>
</div>
</div>
<div hidden id="nopathwarning">
<div class="flash flash-warn mx-2 mt-2 color-shadow-medium" id="emptyalert">
<svg class="octicon" height="16" viewBox="0 0 16 16" width="16" xmlns="http://www.w3.org/2000/svg">
<path
d="M8 1.5a6.5 6.5 0 100 13 6.5 6.5 0 000-13zM0 8a8 8 0 1116 0A8 8 0 010 8zm6.5-.25A.75.75 0 017.25 7h1a.75.75 0 01.75.75v2.75h.25a.75.75 0 010 1.5h-2a.75.75 0 010-1.5h.25v-2h-.25a.75.75 0 01-.75-.75zM8 6a1 1 0 100-2 1 1 0 000 2z"
fill-rule="evenodd"></path>
</svg>
Please choose a download location.
</div>
</div>
<div class="flash mx-2 mt-2 color-shadow-medium" hidden id="downloadingnotice">
<svg class="octicon" height="16" viewBox="0 0 16 16" width="16" xmlns="http://www.w3.org/2000/svg">
<path
d="M8 1.5a6.5 6.5 0 100 13 6.5 6.5 0 000-13zM0 8a8 8 0 1116 0A8 8 0 010 8zm6.5-.25A.75.75 0 017.25 7h1a.75.75 0 01.75.75v2.75h.25a.75.75 0 010 1.5h-2a.75.75 0 010-1.5h.25v-2h-.25a.75.75 0 01-.75-.75zM8 6a1 1 0 100-2 1 1 0 000 2z"
fill-rule="evenodd"></path>
</svg>
Downloading and extracting DepotDownloader<span class="AnimatedEllipsis"></span>
</div>
</div>
</div>
</div>
<div class="w-1/2 h-full px-2" id="right-side">
<div class="mt-2 h-full w-full mx-auto">
<div class="border border-gray-300 rounded-md bg-gray-900 text-white shadow shadow-blue-200">
<div class="text-md font-semibold w-full inline-flex my-px items-center">
<span class="text-center w-full">Download output</span>
<button id="clear-terminal" class="disabled:pointer-events-none disabled:line-through disabled:text-gray-300 ml-auto py-px px-2 border-2 rounded-xs border-red-500/75 font-normal enabled:hover:bg-red-200/30 enabled:active:bg-red-200/50">
Clear
</button>
</div>
<div class="max-h-[70vh]" id="xtermjs"></div>
</div>
<div class="mt-3 justify-between flex flex-row gap-3">
<div aria-label="Join the Discord server for rapid support." class="btn btn-sm tooltipped tooltipped-ne mb-1 w-full text-center items-center"
id="smbtn1">
<svg fill="#8B949E" height="16" style="display: inline-block; vertical-align: text-bottom;" viewBox="0 0 16 16">
<path d="M13.545 2.907a13.2 13.2 0 0 0-3.257-1.011.05.05 0 0 0-.052.025c-.141.25-.297.577-.406.833a12.2 12.2 0 0 0-3.658 0 8 8 0 0 0-.412-.833.05.05 0 0 0-.052-.025c-1.125.194-2.22.534-3.257 1.011a.04.04 0 0 0-.021.018C.356 6.024-.213 9.047.066 12.032q.003.022.021.037a13.3 13.3 0 0 0 3.995 2.02.05.05 0 0 0 .056-.019q.463-.63.818-1.329a.05.05 0 0 0-.01-.059l-.018-.011a9 9 0 0 1-1.248-.595.05.05 0 0 1-.02-.066l.015-.019q.127-.095.248-.195a.05.05 0 0 1 .051-.007c2.619 1.196 5.454 1.196 8.041 0a.05.05 0 0 1 .053.007q.121.1.248.195a.05.05 0 0 1-.004.085 8 8 0 0 1-1.249.594.05.05 0 0 0-.03.03.05.05 0 0 0 .003.041c.24.465.515.909.817 1.329a.05.05 0 0 0 .056.019 13.2 13.2 0 0 0 4.001-2.02.05.05 0 0 0 .021-.037c.334-3.451-.559-6.449-2.366-9.106a.03.03 0 0 0-.02-.019m-8.198 7.307c-.789 0-1.438-.724-1.438-1.612s.637-1.613 1.438-1.613c.807 0 1.45.73 1.438 1.613 0 .888-.637 1.612-1.438 1.612m5.316 0c-.788 0-1.438-.724-1.438-1.612s.637-1.613 1.438-1.613c.807 0 1.451.73 1.438 1.613 0 .888-.631 1.612-1.438 1.612"/>
</svg>
Discord
</div>
<div aria-label="Visit the SteamDB instant search website."
class="btn btn-sm tooltipped tooltipped-n mb-1 w-full text-center items-center" id="smbtn2">
<svg aria-hidden="true" class="octicon" fill="#8B949E" height="16" viewBox="0 0 128 128" width="16"
xmlns="http://www.w3.org/2000/svg">
<path
d="M63.9 0C30.5 0 3.1 11.9.1 27.1l35.6 6.7c2.9-.9 6.2-1.3 9.6-1.3l16.7-10c-.2-2.5 1.3-5.1 4.7-7.2 4.8-3.1 12.3-4.8 19.9-4.8 5.2-.1 10.5.7 15 2.2 11.2 3.8 13.7 11.1 5.7 16.3-5.1 3.3-13.3 5-21.4 4.8l-22 7.9c-.2 1.6-1.3 3.1-3.4 4.5-5.9 3.8-17.4 4.7-25.6 1.9-3.6-1.2-6-3-7-4.8L2.5 38.4c2.3 3.6 6 6.9 10.8 9.8C5 53 0 59 0 65.5c0 6.4 4.8 12.3 12.9 17.1C4.8 87.3 0 93.2 0 99.6 0 115.3 28.6 128 64 128c35.3 0 64-12.7 64-28.4 0-6.4-4.8-12.3-12.9-17 8.1-4.8 12.9-10.7 12.9-17.1 0-6.5-5-12.6-13.4-17.4 8.3-5.1 13.3-11.4 13.3-18.2 0-16.5-28.7-29.9-64-29.9zm22.8 14.2c-5.2.1-10.2 1.2-13.4 3.3-5.5 3.6-3.8 8.5 3.8 11.1 7.6 2.6 18.1 1.8 23.6-1.8s3.8-8.5-3.8-11c-3.1-1-6.7-1.5-10.2-1.5zm.3 1.7c7.4 0 13.3 2.8 13.3 6.2 0 3.4-5.9 6.2-13.3 6.2s-13.3-2.8-13.3-6.2c0-3.4 5.9-6.2 13.3-6.2zM45.3 34.4c-1.6.1-3.1.2-4.6.4l9.1 1.7a10.8 5 0 1 1-8.1 9.3l-8.9-1.7c1 .9 2.4 1.7 4.3 2.4 6.4 2.2 15.4 1.5 20-1.5s3.2-7.2-3.2-9.3c-2.6-.9-5.7-1.3-8.6-1.3zM109 51v9.3c0 11-20.2 19.9-45 19.9-24.9 0-45-8.9-45-19.9v-9.2c11.5 5.3 27.4 8.6 44.9 8.6 17.6 0 33.6-3.3 45.2-8.7zm0 34.6v8.8c0 11-20.2 19.9-45 19.9-24.9 0-45-8.9-45-19.9v-8.8c11.6 5.1 27.4 8.2 45 8.2s33.5-3.1 45-8.2z"
fill-rule="evenodd"></path>
</svg>
SteamDB
</div>
<div aria-label="Donate to the author of SteamDepotDownloaderGUI."
class="btn btn-sm tooltipped tooltipped-n mb-1 w-full text-center items-center" id="smbtn3">
<svg fill="#8B949E" height="16" style="display: inline-block; vertical-align: text-bottom;"
viewBox="0 0 16 16" width="16" xmlns="http://www.w3.org/2000/svg">
<path
d="M2 2.75A2.75 2.75 0 0 1 4.75 0c.983 0 1.873.42 2.57 1.232.268.318.497.668.68 1.042.183-.375.411-.725.68-1.044C9.376.42 10.266 0 11.25 0a2.75 2.75 0 0 1 2.45 4h.55c.966 0 1.75.784 1.75 1.75v2c0 .698-.409 1.301-1 1.582v4.918A1.75 1.75 0 0 1 13.25 16H2.75A1.75 1.75 0 0 1 1 14.25V9.332C.409 9.05 0 8.448 0 7.75v-2C0 4.784.784 4 1.75 4h.55c-.192-.375-.3-.8-.3-1.25ZM7.25 9.5H2.5v4.75c0 .138.112.25.25.25h4.5Zm1.5 0v5h4.5a.25.25 0 0 0 .25-.25V9.5Zm0-4V8h5.5a.25.25 0 0 0 .25-.25v-2a.25.25 0 0 0-.25-.25Zm-7 0a.25.25 0 0 0-.25.25v2c0 .138.112.25.25.25h5.5V5.5h-5.5Zm3-4a1.25 1.25 0 0 0 0 2.5h2.309c-.233-.818-.542-1.401-.878-1.793-.43-.502-.915-.707-1.431-.707ZM8.941 4h2.309a1.25 1.25 0 0 0 0-2.5c-.516 0-1 .205-1.43.707-.337.392-.646.975-.879 1.793Z"
fill-rule="evenodd"></path>
</svg>
Donate
</div>
<div aria-label="View the official SteamDepotDownloaderGUI tutorials."
class="btn btn-sm tooltipped tooltipped-nw mb-1 w-full text-center items-center" id="smbtn4">
<svg fill="#8B949E" style="display: inline-block; vertical-align: text-bottom;" height="16" width="16">
<path d="M0 3.75C0 2.784.784 2 1.75 2h12.5c.966 0 1.75.784 1.75 1.75v8.5A1.75 1.75 0 0 1 14.25 14H1.75A1.75 1.75 0 0 1 0 12.25Zm1.75-.25a.25.25 0 0 0-.25.25v8.5c0 .138.112.25.25.25h12.5a.25.25 0 0 0 .25-.25v-8.5a.25.25 0 0 0-.25-.25Z"></path>
<path d="M6 10.559V5.442a.25.25 0 0 1 .379-.215l4.264 2.559a.25.25 0 0 1 0 .428l-4.264 2.559A.25.25 0 0 1 6 10.559Z"></path>
</svg>
Tutorial
</div>
</div>
</div>
</div>
</div>
<div class="settings-surrounding" id="settings-surrounding">
<div class="settings-content mx-auto max-w-2/3 h-[85vh] mt-4" id="settings-content">
<label class="version-info" id="version-info">UNKNOWN</label>
<button class="opium-button" id="opium-btn">aphex</button>
<h2><b>Settings</b></h2>
<h4><b>Appearance</b></h4>
<div class="form-group">
<div class="form-group-header">
<label>Theme</label>
</div>
<div class="form-group-body">
<div class="BtnGroup">
<button aria-selected="true" class="BtnGroup-item btn btn-sm" id="theme-auto" type="button">
Auto
</button>
<button class="BtnGroup-item btn btn-sm" id="theme-light" type="button">
Light
</button>
<button class="BtnGroup-item btn btn-sm" id="theme-dark" type="button">
Dark
</button>
</div>
</div>
</div>
<h4><b>Output</b></h4>
<form>
<div class="form-group">
<div class="form-group-header">
<label for="folder-name-custom-input">Game directory name</label>
</div>
<div class="form-group-body">
<div class="BtnGroup">
<button aria-selected="true" class="BtnGroup-item btn btn-sm" id="folder-name-appid"
type="button">
Manifest ID
</button>
<button class="BtnGroup-item btn btn-sm" id="folder-name-custom" type="button">
Custom
</button>
</div>
<br>
<input class="form-control input-block mt-2" disabled
id="folder-name-custom-input" placeholder="DepotDownloader output directory name"
type="text">
</div>
</div>
</form>
</div>
</div>
</body>
</html>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 76 KiB

245
src/ts/main.ts Normal file
View File

@@ -0,0 +1,245 @@
import $ from "jquery";
import {invoke} from "@tauri-apps/api/core";
import {open as openDialog} from "@tauri-apps/plugin-dialog";
import {openPath, openUrl} from "@tauri-apps/plugin-opener";
import "@xterm/xterm/css/xterm.css";
import {Terminal} from "@xterm/xterm";
import { FitAddon } from "@xterm/addon-fit";
import { listen } from "@tauri-apps/api/event";
/* Parts of this file are derived from https://github.com/cablehead/tauri-xtermjs-nushell/blob/0bdd4a27ee2874de12e99bccd6c91d6ec5d28fbc/src/main.ts */
function blockTerminalClearButton(state: boolean) {
$("#clear-terminal").prop( "disabled", state );
}
function setLoadingState(state: boolean) {
$("#busy").prop("hidden", !state);
// loop through all buttons and input fields and disable them
for (const element of document.querySelectorAll("button, input, div[role='button']")) {
if (element.closest("#settings-content")) continue;
if (element.closest("#right-side")) continue;
(element as any).disabled = state;
}
// These elements need additional properties to be properly disabled
$("#pickpath").prop("ariaDisabled", state);
$("#downloadbtn").prop("ariaDisabled", state);
// disable internet buttons
for (const element of document.querySelectorAll("#internet-btns div")) {
element.ariaDisabled = String(state);
}
}
/// Returns list of IDs of invalid form fields
const invalidFields = () => {
const form = document.forms[0];
const invalidFields: string[] = [];
for (const input of form) {
const inputElement = input as HTMLInputElement;
const valid = !(inputElement.value === "" && inputElement?.parentElement?.classList.contains("required"));
if (!valid) {
invalidFields.push(inputElement.id);
}
}
// console.debug(`[${invalidFields.join(", ")}] fields invalid/empty`);
return invalidFields;
};
const registerTerminal: (terminalElement: HTMLElement) => Promise<Terminal> = async (terminalElement: HTMLElement) => {
const fitAddon = new FitAddon();
const term = new Terminal({
fontSize: 10,
cursorBlink: true,
rows: 100,
cols: 100,
theme: {
background: "rgb(33, 33, 33)",
},
});
term.loadAddon(fitAddon);
term.open(terminalElement);
async function fitTerminal() {
fitAddon.fit();
void invoke<string>("async_resize_pty", {
rows: term.rows,
cols: term.cols,
});
}
// Write data from pty into the terminal
function writeToTerminal(data: string) {
return new Promise<void>((r) => {
term.write(data, () => r());
});
}
// Write data from the terminal to the pty
function writeToPty(data: string) {
void invoke("async_write_to_pty", {
data,
});
}
term.onData(writeToPty);
addEventListener("resize", fitTerminal);
await fitTerminal();
async function readFromPty() {
const data = await invoke<string>("async_read_from_pty");
if (data) {
await writeToTerminal(data);
}
window.requestAnimationFrame(readFromPty);
}
window.requestAnimationFrame(readFromPty);
return term;
};
$(async () => {
let terminal = await registerTerminal($("#xtermjs")[0]);
let downloadDirectory: string | null;
// Startup logic
setLoadingState(true);
await invoke("preload_vectum");
setLoadingState(false);
$("#clear-terminal").on("click", async () => {
terminal.reset()
})
$("#pickpath").on("click", async () => {
// Open a dialog
downloadDirectory = await openDialog({
title: "Choose where to save the game download.",
multiple: false,
directory: true,
canCreateDirectories: true
});
if (downloadDirectory == null) {
// user cancelled
$("#checkpath").prop("ariaDisabled", true);
$("#checkpath").prop("disabled", true);
return;
}
$("#checkpath").prop("ariaDisabled", false);
$("#checkpath").prop("disabled", false);
$("#downloadbtn").prop("ariaDisabled", false);
$("#nopathwarning").prop("hidden", true);
console.log(downloadDirectory);
});
$("#checkpath").on("click", async () => {
console.log(`Checking path: ${downloadDirectory}`);
if (downloadDirectory != null) {
await openPath(downloadDirectory);
} else {
$("#checkpath").prop("ariaDisabled", true);
}
});
$("#downloadbtn").on("click", async () => {
console.log("download button clicked");
if (invalidFields().length > 0) {
// Loop through invalid fields. If there are any, make those "errored" and block the download button.
for (const id of invalidFields()) {
document.getElementById(id)?.parentElement?.classList.toggle("errored", true);
}
$("#emptywarning").prop("hidden", false);
$("#downloadbtn").prop("ariaDisabled", true);
return;
}
if (downloadDirectory == null) {
$("#nopathwarning").prop("hidden", false);
$("#downloadbtn").prop("ariaDisabled", true);
return;
}
setLoadingState(true);
$("#downloadingnotice").prop("hidden", false);
$("#busy").prop("hidden", true); // Don't show the loader this time.
const directoryNameChoice = $("#folder-name-custom-input").val();
// Output path w/ directories chosen is: {downloadDirectory}/{directoryNameChoice}
const vectumOptions = {
output_directory: downloadDirectory || null, // if not specified let backend choose a path.
directory_name: directoryNameChoice || null,
};
const steamDownload = {
// String || null translate to Some(String) || None
username: String($("#username").val()).trim() || null,
password: String($("#password").val()).trim() || null,
app_id: $("#appid").val(),
depot_id: $("#depotid").val(),
manifest_id: $("#manifestid").val(),
options: vectumOptions
};
// console.debug(steamDownload);
await invoke("download_depotdownloader");
$("#downloadingnotice").prop("hidden", true);
setLoadingState(false);
console.debug("DepotDownloader download process completed. Starting game download...");
setLoadingState(true);
await invoke("start_download", {steamDownload: steamDownload});
// Block clear terminal button (to avoid clearing ongoing download logs)
blockTerminalClearButton(true);
console.log("Send frontend data over to backend. Ready for next download.");
});
$("#settings-button").on("click", async () => {
$("#settings-surrounding").toggle();
});
$("#settings-surrounding").on("click", (event) => {
if (event.target === document.getElementById("settings-surrounding")) {
$("#settings-surrounding").toggle();
}
});
$("#opium-btn").on("click", () => {
openUrl("https://aphex.cc/index.html");
});
document.forms[0].addEventListener("input", (event) => {
// Remove errored class. This is a bad way to do it, but it works for now.
const target = event.target as HTMLElement;
target?.parentElement?.classList.toggle("errored", false);
// If there are no more invalid fields, hide the warning and enable the download button again
if (invalidFields().length === 0) {
$("#emptywarning").prop("hidden", true);
$("#downloadbtn").prop("ariaDisabled", false);
}
});
});
listen<string>("command-exited", () => {
setLoadingState(false);
blockTerminalClearButton(false);
});

34
src/ts/preload.ts Normal file
View File

@@ -0,0 +1,34 @@
import {message} from "@tauri-apps/plugin-dialog";
import {invoke} from "@tauri-apps/api/core";
import $ from "jquery";
import {openUrl} from "@tauri-apps/plugin-opener";
$(async () => {
/* eslint-disable indent */
switch (await invoke("internet_connection")) {
case false: {
await message("No internet connection! Can't proceed.", {
title: "SteamDepotDownloaderGUI", kind: "error", okLabel: "Close"
});
}
}
/* eslint-enable indent */
// discord
$("#smbtn1").on("click", () => {
openUrl("https://discord.com/invite/3qCt4DT5qe");
});
// steamdb
$("#smbtn2").on("click", () => {
openUrl("https://steamdb.info/instantsearch");
});
// donate
$("#smbtn3").on("click", () => {
openUrl("https://paypal.me/onderkin");
});
// tutorial
$("#smbtn4").on("click", () => {
openUrl("https://youtube.com/playlist?list=PLRAjc5plLScj967hnsYX-I3Vjw9C1v7Ca");
});
});

47
src/ts/settings.ts Normal file
View File

@@ -0,0 +1,47 @@
import {getVersion} from "@tauri-apps/api/app";
import $ from "jquery";
import {openUrl} from "@tauri-apps/plugin-opener";
$(async () => {
$("#version-info").text(`v${await getVersion()}`);
$("#theme-auto").on("click", () => {
setTheme("auto");
});
$("#theme-light").on("click", () => {
setTheme("light");
});
$("#theme-dark").on("click", () => {
setTheme("dark");
});
$("#folder-name-appid").on("click", () => {
$("#folder-name-custom").attr("aria-selected", "false");
$("#folder-name-appid").attr("aria-selected", "true");
$("#folder-name-custom-input").prop("disabled", true);
$("#folder-name-custom-input").val("");
});
// todo: fix folder-name-custom-input not disabled on untouched app state
$("#folder-name-custom").on("click", () => {
$("#folder-name-appid").attr("aria-selected", "false");
$("#folder-name-custom").attr("aria-selected", "true");
$("#folder-name-custom-input").prop("disabled", false);
});
console.log(await getVersion());
$("#version-info").on("click", async () => {
await openUrl(`https://github.com/mmvanheusden/SteamDepotDownloaderGUI/releases/v${await getVersion()}`);
});
});
function setTheme(theme: string) {
$("#theme-auto").attr("aria-selected", String(theme === "auto"));
$("#theme-light").attr("aria-selected", String(theme === "light"));
$("#theme-dark").attr("aria-selected", String(theme === "dark"));
$("#theme").attr("data-color-mode", theme);
localStorage.theme = theme;
}

27
tsconfig.json Normal file
View File

@@ -0,0 +1,27 @@
{
"compilerOptions": {
"target": "ES2020",
"useDefineForClassFields": true,
"module": "ESNext",
"lib": [
"ES2020",
"DOM",
"DOM.Iterable"
],
"skipLibCheck": true,
/* Bundler mode */
"moduleResolution": "bundler",
"allowImportingTsExtensions": true,
"resolveJsonModule": true,
"isolatedModules": true,
"noEmit": true,
/* Linting */
"strict": true,
"noUnusedLocals": false,
"noUnusedParameters": false,
"noFallthroughCasesInSwitch": true
},
"include": [
"src"
]
}

39
vite.config.ts Normal file
View File

@@ -0,0 +1,39 @@
import {defineConfig} from "vite";
import tailwindcss from '@tailwindcss/vite'
// @ts-expect-error process is a nodejs global
const host = process.env.TAURI_DEV_HOST;
// https://vitejs.dev/config/
export default defineConfig(async () => ({
// Vite options tailored for Tauri development and only applied in `tauri dev` or `tauri build`
//
// 1. prevent vite from obscuring rust errors
clearScreen: false,
// 2. tauri expects a fixed port, fail if that port is not available
server: {
port: 1420,
strictPort: true,
host: host || false,
hmr: host
? {
protocol: "ws",
host,
port: 1421,
}
: undefined,
watch: {
// 3. tell vite to ignore watching `src-tauri`
ignored: ["**/src-tauri/**"],
}
},
root: "src",
build: {
outDir: '../dist',
emptyOutDir: true,
},
plugins: [
tailwindcss(),
]
}));