@nodots-llc/backgammon-core
Version:
Core game logic for Nodots Backgammon
55 lines (54 loc) • 3.91 kB
JavaScript
;
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.GameEventEmitter = exports.warn = exports.setLogLevel = exports.setIncludeCallerInfo = exports.setConsoleEnabled = exports.logger = exports.info = exports.error = exports.debug = exports.RobotAIRegistry = exports.ascii = exports.isValidUuid = exports.randomBackgammonDirection = exports.randomBackgammonColor = exports.randomBoolean = exports.generateId = void 0;
var uuid_1 = require("uuid");
Object.defineProperty(exports, "generateId", { enumerable: true, get: function () { return uuid_1.v4; } });
const randomBoolean = () => Math.random() > 0.5;
exports.randomBoolean = randomBoolean;
const randomBackgammonColor = () => (0, exports.randomBoolean)() ? 'black' : 'white';
exports.randomBackgammonColor = randomBackgammonColor;
const randomBackgammonDirection = () => (0, exports.randomBoolean)() ? 'clockwise' : 'counterclockwise';
exports.randomBackgammonDirection = randomBackgammonDirection;
const isValidUuid = (uuid) => /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/.test(uuid);
exports.isValidUuid = isValidUuid;
__exportStar(require("./Board"), exports);
var ascii_1 = require("./Board/ascii");
Object.defineProperty(exports, "ascii", { enumerable: true, get: function () { return ascii_1.ascii; } });
__exportStar(require("./Checker"), exports);
__exportStar(require("./Cube"), exports);
__exportStar(require("./Dice"), exports);
__exportStar(require("./Game"), exports);
__exportStar(require("./History"), exports);
__exportStar(require("./Move"), exports);
__exportStar(require("./Play"), exports);
__exportStar(require("./Player"), exports);
__exportStar(require("./Services"), exports);
var RobotAIRegistry_1 = require("./AI/RobotAIRegistry");
Object.defineProperty(exports, "RobotAIRegistry", { enumerable: true, get: function () { return RobotAIRegistry_1.RobotAIRegistry; } });
// Export logger utilities for consumers to configure
var logger_1 = require("./utils/logger");
Object.defineProperty(exports, "debug", { enumerable: true, get: function () { return logger_1.debug; } });
Object.defineProperty(exports, "error", { enumerable: true, get: function () { return logger_1.error; } });
Object.defineProperty(exports, "info", { enumerable: true, get: function () { return logger_1.info; } });
Object.defineProperty(exports, "logger", { enumerable: true, get: function () { return logger_1.logger; } });
Object.defineProperty(exports, "setConsoleEnabled", { enumerable: true, get: function () { return logger_1.setConsoleEnabled; } });
Object.defineProperty(exports, "setIncludeCallerInfo", { enumerable: true, get: function () { return logger_1.setIncludeCallerInfo; } });
Object.defineProperty(exports, "setLogLevel", { enumerable: true, get: function () { return logger_1.setLogLevel; } });
Object.defineProperty(exports, "warn", { enumerable: true, get: function () { return logger_1.warn; } });
var GameEventEmitter_1 = require("./events/GameEventEmitter");
Object.defineProperty(exports, "GameEventEmitter", { enumerable: true, get: function () { return GameEventEmitter_1.GameEventEmitter; } });
// export * from './XG' // Temporarily disabled for Issue #7 - comprehensive history system