1.0.1 • Published 3 years ago

nv-browser-simple-ua v1.0.1

Weekly downloads
-
License
ISC
Repository
-
Last release
3 years ago

nv-browser-simple-ua

  • nv-browser-simple-ua
  • simple user-agent

install

  • npm install nv-browser-simple-ua

usage

   const {
       parse,
       unparse,
       Firefox,
       Edge,
       Chrome,
       Safari,
       UA
   } = require("nv-browser-simple-ua");

example

Firefox

    > var firefox = new Firefox()
    Firefox {
      Mozilla: '5.0',
      platform: [ 'Windows NT 10.0', 'Win64', 'x64' ],
      rv: '76.0',
      Gecko: '20100101',
      Firefox: '76.0'
    }
    > firefox.json()
    {
      product: { product: 'Mozilla', version: '5.0' },
      system: { platform: [ 'Windows NT 10.0', 'Win64', 'x64' ], rv: '76.0' },
      extension: {
        Gecko: { value: '20100101', detail: [] },
        Firefox: { value: '76.0', detail: [] }
      }
    }
    > firefox.stringify()
    'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:76.0) Gecko/20100101 Firefox/76.0'
    >
    >
    > var ffs="Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:76.0) Gecko/20100101 Firefox/76.0"
    >
    > console.dir(parse(ffs),{depth:null})
    {
      product: { product: 'Mozilla', version: '5.0' },
      system: { platform: [ 'Windows NT 10.0', 'Win64', 'x64' ], rv: '76.0' },
      extension: {
        Gecko: { value: '20100101', detail: [] },
        Firefox: { value: '76.0', detail: [] }
      }
    }

Edge

    > var es=`
    ...     Mozilla/5.0 (Windows NT 10.0; Win64; x64)
    ...     AppleWebKit/537.36 (KHTML, like Gecko)
    ...     Chrome/91.0.4472.124
    ...     Safari/537.36
    ...     Edg/91.0.864.64
    ... `
    undefined
    >
    > var edge = new Edge(es)
    undefined
    > edge
    Edge {
      Mozilla: '5.0',
      platform: [ 'Windows NT 10.0', 'Win64', 'x64' ],
      Edg: '91.0.864.64',
      AppleWebKit: '537.36',
      AppleWebKitDetail: [ 'KHTML', 'like Gecko' ],
      Chrome: '91.0.4472.124',
      Safari: '537.36'
    }
    > edge.json()
    {
      product: { product: 'Mozilla', version: '5.0' },
      system: { platform: [ 'Windows NT 10.0', 'Win64', 'x64' ] },
      extension: {
        AppleWebKit: { value: '537.36', detail: [Array] },
        Chrome: { value: '91.0.4472.124', detail: [] },
        Safari: { value: '537.36', detail: [] },
        Edg: { value: '91.0.864.64', detail: [] }
      }
    }
    > edge.stringify()
    'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36 Edg/91.0.864.64'
    >
    > console.dir(parse(es),{depth:null})
    {
      product: { product: 'Mozilla', version: '5.0' },
      system: { platform: [ 'Windows NT 10.0', 'Win64', 'x64' ] },
      extension: {
        AppleWebKit: { value: '537.36', detail: [ 'KHTML', 'like Gecko' ] },
        Chrome: { value: '91.0.4472.124', detail: [] },
        Safari: { value: '537.36', detail: [] },
        Edg: { value: '91.0.864.64', detail: [] }
      }
    }

Chrome

    > var chrome = new Chrome()
    undefined
    > chrome
    Chrome {
      Mozilla: '5.0',
      platform: [ 'Windows NT 10.0', 'Win64', 'x64' ],
      AppleWebKit: '537.36',
      AppleWebKitDetail: [ 'KHTML', 'like Gecko' ],
      Chrome: '91.0.4472.124',
      Safari: '537.36'
    }
    > chrome.json()
    {
      product: { product: 'Mozilla', version: '5.0' },
      system: { platform: [ 'Windows NT 10.0', 'Win64', 'x64' ] },
      extension: {
        AppleWebKit: { value: '537.36', detail: [Array] },
        Chrome: { value: '91.0.4472.124', detail: [] },
        Safari: { value: '537.36', detail: [] }
      }
    }
    > chrome.stringify()
    'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36'
    >
    > var chs=`
    ...     Mozilla/5.0 (Windows NT 10.0; Win64; x64)
    ...     AppleWebKit/537.36 (KHTML, like Gecko)
    ...     Chrome/91.0.4472.124
    ...     Safari/537.36
    ... `
    undefined
    >
    > console.dir(parse(chs),{depth:null})
    {
      product: { product: 'Mozilla', version: '5.0' },
      system: { platform: [ 'Windows NT 10.0', 'Win64', 'x64' ] },
      extension: {
        AppleWebKit: { value: '537.36', detail: [ 'KHTML', 'like Gecko' ] },
        Chrome: { value: '91.0.4472.124', detail: [] },
        Safari: { value: '537.36', detail: [] }
      }
    }

Safari

    > var safari = new Safari()
    undefined
    > safari
    Safari {
      Mozilla: '5.0',
      platform: [ 'iPhone', 'CPU iPhone OS 13_5_1 like Mac OS X' ],
      AppleWebKit: '537.36',
      AppleWebKitDetail: [ 'KHTML', 'like Gecko' ],
      Version: '13.1.1',
      Mobile: '15E148',
      Safari: '537.36'
    }
    > safari.json()
    {
      product: { product: 'Mozilla', version: '5.0' },
      system: { platform: [ 'iPhone', 'CPU iPhone OS 13_5_1 like Mac OS X' ] },
      extension: {
        Version: { value: '13.1.1', detail: [] },
        Mobile: { value: '15E148', detail: [] },
        Safari: { value: '537.36', detail: [] }
      }
    }
    > safari.stringify()
    'Mozilla/5.0 (iPhone; CPU iPhone OS 13_5_1 like Mac OS X) Version/13.1.1 Mobile/15E148 Safari/537.36'
    >
    > var sfs= `
    ...     Mozilla/5.0 (iPhone; CPU iPhone OS 13_5_1 like Mac OS X)
    ...     AppleWebKit/605.1.15 (KHTML, like Gecko)
    ...     Version/13.1.1
    ...     Mobile/15E148
    ...     Safari/604.1
    ... `
    undefined
    >
    > console.dir(parse(sfs),{depth:null})
    {
      product: { product: 'Mozilla', version: '5.0' },
      system: { platform: [ 'iPhone', 'CPU iPhone OS 13_5_1 like Mac OS X' ] },
      extension: {
        AppleWebKit: { value: '605.1.15', detail: [ 'KHTML', 'like Gecko' ] },
        Version: { value: '13.1.1', detail: [] },
        Mobile: { value: '15E148', detail: [] },
        Safari: { value: '604.1', detail: [] }
      }
    }

other

    > var bots = "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
    > console.dir(parse(bots),{depth:null})
    {
      product: { product: 'Mozilla', version: '5.0' },
      system: {
        platform: [
          'compatible',
          { Googlebot: '2.1' },
          '+http://www.google.com/bot.html'
        ]
      },
      extension: {}
    }

METHODS

API

LICENSE

  • ISC