valtech-components 4.0.934 → 4.0.935
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/atoms/button/button.component.mjs +21 -5
- package/esm2022/lib/components/organisms/mini-games/mini-game-callout.component.mjs +3 -3
- package/esm2022/lib/components/organisms/mini-games/mini-game-score-pop.component.mjs +3 -3
- package/esm2022/lib/components/organisms/mini-games/mini-games-menu.component.mjs +5 -4
- package/esm2022/lib/components/organisms/mini-games/retro-audio.service.mjs +12 -195
- package/esm2022/lib/components/organisms/mini-games/types.mjs +1 -1
- package/esm2022/lib/components/types.mjs +1 -1
- package/esm2022/lib/version.mjs +2 -2
- package/esm2022/mini-games/public-api.mjs +1 -1
- package/fesm2022/valtech-components-mini-games.mjs.map +1 -1
- package/fesm2022/valtech-components.mjs +40 -206
- package/fesm2022/valtech-components.mjs.map +1 -1
- package/lib/components/atoms/button/button.component.d.ts +9 -0
- package/lib/components/organisms/mini-games/mini-games-menu.component.d.ts +3 -0
- package/lib/components/organisms/mini-games/retro-audio.service.d.ts +27 -27
- package/lib/components/organisms/mini-games/types.d.ts +0 -281
- package/lib/components/types.d.ts +6 -2
- package/lib/version.d.ts +1 -1
- package/mini-games/public-api.d.ts +0 -1
- package/package.json +1 -1
|
@@ -66,7 +66,7 @@ import fixWebmDuration from 'fix-webm-duration';
|
|
|
66
66
|
* Current version of valtech-components.
|
|
67
67
|
* This is automatically updated during the publish process.
|
|
68
68
|
*/
|
|
69
|
-
const VERSION = '4.0.
|
|
69
|
+
const VERSION = '4.0.935';
|
|
70
70
|
|
|
71
71
|
function evaluateValtechAccess(rule, context, features = {}, visitedFeatures = new Set()) {
|
|
72
72
|
if (rule == null)
|
|
@@ -12712,6 +12712,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
12712
12712
|
* @output onClick - Emits when the button is clicked
|
|
12713
12713
|
*/
|
|
12714
12714
|
class ButtonComponent {
|
|
12715
|
+
/**
|
|
12716
|
+
* Clases de tamaño del botón.
|
|
12717
|
+
*
|
|
12718
|
+
* `icon-only` se DERIVA de que no haya texto en vez de pedirse por prop: un
|
|
12719
|
+
* botón sin texto ya declaró todo lo que hacía falta saber, y una prop extra
|
|
12720
|
+
* solo agrega una forma de que alguien la olvide y el botón salga como cápsula
|
|
12721
|
+
* estirada. Ver la escala en button.component.scss.
|
|
12722
|
+
*/
|
|
12723
|
+
sizeClasses() {
|
|
12724
|
+
const classes = [];
|
|
12725
|
+
if (this.resolvedProps?.size)
|
|
12726
|
+
classes.push(this.resolvedProps.size);
|
|
12727
|
+
if (!this.displayText && this.resolvedProps?.icon)
|
|
12728
|
+
classes.push('icon-only');
|
|
12729
|
+
return classes;
|
|
12730
|
+
}
|
|
12715
12731
|
constructor(download, _icon, navigation) {
|
|
12716
12732
|
this.download = download;
|
|
12717
12733
|
this.navigation = navigation;
|
|
@@ -12817,7 +12833,7 @@ class ButtonComponent {
|
|
|
12817
12833
|
[shape]="resolvedProps.shape"
|
|
12818
12834
|
(click)="clickHandler()"
|
|
12819
12835
|
[disabled]="resolvedProps.state === states.DISABLED"
|
|
12820
|
-
[ngClass]="
|
|
12836
|
+
[ngClass]="sizeClasses()"
|
|
12821
12837
|
>
|
|
12822
12838
|
<ion-icon
|
|
12823
12839
|
*ngIf="resolvedProps.icon"
|
|
@@ -12828,7 +12844,7 @@ class ButtonComponent {
|
|
|
12828
12844
|
<ion-spinner *ngIf="resolvedProps.state === states.WORKING" name="circular" aria-label="Cargando"></ion-spinner>
|
|
12829
12845
|
<ion-text *ngIf="resolvedProps.state !== states.WORKING">{{ displayText }}</ion-text>
|
|
12830
12846
|
</ion-button>
|
|
12831
|
-
`, isInline: true, styles: ["@charset \"UTF-8\";:root{--val-container-sm: 540px;--val-container-md: 720px;--val-container-lg: 880px;--val-container-xl: 1100px;--val-container-xl-wide: 1280px;--val-container-aside: 0px;--val-container-padding: 16px;--ion-color-primary: #7026df;--ion-color-primary-rgb: 112, 38, 223;--ion-color-primary-contrast: #ffffff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #6321c4;--ion-color-primary-tint: #7e3ce2;--ion-color-secondary: #e2ccff;--ion-color-secondary-rgb: 226, 204, 255;--ion-color-secondary-contrast: #000000;--ion-color-secondary-contrast-rgb: 0, 0, 0;--ion-color-secondary-shade: #c7b4e0;--ion-color-secondary-tint: #e5d1ff;--ion-color-texti: #354c69;--ion-color-texti-rgb: 53, 76, 105;--ion-color-texti-contrast: #ffffff;--ion-color-texti-contrast-rgb: 255, 255, 255;--ion-color-texti-shade: #2f435c;--ion-color-texti-tint: #495e78;--ion-color-darki: #090f1b;--ion-color-darki-rgb: 9, 15, 27;--ion-color-darki-contrast: #ffffff;--ion-color-darki-contrast-rgb: 255, 255, 255;--ion-color-darki-shade: #080d18;--ion-color-darki-tint: #222732;--ion-color-medium: #9e9e9e;--ion-color-medium-rgb: 158, 158, 158;--ion-color-medium-contrast: #000000;--ion-color-medium-contrast-rgb: 0, 0, 0;--ion-color-medium-shade: #8b8b8b;--ion-color-medium-tint: #a8a8a8;--ion-color-warning: #ffde38;--ion-color-warning-rgb: 255, 222, 56;--ion-color-warning-contrast: #000000;--ion-color-warning-contrast-rgb: 0, 0, 0;--ion-color-warning-shade: #e0c331;--ion-color-warning-tint: #ffe14c;--swiper-pagination-color: var(--ion-color-primary);--swiper-navigation-color: var(--ion-color-primary);--swiper-pagination-bullet-inactive-color: var(--ion-color-medium)}body.dark,html.ion-palette-dark,body[data-theme=dark]{--ion-color-texti: #8fc1ff;--ion-color-texti-rgb: 143, 193, 255;--ion-color-texti-contrast: #000000;--ion-color-texti-contrast-rgb: 0, 0, 0;--ion-color-texti-shade: #7eaae0;--ion-color-texti-tint: #9ac7ff;--ion-color-darki: #ffffff;--ion-color-darki-rgb: 255, 255, 255;--ion-color-darki-contrast: #000000;--ion-color-darki-contrast-rgb: 0, 0, 0;--ion-color-darki-shade: #e0e0e0;--ion-color-darki-tint: #ffffff;--ion-color-primary: #8f49f8;--ion-color-primary-rgb: 143, 73, 248;--ion-color-primary-contrast: #ffffff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #7e40da;--ion-color-primary-tint: #9a5bf9}.ion-color-texti{--ion-color-base: var(--ion-color-texti);--ion-color-base-rgb: var(--ion-color-texti-rgb);--ion-color-contrast: var(--ion-color-texti-contrast);--ion-color-contrast-rgb: var(--ion-color-texti-contrast-rgb);--ion-color-shade: var(--ion-color-texti-shade);--ion-color-tint: var(--ion-color-texti-tint)}.ion-color-darki{--ion-color-base: var(--ion-color-darki);--ion-color-base-rgb: var(--ion-color-darki-rgb);--ion-color-contrast: var(--ion-color-darki-contrast);--ion-color-contrast-rgb: var(--ion-color-darki-contrast-rgb);--ion-color-shade: var(--ion-color-darki-shade);--ion-color-tint: var(--ion-color-darki-tint)}ion-button{font-family:var(--ion-default-font),Arial,sans-serif;min-width:6.25rem;margin:0}ion-button.small{--padding-bottom:
|
|
12847
|
+
`, isInline: true, styles: ["@charset \"UTF-8\";:root{--val-container-sm: 540px;--val-container-md: 720px;--val-container-lg: 880px;--val-container-xl: 1100px;--val-container-xl-wide: 1280px;--val-container-aside: 0px;--val-container-padding: 16px;--ion-color-primary: #7026df;--ion-color-primary-rgb: 112, 38, 223;--ion-color-primary-contrast: #ffffff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #6321c4;--ion-color-primary-tint: #7e3ce2;--ion-color-secondary: #e2ccff;--ion-color-secondary-rgb: 226, 204, 255;--ion-color-secondary-contrast: #000000;--ion-color-secondary-contrast-rgb: 0, 0, 0;--ion-color-secondary-shade: #c7b4e0;--ion-color-secondary-tint: #e5d1ff;--ion-color-texti: #354c69;--ion-color-texti-rgb: 53, 76, 105;--ion-color-texti-contrast: #ffffff;--ion-color-texti-contrast-rgb: 255, 255, 255;--ion-color-texti-shade: #2f435c;--ion-color-texti-tint: #495e78;--ion-color-darki: #090f1b;--ion-color-darki-rgb: 9, 15, 27;--ion-color-darki-contrast: #ffffff;--ion-color-darki-contrast-rgb: 255, 255, 255;--ion-color-darki-shade: #080d18;--ion-color-darki-tint: #222732;--ion-color-medium: #9e9e9e;--ion-color-medium-rgb: 158, 158, 158;--ion-color-medium-contrast: #000000;--ion-color-medium-contrast-rgb: 0, 0, 0;--ion-color-medium-shade: #8b8b8b;--ion-color-medium-tint: #a8a8a8;--ion-color-warning: #ffde38;--ion-color-warning-rgb: 255, 222, 56;--ion-color-warning-contrast: #000000;--ion-color-warning-contrast-rgb: 0, 0, 0;--ion-color-warning-shade: #e0c331;--ion-color-warning-tint: #ffe14c;--swiper-pagination-color: var(--ion-color-primary);--swiper-navigation-color: var(--ion-color-primary);--swiper-pagination-bullet-inactive-color: var(--ion-color-medium)}body.dark,html.ion-palette-dark,body[data-theme=dark]{--ion-color-texti: #8fc1ff;--ion-color-texti-rgb: 143, 193, 255;--ion-color-texti-contrast: #000000;--ion-color-texti-contrast-rgb: 0, 0, 0;--ion-color-texti-shade: #7eaae0;--ion-color-texti-tint: #9ac7ff;--ion-color-darki: #ffffff;--ion-color-darki-rgb: 255, 255, 255;--ion-color-darki-contrast: #000000;--ion-color-darki-contrast-rgb: 0, 0, 0;--ion-color-darki-shade: #e0e0e0;--ion-color-darki-tint: #ffffff;--ion-color-primary: #8f49f8;--ion-color-primary-rgb: 143, 73, 248;--ion-color-primary-contrast: #ffffff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #7e40da;--ion-color-primary-tint: #9a5bf9}.ion-color-texti{--ion-color-base: var(--ion-color-texti);--ion-color-base-rgb: var(--ion-color-texti-rgb);--ion-color-contrast: var(--ion-color-texti-contrast);--ion-color-contrast-rgb: var(--ion-color-texti-contrast-rgb);--ion-color-shade: var(--ion-color-texti-shade);--ion-color-tint: var(--ion-color-texti-tint)}.ion-color-darki{--ion-color-base: var(--ion-color-darki);--ion-color-base-rgb: var(--ion-color-darki-rgb);--ion-color-contrast: var(--ion-color-darki-contrast);--ion-color-contrast-rgb: var(--ion-color-darki-contrast-rgb);--ion-color-shade: var(--ion-color-darki-shade);--ion-color-tint: var(--ion-color-darki-tint)}ion-button{font-family:var(--ion-default-font),Arial,sans-serif;min-width:6.25rem;--val-button-height: 48px;height:var(--val-button-height);margin:0}ion-button.small{--val-button-height: 44px;--padding-bottom: 0;--padding-end: 16px;--padding-start: 16px;--padding-top: 0}ion-button.large{--val-button-height: 56px;--padding-end: 24px;--padding-start: 24px}ion-button.icon-only{min-width:var(--val-button-height);width:var(--val-button-height);--padding-start: 0;--padding-end: 0}ion-button.icon-only ion-icon{margin:0}:host-context(ion-toolbar) ion-button{height:auto}ion-button.button-clear{padding:0;margin:0}ion-button.small.button-clear{--padding-start: 0;--padding-end: 0}ion-button.button-clear.icon-only{min-width:var(--val-button-height)}ion-button ion-spinner{--color: currentColor;width:1em;height:1em}ion-button.button-round::part(native){transition:transform .18s ease,box-shadow .18s ease}ion-button.button-round:not([disabled]):hover::part(native){transform:translateY(-2px);box-shadow:0 6px 20px #00000026}ion-button.button-round:not([disabled]):active::part(native){transform:translateY(0);box-shadow:none}@media (prefers-reduced-motion: reduce){ion-button.button-round::part(native){transition:none}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "component", type: IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: IonSpinner, selector: "ion-spinner", inputs: ["color", "duration", "name", "paused"] }, { kind: "component", type: IonText, selector: "ion-text", inputs: ["color", "mode"] }] }); }
|
|
12832
12848
|
}
|
|
12833
12849
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ButtonComponent, decorators: [{
|
|
12834
12850
|
type: Component,
|
|
@@ -12846,7 +12862,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
12846
12862
|
[shape]="resolvedProps.shape"
|
|
12847
12863
|
(click)="clickHandler()"
|
|
12848
12864
|
[disabled]="resolvedProps.state === states.DISABLED"
|
|
12849
|
-
[ngClass]="
|
|
12865
|
+
[ngClass]="sizeClasses()"
|
|
12850
12866
|
>
|
|
12851
12867
|
<ion-icon
|
|
12852
12868
|
*ngIf="resolvedProps.icon"
|
|
@@ -12857,7 +12873,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
12857
12873
|
<ion-spinner *ngIf="resolvedProps.state === states.WORKING" name="circular" aria-label="Cargando"></ion-spinner>
|
|
12858
12874
|
<ion-text *ngIf="resolvedProps.state !== states.WORKING">{{ displayText }}</ion-text>
|
|
12859
12875
|
</ion-button>
|
|
12860
|
-
`, styles: ["@charset \"UTF-8\";:root{--val-container-sm: 540px;--val-container-md: 720px;--val-container-lg: 880px;--val-container-xl: 1100px;--val-container-xl-wide: 1280px;--val-container-aside: 0px;--val-container-padding: 16px;--ion-color-primary: #7026df;--ion-color-primary-rgb: 112, 38, 223;--ion-color-primary-contrast: #ffffff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #6321c4;--ion-color-primary-tint: #7e3ce2;--ion-color-secondary: #e2ccff;--ion-color-secondary-rgb: 226, 204, 255;--ion-color-secondary-contrast: #000000;--ion-color-secondary-contrast-rgb: 0, 0, 0;--ion-color-secondary-shade: #c7b4e0;--ion-color-secondary-tint: #e5d1ff;--ion-color-texti: #354c69;--ion-color-texti-rgb: 53, 76, 105;--ion-color-texti-contrast: #ffffff;--ion-color-texti-contrast-rgb: 255, 255, 255;--ion-color-texti-shade: #2f435c;--ion-color-texti-tint: #495e78;--ion-color-darki: #090f1b;--ion-color-darki-rgb: 9, 15, 27;--ion-color-darki-contrast: #ffffff;--ion-color-darki-contrast-rgb: 255, 255, 255;--ion-color-darki-shade: #080d18;--ion-color-darki-tint: #222732;--ion-color-medium: #9e9e9e;--ion-color-medium-rgb: 158, 158, 158;--ion-color-medium-contrast: #000000;--ion-color-medium-contrast-rgb: 0, 0, 0;--ion-color-medium-shade: #8b8b8b;--ion-color-medium-tint: #a8a8a8;--ion-color-warning: #ffde38;--ion-color-warning-rgb: 255, 222, 56;--ion-color-warning-contrast: #000000;--ion-color-warning-contrast-rgb: 0, 0, 0;--ion-color-warning-shade: #e0c331;--ion-color-warning-tint: #ffe14c;--swiper-pagination-color: var(--ion-color-primary);--swiper-navigation-color: var(--ion-color-primary);--swiper-pagination-bullet-inactive-color: var(--ion-color-medium)}body.dark,html.ion-palette-dark,body[data-theme=dark]{--ion-color-texti: #8fc1ff;--ion-color-texti-rgb: 143, 193, 255;--ion-color-texti-contrast: #000000;--ion-color-texti-contrast-rgb: 0, 0, 0;--ion-color-texti-shade: #7eaae0;--ion-color-texti-tint: #9ac7ff;--ion-color-darki: #ffffff;--ion-color-darki-rgb: 255, 255, 255;--ion-color-darki-contrast: #000000;--ion-color-darki-contrast-rgb: 0, 0, 0;--ion-color-darki-shade: #e0e0e0;--ion-color-darki-tint: #ffffff;--ion-color-primary: #8f49f8;--ion-color-primary-rgb: 143, 73, 248;--ion-color-primary-contrast: #ffffff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #7e40da;--ion-color-primary-tint: #9a5bf9}.ion-color-texti{--ion-color-base: var(--ion-color-texti);--ion-color-base-rgb: var(--ion-color-texti-rgb);--ion-color-contrast: var(--ion-color-texti-contrast);--ion-color-contrast-rgb: var(--ion-color-texti-contrast-rgb);--ion-color-shade: var(--ion-color-texti-shade);--ion-color-tint: var(--ion-color-texti-tint)}.ion-color-darki{--ion-color-base: var(--ion-color-darki);--ion-color-base-rgb: var(--ion-color-darki-rgb);--ion-color-contrast: var(--ion-color-darki-contrast);--ion-color-contrast-rgb: var(--ion-color-darki-contrast-rgb);--ion-color-shade: var(--ion-color-darki-shade);--ion-color-tint: var(--ion-color-darki-tint)}ion-button{font-family:var(--ion-default-font),Arial,sans-serif;min-width:6.25rem;margin:0}ion-button.small{--padding-bottom:
|
|
12876
|
+
`, styles: ["@charset \"UTF-8\";:root{--val-container-sm: 540px;--val-container-md: 720px;--val-container-lg: 880px;--val-container-xl: 1100px;--val-container-xl-wide: 1280px;--val-container-aside: 0px;--val-container-padding: 16px;--ion-color-primary: #7026df;--ion-color-primary-rgb: 112, 38, 223;--ion-color-primary-contrast: #ffffff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #6321c4;--ion-color-primary-tint: #7e3ce2;--ion-color-secondary: #e2ccff;--ion-color-secondary-rgb: 226, 204, 255;--ion-color-secondary-contrast: #000000;--ion-color-secondary-contrast-rgb: 0, 0, 0;--ion-color-secondary-shade: #c7b4e0;--ion-color-secondary-tint: #e5d1ff;--ion-color-texti: #354c69;--ion-color-texti-rgb: 53, 76, 105;--ion-color-texti-contrast: #ffffff;--ion-color-texti-contrast-rgb: 255, 255, 255;--ion-color-texti-shade: #2f435c;--ion-color-texti-tint: #495e78;--ion-color-darki: #090f1b;--ion-color-darki-rgb: 9, 15, 27;--ion-color-darki-contrast: #ffffff;--ion-color-darki-contrast-rgb: 255, 255, 255;--ion-color-darki-shade: #080d18;--ion-color-darki-tint: #222732;--ion-color-medium: #9e9e9e;--ion-color-medium-rgb: 158, 158, 158;--ion-color-medium-contrast: #000000;--ion-color-medium-contrast-rgb: 0, 0, 0;--ion-color-medium-shade: #8b8b8b;--ion-color-medium-tint: #a8a8a8;--ion-color-warning: #ffde38;--ion-color-warning-rgb: 255, 222, 56;--ion-color-warning-contrast: #000000;--ion-color-warning-contrast-rgb: 0, 0, 0;--ion-color-warning-shade: #e0c331;--ion-color-warning-tint: #ffe14c;--swiper-pagination-color: var(--ion-color-primary);--swiper-navigation-color: var(--ion-color-primary);--swiper-pagination-bullet-inactive-color: var(--ion-color-medium)}body.dark,html.ion-palette-dark,body[data-theme=dark]{--ion-color-texti: #8fc1ff;--ion-color-texti-rgb: 143, 193, 255;--ion-color-texti-contrast: #000000;--ion-color-texti-contrast-rgb: 0, 0, 0;--ion-color-texti-shade: #7eaae0;--ion-color-texti-tint: #9ac7ff;--ion-color-darki: #ffffff;--ion-color-darki-rgb: 255, 255, 255;--ion-color-darki-contrast: #000000;--ion-color-darki-contrast-rgb: 0, 0, 0;--ion-color-darki-shade: #e0e0e0;--ion-color-darki-tint: #ffffff;--ion-color-primary: #8f49f8;--ion-color-primary-rgb: 143, 73, 248;--ion-color-primary-contrast: #ffffff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #7e40da;--ion-color-primary-tint: #9a5bf9}.ion-color-texti{--ion-color-base: var(--ion-color-texti);--ion-color-base-rgb: var(--ion-color-texti-rgb);--ion-color-contrast: var(--ion-color-texti-contrast);--ion-color-contrast-rgb: var(--ion-color-texti-contrast-rgb);--ion-color-shade: var(--ion-color-texti-shade);--ion-color-tint: var(--ion-color-texti-tint)}.ion-color-darki{--ion-color-base: var(--ion-color-darki);--ion-color-base-rgb: var(--ion-color-darki-rgb);--ion-color-contrast: var(--ion-color-darki-contrast);--ion-color-contrast-rgb: var(--ion-color-darki-contrast-rgb);--ion-color-shade: var(--ion-color-darki-shade);--ion-color-tint: var(--ion-color-darki-tint)}ion-button{font-family:var(--ion-default-font),Arial,sans-serif;min-width:6.25rem;--val-button-height: 48px;height:var(--val-button-height);margin:0}ion-button.small{--val-button-height: 44px;--padding-bottom: 0;--padding-end: 16px;--padding-start: 16px;--padding-top: 0}ion-button.large{--val-button-height: 56px;--padding-end: 24px;--padding-start: 24px}ion-button.icon-only{min-width:var(--val-button-height);width:var(--val-button-height);--padding-start: 0;--padding-end: 0}ion-button.icon-only ion-icon{margin:0}:host-context(ion-toolbar) ion-button{height:auto}ion-button.button-clear{padding:0;margin:0}ion-button.small.button-clear{--padding-start: 0;--padding-end: 0}ion-button.button-clear.icon-only{min-width:var(--val-button-height)}ion-button ion-spinner{--color: currentColor;width:1em;height:1em}ion-button.button-round::part(native){transition:transform .18s ease,box-shadow .18s ease}ion-button.button-round:not([disabled]):hover::part(native){transform:translateY(-2px);box-shadow:0 6px 20px #00000026}ion-button.button-round:not([disabled]):active::part(native){transform:translateY(0);box-shadow:none}@media (prefers-reduced-motion: reduce){ion-button.button-round::part(native){transition:none}}\n"] }]
|
|
12861
12877
|
}], ctorParameters: () => [{ type: DownloadService }, { type: IconService }, { type: NavigationService }], propDecorators: { preset: [{
|
|
12862
12878
|
type: Input
|
|
12863
12879
|
}], props: [{
|
|
@@ -70216,7 +70232,7 @@ class MiniGameCalloutComponent {
|
|
|
70216
70232
|
<em>{{ props().impact }}</em>
|
|
70217
70233
|
}
|
|
70218
70234
|
</div>
|
|
70219
|
-
`, isInline: true, styles: [":host{display:contents}.mini-game-callout{--mini-game-callout-accent-rgb: 139, 112, 222;--mini-game-callout-shadow-rgb: 35, 31, 24;--mini-game-callout-surface: color-mix( in srgb, var(--
|
|
70235
|
+
`, isInline: true, styles: [":host{display:contents}.mini-game-callout{--mini-game-callout-accent-rgb: 139, 112, 222;--mini-game-callout-shadow-rgb: 35, 31, 24;--mini-game-callout-surface: color-mix( in srgb, var(--mini-game-surface, var(--val-surface, #ffffff)) 94%, transparent );--mini-game-callout-text: var(--mini-game-text, var(--val-text-color, #2f352c));--mini-game-callout-muted: var(--mini-game-muted, var(--val-text-muted, rgba(47, 53, 44, .72)));--mini-game-callout-capture-rgb: var(--mini-game-accent-rgb, 228, 74, 58);--mini-game-callout-duration: 2.2s;position:absolute;left:50%;bottom:1rem;z-index:12;display:grid;grid-template-columns:auto minmax(0,1fr);gap:.58rem .7rem;align-items:center;width:min(30rem,calc(100% - 1.25rem));max-width:calc(100% - 1.25rem);border:1px solid rgba(var(--mini-game-callout-accent-rgb),.64);border-radius:1rem;padding:.62rem .72rem;background:linear-gradient(135deg,rgba(var(--mini-game-callout-accent-rgb),.24),rgba(var(--mini-game-callout-accent-rgb),.12) 54%,color-mix(in srgb,var(--mini-game-callout-surface) 88%,transparent)),var(--mini-game-callout-surface);box-shadow:0 1.05rem 2.2rem rgba(var(--mini-game-callout-shadow-rgb),.34),0 0 1.15rem rgba(var(--mini-game-callout-accent-rgb),.34),inset 0 0 0 1px #ffffff38;color:var(--mini-game-callout-text);text-shadow:0 1px 0 rgba(255,255,255,.2);backdrop-filter:blur(.45rem) saturate(1.08);pointer-events:none;transform:translate(-50%);animation:mini-game-callout var(--mini-game-callout-duration) ease-out both}.mini-game-callout.is-capture{border-color:rgba(var(--mini-game-callout-capture-rgb),.58);background:linear-gradient(135deg,rgba(var(--mini-game-callout-capture-rgb),.24),rgba(var(--mini-game-callout-accent-rgb),.14) 58%,color-mix(in srgb,var(--mini-game-callout-surface) 88%,transparent)),var(--mini-game-callout-surface);box-shadow:0 1.05rem 2.2rem rgba(var(--mini-game-callout-shadow-rgb),.36),0 0 1.25rem rgba(var(--mini-game-callout-capture-rgb),.38),inset 0 0 0 1px #ffffff38}.mini-game-callout.is-success{--mini-game-callout-accent-rgb: 68, 151, 91}.mini-game-callout.is-warning{--mini-game-callout-accent-rgb: 221, 158, 26}@media (prefers-color-scheme: dark){.mini-game-callout{--mini-game-callout-surface: color-mix(in srgb, var(--mini-game-surface, #172116) 94%, transparent);text-shadow:0 1px 0 rgba(0,0,0,.42);box-shadow:0 1.05rem 2.2rem #0000006b,0 0 1.15rem rgba(var(--mini-game-callout-accent-rgb),.34),inset 0 0 0 1px #ffffff14}}.mini-game-callout__icon{display:grid;place-items:center;width:2.3rem;height:2.3rem;border:1px solid rgba(var(--mini-game-callout-accent-rgb),.42);border-radius:8px;background:rgba(var(--mini-game-callout-accent-rgb),.2);color:var(--mini-game-callout-text);font-size:1.05rem;font-weight:1000;box-shadow:inset 0 0 0 1px #ffffff2e}.mini-game-callout__icon img{display:block;width:88%;height:88%;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.mini-game-callout__copy{display:grid;gap:.06rem;min-width:0}.mini-game-callout strong,.mini-game-callout small{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.mini-game-callout strong{font-size:clamp(.9rem,3vw,1.08rem);font-weight:1000;-webkit-line-clamp:2;line-height:1.08}.mini-game-callout small{color:var(--mini-game-callout-muted);font-size:clamp(.68rem,2.4vw,.78rem);font-weight:900;-webkit-line-clamp:2;line-height:1.1;text-transform:uppercase}.mini-game-callout em{grid-column:2;justify-self:start;display:inline-flex;align-items:center;justify-content:center;min-width:0;max-width:100%;min-height:1.65rem;border:1px solid rgba(var(--mini-game-callout-accent-rgb),.28);border-radius:999px;padding:.2rem .52rem;background:rgba(var(--mini-game-callout-accent-rgb),.18);color:var(--mini-game-callout-text);font-size:.68rem;font-style:normal;font-weight:950;letter-spacing:0;line-height:1.05;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@keyframes mini-game-callout{0%{opacity:0;transform:translate(-50%) translateY(.7rem) scale(.96)}18%{opacity:1;transform:translate(-50%) translateY(0) scale(1.02)}86%{opacity:1;transform:translate(-50%) translateY(0) scale(1)}to{opacity:0;transform:translate(-50%) translateY(-.35rem) scale(.98)}}@media (min-width: 760px){.mini-game-callout{bottom:1.15rem;grid-template-columns:auto minmax(0,1fr) minmax(0,auto);width:min(36rem,calc(100% - 2rem));padding:.78rem .9rem}.mini-game-callout em{grid-column:auto;justify-self:stretch;min-width:0;max-width:8.4rem}.mini-game-callout__icon{width:2.6rem;height:2.6rem;font-size:1.18rem}.mini-game-callout strong{font-size:1.12rem}.mini-game-callout small{font-size:.82rem}}\n"] }); }
|
|
70220
70236
|
}
|
|
70221
70237
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MiniGameCalloutComponent, decorators: [{
|
|
70222
70238
|
type: Component,
|
|
@@ -70249,7 +70265,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
70249
70265
|
<em>{{ props().impact }}</em>
|
|
70250
70266
|
}
|
|
70251
70267
|
</div>
|
|
70252
|
-
`, styles: [":host{display:contents}.mini-game-callout{--mini-game-callout-accent-rgb: 139, 112, 222;--mini-game-callout-shadow-rgb: 35, 31, 24;--mini-game-callout-surface: color-mix( in srgb, var(--
|
|
70268
|
+
`, styles: [":host{display:contents}.mini-game-callout{--mini-game-callout-accent-rgb: 139, 112, 222;--mini-game-callout-shadow-rgb: 35, 31, 24;--mini-game-callout-surface: color-mix( in srgb, var(--mini-game-surface, var(--val-surface, #ffffff)) 94%, transparent );--mini-game-callout-text: var(--mini-game-text, var(--val-text-color, #2f352c));--mini-game-callout-muted: var(--mini-game-muted, var(--val-text-muted, rgba(47, 53, 44, .72)));--mini-game-callout-capture-rgb: var(--mini-game-accent-rgb, 228, 74, 58);--mini-game-callout-duration: 2.2s;position:absolute;left:50%;bottom:1rem;z-index:12;display:grid;grid-template-columns:auto minmax(0,1fr);gap:.58rem .7rem;align-items:center;width:min(30rem,calc(100% - 1.25rem));max-width:calc(100% - 1.25rem);border:1px solid rgba(var(--mini-game-callout-accent-rgb),.64);border-radius:1rem;padding:.62rem .72rem;background:linear-gradient(135deg,rgba(var(--mini-game-callout-accent-rgb),.24),rgba(var(--mini-game-callout-accent-rgb),.12) 54%,color-mix(in srgb,var(--mini-game-callout-surface) 88%,transparent)),var(--mini-game-callout-surface);box-shadow:0 1.05rem 2.2rem rgba(var(--mini-game-callout-shadow-rgb),.34),0 0 1.15rem rgba(var(--mini-game-callout-accent-rgb),.34),inset 0 0 0 1px #ffffff38;color:var(--mini-game-callout-text);text-shadow:0 1px 0 rgba(255,255,255,.2);backdrop-filter:blur(.45rem) saturate(1.08);pointer-events:none;transform:translate(-50%);animation:mini-game-callout var(--mini-game-callout-duration) ease-out both}.mini-game-callout.is-capture{border-color:rgba(var(--mini-game-callout-capture-rgb),.58);background:linear-gradient(135deg,rgba(var(--mini-game-callout-capture-rgb),.24),rgba(var(--mini-game-callout-accent-rgb),.14) 58%,color-mix(in srgb,var(--mini-game-callout-surface) 88%,transparent)),var(--mini-game-callout-surface);box-shadow:0 1.05rem 2.2rem rgba(var(--mini-game-callout-shadow-rgb),.36),0 0 1.25rem rgba(var(--mini-game-callout-capture-rgb),.38),inset 0 0 0 1px #ffffff38}.mini-game-callout.is-success{--mini-game-callout-accent-rgb: 68, 151, 91}.mini-game-callout.is-warning{--mini-game-callout-accent-rgb: 221, 158, 26}@media (prefers-color-scheme: dark){.mini-game-callout{--mini-game-callout-surface: color-mix(in srgb, var(--mini-game-surface, #172116) 94%, transparent);text-shadow:0 1px 0 rgba(0,0,0,.42);box-shadow:0 1.05rem 2.2rem #0000006b,0 0 1.15rem rgba(var(--mini-game-callout-accent-rgb),.34),inset 0 0 0 1px #ffffff14}}.mini-game-callout__icon{display:grid;place-items:center;width:2.3rem;height:2.3rem;border:1px solid rgba(var(--mini-game-callout-accent-rgb),.42);border-radius:8px;background:rgba(var(--mini-game-callout-accent-rgb),.2);color:var(--mini-game-callout-text);font-size:1.05rem;font-weight:1000;box-shadow:inset 0 0 0 1px #ffffff2e}.mini-game-callout__icon img{display:block;width:88%;height:88%;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.mini-game-callout__copy{display:grid;gap:.06rem;min-width:0}.mini-game-callout strong,.mini-game-callout small{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.mini-game-callout strong{font-size:clamp(.9rem,3vw,1.08rem);font-weight:1000;-webkit-line-clamp:2;line-height:1.08}.mini-game-callout small{color:var(--mini-game-callout-muted);font-size:clamp(.68rem,2.4vw,.78rem);font-weight:900;-webkit-line-clamp:2;line-height:1.1;text-transform:uppercase}.mini-game-callout em{grid-column:2;justify-self:start;display:inline-flex;align-items:center;justify-content:center;min-width:0;max-width:100%;min-height:1.65rem;border:1px solid rgba(var(--mini-game-callout-accent-rgb),.28);border-radius:999px;padding:.2rem .52rem;background:rgba(var(--mini-game-callout-accent-rgb),.18);color:var(--mini-game-callout-text);font-size:.68rem;font-style:normal;font-weight:950;letter-spacing:0;line-height:1.05;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@keyframes mini-game-callout{0%{opacity:0;transform:translate(-50%) translateY(.7rem) scale(.96)}18%{opacity:1;transform:translate(-50%) translateY(0) scale(1.02)}86%{opacity:1;transform:translate(-50%) translateY(0) scale(1)}to{opacity:0;transform:translate(-50%) translateY(-.35rem) scale(.98)}}@media (min-width: 760px){.mini-game-callout{bottom:1.15rem;grid-template-columns:auto minmax(0,1fr) minmax(0,auto);width:min(36rem,calc(100% - 2rem));padding:.78rem .9rem}.mini-game-callout em{grid-column:auto;justify-self:stretch;min-width:0;max-width:8.4rem}.mini-game-callout__icon{width:2.6rem;height:2.6rem;font-size:1.18rem}.mini-game-callout strong{font-size:1.12rem}.mini-game-callout small{font-size:.82rem}}\n"] }]
|
|
70253
70269
|
}] });
|
|
70254
70270
|
|
|
70255
70271
|
class MiniGameScorePopComponent {
|
|
@@ -70286,7 +70302,7 @@ class MiniGameScorePopComponent {
|
|
|
70286
70302
|
<b>{{ props().detail }}</b>
|
|
70287
70303
|
}
|
|
70288
70304
|
</div>
|
|
70289
|
-
`, isInline: true, styles: [":host{display:contents}.mini-game-score-pop{--mini-game-score-pop-x: 50%;--mini-game-score-pop-y: 50%;--mini-game-score-pop-tone-rgb: var(--
|
|
70305
|
+
`, isInline: true, styles: [":host{display:contents}.mini-game-score-pop{--mini-game-score-pop-x: 50%;--mini-game-score-pop-y: 50%;--mini-game-score-pop-tone-rgb: var(--mini-game-tone-rgb, 79, 169, 218);--mini-game-score-pop-combo-rgb: var(--ion-color-warning-rgb, 255, 196, 9);--mini-game-score-pop-shadow-rgb: var(--mini-game-shadow-rgb, 48, 94, 58);--mini-game-score-pop-duration: 1.15s;position:absolute;left:var(--mini-game-score-pop-x);top:var(--mini-game-score-pop-y);z-index:8;display:grid;justify-items:center;gap:.04rem;min-width:5.5rem;max-width:min(9rem,44vw);transform:translate(-50%,-92%);border:1px solid rgba(var(--mini-game-score-pop-tone-rgb),.4);border-radius:.95rem;padding:.42rem .58rem;background:linear-gradient(135deg,rgba(var(--mini-game-score-pop-tone-rgb),.92),rgba(var(--mini-game-score-pop-shadow-rgb),.84));color:#fffaf0;box-shadow:0 .9rem 1.8rem rgba(var(--mini-game-score-pop-shadow-rgb),.24),inset 0 0 0 1px #ffffff47;pointer-events:none;animation:mini-game-score-pop var(--mini-game-score-pop-duration) ease-out both}.mini-game-score-pop.is-combo,.mini-game-score-pop.is-bonus{border-color:rgba(var(--mini-game-score-pop-combo-rgb),.58);background:linear-gradient(135deg,rgba(var(--mini-game-score-pop-combo-rgb),.94),rgba(var(--mini-game-score-pop-shadow-rgb),.86))}.mini-game-score-pop.is-penalty{--mini-game-score-pop-tone-rgb: 228, 74, 58}.mini-game-score-pop strong{font-size:1.08rem;font-weight:1000;line-height:1}.mini-game-score-pop span,.mini-game-score-pop b{overflow:hidden;max-width:100%;font-size:.64rem;font-weight:950;letter-spacing:.04em;line-height:1.08;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.mini-game-score-pop b{border-radius:999px;padding:.08rem .32rem;background:#ffffff38}@keyframes mini-game-score-pop{0%{opacity:0;transform:translate(-50%,-62%) scale(.82)}18%{opacity:1;transform:translate(-50%,-96%) scale(1.05)}72%{opacity:1;transform:translate(-50%,-112%) scale(1)}to{opacity:0;transform:translate(-50%,-132%) scale(.96)}}@media (prefers-reduced-motion: reduce){.mini-game-score-pop{animation:none!important}}\n"] }); }
|
|
70290
70306
|
}
|
|
70291
70307
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MiniGameScorePopComponent, decorators: [{
|
|
70292
70308
|
type: Component,
|
|
@@ -70310,7 +70326,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
70310
70326
|
<b>{{ props().detail }}</b>
|
|
70311
70327
|
}
|
|
70312
70328
|
</div>
|
|
70313
|
-
`, styles: [":host{display:contents}.mini-game-score-pop{--mini-game-score-pop-x: 50%;--mini-game-score-pop-y: 50%;--mini-game-score-pop-tone-rgb: var(--
|
|
70329
|
+
`, styles: [":host{display:contents}.mini-game-score-pop{--mini-game-score-pop-x: 50%;--mini-game-score-pop-y: 50%;--mini-game-score-pop-tone-rgb: var(--mini-game-tone-rgb, 79, 169, 218);--mini-game-score-pop-combo-rgb: var(--ion-color-warning-rgb, 255, 196, 9);--mini-game-score-pop-shadow-rgb: var(--mini-game-shadow-rgb, 48, 94, 58);--mini-game-score-pop-duration: 1.15s;position:absolute;left:var(--mini-game-score-pop-x);top:var(--mini-game-score-pop-y);z-index:8;display:grid;justify-items:center;gap:.04rem;min-width:5.5rem;max-width:min(9rem,44vw);transform:translate(-50%,-92%);border:1px solid rgba(var(--mini-game-score-pop-tone-rgb),.4);border-radius:.95rem;padding:.42rem .58rem;background:linear-gradient(135deg,rgba(var(--mini-game-score-pop-tone-rgb),.92),rgba(var(--mini-game-score-pop-shadow-rgb),.84));color:#fffaf0;box-shadow:0 .9rem 1.8rem rgba(var(--mini-game-score-pop-shadow-rgb),.24),inset 0 0 0 1px #ffffff47;pointer-events:none;animation:mini-game-score-pop var(--mini-game-score-pop-duration) ease-out both}.mini-game-score-pop.is-combo,.mini-game-score-pop.is-bonus{border-color:rgba(var(--mini-game-score-pop-combo-rgb),.58);background:linear-gradient(135deg,rgba(var(--mini-game-score-pop-combo-rgb),.94),rgba(var(--mini-game-score-pop-shadow-rgb),.86))}.mini-game-score-pop.is-penalty{--mini-game-score-pop-tone-rgb: 228, 74, 58}.mini-game-score-pop strong{font-size:1.08rem;font-weight:1000;line-height:1}.mini-game-score-pop span,.mini-game-score-pop b{overflow:hidden;max-width:100%;font-size:.64rem;font-weight:950;letter-spacing:.04em;line-height:1.08;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.mini-game-score-pop b{border-radius:999px;padding:.08rem .32rem;background:#ffffff38}@keyframes mini-game-score-pop{0%{opacity:0;transform:translate(-50%,-62%) scale(.82)}18%{opacity:1;transform:translate(-50%,-96%) scale(1.05)}72%{opacity:1;transform:translate(-50%,-112%) scale(1)}to{opacity:0;transform:translate(-50%,-132%) scale(.96)}}@media (prefers-reduced-motion: reduce){.mini-game-score-pop{animation:none!important}}\n"] }]
|
|
70314
70330
|
}] });
|
|
70315
70331
|
|
|
70316
70332
|
const GENESIS_CATALOG_URL = 'assets/games/christianity/data/01-genesis.cards.json';
|
|
@@ -75541,30 +75557,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
75541
75557
|
args: [{ providedIn: 'root' }]
|
|
75542
75558
|
}], ctorParameters: () => [] });
|
|
75543
75559
|
|
|
75544
|
-
const CHESSIMALS_POWER_SAMPLES = {
|
|
75545
|
-
eagle: { src: 'assets/games/chessimals/eagle-cry.mp3', volume: 0.62 },
|
|
75546
|
-
bull: { src: 'assets/games/chessimals/bull.mp3', volume: 0.9 },
|
|
75547
|
-
kangaroo: { src: 'assets/games/chessimals/kangaroo-jump.mp3', volume: 0.82 },
|
|
75548
|
-
lion: { src: 'assets/games/chessimals/lion-roar.mp3', volume: 0.82 },
|
|
75549
|
-
};
|
|
75550
|
-
const CHESSIMALS_OUTCOME_SAMPLES = {
|
|
75551
|
-
victory: { src: 'assets/games/chessimals/tada.mp3', volume: 0.72 },
|
|
75552
|
-
defeat: { src: 'assets/games/chessimals/you-lose.mp3', volume: 0.72 },
|
|
75553
|
-
};
|
|
75554
|
-
const CHESSIMALS_MENU_MUSIC = {
|
|
75555
|
-
src: 'assets/games/chessimals/main-menu.mp3',
|
|
75556
|
-
volume: 0.32,
|
|
75557
|
-
};
|
|
75558
|
-
const CHESSIMALS_GAME_MUSIC = {
|
|
75559
|
-
src: 'assets/games/chessimals/Game.mp3',
|
|
75560
|
-
volume: 0.32,
|
|
75561
|
-
};
|
|
75562
75560
|
class RetroAudioService {
|
|
75563
75561
|
constructor() {
|
|
75564
75562
|
this.noteIndex = 0;
|
|
75565
75563
|
this.activeSamples = new Set();
|
|
75566
75564
|
this.activeBufferSources = new Set();
|
|
75567
|
-
this.defaultsReady = this.
|
|
75565
|
+
this.defaultsReady = this.migrateAudioDefaults();
|
|
75568
75566
|
this.enabled = signal(this.readEnabled());
|
|
75569
75567
|
this.musicEnabled = signal(this.readBooleanSetting('val-mini-games-music-enabled', true));
|
|
75570
75568
|
this.sfxEnabled = signal(this.readBooleanSetting('val-mini-games-sfx-enabled', true));
|
|
@@ -75589,7 +75587,7 @@ class RetroAudioService {
|
|
|
75589
75587
|
this.handleUserActivation = () => {
|
|
75590
75588
|
if (!this.enabled() || !this.isDocumentVisible())
|
|
75591
75589
|
return;
|
|
75592
|
-
this.
|
|
75590
|
+
this.preloadGameSamples();
|
|
75593
75591
|
if (this.pausedSampleMusic) {
|
|
75594
75592
|
void this.resumeFromBackground();
|
|
75595
75593
|
return;
|
|
@@ -75647,29 +75645,6 @@ class RetroAudioService {
|
|
|
75647
75645
|
async startMenuMusic() {
|
|
75648
75646
|
await this.startMusic('menu');
|
|
75649
75647
|
}
|
|
75650
|
-
async startChessimalsMenuMusic() {
|
|
75651
|
-
this.preloadChessimalsSamples();
|
|
75652
|
-
await this.startSampleMusic(CHESSIMALS_MENU_MUSIC);
|
|
75653
|
-
}
|
|
75654
|
-
async startChessimalsGameMusic() {
|
|
75655
|
-
this.preloadChessimalsSamples();
|
|
75656
|
-
await this.startSampleMusic(CHESSIMALS_GAME_MUSIC);
|
|
75657
|
-
}
|
|
75658
|
-
preloadChessimalsSamples() {
|
|
75659
|
-
Object.values(CHESSIMALS_POWER_SAMPLES).forEach((sample) => {
|
|
75660
|
-
void this.preloadSampleBuffer(sample.src);
|
|
75661
|
-
});
|
|
75662
|
-
Object.values(CHESSIMALS_OUTCOME_SAMPLES).forEach((sample) => {
|
|
75663
|
-
void this.preloadSampleBuffer(sample.src);
|
|
75664
|
-
});
|
|
75665
|
-
if (typeof Audio === 'undefined')
|
|
75666
|
-
return;
|
|
75667
|
-
[
|
|
75668
|
-
...Object.values(CHESSIMALS_POWER_SAMPLES),
|
|
75669
|
-
CHESSIMALS_OUTCOME_SAMPLES.victory,
|
|
75670
|
-
CHESSIMALS_OUTCOME_SAMPLES.defeat,
|
|
75671
|
-
].forEach((sample) => this.preloadSample(sample.src));
|
|
75672
|
-
}
|
|
75673
75648
|
async startGameMusic() {
|
|
75674
75649
|
await this.startMusic('game');
|
|
75675
75650
|
}
|
|
@@ -75753,16 +75728,6 @@ class RetroAudioService {
|
|
|
75753
75728
|
simonPad(freq) {
|
|
75754
75729
|
void this.tone(freq, 0.22, 'sine', 0.055);
|
|
75755
75730
|
}
|
|
75756
|
-
chessimalsPowerPreview(power) {
|
|
75757
|
-
const tones = {
|
|
75758
|
-
eagle: 880,
|
|
75759
|
-
bull: 349.23,
|
|
75760
|
-
kangaroo: 659.25,
|
|
75761
|
-
lion: 523.25,
|
|
75762
|
-
};
|
|
75763
|
-
void this.tone(tones[power], 0.12, power === 'bull' ? 'sawtooth' : 'triangle', 0.038);
|
|
75764
|
-
window.setTimeout(() => void this.tone(tones[power] * 1.25, 0.07, 'sine', 0.018), 72);
|
|
75765
|
-
}
|
|
75766
75731
|
simonStepOk() {
|
|
75767
75732
|
void this.tone(880, 0.08, 'triangle', 0.035);
|
|
75768
75733
|
}
|
|
@@ -75835,93 +75800,6 @@ class RetroAudioService {
|
|
|
75835
75800
|
], 'triangle', 0.042, 62);
|
|
75836
75801
|
window.setTimeout(() => void this.filteredNoise(0.18, 0.016, 'bandpass', 1800), 110);
|
|
75837
75802
|
}
|
|
75838
|
-
chessimalsMove() {
|
|
75839
|
-
void this.sequence([
|
|
75840
|
-
[392, 0.045],
|
|
75841
|
-
[493.88, 0.055],
|
|
75842
|
-
], 'triangle', 0.032, 48);
|
|
75843
|
-
window.setTimeout(() => void this.filteredNoise(0.035, 0.012, 'bandpass', 820), 8);
|
|
75844
|
-
}
|
|
75845
|
-
chessimalsBotMove() {
|
|
75846
|
-
void this.sequence([
|
|
75847
|
-
[329.63, 0.055],
|
|
75848
|
-
[246.94, 0.07],
|
|
75849
|
-
], 'sawtooth', 0.024, 56);
|
|
75850
|
-
window.setTimeout(() => void this.filteredNoise(0.05, 0.01, 'lowpass', 420), 16);
|
|
75851
|
-
}
|
|
75852
|
-
chessimalsCapture() {
|
|
75853
|
-
void this.sequence([
|
|
75854
|
-
[174.61, 0.04],
|
|
75855
|
-
[246.94, 0.045],
|
|
75856
|
-
[587.33, 0.095],
|
|
75857
|
-
[783.99, 0.08],
|
|
75858
|
-
], 'square', 0.046, 44);
|
|
75859
|
-
window.setTimeout(() => void this.sweep(96, 42, 0.18, 'sawtooth', 0.026), 20);
|
|
75860
|
-
window.setTimeout(() => void this.filteredNoise(0.18, 0.05, 'lowpass', 520), 18);
|
|
75861
|
-
window.setTimeout(() => void this.filteredNoise(0.07, 0.028, 'bandpass', 1800), 84);
|
|
75862
|
-
}
|
|
75863
|
-
chessimalsPower(power) {
|
|
75864
|
-
if (this.playChessimalsPowerSample(power))
|
|
75865
|
-
return;
|
|
75866
|
-
this.chessimalsPowerFallback(power);
|
|
75867
|
-
}
|
|
75868
|
-
chessimalsPowerFallback(power) {
|
|
75869
|
-
const notes = {
|
|
75870
|
-
eagle: [
|
|
75871
|
-
[659.25, 0.055],
|
|
75872
|
-
[880, 0.065],
|
|
75873
|
-
[1318.51, 0.12],
|
|
75874
|
-
],
|
|
75875
|
-
bull: [
|
|
75876
|
-
[196, 0.075],
|
|
75877
|
-
[164.81, 0.075],
|
|
75878
|
-
[246.94, 0.13],
|
|
75879
|
-
],
|
|
75880
|
-
kangaroo: [
|
|
75881
|
-
[392, 0.055],
|
|
75882
|
-
[0, 0.04],
|
|
75883
|
-
[783.99, 0.11],
|
|
75884
|
-
],
|
|
75885
|
-
lion: [
|
|
75886
|
-
[261.63, 0.06],
|
|
75887
|
-
[392, 0.06],
|
|
75888
|
-
[523.25, 0.06],
|
|
75889
|
-
[783.99, 0.14],
|
|
75890
|
-
],
|
|
75891
|
-
};
|
|
75892
|
-
void this.sequence(notes[power], power === 'bull' ? 'sawtooth' : 'triangle', 0.046, 58);
|
|
75893
|
-
if (power === 'eagle') {
|
|
75894
|
-
void this.sweep(720, 1568, 0.18, 'triangle', 0.028);
|
|
75895
|
-
void this.filteredNoise(0.22, 0.025, 'highpass', 1600);
|
|
75896
|
-
window.setTimeout(() => void this.filteredNoise(0.08, 0.018, 'bandpass', 2600), 92);
|
|
75897
|
-
window.setTimeout(() => void this.tone(1760, 0.055, 'sine', 0.018), 150);
|
|
75898
|
-
return;
|
|
75899
|
-
}
|
|
75900
|
-
if (power === 'bull') {
|
|
75901
|
-
window.setTimeout(() => void this.tone(82.41, 0.16, 'sawtooth', 0.038), 72);
|
|
75902
|
-
window.setTimeout(() => void this.sweep(138.59, 65.41, 0.18, 'sawtooth', 0.026), 118);
|
|
75903
|
-
window.setTimeout(() => void this.filteredNoise(0.16, 0.038, 'lowpass', 260), 36);
|
|
75904
|
-
window.setTimeout(() => void this.filteredNoise(0.055, 0.026, 'bandpass', 960), 170);
|
|
75905
|
-
return;
|
|
75906
|
-
}
|
|
75907
|
-
if (power === 'kangaroo') {
|
|
75908
|
-
window.setTimeout(() => void this.sweep(420, 940, 0.11, 'sine', 0.032), 88);
|
|
75909
|
-
window.setTimeout(() => void this.sweep(940, 520, 0.1, 'sine', 0.026), 190);
|
|
75910
|
-
window.setTimeout(() => void this.tone(261.63, 0.055, 'triangle', 0.018), 245);
|
|
75911
|
-
window.setTimeout(() => void this.filteredNoise(0.035, 0.018, 'bandpass', 1180), 218);
|
|
75912
|
-
return;
|
|
75913
|
-
}
|
|
75914
|
-
window.setTimeout(() => void this.sweep(164.81, 392, 0.24, 'sawtooth', 0.034), 70);
|
|
75915
|
-
window.setTimeout(() => void this.tone(98, 0.18, 'sawtooth', 0.02), 150);
|
|
75916
|
-
window.setTimeout(() => void this.filteredNoise(0.28, 0.032, 'bandpass', 340), 62);
|
|
75917
|
-
window.setTimeout(() => void this.sweep(196, 146.83, 0.22, 'sawtooth', 0.022), 116);
|
|
75918
|
-
}
|
|
75919
|
-
playChessimalsPowerSample(power) {
|
|
75920
|
-
const sample = CHESSIMALS_POWER_SAMPLES[power];
|
|
75921
|
-
if (this.playBufferedSample(sample))
|
|
75922
|
-
return true;
|
|
75923
|
-
return this.playSample(sample, () => this.chessimalsPowerFallback(power));
|
|
75924
|
-
}
|
|
75925
75803
|
playSample(sample, fallback) {
|
|
75926
75804
|
if (!this.canPlaySfx() || typeof Audio === 'undefined')
|
|
75927
75805
|
return false;
|
|
@@ -75975,58 +75853,6 @@ class RetroAudioService {
|
|
|
75975
75853
|
return false;
|
|
75976
75854
|
}
|
|
75977
75855
|
}
|
|
75978
|
-
chessimalsVictory() {
|
|
75979
|
-
this.stopMusic();
|
|
75980
|
-
this.stopActiveSamples();
|
|
75981
|
-
if (this.playBufferedSample(CHESSIMALS_OUTCOME_SAMPLES.victory))
|
|
75982
|
-
return;
|
|
75983
|
-
if (this.playSample(CHESSIMALS_OUTCOME_SAMPLES.victory, () => this.chessimalsVictoryFallback()))
|
|
75984
|
-
return;
|
|
75985
|
-
this.chessimalsVictoryFallback();
|
|
75986
|
-
}
|
|
75987
|
-
chessimalsDefeat() {
|
|
75988
|
-
this.stopMusic();
|
|
75989
|
-
this.stopActiveSamples();
|
|
75990
|
-
if (this.playBufferedSample(CHESSIMALS_OUTCOME_SAMPLES.defeat))
|
|
75991
|
-
return;
|
|
75992
|
-
if (this.playSample(CHESSIMALS_OUTCOME_SAMPLES.defeat, () => this.lose()))
|
|
75993
|
-
return;
|
|
75994
|
-
this.lose();
|
|
75995
|
-
}
|
|
75996
|
-
chessimalsVictoryFallback() {
|
|
75997
|
-
void this.sequence([
|
|
75998
|
-
[196, 0.08],
|
|
75999
|
-
[261.63, 0.08],
|
|
76000
|
-
[329.63, 0.08],
|
|
76001
|
-
[392, 0.1],
|
|
76002
|
-
[523.25, 0.12],
|
|
76003
|
-
[783.99, 0.16],
|
|
76004
|
-
[1046.5, 0.22],
|
|
76005
|
-
], 'triangle', 0.05, 72);
|
|
76006
|
-
window.setTimeout(() => void this.sweep(130.81, 65.41, 0.28, 'sawtooth', 0.02), 40);
|
|
76007
|
-
window.setTimeout(() => void this.sweep(523.25, 1567.98, 0.34, 'sine', 0.026), 240);
|
|
76008
|
-
window.setTimeout(() => void this.filteredNoise(0.16, 0.022, 'bandpass', 1400), 120);
|
|
76009
|
-
window.setTimeout(() => void this.sequence([[987.77, 0.08], [1318.51, 0.12]], 'triangle', 0.032, 86), 520);
|
|
76010
|
-
}
|
|
76011
|
-
chessimalsJoinRequest() {
|
|
76012
|
-
void this.sequence([
|
|
76013
|
-
[523.25, 0.055],
|
|
76014
|
-
[659.25, 0.06],
|
|
76015
|
-
[987.77, 0.12],
|
|
76016
|
-
], 'triangle', 0.034, 58);
|
|
76017
|
-
window.setTimeout(() => void this.tone(1318.51, 0.075, 'sine', 0.02), 136);
|
|
76018
|
-
window.setTimeout(() => void this.filteredNoise(0.06, 0.01, 'highpass', 1800), 98);
|
|
76019
|
-
}
|
|
76020
|
-
chessimalsPowerUnlocked() {
|
|
76021
|
-
void this.sequence([
|
|
76022
|
-
[392, 0.055],
|
|
76023
|
-
[523.25, 0.055],
|
|
76024
|
-
[659.25, 0.08],
|
|
76025
|
-
[987.77, 0.13],
|
|
76026
|
-
], 'triangle', 0.038, 64);
|
|
76027
|
-
window.setTimeout(() => void this.sweep(220, 880, 0.22, 'sine', 0.024), 70);
|
|
76028
|
-
window.setTimeout(() => void this.filteredNoise(0.24, 0.018, 'bandpass', 1200), 54);
|
|
76029
|
-
}
|
|
76030
75856
|
readEnabled() {
|
|
76031
75857
|
return this.readBooleanSetting('val-mini-games-audio', true);
|
|
76032
75858
|
}
|
|
@@ -76100,7 +75926,11 @@ class RetroAudioService {
|
|
|
76100
75926
|
this.bufferPreloads.set(src, preload);
|
|
76101
75927
|
return preload;
|
|
76102
75928
|
}
|
|
76103
|
-
|
|
75929
|
+
/** Sube a un valor audible los volumenes que quedaron en cero de una version
|
|
75930
|
+
* previa. La clave de storage conserva el nombre viejo a proposito: cambiarla
|
|
75931
|
+
* haria que la migracion se vuelva a correr y le pise el volumen a quien ya
|
|
75932
|
+
* lo eligio. */
|
|
75933
|
+
migrateAudioDefaults() {
|
|
76104
75934
|
try {
|
|
76105
75935
|
const migrationKey = 'val-mini-games-chessimals-audio-defaults-v2';
|
|
76106
75936
|
if (localStorage.getItem(migrationKey) === '1')
|
|
@@ -76120,6 +75950,9 @@ class RetroAudioService {
|
|
|
76120
75950
|
}
|
|
76121
75951
|
return true;
|
|
76122
75952
|
}
|
|
75953
|
+
/** Gancho para que un juego precargue sus propios samples en cuanto el usuario
|
|
75954
|
+
* interactua (antes, el navegador no deja tocar audio). Vacio por defecto. */
|
|
75955
|
+
preloadGameSamples() { }
|
|
76123
75956
|
canPlayMusic() {
|
|
76124
75957
|
return this.enabled() && this.musicEnabled() && this.musicVolume() > 0;
|
|
76125
75958
|
}
|
|
@@ -76381,7 +76214,7 @@ class RetroAudioService {
|
|
|
76381
76214
|
oscillator.start();
|
|
76382
76215
|
oscillator.stop(ctx.currentTime + duration + 0.02);
|
|
76383
76216
|
}
|
|
76384
|
-
//
|
|
76217
|
+
// Los juegos generan sus capas con WebAudio en vez de usar samples de terceros,
|
|
76385
76218
|
// avoiding licensing risk while keeping each animal power expressive.
|
|
76386
76219
|
async filteredNoise(duration = 0.12, gainValue = 0.025, filterType = 'bandpass', frequency = 900) {
|
|
76387
76220
|
if (!this.canPlaySfx())
|
|
@@ -77947,10 +77780,11 @@ class MiniGamesMenuComponent {
|
|
|
77947
77780
|
ngOnDestroy() {
|
|
77948
77781
|
this.audio.stopMusic();
|
|
77949
77782
|
}
|
|
77783
|
+
/** Respeta el orden en que el consumer pasa los juegos. Antes forzaba a
|
|
77784
|
+
* 'chessimals' al principio: un producto no se privilegia desde la libreria,
|
|
77785
|
+
* lo decide quien arma la lista. */
|
|
77950
77786
|
get safeGames() {
|
|
77951
|
-
return this.games
|
|
77952
|
-
.filter((game) => !!game && !!game.id && game.status !== 'soon')
|
|
77953
|
-
.sort((a, b) => Number(b.id === 'chessimals') - Number(a.id === 'chessimals'));
|
|
77787
|
+
return this.games.filter((game) => !!game && !!game.id && game.status !== 'soon');
|
|
77954
77788
|
}
|
|
77955
77789
|
t(key) {
|
|
77956
77790
|
this.i18n.lang();
|