Keno

Properties:

type TemplateOptions = {
  scene?: {
    backgroundImage?: string;
  };
};
 
interface TemplateWithWeb3Props extends BaseGameProps {
  options: TemplateOptions;
  minWager?: number;
  maxWager?: number;
  hideBetHistory?: boolean;
 
  onAnimationStep?: (step: number) => void;
  onAnimationCompleted?: (result: KenoGameResult[]) => void;
}

Example:

'use client';
 
import { useModalsStore, useToast } from '@winrlabs/ui';
import { KenoGame } from '@winrlabs/web3-games';
import React from 'react';
import { GameType } from '@winrlabs/games';
 
const KenoPage = () => {
  const { openModal } = useModalsStore();
 
  const { toast } = useToast();
 
  const { checkProgressChanges } = useProgressCheck();
 
  const { minWager, maxWager } = useGetWagerInfo(GameType.KENO);
 
  return (
    <>
      <KenoGame
        minWager={minWager}
        maxWager={maxWager}
        options={{}}
        onAnimationCompleted={() => {
          checkProgressChanges();
 
          refetchHistory();
        }}
        onError={(e) => {
          toast({
            title: 'Error',
            description: e || 'Something went wrong',
            variant: 'destructive',
          });
        }}
        onLogin={() => openModal('login')}
        hideBetHistory
      />
    </>
  );
};
 
export default KenoPage;