atcoder-gui 0.1.5 → 0.1.6

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.
@@ -6,6 +6,10 @@ export declare class CookieExporter {
6
6
  * Get the oj (online-judge-tools) cookie path by running oj command
7
7
  */
8
8
  private static getOjCookiePath;
9
+ /**
10
+ * Get the atcoder-cli session.json path by running acc config-dir command
11
+ */
12
+ private static getAtCoderCliSessionPath;
9
13
  /**
10
14
  * Get AtCoder cookies from current browser session
11
15
  */
@@ -18,6 +22,10 @@ export declare class CookieExporter {
18
22
  * Export cookies to oj (online-judge-tools) cookie.jar file
19
23
  */
20
24
  exportCookiesForOj(): Promise<void>;
25
+ /**
26
+ * Export cookies to atcoder-cli session.json file
27
+ */
28
+ exportCookiesForAtCoderCli(): Promise<void>;
21
29
  /**
22
30
  * Export cookies to oj (online-judge-tools) cookie.jar file
23
31
  */
@@ -1 +1 @@
1
- {"version":3,"file":"cookie-export.d.ts","sourceRoot":"","sources":["../src/cookie-export.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAc9C,qBAAa,cAAc;IACzB,OAAO,CAAC,cAAc,CAAiB;gBAE3B,cAAc,EAAE,cAAc;IAI1C;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,eAAe;IAiB9B;;OAEG;YACW,iBAAiB;IA8B/B;;OAEG;IACG,4BAA4B,IAAI,OAAO,CAAC,IAAI,CAAC;IAKnD;;OAEG;IACG,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC;IAKzC;;OAEG;IACG,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IActD;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAYjC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAwC1B;;;OAGG;YACW,eAAe;IAe7B;;OAEG;IACH,MAAM,CAAC,yBAAyB,IAAI,MAAM;CAG3C"}
1
+ {"version":3,"file":"cookie-export.d.ts","sourceRoot":"","sources":["../src/cookie-export.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAc9C,qBAAa,cAAc;IACzB,OAAO,CAAC,cAAc,CAAiB;gBAE3B,cAAc,EAAE,cAAc;IAI1C;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,eAAe;IAiB9B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,wBAAwB;IAUvC;;OAEG;YACW,iBAAiB;IA8B/B;;OAEG;IACG,4BAA4B,IAAI,OAAO,CAAC,IAAI,CAAC;IAKnD;;OAEG;IACG,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC;IAKzC;;OAEG;IACG,0BAA0B,IAAI,OAAO,CAAC,IAAI,CAAC;IA+BjD;;OAEG;IACG,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IActD;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAYjC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAwC1B;;;OAGG;YACW,eAAe;IAe7B;;OAEG;IACH,MAAM,CAAC,yBAAyB,IAAI,MAAM;CAG3C"}
@@ -26,6 +26,19 @@ export class CookieExporter {
26
26
  throw new Error(`Failed to get oj cookie path: ${error instanceof Error ? error.message : String(error)}`);
27
27
  }
28
28
  }
29
+ /**
30
+ * Get the atcoder-cli session.json path by running acc config-dir command
31
+ */
32
+ static getAtCoderCliSessionPath() {
33
+ try {
34
+ // Run acc command to get config directory
35
+ const configDir = execSync('acc config-dir', { encoding: 'utf-8', timeout: 5000 }).trim();
36
+ return join(configDir, 'session.json');
37
+ }
38
+ catch (error) {
39
+ throw new Error(`Failed to get atcoder-cli config directory: ${error instanceof Error ? error.message : String(error)}`);
40
+ }
41
+ }
29
42
  /**
30
43
  * Get AtCoder cookies from current browser session
31
44
  */
@@ -64,6 +77,35 @@ export class CookieExporter {
64
77
  await this.exportCookies(CookieExporter.getOjCookiePath());
65
78
  console.log('✓ Cookies exported successfully to oj (online-judge-tools)');
66
79
  }
80
+ /**
81
+ * Export cookies to atcoder-cli session.json file
82
+ */
83
+ async exportCookiesForAtCoderCli() {
84
+ try {
85
+ const atcoderCookies = await this.getAtCoderCookies();
86
+ const sessionPath = CookieExporter.getAtCoderCliSessionPath();
87
+ // Check if session.json file exists
88
+ if (!existsSync(sessionPath)) {
89
+ throw new Error(`Session file does not exist: ${sessionPath}\nPlease ensure atcoder-cli is installed and has been used at least once to create the session.json file.`);
90
+ }
91
+ // Convert cookies to atcoder-cli format (array of "name=value" strings)
92
+ const cookieStrings = atcoderCookies.map(cookie => `${cookie.name}=${cookie.value}`);
93
+ // Create the session.json content
94
+ const sessionContent = {
95
+ cookies: cookieStrings
96
+ };
97
+ // Write to session.json file
98
+ writeFileSync(sessionPath, JSON.stringify(sessionContent, null, '\t'), {
99
+ encoding: 'utf-8',
100
+ mode: 0o600 // Set file permissions (readable/writable by owner only)
101
+ });
102
+ console.log(`✓ Cookies exported successfully to atcoder-cli session.json`);
103
+ console.log(`Session file updated: ${sessionPath}`);
104
+ }
105
+ catch (error) {
106
+ console.error('Error during atcoder-cli cookie export:', error);
107
+ }
108
+ }
67
109
  /**
68
110
  * Export cookies to oj (online-judge-tools) cookie.jar file
69
111
  */
@@ -1 +1 @@
1
- {"version":3,"file":"cookie-export.js","sourceRoot":"","sources":["../src/cookie-export.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cookie-export.js","sourceRoot":"","sources":["../src/cookie-export.ts"],"names":[],"mappings":"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"}
package/dist/gen.d.ts CHANGED
@@ -1,11 +1,16 @@
1
+ import { BrowserManager } from './browser';
1
2
  export declare class GenManager {
3
+ private browserManager;
4
+ constructor(browserManager: BrowserManager);
2
5
  /**
3
6
  * Check if atcoder-tools is installed
4
7
  */
5
8
  isAtCoderToolsInstalled(): boolean;
9
+ isAtCoderCliInstalled(): boolean;
6
10
  /**
7
11
  * Run atcoder-tools gen command
8
12
  */
9
13
  run(args: string[]): void;
14
+ runAtcoderCli(args: string[]): void;
10
15
  }
11
16
  //# sourceMappingURL=gen.d.ts.map
package/dist/gen.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"gen.d.ts","sourceRoot":"","sources":["../src/gen.ts"],"names":[],"mappings":"AAEA,qBAAa,UAAU;IACrB;;OAEG;IACH,uBAAuB,IAAI,OAAO;IASlC;;OAEG;IACH,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI;CAc1B"}
1
+ {"version":3,"file":"gen.d.ts","sourceRoot":"","sources":["../src/gen.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAE3C,qBAAa,UAAU;IACrB,OAAO,CAAC,cAAc,CAAiB;gBAE3B,cAAc,EAAE,cAAc;IAI1C;;OAEG;IACH,uBAAuB,IAAI,OAAO;IASlC,qBAAqB,IAAI,OAAO;IAShC;;OAEG;IACH,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI;IA6BzB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI;CA4BpC"}
package/dist/gen.js CHANGED
@@ -1,5 +1,10 @@
1
+ import * as fs from 'fs';
1
2
  import { execSync } from 'child_process';
2
3
  export class GenManager {
4
+ browserManager;
5
+ constructor(browserManager) {
6
+ this.browserManager = browserManager;
7
+ }
3
8
  /**
4
9
  * Check if atcoder-tools is installed
5
10
  */
@@ -12,6 +17,15 @@ export class GenManager {
12
17
  return false;
13
18
  }
14
19
  }
20
+ isAtCoderCliInstalled() {
21
+ try {
22
+ execSync('acc -version', { stdio: 'ignore' });
23
+ return true;
24
+ }
25
+ catch (_) {
26
+ return false;
27
+ }
28
+ }
15
29
  /**
16
30
  * Run atcoder-tools gen command
17
31
  */
@@ -24,6 +38,44 @@ export class GenManager {
24
38
  try {
25
39
  const command_line = 'atcoder-tools ' + args.join(' ');
26
40
  execSync(command_line, { encoding: 'utf-8', stdio: 'inherit' });
41
+ const contest_id = args[1].match(/^[-\w]+$/)?.[0];
42
+ if (contest_id) {
43
+ const url = `https://atcoder.jp/contests/${contest_id}`;
44
+ // avoid 429 error
45
+ setTimeout(() => {
46
+ this.browserManager.openUrl(url);
47
+ }, 250);
48
+ if (fs.existsSync(contest_id)) {
49
+ process.chdir(contest_id);
50
+ console.log(`Current directory: ${process.cwd()}`);
51
+ }
52
+ }
53
+ }
54
+ catch (_) {
55
+ ;
56
+ }
57
+ }
58
+ runAtcoderCli(args) {
59
+ if (!this.isAtCoderCliInstalled()) {
60
+ console.error('Error: acc command not found.');
61
+ console.error('Please install atcoder-cli and ensure it is in your PATH.');
62
+ return;
63
+ }
64
+ try {
65
+ const command_line = 'acc ' + args.join(' ');
66
+ execSync(command_line, { encoding: 'utf-8', stdio: 'inherit' });
67
+ const contest_id = args[1].match(/^[-\w]+$/)?.[0];
68
+ if (contest_id) {
69
+ const url = `https://atcoder.jp/contests/${contest_id}`;
70
+ // avoid 429 error
71
+ setTimeout(() => {
72
+ this.browserManager.openUrl(url);
73
+ }, 250);
74
+ if (fs.existsSync(contest_id)) {
75
+ process.chdir(contest_id);
76
+ console.log(`Current directory: ${process.cwd()}`);
77
+ }
78
+ }
27
79
  }
28
80
  catch (_) {
29
81
  ;
package/dist/gen.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"gen.js","sourceRoot":"","sources":["../src/gen.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,MAAM,OAAO,UAAU;IACrB;;OAEG;IACH,uBAAuB;QACrB,IAAI,CAAC;YACH,QAAQ,CAAC,uBAAuB,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;YACvD,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;OAEG;IACH,GAAG,CAAC,IAAc;QAChB,IAAI,CAAC,IAAI,CAAC,uBAAuB,EAAE,EAAE,CAAC;YACpC,OAAO,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC;YACzD,OAAO,CAAC,KAAK,CAAC,6DAA6D,CAAC,CAAC;YAC7E,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACvD,QAAQ,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QAClE,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,CAAC;QACH,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"gen.js","sourceRoot":"","sources":["../src/gen.ts"],"names":[],"mappings":"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"}
package/dist/main.d.ts CHANGED
@@ -6,6 +6,7 @@ export declare class AtCoderGUI {
6
6
  private submitManager;
7
7
  private cookieExporter;
8
8
  private genManager;
9
+ private problemManager;
9
10
  private rl;
10
11
  constructor();
11
12
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":";AAMA,OAAO,EAAiB,SAAS,EAAE,MAAM,aAAa,CAAC;AAMvD,qBAAa,UAAU;IACrB,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,EAAE,CAAmC;;IAU7C;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAM3B;;OAEG;IACG,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAazC;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAO5B;;OAEG;IACH,SAAS,IAAI,SAAS;IAItB;;OAEG;IACG,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IA2C1C;;OAEG;YACW,aAAa;IA2H3B;;OAEG;IACH,OAAO,CAAC,QAAQ;CA4BjB"}
1
+ {"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":";AAMA,OAAO,EAAiB,SAAS,EAAE,MAAM,aAAa,CAAC;AAOvD,qBAAa,UAAU;IACrB,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,EAAE,CAAmC;;IAW7C;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAM3B;;OAEG;IACG,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAazC;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAO5B;;OAEG;IACH,SAAS,IAAI,SAAS;IAItB;;OAEG;IACG,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IA2C1C;;OAEG;YACW,aAAa;IAkJ3B;;OAEG;IACH,OAAO,CAAC,QAAQ;CA+BjB"}
package/dist/main.js CHANGED
@@ -7,6 +7,7 @@ import { ConfigManager } from './config.js';
7
7
  import { SubmitManager } from './submit.js';
8
8
  import { CookieExporter } from './cookie-export.js';
9
9
  import { GenManager } from './gen.js';
10
+ import { ProblemManager } from './problem.js';
10
11
  import { execSync } from 'child_process';
11
12
  export class AtCoderGUI {
12
13
  browserManager;
@@ -14,13 +15,15 @@ export class AtCoderGUI {
14
15
  submitManager;
15
16
  cookieExporter;
16
17
  genManager;
18
+ problemManager;
17
19
  rl = null;
18
20
  constructor() {
19
21
  this.browserManager = new BrowserManager();
20
22
  this.configManager = new ConfigManager();
21
23
  this.submitManager = new SubmitManager(this.browserManager);
22
24
  this.cookieExporter = new CookieExporter(this.browserManager);
23
- this.genManager = new GenManager();
25
+ this.genManager = new GenManager(this.browserManager);
26
+ this.problemManager = new ProblemManager(this.browserManager);
24
27
  }
25
28
  /**
26
29
  * Initialize the application
@@ -103,6 +106,13 @@ export class AtCoderGUI {
103
106
  async handleCommand(input) {
104
107
  const args = input.split(' ').filter(arg => arg.length > 0);
105
108
  const command = args[0].toLowerCase();
109
+ if (command == '') {
110
+ return;
111
+ }
112
+ // Try to navigate to problem directory if command is a single letter
113
+ if (await this.problemManager.navigateToProblem(command)) {
114
+ return;
115
+ }
106
116
  try {
107
117
  switch (command) {
108
118
  case 'open':
@@ -142,6 +152,7 @@ export class AtCoderGUI {
142
152
  console.log('Usage: export <target>');
143
153
  console.log('Available targets:');
144
154
  console.log(' atcoder-tools Export cookies to atcoder-tools cookie.txt');
155
+ console.log(' atcoder-cli Export cookies to atcoder-cli session.json');
145
156
  console.log(' oj Export cookies to online-judge-tools cookie.jar');
146
157
  return;
147
158
  }
@@ -151,19 +162,32 @@ export class AtCoderGUI {
151
162
  case 'atcoder-tools':
152
163
  await this.cookieExporter.exportCookiesForAtCoderTools();
153
164
  break;
165
+ case 'atcoder-cli':
166
+ await this.cookieExporter.exportCookiesForAtCoderCli();
167
+ break;
154
168
  case 'oj':
155
169
  await this.cookieExporter.exportCookiesForOj();
156
170
  break;
157
171
  default:
158
172
  console.log(`Unknown export target: ${target}`);
159
- console.log('Available targets: atcoder-tools, oj');
173
+ console.log('Available targets: atcoder-tools, atcoder-cli, oj');
160
174
  }
161
175
  }
162
176
  break;
163
177
  case 'gen':
164
178
  this.genManager.run(args);
165
179
  break;
180
+ case 'new':
181
+ this.genManager.runAtcoderCli(args);
182
+ break;
183
+ case 'cp':
184
+ case 'copy':
185
+ case 'del':
186
+ case 'dir':
187
+ case 'ls':
166
188
  case 'make':
189
+ case 'pwd':
190
+ case 'rm':
167
191
  {
168
192
  const command_line = args.join(' ');
169
193
  try {
@@ -225,7 +249,8 @@ Available commands:
225
249
  open <URL> Open a URL in the browser
226
250
  config Show current configuration
227
251
  submit Submit solution to AtCoder (requires metadata.json and main.cpp)
228
- gen <args> Generate sample cases using atcoder-tools
252
+ gen <contest-id> Generate sample cases using atcoder-tools
253
+ new <contest-id> Generate sample cases using atcoder-cli
229
254
  make <args> Execute make command
230
255
  test Execute test command
231
256
  export <target> Export data to external tools
@@ -236,6 +261,7 @@ Available commands:
236
261
 
237
262
  Export targets:
238
263
  atcoder-tools Export browser cookies to atcoder-tools cookie.txt
264
+ atcoder-cli Export browser cookies to atcoder-cli session.json
239
265
  oj Export browser cookies to online-judge-tools cookie.jar
240
266
 
241
267
  Examples:
@@ -244,6 +270,7 @@ Examples:
244
270
  submit (run from atcoder-tools directory)
245
271
  gen https://atcoder.jp/contests/abc123/tasks/abc123_a
246
272
  export atcoder-tools (export REVEL_FLASH and REVEL_SESSION cookies)
273
+ export atcoder-cli (export cookies to atcoder-cli session.json)
247
274
  export oj (export cookies to online-judge-tools)
248
275
  `);
249
276
  }
package/dist/main.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import { BrowserManager } from './browser.js';
2
+ export declare class ProblemManager {
3
+ private browserManager;
4
+ constructor(browserManager: BrowserManager);
5
+ /**
6
+ * Navigate to problem directory and open problem page if valid
7
+ * Returns true if successful navigation occurred
8
+ */
9
+ navigateToProblem(command: string): Promise<boolean>;
10
+ }
11
+ //# sourceMappingURL=problem.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"problem.d.ts","sourceRoot":"","sources":["../src/problem.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAG9C,qBAAa,cAAc;IACzB,OAAO,CAAC,cAAc,CAAiB;gBAE3B,cAAc,EAAE,cAAc;IAI1C;;;OAGG;IACG,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CA2C3D"}
@@ -0,0 +1,55 @@
1
+ import * as fs from 'fs';
2
+ import * as path from 'path';
3
+ export class ProblemManager {
4
+ browserManager;
5
+ constructor(browserManager) {
6
+ this.browserManager = browserManager;
7
+ }
8
+ /**
9
+ * Navigate to problem directory and open problem page if valid
10
+ * Returns true if successful navigation occurred
11
+ */
12
+ async navigateToProblem(command) {
13
+ // Only handle single alphabetic characters
14
+ if (command.length !== 1 || !/^[a-zA-Z]$/.test(command)) {
15
+ return false;
16
+ }
17
+ // Look for problem directory in current directory and parent directory
18
+ for (const searchPath of ['.', '..']) {
19
+ for (const problem_id of [command.toLowerCase(), command.toUpperCase()]) {
20
+ const problem_dir = path.join(searchPath, problem_id);
21
+ if (fs.existsSync(problem_dir)) {
22
+ // atcoder-tools
23
+ {
24
+ const metadataFilename = path.join(problem_dir, 'metadata.json');
25
+ if (fs.existsSync(metadataFilename)) {
26
+ const metadata = JSON.parse(fs.readFileSync(metadataFilename, 'utf-8'));
27
+ const problem = metadata.problem;
28
+ process.chdir(problem_dir);
29
+ console.log(`Current directory: ${process.cwd()}`);
30
+ this.browserManager.openUrl(`https://atcoder.jp/contests/${problem.contest.contest_id}/tasks/${problem.problem_id}`);
31
+ return true;
32
+ }
33
+ }
34
+ // atcoder-cli
35
+ {
36
+ const metadataFilename = path.join(searchPath, 'contest.acc.json');
37
+ if (fs.existsSync(metadataFilename)) {
38
+ const metadata = JSON.parse(fs.readFileSync(metadataFilename, 'utf-8'));
39
+ for (const task of metadata.tasks) {
40
+ if (task.directory?.path == problem_id) {
41
+ process.chdir(problem_dir);
42
+ console.log(`Current directory: ${process.cwd()}`);
43
+ this.browserManager.openUrl(task.url);
44
+ return true;
45
+ }
46
+ }
47
+ }
48
+ }
49
+ }
50
+ }
51
+ }
52
+ return false;
53
+ }
54
+ }
55
+ //# sourceMappingURL=problem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"problem.js","sourceRoot":"","sources":["../src/problem.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAI7B,MAAM,OAAO,cAAc;IACjB,cAAc,CAAiB;IAEvC,YAAY,cAA8B;QACxC,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;IACvC,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,iBAAiB,CAAC,OAAe;QACrC,2CAA2C;QAC3C,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACxD,OAAO,KAAK,CAAC;QACf,CAAC;QAED,uEAAuE;QACvE,KAAK,MAAM,UAAU,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC;YACrC,KAAK,MAAM,UAAU,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;gBACxE,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;gBACtD,IAAI,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;oBAC/B,gBAAgB;oBAChB,CAAC;wBACC,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;wBACjE,IAAI,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;4BACpC,MAAM,QAAQ,GAAyB,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAC;4BAC9F,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;4BACjC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;4BAC3B,OAAO,CAAC,GAAG,CAAC,sBAAsB,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;4BACnD,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,+BAA+B,OAAO,CAAC,OAAO,CAAC,UAAU,UAAU,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;4BACrH,OAAO,IAAI,CAAC;wBACd,CAAC;oBACH,CAAC;oBACD,cAAc;oBACd,CAAC;wBACC,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAAC;wBACnE,IAAI,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;4BACpC,MAAM,QAAQ,GAA4B,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAC;4BACjG,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;gCAClC,IAAI,IAAI,CAAC,SAAS,EAAE,IAAI,IAAI,UAAU,EAAE,CAAC;oCACvC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;oCAC3B,OAAO,CAAC,GAAG,CAAC,sBAAsB,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;oCACnD,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oCACtC,OAAO,IAAI,CAAC;gCACd,CAAC;4BACH,CAAC;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;CACF"}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * Type definitions for atcoder-cli and atcoder-tools configuration files
3
+ */
4
+ export interface AtCoderCliContestConfig {
5
+ contest: {
6
+ id: string;
7
+ title: string;
8
+ url: string;
9
+ };
10
+ tasks: AtCoderCliTask[];
11
+ }
12
+ export interface AtCoderCliTask {
13
+ id: string;
14
+ label: string;
15
+ title: string;
16
+ url: string;
17
+ directory?: {
18
+ path: string;
19
+ testdir: string;
20
+ submit: string;
21
+ };
22
+ }
23
+ export interface AtCoderToolsMetadata {
24
+ code_filename: string;
25
+ judge: {
26
+ judge_type: string;
27
+ };
28
+ lang: string;
29
+ problem: {
30
+ alphabet: string;
31
+ contest: {
32
+ contest_id: string;
33
+ };
34
+ problem_id: string;
35
+ url?: string;
36
+ };
37
+ sample_in_pattern: string;
38
+ sample_out_pattern: string;
39
+ timeout_ms: number;
40
+ }
41
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE;QACP,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,MAAM,CAAC;QACd,GAAG,EAAE,MAAM,CAAC;KACb,CAAC;IACF,KAAK,EAAE,cAAc,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE;QACV,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;CACH;AAGD,MAAM,WAAW,oBAAoB;IACnC,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE;QACL,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE;QACP,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE;YACP,UAAU,EAAE,MAAM,CAAC;SACpB,CAAC;QACF,UAAU,EAAE,MAAM,CAAC;QACnB,GAAG,CAAC,EAAE,MAAM,CAAC;KACd,CAAC;IACF,iBAAiB,EAAE,MAAM,CAAC;IAC1B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;CACpB"}
package/dist/types.js ADDED
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Type definitions for atcoder-cli and atcoder-tools configuration files
3
+ */
4
+ export {};
5
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "atcoder-gui",
3
- "version": "0.1.5",
3
+ "version": "0.1.6",
4
4
  "description": "Browser automation tool for AtCoder with CLI interface",
5
5
  "type": "module",
6
6
  "main": "dist/main.js",
@@ -32,7 +32,14 @@
32
32
  "type": "git",
33
33
  "url": "git+https://github.com/firewood/atcoder-gui.git"
34
34
  },
35
- "keywords": ["atcoder", "browser-automation", "cli", "competitive-programming", "playwright", "typescript"],
35
+ "keywords": [
36
+ "atcoder",
37
+ "browser-automation",
38
+ "cli",
39
+ "competitive-programming",
40
+ "playwright",
41
+ "typescript"
42
+ ],
36
43
  "author": "firewood <174658+firewood@users.noreply.github.com>",
37
44
  "license": "MIT",
38
45
  "bugs": {
@@ -41,6 +48,7 @@
41
48
  "homepage": "https://github.com/firewood/atcoder-gui#readme",
42
49
  "dependencies": {
43
50
  "conf": "^15.0.2",
51
+ "globals": "^16.5.0",
44
52
  "json5": "^2.2.3",
45
53
  "playwright": "^1.56.1"
46
54
  },