Map Type to Enum
mapTypeToEnum
yardımcı fonksiyonu, ham veri türlerini Ops Table bileşenindeki önceden tanımlanmış tür gruplarına (TypeGroupEnum
) eşler. Bu, tablo sütunlarının doğru şekilde render edilmesi ve filtreleme işlevlerinin uygun şekilde yapılandırılması için gereklidir.
Ne İşe Yarar?
Map Type to Enum:
- Veri türlerini mantıksal gruplara eşler.
- Render edilen bileşenlerin tür gruplarına göre özelleştirilmesini sağlar.
- Filtreleme ve sıralama gibi işlemleri doğru türde gerçekleştirmek için kullanılır.
İş Mantığı
- Ham Tür Eşleme:
- Ham türler (örneğin,
String
,Int32
,Boolean
)TypeGroupEnum
içindeki karşılıklarına eşlenir.
- Ham türler (örneğin,
- Enum Kontrolü:
- Eğer tür bir "Enum" içeriyorsa, bu
TypeGroupEnum.Select
olarak sınıflandırılır.
- Eğer tür bir "Enum" içeriyorsa, bu
- Varsayılan Tür:
- Tanımlanamayan türler varsayılan olarak
TypeGroupEnum.Default
olarak atanır.
- Tanımlanamayan türler varsayılan olarak
Fonksiyon Tanımı
import { TypeGroupEnum } from "@/enums/TypeGroupEnum";
export function mapTypeToEnum(type: string): TypeGroupEnum {
const typeParts = type.split(".");
const firstPart = typeParts?.[0];
const lastPart = typeParts?.[typeParts.length - 1];
if (firstPart === "Enum") {
return TypeGroupEnum.Select;
}
switch (lastPart) {
case "String":
case "Char":
return TypeGroupEnum.Text;
case "Int32":
case "UInt32":
case "Byte":
case "SByte":
case "Int16":
case "UInt16":
case "Int64":
case "UInt64":
case "Single":
case "Double":
case "Decimal":
return TypeGroupEnum.Number;
case "Boolean":
return TypeGroupEnum.Boolean;
case "DateTime":
case "DateTimeOffset":
return TypeGroupEnum.Date;
default:
return TypeGroupEnum.Default;
}
}
Parametreler
Parametre | Tipi | Açıklama |
---|---|---|
type | string | Ham veri türü. |
Dönüş Değeri
TypeGroupEnum
: Verilen türün eşlenmiş tür grubu.
Kullanım Örneği
Girdi Verisi
const type = "System.Int32";
Çağrı
const result = mapTypeToEnum(type);
console.log(result);
Çıktı
TypeGroupEnum.Number
Kullanım Alanları
Map Type to Enum, Ops Table ekosisteminde aşağıdaki alanlarda ve fonksiyonlarda kullanılır:
-
Ops Table Service (
TableService.ts
):- Kullanım Yeri:
generateColumns
fonksiyonunda sütun meta verilerindeki ham türlerin gruplara dönüştürülmesi için çağrılır. - Amaç: Sütun türlerini doğru bileşenlerle eşleştirmek ve filtreleme ayarlarını optimize etmek.
- Kullanım Yeri:
-
Filters Popover (
FiltersPopover.tsx
):- Kullanım Yeri: Filtreleme sırasında sütun türüne uygun filtre seçeneklerinin belirlenmesi.
- Amaç: Kullanıcının veri türüne uygun filtreler seçmesini sağlamak.
Burada Yapılan Ana İşlemler
Map Type to Enum fonksiyonu, aşağıdaki işlemleri gerçekleştirir ve bu noktalarda özelleştirilebilir:
- Ham Türleri Gruplama: Ham türlerin mantıksal gruplara dönüştürülmesi.
- Enum Tanımlama: Enum türlerini belirleyip
TypeGroupEnum.Select
ile eşleme. - Varsayılan Yönetim: Bilinmeyen türler için
TypeGroupEnum.Default
döndürme.