Commit Graph

90 Commits

Author SHA1 Message Date
c884494618 React: make Poll into a hook 2023-10-19 15:20:18 +02:00
5821a02ba1 React: GlobalState updates
Remove DataCtx dependacy on AppCtx
2023-10-19 14:39:43 +02:00
efd7127575 react: GlobalState: data, appCtx + polling feature
- Polling
 - time beased URI polling
 - can be diabled

- GlobaState
 - utilizes Flux pattern
 - data:
    for storing data for UI to work with
 - appData:
    for string global UI state

- major refactoring
2023-10-18 17:20:37 +02:00
fa29d2a631 ammend 2023-10-14 20:24:26 +02:00
fdf227bf19 front: gp: better listItems
- show opponent stone and my stone in actial colors
2023-10-14 20:12:31 +02:00
b3d7ab3e75 springboot: rename GameState to GameView
- update tests to use myColor instead of opponentColor
2023-10-14 19:03:46 +02:00
5f23c4c766 corda: GameView change opponentColor to myColor 2023-10-14 18:33:58 +02:00
b34335cefc front: show action button only for onHover elemnt 2023-10-14 11:59:05 +02:00
8cac7533dd front: js readability 2023-10-14 10:43:44 +02:00
c8480c3937 gameproposal: move game.message color to css 2023-10-14 10:06:13 +02:00
72daeddb9d front: gamestate polling + gameproposal tab
- gamestate controller
- css for gameproposal tab
2023-10-14 10:01:20 +02:00
6c885bfa68 front: centr align for Leaderboard 2023-10-11 14:11:31 +02:00
03b983aafd front: basic routing
- create some components
- update a bit of npm packages
2023-10-11 13:16:27 +02:00
992a1f3a23 front: leaderboard 2023-10-11 10:36:29 +02:00
5168e38710 DRAW: request, accept, reject
- tests for draw
- ranking updates, to suuport draw results
- replaca GameCommand.getCounterparty() with
  GameState.getOpponent(myName)
  makes code much readable and maintainable
- uuid check in a contract
- better exception handling in corda flows
2023-10-04 10:51:36 +02:00
5589c8ebe6 tests for gameStateList() and gameStateGet() 2023-10-03 10:01:58 +02:00
7fe2898eef Ranking: use Map instead of List 2023-10-02 19:27:12 +02:00
f9f6920512 Intial board config for GameProposalCreate
- victory tests without hardcode
- better server logs
- unmodifiable getters for game board
- totalMoves counter for GameResult
2023-10-02 13:54:38 +02:00
07ce05bf01 Rename Bob to Bobik
- rename Repository vNode
- cluster topology: better vnodes lookup
2023-10-02 11:23:16 +02:00
d58a89e3b3 Lazy victoryTest
- cordaClient maxPollAttempts config
- bugfix in Move.canMove()
- GameBoardContract must validate victory conndition as well
2023-10-01 15:58:05 +02:00
e3ca1e0fc0 GameBoard VicrotyFlow
- better error messages
- moar GameMove tests
- a vicotry condition check
- GameContract
  + participnats vaidation
  + more accure Major Action checks
- automaic Vicotry condition check for Move flow
- GameResultCommiter as a sub flow
2023-10-01 14:13:52 +02:00
eb1e7fd93c GameInfo
a simple source of truth about UtxoGameState transaction for
- ViewBuilder
- CommitSubFlowResponder
2023-09-30 20:09:25 +02:00
729384fb62 chain jump 2023-09-29 19:07:54 +02:00
8affa353da move: mandatory capture 2023-09-29 13:59:34 +02:00
7d26dca752 add prohibited move checks 2023-09-29 11:29:46 +02:00
58da85a5fd final 2023-09-27 17:28:54 +02:00
162e5c97dc rename 2023-09-27 17:27:03 +02:00
a9ffd4b0b9 Checkers move rules improved 2023-09-27 17:25:30 +02:00
9cbeaceca9 Checkers move rules 2023-09-27 17:02:31 +02:00
9144683de3 rename Piece to Stone 2023-09-27 11:35:49 +02:00
1f2ff242e4 GameBoard: naive MOVE implementation 2023-09-25 15:13:27 +02:00
8971462c74 GameResultBuilder subflow
- looks for custodian and add it to the State participants
- extra parameter to Commit subflow
 to initiate exchange session with Custodian as well
2023-09-22 21:39:42 +02:00
e1cc9bd9fd RankingFLow: use actual GameResultStates 2023-09-22 17:23:06 +02:00
5f59260120 ammend 2023-09-22 16:07:54 +02:00
fe1708ad32 Draft: RankingFlow +Test 2023-09-22 16:07:44 +02:00
74176ecf45 HoldingIdentityResolver Test 2023-09-22 14:55:53 +02:00
ada353ce2f HoldingIdentity Tests 2023-09-22 14:45:37 +02:00
d3f5499ad8 CordaCheckers CPI 2023-09-22 13:07:25 +02:00
2a026de472 minor cleanup 2023-09-21 23:15:57 +02:00
9004e8a408 GameStates refactoring 2023-09-21 22:59:21 +02:00
959ea0051d Major refactoring
- abstract GameState as a base class for
  + GameProposale
  + GameBoard
  + GameResult

- GameView persepective approach
  as result significant downplay of DTO classes

- single GameCommand
- single transaction Commit flow with dedicated responder
- extensive use of orchestartion code flow pattern
2023-09-21 16:21:58 +02:00
dc702f7584 GameState
a base state class for GameProposal, GameBoard and GameResult

also will be used as a base building block for GameBoardView
2023-09-18 13:33:49 +02:00
bd6612f3e6 GameUuid as a part of GameState interface 2023-09-18 11:34:12 +02:00
e26cfe0d91 GameID
a universal ID shared between GameProposal, GameBoard and a GameResult
2023-09-18 10:49:06 +02:00
a34ea39dfb GameBoard command SURRENDER
- produces GameResultState
- .addReferanceState() was changed with Opponent interface for States
2023-09-15 15:43:31 +02:00
d7b6ce1f25 Corda: UtxoTrxCandidate validation
validation logic shall be stored in Command class,
which is invoced by Contract class
2023-09-13 20:54:40 +02:00
a836d14fbd GamePrposal: Accept to return GameBoard 2023-09-13 18:54:19 +02:00
4c2569810a GameBoard SURRENDER update
- UtxoLedgerTrxUtil with option
- rename action to command
- lots of minor refectorings
2023-09-13 15:01:01 +02:00
d9b885b550 corda: cleanup 2023-09-13 12:51:14 +02:00
fee93a2b10 Corda: UtxoLedgerTransactionUtil helper class 2023-09-12 18:56:07 +02:00