* feat: adding create bot functionality Signed-off-by: James <james@jan.ai> * update the temperature progress bar Signed-off-by: James <james@jan.ai> * WIP baselayout * Mapping plugins with available preferences * Added loader component * WIP working another screen * Cleanup types and avoid import one by one * Prepare bottom bar * Add css variables colors to enable user select the accent * Enable change accent color * Seperate css variable * Fix conflict * Add blank state of my model empty * Restyle explore models page * Enable user config left sidebar * Restyle my models page * WIP styling chat page * Restyling chat message * Fix conflict * Adde form preferences setting plugins * Fixed form bot info * Sidebar bot chat * Showing rightbar for both setting when user created bot * Fix style bot info * Using overflow auto intead of scroll * Remove script built UI from root package * Fix missig import * Resolve error linter * fix e2e tests Signed-off-by: James <james@jan.ai> --------- Signed-off-by: James <james@jan.ai> Co-authored-by: James <james@jan.ai>
32 lines
821 B
TypeScript
32 lines
821 B
TypeScript
export const toGigabytes = (input: number) => {
|
|
if (input > 1024 ** 3) {
|
|
return (input / 1000 ** 3).toFixed(2) + 'GB'
|
|
} else if (input > 1024 ** 2) {
|
|
return (input / 1000 ** 2).toFixed(2) + 'MB'
|
|
} else if (input > 1024) {
|
|
return (input / 1000).toFixed(2) + 'KB'
|
|
} else {
|
|
return input + 'B'
|
|
}
|
|
}
|
|
|
|
export const formatDownloadPercentage = (input: number) => {
|
|
return (input * 100).toFixed(2) + '%'
|
|
}
|
|
|
|
export const formatDownloadSpeed = (input: number | undefined) => {
|
|
if (!input) return '0B/s'
|
|
return toGigabytes(input) + '/s'
|
|
}
|
|
|
|
export const formatTwoDigits = (input: number) => {
|
|
// convert input from string to number
|
|
input = Number(input)
|
|
|
|
return input.toFixed(2)
|
|
}
|
|
|
|
export const formatPluginsName = (input: string) => {
|
|
return input.replace('@janhq/', '').replaceAll('-', ' ')
|
|
}
|