valtech-components 4.0.440 → 4.0.442
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/components/organisms/mini-games/bubble-blitz-game.component.mjs +18 -9
- package/esm2022/lib/components/organisms/mini-games/chessimals-engine.mjs +109 -16
- package/esm2022/lib/components/organisms/mini-games/chessimals-game.component.mjs +22 -540
- package/esm2022/lib/components/organisms/mini-games/christianity-game.component.mjs +1385 -0
- package/esm2022/lib/components/organisms/mini-games/memory-game.component.mjs +18 -9
- package/esm2022/lib/components/organisms/mini-games/mini-games.i18n.mjs +149 -89
- package/esm2022/lib/components/organisms/mini-games/simon-game.component.mjs +18 -9
- package/esm2022/lib/components/organisms/mini-games/types.mjs +1 -1
- package/esm2022/lib/directives/light-ripple.directive.mjs +57 -0
- package/esm2022/lib/version.mjs +2 -2
- package/esm2022/mini-games/public-api.mjs +34 -2
- package/esm2022/public-api.mjs +3 -1
- package/fesm2022/valtech-components-mini-games.mjs +34 -2
- package/fesm2022/valtech-components-mini-games.mjs.map +1 -1
- package/fesm2022/valtech-components.mjs +1766 -807
- package/fesm2022/valtech-components.mjs.map +1 -1
- package/lib/components/organisms/mini-games/bubble-blitz-game.component.d.ts +2 -0
- package/lib/components/organisms/mini-games/chessimals-game.component.d.ts +4 -36
- package/lib/components/organisms/mini-games/christianity-game.component.d.ts +101 -0
- package/lib/components/organisms/mini-games/memory-game.component.d.ts +2 -0
- package/lib/components/organisms/mini-games/simon-game.component.d.ts +2 -0
- package/lib/components/organisms/mini-games/types.d.ts +65 -57
- package/lib/directives/light-ripple.directive.d.ts +8 -0
- package/lib/version.d.ts +1 -1
- package/mini-games/public-api.d.ts +4 -0
- package/package.json +2 -1
- package/public-api.d.ts +2 -0
- package/src/lib/services/firebase/scripts/generate-sw-config.js +0 -0
- package/esm2022/lib/components/organisms/mini-games/chessimals-challenge-progress.service.mjs +0 -145
- package/lib/components/organisms/mini-games/chessimals-challenge-progress.service.d.ts +0 -30
|
@@ -44,6 +44,7 @@ export declare class BubbleBlitzGameComponent implements OnDestroy {
|
|
|
44
44
|
readonly animating: import("@angular/core").WritableSignal<boolean>;
|
|
45
45
|
readonly leaderboard: import("@angular/core").WritableSignal<BubbleLeaderboardEntry[]>;
|
|
46
46
|
readonly confirmAction: import("@angular/core").WritableSignal<BubbleConfirmAction>;
|
|
47
|
+
private readonly confirmedAction;
|
|
47
48
|
readonly config: import("@angular/core").Signal<BubbleBlitzModeConfig>;
|
|
48
49
|
readonly feverReady: import("@angular/core").Signal<boolean>;
|
|
49
50
|
readonly feverProgress: import("@angular/core").Signal<number>;
|
|
@@ -73,6 +74,7 @@ export declare class BubbleBlitzGameComponent implements OnDestroy {
|
|
|
73
74
|
requestChangeMode(): void;
|
|
74
75
|
requestChangeGame(): void;
|
|
75
76
|
closeConfirmModal(): void;
|
|
77
|
+
handleConfirmModalDismissed(): void;
|
|
76
78
|
confirmPendingAction(token?: string): void;
|
|
77
79
|
private startTimer;
|
|
78
80
|
private stopTimer;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { OnDestroy, OnInit } from '@angular/core';
|
|
2
2
|
import { FormControl } from '@angular/forms';
|
|
3
|
-
import { ChessimalsAnimalType, ChessimalsBotDifficulty, ChessimalsBotProfile, ChessimalsBotProfileId, ChessimalsBoardSize,
|
|
3
|
+
import { ChessimalsAnimalType, ChessimalsBotDifficulty, ChessimalsBotProfile, ChessimalsBotProfileId, ChessimalsBoardSize, ChessimalsGameState, ChessimalsHistoryEntry, ChessimalsLocalMode, ChessimalsMove, ChessimalsPiece, ChessimalsPlayerColor, ChessimalsPosition } from './types';
|
|
4
4
|
import { RangeInputMetadata, RangeValue } from '../../molecules/range-input/types';
|
|
5
5
|
import { ToggleInputMetadata } from '../../molecules/toggle-input/types';
|
|
6
6
|
import { UserAvatarMetadata } from '../../atoms/user-avatar/types';
|
|
@@ -13,7 +13,6 @@ interface ChessimalsAnimalView {
|
|
|
13
13
|
}
|
|
14
14
|
type ChessimalsConfirmAction = 'restart' | 'mode' | 'games' | 'resign';
|
|
15
15
|
type ChessimalsRematchState = 'none' | 'requested' | 'incoming';
|
|
16
|
-
type ChessimalsChallengePhase = 'idle' | 'playing' | 'between' | 'completed' | 'failed';
|
|
17
16
|
interface ChessimalsMovingPieceView {
|
|
18
17
|
color: ChessimalsPlayerColor;
|
|
19
18
|
fromRow: number;
|
|
@@ -39,7 +38,6 @@ export declare class ChessimalsGameComponent implements OnInit, OnDestroy {
|
|
|
39
38
|
private readonly i18n;
|
|
40
39
|
private readonly audio;
|
|
41
40
|
private readonly online;
|
|
42
|
-
private readonly challengeProgress;
|
|
43
41
|
private readonly router;
|
|
44
42
|
private readonly toast;
|
|
45
43
|
private readonly auth;
|
|
@@ -52,8 +50,6 @@ export declare class ChessimalsGameComponent implements OnInit, OnDestroy {
|
|
|
52
50
|
private readonly routeSubscription;
|
|
53
51
|
private onlineSubscription;
|
|
54
52
|
private historySubscription;
|
|
55
|
-
private challengeStatsSubscription;
|
|
56
|
-
private challengeRunsSubscription;
|
|
57
53
|
private historyUid;
|
|
58
54
|
private historyWatchTimer;
|
|
59
55
|
private moveEffectStartTimer;
|
|
@@ -63,15 +59,13 @@ export declare class ChessimalsGameComponent implements OnInit, OnDestroy {
|
|
|
63
59
|
private openingOnlineGameId;
|
|
64
60
|
private openedOnlineGameId;
|
|
65
61
|
private lastOutcomeSoundKey;
|
|
66
|
-
private lastChallengeHandledKey;
|
|
67
62
|
private boardAnchor?;
|
|
68
63
|
readonly boardSizes: ChessimalsBoardSize[];
|
|
69
64
|
readonly localModes: ChessimalsLocalMode[];
|
|
70
65
|
readonly botDifficulties: ChessimalsBotDifficulty[];
|
|
71
66
|
readonly botProfiles: ChessimalsBotProfile[];
|
|
72
|
-
readonly challengeLadder: ChessimalsChallengeBot[];
|
|
73
67
|
readonly animals: ChessimalsAnimalView[];
|
|
74
|
-
readonly valtechComponentsVersion = "4.0.
|
|
68
|
+
readonly valtechComponentsVersion = "4.0.442";
|
|
75
69
|
readonly screen: import("@angular/core").WritableSignal<"home" | "game">;
|
|
76
70
|
readonly selectedBoardSize: import("@angular/core").WritableSignal<ChessimalsBoardSize>;
|
|
77
71
|
readonly selectedLocalMode: import("@angular/core").WritableSignal<ChessimalsLocalMode>;
|
|
@@ -79,14 +73,6 @@ export declare class ChessimalsGameComponent implements OnInit, OnDestroy {
|
|
|
79
73
|
readonly selectedBotProfileId: import("@angular/core").WritableSignal<ChessimalsBotProfileId>;
|
|
80
74
|
readonly gameBotProfileId: import("@angular/core").WritableSignal<ChessimalsBotProfileId>;
|
|
81
75
|
readonly game: import("@angular/core").WritableSignal<ChessimalsGameState>;
|
|
82
|
-
readonly challengePhase: import("@angular/core").WritableSignal<ChessimalsChallengePhase>;
|
|
83
|
-
readonly challengeRun: import("@angular/core").WritableSignal<ChessimalsChallengeRun>;
|
|
84
|
-
readonly challengeStats: import("@angular/core").WritableSignal<ChessimalsChallengeStats>;
|
|
85
|
-
readonly challengeHistory: import("@angular/core").WritableSignal<ChessimalsChallengeRun[]>;
|
|
86
|
-
readonly challengeLastWon: import("@angular/core").WritableSignal<boolean>;
|
|
87
|
-
readonly challengeLastBot: import("@angular/core").WritableSignal<ChessimalsChallengeBot>;
|
|
88
|
-
readonly challengeLastRoundStats: import("@angular/core").WritableSignal<ChessimalsChallengeRoundStats>;
|
|
89
|
-
readonly challengeNewRecord: import("@angular/core").WritableSignal<boolean>;
|
|
90
76
|
readonly selectedPieceId: import("@angular/core").WritableSignal<string>;
|
|
91
77
|
readonly selectedAnimal: import("@angular/core").WritableSignal<ChessimalsAnimalType>;
|
|
92
78
|
readonly isRulesModalOpen: import("@angular/core").WritableSignal<boolean>;
|
|
@@ -100,6 +86,7 @@ export declare class ChessimalsGameComponent implements OnInit, OnDestroy {
|
|
|
100
86
|
readonly moveTrail: import("@angular/core").Signal<ChessimalsMoveTrailView>;
|
|
101
87
|
readonly botThinking: import("@angular/core").WritableSignal<boolean>;
|
|
102
88
|
readonly confirmAction: import("@angular/core").WritableSignal<ChessimalsConfirmAction>;
|
|
89
|
+
private readonly confirmedAction;
|
|
103
90
|
readonly onlineJoinCode: import("@angular/core").WritableSignal<string>;
|
|
104
91
|
readonly onlineLoading: import("@angular/core").WritableSignal<boolean>;
|
|
105
92
|
readonly onlineAction: import("@angular/core").WritableSignal<"create" | "join" | "accept" | "reject">;
|
|
@@ -128,7 +115,6 @@ export declare class ChessimalsGameComponent implements OnInit, OnDestroy {
|
|
|
128
115
|
readonly availableBotProfiles: import("@angular/core").Signal<ChessimalsBotProfile[]>;
|
|
129
116
|
readonly selectedBotProfile: import("@angular/core").Signal<ChessimalsBotProfile>;
|
|
130
117
|
readonly gameBotProfile: import("@angular/core").Signal<ChessimalsBotProfile>;
|
|
131
|
-
readonly activeChallengeBot: import("@angular/core").Signal<ChessimalsChallengeBot>;
|
|
132
118
|
set onlineGameId(value: string | null | undefined);
|
|
133
119
|
miniGamesRoute: string;
|
|
134
120
|
projectionMode: boolean;
|
|
@@ -200,12 +186,7 @@ export declare class ChessimalsGameComponent implements OnInit, OnDestroy {
|
|
|
200
186
|
protected t(key: string): string;
|
|
201
187
|
private shortUserId;
|
|
202
188
|
private rangeValueToNumber;
|
|
203
|
-
startChallenge(): void;
|
|
204
|
-
continueChallenge(): void;
|
|
205
|
-
private startChallengeRound;
|
|
206
189
|
startGame(): void;
|
|
207
|
-
private handleChallengeRoundFinished;
|
|
208
|
-
private abandonChallengeIfNeeded;
|
|
209
190
|
startTutorial(): void;
|
|
210
191
|
createOnlineGame(): Promise<void>;
|
|
211
192
|
joinOnlineGameByCode(): Promise<void>;
|
|
@@ -220,6 +201,7 @@ export declare class ChessimalsGameComponent implements OnInit, OnDestroy {
|
|
|
220
201
|
requestChangeGame(): void;
|
|
221
202
|
requestResign(): void;
|
|
222
203
|
closeConfirmModal(): void;
|
|
204
|
+
handleConfirmModalDismissed(): void;
|
|
223
205
|
confirmPendingAction(token?: string): void;
|
|
224
206
|
private resignGame;
|
|
225
207
|
openRulesModal(): void;
|
|
@@ -311,7 +293,6 @@ export declare class ChessimalsGameComponent implements OnInit, OnDestroy {
|
|
|
311
293
|
requestOnlineRematch(): Promise<void>;
|
|
312
294
|
private queueHistoryWatch;
|
|
313
295
|
private watchOnlineHistory;
|
|
314
|
-
private watchChallengeStats;
|
|
315
296
|
unlockedLabel(color: ChessimalsPlayerColor): string;
|
|
316
297
|
localModeLabel(mode: ChessimalsLocalMode): string;
|
|
317
298
|
localModeDescription(mode: ChessimalsLocalMode): string;
|
|
@@ -320,19 +301,6 @@ export declare class ChessimalsGameComponent implements OnInit, OnDestroy {
|
|
|
320
301
|
botProfileLabel(profile: ChessimalsBotProfile): string;
|
|
321
302
|
botProfileDescription(profile: ChessimalsBotProfile): string;
|
|
322
303
|
botProfileTendency(profile: ChessimalsBotProfile): string;
|
|
323
|
-
botProfileAvatar(profileId: ChessimalsBotProfileId): string;
|
|
324
|
-
challengeOpeningBot(): ChessimalsChallengeBot;
|
|
325
|
-
challengeBotName(bot: ChessimalsChallengeBot): string;
|
|
326
|
-
challengeRunStatusLabel(run: ChessimalsChallengeRun): string;
|
|
327
|
-
challengeRunLine(run: ChessimalsChallengeRun): string;
|
|
328
|
-
isChallengeActive(): boolean;
|
|
329
|
-
challengeRoundLabel(): string;
|
|
330
|
-
challengeLivesLabel(): string;
|
|
331
|
-
challengeOutcomeTitle(): string;
|
|
332
|
-
challengeOutcomeBody(): string;
|
|
333
|
-
challengeHasNewRecord(): boolean;
|
|
334
|
-
totalChallengePowers(stats?: ChessimalsChallengeRoundStats): number;
|
|
335
|
-
private createChallengeRoundStats;
|
|
336
304
|
animalLabel(type: ChessimalsAnimalType): string;
|
|
337
305
|
canReviewPrevious(): boolean;
|
|
338
306
|
canReviewNext(): boolean;
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { CdkDrag, CdkDragDrop } from '@angular/cdk/drag-drop';
|
|
2
|
+
import { ChristianityCardDefinition, ChristianityCharacterInstance, ChristianityGameState, ChristianityOfferingInstance, ChristianityPlayerState, ChristianitySeat } from './types';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
interface ChristianityCardPreview {
|
|
5
|
+
title: string;
|
|
6
|
+
eyebrow: string;
|
|
7
|
+
meta: string;
|
|
8
|
+
body: string;
|
|
9
|
+
cardId?: string;
|
|
10
|
+
source?: 'hand' | 'board' | 'pile';
|
|
11
|
+
}
|
|
12
|
+
interface ChristianityPreviewTilt {
|
|
13
|
+
rotateX: number;
|
|
14
|
+
rotateY: number;
|
|
15
|
+
shiftX: number;
|
|
16
|
+
shiftY: number;
|
|
17
|
+
}
|
|
18
|
+
export declare class ChristianityGameComponent {
|
|
19
|
+
private i18n;
|
|
20
|
+
protected readonly game: import("@angular/core").WritableSignal<ChristianityGameState>;
|
|
21
|
+
protected readonly selectedHandCard: import("@angular/core").WritableSignal<string>;
|
|
22
|
+
protected readonly selectedAttacker: import("@angular/core").WritableSignal<ChristianityCharacterInstance>;
|
|
23
|
+
protected readonly selectedPreview: import("@angular/core").WritableSignal<ChristianityCardPreview>;
|
|
24
|
+
protected readonly previewTilt: import("@angular/core").WritableSignal<ChristianityPreviewTilt>;
|
|
25
|
+
protected readonly hoveredHandIndex: import("@angular/core").WritableSignal<number>;
|
|
26
|
+
protected readonly draggingCardId: import("@angular/core").WritableSignal<string>;
|
|
27
|
+
protected readonly showHistory: import("@angular/core").WritableSignal<boolean>;
|
|
28
|
+
protected readonly offeringsSeat: import("@angular/core").WritableSignal<ChristianitySeat>;
|
|
29
|
+
protected readonly canDropOnBattleSlot: (drag: CdkDrag<string>) => boolean;
|
|
30
|
+
protected readonly canDropOnOfferings: (drag: CdkDrag<string>) => boolean;
|
|
31
|
+
protected readonly player: import("@angular/core").Signal<ChristianityPlayerState>;
|
|
32
|
+
protected readonly opponent: import("@angular/core").Signal<ChristianityPlayerState>;
|
|
33
|
+
protected readonly currentPlayer: import("@angular/core").Signal<ChristianityPlayerState>;
|
|
34
|
+
protected readonly isOwnTurn: import("@angular/core").Signal<boolean>;
|
|
35
|
+
protected readonly hasOpponentGuards: import("@angular/core").Signal<boolean>;
|
|
36
|
+
protected readonly opponentHandCount: import("@angular/core").Signal<number>;
|
|
37
|
+
protected readonly selectedCardDefinition: import("@angular/core").Signal<ChristianityCardDefinition>;
|
|
38
|
+
protected readonly statusText: import("@angular/core").Signal<string>;
|
|
39
|
+
constructor();
|
|
40
|
+
protected t(key: string): string;
|
|
41
|
+
protected cardDefinition(cardId: string): ChristianityCardDefinition;
|
|
42
|
+
protected battleSlots(seat: ChristianitySeat): Array<{
|
|
43
|
+
trackId: string;
|
|
44
|
+
card?: ChristianityCharacterInstance;
|
|
45
|
+
}>;
|
|
46
|
+
protected battleSlotDropId(index: number): string;
|
|
47
|
+
protected dropTargetIds(): string[];
|
|
48
|
+
protected hiddenHandCards(count: number): unknown[];
|
|
49
|
+
protected fanTransform(index: number, total: number, opponent: boolean): string;
|
|
50
|
+
protected handCardZIndex(index: number): number;
|
|
51
|
+
protected setHoveredHandIndex(index: number): void;
|
|
52
|
+
protected clearHoveredHandIndex(): void;
|
|
53
|
+
protected releaseHoveredHand(event: PointerEvent): void;
|
|
54
|
+
private handWaveLift;
|
|
55
|
+
private handWaveScale;
|
|
56
|
+
protected readyOfferings(player: ChristianityPlayerState): number;
|
|
57
|
+
protected totalOfferings(player: ChristianityPlayerState): number;
|
|
58
|
+
protected canPlay(card: ChristianityCardDefinition): boolean;
|
|
59
|
+
protected canPlaySelected(): boolean;
|
|
60
|
+
protected selectedActionLabel(): string;
|
|
61
|
+
protected selectedActionDisabled(): boolean;
|
|
62
|
+
protected previewActionDisabled(): boolean;
|
|
63
|
+
protected canPlaceSelectedCharacter(): boolean;
|
|
64
|
+
protected canPlaceSelectedOffering(): boolean;
|
|
65
|
+
protected isDraggingCharacter(): boolean;
|
|
66
|
+
protected isDraggingOffering(): boolean;
|
|
67
|
+
protected startDraggingCard(cardId: string): void;
|
|
68
|
+
protected endDraggingCard(): void;
|
|
69
|
+
protected dropOnBattleSlot(event: CdkDragDrop<number, unknown, string>, slotIndex: number): void;
|
|
70
|
+
protected dropOnOfferings(event: CdkDragDrop<unknown, unknown, string>): void;
|
|
71
|
+
protected selectHandCard(cardId: string): void;
|
|
72
|
+
protected playSelectedCard(slotIndex?: number): void;
|
|
73
|
+
protected playCardFromHand(cardId: string, slotIndex?: number): void;
|
|
74
|
+
protected playPreviewCard(): void;
|
|
75
|
+
protected handleOfferingPile(seat: ChristianitySeat): void;
|
|
76
|
+
protected selectAttacker(card: ChristianityCharacterInstance): void;
|
|
77
|
+
protected handleOpponentCharacter(card: ChristianityCharacterInstance): void;
|
|
78
|
+
protected handleOpponentLeader(): void;
|
|
79
|
+
protected attackLeader(): void;
|
|
80
|
+
protected attackCharacter(target: ChristianityCharacterInstance): void;
|
|
81
|
+
protected endTurn(): void;
|
|
82
|
+
protected resetMock(): void;
|
|
83
|
+
protected closePreview(): void;
|
|
84
|
+
protected openOfferings(seat: ChristianitySeat): void;
|
|
85
|
+
protected closeOfferings(): void;
|
|
86
|
+
protected tiltPreview(event: PointerEvent): void;
|
|
87
|
+
protected resetPreviewTilt(): void;
|
|
88
|
+
private cleanupDestroyed;
|
|
89
|
+
protected inspectLeader(seat: ChristianitySeat): void;
|
|
90
|
+
protected inspectOffering(offering: ChristianityOfferingInstance): void;
|
|
91
|
+
protected canUseOfferingAbility(offering: ChristianityOfferingInstance, seat: ChristianitySeat): boolean;
|
|
92
|
+
protected useOfferingAbility(offering: ChristianityOfferingInstance, seat: ChristianitySeat): void;
|
|
93
|
+
protected inspectDeck(): void;
|
|
94
|
+
protected inspectHandCard(cardId: string, fromHand?: boolean): void;
|
|
95
|
+
protected inspectHistoryCard(cardId: string): void;
|
|
96
|
+
private inspectCharacter;
|
|
97
|
+
private spendOfferings;
|
|
98
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ChristianityGameComponent, never>;
|
|
99
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ChristianityGameComponent, "val-christianity-game", never, {}, {}, never, never, true, never>;
|
|
100
|
+
}
|
|
101
|
+
export {};
|
|
@@ -41,6 +41,7 @@ export declare class MemoryGameComponent implements OnDestroy {
|
|
|
41
41
|
readonly lockBoard: import("@angular/core").WritableSignal<boolean>;
|
|
42
42
|
readonly leaderboard: import("@angular/core").WritableSignal<MemoryLeaderboardEntry[]>;
|
|
43
43
|
readonly confirmAction: import("@angular/core").WritableSignal<MemoryConfirmAction>;
|
|
44
|
+
private readonly confirmedAction;
|
|
44
45
|
private timer?;
|
|
45
46
|
private firstPick?;
|
|
46
47
|
readonly profileConfig: import("@angular/core").Signal<{
|
|
@@ -75,6 +76,7 @@ export declare class MemoryGameComponent implements OnDestroy {
|
|
|
75
76
|
requestChangeMode(): void;
|
|
76
77
|
requestChangeGame(): void;
|
|
77
78
|
closeConfirmModal(): void;
|
|
79
|
+
handleConfirmModalDismissed(): void;
|
|
78
80
|
confirmPendingAction(token?: string): void;
|
|
79
81
|
flip(card: MemoryGameCard): void;
|
|
80
82
|
private startTimer;
|
|
@@ -32,6 +32,7 @@ export declare class SimonGameComponent implements OnDestroy {
|
|
|
32
32
|
readonly activePad: import("@angular/core").WritableSignal<string>;
|
|
33
33
|
readonly leaderboard: import("@angular/core").WritableSignal<SimonLeaderboardEntry[]>;
|
|
34
34
|
readonly confirmAction: import("@angular/core").WritableSignal<SimonConfirmAction>;
|
|
35
|
+
private readonly confirmedAction;
|
|
35
36
|
readonly modeConfig: import("@angular/core").Signal<SimonModeConfig>;
|
|
36
37
|
readonly bestRound: import("@angular/core").Signal<number>;
|
|
37
38
|
readonly modeLeaderboard: import("@angular/core").Signal<SimonLeaderboardEntry[]>;
|
|
@@ -52,6 +53,7 @@ export declare class SimonGameComponent implements OnDestroy {
|
|
|
52
53
|
requestChangeMode(): void;
|
|
53
54
|
requestChangeGame(): void;
|
|
54
55
|
closeConfirmModal(): void;
|
|
56
|
+
handleConfirmModalDismissed(): void;
|
|
55
57
|
confirmPendingAction(token?: string): void;
|
|
56
58
|
tap(pad: SimonPad): void;
|
|
57
59
|
scoreText(entry: SimonLeaderboardEntry): string;
|
|
@@ -52,7 +52,7 @@ export type ChessimalsWinReason = 'promotion' | 'elimination' | 'resignation';
|
|
|
52
52
|
export type ChessimalsGameMode = 'local' | 'online';
|
|
53
53
|
export type ChessimalsLocalMode = 'one-device' | 'bot';
|
|
54
54
|
export type ChessimalsBotDifficulty = 'easy' | 'normal' | 'hard';
|
|
55
|
-
export type ChessimalsBotProfileId = 'explorer' | 'impulsive' | 'runner' | 'hunter' | 'guardian' | 'jumper' | 'strategist' | 'predator' | 'sprinter' | 'sentinel';
|
|
55
|
+
export type ChessimalsBotProfileId = 'explorer' | 'impulsive' | 'runner' | 'hunter' | 'guardian' | 'jumper' | 'strategist' | 'predator' | 'sprinter' | 'sentinel' | 'oracle' | 'ambusher' | 'locksmith' | 'storm' | 'matriarch' | 'endgame';
|
|
56
56
|
export type ChessimalsGameStatus = 'waiting' | 'in_progress' | 'finished' | 'expired';
|
|
57
57
|
export interface ChessimalsBotProfile {
|
|
58
58
|
id: ChessimalsBotProfileId;
|
|
@@ -61,62 +61,6 @@ export interface ChessimalsBotProfile {
|
|
|
61
61
|
labelKey: string;
|
|
62
62
|
descriptionKey: string;
|
|
63
63
|
}
|
|
64
|
-
export type ChessimalsChallengeStatus = 'active' | 'completed' | 'failed' | 'abandoned';
|
|
65
|
-
export interface ChessimalsChallengeBot {
|
|
66
|
-
id: string;
|
|
67
|
-
round: number;
|
|
68
|
-
profileId: ChessimalsBotProfileId;
|
|
69
|
-
difficulty: ChessimalsBotDifficulty;
|
|
70
|
-
boardSize: ChessimalsBoardSize;
|
|
71
|
-
introKey: string;
|
|
72
|
-
}
|
|
73
|
-
export interface ChessimalsChallengeRoundStats {
|
|
74
|
-
powersUsed: Record<ChessimalsAnimalType, number>;
|
|
75
|
-
powerCaptures: number;
|
|
76
|
-
promotions: number;
|
|
77
|
-
captures: number;
|
|
78
|
-
moves: number;
|
|
79
|
-
}
|
|
80
|
-
export interface ChessimalsChallengeRoundResult {
|
|
81
|
-
round: number;
|
|
82
|
-
botId: string;
|
|
83
|
-
profileId: ChessimalsBotProfileId;
|
|
84
|
-
won: boolean;
|
|
85
|
-
livesRemaining: number;
|
|
86
|
-
stats: ChessimalsChallengeRoundStats;
|
|
87
|
-
finishedAt: string;
|
|
88
|
-
}
|
|
89
|
-
export interface ChessimalsChallengeRun {
|
|
90
|
-
id: string;
|
|
91
|
-
userId?: string;
|
|
92
|
-
status: ChessimalsChallengeStatus;
|
|
93
|
-
livesStart: 3;
|
|
94
|
-
livesRemaining: number;
|
|
95
|
-
currentRound: number;
|
|
96
|
-
wins: number;
|
|
97
|
-
losses: number;
|
|
98
|
-
bestStreakInRun: number;
|
|
99
|
-
currentStreak: number;
|
|
100
|
-
botLadder: string[];
|
|
101
|
-
roundResults: ChessimalsChallengeRoundResult[];
|
|
102
|
-
startedAt: string;
|
|
103
|
-
updatedAt: string;
|
|
104
|
-
finishedAt?: string;
|
|
105
|
-
}
|
|
106
|
-
export interface ChessimalsChallengeStats {
|
|
107
|
-
userId?: string;
|
|
108
|
-
challengesPlayed: number;
|
|
109
|
-
challengesCompleted: number;
|
|
110
|
-
bestWinStreak: number;
|
|
111
|
-
bestRoundReached: number;
|
|
112
|
-
totalWins: number;
|
|
113
|
-
totalLosses: number;
|
|
114
|
-
botsDefeated: number;
|
|
115
|
-
powersUsed: Record<ChessimalsAnimalType, number>;
|
|
116
|
-
powerCaptures: number;
|
|
117
|
-
promotions: number;
|
|
118
|
-
updatedAt?: string;
|
|
119
|
-
}
|
|
120
64
|
export interface ChessimalsPosition {
|
|
121
65
|
row: number;
|
|
122
66
|
col: number;
|
|
@@ -233,3 +177,67 @@ export interface ChessimalsGameState {
|
|
|
233
177
|
moveHistory?: ChessimalsMoveHistoryEntry[];
|
|
234
178
|
online?: ChessimalsOnlineState;
|
|
235
179
|
}
|
|
180
|
+
export type ChristianitySeat = 'P1' | 'P2';
|
|
181
|
+
export type ChristianityGameStatus = 'in_progress' | 'finished';
|
|
182
|
+
export type ChristianityGameMode = 'solo_bot' | 'two_player' | 'local_pass';
|
|
183
|
+
export type ChristianityCardType = 'character' | 'offering';
|
|
184
|
+
export interface ChristianityCardDefinition {
|
|
185
|
+
id: string;
|
|
186
|
+
name: string;
|
|
187
|
+
type: ChristianityCardType;
|
|
188
|
+
cost: number;
|
|
189
|
+
attack: number;
|
|
190
|
+
life: number;
|
|
191
|
+
abilityName?: string;
|
|
192
|
+
abilityText?: string;
|
|
193
|
+
abilityCost?: number;
|
|
194
|
+
}
|
|
195
|
+
export interface ChristianityCharacterInstance {
|
|
196
|
+
instanceId: string;
|
|
197
|
+
cardId: string;
|
|
198
|
+
name: string;
|
|
199
|
+
owner: ChristianitySeat;
|
|
200
|
+
controller: ChristianitySeat;
|
|
201
|
+
attack: number;
|
|
202
|
+
currentHp: number;
|
|
203
|
+
maxHp: number;
|
|
204
|
+
canAttack: boolean;
|
|
205
|
+
}
|
|
206
|
+
export interface ChristianityOfferingInstance {
|
|
207
|
+
instanceId: string;
|
|
208
|
+
cardId: string;
|
|
209
|
+
name: string;
|
|
210
|
+
owner: ChristianitySeat;
|
|
211
|
+
ready: boolean;
|
|
212
|
+
value: number;
|
|
213
|
+
abilityName?: string;
|
|
214
|
+
abilityText?: string;
|
|
215
|
+
abilityCost?: number;
|
|
216
|
+
}
|
|
217
|
+
export interface ChristianityPlayerState {
|
|
218
|
+
seat: ChristianitySeat;
|
|
219
|
+
displayName: string;
|
|
220
|
+
avatar?: string;
|
|
221
|
+
avatarColor?: string;
|
|
222
|
+
leaderName: string;
|
|
223
|
+
leaderHp: number;
|
|
224
|
+
leaderMaxHp: number;
|
|
225
|
+
offerings: ChristianityOfferingInstance[];
|
|
226
|
+
offeringPlayedThisTurn: boolean;
|
|
227
|
+
hand?: string[];
|
|
228
|
+
handCount?: number;
|
|
229
|
+
battleZone: ChristianityCharacterInstance[];
|
|
230
|
+
}
|
|
231
|
+
export interface ChristianityGameState {
|
|
232
|
+
gameId: string;
|
|
233
|
+
status: ChristianityGameStatus;
|
|
234
|
+
mode: ChristianityGameMode;
|
|
235
|
+
turnOwner: ChristianitySeat;
|
|
236
|
+
revision: number;
|
|
237
|
+
turnCount: number;
|
|
238
|
+
matchScore: Record<ChristianitySeat, number>;
|
|
239
|
+
sharedDeck: string[];
|
|
240
|
+
historyZone: string[];
|
|
241
|
+
players: Record<ChristianitySeat, ChristianityPlayerState>;
|
|
242
|
+
log: string[];
|
|
243
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
export declare class LightRippleDirective {
|
|
3
|
+
private host;
|
|
4
|
+
private renderer;
|
|
5
|
+
createRipple(event: PointerEvent): void;
|
|
6
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<LightRippleDirective, never>;
|
|
7
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<LightRippleDirective, "[valLightRipple]", never, {}, {}, never, never, true, never>;
|
|
8
|
+
}
|
package/lib/version.d.ts
CHANGED
|
@@ -27,6 +27,10 @@ export declare class ChessimalsGamePageComponent {
|
|
|
27
27
|
static ɵfac: i0.ɵɵFactoryDeclaration<ChessimalsGamePageComponent, never>;
|
|
28
28
|
static ɵcmp: i0.ɵɵComponentDeclaration<ChessimalsGamePageComponent, "val-chessimals-game-page", never, {}, {}, never, never, true, never>;
|
|
29
29
|
}
|
|
30
|
+
export declare class ChristianityGamePageComponent {
|
|
31
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ChristianityGamePageComponent, never>;
|
|
32
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ChristianityGamePageComponent, "val-christianity-game-page", never, {}, {}, never, never, true, never>;
|
|
33
|
+
}
|
|
30
34
|
export declare class ChessimalsOnlineGamePageComponent {
|
|
31
35
|
private readonly route;
|
|
32
36
|
readonly gameId: string;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "valtech-components",
|
|
3
|
-
"version": "4.0.
|
|
3
|
+
"version": "4.0.442",
|
|
4
4
|
"private": false,
|
|
5
5
|
"bin": {
|
|
6
6
|
"valtech-firebase-config": "./src/lib/services/firebase/scripts/generate-sw-config.js"
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
},
|
|
13
13
|
"peerDependencies": {
|
|
14
14
|
"@angular/common": "^18.0.0",
|
|
15
|
+
"@angular/cdk": "^18.2.14",
|
|
15
16
|
"@angular/core": "^18.0.0",
|
|
16
17
|
"@angular/fire": "^18.0.1",
|
|
17
18
|
"@angular/service-worker": "^18.0.0",
|
package/public-api.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export * from './lib/version';
|
|
2
2
|
export * from './lib/directives/has-permission.directive';
|
|
3
|
+
export * from './lib/directives/light-ripple.directive';
|
|
3
4
|
export * from './lib/components/atoms/avatar/avatar.component';
|
|
4
5
|
export * from './lib/components/atoms/avatar/types';
|
|
5
6
|
export * from './lib/components/atoms/box/box.component';
|
|
@@ -340,6 +341,7 @@ export * from './lib/components/organisms/member-import-modal/member-import-moda
|
|
|
340
341
|
export * from './lib/components/organisms/mini-games/chessimals-engine';
|
|
341
342
|
export * from './lib/components/organisms/mini-games/chessimals-game.component';
|
|
342
343
|
export * from './lib/components/organisms/mini-games/chessimals-online.service';
|
|
344
|
+
export * from './lib/components/organisms/mini-games/christianity-game.component';
|
|
343
345
|
export * from './lib/components/organisms/mini-games/bubble-blitz-game.component';
|
|
344
346
|
export * from './lib/components/organisms/mini-games/memory-game.component';
|
|
345
347
|
export * from './lib/components/organisms/mini-games/mini-game-player-profile.service';
|
|
File without changes
|