fix(editor): fabric에서도 platformDownloadUrl 저장되도록 수정
normalizePackDefinition 이 fabric 일 때 downloadUrl 을 의도적으로 스트립하고 있어 저장 후 입력값이 사라지는 문제. vanilla 외에는 모두 보관하도록 조건을 변경하고, 에디터 UI 도 fabric 에서 URL 입력 칸을 다시 보여주도록 되돌렸다.
This commit is contained in:
@@ -81,8 +81,8 @@ export function normalizePackDefinition(input: Partial<PackDefinition> & Record<
|
|||||||
: fallback.mcVersion,
|
: fallback.mcVersion,
|
||||||
platform: {
|
platform: {
|
||||||
type: platformType,
|
type: platformType,
|
||||||
// fabric 은 downloadUrl 을 쓰지 않고 loaderVersion 기반으로 자동 설치한다.
|
// vanilla 외에는 fabric/forge/neoforge 모두 downloadUrl 을 보관한다.
|
||||||
downloadUrl: platformType !== 'fabric'
|
downloadUrl: platformType !== 'vanilla'
|
||||||
&& typeof platform.downloadUrl === 'string'
|
&& typeof platform.downloadUrl === 'string'
|
||||||
&& platform.downloadUrl.trim().length > 0
|
&& platform.downloadUrl.trim().length > 0
|
||||||
? platform.downloadUrl.trim()
|
? platform.downloadUrl.trim()
|
||||||
|
|||||||
@@ -47,7 +47,7 @@
|
|||||||
<% }) %>
|
<% }) %>
|
||||||
</select>
|
</select>
|
||||||
</label>
|
</label>
|
||||||
<label class="fullSpan" id="platformDownloadField"<%= (pack.platform.type === 'fabric' || pack.platform.type === 'vanilla') ? ' hidden' : '' %>>
|
<label class="fullSpan" id="platformDownloadField"<%= pack.platform.type === 'vanilla' ? ' hidden' : '' %>>
|
||||||
<span><%= t('editor.platformDownloadUrl') %></span>
|
<span><%= t('editor.platformDownloadUrl') %></span>
|
||||||
<input name="platformDownloadUrl" value="<%= pack.platform.downloadUrl || '' %>" placeholder="/forge-installer.jar 또는 https://example.com/forge-installer.jar" />
|
<input name="platformDownloadUrl" value="<%= pack.platform.downloadUrl || '' %>" placeholder="/forge-installer.jar 또는 https://example.com/forge-installer.jar" />
|
||||||
<small class="muted"><%- t('editor.platformDownloadHint') %></small>
|
<small class="muted"><%- t('editor.platformDownloadHint') %></small>
|
||||||
@@ -131,9 +131,8 @@
|
|||||||
function syncPlatformVisibility() {
|
function syncPlatformVisibility() {
|
||||||
var type = platformSelect.value
|
var type = platformSelect.value
|
||||||
if (type === 'fabric') {
|
if (type === 'fabric') {
|
||||||
|
downloadField.removeAttribute('hidden')
|
||||||
loaderField.removeAttribute('hidden')
|
loaderField.removeAttribute('hidden')
|
||||||
downloadField.setAttribute('hidden', '')
|
|
||||||
downloadField.querySelector('input').value = ''
|
|
||||||
loadFabricLoaders()
|
loadFabricLoaders()
|
||||||
} else if (type === 'vanilla') {
|
} else if (type === 'vanilla') {
|
||||||
downloadField.setAttribute('hidden', '')
|
downloadField.setAttribute('hidden', '')
|
||||||
|
|||||||
Reference in New Issue
Block a user