git-slot-machine 1.0.0 → 1.1.1

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 (54) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/README.md +15 -0
  3. package/dist/animation/slotMachine.d.ts +1 -1
  4. package/dist/animation/slotMachine.d.ts.map +1 -1
  5. package/dist/animation/slotMachine.js +15 -22
  6. package/dist/animation/slotMachine.js.map +1 -1
  7. package/dist/api.js +11 -19
  8. package/dist/api.js.map +1 -1
  9. package/dist/balance.js +7 -46
  10. package/dist/balance.js.map +1 -1
  11. package/dist/commands/auth.js +40 -48
  12. package/dist/commands/auth.js.map +1 -1
  13. package/dist/commands/balance.js +14 -20
  14. package/dist/commands/balance.js.map +1 -1
  15. package/dist/commands/config.js +19 -26
  16. package/dist/commands/config.js.map +1 -1
  17. package/dist/commands/init.d.ts.map +1 -1
  18. package/dist/commands/init.js +87 -90
  19. package/dist/commands/init.js.map +1 -1
  20. package/dist/commands/play.js +31 -37
  21. package/dist/commands/play.js.map +1 -1
  22. package/dist/commands/spin.js +6 -9
  23. package/dist/commands/spin.js.map +1 -1
  24. package/dist/commands/sync.js +23 -29
  25. package/dist/commands/sync.js.map +1 -1
  26. package/dist/commands/test.js +3 -6
  27. package/dist/commands/test.js.map +1 -1
  28. package/dist/config.d.ts +3 -0
  29. package/dist/config.d.ts.map +1 -1
  30. package/dist/config.js +49 -52
  31. package/dist/config.js.map +1 -1
  32. package/dist/index.js +21 -23
  33. package/dist/index.js.map +1 -1
  34. package/dist/patterns.js +3 -7
  35. package/dist/patterns.js.map +1 -1
  36. package/dist/templates/post-commit.js +1 -4
  37. package/dist/templates/post-commit.js.map +1 -1
  38. package/dist/utils/git.js +7 -12
  39. package/dist/utils/git.js.map +1 -1
  40. package/package.json +2 -1
  41. package/src/animation/slotMachine.ts +1 -1
  42. package/src/api.ts +1 -1
  43. package/src/commands/auth.ts +2 -2
  44. package/src/commands/balance.ts +1 -1
  45. package/src/commands/config.ts +1 -1
  46. package/src/commands/init.ts +56 -17
  47. package/src/commands/play.ts +5 -5
  48. package/src/commands/spin.ts +2 -2
  49. package/src/commands/sync.ts +2 -2
  50. package/src/commands/test.ts +1 -1
  51. package/src/config.ts +22 -0
  52. package/src/index.ts +8 -8
  53. package/src/patterns.test.ts +1 -1
  54. package/tsconfig.json +2 -1
@@ -1,59 +1,52 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.configGetCommand = configGetCommand;
7
- exports.configSetCommand = configSetCommand;
8
- const chalk_1 = __importDefault(require("chalk"));
9
- const config_1 = require("../config");
10
- async function configGetCommand(key) {
1
+ import chalk from 'chalk';
2
+ import { getApiUrl, setApiUrl, isSyncEnabled, setSyncEnabled, getConfig } from '../config.js';
3
+ export async function configGetCommand(key) {
11
4
  try {
12
- const config = (0, config_1.getConfig)();
5
+ const config = getConfig();
13
6
  switch (key) {
14
7
  case 'api-url':
15
- console.log((0, config_1.getApiUrl)());
8
+ console.log(getApiUrl());
16
9
  break;
17
10
  case 'sync-enabled':
18
- console.log((0, config_1.isSyncEnabled)());
11
+ console.log(isSyncEnabled());
19
12
  break;
20
13
  case 'all':
21
- console.log(chalk_1.default.bold('Configuration:'));
22
- console.log(` API URL: ${chalk_1.default.cyan((0, config_1.getApiUrl)())}`);
23
- console.log(` Sync Enabled: ${chalk_1.default.cyan((0, config_1.isSyncEnabled)())}`);
24
- console.log(` Has Token: ${chalk_1.default.cyan(config.apiToken ? 'yes' : 'no')}`);
14
+ console.log(chalk.bold('Configuration:'));
15
+ console.log(` API URL: ${chalk.cyan(getApiUrl())}`);
16
+ console.log(` Sync Enabled: ${chalk.cyan(isSyncEnabled())}`);
17
+ console.log(` Has Token: ${chalk.cyan(config.apiToken ? 'yes' : 'no')}`);
25
18
  break;
26
19
  default:
27
- console.error(chalk_1.default.red(`Unknown config key: ${key}`));
20
+ console.error(chalk.red(`Unknown config key: ${key}`));
28
21
  console.log('Available keys: api-url, sync-enabled, all');
29
22
  process.exit(1);
30
23
  }
31
24
  }
32
25
  catch (error) {
33
- console.error(chalk_1.default.red(`Error: ${error.message}`));
26
+ console.error(chalk.red(`Error: ${error.message}`));
34
27
  process.exit(1);
35
28
  }
36
29
  }
37
- async function configSetCommand(key, value) {
30
+ export async function configSetCommand(key, value) {
38
31
  try {
39
32
  switch (key) {
40
33
  case 'api-url':
41
- (0, config_1.setApiUrl)(value);
42
- console.log(chalk_1.default.green(`API URL set to: ${value}`));
34
+ setApiUrl(value);
35
+ console.log(chalk.green(`API URL set to: ${value}`));
43
36
  break;
44
37
  case 'sync-enabled':
45
38
  const enabled = value.toLowerCase() === 'true' || value === '1';
46
- (0, config_1.setSyncEnabled)(enabled);
47
- console.log(chalk_1.default.green(`Sync ${enabled ? 'enabled' : 'disabled'}`));
39
+ setSyncEnabled(enabled);
40
+ console.log(chalk.green(`Sync ${enabled ? 'enabled' : 'disabled'}`));
48
41
  break;
49
42
  default:
50
- console.error(chalk_1.default.red(`Unknown config key: ${key}`));
43
+ console.error(chalk.red(`Unknown config key: ${key}`));
51
44
  console.log('Available keys: api-url, sync-enabled');
52
45
  process.exit(1);
53
46
  }
54
47
  }
55
48
  catch (error) {
56
- console.error(chalk_1.default.red(`Error: ${error.message}`));
49
+ console.error(chalk.red(`Error: ${error.message}`));
57
50
  process.exit(1);
58
51
  }
59
52
  }
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":";;;;;AASA,4CA0BC;AAED,4CAqBC;AA1DD,kDAA0B;AAC1B,sCAMmB;AAEZ,KAAK,UAAU,gBAAgB,CAAC,GAAW;IAChD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAA,kBAAS,GAAE,CAAC;QAE3B,QAAQ,GAAG,EAAE,CAAC;YACZ,KAAK,SAAS;gBACZ,OAAO,CAAC,GAAG,CAAC,IAAA,kBAAS,GAAE,CAAC,CAAC;gBACzB,MAAM;YACR,KAAK,cAAc;gBACjB,OAAO,CAAC,GAAG,CAAC,IAAA,sBAAa,GAAE,CAAC,CAAC;gBAC7B,MAAM;YACR,KAAK,KAAK;gBACR,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;gBAC1C,OAAO,CAAC,GAAG,CAAC,cAAc,eAAK,CAAC,IAAI,CAAC,IAAA,kBAAS,GAAE,CAAC,EAAE,CAAC,CAAC;gBACrD,OAAO,CAAC,GAAG,CAAC,mBAAmB,eAAK,CAAC,IAAI,CAAC,IAAA,sBAAa,GAAE,CAAC,EAAE,CAAC,CAAC;gBAC9D,OAAO,CAAC,GAAG,CAAC,gBAAgB,eAAK,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC1E,MAAM;YACR;gBACE,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,uBAAuB,GAAG,EAAE,CAAC,CAAC,CAAC;gBACvD,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;gBAC1D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,UAAW,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAEM,KAAK,UAAU,gBAAgB,CAAC,GAAW,EAAE,KAAa;IAC/D,IAAI,CAAC;QACH,QAAQ,GAAG,EAAE,CAAC;YACZ,KAAK,SAAS;gBACZ,IAAA,kBAAS,EAAC,KAAK,CAAC,CAAC;gBACjB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,mBAAmB,KAAK,EAAE,CAAC,CAAC,CAAC;gBACrD,MAAM;YACR,KAAK,cAAc;gBACjB,MAAM,OAAO,GAAG,KAAK,CAAC,WAAW,EAAE,KAAK,MAAM,IAAI,KAAK,KAAK,GAAG,CAAC;gBAChE,IAAA,uBAAc,EAAC,OAAO,CAAC,CAAC;gBACxB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,QAAQ,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;gBACrE,MAAM;YACR;gBACE,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,uBAAuB,GAAG,EAAE,CAAC,CAAC,CAAC;gBACvD,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;gBACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,UAAW,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACL,SAAS,EACT,SAAS,EACT,aAAa,EACb,cAAc,EACd,SAAS,EACV,MAAM,cAAc,CAAC;AAEtB,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,GAAW;IAChD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAE3B,QAAQ,GAAG,EAAE,CAAC;YACZ,KAAK,SAAS;gBACZ,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;gBACzB,MAAM;YACR,KAAK,cAAc;gBACjB,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC;gBAC7B,MAAM;YACR,KAAK,KAAK;gBACR,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;gBAC1C,OAAO,CAAC,GAAG,CAAC,cAAc,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC;gBACrD,OAAO,CAAC,GAAG,CAAC,mBAAmB,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,EAAE,CAAC,CAAC;gBAC9D,OAAO,CAAC,GAAG,CAAC,gBAAgB,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC1E,MAAM;YACR;gBACE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,uBAAuB,GAAG,EAAE,CAAC,CAAC,CAAC;gBACvD,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;gBAC1D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,UAAW,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,GAAW,EAAE,KAAa;IAC/D,IAAI,CAAC;QACH,QAAQ,GAAG,EAAE,CAAC;YACZ,KAAK,SAAS;gBACZ,SAAS,CAAC,KAAK,CAAC,CAAC;gBACjB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,mBAAmB,KAAK,EAAE,CAAC,CAAC,CAAC;gBACrD,MAAM;YACR,KAAK,cAAc;gBACjB,MAAM,OAAO,GAAG,KAAK,CAAC,WAAW,EAAE,KAAK,MAAM,IAAI,KAAK,KAAK,GAAG,CAAC;gBAChE,cAAc,CAAC,OAAO,CAAC,CAAC;gBACxB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;gBACrE,MAAM;YACR;gBACE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,uBAAuB,GAAG,EAAE,CAAC,CAAC,CAAC;gBACvD,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;gBACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,UAAW,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AA6BA,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CA2FjD"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AA4CA,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAmHjD"}
@@ -1,48 +1,10 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- var __importDefault = (this && this.__importDefault) || function (mod) {
36
- return (mod && mod.__esModule) ? mod : { "default": mod };
37
- };
38
- Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.initCommand = initCommand;
40
- const fs = __importStar(require("fs"));
41
- const path = __importStar(require("path"));
42
- const chalk_1 = __importDefault(require("chalk"));
43
- const git_1 = require("../utils/git");
44
- const post_commit_1 = require("../templates/post-commit");
45
- const config_1 = require("../config");
1
+ import * as fs from 'fs';
2
+ import * as path from 'path';
3
+ import * as readline from 'readline';
4
+ import chalk from 'chalk';
5
+ import { isGitRepo } from '../utils/git.js';
6
+ import { POST_COMMIT_HOOK } from '../templates/post-commit.js';
7
+ import { getRepoInfo, setGitHubUsername, getGitHubUsername, setPrivateRepo } from '../config.js';
46
8
  async function isRepoPublic(owner, repo) {
47
9
  try {
48
10
  const response = await fetch(`https://api.github.com/repos/${owner}/${repo}`, {
@@ -63,86 +25,121 @@ async function isRepoPublic(owner, repo) {
63
25
  return null;
64
26
  }
65
27
  }
66
- async function initCommand() {
28
+ function askQuestion(question) {
29
+ const rl = readline.createInterface({
30
+ input: process.stdin,
31
+ output: process.stdout
32
+ });
33
+ return new Promise((resolve) => {
34
+ rl.question(question, (answer) => {
35
+ rl.close();
36
+ resolve(answer.trim().toLowerCase());
37
+ });
38
+ });
39
+ }
40
+ export async function initCommand() {
67
41
  // Check if git repo
68
- if (!(0, git_1.isGitRepo)()) {
69
- console.error(chalk_1.default.red('Error: Not a git repository'));
70
- console.log(chalk_1.default.dim('Run this command from the root of a git repository'));
42
+ if (!isGitRepo()) {
43
+ console.error(chalk.red('Error: Not a git repository'));
44
+ console.log(chalk.dim('Run this command from the root of a git repository'));
71
45
  process.exit(1);
72
46
  }
73
47
  // Extract and save GitHub username from remote URL (do this first)
74
- const repoInfo = (0, config_1.getRepoInfo)();
48
+ const repoInfo = getRepoInfo();
75
49
  if (!repoInfo) {
76
50
  console.log();
77
- console.error(chalk_1.default.red('Error: No GitHub remote detected'));
51
+ console.error(chalk.red('Error: No GitHub remote detected'));
78
52
  console.log();
79
- console.log(chalk_1.default.yellow('Git Slot Machine requires a public GitHub repository.'));
53
+ console.log(chalk.yellow('Git Slot Machine requires a GitHub repository.'));
80
54
  console.log();
81
- console.log(chalk_1.default.dim('Add a GitHub remote to this repo:'));
82
- console.log(chalk_1.default.cyan(' git remote add origin https://github.com/username/repo.git'));
55
+ console.log(chalk.dim('Add a GitHub remote to this repo:'));
56
+ console.log(chalk.cyan(' git remote add origin https://github.com/username/repo.git'));
83
57
  console.log();
84
- console.log(chalk_1.default.dim('This prevents farming points in private/local repos.'));
85
- console.log(chalk_1.default.dim('Your commits must be publicly verifiable.'));
86
58
  process.exit(1);
87
59
  }
88
- const existingUsername = (0, config_1.getGitHubUsername)();
60
+ const existingUsername = getGitHubUsername();
89
61
  if (!existingUsername) {
90
- (0, config_1.setGitHubUsername)(repoInfo.owner);
91
- console.log(chalk_1.default.dim(`Detected GitHub username: ${repoInfo.owner}`));
62
+ setGitHubUsername(repoInfo.owner);
63
+ console.log(chalk.dim(`Detected GitHub username: ${repoInfo.owner}`));
92
64
  }
93
65
  // Check if repository is public
94
- console.log(chalk_1.default.dim('Checking repository visibility...'));
66
+ console.log(chalk.dim('Checking repository visibility...'));
95
67
  const isPublic = await isRepoPublic(repoInfo.owner, repoInfo.name);
68
+ let usePrivacyMode = false;
96
69
  if (isPublic === false) {
70
+ console.log(chalk.yellow('⚠️ Private repository detected'));
97
71
  console.log();
98
- console.error(chalk_1.default.red('Error: Private repository detected'));
72
+ console.log(chalk.cyan('Privacy Mode Available'));
73
+ console.log(chalk.dim('You can still use Git Slot Machine with privacy mode enabled.'));
99
74
  console.log();
100
- console.log(chalk_1.default.yellow('Git Slot Machine only supports public repositories.'));
75
+ console.log(chalk.yellow('What happens in privacy mode:'));
76
+ console.log(chalk.dim(' • Repository name/org are NOT stored on the server'));
77
+ console.log(chalk.dim(' • Sent as "private/private" to the API'));
78
+ console.log(chalk.dim(' • Displayed as "*******/*******" on leaderboard'));
79
+ console.log(chalk.dim(' • Your GitHub username is still public'));
80
+ console.log(chalk.dim(' • All private repos share one balance'));
101
81
  console.log();
102
- console.log(chalk_1.default.dim('Why? Your commit hashes would be visible on the public'));
103
- console.log(chalk_1.default.dim('leaderboard, which could expose information about your'));
104
- console.log(chalk_1.default.dim('private repository.'));
105
- console.log();
106
- console.log(chalk_1.default.dim('Please use git-slot-machine with a public repository.'));
107
- process.exit(1);
82
+ const answer = await askQuestion(chalk.green('Enable privacy mode? (y/n): '));
83
+ if (answer === 'y' || answer === 'yes') {
84
+ usePrivacyMode = true;
85
+ setPrivateRepo(true);
86
+ console.log(chalk.green(' Privacy mode enabled'));
87
+ console.log(chalk.dim('Repository details will never be sent to the server.'));
88
+ }
89
+ else {
90
+ console.log();
91
+ console.log(chalk.red('Cannot proceed without privacy mode for private repos.'));
92
+ console.log(chalk.dim('Please make the repository public or enable privacy mode.'));
93
+ process.exit(1);
94
+ }
108
95
  }
109
- if (isPublic === null) {
110
- console.log(chalk_1.default.yellow('⚠️ Could not verify repository visibility'));
111
- console.log(chalk_1.default.dim('Proceeding with installation...'));
96
+ else if (isPublic === null) {
97
+ console.log(chalk.yellow('⚠️ Could not verify repository visibility'));
98
+ console.log();
99
+ const answer = await askQuestion(chalk.green('Is this a private repository? (y/n): '));
100
+ if (answer === 'y' || answer === 'yes') {
101
+ usePrivacyMode = true;
102
+ setPrivateRepo(true);
103
+ console.log(chalk.green('✓ Privacy mode enabled'));
104
+ console.log(chalk.dim('Repository details will never be sent to the server.'));
105
+ }
106
+ else {
107
+ console.log(chalk.dim('Proceeding with public repository mode...'));
108
+ }
112
109
  }
113
110
  else {
114
- console.log(chalk_1.default.green('✓ Public repository confirmed'));
111
+ console.log(chalk.green('✓ Public repository confirmed'));
115
112
  }
116
113
  const hookPath = path.join(process.cwd(), '.git', 'hooks', 'post-commit');
117
114
  // Check if hook already exists
118
115
  if (fs.existsSync(hookPath)) {
119
- console.log(chalk_1.default.yellow('Warning: post-commit hook already exists'));
120
- console.log(chalk_1.default.dim(`Location: ${hookPath}`));
116
+ console.log(chalk.yellow('Warning: post-commit hook already exists'));
117
+ console.log(chalk.dim(`Location: ${hookPath}`));
121
118
  // TODO: Could add merge logic or backup existing hook
122
- console.log(chalk_1.default.red('Aborting to avoid overwriting existing hook'));
123
- console.log(chalk_1.default.dim('Manually add git-slot-machine to your existing hook'));
119
+ console.log(chalk.red('Aborting to avoid overwriting existing hook'));
120
+ console.log(chalk.dim('Manually add git-slot-machine to your existing hook'));
124
121
  process.exit(1);
125
122
  }
126
123
  // Write the hook
127
- fs.writeFileSync(hookPath, post_commit_1.POST_COMMIT_HOOK, { mode: 0o755 });
128
- console.log(chalk_1.default.green('✓ Post-commit hook installed'));
124
+ fs.writeFileSync(hookPath, POST_COMMIT_HOOK, { mode: 0o755 });
125
+ console.log(chalk.green('✓ Post-commit hook installed'));
129
126
  console.log();
130
- console.log(chalk_1.default.cyan('Git Slot Machine is ready!'));
131
- console.log(chalk_1.default.dim('Every commit will now spin the slot machine.'));
127
+ console.log(chalk.cyan('Git Slot Machine is ready!'));
128
+ console.log(chalk.dim('Every commit will now spin the slot machine.'));
132
129
  console.log();
133
130
  console.log('Try it out:');
134
- console.log(chalk_1.default.dim(' git commit --allow-empty -m "test"'));
131
+ console.log(chalk.dim(' git commit --allow-empty -m "test"'));
135
132
  console.log();
136
- console.log(chalk_1.default.cyan('Optional: Sync with the API'));
137
- console.log(chalk_1.default.dim(` git-slot-machine auth login ${repoInfo?.owner || 'your-github-username'}`));
133
+ console.log(chalk.cyan('Optional: Sync with the API'));
134
+ console.log(chalk.dim(` git-slot-machine auth login ${repoInfo?.owner || 'your-github-username'}`));
138
135
  console.log();
139
- console.log(chalk_1.default.yellow('What gets sent to the server:'));
140
- console.log(chalk_1.default.dim(' • Commit hash (7 and 40 character versions)'));
141
- console.log(chalk_1.default.dim(' • Repository URL, owner, and name'));
142
- console.log(chalk_1.default.dim(' • GitHub username'));
143
- console.log(chalk_1.default.dim(' • Pattern type, payout, and balance'));
136
+ console.log(chalk.yellow('What gets sent to the server:'));
137
+ console.log(chalk.dim(' • Commit hash (7 and 40 character versions)'));
138
+ console.log(chalk.dim(' • Repository URL, owner, and name'));
139
+ console.log(chalk.dim(' • GitHub username'));
140
+ console.log(chalk.dim(' • Pattern type, payout, and balance'));
144
141
  console.log();
145
- console.log(chalk_1.default.dim('You can disable API sync anytime:'));
146
- console.log(chalk_1.default.dim(' git-slot-machine config set sync-enabled false'));
142
+ console.log(chalk.dim('You can disable API sync anytime:'));
143
+ console.log(chalk.dim(' git-slot-machine config set sync-enabled false'));
147
144
  }
148
145
  //# sourceMappingURL=init.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
@@ -1,21 +1,15 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.playCommand = playCommand;
7
- const patterns_1 = require("../patterns");
8
- const slotMachine_1 = require("../animation/slotMachine");
9
- const balance_1 = require("../balance");
10
- const api_1 = require("../api");
11
- const config_1 = require("../config");
12
- const chalk_1 = __importDefault(require("chalk"));
13
- async function playCommand(hash, options) {
1
+ import { detectPattern } from '../patterns.js';
2
+ import { animateSlotMachine, animateSmallMode } from '../animation/slotMachine.js';
3
+ import { getBalance, updateBalance, setBalance } from '../balance.js';
4
+ import { sendPlayToAPI } from '../api.js';
5
+ import { getRepoInfo, getGitHubUsername } from '../config.js';
6
+ import chalk from 'chalk';
7
+ export async function playCommand(hash, options) {
14
8
  try {
15
9
  // Get balance before playing
16
- const balanceBefore = (0, balance_1.getBalance)();
10
+ const balanceBefore = getBalance();
17
11
  // Detect pattern
18
- const result = (0, patterns_1.detectPattern)(hash);
12
+ const result = detectPattern(hash);
19
13
  // Animate based on mode
20
14
  const config = {
21
15
  finalHash: hash.toLowerCase(),
@@ -23,10 +17,10 @@ async function playCommand(hash, options) {
23
17
  patternResult: result
24
18
  };
25
19
  if (options.small) {
26
- await (0, slotMachine_1.animateSmallMode)(config);
20
+ await animateSmallMode(config);
27
21
  }
28
22
  else {
29
- await (0, slotMachine_1.animateSlotMachine)(config);
23
+ await animateSlotMachine(config);
30
24
  }
31
25
  // Show result
32
26
  if (!options.small) {
@@ -36,37 +30,37 @@ async function playCommand(hash, options) {
36
30
  if (result.payout > 0) {
37
31
  const resultText = `${result.name}!`;
38
32
  const resultPadding = Math.floor((boxWidth - resultText.length) / 2);
39
- console.log(' '.repeat(resultPadding) + chalk_1.default.cyan.bold(resultText));
33
+ console.log(' '.repeat(resultPadding) + chalk.cyan.bold(resultText));
40
34
  const payoutText = `+${result.payout} points`;
41
35
  const payoutPadding = Math.floor((boxWidth - payoutText.length) / 2);
42
- console.log(' '.repeat(payoutPadding) + chalk_1.default.white.bold(payoutText));
36
+ console.log(' '.repeat(payoutPadding) + chalk.white.bold(payoutText));
43
37
  }
44
38
  else {
45
39
  const noWinText = 'No win';
46
40
  const noWinPadding = Math.floor((boxWidth - noWinText.length) / 2);
47
- console.log(' '.repeat(noWinPadding) + chalk_1.default.red.bold(noWinText));
41
+ console.log(' '.repeat(noWinPadding) + chalk.red.bold(noWinText));
48
42
  const lossText = '-10 points';
49
43
  const lossPadding = Math.floor((boxWidth - lossText.length) / 2);
50
- console.log(' '.repeat(lossPadding) + chalk_1.default.white.bold(lossText));
44
+ console.log(' '.repeat(lossPadding) + chalk.white.bold(lossText));
51
45
  }
52
46
  console.log();
53
47
  const descText = result.description;
54
48
  const descPadding = Math.floor((boxWidth - descText.length) / 2);
55
- console.log(' '.repeat(descPadding) + chalk_1.default.dim(descText));
49
+ console.log(' '.repeat(descPadding) + chalk.dim(descText));
56
50
  }
57
51
  // Validate GitHub remote for API sync
58
- const repoInfo = (0, config_1.getRepoInfo)();
59
- const githubUsername = (0, config_1.getGitHubUsername)();
52
+ const repoInfo = getRepoInfo();
53
+ const githubUsername = getGitHubUsername();
60
54
  if (!repoInfo && githubUsername) {
61
55
  console.log();
62
- console.log(chalk_1.default.yellow.bold('⚠ Warning: No GitHub remote detected'));
63
- console.log(chalk_1.default.dim('This repo will not sync to the leaderboard.'));
64
- console.log(chalk_1.default.dim('To sync, add a GitHub remote:'));
65
- console.log(chalk_1.default.cyan(' git remote add origin https://github.com/username/repo.git'));
56
+ console.log(chalk.yellow.bold('⚠ Warning: No GitHub remote detected'));
57
+ console.log(chalk.dim('This repo will not sync to the leaderboard.'));
58
+ console.log(chalk.dim('To sync, add a GitHub remote:'));
59
+ console.log(chalk.cyan(' git remote add origin https://github.com/username/repo.git'));
66
60
  console.log();
67
61
  }
68
62
  // Update balance locally
69
- let newBalance = (0, balance_1.updateBalance)(hash.toLowerCase(), result.payout);
63
+ let newBalance = updateBalance(hash.toLowerCase(), result.payout);
70
64
  // Send to API and sync balance with server
71
65
  let shareUrl;
72
66
  if (repoInfo && githubUsername) {
@@ -88,10 +82,10 @@ async function playCommand(hash, options) {
88
82
  playData.commit_full_hash = options.fullHash;
89
83
  }
90
84
  try {
91
- const apiResponse = await (0, api_1.sendPlayToAPI)(playData);
85
+ const apiResponse = await sendPlayToAPI(playData);
92
86
  // Sync local balance to match server's balance
93
87
  if (apiResponse && apiResponse.balance !== undefined) {
94
- (0, balance_1.setBalance)(apiResponse.balance);
88
+ setBalance(apiResponse.balance);
95
89
  newBalance = apiResponse.balance;
96
90
  shareUrl = apiResponse.share_url;
97
91
  }
@@ -104,10 +98,10 @@ async function playCommand(hash, options) {
104
98
  if (options.small) {
105
99
  // Small mode - everything on one line (animateSmallMode already wrote the hash without newline)
106
100
  if (result.payout > 0) {
107
- console.log(chalk_1.default.dim(' • ') + chalk_1.default.cyan.bold(`${result.name} +${result.payout}`) + chalk_1.default.dim(' • ') + chalk_1.default.white(`Balance: ${chalk_1.default.green.bold(newBalance)}`));
101
+ console.log(chalk.dim(' • ') + chalk.cyan.bold(`${result.name} +${result.payout}`) + chalk.dim(' • ') + chalk.white(`Balance: ${chalk.green.bold(newBalance)}`));
108
102
  }
109
103
  else {
110
- console.log(chalk_1.default.dim(' • ') + chalk_1.default.red('No win -10') + chalk_1.default.dim(' • ') + chalk_1.default.white(`Balance: ${newBalance >= 0 ? chalk_1.default.green.bold(newBalance) : chalk_1.default.red.bold(newBalance)}`));
104
+ console.log(chalk.dim(' • ') + chalk.red('No win -10') + chalk.dim(' • ') + chalk.white(`Balance: ${newBalance >= 0 ? chalk.green.bold(newBalance) : chalk.red.bold(newBalance)}`));
111
105
  }
112
106
  }
113
107
  else {
@@ -116,7 +110,7 @@ async function playCommand(hash, options) {
116
110
  // Note: we can't measure the exact length with color codes, so estimate based on text content
117
111
  const balanceText = `Balance: ${newBalance} points`;
118
112
  const balancePadding = Math.floor((boxWidth - balanceText.length) / 2);
119
- console.log(' '.repeat(balancePadding) + chalk_1.default.white.bold(`Balance: ${newBalance >= 0 ? chalk_1.default.green.bold(newBalance) : chalk_1.default.red.bold(newBalance)} points`));
113
+ console.log(' '.repeat(balancePadding) + chalk.white.bold(`Balance: ${newBalance >= 0 ? chalk.green.bold(newBalance) : chalk.red.bold(newBalance)} points`));
120
114
  }
121
115
  // Show share URL for wins
122
116
  if (shareUrl && result.payout > 0 && !options.small) {
@@ -124,13 +118,13 @@ async function playCommand(hash, options) {
124
118
  const boxWidth = 41;
125
119
  const shareText = 'Share your win:';
126
120
  const sharePadding = Math.floor((boxWidth - shareText.length) / 2);
127
- console.log(' '.repeat(sharePadding) + chalk_1.default.dim(shareText));
121
+ console.log(' '.repeat(sharePadding) + chalk.dim(shareText));
128
122
  const urlPadding = Math.floor((boxWidth - shareUrl.length) / 2);
129
- console.log(' '.repeat(urlPadding) + chalk_1.default.green.underline(shareUrl));
123
+ console.log(' '.repeat(urlPadding) + chalk.green.underline(shareUrl));
130
124
  }
131
125
  }
132
126
  catch (error) {
133
- console.error(chalk_1.default.red(`Error: ${error.message}`));
127
+ console.error(chalk.red(`Error: ${error.message}`));
134
128
  process.exit(1);
135
129
  }
136
130
  }
@@ -1 +1 @@
1
- {"version":3,"file":"play.js","sourceRoot":"","sources":["../../src/commands/play.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"play.js","sourceRoot":"","sources":["../../src/commands/play.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,10 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.spinCommand = spinCommand;
4
- const git_1 = require("../utils/git");
5
- const play_1 = require("./play");
6
- async function spinCommand(options) {
1
+ import { getCurrentCommitHash, getCurrentCommitFullHash } from '../utils/git.js';
2
+ import { playCommand } from './play.js';
3
+ export async function spinCommand(options) {
7
4
  try {
8
- const hash = (0, git_1.getCurrentCommitHash)();
9
- const fullHash = (0, git_1.getCurrentCommitFullHash)();
10
- await (0, play_1.playCommand)(hash, { ...options, fullHash });
5
+ const hash = getCurrentCommitHash();
6
+ const fullHash = getCurrentCommitFullHash();
7
+ await playCommand(hash, { ...options, fullHash });
11
8
  }
12
9
  catch (error) {
13
10
  console.error(`Error: ${error.message}`);
@@ -1 +1 @@
1
- {"version":3,"file":"spin.js","sourceRoot":"","sources":["../../src/commands/spin.ts"],"names":[],"mappings":";;AAOA,kCASC;AAhBD,sCAA8E;AAC9E,iCAAqC;AAM9B,KAAK,UAAU,WAAW,CAAC,OAAoB;IACpD,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,IAAA,0BAAoB,GAAE,CAAC;QACpC,MAAM,QAAQ,GAAG,IAAA,8BAAwB,GAAE,CAAC;QAC5C,MAAM,IAAA,kBAAW,EAAC,IAAI,EAAE,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;IACpD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,UAAW,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;QACpD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"spin.js","sourceRoot":"","sources":["../../src/commands/spin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AACjF,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAMxC,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,OAAoB;IACpD,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,oBAAoB,EAAE,CAAC;QACpC,MAAM,QAAQ,GAAG,wBAAwB,EAAE,CAAC;QAC5C,MAAM,WAAW,CAAC,IAAI,EAAE,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;IACpD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,UAAW,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;QACpD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}