{"_id":"@spacepumpkin/gx90-api","_rev":"42-7bb55605ed6d8e8a89015da78570e6b6","time":{"created":"2023-11-27T18:00:03.843Z","0.0.1":"2023-11-24T18:09:31.504Z","modified":"2023-12-16T11:49:51.883Z","0.0.2":"2023-11-24T18:11:56.052Z","0.0.3":"2023-11-27T17:29:23.453Z","0.0.3-test":"2023-11-27T17:31:51.715Z","0.0.3-test2":"2023-11-27T17:32:50.324Z","0.0.3-test3":"2023-11-27T17:35:02.860Z","0.0.3-test4":"2023-11-27T17:47:52.180Z","0.1.0":"2023-11-27T18:00:04.411Z","0.1.1":"2023-12-15T15:25:16.265Z","0.2.0-dockertest1":"2023-12-15T15:56:57.191Z","0.2.0-dockertest2":"2023-12-15T16:02:38.887Z","0.2.0-dockertest3":"2023-12-15T16:13:08.017Z","0.2.0-dockertest5":"2023-12-16T08:54:59.889Z","0.2.0-dockertest6":"2023-12-16T09:37:02.796Z","0.2.0-dockertest7":"2023-12-16T09:49:15.073Z","0.2.0-dockertest8":"2023-12-16T10:04:51.676Z","0.2.0-dockertest9":"2023-12-16T10:20:10.882Z","0.2.0-dockertest10":"2023-12-16T10:23:57.426Z","0.2.0-dockertest11":"2023-12-16T10:25:20.358Z","0.2.0":"2023-12-16T11:20:10.343Z","0.2.1":"2023-12-16T11:38:05.953Z","0.2.2":"2023-12-16T11:39:03.878Z","0.2.3":"2023-12-16T11:49:51.664Z"},"name":"@spacepumpkin/gx90-api","dist-tags":{"latest":"0.2.3"},"versions":{"0.1.0":{"name":"@spacepumpkin/gx90-api","version":"0.1.0","description":"Provides functionality for interacting with TPLink routers running GX90 firmware","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"start":"tsc && node dist/index.js","test":"tsc && node --test dist/test/index.spec.js"},"repository":{"type":"git","url":"git+https://gitlab.com/jack.reevies/gx90-api.git"},"author":{"name":"SpacePumpkin"},"license":"ISC","devDependencies":{"@types/node":"^20.10.0","typescript":"^5.3.2"},"dependencies":{"node-bignumber":"^1.2.2"},"_id":"@spacepumpkin/gx90-api@0.1.0","gitHead":"9d531b4e28476f5e53fec48f967cb256b450d9a7","bugs":{"url":"https://gitlab.com/jack.reevies/gx90-api/issues"},"homepage":"https://gitlab.com/jack.reevies/gx90-api#readme","_nodeVersion":"20.8.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-EojWeoGXYltOIzmx5gOspX5k/TageLNS+H34XUA/V68zHgjB7msgEJsmG1EvPk8CfVby60lbKySkHl05kmBKXA==","shasum":"fa1653d8aca81c3649497a845a68db3a3f57c03d","tarball":"https://registry.npmjs.org/@spacepumpkin/gx90-api/-/gx90-api-0.1.0.tgz","fileCount":8,"unpackedSize":33575,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFbPcTtlZhc3Ftd6dyFDQKYFUIlHB5VMptVq0RFg9AM1AiAqE+tfbDEjHIwm5XR0/gnXfZFtZoDRLNr3+9K+/S97ig=="}]},"_npmUser":{"name":"drspacepumpkin","email":"jack@reevies.tech"},"directories":{},"maintainers":[{"name":"drspacepumpkin","email":"jack@reevies.tech"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/gx90-api_0.1.0_1701108004102_0.23171551074597252"},"_hasShrinkwrap":false},"0.1.1":{"name":"@spacepumpkin/gx90-api","version":"0.1.1","description":"Provides functionality for interacting with TPLink routers running GX90 firmware","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"start":"tsc && node dist/index.js","test":"tsc && node --test dist/test/index.spec.js"},"repository":{"type":"git","url":"git+https://gitlab.com/jack.reevies/gx90-api.git"},"author":{"name":"SpacePumpkin"},"license":"ISC","devDependencies":{"@types/node":"^20.10.0","typescript":"^5.3.2"},"dependencies":{"node-bignumber":"^1.2.2"},"_id":"@spacepumpkin/gx90-api@0.1.1","gitHead":"9d531b4e28476f5e53fec48f967cb256b450d9a7","bugs":{"url":"https://gitlab.com/jack.reevies/gx90-api/issues"},"homepage":"https://gitlab.com/jack.reevies/gx90-api#readme","_nodeVersion":"20.8.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-E7bVGKV7EczPnEVG3Tqo8bQeSrSmGtrxVzJD1YsuDnNAd5nclSTt6SmeDhqPII81rup/M7Pof/Fo0oHN2Jr77w==","shasum":"7518eba642612737e73854645068d24702ed9f42","tarball":"https://registry.npmjs.org/@spacepumpkin/gx90-api/-/gx90-api-0.1.1.tgz","fileCount":8,"unpackedSize":33854,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCS2fHDXBwTGv3L5jJ39qSwf6GJqvd69ObHzy9zWYmoawIhAMqWfsZSuS07TbW6jZHFg39hp86DgqBmozRszgqBxCnz"}]},"_npmUser":{"name":"drspacepumpkin","email":"jack@reevies.tech"},"directories":{},"maintainers":[{"name":"drspacepumpkin","email":"jack@reevies.tech"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/gx90-api_0.1.1_1702653915960_0.5605172878567148"},"_hasShrinkwrap":false},"0.2.2":{"name":"@spacepumpkin/gx90-api","version":"0.2.2","description":"Provides functionality for interacting with TPLink routers running GX90 firmware","main":"index","types":"index","scripts":{"start":"tsc && node dist/index.js","test":"tsc && node --test dist/test/index.spec.js"},"repository":{"type":"git","url":"git+https://gitlab.com/jack.reevies/gx90-api.git"},"bin":{"gx90":"dist/index.js"},"author":{"name":"SpacePumpkin"},"license":"ISC","devDependencies":{"@types/node":"^20.10.0","typescript":"^5.3.2"},"dependencies":{"@types/node-fetch":"^2.6.9","node-bignumber":"^1.2.2","node-fetch":"^2.6.7"},"_id":"@spacepumpkin/gx90-api@0.2.2","gitHead":"0ac57648bef9e0b5dbac4fbb0ba9db1a40a338c4","bugs":{"url":"https://gitlab.com/jack.reevies/gx90-api/issues"},"homepage":"https://gitlab.com/jack.reevies/gx90-api#readme","_nodeVersion":"20.8.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-e2B7unHWsVA62EGKvttGSUYdenFN+qs0OIotuKriS/8o1s3JjMuTRM/T5bxKEnHepMjieZaWnxQC7zR2RzMWPw==","shasum":"dd1d39a46329855f3b0d3e85535f3f79cf059eb2","tarball":"https://registry.npmjs.org/@spacepumpkin/gx90-api/-/gx90-api-0.2.2.tgz","fileCount":8,"unpackedSize":45887,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGSCdQ/4lq2pDHd50RhT79tXr06TXhfnTXoJCvaiU+hgAiBReCo9e9/aJEOOI/4VZitWt0Xk/BYky2q3I7tOuXETTg=="}]},"_npmUser":{"name":"drspacepumpkin","email":"jack@reevies.tech"},"directories":{},"maintainers":[{"name":"drspacepumpkin","email":"jack@reevies.tech"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/gx90-api_0.2.2_1702726743646_0.2183726042467644"},"_hasShrinkwrap":false},"0.2.3":{"name":"@spacepumpkin/gx90-api","version":"0.2.3","description":"Provides functionality for interacting with TPLink routers running GX90 firmware","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"start":"tsc && node dist/index.js","test":"tsc && node --test dist/test/index.spec.js"},"repository":{"type":"git","url":"git+https://gitlab.com/jack.reevies/gx90-api.git"},"bin":{"gx90":"dist/index.js"},"author":{"name":"SpacePumpkin"},"license":"ISC","devDependencies":{"@types/node":"^20.10.0","typescript":"^5.3.2"},"dependencies":{"@types/node-fetch":"^2.6.9","node-bignumber":"^1.2.2","node-fetch":"^2.6.7"},"_id":"@spacepumpkin/gx90-api@0.2.3","gitHead":"0ac57648bef9e0b5dbac4fbb0ba9db1a40a338c4","bugs":{"url":"https://gitlab.com/jack.reevies/gx90-api/issues"},"homepage":"https://gitlab.com/jack.reevies/gx90-api#readme","_nodeVersion":"20.8.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-qJGC2tZu9uM8Lu8xjNr3bGmktD3B3n8gFlDvAWIZ2JS7SPeYA6O2Sbnk8nA8TldYLobPsNmwFsFwozzQeYhUfQ==","shasum":"42da5e98a813cbbe4e8c0ce9f76f11d3c8517145","tarball":"https://registry.npmjs.org/@spacepumpkin/gx90-api/-/gx90-api-0.2.3.tgz","fileCount":8,"unpackedSize":45875,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCdKeVQD7Y4Jw5I1ciJ3wzqBl1YXNvtsiN3yM/QIhzkhgIgDJQWp1K/NnQgA663UmSAU9KPd5QZABbuEuN5o9+iEns="}]},"_npmUser":{"name":"drspacepumpkin","email":"jack@reevies.tech"},"directories":{},"maintainers":[{"name":"drspacepumpkin","email":"jack@reevies.tech"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/gx90-api_0.2.3_1702727391470_0.9856308434479608"},"_hasShrinkwrap":false}},"maintainers":[{"name":"drspacepumpkin","email":"jack@reevies.tech"}],"description":"Provides functionality for interacting with TPLink routers running GX90 firmware","homepage":"https://gitlab.com/jack.reevies/gx90-api#readme","repository":{"type":"git","url":"git+https://gitlab.com/jack.reevies/gx90-api.git"},"author":{"name":"SpacePumpkin"},"bugs":{"url":"https://gitlab.com/jack.reevies/gx90-api/issues"},"license":"ISC","readme":"# GX90 API\r\n\r\nA barebones WIP module for interfacing with a TPLink router running the GX90 firmware.\r\n\r\n## Install\r\n\r\n`npm i @spacepumpkin/gx90-api`\r\n\r\n## Usage\r\n\r\n### CLI\r\n\r\nThis module provides a CLI for convenience and can be invoked with `npx gx90 cli <COMMAND> <OPTS>`.\r\n\r\nOpts are given in the following form `--KEY=VALUE` (for example `--password=hunter2`)\r\n\r\nKey | Default | Notes\r\n-|-|-\r\nmethod | local | Authentication method. Supports both local login with \"local\" (default) or using TPLink ID with \"cloud\" \r\npassword | <none> | Password to log in with. Either router's admin creds or TPLink ID's password\r\nemail | <none> | Your TPLink ID's email address (only used if logging in wth TPLink ID)\r\nhost | http://tplinkwifi.net | Hostname of the router. TPLink routers prefer tplinkwifi.net but this might not be accessible if you've got custom DNS settings\r\n\r\n### As a module\r\n\r\n```typescript\r\nimport { login, getDevices } from '@spacepumpkin/gx90-api'\r\n\r\nasync function start() {\r\n  const creds = await login('password') // Optionally specify the host in the second param (ie, http://192.168.0.1)\r\n  const connectedDevices = await getDevices(creds)\r\n}\r\n\r\nstart()\r\n```\r\n\r\n### login\r\n\r\nLogs in to the router using the admin password. Returns a credentials object used by all other methods.\r\n\r\n### getDevices\r\n\r\nGets an array of currently connected devices. This is used internally by the router to populate the network map.\r\n\r\n## Running tests\r\n\r\nTests are fully mocked out so no real network requests are made\r\n\r\nTODO: Add a seperate test suite for interfacing with a real device\r\n\r\n`npm test`","readmeFilename":"README.md"}