@sumaris-net/ngx-components 18.2.6 → 18.2.8

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.
package/doc/changelog.md CHANGED
@@ -982,9 +982,11 @@ enh: Environment: add useHash property to configure Angular router to use hash U
982
982
  # 18.2.6
983
983
  - fix(autocomplete-field) Fix arrow drop icon position, when mobile
984
984
  - fix(autocomplete-field) Use desktop arrow drop icon, when multiple and desktop
985
- - enh(autocomplete-field) Add `@Input() selectInputContentOnFocusDelay` - workaround when input text selection is overridden by another event (e.g. see in SUMARiS, in the calendar component)
986
985
  - fix(BaseEntityService) simplify functions `fromObject()` and `fromObjects()` (move `toEntity` argument into `options`)
987
986
  - enh(services) Allow `suggestFromArray()` to search using `?` as wildcard (=match one character) in the search text
988
987
  - enh(HighlightPipe) Allow to use the character `?` as wildcard (=match one character) in the search text
989
988
  - enh(functions) Allow `suggestFromStringArray()` to search using `?` as wildcard (=match one character) in the search text
990
989
  - enh(shared) New helper class `RegExpUtils`
990
+
991
+ # 18.2.7
992
+ - enh(autocomplete-field) Add `@Input() selectInputContentOnFocusDelay` - workaround when input text selection is overridden by another event (e.g. see in SUMARiS, in the calendar component)
@@ -43,4 +43,4 @@ export class MatAutocompleteConfigHolder {
43
43
  return this.fields[fieldName] || this.add(fieldName);
44
44
  }
45
45
  }
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0ZXJpYWwuYXV0b2NvbXBsZXRlLmNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc2hhcmVkL21hdGVyaWFsL2F1dG9jb21wbGV0ZS9tYXRlcmlhbC5hdXRvY29tcGxldGUuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBa0QxRSxNQUFNLE9BQU8sMkJBQTJCO0lBUTVCO0lBUFYsTUFBTSxHQUVGLEVBQUUsQ0FBQztJQUVQLGlCQUFpQixDQUFnRTtJQUVqRixZQUNVLE9BRVA7UUFGTyxZQUFPLEdBQVAsT0FBTyxDQUVkO1FBRUQsZ0VBQWdFO1FBQ2hFLCtCQUErQjtRQUMvQixJQUFJLENBQUMsaUJBQWlCLEdBQUcsT0FBTyxFQUFFLGlCQUFpQixJQUFJLENBQUMsQ0FBQyxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsRUFBRSxDQUFDLGlCQUFpQixJQUFJLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDcEksQ0FBQztJQUVELEdBQUcsQ0FBbUIsU0FBaUIsRUFBRSxPQUE4QztRQUNyRixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDZixNQUFNLElBQUksS0FBSyxDQUFDLG1DQUFtQyxHQUFHLENBQUMsU0FBUyxJQUFJLFdBQVcsQ0FBQyxDQUFDLENBQUM7UUFDcEYsQ0FBQztRQUNELE9BQU8sR0FBRyxPQUFPLElBQW9DLEVBQUUsQ0FBQztRQUN4RCxNQUFNLFNBQVMsR0FBb0IsT0FBTyxDQUFDLFNBQVMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksU0FBUyxDQUFDO1FBQ3BJLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQzlGLHVEQUF1RDtRQUN2RCxNQUFNLGNBQWMsR0FBRyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxVQUFVLElBQUksT0FBTyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ2pILE1BQU0sTUFBTSxHQUFlO1lBQ3pCLGVBQWUsRUFBRSxVQUFVLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTO1lBQ3BFLGdCQUFnQixFQUFFLFVBQVUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFNBQVM7WUFDaEUsR0FBRyxPQUFPLENBQUMsTUFBTTtTQUNsQixDQUFDO1FBQ0YsTUFBTSxXQUFXLEdBQUcsT0FBTyxDQUFDLFdBQVcsSUFBSSx5QkFBeUIsQ0FBQyxlQUFlLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNuSCxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxJQUFJLHlCQUF5QixDQUFDLGFBQWEsQ0FBQztRQUV6RSxNQUFNLE1BQU0sR0FBK0I7WUFDekMsR0FBRyxPQUFPO1lBQ1YsVUFBVSxFQUFFLGNBQWM7WUFDMUIsU0FBUztZQUNULE1BQU07WUFDTixXQUFXO1lBQ1gsTUFBTTtTQUNQLENBQUM7UUFFRixJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLE1BQU0sQ0FBQztRQUNoQyxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQsR0FBRyxDQUFVLFNBQWlCO1FBQzVCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNmLE1BQU0sSUFBSSxLQUFLLENBQUMsbUNBQW1DLEdBQUcsQ0FBQyxTQUFTLElBQUksV0FBVyxDQUFDLENBQUMsQ0FBQztRQUNwRixDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxJQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFtQyxDQUFDO0lBQzFGLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN1Z2dlc3RGbiwgU3VnZ2VzdFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9lbnRpdHktc2VydmljZS5jbGFzcyc7XG5pbXBvcnQgeyBNYXRBdXRvY29tcGxldGVGaWVsZFV0aWxzIH0gZnJvbSAnLi9tYXRlcmlhbC5hdXRvY29tcGxldGUudXRpbHMnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRGlzcGxheUZuLCBFcXVhbHNGbiB9IGZyb20gJy4uLy4uL2Zvcm0vZmllbGQubW9kZWwnO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgTWF0QXV0b2NvbXBsZXRlRmllbGRDb25maWc8VCA9IGFueSwgRiA9IGFueT4ge1xuICBhdHRyaWJ1dGVzPzogc3RyaW5nW107XG4gIHN1Z2dlc3RGbj86IFN1Z2dlc3RGbjxULCBGPjtcbiAgZmlsdGVyPzogUGFydGlhbDxGPjtcbiAgaXRlbXM/OiBPYnNlcnZhYmxlPFRbXT4gfCBUW107XG4gIGNvbHVtblNpemVzPzogKG51bWJlciB8ICdhdXRvJyB8IHVuZGVmaW5lZClbXTtcbiAgY29sdW1uTmFtZXM/OiAoc3RyaW5nIHwgdW5kZWZpbmVkKVtdO1xuICBtdWx0aXBsZT86IGJvb2xlYW47XG4gIGRpc3BsYXlXaXRoPzogRGlzcGxheUZuO1xuICBkaXNwbGF5V2l0aFNlcGFyYXRvcj86IHN0cmluZzsgLy8gVXNlIHRvIHNwbGl0IHNlYXJjaFRleHQgYmVmb3JlIHNlYXJjaGluZ1xuICBzcGxpdFNlYXJjaFRleHQ/OiBib29sZWFuOyAvLyBTcGxpdCBzZWFyY2hUZXh0IGJlZm9yZSBzZWFyY2hpbmc/ICh3aWxsIHVzZSB0aGUgZmlyc3QgdmFsdWUpXG4gIHRyaW1TZWFyY2hUZXh0PzogYm9vbGVhbjsgLy8gVHJpbSBzZWFyY2hUZXh0IGJlZm9yZSBzZWFyY2hpbmc/XG4gIGVxdWFscz86IEVxdWFsc0ZuOyAvLyBVc2VkIGJ5IDxtYXQtY2hpcHMtZmllbGQ+XG4gIHNob3dBbGxPbkZvY3VzPzogYm9vbGVhbjtcbiAgc2hvd1BhbmVsT25Gb2N1cz86IGJvb2xlYW47XG4gIG1vYmlsZT86IGJvb2xlYW47XG4gIGRlYm91bmNlVGltZT86IG51bWJlcjtcbiAgc3VnZ2VzdExlbmd0aFRocmVzaG9sZD86IG51bWJlcjtcbiAgaGlnaGxpZ2h0QWNjZW50PzogYm9vbGVhbjtcbiAgYXBwbHlJbXBsaWNpdFZhbHVlPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogU2hvdWxkIHNlbGVjdCBpbnB1dCBjb250ZW50IChkZXNrdG9wIG9ubHkpXG4gICAqL1xuICBzZWxlY3RJbnB1dENvbnRlbnRPbkZvY3VzPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQ2xhc3MgdG8gYXBwbHkgdG8gdGhlIGBkaXYubWF0LW1kYy1zZWxlY3QtcGFuZWxgXG4gICAqL1xuICBwYW5lbENsYXNzPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBbGxvdyB0byBmaXggcGFuZWwgd2lkdGggKGUuZy4gJzUwMHB4JyBvciAnMTAwdncnKVxuICAgKi9cbiAgcGFuZWxXaWR0aD86IHN0cmluZztcblxuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgdXNlIGBwYW5lbENsYXNzYCBpbnN0ZWFkXG4gICAqL1xuICBjbGFzcz86IHN0cmluZztcbn1cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIE1hdEF1dG9jb21wbGV0ZUZpZWxkQWRkT3B0aW9uczxUID0gYW55LCBGID0gYW55PiBleHRlbmRzIFBhcnRpYWw8TWF0QXV0b2NvbXBsZXRlRmllbGRDb25maWc8VCwgRj4+IHtcbiAgc2VydmljZT86IFN1Z2dlc3RTZXJ2aWNlPFQsIEY+O1xufVxuXG5leHBvcnQgY2xhc3MgTWF0QXV0b2NvbXBsZXRlQ29uZmlnSG9sZGVyIHtcbiAgZmllbGRzOiB7XG4gICAgW2tleTogc3RyaW5nXTogTWF0QXV0b2NvbXBsZXRlRmllbGRDb25maWc7XG4gIH0gPSB7fTtcblxuICBnZXRVc2VyQXR0cmlidXRlczogKGZpZWxkTmFtZTogc3RyaW5nLCBkZWZhdWx0QXR0cmlidXRlcz86IHN0cmluZ1tdKSA9PiBzdHJpbmdbXTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIG9wdGlvbnM/OiB7XG4gICAgICBnZXRVc2VyQXR0cmlidXRlczogKGZpZWxkTmFtZTogc3RyaW5nLCBkZWZhdWx0QXR0cmlidXRlcz86IHN0cmluZ1tdKSA9PiBzdHJpbmdbXTtcbiAgICB9XG4gICkge1xuICAgIC8vIFN0b3JlIHRoZSBmdW5jdGlvbiBmcm9tIG9wdGlvbnMgKGUuZy4gZ2V0IGZyb20gdXNlciBzZXR0aW5ncylcbiAgICAvLyBvciBjcmVhdGUgYSBkZWZhdWx0IGZ1bmN0aW9uXG4gICAgdGhpcy5nZXRVc2VyQXR0cmlidXRlcyA9IG9wdGlvbnM/LmdldFVzZXJBdHRyaWJ1dGVzIHx8ICgoZmllbGROYW1lLCBkZWZhdWx0QXR0cmlidXRlcykgPT4gZGVmYXVsdEF0dHJpYnV0ZXMgfHwgWydsYWJlbCcsICduYW1lJ10pO1xuICB9XG5cbiAgYWRkPFQgPSBhbnksIEYgPSBhbnk+KGZpZWxkTmFtZTogc3RyaW5nLCBvcHRpb25zPzogTWF0QXV0b2NvbXBsZXRlRmllbGRBZGRPcHRpb25zPFQsIEY+KTogTWF0QXV0b2NvbXBsZXRlRmllbGRDb25maWc8VCwgRj4ge1xuICAgIGlmICghZmllbGROYW1lKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1VuYWJsZSB0byBhZGQgY29uZmlnLCB3aXRoIG5hbWU6ICcgKyAoZmllbGROYW1lIHx8ICd1bmRlZmluZWQnKSk7XG4gICAgfVxuICAgIG9wdGlvbnMgPSBvcHRpb25zIHx8IDxNYXRBdXRvY29tcGxldGVGaWVsZEFkZE9wdGlvbnM+e307XG4gICAgY29uc3Qgc3VnZ2VzdEZuOiBTdWdnZXN0Rm48VCwgRj4gPSBvcHRpb25zLnN1Z2dlc3RGbiB8fCAob3B0aW9ucy5zZXJ2aWNlICYmICgodiwgZikgPT4gb3B0aW9ucy5zZXJ2aWNlLnN1Z2dlc3QodiwgZikpKSB8fCB1bmRlZmluZWQ7XG4gICAgY29uc3QgYXR0cmlidXRlcyA9IHRoaXMuZ2V0VXNlckF0dHJpYnV0ZXMoZmllbGROYW1lLCBvcHRpb25zLmF0dHJpYnV0ZXMpIHx8IFsnbGFiZWwnLCAnbmFtZSddO1xuICAgIC8vIEtlZXAgb3JpZ2luYWwgdGhlIGZ1bmN0aW9uIGZyb20gb3B0aW9ucywgd2hlbiBleGlzdHNcbiAgICBjb25zdCBhdHRyaWJ1dGVzT3JGbiA9IGF0dHJpYnV0ZXMubWFwKChhLCBpbmRleCkgPT4gKHR5cGVvZiBhID09PSAnZnVuY3Rpb24nICYmIG9wdGlvbnMuYXR0cmlidXRlc1tpbmRleF0pIHx8IGEpO1xuICAgIGNvbnN0IGZpbHRlcjogUGFydGlhbDxGPiA9IHtcbiAgICAgIHNlYXJjaEF0dHJpYnV0ZTogYXR0cmlidXRlcy5sZW5ndGggPT09IDEgPyBhdHRyaWJ1dGVzWzBdIDogdW5kZWZpbmVkLFxuICAgICAgc2VhcmNoQXR0cmlidXRlczogYXR0cmlidXRlcy5sZW5ndGggPiAxID8gYXR0cmlidXRlcyA6IHVuZGVmaW5lZCxcbiAgICAgIC4uLm9wdGlvbnMuZmlsdGVyLFxuICAgIH07XG4gICAgY29uc3QgZGlzcGxheVdpdGggPSBvcHRpb25zLmRpc3BsYXlXaXRoIHx8IE1hdEF1dG9jb21wbGV0ZUZpZWxkVXRpbHMuY3JlYXRlRGlzcGxheUZuKGF0dHJpYnV0ZXMsIG9wdGlvbnMubXVsdGlwbGUpO1xuICAgIGNvbnN0IGVxdWFscyA9IG9wdGlvbnMuZXF1YWxzIHx8IE1hdEF1dG9jb21wbGV0ZUZpZWxkVXRpbHMuZGVmYXVsdEVxdWFscztcblxuICAgIGNvbnN0IGNvbmZpZzogTWF0QXV0b2NvbXBsZXRlRmllbGRDb25maWcgPSB7XG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgYXR0cmlidXRlczogYXR0cmlidXRlc09yRm4sXG4gICAgICBzdWdnZXN0Rm4sXG4gICAgICBmaWx0ZXIsXG4gICAgICBkaXNwbGF5V2l0aCxcbiAgICAgIGVxdWFscyxcbiAgICB9O1xuXG4gICAgdGhpcy5maWVsZHNbZmllbGROYW1lXSA9IGNvbmZpZztcbiAgICByZXR1cm4gY29uZmlnO1xuICB9XG5cbiAgZ2V0PFQgPSBhbnk+KGZpZWxkTmFtZTogc3RyaW5nKTogTWF0QXV0b2NvbXBsZXRlRmllbGRDb25maWc8VD4ge1xuICAgIGlmICghZmllbGROYW1lKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1VuYWJsZSB0byBhZGQgY29uZmlnLCB3aXRoIG5hbWU6ICcgKyAoZmllbGROYW1lIHx8ICd1bmRlZmluZWQnKSk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmZpZWxkc1tmaWVsZE5hbWVdIHx8ICh0aGlzLmFkZChmaWVsZE5hbWUpIGFzIE1hdEF1dG9jb21wbGV0ZUZpZWxkQ29uZmlnPFQ+KTtcbiAgfVxufVxuIl19
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0ZXJpYWwuYXV0b2NvbXBsZXRlLmNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc2hhcmVkL21hdGVyaWFsL2F1dG9jb21wbGV0ZS9tYXRlcmlhbC5hdXRvY29tcGxldGUuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBdUQxRSxNQUFNLE9BQU8sMkJBQTJCO0lBUTVCO0lBUFYsTUFBTSxHQUVGLEVBQUUsQ0FBQztJQUVQLGlCQUFpQixDQUFnRTtJQUVqRixZQUNVLE9BRVA7UUFGTyxZQUFPLEdBQVAsT0FBTyxDQUVkO1FBRUQsZ0VBQWdFO1FBQ2hFLCtCQUErQjtRQUMvQixJQUFJLENBQUMsaUJBQWlCLEdBQUcsT0FBTyxFQUFFLGlCQUFpQixJQUFJLENBQUMsQ0FBQyxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsRUFBRSxDQUFDLGlCQUFpQixJQUFJLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDcEksQ0FBQztJQUVELEdBQUcsQ0FBbUIsU0FBaUIsRUFBRSxPQUE4QztRQUNyRixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDZixNQUFNLElBQUksS0FBSyxDQUFDLG1DQUFtQyxHQUFHLENBQUMsU0FBUyxJQUFJLFdBQVcsQ0FBQyxDQUFDLENBQUM7UUFDcEYsQ0FBQztRQUNELE9BQU8sR0FBRyxPQUFPLElBQW9DLEVBQUUsQ0FBQztRQUN4RCxNQUFNLFNBQVMsR0FBb0IsT0FBTyxDQUFDLFNBQVMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksU0FBUyxDQUFDO1FBQ3BJLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQzlGLHVEQUF1RDtRQUN2RCxNQUFNLGNBQWMsR0FBRyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxVQUFVLElBQUksT0FBTyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ2pILE1BQU0sTUFBTSxHQUFlO1lBQ3pCLGVBQWUsRUFBRSxVQUFVLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTO1lBQ3BFLGdCQUFnQixFQUFFLFVBQVUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFNBQVM7WUFDaEUsR0FBRyxPQUFPLENBQUMsTUFBTTtTQUNsQixDQUFDO1FBQ0YsTUFBTSxXQUFXLEdBQUcsT0FBTyxDQUFDLFdBQVcsSUFBSSx5QkFBeUIsQ0FBQyxlQUFlLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNuSCxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxJQUFJLHlCQUF5QixDQUFDLGFBQWEsQ0FBQztRQUV6RSxNQUFNLE1BQU0sR0FBK0I7WUFDekMsR0FBRyxPQUFPO1lBQ1YsVUFBVSxFQUFFLGNBQWM7WUFDMUIsU0FBUztZQUNULE1BQU07WUFDTixXQUFXO1lBQ1gsTUFBTTtTQUNQLENBQUM7UUFFRixJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLE1BQU0sQ0FBQztRQUNoQyxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQsR0FBRyxDQUFVLFNBQWlCO1FBQzVCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNmLE1BQU0sSUFBSSxLQUFLLENBQUMsbUNBQW1DLEdBQUcsQ0FBQyxTQUFTLElBQUksV0FBVyxDQUFDLENBQUMsQ0FBQztRQUNwRixDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxJQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFtQyxDQUFDO0lBQzFGLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN1Z2dlc3RGbiwgU3VnZ2VzdFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9lbnRpdHktc2VydmljZS5jbGFzcyc7XG5pbXBvcnQgeyBNYXRBdXRvY29tcGxldGVGaWVsZFV0aWxzIH0gZnJvbSAnLi9tYXRlcmlhbC5hdXRvY29tcGxldGUudXRpbHMnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRGlzcGxheUZuLCBFcXVhbHNGbiB9IGZyb20gJy4uLy4uL2Zvcm0vZmllbGQubW9kZWwnO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgTWF0QXV0b2NvbXBsZXRlRmllbGRDb25maWc8VCA9IGFueSwgRiA9IGFueT4ge1xuICBhdHRyaWJ1dGVzPzogc3RyaW5nW107XG4gIHN1Z2dlc3RGbj86IFN1Z2dlc3RGbjxULCBGPjtcbiAgZmlsdGVyPzogUGFydGlhbDxGPjtcbiAgaXRlbXM/OiBPYnNlcnZhYmxlPFRbXT4gfCBUW107XG4gIGNvbHVtblNpemVzPzogKG51bWJlciB8ICdhdXRvJyB8IHVuZGVmaW5lZClbXTtcbiAgY29sdW1uTmFtZXM/OiAoc3RyaW5nIHwgdW5kZWZpbmVkKVtdO1xuICBtdWx0aXBsZT86IGJvb2xlYW47XG4gIGRpc3BsYXlXaXRoPzogRGlzcGxheUZuO1xuICBkaXNwbGF5V2l0aFNlcGFyYXRvcj86IHN0cmluZzsgLy8gVXNlIHRvIHNwbGl0IHNlYXJjaFRleHQgYmVmb3JlIHNlYXJjaGluZ1xuICBzcGxpdFNlYXJjaFRleHQ/OiBib29sZWFuOyAvLyBTcGxpdCBzZWFyY2hUZXh0IGJlZm9yZSBzZWFyY2hpbmc/ICh3aWxsIHVzZSB0aGUgZmlyc3QgdmFsdWUpXG4gIHRyaW1TZWFyY2hUZXh0PzogYm9vbGVhbjsgLy8gVHJpbSBzZWFyY2hUZXh0IGJlZm9yZSBzZWFyY2hpbmc/XG4gIGVxdWFscz86IEVxdWFsc0ZuOyAvLyBVc2VkIGJ5IDxtYXQtY2hpcHMtZmllbGQ+XG4gIHNob3dBbGxPbkZvY3VzPzogYm9vbGVhbjtcbiAgc2hvd1BhbmVsT25Gb2N1cz86IGJvb2xlYW47XG4gIG1vYmlsZT86IGJvb2xlYW47XG4gIGRlYm91bmNlVGltZT86IG51bWJlcjtcbiAgc3VnZ2VzdExlbmd0aFRocmVzaG9sZD86IG51bWJlcjtcbiAgaGlnaGxpZ2h0QWNjZW50PzogYm9vbGVhbjtcbiAgYXBwbHlJbXBsaWNpdFZhbHVlPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogU2hvdWxkIHNlbGVjdCBpbnB1dCBjb250ZW50IChkZXNrdG9wIG9ubHkpXG4gICAqL1xuICBzZWxlY3RJbnB1dENvbnRlbnRPbkZvY3VzPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQWRkIGEgZGVsYXkgKG1zKSBiZWZvcmUgdHJ5aW5nIHRvIHNlbGVjdCBpbnB1dCBjb250ZW50IChkZXNrdG9wIG9ubHkpXG4gICAqL1xuICBzZWxlY3RJbnB1dENvbnRlbnRPbkZvY3VzRGVsYXk/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIENsYXNzIHRvIGFwcGx5IHRvIHRoZSBgZGl2Lm1hdC1tZGMtc2VsZWN0LXBhbmVsYFxuICAgKi9cbiAgcGFuZWxDbGFzcz86IHN0cmluZztcblxuICAvKipcbiAgICogQWxsb3cgdG8gZml4IHBhbmVsIHdpZHRoIChlLmcuICc1MDBweCcgb3IgJzEwMHZ3JylcbiAgICovXG4gIHBhbmVsV2lkdGg/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkIHVzZSBgcGFuZWxDbGFzc2AgaW5zdGVhZFxuICAgKi9cbiAgY2xhc3M/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBNYXRBdXRvY29tcGxldGVGaWVsZEFkZE9wdGlvbnM8VCA9IGFueSwgRiA9IGFueT4gZXh0ZW5kcyBQYXJ0aWFsPE1hdEF1dG9jb21wbGV0ZUZpZWxkQ29uZmlnPFQsIEY+PiB7XG4gIHNlcnZpY2U/OiBTdWdnZXN0U2VydmljZTxULCBGPjtcbn1cblxuZXhwb3J0IGNsYXNzIE1hdEF1dG9jb21wbGV0ZUNvbmZpZ0hvbGRlciB7XG4gIGZpZWxkczoge1xuICAgIFtrZXk6IHN0cmluZ106IE1hdEF1dG9jb21wbGV0ZUZpZWxkQ29uZmlnO1xuICB9ID0ge307XG5cbiAgZ2V0VXNlckF0dHJpYnV0ZXM6IChmaWVsZE5hbWU6IHN0cmluZywgZGVmYXVsdEF0dHJpYnV0ZXM/OiBzdHJpbmdbXSkgPT4gc3RyaW5nW107XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBvcHRpb25zPzoge1xuICAgICAgZ2V0VXNlckF0dHJpYnV0ZXM6IChmaWVsZE5hbWU6IHN0cmluZywgZGVmYXVsdEF0dHJpYnV0ZXM/OiBzdHJpbmdbXSkgPT4gc3RyaW5nW107XG4gICAgfVxuICApIHtcbiAgICAvLyBTdG9yZSB0aGUgZnVuY3Rpb24gZnJvbSBvcHRpb25zIChlLmcuIGdldCBmcm9tIHVzZXIgc2V0dGluZ3MpXG4gICAgLy8gb3IgY3JlYXRlIGEgZGVmYXVsdCBmdW5jdGlvblxuICAgIHRoaXMuZ2V0VXNlckF0dHJpYnV0ZXMgPSBvcHRpb25zPy5nZXRVc2VyQXR0cmlidXRlcyB8fCAoKGZpZWxkTmFtZSwgZGVmYXVsdEF0dHJpYnV0ZXMpID0+IGRlZmF1bHRBdHRyaWJ1dGVzIHx8IFsnbGFiZWwnLCAnbmFtZSddKTtcbiAgfVxuXG4gIGFkZDxUID0gYW55LCBGID0gYW55PihmaWVsZE5hbWU6IHN0cmluZywgb3B0aW9ucz86IE1hdEF1dG9jb21wbGV0ZUZpZWxkQWRkT3B0aW9uczxULCBGPik6IE1hdEF1dG9jb21wbGV0ZUZpZWxkQ29uZmlnPFQsIEY+IHtcbiAgICBpZiAoIWZpZWxkTmFtZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdVbmFibGUgdG8gYWRkIGNvbmZpZywgd2l0aCBuYW1lOiAnICsgKGZpZWxkTmFtZSB8fCAndW5kZWZpbmVkJykpO1xuICAgIH1cbiAgICBvcHRpb25zID0gb3B0aW9ucyB8fCA8TWF0QXV0b2NvbXBsZXRlRmllbGRBZGRPcHRpb25zPnt9O1xuICAgIGNvbnN0IHN1Z2dlc3RGbjogU3VnZ2VzdEZuPFQsIEY+ID0gb3B0aW9ucy5zdWdnZXN0Rm4gfHwgKG9wdGlvbnMuc2VydmljZSAmJiAoKHYsIGYpID0+IG9wdGlvbnMuc2VydmljZS5zdWdnZXN0KHYsIGYpKSkgfHwgdW5kZWZpbmVkO1xuICAgIGNvbnN0IGF0dHJpYnV0ZXMgPSB0aGlzLmdldFVzZXJBdHRyaWJ1dGVzKGZpZWxkTmFtZSwgb3B0aW9ucy5hdHRyaWJ1dGVzKSB8fCBbJ2xhYmVsJywgJ25hbWUnXTtcbiAgICAvLyBLZWVwIG9yaWdpbmFsIHRoZSBmdW5jdGlvbiBmcm9tIG9wdGlvbnMsIHdoZW4gZXhpc3RzXG4gICAgY29uc3QgYXR0cmlidXRlc09yRm4gPSBhdHRyaWJ1dGVzLm1hcCgoYSwgaW5kZXgpID0+ICh0eXBlb2YgYSA9PT0gJ2Z1bmN0aW9uJyAmJiBvcHRpb25zLmF0dHJpYnV0ZXNbaW5kZXhdKSB8fCBhKTtcbiAgICBjb25zdCBmaWx0ZXI6IFBhcnRpYWw8Rj4gPSB7XG4gICAgICBzZWFyY2hBdHRyaWJ1dGU6IGF0dHJpYnV0ZXMubGVuZ3RoID09PSAxID8gYXR0cmlidXRlc1swXSA6IHVuZGVmaW5lZCxcbiAgICAgIHNlYXJjaEF0dHJpYnV0ZXM6IGF0dHJpYnV0ZXMubGVuZ3RoID4gMSA/IGF0dHJpYnV0ZXMgOiB1bmRlZmluZWQsXG4gICAgICAuLi5vcHRpb25zLmZpbHRlcixcbiAgICB9O1xuICAgIGNvbnN0IGRpc3BsYXlXaXRoID0gb3B0aW9ucy5kaXNwbGF5V2l0aCB8fCBNYXRBdXRvY29tcGxldGVGaWVsZFV0aWxzLmNyZWF0ZURpc3BsYXlGbihhdHRyaWJ1dGVzLCBvcHRpb25zLm11bHRpcGxlKTtcbiAgICBjb25zdCBlcXVhbHMgPSBvcHRpb25zLmVxdWFscyB8fCBNYXRBdXRvY29tcGxldGVGaWVsZFV0aWxzLmRlZmF1bHRFcXVhbHM7XG5cbiAgICBjb25zdCBjb25maWc6IE1hdEF1dG9jb21wbGV0ZUZpZWxkQ29uZmlnID0ge1xuICAgICAgLi4ub3B0aW9ucyxcbiAgICAgIGF0dHJpYnV0ZXM6IGF0dHJpYnV0ZXNPckZuLFxuICAgICAgc3VnZ2VzdEZuLFxuICAgICAgZmlsdGVyLFxuICAgICAgZGlzcGxheVdpdGgsXG4gICAgICBlcXVhbHMsXG4gICAgfTtcblxuICAgIHRoaXMuZmllbGRzW2ZpZWxkTmFtZV0gPSBjb25maWc7XG4gICAgcmV0dXJuIGNvbmZpZztcbiAgfVxuXG4gIGdldDxUID0gYW55PihmaWVsZE5hbWU6IHN0cmluZyk6IE1hdEF1dG9jb21wbGV0ZUZpZWxkQ29uZmlnPFQ+IHtcbiAgICBpZiAoIWZpZWxkTmFtZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdVbmFibGUgdG8gYWRkIGNvbmZpZywgd2l0aCBuYW1lOiAnICsgKGZpZWxkTmFtZSB8fCAndW5kZWZpbmVkJykpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5maWVsZHNbZmllbGROYW1lXSB8fCAodGhpcy5hZGQoZmllbGROYW1lKSBhcyBNYXRBdXRvY29tcGxldGVGaWVsZENvbmZpZzxUPik7XG4gIH1cbn1cbiJdfQ==