Skip to main content
Version: 1.0.1

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ığı

  1. Format Dizgesini İşleme:
    • Format dizgesi içindeki tüm anahtarlar ({key}) bulunur.
    • Anahtarlar, nesnenin ilgili değerleriyle değiştirilir.
  2. 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.
  3. Eksik Değerler:
    • Eğer anahtar, nesne içinde bulunamazsa, varsayılan olarak boş bir dizge ("") ile değiştirilir.

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

ParametreTipiAçıklama
dataanyFormatlanacak nesne.
formatstringFormatlanmış dizgenin nasıl görüneceğini belirler.

Dönüş Değeri

  • Formatlanmış dizge. Eğer format veya data 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.
  • 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 gelen displayFormat'ı 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.