mirror of
https://github.com/sern-handler/handler
synced 2026-06-06 01:16:55 +00:00
fix: autocomplete in nested form (#97)
Co-authored-by: Evo <85353424+EvolutionX-10@users.noreply.github.com>
This commit is contained in:
152
package-lock.json
generated
152
package-lock.json
generated
@@ -1,15 +1,15 @@
|
||||
{
|
||||
"name": "@sern/handler",
|
||||
"version": "1.1.7-beta",
|
||||
"version": "1.1.8-beta",
|
||||
"lockfileVersion": 2,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "@sern/handler",
|
||||
"version": "1.1.7-beta",
|
||||
"version": "1.1.8-beta",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"discord.js": "^14.0.3",
|
||||
"discord.js": "^14.1.2",
|
||||
"rxjs": "^7.5.6",
|
||||
"ts-pattern": "^4.0.2",
|
||||
"ts-results": "^3.3.0"
|
||||
@@ -23,12 +23,12 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@discordjs/builders": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/@discordjs/builders/-/builders-1.0.0.tgz",
|
||||
"integrity": "sha512-8y91ZfpOHubiGJu5tVyGI9tQCEyHZDTeqUWVcJd0dq7B96xIf84S0L4fwmD1k9zTe1eqEFSk0gc7BpY+FKn7Ww==",
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/@discordjs/builders/-/builders-1.1.0.tgz",
|
||||
"integrity": "sha512-EO8TSltiIc9Z1wE854wAFvv5AccqEtvjFmao9PPoxQhRaJ0hEb7FwWRTCA1jGg4ZWI3hcp4m+RET5ufZQz3rOg==",
|
||||
"dependencies": {
|
||||
"@sapphire/shapeshift": "^3.5.1",
|
||||
"discord-api-types": "^0.36.2",
|
||||
"discord-api-types": "^0.36.3",
|
||||
"fast-deep-equal": "^3.1.3",
|
||||
"ts-mixer": "^6.0.1",
|
||||
"tslib": "^2.4.0"
|
||||
@@ -38,25 +38,25 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@discordjs/collection": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-1.0.0.tgz",
|
||||
"integrity": "sha512-nAxDQYE5dNAzEGQ7HU20sujDsG5vLowUKCEqZkKUIlrXERZFTt/60zKUj/g4+AVCGeq+pXC5hivMaNtiC+PY5Q==",
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-1.0.1.tgz",
|
||||
"integrity": "sha512-5V/wswzR3r2RVYXLxxg4TvrAnBhVCNgHTXhC+OUtLoriJ072rPMHo+Iw1SS1vrCckp8Es40XM411+WkNRPaXFw==",
|
||||
"engines": {
|
||||
"node": ">=16.9.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@discordjs/rest": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/@discordjs/rest/-/rest-1.0.0.tgz",
|
||||
"integrity": "sha512-uDAvnE0P2a8axMdD4C51EGjvCRQ2HZk2Yxf6vHWZgIqG87D8DGKMPwmquIxrrB07MjV+rwci2ObU+mGhGP+bJg==",
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/@discordjs/rest/-/rest-1.0.1.tgz",
|
||||
"integrity": "sha512-w08CTKVzzYYvKxEjXKOs9AdS7KQ1J502TrPfF8eCZ2lF6AfKuMP/32YgDakiwIyYTDjEQS/v0nKLSFcncHRMtg==",
|
||||
"dependencies": {
|
||||
"@discordjs/collection": "^1.0.0",
|
||||
"@discordjs/collection": "^1.0.1",
|
||||
"@sapphire/async-queue": "^1.3.2",
|
||||
"@sapphire/snowflake": "^3.2.2",
|
||||
"discord-api-types": "^0.36.2",
|
||||
"file-type": "^17.1.2",
|
||||
"discord-api-types": "^0.36.3",
|
||||
"file-type": "^17.1.4",
|
||||
"tslib": "^2.4.0",
|
||||
"undici": "^5.7.0"
|
||||
"undici": "^5.8.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=16.9.0"
|
||||
@@ -584,16 +584,16 @@
|
||||
"integrity": "sha512-bz/NDyG0KBo/tY14vSkrwQ/n3HKPf87a0WFW/1M9+tXYK+vp5Z5EksawfCWo2zkAc6o7CClc0eff1Pjrqznlwg=="
|
||||
},
|
||||
"node_modules/discord.js": {
|
||||
"version": "14.0.3",
|
||||
"resolved": "https://registry.npmjs.org/discord.js/-/discord.js-14.0.3.tgz",
|
||||
"integrity": "sha512-wH/VQl4CqN8/+dcXEtYis1iurqxGlDpEe0O4CqH5FGqZGIjVpTdtK0STXXx7bVNX8MT/0GvLZLkmO/5gLDWZVg==",
|
||||
"version": "14.1.2",
|
||||
"resolved": "https://registry.npmjs.org/discord.js/-/discord.js-14.1.2.tgz",
|
||||
"integrity": "sha512-apdWNLkjAkeEnuNpB8H6rS/4OgrXQlSAjuuzeodjCOdIXy3OwOjD314V/HiSttcAlr9+r3ONhaT5qvbDad5SIg==",
|
||||
"dependencies": {
|
||||
"@discordjs/builders": "^1.0.0",
|
||||
"@discordjs/collection": "^1.0.0",
|
||||
"@discordjs/rest": "^1.0.0",
|
||||
"@discordjs/builders": "^1.1.0",
|
||||
"@discordjs/collection": "^1.0.1",
|
||||
"@discordjs/rest": "^1.0.1",
|
||||
"@sapphire/snowflake": "^3.2.2",
|
||||
"@types/ws": "^8.5.3",
|
||||
"discord-api-types": "^0.36.2",
|
||||
"discord-api-types": "^0.36.3",
|
||||
"fast-deep-equal": "^3.1.3",
|
||||
"lodash.snakecase": "^4.1.1",
|
||||
"tslib": "^2.4.0",
|
||||
@@ -892,12 +892,12 @@
|
||||
}
|
||||
},
|
||||
"node_modules/file-type": {
|
||||
"version": "17.1.3",
|
||||
"resolved": "https://registry.npmjs.org/file-type/-/file-type-17.1.3.tgz",
|
||||
"integrity": "sha512-MFVSozBIhvnx2dkxlf+010Xqn6+ojlMUT9LXQiPNoOijgRtXNMghWdGK0u2o1RoCqzHoVsw65IL8ZBcQ4MhIrw==",
|
||||
"version": "17.1.5",
|
||||
"resolved": "https://registry.npmjs.org/file-type/-/file-type-17.1.5.tgz",
|
||||
"integrity": "sha512-GMZRKCpcCQgqV0L/8ZqlMZ5lLzH2GLYnAwnqen6fr8b0CHzQPP+R/vXHBOsa0m/R74gCZP3sQDpu6fUeIvyFEQ==",
|
||||
"dependencies": {
|
||||
"readable-web-to-node-stream": "^3.0.2",
|
||||
"strtok3": "^7.0.0-alpha.7",
|
||||
"strtok3": "^7.0.0-alpha.9",
|
||||
"token-types": "^5.0.0-alpha.2"
|
||||
},
|
||||
"engines": {
|
||||
@@ -1307,11 +1307,11 @@
|
||||
}
|
||||
},
|
||||
"node_modules/peek-readable": {
|
||||
"version": "5.0.0-alpha.5",
|
||||
"resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-5.0.0-alpha.5.tgz",
|
||||
"integrity": "sha512-pJohF/tDwV3ntnT5+EkUo4E700q/j/OCDuPxtM+5/kFGjyOai/sK4/We4Cy1MB2OiTQliWU5DxPvYIKQAdPqAA==",
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-5.0.0.tgz",
|
||||
"integrity": "sha512-YtCKvLUOvwtMGmrniQPdO7MwPjgkFBtFIrmfSbYmYuq3tKDV/mcfAhBth1+C3ru7uXIZasc/pHnb+YDYNkkj4A==",
|
||||
"engines": {
|
||||
"node": "^12.20.0 || ^14.13.1 || >=16.0.0"
|
||||
"node": ">=14.16"
|
||||
},
|
||||
"funding": {
|
||||
"type": "github",
|
||||
@@ -1585,15 +1585,15 @@
|
||||
}
|
||||
},
|
||||
"node_modules/strtok3": {
|
||||
"version": "7.0.0-alpha.8",
|
||||
"resolved": "https://registry.npmjs.org/strtok3/-/strtok3-7.0.0-alpha.8.tgz",
|
||||
"integrity": "sha512-u+k19v+rTxBjGYxncRQjGvZYwYvEd0uP3D+uHKe/s4WB1eXS5ZwpZsTlBu5xSS4zEd89mTXECXg6WW3FSeV8cA==",
|
||||
"version": "7.0.0",
|
||||
"resolved": "https://registry.npmjs.org/strtok3/-/strtok3-7.0.0.tgz",
|
||||
"integrity": "sha512-pQ+V+nYQdC5H3Q7qBZAz/MO6lwGhoC2gOAjuouGf/VO0m7vQRh8QNMl2Uf6SwAtzZ9bOw3UIeBukEGNJl5dtXQ==",
|
||||
"dependencies": {
|
||||
"@tokenizer/token": "^0.3.0",
|
||||
"peek-readable": "^5.0.0-alpha.5"
|
||||
"peek-readable": "^5.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^12.20.0 || ^14.13.1 || >=16.0.0"
|
||||
"node": ">=14.16"
|
||||
},
|
||||
"funding": {
|
||||
"type": "github",
|
||||
@@ -1631,15 +1631,15 @@
|
||||
}
|
||||
},
|
||||
"node_modules/token-types": {
|
||||
"version": "5.0.0-alpha.2",
|
||||
"resolved": "https://registry.npmjs.org/token-types/-/token-types-5.0.0-alpha.2.tgz",
|
||||
"integrity": "sha512-EsG9UxAW4M6VATrEEjhPFTKEUi1OiJqTUMIZOGBN49fGxYjZB36k0p7to3HZSmWRoHm1QfZgrg3e02fpqAt5fQ==",
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/token-types/-/token-types-5.0.0.tgz",
|
||||
"integrity": "sha512-cza79xW1bo4pa6/AAZoOaZTlgNCgG3oCG7LQiGrfRFVl+XZvqiyc0+ncvlz+3XDIDNf9WcaT3Hcy6n/e1Tuc9A==",
|
||||
"dependencies": {
|
||||
"@tokenizer/token": "^0.3.0",
|
||||
"ieee754": "^1.2.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^12.20.0 || ^14.13.1 || >=16.0.0"
|
||||
"node": ">=14.16"
|
||||
},
|
||||
"funding": {
|
||||
"type": "github",
|
||||
@@ -1811,34 +1811,34 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@discordjs/builders": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/@discordjs/builders/-/builders-1.0.0.tgz",
|
||||
"integrity": "sha512-8y91ZfpOHubiGJu5tVyGI9tQCEyHZDTeqUWVcJd0dq7B96xIf84S0L4fwmD1k9zTe1eqEFSk0gc7BpY+FKn7Ww==",
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/@discordjs/builders/-/builders-1.1.0.tgz",
|
||||
"integrity": "sha512-EO8TSltiIc9Z1wE854wAFvv5AccqEtvjFmao9PPoxQhRaJ0hEb7FwWRTCA1jGg4ZWI3hcp4m+RET5ufZQz3rOg==",
|
||||
"requires": {
|
||||
"@sapphire/shapeshift": "^3.5.1",
|
||||
"discord-api-types": "^0.36.2",
|
||||
"discord-api-types": "^0.36.3",
|
||||
"fast-deep-equal": "^3.1.3",
|
||||
"ts-mixer": "^6.0.1",
|
||||
"tslib": "^2.4.0"
|
||||
}
|
||||
},
|
||||
"@discordjs/collection": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-1.0.0.tgz",
|
||||
"integrity": "sha512-nAxDQYE5dNAzEGQ7HU20sujDsG5vLowUKCEqZkKUIlrXERZFTt/60zKUj/g4+AVCGeq+pXC5hivMaNtiC+PY5Q=="
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-1.0.1.tgz",
|
||||
"integrity": "sha512-5V/wswzR3r2RVYXLxxg4TvrAnBhVCNgHTXhC+OUtLoriJ072rPMHo+Iw1SS1vrCckp8Es40XM411+WkNRPaXFw=="
|
||||
},
|
||||
"@discordjs/rest": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/@discordjs/rest/-/rest-1.0.0.tgz",
|
||||
"integrity": "sha512-uDAvnE0P2a8axMdD4C51EGjvCRQ2HZk2Yxf6vHWZgIqG87D8DGKMPwmquIxrrB07MjV+rwci2ObU+mGhGP+bJg==",
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/@discordjs/rest/-/rest-1.0.1.tgz",
|
||||
"integrity": "sha512-w08CTKVzzYYvKxEjXKOs9AdS7KQ1J502TrPfF8eCZ2lF6AfKuMP/32YgDakiwIyYTDjEQS/v0nKLSFcncHRMtg==",
|
||||
"requires": {
|
||||
"@discordjs/collection": "^1.0.0",
|
||||
"@discordjs/collection": "^1.0.1",
|
||||
"@sapphire/async-queue": "^1.3.2",
|
||||
"@sapphire/snowflake": "^3.2.2",
|
||||
"discord-api-types": "^0.36.2",
|
||||
"file-type": "^17.1.2",
|
||||
"discord-api-types": "^0.36.3",
|
||||
"file-type": "^17.1.4",
|
||||
"tslib": "^2.4.0",
|
||||
"undici": "^5.7.0"
|
||||
"undici": "^5.8.0"
|
||||
}
|
||||
},
|
||||
"@eslint/eslintrc": {
|
||||
@@ -2194,16 +2194,16 @@
|
||||
"integrity": "sha512-bz/NDyG0KBo/tY14vSkrwQ/n3HKPf87a0WFW/1M9+tXYK+vp5Z5EksawfCWo2zkAc6o7CClc0eff1Pjrqznlwg=="
|
||||
},
|
||||
"discord.js": {
|
||||
"version": "14.0.3",
|
||||
"resolved": "https://registry.npmjs.org/discord.js/-/discord.js-14.0.3.tgz",
|
||||
"integrity": "sha512-wH/VQl4CqN8/+dcXEtYis1iurqxGlDpEe0O4CqH5FGqZGIjVpTdtK0STXXx7bVNX8MT/0GvLZLkmO/5gLDWZVg==",
|
||||
"version": "14.1.2",
|
||||
"resolved": "https://registry.npmjs.org/discord.js/-/discord.js-14.1.2.tgz",
|
||||
"integrity": "sha512-apdWNLkjAkeEnuNpB8H6rS/4OgrXQlSAjuuzeodjCOdIXy3OwOjD314V/HiSttcAlr9+r3ONhaT5qvbDad5SIg==",
|
||||
"requires": {
|
||||
"@discordjs/builders": "^1.0.0",
|
||||
"@discordjs/collection": "^1.0.0",
|
||||
"@discordjs/rest": "^1.0.0",
|
||||
"@discordjs/builders": "^1.1.0",
|
||||
"@discordjs/collection": "^1.0.1",
|
||||
"@discordjs/rest": "^1.0.1",
|
||||
"@sapphire/snowflake": "^3.2.2",
|
||||
"@types/ws": "^8.5.3",
|
||||
"discord-api-types": "^0.36.2",
|
||||
"discord-api-types": "^0.36.3",
|
||||
"fast-deep-equal": "^3.1.3",
|
||||
"lodash.snakecase": "^4.1.1",
|
||||
"tslib": "^2.4.0",
|
||||
@@ -2437,12 +2437,12 @@
|
||||
}
|
||||
},
|
||||
"file-type": {
|
||||
"version": "17.1.3",
|
||||
"resolved": "https://registry.npmjs.org/file-type/-/file-type-17.1.3.tgz",
|
||||
"integrity": "sha512-MFVSozBIhvnx2dkxlf+010Xqn6+ojlMUT9LXQiPNoOijgRtXNMghWdGK0u2o1RoCqzHoVsw65IL8ZBcQ4MhIrw==",
|
||||
"version": "17.1.5",
|
||||
"resolved": "https://registry.npmjs.org/file-type/-/file-type-17.1.5.tgz",
|
||||
"integrity": "sha512-GMZRKCpcCQgqV0L/8ZqlMZ5lLzH2GLYnAwnqen6fr8b0CHzQPP+R/vXHBOsa0m/R74gCZP3sQDpu6fUeIvyFEQ==",
|
||||
"requires": {
|
||||
"readable-web-to-node-stream": "^3.0.2",
|
||||
"strtok3": "^7.0.0-alpha.7",
|
||||
"strtok3": "^7.0.0-alpha.9",
|
||||
"token-types": "^5.0.0-alpha.2"
|
||||
}
|
||||
},
|
||||
@@ -2748,9 +2748,9 @@
|
||||
"dev": true
|
||||
},
|
||||
"peek-readable": {
|
||||
"version": "5.0.0-alpha.5",
|
||||
"resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-5.0.0-alpha.5.tgz",
|
||||
"integrity": "sha512-pJohF/tDwV3ntnT5+EkUo4E700q/j/OCDuPxtM+5/kFGjyOai/sK4/We4Cy1MB2OiTQliWU5DxPvYIKQAdPqAA=="
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-5.0.0.tgz",
|
||||
"integrity": "sha512-YtCKvLUOvwtMGmrniQPdO7MwPjgkFBtFIrmfSbYmYuq3tKDV/mcfAhBth1+C3ru7uXIZasc/pHnb+YDYNkkj4A=="
|
||||
},
|
||||
"picomatch": {
|
||||
"version": "2.3.1",
|
||||
@@ -2903,12 +2903,12 @@
|
||||
"dev": true
|
||||
},
|
||||
"strtok3": {
|
||||
"version": "7.0.0-alpha.8",
|
||||
"resolved": "https://registry.npmjs.org/strtok3/-/strtok3-7.0.0-alpha.8.tgz",
|
||||
"integrity": "sha512-u+k19v+rTxBjGYxncRQjGvZYwYvEd0uP3D+uHKe/s4WB1eXS5ZwpZsTlBu5xSS4zEd89mTXECXg6WW3FSeV8cA==",
|
||||
"version": "7.0.0",
|
||||
"resolved": "https://registry.npmjs.org/strtok3/-/strtok3-7.0.0.tgz",
|
||||
"integrity": "sha512-pQ+V+nYQdC5H3Q7qBZAz/MO6lwGhoC2gOAjuouGf/VO0m7vQRh8QNMl2Uf6SwAtzZ9bOw3UIeBukEGNJl5dtXQ==",
|
||||
"requires": {
|
||||
"@tokenizer/token": "^0.3.0",
|
||||
"peek-readable": "^5.0.0-alpha.5"
|
||||
"peek-readable": "^5.0.0"
|
||||
}
|
||||
},
|
||||
"supports-color": {
|
||||
@@ -2936,9 +2936,9 @@
|
||||
}
|
||||
},
|
||||
"token-types": {
|
||||
"version": "5.0.0-alpha.2",
|
||||
"resolved": "https://registry.npmjs.org/token-types/-/token-types-5.0.0-alpha.2.tgz",
|
||||
"integrity": "sha512-EsG9UxAW4M6VATrEEjhPFTKEUi1OiJqTUMIZOGBN49fGxYjZB36k0p7to3HZSmWRoHm1QfZgrg3e02fpqAt5fQ==",
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/token-types/-/token-types-5.0.0.tgz",
|
||||
"integrity": "sha512-cza79xW1bo4pa6/AAZoOaZTlgNCgG3oCG7LQiGrfRFVl+XZvqiyc0+ncvlz+3XDIDNf9WcaT3Hcy6n/e1Tuc9A==",
|
||||
"requires": {
|
||||
"@tokenizer/token": "^0.3.0",
|
||||
"ieee754": "^1.2.1"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@sern/handler",
|
||||
"version": "1.1.7-beta",
|
||||
"version": "1.1.8-beta",
|
||||
"description": "A customizable, batteries-included, powerful discord.js framework to automate and streamline bot development.",
|
||||
"main": "dist/index.js",
|
||||
"scripts": {
|
||||
@@ -21,7 +21,7 @@
|
||||
"author": "SernDevs",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"discord.js": "^14.0.3",
|
||||
"discord.js": "^14.1.2",
|
||||
"rxjs": "^7.5.6",
|
||||
"ts-pattern": "^4.0.2",
|
||||
"ts-results": "^3.3.0"
|
||||
|
||||
@@ -23,6 +23,7 @@ import type {
|
||||
} from 'discord.js';
|
||||
import { isAutocomplete } from '../utilities/predicates';
|
||||
import { SernError } from '../structures/errors';
|
||||
import treeSearch from '../utilities/treeSearch';
|
||||
|
||||
export function applicationCommandDispatcher(interaction: Interaction) {
|
||||
if (isAutocomplete(interaction)) {
|
||||
@@ -41,10 +42,9 @@ export function applicationCommandDispatcher(interaction: Interaction) {
|
||||
}
|
||||
|
||||
export function dispatchAutocomplete(interaction: AutocompleteInteraction) {
|
||||
const choice = interaction.options.getFocused(true);
|
||||
return (mod: BothCommand | SlashCommand) => {
|
||||
const selectedOption = mod.options?.find(o => o.autocomplete && o.name === choice.name);
|
||||
if (selectedOption !== undefined && selectedOption.autocomplete) {
|
||||
const selectedOption = treeSearch(interaction, mod.options);
|
||||
if (selectedOption !== undefined) {
|
||||
return {
|
||||
mod,
|
||||
execute: () => selectedOption.command.execute(interaction),
|
||||
|
||||
31
src/handler/utilities/treeSearch.ts
Normal file
31
src/handler/utilities/treeSearch.ts
Normal file
@@ -0,0 +1,31 @@
|
||||
import type { SernOptionsData } from '../structures/module';
|
||||
import { ApplicationCommandOptionType, AutocompleteInteraction } from 'discord.js';
|
||||
|
||||
export default function treeSearch(iAutocomplete: AutocompleteInteraction, options: SernOptionsData[] | undefined) {
|
||||
if(options === undefined) return undefined;
|
||||
const _options = options.slice(); // required to prevent direct mutation of options
|
||||
while ( _options.length > 0 ) {
|
||||
const cur = _options.pop()!;
|
||||
switch ( cur.type ) {
|
||||
case ApplicationCommandOptionType.Subcommand : {
|
||||
for ( const option of cur.options ?? [] ) {
|
||||
_options.push(option);
|
||||
}
|
||||
} break;
|
||||
case ApplicationCommandOptionType.SubcommandGroup : {
|
||||
for (const command of cur.options ?? []) {
|
||||
_options.push(command);
|
||||
}
|
||||
} break;
|
||||
default : {
|
||||
if(cur.autocomplete) {
|
||||
const choice = iAutocomplete.options.getFocused(true);
|
||||
if(cur.name === choice.name && cur.autocomplete) {
|
||||
return cur;
|
||||
}
|
||||
return undefined;
|
||||
}
|
||||
} break;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user