Neverending Perpetual Motion

    vcf
    DefinitelyTyped icon, indicating that this package has TypeScript declarations provided by the separate @types/vcf package

    2.1.1 • Public • Published

    VCF / vCard

    npm npm license npm downloads build status

    Install via npm

    $ npm install --save vcf

    Index

    Usage

    var vCard = require( 'vcf' )

    Parsing a Single vCard

    var card = new vCard().parse( string )
    vCard {
      version: '4.0',
      data: {
        version: [String: '4.0'],
        n: [String: 'Gump;Forrest;;;'],
        fn: [String: 'Forrest Gump'],
        org: [String: 'Bubba Gump Shrimp Co.'],
        title: [String: 'Shrimp Man'],
        photo: { [String: 'http://www.example.com/dir_photos/my_photo.gif'] mediatype: 'image/gif' },
        tel: [
          { [String: 'tel:+11115551212'] type: [ 'work', 'voice' ], value: 'uri' },
          { [String: 'tel:+14045551212'] type: [ 'home', 'voice' ], value: 'uri' }
        ],
        adr: [
          { [String: ';;100 Waters Edge;Baytown;LA;30314;United States of America']
            type: 'work',
            label: '"100 Waters Edge\\nBaytown, LA 30314\\nUnited States of America"' },
          { [String: ';;42 Plantation St.;Baytown;LA;30314;United States of America']
            type: 'home',
            label: '"42 Plantation St.\\nBaytown, LA 30314\\nUnited States ofAmerica"' }
        ],
        email: [String: 'forrestgump@example.com'],
        rev: [String: '20080424T195243Z']
      }
    }

    Parsing Multiple vCards

    In order to deal with a string that contains multiple vCards, you will need to use a different function, which returns an array of cards:

    var cards = vCard.parse( string )

    Formats

    Format: jCard

    var card = vCard.fromJSON( data )
    var jcard = card.toJSON()
    [ "vcard",
      [
        [ "version", {}, "text", "4.0" ],
        [ "n", {}, "text", [ "Gump", "Forrest", "", "", "" ] ],
        [ "fn", {}, "text", "Forrest Gump" ],
        [ "org", {}, "text", "Bubba Gump Shrimp Co." ],
        [ "title", {}, "text", "Shrimp Man" ],
        [
          "photo", { "mediatype": "image/gif" },
          "text", "http://www.example.com/dir_photos/my_photo.gif"
        ],
        [ "tel", { "type": [ "work", "voice" ], "value": "uri" }, "uri", "tel:+11115551212" ],
        [ "tel", { "type": [ "home", "voice" ], "value": "uri" }, "uri", "tel:+14045551212" ],
        [
          "adr", { "type": "work", "label":"\"100 Waters Edge\\nBaytown, LA 30314\\nUnited States of America\"" },
          "text", [ "", "", "100 Waters Edge", "Baytown", "LA", "30314", "United States of America" ]
        ],
        [
          "adr", { "type": "home", "label": "\"42 Plantation St.\\nBaytown, LA 30314\\nUnited States ofAmerica\"" },
          "text", [ "", "", "42 Plantation St.", "Baytown", "LA", "30314", "United States of America" ]
        ],
        [ "email", {}, "text", "forrestgump@example.com" ],
        [ "rev", {}, "text", "20080424T195243Z" ]
      ]
    ]

    Format: VCF

    var vcf = card.toString()
    var vcf = card.toString( '4.0' )
    BEGIN:VCARD
    VERSION:4.0
    N:Gump;Forrest;;;
    FN:Forrest Gump
    ORG:Bubba Gump Shrimp Co.
    TITLE:Shrimp Man
    PHOTO;MEDIATYPE=image/gif:http://www.example.com/dir_photos/my_photo.gif
    TEL;TYPE=work,voice;VALUE=uri:tel:+11115551212
    TEL;TYPE=home,voice;VALUE=uri:tel:+14045551212
    ADR;TYPE=work;LABEL="100 Waters Edge\nBaytown, LA 30314\nUnited States
      of America":;;100 Waters Edge;Baytown;LA;30314;United States of America
    ADR;TYPE=home;LABEL="42 Plantation St.\nBaytown, LA 30314\nUnited
      States ofAmerica":;;42 Plantation St.;Baytown;LA;30314;United States of
     America
    EMAIL:forrestgump@example.com
    REV:20080424T195243Z
    END:VCARD
    

    API Reference

    vCard

    Kind: global class


    new vCard()

    vCard


    vCard.version : String

    Version number

    Kind: instance property of vCard


    vCard.data : Object

    Card data

    Kind: instance property of vCard


    vCard.get(key) ⇒ Object | Array

    Get a vCard property

    Kind: instance method of vCard

    Param Type
    key String

    vCard.set(key, value, params)

    Set a vCard property

    Kind: instance method of vCard

    Param Type
    key String
    value String
    params Object

    vCard.add(key, value, params)

    Add a vCard property

    Kind: instance method of vCard

    Param Type
    key String
    value String
    params Object

    vCard.setProperty(prop)

    Set a vCard property from an already constructed vCard.Property

    Kind: instance method of vCard

    Param Type
    prop Property

    vCard.addProperty(prop)

    Add a vCard property from an already constructed vCard.Property

    Kind: instance method of vCard

    Param Type
    prop Property

    vCard.parse(value) ⇒ vCard

    Parse a vcf formatted vCard

    Kind: instance method of vCard

    Param Type
    value String

    vCard.toString(version, charset) ⇒ String

    Format the vCard as vcf with given version

    Kind: instance method of vCard

    Param Type
    version String
    charset String

    vCard.toJCard(version) ⇒ Array

    Format the card as jCard

    Kind: instance method of vCard
    Returns: Array - jCard

    Param Type Default
    version String '4.0'

    vCard.toJSON() ⇒ Array

    Format the card as jCard

    Kind: instance method of vCard
    Returns: Array - jCard


    vCard.Property

    Kind: static class of vCard


    new Property(field, value, params)

    vCard Property

    Param Type
    field String
    value String
    params Object

    property.is(type) ⇒ Boolean

    Check whether the property is of a given type

    Kind: instance method of Property

    Param Type
    type String

    property.isEmpty() ⇒ Boolean

    Check whether the property is empty

    Kind: instance method of Property


    property.clone() ⇒ Property

    Clone the property

    Kind: instance method of Property


    property.toString(version) ⇒ String

    Format the property as vcf with given version

    Kind: instance method of Property

    Param Type
    version String

    property.valueOf() ⇒ String

    Get the property's value

    Kind: instance method of Property


    property.toJSON() ⇒ Array

    Format the property as jCard data

    Kind: instance method of Property


    Property.prototype : Object

    Property prototype

    Kind: static property of Property


    Property.fromJSON(data) ⇒ Property

    Constructs a vCard.Property from jCard data

    Kind: static method of Property

    Param Type
    data Array

    vCard.mimeType : String

    vCard MIME type

    Kind: static property of vCard


    vCard.extension : String

    vCard file extension

    Kind: static property of vCard


    vCard.versions : Array

    vCard versions

    Kind: static property of vCard


    vCard.foldLine ⇒ String

    Folds a long line according to the RFC 5322.

    Kind: static property of vCard
    See: http://tools.ietf.org/html/rfc5322#section-2.1.1

    Param Type
    input String
    maxLength Number
    hardWrap Boolean

    vCard.parseLines : function

    Parse an array of vcf formatted lines

    Kind: static property of vCard
    Internal: used by vCard#parse()


    vCard.normalize(input) ⇒ String

    Normalizes input (cast to string, line folding, whitespace)

    Kind: static method of vCard

    Param Type
    input String

    vCard.isSupported(version) ⇒ Boolean

    Check whether a given version is supported

    Kind: static method of vCard

    Param Type
    version String

    vCard.parse(value) ⇒ Array.<vCard>

    Parses a string or buffer into a vCard object

    Kind: static method of vCard

    Param Type
    value String | Buffer

    vCard.fromJSON(jcard) ⇒ vCard

    Constructs a vCard from jCard data

    Kind: static method of vCard

    Param Type
    jcard Array

    vCard.format(card, version) ⇒ String

    Format a card object according to the given version

    Kind: static method of vCard

    Param Type
    card vCard
    version String

    Install

    npm i vcf

    DownloadsWeekly Downloads

    10,803

    Version

    2.1.1

    License

    MIT

    Unpacked Size

    29.9 kB

    Total Files

    6

    Last publish

    Collaborators

    • jhermsmeier