Skip to content

Commit 0f3698e

Browse files
hakatashiclaude
andcommitted
chore: CJS起因のJSスタブファイルにESM化後の削除リマインダを追加
このPRで追加された JS スタブファイル全て (atequiz/index.js, deploy/index.js, lib/logger.js, lib/slackUtils.js, lib/state.js, prime/primes.js) に XXX: コメントを付与。 これらは CJS 形式のファイルが require() 時に .ts ファイルを解決できないために存在しており、 ESM 化または TypeScript 化完了後に削除すべき旨を明記した。 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent 846aac0 commit 0f3698e

6 files changed

Lines changed: 32 additions & 0 deletions

File tree

atequiz/index.js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
// XXX: このファイルは mahjong/index.js (CJS) が require('../atequiz/index') でロードするために存在するスタブ。
2+
// mahjong/index.js は CJS 形式のため Vite のモジュール解決をバイパスし、Node の CJS ローダーが
3+
// .ts 拡張子を解決できないので、atequiz/index.ts の代わりにこの .js スタブが必要になっている。
4+
// プロジェクトの ESM 化(または mahjong/index.js の TypeScript 化)完了後は必ずこのファイルを削除すること。
5+
16
class AteQuiz {
27
constructor(slack, problem, options) {
38
this.problem = problem;

deploy/index.js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
// XXX: このファイルは mahjong/index.js (CJS) が require('../deploy/index') でロードするために存在するスタブ。
2+
// mahjong/index.js は CJS 形式のため Vite のモジュール解決をバイパスし、Node の CJS ローダーが
3+
// .ts 拡張子を解決できないので、deploy/index.ts の代わりにこの .js スタブが必要になっている。
4+
// プロジェクトの ESM 化(または mahjong/index.js の TypeScript 化)完了後は必ずこのファイルを削除すること。
5+
16
const blockDeploy = async () => {};
27

38
module.exports = {blockDeploy};

lib/logger.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,9 @@
1+
// XXX: このファイルは hangman/index.js・summary/index.js・summary/summary_writer.js (CJS) が
2+
// require('../lib/logger') でロードするために存在するスタブ。
3+
// これらのファイルは CJS 形式のため Vite のモジュール解決をバイパスし、Node の CJS ローダーが
4+
// .ts 拡張子を解決できないので、lib/logger.ts の代わりにこの .js スタブが必要になっている。
5+
// プロジェクトの ESM 化(または各 CJS ファイルの TypeScript 化)完了後は必ずこのファイルを削除すること。
6+
17
const logger = {
28
child: function() { return logger; },
39
debug: function() {},

lib/slackUtils.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,9 @@
1+
// XXX: このファイルは anime/index.js・hangman/index.js (CJS) が require('../lib/slackUtils') で
2+
// ロードするために存在するスタブ。
3+
// これらのファイルは CJS 形式のため Vite のモジュール解決をバイパスし、Node の CJS ローダーが
4+
// .ts 拡張子を解決できないので、lib/slackUtils.ts の代わりにこの .js スタブが必要になっている。
5+
// プロジェクトの ESM 化(または各 CJS ファイルの TypeScript 化)完了後は必ずこのファイルを削除すること。
6+
17
const getMemberName = async () => undefined;
28
const getMemberIcon = async () => undefined;
39
const getAllTSGMembers = async () => [];

lib/state.js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
// XXX: このファイルは CJS 形式のファイルから lib/state が require される場合のために存在するスタブ。
2+
// lib/state.ts は Firestore など重い依存を持つため CJS 環境では直接ロードできず、
3+
// Node の CJS ローダーが .ts 拡張子を解決できないことも相まって、この .js スタブが必要になっている。
4+
// プロジェクトの ESM 化(または依存 CJS ファイルの TypeScript 化)完了後は必ずこのファイルを削除すること。
5+
16
class State {
27
static async init(name, defaultValues) {
38
return Object.assign({}, defaultValues);

prime/primes.js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
// XXX: このファイルは prime/index.js (CJS) が require('./primes') でロードするために存在する。
2+
// prime/index.js は CJS 形式のため Vite のモジュール解決をバイパスし、Node の CJS ローダーが
3+
// .ts 拡張子を解決できないので、primes.ts の代わりにこの .js ファイルが必要になっている。
4+
// プロジェクトの ESM 化(または prime/index.js の TypeScript 化)完了後は必ずこのファイルを削除すること。
5+
16
// A000668
27
const mersenne = ['3', '7', '31', '127', '8191', '131071', '524287', '2147483647', '2305843009213693951', '618970019642690137449562111', '162259276829213363391578010288127', '170141183460469231731687303715884105727'];
38

0 commit comments

Comments
 (0)