🔊 Update 1.0.0

This commit is contained in:
Nanaloveyuki
2026-06-27 10:45:36 +08:00
parent 4cc43def73
commit 0cbe25a551
55 changed files with 5734 additions and 2360 deletions
+33 -22
View File
@@ -1,21 +1,22 @@
///|
pub type RecordPatch = (@core.Record) -> @core.Record
///|
pub fn identity_patch() -> RecordPatch {
fn(rec) { rec }
}
///|
pub fn set_target(target : String) -> RecordPatch {
fn(rec) {
rec.with_target(target)
}
fn(rec) { rec.with_target(target) }
}
///|
pub fn prefix_message(prefix : String) -> RecordPatch {
fn(rec) {
rec.with_message("\{prefix}\{rec.message}")
}
fn(rec) { rec.with_message("\{prefix}\{rec.message}") }
}
///|
pub fn append_fields(extra_fields : Array[@core.Field]) -> RecordPatch {
fn(rec) {
if extra_fields.length() == 0 {
@@ -28,30 +29,40 @@ pub fn append_fields(extra_fields : Array[@core.Field]) -> RecordPatch {
}
}
pub fn redact_field(key : String, placeholder~ : String = "***") -> RecordPatch {
///|
pub fn redact_field(key : String, placeholder? : String = "***") -> RecordPatch {
fn(rec) {
rec.with_fields(rec.fields.map(fn(field) {
if field.key == key {
field.with_value(placeholder)
} else {
field
}
}))
rec.with_fields(
rec.fields.map(fn(field) {
if field.key == key {
field.with_value(placeholder)
} else {
field
}
}),
)
}
}
pub fn redact_fields(keys : Array[String], placeholder~ : String = "***") -> RecordPatch {
///|
pub fn redact_fields(
keys : Array[String],
placeholder? : String = "***",
) -> RecordPatch {
fn(rec) {
rec.with_fields(rec.fields.map(fn(field) {
if keys.contains(field.key) {
field.with_value(placeholder)
} else {
field
}
}))
rec.with_fields(
rec.fields.map(fn(field) {
if keys.contains(field.key) {
field.with_value(placeholder)
} else {
field
}
}),
)
}
}
///|
pub fn compose_patches(patches : Array[RecordPatch]) -> RecordPatch {
fn(rec) {
let mut current = rec