Offline vCard 3.0/4.0 contact text parser and writer
moon check --target all
moon build --target wasm
moon test --target wasm
moon run --target wasm examples/demomoon add haol-05/moon-vcardlet card = "BEGIN:VCARD\nVERSION:4.0\nFN:Alice Smith\nN:Smith;Alice;;;\nTEL;TYPE=cell;PREF=1:+8613800000000\nEND:VCARD"
let result = parse(card)
for contact in result.contacts {
println(contact.full_name)
for phone in contact.phones {
println(phone.value)
for param in phone.params {
println(param.name + "=" + param.values.join(","))
}
}
let normalized = format(contact)
}| Type | Fields | Meaning |
|---|---|---|
| Field | value, params | one property value together with the parameters on its line |
| Param | name, values | one parameter; values is empty for a bare parameter such as ;PREF, and holds one entry per comma-separated value otherwise |
let ordered = sort_by_preference(result.contacts[0].phones)
println(ordered[0].value)Install
Download zipOffline vCard 3.0/4.0 contact text parser and writer