mirror of
https://github.com/w-okada/voice-changer.git
synced 2025-02-02 16:23:58 +03:00
add lang filter
This commit is contained in:
parent
e9c844b882
commit
3bf1aacd05
2
client/demo/dist/index.js
vendored
2
client/demo/dist/index.js
vendored
File diff suppressed because one or more lines are too long
14
client/demo/package-lock.json
generated
14
client/demo/package-lock.json
generated
@ -9,7 +9,7 @@
|
|||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
"license": "ISC",
|
"license": "ISC",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@dannadori/voice-changer-client-js": "^1.0.128",
|
"@dannadori/voice-changer-client-js": "^1.0.129",
|
||||||
"@fortawesome/fontawesome-svg-core": "^6.4.0",
|
"@fortawesome/fontawesome-svg-core": "^6.4.0",
|
||||||
"@fortawesome/free-brands-svg-icons": "^6.4.0",
|
"@fortawesome/free-brands-svg-icons": "^6.4.0",
|
||||||
"@fortawesome/free-regular-svg-icons": "^6.4.0",
|
"@fortawesome/free-regular-svg-icons": "^6.4.0",
|
||||||
@ -3170,9 +3170,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@dannadori/voice-changer-client-js": {
|
"node_modules/@dannadori/voice-changer-client-js": {
|
||||||
"version": "1.0.128",
|
"version": "1.0.129",
|
||||||
"resolved": "https://registry.npmjs.org/@dannadori/voice-changer-client-js/-/voice-changer-client-js-1.0.128.tgz",
|
"resolved": "https://registry.npmjs.org/@dannadori/voice-changer-client-js/-/voice-changer-client-js-1.0.129.tgz",
|
||||||
"integrity": "sha512-UTzJla1uIyARbfFSMXxr0nAQx8KDDakSx1VlZ3wZQTeo150hT3Fi/pZEoYtzIPe2zLu+R7EWVl9B0ZIjgjlQgA==",
|
"integrity": "sha512-paWIzC/mepe3wC162U45ReIEl5rWmMu/+TtNVrabeAhkRWrZJfLsD6v95E+A5whalKA0YYk6m0B6YahtVAw6Aw==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@types/readable-stream": "^2.3.15",
|
"@types/readable-stream": "^2.3.15",
|
||||||
"amazon-chime-sdk-js": "^3.14.0",
|
"amazon-chime-sdk-js": "^3.14.0",
|
||||||
@ -13995,9 +13995,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@dannadori/voice-changer-client-js": {
|
"@dannadori/voice-changer-client-js": {
|
||||||
"version": "1.0.128",
|
"version": "1.0.129",
|
||||||
"resolved": "https://registry.npmjs.org/@dannadori/voice-changer-client-js/-/voice-changer-client-js-1.0.128.tgz",
|
"resolved": "https://registry.npmjs.org/@dannadori/voice-changer-client-js/-/voice-changer-client-js-1.0.129.tgz",
|
||||||
"integrity": "sha512-UTzJla1uIyARbfFSMXxr0nAQx8KDDakSx1VlZ3wZQTeo150hT3Fi/pZEoYtzIPe2zLu+R7EWVl9B0ZIjgjlQgA==",
|
"integrity": "sha512-paWIzC/mepe3wC162U45ReIEl5rWmMu/+TtNVrabeAhkRWrZJfLsD6v95E+A5whalKA0YYk6m0B6YahtVAw6Aw==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"@types/readable-stream": "^2.3.15",
|
"@types/readable-stream": "^2.3.15",
|
||||||
"amazon-chime-sdk-js": "^3.14.0",
|
"amazon-chime-sdk-js": "^3.14.0",
|
||||||
|
@ -52,7 +52,7 @@
|
|||||||
"webpack-dev-server": "^4.15.0"
|
"webpack-dev-server": "^4.15.0"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@dannadori/voice-changer-client-js": "^1.0.128",
|
"@dannadori/voice-changer-client-js": "^1.0.129",
|
||||||
"@fortawesome/fontawesome-svg-core": "^6.4.0",
|
"@fortawesome/fontawesome-svg-core": "^6.4.0",
|
||||||
"@fortawesome/free-brands-svg-icons": "^6.4.0",
|
"@fortawesome/free-brands-svg-icons": "^6.4.0",
|
||||||
"@fortawesome/free-regular-svg-icons": "^6.4.0",
|
"@fortawesome/free-regular-svg-icons": "^6.4.0",
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
import React, { useMemo } from "react"
|
import React, { useMemo, useState } from "react"
|
||||||
import { useAppState } from "../../../001_provider/001_AppStateProvider"
|
import { useAppState } from "../../../001_provider/001_AppStateProvider"
|
||||||
import { useGuiState } from "../001_GuiStateProvider"
|
import { useGuiState } from "../001_GuiStateProvider"
|
||||||
|
|
||||||
@ -6,6 +6,7 @@ export type SampleModelSelectRowProps = {}
|
|||||||
export const SampleModelSelectRow = (_props: SampleModelSelectRowProps) => {
|
export const SampleModelSelectRow = (_props: SampleModelSelectRowProps) => {
|
||||||
const appState = useAppState()
|
const appState = useAppState()
|
||||||
const guiState = useGuiState()
|
const guiState = useGuiState()
|
||||||
|
const [lang, setLang] = useState<string>("All")
|
||||||
const sampleModelSelectRow = useMemo(() => {
|
const sampleModelSelectRow = useMemo(() => {
|
||||||
const slot = guiState.modelSlotNum
|
const slot = guiState.modelSlotNum
|
||||||
const fileUploadSetting = appState.serverSetting.fileUploadSettings[slot]
|
const fileUploadSetting = appState.serverSetting.fileUploadSettings[slot]
|
||||||
@ -16,12 +17,26 @@ export const SampleModelSelectRow = (_props: SampleModelSelectRowProps) => {
|
|||||||
return <></>
|
return <></>
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const langs = appState.serverSetting.serverSetting.sampleModels.reduce((prev, cur) => {
|
||||||
|
if (prev.includes(cur.lang) == false) {
|
||||||
|
prev.push(cur.lang)
|
||||||
|
}
|
||||||
|
return prev
|
||||||
|
}, ["All"] as string[])
|
||||||
|
|
||||||
|
const langOptions = (
|
||||||
|
langs.map(x => {
|
||||||
|
return <option key={x} value={x}>{x}</option>
|
||||||
|
})
|
||||||
|
)
|
||||||
|
|
||||||
const options = (
|
const options = (
|
||||||
appState.serverSetting.serverSetting.sampleModels.map(x => {
|
appState.serverSetting.serverSetting.sampleModels.filter(x => { return lang == "All" ? true : x.lang == lang }).map(x => {
|
||||||
return <option key={x.id} value={x.id}>{x.name}</option>
|
return <option key={x.id} value={x.id}>{x.name}</option>
|
||||||
})
|
})
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
const selectedSample = appState.serverSetting.serverSetting.sampleModels.find(x => { return x.id == fileUploadSetting.sampleId })
|
const selectedSample = appState.serverSetting.serverSetting.sampleModels.find(x => { return x.id == fileUploadSetting.sampleId })
|
||||||
const creditText = selectedSample ? `credit:${selectedSample.credit}` : ""
|
const creditText = selectedSample ? `credit:${selectedSample.credit}` : ""
|
||||||
const termOfUseLink = selectedSample ? <a href={selectedSample.termsOfUseUrl} target="_blank" rel="noopener noreferrer" className="body-item-text-small">[terms of use]</a> : <></>
|
const termOfUseLink = selectedSample ? <a href={selectedSample.termsOfUseUrl} target="_blank" rel="noopener noreferrer" className="body-item-text-small">[terms of use]</a> : <></>
|
||||||
@ -36,6 +51,9 @@ export const SampleModelSelectRow = (_props: SampleModelSelectRowProps) => {
|
|||||||
<div className="body-row split-3-3-4 left-padding-1 guided">
|
<div className="body-row split-3-3-4 left-padding-1 guided">
|
||||||
<div className="body-item-title left-padding-2 ">Select Model</div>
|
<div className="body-item-title left-padding-2 ">Select Model</div>
|
||||||
<div>
|
<div>
|
||||||
|
<select value={lang} onChange={(e) => { setLang(e.target.value) }}>
|
||||||
|
{langOptions}
|
||||||
|
</select>
|
||||||
<select value={fileUploadSetting.sampleId || ""} onChange={(e) => { onModelSelected(e.target.value) }}>
|
<select value={fileUploadSetting.sampleId || ""} onChange={(e) => { onModelSelected(e.target.value) }}>
|
||||||
<option disabled value={""}> -- select model -- </option>
|
<option disabled value={""}> -- select model -- </option>
|
||||||
{options}
|
{options}
|
||||||
@ -47,7 +65,7 @@ export const SampleModelSelectRow = (_props: SampleModelSelectRowProps) => {
|
|||||||
</div>
|
</div>
|
||||||
)
|
)
|
||||||
|
|
||||||
}, [appState.serverSetting.fileUploadSettings, guiState.modelSlotNum])
|
}, [appState.serverSetting.fileUploadSettings, guiState.modelSlotNum, lang])
|
||||||
|
|
||||||
return sampleModelSelectRow
|
return sampleModelSelectRow
|
||||||
}
|
}
|
4
client/lib/package-lock.json
generated
4
client/lib/package-lock.json
generated
@ -1,12 +1,12 @@
|
|||||||
{
|
{
|
||||||
"name": "@dannadori/voice-changer-client-js",
|
"name": "@dannadori/voice-changer-client-js",
|
||||||
"version": "1.0.128",
|
"version": "1.0.129",
|
||||||
"lockfileVersion": 2,
|
"lockfileVersion": 2,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"packages": {
|
"packages": {
|
||||||
"": {
|
"": {
|
||||||
"name": "@dannadori/voice-changer-client-js",
|
"name": "@dannadori/voice-changer-client-js",
|
||||||
"version": "1.0.128",
|
"version": "1.0.129",
|
||||||
"license": "ISC",
|
"license": "ISC",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@types/readable-stream": "^2.3.15",
|
"@types/readable-stream": "^2.3.15",
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@dannadori/voice-changer-client-js",
|
"name": "@dannadori/voice-changer-client-js",
|
||||||
"version": "1.0.128",
|
"version": "1.0.129",
|
||||||
"description": "",
|
"description": "",
|
||||||
"main": "dist/index.js",
|
"main": "dist/index.js",
|
||||||
"directories": {
|
"directories": {
|
||||||
|
@ -234,6 +234,8 @@ export type RVCSampleModel = {
|
|||||||
termsOfUseUrl: string
|
termsOfUseUrl: string
|
||||||
credit: string
|
credit: string
|
||||||
description: string
|
description: string
|
||||||
|
lang: string
|
||||||
|
tag: string
|
||||||
}
|
}
|
||||||
|
|
||||||
export const DefaultServerSetting: ServerInfo = {
|
export const DefaultServerSetting: ServerInfo = {
|
||||||
|
Loading…
Reference in New Issue
Block a user