Compare commits

...

17 Commits

Author SHA1 Message Date
52353ec1fb Merge pull request '#22 - Add Automated Docs' (#24) from automated-docs-#22 into main
All checks were successful
release-tag / release-image (push) Successful in 2m2s
Update Wiki from JSDoc / update-wiki (push) Successful in 13s
Lint JavaScript/Node.js / lint-js (push) Successful in 11s
DRB Tests / drb_mocha_tests (push) Successful in 26s
Reviewed-on: #24
2024-08-17 19:48:46 -04:00
Logan Cusano
750877db1a Remove docs on PRs
All checks were successful
Lint JavaScript/Node.js / lint-js (pull_request) Successful in 11s
DRB Tests / drb_mocha_tests (pull_request) Successful in 28s
- Update wiki step
2024-08-17 19:46:15 -04:00
Logan Cusano
a18337d0f8 Updated 'home' -> 'Home'
All checks were successful
Update Wiki from JSDoc / update-wiki (pull_request) Successful in 12s
Lint JavaScript/Node.js / lint-js (pull_request) Successful in 11s
DRB Tests / drb_mocha_tests (pull_request) Successful in 29s
2024-08-17 19:40:18 -04:00
Logan Cusano
6f45a60030 Update action to force copy
Some checks failed
Update Wiki from JSDoc / update-wiki (pull_request) Failing after 11s
Lint JavaScript/Node.js / lint-js (pull_request) Successful in 10s
DRB Tests / drb_mocha_tests (pull_request) Successful in 26s
2024-08-17 19:33:06 -04:00
Logan Cusano
1fb4728b0a Revert incomplete changes to GPT handler
Some checks failed
Update Wiki from JSDoc / update-wiki (pull_request) Failing after 11s
Lint JavaScript/Node.js / lint-js (pull_request) Successful in 11s
DRB Tests / drb_mocha_tests (pull_request) Successful in 28s
2024-08-17 19:28:44 -04:00
Logan Cusano
ebf48c7618 Linting 2024-08-17 19:27:48 -04:00
Logan Cusano
11b3504f28 Update docs for test
Some checks failed
Update Wiki from JSDoc / update-wiki (pull_request) Successful in 12s
Lint JavaScript/Node.js / lint-js (pull_request) Failing after 10s
DRB Tests / drb_mocha_tests (pull_request) Successful in 29s
2024-08-17 19:15:02 -04:00
Logan Cusano
14171a9c13 Fix homepage name 2024-08-17 19:13:44 -04:00
Logan Cusano
47a03898cc Update action and npm script
Some checks failed
Update Wiki from JSDoc / update-wiki (pull_request) Successful in 12s
Lint JavaScript/Node.js / lint-js (pull_request) Failing after 10s
DRB Tests / drb_mocha_tests (pull_request) Successful in 26s
2024-08-17 19:10:56 -04:00
Logan Cusano
2551498d2e update npx -> npm
Some checks failed
Update Wiki from JSDoc / update-wiki (pull_request) Failing after 10s
Lint JavaScript/Node.js / lint-js (pull_request) Failing after 11s
DRB Tests / drb_mocha_tests (pull_request) Successful in 29s
2024-08-17 19:07:23 -04:00
Logan Cusano
277f7d176a Update docs to work
Some checks failed
Update Wiki from JSDoc / update-wiki (pull_request) Has been cancelled
Lint JavaScript/Node.js / lint-js (pull_request) Has been cancelled
DRB Tests / drb_mocha_tests (pull_request) Has been cancelled
2024-08-17 19:05:38 -04:00
Logan Cusano
066404dd10 Updated dir structure to put the actual source code in the general /src dir
Some checks failed
Update Wiki from JSDoc / update-wiki (pull_request) Has been cancelled
Lint JavaScript/Node.js / lint-js (pull_request) Failing after 11s
DRB Tests / drb_mocha_tests (pull_request) Has been cancelled
2024-08-17 18:44:18 -04:00
Logan Cusano
8f2891f5d8 Update docs to use npm script for consistency 2024-08-17 18:43:39 -04:00
Logan Cusano
9f2ed48caf Added better docs
Some checks failed
Lint JavaScript/Node.js / lint-js (pull_request) Failing after 14s
DRB Tests / drb_mocha_tests (pull_request) Successful in 34s
Update Wiki from JSDoc / update-wiki (pull_request) Successful in 15s
2024-08-17 18:11:38 -04:00
Logan Cusano
3f42d60efc Add docs to ignored file for this repo 2024-08-17 18:11:14 -04:00
Logan Cusano
cf9f48dfa7 Fix jsdoc bug
Some checks failed
Update Wiki from JSDoc / update-wiki (pull_request) Failing after 10s
Lint JavaScript/Node.js / lint-js (pull_request) Failing after 10s
DRB Tests / drb_mocha_tests (pull_request) Successful in 25s
- Was importing class within the jsdoc
2024-08-17 17:56:25 -04:00
Logan Cusano
bde7dbce45 add pr to docs for testing
Some checks failed
Update Wiki from JSDoc / update-wiki (pull_request) Failing after 10s
Lint JavaScript/Node.js / lint-js (pull_request) Successful in 11s
DRB Tests / drb_mocha_tests (pull_request) Successful in 25s
2024-08-17 17:53:32 -04:00
46 changed files with 764 additions and 38 deletions

View File

@@ -23,7 +23,7 @@ jobs:
run: npm install
- name: Generate JSDoc
run: npx jsdoc -c jsdoc.json -d docs
run: npm run docs
- name: Checkout the wiki repository
uses: actions/checkout@v4
@@ -33,10 +33,15 @@ jobs:
- name: Update wiki
run: |
cp -r docs/* wiki/
cp -rf Home.md wiki/Home.md
cd wiki
git config user.name "gitea-actions"
git config user.email "gitea-actions@cusano.net"
git add .
git commit -m "Update wiki from JSDoc"
git push
# Check if there are any changes to commit
if git diff --cached --quiet; then
echo "No changes to commit."
else
git commit -m "Update wiki from JSDoc"
git push
fi

5
.gitignore vendored
View File

@@ -301,4 +301,7 @@ config/
op25/
# Ignore any local run scripts for development
*.bat
*.bat
# Ignore the auto-generated docs folder
/docs

View File

@@ -12,7 +12,7 @@ RUN npm install -g node-gyp
RUN npm install
# Copy the rest of the application code to the working directory
COPY . .
COPY ./src ./src
# Expose the port on which your Node.js application will run
EXPOSE 3420

View File

@@ -17,7 +17,7 @@ export default [
// Apply ESLint recommended settings first
...compat.extends().map((config) => ({
...config,
files: ["**/*.mjs", "**/*.js", "**/*.cjs"],
files: ["src/**/*.mjs", "src/**/*.js", "src/**/*.cjs"],
})),
// Custom rules and plugin configuration

5
jsdoc.conf Normal file
View File

@@ -0,0 +1,5 @@
{
"source": {
"includePattern": ".+\\.([mc]?js(doc|x)?)$"
}
}

View File

@@ -1,14 +0,0 @@
{
"source": {
"include": ["addons", "discordBot", "modules", "rss-manager", "test"],
"exclude": ["node_modules"],
"includePattern": ".+\\.[mc]?js(doc|x)?$",
"excludePattern": "(^|\\/|\\\\)_"
},
"opts": {
"destination": "./docs",
"recurse": true,
"template": "default"
}
}

View File

@@ -21,10 +21,6 @@ run:
-e MONGO_URL=${MONGO_URL} \
-e DISCORD_TOKEN=${DISCORD_TOKEN} \
-e RSS_REFRESH_INTERVAL=${RSS_REFRESH_INTERVAL} \
-e WELCOME_CHANNEL_ID=${WELCOME_CHANNEL_ID} \
-e IGNORED_CHANNEL_IDS=${IGNORED_CHANNEL_IDS} \
-e LINKCOP_RESTRICTED_CHANNEL_IDS=${LINKCOP_RESTRICTED_CHANNEL_IDS} \
-e DRB_SERVER_INITIAL_PROMPT=${DRB_SERVER_INITIAL_PROMPT} \
-e OPENAI_API_KEY=${OPENAI_API_KEY} \
-e LOG_LOCATION="./logs/server.log" \
-p ${SERVER_PORT}:${SERVER_PORT} \

731
package-lock.json generated
View File

@@ -26,7 +26,7 @@
"eslint-config-prettier": "^9.1.0",
"eslint-plugin-prettier": "^5.2.1",
"eslint-plugin-unused-imports": "^4.1.3",
"jsdoc": "^4.0.3",
"jsdoc-to-markdown": "^8.0.3",
"mocha": "^10.4.0",
"prettier": "^3.3.3",
"socket.io-client": "^4.7.5"
@@ -669,6 +669,27 @@
"node": ">=6"
}
},
"node_modules/ansi-escape-sequences": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/ansi-escape-sequences/-/ansi-escape-sequences-4.1.0.tgz",
"integrity": "sha512-dzW9kHxH011uBsidTXd14JXgzye/YLb2LzeKZ4bsgl/Knwx8AtbSFkkGxagdNOoh0DlqHCmfiEjWKBaqjOanVw==",
"dev": true,
"dependencies": {
"array-back": "^3.0.1"
},
"engines": {
"node": ">=8.0.0"
}
},
"node_modules/ansi-escape-sequences/node_modules/array-back": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/array-back/-/array-back-3.1.0.tgz",
"integrity": "sha512-TkuxA4UCOvxuDK6NZYXCalszEzj+TLszyASooky+i742l9TqsOdYCMJJupxRic61hwquNtppB3hgcuq9SVSH1Q==",
"dev": true,
"engines": {
"node": ">=6"
}
},
"node_modules/ansi-regex": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
@@ -712,6 +733,15 @@
"integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
"dev": true
},
"node_modules/array-back": {
"version": "6.2.2",
"resolved": "https://registry.npmjs.org/array-back/-/array-back-6.2.2.tgz",
"integrity": "sha512-gUAZ7HPyb4SJczXAMUXMGAvI976JoK3qEx9v1FTmeYuJj0IBiaKttG1ydtGKdkfqWkIkouke7nG8ufGy77+Cvw==",
"dev": true,
"engines": {
"node": ">=12.17"
}
},
"node_modules/array-flatten": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
@@ -850,6 +880,29 @@
"node": ">= 0.8"
}
},
"node_modules/cache-point": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/cache-point/-/cache-point-2.0.0.tgz",
"integrity": "sha512-4gkeHlFpSKgm3vm2gJN5sPqfmijYRFYCQ6tv5cLw0xVmT6r1z1vd4FNnpuOREco3cBs1G709sZ72LdgddKvL5w==",
"dev": true,
"dependencies": {
"array-back": "^4.0.1",
"fs-then-native": "^2.0.0",
"mkdirp2": "^1.0.4"
},
"engines": {
"node": ">=8"
}
},
"node_modules/cache-point/node_modules/array-back": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/array-back/-/array-back-4.0.2.tgz",
"integrity": "sha512-NbdMezxqf94cnNfWLL7V/im0Ub+Anbb0IoZhvzie8+4HJ4nMQuzHuy49FkGYCJK2yAloZ3meiB6AVMClbrI1vg==",
"dev": true,
"engines": {
"node": ">=8"
}
},
"node_modules/call-bind": {
"version": "1.0.7",
"resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz",
@@ -992,6 +1045,19 @@
"wrap-ansi": "^7.0.0"
}
},
"node_modules/collect-all": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/collect-all/-/collect-all-1.0.4.tgz",
"integrity": "sha512-RKZhRwJtJEP5FWul+gkSMEnaK6H3AGPTTWOiRimCcs+rc/OmQE3Yhy1Q7A7KsdkG3ZXVdZq68Y6ONSdvkeEcKA==",
"dev": true,
"dependencies": {
"stream-connect": "^1.0.2",
"stream-via": "^1.0.4"
},
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/color-convert": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
@@ -1021,12 +1087,127 @@
"node": ">= 0.8"
}
},
"node_modules/command-line-args": {
"version": "5.2.1",
"resolved": "https://registry.npmjs.org/command-line-args/-/command-line-args-5.2.1.tgz",
"integrity": "sha512-H4UfQhZyakIjC74I9d34fGYDwk3XpSr17QhEd0Q3I9Xq1CETHo4Hcuo87WyWHpAF1aSLjLRf5lD9ZGX2qStUvg==",
"dev": true,
"dependencies": {
"array-back": "^3.1.0",
"find-replace": "^3.0.0",
"lodash.camelcase": "^4.3.0",
"typical": "^4.0.0"
},
"engines": {
"node": ">=4.0.0"
}
},
"node_modules/command-line-args/node_modules/array-back": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/array-back/-/array-back-3.1.0.tgz",
"integrity": "sha512-TkuxA4UCOvxuDK6NZYXCalszEzj+TLszyASooky+i742l9TqsOdYCMJJupxRic61hwquNtppB3hgcuq9SVSH1Q==",
"dev": true,
"engines": {
"node": ">=6"
}
},
"node_modules/command-line-args/node_modules/typical": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/typical/-/typical-4.0.0.tgz",
"integrity": "sha512-VAH4IvQ7BDFYglMd7BPRDfLgxZZX4O4TFcRDA6EN5X7erNJJq+McIEp8np9aVtxrCJ6qx4GTYVfOWNjcqwZgRw==",
"dev": true,
"engines": {
"node": ">=8"
}
},
"node_modules/command-line-tool": {
"version": "0.8.0",
"resolved": "https://registry.npmjs.org/command-line-tool/-/command-line-tool-0.8.0.tgz",
"integrity": "sha512-Xw18HVx/QzQV3Sc5k1vy3kgtOeGmsKIqwtFFoyjI4bbcpSgnw2CWVULvtakyw4s6fhyAdI6soQQhXc2OzJy62g==",
"dev": true,
"dependencies": {
"ansi-escape-sequences": "^4.0.0",
"array-back": "^2.0.0",
"command-line-args": "^5.0.0",
"command-line-usage": "^4.1.0",
"typical": "^2.6.1"
},
"engines": {
"node": ">=4.0.0"
}
},
"node_modules/command-line-tool/node_modules/array-back": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/array-back/-/array-back-2.0.0.tgz",
"integrity": "sha512-eJv4pLLufP3g5kcZry0j6WXpIbzYw9GUB4mVJZno9wfwiBxbizTnHCw3VJb07cBihbFX48Y7oSrW9y+gt4glyw==",
"dev": true,
"dependencies": {
"typical": "^2.6.1"
},
"engines": {
"node": ">=4"
}
},
"node_modules/command-line-usage": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/command-line-usage/-/command-line-usage-4.1.0.tgz",
"integrity": "sha512-MxS8Ad995KpdAC0Jopo/ovGIroV/m0KHwzKfXxKag6FHOkGsH8/lv5yjgablcRxCJJC0oJeUMuO/gmaq+Wq46g==",
"dev": true,
"dependencies": {
"ansi-escape-sequences": "^4.0.0",
"array-back": "^2.0.0",
"table-layout": "^0.4.2",
"typical": "^2.6.1"
},
"engines": {
"node": ">=4.0.0"
}
},
"node_modules/command-line-usage/node_modules/array-back": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/array-back/-/array-back-2.0.0.tgz",
"integrity": "sha512-eJv4pLLufP3g5kcZry0j6WXpIbzYw9GUB4mVJZno9wfwiBxbizTnHCw3VJb07cBihbFX48Y7oSrW9y+gt4glyw==",
"dev": true,
"dependencies": {
"typical": "^2.6.1"
},
"engines": {
"node": ">=4"
}
},
"node_modules/common-sequence": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/common-sequence/-/common-sequence-2.0.2.tgz",
"integrity": "sha512-jAg09gkdkrDO9EWTdXfv80WWH3yeZl5oT69fGfedBNS9pXUKYInVJ1bJ+/ht2+Moeei48TmSbQDYMc8EOx9G0g==",
"dev": true,
"engines": {
"node": ">=8"
}
},
"node_modules/concat-map": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
"integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
"dev": true
},
"node_modules/config-master": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/config-master/-/config-master-3.1.0.tgz",
"integrity": "sha512-n7LBL1zBzYdTpF1mx5DNcZnZn05CWIdsdvtPL4MosvqbBUK3Rq6VWEtGUuF3Y0s9/CIhMejezqlSkP6TnCJ/9g==",
"dev": true,
"dependencies": {
"walk-back": "^2.0.1"
}
},
"node_modules/config-master/node_modules/walk-back": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/walk-back/-/walk-back-2.0.1.tgz",
"integrity": "sha512-Nb6GvBR8UWX1D+Le+xUq0+Q1kFmRBIWVrfLnQAOmcpEzA9oAxwJ9gIr36t9TWYfzvWRvuMtjHiVsJYEkXWaTAQ==",
"dev": true,
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/content-disposition": {
"version": "0.5.4",
"resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz",
@@ -1140,6 +1321,15 @@
"node": ">=6"
}
},
"node_modules/deep-extend": {
"version": "0.6.0",
"resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz",
"integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==",
"dev": true,
"engines": {
"node": ">=4.0.0"
}
},
"node_modules/deep-is": {
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz",
@@ -1226,6 +1416,29 @@
"url": "https://github.com/discordjs/discord.js?sponsor"
}
},
"node_modules/dmd": {
"version": "6.2.3",
"resolved": "https://registry.npmjs.org/dmd/-/dmd-6.2.3.tgz",
"integrity": "sha512-SIEkjrG7cZ9GWZQYk/mH+mWtcRPly/3ibVuXO/tP/MFoWz6KiRK77tSMq6YQBPl7RljPtXPQ/JhxbNuCdi1bNw==",
"dev": true,
"dependencies": {
"array-back": "^6.2.2",
"cache-point": "^2.0.0",
"common-sequence": "^2.0.2",
"file-set": "^4.0.2",
"handlebars": "^4.7.8",
"marked": "^4.3.0",
"object-get": "^2.1.1",
"reduce-flatten": "^3.0.1",
"reduce-unique": "^2.0.1",
"reduce-without": "^1.0.1",
"test-value": "^3.0.0",
"walk-back": "^5.1.0"
},
"engines": {
"node": ">=12"
}
},
"node_modules/dom-serializer": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz",
@@ -1858,6 +2071,71 @@
"node": ">=16.0.0"
}
},
"node_modules/file-set": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/file-set/-/file-set-4.0.2.tgz",
"integrity": "sha512-fuxEgzk4L8waGXaAkd8cMr73Pm0FxOVkn8hztzUW7BAHhOGH90viQNXbiOsnecCWmfInqU6YmAMwxRMdKETceQ==",
"dev": true,
"dependencies": {
"array-back": "^5.0.0",
"glob": "^7.1.6"
},
"engines": {
"node": ">=10"
}
},
"node_modules/file-set/node_modules/array-back": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/array-back/-/array-back-5.0.0.tgz",
"integrity": "sha512-kgVWwJReZWmVuWOQKEOohXKJX+nD02JAZ54D1RRWlv8L0NebauKAaFxACKzB74RTclt1+WNz5KHaLRDAPZbDEw==",
"dev": true,
"engines": {
"node": ">=10"
}
},
"node_modules/file-set/node_modules/brace-expansion": {
"version": "1.1.11",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
"integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
"dev": true,
"dependencies": {
"balanced-match": "^1.0.0",
"concat-map": "0.0.1"
}
},
"node_modules/file-set/node_modules/glob": {
"version": "7.2.3",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
"integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
"deprecated": "Glob versions prior to v9 are no longer supported",
"dev": true,
"dependencies": {
"fs.realpath": "^1.0.0",
"inflight": "^1.0.4",
"inherits": "2",
"minimatch": "^3.1.1",
"once": "^1.3.0",
"path-is-absolute": "^1.0.0"
},
"engines": {
"node": "*"
},
"funding": {
"url": "https://github.com/sponsors/isaacs"
}
},
"node_modules/file-set/node_modules/minimatch": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
"integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
"dev": true,
"dependencies": {
"brace-expansion": "^1.1.7"
},
"engines": {
"node": "*"
}
},
"node_modules/fill-range": {
"version": "7.1.1",
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
@@ -1887,6 +2165,27 @@
"node": ">= 0.8"
}
},
"node_modules/find-replace": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/find-replace/-/find-replace-3.0.0.tgz",
"integrity": "sha512-6Tb2myMioCAgv5kfvP5/PkZZ/ntTpVK39fHY7WkWBgvbeE+VHd/tZuZ4mrC+bxh4cfOZeYKVPaJIZtZXV7GNCQ==",
"dev": true,
"dependencies": {
"array-back": "^3.0.1"
},
"engines": {
"node": ">=4.0.0"
}
},
"node_modules/find-replace/node_modules/array-back": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/array-back/-/array-back-3.1.0.tgz",
"integrity": "sha512-TkuxA4UCOvxuDK6NZYXCalszEzj+TLszyASooky+i742l9TqsOdYCMJJupxRic61hwquNtppB3hgcuq9SVSH1Q==",
"dev": true,
"engines": {
"node": ">=6"
}
},
"node_modules/find-up": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz",
@@ -1985,6 +2284,15 @@
"node": ">= 0.6"
}
},
"node_modules/fs-then-native": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/fs-then-native/-/fs-then-native-2.0.0.tgz",
"integrity": "sha512-X712jAOaWXkemQCAmWeg5rOT2i+KOpWz1Z/txk/cW0qlOu2oQ9H61vc5w3X/iyuUEfq/OyaFJ78/cZAQD1/bgA==",
"dev": true,
"engines": {
"node": ">=4.0.0"
}
},
"node_modules/fs.realpath": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
@@ -2110,6 +2418,27 @@
"integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==",
"dev": true
},
"node_modules/handlebars": {
"version": "4.7.8",
"resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.8.tgz",
"integrity": "sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==",
"dev": true,
"dependencies": {
"minimist": "^1.2.5",
"neo-async": "^2.6.2",
"source-map": "^0.6.1",
"wordwrap": "^1.0.0"
},
"bin": {
"handlebars": "bin/handlebars"
},
"engines": {
"node": ">=0.4.7"
},
"optionalDependencies": {
"uglify-js": "^3.1.4"
}
},
"node_modules/has-flag": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
@@ -2400,6 +2729,63 @@
"node": ">=12.0.0"
}
},
"node_modules/jsdoc-api": {
"version": "8.1.1",
"resolved": "https://registry.npmjs.org/jsdoc-api/-/jsdoc-api-8.1.1.tgz",
"integrity": "sha512-yas9E4h8NHp1CTEZiU/DPNAvLoUcip+Hl8Xi1RBYzHqSrgsF+mImAZNtwymrXvgbrgl4bNGBU9syulM0JzFeHQ==",
"dev": true,
"dependencies": {
"array-back": "^6.2.2",
"cache-point": "^2.0.0",
"collect-all": "^1.0.4",
"file-set": "^4.0.2",
"fs-then-native": "^2.0.0",
"jsdoc": "^4.0.3",
"object-to-spawn-args": "^2.0.1",
"temp-path": "^1.0.0",
"walk-back": "^5.1.0"
},
"engines": {
"node": ">=12.17"
}
},
"node_modules/jsdoc-parse": {
"version": "6.2.1",
"resolved": "https://registry.npmjs.org/jsdoc-parse/-/jsdoc-parse-6.2.1.tgz",
"integrity": "sha512-9viGRUUtWOk/G4V0+nQ6rfLucz5plxh5I74WbNSNm9h9NWugCDVX4jbG8hZP9QqKGpdTPDE+qJXzaYNos3wqTA==",
"dev": true,
"dependencies": {
"array-back": "^6.2.2",
"lodash.omit": "^4.5.0",
"reduce-extract": "^1.0.0",
"sort-array": "^4.1.5",
"test-value": "^3.0.0"
},
"engines": {
"node": ">=12"
}
},
"node_modules/jsdoc-to-markdown": {
"version": "8.0.3",
"resolved": "https://registry.npmjs.org/jsdoc-to-markdown/-/jsdoc-to-markdown-8.0.3.tgz",
"integrity": "sha512-JGYYd5xygnQt1DIxH+HUI+X/ynL8qWihzIF0n15NSCNtM6MplzawURRcaLI2WkiS2hIjRIgsphCOfM7FkaWiNg==",
"dev": true,
"dependencies": {
"array-back": "^6.2.2",
"command-line-tool": "^0.8.0",
"config-master": "^3.1.0",
"dmd": "^6.2.3",
"jsdoc-api": "^8.1.1",
"jsdoc-parse": "^6.2.1",
"walk-back": "^5.1.0"
},
"bin": {
"jsdoc2md": "bin/cli.js"
},
"engines": {
"node": ">=12.17"
}
},
"node_modules/jsdoc/node_modules/escape-string-regexp": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz",
@@ -2487,6 +2873,12 @@
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
},
"node_modules/lodash.camelcase": {
"version": "4.3.0",
"resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz",
"integrity": "sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==",
"dev": true
},
"node_modules/lodash.clonedeep": {
"version": "4.5.0",
"resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz",
@@ -2498,6 +2890,18 @@
"integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==",
"dev": true
},
"node_modules/lodash.omit": {
"version": "4.5.0",
"resolved": "https://registry.npmjs.org/lodash.omit/-/lodash.omit-4.5.0.tgz",
"integrity": "sha512-XeqSp49hNGmlkj2EJlfrQFIzQ6lXdNro9sddtQzcJY8QaoC2GO0DT7xaIokHeyM+mIT0mPMlPvkYzg2xCuHdZg==",
"dev": true
},
"node_modules/lodash.padend": {
"version": "4.6.1",
"resolved": "https://registry.npmjs.org/lodash.padend/-/lodash.padend-4.6.1.tgz",
"integrity": "sha512-sOQs2aqGpbl27tmCS1QNZA09Uqp01ZzWfDUoD+xzTii0E7dSQfRKcRetFwa+uXaxaqL+TKm7CgD2JdKP7aZBSw==",
"dev": true
},
"node_modules/lodash.snakecase": {
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/lodash.snakecase/-/lodash.snakecase-4.1.1.tgz",
@@ -2646,6 +3050,15 @@
"node": ">=10"
}
},
"node_modules/minimist": {
"version": "1.2.8",
"resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz",
"integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==",
"dev": true,
"funding": {
"url": "https://github.com/sponsors/ljharb"
}
},
"node_modules/mkdirp": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
@@ -2658,6 +3071,12 @@
"node": ">=10"
}
},
"node_modules/mkdirp2": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/mkdirp2/-/mkdirp2-1.0.5.tgz",
"integrity": "sha512-xOE9xbICroUDmG1ye2h4bZ8WBie9EGmACaco8K8cx6RlkJJrxGIqjGqztAI+NMhexXBcdGbSEzI6N3EJPevxZw==",
"dev": true
},
"node_modules/mocha": {
"version": "10.4.0",
"resolved": "https://registry.npmjs.org/mocha/-/mocha-10.4.0.tgz",
@@ -2821,6 +3240,12 @@
"node": ">= 0.6"
}
},
"node_modules/neo-async": {
"version": "2.6.2",
"resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz",
"integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==",
"dev": true
},
"node_modules/node-domexception": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz",
@@ -2914,6 +3339,12 @@
"node": ">=0.10.0"
}
},
"node_modules/object-get": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/object-get/-/object-get-2.1.1.tgz",
"integrity": "sha512-7n4IpLMzGGcLEMiQKsNR7vCe+N5E9LORFrtNUVy4sO3dj9a3HedZCxEL2T7QuLhcHN1NBuBsMOKaOsAYI9IIvg==",
"dev": true
},
"node_modules/object-inspect": {
"version": "1.13.1",
"resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz",
@@ -2922,6 +3353,15 @@
"url": "https://github.com/sponsors/ljharb"
}
},
"node_modules/object-to-spawn-args": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/object-to-spawn-args/-/object-to-spawn-args-2.0.1.tgz",
"integrity": "sha512-6FuKFQ39cOID+BMZ3QaphcC8Y4cw6LXBLyIgPU+OhIYwviJamPAn+4mITapnSBQrejB+NNp+FMskhD8Cq+Ys3w==",
"dev": true,
"engines": {
"node": ">=8.0.0"
}
},
"node_modules/on-finished": {
"version": "2.4.1",
"resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz",
@@ -3052,6 +3492,15 @@
"node": ">=8"
}
},
"node_modules/path-is-absolute": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
"integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==",
"dev": true,
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/path-key": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
@@ -3229,6 +3678,98 @@
"node": ">=8.10.0"
}
},
"node_modules/reduce-extract": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/reduce-extract/-/reduce-extract-1.0.0.tgz",
"integrity": "sha512-QF8vjWx3wnRSL5uFMyCjDeDc5EBMiryoT9tz94VvgjKfzecHAVnqmXAwQDcr7X4JmLc2cjkjFGCVzhMqDjgR9g==",
"dev": true,
"dependencies": {
"test-value": "^1.0.1"
},
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/reduce-extract/node_modules/array-back": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/array-back/-/array-back-1.0.4.tgz",
"integrity": "sha512-1WxbZvrmyhkNoeYcizokbmh5oiOCIfyvGtcqbK3Ls1v1fKcquzxnQSceOx6tzq7jmai2kFLWIpGND2cLhH6TPw==",
"dev": true,
"dependencies": {
"typical": "^2.6.0"
},
"engines": {
"node": ">=0.12.0"
}
},
"node_modules/reduce-extract/node_modules/test-value": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/test-value/-/test-value-1.1.0.tgz",
"integrity": "sha512-wrsbRo7qP+2Je8x8DsK8ovCGyxe3sYfQwOraIY/09A2gFXU9DYKiTF14W4ki/01AEh56kMzAmlj9CaHGDDUBJA==",
"dev": true,
"dependencies": {
"array-back": "^1.0.2",
"typical": "^2.4.2"
},
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/reduce-flatten": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/reduce-flatten/-/reduce-flatten-3.0.1.tgz",
"integrity": "sha512-bYo+97BmUUOzg09XwfkwALt4PQH1M5L0wzKerBt6WLm3Fhdd43mMS89HiT1B9pJIqko/6lWx3OnV4J9f2Kqp5Q==",
"dev": true,
"engines": {
"node": ">=8"
}
},
"node_modules/reduce-unique": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/reduce-unique/-/reduce-unique-2.0.1.tgz",
"integrity": "sha512-x4jH/8L1eyZGR785WY+ePtyMNhycl1N2XOLxhCbzZFaqF4AXjLzqSxa2UHgJ2ZVR/HHyPOvl1L7xRnW8ye5MdA==",
"dev": true,
"engines": {
"node": ">=6"
}
},
"node_modules/reduce-without": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/reduce-without/-/reduce-without-1.0.1.tgz",
"integrity": "sha512-zQv5y/cf85sxvdrKPlfcRzlDn/OqKFThNimYmsS3flmkioKvkUGn2Qg9cJVoQiEvdxFGLE0MQER/9fZ9sUqdxg==",
"dev": true,
"dependencies": {
"test-value": "^2.0.0"
},
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/reduce-without/node_modules/array-back": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/array-back/-/array-back-1.0.4.tgz",
"integrity": "sha512-1WxbZvrmyhkNoeYcizokbmh5oiOCIfyvGtcqbK3Ls1v1fKcquzxnQSceOx6tzq7jmai2kFLWIpGND2cLhH6TPw==",
"dev": true,
"dependencies": {
"typical": "^2.6.0"
},
"engines": {
"node": ">=0.12.0"
}
},
"node_modules/reduce-without/node_modules/test-value": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/test-value/-/test-value-2.1.0.tgz",
"integrity": "sha512-+1epbAxtKeXttkGFMTX9H42oqzOTufR1ceCF+GYA5aOmvaPq9wd4PUS8329fn2RRLGNeUkgRLnVpycjx8DsO2w==",
"dev": true,
"dependencies": {
"array-back": "^1.0.3",
"typical": "^2.6.0"
},
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/require-directory": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
@@ -3604,6 +4145,46 @@
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
"integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
},
"node_modules/sort-array": {
"version": "4.1.5",
"resolved": "https://registry.npmjs.org/sort-array/-/sort-array-4.1.5.tgz",
"integrity": "sha512-Ya4peoS1fgFN42RN1REk2FgdNOeLIEMKFGJvs7VTP3OklF8+kl2SkpVliZ4tk/PurWsrWRsdNdU+tgyOBkB9sA==",
"dev": true,
"dependencies": {
"array-back": "^5.0.0",
"typical": "^6.0.1"
},
"engines": {
"node": ">=10"
}
},
"node_modules/sort-array/node_modules/array-back": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/array-back/-/array-back-5.0.0.tgz",
"integrity": "sha512-kgVWwJReZWmVuWOQKEOohXKJX+nD02JAZ54D1RRWlv8L0NebauKAaFxACKzB74RTclt1+WNz5KHaLRDAPZbDEw==",
"dev": true,
"engines": {
"node": ">=10"
}
},
"node_modules/sort-array/node_modules/typical": {
"version": "6.0.1",
"resolved": "https://registry.npmjs.org/typical/-/typical-6.0.1.tgz",
"integrity": "sha512-+g3NEp7fJLe9DPa1TArHm9QAA7YciZmWnfAqEaFrBihQ7epOv9i99rjtgb6Iz0wh3WuQDjsCTDfgRoGnmHN81A==",
"dev": true,
"engines": {
"node": ">=10"
}
},
"node_modules/source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true,
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/sparse-bitfield": {
"version": "3.0.3",
"resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz",
@@ -3620,6 +4201,39 @@
"node": ">= 0.8"
}
},
"node_modules/stream-connect": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/stream-connect/-/stream-connect-1.0.2.tgz",
"integrity": "sha512-68Kl+79cE0RGKemKkhxTSg8+6AGrqBt+cbZAXevg2iJ6Y3zX4JhA/sZeGzLpxW9cXhmqAcE7KnJCisUmIUfnFQ==",
"dev": true,
"dependencies": {
"array-back": "^1.0.2"
},
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/stream-connect/node_modules/array-back": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/array-back/-/array-back-1.0.4.tgz",
"integrity": "sha512-1WxbZvrmyhkNoeYcizokbmh5oiOCIfyvGtcqbK3Ls1v1fKcquzxnQSceOx6tzq7jmai2kFLWIpGND2cLhH6TPw==",
"dev": true,
"dependencies": {
"typical": "^2.6.0"
},
"engines": {
"node": ">=0.12.0"
}
},
"node_modules/stream-via": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/stream-via/-/stream-via-1.0.4.tgz",
"integrity": "sha512-DBp0lSvX5G9KGRDTkR/R+a29H+Wk2xItOF+MpZLLNDWbEV9tGPnqLPxHEYjmiz8xGtJHRIqmI+hCjmNzqoA4nQ==",
"dev": true,
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/string-width": {
"version": "4.2.3",
"resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
@@ -3689,6 +4303,65 @@
"url": "https://opencollective.com/unts"
}
},
"node_modules/table-layout": {
"version": "0.4.5",
"resolved": "https://registry.npmjs.org/table-layout/-/table-layout-0.4.5.tgz",
"integrity": "sha512-zTvf0mcggrGeTe/2jJ6ECkJHAQPIYEwDoqsiqBjI24mvRmQbInK5jq33fyypaCBxX08hMkfmdOqj6haT33EqWw==",
"dev": true,
"dependencies": {
"array-back": "^2.0.0",
"deep-extend": "~0.6.0",
"lodash.padend": "^4.6.1",
"typical": "^2.6.1",
"wordwrapjs": "^3.0.0"
},
"engines": {
"node": ">=4.0.0"
}
},
"node_modules/table-layout/node_modules/array-back": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/array-back/-/array-back-2.0.0.tgz",
"integrity": "sha512-eJv4pLLufP3g5kcZry0j6WXpIbzYw9GUB4mVJZno9wfwiBxbizTnHCw3VJb07cBihbFX48Y7oSrW9y+gt4glyw==",
"dev": true,
"dependencies": {
"typical": "^2.6.1"
},
"engines": {
"node": ">=4"
}
},
"node_modules/temp-path": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/temp-path/-/temp-path-1.0.0.tgz",
"integrity": "sha512-TvmyH7kC6ZVTYkqCODjJIbgvu0FKiwQpZ4D1aknE7xpcDf/qEOB8KZEK5ef2pfbVoiBhNWs3yx4y+ESMtNYmlg==",
"dev": true
},
"node_modules/test-value": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/test-value/-/test-value-3.0.0.tgz",
"integrity": "sha512-sVACdAWcZkSU9x7AOmJo5TqE+GyNJknHaHsMrR6ZnhjVlVN9Yx6FjHrsKZ3BjIpPCT68zYesPWkakrNupwfOTQ==",
"dev": true,
"dependencies": {
"array-back": "^2.0.0",
"typical": "^2.6.1"
},
"engines": {
"node": ">=4.0.0"
}
},
"node_modules/test-value/node_modules/array-back": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/array-back/-/array-back-2.0.0.tgz",
"integrity": "sha512-eJv4pLLufP3g5kcZry0j6WXpIbzYw9GUB4mVJZno9wfwiBxbizTnHCw3VJb07cBihbFX48Y7oSrW9y+gt4glyw==",
"dev": true,
"dependencies": {
"typical": "^2.6.1"
},
"engines": {
"node": ">=4"
}
},
"node_modules/text-table": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
@@ -3769,12 +4442,31 @@
"node": ">= 0.6"
}
},
"node_modules/typical": {
"version": "2.6.1",
"resolved": "https://registry.npmjs.org/typical/-/typical-2.6.1.tgz",
"integrity": "sha512-ofhi8kjIje6npGozTip9Fr8iecmYfEbS06i0JnIg+rh51KakryWF4+jX8lLKZVhy6N+ID45WYSFCxPOdTWCzNg==",
"dev": true
},
"node_modules/uc.micro": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-2.1.0.tgz",
"integrity": "sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==",
"dev": true
},
"node_modules/uglify-js": {
"version": "3.19.2",
"resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.19.2.tgz",
"integrity": "sha512-S8KA6DDI47nQXJSi2ctQ629YzwOVs+bQML6DAtvy0wgNdpi+0ySpQK0g2pxBq2xfF2z3YCscu7NNA8nXT9PlIQ==",
"dev": true,
"optional": true,
"bin": {
"uglifyjs": "bin/uglifyjs"
},
"engines": {
"node": ">=0.8.0"
}
},
"node_modules/underscore": {
"version": "1.13.7",
"resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.7.tgz",
@@ -3835,6 +4527,15 @@
"node": ">= 0.8"
}
},
"node_modules/walk-back": {
"version": "5.1.0",
"resolved": "https://registry.npmjs.org/walk-back/-/walk-back-5.1.0.tgz",
"integrity": "sha512-Uhxps5yZcVNbLEAnb+xaEEMdgTXl9qAQDzKYejG2AZ7qPwRQ81lozY9ECDbjLPNWm7YsO1IK5rsP1KoQzXAcGA==",
"dev": true,
"engines": {
"node": ">=12.17"
}
},
"node_modules/web-streams-polyfill": {
"version": "3.3.3",
"resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.3.3.tgz",
@@ -3887,6 +4588,34 @@
"node": ">=0.10.0"
}
},
"node_modules/wordwrap": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz",
"integrity": "sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==",
"dev": true
},
"node_modules/wordwrapjs": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/wordwrapjs/-/wordwrapjs-3.0.0.tgz",
"integrity": "sha512-mO8XtqyPvykVCsrwj5MlOVWvSnCdT+C+QVbm6blradR7JExAhbkZ7hZ9A+9NUtwzSqrlUo9a67ws0EiILrvRpw==",
"dev": true,
"dependencies": {
"reduce-flatten": "^1.0.1",
"typical": "^2.6.1"
},
"engines": {
"node": ">=4.0.0"
}
},
"node_modules/wordwrapjs/node_modules/reduce-flatten": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/reduce-flatten/-/reduce-flatten-1.0.1.tgz",
"integrity": "sha512-j5WfFJfc9CoXv/WbwVLHq74i/hdTUpy+iNC534LxczMRP67vJeK3V9JOdnL0N1cIRbn9mYhE2yVjvvKXDxvNXQ==",
"dev": true,
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/workerpool": {
"version": "6.2.1",
"resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.2.1.tgz",

View File

@@ -2,12 +2,13 @@
"name": "drb-server",
"version": "3.0.0",
"description": "",
"main": "server.js",
"main": "src/server.js",
"scripts": {
"docs": "jsdoc2md -c jsdoc.conf src/**/*.mjs >> Home.md",
"lint": "eslint .",
"lint:fix": "eslint --fix .",
"test": "mocha --timeout 5000",
"start": "node server.js"
"start": "node src/server.js"
},
"author": "Logan Cusano",
"license": "ISC",
@@ -18,7 +19,7 @@
"eslint-config-prettier": "^9.1.0",
"eslint-plugin-prettier": "^5.2.1",
"eslint-plugin-unused-imports": "^4.1.3",
"jsdoc": "^4.0.3",
"jsdoc-to-markdown": "^8.0.3",
"mocha": "^10.4.0",
"prettier": "^3.3.3",
"socket.io-client": "^4.7.5"

View File

@@ -4,10 +4,13 @@ import {
} from "../../modules/mongo-wrappers/mongoConfigWrappers.mjs";
import { ActivityType, PresenceUpdateStatus } from "discord.js";
/**
* Control the presence or activity of the discord bot.
*/
class PresenceManager {
/**
* Creates an instance of PresenceManager.
* @param {import('discord.js').Client} client - The Discord client instance.
* @param {Client} client - The Discord client instance.
*/
constructor(client) {
this.client = client;

View File

@@ -4,7 +4,6 @@ import {
checkIfNodeIsConnectedToVC,
getNodeDiscordID,
getNodeDiscordUsername,
checkIfNodeHasOpenDiscordClient,
getNodeCurrentListeningSystem,
requestNodeJoinSystem,
} from "../../modules/socketServerWrappers.mjs";
@@ -86,9 +85,8 @@ export const getAvailableNodes = async (nodeIo, guildId, system) => {
openSockets.map(async (openSocket) => {
openSocket = await nodeIo.sockets.sockets.get(openSocket);
// Check if the node has an existing open client (meaning the radio is already being listened to)
const hasOpenClient = await checkIfNodeHasOpenDiscordClient(openSocket);
if (hasOpenClient) {
let currentSystem = await getNodeCurrentListeningSystem(openSocket);
let currentSystem = await getNodeCurrentListeningSystem(openSocket);
if (currentSystem) {
if (currentSystem != system.name) {
log.INFO(
"Node is listening to a different system than requested",

View File

@@ -4,11 +4,11 @@ import ioClient from "socket.io-client";
import {
deleteNodeByNuid,
getNodeByNuid,
} from "../modules/mongo-wrappers/mongoNodesWrappers.mjs";
} from "../src/modules/mongo-wrappers/mongoNodesWrappers.mjs";
import {
deleteSystemByName,
getSystemByName,
} from "../modules/mongo-wrappers/mongoSystemsWrappers.mjs";
} from "../src/modules/mongo-wrappers/mongoSystemsWrappers.mjs";
import {
nodeDisconnectWrapper,
checkIfNodeHasOpenDiscordClient,
@@ -19,8 +19,8 @@ import {
requestBotLeaveServer,
requestNodeJoinSystem,
requestNodeUpdate,
} from "../modules/socketServerWrappers.mjs";
import { nodeIo } from "../modules/socketServer.mjs";
} from "../src/modules/socketServerWrappers.mjs";
import { nodeIo } from "../src/modules/socketServer.mjs";
import dotenv from "dotenv";
dotenv.config();