valtech-components 4.0.486 → 4.0.489

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.
Files changed (21) hide show
  1. package/esm2022/lib/components/organisms/mini-games/chessimals-game.component.mjs +510 -352
  2. package/esm2022/lib/components/organisms/mini-games/christianity-card.component.mjs +17 -21
  3. package/esm2022/lib/components/organisms/mini-games/christianity-game.component.mjs +223 -38
  4. package/esm2022/lib/components/organisms/mini-games/mini-games.i18n.mjs +19 -1
  5. package/esm2022/lib/version.mjs +2 -2
  6. package/fesm2022/valtech-components.mjs +702 -346
  7. package/fesm2022/valtech-components.mjs.map +1 -1
  8. package/lib/components/atoms/rights-footer/rights-footer.component.d.ts +2 -2
  9. package/lib/components/atoms/user-avatar/user-avatar.component.d.ts +1 -1
  10. package/lib/components/molecules/features-list/features-list.component.d.ts +1 -1
  11. package/lib/components/molecules/load-more/load-more.component.d.ts +1 -1
  12. package/lib/components/molecules/operation-reference/operation-reference.component.d.ts +1 -1
  13. package/lib/components/molecules/phone-display/phone-display.component.d.ts +1 -1
  14. package/lib/components/organisms/article/article.component.d.ts +5 -5
  15. package/lib/components/organisms/mini-games/chessimals-game.component.d.ts +7 -5
  16. package/lib/components/organisms/mini-games/christianity-card.component.d.ts +2 -2
  17. package/lib/components/organisms/mini-games/christianity-game.component.d.ts +20 -1
  18. package/lib/version.d.ts +1 -1
  19. package/package.json +1 -1
  20. package/src/lib/assets/games/christianity/data/01-genesis.cards.csv +280 -280
  21. package/src/lib/assets/games/christianity/data/01-genesis.cards.json +280 -280
@@ -39,11 +39,11 @@ export declare class RightsFooterComponent {
39
39
  /**
40
40
  * Computed helper for align prop in template.
41
41
  */
42
- propsAlign: import("@angular/core").Signal<"center" | "left" | "right">;
42
+ propsAlign: import("@angular/core").Signal<"left" | "center" | "right">;
43
43
  /**
44
44
  * Computed helper for color prop in template.
45
45
  */
46
- propsColor: import("@angular/core").Signal<"medium" | "primary" | "secondary" | "tertiary" | "success" | "warning" | "danger" | "light" | "dark">;
46
+ propsColor: import("@angular/core").Signal<"success" | "medium" | "primary" | "secondary" | "tertiary" | "warning" | "danger" | "light" | "dark">;
47
47
  /**
48
48
  * Computed helper for withMargin prop in template.
49
49
  */
@@ -38,7 +38,7 @@ export declare class UserAvatarComponent {
38
38
  readonly imageUrl: import("@angular/core").Signal<string>;
39
39
  /** Iniciales — 1-2 chars derivados de name (preferred) o email prefix. */
40
40
  readonly initials: import("@angular/core").Signal<string>;
41
- readonly sizeClass: import("@angular/core").Signal<"small" | "xsmall" | "medium" | "large" | "xlarge">;
41
+ readonly sizeClass: import("@angular/core").Signal<"small" | "medium" | "large" | "xlarge" | "xsmall">;
42
42
  readonly shapeClass: import("@angular/core").Signal<"circle" | "square">;
43
43
  /** Background — explicito o derivado deterministicamente del user. */
44
44
  readonly bgColor: import("@angular/core").Signal<string>;
@@ -42,7 +42,7 @@ export declare class FeaturesListComponent {
42
42
  iconSize: number;
43
43
  mode: "horizontal" | "vertical";
44
44
  gap: "small" | "medium" | "large";
45
- alignment: "start" | "center";
45
+ alignment: "center" | "start";
46
46
  imageShape: "circle" | "square";
47
47
  maxVisible: number;
48
48
  showMoreLabel?: string;
@@ -26,7 +26,7 @@ export declare class LoadMoreComponent {
26
26
  readonly color: import("@angular/core").Signal<string>;
27
27
  readonly fill: import("@angular/core").Signal<string>;
28
28
  readonly shape: import("@angular/core").Signal<string>;
29
- readonly size: import("@angular/core").Signal<"small" | "large" | "default">;
29
+ readonly size: import("@angular/core").Signal<"default" | "small" | "large">;
30
30
  readonly threshold: import("@angular/core").Signal<string>;
31
31
  readonly label: import("@angular/core").Signal<string>;
32
32
  private readonly _pendingComplete;
@@ -6,7 +6,7 @@ export declare class OperationReferenceComponent {
6
6
  protected label: import("@angular/core").Signal<string>;
7
7
  protected copiedLabel: import("@angular/core").Signal<string>;
8
8
  protected copyAriaLabel: import("@angular/core").Signal<string>;
9
- protected align: import("@angular/core").Signal<"start" | "end" | "center">;
9
+ protected align: import("@angular/core").Signal<"center" | "start" | "end">;
10
10
  protected copyValue(): void;
11
11
  static ɵfac: i0.ɵɵFactoryDeclaration<OperationReferenceComponent, never>;
12
12
  static ɵcmp: i0.ɵɵComponentDeclaration<OperationReferenceComponent, "val-operation-reference", never, { "props": { "alias": "props"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
@@ -6,7 +6,7 @@ export declare class PhoneDisplayComponent {
6
6
  props: PhoneDisplayMetadata;
7
7
  onClick: EventEmitter<string>;
8
8
  protected rawPhone: import("@angular/core").Signal<string>;
9
- protected mode: import("@angular/core").Signal<"button" | "link" | "text">;
9
+ protected mode: import("@angular/core").Signal<"link" | "text" | "button">;
10
10
  protected formatted: import("@angular/core").Signal<string>;
11
11
  protected href: import("@angular/core").Signal<string>;
12
12
  protected ariaLabel: import("@angular/core").Signal<string>;
@@ -57,7 +57,7 @@ export declare class ArticleComponent implements OnInit {
57
57
  linkConfig?: import("valtech-components").LinkProcessorConfig;
58
58
  allowPartialBold?: boolean;
59
59
  authorColor?: import("@ionic/core").Color;
60
- alignment?: "center" | "left" | "right";
60
+ alignment?: "left" | "center" | "right";
61
61
  showQuoteMark?: boolean;
62
62
  };
63
63
  getHighlightTextProps(element: ArticleElement): {
@@ -76,7 +76,7 @@ export declare class ArticleComponent implements OnInit {
76
76
  getHighlightColor(element: ArticleElement): string;
77
77
  getButtonProps(element: ArticleElement): {
78
78
  actionType?: import("valtech-components").ActionType;
79
- expand?: "block" | "full";
79
+ expand?: "full" | "block";
80
80
  link?: string;
81
81
  href?: string;
82
82
  routerLink?: string | any[];
@@ -94,9 +94,9 @@ export declare class ArticleComponent implements OnInit {
94
94
  contentInterpolation?: Record<string, string | number>;
95
95
  icon?: import("valtech-components").IconMetada;
96
96
  shape?: "round";
97
- size?: "small" | "large" | "default";
98
- fill?: "outline" | "clear" | "solid" | "default";
99
- type: "button" | "submit" | "reset";
97
+ size?: "default" | "small" | "large";
98
+ fill?: "default" | "clear" | "outline" | "solid";
99
+ type: "reset" | "submit" | "button";
100
100
  token?: string;
101
101
  ref?: any;
102
102
  handler?: (value: any) => any;
@@ -117,8 +117,8 @@ export declare class ChessimalsGameComponent implements OnInit, OnDestroy {
117
117
  readonly botProfiles: ChessimalsBotProfile[];
118
118
  readonly challengeLadder: ChessimalsChallengeBot[];
119
119
  readonly animals: ChessimalsAnimalView[];
120
- readonly valtechComponentsVersion = "4.0.486";
121
- readonly screen: import("@angular/core").WritableSignal<"home" | "game">;
120
+ readonly valtechComponentsVersion = "4.0.489";
121
+ readonly screen: import("@angular/core").WritableSignal<"home" | "challenge" | "game">;
122
122
  readonly selectedBoardSize: import("@angular/core").WritableSignal<ChessimalsBoardSize>;
123
123
  readonly selectedLocalMode: import("@angular/core").WritableSignal<ChessimalsLocalMode>;
124
124
  readonly selectedBotDifficulty: import("@angular/core").WritableSignal<ChessimalsBotDifficulty>;
@@ -155,14 +155,14 @@ export declare class ChessimalsGameComponent implements OnInit, OnDestroy {
155
155
  private readonly confirmedAction;
156
156
  readonly onlineJoinCode: import("@angular/core").WritableSignal<string>;
157
157
  readonly onlineLoading: import("@angular/core").WritableSignal<boolean>;
158
- readonly onlineAction: import("@angular/core").WritableSignal<"create" | "join" | "accept" | "reject">;
158
+ readonly onlineAction: import("@angular/core").WritableSignal<"join" | "create" | "accept" | "reject">;
159
159
  readonly onlineError: import("@angular/core").WritableSignal<string>;
160
160
  readonly onlineUid: import("@angular/core").WritableSignal<string>;
161
161
  readonly onlineHistory: import("@angular/core").WritableSignal<ChessimalsHistoryEntry[]>;
162
162
  readonly resumeSplashVisible: import("@angular/core").WritableSignal<boolean>;
163
163
  readonly rematchLoading: import("@angular/core").WritableSignal<boolean>;
164
164
  readonly moveSyncing: import("@angular/core").WritableSignal<boolean>;
165
- readonly onlineConnectionState: import("@angular/core").WritableSignal<"idle" | "connecting" | "live" | "error">;
165
+ readonly onlineConnectionState: import("@angular/core").WritableSignal<"error" | "connecting" | "idle" | "live">;
166
166
  readonly reviewIndex: import("@angular/core").WritableSignal<number>;
167
167
  readonly loggedInUser: import("@angular/core").Signal<import("valtech-components").AuthUser>;
168
168
  readonly localPlayerProfile: import("@angular/core").Signal<import("./types").MiniGamePlayerProfile>;
@@ -206,7 +206,7 @@ export declare class ChessimalsGameComponent implements OnInit, OnDestroy {
206
206
  readonly displayRows: import("@angular/core").Signal<number[]>;
207
207
  readonly displayCols: import("@angular/core").Signal<number[]>;
208
208
  readonly boardOrientationColor: import("@angular/core").Signal<ChessimalsPlayerColor>;
209
- readonly onlineRole: import("@angular/core").Signal<ChessimalsPlayerColor | "waiting" | "pending" | "spectator">;
209
+ readonly onlineRole: import("@angular/core").Signal<"waiting" | "pending" | ChessimalsPlayerColor | "spectator">;
210
210
  readonly canPlayCurrentTurn: import("@angular/core").Signal<boolean>;
211
211
  readonly canControlCurrentGame: import("@angular/core").Signal<boolean>;
212
212
  readonly rematchState: import("@angular/core").Signal<ChessimalsRematchState>;
@@ -259,6 +259,8 @@ export declare class ChessimalsGameComponent implements OnInit, OnDestroy {
259
259
  private shortUserId;
260
260
  private rangeValueToNumber;
261
261
  startChallenge(): void;
262
+ openChallengeView(): void;
263
+ backToHome(): void;
262
264
  private createNewChallengeRun;
263
265
  resumeChallenge(run?: ChessimalsChallengeRun): void;
264
266
  continueChallenge(): void;
@@ -1,6 +1,6 @@
1
1
  import * as i0 from "@angular/core";
2
2
  export type ChristianityCardRenderType = 'leader' | 'character' | 'offering' | 'wisdom' | 'action' | 'tool' | 'place' | 'event';
3
- export type ChristianityCardRenderVariant = 'full' | 'table' | 'hand' | 'list' | 'back';
3
+ export type ChristianityCardRenderVariant = 'full' | 'baby' | 'table' | 'hand' | 'list' | 'back';
4
4
  export interface ChristianityCardRenderModel {
5
5
  id: string;
6
6
  name: string;
@@ -35,7 +35,7 @@ export declare class ChristianityCardComponent {
35
35
  protected readonly typeIconUrl: import("@angular/core").Signal<string>;
36
36
  protected readonly showTypeIcon: import("@angular/core").Signal<boolean>;
37
37
  protected readonly headerMetric: import("@angular/core").Signal<{
38
- kind: 'number' | 'pips';
38
+ kind: 'number' | 'pips' | 'cost-symbol';
39
39
  value: number;
40
40
  }>;
41
41
  protected readonly cardStatsText: import("@angular/core").Signal<string>;
@@ -8,7 +8,7 @@ interface ChristianityCardPreview {
8
8
  meta: string;
9
9
  body: string;
10
10
  cardId?: string;
11
- source?: 'hand' | 'board' | 'pile';
11
+ source?: 'hand' | 'board' | 'pile' | 'history';
12
12
  }
13
13
  interface ChristianityInfoPanel {
14
14
  title: string;
@@ -27,13 +27,24 @@ interface ChristianityPreviewTilt {
27
27
  shiftX: number;
28
28
  shiftY: number;
29
29
  }
30
+ interface ChristianityImpactEvent {
31
+ id: number;
32
+ text: string;
33
+ tone: 'damage' | 'heal' | 'resource';
34
+ seat: ChristianitySeat;
35
+ target: 'leader' | 'battle' | 'offerings';
36
+ }
30
37
  type ChristianityGalleryTypeFilter = 'all' | ChristianityCardType;
31
38
  type ChristianityScreen = 'splash' | 'home' | 'table';
32
39
  type ChristianityCatalogLoadState = 'loading' | 'ready' | 'fallback';
33
40
  export declare class ChristianityGameComponent {
34
41
  private i18n;
42
+ private readonly document;
43
+ private readonly destroyRef;
35
44
  private readonly bootStartedAt;
36
45
  private botTurnTimer;
46
+ private impactEventSequence;
47
+ private readonly impactTimers;
37
48
  protected readonly game: import("@angular/core").WritableSignal<ChristianityGameState>;
38
49
  protected readonly screen: import("@angular/core").WritableSignal<ChristianityScreen>;
39
50
  protected readonly catalogLoadState: import("@angular/core").WritableSignal<ChristianityCatalogLoadState>;
@@ -47,6 +58,7 @@ export declare class ChristianityGameComponent {
47
58
  protected readonly showHistory: import("@angular/core").WritableSignal<boolean>;
48
59
  protected readonly showGallery: import("@angular/core").WritableSignal<boolean>;
49
60
  protected readonly offeringsSeat: import("@angular/core").WritableSignal<ChristianitySeat>;
61
+ protected readonly impactEvents: import("@angular/core").WritableSignal<ChristianityImpactEvent[]>;
50
62
  protected readonly cardCatalog: import("@angular/core").WritableSignal<Record<string, ChristianityCardDefinition>>;
51
63
  protected readonly allCatalogCards: import("@angular/core").WritableSignal<ChristianityCardDefinition[]>;
52
64
  protected readonly catalogLoaded: import("@angular/core").WritableSignal<boolean>;
@@ -68,6 +80,8 @@ export declare class ChristianityGameComponent {
68
80
  value: ChristianityGalleryTypeFilter;
69
81
  label: string;
70
82
  }[]>;
83
+ protected readonly hasModalOverlay: import("@angular/core").Signal<boolean>;
84
+ protected readonly canNavigateHistoryPreview: import("@angular/core").Signal<boolean>;
71
85
  protected readonly splashStatusText: import("@angular/core").Signal<string>;
72
86
  protected readonly startFeaturedCards: import("@angular/core").Signal<ChristianityCardDefinition[]>;
73
87
  protected readonly futureModes: import("@angular/core").Signal<{
@@ -99,6 +113,7 @@ export declare class ChristianityGameComponent {
99
113
  protected startFeaturedCardTransform(index: number): string;
100
114
  protected cardTypeLabel(card: ChristianityCardDefinition): string;
101
115
  protected definitionToRenderCard(card: ChristianityCardDefinition, overrides?: Partial<ChristianityCardRenderModel>): ChristianityCardRenderModel;
116
+ protected hiddenCardRenderCard(): ChristianityCardRenderModel;
102
117
  private defaultCardBody;
103
118
  protected characterRenderCard(card: ChristianityCharacterInstance): ChristianityCardRenderModel;
104
119
  protected leaderRenderCard(player: ChristianityPlayerState): ChristianityCardRenderModel;
@@ -152,13 +167,17 @@ export declare class ChristianityGameComponent {
152
167
  protected closeInfo(): void;
153
168
  protected openOfferings(seat: ChristianitySeat): void;
154
169
  protected openHistory(): void;
170
+ protected closeHistory(): void;
155
171
  protected closeOfferings(): void;
156
172
  protected openGallery(): void;
157
173
  protected closeGallery(): void;
174
+ protected navigateHistoryPreview(direction: -1 | 1): void;
158
175
  protected setGallerySearch(event: Event): void;
159
176
  protected setGalleryType(event: Event): void;
160
177
  protected tiltPreview(event: PointerEvent): void;
161
178
  protected resetPreviewTilt(): void;
179
+ private pushImpactEvent;
180
+ private pushImpactEvents;
162
181
  private clearBotTurn;
163
182
  private scheduleBotTurnIfNeeded;
164
183
  private runTutorialBotTurn;
package/lib/version.d.ts CHANGED
@@ -2,4 +2,4 @@
2
2
  * Current version of valtech-components.
3
3
  * This is automatically updated during the publish process.
4
4
  */
5
- export declare const VERSION = "4.0.486";
5
+ export declare const VERSION = "4.0.489";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "valtech-components",
3
- "version": "4.0.486",
3
+ "version": "4.0.489",
4
4
  "private": false,
5
5
  "bin": {
6
6
  "valtech-firebase-config": "./src/lib/services/firebase/scripts/generate-sw-config.js"