Initial commit
This commit is contained in:
95
src/structures/IntegrationApplication.js
Normal file
95
src/structures/IntegrationApplication.js
Normal file
@@ -0,0 +1,95 @@
|
||||
'use strict';
|
||||
|
||||
const Application = require('./interfaces/Application');
|
||||
|
||||
/**
|
||||
* Represents an Integration's OAuth2 Application.
|
||||
* @extends {Application}
|
||||
*/
|
||||
class IntegrationApplication extends Application {
|
||||
_patch(data) {
|
||||
super._patch(data);
|
||||
|
||||
if ('bot' in data) {
|
||||
/**
|
||||
* The bot user for this application
|
||||
* @type {?User}
|
||||
*/
|
||||
this.bot = this.client.users._add(data.bot);
|
||||
} else {
|
||||
this.bot ??= null;
|
||||
}
|
||||
|
||||
if ('terms_of_service_url' in data) {
|
||||
/**
|
||||
* The URL of the application's terms of service
|
||||
* @type {?string}
|
||||
*/
|
||||
this.termsOfServiceURL = data.terms_of_service_url;
|
||||
} else {
|
||||
this.termsOfServiceURL ??= null;
|
||||
}
|
||||
|
||||
if ('privacy_policy_url' in data) {
|
||||
/**
|
||||
* The URL of the application's privacy policy
|
||||
* @type {?string}
|
||||
*/
|
||||
this.privacyPolicyURL = data.privacy_policy_url;
|
||||
} else {
|
||||
this.privacyPolicyURL ??= null;
|
||||
}
|
||||
|
||||
if ('rpc_origins' in data) {
|
||||
/**
|
||||
* The Array of RPC origin URLs
|
||||
* @type {string[]}
|
||||
*/
|
||||
this.rpcOrigins = data.rpc_origins;
|
||||
} else {
|
||||
this.rpcOrigins ??= [];
|
||||
}
|
||||
|
||||
if ('summary' in data) {
|
||||
/**
|
||||
* The application's summary
|
||||
* @type {?string}
|
||||
*/
|
||||
this.summary = data.summary;
|
||||
} else {
|
||||
this.summary ??= null;
|
||||
}
|
||||
|
||||
if ('hook' in data) {
|
||||
/**
|
||||
* Whether the application can be default hooked by the client
|
||||
* @type {?boolean}
|
||||
*/
|
||||
this.hook = data.hook;
|
||||
} else {
|
||||
this.hook ??= null;
|
||||
}
|
||||
|
||||
if ('cover_image' in data) {
|
||||
/**
|
||||
* The hash of the application's cover image
|
||||
* @type {?string}
|
||||
*/
|
||||
this.cover = data.cover_image;
|
||||
} else {
|
||||
this.cover ??= null;
|
||||
}
|
||||
|
||||
if ('verify_key' in data) {
|
||||
/**
|
||||
* The hex-encoded key for verification in interactions and the GameSDK's GetTicket
|
||||
* @type {?string}
|
||||
*/
|
||||
this.verifyKey = data.verify_key;
|
||||
} else {
|
||||
this.verifyKey ??= null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = IntegrationApplication;
|
||||
Reference in New Issue
Block a user