Nutmeg Pumpkin Macchiato

    vcard-generator

    0.0.7 • Public • Published

    vcard-generator

    Build Status Coverage Status npm version Dependency Status License

    VCard v4.0 rfc6350 compliant generator from JSON.

    Install

    npm install --save vcard-generator
    

    Usage

    import vcard from 'vcard-generator';
     
    const vcardContent = vcard.generate({
      name: {
        familyName: 'Doe',
        givenName: 'John',
        middleName: 'Philip',
        prefix: 'Dr.',
        suffix: 'Jr.',
      },
      formattedNames: [{
        text: 'Mr. Johny',
      }],
      nicknames: [{
        text: 'Phil',
      }],
      extraName: {
        maidenName: 'MaidenName',
        phoneticFirstName: 'PhoneticFirstName',
        phoneticMiddleName: 'PhoneticMiddleName',
        phoneticLastName: 'PhoneticLastName',
     
        pronunciationFirstName: 'PronunciationFirstName',
        pronunciationMiddleName: 'PronunciationMiddleName',
        pronunciationLastName: 'PronunciationLastName',
      },
     
      works: [{
        organization: 'My Company, Inc.',
        title: 'CEO',
        role: 'Executive',
      }],
      emails: [{
        type: 'work',
        text: 'john@mycompany.com',
      }, {
        type: 'home',
        text: 'johndoe@example.com',
      }],
      phones: [{
        type: 'work',
        text: '1 (234) 567-8901',
      }, {
        text: '(123) 123-1234',
      }, {
        uri: 'tel:1234567890',
      }],
      addresses: [{
        type: 'work',
        street: '123 Forbes Ave, Apt 1',
        locality: 'San Francisco',
        region: 'CA',
        code: '12345',
        country: 'USA',
      }, {
        type: 'home',
        street: '456 Home St',
        locality: 'Homeland',
        region: 'CA',
        code: '23456',
        country: 'USA',
      }],
      socialProfiles: [{
        type: 'facebook',
        uri: 'http://www.facebook.com/johndoe',
      }, {
        type: 'twitter',
        user: 'johnie',
      }],
      urls: [{
        type: 'internet',
        uri: 'http://www.mycompany.com',
      }, {
        type: 'personal',
        uri: 'http://www.johndoe.com',
      }],
     
      photos: [{
        type: 'work',
        uri: 'https://upload.wikimedia.org/wikipedia/en/8/80/Wikipedia-logo-v2.svg',
      }, {
        type: 'home',
        dataUri: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAABlBMVEUAAAD///+l2Z/dAAAAM0lEQVR4nGP4/5/h/1+G/58ZDrAz3D/McH8yw83NDDeNGe4Ug9C9zwz3gVLMDA/A6P9/AFGGFyjOXZtQAAAAAElFTkSuQmCC',
      }],
     
      birthday: {
        year: 2000,
        month: 1,
        day: 31,
      },
      gender: {
        sex: 'male',
      },
      notes: [{
        text: 'John Doe has a long and varied history, being documented on more police files that anyone else.\nReports of his death are alas numerous.',
      }, {
        text: 'Another note.',
      }],
    });
     
    // returns
    BEGIN:VCARD
    VERSION:4.0
    N:Doe;John;Philip;Dr.;Jr.
    FN:Mr. Johny
    NICKNAME:Phil
    X-MAIDENNAME:MaidenName
    X-PHONETIC-FIRST-NAME:PhoneticFirstName
    X-PHONETIC-MIDDLE-NAME:PhoneticMiddleName
    X-PHONETIC-LAST-NAME:PhoneticLastName
    X-PRONUNCIATION-FIRST-NAME:PronunciationFirstName
    X-PRONUNCIATION-MIDDLE-NAME:PronunciationMiddleName
    X-PRONUNCIATION-LAST-NAME:PronunciationLastName
    ORG:My Company\, Inc.
    TITLE:CEO
    ROLE:Executive
    EMAIL;PREF=1;TYPE=work:john@mycompany.com
    EMAIL;PREF=2;TYPE=home:johndoe@example.com
    TEL;PREF=1;TYPE=work:1 (234) 567-8901
    TEL;PREF=2:(123) 123-1234
    TEL;VALUE=uri;PREF=3:tel:1234567890
    ADR;PREF=1;TYPE=work:;;123 Forbes Ave\, Apt 1;San Francisco;CA;12345;USA
    ADR;PREF=2;TYPE=home:;;456 Home St;Homeland;CA;23456;USA
    X-SOCIALPROFILE;PREF=1;TYPE=facebook:http://www.facebook.com/johndoe
    X-SOCIALPROFILE;PREF=2;TYPE=twitter;x-user=johnie:x-apple:johnie
    URL;PREF=1;TYPE=internet:http://www.mycompany.com
    URL;PREF=2;TYPE=personal:http://www.johndoe.com
    PHOTO;PREF=1;TYPE=work:https://upload.wikimedia.org/wikipedia/en/8/80/Wikipedia-logo-v2.svg
    PHOTO;PREF=2;TYPE=home:data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAABlBMVEUAAAD///+l2Z/dAAAAM0lEQVR4nGP4/5/h/1+G/58ZDrAz3D/McH8yw83NDDeNGe4Ug9C9zwz3gVLMDA/A6P9/AFGGFyjOXZtQAAAAAElFTkSuQmCC
    BDAY:20000131
    GENDER:M
    NOTE;PREF=1:John Doe has a long and varied history\, being documented on more police files that anyone else.\nReports of his death are alas numerous.
    NOTE;PREF=2:Another note.
    END:VCARD

    Install

    npm i vcard-generator

    DownloadsWeekly Downloads

    43

    Version

    0.0.7

    License

    MIT

    Last publish

    Collaborators

    • joonhocho