velocious 1.0.648 → 1.0.650

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.
Files changed (63) hide show
  1. package/README.md +12 -0
  2. package/build/cli/commands/db/base-command.js +6 -4
  3. package/build/cli/commands/db/create.js +1 -1
  4. package/build/database/drivers/base.js +1 -0
  5. package/build/database/drivers/mssql/index.js +12 -4
  6. package/build/database/query/model-class-query.js +8 -1
  7. package/build/database/query/query-data.js +3 -4
  8. package/build/database/query/select-base.js +9 -0
  9. package/build/database/query/select-plain.js +24 -0
  10. package/build/database/query/where-model-class-hash.js +1 -1
  11. package/build/database/record/index.js +16 -5
  12. package/build/src/cli/commands/db/base-command.d.ts +4 -2
  13. package/build/src/cli/commands/db/base-command.d.ts.map +1 -1
  14. package/build/src/cli/commands/db/base-command.js +7 -5
  15. package/build/src/cli/commands/db/create.js +2 -2
  16. package/build/src/database/drivers/base.d.ts +4 -0
  17. package/build/src/database/drivers/base.d.ts.map +1 -1
  18. package/build/src/database/drivers/base.js +2 -1
  19. package/build/src/database/drivers/mssql/index.d.ts +2 -1
  20. package/build/src/database/drivers/mssql/index.d.ts.map +1 -1
  21. package/build/src/database/drivers/mssql/index.js +13 -5
  22. package/build/src/database/query/model-class-query.d.ts.map +1 -1
  23. package/build/src/database/query/model-class-query.js +8 -2
  24. package/build/src/database/query/query-data.js +4 -5
  25. package/build/src/database/query/select-base.d.ts +8 -0
  26. package/build/src/database/query/select-base.d.ts.map +1 -1
  27. package/build/src/database/query/select-base.js +9 -1
  28. package/build/src/database/query/select-plain.d.ts +10 -0
  29. package/build/src/database/query/select-plain.d.ts.map +1 -1
  30. package/build/src/database/query/select-plain.js +21 -1
  31. package/build/src/database/query/where-model-class-hash.js +2 -2
  32. package/build/src/database/record/index.d.ts +14 -4
  33. package/build/src/database/record/index.d.ts.map +1 -1
  34. package/build/src/database/record/index.js +17 -6
  35. package/build/src/testing/shared-transaction-proxy-driver.d.ts.map +1 -1
  36. package/build/src/testing/shared-transaction-proxy-driver.js +7 -1
  37. package/build/src/testing/test-runner.d.ts +8 -3
  38. package/build/src/testing/test-runner.d.ts.map +1 -1
  39. package/build/src/testing/test-runner.js +6 -5
  40. package/build/src/testing/velocious-runner-reporter.d.ts +1 -1
  41. package/build/src/testing/velocious-runner-reporter.d.ts.map +1 -1
  42. package/build/src/testing/velocious-runner-reporter.js +22 -2
  43. package/build/src/testing/velocious-suite-hook-executor.d.ts.map +1 -1
  44. package/build/src/testing/velocious-suite-hook-executor.js +5 -2
  45. package/build/testing/shared-transaction-proxy-driver.js +6 -0
  46. package/build/testing/test-runner.js +6 -4
  47. package/build/testing/velocious-runner-reporter.js +23 -1
  48. package/build/testing/velocious-suite-hook-executor.js +4 -1
  49. package/package.json +1 -1
  50. package/src/cli/commands/db/base-command.js +6 -4
  51. package/src/cli/commands/db/create.js +1 -1
  52. package/src/database/drivers/base.js +1 -0
  53. package/src/database/drivers/mssql/index.js +12 -4
  54. package/src/database/query/model-class-query.js +8 -1
  55. package/src/database/query/query-data.js +3 -4
  56. package/src/database/query/select-base.js +9 -0
  57. package/src/database/query/select-plain.js +24 -0
  58. package/src/database/query/where-model-class-hash.js +1 -1
  59. package/src/database/record/index.js +16 -5
  60. package/src/testing/shared-transaction-proxy-driver.js +6 -0
  61. package/src/testing/test-runner.js +6 -4
  62. package/src/testing/velocious-runner-reporter.js +23 -1
  63. package/src/testing/velocious-suite-hook-executor.js +4 -1
@@ -1 +1 @@
1
- {"version":3,"file":"shared-transaction-proxy-driver.d.ts","sourceRoot":"","sources":["../../../src/testing/shared-transaction-proxy-driver.js"],"names":[],"mappings":"AAAA,+KAA+K;AAA3K,YAAwI,gCAAgC,GAA9J;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,sBAAsB,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAC,CAAkC;AAO5K,eAAO,MAAM,6BAA6B,6CAA6C,CAAA;AACvF,eAAO,MAAM,wBAAwB,mCAAmC,CAAA;AAkBxE;;;;;;GAMG;AACH,wBAAgB,oCAAoC,CALvC,CAAC,EAKuC,MAAM,EAJhD,gCAIgD,EAAE,QAAQ,EAH1D,MAAM,CAGoD,GAFxD,CAAC,CAIb;AAED;;;;GAIG;AACH,wBAAgB,qCAAqC,CAAC,QAAQ,EAHnD;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAGe,GAFjD,OAAO,CAKnB;AAED;;;;;GAKG;AACH,wBAAgB,qCAAqC,CAAC,kBAAkB,EAH7D,MAG6D,GAF3D,OAAO,CAYnB;AAyBD;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAAC,kBAAkB,EAHrD,MAGqD,GAFnD;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,sBAAsB,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAC,GAAG,SAAS,CAM/F;AA0BD;;;;;;;;;GASG;AACH,wBAAgB,kCAAkC,CAAC,WAAW,EAPnD,cAAc,6BAA6B,EAAE,OAOM,EAAE,MAAM,EAN3D,OAAO,2BAA2B,EAAE,yBAMuB,EAAE,aAAa,EAL1E,OAAO,qBAAqB,EAAE,OAK4C,EAAE,kBAAkB,EAJ9F,MAI8F,EAAE,YAAY,EAH5G;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAGqD,GAF1G,OAAO,6BAA6B,EAAE,OAAO,CA+GzD"}
1
+ {"version":3,"file":"shared-transaction-proxy-driver.d.ts","sourceRoot":"","sources":["../../../src/testing/shared-transaction-proxy-driver.js"],"names":[],"mappings":"AAAA,+KAA+K;AAA3K,YAAwI,gCAAgC,GAA9J;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,sBAAsB,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAC,CAAkC;AAO5K,eAAO,MAAM,6BAA6B,6CAA6C,CAAA;AACvF,eAAO,MAAM,wBAAwB,mCAAmC,CAAA;AAkBxE;;;;;;GAMG;AACH,wBAAgB,oCAAoC,CALvC,CAAC,EAKuC,MAAM,EAJhD,gCAIgD,EAAE,QAAQ,EAH1D,MAAM,CAGoD,GAFxD,CAAC,CAIb;AAED;;;;GAIG;AACH,wBAAgB,qCAAqC,CAAC,QAAQ,EAHnD;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAGe,GAFjD,OAAO,CAKnB;AAED;;;;;GAKG;AACH,wBAAgB,qCAAqC,CAAC,kBAAkB,EAH7D,MAG6D,GAF3D,OAAO,CAYnB;AAyBD;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAAC,kBAAkB,EAHrD,MAGqD,GAFnD;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,sBAAsB,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAC,GAAG,SAAS,CAM/F;AA0BD;;;;;;;;;GASG;AACH,wBAAgB,kCAAkC,CAAC,WAAW,EAPnD,cAAc,6BAA6B,EAAE,OAOM,EAAE,MAAM,EAN3D,OAAO,2BAA2B,EAAE,yBAMuB,EAAE,aAAa,EAL1E,OAAO,qBAAqB,EAAE,OAK4C,EAAE,kBAAkB,EAJ9F,MAI8F,EAAE,YAAY,EAH5G;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAGqD,GAF1G,OAAO,6BAA6B,EAAE,OAAO,CAqHzD"}
@@ -151,6 +151,12 @@ export function createSharedTransactionProxyDriver(DriverClass, config, configur
151
151
  * @returns {Promise<import("../database/drivers/base.js").QueryResultType>} - Rows.
152
152
  */
153
153
  async _queryActual(sql) { return await this.sharedTransactionClient.call("_queryActual", [sql]); }
154
+ /**
155
+ * Keeps MS-SQL session-owned advisory locks on the parent broker session.
156
+ * @param {string} sql - Advisory-lock SQL statement.
157
+ * @returns {Promise<import("../database/drivers/base.js").QueryResultType>} - Result rows.
158
+ */
159
+ async _advisoryLockQuery(sql) { return await this.sharedTransactionClient.call("_queryActual", [sql]); }
154
160
  /**
155
161
  * Routes an affected-row query.
156
162
  * @param {string} sql - SQL statement.
@@ -229,4 +235,4 @@ export function createSharedTransactionProxyDriver(DriverClass, config, configur
229
235
  }
230
236
  return new SharedTransactionProxyDriver();
231
237
  }
232
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkLXRyYW5zYWN0aW9uLXByb3h5LWRyaXZlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90ZXN0aW5nL3NoYXJlZC10cmFuc2FjdGlvbi1wcm94eS1kcml2ZXIuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0tBQStLO0FBRS9LLFlBQVk7QUFFWixPQUFPLDZCQUE2QixNQUFNLHVDQUF1QyxDQUFBO0FBQ2pGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBRXBELE1BQU0sQ0FBQyxNQUFNLDZCQUE2QixHQUFHLDBDQUEwQyxDQUFBO0FBQ3ZGLE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLGdDQUFnQyxDQUFBO0FBRXhFLGtFQUFrRTtBQUNsRSxNQUFNLHFCQUFxQixHQUFHLElBQUksaUJBQWlCLEVBQUUsQ0FBQTtBQUVyRDs7O0dBR0c7QUFDSCxTQUFTLG1DQUFtQztJQUMxQyxNQUFNLGdCQUFnQixHQUFHLHFCQUFxQixDQUFDLFFBQVEsRUFBRSxDQUFBO0lBQ3pELElBQUksZ0JBQWdCO1FBQUUsT0FBTyxnQkFBZ0IsQ0FBQTtJQUM3QyxJQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsd0JBQXdCLENBQUMsS0FBSyxHQUFHO1FBQUUsT0FBTyxTQUFTLENBQUE7SUFDbkUsTUFBTSxVQUFVLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyw2QkFBNkIsQ0FBQyxDQUFBO0lBQzdELElBQUksQ0FBQyxVQUFVO1FBQUUsT0FBTyxTQUFTLENBQUE7SUFDakMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLFdBQVcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFBO0FBQzFFLENBQUM7QUFFRDs7Ozs7O0dBTUc7QUFDSCxNQUFNLFVBQVUsb0NBQW9DLENBQUMsTUFBTSxFQUFFLFFBQVE7SUFDbkUsT0FBTyxxQkFBcUIs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O1FBRUQ7OztXQUdHO1FBQ0gsS0FBSyxDQUFDLG1CQUFtQixLQUFLLE9BQU8sS0FBSyxDQUFBLENBQUMsQ0FBQztLQUM3QztJQUVELE9BQU8sSUFBSSw0QkFBNEIsRUFBRSxDQUFBO0FBQzNDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiogQHR5cGVkZWYge3thZGRyZXNzPzogc3RyaW5nLCBhbGxvd0R5bmFtaWNJZGVudGl0aWVzPzogYm9vbGVhbiwgY2FwYWJpbGl0eT86IHN0cmluZywgZGF0YWJhc2VJZGVudGlmaWVycz86IHN0cmluZ1tdLCBleHBlY3RlZDogYm9vbGVhbn19IFNoYXJlZFRyYW5zYWN0aW9uQnJva2VySm9iQ29uZmlnICovXG5cbi8vIEB0cy1jaGVja1xuXG5pbXBvcnQgU2hhcmVkVHJhbnNhY3Rpb25Ccm9rZXJDbGllbnQgZnJvbSBcIi4vc2hhcmVkLXRyYW5zYWN0aW9uLWJyb2tlci1jbGllbnQuanNcIlxuaW1wb3J0IHsgQXN5bmNMb2NhbFN0b3JhZ2UgfSBmcm9tIFwibm9kZTphc3luY19ob29rc1wiXG5cbmV4cG9ydCBjb25zdCBTSEFSRURfVFJBTlNBQ1RJT05fQlJPS0VSX0VOViA9IFwiVkVMT0NJT1VTX1RFU1RfU0hBUkVEX1RSQU5TQUNUSU9OX0JST0tFUlwiXG5leHBvcnQgY29uc3QgQkFDS0dST1VORF9KT0JfQ0hJTERfRU5WID0gXCJWRUxPQ0lPVVNfQkFDS0dST1VORF9KT0JfQ0hJTERcIlxuXG4vKiogQHR5cGUge0FzeW5jTG9jYWxTdG9yYWdlPFNoYXJlZFRyYW5zYWN0aW9uQnJva2VySm9iQ29uZmlnPn0gKi9cbmNvbnN0IHBvb2xlZEpvYkJyb2tlckNvbmZpZyA9IG5ldyBBc3luY0xvY2FsU3RvcmFnZSgpXG5cbi8qKlxuICogUmV0dXJucyB0aGUgYWN0aXZlIGxpdmUgYnJva2VyIGNvbmZpZ3VyYXRpb24gd2l0aG91dCB2YWxpZGF0aW5nIG9uZSBkYXRhYmFzZSByb3V0ZS5cbiAqIEByZXR1cm5zIHtTaGFyZWRUcmFuc2FjdGlvbkJyb2tlckpvYkNvbmZpZyB8IHVuZGVmaW5lZH0gLSBBY3RpdmUgbGl2ZSBvciBjaGlsZCBjb25maWd1cmF0aW9uLlxuICovXG5mdW5jdGlvbiBhY3RpdmVTaGFyZWRUcmFuc2FjdGlvbkJyb2tlckNvbmZpZygpIHtcbiAgY29uc3QgY29udGV4dHVhbENvbmZpZyA9IHBvb2xlZEpvYkJyb2tlckNvbmZpZy5nZXRTdG9yZSgpXG4gIGlmIChjb250ZXh0dWFsQ29uZmlnKSByZXR1cm4gY29udGV4dHVhbENvbmZpZ1xuICBpZiAocHJvY2Vzcy5lbnZbQkFDS0dST1VORF9KT0JfQ0hJTERfRU5WXSAhPT0gXCIxXCIpIHJldHVybiB1bmRlZmluZWRcbiAgY29uc3Qgc2VyaWFsaXplZCA9IHByb2Nlc3MuZW52W1NIQVJFRF9UUkFOU0FDVElPTl9CUk9LRVJfRU5WXVxuICBpZiAoIXNlcmlhbGl6ZWQpIHJldHVybiB1bmRlZmluZWRcbiAgcmV0dXJuIEpTT04ucGFyc2UoQnVmZmVyLmZyb20oc2VyaWFsaXplZCwgXCJiYXNlNjR1cmxcIikudG9TdHJpbmcoXCJ1dGY4XCIpKVxufVxuXG4vKipcbiAqIFJ1bnMgb25lIHBvb2xlZCBqb2Igd2l0aCBkaXNwYXRjaC10aW1lIGJyb2tlciBjb25maWd1cmF0aW9uLlxuICogQHRlbXBsYXRlIFRcbiAqIEBwYXJhbSB7U2hhcmVkVHJhbnNhY3Rpb25Ccm9rZXJKb2JDb25maWd9IGNvbmZpZyAtIFBlci1qb2IgYnJva2VyIG1vZGUgYW5kIGNvb3JkaW5hdGVzLlxuICogQHBhcmFtIHsoKSA9PiBUfSBjYWxsYmFjayAtIEpvYiBjYWxsYmFjay5cbiAqIEByZXR1cm5zIHtUfSAtIENhbGxiYWNrIHJlc3VsdC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJ1bldpdGhTaGFyZWRUcmFuc2FjdGlvbkJyb2tlckNvbmZpZyhjb25maWcsIGNhbGxiYWNrKSB7XG4gIHJldHVybiBwb29sZWRKb2JCcm9rZXJDb25maWcucnVuKGNvbmZpZywgY2FsbGJhY2spXG59XG5cbi8qKlxuICogQ2hlY2tzIHdoZXRoZXIgdGhlIGN1cnJlbnQgbGl2ZSBqb2luIHNlbGVjdHMgb25lIGV4YWN0IHNlc3Npb24gY2FwYWJpbGl0eS5cbiAqIEBwYXJhbSB7e2FkZHJlc3M6IHN0cmluZywgY2FwYWJpbGl0eTogc3RyaW5nfX0gaWRlbnRpdHkgLSBTZXNzaW9uIGNvbnRyb2wtbWVzc2FnZSBpZGVudGl0eS5cbiAqIEByZXR1cm5zIHtib29sZWFufSAtIFdoZXRoZXIgdGhpcyBhc3luYyBjb250ZXh0IGJlbG9uZ3MgdG8gdGhhdCBzZXNzaW9uLlxuICovXG5leHBvcnQgZnVuY3Rpb24gc2hhcmVkVHJhbnNhY3Rpb25Ccm9rZXJDb250ZXh0TWF0Y2hlcyhpZGVudGl0eSkge1xuICBjb25zdCBjb25maWcgPSBwb29sZWRKb2JCcm9rZXJDb25maWcuZ2V0U3RvcmUoKVxuICByZXR1cm4gY29uZmlnPy5leHBlY3RlZCA9PT0gdHJ1ZSAmJiBjb25maWcuYWRkcmVzcyA9PT0gaWRlbnRpdHkuYWRkcmVzcyAmJiBjb25maWcuY2FwYWJpbGl0eSA9PT0gaWRlbnRpdHkuY2FwYWJpbGl0eVxufVxuXG4vKipcbiAqIFByZXNlcnZlcyBsZWdhY3kgcmVhbCB0ZW5hbnQgY29ubmVjdGlvbnMgb21pdHRlZCBieSBhdXRvbWF0aWMgVGVzdFJ1bm5lciBtb2RlLlxuICogRXhwbGljaXQgZHluYW1pYyBzZXNzaW9ucyBuZXZlciBwZXJtaXQgdGhpcyBmYWxsYmFjay5cbiAqIEBwYXJhbSB7c3RyaW5nfSBkYXRhYmFzZUlkZW50aWZpZXIgLSBMb2dpY2FsIGRhdGFiYXNlIGlkZW50aWZpZXIuXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gLSBXaGV0aGVyIGFuIG9taXR0ZWQgYXV0b21hdGljIHJvdXRlIHN0YXlzIGluZGVwZW5kZW50LlxuICovXG5leHBvcnQgZnVuY3Rpb24gYXV0b21hdGljU2hhcmVkVHJhbnNhY3Rpb25Ccm9rZXJPbWl0cyhkYXRhYmFzZUlkZW50aWZpZXIpIHtcbiAgY29uc3QgY29uZmlnID0gYWN0aXZlU2hhcmVkVHJhbnNhY3Rpb25Ccm9rZXJDb25maWcoKVxuICByZXR1cm4gQm9vbGVhbihcbiAgICBjb25maWc/LmV4cGVjdGVkID09PSB0cnVlICYmXG4gICAgIWNvbmZpZy5hbGxvd0R5bmFtaWNJZGVudGl0aWVzICYmXG4gICAgdHlwZW9mIGNvbmZpZy5hZGRyZXNzID09PSBcInN0cmluZ1wiICYmXG4gICAgdHlwZW9mIGNvbmZpZy5jYXBhYmlsaXR5ID09PSBcInN0cmluZ1wiICYmXG4gICAgQXJyYXkuaXNBcnJheShjb25maWcuZGF0YWJhc2VJZGVudGlmaWVycykgJiZcbiAgICAhY29uZmlnLmRhdGFiYXNlSWRlbnRpZmllcnMuaW5jbHVkZXMoZGF0YWJhc2VJZGVudGlmaWVyKVxuICApXG59XG5cbi8qKlxuICogRXNjYXBlcyBhIFBvc3RncmVTUUwgbGl0ZXJhbCB3aXRob3V0IHJlcXVpcmluZyBhIGxpdmUgY2hpbGQgY29ubmVjdGlvbi5cbiAqIEBwYXJhbSB7UmV0dXJuVHlwZTx0eXBlb2YgSlNPTi5wYXJzZT59IHZhbHVlIC0gUG9zdGdyZVNRTCBsaXRlcmFsIHZhbHVlLlxuICogQHJldHVybnMge3N0cmluZ30gLSBRdW90ZWQgbGl0ZXJhbC5cbiAqL1xuZnVuY3Rpb24gcGdFc2NhcGVMaXRlcmFsKHZhbHVlKSB7XG4gIGNvbnN0IHN0cmluZyA9IHR5cGVvZiB2YWx1ZSA9PT0gXCJzdHJpbmdcIiA/IHZhbHVlIDogU3RyaW5nKHZhbHVlKVxuICBsZXQgZXNjYXBlZCA9IFwiJ1wiXG4gIGxldCBoYXNCYWNrc2xhc2ggPSBmYWxzZVxuXG4gIGZvciAoY29uc3QgY2hhcmFjdGVyIG9mIHN0cmluZykge1xuICAgIGlmIChjaGFyYWN0ZXIgPT09IFwiJ1wiKSBlc2NhcGVkICs9IGNoYXJhY3RlclxuICAgIGlmIChjaGFyYWN0ZXIgPT09IFwiXFxcXFwiKSB7XG4gICAgICBlc2NhcGVkICs9IGNoYXJhY3RlclxuICAgICAgaGFzQmFja3NsYXNoID0gdHJ1ZVxuICAgIH1cbiAgICBlc2NhcGVkICs9IGNoYXJhY3RlclxuICB9XG5cbiAgZXNjYXBlZCArPSBcIidcIlxuICByZXR1cm4gaGFzQmFja3NsYXNoID8gYCBFJHtlc2NhcGVkfWAgOiBlc2NhcGVkXG59XG5cbi8qKlxuICogUGFyc2VzIHRoZSB0ZXN0LXJ1bm5lci1vd25lZCBjaGlsZCB0cmFuc3BvcnQgY29uZmlndXJhdGlvbiB3aGVuIHRoaXMgbG9naWNhbFxuICogZGF0YWJhc2UgaXMgcmVnaXN0ZXJlZCBmb3IgdGhlIGFjdGl2ZSBhdHRlbXB0LlxuICogQHBhcmFtIHtzdHJpbmd9IGRhdGFiYXNlSWRlbnRpZmllciAtIExvZ2ljYWwgZGF0YWJhc2UgaWRlbnRpZmllci5cbiAqIEByZXR1cm5zIHt7YWRkcmVzczogc3RyaW5nLCBhbGxvd0R5bmFtaWNJZGVudGl0aWVzPzogYm9vbGVhbiwgY2FwYWJpbGl0eTogc3RyaW5nfSB8IHVuZGVmaW5lZH0gLSBCcm9rZXIgY29vcmRpbmF0ZXMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzaGFyZWRUcmFuc2FjdGlvbkJyb2tlckNvbmZpZyhkYXRhYmFzZUlkZW50aWZpZXIpIHtcbiAgY29uc3QgY29uZmlnID0gYWN0aXZlU2hhcmVkVHJhbnNhY3Rpb25Ccm9rZXJDb25maWcoKVxuICBpZiAoIWNvbmZpZykgcmV0dXJuIHVuZGVmaW5lZFxuICByZXR1cm4gdmFsaWRhdGVkQnJva2VyQ29uZmlnKGNvbmZpZywgZGF0YWJhc2VJZGVudGlmaWVyKVxufVxuXG4vKipcbiAqIFZhbGlkYXRlcyBkaXNwYXRjaC10aW1lIGJyb2tlciBjb25maWd1cmF0aW9uIGFuZCBmYWlscyBjbG9zZWQgd2hlbiBleHBlY3RlZC5cbiAqIEBwYXJhbSB7U2hhcmVkVHJhbnNhY3Rpb25Ccm9rZXJKb2JDb25maWd9IGNvbmZpZyAtIENhbmRpZGF0ZSBjb25maWd1cmF0aW9uLlxuICogQHBhcmFtIHtzdHJpbmd9IGRhdGFiYXNlSWRlbnRpZmllciAtIExvZ2ljYWwgZGF0YWJhc2UgaWRlbnRpZmllci5cbiAqIEByZXR1cm5zIHt7YWRkcmVzczogc3RyaW5nLCBhbGxvd0R5bmFtaWNJZGVudGl0aWVzPzogYm9vbGVhbiwgY2FwYWJpbGl0eTogc3RyaW5nfSB8IHVuZGVmaW5lZH0gLSBCcm9rZXIgY29vcmRpbmF0ZXMuXG4gKi9cbmZ1bmN0aW9uIHZhbGlkYXRlZEJyb2tlckNvbmZpZyhjb25maWcsIGRhdGFiYXNlSWRlbnRpZmllcikge1xuICBpZiAoY29uZmlnLmV4cGVjdGVkICYmICghY29uZmlnLmFkZHJlc3MgfHwgIWNvbmZpZy5jYXBhYmlsaXR5IHx8ICFjb25maWcuZGF0YWJhc2VJZGVudGlmaWVycykpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJUcmFuc2FjdGlvbmFsIHBvb2xlZCBqb2IgZXhwZWN0ZWQgc2hhcmVkIHRyYW5zYWN0aW9uIGJyb2tlciBjb29yZGluYXRlc1wiKVxuICB9XG4gIGlmICghY29uZmlnLmV4cGVjdGVkKSByZXR1cm4gdW5kZWZpbmVkXG4gIGlmICh0eXBlb2YgY29uZmlnLmFkZHJlc3MgIT09IFwic3RyaW5nXCIgfHwgdHlwZW9mIGNvbmZpZy5jYXBhYmlsaXR5ICE9PSBcInN0cmluZ1wiIHx8ICFBcnJheS5pc0FycmF5KGNvbmZpZy5kYXRhYmFzZUlkZW50aWZpZXJzKSkge1xuICAgIHRocm93IG5ldyBFcnJvcihcIkludmFsaWQgc2hhcmVkIHRyYW5zYWN0aW9uIGJyb2tlciBjaGlsZCBjb25maWd1cmF0aW9uXCIpXG4gIH1cbiAgaWYgKCFjb25maWcuYWxsb3dEeW5hbWljSWRlbnRpdGllcyAmJiAhY29uZmlnLmRhdGFiYXNlSWRlbnRpZmllcnMuaW5jbHVkZXMoZGF0YWJhc2VJZGVudGlmaWVyKSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgVHJhbnNhY3Rpb25hbCBwb29sZWQgam9iIGV4cGVjdGVkIGJyb2tlciBkYXRhYmFzZSBpZGVudGlmaWVyOiAke2RhdGFiYXNlSWRlbnRpZmllcn1gKVxuICB9XG5cbiAgaWYgKGNvbmZpZy5hbGxvd0R5bmFtaWNJZGVudGl0aWVzKSB7XG4gICAgcmV0dXJuIHthZGRyZXNzOiBjb25maWcuYWRkcmVzcywgYWxsb3dEeW5hbWljSWRlbnRpdGllczogdHJ1ZSwgY2FwYWJpbGl0eTogY29uZmlnLmNhcGFiaWxpdHl9XG4gIH1cbiAgcmV0dXJuIHthZGRyZXNzOiBjb25maWcuYWRkcmVzcywgY2FwYWJpbGl0eTogY29uZmlnLmNhcGFiaWxpdHl9XG59XG5cbi8qKlxuICogQ3JlYXRlcyBhIGNvbmNyZXRlLWRyaXZlciBzdWJjbGFzcyB0aGF0IHJldGFpbnMgYWxsIGxvY2FsIFNRTC9xdWVyeS9tb2RlbFxuICogYnVpbGRlcnMgd2hpbGUgZm9yd2FyZGluZyBvbmx5IHBoeXNpY2FsIGNvbm5lY3Rpb24gYWN0aW9ucyB0byB0aGUgcGFyZW50LlxuICogQHBhcmFtIHt0eXBlb2YgaW1wb3J0KFwiLi4vZGF0YWJhc2UvZHJpdmVycy9iYXNlLmpzXCIpLmRlZmF1bHR9IERyaXZlckNsYXNzIC0gQ29uZmlndXJlZCBjb25jcmV0ZSBkcml2ZXIuXG4gKiBAcGFyYW0ge2ltcG9ydChcIi4uL2NvbmZpZ3VyYXRpb24tdHlwZXMuanNcIikuRGF0YWJhc2VDb25maWd1cmF0aW9uVHlwZX0gY29uZmlnIC0gRGF0YWJhc2UgY29uZmlndXJhdGlvbi5cbiAqIEBwYXJhbSB7aW1wb3J0KFwiLi4vY29uZmlndXJhdGlvbi5qc1wiKS5kZWZhdWx0fSBjb25maWd1cmF0aW9uIC0gQ2hpbGQgY29uZmlndXJhdGlvbi5cbiAqIEBwYXJhbSB7c3RyaW5nfSBkYXRhYmFzZUlkZW50aWZpZXIgLSBMb2dpY2FsIGlkZW50aWZpZXIuXG4gKiBAcGFyYW0ge3thZGRyZXNzOiBzdHJpbmcsIGNhcGFiaWxpdHk6IHN0cmluZywgcmV1c2VLZXk/OiBzdHJpbmd9fSBicm9rZXJDb25maWcgLSBCcm9rZXIgY29vcmRpbmF0ZXMuXG4gKiBAcmV0dXJucyB7aW1wb3J0KFwiLi4vZGF0YWJhc2UvZHJpdmVycy9iYXNlLmpzXCIpLmRlZmF1bHR9IC0gVW5jb25uZWN0ZWQgcGh5c2ljYWwgcHJveHkuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVTaGFyZWRUcmFuc2FjdGlvblByb3h5RHJpdmVyKERyaXZlckNsYXNzLCBjb25maWcsIGNvbmZpZ3VyYXRpb24sIGRhdGFiYXNlSWRlbnRpZmllciwgYnJva2VyQ29uZmlnKSB7XG4gIGNsYXNzIFNoYXJlZFRyYW5zYWN0aW9uUHJveHlEcml2ZXIgZXh0ZW5kcyBEcml2ZXJDbGFzcyB7XG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICBzdXBlcihjb25maWcsIGNvbmZpZ3VyYXRpb24pXG4gICAgICB0aGlzLnNoYXJlZFRyYW5zYWN0aW9uQ2xpZW50ID0gbmV3IFNoYXJlZFRyYW5zYWN0aW9uQnJva2VyQ2xpZW50KHsuLi5icm9rZXJDb25maWcsIGRhdGFiYXNlSWRlbnRpZmllcn0pXG4gICAgICAvKiogQHR5cGUge3N0cmluZyB8IHVuZGVmaW5lZH0gKi9cbiAgICAgIHRoaXMuc2hhcmVkVHJhbnNhY3Rpb25Sb290U2F2ZVBvaW50ID0gdW5kZWZpbmVkXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29ubmVjdHMgdGhlIHByb3h5IHRyYW5zcG9ydC5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZTx2b2lkPn0gLSBSZXNvbHZlcyB3aGVuIGNvbm5lY3RlZC5cbiAgICAgKi9cbiAgICBhc3luYyBjb25uZWN0KCkgeyBhd2FpdCB0aGlzLnNoYXJlZFRyYW5zYWN0aW9uQ2xpZW50LmNvbm5lY3RlZCgpIH1cbiAgICAvKipcbiAgICAgKiBDbG9zZXMgb25seSB0aGUgcHJveHkgdHJhbnNwb3J0LlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlPHZvaWQ+fSAtIFJlc29sdmVzIHdoZW4gY2xvc2VkLlxuICAgICAqL1xuICAgIGFzeW5jIF9jbG9zZSgpIHsgYXdhaXQgdGhpcy5zaGFyZWRUcmFuc2FjdGlvbkNsaWVudC5jbG9zZSgpIH1cbiAgICAvKipcbiAgICAgKiBLZWVwcyBhIGJyb2tlciBwcm94eSB0cmFuc3BvcnQgYWxpdmUgYWNyb3NzIGxvZ2ljYWwgTXlTUUwgY2hlY2tvdXRzLlxuICAgICAqIFBhcmVudCBUZXN0UnVubmVyIG93bnMgcGh5c2ljYWwgc2Vzc2lvbiBjbGVhbnVwIGFuZCByb2xsYmFjay5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZTx2b2lkPn0gLSBSZXNvbHZlcyB3aXRob3V0IGNsb3NpbmcgdGhlIHRyYW5zcG9ydC5cbiAgICAgKi9cbiAgICBhc3luYyBjbGVhbnVwU2Vzc2lvblN0YXRlQWZ0ZXJDaGVja291dCgpIHt9XG4gICAgLyoqXG4gICAgICogUm91dGVzIGEgcGh5c2ljYWwgcXVlcnkuXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IHNxbCAtIFNRTCBzdGF0ZW1lbnQuXG4gICAgICogQHJldHVybnMge1Byb21pc2U8aW1wb3J0KFwiLi4vZGF0YWJhc2UvZHJpdmVycy9iYXNlLmpzXCIpLlF1ZXJ5UmVzdWx0VHlwZT59IC0gUm93cy5cbiAgICAgKi9cbiAgICBhc3luYyBfcXVlcnlBY3R1YWwoc3FsKSB7IHJldHVybiBhd2FpdCB0aGlzLnNoYXJlZFRyYW5zYWN0aW9uQ2xpZW50LmNhbGwoXCJfcXVlcnlBY3R1YWxcIiwgW3NxbF0pIH1cbiAgICAvKipcbiAgICAgKiBSb3V0ZXMgYW4gYWZmZWN0ZWQtcm93IHF1ZXJ5LlxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBzcWwgLSBTUUwgc3RhdGVtZW50LlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlPG51bWJlcj59IC0gQWZmZWN0ZWQgcm93cy5cbiAgICAgKi9cbiAgICBhc3luYyBfYWZmZWN0ZWRSb3dzQWN0dWFsKHNxbCkgeyByZXR1cm4gYXdhaXQgdGhpcy5zaGFyZWRUcmFuc2FjdGlvbkNsaWVudC5jYWxsKFwiX2FmZmVjdGVkUm93c0FjdHVhbFwiLCBbc3FsXSkgfVxuXG4gICAgLyoqXG4gICAgICogU3RhcnRzIGEgY2hpbGQgdHJhbnNhY3Rpb24gYXMgYSBwYXJlbnQgc2F2ZXBvaW50LlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlPHZvaWQ+fSAtIFJlc29sdmVzIHdoZW4gc3RhcnRlZC5cbiAgICAgKi9cbiAgICBhc3luYyBfc3RhcnRUcmFuc2FjdGlvbkFjdGlvbigpIHtcbiAgICAgIHRoaXMuc2hhcmVkVHJhbnNhY3Rpb25Sb290U2F2ZVBvaW50ID0gdGhpcy5nZW5lcmF0ZVNhdmVQb2ludE5hbWUoKVxuICAgICAgYXdhaXQgdGhpcy5zaGFyZWRUcmFuc2FjdGlvbkNsaWVudC5jYWxsKFwicm9vdFRyYW5zYWN0aW9uU3RhcnRcIiwgW3RoaXMuc2hhcmVkVHJhbnNhY3Rpb25Sb290U2F2ZVBvaW50XSlcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZWxlYXNlcyB0aGUgY2hpbGQgdHJhbnNhY3Rpb24gc2F2ZXBvaW50LlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlPHZvaWQ+fSAtIFJlc29sdmVzIHdoZW4gcmVsZWFzZWQuXG4gICAgICovXG4gICAgYXN5bmMgX2NvbW1pdFRyYW5zYWN0aW9uQWN0aW9uKCkge1xuICAgICAgaWYgKCF0aGlzLnNoYXJlZFRyYW5zYWN0aW9uUm9vdFNhdmVQb2ludCkgdGhyb3cgbmV3IEVycm9yKFwiU2hhcmVkIHRyYW5zYWN0aW9uIHByb3h5IGhhcyBubyByb290IHNhdmVwb2ludFwiKVxuICAgICAgYXdhaXQgdGhpcy5zaGFyZWRUcmFuc2FjdGlvbkNsaWVudC5jYWxsKFwicm9vdFRyYW5zYWN0aW9uUmVsZWFzZVwiLCBbdGhpcy5zaGFyZWRUcmFuc2FjdGlvblJvb3RTYXZlUG9pbnRdKVxuICAgICAgdGhpcy5zaGFyZWRUcmFuc2FjdGlvblJvb3RTYXZlUG9pbnQgPSB1bmRlZmluZWRcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSb2xscyBiYWNrIHRoZSBjaGlsZCB0cmFuc2FjdGlvbiBzYXZlcG9pbnQuXG4gICAgICogQHJldHVybnMge1Byb21pc2U8dm9pZD59IC0gUmVzb2x2ZXMgd2hlbiByb2xsZWQgYmFjay5cbiAgICAgKi9cbiAgICBhc3luYyBfcm9sbGJhY2tUcmFuc2FjdGlvbkFjdGlvbigpIHtcbiAgICAgIGlmICghdGhpcy5zaGFyZWRUcmFuc2FjdGlvblJvb3RTYXZlUG9pbnQpIHRocm93IG5ldyBFcnJvcihcIlNoYXJlZCB0cmFuc2FjdGlvbiBwcm94eSBoYXMgbm8gcm9vdCBzYXZlcG9pbnRcIilcbiAgICAgIGF3YWl0IHRoaXMuc2hhcmVkVHJhbnNhY3Rpb25DbGllbnQuY2FsbChcInJvb3RUcmFuc2FjdGlvblJvbGxiYWNrXCIsIFt0aGlzLnNoYXJlZFRyYW5zYWN0aW9uUm9vdFNhdmVQb2ludF0pXG4gICAgICB0aGlzLnNoYXJlZFRyYW5zYWN0aW9uUm9vdFNhdmVQb2ludCA9IHVuZGVmaW5lZFxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEVzY2FwZXMgYSBsb2NhbCBTUUwgdmFsdWUuXG4gICAgICogQHBhcmFtIHtSZXR1cm5UeXBlPHR5cGVvZiBKU09OLnBhcnNlPn0gdmFsdWUgLSBTUUwgdmFsdWUuXG4gICAgICogQHJldHVybnMge1JldHVyblR5cGU8dHlwZW9mIEpTT04ucGFyc2U+fSAtIEVzY2FwZWQgdmFsdWUuXG4gICAgICovXG4gICAgZXNjYXBlKHZhbHVlKSB7XG4gICAgICBpZiAodGhpcy5nZXRUeXBlKCkgIT09IFwicGdzcWxcIikgcmV0dXJuIHN1cGVyLmVzY2FwZSh2YWx1ZSlcbiAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09IFwibnVtYmVyXCIpIHJldHVybiB2YWx1ZVxuICAgICAgY29uc3QgZXNjYXBlZCA9IHBnRXNjYXBlTGl0ZXJhbCh0aGlzLl9jb252ZXJ0VmFsdWUodmFsdWUpKVxuICAgICAgcmV0dXJuIGVzY2FwZWQuc2xpY2UoMSwgLTEpXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUXVvdGVzIGEgbG9jYWwgU1FMIHZhbHVlLlxuICAgICAqIEBwYXJhbSB7UmV0dXJuVHlwZTx0eXBlb2YgSlNPTi5wYXJzZT59IHZhbHVlIC0gU1FMIHZhbHVlLlxuICAgICAqIEByZXR1cm5zIHtzdHJpbmcgfCBudW1iZXJ9IC0gUXVvdGVkIHZhbHVlLlxuICAgICAqL1xuICAgIHF1b3RlKHZhbHVlKSB7XG4gICAgICBpZiAodGhpcy5nZXRUeXBlKCkgIT09IFwicGdzcWxcIikgcmV0dXJuIHN1cGVyLnF1b3RlKHZhbHVlKVxuICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gXCJudW1iZXJcIikgcmV0dXJuIHZhbHVlXG4gICAgICByZXR1cm4gcGdFc2NhcGVMaXRlcmFsKHRoaXMuX2NvbnZlcnRWYWx1ZSh2YWx1ZSkpXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU3RyZWFtcyBicm9rZXJlZCByb3dzIHRocm91Z2ggdGhlIGRyaXZlcidzIGJ1ZmZlcmVkIGZhbGxiYWNrLlxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBzcWwgLSBTUUwgc3RhdGVtZW50LlxuICAgICAqIEBwYXJhbSB7aW1wb3J0KFwiLi4vZGF0YWJhc2UvZHJpdmVycy9iYXNlLmpzXCIpLlF1ZXJ5T3B0aW9uc30gW29wdGlvbnNdIC0gUXVlcnkgb3B0aW9ucy5cbiAgICAgKiBAeWllbGRzIHtSZWNvcmQ8c3RyaW5nLCBSZXR1cm5UeXBlPHR5cGVvZiBKU09OLnBhcnNlPj59IC0gUmVzdWx0IHJvd3MuXG4gICAgICovXG4gICAgYXN5bmMgKnF1ZXJ5U3RyZWFtKHNxbCwgb3B0aW9ucyA9IHt9KSB7XG4gICAgICBjb25zdCByb3dzID0gYXdhaXQgdGhpcy5xdWVyeShzcWwsIG9wdGlvbnMpXG4gICAgICBmb3IgKGNvbnN0IHJvdyBvZiByb3dzKSB5aWVsZCByb3dcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBLZWVwcyBzdHJ1Y3R1cmUgU1FMIG9uIG5vcm1hbCBicm9rZXJlZCBzdGF0ZW1lbnRzLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlPGJvb2xlYW4+fSAtIEFsd2F5cyBmYWxzZS5cbiAgICAgKi9cbiAgICBhc3luYyBleGVjU3RydWN0dXJlU2NyaXB0KCkgeyByZXR1cm4gZmFsc2UgfVxuICB9XG5cbiAgcmV0dXJuIG5ldyBTaGFyZWRUcmFuc2FjdGlvblByb3h5RHJpdmVyKClcbn1cbiJdfQ==
238
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkLXRyYW5zYWN0aW9uLXByb3h5LWRyaXZlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90ZXN0aW5nL3NoYXJlZC10cmFuc2FjdGlvbi1wcm94eS1kcml2ZXIuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0tBQStLO0FBRS9LLFlBQVk7QUFFWixPQUFPLDZCQUE2QixNQUFNLHVDQUF1QyxDQUFBO0FBQ2pGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBRXBELE1BQU0sQ0FBQyxNQUFNLDZCQUE2QixHQUFHLDBDQUEwQyxDQUFBO0FBQ3ZGLE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLGdDQUFnQyxDQUFBO0FBRXhFLGtFQUFrRTtBQUNsRSxNQUFNLHFCQUFxQixHQUFHLElBQUksaUJBQWlCLEVBQUUsQ0FBQTtBQUVyRDs7O0dBR0c7QUFDSCxTQUFTLG1DQUFtQztJQUMxQyxNQUFNLGdCQUFnQixHQUFHLHFCQUFxQixDQUFDLFFBQVEsRUFBRSxDQUFBO0lBQ3pELElBQUksZ0JBQWdCO1FBQUUsT0FBTyxnQkFBZ0IsQ0FBQTtJQUM3QyxJQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsd0JBQXdCLENBQUMsS0FBSyxHQUFHO1FBQUUsT0FBTyxTQUFTLENBQUE7SUFDbkUsTUFBTSxVQUFVLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyw2QkFBNkIsQ0FBQyxDQUFBO0lBQzdELElBQUksQ0FBQyxVQUFVO1FBQUUsT0FBTyxTQUFTLENBQUE7SUFDakMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLFdBQVcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFBO0FBQzFFLENBQUM7QUFFRDs7Ozs7O0dBTUc7QUFDSCxNQUFNLFVBQVUsb0NBQW9DLENBQUMsTUFBTSxFQUFFLFFBQVE7SUFDbkUsT0FBTyxxQkFBcUIs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RUFBRTtZQUNsQyxNQUFNLElBQUksR0FBRyxNQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxDQUFBO1lBQzNDLEtBQUssTUFBTSxHQUFHLElBQUksSUFBSTtnQkFBRSxNQUFNLEdBQUcsQ0FBQTtRQUNuQyxDQUFDO1FBRUQ7OztXQUdHO1FBQ0gsS0FBSyxDQUFDLG1CQUFtQixLQUFLLE9BQU8sS0FBSyxDQUFBLENBQUMsQ0FBQztLQUM3QztJQUVELE9BQU8sSUFBSSw0QkFBNEIsRUFBRSxDQUFBO0FBQzNDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiogQHR5cGVkZWYge3thZGRyZXNzPzogc3RyaW5nLCBhbGxvd0R5bmFtaWNJZGVudGl0aWVzPzogYm9vbGVhbiwgY2FwYWJpbGl0eT86IHN0cmluZywgZGF0YWJhc2VJZGVudGlmaWVycz86IHN0cmluZ1tdLCBleHBlY3RlZDogYm9vbGVhbn19IFNoYXJlZFRyYW5zYWN0aW9uQnJva2VySm9iQ29uZmlnICovXG5cbi8vIEB0cy1jaGVja1xuXG5pbXBvcnQgU2hhcmVkVHJhbnNhY3Rpb25Ccm9rZXJDbGllbnQgZnJvbSBcIi4vc2hhcmVkLXRyYW5zYWN0aW9uLWJyb2tlci1jbGllbnQuanNcIlxuaW1wb3J0IHsgQXN5bmNMb2NhbFN0b3JhZ2UgfSBmcm9tIFwibm9kZTphc3luY19ob29rc1wiXG5cbmV4cG9ydCBjb25zdCBTSEFSRURfVFJBTlNBQ1RJT05fQlJPS0VSX0VOViA9IFwiVkVMT0NJT1VTX1RFU1RfU0hBUkVEX1RSQU5TQUNUSU9OX0JST0tFUlwiXG5leHBvcnQgY29uc3QgQkFDS0dST1VORF9KT0JfQ0hJTERfRU5WID0gXCJWRUxPQ0lPVVNfQkFDS0dST1VORF9KT0JfQ0hJTERcIlxuXG4vKiogQHR5cGUge0FzeW5jTG9jYWxTdG9yYWdlPFNoYXJlZFRyYW5zYWN0aW9uQnJva2VySm9iQ29uZmlnPn0gKi9cbmNvbnN0IHBvb2xlZEpvYkJyb2tlckNvbmZpZyA9IG5ldyBBc3luY0xvY2FsU3RvcmFnZSgpXG5cbi8qKlxuICogUmV0dXJucyB0aGUgYWN0aXZlIGxpdmUgYnJva2VyIGNvbmZpZ3VyYXRpb24gd2l0aG91dCB2YWxpZGF0aW5nIG9uZSBkYXRhYmFzZSByb3V0ZS5cbiAqIEByZXR1cm5zIHtTaGFyZWRUcmFuc2FjdGlvbkJyb2tlckpvYkNvbmZpZyB8IHVuZGVmaW5lZH0gLSBBY3RpdmUgbGl2ZSBvciBjaGlsZCBjb25maWd1cmF0aW9uLlxuICovXG5mdW5jdGlvbiBhY3RpdmVTaGFyZWRUcmFuc2FjdGlvbkJyb2tlckNvbmZpZygpIHtcbiAgY29uc3QgY29udGV4dHVhbENvbmZpZyA9IHBvb2xlZEpvYkJyb2tlckNvbmZpZy5nZXRTdG9yZSgpXG4gIGlmIChjb250ZXh0dWFsQ29uZmlnKSByZXR1cm4gY29udGV4dHVhbENvbmZpZ1xuICBpZiAocHJvY2Vzcy5lbnZbQkFDS0dST1VORF9KT0JfQ0hJTERfRU5WXSAhPT0gXCIxXCIpIHJldHVybiB1bmRlZmluZWRcbiAgY29uc3Qgc2VyaWFsaXplZCA9IHByb2Nlc3MuZW52W1NIQVJFRF9UUkFOU0FDVElPTl9CUk9LRVJfRU5WXVxuICBpZiAoIXNlcmlhbGl6ZWQpIHJldHVybiB1bmRlZmluZWRcbiAgcmV0dXJuIEpTT04ucGFyc2UoQnVmZmVyLmZyb20oc2VyaWFsaXplZCwgXCJiYXNlNjR1cmxcIikudG9TdHJpbmcoXCJ1dGY4XCIpKVxufVxuXG4vKipcbiAqIFJ1bnMgb25lIHBvb2xlZCBqb2Igd2l0aCBkaXNwYXRjaC10aW1lIGJyb2tlciBjb25maWd1cmF0aW9uLlxuICogQHRlbXBsYXRlIFRcbiAqIEBwYXJhbSB7U2hhcmVkVHJhbnNhY3Rpb25Ccm9rZXJKb2JDb25maWd9IGNvbmZpZyAtIFBlci1qb2IgYnJva2VyIG1vZGUgYW5kIGNvb3JkaW5hdGVzLlxuICogQHBhcmFtIHsoKSA9PiBUfSBjYWxsYmFjayAtIEpvYiBjYWxsYmFjay5cbiAqIEByZXR1cm5zIHtUfSAtIENhbGxiYWNrIHJlc3VsdC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJ1bldpdGhTaGFyZWRUcmFuc2FjdGlvbkJyb2tlckNvbmZpZyhjb25maWcsIGNhbGxiYWNrKSB7XG4gIHJldHVybiBwb29sZWRKb2JCcm9rZXJDb25maWcucnVuKGNvbmZpZywgY2FsbGJhY2spXG59XG5cbi8qKlxuICogQ2hlY2tzIHdoZXRoZXIgdGhlIGN1cnJlbnQgbGl2ZSBqb2luIHNlbGVjdHMgb25lIGV4YWN0IHNlc3Npb24gY2FwYWJpbGl0eS5cbiAqIEBwYXJhbSB7e2FkZHJlc3M6IHN0cmluZywgY2FwYWJpbGl0eTogc3RyaW5nfX0gaWRlbnRpdHkgLSBTZXNzaW9uIGNvbnRyb2wtbWVzc2FnZSBpZGVudGl0eS5cbiAqIEByZXR1cm5zIHtib29sZWFufSAtIFdoZXRoZXIgdGhpcyBhc3luYyBjb250ZXh0IGJlbG9uZ3MgdG8gdGhhdCBzZXNzaW9uLlxuICovXG5leHBvcnQgZnVuY3Rpb24gc2hhcmVkVHJhbnNhY3Rpb25Ccm9rZXJDb250ZXh0TWF0Y2hlcyhpZGVudGl0eSkge1xuICBjb25zdCBjb25maWcgPSBwb29sZWRKb2JCcm9rZXJDb25maWcuZ2V0U3RvcmUoKVxuICByZXR1cm4gY29uZmlnPy5leHBlY3RlZCA9PT0gdHJ1ZSAmJiBjb25maWcuYWRkcmVzcyA9PT0gaWRlbnRpdHkuYWRkcmVzcyAmJiBjb25maWcuY2FwYWJpbGl0eSA9PT0gaWRlbnRpdHkuY2FwYWJpbGl0eVxufVxuXG4vKipcbiAqIFByZXNlcnZlcyBsZWdhY3kgcmVhbCB0ZW5hbnQgY29ubmVjdGlvbnMgb21pdHRlZCBieSBhdXRvbWF0aWMgVGVzdFJ1bm5lciBtb2RlLlxuICogRXhwbGljaXQgZHluYW1pYyBzZXNzaW9ucyBuZXZlciBwZXJtaXQgdGhpcyBmYWxsYmFjay5cbiAqIEBwYXJhbSB7c3RyaW5nfSBkYXRhYmFzZUlkZW50aWZpZXIgLSBMb2dpY2FsIGRhdGFiYXNlIGlkZW50aWZpZXIuXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gLSBXaGV0aGVyIGFuIG9taXR0ZWQgYXV0b21hdGljIHJvdXRlIHN0YXlzIGluZGVwZW5kZW50LlxuICovXG5leHBvcnQgZnVuY3Rpb24gYXV0b21hdGljU2hhcmVkVHJhbnNhY3Rpb25Ccm9rZXJPbWl0cyhkYXRhYmFzZUlkZW50aWZpZXIpIHtcbiAgY29uc3QgY29uZmlnID0gYWN0aXZlU2hhcmVkVHJhbnNhY3Rpb25Ccm9rZXJDb25maWcoKVxuICByZXR1cm4gQm9vbGVhbihcbiAgICBjb25maWc/LmV4cGVjdGVkID09PSB0cnVlICYmXG4gICAgIWNvbmZpZy5hbGxvd0R5bmFtaWNJZGVudGl0aWVzICYmXG4gICAgdHlwZW9mIGNvbmZpZy5hZGRyZXNzID09PSBcInN0cmluZ1wiICYmXG4gICAgdHlwZW9mIGNvbmZpZy5jYXBhYmlsaXR5ID09PSBcInN0cmluZ1wiICYmXG4gICAgQXJyYXkuaXNBcnJheShjb25maWcuZGF0YWJhc2VJZGVudGlmaWVycykgJiZcbiAgICAhY29uZmlnLmRhdGFiYXNlSWRlbnRpZmllcnMuaW5jbHVkZXMoZGF0YWJhc2VJZGVudGlmaWVyKVxuICApXG59XG5cbi8qKlxuICogRXNjYXBlcyBhIFBvc3RncmVTUUwgbGl0ZXJhbCB3aXRob3V0IHJlcXVpcmluZyBhIGxpdmUgY2hpbGQgY29ubmVjdGlvbi5cbiAqIEBwYXJhbSB7UmV0dXJuVHlwZTx0eXBlb2YgSlNPTi5wYXJzZT59IHZhbHVlIC0gUG9zdGdyZVNRTCBsaXRlcmFsIHZhbHVlLlxuICogQHJldHVybnMge3N0cmluZ30gLSBRdW90ZWQgbGl0ZXJhbC5cbiAqL1xuZnVuY3Rpb24gcGdFc2NhcGVMaXRlcmFsKHZhbHVlKSB7XG4gIGNvbnN0IHN0cmluZyA9IHR5cGVvZiB2YWx1ZSA9PT0gXCJzdHJpbmdcIiA/IHZhbHVlIDogU3RyaW5nKHZhbHVlKVxuICBsZXQgZXNjYXBlZCA9IFwiJ1wiXG4gIGxldCBoYXNCYWNrc2xhc2ggPSBmYWxzZVxuXG4gIGZvciAoY29uc3QgY2hhcmFjdGVyIG9mIHN0cmluZykge1xuICAgIGlmIChjaGFyYWN0ZXIgPT09IFwiJ1wiKSBlc2NhcGVkICs9IGNoYXJhY3RlclxuICAgIGlmIChjaGFyYWN0ZXIgPT09IFwiXFxcXFwiKSB7XG4gICAgICBlc2NhcGVkICs9IGNoYXJhY3RlclxuICAgICAgaGFzQmFja3NsYXNoID0gdHJ1ZVxuICAgIH1cbiAgICBlc2NhcGVkICs9IGNoYXJhY3RlclxuICB9XG5cbiAgZXNjYXBlZCArPSBcIidcIlxuICByZXR1cm4gaGFzQmFja3NsYXNoID8gYCBFJHtlc2NhcGVkfWAgOiBlc2NhcGVkXG59XG5cbi8qKlxuICogUGFyc2VzIHRoZSB0ZXN0LXJ1bm5lci1vd25lZCBjaGlsZCB0cmFuc3BvcnQgY29uZmlndXJhdGlvbiB3aGVuIHRoaXMgbG9naWNhbFxuICogZGF0YWJhc2UgaXMgcmVnaXN0ZXJlZCBmb3IgdGhlIGFjdGl2ZSBhdHRlbXB0LlxuICogQHBhcmFtIHtzdHJpbmd9IGRhdGFiYXNlSWRlbnRpZmllciAtIExvZ2ljYWwgZGF0YWJhc2UgaWRlbnRpZmllci5cbiAqIEByZXR1cm5zIHt7YWRkcmVzczogc3RyaW5nLCBhbGxvd0R5bmFtaWNJZGVudGl0aWVzPzogYm9vbGVhbiwgY2FwYWJpbGl0eTogc3RyaW5nfSB8IHVuZGVmaW5lZH0gLSBCcm9rZXIgY29vcmRpbmF0ZXMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzaGFyZWRUcmFuc2FjdGlvbkJyb2tlckNvbmZpZyhkYXRhYmFzZUlkZW50aWZpZXIpIHtcbiAgY29uc3QgY29uZmlnID0gYWN0aXZlU2hhcmVkVHJhbnNhY3Rpb25Ccm9rZXJDb25maWcoKVxuICBpZiAoIWNvbmZpZykgcmV0dXJuIHVuZGVmaW5lZFxuICByZXR1cm4gdmFsaWRhdGVkQnJva2VyQ29uZmlnKGNvbmZpZywgZGF0YWJhc2VJZGVudGlmaWVyKVxufVxuXG4vKipcbiAqIFZhbGlkYXRlcyBkaXNwYXRjaC10aW1lIGJyb2tlciBjb25maWd1cmF0aW9uIGFuZCBmYWlscyBjbG9zZWQgd2hlbiBleHBlY3RlZC5cbiAqIEBwYXJhbSB7U2hhcmVkVHJhbnNhY3Rpb25Ccm9rZXJKb2JDb25maWd9IGNvbmZpZyAtIENhbmRpZGF0ZSBjb25maWd1cmF0aW9uLlxuICogQHBhcmFtIHtzdHJpbmd9IGRhdGFiYXNlSWRlbnRpZmllciAtIExvZ2ljYWwgZGF0YWJhc2UgaWRlbnRpZmllci5cbiAqIEByZXR1cm5zIHt7YWRkcmVzczogc3RyaW5nLCBhbGxvd0R5bmFtaWNJZGVudGl0aWVzPzogYm9vbGVhbiwgY2FwYWJpbGl0eTogc3RyaW5nfSB8IHVuZGVmaW5lZH0gLSBCcm9rZXIgY29vcmRpbmF0ZXMuXG4gKi9cbmZ1bmN0aW9uIHZhbGlkYXRlZEJyb2tlckNvbmZpZyhjb25maWcsIGRhdGFiYXNlSWRlbnRpZmllcikge1xuICBpZiAoY29uZmlnLmV4cGVjdGVkICYmICghY29uZmlnLmFkZHJlc3MgfHwgIWNvbmZpZy5jYXBhYmlsaXR5IHx8ICFjb25maWcuZGF0YWJhc2VJZGVudGlmaWVycykpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJUcmFuc2FjdGlvbmFsIHBvb2xlZCBqb2IgZXhwZWN0ZWQgc2hhcmVkIHRyYW5zYWN0aW9uIGJyb2tlciBjb29yZGluYXRlc1wiKVxuICB9XG4gIGlmICghY29uZmlnLmV4cGVjdGVkKSByZXR1cm4gdW5kZWZpbmVkXG4gIGlmICh0eXBlb2YgY29uZmlnLmFkZHJlc3MgIT09IFwic3RyaW5nXCIgfHwgdHlwZW9mIGNvbmZpZy5jYXBhYmlsaXR5ICE9PSBcInN0cmluZ1wiIHx8ICFBcnJheS5pc0FycmF5KGNvbmZpZy5kYXRhYmFzZUlkZW50aWZpZXJzKSkge1xuICAgIHRocm93IG5ldyBFcnJvcihcIkludmFsaWQgc2hhcmVkIHRyYW5zYWN0aW9uIGJyb2tlciBjaGlsZCBjb25maWd1cmF0aW9uXCIpXG4gIH1cbiAgaWYgKCFjb25maWcuYWxsb3dEeW5hbWljSWRlbnRpdGllcyAmJiAhY29uZmlnLmRhdGFiYXNlSWRlbnRpZmllcnMuaW5jbHVkZXMoZGF0YWJhc2VJZGVudGlmaWVyKSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgVHJhbnNhY3Rpb25hbCBwb29sZWQgam9iIGV4cGVjdGVkIGJyb2tlciBkYXRhYmFzZSBpZGVudGlmaWVyOiAke2RhdGFiYXNlSWRlbnRpZmllcn1gKVxuICB9XG5cbiAgaWYgKGNvbmZpZy5hbGxvd0R5bmFtaWNJZGVudGl0aWVzKSB7XG4gICAgcmV0dXJuIHthZGRyZXNzOiBjb25maWcuYWRkcmVzcywgYWxsb3dEeW5hbWljSWRlbnRpdGllczogdHJ1ZSwgY2FwYWJpbGl0eTogY29uZmlnLmNhcGFiaWxpdHl9XG4gIH1cbiAgcmV0dXJuIHthZGRyZXNzOiBjb25maWcuYWRkcmVzcywgY2FwYWJpbGl0eTogY29uZmlnLmNhcGFiaWxpdHl9XG59XG5cbi8qKlxuICogQ3JlYXRlcyBhIGNvbmNyZXRlLWRyaXZlciBzdWJjbGFzcyB0aGF0IHJldGFpbnMgYWxsIGxvY2FsIFNRTC9xdWVyeS9tb2RlbFxuICogYnVpbGRlcnMgd2hpbGUgZm9yd2FyZGluZyBvbmx5IHBoeXNpY2FsIGNvbm5lY3Rpb24gYWN0aW9ucyB0byB0aGUgcGFyZW50LlxuICogQHBhcmFtIHt0eXBlb2YgaW1wb3J0KFwiLi4vZGF0YWJhc2UvZHJpdmVycy9iYXNlLmpzXCIpLmRlZmF1bHR9IERyaXZlckNsYXNzIC0gQ29uZmlndXJlZCBjb25jcmV0ZSBkcml2ZXIuXG4gKiBAcGFyYW0ge2ltcG9ydChcIi4uL2NvbmZpZ3VyYXRpb24tdHlwZXMuanNcIikuRGF0YWJhc2VDb25maWd1cmF0aW9uVHlwZX0gY29uZmlnIC0gRGF0YWJhc2UgY29uZmlndXJhdGlvbi5cbiAqIEBwYXJhbSB7aW1wb3J0KFwiLi4vY29uZmlndXJhdGlvbi5qc1wiKS5kZWZhdWx0fSBjb25maWd1cmF0aW9uIC0gQ2hpbGQgY29uZmlndXJhdGlvbi5cbiAqIEBwYXJhbSB7c3RyaW5nfSBkYXRhYmFzZUlkZW50aWZpZXIgLSBMb2dpY2FsIGlkZW50aWZpZXIuXG4gKiBAcGFyYW0ge3thZGRyZXNzOiBzdHJpbmcsIGNhcGFiaWxpdHk6IHN0cmluZywgcmV1c2VLZXk/OiBzdHJpbmd9fSBicm9rZXJDb25maWcgLSBCcm9rZXIgY29vcmRpbmF0ZXMuXG4gKiBAcmV0dXJucyB7aW1wb3J0KFwiLi4vZGF0YWJhc2UvZHJpdmVycy9iYXNlLmpzXCIpLmRlZmF1bHR9IC0gVW5jb25uZWN0ZWQgcGh5c2ljYWwgcHJveHkuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVTaGFyZWRUcmFuc2FjdGlvblByb3h5RHJpdmVyKERyaXZlckNsYXNzLCBjb25maWcsIGNvbmZpZ3VyYXRpb24sIGRhdGFiYXNlSWRlbnRpZmllciwgYnJva2VyQ29uZmlnKSB7XG4gIGNsYXNzIFNoYXJlZFRyYW5zYWN0aW9uUHJveHlEcml2ZXIgZXh0ZW5kcyBEcml2ZXJDbGFzcyB7XG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICBzdXBlcihjb25maWcsIGNvbmZpZ3VyYXRpb24pXG4gICAgICB0aGlzLnNoYXJlZFRyYW5zYWN0aW9uQ2xpZW50ID0gbmV3IFNoYXJlZFRyYW5zYWN0aW9uQnJva2VyQ2xpZW50KHsuLi5icm9rZXJDb25maWcsIGRhdGFiYXNlSWRlbnRpZmllcn0pXG4gICAgICAvKiogQHR5cGUge3N0cmluZyB8IHVuZGVmaW5lZH0gKi9cbiAgICAgIHRoaXMuc2hhcmVkVHJhbnNhY3Rpb25Sb290U2F2ZVBvaW50ID0gdW5kZWZpbmVkXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29ubmVjdHMgdGhlIHByb3h5IHRyYW5zcG9ydC5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZTx2b2lkPn0gLSBSZXNvbHZlcyB3aGVuIGNvbm5lY3RlZC5cbiAgICAgKi9cbiAgICBhc3luYyBjb25uZWN0KCkgeyBhd2FpdCB0aGlzLnNoYXJlZFRyYW5zYWN0aW9uQ2xpZW50LmNvbm5lY3RlZCgpIH1cbiAgICAvKipcbiAgICAgKiBDbG9zZXMgb25seSB0aGUgcHJveHkgdHJhbnNwb3J0LlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlPHZvaWQ+fSAtIFJlc29sdmVzIHdoZW4gY2xvc2VkLlxuICAgICAqL1xuICAgIGFzeW5jIF9jbG9zZSgpIHsgYXdhaXQgdGhpcy5zaGFyZWRUcmFuc2FjdGlvbkNsaWVudC5jbG9zZSgpIH1cbiAgICAvKipcbiAgICAgKiBLZWVwcyBhIGJyb2tlciBwcm94eSB0cmFuc3BvcnQgYWxpdmUgYWNyb3NzIGxvZ2ljYWwgTXlTUUwgY2hlY2tvdXRzLlxuICAgICAqIFBhcmVudCBUZXN0UnVubmVyIG93bnMgcGh5c2ljYWwgc2Vzc2lvbiBjbGVhbnVwIGFuZCByb2xsYmFjay5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZTx2b2lkPn0gLSBSZXNvbHZlcyB3aXRob3V0IGNsb3NpbmcgdGhlIHRyYW5zcG9ydC5cbiAgICAgKi9cbiAgICBhc3luYyBjbGVhbnVwU2Vzc2lvblN0YXRlQWZ0ZXJDaGVja291dCgpIHt9XG4gICAgLyoqXG4gICAgICogUm91dGVzIGEgcGh5c2ljYWwgcXVlcnkuXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IHNxbCAtIFNRTCBzdGF0ZW1lbnQuXG4gICAgICogQHJldHVybnMge1Byb21pc2U8aW1wb3J0KFwiLi4vZGF0YWJhc2UvZHJpdmVycy9iYXNlLmpzXCIpLlF1ZXJ5UmVzdWx0VHlwZT59IC0gUm93cy5cbiAgICAgKi9cbiAgICBhc3luYyBfcXVlcnlBY3R1YWwoc3FsKSB7IHJldHVybiBhd2FpdCB0aGlzLnNoYXJlZFRyYW5zYWN0aW9uQ2xpZW50LmNhbGwoXCJfcXVlcnlBY3R1YWxcIiwgW3NxbF0pIH1cbiAgICAvKipcbiAgICAgKiBLZWVwcyBNUy1TUUwgc2Vzc2lvbi1vd25lZCBhZHZpc29yeSBsb2NrcyBvbiB0aGUgcGFyZW50IGJyb2tlciBzZXNzaW9uLlxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBzcWwgLSBBZHZpc29yeS1sb2NrIFNRTCBzdGF0ZW1lbnQuXG4gICAgICogQHJldHVybnMge1Byb21pc2U8aW1wb3J0KFwiLi4vZGF0YWJhc2UvZHJpdmVycy9iYXNlLmpzXCIpLlF1ZXJ5UmVzdWx0VHlwZT59IC0gUmVzdWx0IHJvd3MuXG4gICAgICovXG4gICAgYXN5bmMgX2Fkdmlzb3J5TG9ja1F1ZXJ5KHNxbCkgeyByZXR1cm4gYXdhaXQgdGhpcy5zaGFyZWRUcmFuc2FjdGlvbkNsaWVudC5jYWxsKFwiX3F1ZXJ5QWN0dWFsXCIsIFtzcWxdKSB9XG4gICAgLyoqXG4gICAgICogUm91dGVzIGFuIGFmZmVjdGVkLXJvdyBxdWVyeS5cbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gc3FsIC0gU1FMIHN0YXRlbWVudC5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZTxudW1iZXI+fSAtIEFmZmVjdGVkIHJvd3MuXG4gICAgICovXG4gICAgYXN5bmMgX2FmZmVjdGVkUm93c0FjdHVhbChzcWwpIHsgcmV0dXJuIGF3YWl0IHRoaXMuc2hhcmVkVHJhbnNhY3Rpb25DbGllbnQuY2FsbChcIl9hZmZlY3RlZFJvd3NBY3R1YWxcIiwgW3NxbF0pIH1cblxuICAgIC8qKlxuICAgICAqIFN0YXJ0cyBhIGNoaWxkIHRyYW5zYWN0aW9uIGFzIGEgcGFyZW50IHNhdmVwb2ludC5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZTx2b2lkPn0gLSBSZXNvbHZlcyB3aGVuIHN0YXJ0ZWQuXG4gICAgICovXG4gICAgYXN5bmMgX3N0YXJ0VHJhbnNhY3Rpb25BY3Rpb24oKSB7XG4gICAgICB0aGlzLnNoYXJlZFRyYW5zYWN0aW9uUm9vdFNhdmVQb2ludCA9IHRoaXMuZ2VuZXJhdGVTYXZlUG9pbnROYW1lKClcbiAgICAgIGF3YWl0IHRoaXMuc2hhcmVkVHJhbnNhY3Rpb25DbGllbnQuY2FsbChcInJvb3RUcmFuc2FjdGlvblN0YXJ0XCIsIFt0aGlzLnNoYXJlZFRyYW5zYWN0aW9uUm9vdFNhdmVQb2ludF0pXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVsZWFzZXMgdGhlIGNoaWxkIHRyYW5zYWN0aW9uIHNhdmVwb2ludC5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZTx2b2lkPn0gLSBSZXNvbHZlcyB3aGVuIHJlbGVhc2VkLlxuICAgICAqL1xuICAgIGFzeW5jIF9jb21taXRUcmFuc2FjdGlvbkFjdGlvbigpIHtcbiAgICAgIGlmICghdGhpcy5zaGFyZWRUcmFuc2FjdGlvblJvb3RTYXZlUG9pbnQpIHRocm93IG5ldyBFcnJvcihcIlNoYXJlZCB0cmFuc2FjdGlvbiBwcm94eSBoYXMgbm8gcm9vdCBzYXZlcG9pbnRcIilcbiAgICAgIGF3YWl0IHRoaXMuc2hhcmVkVHJhbnNhY3Rpb25DbGllbnQuY2FsbChcInJvb3RUcmFuc2FjdGlvblJlbGVhc2VcIiwgW3RoaXMuc2hhcmVkVHJhbnNhY3Rpb25Sb290U2F2ZVBvaW50XSlcbiAgICAgIHRoaXMuc2hhcmVkVHJhbnNhY3Rpb25Sb290U2F2ZVBvaW50ID0gdW5kZWZpbmVkXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUm9sbHMgYmFjayB0aGUgY2hpbGQgdHJhbnNhY3Rpb24gc2F2ZXBvaW50LlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlPHZvaWQ+fSAtIFJlc29sdmVzIHdoZW4gcm9sbGVkIGJhY2suXG4gICAgICovXG4gICAgYXN5bmMgX3JvbGxiYWNrVHJhbnNhY3Rpb25BY3Rpb24oKSB7XG4gICAgICBpZiAoIXRoaXMuc2hhcmVkVHJhbnNhY3Rpb25Sb290U2F2ZVBvaW50KSB0aHJvdyBuZXcgRXJyb3IoXCJTaGFyZWQgdHJhbnNhY3Rpb24gcHJveHkgaGFzIG5vIHJvb3Qgc2F2ZXBvaW50XCIpXG4gICAgICBhd2FpdCB0aGlzLnNoYXJlZFRyYW5zYWN0aW9uQ2xpZW50LmNhbGwoXCJyb290VHJhbnNhY3Rpb25Sb2xsYmFja1wiLCBbdGhpcy5zaGFyZWRUcmFuc2FjdGlvblJvb3RTYXZlUG9pbnRdKVxuICAgICAgdGhpcy5zaGFyZWRUcmFuc2FjdGlvblJvb3RTYXZlUG9pbnQgPSB1bmRlZmluZWRcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBFc2NhcGVzIGEgbG9jYWwgU1FMIHZhbHVlLlxuICAgICAqIEBwYXJhbSB7UmV0dXJuVHlwZTx0eXBlb2YgSlNPTi5wYXJzZT59IHZhbHVlIC0gU1FMIHZhbHVlLlxuICAgICAqIEByZXR1cm5zIHtSZXR1cm5UeXBlPHR5cGVvZiBKU09OLnBhcnNlPn0gLSBFc2NhcGVkIHZhbHVlLlxuICAgICAqL1xuICAgIGVzY2FwZSh2YWx1ZSkge1xuICAgICAgaWYgKHRoaXMuZ2V0VHlwZSgpICE9PSBcInBnc3FsXCIpIHJldHVybiBzdXBlci5lc2NhcGUodmFsdWUpXG4gICAgICBpZiAodHlwZW9mIHZhbHVlID09PSBcIm51bWJlclwiKSByZXR1cm4gdmFsdWVcbiAgICAgIGNvbnN0IGVzY2FwZWQgPSBwZ0VzY2FwZUxpdGVyYWwodGhpcy5fY29udmVydFZhbHVlKHZhbHVlKSlcbiAgICAgIHJldHVybiBlc2NhcGVkLnNsaWNlKDEsIC0xKVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFF1b3RlcyBhIGxvY2FsIFNRTCB2YWx1ZS5cbiAgICAgKiBAcGFyYW0ge1JldHVyblR5cGU8dHlwZW9mIEpTT04ucGFyc2U+fSB2YWx1ZSAtIFNRTCB2YWx1ZS5cbiAgICAgKiBAcmV0dXJucyB7c3RyaW5nIHwgbnVtYmVyfSAtIFF1b3RlZCB2YWx1ZS5cbiAgICAgKi9cbiAgICBxdW90ZSh2YWx1ZSkge1xuICAgICAgaWYgKHRoaXMuZ2V0VHlwZSgpICE9PSBcInBnc3FsXCIpIHJldHVybiBzdXBlci5xdW90ZSh2YWx1ZSlcbiAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09IFwibnVtYmVyXCIpIHJldHVybiB2YWx1ZVxuICAgICAgcmV0dXJuIHBnRXNjYXBlTGl0ZXJhbCh0aGlzLl9jb252ZXJ0VmFsdWUodmFsdWUpKVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFN0cmVhbXMgYnJva2VyZWQgcm93cyB0aHJvdWdoIHRoZSBkcml2ZXIncyBidWZmZXJlZCBmYWxsYmFjay5cbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gc3FsIC0gU1FMIHN0YXRlbWVudC5cbiAgICAgKiBAcGFyYW0ge2ltcG9ydChcIi4uL2RhdGFiYXNlL2RyaXZlcnMvYmFzZS5qc1wiKS5RdWVyeU9wdGlvbnN9IFtvcHRpb25zXSAtIFF1ZXJ5IG9wdGlvbnMuXG4gICAgICogQHlpZWxkcyB7UmVjb3JkPHN0cmluZywgUmV0dXJuVHlwZTx0eXBlb2YgSlNPTi5wYXJzZT4+fSAtIFJlc3VsdCByb3dzLlxuICAgICAqL1xuICAgIGFzeW5jICpxdWVyeVN0cmVhbShzcWwsIG9wdGlvbnMgPSB7fSkge1xuICAgICAgY29uc3Qgcm93cyA9IGF3YWl0IHRoaXMucXVlcnkoc3FsLCBvcHRpb25zKVxuICAgICAgZm9yIChjb25zdCByb3cgb2Ygcm93cykgeWllbGQgcm93XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogS2VlcHMgc3RydWN0dXJlIFNRTCBvbiBub3JtYWwgYnJva2VyZWQgc3RhdGVtZW50cy5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZTxib29sZWFuPn0gLSBBbHdheXMgZmFsc2UuXG4gICAgICovXG4gICAgYXN5bmMgZXhlY1N0cnVjdHVyZVNjcmlwdCgpIHsgcmV0dXJuIGZhbHNlIH1cbiAgfVxuXG4gIHJldHVybiBuZXcgU2hhcmVkVHJhbnNhY3Rpb25Qcm94eURyaXZlcigpXG59XG4iXX0=
@@ -837,11 +837,16 @@ export default class TestRunner {
837
837
  error: ReturnType<typeof JSON.parse>;
838
838
  }): void;
839
839
  /**
840
- * Gets the raw ancestor setup failure for a package test.
840
+ * Gets the raw ancestor setup failure outcome for a package test.
841
841
  * @param {PackageTestDeclaration} test - Package test declaration.
842
- * @returns {ReturnType<typeof JSON.parse>} - Raw setup failure.
842
+ * @returns {{failed: false} | {failed: true, error: ReturnType<typeof JSON.parse>}} - Raw setup failure outcome.
843
843
  */
844
- setupFailureFor(test: PackageTestDeclaration): ReturnType<typeof JSON.parse>;
844
+ setupFailureOutcomeFor(test: PackageTestDeclaration): {
845
+ failed: false;
846
+ } | {
847
+ failed: true;
848
+ error: ReturnType<typeof JSON.parse>;
849
+ };
845
850
  /**
846
851
  * Finds the next incomplete declaration with a package full name.
847
852
  * @param {string} fullName - Package full name.
@@ -1 +1 @@
1
- {"version":3,"file":"test-runner.d.ts","sourceRoot":"","sources":["../../../src/testing/test-runner.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"test-runner.d.ts","sourceRoot":"","sources":["../../../src/testing/test-runner.js"],"names":[],"mappings":"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"}