feat: added icons for cards

This commit is contained in:
2026-06-22 22:33:11 +03:00
parent d3ef728007
commit bb57ab007c
16 changed files with 455 additions and 80 deletions
@@ -2,12 +2,19 @@ package ru.omni_devel.cards
import android.content.Context
import android.graphics.Bitmap
import android.graphics.BitmapFactory
import android.os.LocaleList
import androidx.compose.ui.graphics.ImageBitmap
import androidx.compose.ui.graphics.asAndroidBitmap
import com.google.android.gms.wearable.Wearable
import com.google.zxing.BarcodeFormat
import com.google.zxing.EncodeHintType
import com.google.zxing.MultiFormatWriter
import com.journeyapps.barcodescanner.BarcodeEncoder
import org.json.JSONObject
import java.io.ByteArrayOutputStream
import android.util.Base64
import androidx.compose.ui.graphics.asImageBitmap
fun generateCode(value: String, format: BarcodeFormat): Bitmap {
val writer = MultiFormatWriter()
@@ -81,6 +88,36 @@ fun getLanguage(context: Context): String {
return languageCode
}
fun selectTemplateNameViaLanguage(names: LinkedHashMap<String, String>, language: String): String {
fun selectItemNameViaLanguage(names: LinkedHashMap<String, String>, language: String): String {
return names[language] ?: names.values.firstOrNull() ?: "???"
}
fun jsonObjectToMap(obj: JSONObject): LinkedHashMap<String, String> {
val map = LinkedHashMap<String, String>()
val keys = obj.keys()
while (keys.hasNext()) {
val key = keys.next()
map[key] = obj.getString(key)
}
return map
}
fun imageBitmapToBase64(imageBitmap: ImageBitmap): String {
val bitmap = imageBitmap.asAndroidBitmap()
val outputStream = ByteArrayOutputStream()
bitmap.compress(Bitmap.CompressFormat.PNG, 100, outputStream)
val byteArray = outputStream.toByteArray()
return Base64.encodeToString(byteArray, Base64.DEFAULT)
}
fun base64ToImageBitmap(base64String: String): ImageBitmap {
val decodedBytes = Base64.decode(base64String, Base64.DEFAULT)
val bitmap = BitmapFactory.decodeByteArray(decodedBytes, 0, decodedBytes.size)
return bitmap.asImageBitmap()
}