From 498a8253fd130f8b2647840b50afa9c8a306a796 Mon Sep 17 00:00:00 2001 From: Jose Conde Date: Thu, 25 Jul 2024 16:29:14 +0200 Subject: [PATCH] v0.2.0 --- .hmrc | 9 +- CHANGELOG.md | 28 ++- index.html | 4 +- package-lock.json | 23 +- package.json | 9 +- public/CHANGELOG.html | 14 ++ src-tauri/tauri.conf.json | 18 +- src/App.vue | 63 +---- src/assets/images/profile-stub.png | Bin 0 -> 1783 bytes src/assets/main.css | 3 +- src/assets/sounds/button_click.wav | Bin 0 -> 17738 bytes src/assets/sounds/ding-1.wav | Bin 0 -> 444460 bytes src/common/errors/ErrorBase.ts | 7 + src/common/errors/SessionExpiredError.ts | 7 + src/common/helpers.ts | 7 +- src/common/interfaces.ts | 10 +- src/common/testMocks.ts | 232 ++++++++++++++++++ src/components/GameComponent.vue | 4 +- src/components/MatchConfiguration.vue | 28 ++- .../layouts/AuthenticatedLayout.vue | 104 +++++++- src/game/Board.ts | 20 +- src/game/Button.ts | 132 ++++++++++ src/game/Game.ts | 125 +++++++--- src/game/GameSummayView.ts | 59 ++--- src/game/Hand.ts | 83 +++++-- src/game/TimedButton.ts | 49 ++++ src/game/TimerText.ts | 93 +++++++ src/game/utilities/SoundManager.ts | 60 +++++ src/game/utilities/Timer.ts | 35 +++ src/game/utilities/assets.ts | 24 +- src/game/utilities/fonts.ts | 8 + src/main.ts | 9 + src/router/index.ts | 146 ++++++----- src/services/AuthenticationService.ts | 35 +-- src/services/InfoService.ts | 8 + src/services/LocalStorageService.ts | 8 + src/services/NetworkService.ts | 50 ++-- src/services/PersistenceService.ts | 14 +- src/services/SocketIoClientService.ts | 8 + src/services/StorageInterface.ts | 2 + src/services/TauriFileStorageService.ts | 51 ++-- src/stores/auth.ts | 2 +- src/views/HomeView.vue | 38 ++- src/views/LandingView.vue | 7 - src/views/TestView.vue | 81 ++++++ 45 files changed, 1364 insertions(+), 353 deletions(-) create mode 100644 src/assets/images/profile-stub.png create mode 100644 src/assets/sounds/button_click.wav create mode 100644 src/assets/sounds/ding-1.wav create mode 100644 src/common/errors/ErrorBase.ts create mode 100644 src/common/errors/SessionExpiredError.ts create mode 100644 src/common/testMocks.ts create mode 100644 src/game/Button.ts create mode 100644 src/game/TimedButton.ts create mode 100644 src/game/TimerText.ts create mode 100644 src/game/utilities/SoundManager.ts create mode 100644 src/game/utilities/Timer.ts create mode 100644 src/services/InfoService.ts create mode 100644 src/views/TestView.vue diff --git a/.hmrc b/.hmrc index 3ca1daa..9c0ca84 100644 --- a/.hmrc +++ b/.hmrc @@ -2,7 +2,7 @@ "path": "G:\\Other\\Development\\Projects\\[ideas]\\domino-client", "name": "domino-client", "initialVersion": "0.1.4", - "version": "0.1.12", + "version": "0.2.0", "docker": { "useRegistry": true, "registry": "192.168.1.115:5000", @@ -84,7 +84,7 @@ }, "_backup": { "name": "domino-client", - "version": "0.1.11", + "version": "0.1.12", "private": true, "type": "commonjs", "scripts": { @@ -97,8 +97,8 @@ "lint": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts --fix --ignore-path .gitignore", "format": "prettier --write src/", "docker-build": "docker build -t 192.168.1.115:5000/arhuako/domino-client:latest .", - "docker-tag": "docker tag 192.168.1.115:5000/arhuako/domino-client:latest 192.168.1.115:5000/arhuako/domino-client:0.1.11", - "docker-push": "docker push 192.168.1.115:5000/arhuako/domino-client:latest && docker push 192.168.1.115:5000/arhuako/domino-client:0.1.11", + "docker-tag": "docker tag 192.168.1.115:5000/arhuako/domino-client:latest 192.168.1.115:5000/arhuako/domino-client:0.1.12", + "docker-push": "docker push 192.168.1.115:5000/arhuako/domino-client:latest && docker push 192.168.1.115:5000/arhuako/domino-client:0.1.12", "publish": "npm run docker-build && npm run docker-tag && npm run docker-push", "serve": "npm run build-only && http-server ./dist -c-1 -s ", "tauri": "tauri" @@ -109,6 +109,7 @@ "bulma": "^1.0.1", "colorette": "^2.0.20", "dayjs": "^1.11.11", + "gsap": "^3.12.5", "pinia": "^2.1.7", "pino": "^9.2.0", "pixi-actions": "^1.1.11", diff --git a/CHANGELOG.md b/CHANGELOG.md index 6246923..e25546c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,18 +1,41 @@ # Changelog + All notable changes to this project will be documented in this file. ## Unreleased -## 0.1.12 - 2024-07-22 +## 0.2.0 - 2024-07-25 + ### Added + +- session expiration and renew handling +- Allow unique session per user +- Socket.io room management +- Game: added turn waiting timer +- Game: added timed button on game summaries +- Added new header +- New sound library (Howlerjs) + +### Fixed + +- App data persistance +- Some other Fixes + +## 0.1.12 - 2024-07-22 + +### Added + - I18n translations - Win conditions ### Fixed + - Multiplayer join button not accessible ## 0.1.10 - 2024-07-20 + ### Added + - Updater - Refresh authentication when expires - Match summary page phase 1 @@ -26,11 +49,14 @@ All notable changes to this project will be documented in this file. ## 0.1.6 - 2024-07-17 ## 0.1.5 - 2024-07-17 + ### Added + - Initial commit - Match page back button - Team play - Movement synchronized netween clients and AI players ### Fixed + - Button statuses diff --git a/index.html b/index.html index ba7e567..10ecc99 100644 --- a/index.html +++ b/index.html @@ -7,9 +7,7 @@ XXX App -
-
-
+
diff --git a/package-lock.json b/package-lock.json index b2324d0..6eb408b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,18 +1,20 @@ { "name": "domino-client", - "version": "0.1.8", + "version": "0.2.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "domino-client", - "version": "0.1.8", + "version": "0.2.0", "dependencies": { "@pixi/sound": "^6.0.0", "@tauri-apps/api": "^1.6.0", "bulma": "^1.0.1", "colorette": "^2.0.20", "dayjs": "^1.11.11", + "gsap": "^3.12.5", + "howler": "^2.2.4", "pinia": "^2.1.7", "pino": "^9.2.0", "pixi-actions": "^1.1.11", @@ -28,6 +30,7 @@ "@rushstack/eslint-patch": "^1.8.0", "@tauri-apps/cli": "^1.6.0", "@tsconfig/node20": "^20.1.4", + "@types/howler": "^2.2.11", "@types/jsdom": "^21.1.7", "@types/node": "^20.14.5", "@vitejs/plugin-vue": "^5.0.5", @@ -1194,6 +1197,12 @@ "resolved": "https://registry.npmjs.org/@types/gradient-parser/-/gradient-parser-0.1.5.tgz", "integrity": "sha512-r7K3NkJz3A95WkVVmjs0NcchhHstC2C/VIYNX4JC6tieviUNo774FFeOHjThr3Vw/WCeMP9kAT77MKbIRlO/4w==" }, + "node_modules/@types/howler": { + "version": "2.2.11", + "resolved": "https://registry.npmjs.org/@types/howler/-/howler-2.2.11.tgz", + "integrity": "sha512-7aBoUL6RbSIrqKnpEgfa1wSNUBK06mn08siP2QI0zYk7MXfEJAaORc4tohamQYqCqVESoDyRWSdQn2BOKWj2Qw==", + "dev": true + }, "node_modules/@types/jsdom": { "version": "21.1.7", "resolved": "https://registry.npmjs.org/@types/jsdom/-/jsdom-21.1.7.tgz", @@ -3182,6 +3191,11 @@ "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", "dev": true }, + "node_modules/gsap": { + "version": "3.12.5", + "resolved": "https://registry.npmjs.org/gsap/-/gsap-3.12.5.tgz", + "integrity": "sha512-srBfnk4n+Oe/ZnMIOXt3gT605BX9x5+rh/prT2F1SsNJsU1XuMiP0E2aptW481OnonOGACZWBqseH5Z7csHxhQ==" + }, "node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -3248,6 +3262,11 @@ "he": "bin/he" } }, + "node_modules/howler": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/howler/-/howler-2.2.4.tgz", + "integrity": "sha512-iARIBPgcQrwtEr+tALF+rapJ8qSc+Set2GJQl7xT1MQzWaVkFebdJhR3alVlSiUf5U7nAANKuj3aWpwerocD5w==" + }, "node_modules/html-encoding-sniffer": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-4.0.0.tgz", diff --git a/package.json b/package.json index 335d568..eb2a134 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "domino-client", - "version": "0.1.12", + "version": "0.2.0", "private": true, "type": "commonjs", "scripts": { @@ -13,8 +13,8 @@ "lint": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts --fix --ignore-path .gitignore", "format": "prettier --write src/", "docker-build": "docker build -t 192.168.1.115:5000/arhuako/domino-client:latest .", - "docker-tag": "docker tag 192.168.1.115:5000/arhuako/domino-client:latest 192.168.1.115:5000/arhuako/domino-client:0.1.12", - "docker-push": "docker push 192.168.1.115:5000/arhuako/domino-client:latest && docker push 192.168.1.115:5000/arhuako/domino-client:0.1.12", + "docker-tag": "docker tag 192.168.1.115:5000/arhuako/domino-client:latest 192.168.1.115:5000/arhuako/domino-client:0.2.0", + "docker-push": "docker push 192.168.1.115:5000/arhuako/domino-client:latest && docker push 192.168.1.115:5000/arhuako/domino-client:0.2.0", "publish": "npm run docker-build && npm run docker-tag && npm run docker-push", "serve": "npm run build-only && http-server ./dist -c-1 -s ", "tauri": "tauri" @@ -25,6 +25,8 @@ "bulma": "^1.0.1", "colorette": "^2.0.20", "dayjs": "^1.11.11", + "gsap": "^3.12.5", + "howler": "^2.2.4", "pinia": "^2.1.7", "pino": "^9.2.0", "pixi-actions": "^1.1.11", @@ -40,6 +42,7 @@ "@rushstack/eslint-patch": "^1.8.0", "@tauri-apps/cli": "^1.6.0", "@tsconfig/node20": "^20.1.4", + "@types/howler": "^2.2.11", "@types/jsdom": "^21.1.7", "@types/node": "^20.14.5", "@vitejs/plugin-vue": "^5.0.5", diff --git a/public/CHANGELOG.html b/public/CHANGELOG.html index 6dbe356..d9e3678 100644 --- a/public/CHANGELOG.html +++ b/public/CHANGELOG.html @@ -1,5 +1,19 @@

Changelog

All notable changes to this project will be documented in this file.

+

0.2.0 - 2024-07-24

+

Added

+ +

Fixed

+

0.1.12 - 2024-07-22

Added