Generic Format String
Generic Format String, bir nesnenin verilerini belirtilen bir format dizgesi kullanarak dinamik bir şekilde biçimlendiren bir yardımcı fonksiyondur. Bu fonksiyon, Ops Table bileşeninde tablo hücrelerini kullanıcı dostu bir şekilde görüntülemek için kullanılır.
Ne İşe Yarar?
Generic Format String:
- Bir nesne içindeki verileri dinamik bir dizgeye dönüştürür.
- Kullanıcı tarafından belirtilen özel formatları destekler.
- Eksik veriler için varsayılan değerler sunar.
İş Mantığı
- Format Dizgesini İşleme:
- Format dizgesi içindeki tüm anahtarlar (
{key}
) bulunur. - Anahtarlar, nesnenin ilgili değerleriyle değiştirilir.
- Format dizgesi içindeki tüm anahtarlar (
- Küçük Harf Duyarlılığı:
- Anahtarlar küçük harfe dönüştürülerek eşleştirme yapılır.
- Bu işlem, büyük/küçük harf duyarlılığını ortadan kaldırır.
- Eksik Değerler:
- Eğer anahtar, nesne içinde bulunamazsa, varsayılan olarak boş bir dizge (
""
) ile değiştirilir.
- Eğer anahtar, nesne içinde bulunamazsa, varsayılan olarak boş bir dizge (
Fonksiyon Tanımı
export const genericFormatString = (data: any, format: string) => {
let value = format.toLowerCase();
if (format) {
Object.keys(data).forEach((key) => {
const regex = new RegExp(`\\{${key.toLowerCase()}\\}`, "g");
value = value.replace(regex, data[key]);
});
return value;
}
return "";
};
Parametreler
Parametre | Tipi | Açıklama |
---|---|---|
data | any | Formatlanacak nesne. |
format | string | Formatlanmış dizgenin nasıl görüneceğini belirler. |
Dönüş Değeri
- Formatlanmış dizge. Eğer
format
veyadata
geçersizse boş bir dizge döner.
Kullanım Örneği
Girdi Verisi
const data = {
name: "John",
age: 30,
city: "New York",
};
const format = "{name} is {age} years old and lives in {city}.";
Çağrı
const result = genericFormatString(data, format);
console.log(result);
Çıktı
"John is 30 years old and lives in New York."
İlgili Fonksiyonlar
- Format Object: Karmaşık nesneleri belirli bir format dizgesiyle dönüştürmek için kullanılır.
- getAggregationTypeString: Toplama türlerini dizgeye dönüştürmek için kullanılır.
Kullanım Alanları
Generic Format String, Ops Table ekosisteminde aşağıdaki bileşen ve fonksiyonlarda kullanılır:
-
Custom Table Cells (
CustomTableCells.tsx
):- Hücre içeriklerini dinamik olarak formatlamak için kullanılır. Özellikle, hücredeki verilerin kullanıcı dostu bir şekilde gösterilmesi gerektiğinde
genericFormatString
çağrılır. - Örnek Kullanım:
cell.column.columnDef.displayFormat
ile sağlanan formatı hücrede uygular.
- Hücre içeriklerini dinamik olarak formatlamak için kullanılır. Özellikle, hücredeki verilerin kullanıcı dostu bir şekilde gösterilmesi gerektiğinde
-
Export Popover (
ExportPopover.tsx
):- Tablo verilerini CSV ve PDF formatına dönüştürmeden önce metinlerin doğru şekilde formatlanması için kullanılır.
- Örnek Kullanım: Dışa aktarılan verilerde kullanıcı tanımlı formatları uygular.
-
Ops Table Service (
TableService.ts
):- Backend'den alınan veriler üzerinde hücre bazlı kullanıcı formatlarını uygulamak için kullanılır.
- Örnek Kullanım:
generateColumns
fonksiyonunda, sütun meta bilgilerinden gelendisplayFormat
'ı işler.
Burada Yapılan Ana İşlemler
Generic Format String fonksiyonu, aşağıdaki işlemleri gerçekleştirir ve bu noktalarda özelleştirilebilir:
- Dinamik Veri Dönüşümü: Nesne anahtarlarını format dizgesiyle eşleştirerek dinamik dizge oluşturur.
- Hata Toleransı: Eksik veya yanlış anahtarlar için boş dizge döner.
- Küçük Harf Eşleştirme: Anahtarları küçük harfe çevirerek tutarlılığı artırır.
Generic Format String fonksiyonu, aşağıdaki işlemleri gerçekleştirir ve bu noktalarda özelleştirilebilir:
- Dinamik Veri Dönüşümü: Nesne anahtarlarını format dizgesiyle eşleştirerek dinamik dizge oluşturur.
- Hata Toleransı: Eksik veya yanlış anahtarlar için boş dizge döner.
- Küçük Harf Eşleştirme: Anahtarları küçük harfe çevirerek tutarlılığı artırır.