{"_id":"@dannyfranca/any-chat","_rev":"5-2470623992370830ece5eb21aeec9f07","time":{"0.1.0":"2019-08-24T17:44:29.582Z","created":"2019-08-24T17:45:52.878Z","0.1.1":"2019-08-24T17:45:53.408Z","modified":"2022-04-05T02:42:21.581Z","0.1.2":"2019-08-24T18:02:32.472Z"},"name":"@dannyfranca/any-chat","dist-tags":{"latest":"0.1.2"},"versions":{"0.1.1":{"name":"@dannyfranca/any-chat","version":"0.1.1","description":"Universal, extensible and improved JS API for Chats, like TawkTo, Jivochat, and others.","license":"MIT","author":{"name":"Danny França","email":"contato@dannyfranca.com"},"contributors":[{"name":"Danny França","email":"contato@dannyfranca.com"}],"main":"lib/index.js","types":"lib/index.d.ts","repository":{"type":"git","url":"git+https://github.com/dannyfranca/any-chat.git"},"publishConfig":{"access":"public"},"scripts":{"test":"start-test 1234 cy:run","cy:open":"cypress open","cy:run":"cypress run","dev":"cross-env NODE_ENV=test start-test 1234 cy:open","start":"cross-env NODE_ENV=development parcel serve --no-cache public/index.html","build":"cross-env NODE_ENV=production parcel build public/index.html","report:coverage":"nyc report --reporter=html","report:coverage:text":"nyc report --reporter=text","coverage":"codecov","type-check":"tsc --noEmit","lint":"eslint --ext .ts,.js --ignore-path .gitignore --fix src/**","doc":"typedoc","compile":"tsc","compile:watch":"tsc -w","compile:types":"tsc --emitDeclarationOnly","publish":"npm publish --access public"},"keywords":["chat","tawkto","jivochat","typescript","jsapi","wrapper"],"bugs":{"url":"https://github.com/dannyfranca/any-chat/issues"},"homepage":"https://github.com/dannyfranca/any-chat#readme","devDependencies":{"@babel/core":"^7.5.5","@babel/plugin-transform-runtime":"^7.5.5","@babel/preset-typescript":"^7.3.3","@cypress/code-coverage":"^1.9.0","@istanbuljs/nyc-config-typescript":"^0.1.3","@types/cypress":"^1.1.3","@types/lodash":"^4.14.137","@types/node":"^12.7.2","@typescript-eslint/eslint-plugin":"^2.0.0","@typescript-eslint/parser":"^2.0.0","babel-plugin-istanbul":"^5.2.0","codecov":"^3.5.0","cross-env":"^5.2.0","cypress":"^3.4.1","cypress-promise":"^1.0.2","eslint":"^6.2.2","eslint-config-prettier":"^6.1.0","eslint-plugin-chai-friendly":"^0.4.1","eslint-plugin-cypress":"^2.6.1","eslint-plugin-prettier":"^3.1.0","husky":"^3.0.4","istanbul-lib-coverage":"^2.0.5","lint-staged":"^9.2.3","nyc":"^14.1.1","parcel-bundler":"^1.12.3","prettier":"^1.18.2","source-map-support":"^0.5.13","start-server-and-test":"^1.10.0","ts-node":"^8.3.0","typedoc":"^0.15.0","typescript":"^3.5.3"},"dependencies":{"lodash":"^4.17.15","rxjs":"^6.5.2"},"gitHead":"a2a83adaa72a2f10d708737fb5e224cf97b72289","_id":"@dannyfranca/any-chat@0.1.1","_nodeVersion":"12.9.0","_npmVersion":"6.10.2","dist":{"integrity":"sha512-b7CJTMz15iQwLWxSjxUlt6etPJkuAZ/FYvP8p80CdeEBsOcbNT/1wTXaIaDVMv4VoerlHLucFT8g8bUkAq/T7w==","shasum":"bf67b36940e671692d15cc008a21524bd05d3ca6","tarball":"https://registry.npmjs.org/@dannyfranca/any-chat/-/any-chat-0.1.1.tgz","fileCount":67,"unpackedSize":74756,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdYXfRCRA9TVsSAnZWagAAX1UP/RYw10W780+v7PwaeJf5\nRZvGItc8YEVHDWnnYrRpI55qf8WREqWBBcDzjObGo+ncW/MoeCWc4qnL1xxo\noYURE8wV1OwlozEb7doRRfvGwAN9Tmm0bIgqlsmMpwz1PpfRGT+10FdnzVTG\nbqIlW4RzJaS0dz2kNz/8L+rAFDPonGV/Q/1fldDVB+4yhej684GiFGKBMzsW\nILjlR3AgBlDdKfdvOXEwx7LnG3z3yUSHQMR93uydeVXGyC+WO+Jg6yrIv94E\n6bxcVTP8LP1ri384q5RxWQ/c9iMVVnp3m2UIMTlFCu4qiJXfkBjFaeHERtcc\naL/FEBMxQHRYucN+mO787IsFKd2aX0Vv2n/vzDb4fnBGfaC6JX2MXeL0egQG\nRefBop9nRegCUX0j9JT0c+YrKZtD+Md/wo4DMSTOLk8hSAefDvnBwWypfdJD\ndktVjaKH11x5Y+bU6Z43QIGuFcXz827oMl0lx6yhs4CJ/pEOrNImX531lJBZ\nPr8nVqBw28Y3zwjGCX10ugu0JKnnYq5MI3diPcvinOKFwLfu94YlgRgkBwlr\nXIvniPFCNVhfQ5Mq9OYKD3FcuHSpYeSr4mKWFlMq9bnMktO/49secRXty1aH\nR6WHqR80YmhlvJ7Y2hZPLxy/wVolgc9TBjjDfFMIMWrsaTzc/fDvUplIR0p4\nMo9y\r\n=6oYx\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCHknjDG3JLYiVfIjUeSvgewxAi6vt2jOeq51iDxgYxgQIgGuOIAdGmqZDdI4xY9E54MjPP/7v656Ssxo3cOrIoQ9k="}]},"maintainers":[{"name":"dannyfranca","email":"contato@dannyfranca.com"}],"_npmUser":{"name":"dannyfranca","email":"contato@dannyfranca.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/any-chat_0.1.1_1566668753095_0.08371775219489175"},"_hasShrinkwrap":false},"0.1.2":{"name":"@dannyfranca/any-chat","version":"0.1.2","description":"Universal, extensible and improved JS API for Chats, like TawkTo, Jivochat, and others.","license":"MIT","author":{"name":"Danny França","email":"contato@dannyfranca.com"},"contributors":[{"name":"Danny França","email":"contato@dannyfranca.com"}],"main":"lib/index.js","types":"lib/index.d.ts","repository":{"type":"git","url":"git+https://github.com/dannyfranca/any-chat.git"},"publishConfig":{"access":"public"},"scripts":{"test":"start-test 1234 cy:run","cy:open":"cypress open","cy:run":"cypress run","dev":"cross-env NODE_ENV=test start-test 1234 cy:open","start":"cross-env NODE_ENV=development parcel serve --no-cache public/index.html","build":"cross-env NODE_ENV=production parcel build public/index.html","report:coverage":"nyc report --reporter=html","report:coverage:text":"nyc report --reporter=text","coverage":"codecov","type-check":"tsc --noEmit","lint":"eslint --ext .ts,.js --ignore-path .gitignore --fix src/**","doc":"typedoc","compile":"tsc","compile:watch":"tsc -w","compile:types":"tsc --emitDeclarationOnly","publish":"npm publish --access public"},"keywords":["chat","tawkto","jivochat","typescript","jsapi","wrapper"],"bugs":{"url":"https://github.com/dannyfranca/any-chat/issues"},"homepage":"https://github.com/dannyfranca/any-chat#readme","devDependencies":{"@babel/core":"^7.5.5","@babel/plugin-transform-runtime":"^7.5.5","@babel/preset-typescript":"^7.3.3","@cypress/code-coverage":"^1.9.0","@istanbuljs/nyc-config-typescript":"^0.1.3","@types/cypress":"^1.1.3","@types/lodash":"^4.14.137","@types/node":"^12.7.2","@typescript-eslint/eslint-plugin":"^2.0.0","@typescript-eslint/parser":"^2.0.0","babel-plugin-istanbul":"^5.2.0","codecov":"^3.5.0","cross-env":"^5.2.0","cypress":"^3.4.1","cypress-promise":"^1.0.2","eslint":"^6.2.2","eslint-config-prettier":"^6.1.0","eslint-plugin-chai-friendly":"^0.4.1","eslint-plugin-cypress":"^2.6.1","eslint-plugin-prettier":"^3.1.0","husky":"^3.0.4","istanbul-lib-coverage":"^2.0.5","lint-staged":"^9.2.3","nyc":"^14.1.1","parcel-bundler":"^1.12.3","prettier":"^1.18.2","source-map-support":"^0.5.13","start-server-and-test":"^1.10.0","ts-node":"^8.3.0","typedoc":"^0.15.0","typescript":"^3.5.3"},"dependencies":{"lodash":"^4.17.15","rxjs":"^6.5.2"},"gitHead":"4ba3c2d42aea57ef1896bf27261f9949fc0f1558","_id":"@dannyfranca/any-chat@0.1.2","_nodeVersion":"12.9.0","_npmVersion":"6.10.2","dist":{"integrity":"sha512-f3Umd4P1lEnRGWeY+6fWPRytfOTneLD/0Sy113Fw3a/UW8EnyqKvAilhIgRvucuIz7wTjmfrGaRowp6V7lLyCQ==","shasum":"1655fe6427b510f7a3d83ec0a70de3e92d0cc9e7","tarball":"https://registry.npmjs.org/@dannyfranca/any-chat/-/any-chat-0.1.2.tgz","fileCount":67,"unpackedSize":74731,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdYXu4CRA9TVsSAnZWagAA9bUP/3MmAPkA9HvNkQSoY08P\nh1wEHRIWeOsg4kyVi9Wb4kkAkqozR/21iYf1AfxZMYpH49PeKlzMzRN0kbtP\nNlEf0CIAotON94A8LXiDXoY9wS0od5MS/0R5tu+cbmh73PAK3kNaRXmSKj4Z\nrERt3x3DN+oCbIup0fBFGQUHRPgH9cpKXEa4ChWws0t6HU8hczYmcIoj+SjQ\ng/9Y8FhVjHxjcUC6mMpj/59PmYXyqVlTxYmsKksHA3uX207fk7l2Wmacnqpo\nMisM8SfRhORALaN14DydTnzvfbYx6/zp8I10JqExel3xXWwPFPjUk1c147JH\nJwAKa0M5Vz7Gk4yLyz/qHYRBSWf7UHgHpT6xb26C2w2biCZKdBkpX2QeH6RI\n472vf/TdoJ/s8rO7bAm3CvdQazbSxefvQposhPGk/MqiZ+UOVxqFfHyyOtA+\n72LiiwH4N75+R//9FP0DidAWH7b73tX37qvV8ya8U3Ubw+3Uu2xrOHgPHpA7\nBBj9zHeyNqSzksm3qgAR18z+6WkJi0tG5FMbpJH6PdCkBxMmCV8MYLK0Ovo/\n2WB/Fp1MiPJoi9cCNgNp5/FaOQAZc0Zl3QfcuMcaCTA7PPoNleJMY3Uz+tRt\nC3sw/9i3DhHQzBHBhHSQ0F+w/AXOFmXrnZR2SJkhrdhundM4MGZzTtBq/MT2\n0a/G\r\n=czsM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD+tc99r3C2oG6EY9gj+n1UMdOajV9JgNtqbc7p68sXSwIhAOADx+46PnSHqBNLt6Zaxdtkd0D5/5ZnkGEXB+tEweMT"}]},"maintainers":[{"name":"dannyfranca","email":"contato@dannyfranca.com"}],"_npmUser":{"name":"dannyfranca","email":"contato@dannyfranca.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/any-chat_0.1.2_1566669752325_0.9870193567575103"},"_hasShrinkwrap":false}},"maintainers":[{"name":"dannyfranca","email":"contato@dannyfranca.com"}],"description":"Universal, extensible and improved JS API for Chats, like TawkTo, Jivochat, and others.","homepage":"https://github.com/dannyfranca/any-chat#readme","keywords":["chat","tawkto","jivochat","typescript","jsapi","wrapper"],"repository":{"type":"git","url":"git+https://github.com/dannyfranca/any-chat.git"},"contributors":[{"name":"Danny França","email":"contato@dannyfranca.com"}],"author":{"name":"Danny França","email":"contato@dannyfranca.com"},"bugs":{"url":"https://github.com/dannyfranca/any-chat/issues"},"license":"MIT","readme":"<h1 align=\"center\">\n    dannyfranca/any-chat\n</h1>\n<p align=\"center\">\n    Universal, extensible and improved JS API for Chats, like TawkTo, Jivochat, and others.\n</p>\n\n<p align=\"center\">\n\n<a href=\"https://npmjs.com/package/@dannyfranca/any-chat\" target=\"_blank\">\n    <img src=\"https://img.shields.io/npm/dt/@dannyfranca/any-chat.svg?style=flat-square&logo=npm\" />\n</a>\n\n<a href=\"https://npmjs.com/package/@dannyfranca/any-chat\" target=\"_blank\">\n    <img src=\"https://img.shields.io/npm/v/@dannyfranca/any-chat/latest.svg?style=flat-square&logo=npm\" />\n</a>\n\n<a href=\"https://travis-ci.com/dannyfranca/any-chat\" target=\"_blank\">\n    <img src=\"https://img.shields.io/travis/dannyfranca/any-chat?style=flat-square&logo=travis\" />\n</a>\n\n<a href=\"https://codecov.io/gh/dannyfranca/any-chat\" target=\"_blank\">\n    <img src=\"https://img.shields.io/codecov/c/github/dannyfranca/any-chat?style=flat-square&logo=codecov\" />\n</a>\n\n<a href=\"https://david-dm.org/dannyfranca/any-chat\" target=\"_blank\">\n    <img src=\"https://david-dm.org/dannyfranca/any-chat/status.svg?style=flat-square\" />\n</a>\n\n</p>\n\n## Getting Started\n\n* Install dependency\n\n```bash\nyarn add any-chat\n```\n\n* Choose a built-in driver\n\n```js\nimport TawkTo from 'any-chat/lib/chats/tawkto'\nconst tawkId = '5a16c7d3198bd56b8c03ce7e/1dijcq4nr'\nconst Chat = new TawkTo(tawkId)\n\nchatLoaded()\n\nasync function chatLoaded() {\n    await Chat.toLoad()\n    console.log(Chat.loaded)\n}\n```\n\n* Or extend ChatBase and build your own driver\n\n```typescript\nimport ChatBase from \"any-chat\" // Base to build you Driver\nimport MethodMap from \"any-chat/src/types/MethodMap\" // Interface contract to guide \nimport EventMap from \"any-chat/src/types/EventMap\" // Interface contract to you callback mapping\nimport { jsApiMethod } from \"any-chat/src/core/decorators\" // decorator to use in method mapping\n\nclass ChatDriver extends ChatBase<any> implements MethodMap {\n\n    // constructor must execute init from abstract class\n    constructor() {\n        super()\n        super.init()\n    }\n\n    // map callbacks\n    _eventMap: EventMap = {\n        load: '...',\n        // ...\n    }\n\n    // write your loader\n    _loader(): any {\n          // ...\n    }\n\n    // Map methods\n    @jsApiMethod()\n    public async open(): Promise<void> {\n        // ...\n    }\n\n    // see examples in any-chat/chats\n}\n\nexport default ChatDriver\n```\n\n## Building Drivers\n\nTo better understand how this lib Works, look the examples in examples inside lib/chats folder.\n\nEvery methods are documented in abstract ChatBase and EventHandler. You can read the documentation generated with TypeDoc in [Docs](https://github.com/dannyfranca/any-chat/tree/master/docs)\n\n## Warnings\n\nThis lib is being tested, better documentation arrives as the project evolves.\n\nFeel free to open issues, help with pull requests or bounce ideas off each other.\n\n## License\n\n[MIT License](./LICENSE)\n\nCopyright (c) Danny França <contato@dannyfranca.com>\n","readmeFilename":"README.md"}