CPTProgrammer
ea657c78b5
Use built-in Table rowSelection
2026-07-16 20:43:00 +08:00
CPTProgrammer
9d63c2028f
Add Modrinth/CurseForge MC version ranges to publish modal
...
Compute per-platform version ranges using each platform's available MC
version list and display them as tags in the publish modal.
2026-07-16 20:26:13 +08:00
CPTProgrammer
54d6a7659a
Propagate MC version ranges from VersionTable to PublishModal
2026-07-16 16:05:13 +08:00
CPTProgrammer
9a2305d5e0
Increase main content max-width
2026-07-16 15:35:08 +08:00
CPTProgrammer
95a3900aec
Add platform icons to publish progress bars
2026-07-16 15:22:06 +08:00
CPTProgrammer
7bb932910a
Use theme tokens for spacing and sizing and update PublishModal
2026-07-16 14:34:56 +08:00
CPTProgrammer
5f6cab6529
Add interactive version range display in VersionTable
2026-07-16 14:17:49 +08:00
CPTProgrammer
e45db0ffc0
Update index.md
2026-07-16 13:20:29 +08:00
CPTProgrammer
c39c135d91
Replace inline color spans with Typography.Text
2026-07-16 13:11:30 +08:00
CPTProgrammer
1cb0a444d0
Display filename in config selector options
2026-07-16 13:06:37 +08:00
CPTProgrammer
9a7e6a8934
Extract add config button and wrap selector with Flex
2026-07-16 13:02:51 +08:00
CPTProgrammer
f90923736f
Refactor config API to use filename-based identifiers
2026-07-16 12:30:51 +08:00
CPTProgrammer
c21d67b130
Use project root constant instead of process.cwd()
2026-07-16 11:39:13 +08:00
CPTProgrammer
7173ef1149
Refactor environment selector with grouped options and descriptions
2026-07-16 11:18:20 +08:00
CPTProgrammer
269e7024a2
Add loader icons, colors, and sort order to ConfigModal selects
2026-07-15 22:16:12 +08:00
CPTProgrammer
80d664936a
Add validation for Modrinth and CurseForge version fields
2026-07-15 13:28:42 +08:00
CPTProgrammer
f1447a3b91
Fix stale prevRef blocking cross-def change detection
2026-07-15 13:05:46 +08:00
CPTProgrammer
5bea485378
Add debounce configuration to field validation definitions
2026-07-15 12:51:36 +08:00
CPTProgrammer
c1f07cc31e
Add dynamic field validation for Modrinth and CurseForge lists
2026-07-15 12:38:50 +08:00
CPTProgrammer
79d21571d9
Restrict schema parsing to a subset of fields
2026-07-15 09:58:36 +08:00
CPTProgrammer
f2f5db5c17
Add project ID field to dependency configuration
2026-07-14 18:15:17 +08:00
CPTProgrammer
c265b2405b
Make mod link fields nullable and optional
2026-07-14 17:10:11 +08:00
CPTProgrammer
3b077d75f4
Add missing file status values and make gameVersionTypeId nullable
2026-07-14 16:39:16 +08:00
CPTProgrammer
52ef5bf927
Add Modrinth and CurseForge project ID lookup to field validation
2026-07-14 14:29:56 +08:00
CPTProgrammer
9658773fa2
Make nullable fields optional in CurseForge schemas
2026-07-13 19:07:32 +08:00
CPTProgrammer
9a15a99ba1
Add CurseForge and Modrinth project retrieval APIs
2026-07-13 18:58:49 +08:00
CPTProgrammer
296b69bf1c
Split CurseForge API token into separate legacy and new tokens
2026-07-13 18:42:29 +08:00
CPTProgrammer
691ae86e00
Update Modrinth API documentation
2026-07-13 16:42:52 +08:00
CPTProgrammer
b778ebc1d8
Update CurseForge API documentation
2026-07-13 16:18:52 +08:00
CPTProgrammer
750f2a18f8
Add field validation engine with per-field debounce
...
Introduce useFieldValidations hook and ValidatedFormItem component
driven by declarative StaticValidationDef arrays. Four server actions
scan the project directory to validate MC properties dir, version field,
artifact and source filename templates in real time.
2026-07-13 12:59:03 +08:00
CPTProgrammer
d79af724e3
Add default filename and source filename format values
2026-07-13 10:08:45 +08:00
CPTProgrammer
c996e772c8
Fix EventEmitter import and tsconfig paths
...
Update the EventEmitter import to use named import syntax.
Correct tsconfig baseUrl and paths mapping to properly resolve
`@/*` aliases from the project root.
2026-07-13 10:00:20 +08:00
CPTProgrammer
7aa84fd41e
Refactor type-safe constants and extract utility helpers
2026-07-13 09:29:00 +08:00
CPTProgrammer
77b7db9dd1
Add parallel server action utilities
2026-07-13 09:07:18 +08:00
CPTProgrammer
a4686c09b5
Refactor ConfigModal to load metadata independently per select
2026-07-11 12:58:35 +08:00
CPTProgrammer
8d23ae1823
Implement project frontend page
2026-07-11 12:13:20 +08:00
CPTProgrammer
b5555d5635
Dynamically map platform results in publish endpoint
2026-07-11 09:46:25 +08:00
CPTProgrammer
ffcfa9c4f5
Refactor platform publishing
...
Introduce a new `getMinecraftVersions` function to fetch Minecraft
versions from
CurseForge with caching, along with its Zod schema and exports. Refactor
the
publishing system to use a unified `PlatformAdaptor` interface, replace
the old
`PlatformContext` type, and update the publish flow to compute version
ranges
and pass files as structured objects. Improve `resolveVersionName` to
accept a
full config object and rework `buildJarPath` to use a Template instance.
Add
server functions to retrieve filtered MC version lists for both Modrinth
and
CurseForge.
2026-07-11 09:26:05 +08:00
CPTProgrammer
e8bcd18c76
Add docs for CurseForge Meta API endpoints
2026-07-11 08:55:02 +08:00
CPTProgrammer
cbce560805
Replace Blob with File for file uploads
2026-07-11 06:06:34 +08:00
CPTProgrammer
24637d3db3
Update tRPC route references in docs after namespace flattening
2026-07-11 05:39:08 +08:00
CPTProgrammer
e321ecfd70
Add version range computation utility for MC versions
2026-07-10 14:59:52 +08:00
CPTProgrammer
f7e468f28f
Add SemVer.compare static method for version comparison
2026-07-10 14:59:30 +08:00
CPTProgrammer
9bc693e3a1
Fix CurseForge apiVersion type from number to string
2026-07-10 13:04:20 +08:00
CPTProgrammer
58d72d06fe
Add integration tests for CurseForge and Modrinth APIs
2026-07-10 09:58:20 +08:00
CPTProgrammer
29e1751d31
Drop user-agent version suffix
2026-07-10 08:59:26 +08:00
CPTProgrammer
ef276b6ef4
Update VersionTable to show MC version compatibility range
2026-07-10 08:37:23 +08:00
CPTProgrammer
e8d4994cec
Add TTL cache for game version/loader APIs and enrich upload metadata
2026-07-10 06:54:14 +08:00
CPTProgrammer
7ddbd36c63
Fix typo in version_name documentation comment
2026-07-10 02:42:10 +08:00
CPTProgrammer
a331c0f0f3
Refactor PlatformContext to use Config type directly
2026-07-09 23:18:42 +08:00