Compare commits
2 Commits
27a3ec8244
...
2126e7bebf
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2126e7bebf | ||
|
|
20e044d32b |
@@ -4,7 +4,7 @@
|
||||
# =============================================================================
|
||||
|
||||
# --- Application ---
|
||||
APP_NAME=HexaHost GameCloud
|
||||
APP_NAME="HexaHost GameCloud"
|
||||
APP_ENV=development
|
||||
APP_URL=http://localhost:3000
|
||||
API_URL=http://localhost:3001
|
||||
@@ -76,7 +76,7 @@ EDGE_START_WAIT_SECONDS=180
|
||||
EDGE_POLL_INTERVAL_MS=2000
|
||||
|
||||
# --- Catalog Providers ---
|
||||
MODRINTH_USER_AGENT=HexaHostGameCloud/0.1.0 (contact@example.net)
|
||||
MODRINTH_USER_AGENT="HexaHostGameCloud/0.1.0 (contact@example.net)"
|
||||
CURSEFORGE_API_KEY=
|
||||
|
||||
# --- Billing ---
|
||||
|
||||
1
.gitignore
vendored
1
.gitignore
vendored
@@ -7,3 +7,4 @@ dist/
|
||||
bin/
|
||||
*.log
|
||||
data/
|
||||
.logs/
|
||||
|
||||
1
.turbo/cache/083c8105a3916fd9-manifest.json
vendored
Normal file
1
.turbo/cache/083c8105a3916fd9-manifest.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"files":{"packages/auth/dist/username.d.ts":{"size":442,"mtime_nanos":1783255151494048909,"mode":420,"is_dir":false},"packages/auth/dist/recovery-codes.js":{"size":1089,"mtime_nanos":1783255151493710470,"mode":420,"is_dir":false},"packages/auth/dist/tokens.d.ts.map":{"size":281,"mtime_nanos":1783255151493885819,"mode":420,"is_dir":false},"packages/auth/dist/username.d.ts.map":{"size":430,"mtime_nanos":1783255151494073119,"mode":420,"is_dir":false},"packages/auth/dist/password.d.ts":{"size":200,"mtime_nanos":1783255151493536190,"mode":420,"is_dir":false},"packages/auth/dist/recovery-codes.d.ts.map":{"size":306,"mtime_nanos":1783255151493686290,"mode":420,"is_dir":false},"packages/auth/dist/password.d.ts.map":{"size":266,"mtime_nanos":1783255151493572620,"mode":420,"is_dir":false},"packages/auth/.turbo/turbo-build.log":{"size":102,"mtime_nanos":1783255052127378550,"mode":420,"is_dir":false},"packages/auth/dist/session.js":{"size":672,"mtime_nanos":1783255151493811820,"mode":420,"is_dir":false},"packages/auth/dist/totp.d.ts.map":{"size":303,"mtime_nanos":1783255151493978659,"mode":420,"is_dir":false},"packages/auth/dist/index.js.map":{"size":824,"mtime_nanos":1783255151493485050,"mode":420,"is_dir":false},"packages/auth/dist/totp.js.map":{"size":569,"mtime_nanos":1783255151494024989,"mode":420,"is_dir":false},"packages/auth/dist/username.js":{"size":2787,"mtime_nanos":1783255151494096559,"mode":420,"is_dir":false},"packages/auth/dist/session.d.ts.map":{"size":300,"mtime_nanos":1783255151493784580,"mode":420,"is_dir":false},"packages/auth/dist/index.d.ts":{"size":1570,"mtime_nanos":1783255151493314190,"mode":420,"is_dir":false},"packages/auth/dist/index.d.ts.map":{"size":1443,"mtime_nanos":1783255151493364820,"mode":420,"is_dir":false},"packages/auth/dist/tokens.js.map":{"size":760,"mtime_nanos":1783255151493932809,"mode":420,"is_dir":false},"packages/auth/dist/totp.d.ts":{"size":269,"mtime_nanos":1783255151493955819,"mode":420,"is_dir":false},"packages/auth/dist/index.js":{"size":4135,"mtime_nanos":1783255151493407900,"mode":420,"is_dir":false},"packages/auth/dist/recovery-codes.js.map":{"size":949,"mtime_nanos":1783255151493735800,"mode":420,"is_dir":false},"packages/auth/dist/tokens.d.ts":{"size":244,"mtime_nanos":1783255151493861049,"mode":420,"is_dir":false},"packages/auth/dist/totp.js":{"size":683,"mtime_nanos":1783255151494002079,"mode":420,"is_dir":false},"packages/auth/dist/username.js.map":{"size":2294,"mtime_nanos":1783255151494119969,"mode":420,"is_dir":false},"packages/auth/dist/tokens.js":{"size":864,"mtime_nanos":1783255151493909599,"mode":420,"is_dir":false},"packages/auth/dist/session.js.map":{"size":493,"mtime_nanos":1783255151493836729,"mode":420,"is_dir":false},"packages/auth/dist/password.js":{"size":482,"mtime_nanos":1783255151493603670,"mode":420,"is_dir":false},"packages/auth/dist/password.js.map":{"size":404,"mtime_nanos":1783255151493633310,"mode":420,"is_dir":false},"packages/auth/dist/recovery-codes.d.ts":{"size":264,"mtime_nanos":1783255151493659970,"mode":420,"is_dir":false},"packages/auth/dist/session.d.ts":{"size":334,"mtime_nanos":1783255151493759480,"mode":420,"is_dir":false}},"order":["packages/auth/.turbo/turbo-build.log","packages/auth/dist/index.d.ts","packages/auth/dist/index.d.ts.map","packages/auth/dist/index.js","packages/auth/dist/index.js.map","packages/auth/dist/password.d.ts","packages/auth/dist/password.d.ts.map","packages/auth/dist/password.js","packages/auth/dist/password.js.map","packages/auth/dist/recovery-codes.d.ts","packages/auth/dist/recovery-codes.d.ts.map","packages/auth/dist/recovery-codes.js","packages/auth/dist/recovery-codes.js.map","packages/auth/dist/session.d.ts","packages/auth/dist/session.d.ts.map","packages/auth/dist/session.js","packages/auth/dist/session.js.map","packages/auth/dist/tokens.d.ts","packages/auth/dist/tokens.d.ts.map","packages/auth/dist/tokens.js","packages/auth/dist/tokens.js.map","packages/auth/dist/totp.d.ts","packages/auth/dist/totp.d.ts.map","packages/auth/dist/totp.js","packages/auth/dist/totp.js.map","packages/auth/dist/username.d.ts","packages/auth/dist/username.d.ts.map","packages/auth/dist/username.js","packages/auth/dist/username.js.map"]}
|
||||
1
.turbo/cache/083c8105a3916fd9-meta.json
vendored
Normal file
1
.turbo/cache/083c8105a3916fd9-meta.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"hash":"083c8105a3916fd9","duration":2162,"sha":"27a3ec8244e70774e6f4673201397e2302c32dfe","dirty_hash":"abc4a2c6304f10abbf2d6c628ed6a63dbf9e6ca06fecaaea2935e4ea7f4ff660"}
|
||||
BIN
.turbo/cache/083c8105a3916fd9.tar.zst
vendored
Normal file
BIN
.turbo/cache/083c8105a3916fd9.tar.zst
vendored
Normal file
Binary file not shown.
1
.turbo/cache/0b354b78644f8aad-manifest.json
vendored
Normal file
1
.turbo/cache/0b354b78644f8aad-manifest.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"files":{"packages/database/dist/index.js":{"size":962,"mtime_nanos":1783254827141954191,"mode":420,"is_dir":false},"packages/database/dist/index.d.ts":{"size":991,"mtime_nanos":1783254827155894338,"mode":420,"is_dir":false},"packages/database/dist/index.js.map":{"size":617,"mtime_nanos":1783254827141791201,"mode":420,"is_dir":false},"packages/database/.turbo/turbo-build.log":{"size":506,"mtime_nanos":1783254827176786884,"mode":420,"is_dir":false},"packages/database/dist":{"size":0,"mtime_nanos":0,"mode":0,"is_dir":true},"packages/database/dist/index.d.ts.map":{"size":733,"mtime_nanos":1783254827154786924,"mode":420,"is_dir":false}},"order":["packages/database/.turbo/turbo-build.log","packages/database/dist","packages/database/dist/index.d.ts","packages/database/dist/index.d.ts.map","packages/database/dist/index.js","packages/database/dist/index.js.map"]}
|
||||
1
.turbo/cache/0b354b78644f8aad-meta.json
vendored
Normal file
1
.turbo/cache/0b354b78644f8aad-meta.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"hash":"0b354b78644f8aad","duration":3330,"sha":"27a3ec8244e70774e6f4673201397e2302c32dfe","dirty_hash":"67d44d689fa95ed97ad8bb0d3e753762649434cb9a64ff731786cdc979515618"}
|
||||
BIN
.turbo/cache/0b354b78644f8aad.tar.zst
vendored
Normal file
BIN
.turbo/cache/0b354b78644f8aad.tar.zst
vendored
Normal file
Binary file not shown.
1
.turbo/cache/1a030577ec3e46e3-manifest.json
vendored
Normal file
1
.turbo/cache/1a030577ec3e46e3-manifest.json
vendored
Normal file
File diff suppressed because one or more lines are too long
1
.turbo/cache/1a030577ec3e46e3-meta.json
vendored
Normal file
1
.turbo/cache/1a030577ec3e46e3-meta.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"hash":"1a030577ec3e46e3","duration":1256,"sha":"27a3ec8244e70774e6f4673201397e2302c32dfe","dirty_hash":"67d44d689fa95ed97ad8bb0d3e753762649434cb9a64ff731786cdc979515618"}
|
||||
BIN
.turbo/cache/1a030577ec3e46e3.tar.zst
vendored
Normal file
BIN
.turbo/cache/1a030577ec3e46e3.tar.zst
vendored
Normal file
Binary file not shown.
1
.turbo/cache/3bace58668d8c69c-manifest.json
vendored
Normal file
1
.turbo/cache/3bace58668d8c69c-manifest.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"files":{"packages/config/dist/index.js":{"size":3043,"mtime_nanos":1783254824143649550,"mode":420,"is_dir":false},"packages/config/dist/index.js.map":{"size":3214,"mtime_nanos":1783254824143422120,"mode":420,"is_dir":false},"packages/config/dist/index.d.ts":{"size":1874,"mtime_nanos":1783254824156792366,"mode":420,"is_dir":false},"packages/config/.turbo/turbo-build.log":{"size":102,"mtime_nanos":1783254824177792328,"mode":420,"is_dir":false},"packages/config/dist/index.d.ts.map":{"size":521,"mtime_nanos":1783254824156792366,"mode":420,"is_dir":false},"packages/config/dist":{"size":0,"mtime_nanos":0,"mode":0,"is_dir":true}},"order":["packages/config/.turbo/turbo-build.log","packages/config/dist","packages/config/dist/index.d.ts","packages/config/dist/index.d.ts.map","packages/config/dist/index.js","packages/config/dist/index.js.map"]}
|
||||
1
.turbo/cache/3bace58668d8c69c-meta.json
vendored
Normal file
1
.turbo/cache/3bace58668d8c69c-meta.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"hash":"3bace58668d8c69c","duration":1783,"sha":"27a3ec8244e70774e6f4673201397e2302c32dfe","dirty_hash":"67d44d689fa95ed97ad8bb0d3e753762649434cb9a64ff731786cdc979515618"}
|
||||
BIN
.turbo/cache/3bace58668d8c69c.tar.zst
vendored
Normal file
BIN
.turbo/cache/3bace58668d8c69c.tar.zst
vendored
Normal file
Binary file not shown.
1
.turbo/cache/51664cdd00a0048d-manifest.json
vendored
Normal file
1
.turbo/cache/51664cdd00a0048d-manifest.json
vendored
Normal file
File diff suppressed because one or more lines are too long
1
.turbo/cache/51664cdd00a0048d-meta.json
vendored
Normal file
1
.turbo/cache/51664cdd00a0048d-meta.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"hash":"51664cdd00a0048d","duration":2814,"sha":"27a3ec8244e70774e6f4673201397e2302c32dfe","dirty_hash":"abc4a2c6304f10abbf2d6c628ed6a63dbf9e6ca06fecaaea2935e4ea7f4ff660"}
|
||||
BIN
.turbo/cache/51664cdd00a0048d.tar.zst
vendored
Normal file
BIN
.turbo/cache/51664cdd00a0048d.tar.zst
vendored
Normal file
Binary file not shown.
1
.turbo/cache/53573aa3334db733-manifest.json
vendored
Normal file
1
.turbo/cache/53573aa3334db733-manifest.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"files":{"packages/integration-auth/dist/hmac.test.js":{"size":953,"mtime_nanos":1783255052203378412,"mode":420,"is_dir":false},"packages/integration-auth/dist":{"size":0,"mtime_nanos":0,"mode":0,"is_dir":true},"packages/integration-auth/dist/hmac.d.ts.map":{"size":821,"mtime_nanos":1783255052199378419,"mode":420,"is_dir":false},"packages/integration-auth/.turbo/turbo-build.log":{"size":126,"mtime_nanos":1783255052243378339,"mode":420,"is_dir":false},"packages/integration-auth/dist/mtls.js":{"size":1604,"mtime_nanos":1783255052208378403,"mode":420,"is_dir":false},"packages/integration-auth/dist/hmac.js":{"size":2272,"mtime_nanos":1783255052181441322,"mode":420,"is_dir":false},"packages/integration-auth/dist/mtls.js.map":{"size":1048,"mtime_nanos":1783255052208378403,"mode":420,"is_dir":false},"packages/integration-auth/dist/index.d.ts.map":{"size":316,"mtime_nanos":1783255052217816303,"mode":420,"is_dir":false},"packages/integration-auth/dist/index.js.map":{"size":382,"mtime_nanos":1783255052216516404,"mode":420,"is_dir":false},"packages/integration-auth/dist/hmac.d.ts":{"size":1050,"mtime_nanos":1783255052199378419,"mode":420,"is_dir":false},"packages/integration-auth/dist/hmac.test.d.ts.map":{"size":112,"mtime_nanos":1783255052204378410,"mode":420,"is_dir":false},"packages/integration-auth/dist/hmac.test.d.ts":{"size":50,"mtime_nanos":1783255052205548416,"mode":420,"is_dir":false},"packages/integration-auth/dist/hmac.js.map":{"size":2198,"mtime_nanos":1783255052180273802,"mode":420,"is_dir":false},"packages/integration-auth/dist/hmac.test.js.map":{"size":744,"mtime_nanos":1783255052203378412,"mode":420,"is_dir":false},"packages/integration-auth/dist/index.d.ts":{"size":368,"mtime_nanos":1783255052217816303,"mode":420,"is_dir":false},"packages/integration-auth/dist/index.js":{"size":2061,"mtime_nanos":1783255052216799793,"mode":420,"is_dir":false},"packages/integration-auth/dist/mtls.d.ts":{"size":628,"mtime_nanos":1783255052210378399,"mode":420,"is_dir":false},"packages/integration-auth/dist/mtls.d.ts.map":{"size":370,"mtime_nanos":1783255052210378399,"mode":420,"is_dir":false}},"order":["packages/integration-auth/.turbo/turbo-build.log","packages/integration-auth/dist","packages/integration-auth/dist/hmac.d.ts","packages/integration-auth/dist/hmac.d.ts.map","packages/integration-auth/dist/hmac.js","packages/integration-auth/dist/hmac.js.map","packages/integration-auth/dist/hmac.test.d.ts","packages/integration-auth/dist/hmac.test.d.ts.map","packages/integration-auth/dist/hmac.test.js","packages/integration-auth/dist/hmac.test.js.map","packages/integration-auth/dist/index.d.ts","packages/integration-auth/dist/index.d.ts.map","packages/integration-auth/dist/index.js","packages/integration-auth/dist/index.js.map","packages/integration-auth/dist/mtls.d.ts","packages/integration-auth/dist/mtls.d.ts.map","packages/integration-auth/dist/mtls.js","packages/integration-auth/dist/mtls.js.map"]}
|
||||
1
.turbo/cache/53573aa3334db733-meta.json
vendored
Normal file
1
.turbo/cache/53573aa3334db733-meta.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"hash":"53573aa3334db733","duration":2278,"sha":"27a3ec8244e70774e6f4673201397e2302c32dfe","dirty_hash":"abc4a2c6304f10abbf2d6c628ed6a63dbf9e6ca06fecaaea2935e4ea7f4ff660"}
|
||||
BIN
.turbo/cache/53573aa3334db733.tar.zst
vendored
Normal file
BIN
.turbo/cache/53573aa3334db733.tar.zst
vendored
Normal file
Binary file not shown.
1
.turbo/cache/7138297b16f09c78-manifest.json
vendored
Normal file
1
.turbo/cache/7138297b16f09c78-manifest.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"files":{"packages/storage/dist/client.js.map":{"size":1685,"mtime_nanos":1783255052719377475,"mode":420,"is_dir":false},"packages/storage/dist/client.js":{"size":2298,"mtime_nanos":1783255052720940624,"mode":420,"is_dir":false},"packages/storage/dist/index.js":{"size":1654,"mtime_nanos":1783255052726484843,"mode":420,"is_dir":false},"packages/storage/dist/keys.test.d.ts":{"size":50,"mtime_nanos":1783255052728421552,"mode":420,"is_dir":false},"packages/storage/dist/config.d.ts":{"size":922,"mtime_nanos":1783255052716923925,"mode":420,"is_dir":false},"packages/storage/dist/index.d.ts.map":{"size":291,"mtime_nanos":1783255052726484843,"mode":420,"is_dir":false},"packages/storage/.turbo/turbo-build.log":{"size":108,"mtime_nanos":1783255052745377428,"mode":420,"is_dir":false},"packages/storage/dist/keys.test.d.ts.map":{"size":112,"mtime_nanos":1783255052728421552,"mode":420,"is_dir":false},"packages/storage/dist/config.d.ts.map":{"size":358,"mtime_nanos":1783255052715377483,"mode":420,"is_dir":false},"packages/storage/dist/client.d.ts.map":{"size":960,"mtime_nanos":1783255052722502344,"mode":420,"is_dir":false},"packages/storage/dist/config.js.map":{"size":967,"mtime_nanos":1783255052705824178,"mode":420,"is_dir":false},"packages/storage/dist/index.js.map":{"size":339,"mtime_nanos":1783255052726285013,"mode":420,"is_dir":false},"packages/storage/dist/client.d.ts":{"size":925,"mtime_nanos":1783255052723096764,"mode":420,"is_dir":false},"packages/storage/dist/config.js":{"size":1011,"mtime_nanos":1783255052705916208,"mode":420,"is_dir":false},"packages/storage/dist/keys.test.js":{"size":623,"mtime_nanos":1783255052728421552,"mode":420,"is_dir":false},"packages/storage/dist/index.d.ts":{"size":290,"mtime_nanos":1783255052726484843,"mode":420,"is_dir":false},"packages/storage/dist":{"size":0,"mtime_nanos":0,"mode":0,"is_dir":true},"packages/storage/dist/keys.test.js.map":{"size":518,"mtime_nanos":1783255052728371962,"mode":420,"is_dir":false}},"order":["packages/storage/.turbo/turbo-build.log","packages/storage/dist","packages/storage/dist/client.d.ts","packages/storage/dist/client.d.ts.map","packages/storage/dist/client.js","packages/storage/dist/client.js.map","packages/storage/dist/config.d.ts","packages/storage/dist/config.d.ts.map","packages/storage/dist/config.js","packages/storage/dist/config.js.map","packages/storage/dist/index.d.ts","packages/storage/dist/index.d.ts.map","packages/storage/dist/index.js","packages/storage/dist/index.js.map","packages/storage/dist/keys.test.d.ts","packages/storage/dist/keys.test.d.ts.map","packages/storage/dist/keys.test.js","packages/storage/dist/keys.test.js.map"]}
|
||||
1
.turbo/cache/7138297b16f09c78-meta.json
vendored
Normal file
1
.turbo/cache/7138297b16f09c78-meta.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"hash":"7138297b16f09c78","duration":2780,"sha":"27a3ec8244e70774e6f4673201397e2302c32dfe","dirty_hash":"abc4a2c6304f10abbf2d6c628ed6a63dbf9e6ca06fecaaea2935e4ea7f4ff660"}
|
||||
BIN
.turbo/cache/7138297b16f09c78.tar.zst
vendored
Normal file
BIN
.turbo/cache/7138297b16f09c78.tar.zst
vendored
Normal file
Binary file not shown.
1
.turbo/cache/7c83d574699fc347-manifest.json
vendored
Normal file
1
.turbo/cache/7c83d574699fc347-manifest.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"files":{"packages/auth/dist/password.js.map":{"size":404,"mtime_nanos":1783254823699793196,"mode":420,"is_dir":false},"packages/auth/dist":{"size":0,"mtime_nanos":0,"mode":0,"is_dir":true},"packages/auth/dist/tokens.d.ts.map":{"size":281,"mtime_nanos":1783254823716073291,"mode":420,"is_dir":false},"packages/auth/dist/recovery-codes.d.ts.map":{"size":306,"mtime_nanos":1783254823751018942,"mode":420,"is_dir":false},"packages/auth/dist/index.d.ts":{"size":1570,"mtime_nanos":1783254823800793012,"mode":420,"is_dir":false},"packages/auth/dist/username.d.ts.map":{"size":430,"mtime_nanos":1783254823731793138,"mode":420,"is_dir":false},"packages/auth/dist/username.js.map":{"size":2294,"mtime_nanos":1783254823728793143,"mode":420,"is_dir":false},"packages/auth/dist/totp.d.ts":{"size":269,"mtime_nanos":1783254823743793116,"mode":420,"is_dir":false},"packages/auth/dist/totp.js":{"size":683,"mtime_nanos":1783254823741793119,"mode":420,"is_dir":false},"packages/auth/dist/index.d.ts.map":{"size":1443,"mtime_nanos":1783254823800793012,"mode":420,"is_dir":false},"packages/auth/dist/recovery-codes.js":{"size":1089,"mtime_nanos":1783254823749679443,"mode":420,"is_dir":false},"packages/auth/dist/session.d.ts.map":{"size":300,"mtime_nanos":1783254823757744571,"mode":420,"is_dir":false},"packages/auth/dist/username.d.ts":{"size":442,"mtime_nanos":1783254823731793138,"mode":420,"is_dir":false},"packages/auth/dist/session.d.ts":{"size":334,"mtime_nanos":1783254823757986501,"mode":420,"is_dir":false},"packages/auth/dist/tokens.js.map":{"size":760,"mtime_nanos":1783254823712940372,"mode":420,"is_dir":false},"packages/auth/dist/recovery-codes.js.map":{"size":949,"mtime_nanos":1783254823749441483,"mode":420,"is_dir":false},"packages/auth/dist/index.js":{"size":4135,"mtime_nanos":1783254823782793045,"mode":420,"is_dir":false},"packages/auth/dist/password.js":{"size":482,"mtime_nanos":1783254823700699224,"mode":420,"is_dir":false},"packages/auth/dist/session.js.map":{"size":493,"mtime_nanos":1783254823754793096,"mode":420,"is_dir":false},"packages/auth/dist/username.js":{"size":2787,"mtime_nanos":1783254823729845437,"mode":420,"is_dir":false},"packages/auth/dist/password.d.ts.map":{"size":266,"mtime_nanos":1783254823706019293,"mode":420,"is_dir":false},"packages/auth/dist/tokens.d.ts":{"size":244,"mtime_nanos":1783254823716326991,"mode":420,"is_dir":false},"packages/auth/dist/index.js.map":{"size":824,"mtime_nanos":1783254823782793045,"mode":420,"is_dir":false},"packages/auth/dist/totp.d.ts.map":{"size":303,"mtime_nanos":1783254823742793118,"mode":420,"is_dir":false},"packages/auth/dist/session.js":{"size":672,"mtime_nanos":1783254823754793096,"mode":420,"is_dir":false},"packages/auth/dist/totp.js.map":{"size":569,"mtime_nanos":1783254823741793119,"mode":420,"is_dir":false},"packages/auth/.turbo/turbo-build.log":{"size":98,"mtime_nanos":1783254823836792947,"mode":420,"is_dir":false},"packages/auth/dist/recovery-codes.d.ts":{"size":264,"mtime_nanos":1783254823751270432,"mode":420,"is_dir":false},"packages/auth/dist/tokens.js":{"size":864,"mtime_nanos":1783254823713299411,"mode":420,"is_dir":false},"packages/auth/dist/password.d.ts":{"size":200,"mtime_nanos":1783254823706019293,"mode":420,"is_dir":false}},"order":["packages/auth/.turbo/turbo-build.log","packages/auth/dist","packages/auth/dist/index.d.ts","packages/auth/dist/index.d.ts.map","packages/auth/dist/index.js","packages/auth/dist/index.js.map","packages/auth/dist/password.d.ts","packages/auth/dist/password.d.ts.map","packages/auth/dist/password.js","packages/auth/dist/password.js.map","packages/auth/dist/recovery-codes.d.ts","packages/auth/dist/recovery-codes.d.ts.map","packages/auth/dist/recovery-codes.js","packages/auth/dist/recovery-codes.js.map","packages/auth/dist/session.d.ts","packages/auth/dist/session.d.ts.map","packages/auth/dist/session.js","packages/auth/dist/session.js.map","packages/auth/dist/tokens.d.ts","packages/auth/dist/tokens.d.ts.map","packages/auth/dist/tokens.js","packages/auth/dist/tokens.js.map","packages/auth/dist/totp.d.ts","packages/auth/dist/totp.d.ts.map","packages/auth/dist/totp.js","packages/auth/dist/totp.js.map","packages/auth/dist/username.d.ts","packages/auth/dist/username.d.ts.map","packages/auth/dist/username.js","packages/auth/dist/username.js.map"]}
|
||||
1
.turbo/cache/7c83d574699fc347-meta.json
vendored
Normal file
1
.turbo/cache/7c83d574699fc347-meta.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"hash":"7c83d574699fc347","duration":1442,"sha":"27a3ec8244e70774e6f4673201397e2302c32dfe","dirty_hash":"67d44d689fa95ed97ad8bb0d3e753762649434cb9a64ff731786cdc979515618"}
|
||||
BIN
.turbo/cache/7c83d574699fc347.tar.zst
vendored
Normal file
BIN
.turbo/cache/7c83d574699fc347.tar.zst
vendored
Normal file
Binary file not shown.
1
.turbo/cache/7ec080769e22b52e-manifest.json
vendored
Normal file
1
.turbo/cache/7ec080769e22b52e-manifest.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"files":{"packages/config/dist":{"size":0,"mtime_nanos":0,"mode":0,"is_dir":true},"packages/config/dist/index.js.map":{"size":3214,"mtime_nanos":1783255052195378426,"mode":420,"is_dir":false},"packages/config/.turbo/turbo-build.log":{"size":106,"mtime_nanos":1783255052255378317,"mode":420,"is_dir":false},"packages/config/dist/index.d.ts.map":{"size":521,"mtime_nanos":1783255052219805483,"mode":420,"is_dir":false},"packages/config/dist/index.d.ts":{"size":1874,"mtime_nanos":1783255052220051732,"mode":420,"is_dir":false},"packages/config/dist/index.js":{"size":3043,"mtime_nanos":1783255052196378425,"mode":420,"is_dir":false}},"order":["packages/config/.turbo/turbo-build.log","packages/config/dist","packages/config/dist/index.d.ts","packages/config/dist/index.d.ts.map","packages/config/dist/index.js","packages/config/dist/index.js.map"]}
|
||||
1
.turbo/cache/7ec080769e22b52e-meta.json
vendored
Normal file
1
.turbo/cache/7ec080769e22b52e-meta.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"hash":"7ec080769e22b52e","duration":2294,"sha":"27a3ec8244e70774e6f4673201397e2302c32dfe","dirty_hash":"abc4a2c6304f10abbf2d6c628ed6a63dbf9e6ca06fecaaea2935e4ea7f4ff660"}
|
||||
BIN
.turbo/cache/7ec080769e22b52e.tar.zst
vendored
Normal file
BIN
.turbo/cache/7ec080769e22b52e.tar.zst
vendored
Normal file
Binary file not shown.
1
.turbo/cache/83bc945bf697348a-manifest.json
vendored
Normal file
1
.turbo/cache/83bc945bf697348a-manifest.json
vendored
Normal file
File diff suppressed because one or more lines are too long
1
.turbo/cache/83bc945bf697348a-meta.json
vendored
Normal file
1
.turbo/cache/83bc945bf697348a-meta.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"hash":"83bc945bf697348a","duration":17907,"sha":"27a3ec8244e70774e6f4673201397e2302c32dfe","dirty_hash":"67d44d689fa95ed97ad8bb0d3e753762649434cb9a64ff731786cdc979515618"}
|
||||
BIN
.turbo/cache/83bc945bf697348a.tar.zst
vendored
Normal file
BIN
.turbo/cache/83bc945bf697348a.tar.zst
vendored
Normal file
Binary file not shown.
1
.turbo/cache/8c5cbe4308e26227-manifest.json
vendored
Normal file
1
.turbo/cache/8c5cbe4308e26227-manifest.json
vendored
Normal file
File diff suppressed because one or more lines are too long
1
.turbo/cache/8c5cbe4308e26227-meta.json
vendored
Normal file
1
.turbo/cache/8c5cbe4308e26227-meta.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"hash":"8c5cbe4308e26227","duration":1073,"sha":"27a3ec8244e70774e6f4673201397e2302c32dfe","dirty_hash":"abc4a2c6304f10abbf2d6c628ed6a63dbf9e6ca06fecaaea2935e4ea7f4ff660"}
|
||||
BIN
.turbo/cache/8c5cbe4308e26227.tar.zst
vendored
Normal file
BIN
.turbo/cache/8c5cbe4308e26227.tar.zst
vendored
Normal file
Binary file not shown.
1
.turbo/cache/95e8fc4f72d7869c-manifest.json
vendored
Normal file
1
.turbo/cache/95e8fc4f72d7869c-manifest.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"files":{"packages/scheduler/dist/index.js":{"size":2244,"mtime_nanos":1783254823897792836,"mode":420,"is_dir":false},"packages/scheduler/dist/scheduling.test.d.ts.map":{"size":124,"mtime_nanos":1783254823903792825,"mode":420,"is_dir":false},"packages/scheduler/dist/scheduling.test.js":{"size":1778,"mtime_nanos":1783254823903792825,"mode":420,"is_dir":false},"packages/scheduler/dist/index.js.map":{"size":414,"mtime_nanos":1783254823897792836,"mode":420,"is_dir":false},"packages/scheduler/dist/capacity.d.ts":{"size":1024,"mtime_nanos":1783254823885792858,"mode":420,"is_dir":false},"packages/scheduler/dist/types.d.ts":{"size":615,"mtime_nanos":1783254823857792909,"mode":420,"is_dir":false},"packages/scheduler/dist/index.d.ts":{"size":431,"mtime_nanos":1783254823898792834,"mode":420,"is_dir":false},"packages/scheduler/dist/capacity.js.map":{"size":2635,"mtime_nanos":1783254823878792871,"mode":420,"is_dir":false},"packages/scheduler/.turbo/turbo-build.log":{"size":108,"mtime_nanos":1783254823935792767,"mode":420,"is_dir":false},"packages/scheduler/dist":{"size":0,"mtime_nanos":0,"mode":0,"is_dir":true},"packages/scheduler/dist/index.d.ts.map":{"size":378,"mtime_nanos":1783254823898792834,"mode":420,"is_dir":false},"packages/scheduler/dist/select-node.js.map":{"size":939,"mtime_nanos":1783254823890792849,"mode":420,"is_dir":false},"packages/scheduler/dist/capacity.js":{"size":3044,"mtime_nanos":1783254823878792871,"mode":420,"is_dir":false},"packages/scheduler/dist/types.js.map":{"size":102,"mtime_nanos":1783254823853908348,"mode":420,"is_dir":false},"packages/scheduler/dist/scheduling.test.d.ts":{"size":56,"mtime_nanos":1783254823903792825,"mode":420,"is_dir":false},"packages/scheduler/dist/types.js":{"size":110,"mtime_nanos":1783254823853908348,"mode":420,"is_dir":false},"packages/scheduler/dist/select-node.d.ts":{"size":304,"mtime_nanos":1783254823892792845,"mode":420,"is_dir":false},"packages/scheduler/dist/capacity.d.ts.map":{"size":766,"mtime_nanos":1783254823885792858,"mode":420,"is_dir":false},"packages/scheduler/dist/types.d.ts.map":{"size":664,"mtime_nanos":1783254823857792909,"mode":420,"is_dir":false},"packages/scheduler/dist/select-node.d.ts.map":{"size":347,"mtime_nanos":1783254823892792845,"mode":420,"is_dir":false},"packages/scheduler/dist/scheduling.test.js.map":{"size":1650,"mtime_nanos":1783254823903792825,"mode":420,"is_dir":false},"packages/scheduler/dist/select-node.js":{"size":944,"mtime_nanos":1783254823891792847,"mode":420,"is_dir":false}},"order":["packages/scheduler/.turbo/turbo-build.log","packages/scheduler/dist","packages/scheduler/dist/capacity.d.ts","packages/scheduler/dist/capacity.d.ts.map","packages/scheduler/dist/capacity.js","packages/scheduler/dist/capacity.js.map","packages/scheduler/dist/index.d.ts","packages/scheduler/dist/index.d.ts.map","packages/scheduler/dist/index.js","packages/scheduler/dist/index.js.map","packages/scheduler/dist/scheduling.test.d.ts","packages/scheduler/dist/scheduling.test.d.ts.map","packages/scheduler/dist/scheduling.test.js","packages/scheduler/dist/scheduling.test.js.map","packages/scheduler/dist/select-node.d.ts","packages/scheduler/dist/select-node.d.ts.map","packages/scheduler/dist/select-node.js","packages/scheduler/dist/select-node.js.map","packages/scheduler/dist/types.d.ts","packages/scheduler/dist/types.d.ts.map","packages/scheduler/dist/types.js","packages/scheduler/dist/types.js.map"]}
|
||||
1
.turbo/cache/95e8fc4f72d7869c-meta.json
vendored
Normal file
1
.turbo/cache/95e8fc4f72d7869c-meta.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"hash":"95e8fc4f72d7869c","duration":1541,"sha":"27a3ec8244e70774e6f4673201397e2302c32dfe","dirty_hash":"67d44d689fa95ed97ad8bb0d3e753762649434cb9a64ff731786cdc979515618"}
|
||||
BIN
.turbo/cache/95e8fc4f72d7869c.tar.zst
vendored
Normal file
BIN
.turbo/cache/95e8fc4f72d7869c.tar.zst
vendored
Normal file
Binary file not shown.
1
.turbo/cache/a2830d8f7ca0f71c-manifest.json
vendored
Normal file
1
.turbo/cache/a2830d8f7ca0f71c-manifest.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"files":{"packages/metering/dist/metering.test.js.map":{"size":782,"mtime_nanos":1783254824041792575,"mode":420,"is_dir":false},"packages/metering/.turbo/turbo-build.log":{"size":106,"mtime_nanos":1783254824068792526,"mode":420,"is_dir":false},"packages/metering/dist/metering.test.d.ts":{"size":54,"mtime_nanos":1783254824042792573,"mode":420,"is_dir":false},"packages/metering/dist/index.js":{"size":1548,"mtime_nanos":1783254824029792597,"mode":420,"is_dir":false},"packages/metering/dist/metering.test.d.ts.map":{"size":120,"mtime_nanos":1783254824042792573,"mode":420,"is_dir":false},"packages/metering/dist":{"size":0,"mtime_nanos":0,"mode":0,"is_dir":true},"packages/metering/dist/metering.test.js":{"size":901,"mtime_nanos":1783254824041792575,"mode":420,"is_dir":false},"packages/metering/dist/index.d.ts":{"size":561,"mtime_nanos":1783254824037714265,"mode":420,"is_dir":false},"packages/metering/dist/index.d.ts.map":{"size":479,"mtime_nanos":1783254824036792584,"mode":420,"is_dir":false},"packages/metering/dist/index.js.map":{"size":1220,"mtime_nanos":1783254824029792597,"mode":420,"is_dir":false}},"order":["packages/metering/.turbo/turbo-build.log","packages/metering/dist","packages/metering/dist/index.d.ts","packages/metering/dist/index.d.ts.map","packages/metering/dist/index.js","packages/metering/dist/index.js.map","packages/metering/dist/metering.test.d.ts","packages/metering/dist/metering.test.d.ts.map","packages/metering/dist/metering.test.js","packages/metering/dist/metering.test.js.map"]}
|
||||
1
.turbo/cache/a2830d8f7ca0f71c-meta.json
vendored
Normal file
1
.turbo/cache/a2830d8f7ca0f71c-meta.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"hash":"a2830d8f7ca0f71c","duration":1674,"sha":"27a3ec8244e70774e6f4673201397e2302c32dfe","dirty_hash":"67d44d689fa95ed97ad8bb0d3e753762649434cb9a64ff731786cdc979515618"}
|
||||
BIN
.turbo/cache/a2830d8f7ca0f71c.tar.zst
vendored
Normal file
BIN
.turbo/cache/a2830d8f7ca0f71c.tar.zst
vendored
Normal file
Binary file not shown.
1
.turbo/cache/a30020bd73a840d7-manifest.json
vendored
Normal file
1
.turbo/cache/a30020bd73a840d7-manifest.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"files":{"packages/storage/.turbo/turbo-build.log":{"size":104,"mtime_nanos":1783254824603791555,"mode":420,"is_dir":false},"packages/storage/dist/index.js.map":{"size":339,"mtime_nanos":1783254824571791613,"mode":420,"is_dir":false},"packages/storage/dist/client.js.map":{"size":1685,"mtime_nanos":1783254824564791625,"mode":420,"is_dir":false},"packages/storage/dist/config.js":{"size":1011,"mtime_nanos":1783254824544080765,"mode":420,"is_dir":false},"packages/storage/dist/index.d.ts":{"size":290,"mtime_nanos":1783254824574588148,"mode":420,"is_dir":false},"packages/storage/dist/keys.test.js":{"size":623,"mtime_nanos":1783254824576753387,"mode":420,"is_dir":false},"packages/storage/dist/index.d.ts.map":{"size":291,"mtime_nanos":1783254824574382738,"mode":420,"is_dir":false},"packages/storage/dist/client.d.ts.map":{"size":960,"mtime_nanos":1783254824567791620,"mode":420,"is_dir":false},"packages/storage/dist":{"size":0,"mtime_nanos":0,"mode":0,"is_dir":true},"packages/storage/dist/client.js":{"size":2298,"mtime_nanos":1783254824565759240,"mode":420,"is_dir":false},"packages/storage/dist/config.d.ts.map":{"size":358,"mtime_nanos":1783254824557791638,"mode":420,"is_dir":false},"packages/storage/dist/index.js":{"size":1654,"mtime_nanos":1783254824571791613,"mode":420,"is_dir":false},"packages/storage/dist/keys.test.d.ts":{"size":50,"mtime_nanos":1783254824576791604,"mode":420,"is_dir":false},"packages/storage/dist/keys.test.d.ts.map":{"size":112,"mtime_nanos":1783254824576791604,"mode":420,"is_dir":false},"packages/storage/dist/config.d.ts":{"size":922,"mtime_nanos":1783254824558932792,"mode":420,"is_dir":false},"packages/storage/dist/client.d.ts":{"size":925,"mtime_nanos":1783254824567791620,"mode":420,"is_dir":false},"packages/storage/dist/config.js.map":{"size":967,"mtime_nanos":1783254824543943805,"mode":420,"is_dir":false},"packages/storage/dist/keys.test.js.map":{"size":518,"mtime_nanos":1783254824576584287,"mode":420,"is_dir":false}},"order":["packages/storage/.turbo/turbo-build.log","packages/storage/dist","packages/storage/dist/client.d.ts","packages/storage/dist/client.d.ts.map","packages/storage/dist/client.js","packages/storage/dist/client.js.map","packages/storage/dist/config.d.ts","packages/storage/dist/config.d.ts.map","packages/storage/dist/config.js","packages/storage/dist/config.js.map","packages/storage/dist/index.d.ts","packages/storage/dist/index.d.ts.map","packages/storage/dist/index.js","packages/storage/dist/index.js.map","packages/storage/dist/keys.test.d.ts","packages/storage/dist/keys.test.d.ts.map","packages/storage/dist/keys.test.js","packages/storage/dist/keys.test.js.map"]}
|
||||
1
.turbo/cache/a30020bd73a840d7-meta.json
vendored
Normal file
1
.turbo/cache/a30020bd73a840d7-meta.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"hash":"a30020bd73a840d7","duration":2209,"sha":"27a3ec8244e70774e6f4673201397e2302c32dfe","dirty_hash":"67d44d689fa95ed97ad8bb0d3e753762649434cb9a64ff731786cdc979515618"}
|
||||
BIN
.turbo/cache/a30020bd73a840d7.tar.zst
vendored
Normal file
BIN
.turbo/cache/a30020bd73a840d7.tar.zst
vendored
Normal file
Binary file not shown.
1
.turbo/cache/a480ca24eeac5ad4-manifest.json
vendored
Normal file
1
.turbo/cache/a480ca24eeac5ad4-manifest.json
vendored
Normal file
File diff suppressed because one or more lines are too long
1
.turbo/cache/a480ca24eeac5ad4-meta.json
vendored
Normal file
1
.turbo/cache/a480ca24eeac5ad4-meta.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"hash":"a480ca24eeac5ad4","duration":2232,"sha":"27a3ec8244e70774e6f4673201397e2302c32dfe","dirty_hash":"67d44d689fa95ed97ad8bb0d3e753762649434cb9a64ff731786cdc979515618"}
|
||||
BIN
.turbo/cache/a480ca24eeac5ad4.tar.zst
vendored
Normal file
BIN
.turbo/cache/a480ca24eeac5ad4.tar.zst
vendored
Normal file
Binary file not shown.
1
.turbo/cache/b85ca2f9ca81bcb3-manifest.json
vendored
Normal file
1
.turbo/cache/b85ca2f9ca81bcb3-manifest.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"files":{"packages/integration-auth/dist":{"size":0,"mtime_nanos":0,"mode":0,"is_dir":true},"packages/integration-auth/dist/hmac.js.map":{"size":2198,"mtime_nanos":1783254824066513338,"mode":420,"is_dir":false},"packages/integration-auth/dist/mtls.d.ts":{"size":628,"mtime_nanos":1783254824092511382,"mode":420,"is_dir":false},"packages/integration-auth/dist/mtls.js.map":{"size":1048,"mtime_nanos":1783254824089792488,"mode":420,"is_dir":false},"packages/integration-auth/dist/hmac.test.d.ts":{"size":50,"mtime_nanos":1783254824086436383,"mode":420,"is_dir":false},"packages/integration-auth/dist/hmac.test.d.ts.map":{"size":112,"mtime_nanos":1783254824086436383,"mode":420,"is_dir":false},"packages/integration-auth/dist/hmac.js":{"size":2272,"mtime_nanos":1783254824066843698,"mode":420,"is_dir":false},"packages/integration-auth/dist/hmac.d.ts":{"size":1050,"mtime_nanos":1783254824080792504,"mode":420,"is_dir":false},"packages/integration-auth/dist/hmac.test.js":{"size":953,"mtime_nanos":1783254824084792497,"mode":420,"is_dir":false},"packages/integration-auth/dist/hmac.test.js.map":{"size":744,"mtime_nanos":1783254824084792497,"mode":420,"is_dir":false},"packages/integration-auth/dist/index.d.ts":{"size":368,"mtime_nanos":1783254824097792473,"mode":420,"is_dir":false},"packages/integration-auth/dist/index.d.ts.map":{"size":316,"mtime_nanos":1783254824097792473,"mode":420,"is_dir":false},"packages/integration-auth/dist/index.js":{"size":2061,"mtime_nanos":1783254824096792475,"mode":420,"is_dir":false},"packages/integration-auth/dist/index.js.map":{"size":382,"mtime_nanos":1783254824096792475,"mode":420,"is_dir":false},"packages/integration-auth/dist/mtls.js":{"size":1604,"mtime_nanos":1783254824090568502,"mode":420,"is_dir":false},"packages/integration-auth/dist/hmac.d.ts.map":{"size":821,"mtime_nanos":1783254824080792504,"mode":420,"is_dir":false},"packages/integration-auth/dist/mtls.d.ts.map":{"size":370,"mtime_nanos":1783254824091792484,"mode":420,"is_dir":false},"packages/integration-auth/.turbo/turbo-build.log":{"size":122,"mtime_nanos":1783254824115792441,"mode":420,"is_dir":false}},"order":["packages/integration-auth/.turbo/turbo-build.log","packages/integration-auth/dist","packages/integration-auth/dist/hmac.d.ts","packages/integration-auth/dist/hmac.d.ts.map","packages/integration-auth/dist/hmac.js","packages/integration-auth/dist/hmac.js.map","packages/integration-auth/dist/hmac.test.d.ts","packages/integration-auth/dist/hmac.test.d.ts.map","packages/integration-auth/dist/hmac.test.js","packages/integration-auth/dist/hmac.test.js.map","packages/integration-auth/dist/index.d.ts","packages/integration-auth/dist/index.d.ts.map","packages/integration-auth/dist/index.js","packages/integration-auth/dist/index.js.map","packages/integration-auth/dist/mtls.d.ts","packages/integration-auth/dist/mtls.d.ts.map","packages/integration-auth/dist/mtls.js","packages/integration-auth/dist/mtls.js.map"]}
|
||||
1
.turbo/cache/b85ca2f9ca81bcb3-meta.json
vendored
Normal file
1
.turbo/cache/b85ca2f9ca81bcb3-meta.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"hash":"b85ca2f9ca81bcb3","duration":1721,"sha":"27a3ec8244e70774e6f4673201397e2302c32dfe","dirty_hash":"67d44d689fa95ed97ad8bb0d3e753762649434cb9a64ff731786cdc979515618"}
|
||||
BIN
.turbo/cache/b85ca2f9ca81bcb3.tar.zst
vendored
Normal file
BIN
.turbo/cache/b85ca2f9ca81bcb3.tar.zst
vendored
Normal file
Binary file not shown.
1
.turbo/cache/bc1b6c014f0a15b7-manifest.json
vendored
Normal file
1
.turbo/cache/bc1b6c014f0a15b7-manifest.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"files":{"packages/catalog/dist/compatibility.js":{"size":1955,"mtime_nanos":1783255052308333652,"mode":420,"is_dir":false},"packages/catalog/dist/index.d.ts.map":{"size":383,"mtime_nanos":1783255052322408118,"mode":420,"is_dir":false},"packages/catalog/dist/modrinth.js":{"size":2292,"mtime_nanos":1783255052291723086,"mode":420,"is_dir":false},"packages/catalog/dist/compatibility.js.map":{"size":1649,"mtime_nanos":1783255052307378223,"mode":420,"is_dir":false},"packages/catalog/dist/compatibility.test.d.ts.map":{"size":130,"mtime_nanos":1783255052316378207,"mode":420,"is_dir":false},"packages/catalog/dist/modrinth.js.map":{"size":1972,"mtime_nanos":1783255052291723086,"mode":420,"is_dir":false},"packages/catalog/dist/compatibility.test.d.ts":{"size":59,"mtime_nanos":1783255052316378207,"mode":420,"is_dir":false},"packages/catalog/dist/index.js.map":{"size":343,"mtime_nanos":1783255052321378197,"mode":420,"is_dir":false},"packages/catalog/dist/compatibility.test.js":{"size":2546,"mtime_nanos":1783255052315378209,"mode":420,"is_dir":false},"packages/catalog/dist/modrinth.d.ts":{"size":1701,"mtime_nanos":1783255052299378237,"mode":420,"is_dir":false},"packages/catalog/dist/compatibility.test.js.map":{"size":1968,"mtime_nanos":1783255052315378209,"mode":420,"is_dir":false},"packages/catalog/dist/modrinth.d.ts.map":{"size":1722,"mtime_nanos":1783255052299378237,"mode":420,"is_dir":false},"packages/catalog/.turbo/turbo-build.log":{"size":108,"mtime_nanos":1783255052359378128,"mode":420,"is_dir":false},"packages/catalog/dist/index.d.ts":{"size":444,"mtime_nanos":1783255052322408118,"mode":420,"is_dir":false},"packages/catalog/dist":{"size":0,"mtime_nanos":0,"mode":0,"is_dir":true},"packages/catalog/dist/index.js":{"size":1772,"mtime_nanos":1783255052322408118,"mode":420,"is_dir":false},"packages/catalog/dist/compatibility.d.ts.map":{"size":570,"mtime_nanos":1783255052309378219,"mode":420,"is_dir":false},"packages/catalog/dist/compatibility.d.ts":{"size":645,"mtime_nanos":1783255052310780041,"mode":420,"is_dir":false}},"order":["packages/catalog/.turbo/turbo-build.log","packages/catalog/dist","packages/catalog/dist/compatibility.d.ts","packages/catalog/dist/compatibility.d.ts.map","packages/catalog/dist/compatibility.js","packages/catalog/dist/compatibility.js.map","packages/catalog/dist/compatibility.test.d.ts","packages/catalog/dist/compatibility.test.d.ts.map","packages/catalog/dist/compatibility.test.js","packages/catalog/dist/compatibility.test.js.map","packages/catalog/dist/index.d.ts","packages/catalog/dist/index.d.ts.map","packages/catalog/dist/index.js","packages/catalog/dist/index.js.map","packages/catalog/dist/modrinth.d.ts","packages/catalog/dist/modrinth.d.ts.map","packages/catalog/dist/modrinth.js","packages/catalog/dist/modrinth.js.map"]}
|
||||
1
.turbo/cache/bc1b6c014f0a15b7-meta.json
vendored
Normal file
1
.turbo/cache/bc1b6c014f0a15b7-meta.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"hash":"bc1b6c014f0a15b7","duration":2395,"sha":"27a3ec8244e70774e6f4673201397e2302c32dfe","dirty_hash":"abc4a2c6304f10abbf2d6c628ed6a63dbf9e6ca06fecaaea2935e4ea7f4ff660"}
|
||||
BIN
.turbo/cache/bc1b6c014f0a15b7.tar.zst
vendored
Normal file
BIN
.turbo/cache/bc1b6c014f0a15b7.tar.zst
vendored
Normal file
Binary file not shown.
1
.turbo/cache/d12676556f73d54d-manifest.json
vendored
Normal file
1
.turbo/cache/d12676556f73d54d-manifest.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"files":{"packages/database/.turbo/turbo-build.log":{"size":545,"mtime_nanos":1783255055195372981,"mode":420,"is_dir":false},"packages/database/dist":{"size":0,"mtime_nanos":0,"mode":0,"is_dir":true},"packages/database/dist/index.d.ts":{"size":991,"mtime_nanos":1783255055173955545,"mode":420,"is_dir":false},"packages/database/dist/index.d.ts.map":{"size":733,"mtime_nanos":1783255055172373023,"mode":420,"is_dir":false},"packages/database/dist/index.js":{"size":962,"mtime_nanos":1783255055158449838,"mode":420,"is_dir":false},"packages/database/dist/index.js.map":{"size":617,"mtime_nanos":1783255055158349198,"mode":420,"is_dir":false}},"order":["packages/database/.turbo/turbo-build.log","packages/database/dist","packages/database/dist/index.d.ts","packages/database/dist/index.d.ts.map","packages/database/dist/index.js","packages/database/dist/index.js.map"]}
|
||||
1
.turbo/cache/d12676556f73d54d-meta.json
vendored
Normal file
1
.turbo/cache/d12676556f73d54d-meta.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"hash":"d12676556f73d54d","duration":3058,"sha":"27a3ec8244e70774e6f4673201397e2302c32dfe","dirty_hash":"abc4a2c6304f10abbf2d6c628ed6a63dbf9e6ca06fecaaea2935e4ea7f4ff660"}
|
||||
BIN
.turbo/cache/d12676556f73d54d.tar.zst
vendored
Normal file
BIN
.turbo/cache/d12676556f73d54d.tar.zst
vendored
Normal file
Binary file not shown.
1
.turbo/cache/d572575f47998158-manifest.json
vendored
Normal file
1
.turbo/cache/d572575f47998158-manifest.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"files":{"packages/metering/dist/index.js":{"size":1548,"mtime_nanos":1783255051818492438,"mode":420,"is_dir":false},"packages/metering/dist/index.d.ts.map":{"size":479,"mtime_nanos":1783255051825379098,"mode":420,"is_dir":false},"packages/metering/.turbo/turbo-build.log":{"size":110,"mtime_nanos":1783255051898378966,"mode":420,"is_dir":false},"packages/metering/dist/metering.test.d.ts":{"size":54,"mtime_nanos":1783255051837379076,"mode":420,"is_dir":false},"packages/metering/dist":{"size":0,"mtime_nanos":0,"mode":0,"is_dir":true},"packages/metering/dist/metering.test.d.ts.map":{"size":120,"mtime_nanos":1783255051837379076,"mode":420,"is_dir":false},"packages/metering/dist/metering.test.js":{"size":901,"mtime_nanos":1783255051832379085,"mode":420,"is_dir":false},"packages/metering/dist/index.js.map":{"size":1220,"mtime_nanos":1783255051816379114,"mode":420,"is_dir":false},"packages/metering/dist/metering.test.js.map":{"size":782,"mtime_nanos":1783255051832379085,"mode":420,"is_dir":false},"packages/metering/dist/index.d.ts":{"size":561,"mtime_nanos":1783255051825379098,"mode":420,"is_dir":false}},"order":["packages/metering/.turbo/turbo-build.log","packages/metering/dist","packages/metering/dist/index.d.ts","packages/metering/dist/index.d.ts.map","packages/metering/dist/index.js","packages/metering/dist/index.js.map","packages/metering/dist/metering.test.d.ts","packages/metering/dist/metering.test.d.ts.map","packages/metering/dist/metering.test.js","packages/metering/dist/metering.test.js.map"]}
|
||||
1
.turbo/cache/d572575f47998158-meta.json
vendored
Normal file
1
.turbo/cache/d572575f47998158-meta.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"hash":"d572575f47998158","duration":1932,"sha":"27a3ec8244e70774e6f4673201397e2302c32dfe","dirty_hash":"abc4a2c6304f10abbf2d6c628ed6a63dbf9e6ca06fecaaea2935e4ea7f4ff660"}
|
||||
BIN
.turbo/cache/d572575f47998158.tar.zst
vendored
Normal file
BIN
.turbo/cache/d572575f47998158.tar.zst
vendored
Normal file
Binary file not shown.
1
.turbo/cache/e57573f49057e7f1-manifest.json
vendored
Normal file
1
.turbo/cache/e57573f49057e7f1-manifest.json
vendored
Normal file
File diff suppressed because one or more lines are too long
1
.turbo/cache/e57573f49057e7f1-meta.json
vendored
Normal file
1
.turbo/cache/e57573f49057e7f1-meta.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"hash":"e57573f49057e7f1","duration":4583,"sha":"27a3ec8244e70774e6f4673201397e2302c32dfe","dirty_hash":"67d44d689fa95ed97ad8bb0d3e753762649434cb9a64ff731786cdc979515618"}
|
||||
BIN
.turbo/cache/e57573f49057e7f1.tar.zst
vendored
Normal file
BIN
.turbo/cache/e57573f49057e7f1.tar.zst
vendored
Normal file
Binary file not shown.
1
.turbo/cache/f065eda65a09cf0d-manifest.json
vendored
Normal file
1
.turbo/cache/f065eda65a09cf0d-manifest.json
vendored
Normal file
File diff suppressed because one or more lines are too long
1
.turbo/cache/f065eda65a09cf0d-meta.json
vendored
Normal file
1
.turbo/cache/f065eda65a09cf0d-meta.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"hash":"f065eda65a09cf0d","duration":2291,"sha":"27a3ec8244e70774e6f4673201397e2302c32dfe","dirty_hash":"67d44d689fa95ed97ad8bb0d3e753762649434cb9a64ff731786cdc979515618"}
|
||||
BIN
.turbo/cache/f065eda65a09cf0d.tar.zst
vendored
Normal file
BIN
.turbo/cache/f065eda65a09cf0d.tar.zst
vendored
Normal file
Binary file not shown.
1
.turbo/cache/f0bf7376519f6918-manifest.json
vendored
Normal file
1
.turbo/cache/f0bf7376519f6918-manifest.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"files":{"packages/scheduler/dist/capacity.js":{"size":3044,"mtime_nanos":1783255052166378479,"mode":420,"is_dir":false},"packages/scheduler/dist/scheduling.test.js.map":{"size":1650,"mtime_nanos":1783255052196378425,"mode":420,"is_dir":false},"packages/scheduler/dist/scheduling.test.d.ts.map":{"size":124,"mtime_nanos":1783255052197378423,"mode":420,"is_dir":false},"packages/scheduler/dist/index.js":{"size":2244,"mtime_nanos":1783255052187378441,"mode":420,"is_dir":false},"packages/scheduler/.turbo/turbo-build.log":{"size":112,"mtime_nanos":1783255052223378375,"mode":420,"is_dir":false},"packages/scheduler/dist/scheduling.test.js":{"size":1778,"mtime_nanos":1783255052196378425,"mode":420,"is_dir":false},"packages/scheduler/dist/types.js.map":{"size":102,"mtime_nanos":1783255052146021760,"mode":420,"is_dir":false},"packages/scheduler/dist/types.js":{"size":110,"mtime_nanos":1783255052146621830,"mode":420,"is_dir":false},"packages/scheduler/dist/select-node.d.ts.map":{"size":347,"mtime_nanos":1783255052181811181,"mode":420,"is_dir":false},"packages/scheduler/dist/scheduling.test.d.ts":{"size":56,"mtime_nanos":1783255052197378423,"mode":420,"is_dir":false},"packages/scheduler/dist/types.d.ts":{"size":615,"mtime_nanos":1783255052153378502,"mode":420,"is_dir":false},"packages/scheduler/dist/index.d.ts":{"size":431,"mtime_nanos":1783255052188378440,"mode":420,"is_dir":false},"packages/scheduler/dist/select-node.js.map":{"size":939,"mtime_nanos":1783255052178378458,"mode":420,"is_dir":false},"packages/scheduler/dist/types.d.ts.map":{"size":664,"mtime_nanos":1783255052153378502,"mode":420,"is_dir":false},"packages/scheduler/dist":{"size":0,"mtime_nanos":0,"mode":0,"is_dir":true},"packages/scheduler/dist/capacity.d.ts":{"size":1024,"mtime_nanos":1783255052173378466,"mode":420,"is_dir":false},"packages/scheduler/dist/capacity.d.ts.map":{"size":766,"mtime_nanos":1783255052173378466,"mode":420,"is_dir":false},"packages/scheduler/dist/capacity.js.map":{"size":2635,"mtime_nanos":1783255052165378481,"mode":420,"is_dir":false},"packages/scheduler/dist/select-node.d.ts":{"size":304,"mtime_nanos":1783255052181811181,"mode":420,"is_dir":false},"packages/scheduler/dist/index.d.ts.map":{"size":378,"mtime_nanos":1783255052188378440,"mode":420,"is_dir":false},"packages/scheduler/dist/index.js.map":{"size":414,"mtime_nanos":1783255052187378441,"mode":420,"is_dir":false},"packages/scheduler/dist/select-node.js":{"size":944,"mtime_nanos":1783255052180273802,"mode":420,"is_dir":false}},"order":["packages/scheduler/.turbo/turbo-build.log","packages/scheduler/dist","packages/scheduler/dist/capacity.d.ts","packages/scheduler/dist/capacity.d.ts.map","packages/scheduler/dist/capacity.js","packages/scheduler/dist/capacity.js.map","packages/scheduler/dist/index.d.ts","packages/scheduler/dist/index.d.ts.map","packages/scheduler/dist/index.js","packages/scheduler/dist/index.js.map","packages/scheduler/dist/scheduling.test.d.ts","packages/scheduler/dist/scheduling.test.d.ts.map","packages/scheduler/dist/scheduling.test.js","packages/scheduler/dist/scheduling.test.js.map","packages/scheduler/dist/select-node.d.ts","packages/scheduler/dist/select-node.d.ts.map","packages/scheduler/dist/select-node.js","packages/scheduler/dist/select-node.js.map","packages/scheduler/dist/types.d.ts","packages/scheduler/dist/types.d.ts.map","packages/scheduler/dist/types.js","packages/scheduler/dist/types.js.map"]}
|
||||
1
.turbo/cache/f0bf7376519f6918-meta.json
vendored
Normal file
1
.turbo/cache/f0bf7376519f6918-meta.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"hash":"f0bf7376519f6918","duration":2258,"sha":"27a3ec8244e70774e6f4673201397e2302c32dfe","dirty_hash":"abc4a2c6304f10abbf2d6c628ed6a63dbf9e6ca06fecaaea2935e4ea7f4ff660"}
|
||||
BIN
.turbo/cache/f0bf7376519f6918.tar.zst
vendored
Normal file
BIN
.turbo/cache/f0bf7376519f6918.tar.zst
vendored
Normal file
Binary file not shown.
1
.turbo/cache/f1d80f0b8df92657-manifest.json
vendored
Normal file
1
.turbo/cache/f1d80f0b8df92657-manifest.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"files":{"packages/catalog/dist/index.d.ts":{"size":444,"mtime_nanos":1783254823962792718,"mode":420,"is_dir":false},"packages/catalog/dist/index.js":{"size":1772,"mtime_nanos":1783254823962617243,"mode":420,"is_dir":false},"packages/catalog/dist":{"size":0,"mtime_nanos":0,"mode":0,"is_dir":true},"packages/catalog/dist/modrinth.d.ts.map":{"size":1722,"mtime_nanos":1783254823942792755,"mode":420,"is_dir":false},"packages/catalog/dist/modrinth.js":{"size":2292,"mtime_nanos":1783254823937826478,"mode":420,"is_dir":false},"packages/catalog/dist/compatibility.test.js.map":{"size":1968,"mtime_nanos":1783254823956792730,"mode":420,"is_dir":false},"packages/catalog/.turbo/turbo-build.log":{"size":104,"mtime_nanos":1783254823991792666,"mode":420,"is_dir":false},"packages/catalog/dist/index.js.map":{"size":343,"mtime_nanos":1783254823961792720,"mode":420,"is_dir":false},"packages/catalog/dist/compatibility.js":{"size":1955,"mtime_nanos":1783254823948276246,"mode":420,"is_dir":false},"packages/catalog/dist/compatibility.test.d.ts":{"size":59,"mtime_nanos":1783254823957792727,"mode":420,"is_dir":false},"packages/catalog/dist/compatibility.d.ts":{"size":645,"mtime_nanos":1783254823951395755,"mode":420,"is_dir":false},"packages/catalog/dist/compatibility.test.js":{"size":2546,"mtime_nanos":1783254823957442534,"mode":420,"is_dir":false},"packages/catalog/dist/compatibility.d.ts.map":{"size":570,"mtime_nanos":1783254823950792740,"mode":420,"is_dir":false},"packages/catalog/dist/compatibility.js.map":{"size":1649,"mtime_nanos":1783254823948276246,"mode":420,"is_dir":false},"packages/catalog/dist/modrinth.d.ts":{"size":1701,"mtime_nanos":1783254823942792755,"mode":420,"is_dir":false},"packages/catalog/dist/index.d.ts.map":{"size":383,"mtime_nanos":1783254823962792718,"mode":420,"is_dir":false},"packages/catalog/dist/compatibility.test.d.ts.map":{"size":130,"mtime_nanos":1783254823957792727,"mode":420,"is_dir":false},"packages/catalog/dist/modrinth.js.map":{"size":1972,"mtime_nanos":1783254823937641058,"mode":420,"is_dir":false}},"order":["packages/catalog/.turbo/turbo-build.log","packages/catalog/dist","packages/catalog/dist/compatibility.d.ts","packages/catalog/dist/compatibility.d.ts.map","packages/catalog/dist/compatibility.js","packages/catalog/dist/compatibility.js.map","packages/catalog/dist/compatibility.test.d.ts","packages/catalog/dist/compatibility.test.d.ts.map","packages/catalog/dist/compatibility.test.js","packages/catalog/dist/compatibility.test.js.map","packages/catalog/dist/index.d.ts","packages/catalog/dist/index.d.ts.map","packages/catalog/dist/index.js","packages/catalog/dist/index.js.map","packages/catalog/dist/modrinth.d.ts","packages/catalog/dist/modrinth.d.ts.map","packages/catalog/dist/modrinth.js","packages/catalog/dist/modrinth.js.map"]}
|
||||
1
.turbo/cache/f1d80f0b8df92657-meta.json
vendored
Normal file
1
.turbo/cache/f1d80f0b8df92657-meta.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"hash":"f1d80f0b8df92657","duration":1597,"sha":"27a3ec8244e70774e6f4673201397e2302c32dfe","dirty_hash":"67d44d689fa95ed97ad8bb0d3e753762649434cb9a64ff731786cdc979515618"}
|
||||
BIN
.turbo/cache/f1d80f0b8df92657.tar.zst
vendored
Normal file
BIN
.turbo/cache/f1d80f0b8df92657.tar.zst
vendored
Normal file
Binary file not shown.
@@ -1,4 +1,4 @@
|
||||
import { Module } from '@nestjs/common';
|
||||
import { forwardRef, Module } from '@nestjs/common';
|
||||
import { Queue } from 'bullmq';
|
||||
import Redis from 'ioredis';
|
||||
|
||||
@@ -20,7 +20,7 @@ import { SessionService } from './session.service';
|
||||
import { SsoService } from './sso.service';
|
||||
|
||||
@Module({
|
||||
imports: [AppConfigModule, BillingModule],
|
||||
imports: [AppConfigModule, forwardRef(() => BillingModule)],
|
||||
controllers: [AuthController, MeController],
|
||||
providers: [
|
||||
AuthService,
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
import { Module } from '@nestjs/common';
|
||||
import { forwardRef, Module } from '@nestjs/common';
|
||||
|
||||
import { AuthModule } from '../auth/auth.module';
|
||||
import { PrismaModule } from '../prisma/prisma.module';
|
||||
|
||||
import { BillingController } from './billing.controller';
|
||||
@@ -8,7 +9,7 @@ import { StripeWebhookController } from './stripe/stripe-webhook.controller';
|
||||
import { StripeWebhookService } from './stripe/stripe-webhook.service';
|
||||
|
||||
@Module({
|
||||
imports: [PrismaModule],
|
||||
imports: [PrismaModule, forwardRef(() => AuthModule)],
|
||||
controllers: [BillingController, StripeWebhookController],
|
||||
providers: [BillingService, StripeWebhookService],
|
||||
exports: [BillingService],
|
||||
|
||||
@@ -27,6 +27,7 @@ async function bootstrap(): Promise<void> {
|
||||
}),
|
||||
{
|
||||
bufferLogs: true,
|
||||
bodyParser: false,
|
||||
},
|
||||
);
|
||||
|
||||
@@ -45,6 +46,9 @@ async function bootstrap(): Promise<void> {
|
||||
await app.register(websocket);
|
||||
|
||||
const fastify = app.getHttpAdapter().getInstance();
|
||||
if (fastify.hasContentTypeParser('application/json')) {
|
||||
fastify.removeContentTypeParser('application/json');
|
||||
}
|
||||
fastify.addContentTypeParser(
|
||||
'application/json',
|
||||
{ parseAs: 'string' },
|
||||
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
12
package.json
12
package.json
@@ -6,17 +6,19 @@
|
||||
"node": ">=22"
|
||||
},
|
||||
"scripts": {
|
||||
"dev": "turbo run dev",
|
||||
"dev": "node scripts/run-with-env.mjs turbo run dev",
|
||||
"dev:bg": "bash scripts/dev-bg.sh",
|
||||
"dev:stop": "bash scripts/dev-stop.sh",
|
||||
"dev:infra": "docker compose -f deploy/compose/compose.dev.yml --env-file .env up -d postgres redis minio minio-init mailpit",
|
||||
"build": "turbo run build",
|
||||
"lint": "turbo run lint",
|
||||
"typecheck": "turbo run typecheck",
|
||||
"test": "turbo run test",
|
||||
"db:generate": "pnpm --filter @hexahost/database db:generate",
|
||||
"db:migrate": "bash -c 'set -a && source .env && set +a && pnpm --filter @hexahost/database db:migrate'",
|
||||
"db:push": "bash -c 'set -a && source .env && set +a && pnpm --filter @hexahost/database db:push'",
|
||||
"bootstrap:admin": "bash -c 'set -a && source .env && set +a && pnpm --filter @hexahost/database bootstrap:admin'",
|
||||
"db:seed": "bash -c 'set -a && source .env && set +a && pnpm --filter @hexahost/database db:seed'"
|
||||
"db:migrate": "node scripts/run-with-env.mjs pnpm --filter @hexahost/database db:migrate",
|
||||
"db:push": "node scripts/run-with-env.mjs pnpm --filter @hexahost/database db:push",
|
||||
"bootstrap:admin": "pnpm --filter @hexahost/auth build && node scripts/run-with-env.mjs pnpm --filter @hexahost/database bootstrap:admin",
|
||||
"db:seed": "node scripts/run-with-env.mjs pnpm --filter @hexahost/database db:seed"
|
||||
},
|
||||
"devDependencies": {
|
||||
"turbo": "^2.3.3",
|
||||
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -26,6 +26,9 @@ function parseArgs(argv: string[]): CliArgs {
|
||||
|
||||
for (let i = 0; i < argv.length; i += 1) {
|
||||
const key = argv[i];
|
||||
if (key === '--') {
|
||||
continue;
|
||||
}
|
||||
const value = argv[i + 1];
|
||||
if (key?.startsWith('--') && value) {
|
||||
args[key.slice(2)] = value;
|
||||
@@ -63,6 +66,29 @@ async function ensurePlatformRoles(prisma: PrismaClient): Promise<void> {
|
||||
}
|
||||
}
|
||||
|
||||
async function ensureUniqueUsername(
|
||||
prisma: PrismaClient,
|
||||
baseUsername: string,
|
||||
): Promise<string> {
|
||||
let candidate = baseUsername;
|
||||
let suffix = 0;
|
||||
|
||||
while (true) {
|
||||
const existing = await prisma.user.findUnique({
|
||||
where: { username: candidate },
|
||||
select: { id: true },
|
||||
});
|
||||
|
||||
if (!existing) {
|
||||
return candidate;
|
||||
}
|
||||
|
||||
suffix += 1;
|
||||
const suffixText = String(suffix);
|
||||
candidate = `${baseUsername.slice(0, Math.max(1, 32 - suffixText.length))}${suffixText}`;
|
||||
}
|
||||
}
|
||||
|
||||
async function main(): Promise<void> {
|
||||
const input = parseArgs(process.argv.slice(2));
|
||||
const prisma = new PrismaClient();
|
||||
@@ -111,6 +137,8 @@ async function main(): Promise<void> {
|
||||
username = generateUsernameFromEmail(input.email);
|
||||
}
|
||||
|
||||
username = await ensureUniqueUsername(prisma, username);
|
||||
|
||||
const passwordHash = await hashPassword(input.password);
|
||||
|
||||
const superAdminRole = await prisma.platformRole.findUniqueOrThrow({
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -2,7 +2,6 @@
|
||||
"$schema": "https://json.schemastore.org/tsconfig",
|
||||
"extends": "./base.json",
|
||||
"compilerOptions": {
|
||||
"composite": true,
|
||||
"outDir": "./dist",
|
||||
"rootDir": "./src"
|
||||
},
|
||||
|
||||
28
scripts/dev-bg.sh
Executable file
28
scripts/dev-bg.sh
Executable file
@@ -0,0 +1,28 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
ROOT="$(cd "$(dirname "$0")/.." && pwd)"
|
||||
PID_FILE="$ROOT/.logs/dev.pid"
|
||||
LOG_FILE="$ROOT/.logs/dev.log"
|
||||
|
||||
mkdir -p "$ROOT/.logs"
|
||||
|
||||
if [[ -f "$PID_FILE" ]] && kill -0 "$(cat "$PID_FILE")" 2>/dev/null; then
|
||||
echo "Dev server läuft bereits (PID $(cat "$PID_FILE"))."
|
||||
echo "Log: $LOG_FILE"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Next.js Dev braucht einen sauberen .next-Ordner (Production-Build stört).
|
||||
rm -rf "$ROOT/apps/web/.next"
|
||||
|
||||
# shellcheck source=scripts/load-env.sh
|
||||
source "$ROOT/scripts/load-env.sh"
|
||||
cd "$ROOT"
|
||||
|
||||
nohup pnpm turbo run dev >"$LOG_FILE" 2>&1 &
|
||||
echo $! >"$PID_FILE"
|
||||
|
||||
echo "Dev server gestartet (PID $(cat "$PID_FILE"))."
|
||||
echo "Log: $LOG_FILE"
|
||||
echo "Web: http://localhost:3000"
|
||||
34
scripts/dev-stop.sh
Executable file
34
scripts/dev-stop.sh
Executable file
@@ -0,0 +1,34 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
ROOT="$(cd "$(dirname "$0")/.." && pwd)"
|
||||
PID_FILE="$ROOT/.logs/dev.pid"
|
||||
|
||||
if [[ -f "$PID_FILE" ]]; then
|
||||
PID="$(cat "$PID_FILE")"
|
||||
if kill -0 "$PID" 2>/dev/null; then
|
||||
kill "$PID" 2>/dev/null || true
|
||||
sleep 1
|
||||
kill -0 "$PID" 2>/dev/null && kill -9 "$PID" 2>/dev/null || true
|
||||
echo "Dev server gestoppt (PID $PID)."
|
||||
else
|
||||
echo "Prozess $PID läuft nicht mehr."
|
||||
fi
|
||||
rm -f "$PID_FILE"
|
||||
else
|
||||
echo "Kein Dev-Server-PID-File gefunden."
|
||||
fi
|
||||
|
||||
# Turbo/Next/Nest Kindprozesse beenden (Ports 3000–3003 freigeben).
|
||||
pkill -f "turbo run dev" 2>/dev/null || true
|
||||
pkill -f "next dev" 2>/dev/null || true
|
||||
pkill -f "nest start --watch" 2>/dev/null || true
|
||||
pkill -f "tsx watch src/index.ts" 2>/dev/null || true
|
||||
|
||||
for port in 3000 3001 3002 3003; do
|
||||
if command -v fuser >/dev/null 2>&1; then
|
||||
fuser -k "${port}/tcp" 2>/dev/null || true
|
||||
elif command -v lsof >/dev/null 2>&1; then
|
||||
lsof -ti ":${port}" -sTCP:LISTEN 2>/dev/null | xargs -r kill -9 2>/dev/null || true
|
||||
fi
|
||||
done
|
||||
31
scripts/load-env.sh
Executable file
31
scripts/load-env.sh
Executable file
@@ -0,0 +1,31 @@
|
||||
#!/usr/bin/env bash
|
||||
# Loads variables from .env into the current shell via Node.
|
||||
set -euo pipefail
|
||||
|
||||
ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
||||
ENV_FILE="$ROOT/.env"
|
||||
|
||||
if [[ ! -f "$ENV_FILE" ]]; then
|
||||
echo ".env nicht gefunden: $ENV_FILE" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
eval "$(
|
||||
node --input-type=module -e "
|
||||
import { readFileSync } from 'node:fs';
|
||||
process.loadEnvFile('$ENV_FILE');
|
||||
const content = readFileSync('$ENV_FILE', 'utf8');
|
||||
for (const line of content.split('\n')) {
|
||||
const trimmed = line.trim();
|
||||
if (!trimmed || trimmed.startsWith('#')) continue;
|
||||
const eq = trimmed.indexOf('=');
|
||||
if (eq === -1) continue;
|
||||
const key = trimmed.slice(0, eq).trim();
|
||||
if (!/^[A-Za-z_][A-Za-z0-9_]*$/.test(key)) continue;
|
||||
const value = process.env[key];
|
||||
if (value !== undefined) {
|
||||
process.stdout.write('export ' + key + '=' + JSON.stringify(value) + ';');
|
||||
}
|
||||
}
|
||||
"
|
||||
)"
|
||||
25
scripts/run-with-env.mjs
Normal file
25
scripts/run-with-env.mjs
Normal file
@@ -0,0 +1,25 @@
|
||||
import { spawnSync } from 'node:child_process';
|
||||
import { existsSync } from 'node:fs';
|
||||
import { resolve } from 'node:path';
|
||||
|
||||
const root = resolve(import.meta.dirname, '..');
|
||||
const envFile = resolve(root, '.env');
|
||||
|
||||
if (existsSync(envFile)) {
|
||||
process.loadEnvFile(envFile);
|
||||
}
|
||||
|
||||
const [command, ...args] = process.argv.slice(2);
|
||||
|
||||
if (!command) {
|
||||
console.error('Usage: node scripts/run-with-env.mjs <command> [args...]');
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
const result = spawnSync(command, args, {
|
||||
cwd: root,
|
||||
stdio: 'inherit',
|
||||
env: process.env,
|
||||
});
|
||||
|
||||
process.exit(result.status ?? 1);
|
||||
22
turbo.json
22
turbo.json
@@ -1,5 +1,26 @@
|
||||
{
|
||||
"$schema": "https://turbo.build/schema.json",
|
||||
"globalPassThroughEnv": [
|
||||
"APP_*",
|
||||
"API_*",
|
||||
"DATABASE_URL",
|
||||
"REDIS_URL",
|
||||
"SESSION_SECRET",
|
||||
"ENCRYPTION_KEY",
|
||||
"SMTP_*",
|
||||
"S3_*",
|
||||
"NODE_*",
|
||||
"LOG_LEVEL",
|
||||
"BILLING_*",
|
||||
"EDGE_*",
|
||||
"GAME_*",
|
||||
"MODRINTH_*",
|
||||
"CURSEFORGE_*",
|
||||
"WHMCS_*",
|
||||
"RFC2136_*",
|
||||
"DNS_*",
|
||||
"TRAEFIK_*"
|
||||
],
|
||||
"tasks": {
|
||||
"build": {
|
||||
"dependsOn": ["^build"],
|
||||
@@ -15,6 +36,7 @@
|
||||
"dependsOn": ["^build"]
|
||||
},
|
||||
"dev": {
|
||||
"dependsOn": ["^build"],
|
||||
"cache": false,
|
||||
"persistent": true
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user