@ecodev/natural 45.4.2 → 45.5.0

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.
@@ -249,4 +249,4 @@ NaturalHierarchicSelectorService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersio
249
249
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.1", ngImport: i0, type: NaturalHierarchicSelectorService, decorators: [{
250
250
  type: Injectable
251
251
  }], ctorParameters: function () { return [{ type: i0.Injector }]; } });
252
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGllcmFyY2hpYy1zZWxlY3Rvci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF0dXJhbC9zcmMvbGliL21vZHVsZXMvaGllcmFyY2hpYy1zZWxlY3Rvci9oaWVyYXJjaGljLXNlbGVjdG9yL2hpZXJhcmNoaWMtc2VsZWN0b3Iuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFXLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxXQUFXLENBQUM7QUFDdkMsT0FBTyxFQUFDLGVBQWUsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFhLE1BQU0sTUFBTSxDQUFDO0FBRWxFLE9BQU8sRUFBQyxRQUFRLEVBQUUsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFDLDRCQUE0QixFQUFpQixNQUFNLHlDQUF5QyxDQUFDO0FBVXJHLE9BQU8sRUFBa0IsbUJBQW1CLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQzs7QUFhM0UsTUFBTSxPQUFPLGdDQUFnQztJQWV6QyxZQUFvQyxRQUFrQjtRQUFsQixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBZHREOzs7O1dBSUc7UUFDYSxlQUFVLEdBQTJDLElBQUksZUFBZSxDQUF3QixFQUFFLENBQUMsQ0FBQztRQUVwSDs7OztXQUlHO1FBQ0ssa0JBQWEsR0FBcUMsRUFBRSxDQUFDO0lBRUosQ0FBQztJQUUxRDs7O09BR0c7SUFDSSxJQUFJLENBQ1AsTUFBd0MsRUFDeEMsZ0JBQXVELElBQUksRUFDM0Qsa0JBQXlDLElBQUk7UUFFN0MsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ25DLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLDZCQUE2QixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2hFLE9BQU8sSUFBSSxDQUFDLE9BQU8s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YyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLEtBQUssTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3RFLE9BQU8sTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDekMsQ0FBQztJQUVEOztPQUVHO0lBQ0ssK0JBQStCLENBQ25DLEdBQXNEO1FBRXRELElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFO1lBQ3JCLE9BQU8sSUFBSSxDQUFDO1NBQ2Y7UUFFRCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGVBQWUsS0FBSyxHQUFHLENBQUMsSUFBSSxJQUFJLENBQUM7SUFDakYsQ0FBQztJQUVPLG9CQUFvQixDQUN4QixJQUFxQixFQUNyQixhQUE2QztRQUU3QyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEVBQUUsS0FBSyxJQUFJLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUMsVUFBVSxLQUFLLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUMvRyxPQUFPLElBQUksSUFBSSxJQUFJLG1CQUFtQixDQUFDLElBQUksRUFBRSxhQUFhLENBQUMsQ0FBQztJQUNoRSxDQUFDOzs2SEE1VFEsZ0NBQWdDO2lJQUFoQyxnQ0FBZ0M7MkZBQWhDLGdDQUFnQztrQkFENUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZSwgSW5qZWN0b3J9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtpbnRlcnNlY3Rpb259IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgZmlyc3QsIGZvcmtKb2luLCBPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtmaW5hbGl6ZSwgbWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge05hdHVyYWxRdWVyeVZhcmlhYmxlc01hbmFnZXIsIFF1ZXJ5VmFyaWFibGVzfSBmcm9tICcuLi8uLi8uLi9jbGFzc2VzL3F1ZXJ5LXZhcmlhYmxlLW1hbmFnZXInO1xuaW1wb3J0IHtIaWVyYXJjaGljRmxhdE5vZGV9IGZyb20gJy4uL2NsYXNzZXMvZmxhdC1ub2RlJztcbmltcG9ydCB7XG4gICAgTmF0dXJhbEhpZXJhcmNoaWNDb25maWd1cmF0aW9uLFxuICAgIE5hdHVyYWxIaWVyYXJjaGljU2VydmljZUNvbmZpZ3VyYXRpb24sXG59IGZyb20gJy4uL2NsYXNzZXMvaGllcmFyY2hpYy1jb25maWd1cmF0aW9uJztcbmltcG9ydCB7XG4gICAgSGllcmFyY2hpY0ZpbHRlckNvbmZpZ3VyYXRpb24sXG4gICAgSGllcmFyY2hpY0ZpbHRlcnNDb25maWd1cmF0aW9uLFxufSBmcm9tICcuLi9jbGFzc2VzL2hpZXJhcmNoaWMtZmlsdGVycy1jb25maWd1cmF0aW9uJztcbmltcG9ydCB7SGllcmFyY2hpY01vZGVsLCBIaWVyYXJjaGljTW9kZWxOb2RlfSBmcm9tICcuLi9jbGFzc2VzL21vZGVsLW5vZGUnO1xuaW1wb3J0IHtMaXRlcmFsfSBmcm9tICcuLi8uLi8uLi90eXBlcy90eXBlcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgT3JnYW5pemVkTW9kZWxTZWxlY3Rpb24ge1xuICAgIFtrZXk6IHN0cmluZ106IGFueVtdO1xufVxuXG5pbnRlcmZhY2UgQ29udGV4dHVhbGl6ZWRDb25maWcge1xuICAgIGNvbmZpZ3VyYXRpb246IE5hdHVyYWxIaWVyYXJjaGljU2VydmljZUNvbmZpZ3VyYXRpb247XG4gICAgdmFyaWFibGVzTWFuYWdlcjogTmF0dXJhbFF1ZXJ5VmFyaWFibGVzTWFuYWdlcjtcbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE5hdHVyYWxIaWVyYXJjaGljU2VsZWN0b3JTZXJ2aWNlIHtcbiAgICAvKipcbiAgICAgKiBTdG9yZXMgdGhlIGdsb2JhbCByZXN1bHQgb2YgdGhlIHRyZWVcbiAgICAgKiBUaGlzIG9ic2VydmFibGUgY29udGFpbnMgTm9kZS5cbiAgICAgKiBXaGVuIGl0J3MgdXBkYXRlZCwgdGhlIFRyZWVDb250cm9sbGVyIGFuZCBUcmVlRmxhdHRlbmVyIHByb2Nlc3MgdGhlIG5ldyBhcnJheSB0byBnZW5lcmF0ZSB0aGUgZmxhdCB0cmVlLlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBkYXRhQ2hhbmdlOiBCZWhhdmlvclN1YmplY3Q8SGllcmFyY2hpY01vZGVsTm9kZVtdPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8SGllcmFyY2hpY01vZGVsTm9kZVtdPihbXSk7XG5cbiAgICAvKipcbiAgICAgKiBDb25maWd1cmF0aW9uIGZvciByZWxhdGlvbnMgYW5kIHNlbGVjdGlvbiBjb25zdHJhaW50c1xuICAgICAqXG4gICAgICogVGhlIGxpc3Qgc2hvdWxkIGJlIHNvcnRlZCBpbiB0aGUgb3JkZXIgb2YgdGhlIGhpZXJhcmNoaWMgKGxpc3QgZmlyc3QgcGFyZW50IHJ1bGVzLCB0aGVuIGNoaWxkIHJ1bGVzKVxuICAgICAqL1xuICAgIHByaXZhdGUgY29uZmlndXJhdGlvbjogTmF0dXJhbEhpZXJhcmNoaWNDb25maWd1cmF0aW9uW10gPSBbXTtcblxuICAgIHB1YmxpYyBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGluamVjdG9yOiBJbmplY3Rvcikge31cblxuICAgIC8qKlxuICAgICAqIEluaXQgY29tcG9uZW50IGJ5IHNhdmluZyB0aGUgY29tcGxldGUgY29uZmlndXJhdGlvbiwgYW5kIHRoZW4gcmV0cmlldmluZyByb290IGVsZW1lbnRzLlxuICAgICAqIFVwZGF0ZXMgKiphbm90aGVyKiogb2JzZXJ2YWJsZSAodGhpcy5kYXRhQ2hhbmdlKSB3aGVuIGRhdGEgaXMgcmV0cmlldmVkLlxuICAgICAqL1xuICAgIHB1YmxpYyBpbml0KFxuICAgICAgICBjb25maWc6IE5hdHVyYWxIaWVyYXJjaGljQ29uZmlndXJhdGlvbltdLFxuICAgICAgICBjb250ZXh0RmlsdGVyOiBIaWVyYXJjaGljRmlsdGVyc0NvbmZpZ3VyYXRpb24gfCBudWxsID0gbnVsbCxcbiAgICAgICAgc2VhcmNoVmFyaWFibGVzOiBRdWVyeVZhcmlhYmxlcyB8IG51bGwgPSBudWxsLFxuICAgICk6IE9ic2VydmFibGU8dW5rbm93bj4ge1xuICAgICAgICB0aGlzLnZhbGlkYXRlQ29uZmlndXJhdGlvbihjb25maWcpO1xuICAgICAgICB0aGlzLmNvbmZpZ3VyYXRpb24gPSB0aGlzLmluamVjdFNlcnZpY2VzSW5Db25maWd1cmF0aW9uKGNvbmZpZyk7XG4gICAgICAgIHJldHVybiB0aGlzLmdldExpc3QobnVsbCwgY29udGV4dEZpbHRlciwgc2VhcmNoVmFyaWFibGVzKS5waXBlKG1hcChkYXRhID0+IHRoaXMuZGF0YUNoYW5nZS5uZXh0KGRhdGEpKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0IGxpc3Qgb2YgY2hpbGRyZW4sIGNvbnNpZGVyaW5nIGdpdmVuIEZsYXROb2RlIGlkIGFzIGEgcGFyZW50LlxuICAgICAqIE1hcmsgbG9hZGluZyBzdGF0dXMgaW5kaXZpZHVhbGx5IG9uIG5vZGVzLlxuICAgICAqL1xuICAgIHB1YmxpYyBsb2FkQ2hpbGRyZW4oXG4gICAgICAgIGZsYXROb2RlOiBIaWVyYXJjaGljRmxhdE5vZGUsXG4gICAgICAgIGNvbnRleHRGaWx0ZXI6IEhpZXJhcmNoaWNGaWx0ZXJzQ29uZmlndXJhdGlvbiB8IG51bGwgPSBudWxsLFxuICAgICk6IHZvaWQge1xuICAgICAgICAvLyBEb250IHJlZmV0Y2ggY2hpbGRyZW4uIEltcHJvdmUgcGVyZm9ybWFuY2VzXG4gICAgICAgIC8vIFByZXZlbnRzIGludGVyZmVyZW5jZXMgYmV0d2VlbiBIaWVyYXJjaGljTW9kZWxOb2RlIHN0cnVjdHVyZSBhbmQgYW5ndWxhciBjb21wb25lbnRzIG5hdmlnYXRpb24uXG4gICAgICAgIC8vIFByZXZlbnRzIGEgYnVnIHdoZXJlIGdyYW5kIGNoaWxkcmVuIHdlcmUgbG9zdCBpZiBjbG9zaW5nIHJvb3RcbiAgICAgICAgaWYgKGZsYXROb2RlLm5vZGUuY2hpbGRyZW4ubGVuZ3RoKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBmbGF0Tm9kZS5sb2FkaW5nID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5nZXRMaXN0KGZsYXROb2RlLCBjb250ZXh0RmlsdGVyKVxuICAgICAgICAgICAgLnBpcGUoZmluYWxpemUoKCkgPT4gKGZsYXROb2RlLmxvYWRpbmcgPSBmYWxzZSkpKVxuICAgICAgICAgICAgLnN1YnNjcmliZShpdGVtcyA9PiB7XG4gICAgICAgICAgICAgICAgZmxhdE5vZGUubm9kZS5jaGlsZHJlbkNoYW5nZS5uZXh0KGl0ZW1zKTtcbiAgICAgICAgICAgICAgICB0aGlzLmRhdGFDaGFuZ2UubmV4dCh0aGlzLmRhdGFDaGFuZ2UudmFsdWUpO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIHNlYXJjaChzZWFyY2hWYXJpYWJsZXM6IFF1ZXJ5VmFyaWFibGVzLCBjb250ZXh0RmlsdGVyOiBIaWVyYXJjaGljRmlsdGVyc0NvbmZpZ3VyYXRpb24gfCBudWxsID0gbnVsbCk6IHZvaWQge1xuICAgICAgICB0aGlzLmdldExpc3QobnVsbCwgY29udGV4dEZpbHRlciwgc2VhcmNoVmFyaWFibGVzKS5zdWJzY3JpYmUoaXRlbXMgPT4ge1xuICAgICAgICAgICAgdGhpcy5kYXRhQ2hhbmdlLm5leHQoaXRlbXMpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXRyaWV2ZSBlbGVtZW50cyBmcm9tIHRoZSBzZXJ2ZXJcbiAgICAgKiBHZXQgcm9vdCBlbGVtZW50cyBpZiBub2RlIGlzIG51bGwsIG9yIGNoaWxkIGVsZW1lbnRzIGlmIG5vZGUgaXMgZ2l2ZW5cbiAgICAgKi9cbiAgICBwcml2YXRlIGdldExpc3QoXG4gICAgICAgIG5vZGU6IEhpZXJhcmNoaWNGbGF0Tm9kZSB8IG51bGwgPSBudWxsLFxuICAgICAgICBjb250ZXh0RmlsdGVyczogSGllcmFyY2hpY0ZpbHRlcnNDb25maWd1cmF0aW9uIHwgbnVsbCA9IG51bGwsXG4gICAgICAgIHNlYXJjaFZhcmlhYmxlczogUXVlcnlWYXJpYWJsZXMgfCBudWxsID0gbnVsbCxcbiAgICApOiBPYnNlcnZhYmxlPEhpZXJhcmNoaWNNb2RlbE5vZGVbXT4ge1xuICAgICAgICBjb25zdCBjb25maWd1cmF0aW9ucyA9IHRoaXMuZ2V0Q29udGV4dHVhbGl6ZWRDb25maWdzKG5vZGUsIGNvbnRleHRGaWx0ZXJzLCBzZWFyY2hWYXJpYWJsZXMpO1xuICAgICAgICBjb25zdCBvYnNlcnZhYmxlcyA9IGNvbmZpZ3VyYXRpb25zLm1hcChjID0+IGMuY29uZmlndXJhdGlvbi5pbmplY3RlZFNlcnZpY2UuZ2V0QWxsKGMudmFyaWFibGVzTWFuYWdlcikpO1xuXG4gICAgICAgIC8vIEZpcmUgcXVlcmllcywgYW5kIG1lcmdlIHJlc3VsdHMsIHRyYW5zZm9ybWluZyBhcG9sbG8gaXRlbXMgaW50byBOb2RlIE9iamVjdC5cbiAgICAgICAgcmV0dXJuIGZvcmtKb2luKG9ic2VydmFibGVzKS5waXBlKFxuICAgICAgICAgICAgbWFwKHJlc3VsdHMgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGxpc3Rpbmc6IEhpZXJhcmNoaWNNb2RlbE5vZGVbXSA9IFtdO1xuXG4gICAgICAgICAgICAgICAgLy8gRm9yIGVhY2ggcmVzdWx0IG9mIGFuIG9ic2VydmFibGVcbiAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHJlc3VsdHMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gRm9yIGVhY2ggaXRlbSBvZiB0aGUgcmVzdWx0LCBjb252ZXJ0IGludG8gTm9kZSBvYmplY3RcbiAgICAgICAgICAgICAgICAgICAgZm9yIChjb25zdCBpdGVtIG9mIHJlc3VsdHNbaV0uaXRlbXMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpc3RpbmcucHVzaCh0aGlzLmdldE9yQ3JlYXRlTW9kZWxOb2RlKGl0ZW0sIGNvbmZpZ3VyYXRpb25zW2ldLmNvbmZpZ3VyYXRpb24pKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHJldHVybiBsaXN0aW5nO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHVibGljIGNvdW50SXRlbXMobm9kZTogSGllcmFyY2hpY0ZsYXROb2RlLCBjb250ZXh0RmlsdGVyczogSGllcmFyY2hpY0ZpbHRlcnNDb25maWd1cmF0aW9uIHwgbnVsbCA9IG51bGwpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgY29uZmlndXJhdGlvbnMgPSB0aGlzLmdldENvbnRleHR1YWxpemVkQ29uZmlncyhub2RlLCBjb250ZXh0RmlsdGVycywgbnVsbCk7XG4gICAgICAgIGNvbnN0IG9ic2VydmFibGVzID0gY29uZmlndXJhdGlvbnMubWFwKGMgPT5cbiAgICAgICAgICAgIGMuY29uZmlndXJhdGlvbi5pbmplY3RlZFNlcnZpY2UuY291bnQoYy52YXJpYWJsZXNNYW5hZ2VyKS5waXBlKGZpcnN0KCkpLFxuICAgICAgICApO1xuXG4gICAgICAgIGZvcmtKb2luKG9ic2VydmFibGVzKS5zdWJzY3JpYmUocmVzdWx0cyA9PiB7XG4gICAgICAgICAgICBjb25zdCB0b3RhbEl0ZW1zID0gcmVzdWx0cy5yZWR1Y2UoKHRvdGFsLCBsZW5ndGgpID0+IHRvdGFsICsgbGVuZ3RoLCAwKTtcbiAgICAgICAgICAgIG5vZGUuZXhwYW5kYWJsZSA9IHRvdGFsSXRlbXMgPiAwO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldENvbnRleHR1YWxpemVkQ29uZmlncyhcbiAgICAgICAgbm9kZTogSGllcmFyY2hpY0ZsYXROb2RlIHwgbnVsbCA9IG51bGwsXG4gICAgICAgIGNvbnRleHRGaWx0ZXJzOiBIaWVyYXJjaGljRmlsdGVyc0NvbmZpZ3VyYXRpb24gfCBudWxsID0gbnVsbCxcbiAgICAgICAgc2VhcmNoVmFyaWFibGVzOiBRdWVyeVZhcmlhYmxlcyB8IG51bGwgPSBudWxsLFxuICAgICk6IENvbnRleHR1YWxpemVkQ29uZmlnW10ge1xuICAgICAgICBjb25zdCBjb25maWdzQW5kU2VydmljZXM6IENvbnRleHR1YWxpemVkQ29uZmlnW10gPSBbXTtcblxuICAgICAgICAvLyBDb25zaWRlcmluZyB0aGUgd2hvbGUgY29uZmlndXJhdGlvbiBtYXkgY2F1c2UgcXVlcmllcyB3aXRoIG5vL3dyb25nIHJlc3VsdHMgd2UgaGF2ZSBpbXBlcmF0aXZlbHkgdG8gYXZvaWQgIVxuICAgICAgICAvLyBlLmcgdGhlcmUgYXJlIGNyb3NzIGRlcGVuZGVuY2llcyBiZXR3ZWVuIGVxdWlwbWVudHMgYW5kIHRheG9ub21pZXMgZmlsdGVycy4gQm90aCBoYXZlIFwicGFyZW50c1wiIGFuZCBcInRheG9ub21pZXNcIiBmaWx0ZXJzLi4uXG4gICAgICAgIC8vIFdoZW4gY2xpY2tpbmcgb24gYSBlcXVpcG1lbnQsIHRoZSBjb25maWd1cmF0aW9uIG9mIHRheG9ub21pZXMgd2l0aCBtYXRjaCBcInBhcmVudHNcIiBmaWx0ZXIsIGJ1dCB1c2UgdGhlIGlkIG9mIHRoZSBlcXVpcG1lbnRcbiAgICAgICAgLy8gVG8gZml4IHRoaXMsIHdlIHNob3VsZCBvbmx5IGNvbnNpZGVyIGNvbmZpZ3VyYXRpb24gYWZ0ZXIgdGhlIG9uZSBnaXZlbiBieSB0aGUgbm9kZSBwYXNzZWQgYXMgYXJndW1lbnQuXG4gICAgICAgIC8vIFRoYXQgd291bGQgbWVhbiA6IG5vIGNoaWxkIGNhbiBhZmZlY3QgcGFyZW50LlxuICAgICAgICAvLyBUaGF0IHdvdWxkIG1lYW4gOiBzb3J0aW5nIGluIHRoZSBjb25maWd1cmF0aW9uIGhhdmUgc2VtYW50aWMvaGllcmFyY2h5IGltcGxpY2F0aW9uc1xuICAgICAgICBjb25zdCBjb25maWdzID0gbm9kZSA/IHRoaXMuZ2V0TmV4dENvbmZpZ3Mobm9kZS5ub2RlLmNvbmZpZykgOiB0aGlzLmNvbmZpZ3VyYXRpb247XG5cbiAgICAgICAgY29uc3QgcGFnaW5hdGlvbiA9IHtwYWdlSW5kZXg6IDAsIHBhZ2VTaXplOiA5OTl9O1xuXG4gICAgICAgIGZvciAoY29uc3QgY29uZmlnIG9mIGNvbmZpZ3MpIHtcbiAgICAgICAgICAgIGNvbnN0IGl0ZW06IENvbnRleHR1YWxpemVkQ29uZmlnID0ge30gYXMgQ29udGV4dHVhbGl6ZWRDb25maWc7XG4gICAgICAgICAgICBjb25zdCBjb250ZXh0RmlsdGVyID0gdGhpcy5nZXRGaWx0ZXJCeVNlcnZpY2UoY29uZmlnLCBjb250ZXh0RmlsdGVycyk7XG4gICAgICAgICAgICBjb25zdCBmaWx0ZXIgPSB0aGlzLmdldFNlcnZpY2VGaWx0ZXIobm9kZSwgY29uZmlnLCBjb250ZXh0RmlsdGVyLCAhIXNlYXJjaFZhcmlhYmxlcyk7XG5cbiAgICAgICAgICAgIGlmICghZmlsdGVyIHx8ICFjb25maWcuaW5qZWN0ZWRTZXJ2aWNlKSB7XG4gICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IHZhcmlhYmxlc01hbmFnZXIgPSBuZXcgTmF0dXJhbFF1ZXJ5VmFyaWFibGVzTWFuYWdlcigpO1xuXG4gICAgICAgICAgICB2YXJpYWJsZXNNYW5hZ2VyLnNldCgndmFyaWFibGVzJywge2ZpbHRlcjogZmlsdGVyLCBwYWdpbmF0aW9uOiBwYWdpbmF0aW9ufSk7XG4gICAgICAgICAgICB2YXJpYWJsZXNNYW5hZ2VyLnNldCgnY29uZmlnLWZpbHRlcicsIHtmaWx0ZXI6IGNvbmZpZy5maWx0ZXJ9KTtcblxuICAgICAgICAgICAgaWYgKHNlYXJjaFZhcmlhYmxlcykge1xuICAgICAgICAgICAgICAgIHZhcmlhYmxlc01hbmFnZXIuc2V0KCduYXR1cmFsLXNlYXJjaCcsIHNlYXJjaFZhcmlhYmxlcyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIENhc3QgTmF0dXJhbEhpZXJhcmNoaWNTZXJ2aWNlQ29uZmlndXJhdGlvbiBiZWNhdXNlIHRoZSB1bmRlZmluZWRcbiAgICAgICAgICAgIC8vIGluamVjdGVkU2VydmljZXMgYXJlIGZpbHRlcmVkIGVhcmxpZXIgYW5kIHdlIGNhbiB2YWxpZGF0ZSB2YWx1ZVxuICAgICAgICAgICAgaXRlbS5jb25maWd1cmF0aW9uID0gY29uZmlnIGFzIE5hdHVyYWxIaWVyYXJjaGljU2VydmljZUNvbmZpZ3VyYXRpb247XG4gICAgICAgICAgICBpdGVtLnZhcmlhYmxlc01hbmFnZXIgPSB2YXJpYWJsZXNNYW5hZ2VyO1xuICAgICAgICAgICAgY29uZmlnc0FuZFNlcnZpY2VzLnB1c2goaXRlbSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gY29uZmlnc0FuZFNlcnZpY2VzO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybiBtb2RlbHMgbWF0Y2hpbmcgZ2l2ZW4gRmxhdE5vZGVzXG4gICAgICogUmV0dXJucyBhIExpdGVyYWwgb2YgbW9kZWxzIGdyb3VwZWQgYnkgdGhlaXIgY29uZmlndXJhdGlvbiBhdHRyaWJ1dGUgXCJzZWxlY3RhYmxlQXRLZXlcIlxuICAgICAqL1xuICAgIHB1YmxpYyB0b09yZ2FuaXplZFNlbGVjdGlvbihub2RlczogSGllcmFyY2hpY01vZGVsTm9kZVtdKTogT3JnYW5pemVkTW9kZWxTZWxlY3Rpb24ge1xuICAgICAgICBjb25zdCBzZWxlY3Rpb24gPSB0aGlzLmNvbmZpZ3VyYXRpb24ucmVkdWNlKChncm91cCwgY29uZmlnKSA9PiB7XG4gICAgICAgICAgICBpZiAoY29uZmlnLnNlbGVjdGFibGVBdEtleSkge1xuICAgICAgICAgICAgICAgIGdyb3VwW2NvbmZpZy5zZWxlY3RhYmxlQXRLZXldID0gW107XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gZ3JvdXA7XG4gICAgICAgIH0sIHt9IGFzIExpdGVyYWwpO1xuXG4gICAgICAgIGZvciAoY29uc3Qgbm9kZSBvZiBub2Rlcykge1xuICAgICAgICAgICAgaWYgKG5vZGUuY29uZmlnLnNlbGVjdGFibGVBdEtleSkge1xuICAgICAgICAgICAgICAgIHNlbGVjdGlvbltub2RlLmNvbmZpZy5zZWxlY3RhYmxlQXRLZXldLnB1c2gobm9kZS5tb2RlbCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gc2VsZWN0aW9uO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFRyYW5zZm9ybXMgYW4gT3JnYW5pemVkTW9kZWxTZWxlY3Rpb24gaW50byBhIGxpc3Qgb2YgTW9kZWxOb2Rlc1xuICAgICAqL1xuICAgIHB1YmxpYyBmcm9tT3JnYW5pemVkU2VsZWN0aW9uKG9yZ2FuaXplZE1vZGVsU2VsZWN0aW9uOiBPcmdhbml6ZWRNb2RlbFNlbGVjdGlvbik6IEhpZXJhcmNoaWNNb2RlbE5vZGVbXSB7XG4gICAgICAgIGlmICghb3JnYW5pemVkTW9kZWxTZWxlY3Rpb24pIHtcbiAgICAgICAgICAgIHJldHVybiBbXTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHJlc3VsdDogSGllcmFyY2hpY01vZGVsTm9kZVtdID0gW107XG4gICAgICAgIGZvciAoY29uc3Qgc2VsZWN0YWJsZUF0S2V5IG9mIE9iamVjdC5rZXlzKG9yZ2FuaXplZE1vZGVsU2VsZWN0aW9uKSkge1xuICAgICAgICAgICAgY29uc3QgY29uZmlnID0gdGhpcy5nZXRDb25maWd1cmF0aW9uQnlTZWxlY3RhYmxlS2V5KHNlbGVjdGFibGVBdEtleSk7XG4gICAgICAgICAgICBpZiAoY29uZmlnKSB7XG4gICAgICAgICAgICAgICAgZm9yIChjb25zdCBtb2RlbCBvZiBvcmdhbml6ZWRNb2RlbFNlbGVjdGlvbltzZWxlY3RhYmxlQXRLZXldKSB7XG4gICAgICAgICAgICAgICAgICAgIHJlc3VsdC5wdXNoKG5ldyBIaWVyYXJjaGljTW9kZWxOb2RlKG1vZGVsLCBjb25maWcpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGluamVjdFNlcnZpY2VzSW5Db25maWd1cmF0aW9uKFxuICAgICAgICBjb25maWd1cmF0aW9uczogTmF0dXJhbEhpZXJhcmNoaWNDb25maWd1cmF0aW9uW10sXG4gICAgKTogTmF0dXJhbEhpZXJhcmNoaWNDb25maWd1cmF0aW9uW10ge1xuICAgICAgICBmb3IgKGNvbnN0IGNvbmZpZyBvZiBjb25maWd1cmF0aW9ucykge1xuICAgICAgICAgICAgaWYgKCFjb25maWcuaW5qZWN0ZWRTZXJ2aWNlKSB7XG4gICAgICAgICAgICAgICAgY29uZmlnLmluamVjdGVkU2VydmljZSA9IHRoaXMuaW5qZWN0b3IuZ2V0KGNvbmZpZy5zZXJ2aWNlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBjb25maWd1cmF0aW9ucztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDaGVja3MgdGhhdCBlYWNoIGNvbmZpZ3VyYXRpb24uc2VsZWN0YWJsZUF0S2V5IGF0dHJpYnV0ZSBpcyB1bmlxdWVcbiAgICAgKi9cbiAgICBwcml2YXRlIHZhbGlkYXRlQ29uZmlndXJhdGlvbihjb25maWd1cmF0aW9uczogTmF0dXJhbEhpZXJhcmNoaWNDb25maWd1cmF0aW9uW10pOiB2b2lkIHtcbiAgICAgICAgY29uc3Qgc2VsZWN0YWJsZUF0S2V5QXR0cmlidXRlczogc3RyaW5nW10gPSBbXTtcbiAgICAgICAgZm9yIChjb25zdCBjb25maWcgb2YgY29uZmlndXJhdGlvbnMpIHtcbiAgICAgICAgICAgIGlmIChjb25maWcuc2VsZWN0YWJsZUF0S2V5KSB7XG4gICAgICAgICAgICAgICAgY29uc3Qga2V5SW5kZXggPSBzZWxlY3RhYmxlQXRLZXlBdHRyaWJ1dGVzLmluZGV4T2YoY29uZmlnLnNlbGVjdGFibGVBdEtleSk7XG5cbiAgICAgICAgICAgICAgICBpZiAoa2V5SW5kZXggPT09IC0xICYmIGNvbmZpZy5zZWxlY3RhYmxlQXRLZXkpIHtcbiAgICAgICAgICAgICAgICAgICAgc2VsZWN0YWJsZUF0S2V5QXR0cmlidXRlcy5wdXNoKGNvbmZpZy5zZWxlY3RhYmxlQXRLZXkpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIFRPRE8gOiByZW1vdmUgP1xuICAgICAgICAgICAgICAgIC8vIFRoaXMgYmVoYXZpb3IgbWF5YmUgZGFuZ2Vyb3VzIGluIGNhc2Ugd2UgcmUtb3BlbiBoaWVyYXJjaGljYWwgc2VsZWN0b3Igd2l0aCB0aGUgbGFzdCByZXR1cm5lZCBjb25maWcgaGF2aW5nIG5vbi11bmlxdWVcbiAgICAgICAgICAgICAgICAvLyBrZXlzXG4gICAgICAgICAgICAgICAgaWYgKGtleUluZGV4IDwgLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS53YXJuKCdJbnZhbGlkIGhpZXJhcmNoaWMgY29uZmlndXJhdGlvbiA6IHNlbGVjdGFibGVBdEtleSBhdHRyaWJ1dGUgc2hvdWxkIGJlIHVuaXF1ZScpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybiBjb25maWd1cmF0aW9ucyBzZXR1cCBpbiB0aGUgbGlzdCBhZnRlciB0aGUgZ2l2ZW4gb25lXG4gICAgICovXG4gICAgcHJpdmF0ZSBnZXROZXh0Q29uZmlncyhjb25maWc6IE5hdHVyYWxIaWVyYXJjaGljQ29uZmlndXJhdGlvbik6IE5hdHVyYWxIaWVyYXJjaGljQ29uZmlndXJhdGlvbltdIHtcbiAgICAgICAgY29uc3QgY29uZmlnSW5kZXggPSB0aGlzLmNvbmZpZ3VyYXRpb24uZmluZEluZGV4KGMgPT4gYyA9PT0gY29uZmlnKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29uZmlndXJhdGlvbi5zbGljZShjb25maWdJbmRleCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQnVpbGRzIHF1ZXJ5VmFyaWFibGVzIGZpbHRlciBmb3IgY2hpbGRyZW4gcXVlcnlcbiAgICAgKi9cbiAgICBwcml2YXRlIGdldFNlcnZpY2VGaWx0ZXIoXG4gICAgICAgIGZsYXROb2RlOiBIaWVyYXJjaGljRmxhdE5vZGUgfCBudWxsLFxuICAgICAgICBjb25maWc6IE5hdHVyYWxIaWVyYXJjaGljQ29uZmlndXJhdGlvbixcbiAgICAgICAgY29udGV4dEZpbHRlcjogSGllcmFyY2hpY0ZpbHRlckNvbmZpZ3VyYXRpb25bJ2ZpbHRlciddIHwgbnVsbCA9IG51bGwsXG4gICAgICAgIGFsbERlZXBzID0gZmFsc2UsXG4gICAgKTogSGllcmFyY2hpY0ZpbHRlckNvbmZpZ3VyYXRpb25bJ2ZpbHRlciddIHwgbnVsbCB7XG4gICAgICAgIGNvbnN0IGZpZWxkQ29uZGl0aW9uOiBMaXRlcmFsID0ge307XG5cbiAgICAgICAgLy8gaWYgbm8gcGFyZW50LCBmaWx0ZXIgZW1wdHkgZWxlbWVudHNcbiAgICAgICAgaWYgKCFmbGF0Tm9kZSkge1xuICAgICAgICAgICAgaWYgKCFjb25maWcucGFyZW50c1JlbGF0aW9uTmFtZXMpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gY29udGV4dEZpbHRlciA/IGNvbnRleHRGaWx0ZXIgOiB7fTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKCFhbGxEZWVwcykge1xuICAgICAgICAgICAgICAgIGNvbmZpZy5wYXJlbnRzUmVsYXRpb25OYW1lcy5mb3JFYWNoKGYgPT4ge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZENvbmRpdGlvbltmXSA9IHtlbXB0eToge319O1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKCFmbGF0Tm9kZS5ub2RlLmNvbmZpZy5jaGlsZHJlblJlbGF0aW9uTmFtZXMgfHwgIWNvbmZpZy5wYXJlbnRzUmVsYXRpb25OYW1lcykge1xuICAgICAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjb25zdCBtYXRjaGluZ0ZpbHRlcnMgPSBpbnRlcnNlY3Rpb24oXG4gICAgICAgICAgICAgICAgZmxhdE5vZGUubm9kZS5jb25maWcuY2hpbGRyZW5SZWxhdGlvbk5hbWVzLFxuICAgICAgICAgICAgICAgIGNvbmZpZy5wYXJlbnRzUmVsYXRpb25OYW1lcyxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBpZiAoIW1hdGNoaW5nRmlsdGVycy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGZpZWxkQ29uZGl0aW9uW21hdGNoaW5nRmlsdGVyc1swXV0gPSB7aGF2ZToge3ZhbHVlczogW2ZsYXROb2RlLm5vZGUubW9kZWwuaWRdfX07XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBmaWx0ZXJzID0ge2dyb3VwczogW3tjb25kaXRpb25zOiBbZmllbGRDb25kaXRpb25dfV19O1xuXG4gICAgICAgIC8vIHRvZG8gOiBpcyBpdCByaWdodCA/IHNob3VsZG4ndCBpdCBiZSBtYW5hZ2VkIHdpdGggUXVlcnlWYXJpYWJsZXNNYW5hZ2VyJ3MgY2hhbm5lbHMgPyA/XG4gICAgICAgIGlmIChjb250ZXh0RmlsdGVyKSB7XG4gICAgICAgICAgICBmaWx0ZXJzLmdyb3Vwcy5wdXNoKC4uLmNvbnRleHRGaWx0ZXIuZ3JvdXBzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBmaWx0ZXJzO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybiBhIGNvbnRleHQgZmlsdGVyIGFwcGxpY2FibGUgdG8gdGhlIHNlcnZpY2UgZm9yIGdpdmVuIGNvbmZpZ1xuICAgICAqXG4gICAgICogQHBhcmFtIGNvbmZpZyBBcHBsaWNhYmxlIGNvbmZpZ1xuICAgICAqIEBwYXJhbSBjb250ZXh0RmlsdGVycyBMaXN0IG9mIGNvbnRleHQgZmlsdGVyc1xuICAgICAqL1xuICAgIHByaXZhdGUgZ2V0RmlsdGVyQnlTZXJ2aWNlKFxuICAgICAgICBjb25maWc6IE5hdHVyYWxIaWVyYXJjaGljQ29uZmlndXJhdGlvbixcbiAgICAgICAgY29udGV4dEZpbHRlcnM6IEhpZXJhcmNoaWNGaWx0ZXJDb25maWd1cmF0aW9uW10gfCBudWxsLFxuICAgICk6IEhpZXJhcmNoaWNGaWx0ZXJDb25maWd1cmF0aW9uWydmaWx0ZXInXSB8IG51bGwge1xuICAgICAgICBpZiAoIWNvbnRleHRGaWx0ZXJzIHx8ICFjb25maWcpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZmlsdGVyID0gY29udGV4dEZpbHRlcnMuZmluZChmID0+IGYuc2VydmljZSA9PT0gY29uZmlnLnNlcnZpY2UpO1xuICAgICAgICByZXR1cm4gZmlsdGVyID8gZmlsdGVyLmZpbHRlciA6IG51bGw7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2VhcmNoIGluIGNvbmZpZ3VyYXRpb25zLnNlbGVjdGFibGVBdEtleSBhdHRyaWJ1dGUgdG8gZmluZCBnaXZlbiBrZXkgYW5kIHJldHVybiB0aGUgY29uZmlndXJhdGlvblxuICAgICAqL1xuICAgIHByaXZhdGUgZ2V0Q29uZmlndXJhdGlvbkJ5U2VsZWN0YWJsZUtleShcbiAgICAgICAga2V5OiBOYXR1cmFsSGllcmFyY2hpY0NvbmZpZ3VyYXRpb25bJ3NlbGVjdGFibGVBdEtleSddLFxuICAgICk6IE5hdHVyYWxIaWVyYXJjaGljQ29uZmlndXJhdGlvbiB8IG51bGwge1xuICAgICAgICBpZiAoIXRoaXMuY29uZmlndXJhdGlvbikge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5jb25maWd1cmF0aW9uLmZpbmQoY29uZiA9PiBjb25mLnNlbGVjdGFibGVBdEtleSA9PT0ga2V5KSB8fCBudWxsO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0T3JDcmVhdGVNb2RlbE5vZGUoXG4gICAgICAgIGl0ZW06IEhpZXJhcmNoaWNNb2RlbCxcbiAgICAgICAgY29uZmlndXJhdGlvbjogTmF0dXJhbEhpZXJhcmNoaWNDb25maWd1cmF0aW9uLFxuICAgICk6IEhpZXJhcmNoaWNNb2RlbE5vZGUge1xuICAgICAgICBjb25zdCBub2RlID0gdGhpcy5kYXRhQ2hhbmdlLnZhbHVlLmZpbmQobiA9PiBuLm1vZGVsLmlkID09PSBpdGVtLmlkICYmIG4ubW9kZWwuX190eXBlbmFtZSA9PT0gaXRlbS5fX3R5cGVuYW1lKTtcbiAgICAgICAgcmV0dXJuIG5vZGUgfHwgbmV3IEhpZXJhcmNoaWNNb2RlbE5vZGUoaXRlbSwgY29uZmlndXJhdGlvbik7XG4gICAgfVxufVxuIl19
252
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGllcmFyY2hpYy1zZWxlY3Rvci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF0dXJhbC9zcmMvbGliL21vZHVsZXMvaGllcmFyY2hpYy1zZWxlY3Rvci9oaWVyYXJjaGljLXNlbGVjdG9yL2hpZXJhcmNoaWMtc2VsZWN0b3Iuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFXLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxXQUFXLENBQUM7QUFDdkMsT0FBTyxFQUFDLGVBQWUsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFhLE1BQU0sTUFBTSxDQUFDO0FBRWxFLE9BQU8sRUFBQyxRQUFRLEVBQUUsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFDLDRCQUE0QixFQUFpQixNQUFNLHlDQUF5QyxDQUFDO0FBVXJHLE9BQU8sRUFBa0IsbUJBQW1CLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQzs7QUFjM0UsTUFBTSxPQUFPLGdDQUFnQztJQWV6QyxZQUFvQyxRQUFrQjtRQUFsQixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBZHREOzs7O1dBSUc7UUFDYSxlQUFVLEdBQTJDLElBQUksZUFBZSxDQUF3QixFQUFFLENBQUMsQ0FBQztRQUVwSDs7OztXQUlHO1FBQ0ssa0JBQWEsR0FBcUMsRUFBRSxDQUFDO0lBRUosQ0FBQztJQUUxRDs7O09BR0c7SUFDSSxJQUFJLENBQ1AsTUFBd0MsRUFDeEMsZ0JBQXVELElBQUksRUFDM0Qsa0JBQXlDLElBQUk7UUFFN0MsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ25DLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLDZCQUE2QixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2hFLE9BQU8sSUFBSSxDQUFDLE9BQU8s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QWMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxLQUFLLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN0RSxPQUFPLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQ3pDLENBQUM7SUFFRDs7T0FFRztJQUNLLCtCQUErQixDQUNuQyxHQUFzRDtRQUV0RCxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUNyQixPQUFPLElBQUksQ0FBQztTQUNmO1FBRUQsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxlQUFlLEtBQUssR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDO0lBQ2pGLENBQUM7SUFFTyxvQkFBb0IsQ0FDeEIsSUFBcUIsRUFDckIsYUFBNkM7UUFFN0MsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxFQUFFLEtBQUssSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDLFVBQVUsS0FBSyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDL0csT0FBTyxJQUFJLElBQUksSUFBSSxtQkFBbUIsQ0FBQyxJQUFJLEVBQUUsYUFBYSxDQUFDLENBQUM7SUFDaEUsQ0FBQzs7NkhBNVRRLGdDQUFnQztpSUFBaEMsZ0NBQWdDOzJGQUFoQyxnQ0FBZ0M7a0JBRDVDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGUsIEluamVjdG9yfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7aW50ZXJzZWN0aW9ufSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIGZpcnN0LCBmb3JrSm9pbiwgT2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7ZmluYWxpemUsIG1hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtOYXR1cmFsUXVlcnlWYXJpYWJsZXNNYW5hZ2VyLCBRdWVyeVZhcmlhYmxlc30gZnJvbSAnLi4vLi4vLi4vY2xhc3Nlcy9xdWVyeS12YXJpYWJsZS1tYW5hZ2VyJztcbmltcG9ydCB7SGllcmFyY2hpY0ZsYXROb2RlfSBmcm9tICcuLi9jbGFzc2VzL2ZsYXQtbm9kZSc7XG5pbXBvcnQge1xuICAgIE5hdHVyYWxIaWVyYXJjaGljQ29uZmlndXJhdGlvbixcbiAgICBOYXR1cmFsSGllcmFyY2hpY1NlcnZpY2VDb25maWd1cmF0aW9uLFxufSBmcm9tICcuLi9jbGFzc2VzL2hpZXJhcmNoaWMtY29uZmlndXJhdGlvbic7XG5pbXBvcnQge1xuICAgIEhpZXJhcmNoaWNGaWx0ZXJDb25maWd1cmF0aW9uLFxuICAgIEhpZXJhcmNoaWNGaWx0ZXJzQ29uZmlndXJhdGlvbixcbn0gZnJvbSAnLi4vY2xhc3Nlcy9oaWVyYXJjaGljLWZpbHRlcnMtY29uZmlndXJhdGlvbic7XG5pbXBvcnQge0hpZXJhcmNoaWNNb2RlbCwgSGllcmFyY2hpY01vZGVsTm9kZX0gZnJvbSAnLi4vY2xhc3Nlcy9tb2RlbC1ub2RlJztcbmltcG9ydCB7TGl0ZXJhbH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMvdHlwZXMnO1xuaW1wb3J0IHtGaWx0ZXJHcm91cENvbmRpdGlvbn0gZnJvbSAnLi4vLi4vc2VhcmNoL2NsYXNzZXMvZ3JhcGhxbC1kb2N0cmluZS50eXBlcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgT3JnYW5pemVkTW9kZWxTZWxlY3Rpb24ge1xuICAgIFtrZXk6IHN0cmluZ106IGFueVtdO1xufVxuXG5pbnRlcmZhY2UgQ29udGV4dHVhbGl6ZWRDb25maWcge1xuICAgIGNvbmZpZ3VyYXRpb246IE5hdHVyYWxIaWVyYXJjaGljU2VydmljZUNvbmZpZ3VyYXRpb247XG4gICAgdmFyaWFibGVzTWFuYWdlcjogTmF0dXJhbFF1ZXJ5VmFyaWFibGVzTWFuYWdlcjtcbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE5hdHVyYWxIaWVyYXJjaGljU2VsZWN0b3JTZXJ2aWNlIHtcbiAgICAvKipcbiAgICAgKiBTdG9yZXMgdGhlIGdsb2JhbCByZXN1bHQgb2YgdGhlIHRyZWVcbiAgICAgKiBUaGlzIG9ic2VydmFibGUgY29udGFpbnMgTm9kZS5cbiAgICAgKiBXaGVuIGl0J3MgdXBkYXRlZCwgdGhlIFRyZWVDb250cm9sbGVyIGFuZCBUcmVlRmxhdHRlbmVyIHByb2Nlc3MgdGhlIG5ldyBhcnJheSB0byBnZW5lcmF0ZSB0aGUgZmxhdCB0cmVlLlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBkYXRhQ2hhbmdlOiBCZWhhdmlvclN1YmplY3Q8SGllcmFyY2hpY01vZGVsTm9kZVtdPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8SGllcmFyY2hpY01vZGVsTm9kZVtdPihbXSk7XG5cbiAgICAvKipcbiAgICAgKiBDb25maWd1cmF0aW9uIGZvciByZWxhdGlvbnMgYW5kIHNlbGVjdGlvbiBjb25zdHJhaW50c1xuICAgICAqXG4gICAgICogVGhlIGxpc3Qgc2hvdWxkIGJlIHNvcnRlZCBpbiB0aGUgb3JkZXIgb2YgdGhlIGhpZXJhcmNoaWMgKGxpc3QgZmlyc3QgcGFyZW50IHJ1bGVzLCB0aGVuIGNoaWxkIHJ1bGVzKVxuICAgICAqL1xuICAgIHByaXZhdGUgY29uZmlndXJhdGlvbjogTmF0dXJhbEhpZXJhcmNoaWNDb25maWd1cmF0aW9uW10gPSBbXTtcblxuICAgIHB1YmxpYyBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGluamVjdG9yOiBJbmplY3Rvcikge31cblxuICAgIC8qKlxuICAgICAqIEluaXQgY29tcG9uZW50IGJ5IHNhdmluZyB0aGUgY29tcGxldGUgY29uZmlndXJhdGlvbiwgYW5kIHRoZW4gcmV0cmlldmluZyByb290IGVsZW1lbnRzLlxuICAgICAqIFVwZGF0ZXMgKiphbm90aGVyKiogb2JzZXJ2YWJsZSAodGhpcy5kYXRhQ2hhbmdlKSB3aGVuIGRhdGEgaXMgcmV0cmlldmVkLlxuICAgICAqL1xuICAgIHB1YmxpYyBpbml0KFxuICAgICAgICBjb25maWc6IE5hdHVyYWxIaWVyYXJjaGljQ29uZmlndXJhdGlvbltdLFxuICAgICAgICBjb250ZXh0RmlsdGVyOiBIaWVyYXJjaGljRmlsdGVyc0NvbmZpZ3VyYXRpb24gfCBudWxsID0gbnVsbCxcbiAgICAgICAgc2VhcmNoVmFyaWFibGVzOiBRdWVyeVZhcmlhYmxlcyB8IG51bGwgPSBudWxsLFxuICAgICk6IE9ic2VydmFibGU8dW5rbm93bj4ge1xuICAgICAgICB0aGlzLnZhbGlkYXRlQ29uZmlndXJhdGlvbihjb25maWcpO1xuICAgICAgICB0aGlzLmNvbmZpZ3VyYXRpb24gPSB0aGlzLmluamVjdFNlcnZpY2VzSW5Db25maWd1cmF0aW9uKGNvbmZpZyk7XG4gICAgICAgIHJldHVybiB0aGlzLmdldExpc3QobnVsbCwgY29udGV4dEZpbHRlciwgc2VhcmNoVmFyaWFibGVzKS5waXBlKG1hcChkYXRhID0+IHRoaXMuZGF0YUNoYW5nZS5uZXh0KGRhdGEpKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0IGxpc3Qgb2YgY2hpbGRyZW4sIGNvbnNpZGVyaW5nIGdpdmVuIEZsYXROb2RlIGlkIGFzIGEgcGFyZW50LlxuICAgICAqIE1hcmsgbG9hZGluZyBzdGF0dXMgaW5kaXZpZHVhbGx5IG9uIG5vZGVzLlxuICAgICAqL1xuICAgIHB1YmxpYyBsb2FkQ2hpbGRyZW4oXG4gICAgICAgIGZsYXROb2RlOiBIaWVyYXJjaGljRmxhdE5vZGUsXG4gICAgICAgIGNvbnRleHRGaWx0ZXI6IEhpZXJhcmNoaWNGaWx0ZXJzQ29uZmlndXJhdGlvbiB8IG51bGwgPSBudWxsLFxuICAgICk6IHZvaWQge1xuICAgICAgICAvLyBEb250IHJlZmV0Y2ggY2hpbGRyZW4uIEltcHJvdmUgcGVyZm9ybWFuY2VzXG4gICAgICAgIC8vIFByZXZlbnRzIGludGVyZmVyZW5jZXMgYmV0d2VlbiBIaWVyYXJjaGljTW9kZWxOb2RlIHN0cnVjdHVyZSBhbmQgYW5ndWxhciBjb21wb25lbnRzIG5hdmlnYXRpb24uXG4gICAgICAgIC8vIFByZXZlbnRzIGEgYnVnIHdoZXJlIGdyYW5kIGNoaWxkcmVuIHdlcmUgbG9zdCBpZiBjbG9zaW5nIHJvb3RcbiAgICAgICAgaWYgKGZsYXROb2RlLm5vZGUuY2hpbGRyZW4ubGVuZ3RoKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBmbGF0Tm9kZS5sb2FkaW5nID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5nZXRMaXN0KGZsYXROb2RlLCBjb250ZXh0RmlsdGVyKVxuICAgICAgICAgICAgLnBpcGUoZmluYWxpemUoKCkgPT4gKGZsYXROb2RlLmxvYWRpbmcgPSBmYWxzZSkpKVxuICAgICAgICAgICAgLnN1YnNjcmliZShpdGVtcyA9PiB7XG4gICAgICAgICAgICAgICAgZmxhdE5vZGUubm9kZS5jaGlsZHJlbkNoYW5nZS5uZXh0KGl0ZW1zKTtcbiAgICAgICAgICAgICAgICB0aGlzLmRhdGFDaGFuZ2UubmV4dCh0aGlzLmRhdGFDaGFuZ2UudmFsdWUpO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIHNlYXJjaChzZWFyY2hWYXJpYWJsZXM6IFF1ZXJ5VmFyaWFibGVzLCBjb250ZXh0RmlsdGVyOiBIaWVyYXJjaGljRmlsdGVyc0NvbmZpZ3VyYXRpb24gfCBudWxsID0gbnVsbCk6IHZvaWQge1xuICAgICAgICB0aGlzLmdldExpc3QobnVsbCwgY29udGV4dEZpbHRlciwgc2VhcmNoVmFyaWFibGVzKS5zdWJzY3JpYmUoaXRlbXMgPT4ge1xuICAgICAgICAgICAgdGhpcy5kYXRhQ2hhbmdlLm5leHQoaXRlbXMpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXRyaWV2ZSBlbGVtZW50cyBmcm9tIHRoZSBzZXJ2ZXJcbiAgICAgKiBHZXQgcm9vdCBlbGVtZW50cyBpZiBub2RlIGlzIG51bGwsIG9yIGNoaWxkIGVsZW1lbnRzIGlmIG5vZGUgaXMgZ2l2ZW5cbiAgICAgKi9cbiAgICBwcml2YXRlIGdldExpc3QoXG4gICAgICAgIG5vZGU6IEhpZXJhcmNoaWNGbGF0Tm9kZSB8IG51bGwgPSBudWxsLFxuICAgICAgICBjb250ZXh0RmlsdGVyczogSGllcmFyY2hpY0ZpbHRlcnNDb25maWd1cmF0aW9uIHwgbnVsbCA9IG51bGwsXG4gICAgICAgIHNlYXJjaFZhcmlhYmxlczogUXVlcnlWYXJpYWJsZXMgfCBudWxsID0gbnVsbCxcbiAgICApOiBPYnNlcnZhYmxlPEhpZXJhcmNoaWNNb2RlbE5vZGVbXT4ge1xuICAgICAgICBjb25zdCBjb25maWd1cmF0aW9ucyA9IHRoaXMuZ2V0Q29udGV4dHVhbGl6ZWRDb25maWdzKG5vZGUsIGNvbnRleHRGaWx0ZXJzLCBzZWFyY2hWYXJpYWJsZXMpO1xuICAgICAgICBjb25zdCBvYnNlcnZhYmxlcyA9IGNvbmZpZ3VyYXRpb25zLm1hcChjID0+IGMuY29uZmlndXJhdGlvbi5pbmplY3RlZFNlcnZpY2UuZ2V0QWxsKGMudmFyaWFibGVzTWFuYWdlcikpO1xuXG4gICAgICAgIC8vIEZpcmUgcXVlcmllcywgYW5kIG1lcmdlIHJlc3VsdHMsIHRyYW5zZm9ybWluZyBhcG9sbG8gaXRlbXMgaW50byBOb2RlIE9iamVjdC5cbiAgICAgICAgcmV0dXJuIGZvcmtKb2luKG9ic2VydmFibGVzKS5waXBlKFxuICAgICAgICAgICAgbWFwKHJlc3VsdHMgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGxpc3Rpbmc6IEhpZXJhcmNoaWNNb2RlbE5vZGVbXSA9IFtdO1xuXG4gICAgICAgICAgICAgICAgLy8gRm9yIGVhY2ggcmVzdWx0IG9mIGFuIG9ic2VydmFibGVcbiAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHJlc3VsdHMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gRm9yIGVhY2ggaXRlbSBvZiB0aGUgcmVzdWx0LCBjb252ZXJ0IGludG8gTm9kZSBvYmplY3RcbiAgICAgICAgICAgICAgICAgICAgZm9yIChjb25zdCBpdGVtIG9mIHJlc3VsdHNbaV0uaXRlbXMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpc3RpbmcucHVzaCh0aGlzLmdldE9yQ3JlYXRlTW9kZWxOb2RlKGl0ZW0sIGNvbmZpZ3VyYXRpb25zW2ldLmNvbmZpZ3VyYXRpb24pKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHJldHVybiBsaXN0aW5nO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHVibGljIGNvdW50SXRlbXMobm9kZTogSGllcmFyY2hpY0ZsYXROb2RlLCBjb250ZXh0RmlsdGVyczogSGllcmFyY2hpY0ZpbHRlcnNDb25maWd1cmF0aW9uIHwgbnVsbCA9IG51bGwpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgY29uZmlndXJhdGlvbnMgPSB0aGlzLmdldENvbnRleHR1YWxpemVkQ29uZmlncyhub2RlLCBjb250ZXh0RmlsdGVycywgbnVsbCk7XG4gICAgICAgIGNvbnN0IG9ic2VydmFibGVzID0gY29uZmlndXJhdGlvbnMubWFwKGMgPT5cbiAgICAgICAgICAgIGMuY29uZmlndXJhdGlvbi5pbmplY3RlZFNlcnZpY2UuY291bnQoYy52YXJpYWJsZXNNYW5hZ2VyKS5waXBlKGZpcnN0KCkpLFxuICAgICAgICApO1xuXG4gICAgICAgIGZvcmtKb2luKG9ic2VydmFibGVzKS5zdWJzY3JpYmUocmVzdWx0cyA9PiB7XG4gICAgICAgICAgICBjb25zdCB0b3RhbEl0ZW1zID0gcmVzdWx0cy5yZWR1Y2UoKHRvdGFsLCBsZW5ndGgpID0+IHRvdGFsICsgbGVuZ3RoLCAwKTtcbiAgICAgICAgICAgIG5vZGUuZXhwYW5kYWJsZSA9IHRvdGFsSXRlbXMgPiAwO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldENvbnRleHR1YWxpemVkQ29uZmlncyhcbiAgICAgICAgbm9kZTogSGllcmFyY2hpY0ZsYXROb2RlIHwgbnVsbCA9IG51bGwsXG4gICAgICAgIGNvbnRleHRGaWx0ZXJzOiBIaWVyYXJjaGljRmlsdGVyc0NvbmZpZ3VyYXRpb24gfCBudWxsID0gbnVsbCxcbiAgICAgICAgc2VhcmNoVmFyaWFibGVzOiBRdWVyeVZhcmlhYmxlcyB8IG51bGwgPSBudWxsLFxuICAgICk6IENvbnRleHR1YWxpemVkQ29uZmlnW10ge1xuICAgICAgICBjb25zdCBjb25maWdzQW5kU2VydmljZXM6IENvbnRleHR1YWxpemVkQ29uZmlnW10gPSBbXTtcblxuICAgICAgICAvLyBDb25zaWRlcmluZyB0aGUgd2hvbGUgY29uZmlndXJhdGlvbiBtYXkgY2F1c2UgcXVlcmllcyB3aXRoIG5vL3dyb25nIHJlc3VsdHMgd2UgaGF2ZSBpbXBlcmF0aXZlbHkgdG8gYXZvaWQgIVxuICAgICAgICAvLyBlLmcgdGhlcmUgYXJlIGNyb3NzIGRlcGVuZGVuY2llcyBiZXR3ZWVuIGVxdWlwbWVudHMgYW5kIHRheG9ub21pZXMgZmlsdGVycy4gQm90aCBoYXZlIFwicGFyZW50c1wiIGFuZCBcInRheG9ub21pZXNcIiBmaWx0ZXJzLi4uXG4gICAgICAgIC8vIFdoZW4gY2xpY2tpbmcgb24gYSBlcXVpcG1lbnQsIHRoZSBjb25maWd1cmF0aW9uIG9mIHRheG9ub21pZXMgd2l0aCBtYXRjaCBcInBhcmVudHNcIiBmaWx0ZXIsIGJ1dCB1c2UgdGhlIGlkIG9mIHRoZSBlcXVpcG1lbnRcbiAgICAgICAgLy8gVG8gZml4IHRoaXMsIHdlIHNob3VsZCBvbmx5IGNvbnNpZGVyIGNvbmZpZ3VyYXRpb24gYWZ0ZXIgdGhlIG9uZSBnaXZlbiBieSB0aGUgbm9kZSBwYXNzZWQgYXMgYXJndW1lbnQuXG4gICAgICAgIC8vIFRoYXQgd291bGQgbWVhbiA6IG5vIGNoaWxkIGNhbiBhZmZlY3QgcGFyZW50LlxuICAgICAgICAvLyBUaGF0IHdvdWxkIG1lYW4gOiBzb3J0aW5nIGluIHRoZSBjb25maWd1cmF0aW9uIGhhdmUgc2VtYW50aWMvaGllcmFyY2h5IGltcGxpY2F0aW9uc1xuICAgICAgICBjb25zdCBjb25maWdzID0gbm9kZSA/IHRoaXMuZ2V0TmV4dENvbmZpZ3Mobm9kZS5ub2RlLmNvbmZpZykgOiB0aGlzLmNvbmZpZ3VyYXRpb247XG5cbiAgICAgICAgY29uc3QgcGFnaW5hdGlvbiA9IHtwYWdlSW5kZXg6IDAsIHBhZ2VTaXplOiA5OTl9O1xuXG4gICAgICAgIGZvciAoY29uc3QgY29uZmlnIG9mIGNvbmZpZ3MpIHtcbiAgICAgICAgICAgIGNvbnN0IGl0ZW06IENvbnRleHR1YWxpemVkQ29uZmlnID0ge30gYXMgQ29udGV4dHVhbGl6ZWRDb25maWc7XG4gICAgICAgICAgICBjb25zdCBjb250ZXh0RmlsdGVyID0gdGhpcy5nZXRGaWx0ZXJCeVNlcnZpY2UoY29uZmlnLCBjb250ZXh0RmlsdGVycyk7XG4gICAgICAgICAgICBjb25zdCBmaWx0ZXIgPSB0aGlzLmdldFNlcnZpY2VGaWx0ZXIobm9kZSwgY29uZmlnLCBjb250ZXh0RmlsdGVyLCAhIXNlYXJjaFZhcmlhYmxlcyk7XG5cbiAgICAgICAgICAgIGlmICghZmlsdGVyIHx8ICFjb25maWcuaW5qZWN0ZWRTZXJ2aWNlKSB7XG4gICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IHZhcmlhYmxlc01hbmFnZXIgPSBuZXcgTmF0dXJhbFF1ZXJ5VmFyaWFibGVzTWFuYWdlcigpO1xuXG4gICAgICAgICAgICB2YXJpYWJsZXNNYW5hZ2VyLnNldCgndmFyaWFibGVzJywge2ZpbHRlcjogZmlsdGVyLCBwYWdpbmF0aW9uOiBwYWdpbmF0aW9ufSk7XG4gICAgICAgICAgICB2YXJpYWJsZXNNYW5hZ2VyLnNldCgnY29uZmlnLWZpbHRlcicsIHtmaWx0ZXI6IGNvbmZpZy5maWx0ZXJ9KTtcblxuICAgICAgICAgICAgaWYgKHNlYXJjaFZhcmlhYmxlcykge1xuICAgICAgICAgICAgICAgIHZhcmlhYmxlc01hbmFnZXIuc2V0KCduYXR1cmFsLXNlYXJjaCcsIHNlYXJjaFZhcmlhYmxlcyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIENhc3QgTmF0dXJhbEhpZXJhcmNoaWNTZXJ2aWNlQ29uZmlndXJhdGlvbiBiZWNhdXNlIHRoZSB1bmRlZmluZWRcbiAgICAgICAgICAgIC8vIGluamVjdGVkU2VydmljZXMgYXJlIGZpbHRlcmVkIGVhcmxpZXIgYW5kIHdlIGNhbiB2YWxpZGF0ZSB2YWx1ZVxuICAgICAgICAgICAgaXRlbS5jb25maWd1cmF0aW9uID0gY29uZmlnIGFzIE5hdHVyYWxIaWVyYXJjaGljU2VydmljZUNvbmZpZ3VyYXRpb247XG4gICAgICAgICAgICBpdGVtLnZhcmlhYmxlc01hbmFnZXIgPSB2YXJpYWJsZXNNYW5hZ2VyO1xuICAgICAgICAgICAgY29uZmlnc0FuZFNlcnZpY2VzLnB1c2goaXRlbSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gY29uZmlnc0FuZFNlcnZpY2VzO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybiBtb2RlbHMgbWF0Y2hpbmcgZ2l2ZW4gRmxhdE5vZGVzXG4gICAgICogUmV0dXJucyBhIExpdGVyYWwgb2YgbW9kZWxzIGdyb3VwZWQgYnkgdGhlaXIgY29uZmlndXJhdGlvbiBhdHRyaWJ1dGUgXCJzZWxlY3RhYmxlQXRLZXlcIlxuICAgICAqL1xuICAgIHB1YmxpYyB0b09yZ2FuaXplZFNlbGVjdGlvbihub2RlczogSGllcmFyY2hpY01vZGVsTm9kZVtdKTogT3JnYW5pemVkTW9kZWxTZWxlY3Rpb24ge1xuICAgICAgICBjb25zdCBzZWxlY3Rpb24gPSB0aGlzLmNvbmZpZ3VyYXRpb24ucmVkdWNlKChncm91cCwgY29uZmlnKSA9PiB7XG4gICAgICAgICAgICBpZiAoY29uZmlnLnNlbGVjdGFibGVBdEtleSkge1xuICAgICAgICAgICAgICAgIGdyb3VwW2NvbmZpZy5zZWxlY3RhYmxlQXRLZXldID0gW107XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gZ3JvdXA7XG4gICAgICAgIH0sIHt9IGFzIExpdGVyYWwpO1xuXG4gICAgICAgIGZvciAoY29uc3Qgbm9kZSBvZiBub2Rlcykge1xuICAgICAgICAgICAgaWYgKG5vZGUuY29uZmlnLnNlbGVjdGFibGVBdEtleSkge1xuICAgICAgICAgICAgICAgIHNlbGVjdGlvbltub2RlLmNvbmZpZy5zZWxlY3RhYmxlQXRLZXldLnB1c2gobm9kZS5tb2RlbCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gc2VsZWN0aW9uO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFRyYW5zZm9ybXMgYW4gT3JnYW5pemVkTW9kZWxTZWxlY3Rpb24gaW50byBhIGxpc3Qgb2YgTW9kZWxOb2Rlc1xuICAgICAqL1xuICAgIHB1YmxpYyBmcm9tT3JnYW5pemVkU2VsZWN0aW9uKG9yZ2FuaXplZE1vZGVsU2VsZWN0aW9uOiBPcmdhbml6ZWRNb2RlbFNlbGVjdGlvbik6IEhpZXJhcmNoaWNNb2RlbE5vZGVbXSB7XG4gICAgICAgIGlmICghb3JnYW5pemVkTW9kZWxTZWxlY3Rpb24pIHtcbiAgICAgICAgICAgIHJldHVybiBbXTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHJlc3VsdDogSGllcmFyY2hpY01vZGVsTm9kZVtdID0gW107XG4gICAgICAgIGZvciAoY29uc3Qgc2VsZWN0YWJsZUF0S2V5IG9mIE9iamVjdC5rZXlzKG9yZ2FuaXplZE1vZGVsU2VsZWN0aW9uKSkge1xuICAgICAgICAgICAgY29uc3QgY29uZmlnID0gdGhpcy5nZXRDb25maWd1cmF0aW9uQnlTZWxlY3RhYmxlS2V5KHNlbGVjdGFibGVBdEtleSk7XG4gICAgICAgICAgICBpZiAoY29uZmlnKSB7XG4gICAgICAgICAgICAgICAgZm9yIChjb25zdCBtb2RlbCBvZiBvcmdhbml6ZWRNb2RlbFNlbGVjdGlvbltzZWxlY3RhYmxlQXRLZXldKSB7XG4gICAgICAgICAgICAgICAgICAgIHJlc3VsdC5wdXNoKG5ldyBIaWVyYXJjaGljTW9kZWxOb2RlKG1vZGVsLCBjb25maWcpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGluamVjdFNlcnZpY2VzSW5Db25maWd1cmF0aW9uKFxuICAgICAgICBjb25maWd1cmF0aW9uczogTmF0dXJhbEhpZXJhcmNoaWNDb25maWd1cmF0aW9uW10sXG4gICAgKTogTmF0dXJhbEhpZXJhcmNoaWNDb25maWd1cmF0aW9uW10ge1xuICAgICAgICBmb3IgKGNvbnN0IGNvbmZpZyBvZiBjb25maWd1cmF0aW9ucykge1xuICAgICAgICAgICAgaWYgKCFjb25maWcuaW5qZWN0ZWRTZXJ2aWNlKSB7XG4gICAgICAgICAgICAgICAgY29uZmlnLmluamVjdGVkU2VydmljZSA9IHRoaXMuaW5qZWN0b3IuZ2V0KGNvbmZpZy5zZXJ2aWNlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBjb25maWd1cmF0aW9ucztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDaGVja3MgdGhhdCBlYWNoIGNvbmZpZ3VyYXRpb24uc2VsZWN0YWJsZUF0S2V5IGF0dHJpYnV0ZSBpcyB1bmlxdWVcbiAgICAgKi9cbiAgICBwcml2YXRlIHZhbGlkYXRlQ29uZmlndXJhdGlvbihjb25maWd1cmF0aW9uczogTmF0dXJhbEhpZXJhcmNoaWNDb25maWd1cmF0aW9uW10pOiB2b2lkIHtcbiAgICAgICAgY29uc3Qgc2VsZWN0YWJsZUF0S2V5QXR0cmlidXRlczogc3RyaW5nW10gPSBbXTtcbiAgICAgICAgZm9yIChjb25zdCBjb25maWcgb2YgY29uZmlndXJhdGlvbnMpIHtcbiAgICAgICAgICAgIGlmIChjb25maWcuc2VsZWN0YWJsZUF0S2V5KSB7XG4gICAgICAgICAgICAgICAgY29uc3Qga2V5SW5kZXggPSBzZWxlY3RhYmxlQXRLZXlBdHRyaWJ1dGVzLmluZGV4T2YoY29uZmlnLnNlbGVjdGFibGVBdEtleSk7XG5cbiAgICAgICAgICAgICAgICBpZiAoa2V5SW5kZXggPT09IC0xICYmIGNvbmZpZy5zZWxlY3RhYmxlQXRLZXkpIHtcbiAgICAgICAgICAgICAgICAgICAgc2VsZWN0YWJsZUF0S2V5QXR0cmlidXRlcy5wdXNoKGNvbmZpZy5zZWxlY3RhYmxlQXRLZXkpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIFRPRE8gOiByZW1vdmUgP1xuICAgICAgICAgICAgICAgIC8vIFRoaXMgYmVoYXZpb3IgbWF5YmUgZGFuZ2Vyb3VzIGluIGNhc2Ugd2UgcmUtb3BlbiBoaWVyYXJjaGljYWwgc2VsZWN0b3Igd2l0aCB0aGUgbGFzdCByZXR1cm5lZCBjb25maWcgaGF2aW5nIG5vbi11bmlxdWVcbiAgICAgICAgICAgICAgICAvLyBrZXlzXG4gICAgICAgICAgICAgICAgaWYgKGtleUluZGV4IDwgLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS53YXJuKCdJbnZhbGlkIGhpZXJhcmNoaWMgY29uZmlndXJhdGlvbiA6IHNlbGVjdGFibGVBdEtleSBhdHRyaWJ1dGUgc2hvdWxkIGJlIHVuaXF1ZScpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybiBjb25maWd1cmF0aW9ucyBzZXR1cCBpbiB0aGUgbGlzdCBhZnRlciB0aGUgZ2l2ZW4gb25lXG4gICAgICovXG4gICAgcHJpdmF0ZSBnZXROZXh0Q29uZmlncyhjb25maWc6IE5hdHVyYWxIaWVyYXJjaGljQ29uZmlndXJhdGlvbik6IE5hdHVyYWxIaWVyYXJjaGljQ29uZmlndXJhdGlvbltdIHtcbiAgICAgICAgY29uc3QgY29uZmlnSW5kZXggPSB0aGlzLmNvbmZpZ3VyYXRpb24uZmluZEluZGV4KGMgPT4gYyA9PT0gY29uZmlnKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29uZmlndXJhdGlvbi5zbGljZShjb25maWdJbmRleCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQnVpbGRzIHF1ZXJ5VmFyaWFibGVzIGZpbHRlciBmb3IgY2hpbGRyZW4gcXVlcnlcbiAgICAgKi9cbiAgICBwcml2YXRlIGdldFNlcnZpY2VGaWx0ZXIoXG4gICAgICAgIGZsYXROb2RlOiBIaWVyYXJjaGljRmxhdE5vZGUgfCBudWxsLFxuICAgICAgICBjb25maWc6IE5hdHVyYWxIaWVyYXJjaGljQ29uZmlndXJhdGlvbixcbiAgICAgICAgY29udGV4dEZpbHRlcjogSGllcmFyY2hpY0ZpbHRlckNvbmZpZ3VyYXRpb25bJ2ZpbHRlciddIHwgbnVsbCA9IG51bGwsXG4gICAgICAgIGFsbERlZXBzID0gZmFsc2UsXG4gICAgKTogSGllcmFyY2hpY0ZpbHRlckNvbmZpZ3VyYXRpb25bJ2ZpbHRlciddIHwgbnVsbCB7XG4gICAgICAgIGNvbnN0IGZpZWxkQ29uZGl0aW9uOiBGaWx0ZXJHcm91cENvbmRpdGlvbiA9IHt9O1xuXG4gICAgICAgIC8vIGlmIG5vIHBhcmVudCwgZmlsdGVyIGVtcHR5IGVsZW1lbnRzXG4gICAgICAgIGlmICghZmxhdE5vZGUpIHtcbiAgICAgICAgICAgIGlmICghY29uZmlnLnBhcmVudHNSZWxhdGlvbk5hbWVzKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGNvbnRleHRGaWx0ZXIgPyBjb250ZXh0RmlsdGVyIDoge307XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmICghYWxsRGVlcHMpIHtcbiAgICAgICAgICAgICAgICBjb25maWcucGFyZW50c1JlbGF0aW9uTmFtZXMuZm9yRWFjaChmID0+IHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGRDb25kaXRpb25bZl0gPSB7ZW1wdHk6IHt9fTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGlmICghZmxhdE5vZGUubm9kZS5jb25maWcuY2hpbGRyZW5SZWxhdGlvbk5hbWVzIHx8ICFjb25maWcucGFyZW50c1JlbGF0aW9uTmFtZXMpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgY29uc3QgbWF0Y2hpbmdGaWx0ZXJzID0gaW50ZXJzZWN0aW9uKFxuICAgICAgICAgICAgICAgIGZsYXROb2RlLm5vZGUuY29uZmlnLmNoaWxkcmVuUmVsYXRpb25OYW1lcyxcbiAgICAgICAgICAgICAgICBjb25maWcucGFyZW50c1JlbGF0aW9uTmFtZXMsXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgaWYgKCFtYXRjaGluZ0ZpbHRlcnMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBmaWVsZENvbmRpdGlvblttYXRjaGluZ0ZpbHRlcnNbMF1dID0ge2hhdmU6IHt2YWx1ZXM6IFtmbGF0Tm9kZS5ub2RlLm1vZGVsLmlkXX19O1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZmlsdGVycyA9IHtncm91cHM6IFt7Y29uZGl0aW9uczogW2ZpZWxkQ29uZGl0aW9uXX1dfTtcblxuICAgICAgICAvLyB0b2RvIDogaXMgaXQgcmlnaHQgPyBzaG91bGRuJ3QgaXQgYmUgbWFuYWdlZCB3aXRoIFF1ZXJ5VmFyaWFibGVzTWFuYWdlcidzIGNoYW5uZWxzID8gP1xuICAgICAgICBpZiAoY29udGV4dEZpbHRlcikge1xuICAgICAgICAgICAgZmlsdGVycy5ncm91cHMucHVzaCguLi5jb250ZXh0RmlsdGVyLmdyb3Vwcyk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gZmlsdGVycztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm4gYSBjb250ZXh0IGZpbHRlciBhcHBsaWNhYmxlIHRvIHRoZSBzZXJ2aWNlIGZvciBnaXZlbiBjb25maWdcbiAgICAgKlxuICAgICAqIEBwYXJhbSBjb25maWcgQXBwbGljYWJsZSBjb25maWdcbiAgICAgKiBAcGFyYW0gY29udGV4dEZpbHRlcnMgTGlzdCBvZiBjb250ZXh0IGZpbHRlcnNcbiAgICAgKi9cbiAgICBwcml2YXRlIGdldEZpbHRlckJ5U2VydmljZShcbiAgICAgICAgY29uZmlnOiBOYXR1cmFsSGllcmFyY2hpY0NvbmZpZ3VyYXRpb24sXG4gICAgICAgIGNvbnRleHRGaWx0ZXJzOiBIaWVyYXJjaGljRmlsdGVyQ29uZmlndXJhdGlvbltdIHwgbnVsbCxcbiAgICApOiBIaWVyYXJjaGljRmlsdGVyQ29uZmlndXJhdGlvblsnZmlsdGVyJ10gfCBudWxsIHtcbiAgICAgICAgaWYgKCFjb250ZXh0RmlsdGVycyB8fCAhY29uZmlnKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGZpbHRlciA9IGNvbnRleHRGaWx0ZXJzLmZpbmQoZiA9PiBmLnNlcnZpY2UgPT09IGNvbmZpZy5zZXJ2aWNlKTtcbiAgICAgICAgcmV0dXJuIGZpbHRlciA/IGZpbHRlci5maWx0ZXIgOiBudWxsO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNlYXJjaCBpbiBjb25maWd1cmF0aW9ucy5zZWxlY3RhYmxlQXRLZXkgYXR0cmlidXRlIHRvIGZpbmQgZ2l2ZW4ga2V5IGFuZCByZXR1cm4gdGhlIGNvbmZpZ3VyYXRpb25cbiAgICAgKi9cbiAgICBwcml2YXRlIGdldENvbmZpZ3VyYXRpb25CeVNlbGVjdGFibGVLZXkoXG4gICAgICAgIGtleTogTmF0dXJhbEhpZXJhcmNoaWNDb25maWd1cmF0aW9uWydzZWxlY3RhYmxlQXRLZXknXSxcbiAgICApOiBOYXR1cmFsSGllcmFyY2hpY0NvbmZpZ3VyYXRpb24gfCBudWxsIHtcbiAgICAgICAgaWYgKCF0aGlzLmNvbmZpZ3VyYXRpb24pIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuY29uZmlndXJhdGlvbi5maW5kKGNvbmYgPT4gY29uZi5zZWxlY3RhYmxlQXRLZXkgPT09IGtleSkgfHwgbnVsbDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldE9yQ3JlYXRlTW9kZWxOb2RlKFxuICAgICAgICBpdGVtOiBIaWVyYXJjaGljTW9kZWwsXG4gICAgICAgIGNvbmZpZ3VyYXRpb246IE5hdHVyYWxIaWVyYXJjaGljQ29uZmlndXJhdGlvbixcbiAgICApOiBIaWVyYXJjaGljTW9kZWxOb2RlIHtcbiAgICAgICAgY29uc3Qgbm9kZSA9IHRoaXMuZGF0YUNoYW5nZS52YWx1ZS5maW5kKG4gPT4gbi5tb2RlbC5pZCA9PT0gaXRlbS5pZCAmJiBuLm1vZGVsLl9fdHlwZW5hbWUgPT09IGl0ZW0uX190eXBlbmFtZSk7XG4gICAgICAgIHJldHVybiBub2RlIHx8IG5ldyBIaWVyYXJjaGljTW9kZWxOb2RlKGl0ZW0sIGNvbmZpZ3VyYXRpb24pO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,5 +1,7 @@
1
1
  import { LogicalOperator, } from './graphql-doctrine.types';
2
2
  import { deepClone, getFacetFromSelection } from './utils';
3
+ import { replaceToday } from './transformers';
4
+ import { TypeDateComponent } from '../../dropdown-components/type-date/type-date.component';
3
5
  export function toGraphQLDoctrineFilter(facets, selections) {
4
6
  selections = deepClone(selections);
5
7
  const filter = {};
@@ -13,7 +15,7 @@ export function toGraphQLDoctrineFilter(facets, selections) {
13
15
  const facet = getFacetFromSelection(facets, selection);
14
16
  const transformedSelection = transformSelection(facet, selection);
15
17
  // Skip inverted flag and remove it from needed inverted flags
16
- if (facet && isInvertedFlag(facet)) {
18
+ if (isInvertedFlag(facet)) {
17
19
  neededInversedFlags.splice(neededInversedFlags.indexOf(facet), 1);
18
20
  }
19
21
  else {
@@ -97,9 +99,13 @@ function wrapWithFieldName(field, condition) {
97
99
  return result;
98
100
  }
99
101
  function transformSelection(facet, selection) {
100
- return facet && facet.transform ? facet.transform(selection) : selection;
102
+ const newSelection = facet && facet.transform ? facet.transform(selection) : selection;
103
+ return isDateFacet(facet) ? replaceToday(newSelection) : selection;
101
104
  }
102
- function isInvertedFlag(f) {
103
- return ('inversed' in f && f.inversed) || false;
105
+ function isInvertedFlag(facet) {
106
+ return (!!facet && 'inversed' in facet && facet.inversed) || false;
104
107
  }
105
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JhcGhxbC1kb2N0cmluZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL2xpYi9tb2R1bGVzL3NlYXJjaC9jbGFzc2VzL2dyYXBocWwtZG9jdHJpbmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQU1ILGVBQWUsR0FDbEIsTUFBTSwwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLEVBQUMsU0FBUyxFQUFFLHFCQUFxQixFQUFDLE1BQU0sU0FBUyxDQUFDO0FBRXpELE1BQU0sVUFBVSx1QkFBdUIsQ0FDbkMsTUFBa0MsRUFDbEMsVUFBMEM7SUFFMUMsVUFBVSxHQUFHLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUVuQyxNQUFNLE1BQU0sR0FBVyxFQUFFLENBQUM7SUFDMUIsSUFBSSxDQUFDLFVBQVUsSUFBSSxVQUFVLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtRQUN4QyxVQUFVLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztLQUNyQjtJQUVELEtBQUssTUFBTSxlQUFlLElBQUksVUFBVSxFQUFFO1FBQ3RDLE1BQU0sS0FBSyxHQUFnQixFQUFFLENBQUM7UUFDOUIsTUFBTSxtQkFBbUIsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUV4RSxLQUFLLE1BQU0sU0FBUyxJQUFJLGVBQWUsRUFBRTtZQUNyQyxNQUFNLEtBQUssR0FBRyxxQkFBcUIsQ0FBQyxNQUFNLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFDdkQsTUFBTSxvQkFBb0IsR0FBRyxrQkFBa0IsQ0FBQyxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFFbEUsOERBQThEO1lBQzlELElBQUksS0FBSyxJQUFJLGNBQWMsQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDaEMsbUJBQW1CLENBQUMsTUFBTSxD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S0FDSjtBQUNMLENBQUM7QUFFRCxTQUFTLGlCQUFpQixDQUFDLEtBQWEsRUFBRSxTQUFvQztJQUMxRSxNQUFNLE1BQU0sR0FBeUIsRUFBRSxDQUFDO0lBRXhDLHVDQUF1QztJQUN2QyxJQUFJLEtBQUssS0FBSyxRQUFRLElBQUksU0FBUyxDQUFDLElBQUksRUFBRTtRQUN0QyxPQUFPLEVBQUMsTUFBTSxFQUFFLEVBQUMsTUFBTSxFQUFFLEVBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFDLEVBQUMsRUFBeUIsQ0FBQztLQUNwRjtTQUFNO1FBQ0gsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLFNBQVMsQ0FBQztLQUM3QjtJQUVELE9BQU8sTUFBTSxDQUFDO0FBQ2xCLENBQUM7QUFFRCxTQUFTLGtCQUFrQixDQUFDLEtBQW1CLEVBQUUsU0FBaUM7SUFDOUUsT0FBTyxLQUFLLElBQUksS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0FBQzdFLENBQUM7QUFFRCxTQUFTLGNBQWMsQ0FBQyxDQUFRO0lBQzVCLE9BQU8sQ0FBQyxVQUFVLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxLQUFLLENBQUM7QUFDcEQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RmFjZXQsIEZsYWdGYWNldCwgTmF0dXJhbFNlYXJjaEZhY2V0c30gZnJvbSAnLi4vdHlwZXMvZmFjZXQnO1xuaW1wb3J0IHtOYXR1cmFsU2VhcmNoU2VsZWN0aW9uLCBOYXR1cmFsU2VhcmNoU2VsZWN0aW9uc30gZnJvbSAnLi4vdHlwZXMvdmFsdWVzJztcbmltcG9ydCB7XG4gICAgRmlsdGVyLFxuICAgIEZpbHRlckdyb3VwLFxuICAgIEZpbHRlckdyb3VwQ29uZGl0aW9uLFxuICAgIEZpbHRlckdyb3VwQ29uZGl0aW9uRmllbGQsXG4gICAgSm9pbk9uLFxuICAgIExvZ2ljYWxPcGVyYXRvcixcbn0gZnJvbSAnLi9ncmFwaHFsLWRvY3RyaW5lLnR5cGVzJztcbmltcG9ydCB7ZGVlcENsb25lLCBnZXRGYWNldEZyb21TZWxlY3Rpb259IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgZnVuY3Rpb24gdG9HcmFwaFFMRG9jdHJpbmVGaWx0ZXIoXG4gICAgZmFjZXRzOiBOYXR1cmFsU2VhcmNoRmFjZXRzIHwgbnVsbCxcbiAgICBzZWxlY3Rpb25zOiBOYXR1cmFsU2VhcmNoU2VsZWN0aW9ucyB8IG51bGwsXG4pOiBGaWx0ZXIge1xuICAgIHNlbGVjdGlvbnMgPSBkZWVwQ2xvbmUoc2VsZWN0aW9ucyk7XG5cbiAgICBjb25zdCBmaWx0ZXI6IEZpbHRlciA9IHt9O1xuICAgIGlmICghc2VsZWN0aW9ucyB8fCBzZWxlY3Rpb25zLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICBzZWxlY3Rpb25zID0gW1tdXTtcbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IGdyb3VwU2VsZWN0aW9ucyBvZiBzZWxlY3Rpb25zKSB7XG4gICAgICAgIGNvbnN0IGdyb3VwOiBGaWx0ZXJHcm91cCA9IHt9O1xuICAgICAgICBjb25zdCBuZWVkZWRJbnZlcnNlZEZsYWdzID0gZmFjZXRzID8gZmFjZXRzLmZpbHRlcihpc0ludmVydGVkRmxhZykgOiBbXTtcblxuICAgICAgICBmb3IgKGNvbnN0IHNlbGVjdGlvbiBvZiBncm91cFNlbGVjdGlvbnMpIHtcbiAgICAgICAgICAgIGNvbnN0IGZhY2V0ID0gZ2V0RmFjZXRGcm9tU2VsZWN0aW9uKGZhY2V0cywgc2VsZWN0aW9uKTtcbiAgICAgICAgICAgIGNvbnN0IHRyYW5zZm9ybWVkU2VsZWN0aW9uID0gdHJhbnNmb3JtU2VsZWN0aW9uKGZhY2V0LCBzZWxlY3Rpb24pO1xuXG4gICAgICAgICAgICAvLyBTa2lwIGludmVydGVkIGZsYWcgYW5kIHJlbW92ZSBpdCBmcm9tIG5lZWRlZCBpbnZlcnRlZCBmbGFnc1xuICAgICAgICAgICAgaWYgKGZhY2V0ICYmIGlzSW52ZXJ0ZWRGbGFnKGZhY2V0KSkge1xuICAgICAgICAgICAgICAgIG5lZWRlZEludmVyc2VkRmxhZ3Muc3BsaWNlKG5lZWRlZEludmVyc2VkRmxhZ3MuaW5kZXhPZihmYWNldCksIDEpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBhcHBseUpvaW5BbmRDb25kaXRpb24oZ3JvdXAsIHRyYW5zZm9ybWVkU2VsZWN0aW9uKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGZvciAoY29uc3QgZmFjZXQgb2YgbmVlZGVkSW52ZXJzZWRGbGFncykge1xuICAgICAgICAgICAgY29uc3QgdHJhbnNmb3JtZWRTZWxlY3Rpb24gPSB0cmFuc2Zvcm1TZWxlY3Rpb24oZmFjZXQsIHtcbiAgICAgICAgICAgICAgICBmaWVsZDogZmFjZXQuZmllbGQsXG4gICAgICAgICAgICAgICAgbmFtZTogZmFjZXQubmFtZSxcbiAgICAgICAgICAgICAgICBjb25kaXRpb246IGRlZXBDbG9uZSgoZmFjZXQgYXMgRmxhZ0ZhY2V0KS5jb25kaXRpb24pLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBhcHBseUpvaW5BbmRDb25kaXRpb24oZ3JvdXAsIHRyYW5zZm9ybWVkU2VsZWN0aW9uKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGFkZEdyb3VwVG9GaWx0ZXIoZmlsdGVyLCBncm91cCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZpbHRlcjtcbn1cblxuZnVuY3Rpb24gYXBwbHlKb2luQW5kQ29uZGl0aW9uKGdyb3VwOiBGaWx0ZXJHcm91cCwgc2VsZWN0aW9uOiBOYXR1cmFsU2VhcmNoU2VsZWN0aW9uKTogdm9pZCB7XG4gICAgLy8gQXBwbHkgam9pbiwgdGhlbiBhcHBseSBvcGVyYXRvciBvbiB0aGF0IGpvaW4sIGlmIGZpZWxkIG5hbWUgaGFzIGEgJy4nXG4gICAgY29uc3QgW2pvaW5lZFJlbGF0aW9uLCBqb2luZWRGaWVsZF0gPSBzZWxlY3Rpb24uZmllbGQuc3BsaXQoJy4nKTtcbiAgICBsZXQgY29udGFpbmVyO1xuICAgIGxldCB3cmFwcGVkQ29uZGl0aW9uO1xuICAgIGlmIChqb2luZWRGaWVsZCkge1xuICAgICAgICBjb250YWluZXIgPSBhZGRKb2luVG9Hcm91cChncm91cCwgam9pbmVkUmVsYXRpb24pO1xuICAgICAgICB3cmFwcGVkQ29uZGl0aW9uID0gd3JhcFdpdGhGaWVsZE5hbWUoam9pbmVkRmllbGQsIHNlbGVjdGlvbi5jb25kaXRpb24pO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnRhaW5lciA9IGdyb3VwO1xuICAgICAgICB3cmFwcGVkQ29uZGl0aW9uID0gd3JhcFdpdGhGaWVsZE5hbWUoc2VsZWN0aW9uLmZpZWxkLCBzZWxlY3Rpb24uY29uZGl0aW9uKTtcbiAgICB9XG5cbiAgICBhZGRDb25kaXRpb25Ub0NvbnRhaW5lcihjb250YWluZXIsIHdyYXBwZWRDb25kaXRpb24pO1xufVxuXG4vKipcbiAqIE9ubHkgYWRkIGpvaW4gaWYgaXQgZG9lcyBub3QgYWxyZWFkeSBleGlzdHNcbiAqL1xuZnVuY3Rpb24gYWRkSm9pblRvR3JvdXAoZ3JvdXA6IEZpbHRlckdyb3VwLCBqb2luZWRSZWxhdGlvbjogc3RyaW5nKTogSm9pbk9uIHtcbiAgICBpZiAoIWdyb3VwLmpvaW5zKSB7XG4gICAgICAgIGdyb3VwLmpvaW5zID0ge307XG4gICAgfVxuXG4gICAgaWYgKCFncm91cC5qb2luc1tqb2luZWRSZWxhdGlvbl0pIHtcbiAgICAgICAgZ3JvdXAuam9pbnNbam9pbmVkUmVsYXRpb25dID0ge307XG4gICAgfVxuXG4gICAgcmV0dXJuIGdyb3VwLmpvaW5zW2pvaW5lZFJlbGF0aW9uXTtcbn1cblxuLyoqXG4gKiBPbmx5IGFkZCBjb25kaXRpb24gdG8gZ3JvdXAgb3Igam9pbiBpZiBpdCdzIHZhbGlkXG4gKi9cbmZ1bmN0aW9uIGFkZENvbmRpdGlvblRvQ29udGFpbmVyKGNvbnRhaW5lcjogRmlsdGVyR3JvdXAgfCBKb2luT24sIGNvbmRpdGlvbjogRmlsdGVyR3JvdXBDb25kaXRpb24pOiB2b2lkIHtcbiAgICBpZiAoIWNvbmRpdGlvbikge1xuICAgICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKCFjb250YWluZXIuY29uZGl0aW9ucykge1xuICAgICAgICBjb250YWluZXIuY29uZGl0aW9ucyA9IFtdO1xuICAgIH1cblxuICAgIGNvbnRhaW5lci5jb25kaXRpb25zLnB1c2goY29uZGl0aW9uKTtcbn1cblxuLyoqXG4gKiBPbmx5IGFkZCB0aGUgZ3JvdXAgaWYgdGhlcmUgaXMgc29tZXRoaW5nIG1lYW5pbmdmdWxcbiAqL1xuZnVuY3Rpb24gYWRkR3JvdXBUb0ZpbHRlcihmaWx0ZXI6IEZpbHRlciwgZ3JvdXA6IEZpbHRlckdyb3VwKTogdm9pZCB7XG4gICAgaWYgKGdyb3VwLmNvbmRpdGlvbnMgfHwgZ3JvdXAuam9pbnMpIHtcbiAgICAgICAgaWYgKCFmaWx0ZXIuZ3JvdXBzKSB7XG4gICAgICAgICAgICBmaWx0ZXIuZ3JvdXBzID0gW107XG4gICAgICAgIH1cblxuICAgICAgICBmaWx0ZXIuZ3JvdXBzLnB1c2goZ3JvdXApO1xuXG4gICAgICAgIGlmIChmaWx0ZXIuZ3JvdXBzLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICAgIGdyb3VwLmdyb3VwTG9naWMgPSBMb2dpY2FsT3BlcmF0b3IuT1I7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmZ1bmN0aW9uIHdyYXBXaXRoRmllbGROYW1lKGZpZWxkOiBzdHJpbmcsIGNvbmRpdGlvbjogRmlsdGVyR3JvdXBDb25kaXRpb25GaWVsZCk6IEZpbHRlckdyb3VwQ29uZGl0aW9uIHtcbiAgICBjb25zdCByZXN1bHQ6IEZpbHRlckdyb3VwQ29uZGl0aW9uID0ge307XG5cbiAgICAvLyBXZSBhc3N1bWUgYSBjdXN0b20gb3BlcmF0b3IgXCJzZWFyY2hcIlxuICAgIGlmIChmaWVsZCA9PT0gJ3NlYXJjaCcgJiYgY29uZGl0aW9uLmxpa2UpIHtcbiAgICAgICAgcmV0dXJuIHtjdXN0b206IHtzZWFyY2g6IHt2YWx1ZTogY29uZGl0aW9uLmxpa2UudmFsdWV9fX0gYXMgRmlsdGVyR3JvdXBDb25kaXRpb247XG4gICAgfSBlbHNlIHtcbiAgICAgICAgcmVzdWx0W2ZpZWxkXSA9IGNvbmRpdGlvbjtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0O1xufVxuXG5mdW5jdGlvbiB0cmFuc2Zvcm1TZWxlY3Rpb24oZmFjZXQ6IEZhY2V0IHwgbnVsbCwgc2VsZWN0aW9uOiBOYXR1cmFsU2VhcmNoU2VsZWN0aW9uKTogTmF0dXJhbFNlYXJjaFNlbGVjdGlvbiB7XG4gICAgcmV0dXJuIGZhY2V0ICYmIGZhY2V0LnRyYW5zZm9ybSA/IGZhY2V0LnRyYW5zZm9ybShzZWxlY3Rpb24pIDogc2VsZWN0aW9uO1xufVxuXG5mdW5jdGlvbiBpc0ludmVydGVkRmxhZyhmOiBGYWNldCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAoJ2ludmVyc2VkJyBpbiBmICYmIGYuaW52ZXJzZWQpIHx8IGZhbHNlO1xufVxuIl19
108
+ function isDateFacet(facet) {
109
+ return !!facet && 'component' in facet && facet.component === TypeDateComponent;
110
+ }
111
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JhcGhxbC1kb2N0cmluZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL2xpYi9tb2R1bGVzL3NlYXJjaC9jbGFzc2VzL2dyYXBocWwtZG9jdHJpbmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQU1ILGVBQWUsR0FDbEIsTUFBTSwwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLEVBQUMsU0FBUyxFQUFFLHFCQUFxQixFQUFDLE1BQU0sU0FBUyxDQUFDO0FBQ3pELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUM1QyxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSx5REFBeUQsQ0FBQztBQUUxRixNQUFNLFVBQVUsdUJBQXVCLENBQ25DLE1BQWtDLEVBQ2xDLFVBQTBDO0lBRTFDLFVBQVUsR0FBRyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUM7SUFFbkMsTUFBTSxNQUFNLEdBQVcsRUFBRSxDQUFDO0lBQzFCLElBQUksQ0FBQyxVQUFVLElBQUksVUFBVSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7UUFDeEMsVUFBVSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUM7S0FDckI7SUFFRCxLQUFLLE1BQU0sZUFBZSxJQUFJLFVBQVUsRUFBRTtRQUN0QyxNQUFNLEtBQUssR0FBZ0IsRUFBRSxDQUFDO1FBQzlCLE1BQU0sbUJBQW1CLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFFeEUsS0FBSyxNQUFNLFNBQVMsSUFBSSxlQUFlLEVBQUU7WUFDckMsTUFBTSxLQUFLLEdBQUcscUJBQXFCLENBQUMsTUFBTSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1lBQ3ZELE1BQU0sb0JBQW9CLEdBQUcsa0JBQWtCLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxD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QWlCLENBQUM7QUFDcEYsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RHJvcGRvd25GYWNldCwgRmFjZXQsIEZsYWdGYWNldCwgTmF0dXJhbFNlYXJjaEZhY2V0c30gZnJvbSAnLi4vdHlwZXMvZmFjZXQnO1xuaW1wb3J0IHtOYXR1cmFsU2VhcmNoU2VsZWN0aW9uLCBOYXR1cmFsU2VhcmNoU2VsZWN0aW9uc30gZnJvbSAnLi4vdHlwZXMvdmFsdWVzJztcbmltcG9ydCB7XG4gICAgRmlsdGVyLFxuICAgIEZpbHRlckdyb3VwLFxuICAgIEZpbHRlckdyb3VwQ29uZGl0aW9uLFxuICAgIEZpbHRlckdyb3VwQ29uZGl0aW9uRmllbGQsXG4gICAgSm9pbk9uLFxuICAgIExvZ2ljYWxPcGVyYXRvcixcbn0gZnJvbSAnLi9ncmFwaHFsLWRvY3RyaW5lLnR5cGVzJztcbmltcG9ydCB7ZGVlcENsb25lLCBnZXRGYWNldEZyb21TZWxlY3Rpb259IGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHtyZXBsYWNlVG9kYXl9IGZyb20gJy4vdHJhbnNmb3JtZXJzJztcbmltcG9ydCB7VHlwZURhdGVDb21wb25lbnR9IGZyb20gJy4uLy4uL2Ryb3Bkb3duLWNvbXBvbmVudHMvdHlwZS1kYXRlL3R5cGUtZGF0ZS5jb21wb25lbnQnO1xuXG5leHBvcnQgZnVuY3Rpb24gdG9HcmFwaFFMRG9jdHJpbmVGaWx0ZXIoXG4gICAgZmFjZXRzOiBOYXR1cmFsU2VhcmNoRmFjZXRzIHwgbnVsbCxcbiAgICBzZWxlY3Rpb25zOiBOYXR1cmFsU2VhcmNoU2VsZWN0aW9ucyB8IG51bGwsXG4pOiBGaWx0ZXIge1xuICAgIHNlbGVjdGlvbnMgPSBkZWVwQ2xvbmUoc2VsZWN0aW9ucyk7XG5cbiAgICBjb25zdCBmaWx0ZXI6IEZpbHRlciA9IHt9O1xuICAgIGlmICghc2VsZWN0aW9ucyB8fCBzZWxlY3Rpb25zLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICBzZWxlY3Rpb25zID0gW1tdXTtcbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IGdyb3VwU2VsZWN0aW9ucyBvZiBzZWxlY3Rpb25zKSB7XG4gICAgICAgIGNvbnN0IGdyb3VwOiBGaWx0ZXJHcm91cCA9IHt9O1xuICAgICAgICBjb25zdCBuZWVkZWRJbnZlcnNlZEZsYWdzID0gZmFjZXRzID8gZmFjZXRzLmZpbHRlcihpc0ludmVydGVkRmxhZykgOiBbXTtcblxuICAgICAgICBmb3IgKGNvbnN0IHNlbGVjdGlvbiBvZiBncm91cFNlbGVjdGlvbnMpIHtcbiAgICAgICAgICAgIGNvbnN0IGZhY2V0ID0gZ2V0RmFjZXRGcm9tU2VsZWN0aW9uKGZhY2V0cywgc2VsZWN0aW9uKTtcbiAgICAgICAgICAgIGNvbnN0IHRyYW5zZm9ybWVkU2VsZWN0aW9uID0gdHJhbnNmb3JtU2VsZWN0aW9uKGZhY2V0LCBzZWxlY3Rpb24pO1xuXG4gICAgICAgICAgICAvLyBTa2lwIGludmVydGVkIGZsYWcgYW5kIHJlbW92ZSBpdCBmcm9tIG5lZWRlZCBpbnZlcnRlZCBmbGFnc1xuICAgICAgICAgICAgaWYgKGlzSW52ZXJ0ZWRGbGFnKGZhY2V0KSkge1xuICAgICAgICAgICAgICAgIG5lZWRlZEludmVyc2VkRmxhZ3Muc3BsaWNlKG5lZWRlZEludmVyc2VkRmxhZ3MuaW5kZXhPZihmYWNldCksIDEpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBhcHBseUpvaW5BbmRDb25kaXRpb24oZ3JvdXAsIHRyYW5zZm9ybWVkU2VsZWN0aW9uKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGZvciAoY29uc3QgZmFjZXQgb2YgbmVlZGVkSW52ZXJzZWRGbGFncykge1xuICAgICAgICAgICAgY29uc3QgdHJhbnNmb3JtZWRTZWxlY3Rpb24gPSB0cmFuc2Zvcm1TZWxlY3Rpb24oZmFjZXQsIHtcbiAgICAgICAgICAgICAgICBmaWVsZDogZmFjZXQuZmllbGQsXG4gICAgICAgICAgICAgICAgbmFtZTogZmFjZXQubmFtZSxcbiAgICAgICAgICAgICAgICBjb25kaXRpb246IGRlZXBDbG9uZShmYWNldC5jb25kaXRpb24pLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBhcHBseUpvaW5BbmRDb25kaXRpb24oZ3JvdXAsIHRyYW5zZm9ybWVkU2VsZWN0aW9uKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGFkZEdyb3VwVG9GaWx0ZXIoZmlsdGVyLCBncm91cCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZpbHRlcjtcbn1cblxuZnVuY3Rpb24gYXBwbHlKb2luQW5kQ29uZGl0aW9uKGdyb3VwOiBGaWx0ZXJHcm91cCwgc2VsZWN0aW9uOiBOYXR1cmFsU2VhcmNoU2VsZWN0aW9uKTogdm9pZCB7XG4gICAgLy8gQXBwbHkgam9pbiwgdGhlbiBhcHBseSBvcGVyYXRvciBvbiB0aGF0IGpvaW4sIGlmIGZpZWxkIG5hbWUgaGFzIGEgJy4nXG4gICAgY29uc3QgW2pvaW5lZFJlbGF0aW9uLCBqb2luZWRGaWVsZF0gPSBzZWxlY3Rpb24uZmllbGQuc3BsaXQoJy4nKTtcbiAgICBsZXQgY29udGFpbmVyO1xuICAgIGxldCB3cmFwcGVkQ29uZGl0aW9uO1xuICAgIGlmIChqb2luZWRGaWVsZCkge1xuICAgICAgICBjb250YWluZXIgPSBhZGRKb2luVG9Hcm91cChncm91cCwgam9pbmVkUmVsYXRpb24pO1xuICAgICAgICB3cmFwcGVkQ29uZGl0aW9uID0gd3JhcFdpdGhGaWVsZE5hbWUoam9pbmVkRmllbGQsIHNlbGVjdGlvbi5jb25kaXRpb24pO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnRhaW5lciA9IGdyb3VwO1xuICAgICAgICB3cmFwcGVkQ29uZGl0aW9uID0gd3JhcFdpdGhGaWVsZE5hbWUoc2VsZWN0aW9uLmZpZWxkLCBzZWxlY3Rpb24uY29uZGl0aW9uKTtcbiAgICB9XG5cbiAgICBhZGRDb25kaXRpb25Ub0NvbnRhaW5lcihjb250YWluZXIsIHdyYXBwZWRDb25kaXRpb24pO1xufVxuXG4vKipcbiAqIE9ubHkgYWRkIGpvaW4gaWYgaXQgZG9lcyBub3QgYWxyZWFkeSBleGlzdHNcbiAqL1xuZnVuY3Rpb24gYWRkSm9pblRvR3JvdXAoZ3JvdXA6IEZpbHRlckdyb3VwLCBqb2luZWRSZWxhdGlvbjogc3RyaW5nKTogSm9pbk9uIHtcbiAgICBpZiAoIWdyb3VwLmpvaW5zKSB7XG4gICAgICAgIGdyb3VwLmpvaW5zID0ge307XG4gICAgfVxuXG4gICAgaWYgKCFncm91cC5qb2luc1tqb2luZWRSZWxhdGlvbl0pIHtcbiAgICAgICAgZ3JvdXAuam9pbnNbam9pbmVkUmVsYXRpb25dID0ge307XG4gICAgfVxuXG4gICAgcmV0dXJuIGdyb3VwLmpvaW5zW2pvaW5lZFJlbGF0aW9uXTtcbn1cblxuLyoqXG4gKiBPbmx5IGFkZCBjb25kaXRpb24gdG8gZ3JvdXAgb3Igam9pbiBpZiBpdCdzIHZhbGlkXG4gKi9cbmZ1bmN0aW9uIGFkZENvbmRpdGlvblRvQ29udGFpbmVyKGNvbnRhaW5lcjogRmlsdGVyR3JvdXAgfCBKb2luT24sIGNvbmRpdGlvbjogRmlsdGVyR3JvdXBDb25kaXRpb24pOiB2b2lkIHtcbiAgICBpZiAoIWNvbmRpdGlvbikge1xuICAgICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKCFjb250YWluZXIuY29uZGl0aW9ucykge1xuICAgICAgICBjb250YWluZXIuY29uZGl0aW9ucyA9IFtdO1xuICAgIH1cblxuICAgIGNvbnRhaW5lci5jb25kaXRpb25zLnB1c2goY29uZGl0aW9uKTtcbn1cblxuLyoqXG4gKiBPbmx5IGFkZCB0aGUgZ3JvdXAgaWYgdGhlcmUgaXMgc29tZXRoaW5nIG1lYW5pbmdmdWxcbiAqL1xuZnVuY3Rpb24gYWRkR3JvdXBUb0ZpbHRlcihmaWx0ZXI6IEZpbHRlciwgZ3JvdXA6IEZpbHRlckdyb3VwKTogdm9pZCB7XG4gICAgaWYgKGdyb3VwLmNvbmRpdGlvbnMgfHwgZ3JvdXAuam9pbnMpIHtcbiAgICAgICAgaWYgKCFmaWx0ZXIuZ3JvdXBzKSB7XG4gICAgICAgICAgICBmaWx0ZXIuZ3JvdXBzID0gW107XG4gICAgICAgIH1cblxuICAgICAgICBmaWx0ZXIuZ3JvdXBzLnB1c2goZ3JvdXApO1xuXG4gICAgICAgIGlmIChmaWx0ZXIuZ3JvdXBzLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICAgIGdyb3VwLmdyb3VwTG9naWMgPSBMb2dpY2FsT3BlcmF0b3IuT1I7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmZ1bmN0aW9uIHdyYXBXaXRoRmllbGROYW1lKGZpZWxkOiBzdHJpbmcsIGNvbmRpdGlvbjogRmlsdGVyR3JvdXBDb25kaXRpb25GaWVsZCk6IEZpbHRlckdyb3VwQ29uZGl0aW9uIHtcbiAgICBjb25zdCByZXN1bHQ6IEZpbHRlckdyb3VwQ29uZGl0aW9uID0ge307XG5cbiAgICAvLyBXZSBhc3N1bWUgYSBjdXN0b20gb3BlcmF0b3IgXCJzZWFyY2hcIlxuICAgIGlmIChmaWVsZCA9PT0gJ3NlYXJjaCcgJiYgY29uZGl0aW9uLmxpa2UpIHtcbiAgICAgICAgcmV0dXJuIHtjdXN0b206IHtzZWFyY2g6IHt2YWx1ZTogY29uZGl0aW9uLmxpa2UudmFsdWV9fX07XG4gICAgfSBlbHNlIHtcbiAgICAgICAgcmVzdWx0W2ZpZWxkXSA9IGNvbmRpdGlvbjtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0O1xufVxuXG5mdW5jdGlvbiB0cmFuc2Zvcm1TZWxlY3Rpb24oZmFjZXQ6IEZhY2V0IHwgbnVsbCwgc2VsZWN0aW9uOiBOYXR1cmFsU2VhcmNoU2VsZWN0aW9uKTogTmF0dXJhbFNlYXJjaFNlbGVjdGlvbiB7XG4gICAgY29uc3QgbmV3U2VsZWN0aW9uID0gZmFjZXQgJiYgZmFjZXQudHJhbnNmb3JtID8gZmFjZXQudHJhbnNmb3JtKHNlbGVjdGlvbikgOiBzZWxlY3Rpb247XG5cbiAgICByZXR1cm4gaXNEYXRlRmFjZXQoZmFjZXQpID8gcmVwbGFjZVRvZGF5KG5ld1NlbGVjdGlvbikgOiBzZWxlY3Rpb247XG59XG5cbmZ1bmN0aW9uIGlzSW52ZXJ0ZWRGbGFnKGZhY2V0OiBGYWNldCB8IG51bGwpOiBmYWNldCBpcyBGbGFnRmFjZXQge1xuICAgIHJldHVybiAoISFmYWNldCAmJiAnaW52ZXJzZWQnIGluIGZhY2V0ICYmIGZhY2V0LmludmVyc2VkKSB8fCBmYWxzZTtcbn1cblxuZnVuY3Rpb24gaXNEYXRlRmFjZXQoZmFjZXQ6IEZhY2V0IHwgbnVsbCk6IGZhY2V0IGlzIERyb3Bkb3duRmFjZXQ8VHlwZURhdGVDb21wb25lbnQ+IHtcbiAgICByZXR1cm4gISFmYWNldCAmJiAnY29tcG9uZW50JyBpbiBmYWNldCAmJiBmYWNldC5jb21wb25lbnQgPT09IFR5cGVEYXRlQ29tcG9uZW50O1xufVxuIl19
@@ -1,3 +1,4 @@
1
+ import { formatIsoDate } from '../../../classes/utility';
1
2
  /**
2
3
  * Wrap the searched value by `%` SQL wildcard
3
4
  *
@@ -55,4 +56,53 @@ function replaceOperatorByAttribute(selection, attribute) {
55
56
  delete selection.condition[oldOperator];
56
57
  return selection;
57
58
  }
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmb3JtZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF0dXJhbC9zcmMvbGliL21vZHVsZXMvc2VhcmNoL2NsYXNzZXMvdHJhbnNmb3JtZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBOzs7Ozs7Ozs7O0dBVUc7QUFDSCxNQUFNLFVBQVUsUUFBUSxDQUFDLFNBQWlDO0lBQ3RELElBQUksU0FBUyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUU7UUFDMUIsU0FBUyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxHQUFHLEdBQUcsR0FBRyxTQUFTLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLEdBQUcsR0FBRyxDQUFDO0tBQy9FO0lBRUQsT0FBTyxTQUFTLENBQUM7QUFDckIsQ0FBQztBQUVEOzs7Ozs7Ozs7OztHQVdHO0FBQ0gsTUFBTSxVQUFVLHNCQUFzQixDQUFDLFNBQWlDO0lBQ3BFLE9BQU8sMEJBQTBCLENBQUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQzFELENBQUM7QUFFRDs7Ozs7Ozs7Ozs7R0FXRztBQUNILE1BQU0sVUFBVSxxQkFBcUIsQ0FBQyxTQUFpQztJQUNuRSxPQUFPLDBCQUEwQixDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsQ0FBQztBQUN6RCxDQUFDO0FBRUQsU0FBUywwQkFBMEIsQ0FDL0IsU0FBaUMsRUFDakMsU0FBMkI7SUFFM0IsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFFeEQsTUFBTSxjQUFjLEdBQUcsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzVDLElBQUksQ0FBQyxjQUFjLEVBQUU7UUFDakIsTUFBTSxJQUFJLEtBQUssQ0FBQyxvRUFBb0UsQ0FBQyxDQUFDO0tBQ3pGO0lBRUQsU0FBUyxDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsR0FBRyxTQUFTLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3ZFLE9BQU8sU0FBUyxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUV4QyxPQUFPLFNBQVMsQ0FBQztBQUNyQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOYXR1cmFsU2VhcmNoU2VsZWN0aW9ufSBmcm9tICcuLi90eXBlcy92YWx1ZXMnO1xuXG4vKipcbiAqIFdyYXAgdGhlIHNlYXJjaGVkIHZhbHVlIGJ5IGAlYCBTUUwgd2lsZGNhcmRcbiAqXG4gKiBTbzpcbiAqXG4gKiAgICAge2ZpZWxkOiAnbXlGaWVsZE5hbWUnLCBjb25kaXRpb246IHtsaWtlOiB7dmFsdWU6ICdmb28nfX19XG4gKlxuICogd2lsbCBiZWNvbWVcbiAqXG4gKiAgICAge2ZpZWxkOiAnbXlGaWVsZE5hbWUnLCBjb25kaXRpb246IHtsaWtlOiB7dmFsdWU6ICclZm9vJSd9fX1cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHdyYXBMaWtlKHNlbGVjdGlvbjogTmF0dXJhbFNlYXJjaFNlbGVjdGlvbik6IE5hdHVyYWxTZWFyY2hTZWxlY3Rpb24ge1xuICAgIGlmIChzZWxlY3Rpb24uY29uZGl0aW9uLmxpa2UpIHtcbiAgICAgICAgc2VsZWN0aW9uLmNvbmRpdGlvbi5saWtlLnZhbHVlID0gJyUnICsgc2VsZWN0aW9uLmNvbmRpdGlvbi5saWtlLnZhbHVlICsgJyUnO1xuICAgIH1cblxuICAgIHJldHVybiBzZWxlY3Rpb247XG59XG5cbi8qKlxuICogUmVwbGFjZSB0aGUgb3BlcmF0b3IgbmFtZSAodXN1YWxseSBcImxpa2VcIiwgXCJpblwiIG9yIFwiYmV0d2VlblwiKSB3aXRoIHRoZVxuICogYXR0cmlidXRlIFwiZmllbGRcIiBvciBcIm5hbWVcIiBkZWZpbmVkIGluIHRoZSBjb25maWd1cmF0aW9uXG4gKlxuICogU286XG4gKlxuICogICAgIHtmaWVsZDogJ215RmllbGROYW1lJywgY29uZGl0aW9uOiB7aW46IHt2YWx1ZXM6IFsxLCAyLCAzXX19fVxuICpcbiAqIHdpbGwgYmVjb21lXG4gKlxuICogICAgIHtmaWVsZDogJ215RmllbGROYW1lJywgY29uZGl0aW9uOiB7bXlGaWVsZE5hbWU6IHt2YWx1ZXM6IFsxLCAyLCAzXX19fVxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVwbGFjZU9wZXJhdG9yQnlGaWVsZChzZWxlY3Rpb246IE5hdHVyYWxTZWFyY2hTZWxlY3Rpb24pOiBOYXR1cmFsU2VhcmNoU2VsZWN0aW9uIHtcbiAgICByZXR1cm4gcmVwbGFjZU9wZXJhdG9yQnlBdHRyaWJ1dGUoc2VsZWN0aW9uLCAnZmllbGQnKTtcbn1cblxuLyoqXG4gKiBSZXBsYWNlIHRoZSBvcGVyYXRvciBuYW1lICh1c3VhbGx5IFwibGlrZVwiLCBcImluXCIgb3IgXCJiZXR3ZWVuXCIpIHdpdGggdGhlXG4gKiBmaWVsZCBcIm5hbWVcIiBkZWZpbmVkIGluIHRoZSBjb25maWd1cmF0aW9uXG4gKlxuICogU286XG4gKlxuICogICAgIHtmaWVsZDogJ215RmllbGROYW1lJywgbmFtZTonbXlDb25maWdOYW1lJywgY29uZGl0aW9uOiB7aW46IHt2YWx1ZXM6IFsxLCAyLCAzXX19fVxuICpcbiAqIHdpbGwgYmVjb21lXG4gKlxuICogICAgIHtmaWVsZDogJ215RmllbGROYW1lJywgIG5hbWU6J215Q29uZmlnTmFtZScsIGNvbmRpdGlvbjoge215Q29uZmlnTmFtZToge3ZhbHVlczogWzEsIDIsIDNdfX19XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZXBsYWNlT3BlcmF0b3JCeU5hbWUoc2VsZWN0aW9uOiBOYXR1cmFsU2VhcmNoU2VsZWN0aW9uKTogTmF0dXJhbFNlYXJjaFNlbGVjdGlvbiB7XG4gICAgcmV0dXJuIHJlcGxhY2VPcGVyYXRvckJ5QXR0cmlidXRlKHNlbGVjdGlvbiwgJ25hbWUnKTtcbn1cblxuZnVuY3Rpb24gcmVwbGFjZU9wZXJhdG9yQnlBdHRyaWJ1dGUoXG4gICAgc2VsZWN0aW9uOiBOYXR1cmFsU2VhcmNoU2VsZWN0aW9uLFxuICAgIGF0dHJpYnV0ZTogJ25hbWUnIHwgJ2ZpZWxkJyxcbik6IE5hdHVyYWxTZWFyY2hTZWxlY3Rpb24ge1xuICAgIGNvbnN0IG9sZE9wZXJhdG9yID0gT2JqZWN0LmtleXMoc2VsZWN0aW9uLmNvbmRpdGlvbilbMF07XG5cbiAgICBjb25zdCBhdHRyaWJ1dGVWYWx1ZSA9IHNlbGVjdGlvblthdHRyaWJ1dGVdO1xuICAgIGlmICghYXR0cmlidXRlVmFsdWUpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdBdHRyaWJ1dGUgY2Fubm90IGJlIGVtcHR5LiBNb3N0IGxpa2VseSB0aGUgY29uZmlndXJhdGlvbiB3YXMgd3JvbmcnKTtcbiAgICB9XG5cbiAgICBzZWxlY3Rpb24uY29uZGl0aW9uW2F0dHJpYnV0ZVZhbHVlXSA9IHNlbGVjdGlvbi5jb25kaXRpb25bb2xkT3BlcmF0b3JdO1xuICAgIGRlbGV0ZSBzZWxlY3Rpb24uY29uZGl0aW9uW29sZE9wZXJhdG9yXTtcblxuICAgIHJldHVybiBzZWxlY3Rpb247XG59XG4iXX0=
59
+ /**
60
+ * Replace `"today"` and `"tomorrow"` by their real value right now.
61
+ *
62
+ * This transformer is applied automatically and should **not** be part
63
+ * of Natural public API.
64
+ *
65
+ * So:
66
+ *
67
+ * {field: 'myFieldName', condition: {greater: {value: 'today'}}}
68
+ *
69
+ * will become
70
+ *
71
+ * {field: 'myFieldName', condition: {greater: {value: '2023-01-03'}}}
72
+ */
73
+ export function replaceToday(selection) {
74
+ const date = new Date();
75
+ const today = formatIsoDate(date);
76
+ date.setDate(date.getDate() + 1);
77
+ const tomorrow = formatIsoDate(date);
78
+ // Transparently adapt exclusive/inclusive ranges for special "today" value.
79
+ // Ideally this should be done in `TypeDateComponent`, like it is done for real date values. But unfortunately I
80
+ // could not find a reasonable way to do that while still being able to reload a coherent GUI without showing
81
+ // "Demain" somewhere in the GUI. And that is something we want to avoid, we only want to show either "Aujourd'hui"
82
+ // or a real date. Otherwise, the human would start thinking with "Demain", and it would then need to be properly
83
+ // supported which over/complexify the code, the GUI and the workflow.
84
+ const condition = selection.condition;
85
+ if (Object.keys(condition).length === 1) {
86
+ if (condition.lessOrEqual?.value === 'today') {
87
+ delete condition.lessOrEqual;
88
+ condition.less = { value: 'tomorrow' };
89
+ }
90
+ else if (condition.greater?.value === 'today') {
91
+ delete condition.greater;
92
+ condition.greaterOrEqual = { value: 'tomorrow' };
93
+ }
94
+ }
95
+ for (const key in condition) {
96
+ const operator = condition[key];
97
+ if (operator && 'value' in operator) {
98
+ if (operator.value === 'today') {
99
+ operator.value = today;
100
+ }
101
+ else if (operator.value === 'tomorrow') {
102
+ operator.value = tomorrow;
103
+ }
104
+ }
105
+ }
106
+ return selection;
107
+ }
108
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmb3JtZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF0dXJhbC9zcmMvbGliL21vZHVsZXMvc2VhcmNoL2NsYXNzZXMvdHJhbnNmb3JtZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUV2RDs7Ozs7Ozs7OztHQVVHO0FBQ0gsTUFBTSxVQUFVLFFBQVEsQ0FBQyxTQUFpQztJQUN0RCxJQUFJLFNBQVMsQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFO1FBQzFCLFNBQVMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssR0FBRyxHQUFHLEdBQUcsU0FBUyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxHQUFHLEdBQUcsQ0FBQztLQUMvRTtJQUVELE9BQU8sU0FBUyxDQUFDO0FBQ3JCLENBQUM7QUFFRDs7Ozs7Ozs7Ozs7R0FXRztBQUNILE1BQU0sVUFBVSxzQkFBc0IsQ0FBQyxTQUFpQztJQUNwRSxPQUFPLDBCQUEwQixDQUFDLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQztBQUMxRCxDQUFDO0FBRUQ7Ozs7Ozs7Ozs7O0dBV0c7QUFDSCxNQUFNLFVBQVUscUJBQXFCLENBQUMsU0FBaUM7SUFDbkUsT0FBTywwQkFBMEIsQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDLENBQUM7QUFDekQsQ0FBQztBQUVELFNBQVMsMEJBQTBCLENBQy9CLFNBQWlDLEVBQ2pDLFNBQTJCO0lBRTNCLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRXhELE1BQU0sY0FBYyxHQUFHLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUM1QyxJQUFJLENBQUMsY0FBYyxFQUFFO1FBQ2pCLE1BQU0sSUFBSSxLQUFLLENBQUMsb0VBQW9FLENBQUMsQ0FBQztLQUN6RjtJQUVELFNBQVMsQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLEdBQUcsU0FBUyxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN2RSxPQUFPLFNBQVMsQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUM7SUFFeEMsT0FBTyxTQUFTLENBQUM7QUFDckIsQ0FBQztBQUVEOzs7Ozs7Ozs7Ozs7O0dBYUc7QUFDSCxNQUFNLFVBQVUsWUFBWSxDQUFDLFNBQWlDO0lBQzFELE1BQU0sSUFBSSxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7SUFDeEIsTUFBTSxLQUFLLEdBQUcsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBRWxDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ2pDLE1BQU0sUUFBUSxHQUFHLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUVyQyw0RUFBNEU7SUFDNUUsZ0hBQWdIO0lBQ2hILDZHQUE2RztJQUM3RyxtSEFBbUg7SUFDbkgsaUhBQWlIO0lBQ2pILHNFQUFzRTtJQUN0RSxNQUFNLFNBQVMsR0FBRyxTQUFTLENBQUMsU0FBUyxDQUFDO0lBQ3RDLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1FBQ3JDLElBQUksU0FBUyxDQUFDLFdBQVcsRUFBRSxLQUFLLEtBQUssT0FBTyxFQUFFO1lBQzFDLE9BQU8sU0FBUyxDQUFDLFdBQVcsQ0FBQztZQUM3QixTQUFTLENBQUMsSUFBSSxHQUFHLEVBQUMsS0FBSyxFQUFFLFVBQVUsRUFBQyxDQUFDO1NBQ3hDO2FBQU0sSUFBSSxTQUFTLENBQUMsT0FBTyxFQUFFLEtBQUssS0FBSyxPQUFPLEVBQUU7WUFDN0MsT0FBTyxTQUFTLENBQUMsT0FBTyxDQUFDO1lBQ3pCLFNBQVMsQ0FBQyxjQUFjLEdBQUcsRUFBQyxLQUFLLEVBQUUsVUFBVSxFQUFDLENBQUM7U0FDbEQ7S0FDSjtJQUVELEtBQUssTUFBTSxHQUFHLElBQUksU0FBUyxFQUFFO1FBQ3pCLE1BQU0sUUFBUSxHQUFHLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNoQyxJQUFJLFFBQVEsSUFBSSxPQUFPLElBQUksUUFBUSxFQUFFO1lBQ2pDLElBQUksUUFBUSxDQUFDLEtBQUssS0FBSyxPQUFPLEVBQUU7Z0JBQzVCLFFBQVEsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO2FBQzFCO2lCQUFNLElBQUksUUFBUSxDQUFDLEtBQUssS0FBSyxVQUFVLEVBQUU7Z0JBQ3RDLFFBQVEsQ0FBQyxLQUFLLEdBQUcsUUFBUSxDQUFDO2FBQzdCO1NBQ0o7S0FDSjtJQUVELE9BQU8sU0FBUyxDQUFDO0FBQ3JCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05hdHVyYWxTZWFyY2hTZWxlY3Rpb259IGZyb20gJy4uL3R5cGVzL3ZhbHVlcyc7XG5pbXBvcnQge2Zvcm1hdElzb0RhdGV9IGZyb20gJy4uLy4uLy4uL2NsYXNzZXMvdXRpbGl0eSc7XG5cbi8qKlxuICogV3JhcCB0aGUgc2VhcmNoZWQgdmFsdWUgYnkgYCVgIFNRTCB3aWxkY2FyZFxuICpcbiAqIFNvOlxuICpcbiAqICAgICB7ZmllbGQ6ICdteUZpZWxkTmFtZScsIGNvbmRpdGlvbjoge2xpa2U6IHt2YWx1ZTogJ2Zvbyd9fX1cbiAqXG4gKiB3aWxsIGJlY29tZVxuICpcbiAqICAgICB7ZmllbGQ6ICdteUZpZWxkTmFtZScsIGNvbmRpdGlvbjoge2xpa2U6IHt2YWx1ZTogJyVmb28lJ319fVxuICovXG5leHBvcnQgZnVuY3Rpb24gd3JhcExpa2Uoc2VsZWN0aW9uOiBOYXR1cmFsU2VhcmNoU2VsZWN0aW9uKTogTmF0dXJhbFNlYXJjaFNlbGVjdGlvbiB7XG4gICAgaWYgKHNlbGVjdGlvbi5jb25kaXRpb24ubGlrZSkge1xuICAgICAgICBzZWxlY3Rpb24uY29uZGl0aW9uLmxpa2UudmFsdWUgPSAnJScgKyBzZWxlY3Rpb24uY29uZGl0aW9uLmxpa2UudmFsdWUgKyAnJSc7XG4gICAgfVxuXG4gICAgcmV0dXJuIHNlbGVjdGlvbjtcbn1cblxuLyoqXG4gKiBSZXBsYWNlIHRoZSBvcGVyYXRvciBuYW1lICh1c3VhbGx5IFwibGlrZVwiLCBcImluXCIgb3IgXCJiZXR3ZWVuXCIpIHdpdGggdGhlXG4gKiBhdHRyaWJ1dGUgXCJmaWVsZFwiIG9yIFwibmFtZVwiIGRlZmluZWQgaW4gdGhlIGNvbmZpZ3VyYXRpb25cbiAqXG4gKiBTbzpcbiAqXG4gKiAgICAge2ZpZWxkOiAnbXlGaWVsZE5hbWUnLCBjb25kaXRpb246IHtpbjoge3ZhbHVlczogWzEsIDIsIDNdfX19XG4gKlxuICogd2lsbCBiZWNvbWVcbiAqXG4gKiAgICAge2ZpZWxkOiAnbXlGaWVsZE5hbWUnLCBjb25kaXRpb246IHtteUZpZWxkTmFtZToge3ZhbHVlczogWzEsIDIsIDNdfX19XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZXBsYWNlT3BlcmF0b3JCeUZpZWxkKHNlbGVjdGlvbjogTmF0dXJhbFNlYXJjaFNlbGVjdGlvbik6IE5hdHVyYWxTZWFyY2hTZWxlY3Rpb24ge1xuICAgIHJldHVybiByZXBsYWNlT3BlcmF0b3JCeUF0dHJpYnV0ZShzZWxlY3Rpb24sICdmaWVsZCcpO1xufVxuXG4vKipcbiAqIFJlcGxhY2UgdGhlIG9wZXJhdG9yIG5hbWUgKHVzdWFsbHkgXCJsaWtlXCIsIFwiaW5cIiBvciBcImJldHdlZW5cIikgd2l0aCB0aGVcbiAqIGZpZWxkIFwibmFtZVwiIGRlZmluZWQgaW4gdGhlIGNvbmZpZ3VyYXRpb25cbiAqXG4gKiBTbzpcbiAqXG4gKiAgICAge2ZpZWxkOiAnbXlGaWVsZE5hbWUnLCBuYW1lOidteUNvbmZpZ05hbWUnLCBjb25kaXRpb246IHtpbjoge3ZhbHVlczogWzEsIDIsIDNdfX19XG4gKlxuICogd2lsbCBiZWNvbWVcbiAqXG4gKiAgICAge2ZpZWxkOiAnbXlGaWVsZE5hbWUnLCAgbmFtZTonbXlDb25maWdOYW1lJywgY29uZGl0aW9uOiB7bXlDb25maWdOYW1lOiB7dmFsdWVzOiBbMSwgMiwgM119fX1cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlcGxhY2VPcGVyYXRvckJ5TmFtZShzZWxlY3Rpb246IE5hdHVyYWxTZWFyY2hTZWxlY3Rpb24pOiBOYXR1cmFsU2VhcmNoU2VsZWN0aW9uIHtcbiAgICByZXR1cm4gcmVwbGFjZU9wZXJhdG9yQnlBdHRyaWJ1dGUoc2VsZWN0aW9uLCAnbmFtZScpO1xufVxuXG5mdW5jdGlvbiByZXBsYWNlT3BlcmF0b3JCeUF0dHJpYnV0ZShcbiAgICBzZWxlY3Rpb246IE5hdHVyYWxTZWFyY2hTZWxlY3Rpb24sXG4gICAgYXR0cmlidXRlOiAnbmFtZScgfCAnZmllbGQnLFxuKTogTmF0dXJhbFNlYXJjaFNlbGVjdGlvbiB7XG4gICAgY29uc3Qgb2xkT3BlcmF0b3IgPSBPYmplY3Qua2V5cyhzZWxlY3Rpb24uY29uZGl0aW9uKVswXTtcblxuICAgIGNvbnN0IGF0dHJpYnV0ZVZhbHVlID0gc2VsZWN0aW9uW2F0dHJpYnV0ZV07XG4gICAgaWYgKCFhdHRyaWJ1dGVWYWx1ZSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0F0dHJpYnV0ZSBjYW5ub3QgYmUgZW1wdHkuIE1vc3QgbGlrZWx5IHRoZSBjb25maWd1cmF0aW9uIHdhcyB3cm9uZycpO1xuICAgIH1cblxuICAgIHNlbGVjdGlvbi5jb25kaXRpb25bYXR0cmlidXRlVmFsdWVdID0gc2VsZWN0aW9uLmNvbmRpdGlvbltvbGRPcGVyYXRvcl07XG4gICAgZGVsZXRlIHNlbGVjdGlvbi5jb25kaXRpb25bb2xkT3BlcmF0b3JdO1xuXG4gICAgcmV0dXJuIHNlbGVjdGlvbjtcbn1cblxuLyoqXG4gKiBSZXBsYWNlIGBcInRvZGF5XCJgIGFuZCBgXCJ0b21vcnJvd1wiYCBieSB0aGVpciByZWFsIHZhbHVlIHJpZ2h0IG5vdy5cbiAqXG4gKiBUaGlzIHRyYW5zZm9ybWVyIGlzIGFwcGxpZWQgYXV0b21hdGljYWxseSBhbmQgc2hvdWxkICoqbm90KiogYmUgcGFydFxuICogb2YgTmF0dXJhbCBwdWJsaWMgQVBJLlxuICpcbiAqIFNvOlxuICpcbiAqICAgICB7ZmllbGQ6ICdteUZpZWxkTmFtZScsIGNvbmRpdGlvbjoge2dyZWF0ZXI6IHt2YWx1ZTogJ3RvZGF5J319fVxuICpcbiAqIHdpbGwgYmVjb21lXG4gKlxuICogICAgIHtmaWVsZDogJ215RmllbGROYW1lJywgY29uZGl0aW9uOiB7Z3JlYXRlcjoge3ZhbHVlOiAnMjAyMy0wMS0wMyd9fX1cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlcGxhY2VUb2RheShzZWxlY3Rpb246IE5hdHVyYWxTZWFyY2hTZWxlY3Rpb24pOiBOYXR1cmFsU2VhcmNoU2VsZWN0aW9uIHtcbiAgICBjb25zdCBkYXRlID0gbmV3IERhdGUoKTtcbiAgICBjb25zdCB0b2RheSA9IGZvcm1hdElzb0RhdGUoZGF0ZSk7XG5cbiAgICBkYXRlLnNldERhdGUoZGF0ZS5nZXREYXRlKCkgKyAxKTtcbiAgICBjb25zdCB0b21vcnJvdyA9IGZvcm1hdElzb0RhdGUoZGF0ZSk7XG5cbiAgICAvLyBUcmFuc3BhcmVudGx5IGFkYXB0IGV4Y2x1c2l2ZS9pbmNsdXNpdmUgcmFuZ2VzIGZvciBzcGVjaWFsIFwidG9kYXlcIiB2YWx1ZS5cbiAgICAvLyBJZGVhbGx5IHRoaXMgc2hvdWxkIGJlIGRvbmUgaW4gYFR5cGVEYXRlQ29tcG9uZW50YCwgbGlrZSBpdCBpcyBkb25lIGZvciByZWFsIGRhdGUgdmFsdWVzLiBCdXQgdW5mb3J0dW5hdGVseSBJXG4gICAgLy8gY291bGQgbm90IGZpbmQgYSByZWFzb25hYmxlIHdheSB0byBkbyB0aGF0IHdoaWxlIHN0aWxsIGJlaW5nIGFibGUgdG8gcmVsb2FkIGEgY29oZXJlbnQgR1VJIHdpdGhvdXQgc2hvd2luZ1xuICAgIC8vIFwiRGVtYWluXCIgc29tZXdoZXJlIGluIHRoZSBHVUkuIEFuZCB0aGF0IGlzIHNvbWV0aGluZyB3ZSB3YW50IHRvIGF2b2lkLCB3ZSBvbmx5IHdhbnQgdG8gc2hvdyBlaXRoZXIgXCJBdWpvdXJkJ2h1aVwiXG4gICAgLy8gb3IgYSByZWFsIGRhdGUuIE90aGVyd2lzZSwgdGhlIGh1bWFuIHdvdWxkIHN0YXJ0IHRoaW5raW5nIHdpdGggXCJEZW1haW5cIiwgYW5kIGl0IHdvdWxkIHRoZW4gbmVlZCB0byBiZSBwcm9wZXJseVxuICAgIC8vIHN1cHBvcnRlZCB3aGljaCBvdmVyL2NvbXBsZXhpZnkgdGhlIGNvZGUsIHRoZSBHVUkgYW5kIHRoZSB3b3JrZmxvdy5cbiAgICBjb25zdCBjb25kaXRpb24gPSBzZWxlY3Rpb24uY29uZGl0aW9uO1xuICAgIGlmIChPYmplY3Qua2V5cyhjb25kaXRpb24pLmxlbmd0aCA9PT0gMSkge1xuICAgICAgICBpZiAoY29uZGl0aW9uLmxlc3NPckVxdWFsPy52YWx1ZSA9PT0gJ3RvZGF5Jykge1xuICAgICAgICAgICAgZGVsZXRlIGNvbmRpdGlvbi5sZXNzT3JFcXVhbDtcbiAgICAgICAgICAgIGNvbmRpdGlvbi5sZXNzID0ge3ZhbHVlOiAndG9tb3Jyb3cnfTtcbiAgICAgICAgfSBlbHNlIGlmIChjb25kaXRpb24uZ3JlYXRlcj8udmFsdWUgPT09ICd0b2RheScpIHtcbiAgICAgICAgICAgIGRlbGV0ZSBjb25kaXRpb24uZ3JlYXRlcjtcbiAgICAgICAgICAgIGNvbmRpdGlvbi5ncmVhdGVyT3JFcXVhbCA9IHt2YWx1ZTogJ3RvbW9ycm93J307XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IGtleSBpbiBjb25kaXRpb24pIHtcbiAgICAgICAgY29uc3Qgb3BlcmF0b3IgPSBjb25kaXRpb25ba2V5XTtcbiAgICAgICAgaWYgKG9wZXJhdG9yICYmICd2YWx1ZScgaW4gb3BlcmF0b3IpIHtcbiAgICAgICAgICAgIGlmIChvcGVyYXRvci52YWx1ZSA9PT0gJ3RvZGF5Jykge1xuICAgICAgICAgICAgICAgIG9wZXJhdG9yLnZhbHVlID0gdG9kYXk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKG9wZXJhdG9yLnZhbHVlID09PSAndG9tb3Jyb3cnKSB7XG4gICAgICAgICAgICAgICAgb3BlcmF0b3IudmFsdWUgPSB0b21vcnJvdztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBzZWxlY3Rpb247XG59XG4iXX0=
@@ -3,6 +3,6 @@ export { NATURAL_DROPDOWN_DATA } from './dropdown-container/dropdown.service';
3
3
  export { NaturalSearchModule } from './search.module';
4
4
  export { toGraphQLDoctrineFilter } from './classes/graphql-doctrine';
5
5
  export { fromUrl, toUrl, toNavigationParameters } from './classes/url';
6
- export * from './classes/transformers';
6
+ export { replaceOperatorByName, wrapLike, replaceOperatorByField } from './classes/transformers';
7
7
  export { NaturalSearchComponent } from './search/search.component';
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL2xpYi9tb2R1bGVzL3NlYXJjaC9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVFBLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBQ3JFLE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLHVDQUF1QyxDQUFDO0FBQzVFLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3BELE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ25FLE9BQU8sRUFBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLHNCQUFzQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3JFLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sMkJBQTJCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIG5hdHVyYWwtc2VhcmNoXG4gKi9cbmV4cG9ydCB7TmF0dXJhbERyb3Bkb3duRGF0YX0gZnJvbSAnLi9kcm9wZG93bi1jb250YWluZXIvZHJvcGRvd24uc2VydmljZSc7XG5leHBvcnQge0ZpbHRlckdyb3VwQ29uZGl0aW9uRmllbGQsIEZpbHRlcn0gZnJvbSAnLi9jbGFzc2VzL2dyYXBocWwtZG9jdHJpbmUudHlwZXMnO1xuZXhwb3J0IHtEcm9wZG93bkNvbXBvbmVudH0gZnJvbSAnLi90eXBlcy9kcm9wZG93bi1jb21wb25lbnQnO1xuZXhwb3J0IHtGbGFnRmFjZXQsIERyb3Bkb3duRmFjZXQsIEZhY2V0LCBOYXR1cmFsU2VhcmNoRmFjZXRzfSBmcm9tICcuL3R5cGVzL2ZhY2V0JztcbmV4cG9ydCB7TmF0dXJhbFNlYXJjaFNlbGVjdGlvbnMsIE5hdHVyYWxTZWFyY2hTZWxlY3Rpb259IGZyb20gJy4vdHlwZXMvdmFsdWVzJztcbmV4cG9ydCB7TmF0dXJhbERyb3Bkb3duUmVmfSBmcm9tICcuL2Ryb3Bkb3duLWNvbnRhaW5lci9kcm9wZG93bi1yZWYnO1xuZXhwb3J0IHtOQVRVUkFMX0RST1BET1dOX0RBVEF9IGZyb20gJy4vZHJvcGRvd24tY29udGFpbmVyL2Ryb3Bkb3duLnNlcnZpY2UnO1xuZXhwb3J0IHtOYXR1cmFsU2VhcmNoTW9kdWxlfSBmcm9tICcuL3NlYXJjaC5tb2R1bGUnO1xuZXhwb3J0IHt0b0dyYXBoUUxEb2N0cmluZUZpbHRlcn0gZnJvbSAnLi9jbGFzc2VzL2dyYXBocWwtZG9jdHJpbmUnO1xuZXhwb3J0IHtmcm9tVXJsLCB0b1VybCwgdG9OYXZpZ2F0aW9uUGFyYW1ldGVyc30gZnJvbSAnLi9jbGFzc2VzL3VybCc7XG5leHBvcnQgKiBmcm9tICcuL2NsYXNzZXMvdHJhbnNmb3JtZXJzJztcbmV4cG9ydCB7TmF0dXJhbFNlYXJjaENvbXBvbmVudH0gZnJvbSAnLi9zZWFyY2gvc2VhcmNoLmNvbXBvbmVudCc7XG4iXX0=
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL2xpYi9tb2R1bGVzL3NlYXJjaC9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVFBLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBQ3JFLE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLHVDQUF1QyxDQUFDO0FBQzVFLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3BELE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ25FLE9BQU8sRUFBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLHNCQUFzQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3JFLE9BQU8sRUFBQyxxQkFBcUIsRUFBRSxRQUFRLEVBQUUsc0JBQXNCLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUMvRixPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgbmF0dXJhbC1zZWFyY2hcbiAqL1xuZXhwb3J0IHtOYXR1cmFsRHJvcGRvd25EYXRhfSBmcm9tICcuL2Ryb3Bkb3duLWNvbnRhaW5lci9kcm9wZG93bi5zZXJ2aWNlJztcbmV4cG9ydCB7RmlsdGVyR3JvdXBDb25kaXRpb25GaWVsZCwgRmlsdGVyfSBmcm9tICcuL2NsYXNzZXMvZ3JhcGhxbC1kb2N0cmluZS50eXBlcyc7XG5leHBvcnQge0Ryb3Bkb3duQ29tcG9uZW50fSBmcm9tICcuL3R5cGVzL2Ryb3Bkb3duLWNvbXBvbmVudCc7XG5leHBvcnQge0ZsYWdGYWNldCwgRHJvcGRvd25GYWNldCwgRmFjZXQsIE5hdHVyYWxTZWFyY2hGYWNldHN9IGZyb20gJy4vdHlwZXMvZmFjZXQnO1xuZXhwb3J0IHtOYXR1cmFsU2VhcmNoU2VsZWN0aW9ucywgTmF0dXJhbFNlYXJjaFNlbGVjdGlvbn0gZnJvbSAnLi90eXBlcy92YWx1ZXMnO1xuZXhwb3J0IHtOYXR1cmFsRHJvcGRvd25SZWZ9IGZyb20gJy4vZHJvcGRvd24tY29udGFpbmVyL2Ryb3Bkb3duLXJlZic7XG5leHBvcnQge05BVFVSQUxfRFJPUERPV05fREFUQX0gZnJvbSAnLi9kcm9wZG93bi1jb250YWluZXIvZHJvcGRvd24uc2VydmljZSc7XG5leHBvcnQge05hdHVyYWxTZWFyY2hNb2R1bGV9IGZyb20gJy4vc2VhcmNoLm1vZHVsZSc7XG5leHBvcnQge3RvR3JhcGhRTERvY3RyaW5lRmlsdGVyfSBmcm9tICcuL2NsYXNzZXMvZ3JhcGhxbC1kb2N0cmluZSc7XG5leHBvcnQge2Zyb21VcmwsIHRvVXJsLCB0b05hdmlnYXRpb25QYXJhbWV0ZXJzfSBmcm9tICcuL2NsYXNzZXMvdXJsJztcbmV4cG9ydCB7cmVwbGFjZU9wZXJhdG9yQnlOYW1lLCB3cmFwTGlrZSwgcmVwbGFjZU9wZXJhdG9yQnlGaWVsZH0gZnJvbSAnLi9jbGFzc2VzL3RyYW5zZm9ybWVycyc7XG5leHBvcnQge05hdHVyYWxTZWFyY2hDb21wb25lbnR9IGZyb20gJy4vc2VhcmNoL3NlYXJjaC5jb21wb25lbnQnO1xuIl19