@discordeno/utils 21.0.0-next.ceec87f → 21.0.0-next.efc15e1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -11,7 +11,7 @@ Object.defineProperty(exports, "EmbedsBuilder", {
|
|
|
11
11
|
let EmbedsBuilder = class EmbedsBuilder extends Array {
|
|
12
12
|
#currentEmbedIndex;
|
|
13
13
|
/**
|
|
14
|
-
* Adds a new field to the embed
|
|
14
|
+
* Adds a new field to the current embed.
|
|
15
15
|
*
|
|
16
16
|
* @param {string} name - Field name
|
|
17
17
|
* @param {string} value - Field value
|
|
@@ -29,6 +29,18 @@ let EmbedsBuilder = class EmbedsBuilder extends Array {
|
|
|
29
29
|
return this;
|
|
30
30
|
}
|
|
31
31
|
/**
|
|
32
|
+
* Adds multiple new fields to the current embed.
|
|
33
|
+
*
|
|
34
|
+
* @param {DiscordEmbedField[]} fields - The fields to add
|
|
35
|
+
* @returns {EmbedsBuilder}
|
|
36
|
+
*/ addFields(fields) {
|
|
37
|
+
if (this.#currentEmbed.fields === undefined) {
|
|
38
|
+
this.#currentEmbed.fields = [];
|
|
39
|
+
}
|
|
40
|
+
this.#currentEmbed.fields.push(...fields);
|
|
41
|
+
return this;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
32
44
|
* Creates a blank embed.
|
|
33
45
|
*
|
|
34
46
|
* @returns {EmbedsBuilder}
|
|
@@ -288,4 +300,4 @@ let EmbedsBuilder = class EmbedsBuilder extends Array {
|
|
|
288
300
|
}
|
|
289
301
|
};
|
|
290
302
|
|
|
291
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9idWlsZGVycy9lbWJlZHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUge1xuICBEaXNjb3JkRW1iZWQsXG4gIERpc2NvcmRFbWJlZEF1dGhvcixcbiAgRGlzY29yZEVtYmVkRmllbGQsXG4gIERpc2NvcmRFbWJlZEZvb3RlcixcbiAgRGlzY29yZEVtYmVkSW1hZ2UsXG4gIERpc2NvcmRFbWJlZFRodW1ibmFpbCxcbiAgRGlzY29yZEVtYmVkVmlkZW8sXG59IGZyb20gJ0BkaXNjb3JkZW5vL3R5cGVzJ1xuXG4vKipcbiAqIEEgYnVpbGRlciB0byBoZWxwIGNyZWF0ZSBEaXNjb3JkIGVtYmVkcy5cbiAqXG4gKiBAZXhhbXBsZVxuICogY29uc3QgZW1iZWRzID0gbmV3IEVtYmVkc0J1aWxkZXIoKVxuICogIC5zZXRUaXRsZSgnTXkgRW1iZWQnKVxuICogIC5zZXREZXNjcmlwdGlvbignVGhpcyBpcyBteSBuZXcgZW1iZWQnKVxuICogIC5uZXdFbWJlZCgpXG4gKiAgLnNldFRpdGxlKCdNeSBTZWNvbmQgRW1iZWQnKVxuICovXG5leHBvcnQgY2xhc3MgRW1iZWRzQnVpbGRlciBleHRlbmRzIEFycmF5PERpc2NvcmRFbWJlZD4ge1xuICAjY3VycmVudEVtYmVkSW5kZXg6IG51bWJlciA9IDBcblxuICAvKipcbiAgICogQWRkcyBhIG5ldyBmaWVsZCB0byB0aGUgZW1iZWQgZmllbGRzIGFycmF5LlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gbmFtZSAtIEZpZWxkIG5hbWVcbiAgICogQHBhcmFtIHtzdHJpbmd9IHZhbHVlIC0gRmllbGQgdmFsdWVcbiAgICogQHBhcmFtIHs/Ym9vbGVhbn0gW2lubGluZT1mYWxzZV0gLSBGaWVsZCBzaG91bGQgYmUgaW5saW5lIG9yIG5vdC5cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBhZGRGaWVsZChuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcsIGlubGluZT86IGJvb2xlYW4pOiB0aGlzIHtcbiAgICBpZiAodGhpcy4jY3VycmVudEVtYmVkLmZpZWxkcyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLiNjdXJyZW50RW1iZWQuZmllbGRzID0gW11cbiAgICB9XG5cbiAgICB0aGlzLiNjdXJyZW50RW1iZWQuZmllbGRzLnB1c2goe1xuICAgICAgbmFtZSxcbiAgICAgIHZhbHVlLFxuICAgICAgaW5saW5lLFxuICAgIH0pXG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBibGFuayBlbWJlZC5cbiAgICpcbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBuZXdFbWJlZCgpOiB0aGlzIHtcbiAgICBpZiAodGhpcy5sZW5ndGggPj0gMTApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignTWF4aW11bSBlbWJlZCBjb3VudCBleGNlZWRlZC4gWW91IGNhbiBub3QgaGF2ZSBtb3JlIHRoYW4gMTAgZW1iZWRzLicpXG4gICAgfVxuXG4gICAgdGhpcy5wdXNoKHt9KVxuICAgIHRoaXMuc2V0Q3VycmVudEVtYmVkKClcblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBjdXJyZW50IGVtYmVkIGF1dGhvci5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IG5hbWUgLSBOYW1lIG9mIHRoZSBhdXRob3JcbiAgICogQHBhcmFtIHs/T21pdDxEaXNjb3JkRW1iZWRBdXRob3IsICduYW1lJz59IFtvcHRpb25zXSAtIEV4dHJhIGF1dGhvciBvcHRpb25zXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0QXV0aG9yKG5hbWU6IHN0cmluZywgb3B0aW9ucz86IE9taXQ8RGlzY29yZEVtYmVkQXV0aG9yLCAnbmFtZSc+KTogdGhpcyB7XG4gICAgdGhpcy4jY3VycmVudEVtYmVkLmF1dGhvciA9IHtcbiAgICAgIC4uLnRoaXMuI2N1cnJlbnRFbWJlZC5hdXRob3IsXG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgbmFtZSxcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgY29sb3Igb24gdGhlIHNpZGUgb2YgdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7KG51bWJlciB8IHN0cmluZyl9IGNvbG9yIC0gVGhlIGNvbG9yLCBpbiBiYXNlMTYgb3IgaGV4IGNvbG9yIGNvZGVcbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRDb2xvcihjb2xvcjogbnVtYmVyIHwgc3RyaW5nKTogdGhpcyB7XG4gICAgaWYgKHR5cGVvZiBjb2xvciA9PT0gJ3N0cmluZycpIHtcbiAgICAgIGNvbnN0IGNvbnZlcnRlZFZhbHVlID0gcGFyc2VJbnQoY29sb3IucmVwbGFjZSgnIycsICcnKSwgMTYpXG4gICAgICBjb2xvciA9IE51bWJlci5pc05hTihjb252ZXJ0ZWRWYWx1ZSkgPyAwIDogY29udmVydGVkVmFsdWVcbiAgICB9XG5cbiAgICB0aGlzLiNjdXJyZW50RW1iZWQuY29sb3IgPSBjb2xvclxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIGN1cnJlbnQgZW1iZWQgdG8gYSBkaWZmZXJlbnQgaW5kZXguXG4gICAqXG4gICAqIFdBUk5JTkc6IE9ubHkgdXNlIHRoaXMgbWV0aG9kIGlmIHlvdSBrbm93IHdoYXQgeW91J3JlIGRvaW5nLiBNYWtlIHN1cmUgdG8gc2V0IGl0IGJhY2sgdG8gdGhlIGxhdGVzdCB3aGVuIHlvdSdyZSBkb25lLlxuICAgKlxuICAgKiBAcGFyYW0gez9udW1iZXJ9IFtpbmRleF0gLSBUaGUgaW5kZXggb2YgdGhlIGVtYmVkIGluIHRoZSBFbWJlZHNCdWlsZGVyIGFycmF5XG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0Q3VycmVudEVtYmVkKGluZGV4PzogbnVtYmVyKTogdGhpcyB7XG4gICAgaWYgKGluZGV4ID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMuI2N1cnJlbnRFbWJlZEluZGV4ID0gdGhpcy5sZW5ndGggLSAxXG5cbiAgICAgIHJldHVybiB0aGlzXG4gICAgfVxuXG4gICAgaWYgKGluZGV4ID49IHRoaXMubGVuZ3RoIHx8IGluZGV4IDwgMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdDYW4gbm90IHNldCB0aGUgY3VycmVudCBlbWJlZCB0byBhIGluZGV4IG91dCBvZiBib3VuZHMuJylcbiAgICB9XG5cbiAgICB0aGlzLiNjdXJyZW50RW1iZWRJbmRleCA9IGluZGV4XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgZGVzY3JpcHRpb24gb2YgdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBkZXNjcmlwdGlvbiAtIERlc2NyaXB0aW9uXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0RGVzY3JpcHRpb24oZGVzY3JpcHRpb246IHN0cmluZyk6IHRoaXMge1xuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC5kZXNjcmlwdGlvbiA9IGRlc2NyaXB0aW9uXG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIE92ZXJ3cml0ZSBhbGwgZmllbGRzIG9uIHRoZSBjdXJyZW50IGVtYmVkLlxuICAgKlxuICAgKiBAcGFyYW0ge0Rpc2NvcmRFbWJlZEZpZWxkW119IGZpZWxkc1xuICAgKiBAcmV0dXJucyB7RW1iZWRzQnVpbGRlcn1cbiAgICovXG4gIHNldEZpZWxkcyhmaWVsZHM6IERpc2NvcmRFbWJlZEZpZWxkW10pOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQuZmllbGRzID0gZmllbGRzXG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgZm9vdGVyIGluIHRoZSBjdXJyZW50IGVtYmVkLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gdGV4dCAtIFRoZSB0ZXh0IHRvIGRpc3BsYXkgaW4gdGhlIGZvb3RlclxuICAgKiBAcGFyYW0gez9PbWl0PERpc2NvcmRFbWJlZEZvb3RlciwgJ3RleHQnPn0gW29wdGlvbnNdXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0Rm9vdGVyKHRleHQ6IHN0cmluZywgb3B0aW9ucz86IE9taXQ8RGlzY29yZEVtYmVkRm9vdGVyLCAndGV4dCc+KTogdGhpcyB7XG4gICAgdGhpcy4jY3VycmVudEVtYmVkLmZvb3RlciA9IHtcbiAgICAgIC4uLnRoaXMuI2N1cnJlbnRFbWJlZC5mb290ZXIsXG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgdGV4dCxcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgaW1hZ2UgaW4gdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB1cmwgLSBVUkwgb2YgdGhlIGltYWdlXG4gICAqIEBwYXJhbSB7P09taXQ8RGlzY29yZEVtYmVkSW1hZ2UsICd1cmwnPn0gW29wdGlvbnNdXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0SW1hZ2UodXJsOiBzdHJpbmcsIG9wdGlvbnM/OiBPbWl0PERpc2NvcmRFbWJlZEltYWdlLCAndXJsJz4pOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQuaW1hZ2UgPSB7XG4gICAgICAuLi50aGlzLiNjdXJyZW50RW1iZWQuaW1hZ2UsXG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgdXJsLFxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBwcm92aWRlciBvZiB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IG5hbWVcbiAgICogQHBhcmFtIHs/c3RyaW5nfSBbdXJsXVxuICAgKiBAcmV0dXJucyB7RW1iZWRzQnVpbGRlcn1cbiAgICovXG4gIHNldFByb3ZpZGVyKG5hbWU6IHN0cmluZywgdXJsPzogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy4jY3VycmVudEVtYmVkLnByb3ZpZGVyID0ge1xuICAgICAgbmFtZSxcbiAgICAgIHVybCxcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgY29sb3Igb2YgdGhlIGN1cnJlbnQgZW1iZWQgdG8gYSByYW5kb20gdmFsdWUuXG4gICAqXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0UmFuZG9tQ29sb3IoKTogdGhpcyB7XG4gICAgcmV0dXJuIHRoaXMuc2V0Q29sb3IoTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogKDB4ZmZmZmZmICsgMSkpKVxuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgdGl0bGUgb2YgdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB0aXRsZVxuICAgKiBAcGFyYW0gez9zdHJpbmd9IFt1cmxdXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0VGl0bGUodGl0bGU6IHN0cmluZywgdXJsPzogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy4jY3VycmVudEVtYmVkLnRpdGxlID0gdGl0bGVcblxuICAgIGlmICh1cmwpIHtcbiAgICAgIHRoaXMuc2V0VXJsKHVybClcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgdGltZXN0YW1wIG9mIHRoZSBjdXJyZW50IGVtYmVkLlxuICAgKlxuICAgKiBAcGFyYW0gez8oc3RyaW5nIHwgbnVtYmVyIHwgRGF0ZSl9IFt0aW1lc3RhbXBdXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0VGltZXN0YW1wKHRpbWVzdGFtcD86IHN0cmluZyB8IG51bWJlciB8IERhdGUpOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQudGltZXN0YW1wID0gbmV3IERhdGUodGltZXN0YW1wISkudG9JU09TdHJpbmcoKVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIHRodW1ibmFpbCBvZiB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHVybCAtIFVSTCBvZiB0aGUgaW1hZ2VcbiAgICogQHBhcmFtIHs/T21pdDxEaXNjb3JkRW1iZWRUaHVtYm5haWwsICd1cmwnPn0gW29wdGlvbnNdXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0VGh1bWJuYWlsKHVybDogc3RyaW5nLCBvcHRpb25zPzogT21pdDxEaXNjb3JkRW1iZWRUaHVtYm5haWwsICd1cmwnPik6IHRoaXMge1xuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC50aHVtYm5haWwgPSB7XG4gICAgICAuLi50aGlzLiNjdXJyZW50RW1iZWQudGh1bWJuYWlsLFxuICAgICAgLi4ub3B0aW9ucyxcbiAgICAgIHVybCxcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgVVJMIG9mIHRoZSBjdXJyZW50IGVtYmVkIHRpdGxlLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gdXJsXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0VXJsKHVybDogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy4jY3VycmVudEVtYmVkLnVybCA9IHVybFxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIHZpZGVvIG9mIHRoZSBjdXJyZW50IGVtYmVkLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gdXJsXG4gICAqIEBwYXJhbSB7P09taXQ8RGlzY29yZEVtYmVkVmlkZW8sICd1cmwnPn0gW29wdGlvbnNdXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0VmlkZW8odXJsOiBzdHJpbmcsIG9wdGlvbnM/OiBPbWl0PERpc2NvcmRFbWJlZFZpZGVvLCAndXJsJz4pOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQudmlkZW8gPSB7XG4gICAgICAuLi50aGlzLiNjdXJyZW50RW1iZWQudmlkZW8sXG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgdXJsLFxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogVmFsaWRhdGUgYWxsIGVtYmVkcyBhdmFpbGFibGUgYWdhaW5zdCBjdXJyZW50IGtub3duIERpc2NvcmQgbGltaXRzIHRvIGhlbHAgcHJldmVudCBiYWQgcmVxdWVzdHMuXG4gICAqXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgdmFsaWRhdGUoKTogdGhpcyB7XG4gICAgbGV0IHRvdGFsQ2hhcmFjdGVycyA9IDBcblxuICAgIGlmICh0aGlzLmxlbmd0aCA+IDEwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1lvdSBjYW4gbm90IGhhdmUgbW9yZSB0aGFuIDEwIGVtYmVkcyBvbiBhIHNpbmdsZSBtZXNzYWdlLicpXG4gICAgfVxuXG4gICAgdGhpcy5mb3JFYWNoKCh7IGF1dGhvciwgZGVzY3JpcHRpb24sIGZpZWxkcywgZm9vdGVyLCB0aXRsZSB9LCBpbmRleCkgPT4ge1xuICAgICAgaWYgKHRpdGxlKSB7XG4gICAgICAgIGNvbnN0IHRyaW1tZWRUaXRsZSA9IHRpdGxlLnRyaW0oKVxuXG4gICAgICAgIGlmICh0cmltbWVkVGl0bGUubGVuZ3RoID4gMjU2KSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBUaXRsZSBvZiBlbWJlZCAke2luZGV4fSBjYW4gbm90IGJlIGxvbmdlciB0aGFuIDI1NiBjaGFyYWN0ZXJzLmApXG4gICAgICAgIH1cblxuICAgICAgICB0b3RhbENoYXJhY3RlcnMgKz0gdHJpbW1lZFRpdGxlLmxlbmd0aFxuICAgICAgfVxuXG4gICAgICBpZiAoZGVzY3JpcHRpb24pIHtcbiAgICAgICAgY29uc3QgdHJpbW1lZERlc2NyaXB0aW9uID0gZGVzY3JpcHRpb24udHJpbSgpXG5cbiAgICAgICAgaWYgKHRyaW1tZWREZXNjcmlwdGlvbi5sZW5ndGggPiA0MDk2KSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBEZXNjcmlwdGlvbiBvZiBlbWJlZCAke2luZGV4fSBjYW4gbm90IGJlIGxvbmdlciB0aGFuIDQwOTYgY2hhcmFjdGVycy5gKVxuICAgICAgICB9XG5cbiAgICAgICAgdG90YWxDaGFyYWN0ZXJzICs9IHRyaW1tZWREZXNjcmlwdGlvbi5sZW5ndGhcbiAgICAgIH1cblxuICAgICAgaWYgKGZpZWxkcykge1xuICAgICAgICBpZiAoZmllbGRzLmxlbmd0aCA+IDI1KSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBlbWJlZCAke2luZGV4fSBjYW4gbm90IGhhdmUgbW9yZSB0aGFuIDI1IGZpZWxkcy5gKVxuICAgICAgICB9XG5cbiAgICAgICAgZmllbGRzLmZvckVhY2goKHsgbmFtZSwgdmFsdWUgfSwgZmllbGRJbmRleCkgPT4ge1xuICAgICAgICAgIGNvbnN0IHRyaW1tZWROYW1lID0gbmFtZS50cmltKClcbiAgICAgICAgICBjb25zdCB0cmltbWVkVmFsdWUgPSB2YWx1ZS50cmltKClcblxuICAgICAgICAgIGlmICh0cmltbWVkTmFtZS5sZW5ndGggPiAyNTYpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgTmFtZSBvZiBmaWVsZCAke2ZpZWxkSW5kZXh9IG9uIGVtYmVkICR7aW5kZXh9IGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gMjU2IGNoYXJhY3RlcnMuYClcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAodHJpbW1lZFZhbHVlLmxlbmd0aCA+IDQwOTYpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVmFsdWUgb2YgZmllbGQgJHtmaWVsZEluZGV4fSBvbiBlbWJlZCAke2luZGV4fSBjYW4gbm90IGJlIGxvbmdlciB0aGFuIDEwMjQgY2hhcmFjdGVycy5gKVxuICAgICAgICAgIH1cblxuICAgICAgICAgIHRvdGFsQ2hhcmFjdGVycyArPSB0cmltbWVkTmFtZS5sZW5ndGhcbiAgICAgICAgICB0b3RhbENoYXJhY3RlcnMgKz0gdHJpbW1lZFZhbHVlLmxlbmd0aFxuICAgICAgICB9KVxuICAgICAgfVxuXG4gICAgICBpZiAoZm9vdGVyKSB7XG4gICAgICAgIGNvbnN0IHRyaW1tZWRGb290ZXJUZXh0ID0gZm9vdGVyLnRleHQudHJpbSgpXG5cbiAgICAgICAgaWYgKHRyaW1tZWRGb290ZXJUZXh0Lmxlbmd0aCA+IDIwNDgpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEZvb3RlciB0ZXh0IG9mIGVtYmVkICR7aW5kZXh9IGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gMjA0OCBjaGFyYWN0ZXJzLmApXG4gICAgICAgIH1cblxuICAgICAgICB0b3RhbENoYXJhY3RlcnMgKz0gdHJpbW1lZEZvb3RlclRleHQubGVuZ3RoXG4gICAgICB9XG5cbiAgICAgIGlmIChhdXRob3IpIHtcbiAgICAgICAgY29uc3QgdHJpbW1lZEF1dGhvck5hbWUgPSBhdXRob3IubmFtZS50cmltKClcblxuICAgICAgICBpZiAodHJpbW1lZEF1dGhvck5hbWUubGVuZ3RoID4gMjU2KSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBBdXRob3IgbmFtZSBvZiBlbWJlZCAke2luZGV4fSBjYW4gbm90IGJlIGxvbmdlciB0aGFuIDI1NiBjaGFyYWN0ZXJzLmApXG4gICAgICAgIH1cblxuICAgICAgICB0b3RhbENoYXJhY3RlcnMgKz0gdHJpbW1lZEF1dGhvck5hbWUubGVuZ3RoXG4gICAgICB9XG4gICAgfSlcblxuICAgIGlmICh0b3RhbENoYXJhY3RlcnMgPiA2MDAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RvdGFsIGNoYXJhY3RlciBsZW5ndGggb2YgYWxsIGVtYmVkcyBjYW4gbm90IGV4Y2VlZCA2MDAwIGNoYXJhY3RlcnMuJylcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEByZWFkb25seVxuICAgKiBAdHlwZSB7RGlzY29yZEVtYmVkfVxuICAgKi9cbiAgZ2V0ICNjdXJyZW50RW1iZWQoKTogRGlzY29yZEVtYmVkIHtcbiAgICBpZiAodGhpcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRoaXMubmV3RW1iZWQoKVxuICAgICAgdGhpcy5zZXRDdXJyZW50RW1iZWQoKVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzW3RoaXMuI2N1cnJlbnRFbWJlZEluZGV4XVxuICB9XG59XG4iXSwibmFtZXMiOlsiRW1iZWRzQnVpbGRlciIsIkFycmF5IiwiYWRkRmllbGQiLCJuYW1lIiwidmFsdWUiLCJpbmxpbmUiLCJmaWVsZHMiLCJ1bmRlZmluZWQiLCJwdXNoIiwibmV3RW1iZWQiLCJsZW5ndGgiLCJFcnJvciIsInNldEN1cnJlbnRFbWJlZCIsInNldEF1dGhvciIsIm9wdGlvbnMiLCJhdXRob3IiLCJzZXRDb2xvciIsImNvbG9yIiwiY29udmVydGVkVmFsdWUiLCJwYXJzZUludCIsInJlcGxhY2UiLCJOdW1iZXIiLCJpc05hTiIsImluZGV4Iiwic2V0RGVzY3JpcHRpb24iLCJkZXNjcmlwdGlvbiIsInNldEZpZWxkcyIsInNldEZvb3RlciIsInRleHQiLCJmb290ZXIiLCJzZXRJbWFnZSIsInVybCIsImltYWdlIiwic2V0UHJvdmlkZXIiLCJwcm92aWRlciIsInNldFJhbmRvbUNvbG9yIiwiTWF0aCIsImZsb29yIiwicmFuZG9tIiwic2V0VGl0bGUiLCJ0aXRsZSIsInNldFVybCIsInNldFRpbWVzdGFtcCIsInRpbWVzdGFtcCIsIkRhdGUiLCJ0b0lTT1N0cmluZyIsInNldFRodW1ibmFpbCIsInRodW1ibmFpbCIsInNldFZpZGVvIiwidmlkZW8iLCJ2YWxpZGF0ZSIsInRvdGFsQ2hhcmFjdGVycyIsImZvckVhY2giLCJ0cmltbWVkVGl0bGUiLCJ0cmltIiwidHJpbW1lZERlc2NyaXB0aW9uIiwiZmllbGRJbmRleCIsInRyaW1tZWROYW1lIiwidHJpbW1lZFZhbHVlIiwidHJpbW1lZEZvb3RlclRleHQiLCJ0cmltbWVkQXV0aG9yTmFtZSJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFvQmFBOzs7ZUFBQUE7OztBQUFOLElBQUEsQUFBTUEsZ0JBQU4sTUFBTUEsc0JBQXNCQztJQUNqQyxDQUFBLGlCQUFrQixDQUFZO0lBRTlCOzs7Ozs7O0dBT0MsR0FDREMsU0FBU0MsSUFBWSxFQUFFQyxLQUFhLEVBQUVDLE1BQWdCLEVBQVE7UUFDNUQsSUFBSSxJQUFJLENBQUMsQ0FBQSxZQUFhLENBQUNDLE1BQU0sS0FBS0MsV0FBVztZQUMzQyxJQUFJLENBQUMsQ0FBQSxZQUFhLENBQUNELE1BQU0sR0FBRyxFQUFFO1FBQ2hDO1FBRUEsSUFBSSxDQUFDLENBQUEsWUFBYSxDQUFDQSxNQUFNLENBQUNFLElBQUksQ0FBQztZQUM3Qkw7WUFDQUM7WUFDQUM7UUFDRjtRQUVBLE9BQU8sSUFBSTtJQUNiO0lBRUE7Ozs7R0FJQyxHQUNESSxXQUFpQjtRQUNmLElBQUksSUFBSSxDQUFDQyxNQUFNLElBQUksSUFBSTtZQUNyQixNQUFNLElBQUlDLE1BQU07UUFDbEI7UUFFQSxJQUFJLENBQUNILElBQUksQ0FBQyxDQUFDO1FBQ1gsSUFBSSxDQUFDSSxlQUFlO1FBRXBCLE9BQU8sSUFBSTtJQUNiO0lBRUE7Ozs7OztHQU1DLEdBQ0RDLFVBQVVWLElBQVksRUFBRVcsT0FBMEMsRUFBUTtRQUN4RSxJQUFJLENBQUMsQ0FBQSxZQUFhLENBQUNDLE1BQU0sR0FBRztZQUMxQixHQUFHLElBQUksQ0FBQyxDQUFBLFlBQWEsQ0FBQ0EsTUFBTTtZQUM1QixHQUFHRCxPQUFPO1lBQ1ZYO1FBQ0Y7UUFFQSxPQUFPLElBQUk7SUFDYjtJQUVBOzs7OztHQUtDLEdBQ0RhLFNBQVNDLEtBQXNCLEVB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
|
|
303
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9idWlsZGVycy9lbWJlZHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUge1xuICBEaXNjb3JkRW1iZWQsXG4gIERpc2NvcmRFbWJlZEF1dGhvcixcbiAgRGlzY29yZEVtYmVkRmllbGQsXG4gIERpc2NvcmRFbWJlZEZvb3RlcixcbiAgRGlzY29yZEVtYmVkSW1hZ2UsXG4gIERpc2NvcmRFbWJlZFRodW1ibmFpbCxcbiAgRGlzY29yZEVtYmVkVmlkZW8sXG59IGZyb20gJ0BkaXNjb3JkZW5vL3R5cGVzJ1xuXG4vKipcbiAqIEEgYnVpbGRlciB0byBoZWxwIGNyZWF0ZSBEaXNjb3JkIGVtYmVkcy5cbiAqXG4gKiBAZXhhbXBsZVxuICogY29uc3QgZW1iZWRzID0gbmV3IEVtYmVkc0J1aWxkZXIoKVxuICogIC5zZXRUaXRsZSgnTXkgRW1iZWQnKVxuICogIC5zZXREZXNjcmlwdGlvbignVGhpcyBpcyBteSBuZXcgZW1iZWQnKVxuICogIC5uZXdFbWJlZCgpXG4gKiAgLnNldFRpdGxlKCdNeSBTZWNvbmQgRW1iZWQnKVxuICovXG5leHBvcnQgY2xhc3MgRW1iZWRzQnVpbGRlciBleHRlbmRzIEFycmF5PERpc2NvcmRFbWJlZD4ge1xuICAjY3VycmVudEVtYmVkSW5kZXg6IG51bWJlciA9IDBcblxuICAvKipcbiAgICogQWRkcyBhIG5ldyBmaWVsZCB0byB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IG5hbWUgLSBGaWVsZCBuYW1lXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB2YWx1ZSAtIEZpZWxkIHZhbHVlXG4gICAqIEBwYXJhbSB7P2Jvb2xlYW59IFtpbmxpbmU9ZmFsc2VdIC0gRmllbGQgc2hvdWxkIGJlIGlubGluZSBvciBub3QuXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgYWRkRmllbGQobmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nLCBpbmxpbmU/OiBib29sZWFuKTogdGhpcyB7XG4gICAgaWYgKHRoaXMuI2N1cnJlbnRFbWJlZC5maWVsZHMgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy4jY3VycmVudEVtYmVkLmZpZWxkcyA9IFtdXG4gICAgfVxuXG4gICAgdGhpcy4jY3VycmVudEVtYmVkLmZpZWxkcy5wdXNoKHtcbiAgICAgIG5hbWUsXG4gICAgICB2YWx1ZSxcbiAgICAgIGlubGluZSxcbiAgICB9KVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIG11bHRpcGxlIG5ldyBmaWVsZHMgdG8gdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7RGlzY29yZEVtYmVkRmllbGRbXX0gZmllbGRzIC0gVGhlIGZpZWxkcyB0byBhZGRcbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBhZGRGaWVsZHMoZmllbGRzOiBEaXNjb3JkRW1iZWRGaWVsZFtdKTogdGhpcyB7XG4gICAgaWYgKHRoaXMuI2N1cnJlbnRFbWJlZC5maWVsZHMgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy4jY3VycmVudEVtYmVkLmZpZWxkcyA9IFtdXG4gICAgfVxuXG4gICAgdGhpcy4jY3VycmVudEVtYmVkLmZpZWxkcy5wdXNoKC4uLmZpZWxkcylcblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIGJsYW5rIGVtYmVkLlxuICAgKlxuICAgKiBAcmV0dXJucyB7RW1iZWRzQnVpbGRlcn1cbiAgICovXG4gIG5ld0VtYmVkKCk6IHRoaXMge1xuICAgIGlmICh0aGlzLmxlbmd0aCA+PSAxMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdNYXhpbXVtIGVtYmVkIGNvdW50IGV4Y2VlZGVkLiBZb3UgY2FuIG5vdCBoYXZlIG1vcmUgdGhhbiAxMCBlbWJlZHMuJylcbiAgICB9XG5cbiAgICB0aGlzLnB1c2goe30pXG4gICAgdGhpcy5zZXRDdXJyZW50RW1iZWQoKVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIGN1cnJlbnQgZW1iZWQgYXV0aG9yLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gbmFtZSAtIE5hbWUgb2YgdGhlIGF1dGhvclxuICAgKiBAcGFyYW0gez9PbWl0PERpc2NvcmRFbWJlZEF1dGhvciwgJ25hbWUnPn0gW29wdGlvbnNdIC0gRXh0cmEgYXV0aG9yIG9wdGlvbnNcbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRBdXRob3IobmFtZTogc3RyaW5nLCBvcHRpb25zPzogT21pdDxEaXNjb3JkRW1iZWRBdXRob3IsICduYW1lJz4pOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQuYXV0aG9yID0ge1xuICAgICAgLi4udGhpcy4jY3VycmVudEVtYmVkLmF1dGhvcixcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBuYW1lLFxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBjb2xvciBvbiB0aGUgc2lkZSBvZiB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHBhcmFtIHsobnVtYmVyIHwgc3RyaW5nKX0gY29sb3IgLSBUaGUgY29sb3IsIGluIGJhc2UxNiBvciBoZXggY29sb3IgY29kZVxuICAgKiBAcmV0dXJucyB7RW1iZWRzQnVpbGRlcn1cbiAgICovXG4gIHNldENvbG9yKGNvbG9yOiBudW1iZXIgfCBzdHJpbmcpOiB0aGlzIHtcbiAgICBpZiAodHlwZW9mIGNvbG9yID09PSAnc3RyaW5nJykge1xuICAgICAgY29uc3QgY29udmVydGVkVmFsdWUgPSBwYXJzZUludChjb2xvci5yZXBsYWNlKCcjJywgJycpLCAxNilcbiAgICAgIGNvbG9yID0gTnVtYmVyLmlzTmFOKGNvbnZlcnRlZFZhbHVlKSA/IDAgOiBjb252ZXJ0ZWRWYWx1ZVxuICAgIH1cblxuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC5jb2xvciA9IGNvbG9yXG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgY3VycmVudCBlbWJlZCB0byBhIGRpZmZlcmVudCBpbmRleC5cbiAgICpcbiAgICogV0FSTklORzogT25seSB1c2UgdGhpcyBtZXRob2QgaWYgeW91IGtub3cgd2hhdCB5b3UncmUgZG9pbmcuIE1ha2Ugc3VyZSB0byBzZXQgaXQgYmFjayB0byB0aGUgbGF0ZXN0IHdoZW4geW91J3JlIGRvbmUuXG4gICAqXG4gICAqIEBwYXJhbSB7P251bWJlcn0gW2luZGV4XSAtIFRoZSBpbmRleCBvZiB0aGUgZW1iZWQgaW4gdGhlIEVtYmVkc0J1aWxkZXIgYXJyYXlcbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRDdXJyZW50RW1iZWQoaW5kZXg/OiBudW1iZXIpOiB0aGlzIHtcbiAgICBpZiAoaW5kZXggPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy4jY3VycmVudEVtYmVkSW5kZXggPSB0aGlzLmxlbmd0aCAtIDFcblxuICAgICAgcmV0dXJuIHRoaXNcbiAgICB9XG5cbiAgICBpZiAoaW5kZXggPj0gdGhpcy5sZW5ndGggfHwgaW5kZXggPCAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0NhbiBub3Qgc2V0IHRoZSBjdXJyZW50IGVtYmVkIHRvIGEgaW5kZXggb3V0IG9mIGJvdW5kcy4nKVxuICAgIH1cblxuICAgIHRoaXMuI2N1cnJlbnRFbWJlZEluZGV4ID0gaW5kZXhcblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBkZXNjcmlwdGlvbiBvZiB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGRlc2NyaXB0aW9uIC0gRGVzY3JpcHRpb25cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXREZXNjcmlwdGlvbihkZXNjcmlwdGlvbjogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy4jY3VycmVudEVtYmVkLmRlc2NyaXB0aW9uID0gZGVzY3JpcHRpb25cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogT3ZlcndyaXRlIGFsbCBmaWVsZHMgb24gdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7RGlzY29yZEVtYmVkRmllbGRbXX0gZmllbGRzXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0RmllbGRzKGZpZWxkczogRGlzY29yZEVtYmVkRmllbGRbXSk6IHRoaXMge1xuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC5maWVsZHMgPSBmaWVsZHNcblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBmb290ZXIgaW4gdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB0ZXh0IC0gVGhlIHRleHQgdG8gZGlzcGxheSBpbiB0aGUgZm9vdGVyXG4gICAqIEBwYXJhbSB7P09taXQ8RGlzY29yZEVtYmVkRm9vdGVyLCAndGV4dCc+fSBbb3B0aW9uc11cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRGb290ZXIodGV4dDogc3RyaW5nLCBvcHRpb25zPzogT21pdDxEaXNjb3JkRW1iZWRGb290ZXIsICd0ZXh0Jz4pOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQuZm9vdGVyID0ge1xuICAgICAgLi4udGhpcy4jY3VycmVudEVtYmVkLmZvb3RlcixcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICB0ZXh0LFxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBpbWFnZSBpbiB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHVybCAtIFVSTCBvZiB0aGUgaW1hZ2VcbiAgICogQHBhcmFtIHs/T21pdDxEaXNjb3JkRW1iZWRJbWFnZSwgJ3VybCc+fSBbb3B0aW9uc11cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRJbWFnZSh1cmw6IHN0cmluZywgb3B0aW9ucz86IE9taXQ8RGlzY29yZEVtYmVkSW1hZ2UsICd1cmwnPik6IHRoaXMge1xuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC5pbWFnZSA9IHtcbiAgICAgIC4uLnRoaXMuI2N1cnJlbnRFbWJlZC5pbWFnZSxcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICB1cmwsXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIHByb3ZpZGVyIG9mIHRoZSBjdXJyZW50IGVtYmVkLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gbmFtZVxuICAgKiBAcGFyYW0gez9zdHJpbmd9IFt1cmxdXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0UHJvdmlkZXIobmFtZTogc3RyaW5nLCB1cmw/OiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQucHJvdmlkZXIgPSB7XG4gICAgICBuYW1lLFxuICAgICAgdXJsLFxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBjb2xvciBvZiB0aGUgY3VycmVudCBlbWJlZCB0byBhIHJhbmRvbSB2YWx1ZS5cbiAgICpcbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRSYW5kb21Db2xvcigpOiB0aGlzIHtcbiAgICByZXR1cm4gdGhpcy5zZXRDb2xvcihNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAoMHhmZmZmZmYgKyAxKSkpXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSB0aXRsZSBvZiB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHRpdGxlXG4gICAqIEBwYXJhbSB7P3N0cmluZ30gW3VybF1cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRUaXRsZSh0aXRsZTogc3RyaW5nLCB1cmw/OiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQudGl0bGUgPSB0aXRsZVxuXG4gICAgaWYgKHVybCkge1xuICAgICAgdGhpcy5zZXRVcmwodXJsKVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSB0aW1lc3RhbXAgb2YgdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7PyhzdHJpbmcgfCBudW1iZXIgfCBEYXRlKX0gW3RpbWVzdGFtcF1cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRUaW1lc3RhbXAodGltZXN0YW1wPzogc3RyaW5nIHwgbnVtYmVyIHwgRGF0ZSk6IHRoaXMge1xuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC50aW1lc3RhbXAgPSBuZXcgRGF0ZSh0aW1lc3RhbXAhKS50b0lTT1N0cmluZygpXG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgdGh1bWJuYWlsIG9mIHRoZSBjdXJyZW50IGVtYmVkLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gdXJsIC0gVVJMIG9mIHRoZSBpbWFnZVxuICAgKiBAcGFyYW0gez9PbWl0PERpc2NvcmRFbWJlZFRodW1ibmFpbCwgJ3VybCc+fSBbb3B0aW9uc11cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRUaHVtYm5haWwodXJsOiBzdHJpbmcsIG9wdGlvbnM/OiBPbWl0PERpc2NvcmRFbWJlZFRodW1ibmFpbCwgJ3VybCc+KTogdGhpcyB7XG4gICAgdGhpcy4jY3VycmVudEVtYmVkLnRodW1ibmFpbCA9IHtcbiAgICAgIC4uLnRoaXMuI2N1cnJlbnRFbWJlZC50aHVtYm5haWwsXG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgdXJsLFxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBVUkwgb2YgdGhlIGN1cnJlbnQgZW1iZWQgdGl0bGUuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB1cmxcbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRVcmwodXJsOiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQudXJsID0gdXJsXG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgdmlkZW8gb2YgdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB1cmxcbiAgICogQHBhcmFtIHs/T21pdDxEaXNjb3JkRW1iZWRWaWRlbywgJ3VybCc+fSBbb3B0aW9uc11cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRWaWRlbyh1cmw6IHN0cmluZywgb3B0aW9ucz86IE9taXQ8RGlzY29yZEVtYmVkVmlkZW8sICd1cmwnPik6IHRoaXMge1xuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC52aWRlbyA9IHtcbiAgICAgIC4uLnRoaXMuI2N1cnJlbnRFbWJlZC52aWRlbyxcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICB1cmwsXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBWYWxpZGF0ZSBhbGwgZW1iZWRzIGF2YWlsYWJsZSBhZ2FpbnN0IGN1cnJlbnQga25vd24gRGlzY29yZCBsaW1pdHMgdG8gaGVscCBwcmV2ZW50IGJhZCByZXF1ZXN0cy5cbiAgICpcbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICB2YWxpZGF0ZSgpOiB0aGlzIHtcbiAgICBsZXQgdG90YWxDaGFyYWN0ZXJzID0gMFxuXG4gICAgaWYgKHRoaXMubGVuZ3RoID4gMTApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignWW91IGNhbiBub3QgaGF2ZSBtb3JlIHRoYW4gMTAgZW1iZWRzIG9uIGEgc2luZ2xlIG1lc3NhZ2UuJylcbiAgICB9XG5cbiAgICB0aGlzLmZvckVhY2goKHsgYXV0aG9yLCBkZXNjcmlwdGlvbiwgZmllbGRzLCBmb290ZXIsIHRpdGxlIH0sIGluZGV4KSA9PiB7XG4gICAgICBpZiAodGl0bGUpIHtcbiAgICAgICAgY29uc3QgdHJpbW1lZFRpdGxlID0gdGl0bGUudHJpbSgpXG5cbiAgICAgICAgaWYgKHRyaW1tZWRUaXRsZS5sZW5ndGggPiAyNTYpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFRpdGxlIG9mIGVtYmVkICR7aW5kZXh9IGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gMjU2IGNoYXJhY3RlcnMuYClcbiAgICAgICAgfVxuXG4gICAgICAgIHRvdGFsQ2hhcmFjdGVycyArPSB0cmltbWVkVGl0bGUubGVuZ3RoXG4gICAgICB9XG5cbiAgICAgIGlmIChkZXNjcmlwdGlvbikge1xuICAgICAgICBjb25zdCB0cmltbWVkRGVzY3JpcHRpb24gPSBkZXNjcmlwdGlvbi50cmltKClcblxuICAgICAgICBpZiAodHJpbW1lZERlc2NyaXB0aW9uLmxlbmd0aCA+IDQwOTYpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYERlc2NyaXB0aW9uIG9mIGVtYmVkICR7aW5kZXh9IGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gNDA5NiBjaGFyYWN0ZXJzLmApXG4gICAgICAgIH1cblxuICAgICAgICB0b3RhbENoYXJhY3RlcnMgKz0gdHJpbW1lZERlc2NyaXB0aW9uLmxlbmd0aFxuICAgICAgfVxuXG4gICAgICBpZiAoZmllbGRzKSB7XG4gICAgICAgIGlmIChmaWVsZHMubGVuZ3RoID4gMjUpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYGVtYmVkICR7aW5kZXh9IGNhbiBub3QgaGF2ZSBtb3JlIHRoYW4gMjUgZmllbGRzLmApXG4gICAgICAgIH1cblxuICAgICAgICBmaWVsZHMuZm9yRWFjaCgoeyBuYW1lLCB2YWx1ZSB9LCBmaWVsZEluZGV4KSA9PiB7XG4gICAgICAgICAgY29uc3QgdHJpbW1lZE5hbWUgPSBuYW1lLnRyaW0oKVxuICAgICAgICAgIGNvbnN0IHRyaW1tZWRWYWx1ZSA9IHZhbHVlLnRyaW0oKVxuXG4gICAgICAgICAgaWYgKHRyaW1tZWROYW1lLmxlbmd0aCA+IDI1Nikge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBOYW1lIG9mIGZpZWxkICR7ZmllbGRJbmRleH0gb24gZW1iZWQgJHtpbmRleH0gY2FuIG5vdCBiZSBsb25nZXIgdGhhbiAyNTYgY2hhcmFjdGVycy5gKVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmICh0cmltbWVkVmFsdWUubGVuZ3RoID4gNDA5Nikge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBWYWx1ZSBvZiBmaWVsZCAke2ZpZWxkSW5kZXh9IG9uIGVtYmVkICR7aW5kZXh9IGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gMTAyNCBjaGFyYWN0ZXJzLmApXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdG90YWxDaGFyYWN0ZXJzICs9IHRyaW1tZWROYW1lLmxlbmd0aFxuICAgICAgICAgIHRvdGFsQ2hhcmFjdGVycyArPSB0cmltbWVkVmFsdWUubGVuZ3RoXG4gICAgICAgIH0pXG4gICAgICB9XG5cbiAgICAgIGlmIChmb290ZXIpIHtcbiAgICAgICAgY29uc3QgdHJpbW1lZEZvb3RlclRleHQgPSBmb290ZXIudGV4dC50cmltKClcblxuICAgICAgICBpZiAodHJpbW1lZEZvb3RlclRleHQubGVuZ3RoID4gMjA0OCkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgRm9vdGVyIHRleHQgb2YgZW1iZWQgJHtpbmRleH0gY2FuIG5vdCBiZSBsb25nZXIgdGhhbiAyMDQ4IGNoYXJhY3RlcnMuYClcbiAgICAgICAgfVxuXG4gICAgICAgIHRvdGFsQ2hhcmFjdGVycyArPSB0cmltbWVkRm9vdGVyVGV4dC5sZW5ndGhcbiAgICAgIH1cblxuICAgICAgaWYgKGF1dGhvcikge1xuICAgICAgICBjb25zdCB0cmltbWVkQXV0aG9yTmFtZSA9IGF1dGhvci5uYW1lLnRyaW0oKVxuXG4gICAgICAgIGlmICh0cmltbWVkQXV0aG9yTmFtZS5sZW5ndGggPiAyNTYpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEF1dGhvciBuYW1lIG9mIGVtYmVkICR7aW5kZXh9IGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gMjU2IGNoYXJhY3RlcnMuYClcbiAgICAgICAgfVxuXG4gICAgICAgIHRvdGFsQ2hhcmFjdGVycyArPSB0cmltbWVkQXV0aG9yTmFtZS5sZW5ndGhcbiAgICAgIH1cbiAgICB9KVxuXG4gICAgaWYgKHRvdGFsQ2hhcmFjdGVycyA+IDYwMDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignVG90YWwgY2hhcmFjdGVyIGxlbmd0aCBvZiBhbGwgZW1iZWRzIGNhbiBub3QgZXhjZWVkIDYwMDAgY2hhcmFjdGVycy4nKVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHJlYWRvbmx5XG4gICAqIEB0eXBlIHtEaXNjb3JkRW1iZWR9XG4gICAqL1xuICBnZXQgI2N1cnJlbnRFbWJlZCgpOiBEaXNjb3JkRW1iZWQge1xuICAgIGlmICh0aGlzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhpcy5uZXdFbWJlZCgpXG4gICAgICB0aGlzLnNldEN1cnJlbnRFbWJlZCgpXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXNbdGhpcy4jY3VycmVudEVtYmVkSW5kZXhdXG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJFbWJlZHNCdWlsZGVyIiwiQXJyYXkiLCJhZGRGaWVsZCIsIm5hbWUiLCJ2YWx1ZSIsImlubGluZSIsImZpZWxkcyIsInVuZGVmaW5lZCIsInB1c2giLCJhZGRGaWVsZHMiLCJuZXdFbWJlZCIsImxlbmd0aCIsIkVycm9yIiwic2V0Q3VycmVudEVtYmVkIiwic2V0QXV0aG9yIiwib3B0aW9ucyIsImF1dGhvciIsInNldENvbG9yIiwiY29sb3IiLCJjb252ZXJ0ZWRWYWx1ZSIsInBhcnNlSW50IiwicmVwbGFjZSIsIk51bWJlciIsImlzTmFOIiwiaW5kZXgiLCJzZXREZXNjcmlwdGlvbiIsImRlc2NyaXB0aW9uIiwic2V0RmllbGRzIiwic2V0Rm9vdGVyIiwidGV4dCIsImZvb3RlciIsInNldEltYWdlIiwidXJsIiwiaW1hZ2UiLCJzZXRQcm92aWRlciIsInByb3ZpZGVyIiwic2V0UmFuZG9tQ29sb3IiLCJNYXRoIiwiZmxvb3IiLCJyYW5kb20iLCJzZXRUaXRsZSIsInRpdGxlIiwic2V0VXJsIiwic2V0VGltZXN0YW1wIiwidGltZXN0YW1wIiwiRGF0ZSIsInRvSVNPU3RyaW5nIiwic2V0VGh1bWJuYWlsIiwidGh1bWJuYWlsIiwic2V0VmlkZW8iLCJ2aWRlbyIsInZhbGlkYXRlIiwidG90YWxDaGFyYWN0ZXJzIiwiZm9yRWFjaCIsInRyaW1tZWRUaXRsZSIsInRyaW0iLCJ0cmltbWVkRGVzY3JpcHRpb24iLCJmaWVsZEluZGV4IiwidHJpbW1lZE5hbWUiLCJ0cmltbWVkVmFsdWUiLCJ0cmltbWVkRm9vdGVyVGV4dCIsInRyaW1tZWRBdXRob3JOYW1lIl0sIm1hcHBpbmdzIjoiOzs7OytCQW9CYUE7OztlQUFBQTs7O0FBQU4sSUFBQSxBQUFNQSxnQkFBTixNQUFNQSxzQkFBc0JDO0lBQ2pDLENBQUEsaUJBQWtCLENBQVk7SUFFOUI7Ozs7Ozs7R0FPQyxHQUNEQyxTQUFTQyxJQUFZLEVBQUVDLEtBQWEsRUFBRUMsTUFBZ0IsRUFBUTtRQUM1RCxJQUFJLElBQUksQ0FBQyxDQUFBLFlBQWEsQ0FBQ0MsTUFBTSxLQUFLQyxXQUFXO1lBQzNDLElBQUksQ0FBQyxDQUFBLFlBQWEsQ0FBQ0QsTUFBTSxHQUFHLEVBQUU7UUFDaEM7UUFFQSxJQUFJLENBQUMsQ0FBQSxZQUFhLENBQUNBLE1BQU0sQ0FBQ0UsSUFBSSxDQUFDO1lBQzdCTDtZQUNBQztZQUNBQztRQUNGO1FB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
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
*/ export class EmbedsBuilder extends Array {
|
|
11
11
|
#currentEmbedIndex;
|
|
12
12
|
/**
|
|
13
|
-
* Adds a new field to the embed
|
|
13
|
+
* Adds a new field to the current embed.
|
|
14
14
|
*
|
|
15
15
|
* @param {string} name - Field name
|
|
16
16
|
* @param {string} value - Field value
|
|
@@ -28,6 +28,18 @@
|
|
|
28
28
|
return this;
|
|
29
29
|
}
|
|
30
30
|
/**
|
|
31
|
+
* Adds multiple new fields to the current embed.
|
|
32
|
+
*
|
|
33
|
+
* @param {DiscordEmbedField[]} fields - The fields to add
|
|
34
|
+
* @returns {EmbedsBuilder}
|
|
35
|
+
*/ addFields(fields) {
|
|
36
|
+
if (this.#currentEmbed.fields === undefined) {
|
|
37
|
+
this.#currentEmbed.fields = [];
|
|
38
|
+
}
|
|
39
|
+
this.#currentEmbed.fields.push(...fields);
|
|
40
|
+
return this;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
31
43
|
* Creates a blank embed.
|
|
32
44
|
*
|
|
33
45
|
* @returns {EmbedsBuilder}
|
|
@@ -287,4 +299,4 @@
|
|
|
287
299
|
}
|
|
288
300
|
}
|
|
289
301
|
|
|
290
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9idWlsZGVycy9lbWJlZHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUge1xuICBEaXNjb3JkRW1iZWQsXG4gIERpc2NvcmRFbWJlZEF1dGhvcixcbiAgRGlzY29yZEVtYmVkRmllbGQsXG4gIERpc2NvcmRFbWJlZEZvb3RlcixcbiAgRGlzY29yZEVtYmVkSW1hZ2UsXG4gIERpc2NvcmRFbWJlZFRodW1ibmFpbCxcbiAgRGlzY29yZEVtYmVkVmlkZW8sXG59IGZyb20gJ0BkaXNjb3JkZW5vL3R5cGVzJ1xuXG4vKipcbiAqIEEgYnVpbGRlciB0byBoZWxwIGNyZWF0ZSBEaXNjb3JkIGVtYmVkcy5cbiAqXG4gKiBAZXhhbXBsZVxuICogY29uc3QgZW1iZWRzID0gbmV3IEVtYmVkc0J1aWxkZXIoKVxuICogIC5zZXRUaXRsZSgnTXkgRW1iZWQnKVxuICogIC5zZXREZXNjcmlwdGlvbignVGhpcyBpcyBteSBuZXcgZW1iZWQnKVxuICogIC5uZXdFbWJlZCgpXG4gKiAgLnNldFRpdGxlKCdNeSBTZWNvbmQgRW1iZWQnKVxuICovXG5leHBvcnQgY2xhc3MgRW1iZWRzQnVpbGRlciBleHRlbmRzIEFycmF5PERpc2NvcmRFbWJlZD4ge1xuICAjY3VycmVudEVtYmVkSW5kZXg6IG51bWJlciA9IDBcblxuICAvKipcbiAgICogQWRkcyBhIG5ldyBmaWVsZCB0byB0aGUgZW1iZWQgZmllbGRzIGFycmF5LlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gbmFtZSAtIEZpZWxkIG5hbWVcbiAgICogQHBhcmFtIHtzdHJpbmd9IHZhbHVlIC0gRmllbGQgdmFsdWVcbiAgICogQHBhcmFtIHs/Ym9vbGVhbn0gW2lubGluZT1mYWxzZV0gLSBGaWVsZCBzaG91bGQgYmUgaW5saW5lIG9yIG5vdC5cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBhZGRGaWVsZChuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcsIGlubGluZT86IGJvb2xlYW4pOiB0aGlzIHtcbiAgICBpZiAodGhpcy4jY3VycmVudEVtYmVkLmZpZWxkcyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLiNjdXJyZW50RW1iZWQuZmllbGRzID0gW11cbiAgICB9XG5cbiAgICB0aGlzLiNjdXJyZW50RW1iZWQuZmllbGRzLnB1c2goe1xuICAgICAgbmFtZSxcbiAgICAgIHZhbHVlLFxuICAgICAgaW5saW5lLFxuICAgIH0pXG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBibGFuayBlbWJlZC5cbiAgICpcbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBuZXdFbWJlZCgpOiB0aGlzIHtcbiAgICBpZiAodGhpcy5sZW5ndGggPj0gMTApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignTWF4aW11bSBlbWJlZCBjb3VudCBleGNlZWRlZC4gWW91IGNhbiBub3QgaGF2ZSBtb3JlIHRoYW4gMTAgZW1iZWRzLicpXG4gICAgfVxuXG4gICAgdGhpcy5wdXNoKHt9KVxuICAgIHRoaXMuc2V0Q3VycmVudEVtYmVkKClcblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBjdXJyZW50IGVtYmVkIGF1dGhvci5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IG5hbWUgLSBOYW1lIG9mIHRoZSBhdXRob3JcbiAgICogQHBhcmFtIHs/T21pdDxEaXNjb3JkRW1iZWRBdXRob3IsICduYW1lJz59IFtvcHRpb25zXSAtIEV4dHJhIGF1dGhvciBvcHRpb25zXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0QXV0aG9yKG5hbWU6IHN0cmluZywgb3B0aW9ucz86IE9taXQ8RGlzY29yZEVtYmVkQXV0aG9yLCAnbmFtZSc+KTogdGhpcyB7XG4gICAgdGhpcy4jY3VycmVudEVtYmVkLmF1dGhvciA9IHtcbiAgICAgIC4uLnRoaXMuI2N1cnJlbnRFbWJlZC5hdXRob3IsXG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgbmFtZSxcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgY29sb3Igb24gdGhlIHNpZGUgb2YgdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7KG51bWJlciB8IHN0cmluZyl9IGNvbG9yIC0gVGhlIGNvbG9yLCBpbiBiYXNlMTYgb3IgaGV4IGNvbG9yIGNvZGVcbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRDb2xvcihjb2xvcjogbnVtYmVyIHwgc3RyaW5nKTogdGhpcyB7XG4gICAgaWYgKHR5cGVvZiBjb2xvciA9PT0gJ3N0cmluZycpIHtcbiAgICAgIGNvbnN0IGNvbnZlcnRlZFZhbHVlID0gcGFyc2VJbnQoY29sb3IucmVwbGFjZSgnIycsICcnKSwgMTYpXG4gICAgICBjb2xvciA9IE51bWJlci5pc05hTihjb252ZXJ0ZWRWYWx1ZSkgPyAwIDogY29udmVydGVkVmFsdWVcbiAgICB9XG5cbiAgICB0aGlzLiNjdXJyZW50RW1iZWQuY29sb3IgPSBjb2xvclxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIGN1cnJlbnQgZW1iZWQgdG8gYSBkaWZmZXJlbnQgaW5kZXguXG4gICAqXG4gICAqIFdBUk5JTkc6IE9ubHkgdXNlIHRoaXMgbWV0aG9kIGlmIHlvdSBrbm93IHdoYXQgeW91J3JlIGRvaW5nLiBNYWtlIHN1cmUgdG8gc2V0IGl0IGJhY2sgdG8gdGhlIGxhdGVzdCB3aGVuIHlvdSdyZSBkb25lLlxuICAgKlxuICAgKiBAcGFyYW0gez9udW1iZXJ9IFtpbmRleF0gLSBUaGUgaW5kZXggb2YgdGhlIGVtYmVkIGluIHRoZSBFbWJlZHNCdWlsZGVyIGFycmF5XG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0Q3VycmVudEVtYmVkKGluZGV4PzogbnVtYmVyKTogdGhpcyB7XG4gICAgaWYgKGluZGV4ID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMuI2N1cnJlbnRFbWJlZEluZGV4ID0gdGhpcy5sZW5ndGggLSAxXG5cbiAgICAgIHJldHVybiB0aGlzXG4gICAgfVxuXG4gICAgaWYgKGluZGV4ID49IHRoaXMubGVuZ3RoIHx8IGluZGV4IDwgMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdDYW4gbm90IHNldCB0aGUgY3VycmVudCBlbWJlZCB0byBhIGluZGV4IG91dCBvZiBib3VuZHMuJylcbiAgICB9XG5cbiAgICB0aGlzLiNjdXJyZW50RW1iZWRJbmRleCA9IGluZGV4XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgZGVzY3JpcHRpb24gb2YgdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBkZXNjcmlwdGlvbiAtIERlc2NyaXB0aW9uXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0RGVzY3JpcHRpb24oZGVzY3JpcHRpb246IHN0cmluZyk6IHRoaXMge1xuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC5kZXNjcmlwdGlvbiA9IGRlc2NyaXB0aW9uXG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIE92ZXJ3cml0ZSBhbGwgZmllbGRzIG9uIHRoZSBjdXJyZW50IGVtYmVkLlxuICAgKlxuICAgKiBAcGFyYW0ge0Rpc2NvcmRFbWJlZEZpZWxkW119IGZpZWxkc1xuICAgKiBAcmV0dXJucyB7RW1iZWRzQnVpbGRlcn1cbiAgICovXG4gIHNldEZpZWxkcyhmaWVsZHM6IERpc2NvcmRFbWJlZEZpZWxkW10pOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQuZmllbGRzID0gZmllbGRzXG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgZm9vdGVyIGluIHRoZSBjdXJyZW50IGVtYmVkLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gdGV4dCAtIFRoZSB0ZXh0IHRvIGRpc3BsYXkgaW4gdGhlIGZvb3RlclxuICAgKiBAcGFyYW0gez9PbWl0PERpc2NvcmRFbWJlZEZvb3RlciwgJ3RleHQnPn0gW29wdGlvbnNdXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0Rm9vdGVyKHRleHQ6IHN0cmluZywgb3B0aW9ucz86IE9taXQ8RGlzY29yZEVtYmVkRm9vdGVyLCAndGV4dCc+KTogdGhpcyB7XG4gICAgdGhpcy4jY3VycmVudEVtYmVkLmZvb3RlciA9IHtcbiAgICAgIC4uLnRoaXMuI2N1cnJlbnRFbWJlZC5mb290ZXIsXG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgdGV4dCxcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgaW1hZ2UgaW4gdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB1cmwgLSBVUkwgb2YgdGhlIGltYWdlXG4gICAqIEBwYXJhbSB7P09taXQ8RGlzY29yZEVtYmVkSW1hZ2UsICd1cmwnPn0gW29wdGlvbnNdXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0SW1hZ2UodXJsOiBzdHJpbmcsIG9wdGlvbnM/OiBPbWl0PERpc2NvcmRFbWJlZEltYWdlLCAndXJsJz4pOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQuaW1hZ2UgPSB7XG4gICAgICAuLi50aGlzLiNjdXJyZW50RW1iZWQuaW1hZ2UsXG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgdXJsLFxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBwcm92aWRlciBvZiB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IG5hbWVcbiAgICogQHBhcmFtIHs/c3RyaW5nfSBbdXJsXVxuICAgKiBAcmV0dXJucyB7RW1iZWRzQnVpbGRlcn1cbiAgICovXG4gIHNldFByb3ZpZGVyKG5hbWU6IHN0cmluZywgdXJsPzogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy4jY3VycmVudEVtYmVkLnByb3ZpZGVyID0ge1xuICAgICAgbmFtZSxcbiAgICAgIHVybCxcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgY29sb3Igb2YgdGhlIGN1cnJlbnQgZW1iZWQgdG8gYSByYW5kb20gdmFsdWUuXG4gICAqXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0UmFuZG9tQ29sb3IoKTogdGhpcyB7XG4gICAgcmV0dXJuIHRoaXMuc2V0Q29sb3IoTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogKDB4ZmZmZmZmICsgMSkpKVxuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgdGl0bGUgb2YgdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB0aXRsZVxuICAgKiBAcGFyYW0gez9zdHJpbmd9IFt1cmxdXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0VGl0bGUodGl0bGU6IHN0cmluZywgdXJsPzogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy4jY3VycmVudEVtYmVkLnRpdGxlID0gdGl0bGVcblxuICAgIGlmICh1cmwpIHtcbiAgICAgIHRoaXMuc2V0VXJsKHVybClcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgdGltZXN0YW1wIG9mIHRoZSBjdXJyZW50IGVtYmVkLlxuICAgKlxuICAgKiBAcGFyYW0gez8oc3RyaW5nIHwgbnVtYmVyIHwgRGF0ZSl9IFt0aW1lc3RhbXBdXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0VGltZXN0YW1wKHRpbWVzdGFtcD86IHN0cmluZyB8IG51bWJlciB8IERhdGUpOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQudGltZXN0YW1wID0gbmV3IERhdGUodGltZXN0YW1wISkudG9JU09TdHJpbmcoKVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIHRodW1ibmFpbCBvZiB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHVybCAtIFVSTCBvZiB0aGUgaW1hZ2VcbiAgICogQHBhcmFtIHs/T21pdDxEaXNjb3JkRW1iZWRUaHVtYm5haWwsICd1cmwnPn0gW29wdGlvbnNdXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0VGh1bWJuYWlsKHVybDogc3RyaW5nLCBvcHRpb25zPzogT21pdDxEaXNjb3JkRW1iZWRUaHVtYm5haWwsICd1cmwnPik6IHRoaXMge1xuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC50aHVtYm5haWwgPSB7XG4gICAgICAuLi50aGlzLiNjdXJyZW50RW1iZWQudGh1bWJuYWlsLFxuICAgICAgLi4ub3B0aW9ucyxcbiAgICAgIHVybCxcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgVVJMIG9mIHRoZSBjdXJyZW50IGVtYmVkIHRpdGxlLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gdXJsXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0VXJsKHVybDogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy4jY3VycmVudEVtYmVkLnVybCA9IHVybFxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIHZpZGVvIG9mIHRoZSBjdXJyZW50IGVtYmVkLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gdXJsXG4gICAqIEBwYXJhbSB7P09taXQ8RGlzY29yZEVtYmVkVmlkZW8sICd1cmwnPn0gW29wdGlvbnNdXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0VmlkZW8odXJsOiBzdHJpbmcsIG9wdGlvbnM/OiBPbWl0PERpc2NvcmRFbWJlZFZpZGVvLCAndXJsJz4pOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQudmlkZW8gPSB7XG4gICAgICAuLi50aGlzLiNjdXJyZW50RW1iZWQudmlkZW8sXG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgdXJsLFxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogVmFsaWRhdGUgYWxsIGVtYmVkcyBhdmFpbGFibGUgYWdhaW5zdCBjdXJyZW50IGtub3duIERpc2NvcmQgbGltaXRzIHRvIGhlbHAgcHJldmVudCBiYWQgcmVxdWVzdHMuXG4gICAqXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgdmFsaWRhdGUoKTogdGhpcyB7XG4gICAgbGV0IHRvdGFsQ2hhcmFjdGVycyA9IDBcblxuICAgIGlmICh0aGlzLmxlbmd0aCA+IDEwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1lvdSBjYW4gbm90IGhhdmUgbW9yZSB0aGFuIDEwIGVtYmVkcyBvbiBhIHNpbmdsZSBtZXNzYWdlLicpXG4gICAgfVxuXG4gICAgdGhpcy5mb3JFYWNoKCh7IGF1dGhvciwgZGVzY3JpcHRpb24sIGZpZWxkcywgZm9vdGVyLCB0aXRsZSB9LCBpbmRleCkgPT4ge1xuICAgICAgaWYgKHRpdGxlKSB7XG4gICAgICAgIGNvbnN0IHRyaW1tZWRUaXRsZSA9IHRpdGxlLnRyaW0oKVxuXG4gICAgICAgIGlmICh0cmltbWVkVGl0bGUubGVuZ3RoID4gMjU2KSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBUaXRsZSBvZiBlbWJlZCAke2luZGV4fSBjYW4gbm90IGJlIGxvbmdlciB0aGFuIDI1NiBjaGFyYWN0ZXJzLmApXG4gICAgICAgIH1cblxuICAgICAgICB0b3RhbENoYXJhY3RlcnMgKz0gdHJpbW1lZFRpdGxlLmxlbmd0aFxuICAgICAgfVxuXG4gICAgICBpZiAoZGVzY3JpcHRpb24pIHtcbiAgICAgICAgY29uc3QgdHJpbW1lZERlc2NyaXB0aW9uID0gZGVzY3JpcHRpb24udHJpbSgpXG5cbiAgICAgICAgaWYgKHRyaW1tZWREZXNjcmlwdGlvbi5sZW5ndGggPiA0MDk2KSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBEZXNjcmlwdGlvbiBvZiBlbWJlZCAke2luZGV4fSBjYW4gbm90IGJlIGxvbmdlciB0aGFuIDQwOTYgY2hhcmFjdGVycy5gKVxuICAgICAgICB9XG5cbiAgICAgICAgdG90YWxDaGFyYWN0ZXJzICs9IHRyaW1tZWREZXNjcmlwdGlvbi5sZW5ndGhcbiAgICAgIH1cblxuICAgICAgaWYgKGZpZWxkcykge1xuICAgICAgICBpZiAoZmllbGRzLmxlbmd0aCA+IDI1KSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBlbWJlZCAke2luZGV4fSBjYW4gbm90IGhhdmUgbW9yZSB0aGFuIDI1IGZpZWxkcy5gKVxuICAgICAgICB9XG5cbiAgICAgICAgZmllbGRzLmZvckVhY2goKHsgbmFtZSwgdmFsdWUgfSwgZmllbGRJbmRleCkgPT4ge1xuICAgICAgICAgIGNvbnN0IHRyaW1tZWROYW1lID0gbmFtZS50cmltKClcbiAgICAgICAgICBjb25zdCB0cmltbWVkVmFsdWUgPSB2YWx1ZS50cmltKClcblxuICAgICAgICAgIGlmICh0cmltbWVkTmFtZS5sZW5ndGggPiAyNTYpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgTmFtZSBvZiBmaWVsZCAke2ZpZWxkSW5kZXh9IG9uIGVtYmVkICR7aW5kZXh9IGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gMjU2IGNoYXJhY3RlcnMuYClcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAodHJpbW1lZFZhbHVlLmxlbmd0aCA+IDQwOTYpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVmFsdWUgb2YgZmllbGQgJHtmaWVsZEluZGV4fSBvbiBlbWJlZCAke2luZGV4fSBjYW4gbm90IGJlIGxvbmdlciB0aGFuIDEwMjQgY2hhcmFjdGVycy5gKVxuICAgICAgICAgIH1cblxuICAgICAgICAgIHRvdGFsQ2hhcmFjdGVycyArPSB0cmltbWVkTmFtZS5sZW5ndGhcbiAgICAgICAgICB0b3RhbENoYXJhY3RlcnMgKz0gdHJpbW1lZFZhbHVlLmxlbmd0aFxuICAgICAgICB9KVxuICAgICAgfVxuXG4gICAgICBpZiAoZm9vdGVyKSB7XG4gICAgICAgIGNvbnN0IHRyaW1tZWRGb290ZXJUZXh0ID0gZm9vdGVyLnRleHQudHJpbSgpXG5cbiAgICAgICAgaWYgKHRyaW1tZWRGb290ZXJUZXh0Lmxlbmd0aCA+IDIwNDgpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEZvb3RlciB0ZXh0IG9mIGVtYmVkICR7aW5kZXh9IGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gMjA0OCBjaGFyYWN0ZXJzLmApXG4gICAgICAgIH1cblxuICAgICAgICB0b3RhbENoYXJhY3RlcnMgKz0gdHJpbW1lZEZvb3RlclRleHQubGVuZ3RoXG4gICAgICB9XG5cbiAgICAgIGlmIChhdXRob3IpIHtcbiAgICAgICAgY29uc3QgdHJpbW1lZEF1dGhvck5hbWUgPSBhdXRob3IubmFtZS50cmltKClcblxuICAgICAgICBpZiAodHJpbW1lZEF1dGhvck5hbWUubGVuZ3RoID4gMjU2KSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBBdXRob3IgbmFtZSBvZiBlbWJlZCAke2luZGV4fSBjYW4gbm90IGJlIGxvbmdlciB0aGFuIDI1NiBjaGFyYWN0ZXJzLmApXG4gICAgICAgIH1cblxuICAgICAgICB0b3RhbENoYXJhY3RlcnMgKz0gdHJpbW1lZEF1dGhvck5hbWUubGVuZ3RoXG4gICAgICB9XG4gICAgfSlcblxuICAgIGlmICh0b3RhbENoYXJhY3RlcnMgPiA2MDAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RvdGFsIGNoYXJhY3RlciBsZW5ndGggb2YgYWxsIGVtYmVkcyBjYW4gbm90IGV4Y2VlZCA2MDAwIGNoYXJhY3RlcnMuJylcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEByZWFkb25seVxuICAgKiBAdHlwZSB7RGlzY29yZEVtYmVkfVxuICAgKi9cbiAgZ2V0ICNjdXJyZW50RW1iZWQoKTogRGlzY29yZEVtYmVkIHtcbiAgICBpZiAodGhpcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRoaXMubmV3RW1iZWQoKVxuICAgICAgdGhpcy5zZXRDdXJyZW50RW1iZWQoKVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzW3RoaXMuI2N1cnJlbnRFbWJlZEluZGV4XVxuICB9XG59XG4iXSwibmFtZXMiOlsiRW1iZWRzQnVpbGRlciIsIkFycmF5IiwiYWRkRmllbGQiLCJuYW1lIiwidmFsdWUiLCJpbmxpbmUiLCJmaWVsZHMiLCJ1bmRlZmluZWQiLCJwdXNoIiwibmV3RW1iZWQiLCJsZW5ndGgiLCJFcnJvciIsInNldEN1cnJlbnRFbWJlZCIsInNldEF1dGhvciIsIm9wdGlvbnMiLCJhdXRob3IiLCJzZXRDb2xvciIsImNvbG9yIiwiY29udmVydGVkVmFsdWUiLCJwYXJzZUludCIsInJlcGxhY2UiLCJOdW1iZXIiLCJpc05hTiIsImluZGV4Iiwic2V0RGVzY3JpcHRpb24iLCJkZXNjcmlwdGlvbiIsInNldEZpZWxkcyIsInNldEZvb3RlciIsInRleHQiLCJmb290ZXIiLCJzZXRJbWFnZSIsInVybCIsImltYWdlIiwic2V0UHJvdmlkZXIiLCJwcm92aWRlciIsInNldFJhbmRvbUNvbG9yIiwiTWF0aCIsImZsb29yIiwicmFuZG9tIiwic2V0VGl0bGUiLCJ0aXRsZSIsInNldFVybCIsInNldFRpbWVzdGFtcCIsInRpbWVzdGFtcCIsIkRhdGUiLCJ0b0lTT1N0cmluZyIsInNldFRodW1ibmFpbCIsInRodW1ibmFpbCIsInNldFZpZGVvIiwidmlkZW8iLCJ2YWxpZGF0ZSIsInRvdGFsQ2hhcmFjdGVycyIsImZvckVhY2giLCJ0cmltbWVkVGl0bGUiLCJ0cmltIiwidHJpbW1lZERlc2NyaXB0aW9uIiwiZmllbGRJbmRleCIsInRyaW1tZWROYW1lIiwidHJpbW1lZFZhbHVlIiwidHJpbW1lZEZvb3RlclRleHQiLCJ0cmltbWVkQXV0aG9yTmFtZSJdLCJtYXBwaW5ncyI6IkFBVUE7Ozs7Ozs7OztDQVNDLEdBQ0QsT0FBTyxNQUFNQSxzQkFBc0JDO0lBQ2pDLENBQUEsaUJBQWtCLENBQVk7SUFFOUI7Ozs7Ozs7R0FPQyxHQUNEQyxTQUFTQyxJQUFZLEVBQUVDLEtBQWEsRUFBRUMsTUFBZ0IsRUFBUTtRQUM1RCxJQUFJLElBQUksQ0FBQyxDQUFBLFlBQWEsQ0FBQ0MsTUFBTSxLQUFLQyxXQUFXO1lBQzNDLElBQUksQ0FBQyxDQUFBLFlBQWEsQ0FBQ0QsTUFBTSxHQUFHLEVBQUU7UUFDaEM7UUFFQSxJQUFJLENBQUMsQ0FBQSxZQUFhLENBQUNBLE1BQU0sQ0FBQ0UsSUFBSSxDQUFDO1lBQzdCTDtZQUNBQztZQUNBQztRQUNGO1FBRUEsT0FBTyxJQUFJO0lBQ2I7SUFFQTs7OztHQUlDLEdBQ0RJLFdBQWlCO1FBQ2YsSUFBSSxJQUFJLENBQUNDLE1BQU0sSUFBSSxJQUFJO1lBQ3JCLE1BQU0sSUFBSUMsTUFBTTtRQUNsQjtRQUVBLElBQUksQ0FBQ0gsSUFBSSxDQUFDLENBQUM7UUFDWCxJQUFJLENBQUNJLGVBQWU7UUFFcEIsT0FBTyxJQUFJO0lBQ2I7SUFFQTs7Ozs7O0dBTUMsR0FDREMsVUFBVVYsSUFBWSxFQUFFVyxPQUEwQyxFQUFRO1FBQ3hFLElBQUksQ0FBQyxDQUFBLFlBQWEsQ0FBQ0MsTUFBTSxHQUFHO1lBQzFCLEdBQUcsSUFBSSxDQUFDLENBQUEsWUFBYSxDQUFDQSxNQUFNO1lBQzVCLEdBQUdELE9BQU87WUFDVlg7UUFDRjtRQUVBLE9BQU8sSUFBSTtJQUNiO0lBRUE7Ozs7O0dBS0MsR0FDRGEsU0FBU0MsS0FBc0IsRUFBUTtRQUNyQyxJQUFJLE9B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
|
|
302
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9idWlsZGVycy9lbWJlZHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUge1xuICBEaXNjb3JkRW1iZWQsXG4gIERpc2NvcmRFbWJlZEF1dGhvcixcbiAgRGlzY29yZEVtYmVkRmllbGQsXG4gIERpc2NvcmRFbWJlZEZvb3RlcixcbiAgRGlzY29yZEVtYmVkSW1hZ2UsXG4gIERpc2NvcmRFbWJlZFRodW1ibmFpbCxcbiAgRGlzY29yZEVtYmVkVmlkZW8sXG59IGZyb20gJ0BkaXNjb3JkZW5vL3R5cGVzJ1xuXG4vKipcbiAqIEEgYnVpbGRlciB0byBoZWxwIGNyZWF0ZSBEaXNjb3JkIGVtYmVkcy5cbiAqXG4gKiBAZXhhbXBsZVxuICogY29uc3QgZW1iZWRzID0gbmV3IEVtYmVkc0J1aWxkZXIoKVxuICogIC5zZXRUaXRsZSgnTXkgRW1iZWQnKVxuICogIC5zZXREZXNjcmlwdGlvbignVGhpcyBpcyBteSBuZXcgZW1iZWQnKVxuICogIC5uZXdFbWJlZCgpXG4gKiAgLnNldFRpdGxlKCdNeSBTZWNvbmQgRW1iZWQnKVxuICovXG5leHBvcnQgY2xhc3MgRW1iZWRzQnVpbGRlciBleHRlbmRzIEFycmF5PERpc2NvcmRFbWJlZD4ge1xuICAjY3VycmVudEVtYmVkSW5kZXg6IG51bWJlciA9IDBcblxuICAvKipcbiAgICogQWRkcyBhIG5ldyBmaWVsZCB0byB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IG5hbWUgLSBGaWVsZCBuYW1lXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB2YWx1ZSAtIEZpZWxkIHZhbHVlXG4gICAqIEBwYXJhbSB7P2Jvb2xlYW59IFtpbmxpbmU9ZmFsc2VdIC0gRmllbGQgc2hvdWxkIGJlIGlubGluZSBvciBub3QuXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgYWRkRmllbGQobmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nLCBpbmxpbmU/OiBib29sZWFuKTogdGhpcyB7XG4gICAgaWYgKHRoaXMuI2N1cnJlbnRFbWJlZC5maWVsZHMgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy4jY3VycmVudEVtYmVkLmZpZWxkcyA9IFtdXG4gICAgfVxuXG4gICAgdGhpcy4jY3VycmVudEVtYmVkLmZpZWxkcy5wdXNoKHtcbiAgICAgIG5hbWUsXG4gICAgICB2YWx1ZSxcbiAgICAgIGlubGluZSxcbiAgICB9KVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIG11bHRpcGxlIG5ldyBmaWVsZHMgdG8gdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7RGlzY29yZEVtYmVkRmllbGRbXX0gZmllbGRzIC0gVGhlIGZpZWxkcyB0byBhZGRcbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBhZGRGaWVsZHMoZmllbGRzOiBEaXNjb3JkRW1iZWRGaWVsZFtdKTogdGhpcyB7XG4gICAgaWYgKHRoaXMuI2N1cnJlbnRFbWJlZC5maWVsZHMgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy4jY3VycmVudEVtYmVkLmZpZWxkcyA9IFtdXG4gICAgfVxuXG4gICAgdGhpcy4jY3VycmVudEVtYmVkLmZpZWxkcy5wdXNoKC4uLmZpZWxkcylcblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIGJsYW5rIGVtYmVkLlxuICAgKlxuICAgKiBAcmV0dXJucyB7RW1iZWRzQnVpbGRlcn1cbiAgICovXG4gIG5ld0VtYmVkKCk6IHRoaXMge1xuICAgIGlmICh0aGlzLmxlbmd0aCA+PSAxMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdNYXhpbXVtIGVtYmVkIGNvdW50IGV4Y2VlZGVkLiBZb3UgY2FuIG5vdCBoYXZlIG1vcmUgdGhhbiAxMCBlbWJlZHMuJylcbiAgICB9XG5cbiAgICB0aGlzLnB1c2goe30pXG4gICAgdGhpcy5zZXRDdXJyZW50RW1iZWQoKVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIGN1cnJlbnQgZW1iZWQgYXV0aG9yLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gbmFtZSAtIE5hbWUgb2YgdGhlIGF1dGhvclxuICAgKiBAcGFyYW0gez9PbWl0PERpc2NvcmRFbWJlZEF1dGhvciwgJ25hbWUnPn0gW29wdGlvbnNdIC0gRXh0cmEgYXV0aG9yIG9wdGlvbnNcbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRBdXRob3IobmFtZTogc3RyaW5nLCBvcHRpb25zPzogT21pdDxEaXNjb3JkRW1iZWRBdXRob3IsICduYW1lJz4pOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQuYXV0aG9yID0ge1xuICAgICAgLi4udGhpcy4jY3VycmVudEVtYmVkLmF1dGhvcixcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBuYW1lLFxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBjb2xvciBvbiB0aGUgc2lkZSBvZiB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHBhcmFtIHsobnVtYmVyIHwgc3RyaW5nKX0gY29sb3IgLSBUaGUgY29sb3IsIGluIGJhc2UxNiBvciBoZXggY29sb3IgY29kZVxuICAgKiBAcmV0dXJucyB7RW1iZWRzQnVpbGRlcn1cbiAgICovXG4gIHNldENvbG9yKGNvbG9yOiBudW1iZXIgfCBzdHJpbmcpOiB0aGlzIHtcbiAgICBpZiAodHlwZW9mIGNvbG9yID09PSAnc3RyaW5nJykge1xuICAgICAgY29uc3QgY29udmVydGVkVmFsdWUgPSBwYXJzZUludChjb2xvci5yZXBsYWNlKCcjJywgJycpLCAxNilcbiAgICAgIGNvbG9yID0gTnVtYmVyLmlzTmFOKGNvbnZlcnRlZFZhbHVlKSA/IDAgOiBjb252ZXJ0ZWRWYWx1ZVxuICAgIH1cblxuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC5jb2xvciA9IGNvbG9yXG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgY3VycmVudCBlbWJlZCB0byBhIGRpZmZlcmVudCBpbmRleC5cbiAgICpcbiAgICogV0FSTklORzogT25seSB1c2UgdGhpcyBtZXRob2QgaWYgeW91IGtub3cgd2hhdCB5b3UncmUgZG9pbmcuIE1ha2Ugc3VyZSB0byBzZXQgaXQgYmFjayB0byB0aGUgbGF0ZXN0IHdoZW4geW91J3JlIGRvbmUuXG4gICAqXG4gICAqIEBwYXJhbSB7P251bWJlcn0gW2luZGV4XSAtIFRoZSBpbmRleCBvZiB0aGUgZW1iZWQgaW4gdGhlIEVtYmVkc0J1aWxkZXIgYXJyYXlcbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRDdXJyZW50RW1iZWQoaW5kZXg/OiBudW1iZXIpOiB0aGlzIHtcbiAgICBpZiAoaW5kZXggPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy4jY3VycmVudEVtYmVkSW5kZXggPSB0aGlzLmxlbmd0aCAtIDFcblxuICAgICAgcmV0dXJuIHRoaXNcbiAgICB9XG5cbiAgICBpZiAoaW5kZXggPj0gdGhpcy5sZW5ndGggfHwgaW5kZXggPCAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0NhbiBub3Qgc2V0IHRoZSBjdXJyZW50IGVtYmVkIHRvIGEgaW5kZXggb3V0IG9mIGJvdW5kcy4nKVxuICAgIH1cblxuICAgIHRoaXMuI2N1cnJlbnRFbWJlZEluZGV4ID0gaW5kZXhcblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBkZXNjcmlwdGlvbiBvZiB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGRlc2NyaXB0aW9uIC0gRGVzY3JpcHRpb25cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXREZXNjcmlwdGlvbihkZXNjcmlwdGlvbjogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy4jY3VycmVudEVtYmVkLmRlc2NyaXB0aW9uID0gZGVzY3JpcHRpb25cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogT3ZlcndyaXRlIGFsbCBmaWVsZHMgb24gdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7RGlzY29yZEVtYmVkRmllbGRbXX0gZmllbGRzXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0RmllbGRzKGZpZWxkczogRGlzY29yZEVtYmVkRmllbGRbXSk6IHRoaXMge1xuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC5maWVsZHMgPSBmaWVsZHNcblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBmb290ZXIgaW4gdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB0ZXh0IC0gVGhlIHRleHQgdG8gZGlzcGxheSBpbiB0aGUgZm9vdGVyXG4gICAqIEBwYXJhbSB7P09taXQ8RGlzY29yZEVtYmVkRm9vdGVyLCAndGV4dCc+fSBbb3B0aW9uc11cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRGb290ZXIodGV4dDogc3RyaW5nLCBvcHRpb25zPzogT21pdDxEaXNjb3JkRW1iZWRGb290ZXIsICd0ZXh0Jz4pOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQuZm9vdGVyID0ge1xuICAgICAgLi4udGhpcy4jY3VycmVudEVtYmVkLmZvb3RlcixcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICB0ZXh0LFxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBpbWFnZSBpbiB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHVybCAtIFVSTCBvZiB0aGUgaW1hZ2VcbiAgICogQHBhcmFtIHs/T21pdDxEaXNjb3JkRW1iZWRJbWFnZSwgJ3VybCc+fSBbb3B0aW9uc11cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRJbWFnZSh1cmw6IHN0cmluZywgb3B0aW9ucz86IE9taXQ8RGlzY29yZEVtYmVkSW1hZ2UsICd1cmwnPik6IHRoaXMge1xuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC5pbWFnZSA9IHtcbiAgICAgIC4uLnRoaXMuI2N1cnJlbnRFbWJlZC5pbWFnZSxcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICB1cmwsXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIHByb3ZpZGVyIG9mIHRoZSBjdXJyZW50IGVtYmVkLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gbmFtZVxuICAgKiBAcGFyYW0gez9zdHJpbmd9IFt1cmxdXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0UHJvdmlkZXIobmFtZTogc3RyaW5nLCB1cmw/OiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQucHJvdmlkZXIgPSB7XG4gICAgICBuYW1lLFxuICAgICAgdXJsLFxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBjb2xvciBvZiB0aGUgY3VycmVudCBlbWJlZCB0byBhIHJhbmRvbSB2YWx1ZS5cbiAgICpcbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRSYW5kb21Db2xvcigpOiB0aGlzIHtcbiAgICByZXR1cm4gdGhpcy5zZXRDb2xvcihNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAoMHhmZmZmZmYgKyAxKSkpXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSB0aXRsZSBvZiB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHRpdGxlXG4gICAqIEBwYXJhbSB7P3N0cmluZ30gW3VybF1cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRUaXRsZSh0aXRsZTogc3RyaW5nLCB1cmw/OiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQudGl0bGUgPSB0aXRsZVxuXG4gICAgaWYgKHVybCkge1xuICAgICAgdGhpcy5zZXRVcmwodXJsKVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSB0aW1lc3RhbXAgb2YgdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7PyhzdHJpbmcgfCBudW1iZXIgfCBEYXRlKX0gW3RpbWVzdGFtcF1cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRUaW1lc3RhbXAodGltZXN0YW1wPzogc3RyaW5nIHwgbnVtYmVyIHwgRGF0ZSk6IHRoaXMge1xuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC50aW1lc3RhbXAgPSBuZXcgRGF0ZSh0aW1lc3RhbXAhKS50b0lTT1N0cmluZygpXG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgdGh1bWJuYWlsIG9mIHRoZSBjdXJyZW50IGVtYmVkLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gdXJsIC0gVVJMIG9mIHRoZSBpbWFnZVxuICAgKiBAcGFyYW0gez9PbWl0PERpc2NvcmRFbWJlZFRodW1ibmFpbCwgJ3VybCc+fSBbb3B0aW9uc11cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRUaHVtYm5haWwodXJsOiBzdHJpbmcsIG9wdGlvbnM/OiBPbWl0PERpc2NvcmRFbWJlZFRodW1ibmFpbCwgJ3VybCc+KTogdGhpcyB7XG4gICAgdGhpcy4jY3VycmVudEVtYmVkLnRodW1ibmFpbCA9IHtcbiAgICAgIC4uLnRoaXMuI2N1cnJlbnRFbWJlZC50aHVtYm5haWwsXG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgdXJsLFxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBVUkwgb2YgdGhlIGN1cnJlbnQgZW1iZWQgdGl0bGUuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB1cmxcbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRVcmwodXJsOiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQudXJsID0gdXJsXG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgdmlkZW8gb2YgdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB1cmxcbiAgICogQHBhcmFtIHs/T21pdDxEaXNjb3JkRW1iZWRWaWRlbywgJ3VybCc+fSBbb3B0aW9uc11cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRWaWRlbyh1cmw6IHN0cmluZywgb3B0aW9ucz86IE9taXQ8RGlzY29yZEVtYmVkVmlkZW8sICd1cmwnPik6IHRoaXMge1xuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC52aWRlbyA9IHtcbiAgICAgIC4uLnRoaXMuI2N1cnJlbnRFbWJlZC52aWRlbyxcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICB1cmwsXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBWYWxpZGF0ZSBhbGwgZW1iZWRzIGF2YWlsYWJsZSBhZ2FpbnN0IGN1cnJlbnQga25vd24gRGlzY29yZCBsaW1pdHMgdG8gaGVscCBwcmV2ZW50IGJhZCByZXF1ZXN0cy5cbiAgICpcbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICB2YWxpZGF0ZSgpOiB0aGlzIHtcbiAgICBsZXQgdG90YWxDaGFyYWN0ZXJzID0gMFxuXG4gICAgaWYgKHRoaXMubGVuZ3RoID4gMTApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignWW91IGNhbiBub3QgaGF2ZSBtb3JlIHRoYW4gMTAgZW1iZWRzIG9uIGEgc2luZ2xlIG1lc3NhZ2UuJylcbiAgICB9XG5cbiAgICB0aGlzLmZvckVhY2goKHsgYXV0aG9yLCBkZXNjcmlwdGlvbiwgZmllbGRzLCBmb290ZXIsIHRpdGxlIH0sIGluZGV4KSA9PiB7XG4gICAgICBpZiAodGl0bGUpIHtcbiAgICAgICAgY29uc3QgdHJpbW1lZFRpdGxlID0gdGl0bGUudHJpbSgpXG5cbiAgICAgICAgaWYgKHRyaW1tZWRUaXRsZS5sZW5ndGggPiAyNTYpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFRpdGxlIG9mIGVtYmVkICR7aW5kZXh9IGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gMjU2IGNoYXJhY3RlcnMuYClcbiAgICAgICAgfVxuXG4gICAgICAgIHRvdGFsQ2hhcmFjdGVycyArPSB0cmltbWVkVGl0bGUubGVuZ3RoXG4gICAgICB9XG5cbiAgICAgIGlmIChkZXNjcmlwdGlvbikge1xuICAgICAgICBjb25zdCB0cmltbWVkRGVzY3JpcHRpb24gPSBkZXNjcmlwdGlvbi50cmltKClcblxuICAgICAgICBpZiAodHJpbW1lZERlc2NyaXB0aW9uLmxlbmd0aCA+IDQwOTYpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYERlc2NyaXB0aW9uIG9mIGVtYmVkICR7aW5kZXh9IGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gNDA5NiBjaGFyYWN0ZXJzLmApXG4gICAgICAgIH1cblxuICAgICAgICB0b3RhbENoYXJhY3RlcnMgKz0gdHJpbW1lZERlc2NyaXB0aW9uLmxlbmd0aFxuICAgICAgfVxuXG4gICAgICBpZiAoZmllbGRzKSB7XG4gICAgICAgIGlmIChmaWVsZHMubGVuZ3RoID4gMjUpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYGVtYmVkICR7aW5kZXh9IGNhbiBub3QgaGF2ZSBtb3JlIHRoYW4gMjUgZmllbGRzLmApXG4gICAgICAgIH1cblxuICAgICAgICBmaWVsZHMuZm9yRWFjaCgoeyBuYW1lLCB2YWx1ZSB9LCBmaWVsZEluZGV4KSA9PiB7XG4gICAgICAgICAgY29uc3QgdHJpbW1lZE5hbWUgPSBuYW1lLnRyaW0oKVxuICAgICAgICAgIGNvbnN0IHRyaW1tZWRWYWx1ZSA9IHZhbHVlLnRyaW0oKVxuXG4gICAgICAgICAgaWYgKHRyaW1tZWROYW1lLmxlbmd0aCA+IDI1Nikge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBOYW1lIG9mIGZpZWxkICR7ZmllbGRJbmRleH0gb24gZW1iZWQgJHtpbmRleH0gY2FuIG5vdCBiZSBsb25nZXIgdGhhbiAyNTYgY2hhcmFjdGVycy5gKVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmICh0cmltbWVkVmFsdWUubGVuZ3RoID4gNDA5Nikge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBWYWx1ZSBvZiBmaWVsZCAke2ZpZWxkSW5kZXh9IG9uIGVtYmVkICR7aW5kZXh9IGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gMTAyNCBjaGFyYWN0ZXJzLmApXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdG90YWxDaGFyYWN0ZXJzICs9IHRyaW1tZWROYW1lLmxlbmd0aFxuICAgICAgICAgIHRvdGFsQ2hhcmFjdGVycyArPSB0cmltbWVkVmFsdWUubGVuZ3RoXG4gICAgICAgIH0pXG4gICAgICB9XG5cbiAgICAgIGlmIChmb290ZXIpIHtcbiAgICAgICAgY29uc3QgdHJpbW1lZEZvb3RlclRleHQgPSBmb290ZXIudGV4dC50cmltKClcblxuICAgICAgICBpZiAodHJpbW1lZEZvb3RlclRleHQubGVuZ3RoID4gMjA0OCkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgRm9vdGVyIHRleHQgb2YgZW1iZWQgJHtpbmRleH0gY2FuIG5vdCBiZSBsb25nZXIgdGhhbiAyMDQ4IGNoYXJhY3RlcnMuYClcbiAgICAgICAgfVxuXG4gICAgICAgIHRvdGFsQ2hhcmFjdGVycyArPSB0cmltbWVkRm9vdGVyVGV4dC5sZW5ndGhcbiAgICAgIH1cblxuICAgICAgaWYgKGF1dGhvcikge1xuICAgICAgICBjb25zdCB0cmltbWVkQXV0aG9yTmFtZSA9IGF1dGhvci5uYW1lLnRyaW0oKVxuXG4gICAgICAgIGlmICh0cmltbWVkQXV0aG9yTmFtZS5sZW5ndGggPiAyNTYpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEF1dGhvciBuYW1lIG9mIGVtYmVkICR7aW5kZXh9IGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gMjU2IGNoYXJhY3RlcnMuYClcbiAgICAgICAgfVxuXG4gICAgICAgIHRvdGFsQ2hhcmFjdGVycyArPSB0cmltbWVkQXV0aG9yTmFtZS5sZW5ndGhcbiAgICAgIH1cbiAgICB9KVxuXG4gICAgaWYgKHRvdGFsQ2hhcmFjdGVycyA+IDYwMDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignVG90YWwgY2hhcmFjdGVyIGxlbmd0aCBvZiBhbGwgZW1iZWRzIGNhbiBub3QgZXhjZWVkIDYwMDAgY2hhcmFjdGVycy4nKVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHJlYWRvbmx5XG4gICAqIEB0eXBlIHtEaXNjb3JkRW1iZWR9XG4gICAqL1xuICBnZXQgI2N1cnJlbnRFbWJlZCgpOiBEaXNjb3JkRW1iZWQge1xuICAgIGlmICh0aGlzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhpcy5uZXdFbWJlZCgpXG4gICAgICB0aGlzLnNldEN1cnJlbnRFbWJlZCgpXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXNbdGhpcy4jY3VycmVudEVtYmVkSW5kZXhdXG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJFbWJlZHNCdWlsZGVyIiwiQXJyYXkiLCJhZGRGaWVsZCIsIm5hbWUiLCJ2YWx1ZSIsImlubGluZSIsImZpZWxkcyIsInVuZGVmaW5lZCIsInB1c2giLCJhZGRGaWVsZHMiLCJuZXdFbWJlZCIsImxlbmd0aCIsIkVycm9yIiwic2V0Q3VycmVudEVtYmVkIiwic2V0QXV0aG9yIiwib3B0aW9ucyIsImF1dGhvciIsInNldENvbG9yIiwiY29sb3IiLCJjb252ZXJ0ZWRWYWx1ZSIsInBhcnNlSW50IiwicmVwbGFjZSIsIk51bWJlciIsImlzTmFOIiwiaW5kZXgiLCJzZXREZXNjcmlwdGlvbiIsImRlc2NyaXB0aW9uIiwic2V0RmllbGRzIiwic2V0Rm9vdGVyIiwidGV4dCIsImZvb3RlciIsInNldEltYWdlIiwidXJsIiwiaW1hZ2UiLCJzZXRQcm92aWRlciIsInByb3ZpZGVyIiwic2V0UmFuZG9tQ29sb3IiLCJNYXRoIiwiZmxvb3IiLCJyYW5kb20iLCJzZXRUaXRsZSIsInRpdGxlIiwic2V0VXJsIiwic2V0VGltZXN0YW1wIiwidGltZXN0YW1wIiwiRGF0ZSIsInRvSVNPU3RyaW5nIiwic2V0VGh1bWJuYWlsIiwidGh1bWJuYWlsIiwic2V0VmlkZW8iLCJ2aWRlbyIsInZhbGlkYXRlIiwidG90YWxDaGFyYWN0ZXJzIiwiZm9yRWFjaCIsInRyaW1tZWRUaXRsZSIsInRyaW0iLCJ0cmltbWVkRGVzY3JpcHRpb24iLCJmaWVsZEluZGV4IiwidHJpbW1lZE5hbWUiLCJ0cmltbWVkVmFsdWUiLCJ0cmltbWVkRm9vdGVyVGV4dCIsInRyaW1tZWRBdXRob3JOYW1lIl0sIm1hcHBpbmdzIjoiQUFVQTs7Ozs7Ozs7O0NBU0MsR0FDRCxPQUFPLE1BQU1BLHNCQUFzQkM7SUFDakMsQ0FBQSxpQkFBa0IsQ0FBWTtJQUU5Qjs7Ozs7OztHQU9DLEdBQ0RDLFNBQVNDLElBQVksRUFBRUMsS0FBYSxFQUFFQyxNQUFnQixFQUFRO1FBQzVELElBQUksSUFBSSxDQUFDLENBQUEsWUFBYSxDQUFDQyxNQUFNLEtBQUtDLFdBQVc7WUFDM0MsSUFBSSxDQUFDLENBQUEsWUFBYSxDQUFDRCxNQUFNLEdBQUcsRUFBRTtRQUNoQztRQUVBLElBQUksQ0FBQyxDQUFBLFlBQWEsQ0FBQ0EsTUFBTSxDQUFDRSxJQUFJLENBQUM7WUFDN0JMO1lBQ0FDO1lBQ0FDO1FBQ0Y7UUFFQSxPQUFPLElBQUk7SUFD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
|
|
@@ -12,7 +12,7 @@ import type { DiscordEmbed, DiscordEmbedAuthor, DiscordEmbedField, DiscordEmbedF
|
|
|
12
12
|
export declare class EmbedsBuilder extends Array<DiscordEmbed> {
|
|
13
13
|
#private;
|
|
14
14
|
/**
|
|
15
|
-
* Adds a new field to the embed
|
|
15
|
+
* Adds a new field to the current embed.
|
|
16
16
|
*
|
|
17
17
|
* @param {string} name - Field name
|
|
18
18
|
* @param {string} value - Field value
|
|
@@ -20,6 +20,13 @@ export declare class EmbedsBuilder extends Array<DiscordEmbed> {
|
|
|
20
20
|
* @returns {EmbedsBuilder}
|
|
21
21
|
*/
|
|
22
22
|
addField(name: string, value: string, inline?: boolean): this;
|
|
23
|
+
/**
|
|
24
|
+
* Adds multiple new fields to the current embed.
|
|
25
|
+
*
|
|
26
|
+
* @param {DiscordEmbedField[]} fields - The fields to add
|
|
27
|
+
* @returns {EmbedsBuilder}
|
|
28
|
+
*/
|
|
29
|
+
addFields(fields: DiscordEmbedField[]): this;
|
|
23
30
|
/**
|
|
24
31
|
* Creates a blank embed.
|
|
25
32
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"embeds.d.ts","sourceRoot":"","sources":["../../../src/builders/embeds.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,EACjB,qBAAqB,EACrB,iBAAiB,EAClB,MAAM,mBAAmB,CAAA;AAE1B;;;;;;;;;GASG;AACH,qBAAa,aAAc,SAAQ,KAAK,CAAC,YAAY,CAAC;;IAGpD;;;;;;;OAOG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,IAAI;IAc7D;;;;OAIG;IACH,QAAQ,IAAI,IAAI;IAWhB;;;;;;OAMG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,kBAAkB,EAAE,MAAM,CAAC,GAAG,IAAI;IAUzE;;;;;OAKG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAWtC;;;;;;;OAOG;IACH,eAAe,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAgBrC;;;;;OAKG;IACH,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAMzC;;;;;OAKG;IACH,SAAS,CAAC,MAAM,EAAE,iBAAiB,EAAE,GAAG,IAAI;IAM5C;;;;;;OAMG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,kBAAkB,EAAE,MAAM,CAAC,GAAG,IAAI;IAUzE;;;;;;OAMG;IACH,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,iBAAiB,EAAE,KAAK,CAAC,GAAG,IAAI;IAUrE;;;;;;OAMG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI;IAS7C;;;;OAIG;IACH,cAAc,IAAI,IAAI;IAItB;;;;;;OAMG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI;IAU3C;;;;;OAKG;IACH,YAAY,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI;IAMtD;;;;;;OAMG;IACH,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,qBAAqB,EAAE,KAAK,CAAC,GAAG,IAAI;IAU7E;;;;;OAKG;IACH,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAMzB;;;;;;OAMG;IACH,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,iBAAiB,EAAE,KAAK,CAAC,GAAG,IAAI;IAUrE;;;;OAIG;IACH,QAAQ,IAAI,IAAI;CA4FjB"}
|
|
1
|
+
{"version":3,"file":"embeds.d.ts","sourceRoot":"","sources":["../../../src/builders/embeds.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,EACjB,qBAAqB,EACrB,iBAAiB,EAClB,MAAM,mBAAmB,CAAA;AAE1B;;;;;;;;;GASG;AACH,qBAAa,aAAc,SAAQ,KAAK,CAAC,YAAY,CAAC;;IAGpD;;;;;;;OAOG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,IAAI;IAc7D;;;;;OAKG;IACH,SAAS,CAAC,MAAM,EAAE,iBAAiB,EAAE,GAAG,IAAI;IAU5C;;;;OAIG;IACH,QAAQ,IAAI,IAAI;IAWhB;;;;;;OAMG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,kBAAkB,EAAE,MAAM,CAAC,GAAG,IAAI;IAUzE;;;;;OAKG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAWtC;;;;;;;OAOG;IACH,eAAe,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAgBrC;;;;;OAKG;IACH,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAMzC;;;;;OAKG;IACH,SAAS,CAAC,MAAM,EAAE,iBAAiB,EAAE,GAAG,IAAI;IAM5C;;;;;;OAMG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,kBAAkB,EAAE,MAAM,CAAC,GAAG,IAAI;IAUzE;;;;;;OAMG;IACH,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,iBAAiB,EAAE,KAAK,CAAC,GAAG,IAAI;IAUrE;;;;;;OAMG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI;IAS7C;;;;OAIG;IACH,cAAc,IAAI,IAAI;IAItB;;;;;;OAMG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI;IAU3C;;;;;OAKG;IACH,YAAY,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI;IAMtD;;;;;;OAMG;IACH,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,qBAAqB,EAAE,KAAK,CAAC,GAAG,IAAI;IAU7E;;;;;OAKG;IACH,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAMzB;;;;;;OAMG;IACH,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,iBAAiB,EAAE,KAAK,CAAC,GAAG,IAAI;IAUrE;;;;OAIG;IACH,QAAQ,IAAI,IAAI;CA4FjB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@discordeno/utils",
|
|
3
|
-
"version": "21.0.0-next.
|
|
3
|
+
"version": "21.0.0-next.efc15e1",
|
|
4
4
|
"main": "./dist/esm/index.js",
|
|
5
5
|
"exports": {
|
|
6
6
|
"import": "./dist/esm/index.js",
|
|
@@ -29,19 +29,19 @@
|
|
|
29
29
|
"test:test-type": "tsc --project tests/tsconfig.json"
|
|
30
30
|
},
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"@discordeno/types": "21.0.0-next.
|
|
32
|
+
"@discordeno/types": "21.0.0-next.efc15e1"
|
|
33
33
|
},
|
|
34
34
|
"devDependencies": {
|
|
35
35
|
"@biomejs/biome": "^1.9.4",
|
|
36
|
-
"@swc/cli": "^0.5.
|
|
36
|
+
"@swc/cli": "^0.5.2",
|
|
37
37
|
"@swc/core": "^1.10.2",
|
|
38
38
|
"@types/chai": "^5.0.1",
|
|
39
39
|
"@types/mocha": "^10.0.10",
|
|
40
40
|
"@types/node": "^22.10.2",
|
|
41
41
|
"@types/sinon": "^17.0.3",
|
|
42
|
-
"c8": "^10.1.
|
|
42
|
+
"c8": "^10.1.3",
|
|
43
43
|
"chai": "^5.1.2",
|
|
44
|
-
"mocha": "^
|
|
44
|
+
"mocha": "^11.0.1",
|
|
45
45
|
"sinon": "^19.0.2",
|
|
46
46
|
"ts-node": "^10.9.2",
|
|
47
47
|
"tsconfig": "*",
|