Rev 17 | Ir a la última revisión | Autoría | Comparar con el anterior | Ultima modificación | Ver Log |
//
// CompanyListItemView.swift
// twogetskills
//
// Created by Efrain Yanez Recanatini on 7/30/22.
//
import Foundation
import SwiftUI
import HTMLEntities
struct CompanyListItemView: View {
@EnvironmentObject var appNavigation : AppNavigation
private var companyModel : CompanyModel
private var companyName : String
private var appData = AppData.sharedInstance
init (companyUuid : String) {
let companyDao = CompanyDao()
self.companyModel = companyDao.selectByUuid(uuid: companyUuid)
if companyModel.name.count > Constants.MYCAPSULE_TITLE_MAX_LENGTH {
self.companyName = String(Array(companyModel.name)[0...Constants.MYCAPSULE_TITLE_MAX_LENGTH]) + "..."
} else {
self.companyName = companyModel.name
}
}
var body: some View {
VStack(spacing: 0 ) {
Group {
HStack {
Group {
if companyModel.image.trimmingCharacters(in: .whitespacesAndNewlines).isEmpty {
Image(uiImage: UIImage(named: "logo") ?? UIImage())
.resizable()
.resizable()
.aspectRatio(contentMode: .fit)
} else {
CustomAsyncImage(
url: URL(string: companyModel.image.trimmingCharacters(in: .whitespacesAndNewlines))!,
placeholder: { Text(Config.LANG_COMMON_LOADING).font(.footnote).foregroundColor(.black)},
image: {
Image(uiImage: $0).resizable()
}
)
}
} .frame(width: 48, height:48, alignment: .center)
.clipShape(Circle())
.overlay(Circle().stroke(Color.white, lineWidth: 1))
.padding(.top, 5)
.padding(.leading, 5)
VStack(spacing: 0)
{
HStack {
Text(self.companyName)
.font(Font.custom(Config.FONT_NAME_BOLD, size: 14))
.foregroundColor(Color("color_capsule_list_item_title_foreground"))
Spacer()
}
}
}
}
Divider()
} .background(Color("color_capsule_list_item_background"))
.padding(.leading, 5)
.padding(.trailing, 5)
}
}
struct CompanyListItemView_Previews: PreviewProvider {
static var previews: some View {
CompanyListItemView(companyUuid: "C123")
}
}