@discordeno/utils 20.0.0 → 21.0.0-next.27808be

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 fields array.
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}
@@ -170,7 +182,7 @@ let EmbedsBuilder = class EmbedsBuilder extends Array {
170
182
  * @param {?(string | number | Date)} [timestamp]
171
183
  * @returns {EmbedsBuilder}
172
184
  */ setTimestamp(timestamp) {
173
- this.#currentEmbed.timestamp = new Date(timestamp).toISOString();
185
+ this.#currentEmbed.timestamp = new Date(timestamp ?? Date.now()).toISOString();
174
186
  return this;
175
187
  }
176
188
  /**
@@ -288,4 +300,4 @@ let EmbedsBuilder = class EmbedsBuilder extends Array {
288
300
  }
289
301
  };
290
302
 
291
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9idWlsZGVycy9lbWJlZHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUge1xuICBEaXNjb3JkRW1iZWQsXG4gIERpc2NvcmRFbWJlZEF1dGhvcixcbiAgRGlzY29yZEVtYmVkRmllbGQsXG4gIERpc2NvcmRFbWJlZEZvb3RlcixcbiAgRGlzY29yZEVtYmVkSW1hZ2UsXG4gIERpc2NvcmRFbWJlZFRodW1ibmFpbCxcbiAgRGlzY29yZEVtYmVkVmlkZW8sXG59IGZyb20gJ0BkaXNjb3JkZW5vL3R5cGVzJ1xuXG4vKipcbiAqIEEgYnVpbGRlciB0byBoZWxwIGNyZWF0ZSBEaXNjb3JkIGVtYmVkcy5cbiAqXG4gKiBAZXhhbXBsZVxuICogY29uc3QgZW1iZWRzID0gbmV3IEVtYmVkQnVpbGRlcigpXG4gKiAgLnNldFRpdGxlKCdNeSBFbWJlZCcpXG4gKiAgLnNldERlc2NyaXB0aW9uKCdUaGlzIGlzIG15IG5ldyBlbWJlZCcpXG4gKiAgLm5ld0VtYmVkKClcbiAqICAuc2V0VGl0bGUoJ015IFNlY29uZCBFbWJlZCcpXG4gKi9cbmV4cG9ydCBjbGFzcyBFbWJlZHNCdWlsZGVyIGV4dGVuZHMgQXJyYXk8RGlzY29yZEVtYmVkPiB7XG4gICNjdXJyZW50RW1iZWRJbmRleDogbnVtYmVyID0gMFxuXG4gIC8qKlxuICAgKiBBZGRzIGEgbmV3IGZpZWxkIHRvIHRoZSBlbWJlZCBmaWVsZHMgYXJyYXkuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBuYW1lIC0gRmllbGQgbmFtZVxuICAgKiBAcGFyYW0ge3N0cmluZ30gdmFsdWUgLSBGaWVsZCB2YWx1ZVxuICAgKiBAcGFyYW0gez9ib29sZWFufSBbaW5saW5lPWZhbHNlXSAtIEZpZWxkIHNob3VsZCBiZSBpbmxpbmUgb3Igbm90LlxuICAgKiBAcmV0dXJucyB7RW1iZWRzQnVpbGRlcn1cbiAgICovXG4gIGFkZEZpZWxkKG5hbWU6IHN0cmluZywgdmFsdWU6IHN0cmluZywgaW5saW5lPzogYm9vbGVhbik6IHRoaXMge1xuICAgIGlmICh0aGlzLiNjdXJyZW50RW1iZWQuZmllbGRzID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMuI2N1cnJlbnRFbWJlZC5maWVsZHMgPSBbXVxuICAgIH1cblxuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC5maWVsZHMucHVzaCh7XG4gICAgICBuYW1lLFxuICAgICAgdmFsdWUsXG4gICAgICBpbmxpbmUsXG4gICAgfSlcblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIGJsYW5rIGVtYmVkLlxuICAgKlxuICAgKiBAcmV0dXJucyB7RW1iZWRzQnVpbGRlcn1cbiAgICovXG4gIG5ld0VtYmVkKCk6IHRoaXMge1xuICAgIGlmICh0aGlzLmxlbmd0aCA+PSAxMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdNYXhpbXVtIGVtYmVkIGNvdW50IGV4Y2VlZGVkLiBZb3UgY2FuIG5vdCBoYXZlIG1vcmUgdGhhbiAxMCBlbWJlZHMuJylcbiAgICB9XG5cbiAgICB0aGlzLnB1c2goe30pXG4gICAgdGhpcy5zZXRDdXJyZW50RW1iZWQoKVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIGN1cnJlbnQgZW1iZWQgYXV0aG9yLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gbmFtZSAtIE5hbWUgb2YgdGhlIGF1dGhvclxuICAgKiBAcGFyYW0gez9PbWl0PERpc2NvcmRFbWJlZEF1dGhvciwgJ25hbWUnPn0gW29wdGlvbnNdIC0gRXh0cmEgYXV0aG9yIG9wdGlvbnNcbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRBdXRob3IobmFtZTogc3RyaW5nLCBvcHRpb25zPzogT21pdDxEaXNjb3JkRW1iZWRBdXRob3IsICduYW1lJz4pOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQuYXV0aG9yID0ge1xuICAgICAgLi4udGhpcy4jY3VycmVudEVtYmVkLmF1dGhvcixcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBuYW1lLFxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBjb2xvciBvbiB0aGUgc2lkZSBvZiB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHBhcmFtIHsobnVtYmVyIHwgc3RyaW5nKX0gY29sb3IgLSBUaGUgY29sb3IsIGluIGJhc2UxNiBvciBoZXggY29sb3IgY29kZVxuICAgKiBAcmV0dXJucyB7RW1iZWRzQnVpbGRlcn1cbiAgICovXG4gIHNldENvbG9yKGNvbG9yOiBudW1iZXIgfCBzdHJpbmcpOiB0aGlzIHtcbiAgICBpZiAodHlwZW9mIGNvbG9yID09PSAnc3RyaW5nJykge1xuICAgICAgY29uc3QgY29udmVydGVkVmFsdWUgPSBwYXJzZUludChjb2xvci5yZXBsYWNlKCcjJywgJycpLCAxNilcbiAgICAgIGNvbG9yID0gTnVtYmVyLmlzTmFOKGNvbnZlcnRlZFZhbHVlKSA/IDAgOiBjb252ZXJ0ZWRWYWx1ZVxuICAgIH1cblxuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC5jb2xvciA9IGNvbG9yXG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgY3VycmVudCBlbWJlZCB0byBhIGRpZmZlcmVudCBpbmRleC5cbiAgICpcbiAgICogV0FSTklORzogT25seSB1c2UgdGhpcyBtZXRob2QgaWYgeW91IGtub3cgd2hhdCB5b3UncmUgZG9pbmcuIE1ha2Ugc3VyZSB0byBzZXQgaXQgYmFjayB0byB0aGUgbGF0ZXN0IHdoZW4geW91J3JlIGRvbmUuXG4gICAqXG4gICAqIEBwYXJhbSB7P251bWJlcn0gW2luZGV4XSAtIFRoZSBpbmRleCBvZiB0aGUgZW1iZWQgaW4gdGhlIEVtYmVkc0J1aWxkZXIgYXJyYXlcbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRDdXJyZW50RW1iZWQoaW5kZXg/OiBudW1iZXIpOiB0aGlzIHtcbiAgICBpZiAoaW5kZXggPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy4jY3VycmVudEVtYmVkSW5kZXggPSB0aGlzLmxlbmd0aCAtIDFcblxuICAgICAgcmV0dXJuIHRoaXNcbiAgICB9XG5cbiAgICBpZiAoaW5kZXggPj0gdGhpcy5sZW5ndGggfHwgaW5kZXggPCAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0NhbiBub3Qgc2V0IHRoZSBjdXJyZW50IGVtYmVkIHRvIGEgaW5kZXggb3V0IG9mIGJvdW5kcy4nKVxuICAgIH1cblxuICAgIHRoaXMuI2N1cnJlbnRFbWJlZEluZGV4ID0gaW5kZXhcblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBkZXNjcmlwdGlvbiBvZiB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGRlc2NyaXB0aW9uIC0gRGVzY3JpcHRpb25cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXREZXNjcmlwdGlvbihkZXNjcmlwdGlvbjogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy4jY3VycmVudEVtYmVkLmRlc2NyaXB0aW9uID0gZGVzY3JpcHRpb25cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogT3ZlcndyaXRlIGFsbCBmaWVsZHMgb24gdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7RGlzY29yZEVtYmVkRmllbGRbXX0gZmllbGRzXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0RmllbGRzKGZpZWxkczogRGlzY29yZEVtYmVkRmllbGRbXSk6IHRoaXMge1xuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC5maWVsZHMgPSBmaWVsZHNcblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBmb290ZXIgaW4gdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB0ZXh0IC0gVGhlIHRleHQgdG8gZGlzcGxheSBpbiB0aGUgZm9vdGVyXG4gICAqIEBwYXJhbSB7P09taXQ8RGlzY29yZEVtYmVkRm9vdGVyLCAndGV4dCc+fSBbb3B0aW9uc11cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRGb290ZXIodGV4dDogc3RyaW5nLCBvcHRpb25zPzogT21pdDxEaXNjb3JkRW1iZWRGb290ZXIsICd0ZXh0Jz4pOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQuZm9vdGVyID0ge1xuICAgICAgLi4udGhpcy4jY3VycmVudEVtYmVkLmZvb3RlcixcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICB0ZXh0LFxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBpbWFnZSBpbiB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHVybCAtIFVSTCBvZiB0aGUgaW1hZ2VcbiAgICogQHBhcmFtIHs/T21pdDxEaXNjb3JkRW1iZWRJbWFnZSwgJ3VybCc+fSBbb3B0aW9uc11cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRJbWFnZSh1cmw6IHN0cmluZywgb3B0aW9ucz86IE9taXQ8RGlzY29yZEVtYmVkSW1hZ2UsICd1cmwnPik6IHRoaXMge1xuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC5pbWFnZSA9IHtcbiAgICAgIC4uLnRoaXMuI2N1cnJlbnRFbWJlZC5pbWFnZSxcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICB1cmwsXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIHByb3ZpZGVyIG9mIHRoZSBjdXJyZW50IGVtYmVkLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gbmFtZVxuICAgKiBAcGFyYW0gez9zdHJpbmd9IFt1cmxdXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0UHJvdmlkZXIobmFtZTogc3RyaW5nLCB1cmw/OiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQucHJvdmlkZXIgPSB7XG4gICAgICBuYW1lLFxuICAgICAgdXJsLFxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBjb2xvciBvZiB0aGUgY3VycmVudCBlbWJlZCB0byBhIHJhbmRvbSB2YWx1ZS5cbiAgICpcbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRSYW5kb21Db2xvcigpOiB0aGlzIHtcbiAgICByZXR1cm4gdGhpcy5zZXRDb2xvcihNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAoMHhmZmZmZmYgKyAxKSkpXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSB0aXRsZSBvZiB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHRpdGxlXG4gICAqIEBwYXJhbSB7P3N0cmluZ30gW3VybF1cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRUaXRsZSh0aXRsZTogc3RyaW5nLCB1cmw/OiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQudGl0bGUgPSB0aXRsZVxuXG4gICAgaWYgKHVybCkge1xuICAgICAgdGhpcy5zZXRVcmwodXJsKVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSB0aW1lc3RhbXAgb2YgdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7PyhzdHJpbmcgfCBudW1iZXIgfCBEYXRlKX0gW3RpbWVzdGFtcF1cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRUaW1lc3RhbXAodGltZXN0YW1wPzogc3RyaW5nIHwgbnVtYmVyIHwgRGF0ZSk6IHRoaXMge1xuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC50aW1lc3RhbXAgPSBuZXcgRGF0ZSh0aW1lc3RhbXAhKS50b0lTT1N0cmluZygpXG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgdGh1bWJuYWlsIG9mIHRoZSBjdXJyZW50IGVtYmVkLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gdXJsIC0gVVJMIG9mIHRoZSBpbWFnZVxuICAgKiBAcGFyYW0gez9PbWl0PERpc2NvcmRFbWJlZFRodW1ibmFpbCwgJ3VybCc+fSBbb3B0aW9uc11cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRUaHVtYm5haWwodXJsOiBzdHJpbmcsIG9wdGlvbnM/OiBPbWl0PERpc2NvcmRFbWJlZFRodW1ibmFpbCwgJ3VybCc+KTogdGhpcyB7XG4gICAgdGhpcy4jY3VycmVudEVtYmVkLnRodW1ibmFpbCA9IHtcbiAgICAgIC4uLnRoaXMuI2N1cnJlbnRFbWJlZC50aHVtYm5haWwsXG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgdXJsLFxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBVUkwgb2YgdGhlIGN1cnJlbnQgZW1iZWQgdGl0bGUuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB1cmxcbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRVcmwodXJsOiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQudXJsID0gdXJsXG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgdmlkZW8gb2YgdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB1cmxcbiAgICogQHBhcmFtIHs/T21pdDxEaXNjb3JkRW1iZWRWaWRlbywgJ3VybCc+fSBbb3B0aW9uc11cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRWaWRlbyh1cmw6IHN0cmluZywgb3B0aW9ucz86IE9taXQ8RGlzY29yZEVtYmVkVmlkZW8sICd1cmwnPik6IHRoaXMge1xuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC52aWRlbyA9IHtcbiAgICAgIC4uLnRoaXMuI2N1cnJlbnRFbWJlZC52aWRlbyxcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICB1cmwsXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBWYWxpZGF0ZSBhbGwgZW1iZWRzIGF2YWlsYWJsZSBhZ2FpbnN0IGN1cnJlbnQga25vd24gRGlzY29yZCBsaW1pdHMgdG8gaGVscCBwcmV2ZW50IGJhZCByZXF1ZXN0cy5cbiAgICpcbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICB2YWxpZGF0ZSgpOiB0aGlzIHtcbiAgICBsZXQgdG90YWxDaGFyYWN0ZXJzID0gMFxuXG4gICAgaWYgKHRoaXMubGVuZ3RoID4gMTApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignWW91IGNhbiBub3QgaGF2ZSBtb3JlIHRoYW4gMTAgZW1iZWRzIG9uIGEgc2luZ2xlIG1lc3NhZ2UuJylcbiAgICB9XG5cbiAgICB0aGlzLmZvckVhY2goKHsgYXV0aG9yLCBkZXNjcmlwdGlvbiwgZmllbGRzLCBmb290ZXIsIHRpdGxlIH0sIGluZGV4KSA9PiB7XG4gICAgICBpZiAodGl0bGUpIHtcbiAgICAgICAgY29uc3QgdHJpbW1lZFRpdGxlID0gdGl0bGUudHJpbSgpXG5cbiAgICAgICAgaWYgKHRyaW1tZWRUaXRsZS5sZW5ndGggPiAyNTYpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFRpdGxlIG9mIGVtYmVkICR7aW5kZXh9IGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gMjU2IGNoYXJhY3RlcnMuYClcbiAgICAgICAgfVxuXG4gICAgICAgIHRvdGFsQ2hhcmFjdGVycyArPSB0cmltbWVkVGl0bGUubGVuZ3RoXG4gICAgICB9XG5cbiAgICAgIGlmIChkZXNjcmlwdGlvbikge1xuICAgICAgICBjb25zdCB0cmltbWVkRGVzY3JpcHRpb24gPSBkZXNjcmlwdGlvbi50cmltKClcblxuICAgICAgICBpZiAodHJpbW1lZERlc2NyaXB0aW9uLmxlbmd0aCA+IDQwOTYpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYERlc2NyaXB0aW9uIG9mIGVtYmVkICR7aW5kZXh9IGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gNDA5NiBjaGFyYWN0ZXJzLmApXG4gICAgICAgIH1cblxuICAgICAgICB0b3RhbENoYXJhY3RlcnMgKz0gdHJpbW1lZERlc2NyaXB0aW9uLmxlbmd0aFxuICAgICAgfVxuXG4gICAgICBpZiAoZmllbGRzKSB7XG4gICAgICAgIGlmIChmaWVsZHMubGVuZ3RoID4gMjUpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYGVtYmVkICR7aW5kZXh9IGNhbiBub3QgaGF2ZSBtb3JlIHRoYW4gMjUgZmllbGRzLmApXG4gICAgICAgIH1cblxuICAgICAgICBmaWVsZHMuZm9yRWFjaCgoeyBuYW1lLCB2YWx1ZSB9LCBmaWVsZEluZGV4KSA9PiB7XG4gICAgICAgICAgY29uc3QgdHJpbW1lZE5hbWUgPSBuYW1lLnRyaW0oKVxuICAgICAgICAgIGNvbnN0IHRyaW1tZWRWYWx1ZSA9IHZhbHVlLnRyaW0oKVxuXG4gICAgICAgICAgaWYgKHRyaW1tZWROYW1lLmxlbmd0aCA+IDI1Nikge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBOYW1lIG9mIGZpZWxkICR7ZmllbGRJbmRleH0gb24gZW1iZWQgJHtpbmRleH0gY2FuIG5vdCBiZSBsb25nZXIgdGhhbiAyNTYgY2hhcmFjdGVycy5gKVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmICh0cmltbWVkVmFsdWUubGVuZ3RoID4gNDA5Nikge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBWYWx1ZSBvZiBmaWVsZCAke2ZpZWxkSW5kZXh9IG9uIGVtYmVkICR7aW5kZXh9IGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gMTAyNCBjaGFyYWN0ZXJzLmApXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdG90YWxDaGFyYWN0ZXJzICs9IHRyaW1tZWROYW1lLmxlbmd0aFxuICAgICAgICAgIHRvdGFsQ2hhcmFjdGVycyArPSB0cmltbWVkVmFsdWUubGVuZ3RoXG4gICAgICAgIH0pXG4gICAgICB9XG5cbiAgICAgIGlmIChmb290ZXIpIHtcbiAgICAgICAgY29uc3QgdHJpbW1lZEZvb3RlclRleHQgPSBmb290ZXIudGV4dC50cmltKClcblxuICAgICAgICBpZiAodHJpbW1lZEZvb3RlclRleHQubGVuZ3RoID4gMjA0OCkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgRm9vdGVyIHRleHQgb2YgZW1iZWQgJHtpbmRleH0gY2FuIG5vdCBiZSBsb25nZXIgdGhhbiAyMDQ4IGNoYXJhY3RlcnMuYClcbiAgICAgICAgfVxuXG4gICAgICAgIHRvdGFsQ2hhcmFjdGVycyArPSB0cmltbWVkRm9vdGVyVGV4dC5sZW5ndGhcbiAgICAgIH1cblxuICAgICAgaWYgKGF1dGhvcikge1xuICAgICAgICBjb25zdCB0cmltbWVkQXV0aG9yTmFtZSA9IGF1dGhvci5uYW1lLnRyaW0oKVxuXG4gICAgICAgIGlmICh0cmltbWVkQXV0aG9yTmFtZS5sZW5ndGggPiAyNTYpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEF1dGhvciBuYW1lIG9mIGVtYmVkICR7aW5kZXh9IGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gMjU2IGNoYXJhY3RlcnMuYClcbiAgICAgICAgfVxuXG4gICAgICAgIHRvdGFsQ2hhcmFjdGVycyArPSB0cmltbWVkQXV0aG9yTmFtZS5sZW5ndGhcbiAgICAgIH1cbiAgICB9KVxuXG4gICAgaWYgKHRvdGFsQ2hhcmFjdGVycyA+IDYwMDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignVG90YWwgY2hhcmFjdGVyIGxlbmd0aCBvZiBhbGwgZW1iZWRzIGNhbiBub3QgZXhjZWVkIDYwMDAgY2hhcmFjdGVycy4nKVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHJlYWRvbmx5XG4gICAqIEB0eXBlIHtEaXNjb3JkRW1iZWR9XG4gICAqL1xuICBnZXQgI2N1cnJlbnRFbWJlZCgpOiBEaXNjb3JkRW1iZWQge1xuICAgIGlmICh0aGlzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhpcy5uZXdFbWJlZCgpXG4gICAgICB0aGlzLnNldEN1cnJlbnRFbWJlZCgpXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXNbdGhpcy4jY3VycmVudEVtYmVkSW5kZXhdXG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJFbWJlZHNCdWlsZGVyIiwiQXJyYXkiLCJhZGRGaWVsZCIsIm5hbWUiLCJ2YWx1ZSIsImlubGluZSIsImZpZWxkcyIsInVuZGVmaW5lZCIsInB1c2giLCJuZXdFbWJlZCIsImxlbmd0aCIsIkVycm9yIiwic2V0Q3VycmVudEVtYmVkIiwic2V0QXV0aG9yIiwib3B0aW9ucyIsImF1dGhvciIsInNldENvbG9yIiwiY29sb3IiLCJjb252ZXJ0ZWRWYWx1ZSIsInBhcnNlSW50IiwicmVwbGFjZSIsIk51bWJlciIsImlzTmFOIiwiaW5kZXgiLCJzZXREZXNjcmlwdGlvbiIsImRlc2NyaXB0aW9uIiwic2V0RmllbGRzIiwic2V0Rm9vdGVyIiwidGV4dCIsImZvb3RlciIsInNldEltYWdlIiwidXJsIiwiaW1hZ2UiLCJzZXRQcm92aWRlciIsInByb3ZpZGVyIiwic2V0UmFuZG9tQ29sb3IiLCJNYXRoIiwiZmxvb3IiLCJyYW5kb20iLCJzZXRUaXRsZSIsInRpdGxlIiwic2V0VXJsIiwic2V0VGltZXN0YW1wIiwidGltZXN0YW1wIiwiRGF0ZSIsInRvSVNPU3RyaW5nIiwic2V0VGh1bWJuYWlsIiwidGh1bWJuYWlsIiwic2V0VmlkZW8iLCJ2aWRlbyIsInZhbGlkYXRlIiwidG90YWxDaGFyYWN0ZXJzIiwiZm9yRWFjaCIsInRyaW1tZWRUaXRsZSIsInRyaW0iLCJ0cmltbWVkRGVzY3JpcHRpb24iLCJmaWVsZEluZGV4IiwidHJpbW1lZE5hbWUiLCJ0cmltbWVkVmFsdWUiLCJ0cmltbWVkRm9vdGVyVGV4dCIsInRyaW1tZWRBdXRob3JOYW1lIl0sIm1hcHBpbmdzIjoiOzs7OytCQW9CYUE7OztlQUFBQTs7O0FBQU4sSUFBQSxBQUFNQSxnQkFBTixNQUFNQSxzQkFBc0JDO0lBQ2pDLENBQUEsaUJBQWtCLENBQVk7SUFFOUI7Ozs7Ozs7R0FPQyxHQUNEQyxTQUFTQyxJQUFZLEVBQUVDLEtBQWEsRUFBRUMsTUFBZ0IsRUFBUTtRQUM1RCxJQUFJLElBQUksQ0FBQyxDQUFBLFlBQWEsQ0FBQ0MsTUFBTSxLQUFLQyxXQUFXO1lBQzNDLElBQUksQ0FBQyxDQUFBLFlBQWEsQ0FBQ0QsTUFBTSxHQUFHLEVBQUU7UUFDaEM7UUFFQSxJQUFJLENBQUMsQ0FBQSxZQUFhLENBQUNBLE1BQU0sQ0FBQ0UsSUFBSSxDQUFDO1lBQzdCTDtZQUNBQztZQUNBQztRQUNGO1FBRUEsT0FBTyxJQUFJO0lBQ2I7SUFFQTs7OztHQUlDLEdBQ0RJLFdBQWlCO1FBQ2YsSUFBSSxJQUFJLENBQUNDLE1BQU0sSUFBSSxJQUFJO1lBQ3JCLE1BQU0sSUFBSUMsTUFBTTtRQUNsQjtRQUVBLElBQUksQ0FBQ0gsSUFBSSxDQUFDLENBQUM7UUFDWCxJQUFJLENBQUNJLGVBQWU7UUFFcEIsT0FBTyxJQUFJO0lBQ2I7SUFFQTs7Ozs7O0dBTUMsR0FDREMsVUFBVVYsSUFBWSxFQUFFVyxPQUEwQyxFQUFRO1FBQ3hFLElBQUksQ0FBQyxDQUFBLFlBQWEsQ0FBQ0MsTUFBTSxHQUFHO1lBQzFCLEdBQUcsSUFBSSxDQUFDLENBQUEsWUFBYSxDQUFDQSxNQUFNO1lBQzVCLEdBQUdELE9BQU87WUFDVlg7UUFDRjtRQUVBLE9BQU8sSUFBSTtJQUNiO0lBRUE7Ozs7O0dBS0MsR0FDRGEsU0FBU0MsS0FBc0IsRUFB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
303
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9idWlsZGVycy9lbWJlZHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUge1xuICBEaXNjb3JkRW1iZWQsXG4gIERpc2NvcmRFbWJlZEF1dGhvcixcbiAgRGlzY29yZEVtYmVkRmllbGQsXG4gIERpc2NvcmRFbWJlZEZvb3RlcixcbiAgRGlzY29yZEVtYmVkSW1hZ2UsXG4gIERpc2NvcmRFbWJlZFRodW1ibmFpbCxcbiAgRGlzY29yZEVtYmVkVmlkZW8sXG59IGZyb20gJ0BkaXNjb3JkZW5vL3R5cGVzJ1xuXG4vKipcbiAqIEEgYnVpbGRlciB0byBoZWxwIGNyZWF0ZSBEaXNjb3JkIGVtYmVkcy5cbiAqXG4gKiBAZXhhbXBsZVxuICogY29uc3QgZW1iZWRzID0gbmV3IEVtYmVkc0J1aWxkZXIoKVxuICogIC5zZXRUaXRsZSgnTXkgRW1iZWQnKVxuICogIC5zZXREZXNjcmlwdGlvbignVGhpcyBpcyBteSBuZXcgZW1iZWQnKVxuICogIC5uZXdFbWJlZCgpXG4gKiAgLnNldFRpdGxlKCdNeSBTZWNvbmQgRW1iZWQnKVxuICovXG5leHBvcnQgY2xhc3MgRW1iZWRzQnVpbGRlciBleHRlbmRzIEFycmF5PERpc2NvcmRFbWJlZD4ge1xuICAjY3VycmVudEVtYmVkSW5kZXg6IG51bWJlciA9IDBcblxuICAvKipcbiAgICogQWRkcyBhIG5ldyBmaWVsZCB0byB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IG5hbWUgLSBGaWVsZCBuYW1lXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB2YWx1ZSAtIEZpZWxkIHZhbHVlXG4gICAqIEBwYXJhbSB7P2Jvb2xlYW59IFtpbmxpbmU9ZmFsc2VdIC0gRmllbGQgc2hvdWxkIGJlIGlubGluZSBvciBub3QuXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgYWRkRmllbGQobmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nLCBpbmxpbmU/OiBib29sZWFuKTogdGhpcyB7XG4gICAgaWYgKHRoaXMuI2N1cnJlbnRFbWJlZC5maWVsZHMgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy4jY3VycmVudEVtYmVkLmZpZWxkcyA9IFtdXG4gICAgfVxuXG4gICAgdGhpcy4jY3VycmVudEVtYmVkLmZpZWxkcy5wdXNoKHtcbiAgICAgIG5hbWUsXG4gICAgICB2YWx1ZSxcbiAgICAgIGlubGluZSxcbiAgICB9KVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIG11bHRpcGxlIG5ldyBmaWVsZHMgdG8gdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7RGlzY29yZEVtYmVkRmllbGRbXX0gZmllbGRzIC0gVGhlIGZpZWxkcyB0byBhZGRcbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBhZGRGaWVsZHMoZmllbGRzOiBEaXNjb3JkRW1iZWRGaWVsZFtdKTogdGhpcyB7XG4gICAgaWYgKHRoaXMuI2N1cnJlbnRFbWJlZC5maWVsZHMgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy4jY3VycmVudEVtYmVkLmZpZWxkcyA9IFtdXG4gICAgfVxuXG4gICAgdGhpcy4jY3VycmVudEVtYmVkLmZpZWxkcy5wdXNoKC4uLmZpZWxkcylcblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIGJsYW5rIGVtYmVkLlxuICAgKlxuICAgKiBAcmV0dXJucyB7RW1iZWRzQnVpbGRlcn1cbiAgICovXG4gIG5ld0VtYmVkKCk6IHRoaXMge1xuICAgIGlmICh0aGlzLmxlbmd0aCA+PSAxMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdNYXhpbXVtIGVtYmVkIGNvdW50IGV4Y2VlZGVkLiBZb3UgY2FuIG5vdCBoYXZlIG1vcmUgdGhhbiAxMCBlbWJlZHMuJylcbiAgICB9XG5cbiAgICB0aGlzLnB1c2goe30pXG4gICAgdGhpcy5zZXRDdXJyZW50RW1iZWQoKVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIGN1cnJlbnQgZW1iZWQgYXV0aG9yLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gbmFtZSAtIE5hbWUgb2YgdGhlIGF1dGhvclxuICAgKiBAcGFyYW0gez9PbWl0PERpc2NvcmRFbWJlZEF1dGhvciwgJ25hbWUnPn0gW29wdGlvbnNdIC0gRXh0cmEgYXV0aG9yIG9wdGlvbnNcbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRBdXRob3IobmFtZTogc3RyaW5nLCBvcHRpb25zPzogT21pdDxEaXNjb3JkRW1iZWRBdXRob3IsICduYW1lJz4pOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQuYXV0aG9yID0ge1xuICAgICAgLi4udGhpcy4jY3VycmVudEVtYmVkLmF1dGhvcixcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBuYW1lLFxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBjb2xvciBvbiB0aGUgc2lkZSBvZiB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHBhcmFtIHsobnVtYmVyIHwgc3RyaW5nKX0gY29sb3IgLSBUaGUgY29sb3IsIGluIGJhc2UxNiBvciBoZXggY29sb3IgY29kZVxuICAgKiBAcmV0dXJucyB7RW1iZWRzQnVpbGRlcn1cbiAgICovXG4gIHNldENvbG9yKGNvbG9yOiBudW1iZXIgfCBzdHJpbmcpOiB0aGlzIHtcbiAgICBpZiAodHlwZW9mIGNvbG9yID09PSAnc3RyaW5nJykge1xuICAgICAgY29uc3QgY29udmVydGVkVmFsdWUgPSBwYXJzZUludChjb2xvci5yZXBsYWNlKCcjJywgJycpLCAxNilcbiAgICAgIGNvbG9yID0gTnVtYmVyLmlzTmFOKGNvbnZlcnRlZFZhbHVlKSA/IDAgOiBjb252ZXJ0ZWRWYWx1ZVxuICAgIH1cblxuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC5jb2xvciA9IGNvbG9yXG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgY3VycmVudCBlbWJlZCB0byBhIGRpZmZlcmVudCBpbmRleC5cbiAgICpcbiAgICogV0FSTklORzogT25seSB1c2UgdGhpcyBtZXRob2QgaWYgeW91IGtub3cgd2hhdCB5b3UncmUgZG9pbmcuIE1ha2Ugc3VyZSB0byBzZXQgaXQgYmFjayB0byB0aGUgbGF0ZXN0IHdoZW4geW91J3JlIGRvbmUuXG4gICAqXG4gICAqIEBwYXJhbSB7P251bWJlcn0gW2luZGV4XSAtIFRoZSBpbmRleCBvZiB0aGUgZW1iZWQgaW4gdGhlIEVtYmVkc0J1aWxkZXIgYXJyYXlcbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRDdXJyZW50RW1iZWQoaW5kZXg/OiBudW1iZXIpOiB0aGlzIHtcbiAgICBpZiAoaW5kZXggPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy4jY3VycmVudEVtYmVkSW5kZXggPSB0aGlzLmxlbmd0aCAtIDFcblxuICAgICAgcmV0dXJuIHRoaXNcbiAgICB9XG5cbiAgICBpZiAoaW5kZXggPj0gdGhpcy5sZW5ndGggfHwgaW5kZXggPCAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0NhbiBub3Qgc2V0IHRoZSBjdXJyZW50IGVtYmVkIHRvIGEgaW5kZXggb3V0IG9mIGJvdW5kcy4nKVxuICAgIH1cblxuICAgIHRoaXMuI2N1cnJlbnRFbWJlZEluZGV4ID0gaW5kZXhcblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBkZXNjcmlwdGlvbiBvZiB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGRlc2NyaXB0aW9uIC0gRGVzY3JpcHRpb25cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXREZXNjcmlwdGlvbihkZXNjcmlwdGlvbjogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy4jY3VycmVudEVtYmVkLmRlc2NyaXB0aW9uID0gZGVzY3JpcHRpb25cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogT3ZlcndyaXRlIGFsbCBmaWVsZHMgb24gdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7RGlzY29yZEVtYmVkRmllbGRbXX0gZmllbGRzXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0RmllbGRzKGZpZWxkczogRGlzY29yZEVtYmVkRmllbGRbXSk6IHRoaXMge1xuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC5maWVsZHMgPSBmaWVsZHNcblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBmb290ZXIgaW4gdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB0ZXh0IC0gVGhlIHRleHQgdG8gZGlzcGxheSBpbiB0aGUgZm9vdGVyXG4gICAqIEBwYXJhbSB7P09taXQ8RGlzY29yZEVtYmVkRm9vdGVyLCAndGV4dCc+fSBbb3B0aW9uc11cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRGb290ZXIodGV4dDogc3RyaW5nLCBvcHRpb25zPzogT21pdDxEaXNjb3JkRW1iZWRGb290ZXIsICd0ZXh0Jz4pOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQuZm9vdGVyID0ge1xuICAgICAgLi4udGhpcy4jY3VycmVudEVtYmVkLmZvb3RlcixcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICB0ZXh0LFxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBpbWFnZSBpbiB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHVybCAtIFVSTCBvZiB0aGUgaW1hZ2VcbiAgICogQHBhcmFtIHs/T21pdDxEaXNjb3JkRW1iZWRJbWFnZSwgJ3VybCc+fSBbb3B0aW9uc11cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRJbWFnZSh1cmw6IHN0cmluZywgb3B0aW9ucz86IE9taXQ8RGlzY29yZEVtYmVkSW1hZ2UsICd1cmwnPik6IHRoaXMge1xuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC5pbWFnZSA9IHtcbiAgICAgIC4uLnRoaXMuI2N1cnJlbnRFbWJlZC5pbWFnZSxcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICB1cmwsXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIHByb3ZpZGVyIG9mIHRoZSBjdXJyZW50IGVtYmVkLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gbmFtZVxuICAgKiBAcGFyYW0gez9zdHJpbmd9IFt1cmxdXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0UHJvdmlkZXIobmFtZTogc3RyaW5nLCB1cmw/OiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQucHJvdmlkZXIgPSB7XG4gICAgICBuYW1lLFxuICAgICAgdXJsLFxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBjb2xvciBvZiB0aGUgY3VycmVudCBlbWJlZCB0byBhIHJhbmRvbSB2YWx1ZS5cbiAgICpcbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRSYW5kb21Db2xvcigpOiB0aGlzIHtcbiAgICByZXR1cm4gdGhpcy5zZXRDb2xvcihNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAoMHhmZmZmZmYgKyAxKSkpXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSB0aXRsZSBvZiB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHRpdGxlXG4gICAqIEBwYXJhbSB7P3N0cmluZ30gW3VybF1cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRUaXRsZSh0aXRsZTogc3RyaW5nLCB1cmw/OiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQudGl0bGUgPSB0aXRsZVxuXG4gICAgaWYgKHVybCkge1xuICAgICAgdGhpcy5zZXRVcmwodXJsKVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSB0aW1lc3RhbXAgb2YgdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7PyhzdHJpbmcgfCBudW1iZXIgfCBEYXRlKX0gW3RpbWVzdGFtcF1cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRUaW1lc3RhbXAodGltZXN0YW1wPzogc3RyaW5nIHwgbnVtYmVyIHwgRGF0ZSk6IHRoaXMge1xuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC50aW1lc3RhbXAgPSBuZXcgRGF0ZSh0aW1lc3RhbXAgPz8gRGF0ZS5ub3coKSkudG9JU09TdHJpbmcoKVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIHRodW1ibmFpbCBvZiB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHVybCAtIFVSTCBvZiB0aGUgaW1hZ2VcbiAgICogQHBhcmFtIHs/T21pdDxEaXNjb3JkRW1iZWRUaHVtYm5haWwsICd1cmwnPn0gW29wdGlvbnNdXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0VGh1bWJuYWlsKHVybDogc3RyaW5nLCBvcHRpb25zPzogT21pdDxEaXNjb3JkRW1iZWRUaHVtYm5haWwsICd1cmwnPik6IHRoaXMge1xuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC50aHVtYm5haWwgPSB7XG4gICAgICAuLi50aGlzLiNjdXJyZW50RW1iZWQudGh1bWJuYWlsLFxuICAgICAgLi4ub3B0aW9ucyxcbiAgICAgIHVybCxcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgVVJMIG9mIHRoZSBjdXJyZW50IGVtYmVkIHRpdGxlLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gdXJsXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0VXJsKHVybDogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy4jY3VycmVudEVtYmVkLnVybCA9IHVybFxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIHZpZGVvIG9mIHRoZSBjdXJyZW50IGVtYmVkLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gdXJsXG4gICAqIEBwYXJhbSB7P09taXQ8RGlzY29yZEVtYmVkVmlkZW8sICd1cmwnPn0gW29wdGlvbnNdXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0VmlkZW8odXJsOiBzdHJpbmcsIG9wdGlvbnM/OiBPbWl0PERpc2NvcmRFbWJlZFZpZGVvLCAndXJsJz4pOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQudmlkZW8gPSB7XG4gICAgICAuLi50aGlzLiNjdXJyZW50RW1iZWQudmlkZW8sXG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgdXJsLFxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogVmFsaWRhdGUgYWxsIGVtYmVkcyBhdmFpbGFibGUgYWdhaW5zdCBjdXJyZW50IGtub3duIERpc2NvcmQgbGltaXRzIHRvIGhlbHAgcHJldmVudCBiYWQgcmVxdWVzdHMuXG4gICAqXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgdmFsaWRhdGUoKTogdGhpcyB7XG4gICAgbGV0IHRvdGFsQ2hhcmFjdGVycyA9IDBcblxuICAgIGlmICh0aGlzLmxlbmd0aCA+IDEwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1lvdSBjYW4gbm90IGhhdmUgbW9yZSB0aGFuIDEwIGVtYmVkcyBvbiBhIHNpbmdsZSBtZXNzYWdlLicpXG4gICAgfVxuXG4gICAgdGhpcy5mb3JFYWNoKCh7IGF1dGhvciwgZGVzY3JpcHRpb24sIGZpZWxkcywgZm9vdGVyLCB0aXRsZSB9LCBpbmRleCkgPT4ge1xuICAgICAgaWYgKHRpdGxlKSB7XG4gICAgICAgIGNvbnN0IHRyaW1tZWRUaXRsZSA9IHRpdGxlLnRyaW0oKVxuXG4gICAgICAgIGlmICh0cmltbWVkVGl0bGUubGVuZ3RoID4gMjU2KSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBUaXRsZSBvZiBlbWJlZCAke2luZGV4fSBjYW4gbm90IGJlIGxvbmdlciB0aGFuIDI1NiBjaGFyYWN0ZXJzLmApXG4gICAgICAgIH1cblxuICAgICAgICB0b3RhbENoYXJhY3RlcnMgKz0gdHJpbW1lZFRpdGxlLmxlbmd0aFxuICAgICAgfVxuXG4gICAgICBpZiAoZGVzY3JpcHRpb24pIHtcbiAgICAgICAgY29uc3QgdHJpbW1lZERlc2NyaXB0aW9uID0gZGVzY3JpcHRpb24udHJpbSgpXG5cbiAgICAgICAgaWYgKHRyaW1tZWREZXNjcmlwdGlvbi5sZW5ndGggPiA0MDk2KSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBEZXNjcmlwdGlvbiBvZiBlbWJlZCAke2luZGV4fSBjYW4gbm90IGJlIGxvbmdlciB0aGFuIDQwOTYgY2hhcmFjdGVycy5gKVxuICAgICAgICB9XG5cbiAgICAgICAgdG90YWxDaGFyYWN0ZXJzICs9IHRyaW1tZWREZXNjcmlwdGlvbi5sZW5ndGhcbiAgICAgIH1cblxuICAgICAgaWYgKGZpZWxkcykge1xuICAgICAgICBpZiAoZmllbGRzLmxlbmd0aCA+IDI1KSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBlbWJlZCAke2luZGV4fSBjYW4gbm90IGhhdmUgbW9yZSB0aGFuIDI1IGZpZWxkcy5gKVxuICAgICAgICB9XG5cbiAgICAgICAgZmllbGRzLmZvckVhY2goKHsgbmFtZSwgdmFsdWUgfSwgZmllbGRJbmRleCkgPT4ge1xuICAgICAgICAgIGNvbnN0IHRyaW1tZWROYW1lID0gbmFtZS50cmltKClcbiAgICAgICAgICBjb25zdCB0cmltbWVkVmFsdWUgPSB2YWx1ZS50cmltKClcblxuICAgICAgICAgIGlmICh0cmltbWVkTmFtZS5sZW5ndGggPiAyNTYpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgTmFtZSBvZiBmaWVsZCAke2ZpZWxkSW5kZXh9IG9uIGVtYmVkICR7aW5kZXh9IGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gMjU2IGNoYXJhY3RlcnMuYClcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAodHJpbW1lZFZhbHVlLmxlbmd0aCA+IDQwOTYpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVmFsdWUgb2YgZmllbGQgJHtmaWVsZEluZGV4fSBvbiBlbWJlZCAke2luZGV4fSBjYW4gbm90IGJlIGxvbmdlciB0aGFuIDEwMjQgY2hhcmFjdGVycy5gKVxuICAgICAgICAgIH1cblxuICAgICAgICAgIHRvdGFsQ2hhcmFjdGVycyArPSB0cmltbWVkTmFtZS5sZW5ndGhcbiAgICAgICAgICB0b3RhbENoYXJhY3RlcnMgKz0gdHJpbW1lZFZhbHVlLmxlbmd0aFxuICAgICAgICB9KVxuICAgICAgfVxuXG4gICAgICBpZiAoZm9vdGVyKSB7XG4gICAgICAgIGNvbnN0IHRyaW1tZWRGb290ZXJUZXh0ID0gZm9vdGVyLnRleHQudHJpbSgpXG5cbiAgICAgICAgaWYgKHRyaW1tZWRGb290ZXJUZXh0Lmxlbmd0aCA+IDIwNDgpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEZvb3RlciB0ZXh0IG9mIGVtYmVkICR7aW5kZXh9IGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gMjA0OCBjaGFyYWN0ZXJzLmApXG4gICAgICAgIH1cblxuICAgICAgICB0b3RhbENoYXJhY3RlcnMgKz0gdHJpbW1lZEZvb3RlclRleHQubGVuZ3RoXG4gICAgICB9XG5cbiAgICAgIGlmIChhdXRob3IpIHtcbiAgICAgICAgY29uc3QgdHJpbW1lZEF1dGhvck5hbWUgPSBhdXRob3IubmFtZS50cmltKClcblxuICAgICAgICBpZiAodHJpbW1lZEF1dGhvck5hbWUubGVuZ3RoID4gMjU2KSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBBdXRob3IgbmFtZSBvZiBlbWJlZCAke2luZGV4fSBjYW4gbm90IGJlIGxvbmdlciB0aGFuIDI1NiBjaGFyYWN0ZXJzLmApXG4gICAgICAgIH1cblxuICAgICAgICB0b3RhbENoYXJhY3RlcnMgKz0gdHJpbW1lZEF1dGhvck5hbWUubGVuZ3RoXG4gICAgICB9XG4gICAgfSlcblxuICAgIGlmICh0b3RhbENoYXJhY3RlcnMgPiA2MDAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RvdGFsIGNoYXJhY3RlciBsZW5ndGggb2YgYWxsIGVtYmVkcyBjYW4gbm90IGV4Y2VlZCA2MDAwIGNoYXJhY3RlcnMuJylcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEByZWFkb25seVxuICAgKiBAdHlwZSB7RGlzY29yZEVtYmVkfVxuICAgKi9cbiAgZ2V0ICNjdXJyZW50RW1iZWQoKTogRGlzY29yZEVtYmVkIHtcbiAgICBpZiAodGhpcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRoaXMubmV3RW1iZWQoKVxuICAgICAgdGhpcy5zZXRDdXJyZW50RW1iZWQoKVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzW3RoaXMuI2N1cnJlbnRFbWJlZEluZGV4XVxuICB9XG59XG4iXSwibmFtZXMiOlsiRW1iZWRzQnVpbGRlciIsIkFycmF5IiwiYWRkRmllbGQiLCJuYW1lIiwidmFsdWUiLCJpbmxpbmUiLCJmaWVsZHMiLCJ1bmRlZmluZWQiLCJwdXNoIiwiYWRkRmllbGRzIiwibmV3RW1iZWQiLCJsZW5ndGgiLCJFcnJvciIsInNldEN1cnJlbnRFbWJlZCIsInNldEF1dGhvciIsIm9wdGlvbnMiLCJhdXRob3IiLCJzZXRDb2xvciIsImNvbG9yIiwiY29udmVydGVkVmFsdWUiLCJwYXJzZUludCIsInJlcGxhY2UiLCJOdW1iZXIiLCJpc05hTiIsImluZGV4Iiwic2V0RGVzY3JpcHRpb24iLCJkZXNjcmlwdGlvbiIsInNldEZpZWxkcyIsInNldEZvb3RlciIsInRleHQiLCJmb290ZXIiLCJzZXRJbWFnZSIsInVybCIsImltYWdlIiwic2V0UHJvdmlkZXIiLCJwcm92aWRlciIsInNldFJhbmRvbUNvbG9yIiwiTWF0aCIsImZsb29yIiwicmFuZG9tIiwic2V0VGl0bGUiLCJ0aXRsZSIsInNldFVybCIsInNldFRpbWVzdGFtcCIsInRpbWVzdGFtcCIsIkRhdGUiLCJub3ciLCJ0b0lTT1N0cmluZyIsInNldFRodW1ibmFpbCIsInRodW1ibmFpbCIsInNldFZpZGVvIiwidmlkZW8iLCJ2YWxpZGF0ZSIsInRvdGFsQ2hhcmFjdGVycyIsImZvckVhY2giLCJ0cmltbWVkVGl0bGUiLCJ0cmltIiwidHJpbW1lZERlc2NyaXB0aW9uIiwiZmllbGRJbmRleCIsInRyaW1tZWROYW1lIiwidHJpbW1lZFZhbHVlIiwidHJpbW1lZEZvb3RlclRleHQiLCJ0cmltbWVkQXV0aG9yTmFtZSJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFvQmFBOzs7ZUFBQUE7OztBQUFOLElBQUEsQUFBTUEsZ0JBQU4sTUFBTUEsc0JBQXNCQztJQUNqQyxDQUFBLGlCQUFrQixDQUFZO0lBRTlCOzs7Ozs7O0dBT0MsR0FDREMsU0FBU0MsSUFBWSxFQUFFQyxLQUFhLEVBQUVDLE1BQWdCLEVBQVE7UUFDNUQsSUFBSSxJQUFJLENBQUMsQ0FBQSxZQUFhLENBQUNDLE1BQU0sS0FBS0MsV0FBVztZQUMzQyxJQUFJLENBQUMsQ0FBQSxZQUFhLENBQUNELE1BQU0sR0FBRyxFQUFFO1FBQ2hDO1FBRUEsSUFBSSxDQUFDLENBQUEsWUFBYSxDQUFDQSxNQUFNLENBQUNFLElBQUksQ0FBQztZQUM3Qkw7WUFDQUM7WUFDQUM7UUFDRjtRQUVBLE9BQU8sSUFBSTtJQUNiO0lBRUE7Ozs7O0dBS0MsR0FDREksVUFBVUgsTUFBMkIsRUFBUTtRQUMzQyxJQUFJLElBQUksQ0FBQyxDQUFBLFlBQWEsQ0FBQ0EsTUFBTSxLQUFLQyxXQUFXO1lBQzNDLElBQUksQ0FBQyxDQUFBLFlBQWEsQ0FBQ0QsTUFBTSxHQUFHLEVBQUU7UUFDaEM7UUFFQSxJQUFJLENBQUMsQ0FBQSxZQUFhLENBQUNBLE1BQU0sQ0FBQ0UsSUFBSSxJQUFJRjtRQUVsQyxPQUFPLElBQUk7SUFDYjtJQUVBOzs7O0dBSUMsR0FDREksV0FBaUI7UUFDZixJQUFJLElBQUksQ0FBQ0MsTUFBTSxJQUFJLElBQUk7WUFDckIsTUFBTSxJQUFJQyxNQUFNO1FBQ2xCO1FBRUEsSUFBSSxDQUFDSixJQUFJLENBQUMsQ0FBQztRQUNYLElBQUksQ0FBQ0ssZUFBZTtRQUVwQixPQUFPLElBQUk7SUFDYjtJQUVBOzs7Ozs7R0FNQyxHQUNEQyxVQUFVWCxJQUFZLEVBQUVZLE9BQTBDLEVBQVE7UUFDeEUsSUFBSSxDQUFDLENBQUEsWUFBYSxDQUFDQyxNQUFNLEdBQUc7WUFDMUIsR0FBRyxJQUFJLENBQUMsQ0FBQSxZQUFhLENBQUNBLE1BQU07WUFDNUIsR0FBR0QsT0FBTztZQUNWWjtRQUNGO1FBRUEsT0FBTyxJQUFJO0lBQ2I7SUFFQTs7Ozs7R0FLQyxHQUNEYyxTQUFTQyxLQUFzQixFQUFRO1FBQ3JDLElBQUksT0FBT0EsVUFBVSxVQUFVO1lBQzdCLE1BQU1DLGlCQUFpQkMsU0FBU0YsTUFBTUcsT0FBTyxDQUFDLEtBQUssS0FBSztZQUN4REgsUUFBUUksT0FBT0MsS0FBSyxDQUFDSixrQkFBa0IsSUFBSUE7UUFDN0M7UUFFQSxJQUFJLENBQUMsQ0FBQSxZQUFhLENBQUNELEtBQUssR0FBR0E7UUFFM0IsT0FBTyxJQUFJO0lBQ2I7SUFFQTs7Ozs7OztHQU9DLEdBQ0RMLGdCQUFnQlcsS0FBYyxFQUFRO1FBQ3BDLElBQUlBLFVBQVVqQixXQUFXO1lBQ3ZCLElBQUksQ0FBQyxDQUFBLGlCQUFrQixHQUFHLElBQUksQ0FBQ0ksTUFBTSxHQUFHO1lBRXhDLE9BQU8sSUFBSTtRQUNiO1FBRUEsSUFBSWEsU0FBUyxJQUFJLENBQUNiLE1BQU0sSUFBSWEsUUFBUSxHQUFHO1lBQ3JDLE1BQU0sSUFBSVosTUFBTTtRQUNsQjtRQUVBLElBQUksQ0FBQyxDQUFBLGlCQUFrQixHQUFHWTtRQUUxQixPQUFPLElBQUk7SUFDYjtJQUVBOzs7OztHQUtDLEdBQ0RDLGVBQWVDLFdBQW1CLEVBQVE7UUFDeEMsSUFBSSxDQUFDLENBQUEsWUFBYSxDQUFDQSxXQUFXLEdBQUdBO1FBRWpDLE9BQU8sSUFBSTtJQUNiO0lBRUE7Ozs7O0dBS0MsR0FDREMsVUFBVXJCLE1BQTJCLEVBQVE7UUFDM0MsSUFBSSxDQUFDLENBQUEsWUFBYSxDQUFDQSxNQUFNLEdBQUdBO1FBRTVCLE9BQU8sSUFBSTtJQUNiO0lBRUE7Ozs7OztHQU1DLEdBQ0RzQixVQUFVQyxJQUFZLEVBQUVkLE9BQTBDLEVBQVE7UUFDeEUsSUFBSSxDQUFDLENBQUEsWUFBYSxDQUFDZSxNQUFNLEdBQUc7WUFDMUIsR0FBRyxJQUFJLENBQUMsQ0FBQSxZQUFhLENBQUNBLE1BQU07WUFDNUIsR0FBR2YsT0FBTztZQUNWYztRQUNGO1FBRUEsT0FBTyxJQUFJO0lBQ2I7SUFFQTs7Ozs7O0dBTUMsR0FDREUsU0FBU0MsR0FBVyxFQUFFakIsT0FBd0MsRUFBUTtRQUNwRSxJQUFJLENBQUMsQ0FBQSxZQUFhLENBQUNrQixLQUFLLEdBQUc7WUFDekIsR0FBRyxJQUFJLENBQUMsQ0FBQSxZQUFhLENBQUNBLEtBQUs7WUFDM0IsR0FBR2xCLE9BQU87WUFDVmlCO1FBQ0Y7UUFFQSxPQUFPLElBQUk7SUFDYjtJQUVBOzs7Ozs7R0FNQyxHQUNERSxZQUFZL0IsSUFBWSxFQUFFNkIsR0FBWSxFQUFRO1FBQzVDLElBQUksQ0FBQyxDQUFBLFlBQWEsQ0FBQ0csUUFBUSxHQUFHO1lBQzVCaEM7WUFDQTZCO1FBQ0Y7UUFFQSxPQUFPLElBQUk7SUFDYjtJQUVBOzs7O0dBSUMsR0FDREksaUJBQXVCO1FBQ3JCLE9BQU8sSUFBSSxDQUFDbkIsUUFBUSxDQUFDb0IsS0FBS0MsS0FBSyxDQUFDRCxLQUFLRSxNQUFNLEtBQU0sQ0FBQSxXQUFXLENBQUE7SUFDOUQ7SUFFQTs7Ozs7O0dBTUMsR0FDREMsU0FBU0MsS0FBYSxFQUFFVCxHQUFZLEVBQVE7UUFDMUMsSUFBSSxDQUFDLENBQUEsWUFBYSxDQUFDUyxLQUFLLEdBQUdBO1FBRTNCLElBQUlULEtBQUs7WUFDUCxJQUFJLENBQUNVLE1BQU0sQ0FBQ1Y7UUFDZDtRQUVBLE9BQU8sSUFBSTtJQUNiO0lBRUE7Ozs7O0dBS0MsR0FDRFcsYUFBYUMsU0FBa0MsRUFBUTtRQUNyRCxJQUFJLENBQUMsQ0FBQSxZQUFhLENBQUNBLFNBQVMsR0FBRyxJQUFJQyxLQUFLRCxhQUFhQyxLQUFLQyxHQUFHLElBQUlDLFdBQVc7UUFFNUUsT0FBTyxJQUFJO0lBQ2I7SUFFQTs7Ozs7O0dBTUMsR0FDREMsYUFBYWhCLEdBQVcsRUFBRWpCLE9BQTRDLEVBQVE7UUFDNUUsSUFBSSxDQUFDLENBQUEsWUFBYSxDQUFDa0MsU0FBUyxHQUFHO1lBQzdCLEdBQUcsSUFBSSxDQUFDLENBQUEsWUFBYSxDQUFDQSxTQUFTO1lBQy9CLEdBQUdsQyxPQUFPO1lBQ1ZpQjtRQUNGO1FBRUEsT0FBTyxJQUFJO0lBQ2I7SUFFQTs7Ozs7R0FLQyxHQUNEVSxPQUFPVixHQUFXLEVBQVE7UUFDeEIsSUFBSSxDQUFDLENBQUEsWUFBYSxDQUFDQSxHQUFHLEdBQUdBO1FBRXpCLE9BQU8sSUFBSTtJQUNiO0lBRUE7Ozs7OztHQU1DLEdBQ0RrQixTQUFTbEIsR0FBVyxFQUFFakIsT0FBd0MsRUFBUTtRQUNwRSxJQUFJLENBQUMsQ0FBQSxZQUFhLENBQUNvQyxLQUFLLEdBQUc7WUFDekIsR0FBRyxJQUFJLENBQUMsQ0FBQSxZQUFhLENBQUNBLEtBQUs7WUFDM0IsR0FBR3BDLE9BQU87WUFDVmlCO1FBQ0Y7UUFFQSxPQUFPLElBQUk7SUFDYjtJQUVBOzs7O0dBSUMsR0FDRG9CLFdBQWlCO1FBQ2YsSUFBSUMsa0JBQWtCO1FBRXRCLElBQUksSUFBSSxDQUFDMUMsTUFBTSxHQUFHLElBQUk7WUFDcEIsTUFBTSxJQUFJQyxNQUFNO1FBQ2xCO1FBRUEsSUFBSSxDQUFDMEMsT0FBTyxDQUFDLENBQUMsRUFBRXRDLE1BQU0sRUFBRVUsV0FBVyxFQUFFcEIsTUFBTSxFQUFFd0IsTUFBTSxFQUFFVyxLQUFLLEVBQUUsRUFBRWpCO1lBQzVELElBQUlpQixPQUFPO2dCQUNULE1BQU1jLGVBQWVkLE1BQU1lLElBQUk7Z0JBRS9CLElBQUlELGFBQWE1QyxNQUFNLEdBQUcsS0FBSztvQkFDN0IsTUFBTSxJQUFJQyxNQUFNLENBQUMsZUFBZSxFQUFFWSxNQUFNLHVDQUF1QyxDQUFDO2dCQUNsRjtnQkFFQTZCLG1CQUFtQkUsYUFBYTVDLE1BQU07WUFDeEM7WUFFQSxJQUFJZSxhQUFhO2dCQUNmLE1BQU0rQixxQkFBcUIvQixZQUFZOEIsSUFBSTtnQkFFM0MsSUFBSUMsbUJBQW1COUMsTUFBTSxHQUFHLE1BQU07b0JBQ3BDLE1BQU0sSUFBSUMsTUFBTSxDQUFDLHFCQUFxQixFQUFFWSxNQUFNLHdDQUF3QyxDQUFDO2dCQUN6RjtnQkFFQTZCLG1CQUFtQkksbUJBQW1COUMsTUFBTTtZQUM5QztZQUVBLElBQUlMLFFBQVE7Z0JBQ1YsSUFBSUEsT0FBT0ssTUFBTSxHQUFHLElBQUk7b0JBQ3RCLE1BQU0sSUFBSUMsTUFBTSxDQUFDLE1BQU0sRUFBRVksTUFBTSxrQ0FBa0MsQ0FBQztnQkFDcEU7Z0JBRUFsQixPQUFPZ0QsT0FBTyxDQUFDLENBQUMsRUFBRW5ELElBQUksRUFBRUMsS0FBSyxFQUFFLEVBQUVzRDtvQkFDL0IsTUFBTUMsY0FBY3hELEtBQUtxRCxJQUFJO29CQUM3QixNQUFNSSxlQUFleEQsTUFBTW9ELElBQUk7b0JBRS9CLElBQUlHLFlBQVloRCxNQUFNLEdBQUcsS0FBSzt3QkFDNUIsTUFBTSxJQUFJQyxNQUFNLENBQUMsY0FBYyxFQUFFOEMsV0FBVyxVQUFVLEVBQUVsQyxNQUFNLHVDQUF1QyxDQUFDO29CQUN4RztvQkFFQSxJQUFJb0MsYUFBYWpELE1BQU0sR0FBRyxNQUFNO3dCQUM5QixNQUFNLElBQUlDLE1BQU0sQ0FBQyxlQUFlLEVBQUU4QyxXQUFXLFVBQVUsRUFBRWxDLE1BQU0sd0NBQXdDLENBQUM7b0JBQzFHO29CQUVBNkIsbUJBQW1CTSxZQUFZaEQsTUFBTTtvQkFDckMwQyxtQkFBbUJPLGFBQWFqRCxNQUFNO2dCQUN4QztZQUNGO1lBRUEsSUFBSW1CLFFBQVE7Z0JBQ1YsTUFBTStCLG9CQUFvQi9CLE9BQU9ELElBQUksQ0FBQzJCLElBQUk7Z0JBRTFDLElBQUlLLGtCQUFrQmxELE1BQU0sR0FBRyxNQUFNO29CQUNuQyxNQUFNLElBQUlDLE1BQU0sQ0FBQyxxQkFBcUIsRUFBRVksTUFBTSx3Q0FBd0MsQ0FBQztnQkFDekY7Z0JBRUE2QixtQkFBbUJRLGtCQUFrQmxELE1BQU07WUFDN0M7WUFFQSxJQUFJSyxRQUFRO2dCQUNWLE1BQU04QyxvQkFBb0I5QyxPQUFPYixJQUFJLENBQUNxRCxJQUFJO2dCQUUxQyxJQUFJTSxrQkFBa0JuRCxNQUFNLEdBQUcsS0FBSztvQkFDbEMsTUFBTSxJQUFJQyxNQUFNLENBQUMscUJBQXFCLEVBQUVZLE1BQU0sdUNBQXVDLENBQUM7Z0JBQ3hGO2dCQUVBNkIsbUJBQW1CUyxrQkFBa0JuRCxNQUFNO1lBQzdDO1FBQ0Y7UUFFQSxJQUFJMEMsa0JBQWtCLE1BQU07WUFDMUIsTUFBTSxJQUFJekMsTUFBTTtRQUNsQjtRQUVBLE9BQU8sSUFBSTtJQUNiO0lBRUE7Ozs7O0dBS0MsR0FDRCxJQUFJLENBQUEsWUFBYTtRQUNmLElBQUksSUFBSSxDQUFDRCxNQUFNLEtBQUssR0FBRztZQUNyQixJQUFJLENBQUNELFFBQVE7WUFDYixJQUFJLENBQUNHLGVBQWU7UUFDdEI7UUFFQSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQSxpQkFBa0IsQ0FBQztJQUN0Qzs7UUFqWEsscUJBQ0wsQ0FBQSxpQkFBa0IsR0FBVzs7QUFpWC9CIn0=
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "DISCORDENO_VERSION", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return DISCORDENO_VERSION;
9
+ }
10
+ });
11
+ const DISCORDENO_VERSION = '21.0.0';
12
+
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb25zdGFudHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IERJU0NPUkRFTk9fVkVSU0lPTiA9ICcyMS4wLjAnXG4iXSwibmFtZXMiOlsiRElTQ09SREVOT19WRVJTSU9OIl0sIm1hcHBpbmdzIjoiOzs7OytCQUFhQTs7O2VBQUFBOzs7QUFBTixNQUFNQSxxQkFBcUIifQ==
@@ -8,6 +8,7 @@ _export_star(require("./bucket.cjs"), exports);
8
8
  _export_star(require("./builders.cjs"), exports);
9
9
  _export_star(require("./casing.cjs"), exports);
10
10
  _export_star(require("./colors.cjs"), exports);
11
+ _export_star(require("./constants.cjs"), exports);
11
12
  _export_star(require("./hash.cjs"), exports);
12
13
  _export_star(require("./images.cjs"), exports);
13
14
  _export_star(require("./logger.cjs"), exports);
@@ -33,4 +34,4 @@ function _export_star(from, to) {
33
34
  return from;
34
35
  }
35
36
 
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL0NvbGxlY3Rpb24uanMnXG5leHBvcnQgKiBmcm9tICcuL2Jhc2U2NC5qcydcbmV4cG9ydCAqIGZyb20gJy4vYnVja2V0LmpzJ1xuZXhwb3J0ICogZnJvbSAnLi9idWlsZGVycy5qcydcbmV4cG9ydCAqIGZyb20gJy4vY2FzaW5nLmpzJ1xuZXhwb3J0ICogZnJvbSAnLi9jb2xvcnMuanMnXG5leHBvcnQgKiBmcm9tICcuL2hhc2guanMnXG5leHBvcnQgKiBmcm9tICcuL2ltYWdlcy5qcydcbmV4cG9ydCAqIGZyb20gJy4vbG9nZ2VyLmpzJ1xuZXhwb3J0ICogZnJvbSAnLi9vYXV0aDIuanMnXG5leHBvcnQgKiBmcm9tICcuL3Blcm1pc3Npb25zLmpzJ1xuZXhwb3J0ICogZnJvbSAnLi9yZWFjdGlvbnMuanMnXG5leHBvcnQgKiBmcm9tICcuL3Rva2VuLmpzJ1xuZXhwb3J0ICogZnJvbSAnLi90eXBlZ3VhcmRzLmpzJ1xuZXhwb3J0ICogZnJvbSAnLi91cmxUb0Jhc2U2NC5qcydcbmV4cG9ydCAqIGZyb20gJy4vdXJscy5qcydcbmV4cG9ydCAqIGZyb20gJy4vdXRpbHMuanMnXG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztxQkFBYztxQkFDQTtxQkFDQTtxQkFDQTtxQkFDQTtxQkFDQTtxQkFDQTtxQkFDQTtxQkFDQTtxQkFDQTtxQkFDQTtxQkFDQTtxQkFDQTtxQkFDQTtxQkFDQTtxQkFDQTtxQkFDQSJ9
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL0NvbGxlY3Rpb24uanMnXG5leHBvcnQgKiBmcm9tICcuL2Jhc2U2NC5qcydcbmV4cG9ydCAqIGZyb20gJy4vYnVja2V0LmpzJ1xuZXhwb3J0ICogZnJvbSAnLi9idWlsZGVycy5qcydcbmV4cG9ydCAqIGZyb20gJy4vY2FzaW5nLmpzJ1xuZXhwb3J0ICogZnJvbSAnLi9jb2xvcnMuanMnXG5leHBvcnQgKiBmcm9tICcuL2NvbnN0YW50cy5qcydcbmV4cG9ydCAqIGZyb20gJy4vaGFzaC5qcydcbmV4cG9ydCAqIGZyb20gJy4vaW1hZ2VzLmpzJ1xuZXhwb3J0ICogZnJvbSAnLi9sb2dnZXIuanMnXG5leHBvcnQgKiBmcm9tICcuL29hdXRoMi5qcydcbmV4cG9ydCAqIGZyb20gJy4vcGVybWlzc2lvbnMuanMnXG5leHBvcnQgKiBmcm9tICcuL3JlYWN0aW9ucy5qcydcbmV4cG9ydCAqIGZyb20gJy4vdG9rZW4uanMnXG5leHBvcnQgKiBmcm9tICcuL3R5cGVndWFyZHMuanMnXG5leHBvcnQgKiBmcm9tICcuL3VybFRvQmFzZTY0LmpzJ1xuZXhwb3J0ICogZnJvbSAnLi91cmxzLmpzJ1xuZXhwb3J0ICogZnJvbSAnLi91dGlscy5qcydcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O3FCQUFjO3FCQUNBO3FCQUNBO3FCQUNBO3FCQUNBO3FCQUNBO3FCQUNBO3FCQUNBO3FCQUNBO3FCQUNBO3FCQUNBO3FCQUNBO3FCQUNBO3FCQUNBO3FCQUNBO3FCQUNBO3FCQUNBO3FCQUNBIn0=
@@ -2,7 +2,7 @@
2
2
  * A builder to help create Discord embeds.
3
3
  *
4
4
  * @example
5
- * const embeds = new EmbedBuilder()
5
+ * const embeds = new EmbedsBuilder()
6
6
  * .setTitle('My Embed')
7
7
  * .setDescription('This is my new embed')
8
8
  * .newEmbed()
@@ -10,7 +10,7 @@
10
10
  */ export class EmbedsBuilder extends Array {
11
11
  #currentEmbedIndex;
12
12
  /**
13
- * Adds a new field to the embed fields array.
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}
@@ -169,7 +181,7 @@
169
181
  * @param {?(string | number | Date)} [timestamp]
170
182
  * @returns {EmbedsBuilder}
171
183
  */ setTimestamp(timestamp) {
172
- this.#currentEmbed.timestamp = new Date(timestamp).toISOString();
184
+ this.#currentEmbed.timestamp = new Date(timestamp ?? Date.now()).toISOString();
173
185
  return this;
174
186
  }
175
187
  /**
@@ -287,4 +299,4 @@
287
299
  }
288
300
  }
289
301
 
290
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9idWlsZGVycy9lbWJlZHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUge1xuICBEaXNjb3JkRW1iZWQsXG4gIERpc2NvcmRFbWJlZEF1dGhvcixcbiAgRGlzY29yZEVtYmVkRmllbGQsXG4gIERpc2NvcmRFbWJlZEZvb3RlcixcbiAgRGlzY29yZEVtYmVkSW1hZ2UsXG4gIERpc2NvcmRFbWJlZFRodW1ibmFpbCxcbiAgRGlzY29yZEVtYmVkVmlkZW8sXG59IGZyb20gJ0BkaXNjb3JkZW5vL3R5cGVzJ1xuXG4vKipcbiAqIEEgYnVpbGRlciB0byBoZWxwIGNyZWF0ZSBEaXNjb3JkIGVtYmVkcy5cbiAqXG4gKiBAZXhhbXBsZVxuICogY29uc3QgZW1iZWRzID0gbmV3IEVtYmVkQnVpbGRlcigpXG4gKiAgLnNldFRpdGxlKCdNeSBFbWJlZCcpXG4gKiAgLnNldERlc2NyaXB0aW9uKCdUaGlzIGlzIG15IG5ldyBlbWJlZCcpXG4gKiAgLm5ld0VtYmVkKClcbiAqICAuc2V0VGl0bGUoJ015IFNlY29uZCBFbWJlZCcpXG4gKi9cbmV4cG9ydCBjbGFzcyBFbWJlZHNCdWlsZGVyIGV4dGVuZHMgQXJyYXk8RGlzY29yZEVtYmVkPiB7XG4gICNjdXJyZW50RW1iZWRJbmRleDogbnVtYmVyID0gMFxuXG4gIC8qKlxuICAgKiBBZGRzIGEgbmV3IGZpZWxkIHRvIHRoZSBlbWJlZCBmaWVsZHMgYXJyYXkuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBuYW1lIC0gRmllbGQgbmFtZVxuICAgKiBAcGFyYW0ge3N0cmluZ30gdmFsdWUgLSBGaWVsZCB2YWx1ZVxuICAgKiBAcGFyYW0gez9ib29sZWFufSBbaW5saW5lPWZhbHNlXSAtIEZpZWxkIHNob3VsZCBiZSBpbmxpbmUgb3Igbm90LlxuICAgKiBAcmV0dXJucyB7RW1iZWRzQnVpbGRlcn1cbiAgICovXG4gIGFkZEZpZWxkKG5hbWU6IHN0cmluZywgdmFsdWU6IHN0cmluZywgaW5saW5lPzogYm9vbGVhbik6IHRoaXMge1xuICAgIGlmICh0aGlzLiNjdXJyZW50RW1iZWQuZmllbGRzID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMuI2N1cnJlbnRFbWJlZC5maWVsZHMgPSBbXVxuICAgIH1cblxuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC5maWVsZHMucHVzaCh7XG4gICAgICBuYW1lLFxuICAgICAgdmFsdWUsXG4gICAgICBpbmxpbmUsXG4gICAgfSlcblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIGJsYW5rIGVtYmVkLlxuICAgKlxuICAgKiBAcmV0dXJucyB7RW1iZWRzQnVpbGRlcn1cbiAgICovXG4gIG5ld0VtYmVkKCk6IHRoaXMge1xuICAgIGlmICh0aGlzLmxlbmd0aCA+PSAxMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdNYXhpbXVtIGVtYmVkIGNvdW50IGV4Y2VlZGVkLiBZb3UgY2FuIG5vdCBoYXZlIG1vcmUgdGhhbiAxMCBlbWJlZHMuJylcbiAgICB9XG5cbiAgICB0aGlzLnB1c2goe30pXG4gICAgdGhpcy5zZXRDdXJyZW50RW1iZWQoKVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIGN1cnJlbnQgZW1iZWQgYXV0aG9yLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gbmFtZSAtIE5hbWUgb2YgdGhlIGF1dGhvclxuICAgKiBAcGFyYW0gez9PbWl0PERpc2NvcmRFbWJlZEF1dGhvciwgJ25hbWUnPn0gW29wdGlvbnNdIC0gRXh0cmEgYXV0aG9yIG9wdGlvbnNcbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRBdXRob3IobmFtZTogc3RyaW5nLCBvcHRpb25zPzogT21pdDxEaXNjb3JkRW1iZWRBdXRob3IsICduYW1lJz4pOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQuYXV0aG9yID0ge1xuICAgICAgLi4udGhpcy4jY3VycmVudEVtYmVkLmF1dGhvcixcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBuYW1lLFxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBjb2xvciBvbiB0aGUgc2lkZSBvZiB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHBhcmFtIHsobnVtYmVyIHwgc3RyaW5nKX0gY29sb3IgLSBUaGUgY29sb3IsIGluIGJhc2UxNiBvciBoZXggY29sb3IgY29kZVxuICAgKiBAcmV0dXJucyB7RW1iZWRzQnVpbGRlcn1cbiAgICovXG4gIHNldENvbG9yKGNvbG9yOiBudW1iZXIgfCBzdHJpbmcpOiB0aGlzIHtcbiAgICBpZiAodHlwZW9mIGNvbG9yID09PSAnc3RyaW5nJykge1xuICAgICAgY29uc3QgY29udmVydGVkVmFsdWUgPSBwYXJzZUludChjb2xvci5yZXBsYWNlKCcjJywgJycpLCAxNilcbiAgICAgIGNvbG9yID0gTnVtYmVyLmlzTmFOKGNvbnZlcnRlZFZhbHVlKSA/IDAgOiBjb252ZXJ0ZWRWYWx1ZVxuICAgIH1cblxuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC5jb2xvciA9IGNvbG9yXG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgY3VycmVudCBlbWJlZCB0byBhIGRpZmZlcmVudCBpbmRleC5cbiAgICpcbiAgICogV0FSTklORzogT25seSB1c2UgdGhpcyBtZXRob2QgaWYgeW91IGtub3cgd2hhdCB5b3UncmUgZG9pbmcuIE1ha2Ugc3VyZSB0byBzZXQgaXQgYmFjayB0byB0aGUgbGF0ZXN0IHdoZW4geW91J3JlIGRvbmUuXG4gICAqXG4gICAqIEBwYXJhbSB7P251bWJlcn0gW2luZGV4XSAtIFRoZSBpbmRleCBvZiB0aGUgZW1iZWQgaW4gdGhlIEVtYmVkc0J1aWxkZXIgYXJyYXlcbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRDdXJyZW50RW1iZWQoaW5kZXg/OiBudW1iZXIpOiB0aGlzIHtcbiAgICBpZiAoaW5kZXggPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy4jY3VycmVudEVtYmVkSW5kZXggPSB0aGlzLmxlbmd0aCAtIDFcblxuICAgICAgcmV0dXJuIHRoaXNcbiAgICB9XG5cbiAgICBpZiAoaW5kZXggPj0gdGhpcy5sZW5ndGggfHwgaW5kZXggPCAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0NhbiBub3Qgc2V0IHRoZSBjdXJyZW50IGVtYmVkIHRvIGEgaW5kZXggb3V0IG9mIGJvdW5kcy4nKVxuICAgIH1cblxuICAgIHRoaXMuI2N1cnJlbnRFbWJlZEluZGV4ID0gaW5kZXhcblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBkZXNjcmlwdGlvbiBvZiB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGRlc2NyaXB0aW9uIC0gRGVzY3JpcHRpb25cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXREZXNjcmlwdGlvbihkZXNjcmlwdGlvbjogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy4jY3VycmVudEVtYmVkLmRlc2NyaXB0aW9uID0gZGVzY3JpcHRpb25cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogT3ZlcndyaXRlIGFsbCBmaWVsZHMgb24gdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7RGlzY29yZEVtYmVkRmllbGRbXX0gZmllbGRzXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0RmllbGRzKGZpZWxkczogRGlzY29yZEVtYmVkRmllbGRbXSk6IHRoaXMge1xuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC5maWVsZHMgPSBmaWVsZHNcblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBmb290ZXIgaW4gdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB0ZXh0IC0gVGhlIHRleHQgdG8gZGlzcGxheSBpbiB0aGUgZm9vdGVyXG4gICAqIEBwYXJhbSB7P09taXQ8RGlzY29yZEVtYmVkRm9vdGVyLCAndGV4dCc+fSBbb3B0aW9uc11cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRGb290ZXIodGV4dDogc3RyaW5nLCBvcHRpb25zPzogT21pdDxEaXNjb3JkRW1iZWRGb290ZXIsICd0ZXh0Jz4pOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQuZm9vdGVyID0ge1xuICAgICAgLi4udGhpcy4jY3VycmVudEVtYmVkLmZvb3RlcixcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICB0ZXh0LFxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBpbWFnZSBpbiB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHVybCAtIFVSTCBvZiB0aGUgaW1hZ2VcbiAgICogQHBhcmFtIHs/T21pdDxEaXNjb3JkRW1iZWRJbWFnZSwgJ3VybCc+fSBbb3B0aW9uc11cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRJbWFnZSh1cmw6IHN0cmluZywgb3B0aW9ucz86IE9taXQ8RGlzY29yZEVtYmVkSW1hZ2UsICd1cmwnPik6IHRoaXMge1xuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC5pbWFnZSA9IHtcbiAgICAgIC4uLnRoaXMuI2N1cnJlbnRFbWJlZC5pbWFnZSxcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICB1cmwsXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIHByb3ZpZGVyIG9mIHRoZSBjdXJyZW50IGVtYmVkLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gbmFtZVxuICAgKiBAcGFyYW0gez9zdHJpbmd9IFt1cmxdXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0UHJvdmlkZXIobmFtZTogc3RyaW5nLCB1cmw/OiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQucHJvdmlkZXIgPSB7XG4gICAgICBuYW1lLFxuICAgICAgdXJsLFxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBjb2xvciBvZiB0aGUgY3VycmVudCBlbWJlZCB0byBhIHJhbmRvbSB2YWx1ZS5cbiAgICpcbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRSYW5kb21Db2xvcigpOiB0aGlzIHtcbiAgICByZXR1cm4gdGhpcy5zZXRDb2xvcihNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAoMHhmZmZmZmYgKyAxKSkpXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSB0aXRsZSBvZiB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHRpdGxlXG4gICAqIEBwYXJhbSB7P3N0cmluZ30gW3VybF1cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRUaXRsZSh0aXRsZTogc3RyaW5nLCB1cmw/OiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQudGl0bGUgPSB0aXRsZVxuXG4gICAgaWYgKHVybCkge1xuICAgICAgdGhpcy5zZXRVcmwodXJsKVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSB0aW1lc3RhbXAgb2YgdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7PyhzdHJpbmcgfCBudW1iZXIgfCBEYXRlKX0gW3RpbWVzdGFtcF1cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRUaW1lc3RhbXAodGltZXN0YW1wPzogc3RyaW5nIHwgbnVtYmVyIHwgRGF0ZSk6IHRoaXMge1xuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC50aW1lc3RhbXAgPSBuZXcgRGF0ZSh0aW1lc3RhbXAhKS50b0lTT1N0cmluZygpXG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgdGh1bWJuYWlsIG9mIHRoZSBjdXJyZW50IGVtYmVkLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gdXJsIC0gVVJMIG9mIHRoZSBpbWFnZVxuICAgKiBAcGFyYW0gez9PbWl0PERpc2NvcmRFbWJlZFRodW1ibmFpbCwgJ3VybCc+fSBbb3B0aW9uc11cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRUaHVtYm5haWwodXJsOiBzdHJpbmcsIG9wdGlvbnM/OiBPbWl0PERpc2NvcmRFbWJlZFRodW1ibmFpbCwgJ3VybCc+KTogdGhpcyB7XG4gICAgdGhpcy4jY3VycmVudEVtYmVkLnRodW1ibmFpbCA9IHtcbiAgICAgIC4uLnRoaXMuI2N1cnJlbnRFbWJlZC50aHVtYm5haWwsXG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgdXJsLFxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBVUkwgb2YgdGhlIGN1cnJlbnQgZW1iZWQgdGl0bGUuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB1cmxcbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRVcmwodXJsOiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQudXJsID0gdXJsXG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgdmlkZW8gb2YgdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB1cmxcbiAgICogQHBhcmFtIHs/T21pdDxEaXNjb3JkRW1iZWRWaWRlbywgJ3VybCc+fSBbb3B0aW9uc11cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRWaWRlbyh1cmw6IHN0cmluZywgb3B0aW9ucz86IE9taXQ8RGlzY29yZEVtYmVkVmlkZW8sICd1cmwnPik6IHRoaXMge1xuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC52aWRlbyA9IHtcbiAgICAgIC4uLnRoaXMuI2N1cnJlbnRFbWJlZC52aWRlbyxcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICB1cmwsXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBWYWxpZGF0ZSBhbGwgZW1iZWRzIGF2YWlsYWJsZSBhZ2FpbnN0IGN1cnJlbnQga25vd24gRGlzY29yZCBsaW1pdHMgdG8gaGVscCBwcmV2ZW50IGJhZCByZXF1ZXN0cy5cbiAgICpcbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICB2YWxpZGF0ZSgpOiB0aGlzIHtcbiAgICBsZXQgdG90YWxDaGFyYWN0ZXJzID0gMFxuXG4gICAgaWYgKHRoaXMubGVuZ3RoID4gMTApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignWW91IGNhbiBub3QgaGF2ZSBtb3JlIHRoYW4gMTAgZW1iZWRzIG9uIGEgc2luZ2xlIG1lc3NhZ2UuJylcbiAgICB9XG5cbiAgICB0aGlzLmZvckVhY2goKHsgYXV0aG9yLCBkZXNjcmlwdGlvbiwgZmllbGRzLCBmb290ZXIsIHRpdGxlIH0sIGluZGV4KSA9PiB7XG4gICAgICBpZiAodGl0bGUpIHtcbiAgICAgICAgY29uc3QgdHJpbW1lZFRpdGxlID0gdGl0bGUudHJpbSgpXG5cbiAgICAgICAgaWYgKHRyaW1tZWRUaXRsZS5sZW5ndGggPiAyNTYpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFRpdGxlIG9mIGVtYmVkICR7aW5kZXh9IGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gMjU2IGNoYXJhY3RlcnMuYClcbiAgICAgICAgfVxuXG4gICAgICAgIHRvdGFsQ2hhcmFjdGVycyArPSB0cmltbWVkVGl0bGUubGVuZ3RoXG4gICAgICB9XG5cbiAgICAgIGlmIChkZXNjcmlwdGlvbikge1xuICAgICAgICBjb25zdCB0cmltbWVkRGVzY3JpcHRpb24gPSBkZXNjcmlwdGlvbi50cmltKClcblxuICAgICAgICBpZiAodHJpbW1lZERlc2NyaXB0aW9uLmxlbmd0aCA+IDQwOTYpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYERlc2NyaXB0aW9uIG9mIGVtYmVkICR7aW5kZXh9IGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gNDA5NiBjaGFyYWN0ZXJzLmApXG4gICAgICAgIH1cblxuICAgICAgICB0b3RhbENoYXJhY3RlcnMgKz0gdHJpbW1lZERlc2NyaXB0aW9uLmxlbmd0aFxuICAgICAgfVxuXG4gICAgICBpZiAoZmllbGRzKSB7XG4gICAgICAgIGlmIChmaWVsZHMubGVuZ3RoID4gMjUpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYGVtYmVkICR7aW5kZXh9IGNhbiBub3QgaGF2ZSBtb3JlIHRoYW4gMjUgZmllbGRzLmApXG4gICAgICAgIH1cblxuICAgICAgICBmaWVsZHMuZm9yRWFjaCgoeyBuYW1lLCB2YWx1ZSB9LCBmaWVsZEluZGV4KSA9PiB7XG4gICAgICAgICAgY29uc3QgdHJpbW1lZE5hbWUgPSBuYW1lLnRyaW0oKVxuICAgICAgICAgIGNvbnN0IHRyaW1tZWRWYWx1ZSA9IHZhbHVlLnRyaW0oKVxuXG4gICAgICAgICAgaWYgKHRyaW1tZWROYW1lLmxlbmd0aCA+IDI1Nikge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBOYW1lIG9mIGZpZWxkICR7ZmllbGRJbmRleH0gb24gZW1iZWQgJHtpbmRleH0gY2FuIG5vdCBiZSBsb25nZXIgdGhhbiAyNTYgY2hhcmFjdGVycy5gKVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmICh0cmltbWVkVmFsdWUubGVuZ3RoID4gNDA5Nikge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBWYWx1ZSBvZiBmaWVsZCAke2ZpZWxkSW5kZXh9IG9uIGVtYmVkICR7aW5kZXh9IGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gMTAyNCBjaGFyYWN0ZXJzLmApXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdG90YWxDaGFyYWN0ZXJzICs9IHRyaW1tZWROYW1lLmxlbmd0aFxuICAgICAgICAgIHRvdGFsQ2hhcmFjdGVycyArPSB0cmltbWVkVmFsdWUubGVuZ3RoXG4gICAgICAgIH0pXG4gICAgICB9XG5cbiAgICAgIGlmIChmb290ZXIpIHtcbiAgICAgICAgY29uc3QgdHJpbW1lZEZvb3RlclRleHQgPSBmb290ZXIudGV4dC50cmltKClcblxuICAgICAgICBpZiAodHJpbW1lZEZvb3RlclRleHQubGVuZ3RoID4gMjA0OCkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgRm9vdGVyIHRleHQgb2YgZW1iZWQgJHtpbmRleH0gY2FuIG5vdCBiZSBsb25nZXIgdGhhbiAyMDQ4IGNoYXJhY3RlcnMuYClcbiAgICAgICAgfVxuXG4gICAgICAgIHRvdGFsQ2hhcmFjdGVycyArPSB0cmltbWVkRm9vdGVyVGV4dC5sZW5ndGhcbiAgICAgIH1cblxuICAgICAgaWYgKGF1dGhvcikge1xuICAgICAgICBjb25zdCB0cmltbWVkQXV0aG9yTmFtZSA9IGF1dGhvci5uYW1lLnRyaW0oKVxuXG4gICAgICAgIGlmICh0cmltbWVkQXV0aG9yTmFtZS5sZW5ndGggPiAyNTYpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEF1dGhvciBuYW1lIG9mIGVtYmVkICR7aW5kZXh9IGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gMjU2IGNoYXJhY3RlcnMuYClcbiAgICAgICAgfVxuXG4gICAgICAgIHRvdGFsQ2hhcmFjdGVycyArPSB0cmltbWVkQXV0aG9yTmFtZS5sZW5ndGhcbiAgICAgIH1cbiAgICB9KVxuXG4gICAgaWYgKHRvdGFsQ2hhcmFjdGVycyA+IDYwMDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignVG90YWwgY2hhcmFjdGVyIGxlbmd0aCBvZiBhbGwgZW1iZWRzIGNhbiBub3QgZXhjZWVkIDYwMDAgY2hhcmFjdGVycy4nKVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHJlYWRvbmx5XG4gICAqIEB0eXBlIHtEaXNjb3JkRW1iZWR9XG4gICAqL1xuICBnZXQgI2N1cnJlbnRFbWJlZCgpOiBEaXNjb3JkRW1iZWQge1xuICAgIGlmICh0aGlzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhpcy5uZXdFbWJlZCgpXG4gICAgICB0aGlzLnNldEN1cnJlbnRFbWJlZCgpXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXNbdGhpcy4jY3VycmVudEVtYmVkSW5kZXhdXG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJFbWJlZHNCdWlsZGVyIiwiQXJyYXkiLCJhZGRGaWVsZCIsIm5hbWUiLCJ2YWx1ZSIsImlubGluZSIsImZpZWxkcyIsInVuZGVmaW5lZCIsInB1c2giLCJuZXdFbWJlZCIsImxlbmd0aCIsIkVycm9yIiwic2V0Q3VycmVudEVtYmVkIiwic2V0QXV0aG9yIiwib3B0aW9ucyIsImF1dGhvciIsInNldENvbG9yIiwiY29sb3IiLCJjb252ZXJ0ZWRWYWx1ZSIsInBhcnNlSW50IiwicmVwbGFjZSIsIk51bWJlciIsImlzTmFOIiwiaW5kZXgiLCJzZXREZXNjcmlwdGlvbiIsImRlc2NyaXB0aW9uIiwic2V0RmllbGRzIiwic2V0Rm9vdGVyIiwidGV4dCIsImZvb3RlciIsInNldEltYWdlIiwidXJsIiwiaW1hZ2UiLCJzZXRQcm92aWRlciIsInByb3ZpZGVyIiwic2V0UmFuZG9tQ29sb3IiLCJNYXRoIiwiZmxvb3IiLCJyYW5kb20iLCJzZXRUaXRsZSIsInRpdGxlIiwic2V0VXJsIiwic2V0VGltZXN0YW1wIiwidGltZXN0YW1wIiwiRGF0ZSIsInRvSVNPU3RyaW5nIiwic2V0VGh1bWJuYWlsIiwidGh1bWJuYWlsIiwic2V0VmlkZW8iLCJ2aWRlbyIsInZhbGlkYXRlIiwidG90YWxDaGFyYWN0ZXJzIiwiZm9yRWFjaCIsInRyaW1tZWRUaXRsZSIsInRyaW0iLCJ0cmltbWVkRGVzY3JpcHRpb24iLCJmaWVsZEluZGV4IiwidHJpbW1lZE5hbWUiLCJ0cmltbWVkVmFsdWUiLCJ0cmltbWVkRm9vdGVyVGV4dCIsInRyaW1tZWRBdXRob3JOYW1lIl0sIm1hcHBpbmdzIjoiQUFVQTs7Ozs7Ozs7O0NBU0MsR0FDRCxPQUFPLE1BQU1BLHNCQUFzQkM7SUFDakMsQ0FBQSxpQkFBa0IsQ0FBWTtJQUU5Qjs7Ozs7OztHQU9DLEdBQ0RDLFNBQVNDLElBQVksRUFBRUMsS0FBYSxFQUFFQyxNQUFnQixFQUFRO1FBQzVELElBQUksSUFBSSxDQUFDLENBQUEsWUFBYSxDQUFDQyxNQUFNLEtBQUtDLFdBQVc7WUFDM0MsSUFBSSxDQUFDLENBQUEsWUFBYSxDQUFDRCxNQUFNLEdBQUcsRUFBRTtRQUNoQztRQUVBLElBQUksQ0FBQyxDQUFBLFlBQWEsQ0FBQ0EsTUFBTSxDQUFDRSxJQUFJLENBQUM7WUFDN0JMO1lBQ0FDO1lBQ0FDO1FBQ0Y7UUFFQSxPQUFPLElBQUk7SUFDYjtJQUVBOzs7O0dBSUMsR0FDREksV0FBaUI7UUFDZixJQUFJLElBQUksQ0FBQ0MsTUFBTSxJQUFJLElBQUk7WUFDckIsTUFBTSxJQUFJQyxNQUFNO1FBQ2xCO1FBRUEsSUFBSSxDQUFDSCxJQUFJLENBQUMsQ0FBQztRQUNYLElBQUksQ0FBQ0ksZUFBZTtRQUVwQixPQUFPLElBQUk7SUFDYjtJQUVBOzs7Ozs7R0FNQyxHQUNEQyxVQUFVVixJQUFZLEVBQUVXLE9BQTBDLEVBQVE7UUFDeEUsSUFBSSxDQUFDLENBQUEsWUFBYSxDQUFDQyxNQUFNLEdBQUc7WUFDMUIsR0FBRyxJQUFJLENBQUMsQ0FBQSxZQUFhLENBQUNBLE1BQU07WUFDNUIsR0FBR0QsT0FBTztZQUNWWDtRQUNGO1FBRUEsT0FBTyxJQUFJO0lBQ2I7SUFFQTs7Ozs7R0FLQyxHQUNEYSxTQUFTQyxLQUFzQixFQUFRO1FBQ3JDLElBQUksT0FB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
302
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9idWlsZGVycy9lbWJlZHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUge1xuICBEaXNjb3JkRW1iZWQsXG4gIERpc2NvcmRFbWJlZEF1dGhvcixcbiAgRGlzY29yZEVtYmVkRmllbGQsXG4gIERpc2NvcmRFbWJlZEZvb3RlcixcbiAgRGlzY29yZEVtYmVkSW1hZ2UsXG4gIERpc2NvcmRFbWJlZFRodW1ibmFpbCxcbiAgRGlzY29yZEVtYmVkVmlkZW8sXG59IGZyb20gJ0BkaXNjb3JkZW5vL3R5cGVzJ1xuXG4vKipcbiAqIEEgYnVpbGRlciB0byBoZWxwIGNyZWF0ZSBEaXNjb3JkIGVtYmVkcy5cbiAqXG4gKiBAZXhhbXBsZVxuICogY29uc3QgZW1iZWRzID0gbmV3IEVtYmVkc0J1aWxkZXIoKVxuICogIC5zZXRUaXRsZSgnTXkgRW1iZWQnKVxuICogIC5zZXREZXNjcmlwdGlvbignVGhpcyBpcyBteSBuZXcgZW1iZWQnKVxuICogIC5uZXdFbWJlZCgpXG4gKiAgLnNldFRpdGxlKCdNeSBTZWNvbmQgRW1iZWQnKVxuICovXG5leHBvcnQgY2xhc3MgRW1iZWRzQnVpbGRlciBleHRlbmRzIEFycmF5PERpc2NvcmRFbWJlZD4ge1xuICAjY3VycmVudEVtYmVkSW5kZXg6IG51bWJlciA9IDBcblxuICAvKipcbiAgICogQWRkcyBhIG5ldyBmaWVsZCB0byB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IG5hbWUgLSBGaWVsZCBuYW1lXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB2YWx1ZSAtIEZpZWxkIHZhbHVlXG4gICAqIEBwYXJhbSB7P2Jvb2xlYW59IFtpbmxpbmU9ZmFsc2VdIC0gRmllbGQgc2hvdWxkIGJlIGlubGluZSBvciBub3QuXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgYWRkRmllbGQobmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nLCBpbmxpbmU/OiBib29sZWFuKTogdGhpcyB7XG4gICAgaWYgKHRoaXMuI2N1cnJlbnRFbWJlZC5maWVsZHMgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy4jY3VycmVudEVtYmVkLmZpZWxkcyA9IFtdXG4gICAgfVxuXG4gICAgdGhpcy4jY3VycmVudEVtYmVkLmZpZWxkcy5wdXNoKHtcbiAgICAgIG5hbWUsXG4gICAgICB2YWx1ZSxcbiAgICAgIGlubGluZSxcbiAgICB9KVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIG11bHRpcGxlIG5ldyBmaWVsZHMgdG8gdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7RGlzY29yZEVtYmVkRmllbGRbXX0gZmllbGRzIC0gVGhlIGZpZWxkcyB0byBhZGRcbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBhZGRGaWVsZHMoZmllbGRzOiBEaXNjb3JkRW1iZWRGaWVsZFtdKTogdGhpcyB7XG4gICAgaWYgKHRoaXMuI2N1cnJlbnRFbWJlZC5maWVsZHMgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy4jY3VycmVudEVtYmVkLmZpZWxkcyA9IFtdXG4gICAgfVxuXG4gICAgdGhpcy4jY3VycmVudEVtYmVkLmZpZWxkcy5wdXNoKC4uLmZpZWxkcylcblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIGJsYW5rIGVtYmVkLlxuICAgKlxuICAgKiBAcmV0dXJucyB7RW1iZWRzQnVpbGRlcn1cbiAgICovXG4gIG5ld0VtYmVkKCk6IHRoaXMge1xuICAgIGlmICh0aGlzLmxlbmd0aCA+PSAxMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdNYXhpbXVtIGVtYmVkIGNvdW50IGV4Y2VlZGVkLiBZb3UgY2FuIG5vdCBoYXZlIG1vcmUgdGhhbiAxMCBlbWJlZHMuJylcbiAgICB9XG5cbiAgICB0aGlzLnB1c2goe30pXG4gICAgdGhpcy5zZXRDdXJyZW50RW1iZWQoKVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIGN1cnJlbnQgZW1iZWQgYXV0aG9yLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gbmFtZSAtIE5hbWUgb2YgdGhlIGF1dGhvclxuICAgKiBAcGFyYW0gez9PbWl0PERpc2NvcmRFbWJlZEF1dGhvciwgJ25hbWUnPn0gW29wdGlvbnNdIC0gRXh0cmEgYXV0aG9yIG9wdGlvbnNcbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRBdXRob3IobmFtZTogc3RyaW5nLCBvcHRpb25zPzogT21pdDxEaXNjb3JkRW1iZWRBdXRob3IsICduYW1lJz4pOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQuYXV0aG9yID0ge1xuICAgICAgLi4udGhpcy4jY3VycmVudEVtYmVkLmF1dGhvcixcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBuYW1lLFxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBjb2xvciBvbiB0aGUgc2lkZSBvZiB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHBhcmFtIHsobnVtYmVyIHwgc3RyaW5nKX0gY29sb3IgLSBUaGUgY29sb3IsIGluIGJhc2UxNiBvciBoZXggY29sb3IgY29kZVxuICAgKiBAcmV0dXJucyB7RW1iZWRzQnVpbGRlcn1cbiAgICovXG4gIHNldENvbG9yKGNvbG9yOiBudW1iZXIgfCBzdHJpbmcpOiB0aGlzIHtcbiAgICBpZiAodHlwZW9mIGNvbG9yID09PSAnc3RyaW5nJykge1xuICAgICAgY29uc3QgY29udmVydGVkVmFsdWUgPSBwYXJzZUludChjb2xvci5yZXBsYWNlKCcjJywgJycpLCAxNilcbiAgICAgIGNvbG9yID0gTnVtYmVyLmlzTmFOKGNvbnZlcnRlZFZhbHVlKSA/IDAgOiBjb252ZXJ0ZWRWYWx1ZVxuICAgIH1cblxuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC5jb2xvciA9IGNvbG9yXG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgY3VycmVudCBlbWJlZCB0byBhIGRpZmZlcmVudCBpbmRleC5cbiAgICpcbiAgICogV0FSTklORzogT25seSB1c2UgdGhpcyBtZXRob2QgaWYgeW91IGtub3cgd2hhdCB5b3UncmUgZG9pbmcuIE1ha2Ugc3VyZSB0byBzZXQgaXQgYmFjayB0byB0aGUgbGF0ZXN0IHdoZW4geW91J3JlIGRvbmUuXG4gICAqXG4gICAqIEBwYXJhbSB7P251bWJlcn0gW2luZGV4XSAtIFRoZSBpbmRleCBvZiB0aGUgZW1iZWQgaW4gdGhlIEVtYmVkc0J1aWxkZXIgYXJyYXlcbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRDdXJyZW50RW1iZWQoaW5kZXg/OiBudW1iZXIpOiB0aGlzIHtcbiAgICBpZiAoaW5kZXggPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy4jY3VycmVudEVtYmVkSW5kZXggPSB0aGlzLmxlbmd0aCAtIDFcblxuICAgICAgcmV0dXJuIHRoaXNcbiAgICB9XG5cbiAgICBpZiAoaW5kZXggPj0gdGhpcy5sZW5ndGggfHwgaW5kZXggPCAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0NhbiBub3Qgc2V0IHRoZSBjdXJyZW50IGVtYmVkIHRvIGEgaW5kZXggb3V0IG9mIGJvdW5kcy4nKVxuICAgIH1cblxuICAgIHRoaXMuI2N1cnJlbnRFbWJlZEluZGV4ID0gaW5kZXhcblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBkZXNjcmlwdGlvbiBvZiB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGRlc2NyaXB0aW9uIC0gRGVzY3JpcHRpb25cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXREZXNjcmlwdGlvbihkZXNjcmlwdGlvbjogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy4jY3VycmVudEVtYmVkLmRlc2NyaXB0aW9uID0gZGVzY3JpcHRpb25cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogT3ZlcndyaXRlIGFsbCBmaWVsZHMgb24gdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7RGlzY29yZEVtYmVkRmllbGRbXX0gZmllbGRzXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0RmllbGRzKGZpZWxkczogRGlzY29yZEVtYmVkRmllbGRbXSk6IHRoaXMge1xuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC5maWVsZHMgPSBmaWVsZHNcblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBmb290ZXIgaW4gdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB0ZXh0IC0gVGhlIHRleHQgdG8gZGlzcGxheSBpbiB0aGUgZm9vdGVyXG4gICAqIEBwYXJhbSB7P09taXQ8RGlzY29yZEVtYmVkRm9vdGVyLCAndGV4dCc+fSBbb3B0aW9uc11cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRGb290ZXIodGV4dDogc3RyaW5nLCBvcHRpb25zPzogT21pdDxEaXNjb3JkRW1iZWRGb290ZXIsICd0ZXh0Jz4pOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQuZm9vdGVyID0ge1xuICAgICAgLi4udGhpcy4jY3VycmVudEVtYmVkLmZvb3RlcixcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICB0ZXh0LFxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBpbWFnZSBpbiB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHVybCAtIFVSTCBvZiB0aGUgaW1hZ2VcbiAgICogQHBhcmFtIHs/T21pdDxEaXNjb3JkRW1iZWRJbWFnZSwgJ3VybCc+fSBbb3B0aW9uc11cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRJbWFnZSh1cmw6IHN0cmluZywgb3B0aW9ucz86IE9taXQ8RGlzY29yZEVtYmVkSW1hZ2UsICd1cmwnPik6IHRoaXMge1xuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC5pbWFnZSA9IHtcbiAgICAgIC4uLnRoaXMuI2N1cnJlbnRFbWJlZC5pbWFnZSxcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICB1cmwsXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIHByb3ZpZGVyIG9mIHRoZSBjdXJyZW50IGVtYmVkLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gbmFtZVxuICAgKiBAcGFyYW0gez9zdHJpbmd9IFt1cmxdXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0UHJvdmlkZXIobmFtZTogc3RyaW5nLCB1cmw/OiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQucHJvdmlkZXIgPSB7XG4gICAgICBuYW1lLFxuICAgICAgdXJsLFxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBjb2xvciBvZiB0aGUgY3VycmVudCBlbWJlZCB0byBhIHJhbmRvbSB2YWx1ZS5cbiAgICpcbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRSYW5kb21Db2xvcigpOiB0aGlzIHtcbiAgICByZXR1cm4gdGhpcy5zZXRDb2xvcihNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAoMHhmZmZmZmYgKyAxKSkpXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSB0aXRsZSBvZiB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHRpdGxlXG4gICAqIEBwYXJhbSB7P3N0cmluZ30gW3VybF1cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRUaXRsZSh0aXRsZTogc3RyaW5nLCB1cmw/OiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQudGl0bGUgPSB0aXRsZVxuXG4gICAgaWYgKHVybCkge1xuICAgICAgdGhpcy5zZXRVcmwodXJsKVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSB0aW1lc3RhbXAgb2YgdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7PyhzdHJpbmcgfCBudW1iZXIgfCBEYXRlKX0gW3RpbWVzdGFtcF1cbiAgICogQHJldHVybnMge0VtYmVkc0J1aWxkZXJ9XG4gICAqL1xuICBzZXRUaW1lc3RhbXAodGltZXN0YW1wPzogc3RyaW5nIHwgbnVtYmVyIHwgRGF0ZSk6IHRoaXMge1xuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC50aW1lc3RhbXAgPSBuZXcgRGF0ZSh0aW1lc3RhbXAgPz8gRGF0ZS5ub3coKSkudG9JU09TdHJpbmcoKVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIHRodW1ibmFpbCBvZiB0aGUgY3VycmVudCBlbWJlZC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHVybCAtIFVSTCBvZiB0aGUgaW1hZ2VcbiAgICogQHBhcmFtIHs/T21pdDxEaXNjb3JkRW1iZWRUaHVtYm5haWwsICd1cmwnPn0gW29wdGlvbnNdXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0VGh1bWJuYWlsKHVybDogc3RyaW5nLCBvcHRpb25zPzogT21pdDxEaXNjb3JkRW1iZWRUaHVtYm5haWwsICd1cmwnPik6IHRoaXMge1xuICAgIHRoaXMuI2N1cnJlbnRFbWJlZC50aHVtYm5haWwgPSB7XG4gICAgICAuLi50aGlzLiNjdXJyZW50RW1iZWQudGh1bWJuYWlsLFxuICAgICAgLi4ub3B0aW9ucyxcbiAgICAgIHVybCxcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgVVJMIG9mIHRoZSBjdXJyZW50IGVtYmVkIHRpdGxlLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gdXJsXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0VXJsKHVybDogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy4jY3VycmVudEVtYmVkLnVybCA9IHVybFxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIHZpZGVvIG9mIHRoZSBjdXJyZW50IGVtYmVkLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gdXJsXG4gICAqIEBwYXJhbSB7P09taXQ8RGlzY29yZEVtYmVkVmlkZW8sICd1cmwnPn0gW29wdGlvbnNdXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgc2V0VmlkZW8odXJsOiBzdHJpbmcsIG9wdGlvbnM/OiBPbWl0PERpc2NvcmRFbWJlZFZpZGVvLCAndXJsJz4pOiB0aGlzIHtcbiAgICB0aGlzLiNjdXJyZW50RW1iZWQudmlkZW8gPSB7XG4gICAgICAuLi50aGlzLiNjdXJyZW50RW1iZWQudmlkZW8sXG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgdXJsLFxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogVmFsaWRhdGUgYWxsIGVtYmVkcyBhdmFpbGFibGUgYWdhaW5zdCBjdXJyZW50IGtub3duIERpc2NvcmQgbGltaXRzIHRvIGhlbHAgcHJldmVudCBiYWQgcmVxdWVzdHMuXG4gICAqXG4gICAqIEByZXR1cm5zIHtFbWJlZHNCdWlsZGVyfVxuICAgKi9cbiAgdmFsaWRhdGUoKTogdGhpcyB7XG4gICAgbGV0IHRvdGFsQ2hhcmFjdGVycyA9IDBcblxuICAgIGlmICh0aGlzLmxlbmd0aCA+IDEwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1lvdSBjYW4gbm90IGhhdmUgbW9yZSB0aGFuIDEwIGVtYmVkcyBvbiBhIHNpbmdsZSBtZXNzYWdlLicpXG4gICAgfVxuXG4gICAgdGhpcy5mb3JFYWNoKCh7IGF1dGhvciwgZGVzY3JpcHRpb24sIGZpZWxkcywgZm9vdGVyLCB0aXRsZSB9LCBpbmRleCkgPT4ge1xuICAgICAgaWYgKHRpdGxlKSB7XG4gICAgICAgIGNvbnN0IHRyaW1tZWRUaXRsZSA9IHRpdGxlLnRyaW0oKVxuXG4gICAgICAgIGlmICh0cmltbWVkVGl0bGUubGVuZ3RoID4gMjU2KSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBUaXRsZSBvZiBlbWJlZCAke2luZGV4fSBjYW4gbm90IGJlIGxvbmdlciB0aGFuIDI1NiBjaGFyYWN0ZXJzLmApXG4gICAgICAgIH1cblxuICAgICAgICB0b3RhbENoYXJhY3RlcnMgKz0gdHJpbW1lZFRpdGxlLmxlbmd0aFxuICAgICAgfVxuXG4gICAgICBpZiAoZGVzY3JpcHRpb24pIHtcbiAgICAgICAgY29uc3QgdHJpbW1lZERlc2NyaXB0aW9uID0gZGVzY3JpcHRpb24udHJpbSgpXG5cbiAgICAgICAgaWYgKHRyaW1tZWREZXNjcmlwdGlvbi5sZW5ndGggPiA0MDk2KSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBEZXNjcmlwdGlvbiBvZiBlbWJlZCAke2luZGV4fSBjYW4gbm90IGJlIGxvbmdlciB0aGFuIDQwOTYgY2hhcmFjdGVycy5gKVxuICAgICAgICB9XG5cbiAgICAgICAgdG90YWxDaGFyYWN0ZXJzICs9IHRyaW1tZWREZXNjcmlwdGlvbi5sZW5ndGhcbiAgICAgIH1cblxuICAgICAgaWYgKGZpZWxkcykge1xuICAgICAgICBpZiAoZmllbGRzLmxlbmd0aCA+IDI1KSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBlbWJlZCAke2luZGV4fSBjYW4gbm90IGhhdmUgbW9yZSB0aGFuIDI1IGZpZWxkcy5gKVxuICAgICAgICB9XG5cbiAgICAgICAgZmllbGRzLmZvckVhY2goKHsgbmFtZSwgdmFsdWUgfSwgZmllbGRJbmRleCkgPT4ge1xuICAgICAgICAgIGNvbnN0IHRyaW1tZWROYW1lID0gbmFtZS50cmltKClcbiAgICAgICAgICBjb25zdCB0cmltbWVkVmFsdWUgPSB2YWx1ZS50cmltKClcblxuICAgICAgICAgIGlmICh0cmltbWVkTmFtZS5sZW5ndGggPiAyNTYpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgTmFtZSBvZiBmaWVsZCAke2ZpZWxkSW5kZXh9IG9uIGVtYmVkICR7aW5kZXh9IGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gMjU2IGNoYXJhY3RlcnMuYClcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAodHJpbW1lZFZhbHVlLmxlbmd0aCA+IDQwOTYpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVmFsdWUgb2YgZmllbGQgJHtmaWVsZEluZGV4fSBvbiBlbWJlZCAke2luZGV4fSBjYW4gbm90IGJlIGxvbmdlciB0aGFuIDEwMjQgY2hhcmFjdGVycy5gKVxuICAgICAgICAgIH1cblxuICAgICAgICAgIHRvdGFsQ2hhcmFjdGVycyArPSB0cmltbWVkTmFtZS5sZW5ndGhcbiAgICAgICAgICB0b3RhbENoYXJhY3RlcnMgKz0gdHJpbW1lZFZhbHVlLmxlbmd0aFxuICAgICAgICB9KVxuICAgICAgfVxuXG4gICAgICBpZiAoZm9vdGVyKSB7XG4gICAgICAgIGNvbnN0IHRyaW1tZWRGb290ZXJUZXh0ID0gZm9vdGVyLnRleHQudHJpbSgpXG5cbiAgICAgICAgaWYgKHRyaW1tZWRGb290ZXJUZXh0Lmxlbmd0aCA+IDIwNDgpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEZvb3RlciB0ZXh0IG9mIGVtYmVkICR7aW5kZXh9IGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gMjA0OCBjaGFyYWN0ZXJzLmApXG4gICAgICAgIH1cblxuICAgICAgICB0b3RhbENoYXJhY3RlcnMgKz0gdHJpbW1lZEZvb3RlclRleHQubGVuZ3RoXG4gICAgICB9XG5cbiAgICAgIGlmIChhdXRob3IpIHtcbiAgICAgICAgY29uc3QgdHJpbW1lZEF1dGhvck5hbWUgPSBhdXRob3IubmFtZS50cmltKClcblxuICAgICAgICBpZiAodHJpbW1lZEF1dGhvck5hbWUubGVuZ3RoID4gMjU2KSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBBdXRob3IgbmFtZSBvZiBlbWJlZCAke2luZGV4fSBjYW4gbm90IGJlIGxvbmdlciB0aGFuIDI1NiBjaGFyYWN0ZXJzLmApXG4gICAgICAgIH1cblxuICAgICAgICB0b3RhbENoYXJhY3RlcnMgKz0gdHJpbW1lZEF1dGhvck5hbWUubGVuZ3RoXG4gICAgICB9XG4gICAgfSlcblxuICAgIGlmICh0b3RhbENoYXJhY3RlcnMgPiA2MDAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RvdGFsIGNoYXJhY3RlciBsZW5ndGggb2YgYWxsIGVtYmVkcyBjYW4gbm90IGV4Y2VlZCA2MDAwIGNoYXJhY3RlcnMuJylcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGN1cnJlbnQgZW1iZWQuXG4gICAqXG4gICAqIEByZWFkb25seVxuICAgKiBAdHlwZSB7RGlzY29yZEVtYmVkfVxuICAgKi9cbiAgZ2V0ICNjdXJyZW50RW1iZWQoKTogRGlzY29yZEVtYmVkIHtcbiAgICBpZiAodGhpcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRoaXMubmV3RW1iZWQoKVxuICAgICAgdGhpcy5zZXRDdXJyZW50RW1iZWQoKVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzW3RoaXMuI2N1cnJlbnRFbWJlZEluZGV4XVxuICB9XG59XG4iXSwibmFtZXMiOlsiRW1iZWRzQnVpbGRlciIsIkFycmF5IiwiYWRkRmllbGQiLCJuYW1lIiwidmFsdWUiLCJpbmxpbmUiLCJmaWVsZHMiLCJ1bmRlZmluZWQiLCJwdXNoIiwiYWRkRmllbGRzIiwibmV3RW1iZWQiLCJsZW5ndGgiLCJFcnJvciIsInNldEN1cnJlbnRFbWJlZCIsInNldEF1dGhvciIsIm9wdGlvbnMiLCJhdXRob3IiLCJzZXRDb2xvciIsImNvbG9yIiwiY29udmVydGVkVmFsdWUiLCJwYXJzZUludCIsInJlcGxhY2UiLCJOdW1iZXIiLCJpc05hTiIsImluZGV4Iiwic2V0RGVzY3JpcHRpb24iLCJkZXNjcmlwdGlvbiIsInNldEZpZWxkcyIsInNldEZvb3RlciIsInRleHQiLCJmb290ZXIiLCJzZXRJbWFnZSIsInVybCIsImltYWdlIiwic2V0UHJvdmlkZXIiLCJwcm92aWRlciIsInNldFJhbmRvbUNvbG9yIiwiTWF0aCIsImZsb29yIiwicmFuZG9tIiwic2V0VGl0bGUiLCJ0aXRsZSIsInNldFVybCIsInNldFRpbWVzdGFtcCIsInRpbWVzdGFtcCIsIkRhdGUiLCJub3ciLCJ0b0lTT1N0cmluZyIsInNldFRodW1ibmFpbCIsInRodW1ibmFpbCIsInNldFZpZGVvIiwidmlkZW8iLCJ2YWxpZGF0ZSIsInRvdGFsQ2hhcmFjdGVycyIsImZvckVhY2giLCJ0cmltbWVkVGl0bGUiLCJ0cmltIiwidHJpbW1lZERlc2NyaXB0aW9uIiwiZmllbGRJbmRleCIsInRyaW1tZWROYW1lIiwidHJpbW1lZFZhbHVlIiwidHJpbW1lZEZvb3RlclRleHQiLCJ0cmltbWVkQXV0aG9yTmFtZSJdLCJtYXBwaW5ncyI6IkFBVUE7Ozs7Ozs7OztDQVNDLEdBQ0QsT0FBTyxNQUFNQSxzQkFBc0JDO0lBQ2pDLENBQUEsaUJBQWtCLENBQVk7SUFFOUI7Ozs7Ozs7R0FPQyxHQUNEQyxTQUFTQyxJQUFZLEVBQUVDLEtBQWEsRUFBRUMsTUFBZ0IsRUFBUTtRQUM1RCxJQUFJLElBQUksQ0FBQyxDQUFBLFlBQWEsQ0FBQ0MsTUFBTSxLQUFLQyxXQUFXO1lBQzNDLElBQUksQ0FBQyxDQUFBLFlBQWEsQ0FBQ0QsTUFBTSxHQUFHLEVBQUU7UUFDaEM7UUFFQSxJQUFJLENBQUMsQ0FBQSxZQUFhLENBQUNBLE1BQU0sQ0FBQ0UsSUFBSSxDQUFDO1lBQzdCTDtZQUNBQztZQUNBQztRQUNGO1FBRUEsT0FBTyxJQUFJO0lBQ2I7SUFFQTs7Ozs7R0FLQyxHQUNESSxVQUFVSCxNQUEyQixFQUFRO1FBQzNDLElBQUksSUFBSSxDQUFDLENBQUEsWUFBYSxDQUFDQSxNQUFNLEtBQUtDLFdBQVc7WUFDM0MsSUFBSSxDQUFDLENBQUEsWUFBYSxDQUFDRCxNQUFNLEdBQUcsRUFBRTtRQUNoQztRQUVBLElBQUksQ0FBQyxDQUFBLFlBQWEsQ0FBQ0EsTUFBTSxDQUFDRSxJQUFJLElBQUlGO1FBRWxDLE9BQU8sSUFBSTtJQUNiO0lBRUE7Ozs7R0FJQyxHQUNESSxXQUFpQjtRQUNmLElBQUksSUFBSSxDQUFDQyxNQUFNLElBQUksSUFBSTtZQUNyQixNQUFNLElBQUlDLE1BQU07UUFDbEI7UUFFQSxJQUFJLENBQUNKLElBQUksQ0FBQyxDQUFDO1FBQ1gsSUFBSSxDQUFDSyxlQUFlO1FBRXBCLE9BQU8sSUFBSTtJQUNiO0lBRUE7Ozs7OztHQU1DLEdBQ0RDLFVBQVVYLElBQVksRUFBRVksT0FBMEMsRUFBUTtRQUN4RSxJQUFJLENBQUMsQ0FBQSxZQUFhLENBQUNDLE1BQU0sR0FBRztZQUMxQixHQUFHLElBQUksQ0FBQyxDQUFBLFlBQWEsQ0FBQ0EsTUFBTTtZQUM1QixHQUFHRCxPQUFPO1lBQ1ZaO1FBQ0Y7UUFFQSxPQUFPLElBQUk7SUFDYjtJQUVBOzs7OztHQUtDLEdBQ0RjLFNBQVNDLEtBQXNCLEVBQVE7UUFDckMsSUFBSSxPQUFPQSxVQUFVLFVBQVU7WUFDN0IsTUFBTUMsaUJBQWlCQyxTQUFTRixNQUFNRyxPQUFPLENBQUMsS0FBSyxLQUFLO1lBQ3hESCxRQUFRSSxPQUFPQyxLQUFLLENBQUNKLGtCQUFrQixJQUFJQTtRQUM3QztRQUVBLElBQUksQ0FBQyxDQUFBLFlBQWEsQ0FBQ0QsS0FBSyxHQUFHQTtRQUUzQixPQUFPLElBQUk7SUFDYjtJQUVBOzs7Ozs7O0dBT0MsR0FDREwsZ0JBQWdCVyxLQUFjLEVBQVE7UUFDcEMsSUFBSUEsVUFBVWpCLFdBQVc7WUFDdkIsSUFBSSxDQUFDLENBQUEsaUJBQWtCLEdBQUcsSUFBSSxDQUFDSSxNQUFNLEdBQUc7WUFFeEMsT0FBTyxJQUFJO1FBQ2I7UUFFQSxJQUFJYSxTQUFTLElBQUksQ0FBQ2IsTUFBTSxJQUFJYSxRQUFRLEdBQUc7WUFDckMsTUFBTSxJQUFJWixNQUFNO1FBQ2xCO1FBRUEsSUFBSSxDQUFDLENBQUEsaUJBQWtCLEdBQUdZO1FBRTFCLE9BQU8sSUFBSTtJQUNiO0lBRUE7Ozs7O0dBS0MsR0FDREMsZUFBZUMsV0FBbUIsRUFBUTtRQUN4QyxJQUFJLENBQUMsQ0FBQSxZQUFhLENBQUNBLFdBQVcsR0FBR0E7UUFFakMsT0FBTyxJQUFJO0lBQ2I7SUFFQTs7Ozs7R0FLQyxHQUNEQyxVQUFVckIsTUFBMkIsRUFBUTtRQUMzQyxJQUFJLENBQUMsQ0FBQSxZQUFhLENBQUNBLE1BQU0sR0FBR0E7UUFFNUIsT0FBTyxJQUFJO0lBQ2I7SUFFQTs7Ozs7O0dBTUMsR0FDRHNCLFVBQVVDLElBQVksRUFBRWQsT0FBMEMsRUFBUTtRQUN4RSxJQUFJLENBQUMsQ0FBQSxZQUFhLENBQUNlLE1BQU0sR0FBRztZQUMxQixHQUFHLElBQUksQ0FBQyxDQUFBLFlBQWEsQ0FBQ0EsTUFBTTtZQUM1QixHQUFHZixPQUFPO1lBQ1ZjO1FBQ0Y7UUFFQSxPQUFPLElBQUk7SUFDYjtJQUVBOzs7Ozs7R0FNQyxHQUNERSxTQUFTQyxHQUFXLEVBQUVqQixPQUF3QyxFQUFRO1FBQ3BFLElBQUksQ0FBQyxDQUFBLFlBQWEsQ0FBQ2tCLEtBQUssR0FBRztZQUN6QixHQUFHLElBQUksQ0FBQyxDQUFBLFlBQWEsQ0FBQ0EsS0FBSztZQUMzQixHQUFHbEIsT0FBTztZQUNWaUI7UUFDRjtRQUVBLE9BQU8sSUFBSTtJQUNiO0lBRUE7Ozs7OztHQU1DLEdBQ0RFLFlBQVkvQixJQUFZLEVBQUU2QixHQUFZLEVBQVE7UUFDNUMsSUFBSSxDQUFDLENBQUEsWUFBYSxDQUFDRyxRQUFRLEdBQUc7WUFDNUJoQztZQUNBNkI7UUFDRjtRQUVBLE9BQU8sSUFBSTtJQUNiO0lBRUE7Ozs7R0FJQyxHQUNESSxpQkFBdUI7UUFDckIsT0FBTyxJQUFJLENBQUNuQixRQUFRLENBQUNvQixLQUFLQyxLQUFLLENBQUNELEtBQUtFLE1BQU0sS0FBTSxDQUFBLFdBQVcsQ0FBQTtJQUM5RDtJQUVBOzs7Ozs7R0FNQyxHQUNEQyxTQUFTQyxLQUFhLEVBQUVULEdBQVksRUFBUTtRQUMxQyxJQUFJLENBQUMsQ0FBQSxZQUFhLENBQUNTLEtBQUssR0FBR0E7UUFFM0IsSUFBSVQsS0FBSztZQUNQLElBQUksQ0FBQ1UsTUFBTSxDQUFDVjtRQUNkO1FBRUEsT0FBTyxJQUFJO0lBQ2I7SUFFQTs7Ozs7R0FLQyxHQUNEVyxhQUFhQyxTQUFrQyxFQUFRO1FBQ3JELElBQUksQ0FBQyxDQUFBLFlBQWEsQ0FBQ0EsU0FBUyxHQUFHLElBQUlDLEtBQUtELGFBQWFDLEtBQUtDLEdBQUcsSUFBSUMsV0FBVztRQUU1RSxPQUFPLElBQUk7SUFDYjtJQUVBOzs7Ozs7R0FNQyxHQUNEQyxhQUFhaEIsR0FBVyxFQUFFakIsT0FBNEMsRUFBUTtRQUM1RSxJQUFJLENBQUMsQ0FBQSxZQUFhLENBQUNrQyxTQUFTLEdBQUc7WUFDN0IsR0FBRyxJQUFJLENBQUMsQ0FBQSxZQUFhLENBQUNBLFNBQVM7WUFDL0IsR0FBR2xDLE9BQU87WUFDVmlCO1FBQ0Y7UUFFQSxPQUFPLElBQUk7SUFDYjtJQUVBOzs7OztHQUtDLEdBQ0RVLE9BQU9WLEdBQVcsRUFBUTtRQUN4QixJQUFJLENBQUMsQ0FBQSxZQUFhLENBQUNBLEdBQUcsR0FBR0E7UUFFekIsT0FBTyxJQUFJO0lBQ2I7SUFFQTs7Ozs7O0dBTUMsR0FDRGtCLFNBQVNsQixHQUFXLEVBQUVqQixPQUF3QyxFQUFRO1FBQ3BFLElBQUksQ0FBQyxDQUFBLFlBQWEsQ0FBQ29DLEtBQUssR0FBRztZQUN6QixHQUFHLElBQUksQ0FBQyxDQUFBLFlBQWEsQ0FBQ0EsS0FBSztZQUMzQixHQUFHcEMsT0FBTztZQUNWaUI7UUFDRjtRQUVBLE9BQU8sSUFBSTtJQUNiO0lBRUE7Ozs7R0FJQyxHQUNEb0IsV0FBaUI7UUFDZixJQUFJQyxrQkFBa0I7UUFFdEIsSUFBSSxJQUFJLENBQUMxQyxNQUFNLEdBQUcsSUFBSTtZQUNwQixNQUFNLElBQUlDLE1BQU07UUFDbEI7UUFFQSxJQUFJLENBQUMwQyxPQUFPLENBQUMsQ0FBQyxFQUFFdEMsTUFBTSxFQUFFVSxXQUFXLEVBQUVwQixNQUFNLEVBQUV3QixNQUFNLEVBQUVXLEtBQUssRUFBRSxFQUFFakI7WUFDNUQsSUFBSWlCLE9BQU87Z0JBQ1QsTUFBTWMsZUFBZWQsTUFBTWUsSUFBSTtnQkFFL0IsSUFBSUQsYUFBYTVDLE1BQU0sR0FBRyxLQUFLO29CQUM3QixNQUFNLElBQUlDLE1BQU0sQ0FBQyxlQUFlLEVBQUVZLE1BQU0sdUNBQXVDLENBQUM7Z0JBQ2xGO2dCQUVBNkIsbUJBQW1CRSxhQUFhNUMsTUFBTTtZQUN4QztZQUVBLElBQUllLGFBQWE7Z0JBQ2YsTUFBTStCLHFCQUFxQi9CLFlBQVk4QixJQUFJO2dCQUUzQyxJQUFJQyxtQkFBbUI5QyxNQUFNLEdBQUcsTUFBTTtvQkFDcEMsTUFBTSxJQUFJQyxNQUFNLENBQUMscUJBQXFCLEVBQUVZLE1BQU0sd0NBQXdDLENBQUM7Z0JBQ3pGO2dCQUVBNkIsbUJBQW1CSSxtQkFBbUI5QyxNQUFNO1lBQzlDO1lBRUEsSUFBSUwsUUFBUTtnQkFDVixJQUFJQSxPQUFPSyxNQUFNLEdBQUcsSUFBSTtvQkFDdEIsTUFBTSxJQUFJQyxNQUFNLENBQUMsTUFBTSxFQUFFWSxNQUFNLGtDQUFrQyxDQUFDO2dCQUNwRTtnQkFFQWxCLE9BQU9nRCxPQUFPLENBQUMsQ0FBQyxFQUFFbkQsSUFBSSxFQUFFQyxLQUFLLEVBQUUsRUFBRXNEO29CQUMvQixNQUFNQyxjQUFjeEQsS0FBS3FELElBQUk7b0JBQzdCLE1BQU1JLGVBQWV4RCxNQUFNb0QsSUFBSTtvQkFFL0IsSUFBSUcsWUFBWWhELE1BQU0sR0FBRyxLQUFLO3dCQUM1QixNQUFNLElBQUlDLE1BQU0sQ0FBQyxjQUFjLEVBQUU4QyxXQUFXLFVBQVUsRUFBRWxDLE1BQU0sdUNBQXVDLENBQUM7b0JBQ3hHO29CQUVBLElBQUlvQyxhQUFhakQsTUFBTSxHQUFHLE1BQU07d0JBQzlCLE1BQU0sSUFBSUMsTUFBTSxDQUFDLGVBQWUsRUFBRThDLFdBQVcsVUFBVSxFQUFFbEMsTUFBTSx3Q0FBd0MsQ0FBQztvQkFDMUc7b0JBRUE2QixtQkFBbUJNLFlBQVloRCxNQUFNO29CQUNyQzBDLG1CQUFtQk8sYUFBYWpELE1BQU07Z0JBQ3hDO1lBQ0Y7WUFFQSxJQUFJbUIsUUFBUTtnQkFDVixNQUFNK0Isb0JBQW9CL0IsT0FBT0QsSUFBSSxDQUFDMkIsSUFBSTtnQkFFMUMsSUFBSUssa0JBQWtCbEQsTUFBTSxHQUFHLE1BQU07b0JBQ25DLE1BQU0sSUFBSUMsTUFBTSxDQUFDLHFCQUFxQixFQUFFWSxNQUFNLHdDQUF3QyxDQUFDO2dCQUN6RjtnQkFFQTZCLG1CQUFtQlEsa0JBQWtCbEQsTUFBTTtZQUM3QztZQUVBLElBQUlLLFFBQVE7Z0JBQ1YsTUFBTThDLG9CQUFvQjlDLE9BQU9iLElBQUksQ0FBQ3FELElBQUk7Z0JBRTFDLElBQUlNLGtCQUFrQm5ELE1BQU0sR0FBRyxLQUFLO29CQUNsQyxNQUFNLElBQUlDLE1BQU0sQ0FBQyxxQkFBcUIsRUFBRVksTUFBTSx1Q0FBdUMsQ0FBQztnQkFDeEY7Z0JBRUE2QixtQkFBbUJTLGtCQUFrQm5ELE1BQU07WUFDN0M7UUFDRjtRQUVBLElBQUkwQyxrQkFBa0IsTUFBTTtZQUMxQixNQUFNLElBQUl6QyxNQUFNO1FBQ2xCO1FBRUEsT0FBTyxJQUFJO0lBQ2I7SUFFQTs7Ozs7R0FLQyxHQUNELElBQUksQ0FBQSxZQUFhO1FBQ2YsSUFBSSxJQUFJLENBQUNELE1BQU0sS0FBSyxHQUFHO1lBQ3JCLElBQUksQ0FBQ0QsUUFBUTtZQUNiLElBQUksQ0FBQ0csZUFBZTtRQUN0QjtRQUVBLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFBLGlCQUFrQixDQUFDO0lBQ3RDOztRQWpYSyxxQkFDTCxDQUFBLGlCQUFrQixHQUFXOztBQWlYL0IifQ==
@@ -0,0 +1,3 @@
1
+ export const DISCORDENO_VERSION = '21.0.0';
2
+
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb25zdGFudHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IERJU0NPUkRFTk9fVkVSU0lPTiA9ICcyMS4wLjAnXG4iXSwibmFtZXMiOlsiRElTQ09SREVOT19WRVJTSU9OIl0sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLE1BQU1BLHFCQUFxQixTQUFRIn0=
package/dist/esm/index.js CHANGED
@@ -4,6 +4,7 @@ export * from './bucket.js';
4
4
  export * from './builders.js';
5
5
  export * from './casing.js';
6
6
  export * from './colors.js';
7
+ export * from './constants.js';
7
8
  export * from './hash.js';
8
9
  export * from './images.js';
9
10
  export * from './logger.js';
@@ -16,4 +17,4 @@ export * from './urlToBase64.js';
16
17
  export * from './urls.js';
17
18
  export * from './utils.js';
18
19
 
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL0NvbGxlY3Rpb24uanMnXG5leHBvcnQgKiBmcm9tICcuL2Jhc2U2NC5qcydcbmV4cG9ydCAqIGZyb20gJy4vYnVja2V0LmpzJ1xuZXhwb3J0ICogZnJvbSAnLi9idWlsZGVycy5qcydcbmV4cG9ydCAqIGZyb20gJy4vY2FzaW5nLmpzJ1xuZXhwb3J0ICogZnJvbSAnLi9jb2xvcnMuanMnXG5leHBvcnQgKiBmcm9tICcuL2hhc2guanMnXG5leHBvcnQgKiBmcm9tICcuL2ltYWdlcy5qcydcbmV4cG9ydCAqIGZyb20gJy4vbG9nZ2VyLmpzJ1xuZXhwb3J0ICogZnJvbSAnLi9vYXV0aDIuanMnXG5leHBvcnQgKiBmcm9tICcuL3Blcm1pc3Npb25zLmpzJ1xuZXhwb3J0ICogZnJvbSAnLi9yZWFjdGlvbnMuanMnXG5leHBvcnQgKiBmcm9tICcuL3Rva2VuLmpzJ1xuZXhwb3J0ICogZnJvbSAnLi90eXBlZ3VhcmRzLmpzJ1xuZXhwb3J0ICogZnJvbSAnLi91cmxUb0Jhc2U2NC5qcydcbmV4cG9ydCAqIGZyb20gJy4vdXJscy5qcydcbmV4cG9ydCAqIGZyb20gJy4vdXRpbHMuanMnXG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxrQkFBaUI7QUFDL0IsY0FBYyxjQUFhO0FBQzNCLGNBQWMsY0FBYTtBQUMzQixjQUFjLGdCQUFlO0FBQzdCLGNBQWMsY0FBYTtBQUMzQixjQUFjLGNBQWE7QUFDM0IsY0FBYyxZQUFXO0FBQ3pCLGNBQWMsY0FBYTtBQUMzQixjQUFjLGNBQWE7QUFDM0IsY0FBYyxjQUFhO0FBQzNCLGNBQWMsbUJBQWtCO0FBQ2hDLGNBQWMsaUJBQWdCO0FBQzlCLGNBQWMsYUFBWTtBQUMxQixjQUFjLGtCQUFpQjtBQUMvQixjQUFjLG1CQUFrQjtBQUNoQyxjQUFjLFlBQVc7QUFDekIsY0FBYyxhQUFZIn0=
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL0NvbGxlY3Rpb24uanMnXG5leHBvcnQgKiBmcm9tICcuL2Jhc2U2NC5qcydcbmV4cG9ydCAqIGZyb20gJy4vYnVja2V0LmpzJ1xuZXhwb3J0ICogZnJvbSAnLi9idWlsZGVycy5qcydcbmV4cG9ydCAqIGZyb20gJy4vY2FzaW5nLmpzJ1xuZXhwb3J0ICogZnJvbSAnLi9jb2xvcnMuanMnXG5leHBvcnQgKiBmcm9tICcuL2NvbnN0YW50cy5qcydcbmV4cG9ydCAqIGZyb20gJy4vaGFzaC5qcydcbmV4cG9ydCAqIGZyb20gJy4vaW1hZ2VzLmpzJ1xuZXhwb3J0ICogZnJvbSAnLi9sb2dnZXIuanMnXG5leHBvcnQgKiBmcm9tICcuL29hdXRoMi5qcydcbmV4cG9ydCAqIGZyb20gJy4vcGVybWlzc2lvbnMuanMnXG5leHBvcnQgKiBmcm9tICcuL3JlYWN0aW9ucy5qcydcbmV4cG9ydCAqIGZyb20gJy4vdG9rZW4uanMnXG5leHBvcnQgKiBmcm9tICcuL3R5cGVndWFyZHMuanMnXG5leHBvcnQgKiBmcm9tICcuL3VybFRvQmFzZTY0LmpzJ1xuZXhwb3J0ICogZnJvbSAnLi91cmxzLmpzJ1xuZXhwb3J0ICogZnJvbSAnLi91dGlscy5qcydcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGtCQUFpQjtBQUMvQixjQUFjLGNBQWE7QUFDM0IsY0FBYyxjQUFhO0FBQzNCLGNBQWMsZ0JBQWU7QUFDN0IsY0FBYyxjQUFhO0FBQzNCLGNBQWMsY0FBYTtBQUMzQixjQUFjLGlCQUFnQjtBQUM5QixjQUFjLFlBQVc7QUFDekIsY0FBYyxjQUFhO0FBQzNCLGNBQWMsY0FBYTtBQUMzQixjQUFjLGNBQWE7QUFDM0IsY0FBYyxtQkFBa0I7QUFDaEMsY0FBYyxpQkFBZ0I7QUFDOUIsY0FBYyxhQUFZO0FBQzFCLGNBQWMsa0JBQWlCO0FBQy9CLGNBQWMsbUJBQWtCO0FBQ2hDLGNBQWMsWUFBVztBQUN6QixjQUFjLGFBQVkifQ==
@@ -3,7 +3,7 @@ import type { DiscordEmbed, DiscordEmbedAuthor, DiscordEmbedField, DiscordEmbedF
3
3
  * A builder to help create Discord embeds.
4
4
  *
5
5
  * @example
6
- * const embeds = new EmbedBuilder()
6
+ * const embeds = new EmbedsBuilder()
7
7
  * .setTitle('My Embed')
8
8
  * .setDescription('This is my new embed')
9
9
  * .newEmbed()
@@ -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 fields array.
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"}
@@ -0,0 +1,2 @@
1
+ export declare const DISCORDENO_VERSION = "21.0.0";
2
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB,WAAW,CAAA"}
@@ -4,6 +4,7 @@ export * from './bucket.js';
4
4
  export * from './builders.js';
5
5
  export * from './casing.js';
6
6
  export * from './colors.js';
7
+ export * from './constants.js';
7
8
  export * from './hash.js';
8
9
  export * from './images.js';
9
10
  export * from './logger.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,kBAAkB,CAAA;AAChC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,YAAY,CAAA;AAC1B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,kBAAkB,CAAA;AAChC,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,kBAAkB,CAAA;AAChC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,YAAY,CAAA;AAC1B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,kBAAkB,CAAA;AAChC,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@discordeno/utils",
3
- "version": "20.0.0",
3
+ "version": "21.0.0-next.27808be",
4
4
  "main": "./dist/esm/index.js",
5
5
  "exports": {
6
6
  "import": "./dist/esm/index.js",
@@ -22,29 +22,29 @@
22
22
  "lint": "biome lint --write",
23
23
  "test:unit-coverage": "c8 mocha --no-warnings 'tests/**/*.spec.ts'",
24
24
  "test:unit": "c8 --r lcov mocha --no-warnings 'tests/**/*.spec.ts' && node ../../scripts/coveragePathFixing.js utils",
25
- "test:deno-unit": "swc tests --strip-leading-paths --delete-dir-on-start -C jsc.minify.mangle=false --out-dir denoTestsDist && node ../../scripts/fixDenoTestExtension.js && deno test -A --import-map ../../denoImportMap.json denoTestsDist",
26
- "test:bun-unit": "node ../../scripts/fixBunTestExtension.js && bun test bunTestsDist",
27
25
  "test:unit:watch": "mocha --no-warnings --watch --parallel 'tests/**/*.spec.ts'",
26
+ "test:deno-unit": "deno -A ../../node_modules/mocha/bin/mocha.js --config ../../.mocharc.base.cjs 'tests/**/*.spec.ts'",
27
+ "test:bun-unit": "bun ../../node_modules/mocha/bin/mocha.js --config ../../.mocharc.base.cjs 'tests/**/*.spec.ts'",
28
28
  "test:type": "tsc --noEmit",
29
29
  "test:test-type": "tsc --project tests/tsconfig.json"
30
30
  },
31
31
  "dependencies": {
32
- "@discordeno/types": "20.0.0"
32
+ "@discordeno/types": "21.0.0-next.27808be"
33
33
  },
34
34
  "devDependencies": {
35
35
  "@biomejs/biome": "^1.9.4",
36
- "@swc/cli": "^0.5.1",
37
- "@swc/core": "^1.9.2",
36
+ "@swc/cli": "^0.5.2",
37
+ "@swc/core": "^1.10.4",
38
38
  "@types/chai": "^5.0.1",
39
39
  "@types/mocha": "^10.0.10",
40
- "@types/node": "^22.9.1",
40
+ "@types/node": "^22.10.3",
41
41
  "@types/sinon": "^17.0.3",
42
- "c8": "^10.1.2",
42
+ "c8": "^10.1.3",
43
43
  "chai": "^5.1.2",
44
- "mocha": "^10.8.2",
44
+ "mocha": "patch:mocha@npm%3A11.0.2#~/.yarn/patches/mocha-npm-11.0.2-b5d6b95284.patch",
45
45
  "sinon": "^19.0.2",
46
46
  "ts-node": "^10.9.2",
47
47
  "tsconfig": "*",
48
- "typescript": "^5.6.3"
48
+ "typescript": "^5.7.2"
49
49
  }
50
- }
50
+ }