@ethlete/query 5.21.0 → 5.21.1

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.
@@ -12,7 +12,7 @@ export const createQueryStack = (computation, options) => {
12
12
  const lastQuery = signal(null);
13
13
  effect(() => {
14
14
  const newQueryOrQueries = runInInjectionContext(injector, () => computation());
15
- const newQueries = Array.isArray(newQueryOrQueries) ? newQueryOrQueries : [newQueryOrQueries];
15
+ const newQueries = Array.isArray(newQueryOrQueries) ? newQueryOrQueries : [newQueryOrQueries].filter((q) => !!q);
16
16
  untracked(() => {
17
17
  const oldQueries = queries();
18
18
  if (append) {
@@ -39,9 +39,9 @@ export const createQueryStack = (computation, options) => {
39
39
  const responses = queries().map((q) => q.response());
40
40
  return transform?.(responses) ?? responses;
41
41
  });
42
- const execute = () => {
42
+ const execute = (options) => {
43
43
  for (const query of queries()) {
44
- query.execute();
44
+ query.execute({ options: { skipCache: options?.skipCache } });
45
45
  }
46
46
  };
47
47
  const clear = () => {
@@ -62,4 +62,4 @@ export const createQueryStack = (computation, options) => {
62
62
  };
63
63
  return stack;
64
64
  };
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktc3RhY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3F1ZXJ5L3NyYy9saWIvZXhwZXJpbWVudGFsL3F1ZXJ5LXN0YWNrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUscUJBQXFCLEVBQVUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQXdEckgsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsQ0FBK0IsU0FBWSxFQUFFLEVBQUUsQ0FDbkYsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUF3QixDQUFDO0FBRXhFLE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFHLENBQTRDLFNBQVksRUFBRSxFQUFFLENBQ3BHLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQTRDLENBQUM7QUFFbEcsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsQ0FDOUIsV0FBMEIsRUFDMUIsT0FBdUMsRUFDdkMsRUFBRTtJQUNGLE1BQU0sRUFDSixNQUFNLEdBQUcsS0FBSyxFQUNkLFFBQVEsR0FBRyxDQUFDLFVBQWUsRUFBRSxVQUFlLEVBQUUsRUFBRTtRQUM5QyxNQUFNLE9BQU8sR0FBRyxDQUFDLEdBQUcsVUFBVSxFQUFFLEdBQUcsVUFBVSxDQUFDLENBQUM7UUFDL0MsTUFBTSxTQUFTLEdBQUcsVUFBVSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLElBQUksVUFBVSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDO1FBRWpHLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLENBQUM7SUFDaEMsQ0FBQyxFQUNELFNBQVMsR0FDVixHQUFHLE9BQU8sSUFBSSxFQUFFLENBQUM7SUFDbEIsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBRWxDLE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBTSxFQUFFLENBQUMsQ0FBQztJQUNoQyxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQVcsSUFBSSxDQUFDLENBQUM7SUFFekMsTUFBTSxDQUFDLEdBQUcsRUFBRTtRQUNWLE1BQU0saUJBQWlCLEdBQUcscUJBQXFCLENBQUMsUUFBUSxFQUFFLEdBQUcsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFDL0UsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBRTlGLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDYixNQUFNLFVBQVUsR0FBRyxPQUFPLEVBQUUsQ0FBQztZQUU3QixJQUFJLE1BQU0sRUFBRSxDQUFDO2dCQUNYLE1BQU0sRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxHQUFHLFFBQVEsQ0FBQyxVQUFVLEVBQUUsVUFBVSxDQUFDLENBQUM7Z0JBQ3BHLE9BQU8sQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUM7Z0JBQzdCLFNBQVMsQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsQ0FBQztZQUNuQyxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sS0FBSyxNQUFNLFFBQVEsSUFBSSxVQUFVLEVBQUUsQ0FBQztvQkFDbEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsS0FBSyxRQUFRLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDO3dCQUN0RCxRQUFRLENBQUMsT0FBTyxFQUFFLENBQUM7b0JBQ3JCLENBQUM7Z0JBQ0gsQ0FBQztnQkFDRCxPQUFPLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO2dCQUN4QixTQUFTLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDO1lBQzNELENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0lBRUgsTUFBTSxPQUFPLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQztJQUVuRSxNQUFNLEtBQUssR0FBRyxRQUFRLENBQ3BCLEdBQUcsRUFBRSxDQUNILE9BQU8sRUFBRTtTQUNOLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO1NBQ3JCLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksQ0FBQyxJQUFJLElBQUksQ0FDckMsQ0FBQztJQUVGLE1BQU0sUUFBUSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7UUFDN0IsTUFBTSxTQUFTLEdBQUcsT0FBTyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUNyRCxPQUFPLFNBQVMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxJQUFJLFNBQVMsQ0FBQztJQUM3QyxDQUFDLENBQWMsQ0FBQztJQUVoQixNQUFNLE9BQU8sR0FBRyxHQUFHLEVBQUU7UUFDbkIsS0FBSyxNQUFNLEtBQUssSUFBSSxPQUFPLEVBQUUsRUFBRSxDQUFDO1lBQzlCLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNsQixDQUFDO0lBQ0gsQ0FBQyxDQUFDO0lBRUYsTUFBTSxLQUFLLEdBQUcsR0FBRyxFQUFFO1FBQ2pCLEtBQUssTUFBTSxLQUFLLElBQUksT0FBTyxFQUFFLEVBQUUsQ0FBQztZQUM5QixLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDbEIsQ0FBQztRQUVELE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDaEIsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN0QixDQUFDLENBQUM7SUFFRixNQUFNLEtBQUssR0FBcUI7UUFDOUIsT0FBTyxFQUFFLE9BQU8sQ0FBQyxVQUFVLEVBQUU7UUFDN0IsU0FBUyxFQUFFLFNBQVMsQ0FBQyxVQUFVLEVBQUU7UUFDakMsT0FBTztRQUNQLEtBQUs7UUFDTCxRQUFRO1FBQ1IsT0FBTztRQUNQLEtBQUs7S0FDTixDQUFDO0lBRUYsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwRXJyb3JSZXNwb25zZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IGNvbXB1dGVkLCBlZmZlY3QsIGluamVjdCwgSW5qZWN0b3IsIHJ1bkluSW5qZWN0aW9uQ29udGV4dCwgU2lnbmFsLCBzaWduYWwsIHVudHJhY2tlZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQW55UXVlcnkgfSBmcm9tICcuL3F1ZXJ5JztcblxuZXhwb3J0IHR5cGUgUXVlcnlTdGFjazxUIGV4dGVuZHMgQW55UXVlcnksIEogPSBSZXR1cm5UeXBlPFRbJ3Jlc3BvbnNlJ10+W10+ID0ge1xuICAvKiogQ29udGFpbnMgYWxsIHF1ZXJpZXMgaW4gdGhlIHN0YWNrLiAqL1xuICBxdWVyaWVzOiBTaWduYWw8VFtdPjtcblxuICAvKiogQ29udGFpbnMgdGhlIGxhc3QgcXVlcnkgaW4gdGhlIHN0YWNrLiBVc2VmdWwgZm9yIGdldHRpbmcgY3VycmVudCBwYWdpbmF0aW9uIHZhbHVlcy4gKi9cbiAgbGFzdFF1ZXJ5OiBTaWduYWw8VCB8IG51bGw+O1xuXG4gIC8qKiBUcnVlIGlmIGFueSBxdWVyeSBpbiB0aGUgc3RhY2sgaXMgbG9hZGluZy4gKi9cbiAgbG9hZGluZzogU2lnbmFsPGJvb2xlYW4+O1xuXG4gIC8qKiBDb250YWlucyB0aGUgZmlyc3QgZXJyb3IgdGhhdCBvY2N1cnJlZCBpbiB0aGUgc3RhY2suICovXG4gIGVycm9yOiBTaWduYWw8SHR0cEVycm9yUmVzcG9uc2UgfCBudWxsPjtcblxuICAvKiogQ29udGFpbnMgdGhlIHJlc3BvbnNlcyBvZiBhbGwgcXVlcmllcyBpbiB0aGUgc3RhY2suIFdpbGwgYmUgYG51bGxgIGZvciBxdWVyaWVzIHRoYXQgYXJlIGxvYWRpbmcgb3IgZXJyb3JlZC4gKi9cbiAgcmVzcG9uc2U6IFNpZ25hbDxKPjtcblxuICAvKiogRXhlY3V0ZXMgYWxsIHF1ZXJpZXMgaW4gdGhlIHN0YWNrLiAqL1xuICBleGVjdXRlOiAoKSA9PiB2b2lkO1xuXG4gIC8qKiBEZXN0cm95cyBhbGwgcXVlcmllcyBpbiB0aGUgc3RhY2sgYW5kIGVtcHRpZXMgaXQuIFRoaXMgc2hvdWxkIG9ubHkgYmUgdXNlZCBpZiBgYXBwZW5kYCBpcyB0cnVlLiAqL1xuICBjbGVhcjogKCkgPT4gdm9pZDtcbn07XG5cbmV4cG9ydCB0eXBlIEFueVF1ZXJ5U3RhY2sgPSBRdWVyeVN0YWNrPEFueVF1ZXJ5PjtcblxuZXhwb3J0IHR5cGUgQ3JlYXRlUXVlcnlTdGFja09wdGlvbnM8VCBleHRlbmRzIEFueVF1ZXJ5LCBKID0gUmV0dXJuVHlwZTxUWydyZXNwb25zZSddPltdPiA9IHtcbiAgLyoqXG4gICAqIElmIHRydWUsIG5ldyBxdWVyaWVzIHdpbGwgYmUgYXBwZW5kZWQgdG8gdGhlIGV4aXN0aW5nIG9uZXMuIE90aGVyd2lzZSwgZXhpc3RpbmcgcXVlcmllcyB3aWxsIGJlIGRlc3Ryb3llZC5cbiAgICogVGhpcyBzaG91bGQgYmUgdXNlZCBmb3IgdGhpbmdzIGxpa2UgaW5maW5pdGUgc2Nyb2xsaW5nIHdoZXJlIGFscmVhZHkgZmV0Y2hlZCBxdWVyaWVzIHNob3VsZCBub3QgYmUgZGVzdHJveWVkLlxuICAgKi9cbiAgYXBwZW5kPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogSWYgYXBwZW5kIGlzIHRydWUsIHRoaXMgZnVuY3Rpb24gd2lsbCBiZSBjYWxsZWQgdG8gbWVyZ2UgdGhlIG9sZCBhbmQgbmV3IHF1ZXJpZXMuXG4gICAqIFVzZWZ1bCBpZiB5b3Ugd2FudCB0byBhcHBlbmQgdGhlIG5ldyBxdWVyaWVzIGluIGEgc3BlY2lmaWMgb3JkZXIgKGUuZy4gYXQgdGhlIGJlZ2lubmluZykuXG4gICAqL1xuICBhcHBlbmRGbj86IChcbiAgICBvbGRRdWVyaWVzOiBUW10sXG4gICAgbmV3UXVlcmllczogVFtdLFxuICApID0+IHtcbiAgICAvKiogVGhlIG5ldyBxdWVyaWVzIG1lcmdlZCB3aXRoIHRoZSBvbGQgb25lcy4gKi9cbiAgICBxdWVyaWVzOiBUW107XG5cbiAgICAvKiogVGhlIGxhc3QgcXVlcnkgaW4gdGhlIG5ldyBxdWVyaWVzLiAqL1xuICAgIGxhc3RRdWVyeTogVCB8IG51bGw7XG4gIH07XG5cbiAgLyoqXG4gICAqIFRyYW5zZm9ybXMgdGhlIHJlc3BvbnNlcyBvZiBhbGwgcXVlcmllcyBpbiB0aGUgc3RhY2suIFVzZWZ1bCBmb3IgbWVyZ2luZyBvciBmaWx0ZXJpbmcgcmVzcG9uc2VzLlxuICAgKi9cbiAgdHJhbnNmb3JtPzogKHJlc3BvbnNlczogUmV0dXJuVHlwZTxUWydyZXNwb25zZSddPltdKSA9PiBKO1xufTtcblxuZXhwb3J0IGNvbnN0IHRyYW5zZm9ybUFycmF5UmVzcG9uc2UgPSA8VCBleHRlbmRzICh1bmtub3duIHwgbnVsbClbXT4ocmVzcG9uc2VzOiBUKSA9PlxuICByZXNwb25zZXMuZmlsdGVyKChyKSA9PiAhIXIpLmZsYXRNYXAoKHIpID0+IHIpIGFzIE5vbk51bGxhYmxlPFRbMF0+W107XG5cbmV4cG9ydCBjb25zdCB0cmFuc2Zvcm1QYWdpbmF0ZWRSZXNwb25zZSA9IDxUIGV4dGVuZHMgKHsgaXRlbXM6IHVua25vd25bXSB9IHwgbnVsbClbXT4ocmVzcG9uc2VzOiBUKSA9PlxuICByZXNwb25zZXMuZmlsdGVyKChyKSA9PiAhIXIpLmZsYXRNYXAoKHIpID0+IHIuaXRlbXMpIGFzIE5vbk51bGxhYmxlPE5vbk51bGxhYmxlPFRbMF0+WydpdGVtcyddPjtcblxuZXhwb3J0IGNvbnN0IGNyZWF0ZVF1ZXJ5U3RhY2sgPSA8VCBleHRlbmRzIEFueVF1ZXJ5LCBKID0gUmV0dXJuVHlwZTxUWydyZXNwb25zZSddPltdPihcbiAgY29tcHV0YXRpb246ICgpID0+IFQgfCBUW10sXG4gIG9wdGlvbnM/OiBDcmVhdGVRdWVyeVN0YWNrT3B0aW9uczxULCBKPixcbikgPT4ge1xuICBjb25zdCB7XG4gICAgYXBwZW5kID0gZmFsc2UsXG4gICAgYXBwZW5kRm4gPSAob2xkUXVlcmllczogVFtdLCBuZXdRdWVyaWVzOiBUW10pID0+IHtcbiAgICAgIGNvbnN0IHF1ZXJpZXMgPSBbLi4ub2xkUXVlcmllcywgLi4ubmV3UXVlcmllc107XG4gICAgICBjb25zdCBsYXN0UXVlcnkgPSBuZXdRdWVyaWVzW25ld1F1ZXJpZXMubGVuZ3RoIC0gMV0gPz8gb2xkUXVlcmllc1tvbGRRdWVyaWVzLmxlbmd0aCAtIDFdID8/IG51bGw7XG5cbiAgICAgIHJldHVybiB7IHF1ZXJpZXMsIGxhc3RRdWVyeSB9O1xuICAgIH0sXG4gICAgdHJhbnNmb3JtLFxuICB9ID0gb3B0aW9ucyA/PyB7fTtcbiAgY29uc3QgaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xuXG4gIGNvbnN0IHF1ZXJpZXMgPSBzaWduYWw8VFtdPihbXSk7XG4gIGNvbnN0IGxhc3RRdWVyeSA9IHNpZ25hbDxUIHwgbnVsbD4obnVsbCk7XG5cbiAgZWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBuZXdRdWVyeU9yUXVlcmllcyA9IHJ1bkluSW5qZWN0aW9uQ29udGV4dChpbmplY3RvciwgKCkgPT4gY29tcHV0YXRpb24oKSk7XG4gICAgY29uc3QgbmV3UXVlcmllcyA9IEFycmF5LmlzQXJyYXkobmV3UXVlcnlPclF1ZXJpZXMpID8gbmV3UXVlcnlPclF1ZXJpZXMgOiBbbmV3UXVlcnlPclF1ZXJpZXNdO1xuXG4gICAgdW50cmFja2VkKCgpID0+IHtcbiAgICAgIGNvbnN0IG9sZFF1ZXJpZXMgPSBxdWVyaWVzKCk7XG5cbiAgICAgIGlmIChhcHBlbmQpIHtcbiAgICAgICAgY29uc3QgeyBxdWVyaWVzOiBhcHBlbmRlZFF1ZXJpZXMsIGxhc3RRdWVyeTogbGFzdEFwcGVuZGVkUXVlcnkgfSA9IGFwcGVuZEZuKG9sZFF1ZXJpZXMsIG5ld1F1ZXJpZXMpO1xuICAgICAgICBxdWVyaWVzLnNldChhcHBlbmRlZFF1ZXJpZXMpO1xuICAgICAgICBsYXN0UXVlcnkuc2V0KGxhc3RBcHBlbmRlZFF1ZXJ5KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGZvciAoY29uc3Qgb2xkUXVlcnkgb2Ygb2xkUXVlcmllcykge1xuICAgICAgICAgIGlmICghbmV3UXVlcmllcy5zb21lKChxKSA9PiBxLmlkKCkgPT09IG9sZFF1ZXJ5LmlkKCkpKSB7XG4gICAgICAgICAgICBvbGRRdWVyeS5kZXN0cm95KCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHF1ZXJpZXMuc2V0KG5ld1F1ZXJpZXMpO1xuICAgICAgICBsYXN0UXVlcnkuc2V0KG5ld1F1ZXJpZXNbbmV3UXVlcmllcy5sZW5ndGggLSAxXSA/PyBudWxsKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfSk7XG5cbiAgY29uc3QgbG9hZGluZyA9IGNvbXB1dGVkKCgpID0+IHF1ZXJpZXMoKS5zb21lKChxKSA9PiBxLmxvYWRpbmcoKSkpO1xuXG4gIGNvbnN0IGVycm9yID0gY29tcHV0ZWQoXG4gICAgKCkgPT5cbiAgICAgIHF1ZXJpZXMoKVxuICAgICAgICAubWFwKChxKSA9PiBxLmVycm9yKCkpXG4gICAgICAgIC5maW5kKChlKSA9PiBlICE9PSBudWxsKSA/PyBudWxsLFxuICApO1xuXG4gIGNvbnN0IHJlc3BvbnNlID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IHJlc3BvbnNlcyA9IHF1ZXJpZXMoKS5tYXAoKHEpID0+IHEucmVzcG9uc2UoKSk7XG4gICAgcmV0dXJuIHRyYW5zZm9ybT8uKHJlc3BvbnNlcykgPz8gcmVzcG9uc2VzO1xuICB9KSBhcyBTaWduYWw8Sj47XG5cbiAgY29uc3QgZXhlY3V0ZSA9ICgpID0+IHtcbiAgICBmb3IgKGNvbnN0IHF1ZXJ5IG9mIHF1ZXJpZXMoKSkge1xuICAgICAgcXVlcnkuZXhlY3V0ZSgpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBjbGVhciA9ICgpID0+IHtcbiAgICBmb3IgKGNvbnN0IHF1ZXJ5IG9mIHF1ZXJpZXMoKSkge1xuICAgICAgcXVlcnkuZGVzdHJveSgpO1xuICAgIH1cblxuICAgIHF1ZXJpZXMuc2V0KFtdKTtcbiAgICBsYXN0UXVlcnkuc2V0KG51bGwpO1xuICB9O1xuXG4gIGNvbnN0IHN0YWNrOiBRdWVyeVN0YWNrPFQsIEo+ID0ge1xuICAgIHF1ZXJpZXM6IHF1ZXJpZXMuYXNSZWFkb25seSgpLFxuICAgIGxhc3RRdWVyeTogbGFzdFF1ZXJ5LmFzUmVhZG9ubHkoKSxcbiAgICBsb2FkaW5nLFxuICAgIGVycm9yLFxuICAgIHJlc3BvbnNlLFxuICAgIGV4ZWN1dGUsXG4gICAgY2xlYXIsXG4gIH07XG5cbiAgcmV0dXJuIHN0YWNrO1xufTtcbiJdfQ==
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktc3RhY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3F1ZXJ5L3NyYy9saWIvZXhwZXJpbWVudGFsL3F1ZXJ5LXN0YWNrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUscUJBQXFCLEVBQVUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQXdEckgsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsQ0FBK0IsU0FBWSxFQUFFLEVBQUUsQ0FDbkYsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUF3QixDQUFDO0FBRXhFLE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFHLENBQTRDLFNBQVksRUFBRSxFQUFFLENBQ3BHLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQTRDLENBQUM7QUFFbEcsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsQ0FDOUIsV0FBaUMsRUFDakMsT0FBdUMsRUFDdkMsRUFBRTtJQUNGLE1BQU0sRUFDSixNQUFNLEdBQUcsS0FBSyxFQUNkLFFBQVEsR0FBRyxDQUFDLFVBQWUsRUFBRSxVQUFlLEVBQUUsRUFBRTtRQUM5QyxNQUFNLE9BQU8sR0FBRyxDQUFDLEdBQUcsVUFBVSxFQUFFLEdBQUcsVUFBVSxDQUFDLENBQUM7UUFDL0MsTUFBTSxTQUFTLEdBQUcsVUFBVSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLElBQUks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QUVoQixNQUFNLE9BQU8sR0FBRyxDQUFDLE9BQWlDLEVBQUUsRUFBRTtRQUNwRCxLQUFLLE1BQU0sS0FBSyxJQUFJLE9BQU8sRUFBRSxFQUFFLENBQUM7WUFDOUIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxFQUFFLE9BQU8sRUFBRSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2hFLENBQUM7SUFDSCxDQUFDLENBQUM7SUFFRixNQUFNLEtBQUssR0FBRyxHQUFHLEVBQUU7UUFDakIsS0FBSyxNQUFNLEtBQUssSUFBSSxPQUFPLEVBQUUsRUFBRSxDQUFDO1lBQzlCLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNsQixDQUFDO1FBRUQsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNoQixTQUFTLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3RCLENBQUMsQ0FBQztJQUVGLE1BQU0sS0FBSyxHQUFxQjtRQUM5QixPQUFPLEVBQUUsT0FBTyxDQUFDLFVBQVUsRUFBRTtRQUM3QixTQUFTLEVBQUUsU0FBUyxDQUFDLFVBQVUsRUFBRTtRQUNqQyxPQUFPO1FBQ1AsS0FBSztRQUNMLFFBQVE7UUFDUixPQUFPO1FBQ1AsS0FBSztLQUNOLENBQUM7SUFFRixPQUFPLEtBQUssQ0FBQztBQUNmLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgY29tcHV0ZWQsIGVmZmVjdCwgaW5qZWN0LCBJbmplY3RvciwgcnVuSW5JbmplY3Rpb25Db250ZXh0LCBTaWduYWwsIHNpZ25hbCwgdW50cmFja2VkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBbnlRdWVyeSB9IGZyb20gJy4vcXVlcnknO1xuXG5leHBvcnQgdHlwZSBRdWVyeVN0YWNrPFQgZXh0ZW5kcyBBbnlRdWVyeSwgSiA9IFJldHVyblR5cGU8VFsncmVzcG9uc2UnXT5bXT4gPSB7XG4gIC8qKiBDb250YWlucyBhbGwgcXVlcmllcyBpbiB0aGUgc3RhY2suICovXG4gIHF1ZXJpZXM6IFNpZ25hbDxUW10+O1xuXG4gIC8qKiBDb250YWlucyB0aGUgbGFzdCBxdWVyeSBpbiB0aGUgc3RhY2suIFVzZWZ1bCBmb3IgZ2V0dGluZyBjdXJyZW50IHBhZ2luYXRpb24gdmFsdWVzLiAqL1xuICBsYXN0UXVlcnk6IFNpZ25hbDxUIHwgbnVsbD47XG5cbiAgLyoqIFRydWUgaWYgYW55IHF1ZXJ5IGluIHRoZSBzdGFjayBpcyBsb2FkaW5nLiAqL1xuICBsb2FkaW5nOiBTaWduYWw8Ym9vbGVhbj47XG5cbiAgLyoqIENvbnRhaW5zIHRoZSBmaXJzdCBlcnJvciB0aGF0IG9jY3VycmVkIGluIHRoZSBzdGFjay4gKi9cbiAgZXJyb3I6IFNpZ25hbDxIdHRwRXJyb3JSZXNwb25zZSB8IG51bGw+O1xuXG4gIC8qKiBDb250YWlucyB0aGUgcmVzcG9uc2VzIG9mIGFsbCBxdWVyaWVzIGluIHRoZSBzdGFjay4gV2lsbCBiZSBgbnVsbGAgZm9yIHF1ZXJpZXMgdGhhdCBhcmUgbG9hZGluZyBvciBlcnJvcmVkLiAqL1xuICByZXNwb25zZTogU2lnbmFsPEo+O1xuXG4gIC8qKiBFeGVjdXRlcyBhbGwgcXVlcmllcyBpbiB0aGUgc3RhY2suICovXG4gIGV4ZWN1dGU6IChvcHRpb25zPzogeyBza2lwQ2FjaGU/OiBib29sZWFuIH0pID0+IHZvaWQ7XG5cbiAgLyoqIERlc3Ryb3lzIGFsbCBxdWVyaWVzIGluIHRoZSBzdGFjayBhbmQgZW1wdGllcyBpdC4gVGhpcyBzaG91bGQgb25seSBiZSB1c2VkIGlmIGBhcHBlbmRgIGlzIHRydWUuICovXG4gIGNsZWFyOiAoKSA9PiB2b2lkO1xufTtcblxuZXhwb3J0IHR5cGUgQW55UXVlcnlTdGFjayA9IFF1ZXJ5U3RhY2s8QW55UXVlcnk+O1xuXG5leHBvcnQgdHlwZSBDcmVhdGVRdWVyeVN0YWNrT3B0aW9uczxUIGV4dGVuZHMgQW55UXVlcnksIEogPSBSZXR1cm5UeXBlPFRbJ3Jlc3BvbnNlJ10+W10+ID0ge1xuICAvKipcbiAgICogSWYgdHJ1ZSwgbmV3IHF1ZXJpZXMgd2lsbCBiZSBhcHBlbmRlZCB0byB0aGUgZXhpc3Rpbmcgb25lcy4gT3RoZXJ3aXNlLCBleGlzdGluZyBxdWVyaWVzIHdpbGwgYmUgZGVzdHJveWVkLlxuICAgKiBUaGlzIHNob3VsZCBiZSB1c2VkIGZvciB0aGluZ3MgbGlrZSBpbmZpbml0ZSBzY3JvbGxpbmcgd2hlcmUgYWxyZWFkeSBmZXRjaGVkIHF1ZXJpZXMgc2hvdWxkIG5vdCBiZSBkZXN0cm95ZWQuXG4gICAqL1xuICBhcHBlbmQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBJZiBhcHBlbmQgaXMgdHJ1ZSwgdGhpcyBmdW5jdGlvbiB3aWxsIGJlIGNhbGxlZCB0byBtZXJnZSB0aGUgb2xkIGFuZCBuZXcgcXVlcmllcy5cbiAgICogVXNlZnVsIGlmIHlvdSB3YW50IHRvIGFwcGVuZCB0aGUgbmV3IHF1ZXJpZXMgaW4gYSBzcGVjaWZpYyBvcmRlciAoZS5nLiBhdCB0aGUgYmVnaW5uaW5nKS5cbiAgICovXG4gIGFwcGVuZEZuPzogKFxuICAgIG9sZFF1ZXJpZXM6IFRbXSxcbiAgICBuZXdRdWVyaWVzOiBUW10sXG4gICkgPT4ge1xuICAgIC8qKiBUaGUgbmV3IHF1ZXJpZXMgbWVyZ2VkIHdpdGggdGhlIG9sZCBvbmVzLiAqL1xuICAgIHF1ZXJpZXM6IFRbXTtcblxuICAgIC8qKiBUaGUgbGFzdCBxdWVyeSBpbiB0aGUgbmV3IHF1ZXJpZXMuICovXG4gICAgbGFzdFF1ZXJ5OiBUIHwgbnVsbDtcbiAgfTtcblxuICAvKipcbiAgICogVHJhbnNmb3JtcyB0aGUgcmVzcG9uc2VzIG9mIGFsbCBxdWVyaWVzIGluIHRoZSBzdGFjay4gVXNlZnVsIGZvciBtZXJnaW5nIG9yIGZpbHRlcmluZyByZXNwb25zZXMuXG4gICAqL1xuICB0cmFuc2Zvcm0/OiAocmVzcG9uc2VzOiBSZXR1cm5UeXBlPFRbJ3Jlc3BvbnNlJ10+W10pID0+IEo7XG59O1xuXG5leHBvcnQgY29uc3QgdHJhbnNmb3JtQXJyYXlSZXNwb25zZSA9IDxUIGV4dGVuZHMgKHVua25vd24gfCBudWxsKVtdPihyZXNwb25zZXM6IFQpID0+XG4gIHJlc3BvbnNlcy5maWx0ZXIoKHIpID0+ICEhcikuZmxhdE1hcCgocikgPT4gcikgYXMgTm9uTnVsbGFibGU8VFswXT5bXTtcblxuZXhwb3J0IGNvbnN0IHRyYW5zZm9ybVBhZ2luYXRlZFJlc3BvbnNlID0gPFQgZXh0ZW5kcyAoeyBpdGVtczogdW5rbm93bltdIH0gfCBudWxsKVtdPihyZXNwb25zZXM6IFQpID0+XG4gIHJlc3BvbnNlcy5maWx0ZXIoKHIpID0+ICEhcikuZmxhdE1hcCgocikgPT4gci5pdGVtcykgYXMgTm9uTnVsbGFibGU8Tm9uTnVsbGFibGU8VFswXT5bJ2l0ZW1zJ10+O1xuXG5leHBvcnQgY29uc3QgY3JlYXRlUXVlcnlTdGFjayA9IDxUIGV4dGVuZHMgQW55UXVlcnksIEogPSBSZXR1cm5UeXBlPFRbJ3Jlc3BvbnNlJ10+W10+KFxuICBjb21wdXRhdGlvbjogKCkgPT4gVCB8IFRbXSB8IG51bGwsXG4gIG9wdGlvbnM/OiBDcmVhdGVRdWVyeVN0YWNrT3B0aW9uczxULCBKPixcbikgPT4ge1xuICBjb25zdCB7XG4gICAgYXBwZW5kID0gZmFsc2UsXG4gICAgYXBwZW5kRm4gPSAob2xkUXVlcmllczogVFtdLCBuZXdRdWVyaWVzOiBUW10pID0+IHtcbiAgICAgIGNvbnN0IHF1ZXJpZXMgPSBbLi4ub2xkUXVlcmllcywgLi4ubmV3UXVlcmllc107XG4gICAgICBjb25zdCBsYXN0UXVlcnkgPSBuZXdRdWVyaWVzW25ld1F1ZXJpZXMubGVuZ3RoIC0gMV0gPz8gb2xkUXVlcmllc1tvbGRRdWVyaWVzLmxlbmd0aCAtIDFdID8/IG51bGw7XG5cbiAgICAgIHJldHVybiB7IHF1ZXJpZXMsIGxhc3RRdWVyeSB9O1xuICAgIH0sXG4gICAgdHJhbnNmb3JtLFxuICB9ID0gb3B0aW9ucyA/PyB7fTtcbiAgY29uc3QgaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xuXG4gIGNvbnN0IHF1ZXJpZXMgPSBzaWduYWw8VFtdPihbXSk7XG4gIGNvbnN0IGxhc3RRdWVyeSA9IHNpZ25hbDxUIHwgbnVsbD4obnVsbCk7XG5cbiAgZWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBuZXdRdWVyeU9yUXVlcmllcyA9IHJ1bkluSW5qZWN0aW9uQ29udGV4dChpbmplY3RvciwgKCkgPT4gY29tcHV0YXRpb24oKSk7XG5cbiAgICBjb25zdCBuZXdRdWVyaWVzID0gQXJyYXkuaXNBcnJheShuZXdRdWVyeU9yUXVlcmllcykgPyBuZXdRdWVyeU9yUXVlcmllcyA6IFtuZXdRdWVyeU9yUXVlcmllc10uZmlsdGVyKChxKSA9PiAhIXEpO1xuXG4gICAgdW50cmFja2VkKCgpID0+IHtcbiAgICAgIGNvbnN0IG9sZFF1ZXJpZXMgPSBxdWVyaWVzKCk7XG5cbiAgICAgIGlmIChhcHBlbmQpIHtcbiAgICAgICAgY29uc3QgeyBxdWVyaWVzOiBhcHBlbmRlZFF1ZXJpZXMsIGxhc3RRdWVyeTogbGFzdEFwcGVuZGVkUXVlcnkgfSA9IGFwcGVuZEZuKG9sZFF1ZXJpZXMsIG5ld1F1ZXJpZXMpO1xuICAgICAgICBxdWVyaWVzLnNldChhcHBlbmRlZFF1ZXJpZXMpO1xuICAgICAgICBsYXN0UXVlcnkuc2V0KGxhc3RBcHBlbmRlZFF1ZXJ5KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGZvciAoY29uc3Qgb2xkUXVlcnkgb2Ygb2xkUXVlcmllcykge1xuICAgICAgICAgIGlmICghbmV3UXVlcmllcy5zb21lKChxKSA9PiBxLmlkKCkgPT09IG9sZFF1ZXJ5LmlkKCkpKSB7XG4gICAgICAgICAgICBvbGRRdWVyeS5kZXN0cm95KCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHF1ZXJpZXMuc2V0KG5ld1F1ZXJpZXMpO1xuICAgICAgICBsYXN0UXVlcnkuc2V0KG5ld1F1ZXJpZXNbbmV3UXVlcmllcy5sZW5ndGggLSAxXSA/PyBudWxsKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfSk7XG5cbiAgY29uc3QgbG9hZGluZyA9IGNvbXB1dGVkKCgpID0+IHF1ZXJpZXMoKS5zb21lKChxKSA9PiBxLmxvYWRpbmcoKSkpO1xuXG4gIGNvbnN0IGVycm9yID0gY29tcHV0ZWQoXG4gICAgKCkgPT5cbiAgICAgIHF1ZXJpZXMoKVxuICAgICAgICAubWFwKChxKSA9PiBxLmVycm9yKCkpXG4gICAgICAgIC5maW5kKChlKSA9PiBlICE9PSBudWxsKSA/PyBudWxsLFxuICApO1xuXG4gIGNvbnN0IHJlc3BvbnNlID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IHJlc3BvbnNlcyA9IHF1ZXJpZXMoKS5tYXAoKHEpID0+IHEucmVzcG9uc2UoKSk7XG4gICAgcmV0dXJuIHRyYW5zZm9ybT8uKHJlc3BvbnNlcykgPz8gcmVzcG9uc2VzO1xuICB9KSBhcyBTaWduYWw8Sj47XG5cbiAgY29uc3QgZXhlY3V0ZSA9IChvcHRpb25zPzogeyBza2lwQ2FjaGU/OiBib29sZWFuIH0pID0+IHtcbiAgICBmb3IgKGNvbnN0IHF1ZXJ5IG9mIHF1ZXJpZXMoKSkge1xuICAgICAgcXVlcnkuZXhlY3V0ZSh7IG9wdGlvbnM6IHsgc2tpcENhY2hlOiBvcHRpb25zPy5za2lwQ2FjaGUgfSB9KTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgY2xlYXIgPSAoKSA9PiB7XG4gICAgZm9yIChjb25zdCBxdWVyeSBvZiBxdWVyaWVzKCkpIHtcbiAgICAgIHF1ZXJ5LmRlc3Ryb3koKTtcbiAgICB9XG5cbiAgICBxdWVyaWVzLnNldChbXSk7XG4gICAgbGFzdFF1ZXJ5LnNldChudWxsKTtcbiAgfTtcblxuICBjb25zdCBzdGFjazogUXVlcnlTdGFjazxULCBKPiA9IHtcbiAgICBxdWVyaWVzOiBxdWVyaWVzLmFzUmVhZG9ubHkoKSxcbiAgICBsYXN0UXVlcnk6IGxhc3RRdWVyeS5hc1JlYWRvbmx5KCksXG4gICAgbG9hZGluZyxcbiAgICBlcnJvcixcbiAgICByZXNwb25zZSxcbiAgICBleGVjdXRlLFxuICAgIGNsZWFyLFxuICB9O1xuXG4gIHJldHVybiBzdGFjaztcbn07XG4iXX0=