nodi s7 briq
parent
0f8107d137
commit
024038a775
|
|
@ -1,8 +1,675 @@
|
||||||
{
|
{
|
||||||
"name": "red-briq-nodes",
|
"name": "red-briq-nodes",
|
||||||
"version": "0.2.4",
|
"version": "0.2.5",
|
||||||
"lockfileVersion": 1,
|
"lockfileVersion": 2,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
|
"packages": {
|
||||||
|
"": {
|
||||||
|
"name": "red-briq-nodes",
|
||||||
|
"version": "0.2.5",
|
||||||
|
"license": "Apache-2.0",
|
||||||
|
"dependencies": {
|
||||||
|
"denque": "^1.4.1",
|
||||||
|
"is-ip": "^3.1.0",
|
||||||
|
"nodes7": "^0.3.14",
|
||||||
|
"simple-xmpp": "^1.3.1",
|
||||||
|
"validate": "^5.1.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@xmpp/jid": {
|
||||||
|
"version": "0.0.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@xmpp/jid/-/jid-0.0.2.tgz",
|
||||||
|
"integrity": "sha1-DVKMqdWNr8gzZlVk/+YvMyoxZ/I="
|
||||||
|
},
|
||||||
|
"node_modules/@xmpp/streamparser": {
|
||||||
|
"version": "0.0.6",
|
||||||
|
"resolved": "https://registry.npmjs.org/@xmpp/streamparser/-/streamparser-0.0.6.tgz",
|
||||||
|
"integrity": "sha1-EYAz6p23yGoctGED8mnr/3n28eo=",
|
||||||
|
"dependencies": {
|
||||||
|
"@xmpp/xml": "^0.1.3",
|
||||||
|
"inherits": "^2.0.3",
|
||||||
|
"ltx": "^2.5.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@xmpp/xml": {
|
||||||
|
"version": "0.1.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/@xmpp/xml/-/xml-0.1.3.tgz",
|
||||||
|
"integrity": "sha1-HxQ5nlPkGWiFWGmPbGLnHjmoam4=",
|
||||||
|
"dependencies": {
|
||||||
|
"inherits": "^2.0.3",
|
||||||
|
"ltx": "^2.6.2"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/ajv": {
|
||||||
|
"version": "6.12.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.0.tgz",
|
||||||
|
"integrity": "sha512-D6gFiFA0RRLyUbvijN74DWAjXSFxWKaWP7mldxkVhyhAV3+SWA9HEJPHQ2c9soIeTFJqcSdFDGFgdqs1iUU2Hw==",
|
||||||
|
"dependencies": {
|
||||||
|
"fast-deep-equal": "^3.1.1",
|
||||||
|
"fast-json-stable-stringify": "^2.0.0",
|
||||||
|
"json-schema-traverse": "^0.4.1",
|
||||||
|
"uri-js": "^4.2.2"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/asn1": {
|
||||||
|
"version": "0.2.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz",
|
||||||
|
"integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==",
|
||||||
|
"dependencies": {
|
||||||
|
"safer-buffer": "~2.1.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/assert-plus": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
|
||||||
|
"integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=",
|
||||||
|
"engines": {
|
||||||
|
"node": ">=0.8"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/asynckit": {
|
||||||
|
"version": "0.4.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
|
||||||
|
"integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k="
|
||||||
|
},
|
||||||
|
"node_modules/aws-sign2": {
|
||||||
|
"version": "0.7.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz",
|
||||||
|
"integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=",
|
||||||
|
"engines": {
|
||||||
|
"node": "*"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/aws4": {
|
||||||
|
"version": "1.9.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/aws4/-/aws4-1.9.1.tgz",
|
||||||
|
"integrity": "sha512-wMHVg2EOHaMRxbzgFJ9gtjOOCrI80OHLG14rxi28XwOW8ux6IiEbRCGGGqCtdAIg4FQCbW20k9RsT4y3gJlFug=="
|
||||||
|
},
|
||||||
|
"node_modules/backoff": {
|
||||||
|
"version": "2.3.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/backoff/-/backoff-2.3.0.tgz",
|
||||||
|
"integrity": "sha1-7nx+OAk/kuRyhZ22NedlJFT8Ieo=",
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.6"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/bcrypt-pbkdf": {
|
||||||
|
"version": "1.0.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz",
|
||||||
|
"integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=",
|
||||||
|
"dependencies": {
|
||||||
|
"tweetnacl": "^0.14.3"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/browser-request": {
|
||||||
|
"version": "0.3.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/browser-request/-/browser-request-0.3.3.tgz",
|
||||||
|
"integrity": "sha1-ns5bWsqJopkyJC4Yv5M975h2zBc=",
|
||||||
|
"engines": [
|
||||||
|
"node"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"node_modules/caseless": {
|
||||||
|
"version": "0.12.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
|
||||||
|
"integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw="
|
||||||
|
},
|
||||||
|
"node_modules/combined-stream": {
|
||||||
|
"version": "1.0.8",
|
||||||
|
"resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
|
||||||
|
"integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
|
||||||
|
"dependencies": {
|
||||||
|
"delayed-stream": "~1.0.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.8"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/component-type": {
|
||||||
|
"version": "1.2.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/component-type/-/component-type-1.2.1.tgz",
|
||||||
|
"integrity": "sha1-ikeQFwAjjk/DIml3EjAibyS0Fak="
|
||||||
|
},
|
||||||
|
"node_modules/core-util-is": {
|
||||||
|
"version": "1.0.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
|
||||||
|
"integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac="
|
||||||
|
},
|
||||||
|
"node_modules/dashdash": {
|
||||||
|
"version": "1.14.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz",
|
||||||
|
"integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=",
|
||||||
|
"dependencies": {
|
||||||
|
"assert-plus": "^1.0.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=0.10"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/debug": {
|
||||||
|
"version": "2.6.9",
|
||||||
|
"resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
|
||||||
|
"integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
|
||||||
|
"dependencies": {
|
||||||
|
"ms": "2.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/delayed-stream": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
|
||||||
|
"integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=",
|
||||||
|
"engines": {
|
||||||
|
"node": ">=0.4.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/denque": {
|
||||||
|
"version": "1.4.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/denque/-/denque-1.4.1.tgz",
|
||||||
|
"integrity": "sha512-OfzPuSZKGcgr96rf1oODnfjqBFmr1DVoc/TrItj3Ohe0Ah1C5WX5Baquw/9U9KovnQ88EqmJbD66rKYUQYN1tQ==",
|
||||||
|
"engines": {
|
||||||
|
"node": ">=0.10"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/ecc-jsbn": {
|
||||||
|
"version": "0.1.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz",
|
||||||
|
"integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=",
|
||||||
|
"dependencies": {
|
||||||
|
"jsbn": "~0.1.0",
|
||||||
|
"safer-buffer": "^2.1.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/eivindfjeldstad-dot": {
|
||||||
|
"version": "0.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/eivindfjeldstad-dot/-/eivindfjeldstad-dot-0.0.1.tgz",
|
||||||
|
"integrity": "sha1-IvyXa/rzBuCDmjHbjoITSA+vuJM=",
|
||||||
|
"deprecated": "Use @eivifj/dot instead"
|
||||||
|
},
|
||||||
|
"node_modules/extend": {
|
||||||
|
"version": "3.0.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
|
||||||
|
"integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g=="
|
||||||
|
},
|
||||||
|
"node_modules/extsprintf": {
|
||||||
|
"version": "1.3.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz",
|
||||||
|
"integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=",
|
||||||
|
"engines": [
|
||||||
|
"node >=0.6.0"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"node_modules/fast-deep-equal": {
|
||||||
|
"version": "3.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz",
|
||||||
|
"integrity": "sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA=="
|
||||||
|
},
|
||||||
|
"node_modules/fast-json-stable-stringify": {
|
||||||
|
"version": "2.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
|
||||||
|
"integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw=="
|
||||||
|
},
|
||||||
|
"node_modules/forever-agent": {
|
||||||
|
"version": "0.6.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz",
|
||||||
|
"integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=",
|
||||||
|
"engines": {
|
||||||
|
"node": "*"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/form-data": {
|
||||||
|
"version": "2.3.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz",
|
||||||
|
"integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==",
|
||||||
|
"dependencies": {
|
||||||
|
"asynckit": "^0.4.0",
|
||||||
|
"combined-stream": "^1.0.6",
|
||||||
|
"mime-types": "^2.1.12"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.12"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/getpass": {
|
||||||
|
"version": "0.1.7",
|
||||||
|
"resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz",
|
||||||
|
"integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=",
|
||||||
|
"dependencies": {
|
||||||
|
"assert-plus": "^1.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/har-schema": {
|
||||||
|
"version": "2.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz",
|
||||||
|
"integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=",
|
||||||
|
"engines": {
|
||||||
|
"node": ">=4"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/har-validator": {
|
||||||
|
"version": "5.1.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz",
|
||||||
|
"integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==",
|
||||||
|
"deprecated": "this library is no longer supported",
|
||||||
|
"dependencies": {
|
||||||
|
"ajv": "^6.5.5",
|
||||||
|
"har-schema": "^2.0.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=6"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/hash-base": {
|
||||||
|
"version": "3.0.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz",
|
||||||
|
"integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=",
|
||||||
|
"dependencies": {
|
||||||
|
"inherits": "^2.0.1",
|
||||||
|
"safe-buffer": "^5.0.1"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=4"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/http-signature": {
|
||||||
|
"version": "1.2.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz",
|
||||||
|
"integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=",
|
||||||
|
"dependencies": {
|
||||||
|
"assert-plus": "^1.0.0",
|
||||||
|
"jsprim": "^1.2.2",
|
||||||
|
"sshpk": "^1.7.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=0.8",
|
||||||
|
"npm": ">=1.3.7"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/inherits": {
|
||||||
|
"version": "2.0.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
|
||||||
|
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
|
||||||
|
},
|
||||||
|
"node_modules/ip-regex": {
|
||||||
|
"version": "4.3.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-4.3.0.tgz",
|
||||||
|
"integrity": "sha512-B9ZWJxHHOHUhUjCPrMpLD4xEq35bUTClHM1S6CBU5ixQnkZmwipwgc96vAd7AAGM9TGHvJR+Uss+/Ak6UphK+Q==",
|
||||||
|
"engines": {
|
||||||
|
"node": ">=8"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/is-ip": {
|
||||||
|
"version": "3.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/is-ip/-/is-ip-3.1.0.tgz",
|
||||||
|
"integrity": "sha512-35vd5necO7IitFPjd/YBeqwWnyDWbuLH9ZXQdMfDA8TEo7pv5X8yfrvVO3xbJbLUlERCMvf6X0hTUamQxCYJ9Q==",
|
||||||
|
"dependencies": {
|
||||||
|
"ip-regex": "^4.0.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=8"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/is-typedarray": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
|
||||||
|
"integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo="
|
||||||
|
},
|
||||||
|
"node_modules/isstream": {
|
||||||
|
"version": "0.1.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz",
|
||||||
|
"integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo="
|
||||||
|
},
|
||||||
|
"node_modules/jsbn": {
|
||||||
|
"version": "0.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz",
|
||||||
|
"integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM="
|
||||||
|
},
|
||||||
|
"node_modules/json-schema": {
|
||||||
|
"version": "0.2.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz",
|
||||||
|
"integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM="
|
||||||
|
},
|
||||||
|
"node_modules/json-schema-traverse": {
|
||||||
|
"version": "0.4.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
|
||||||
|
"integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg=="
|
||||||
|
},
|
||||||
|
"node_modules/json-stringify-safe": {
|
||||||
|
"version": "5.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
|
||||||
|
"integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus="
|
||||||
|
},
|
||||||
|
"node_modules/jsprim": {
|
||||||
|
"version": "1.4.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz",
|
||||||
|
"integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=",
|
||||||
|
"engines": [
|
||||||
|
"node >=0.6.0"
|
||||||
|
],
|
||||||
|
"dependencies": {
|
||||||
|
"assert-plus": "1.0.0",
|
||||||
|
"extsprintf": "1.3.0",
|
||||||
|
"json-schema": "0.2.3",
|
||||||
|
"verror": "1.10.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/lodash.assign": {
|
||||||
|
"version": "4.2.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz",
|
||||||
|
"integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc="
|
||||||
|
},
|
||||||
|
"node_modules/ltx": {
|
||||||
|
"version": "2.9.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/ltx/-/ltx-2.9.2.tgz",
|
||||||
|
"integrity": "sha512-llB7HflFhlfsYYT1SAe80elCBO5C20ryLdwPB/A/BZk38hhVeZztDlWQ9uTyvKNPX4aK6sA+JfS1f/mfzp5cxA==",
|
||||||
|
"dependencies": {
|
||||||
|
"inherits": "^2.0.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/md5.js": {
|
||||||
|
"version": "1.3.5",
|
||||||
|
"resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz",
|
||||||
|
"integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==",
|
||||||
|
"dependencies": {
|
||||||
|
"hash-base": "^3.0.0",
|
||||||
|
"inherits": "^2.0.1",
|
||||||
|
"safe-buffer": "^5.1.2"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/mime-db": {
|
||||||
|
"version": "1.43.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.43.0.tgz",
|
||||||
|
"integrity": "sha512-+5dsGEEovYbT8UY9yD7eE4XTc4UwJ1jBYlgaQQF38ENsKR3wj/8q8RFZrF9WIZpB2V1ArTVFUva8sAul1NzRzQ==",
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.6"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/mime-types": {
|
||||||
|
"version": "2.1.26",
|
||||||
|
"resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.26.tgz",
|
||||||
|
"integrity": "sha512-01paPWYgLrkqAyrlDorC1uDwl2p3qZT7yl806vW7DvDoxwXi46jsjFbg+WdwotBIk6/MbEhO/dh5aZ5sNj/dWQ==",
|
||||||
|
"dependencies": {
|
||||||
|
"mime-db": "1.43.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.6"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/minimist": {
|
||||||
|
"version": "1.2.5",
|
||||||
|
"resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
|
||||||
|
"integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw=="
|
||||||
|
},
|
||||||
|
"node_modules/ms": {
|
||||||
|
"version": "2.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
|
||||||
|
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
|
||||||
|
},
|
||||||
|
"node_modules/node-xmpp-client": {
|
||||||
|
"version": "3.2.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/node-xmpp-client/-/node-xmpp-client-3.2.0.tgz",
|
||||||
|
"integrity": "sha1-r0Un3wzFq9JpDLohOcwezcgeoYk=",
|
||||||
|
"deprecated": "this package is deprecated please use https://www.npmjs.com/package/@xmpp/client",
|
||||||
|
"dependencies": {
|
||||||
|
"browser-request": "^0.3.3",
|
||||||
|
"debug": "^2.2.0",
|
||||||
|
"md5.js": "^1.3.3",
|
||||||
|
"minimist": "^1.2.0",
|
||||||
|
"node-xmpp-core": "^5.0.9",
|
||||||
|
"request": "^2.65.0",
|
||||||
|
"ws": "^1.1.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/node-xmpp-core": {
|
||||||
|
"version": "5.0.9",
|
||||||
|
"resolved": "https://registry.npmjs.org/node-xmpp-core/-/node-xmpp-core-5.0.9.tgz",
|
||||||
|
"integrity": "sha1-XCjCjtsfs/i+uixnYHd2E/SPNCo=",
|
||||||
|
"deprecated": "this package is deprecated please use https://github.com/xmppjs/xmpp.js",
|
||||||
|
"dependencies": {
|
||||||
|
"@xmpp/jid": "^0.0.2",
|
||||||
|
"@xmpp/streamparser": "^0.0.6",
|
||||||
|
"@xmpp/xml": "^0.1.3",
|
||||||
|
"debug": "^2.2.0",
|
||||||
|
"inherits": "^2.0.1",
|
||||||
|
"lodash.assign": "^4.0.0",
|
||||||
|
"node-xmpp-tls-connect": "^1.0.1",
|
||||||
|
"reconnect-core": "https://github.com/dodo/reconnect-core/tarball/merged"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/node-xmpp-tls-connect": {
|
||||||
|
"version": "1.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/node-xmpp-tls-connect/-/node-xmpp-tls-connect-1.0.1.tgz",
|
||||||
|
"integrity": "sha1-kazkOsJrE4hhsr5HjfnfGdYdxcM=",
|
||||||
|
"deprecated": "this package is deprecated please use https://github.com/xmppjs/xmpp.js"
|
||||||
|
},
|
||||||
|
"node_modules/nodes7": {
|
||||||
|
"version": "0.3.14",
|
||||||
|
"resolved": "https://registry.npmjs.org/nodes7/-/nodes7-0.3.14.tgz",
|
||||||
|
"integrity": "sha512-94SSssnZ4Vm1AcyFYnWTI9Se78NXIPVJ3avtn6K+nUqLDuQtH4Qrbo1fAV3LgzAgds5CnT8ff7eHZYRlYBcIxQ=="
|
||||||
|
},
|
||||||
|
"node_modules/oauth-sign": {
|
||||||
|
"version": "0.9.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz",
|
||||||
|
"integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==",
|
||||||
|
"engines": {
|
||||||
|
"node": "*"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/options": {
|
||||||
|
"version": "0.0.6",
|
||||||
|
"resolved": "https://registry.npmjs.org/options/-/options-0.0.6.tgz",
|
||||||
|
"integrity": "sha1-7CLTEoBrtT5zF3Pnza788cZDEo8=",
|
||||||
|
"engines": {
|
||||||
|
"node": ">=0.4.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/performance-now": {
|
||||||
|
"version": "2.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz",
|
||||||
|
"integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns="
|
||||||
|
},
|
||||||
|
"node_modules/psl": {
|
||||||
|
"version": "1.8.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz",
|
||||||
|
"integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ=="
|
||||||
|
},
|
||||||
|
"node_modules/punycode": {
|
||||||
|
"version": "2.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
|
||||||
|
"integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==",
|
||||||
|
"engines": {
|
||||||
|
"node": ">=6"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/qbox": {
|
||||||
|
"version": "0.1.7",
|
||||||
|
"resolved": "https://registry.npmjs.org/qbox/-/qbox-0.1.7.tgz",
|
||||||
|
"integrity": "sha1-6A8NxdCfhp2IghaMP2asjdKEDwI=",
|
||||||
|
"engines": {
|
||||||
|
"node": "*"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/qs": {
|
||||||
|
"version": "6.5.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz",
|
||||||
|
"integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==",
|
||||||
|
"engines": {
|
||||||
|
"node": ">=0.6"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/reconnect-core": {
|
||||||
|
"version": "0.0.1",
|
||||||
|
"resolved": "https://github.com/dodo/reconnect-core/tarball/merged",
|
||||||
|
"integrity": "sha512-wZK/v5ZaNaSUs2Wnwh2YSX/Jqv6bQHKNEwojdzV11tByKziR9ikOssf5tvUhx+8/oCBz6AakOFAjZuqPoiRHJQ==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"backoff": "~2.3.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/request": {
|
||||||
|
"version": "2.88.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz",
|
||||||
|
"integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==",
|
||||||
|
"deprecated": "request has been deprecated, see https://github.com/request/request/issues/3142",
|
||||||
|
"dependencies": {
|
||||||
|
"aws-sign2": "~0.7.0",
|
||||||
|
"aws4": "^1.8.0",
|
||||||
|
"caseless": "~0.12.0",
|
||||||
|
"combined-stream": "~1.0.6",
|
||||||
|
"extend": "~3.0.2",
|
||||||
|
"forever-agent": "~0.6.1",
|
||||||
|
"form-data": "~2.3.2",
|
||||||
|
"har-validator": "~5.1.3",
|
||||||
|
"http-signature": "~1.2.0",
|
||||||
|
"is-typedarray": "~1.0.0",
|
||||||
|
"isstream": "~0.1.2",
|
||||||
|
"json-stringify-safe": "~5.0.1",
|
||||||
|
"mime-types": "~2.1.19",
|
||||||
|
"oauth-sign": "~0.9.0",
|
||||||
|
"performance-now": "^2.1.0",
|
||||||
|
"qs": "~6.5.2",
|
||||||
|
"safe-buffer": "^5.1.2",
|
||||||
|
"tough-cookie": "~2.5.0",
|
||||||
|
"tunnel-agent": "^0.6.0",
|
||||||
|
"uuid": "^3.3.2"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 6"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/safe-buffer": {
|
||||||
|
"version": "5.2.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.0.tgz",
|
||||||
|
"integrity": "sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg=="
|
||||||
|
},
|
||||||
|
"node_modules/safer-buffer": {
|
||||||
|
"version": "2.1.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
|
||||||
|
"integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
|
||||||
|
},
|
||||||
|
"node_modules/simple-xmpp": {
|
||||||
|
"version": "1.3.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/simple-xmpp/-/simple-xmpp-1.3.1.tgz",
|
||||||
|
"integrity": "sha512-o0wGVlI8Q4o0qTz6Kylbo1QPOMVn+DA/vyHHZecqcQ+LK4ZWGe3wtRON9QjHAkSyxB36PoagmiUz4pHADau8Mw==",
|
||||||
|
"dependencies": {
|
||||||
|
"node-xmpp-client": "^3.0.0",
|
||||||
|
"qbox": "0.1.x"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/sshpk": {
|
||||||
|
"version": "1.16.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz",
|
||||||
|
"integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==",
|
||||||
|
"dependencies": {
|
||||||
|
"asn1": "~0.2.3",
|
||||||
|
"assert-plus": "^1.0.0",
|
||||||
|
"bcrypt-pbkdf": "^1.0.0",
|
||||||
|
"dashdash": "^1.12.0",
|
||||||
|
"ecc-jsbn": "~0.1.1",
|
||||||
|
"getpass": "^0.1.1",
|
||||||
|
"jsbn": "~0.1.0",
|
||||||
|
"safer-buffer": "^2.0.2",
|
||||||
|
"tweetnacl": "~0.14.0"
|
||||||
|
},
|
||||||
|
"bin": {
|
||||||
|
"sshpk-conv": "bin/sshpk-conv",
|
||||||
|
"sshpk-sign": "bin/sshpk-sign",
|
||||||
|
"sshpk-verify": "bin/sshpk-verify"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=0.10.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/tough-cookie": {
|
||||||
|
"version": "2.5.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz",
|
||||||
|
"integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==",
|
||||||
|
"dependencies": {
|
||||||
|
"psl": "^1.1.28",
|
||||||
|
"punycode": "^2.1.1"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=0.8"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/tunnel-agent": {
|
||||||
|
"version": "0.6.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
|
||||||
|
"integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=",
|
||||||
|
"dependencies": {
|
||||||
|
"safe-buffer": "^5.0.1"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": "*"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/tweetnacl": {
|
||||||
|
"version": "0.14.5",
|
||||||
|
"resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz",
|
||||||
|
"integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q="
|
||||||
|
},
|
||||||
|
"node_modules/typecast": {
|
||||||
|
"version": "0.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/typecast/-/typecast-0.0.1.tgz",
|
||||||
|
"integrity": "sha1-//t13La98d744pO2tuiT1sHtGd4="
|
||||||
|
},
|
||||||
|
"node_modules/ultron": {
|
||||||
|
"version": "1.0.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/ultron/-/ultron-1.0.2.tgz",
|
||||||
|
"integrity": "sha1-rOEWq1V80Zc4ak6I9GhTeMiy5Po="
|
||||||
|
},
|
||||||
|
"node_modules/uri-js": {
|
||||||
|
"version": "4.2.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz",
|
||||||
|
"integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==",
|
||||||
|
"dependencies": {
|
||||||
|
"punycode": "^2.1.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/uuid": {
|
||||||
|
"version": "3.4.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz",
|
||||||
|
"integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==",
|
||||||
|
"deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.",
|
||||||
|
"bin": {
|
||||||
|
"uuid": "bin/uuid"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/validate": {
|
||||||
|
"version": "5.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/validate/-/validate-5.1.0.tgz",
|
||||||
|
"integrity": "sha512-Y+vJv+xR3XsaQM8W1rQvwc6is/sgCUBv3lvNKc2DZ1HcVcEWAaHVSFB5uoxkQnw2riUq77Rg5nv1u8YuuSu/Zw==",
|
||||||
|
"dependencies": {
|
||||||
|
"component-type": "1.2.1",
|
||||||
|
"eivindfjeldstad-dot": "0.0.1",
|
||||||
|
"typecast": "0.0.1"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=7.6"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/verror": {
|
||||||
|
"version": "1.10.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz",
|
||||||
|
"integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=",
|
||||||
|
"engines": [
|
||||||
|
"node >=0.6.0"
|
||||||
|
],
|
||||||
|
"dependencies": {
|
||||||
|
"assert-plus": "^1.0.0",
|
||||||
|
"core-util-is": "1.0.2",
|
||||||
|
"extsprintf": "^1.2.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/ws": {
|
||||||
|
"version": "1.1.5",
|
||||||
|
"resolved": "https://registry.npmjs.org/ws/-/ws-1.1.5.tgz",
|
||||||
|
"integrity": "sha512-o3KqipXNUdS7wpQzBHSe180lBGO60SoK0yVo3CYJgb2MkobuWuBX6dhkYP5ORCLd55y+SaflMOV5fqAB53ux4w==",
|
||||||
|
"dependencies": {
|
||||||
|
"options": ">=0.0.5",
|
||||||
|
"ultron": "1.0.x"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@xmpp/jid": {
|
"@xmpp/jid": {
|
||||||
"version": "0.0.2",
|
"version": "0.0.2",
|
||||||
|
|
@ -98,6 +765,11 @@
|
||||||
"delayed-stream": "~1.0.0"
|
"delayed-stream": "~1.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"component-type": {
|
||||||
|
"version": "1.2.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/component-type/-/component-type-1.2.1.tgz",
|
||||||
|
"integrity": "sha1-ikeQFwAjjk/DIml3EjAibyS0Fak="
|
||||||
|
},
|
||||||
"core-util-is": {
|
"core-util-is": {
|
||||||
"version": "1.0.2",
|
"version": "1.0.2",
|
||||||
"resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
|
"resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
|
||||||
|
|
@ -138,6 +810,11 @@
|
||||||
"safer-buffer": "^2.1.0"
|
"safer-buffer": "^2.1.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"eivindfjeldstad-dot": {
|
||||||
|
"version": "0.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/eivindfjeldstad-dot/-/eivindfjeldstad-dot-0.0.1.tgz",
|
||||||
|
"integrity": "sha1-IvyXa/rzBuCDmjHbjoITSA+vuJM="
|
||||||
|
},
|
||||||
"extend": {
|
"extend": {
|
||||||
"version": "3.0.2",
|
"version": "3.0.2",
|
||||||
"resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
|
"resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
|
||||||
|
|
@ -219,6 +896,19 @@
|
||||||
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
|
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
|
||||||
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
|
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
|
||||||
},
|
},
|
||||||
|
"ip-regex": {
|
||||||
|
"version": "4.3.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-4.3.0.tgz",
|
||||||
|
"integrity": "sha512-B9ZWJxHHOHUhUjCPrMpLD4xEq35bUTClHM1S6CBU5ixQnkZmwipwgc96vAd7AAGM9TGHvJR+Uss+/Ak6UphK+Q=="
|
||||||
|
},
|
||||||
|
"is-ip": {
|
||||||
|
"version": "3.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/is-ip/-/is-ip-3.1.0.tgz",
|
||||||
|
"integrity": "sha512-35vd5necO7IitFPjd/YBeqwWnyDWbuLH9ZXQdMfDA8TEo7pv5X8yfrvVO3xbJbLUlERCMvf6X0hTUamQxCYJ9Q==",
|
||||||
|
"requires": {
|
||||||
|
"ip-regex": "^4.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"is-typedarray": {
|
"is-typedarray": {
|
||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
|
||||||
|
|
@ -340,6 +1030,11 @@
|
||||||
"resolved": "https://registry.npmjs.org/node-xmpp-tls-connect/-/node-xmpp-tls-connect-1.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/node-xmpp-tls-connect/-/node-xmpp-tls-connect-1.0.1.tgz",
|
||||||
"integrity": "sha1-kazkOsJrE4hhsr5HjfnfGdYdxcM="
|
"integrity": "sha1-kazkOsJrE4hhsr5HjfnfGdYdxcM="
|
||||||
},
|
},
|
||||||
|
"nodes7": {
|
||||||
|
"version": "0.3.14",
|
||||||
|
"resolved": "https://registry.npmjs.org/nodes7/-/nodes7-0.3.14.tgz",
|
||||||
|
"integrity": "sha512-94SSssnZ4Vm1AcyFYnWTI9Se78NXIPVJ3avtn6K+nUqLDuQtH4Qrbo1fAV3LgzAgds5CnT8ff7eHZYRlYBcIxQ=="
|
||||||
|
},
|
||||||
"oauth-sign": {
|
"oauth-sign": {
|
||||||
"version": "0.9.0",
|
"version": "0.9.0",
|
||||||
"resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz",
|
"resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz",
|
||||||
|
|
@ -466,6 +1161,11 @@
|
||||||
"resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz",
|
"resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz",
|
||||||
"integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q="
|
"integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q="
|
||||||
},
|
},
|
||||||
|
"typecast": {
|
||||||
|
"version": "0.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/typecast/-/typecast-0.0.1.tgz",
|
||||||
|
"integrity": "sha1-//t13La98d744pO2tuiT1sHtGd4="
|
||||||
|
},
|
||||||
"ultron": {
|
"ultron": {
|
||||||
"version": "1.0.2",
|
"version": "1.0.2",
|
||||||
"resolved": "https://registry.npmjs.org/ultron/-/ultron-1.0.2.tgz",
|
"resolved": "https://registry.npmjs.org/ultron/-/ultron-1.0.2.tgz",
|
||||||
|
|
@ -484,6 +1184,16 @@
|
||||||
"resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz",
|
"resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz",
|
||||||
"integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A=="
|
"integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A=="
|
||||||
},
|
},
|
||||||
|
"validate": {
|
||||||
|
"version": "5.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/validate/-/validate-5.1.0.tgz",
|
||||||
|
"integrity": "sha512-Y+vJv+xR3XsaQM8W1rQvwc6is/sgCUBv3lvNKc2DZ1HcVcEWAaHVSFB5uoxkQnw2riUq77Rg5nv1u8YuuSu/Zw==",
|
||||||
|
"requires": {
|
||||||
|
"component-type": "1.2.1",
|
||||||
|
"eivindfjeldstad-dot": "0.0.1",
|
||||||
|
"typecast": "0.0.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
"verror": {
|
"verror": {
|
||||||
"version": "1.10.0",
|
"version": "1.10.0",
|
||||||
"resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz",
|
"resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz",
|
||||||
|
|
|
||||||
18
package.json
18
package.json
|
|
@ -1,10 +1,13 @@
|
||||||
{
|
{
|
||||||
"name": "red-briq-nodes",
|
"name": "red-briq-nodes",
|
||||||
"version": "0.2.4",
|
"version": "0.2.5",
|
||||||
"description": "A Node-RED node to talk to an XMPP server",
|
"description": "Various forked and original nodes",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"denque": "^1.4.1",
|
"denque": "^1.4.1",
|
||||||
"simple-xmpp": "^1.3.1"
|
"simple-xmpp": "^1.3.1",
|
||||||
|
"is-ip": "^3.1.0",
|
||||||
|
"nodes7": "^0.3.14",
|
||||||
|
"validate": "^5.1.0"
|
||||||
},
|
},
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
|
|
@ -20,12 +23,9 @@
|
||||||
"xmpp": "red/xmpp/92-xmpp.js",
|
"xmpp": "red/xmpp/92-xmpp.js",
|
||||||
"my-debounce": "red/my-debounce/my-debounce.js",
|
"my-debounce": "red/my-debounce/my-debounce.js",
|
||||||
"command-parse": "red/command-parse/command-parse.js",
|
"command-parse": "red/command-parse/command-parse.js",
|
||||||
"briq-tcp": "red/tcp/tcp.js"
|
"briq-tcp": "red/tcp/tcp.js",
|
||||||
|
"s7-briq": "red/s7/s7-briq.js"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"author": {
|
"author": "info@briq.it"
|
||||||
"name": "Dave Conway-Jones",
|
|
||||||
"email": "ceejay@vnet.ibm.com",
|
|
||||||
"url": "http://nodered.org"
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,52 @@
|
||||||
|
<script type="text/javascript">
|
||||||
|
RED.nodes.registerType('s7briqwrite', {
|
||||||
|
category: 'plc',
|
||||||
|
color: '#aaaaaa',
|
||||||
|
defaults: {
|
||||||
|
name: { value: "" }
|
||||||
|
},
|
||||||
|
inputs: 1,
|
||||||
|
outputs: 1,
|
||||||
|
icon: "serial.png",
|
||||||
|
label: function () {
|
||||||
|
return this.name || "s7 write";
|
||||||
|
}
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<script type="text/html" data-template-name="s7briqwrite">
|
||||||
|
<div class="form-row">
|
||||||
|
<label for="node-input-name"><i class="fa fa-tag"></i> Name</label>
|
||||||
|
<input type="text" id="node-input-name" placeholder="Name">
|
||||||
|
</div>
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<script type="text/html" data-help-name="s7briqread">
|
||||||
|
<p>Scrive variabile su s7</p>
|
||||||
|
</script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
RED.nodes.registerType('s7briqread', {
|
||||||
|
category: 'plc',
|
||||||
|
color: '#aaaaaa',
|
||||||
|
defaults: {
|
||||||
|
name: { value: "" }
|
||||||
|
},
|
||||||
|
inputs: 1,
|
||||||
|
outputs: 1,
|
||||||
|
icon: "serial.png",
|
||||||
|
label: function () {
|
||||||
|
return this.name || "s7 read";
|
||||||
|
}
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<script type="text/html" data-template-name="s7briqread">
|
||||||
|
<div class="form-row">
|
||||||
|
<label for="node-input-name"><i class="fa fa-tag"></i> Name</label>
|
||||||
|
<input type="text" id="node-input-name" placeholder="Name">
|
||||||
|
</div>
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<script type="text/html" data-help-name="s7briqread">
|
||||||
|
<p>Scrive variabile su s7</p>
|
||||||
|
</script>
|
||||||
|
|
@ -0,0 +1,230 @@
|
||||||
|
const Schema = require('validate');
|
||||||
|
const isIp = require('is-ip');
|
||||||
|
const NodeS7 = require('nodes7');
|
||||||
|
const slowConnect = 5000;
|
||||||
|
function hop(obj, key) {
|
||||||
|
return Object.prototype.hasOwnProperty.call(obj, key);
|
||||||
|
}
|
||||||
|
function pos_integer(n) {
|
||||||
|
return parseInt(n) == n && n >= 0;
|
||||||
|
}
|
||||||
|
function is_ip(s) {
|
||||||
|
return isIp.version(s) !== undefined;
|
||||||
|
}
|
||||||
|
const plc_schema = new Schema({
|
||||||
|
ip: {
|
||||||
|
type: String,
|
||||||
|
required: true,
|
||||||
|
use: { is_ip }
|
||||||
|
},
|
||||||
|
port: {
|
||||||
|
type: Number,
|
||||||
|
required: true,
|
||||||
|
use: { pos_integer }
|
||||||
|
},
|
||||||
|
rack: {
|
||||||
|
type: Number,
|
||||||
|
required: true,
|
||||||
|
use: { pos_integer }
|
||||||
|
},
|
||||||
|
slot: {
|
||||||
|
type: Number,
|
||||||
|
required: true,
|
||||||
|
use: { pos_integer }
|
||||||
|
}
|
||||||
|
});
|
||||||
|
const write_msg = new Schema({
|
||||||
|
plc: plc_schema,
|
||||||
|
payload: {
|
||||||
|
variable: {
|
||||||
|
type: String,
|
||||||
|
required: true
|
||||||
|
},
|
||||||
|
value: {
|
||||||
|
required: true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
const read_msg = new Schema({
|
||||||
|
plc: plc_schema,
|
||||||
|
payload: {
|
||||||
|
variable: {
|
||||||
|
type: String,
|
||||||
|
required: true
|
||||||
|
},
|
||||||
|
}
|
||||||
|
});
|
||||||
|
let s7nodes = {};
|
||||||
|
let s7promises = {};
|
||||||
|
let s7_read_write_queue = {}; // lista di {msg, resolve, reject}
|
||||||
|
let s7write_lock = {}; // si può scrivere
|
||||||
|
function s7node_from_plc(plc) {
|
||||||
|
if (hop(s7nodes, plc.ip)) {
|
||||||
|
// c'è già un oggetto connessione
|
||||||
|
let s7obj = s7nodes[plc.ip];
|
||||||
|
if (s7obj.isoConnectionState == 4) {
|
||||||
|
// è connesso
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
resolve(s7obj)
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
// non è connesso: rifare
|
||||||
|
delete s7nodes[plc.ip];
|
||||||
|
return s7node_from_plc(plc);
|
||||||
|
}
|
||||||
|
} else if (hop(s7promises, plc.ip)) {
|
||||||
|
// sta già provando a connettersi ma bisogna aspettare la promise
|
||||||
|
let prom = s7promises[plc.ip];
|
||||||
|
return prom.then(() => {
|
||||||
|
return s7nodes[plc.ip];
|
||||||
|
}, () => {
|
||||||
|
return s7node_from_plc(plc)
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
let conn_opt = {
|
||||||
|
host: plc.ip,
|
||||||
|
port: plc.port,
|
||||||
|
rack: plc.rack,
|
||||||
|
slot: plc.slot
|
||||||
|
};
|
||||||
|
let nuovo = new NodeS7();
|
||||||
|
let prom = new Promise(
|
||||||
|
(resolve, reject) => {
|
||||||
|
setTimeout(() => {
|
||||||
|
nuovo.initiateConnection(
|
||||||
|
conn_opt,
|
||||||
|
(arg1) => {
|
||||||
|
delete s7promises[plc.ip];
|
||||||
|
if (arg1 !== undefined) {
|
||||||
|
reject(arg1)
|
||||||
|
} else {
|
||||||
|
s7nodes[plc.ip] = nuovo;
|
||||||
|
resolve(nuovo)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}, slowConnect);
|
||||||
|
});
|
||||||
|
s7promises[plc.ip] = prom;
|
||||||
|
return prom;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
function s7_write(plc, obj, variable, value) {
|
||||||
|
if (!hop(s7_read_write_queue, plc.ip)) {
|
||||||
|
s7_read_write_queue[plc.ip] = [];
|
||||||
|
}
|
||||||
|
let queue_prom = {};
|
||||||
|
let out = new Promise((resolve, reject) => {
|
||||||
|
queue_prom.resolve = resolve;
|
||||||
|
queue_prom.reject = reject;
|
||||||
|
});
|
||||||
|
s7_read_write_queue[plc.ip].push({ action: "write", variable, value, reject: queue_prom.reject, resolve: queue_prom.resolve });
|
||||||
|
s7_read_write_loop(plc.ip, obj);
|
||||||
|
return out;
|
||||||
|
}
|
||||||
|
function s7_read(plc, obj, variable) {
|
||||||
|
if (!hop(s7_read_write_queue, plc.ip)) {
|
||||||
|
s7_read_write_queue[plc.ip] = [];
|
||||||
|
}
|
||||||
|
let queue_prom = {};
|
||||||
|
let out = new Promise((resolve, reject) => {
|
||||||
|
queue_prom.resolve = resolve;
|
||||||
|
queue_prom.reject = reject;
|
||||||
|
});
|
||||||
|
s7_read_write_queue[plc.ip].push({ action: "read", variable, reject: queue_prom.reject, resolve: queue_prom.resolve });
|
||||||
|
s7_read_write_loop(plc.ip, obj);
|
||||||
|
return out;
|
||||||
|
}
|
||||||
|
function s7_read_write_loop(ip, obj) {
|
||||||
|
let q = s7_read_write_queue[ip];
|
||||||
|
if (!hop(s7write_lock, ip)) {
|
||||||
|
s7write_lock[ip] = false;
|
||||||
|
}
|
||||||
|
if (!s7write_lock[ip] && q.length > 0) {
|
||||||
|
s7write_lock[ip] = true;
|
||||||
|
let item = q.shift();
|
||||||
|
if (item.action == "write") {
|
||||||
|
obj.writeItems(item.variable, [item.value], (e) => {
|
||||||
|
if (e) {
|
||||||
|
// questa scrittura è fallita
|
||||||
|
item.reject(e);
|
||||||
|
} else {
|
||||||
|
// questa scrittura è riuscita
|
||||||
|
item.resolve();
|
||||||
|
}
|
||||||
|
s7write_lock[ip] = false;
|
||||||
|
s7_read_write_loop(ip, obj);
|
||||||
|
})
|
||||||
|
} else if (item.action == "read") {
|
||||||
|
obj.removeItems(undefined); // questo elimina tutte
|
||||||
|
obj.addItems(item.variable);
|
||||||
|
obj.readAllItems((anyBadQualities, dataObject) => {
|
||||||
|
if (anyBadQualities) {
|
||||||
|
console.error("bad qual", anyBadQualities)
|
||||||
|
item.reject(anyBadQualities);
|
||||||
|
} else {
|
||||||
|
console.log("letti", dataObject);
|
||||||
|
item.resolve(dataObject[item.variable]);
|
||||||
|
}
|
||||||
|
s7write_lock[ip] = false;
|
||||||
|
s7_read_write_loop(ip, obj);
|
||||||
|
})
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// è già lockato o vuoto
|
||||||
|
}
|
||||||
|
}
|
||||||
|
module.exports = function (RED) {
|
||||||
|
function S7BriqWrite(config) {
|
||||||
|
RED.nodes.createNode(this, config);
|
||||||
|
var node = this;
|
||||||
|
node.on('input', function (msg) {
|
||||||
|
try {
|
||||||
|
write_msg.assert(msg);
|
||||||
|
} catch (e) {
|
||||||
|
let errors = write_msg.validate(msg);
|
||||||
|
node.error("Msg non valido: " + errors.map(x => x.path + ": " + x.error).join("\n"));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
s7node_from_plc(msg.plc).then(s7conn => {
|
||||||
|
return s7_write(msg.plc, s7conn, msg.payload.variable, [msg.payload.value]);
|
||||||
|
}).then(() => {
|
||||||
|
msg.result = "ok";
|
||||||
|
node.send(msg);
|
||||||
|
return true;
|
||||||
|
}).catch(err => {
|
||||||
|
msg.result = "err";
|
||||||
|
node.send(msg);
|
||||||
|
node.error("Impossibile scrivere il valore: " + err);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
RED.nodes.registerType("s7briqwrite", S7BriqWrite);
|
||||||
|
|
||||||
|
function S7BriqRead(config) {
|
||||||
|
RED.nodes.createNode(this, config);
|
||||||
|
var node = this;
|
||||||
|
node.on('input', function (msg) {
|
||||||
|
console.log("input", msg);
|
||||||
|
try {
|
||||||
|
read_msg.assert(msg);
|
||||||
|
} catch (e) {
|
||||||
|
let errors = write_msg.validate(msg);
|
||||||
|
node.error("Msg non valido: " + errors.map(x => x.path + ": " + x.error).join("\n"));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
s7node_from_plc(msg.plc).then(s7conn => {
|
||||||
|
return s7_read(msg.plc, s7conn, msg.payload.variable);
|
||||||
|
}).then((out) => {
|
||||||
|
msg.result = "ok";
|
||||||
|
msg.payload.value = out;
|
||||||
|
node.send(msg);
|
||||||
|
return true;
|
||||||
|
}).catch(err => {
|
||||||
|
msg.result = "err";
|
||||||
|
node.send(msg);
|
||||||
|
node.error("Impossibile scrivere il valore: " + err);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
RED.nodes.registerType("s7briqread", S7BriqRead);
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,24 @@
|
||||||
|
[[package]]
|
||||||
|
name = "python-snap7"
|
||||||
|
version = "1.1"
|
||||||
|
description = "Python wrapper for the snap7 library"
|
||||||
|
category = "main"
|
||||||
|
optional = false
|
||||||
|
python-versions = ">=3.6"
|
||||||
|
|
||||||
|
[package.extras]
|
||||||
|
doc = ["sphinx", "sphinx-rtd-theme"]
|
||||||
|
test = ["pytest", "pytest-asyncio", "mypy", "pycodestyle", "types-setuptools"]
|
||||||
|
|
||||||
|
[metadata]
|
||||||
|
lock-version = "1.1"
|
||||||
|
python-versions = "^3.9"
|
||||||
|
content-hash = "3d111be4ca682f78c931e41917cd86b1659ff3c844220b973392dd844d411fd3"
|
||||||
|
|
||||||
|
[metadata.files]
|
||||||
|
python-snap7 = [
|
||||||
|
{file = "python-snap7-1.1.tar.gz", hash = "sha256:0fbb25d3c6cc1328ac5916aaf0d02f96c7939804bb387079d3b84ab44494a1f9"},
|
||||||
|
{file = "python_snap7-1.1-py3-none-macosx_10_9_x86_64.whl", hash = "sha256:807b78d32b395ef30ff9a654c4d40468633c054f81defbcf1463eb5e3d894098"},
|
||||||
|
{file = "python_snap7-1.1-py3-none-manylinux1_x86_64.whl", hash = "sha256:29c2ff855ff0da35f9b3c3ec454add8c8a73f68102bcc9aa395cdba2ede18df0"},
|
||||||
|
{file = "python_snap7-1.1-py3-none-win_amd64.whl", hash = "sha256:b4e74a8a8a241ae12b4fb087a8291707bee03f5ae7cd328b9b768a524ff2519f"},
|
||||||
|
]
|
||||||
|
|
@ -0,0 +1,15 @@
|
||||||
|
[tool.poetry]
|
||||||
|
name = "red-s7-briq-testing"
|
||||||
|
version = "0.1.0"
|
||||||
|
description = ""
|
||||||
|
authors = ["Pietro Brenna <pietro.brenna@briq.it>"]
|
||||||
|
|
||||||
|
[tool.poetry.dependencies]
|
||||||
|
python = "^3.9"
|
||||||
|
python-snap7 = "^1.1"
|
||||||
|
|
||||||
|
[tool.poetry.dev-dependencies]
|
||||||
|
|
||||||
|
[build-system]
|
||||||
|
requires = ["poetry-core>=1.0.0"]
|
||||||
|
build-backend = "poetry.core.masonry.api"
|
||||||
|
|
@ -0,0 +1,18 @@
|
||||||
|
import snap7
|
||||||
|
import time
|
||||||
|
from snap7.types import Areas
|
||||||
|
from ctypes import c_char, byref, sizeof
|
||||||
|
|
||||||
|
class MyServer(snap7.server.Server):
|
||||||
|
pass
|
||||||
|
|
||||||
|
s = MyServer()
|
||||||
|
area_m = (c_char * 160)()
|
||||||
|
s.register_area(snap7.types.srvAreaMK, 0, area_m)
|
||||||
|
s.start(tcpport=1102)
|
||||||
|
while True:
|
||||||
|
ev = s.pick_event()
|
||||||
|
if ev is None:
|
||||||
|
time.sleep(1)
|
||||||
|
else:
|
||||||
|
print(s.event_text(ev))
|
||||||
Loading…
Reference in New Issue