@eo-sdk/client 8.16.2 → 9.0.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (234) hide show
  1. package/app/eo-framework/actions/actions/update-resubmission-action/update-resubmission-action.d.ts +1 -2
  2. package/app/eo-framework/form-elements/id-reference/reference-finder/reference-finder.component.d.ts +4 -2
  3. package/app/eo-framework/object-details/object-history/object-history.component.d.ts +1 -0
  4. package/app/eo-framework/result-list/result-list.component.d.ts +2 -0
  5. package/bundles/eo-sdk-client-projects-eo-sdk-core.umd.js +3 -0
  6. package/bundles/eo-sdk-client-projects-eo-sdk-core.umd.js.map +1 -1
  7. package/bundles/eo-sdk-client-projects-eo-sdk-core.umd.min.js +1 -1
  8. package/bundles/eo-sdk-client-projects-eo-sdk-core.umd.min.js.map +1 -1
  9. package/bundles/eo-sdk-client.umd.js +46 -24
  10. package/bundles/eo-sdk-client.umd.js.map +1 -1
  11. package/bundles/eo-sdk-client.umd.min.js +1 -1
  12. package/bundles/eo-sdk-client.umd.min.js.map +1 -1
  13. package/eo-sdk-client.metadata.json +1 -1
  14. package/esm2015/app/eo-client/about-state/about-state.component.js +3 -3
  15. package/esm2015/app/eo-framework/actions/actions/update-resubmission-action/update-resubmission-action.js +2 -3
  16. package/esm2015/app/eo-framework/app-shell/app-bar/app-bar.component.js +3 -2
  17. package/esm2015/app/eo-framework/form-elements/id-reference/reference-finder/reference-finder.component.js +9 -3
  18. package/esm2015/app/eo-framework/media/media.component.js +19 -14
  19. package/esm2015/app/eo-framework/object-details/object-history/object-history.component.js +4 -4
  20. package/esm2015/app/eo-framework/object-form/object-form/form-element-table/form-element-table.component.js +2 -2
  21. package/esm2015/app/eo-framework/result-list/result-list.component.js +13 -2
  22. package/esm2015/projects/eo-sdk/core/lib/service/search/search-query.model.js +4 -1
  23. package/fesm2015/eo-sdk-client-projects-eo-sdk-core.js +3 -0
  24. package/fesm2015/eo-sdk-client-projects-eo-sdk-core.js.map +1 -1
  25. package/fesm2015/eo-sdk-client.js +46 -24
  26. package/fesm2015/eo-sdk-client.js.map +1 -1
  27. package/package.json +2 -2
  28. package/projects/eo-sdk/core/eo-sdk-client-projects-eo-sdk-core.metadata.json +1 -1
  29. package/projects/eo-sdk/core/lib/service/search/search-query.model.d.ts +1 -0
  30. package/projects/eo-sdk/core/package.json +1 -1
  31. package/proxy.config.json +5 -0
  32. package/scss/_main.scss +1 -0
  33. package/styles.css +2 -1
  34. package/assets/_default/api/compare/index.html +0 -1
  35. package/assets/_default/api/error/index.html +0 -1
  36. package/assets/_default/api/img/index.html +0 -1
  37. package/assets/_default/api/mail/index.html +0 -1
  38. package/assets/_default/api/monaco/index.html +0 -1
  39. package/assets/_default/api/monaco/monaco-editor/min/vs/base/browser/ui/codicons/codicon/codicon.ttf +0 -0
  40. package/assets/_default/api/monaco/monaco-editor/min/vs/base/worker/workerMain.js +0 -2
  41. package/assets/_default/api/monaco/monaco-editor/min/vs/base/worker/workerMain.js.LICENSE.txt +0 -6
  42. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/abap/abap.js +0 -2
  43. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/abap/abap.js.LICENSE.txt +0 -6
  44. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/apex/apex.js +0 -2
  45. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/apex/apex.js.LICENSE.txt +0 -6
  46. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/azcli/azcli.js +0 -2
  47. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/azcli/azcli.js.LICENSE.txt +0 -6
  48. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/bat/bat.js +0 -2
  49. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/bat/bat.js.LICENSE.txt +0 -6
  50. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/bicep/bicep.js +0 -2
  51. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/bicep/bicep.js.LICENSE.txt +0 -6
  52. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/cameligo/cameligo.js +0 -2
  53. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/cameligo/cameligo.js.LICENSE.txt +0 -6
  54. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/clojure/clojure.js +0 -2
  55. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/clojure/clojure.js.LICENSE.txt +0 -6
  56. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/coffee/coffee.js +0 -2
  57. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/coffee/coffee.js.LICENSE.txt +0 -6
  58. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/cpp/cpp.js +0 -2
  59. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/cpp/cpp.js.LICENSE.txt +0 -6
  60. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/csharp/csharp.js +0 -2
  61. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/csharp/csharp.js.LICENSE.txt +0 -6
  62. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/csp/csp.js +0 -2
  63. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/csp/csp.js.LICENSE.txt +0 -6
  64. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/css/css.js +0 -2
  65. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/css/css.js.LICENSE.txt +0 -6
  66. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/dart/dart.js +0 -2
  67. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/dart/dart.js.LICENSE.txt +0 -6
  68. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/dockerfile/dockerfile.js +0 -2
  69. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/dockerfile/dockerfile.js.LICENSE.txt +0 -6
  70. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/ecl/ecl.js +0 -2
  71. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/ecl/ecl.js.LICENSE.txt +0 -6
  72. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/elixir/elixir.js +0 -2
  73. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/elixir/elixir.js.LICENSE.txt +0 -6
  74. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/flow9/flow9.js +0 -2
  75. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/flow9/flow9.js.LICENSE.txt +0 -6
  76. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/fsharp/fsharp.js +0 -2
  77. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/fsharp/fsharp.js.LICENSE.txt +0 -6
  78. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/go/go.js +0 -2
  79. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/go/go.js.LICENSE.txt +0 -6
  80. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/graphql/graphql.js +0 -2
  81. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/graphql/graphql.js.LICENSE.txt +0 -6
  82. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/handlebars/handlebars.js +0 -2
  83. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/handlebars/handlebars.js.LICENSE.txt +0 -6
  84. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/hcl/hcl.js +0 -2
  85. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/hcl/hcl.js.LICENSE.txt +0 -6
  86. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/html/html.js +0 -2
  87. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/html/html.js.LICENSE.txt +0 -6
  88. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/ini/ini.js +0 -2
  89. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/ini/ini.js.LICENSE.txt +0 -6
  90. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/java/java.js +0 -2
  91. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/java/java.js.LICENSE.txt +0 -6
  92. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/javascript/javascript.js +0 -2
  93. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/javascript/javascript.js.LICENSE.txt +0 -6
  94. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/julia/julia.js +0 -2
  95. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/julia/julia.js.LICENSE.txt +0 -6
  96. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/kotlin/kotlin.js +0 -2
  97. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/kotlin/kotlin.js.LICENSE.txt +0 -6
  98. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/less/less.js +0 -2
  99. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/less/less.js.LICENSE.txt +0 -6
  100. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/lexon/lexon.js +0 -2
  101. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/lexon/lexon.js.LICENSE.txt +0 -6
  102. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/liquid/liquid.js +0 -2
  103. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/liquid/liquid.js.LICENSE.txt +0 -6
  104. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/lua/lua.js +0 -2
  105. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/lua/lua.js.LICENSE.txt +0 -6
  106. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/m3/m3.js +0 -2
  107. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/m3/m3.js.LICENSE.txt +0 -6
  108. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/markdown/markdown.js +0 -2
  109. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/markdown/markdown.js.LICENSE.txt +0 -6
  110. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/mips/mips.js +0 -2
  111. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/mips/mips.js.LICENSE.txt +0 -6
  112. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/msdax/msdax.js +0 -2
  113. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/msdax/msdax.js.LICENSE.txt +0 -6
  114. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/mysql/mysql.js +0 -2
  115. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/mysql/mysql.js.LICENSE.txt +0 -6
  116. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/objective-c/objective-c.js +0 -2
  117. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/objective-c/objective-c.js.LICENSE.txt +0 -6
  118. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/pascal/pascal.js +0 -2
  119. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/pascal/pascal.js.LICENSE.txt +0 -6
  120. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/pascaligo/pascaligo.js +0 -2
  121. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/pascaligo/pascaligo.js.LICENSE.txt +0 -6
  122. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/perl/perl.js +0 -2
  123. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/perl/perl.js.LICENSE.txt +0 -6
  124. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/pgsql/pgsql.js +0 -2
  125. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/pgsql/pgsql.js.LICENSE.txt +0 -6
  126. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/php/php.js +0 -2
  127. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/php/php.js.LICENSE.txt +0 -6
  128. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/postiats/postiats.js +0 -2
  129. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/postiats/postiats.js.LICENSE.txt +0 -6
  130. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/powerquery/powerquery.js +0 -2
  131. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/powerquery/powerquery.js.LICENSE.txt +0 -6
  132. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/powershell/powershell.js +0 -2
  133. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/powershell/powershell.js.LICENSE.txt +0 -6
  134. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/protobuf/protobuf.js +0 -2
  135. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/protobuf/protobuf.js.LICENSE.txt +0 -6
  136. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/pug/pug.js +0 -2
  137. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/pug/pug.js.LICENSE.txt +0 -6
  138. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/python/python.js +0 -2
  139. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/python/python.js.LICENSE.txt +0 -6
  140. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/qsharp/qsharp.js +0 -2
  141. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/qsharp/qsharp.js.LICENSE.txt +0 -6
  142. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/r/r.js +0 -2
  143. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/r/r.js.LICENSE.txt +0 -6
  144. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/razor/razor.js +0 -2
  145. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/razor/razor.js.LICENSE.txt +0 -6
  146. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/redis/redis.js +0 -2
  147. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/redis/redis.js.LICENSE.txt +0 -6
  148. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/redshift/redshift.js +0 -2
  149. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/redshift/redshift.js.LICENSE.txt +0 -6
  150. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/restructuredtext/restructuredtext.js +0 -2
  151. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/restructuredtext/restructuredtext.js.LICENSE.txt +0 -6
  152. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/ruby/ruby.js +0 -2
  153. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/ruby/ruby.js.LICENSE.txt +0 -6
  154. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/rust/rust.js +0 -2
  155. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/rust/rust.js.LICENSE.txt +0 -6
  156. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/sb/sb.js +0 -2
  157. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/sb/sb.js.LICENSE.txt +0 -6
  158. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/scala/scala.js +0 -2
  159. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/scala/scala.js.LICENSE.txt +0 -6
  160. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/scheme/scheme.js +0 -2
  161. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/scheme/scheme.js.LICENSE.txt +0 -6
  162. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/scss/scss.js +0 -2
  163. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/scss/scss.js.LICENSE.txt +0 -6
  164. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/shell/shell.js +0 -2
  165. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/shell/shell.js.LICENSE.txt +0 -6
  166. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/solidity/solidity.js +0 -2
  167. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/solidity/solidity.js.LICENSE.txt +0 -6
  168. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/sophia/sophia.js +0 -2
  169. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/sophia/sophia.js.LICENSE.txt +0 -6
  170. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/sparql/sparql.js +0 -2
  171. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/sparql/sparql.js.LICENSE.txt +0 -6
  172. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/sql/sql.js +0 -2
  173. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/sql/sql.js.LICENSE.txt +0 -6
  174. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/st/st.js +0 -2
  175. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/st/st.js.LICENSE.txt +0 -6
  176. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/swift/swift.js +0 -2
  177. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/swift/swift.js.LICENSE.txt +0 -10
  178. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/systemverilog/systemverilog.js +0 -2
  179. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/systemverilog/systemverilog.js.LICENSE.txt +0 -6
  180. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/tcl/tcl.js +0 -2
  181. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/tcl/tcl.js.LICENSE.txt +0 -6
  182. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/twig/twig.js +0 -2
  183. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/twig/twig.js.LICENSE.txt +0 -6
  184. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/typescript/typescript.js +0 -2
  185. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/typescript/typescript.js.LICENSE.txt +0 -6
  186. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/vb/vb.js +0 -2
  187. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/vb/vb.js.LICENSE.txt +0 -6
  188. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/xml/xml.js +0 -2
  189. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/xml/xml.js.LICENSE.txt +0 -6
  190. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/yaml/yaml.js +0 -2
  191. package/assets/_default/api/monaco/monaco-editor/min/vs/basic-languages/yaml/yaml.js.LICENSE.txt +0 -6
  192. package/assets/_default/api/monaco/monaco-editor/min/vs/editor/editor.main.css +0 -6
  193. package/assets/_default/api/monaco/monaco-editor/min/vs/editor/editor.main.js +0 -2
  194. package/assets/_default/api/monaco/monaco-editor/min/vs/editor/editor.main.js.LICENSE.txt +0 -43
  195. package/assets/_default/api/monaco/monaco-editor/min/vs/editor/editor.main.nls.de.js +0 -2
  196. package/assets/_default/api/monaco/monaco-editor/min/vs/editor/editor.main.nls.de.js.LICENSE.txt +0 -6
  197. package/assets/_default/api/monaco/monaco-editor/min/vs/editor/editor.main.nls.es.js +0 -2
  198. package/assets/_default/api/monaco/monaco-editor/min/vs/editor/editor.main.nls.es.js.LICENSE.txt +0 -6
  199. package/assets/_default/api/monaco/monaco-editor/min/vs/editor/editor.main.nls.fr.js +0 -2
  200. package/assets/_default/api/monaco/monaco-editor/min/vs/editor/editor.main.nls.fr.js.LICENSE.txt +0 -6
  201. package/assets/_default/api/monaco/monaco-editor/min/vs/editor/editor.main.nls.it.js +0 -2
  202. package/assets/_default/api/monaco/monaco-editor/min/vs/editor/editor.main.nls.it.js.LICENSE.txt +0 -6
  203. package/assets/_default/api/monaco/monaco-editor/min/vs/editor/editor.main.nls.ja.js +0 -2
  204. package/assets/_default/api/monaco/monaco-editor/min/vs/editor/editor.main.nls.ja.js.LICENSE.txt +0 -6
  205. package/assets/_default/api/monaco/monaco-editor/min/vs/editor/editor.main.nls.js +0 -2
  206. package/assets/_default/api/monaco/monaco-editor/min/vs/editor/editor.main.nls.js.LICENSE.txt +0 -6
  207. package/assets/_default/api/monaco/monaco-editor/min/vs/editor/editor.main.nls.ko.js +0 -2
  208. package/assets/_default/api/monaco/monaco-editor/min/vs/editor/editor.main.nls.ko.js.LICENSE.txt +0 -6
  209. package/assets/_default/api/monaco/monaco-editor/min/vs/editor/editor.main.nls.ru.js +0 -2
  210. package/assets/_default/api/monaco/monaco-editor/min/vs/editor/editor.main.nls.ru.js.LICENSE.txt +0 -6
  211. package/assets/_default/api/monaco/monaco-editor/min/vs/editor/editor.main.nls.zh-cn.js +0 -2
  212. package/assets/_default/api/monaco/monaco-editor/min/vs/editor/editor.main.nls.zh-cn.js.LICENSE.txt +0 -6
  213. package/assets/_default/api/monaco/monaco-editor/min/vs/editor/editor.main.nls.zh-tw.js +0 -2
  214. package/assets/_default/api/monaco/monaco-editor/min/vs/editor/editor.main.nls.zh-tw.js.LICENSE.txt +0 -6
  215. package/assets/_default/api/monaco/monaco-editor/min/vs/language/css/cssMode.js +0 -2
  216. package/assets/_default/api/monaco/monaco-editor/min/vs/language/css/cssMode.js.LICENSE.txt +0 -6
  217. package/assets/_default/api/monaco/monaco-editor/min/vs/language/css/cssWorker.js +0 -2
  218. package/assets/_default/api/monaco/monaco-editor/min/vs/language/css/cssWorker.js.LICENSE.txt +0 -6
  219. package/assets/_default/api/monaco/monaco-editor/min/vs/language/html/htmlMode.js +0 -2
  220. package/assets/_default/api/monaco/monaco-editor/min/vs/language/html/htmlMode.js.LICENSE.txt +0 -6
  221. package/assets/_default/api/monaco/monaco-editor/min/vs/language/html/htmlWorker.js +0 -2
  222. package/assets/_default/api/monaco/monaco-editor/min/vs/language/html/htmlWorker.js.LICENSE.txt +0 -6
  223. package/assets/_default/api/monaco/monaco-editor/min/vs/language/json/jsonMode.js +0 -2
  224. package/assets/_default/api/monaco/monaco-editor/min/vs/language/json/jsonMode.js.LICENSE.txt +0 -6
  225. package/assets/_default/api/monaco/monaco-editor/min/vs/language/json/jsonWorker.js +0 -2
  226. package/assets/_default/api/monaco/monaco-editor/min/vs/language/json/jsonWorker.js.LICENSE.txt +0 -6
  227. package/assets/_default/api/monaco/monaco-editor/min/vs/language/typescript/tsMode.js +0 -2
  228. package/assets/_default/api/monaco/monaco-editor/min/vs/language/typescript/tsMode.js.LICENSE.txt +0 -6
  229. package/assets/_default/api/monaco/monaco-editor/min/vs/language/typescript/tsWorker.js +0 -2
  230. package/assets/_default/api/monaco/monaco-editor/min/vs/language/typescript/tsWorker.js.LICENSE.txt +0 -21
  231. package/assets/_default/api/monaco/monaco-editor/min/vs/loader.js +0 -2
  232. package/assets/_default/api/monaco/monaco-editor/min/vs/loader.js.LICENSE.txt +0 -6
  233. package/assets/_default/api/text/index.html +0 -1
  234. package/assets/_default/api/video/index.html +0 -1
@@ -183,6 +183,9 @@ export class SearchQuery {
183
183
  if (this.fields) {
184
184
  queryJson.fields = this.fields;
185
185
  }
186
+ if (this.name) {
187
+ queryJson.name = this.name;
188
+ }
186
189
  // add options when they differ from the default values
187
190
  if (this.applyOptions()) {
188
191
  queryJson.options = {};
@@ -493,4 +496,4 @@ SearchFilter.OPERATOR = {
493
496
  INTERVAL_INCLUDE_FROM: "gtelt",
494
497
  RANGE: "rg" // aggegation ranges
495
498
  };
496
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLXF1ZXJ5Lm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZW8tc2RrL2NvcmUvc3JjL2xpYi9zZXJ2aWNlL3NlYXJjaC9zZWFyY2gtcXVlcnkubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBRXpDLDJEQUEyRDtBQUUzRCxNQUFNLENBQU4sSUFBWSxVQUlYO0FBSkQsV0FBWSxVQUFVO0lBQ3BCLHlCQUFXLENBQUE7SUFDWCxpQ0FBbUIsQ0FBQTtJQUNuQixzQ0FBd0IsQ0FBQTtBQUMxQixDQUFDLEVBSlcsVUFBVSxLQUFWLFVBQVUsUUFJckI7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxPQUFPLFdBQVc7SUFxSXRCO1FBakRBOztXQUVHO1FBQ0ksVUFBSyxHQUFpQixFQUFFLENBQUM7UUFDaEM7O1dBRUc7UUFDSSx1QkFBa0IsR0FBaUIsRUFBRSxDQUFDO1FBQzdDOztXQUVHO1FBQ0ksWUFBTyxHQUFtQixFQUFFLENBQUM7UUFLcEM7O1dBRUc7UUFDSSxlQUFVLEdBQUcsS0FBSyxDQUFDO1FBSzFCOztXQUVHO1FBQ0ksZUFBVSxHQUFXLFdBQVcsQ0FBQyxtQkFBbUIsQ0FBQztRQUM1RDs7V0FFRztRQUNJLGdCQUFXLEdBQWlCLEVBQUUsQ0FBQztRQUN0Qzs7V0FFRztRQUNJLHFCQUFnQixHQUFHLElBQUksQ0FBQztRQUMvQjs7V0FFRztRQUNJLFVBQUssR0FBZ0IsSUFBSSxXQUFXLEVBQUUsQ0FBQztRQUV2QyxpQkFBWSxHQUFZLEtBQUssQ0FBQztRQUM5QixnQkFBVyxHQUFZLEtBQUssQ0FBQztJQU9yQixDQUFDO0lBRWhCOzs7O09BSUc7SUFDSSxPQUFPLENBQUMsSUFBZ0I7UUFDN0IsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FB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S0FBSztnQkFDL0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVLENBQUM7Z0JBQy9DLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxLQUFLLFVBQVUsQ0FBQyxDQUNwQyxDQUFDO0lBQ0osQ0FBQzs7QUFsSEQ7O0dBRUc7QUFDVyxxQkFBUSxHQUFHO0lBQ3ZCLFlBQVk7SUFDWixLQUFLLEVBQUUsSUFBSTtJQUNYLHdEQUF3RDtJQUN4RCxLQUFLLEVBQUUsT0FBTztJQUNkLDRFQUE0RTtJQUM1RSxFQUFFLEVBQUUsSUFBSTtJQUNSLG1CQUFtQjtJQUNuQixZQUFZLEVBQUUsSUFBSTtJQUNsQiw0QkFBNEI7SUFDNUIsZ0JBQWdCLEVBQUUsS0FBSztJQUN2QixTQUFTLEVBQUUsSUFBSTtJQUNmLGFBQWEsRUFBRSxLQUFLO0lBQ3BCLFFBQVEsRUFBRSxNQUFNO0lBQ2hCLHFCQUFxQixFQUFFLFFBQVE7SUFDL0IsbUJBQW1CLEVBQUUsT0FBTztJQUM1QixxQkFBcUIsRUFBRSxPQUFPO0lBQzlCLEtBQUssRUFBRSxJQUFJLENBQUMsb0JBQW9CO0NBQ2pDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge3JlZHVjZX0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtPYmplY3RUeXBlfSBmcm9tIFwiLi4vLi4vbW9kZWwvb2JqZWN0LXR5cGUubW9kZWxcIjtcbmltcG9ydCB7RGF0ZVBpcGV9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcblxuLy9leHBvcnQgdHlwZSBRdWVyeVNjb3BlID0gJ2luZGV4ZGF0ZScgfCAnY29udGVudCcgfCAnYWxsJztcblxuZXhwb3J0IGVudW0gUXVlcnlTY29wZSB7XG4gIEFMTCA9ICdhbGwnLFxuICBDT05URU5UID0gJ2NvbnRlbnQnLFxuICBJTkRFWF9EQVRBID0gJ2luZGV4ZGF0YSdcbn1cblxuLyoqXG4gKiBUaGUgU2VhcmNoUXVlcnkgQ2xhc3NcbiAqXG4gKiBTZWUge0BsaW5rIFNlYXJjaFNlcnZpY2V9IGZvciBVc2FnZVxuICovXG5leHBvcnQgY2xhc3MgU2VhcmNoUXVlcnkge1xuICAvKipcbiAgICogQmFzZSBQYXJhbWV0ZXJzIGZvciBhIFNlYXJjaCBRdWVyeVxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBCQVNFX1BBUkFNUyA9IHtcbiAgICBUWVBFOiBcInR5cGVcIixcbiAgICBDUkVBVE9SOiBcImNyZWF0b3JcIixcbiAgICBDUkVBVEVEOiBcImNyZWF0ZWRcIixcbiAgICBNT0RJRklFUjogXCJtb2RpZmllclwiLFxuICAgIE1PRElGSUVEOiBcIm1vZGlmaWVkXCIsXG4gICAgRklMRVNJWkU6IFwiZmlsZXNpemVcIixcbiAgICBGSUxFTkFNRTogXCJmaWxlbmFtZVwiLFxuICAgIE1JTUVUWVBFR1JPVVA6IFwibWltZXR5cGVncm91cFwiXG4gIH07XG5cbiAgLyoqXG4gICAqIFRpbWUgcGVyaW9kIGJ1Y2tldHMgcHJvcGVydHkgbmFtZXNcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgVElNRV9QRVJJT0RfQlVDS0VUUyA9IHtcbiAgICBUT0RBWTogXCJ0b2RheVwiLFxuICAgIFlFU1RFUkRBWTogXCJ5ZXN0ZXJkYXlcIixcbiAgICBUSElTX1dFRUs6IFwidGhpc3dlZWtcIixcbiAgICBMQVNUX1dFRUs6IFwibGFzdHdlZWtcIixcbiAgICBUSElTX01PTlRIOiBcInRoaXNtb250aFwiLFxuICAgIExBU1RfTU9OVEg6IFwibGFzdG1vbnRoXCIsXG4gICAgVEhJU19ZRUFSOiBcInRoaXN5ZWFyXCIsXG4gICAgTEFTVF9ZRUFSOiBcImxhc3R5ZWFyXCJcbiAgfTtcblxuICAvKipcbiAgICogbWltZXR5cGUgYnVja2V0cyBwcm9wZXJ0eSBuYW1lc1xuICAgKi9cbiAgcHVibGljIHN0YXRpYyBNSU1FVFlQRUdST1VQX0JVQ0tFVFMgPSB7XG4gICAgUERGOiBcInBkZlwiLFxuICAgIE1BSUw6IFwibWFpbFwiLFxuICAgIFdPUkQ6IFwid29yZFwiLFxuICAgIElNQUdFOiBcImltYWdlXCIsXG4gICAgT0NURVRfU1RSRUFNOiBcIm9jdGV0LXN0cmVhbVwiLFxuICAgIFRYVDogXCJ0eHRcIixcbiAgICBFWENFTDogXCJleGNlbFwiLFxuICAgIFBPV0VSUE9JTlQ6IFwicG93ZXJwb2ludFwiLFxuICAgIFZJREVPOiBcInZpZGVvXCIsXG4gICAgSFRNTDogXCJodG1sXCIsXG4gICAgQVVESU86IFwiYXVkaW9cIixcbiAgICBaSVA6IFwiemlwXCJcbiAgfTtcblxuICAvKipcbiAgICogZmlsZXNpemUgYnVja2V0cyBwcm9wZXJ0eSBuYW1lc1xuICAgKi9cbiAgcHVibGljIHN0YXRpYyBGSUxFX1NJWkVfQlVDS0VUUyA9IHtcbiAgICBMVDFNQjogXCJsdDFNQlwiLFxuICAgIExUMTBNQjogXCJsdDEwTUJcIixcbiAgICBMVDEwME1COiBcImx0MTAwTUJcIixcbiAgICBHVDEwME1COiBcImd0MTAwTUJcIlxuICB9O1xuXG4gIC8vIGxpc3Qgb2YgdGhpbmdzIHRoYXQgbWF5IGhhdmUgY2hhbmdlZCB0aGUgY3VycmVudCBxdWVyeVxuICBwdWJsaWMgc3RhdGljIFVQREFURV9DQVVTRSA9IHtcbiAgICBUT0dHTEVEX1RZUEU6IFwiY2F1c2UudHlwZS50b2dnbGVkXCIsXG4gICAgVE9HR0xFRF9FWFBFUlRNT0RFOiBcImNhdXNlLmV4cGVydG1vZGUudG9nZ2xlZFwiLFxuICAgIFRFUk1fU0VUOiBcImNhdXNlLnRlcm0uc2V0XCIsXG4gICAgVFlQRVNfU0VUOiBcImNhdXNlLnR5cGVzLnNldFwiLFxuICAgIENPTlRFWFRfRk9MREVSX1NFVDogXCJjYXVzZS5jb250ZXh0Zm9sZGVyLnNldFwiLFxuICAgIFRPR0dMRURfRklMVEVSOiBcImNhdXNlLmZpbHRlci50b2dnbGVkXCIsXG4gICAgQURERURfRklMVEVSOiBcImNhdXNlLmZpbHRlci5hZGRlZFwiLFxuICAgIFJFTU9WRURfRklMVEVSOiBcImNhdXNlLmZpbHRlci5yZW1vdmVkXCIsXG4gIH07XG4gIC8qKlxuICAgKiBEZXRhdWx0IFNlYXJjaCBtb2RlIEluZGV4XG4gICAqL1xuICBwdWJsaWMgc3RhdGljIERFRkFVTFRfU0VBUkNIX01PREUgPSBcImlkeHNcIjtcbiAgLyoqXG4gICAqIFNlYXJjaCBtb2RlIGZvciBGdWxsIHRlc3QgU2VhcmNoXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIEZVTExURVhUX1NFQVJDSF9NT0RFID0gXCJmdHNcIjtcbiAgLyoqXG4gICAqIGZ1bGx0ZXh0IHNlYXJjaCB0ZXJtXG4gICAqL1xuICBwdWJsaWMgdGVybTogc3RyaW5nO1xuICAvKipcbiAgICogQXJyYXkgb2YgZmllbGRzIHRvIHJlcXVlc3QgZnJvbSB0aGUgc2VhcmNoIHNlcnZpY2UsIGxlYXZpbmcgdGhpcyBibGFuayB3aWxsIHJldHVybiB0aGUgZmllbGRzIHNwZWNpZmllZCBpbiB0aGUgcmVzdWx0IGZpZWxkIGNvbmZpZ3VyYXRpb25cbiAgICovXG4gIHB1YmxpYyBmaWVsZHM6IHN0cmluZ1tdO1xuICAvKipcbiAgICogTGlzdCBvZiBvYmplY3QgdHlwZXMgdG8gYmUgZmV0Y2hlZCBieSB0aGUgcXVlcnkuIExlYXZpbmcgdGhpcyBibGFuayB3aWxsIHJldHVybiByZXN1bHRzIGZyb20gYW55IHR5cGVcbiAgICovXG4gIHB1YmxpYyB0eXBlczogT2JqZWN0VHlwZVtdID0gW107XG4gIC8qKlxuICAgKiBMaXN0IG9mIGNvbnRleHQgZm9sZGVyIHR5cGVzXG4gICAqL1xuICBwdWJsaWMgY29udGV4dEZvbGRlclR5cGVzOiBPYmplY3RUeXBlW10gPSBbXTtcbiAgLyoqXG4gICAqIExpc3Qgb2YgZmlsdGVycyB0byBkZWZpbmUgdGhlIHF1ZXJ5XG4gICAqL1xuICBwdWJsaWMgZmlsdGVyczogU2VhcmNoRmlsdGVyW10gPSBbXTtcbiAgLyoqXG4gICAqIFdoZXRoZXIgb3Igbm90IHRvIHJldHJpZXZlIHN1Z2dlc3Rpb25zXG4gICAqL1xuICBwdWJsaWMgc3VnZ2VzdDogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFdoZXRoZXIgb3Igbm90IHRoZSB0ZXJtIGlzIGFuIGV4cGVydCBtb2RlIHF1ZXJ5XG4gICAqL1xuICBwdWJsaWMgZXhwZXJ0TW9kZSA9IGZhbHNlO1xuICAvKipcbiAgICogVGhlIHNjb3BlIG9mIHRoZSBxdWVyeVxuICAgKi9cbiAgcHVibGljIHNjb3BlOiBRdWVyeVNjb3BlO1xuICAvKipcbiAgICogVGhlIHNlYXJjaCBtb2RlIHRvIGJlIHVzZWQgKFNlYXJjaFF1ZXJ5LkRFRkFVTFRfU0VBUkNIX01PREUgb3IgU2VhcmNoUXVlcnkuRlVMTFRFWFRfU0VBUkNIX01PREUpXG4gICAqL1xuICBwdWJsaWMgc2VhcmNoTW9kZTogc3RyaW5nID0gU2VhcmNoUXVlcnkuREVGQVVMVF9TRUFSQ0hfTU9ERTtcbiAgLyoqXG4gICAqIEFkZGl0aW9uYWwgb3B0aW9ucyB0byBiZSBhcHBsaWVkIHRvIHRoZSBxdWVyeVxuICAgKi9cbiAgcHVibGljIHNvcnRPcHRpb25zOiBTb3J0T3B0aW9uW10gPSBbXTtcbiAgLyoqXG4gICAqIFJlc29sdmUgcmVmZXJlbmNlcyB3aXRoIHRoZWlyIHRpdGxlIGluc3RlYWQgb2YgdGhlaXIgYWN0dWFsIHZhbHVlXG4gICAqL1xuICBwdWJsaWMgcmVzb2x2ZVJlZmVyZW5jZSA9IHRydWU7XG4gIC8qKlxuICAgKiBUaGUgc3RhdGUgb2YgdGhlIGN1cnJlbnQgcXVlcnlcbiAgICovXG4gIHB1YmxpYyBzdGF0ZTogU2VhcmNoU3RhdGUgPSBuZXcgU2VhcmNoU3RhdGUoKTtcblxuICBwdWJsaWMgaGlnaGxpZ2h0aW5nOiBib29sZWFuID0gZmFsc2U7XG4gIHB1YmxpYyB3aXRoQ29udGV4dDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8vIEluZGljYXRvciB3aGF0IGNhdXNlZCB0aGUgdXBkYXRlIG9mIGEgU2VhcmNoUXVlcnkgb2JqZWN0LlxuICAvLyBVc2VmdWxsIGZvciBjb21wb25lbnRzIHRoYXQgc3Vic2NyaWJlZCB0byBhIHF1ZXJ5LCBhbmQgbmVlZCB0b1xuICAvLyB0cmFjayB0aGUga2luZCBvZiBjaGFuZ2VzIG1hZGVcbiAgX191cGRhdGVDYXVzZTogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKCkge31cblxuICAvKipcbiAgICogQWRkcyBhIG5ldyB0YXJnZXQgdHlwZSB0byB0aGUgcXVlcnlcbiAgICpcbiAgICogQHBhcmFtIHR5cGUgT2JqZWN0IHR5cGUgdG8gYmUgYWRkZWRcbiAgICovXG4gIHB1YmxpYyBhZGRUeXBlKHR5cGU6IE9iamVjdFR5cGUpIHtcbiAgICBpZiAoIXRoaXMudHlwZXMuZmluZCh0ID0+IHQuaWQgPT09IHR5cGUuaWQpKSB7XG4gICAgICB0aGlzLnR5cGVzLnB1c2godHlwZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZXMgYSB0eXBlIGZyb20gdGhlIHRhcmdldCB0eXBlcyBsaXN0XG4gICAqXG4gICAqIEBwYXJhbSB0eXBlIFRoZSBvYmplY3QgdHlwZSB0byBiZSByZW1vdmVkXG4gICAqL1xuICBwdWJsaWMgcmVtb3ZlVHlwZSh0eXBlOiBPYmplY3RUeXBlKSB7XG4gICAgdGhpcy50eXBlcyA9IHRoaXMudHlwZXMuZmlsdGVyKHQgPT4gdC5pZCAhPT0gdHlwZS5pZCk7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBvciByZW1vdmVzIHRoZSBnaXZlbiB0eXBlIGJhc2VkIG9uIHRoZSBjdXJyZW50IHNldHRpbmdzXG4gICAqXG4gICAqIEBwYXJhbSB0eXBlIFRoZSBvYmplY3QgdHlwZSB0byBiZSB0b2dnbGVkXG4gICAqL1xuICBwdWJsaWMgdG9nZ2xlVHlwZSh0eXBlOiBPYmplY3RUeXBlKSB7XG4gICAgaWYgKHRoaXMudHlwZXMuZmluZCh0ID0+IHQuaWQgPT09IHR5cGUuaWQpKSB7XG4gICAgICB0aGlzLnJlbW92ZVR5cGUodHlwZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudHlwZXMucHVzaCh0eXBlKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBhIG5ldyBmaWx0ZXIgdG8gdGhlIHF1ZXJ5LiBJZiB0aGVyZSBhbHJlYWR5IGlzIGEgZmlsdGVyIHNldCBmb3IgdGhlIGdpdmVuIHByb3BlcnR5LCBpdCB3aWxsIGJlIG92ZXJyaWRkZW4uXG4gICAqXG4gICAqIEBwYXJhbSBmaWx0ZXIgVGhlIGZpbHRlciB0byBiZSBhZGRlZFxuICAgKi9cbiAgcHVibGljIGFkZEZpbHRlcihmaWx0ZXI6IFNlYXJjaEZpbHRlcikge1xuICAgIGlmICghZmlsdGVyKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmICghdGhpcy5nZXRGaWx0ZXIoZmlsdGVyLnByb3BlcnR5KSkge1xuICAgICAgdGhpcy5maWx0ZXJzLnB1c2goZmlsdGVyKTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gaWYgdGhlcmUgYWxyZWFkeSBpcyBhIGZpbHRlciBzZXQgZm9yIHRoZSB0YXJnZXQgcHJvcGVydHlcbiAgICAgIC8vIHdlJ2xsIGp1c3Qgb3ZlcnJpZGUgaXQgd2l0aCB0aGUgbmV3IHZhbHVlXG4gICAgICB0aGlzLnJlbW92ZUZpbHRlcihmaWx0ZXIucHJvcGVydHkpO1xuICAgICAgdGhpcy5maWx0ZXJzLnB1c2goZmlsdGVyKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlcyBhIGZpbHRlciBmcm9tIHRoZSBxdWVyeS5cbiAgICpcbiAgICogQHBhcmFtIGZpbHRlclByb3BlcnR5TmFtZSBUaGUgZmlsdGVyIChpdHMgcHJvcGVydHkgbmFtZSkgdG8gYmUgcmVtb3ZlZFxuICAgKi9cbiAgcHVibGljIHJlbW92ZUZpbHRlcihmaWx0ZXJQcm9wZXJ0eU5hbWU6IHN0cmluZykge1xuICAgIHRoaXMuZmlsdGVycyA9IHRoaXMuZmlsdGVycy5maWx0ZXIoZiA9PiBmLnByb3BlcnR5ICE9PSBmaWx0ZXJQcm9wZXJ0eU5hbWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgb3IgcmVtb3ZlcyB0aGUgZ2l2ZW4gZmlsdGVyIGJhc2VkIG9uIHRoZSBjdXJyZW50IHNldHRpbmdzXG4gICAqXG4gICAqIEBwYXJhbSBmaWx0ZXIgVGhlIGZpbHRlciB0byBiZSB0b2dnbGVkXG4gICAqL1xuICBwdWJsaWMgdG9nZ2xlRmlsdGVyKGZpbHRlcjogU2VhcmNoRmlsdGVyLCBvdmVycmlkZT86IGJvb2xlYW4pIHtcbiAgICBpZiAodGhpcy5nZXRGaWx0ZXIoZmlsdGVyLnByb3BlcnR5KSkge1xuICAgICAgdGhpcy5yZW1vdmVGaWx0ZXIoZmlsdGVyLnByb3BlcnR5KTtcbiAgICAgIGlmIChvdmVycmlkZSkge1xuICAgICAgICB0aGlzLmZpbHRlcnMucHVzaChmaWx0ZXIpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmZpbHRlcnMucHVzaChmaWx0ZXIpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBSZXRyaWV2ZXMgYSBmaWx0ZXIgYnkgaXRzIHByb3BlcnR5IG5hbWUuXG4gICAqXG4gICAqIEBwYXJhbSBwcm9wZXJ0eU5hbWUgVGhlIGZpbHRlcnMgcHJvcGVydHkgbmFtZSAocW5hbWUgb2YgZm9ybSBlbGVtZW50KVxuICAgKiBAcmV0dXJucyBTZWFyY2ggRmlsdGVyIE9iamVjdFxuICAgKi9cbiAgcHVibGljIGdldEZpbHRlcihwcm9wZXJ0eU5hbWU6IHN0cmluZyk6IFNlYXJjaEZpbHRlciB7XG4gICAgcmV0dXJuIHRoaXMuZmlsdGVycy5maW5kKGYgPT4gZi5wcm9wZXJ0eSA9PT0gcHJvcGVydHlOYW1lKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRUYWJsZUZpbHRlcnMocHJvcGVydHlOYW1lOiBzdHJpbmcpOiBTZWFyY2hGaWx0ZXJbXSB7XG4gICAgcmV0dXJuIHRoaXMuZmlsdGVycy5maWx0ZXIoZiA9PiBmLnByb3BlcnR5LnN0YXJ0c1dpdGgocHJvcGVydHlOYW1lICsgJy4nKSk7XG4gIH1cblxuICAvKipcbiAgICogQWRkaW5nIG5ldyBTb3J0IE9wdGlvbnNcbiAgICogU29ydCBPcHRpb25zIGFyZSBvbmx5IGFkZGVkIGlmIHRoZXkgYXJlIG5vdCBhbHJlYWR5IHByZXNlbnRcbiAgICpcbiAgICogQHBhcmFtIG5hbWVcbiAgICogQHBhcmFtIG9yZGVyXG4gICAqIEBwYXJhbSBtaXNzaW5nXG4gICAqL1xuICBwdWJsaWMgYWRkU29ydE9wdGlvbihuYW1lOiBzdHJpbmcsIG9yZGVyOiBzdHJpbmcsIG1pc3Npbmc/OiBzdHJpbmcpIHtcbiAgICBpZiAoIXRoaXMuc29ydE9wdGlvbnMuZmluZChzID0+IHMuZmllbGQgPT09IG5hbWUpKSB7XG4gICAgICB0aGlzLnNvcnRPcHRpb25zLnB1c2gobmV3IFNvcnRPcHRpb24obmFtZSwgb3JkZXIsIG1pc3NpbmcpKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICpcbiAgICogQHBhcmFtIG5hbWVcbiAgICovXG4gIHB1YmxpYyByZW1vdmVTb3J0T3B0aW9uKG5hbWU6IHN0cmluZykge1xuICAgIHRoaXMuc29ydE9wdGlvbnMgPSB0aGlzLnNvcnRPcHRpb25zLmZpbHRlcihzID0+IHMuZmllbGQgIT09IG5hbWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlIGEgcXVlcnkgSlNPTiBmcm9tIHRoZSBjdXJyZW50IFNlYXJjaFF1ZXJ5IHRoYXQgY2FuIGJlIHNlbmQgdG8gdGhlIHNlYXJjaCBzZXJ2aWNlLlxuICAgKi9cbiAgcHVibGljIGdldFF1ZXJ5SnNvbigpIHtcbiAgICAvLyBDb252ZXJ0IHRoZSBjdXJyZW50IHF1ZXJ5IG9iamVjdCB0byBhIHF1ZXJ5IEpTT04gdGhhdCBjYW4gYmUgY29uc3VtZWQgYnkgdGhlIHNlYXJjaCBzZXJ2aWNlIGJhY2tlbmQuXG4gICAgLy8gVG8ga2VlcCBpdCBzaG9ydCwgd2UnbGwgb25seSBhZGQgcHJvcGVydGllcyB0aGF0IGFyZSBzZXQgYW5kIGRpZmZlciBmcm9tIGRlZmF1bHQgdmFsdWVzXG4gICAgY29uc3QgcXVlcnlKc29uOiBhbnkgPSB7fTtcblxuICAgIC8vIGFkZCB0eXBlIGZpbHRlcnNcbiAgICBpZiAodGhpcy50eXBlcy5sZW5ndGggPiAwKSB7XG4gICAgICBxdWVyeUpzb24udHlwZXMgPSB0aGlzLnR5cGVzLm1hcCh0ID0+XG4gICAgICAgIHR5cGVvZiB0ID09PSBcInN0cmluZ1wiID8gdCA6IHQubmFtZVxuICAgICAgKTtcbiAgICB9XG5cbiAgICAvLyBhZGQgY29udGV4dCBmb2xkZXIgdHlwZSBmaWx0ZXJzXG4gICAgaWYgKHRoaXMuY29udGV4dEZvbGRlclR5cGVzLmxlbmd0aCA+IDApIHtcbiAgICAgIHF1ZXJ5SnNvbi5jb250ZXh0Zm9sZGVydHlwZXMgPSB0aGlzLmNvbnRleHRGb2xkZXJUeXBlcy5tYXAodCA9PiB0Lm5hbWUpO1xuICAgIH1cblxuICAgIC8vIGZpbHRlcnNcbiAgICBpZiAodGhpcy5maWx0ZXJzLmxlbmd0aCA+IDApIHtcbiAgICAgIHF1ZXJ5SnNvbi5maWx0ZXJzID0ge307XG4gICAgICB0aGlzLmZpbHRlcnMuZm9yRWFjaChmID0+IHtcbiAgICAgICAgcXVlcnlKc29uLmZpbHRlcnNbZi5wcm9wZXJ0eV0gPSBmLnRvUXVlcnkoKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgICBpZiAodGhpcy50ZXJtKSB7XG4gICAgICBxdWVyeUpzb24udGVybSA9IHRoaXMudGVybTtcbiAgICB9XG4gICAgLy8gc2VhcmNoIGZpZWxkc1xuICAgIGlmICh0aGlzLmZpZWxkcykge1xuICAgICAgcXVlcnlKc29uLmZpZWxkcyA9IHRoaXMuZmllbGRzO1xuICAgIH1cbiAgICAvLyBhZGQgb3B0aW9ucyB3aGVuIHRoZXkgZGlmZmVyIGZyb20gdGhlIGRlZmF1bHQgdmFsdWVzXG4gICAgaWYgKHRoaXMuYXBwbHlPcHRpb25zKCkpIHtcbiAgICAgIHF1ZXJ5SnNvbi5vcHRpb25zID0ge307XG4gICAgICBxdWVyeUpzb24ub3B0aW9ucy5zY29wZSA9IHRoaXMuc2NvcGU7XG4gICAgICBpZiAodGhpcy5zdWdnZXN0KSB7XG4gICAgICAgIHF1ZXJ5SnNvbi5vcHRpb25zLnN1Z2dlc3QgPSB0cnVlO1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMuZXhwZXJ0TW9kZSkge1xuICAgICAgICBxdWVyeUpzb24ub3B0aW9ucy5leHBlcnRtb2RlID0gdHJ1ZTtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLnJlc29sdmVSZWZlcmVuY2UpIHtcbiAgICAgICAgcXVlcnlKc29uLm9wdGlvbnMucmVzb2x2ZVJlZmVyZW5jZSA9IHRydWU7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5zZWFyY2hNb2RlICE9PSBTZWFyY2hRdWVyeS5ERUZBVUxUX1NFQVJDSF9NT0RFKSB7XG4gICAgICAgIHF1ZXJ5SnNvbi5vcHRpb25zLnNlYXJjaG1vZGUgPSB0aGlzLnNlYXJjaE1vZGU7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5zb3J0T3B0aW9ucyAmJiB0aGlzLnNvcnRPcHRpb25zLmxlbmd0aCkge1xuICAgICAgICBxdWVyeUpzb24ub3B0aW9ucy5zb3J0ID0ge307XG4gICAgICAgIHRoaXMuc29ydE9wdGlvbnMuZm9yRWFjaCgoc29ydE9wdGlvbjogU29ydE9wdGlvbikgPT4ge1xuICAgICAgICAgIHF1ZXJ5SnNvbi5vcHRpb25zLnNvcnRbc29ydE9wdGlvbi5maWVsZF0gPSB7XG4gICAgICAgICAgICBvcmRlcjogc29ydE9wdGlvbi5vcmRlclxuICAgICAgICAgIH07XG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy5oaWdobGlnaHRpbmcpIHtcbiAgICAgICAgcXVlcnlKc29uLm9wdGlvbnMuaGlnaGxpZ2h0aW5nID0gdGhpcy5oaWdobGlnaHRpbmc7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy53aXRoQ29udGV4dCkge1xuICAgICAgICBxdWVyeUpzb24ub3B0aW9ucy53aXRoQ29udGV4dCA9IHRoaXMud2l0aENvbnRleHQ7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBxdWVyeUpzb247XG4gIH1cblxuICAvLyBkZXRlcm1pbmVzIHdoZXRoZXIgb3Igbm90IHRoZSBxdWVyeSBzZW5kIHRvIHRoZSBzZWFyY2ggc2VydmljZSBzaG91bGQgY29udGFpbiBvcHRpb25zXG4gIHByaXZhdGUgYXBwbHlPcHRpb25zKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAoXG4gICAgICB0aGlzLmV4cGVydE1vZGUgfHxcbiAgICAgICEhdGhpcy5zY29wZSB8fFxuICAgICAgdGhpcy5zdWdnZXN0IHx8XG4gICAgICB0aGlzLmhpZ2hsaWdodGluZyB8fFxuICAgICAgdGhpcy5yZXNvbHZlUmVmZXJlbmNlIHx8XG4gICAgICB0aGlzLndpdGhDb250ZXh0IHx8XG4gICAgICB0aGlzLnNlYXJjaE1vZGUgIT09IFNlYXJjaFF1ZXJ5LkRFRkFVTFRfU0VBUkNIX01PREUgfHxcbiAgICAgIHRoaXMuc29ydE9wdGlvbnMubGVuZ3RoID4gMFxuICAgICk7XG4gIH1cbn1cblxuLyoqXG4gKiBAaWdub3JlXG4gKiBDcmVhdGVzIHRoZSBNb2RlbCBvZiBTb3J0IE9wdGlvbnNcbiAqL1xuZXhwb3J0IGNsYXNzIFNvcnRPcHRpb24ge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZmllbGQ6IHN0cmluZyxcbiAgICBwdWJsaWMgb3JkZXI6IHN0cmluZyxcbiAgICBwdWJsaWMgbWlzc2luZz86IHN0cmluZ1xuICApIHt9XG59XG5cbi8qKlxuICogQGlnbm9yZVxuICogQ3JlYXRlcyB0aGUgTW9kZWwgb2YgRmllbGQgRGVmaW5pdGlvbnNcbiAqL1xuZXhwb3J0IGNsYXNzIEZpZWxkRGVmaW5pdGlvbiB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBlbGVtZW50czogYW55W10gPSBbXSxcbiAgICBwdWJsaWMgc29ydG9yZGVyOiBhbnlbXSA9IFtdLFxuICAgIHB1YmxpYyBncm91cG9yZGVyOiBhbnlbXSA9IFtdLFxuICAgIHB1YmxpYyBwaW5uZWQ6IGFueVtdID0gW10sXG4gICAgcHVibGljIG1vZGU/OiBzdHJpbmdcbiAgKSB7fVxufVxuXG4vKipcbiAqIEBpZ25vcmVcbiAqIENsYXNzIHJlcHJlc2VudGluZyB0aGUgc3RhdGUgb2YgYSBxdWVyeVxuICovXG5leHBvcnQgY2xhc3MgU2VhcmNoU3RhdGUge1xuICBwdWJsaWMgY291bnQ6IHt2YWx1ZTogbnVtYmVyLCByZWxhdGlvbj86IHN0cmluZ307XG4gIHB1YmxpYyBhZ2dyZWdhdGlvbnM7XG4gIHB1YmxpYyBsYXN0Q2hhbmdlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLmFnZ3JlZ2F0aW9ucyA9IHtcbiAgICAgIHR5cGU6IG5ldyBNYXA8c3RyaW5nLCBudW1iZXI+KCksXG4gICAgICBjb250ZXh0VHlwZTogbmV3IE1hcDxzdHJpbmcsIG51bWJlcj4oKSxcbiAgICAgIGNyZWF0ZWQ6IFtdLFxuICAgICAgbW9kaWZpZWQ6IFtdLFxuICAgICAgbWltZXR5cGVncm91cDogW10sXG4gICAgICBmaWxlc2l6ZTogW11cbiAgICB9O1xuICB9XG5cbiAgZ2V0IHRvdGFsQ291bnQoKSB7XG4gICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5hZ2dyZWdhdGlvbnMudHlwZS52YWx1ZXMoKSkucmVkdWNlKChhY2M6IG51bWJlciwgY3VyOiBudW1iZXIpID0+IGFjYyArIGN1ciwgMCkgYXMgbnVtYmVyO1xuICB9XG5cbiAgZ2V0IGlzRW1wdHkoKSB7XG4gICAgcmV0dXJuICEodGhpcy5jb3VudCAmJiB0aGlzLmNvdW50LnZhbHVlKTtcbiAgfVxuXG4gIGFkZEFnZ3JlZ2F0aW9ucyh0eXBlOiBzdHJpbmcsIGtleTogc3RyaW5nLCB2YWx1ZTogbnVtYmVyLCBhZ2c/KSB7XG4gICAgc3dpdGNoICh0eXBlKSB7XG4gICAgICBjYXNlIFwiY29udGV4dHR5cGVcIjoge1xuICAgICAgICB0aGlzLmFnZ3JlZ2F0aW9ucy5jb250ZXh0VHlwZS5zZXQoa2V5LCB2YWx1ZSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSBTZWFyY2hRdWVyeS5CQVNFX1BBUkFNUy5UWVBFOiB7XG4gICAgICAgIHRoaXMuYWdncmVnYXRpb25zLnR5cGUuc2V0KGtleSwgdmFsdWUpO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGNhc2UgU2VhcmNoUXVlcnkuQkFTRV9QQVJBTVMuQ1JFQVRFRDoge1xuICAgICAgICB0aGlzLmFnZ3JlZ2F0aW9ucy5jcmVhdGVkLnB1c2goe1xuICAgICAgICAgIGtleToga2V5LFxuICAgICAgICAgIHZhbHVlOiB2YWx1ZVxuICAgICAgICB9KTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBjYXNlIFNlYXJjaFF1ZXJ5LkJBU0VfUEFSQU1TLk1PRElGSUVEOiB7XG4gICAgICAgIHRoaXMuYWdncmVnYXRpb25zLm1vZGlmaWVkLnB1c2goe1xuICAgICAgICAgIGtleToga2V5LFxuICAgICAgICAgIHZhbHVlOiB2YWx1ZVxuICAgICAgICB9KTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBjYXNlIFNlYXJjaFF1ZXJ5LkJBU0VfUEFSQU1TLk1JTUVUWVBFR1JPVVA6IHtcbiAgICAgICAgdGhpcy5hZ2dyZWdhdGlvbnMubWltZXR5cGVncm91cC5wdXNoKHtcbiAgICAgICAgICBrZXk6IGtleSxcbiAgICAgICAgICB2YWx1ZTogdmFsdWVcbiAgICAgICAgfSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSBTZWFyY2hRdWVyeS5CQVNFX1BBUkFNUy5GSUxFU0laRToge1xuICAgICAgICB0aGlzLmFnZ3JlZ2F0aW9ucy5maWxlc2l6ZS5wdXNoKHtcbiAgICAgICAgICBrZXk6IGtleSxcbiAgICAgICAgICB2YWx1ZTogdmFsdWUsXG4gICAgICAgICAgZnJvbTogYWdnLmZyb20sXG4gICAgICAgICAgdG86IGFnZy50byB8fCBJbmZpbml0eSxcbiAgICAgICAgICBsYWJlbDoga2V5LnJlcGxhY2UoXCJndFwiLCBcIj4gXCIpLnJlcGxhY2UoXCJsdFwiLCBcIjwgXCIpXG4gICAgICAgIH0pO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBAaWdub3JlXG4gKiBDcmVhdGVzIHRoZSBNb2RlbCBvZiBTZWFyY2ggUmVzdWx0c1xuICovXG5leHBvcnQgY2xhc3MgU2VhcmNoUmVzdWx0IHtcbiAgcHVibGljIGNvdW50OiB7dmFsdWU6IG51bWJlciwgcmVsYXRpb24/OiBzdHJpbmd9O1xuICBwdWJsaWMgc3VnZ2VzdHM6IHN0cmluZ1tdO1xuICBwdWJsaWMgaGl0czogYW55W107XG4gIHB1YmxpYyB0eXBlTmFtZTogc3RyaW5nO1xuICBwdWJsaWMgZmllbGRzOiBGaWVsZERlZmluaXRpb247XG5cbiAgY29uc3RydWN0b3IoKSB7fVxufVxuXG5leHBvcnQgY2xhc3MgU2VhcmNoRmlsdGVyIHtcbiAgLyoqXG4gICAqIGF2YWlsYWJsZSBvcGVyYXRvcnMgZm9yIGEgc2VhcmNoIGZpbHRlclxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBPUEVSQVRPUiA9IHtcbiAgICAvKiogZXF1YWwgKi9cbiAgICBFUVVBTDogXCJlcVwiLFxuICAgIC8qKiBtYXRjaCAoZm9yIHN0cmluZyB3aXRoIGNsYXNzaWZpY2F0aW9uIFwicGF0aDY2NjZcIikgKi9cbiAgICBNQVRDSDogXCJtYXRjaFwiLFxuICAgIC8qKiBtYXRjaCBhdCBsZWFzdCBvbmUgb2YgdGhlIHByb3ZpZGVkIHZhbHVlcyAodmFsdWUgaGFzIHRvIGJlIGFuIGFycmF5KSAgKi9cbiAgICBJTjogXCJpblwiLFxuICAgIC8qKiBncmVhdGVyIHRoYW4gKi9cbiAgICBHUkVBVEVSX1RIQU46IFwiZ3RcIixcbiAgICAvKiogZ3JlYXRlciB0aGFuIG9yIGVxdWFsICovXG4gICAgR1JFQVRFUl9PUl9FUVVBTDogXCJndGVcIiwgLy9cbiAgICBMRVNTX1RIQU46IFwibHRcIiwgLy8gbGVzcyB0aGFuXG4gICAgTEVTU19PUl9FUVVBTDogXCJsdGVcIiwgLy8gbGVzcyB0aGFuIG9yIGVxdWFsXG4gICAgSU5URVJWQUw6IFwiZ3RsdFwiLCAvLyBpbnRlcnZhbFxuICAgIElOVEVSVkFMX0lOQ0xVREVfQk9USDogXCJndGVsdGVcIiwgLy8gaW50ZXJ2YWwgaW5jbHVkZSBsZWZ0IGFuZCByaWdodFxuICAgIElOVEVSVkFMX0lOQ0xVREVfVE86IFwiZ3RsdGVcIiwgLy8gaW50ZXJ2YWwgaW5jbHVkZSByaWdodFxuICAgIElOVEVSVkFMX0lOQ0xVREVfRlJPTTogXCJndGVsdFwiLCAvLyBpbnRlcnZhbCBpbmNsdWRlIGxlZnRcbiAgICBSQU5HRTogXCJyZ1wiIC8vIGFnZ2VnYXRpb24gcmFuZ2VzXG4gIH07XG5cbiAgLyoqXG4gICAqIENvbnN0cnVjdG9yIGZvciBjcmVhdGluZyBhIG5ldyBTZWFyY2hGaWx0ZXIuXG4gICAqXG4gICAqIEBwYXJhbSBwcm9wZXJ0eSBUaGUgcXVhbGlmaWVkIG5hbWUgb2YgdGhlIGZpZWxkIHRoaXMgZmlsdGVyIHNob3VsZCBhcHBseSB0by5cbiAgICogQHBhcmFtIG9wZXJhdG9yIE9wZXJhdG9yIGluZGljYXRpbmcgaG93IHRvIGhhbmRsZSB0aGUgZmlsdGVycyB2YWx1ZShzKS4gU2VlIFNlYXJjaEZpbHRlci5PUEVSQVRPUiBmb3IgYXZhaWxhYmxlIG9wZXJhdG9ycy5cbiAgICogQHBhcmFtIGZpcnN0VmFsdWUgVGhlIGZpbHRlcnMgdmFsdWVcbiAgICogQHBhcmFtIHNlY29uZFZhbHVlIE9wdGlvbmFsIHNlY29uZCB2YWx1ZSBmb3IgZmlsdGVycyB0aGF0IGZvciBleGFtcGxlIGRlZmluZSByYW5nZXMgb2YgdmFsdWVzXG4gICAqIEBwYXJhbSB0cmFuc2Zvcm1EYXRlIEZsYWcgdG8gdHJhbnNmb3JtIGRhdGUgaG91cnMgYW5kIG1pbnV0ZXMgYmFzZWQgb24gb3BlcmF0b3JcbiAgICovXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBwcm9wZXJ0eTogc3RyaW5nLFxuICAgIHB1YmxpYyBvcGVyYXRvcjogc3RyaW5nLFxuICAgIHB1YmxpYyBmaXJzdFZhbHVlOiBhbnksXG4gICAgcHVibGljIHNlY29uZFZhbHVlPzogYW55LFxuICAgIHB1YmxpYyB0cmFuc2Zvcm1EYXRlPzoge3RpbWU/OiBib29sZWFuOyB0aW1lem9uZT86IGJvb2xlYW59XG4gICkge31cblxuICBmb3JtYXREYXRlKHZhbHVlOiBhbnkpIHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2Zvcm1EYXRlICYmIHZhbHVlXG4gICAgICA/IHRoaXMudHJhbnNmb3JtRGF0ZS50aW1lem9uZVxuICAgICAgICA/IG5ldyBEYXRlUGlwZShcImVuXCIpLnRyYW5zZm9ybSh2YWx1ZSwgXCJ5eXl5LU1NLWRkVFpcIilcbiAgICAgICAgOiB0aGlzLnRyYW5zZm9ybURhdGUudGltZVxuICAgICAgICAgID8gbmV3IERhdGUodmFsdWUpLnRvSVNPU3RyaW5nKCkuc2xpY2UoMCwgMTYpICsgXCJaXCJcbiAgICAgICAgICA6IG5ldyBEYXRlUGlwZShcImVuXCIpLnRyYW5zZm9ybSh2YWx1ZSwgXCJ5eXl5LU1NLWRkXCIpXG4gICAgICA6IHZhbHVlO1xuICB9XG5cbiAgdG9RdWVyeSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgbzogdGhpcy5vcGVyYXRvcixcbiAgICAgIHYxOiB0aGlzLmZvcm1hdERhdGUodGhpcy5maXJzdFZhbHVlKSxcbiAgICAgIC4uLih0aGlzLnNlY29uZFZhbHVlICYmIHt2MjogdGhpcy5mb3JtYXREYXRlKHRoaXMuc2Vjb25kVmFsdWUpfSlcbiAgICB9O1xuICB9XG5cbiAgdG9EYXRlVGltZVF1ZXJ5KCkge1xuICAgIGlmICh0aGlzLnRyYW5zZm9ybURhdGUgJiYgdGhpcy50cmFuc2Zvcm1EYXRlLnRpbWV6b25lICYmIHRoaXMuZmlyc3RWYWx1ZSkge1xuICAgICAgbGV0IGZpcnN0VmFsdWUgPSB0aGlzLmZpcnN0VmFsdWU7XG4gICAgICBsZXQgc2Vjb25kVmFsdWUgPSB0aGlzLnNlY29uZFZhbHVlO1xuICAgICAgY29uc3QgZW5kRGF0ZSA9IG5ldyBEYXRlKHNlY29uZFZhbHVlIHx8IGZpcnN0VmFsdWUpO1xuICAgICAgZW5kRGF0ZS5zZXRIb3VycygyMywgNTksIDU5LCA5OTkpO1xuICAgICAgaWYgKHRoaXMub3BlcmF0b3IgPT09IFNlYXJjaEZpbHRlci5PUEVSQVRPUi5MRVNTX09SX0VRVUFMKSB7XG4gICAgICAgIGZpcnN0VmFsdWUgPSBlbmREYXRlLnRvSVNPU3RyaW5nKCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCBzdGFydERhdGUgPSBuZXcgRGF0ZShmaXJzdFZhbHVlKTtcbiAgICAgICAgaWYgKFxuICAgICAgICAgIHRoaXMub3BlcmF0b3IgPT09IFNlYXJjaEZpbHRlci5PUEVSQVRPUi5HUkVBVEVSX1RIQU4gfHxcbiAgICAgICAgICB0aGlzLm9wZXJhdG9yID09PSBTZWFyY2hGaWx0ZXIuT1BFUkFUT1IuSU5URVJWQUxcbiAgICAgICAgKSB7XG4gICAgICAgICAgc3RhcnREYXRlLnNldEhvdXJzKDIzLCA1OSwgNTksIDk5OSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgc3RhcnREYXRlLnNldEhvdXJzKDAsIDAsIDAsIDApO1xuICAgICAgICB9XG4gICAgICAgIGZpcnN0VmFsdWUgPSBzdGFydERhdGUudG9JU09TdHJpbmcoKTtcbiAgICAgIH1cbiAgICAgIGlmIChcbiAgICAgICAgdGhpcy5vcGVyYXRvciA9PT0gU2VhcmNoRmlsdGVyLk9QRVJBVE9SLklOVEVSVkFMX0lOQ0xVREVfQk9USCB8fFxuICAgICAgICB0aGlzLm9wZXJhdG9yID09PSBTZWFyY2hGaWx0ZXIuT1BFUkFUT1IuRVFVQUxcbiAgICAgICkge1xuICAgICAgICBzZWNvbmRWYWx1ZSA9IGVuZERhdGUudG9JU09TdHJpbmcoKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB7XG4gICAgICAgIG86XG4gICAgICAgICAgdGhpcy5vcGVyYXRvciA9PT0gU2VhcmNoRmlsdGVyLk9QRVJBVE9SLkVRVUFMXG4gICAgICAgICAgICA/IFNlYXJjaEZpbHRlci5PUEVSQVRPUi5JTlRFUlZBTF9JTkNMVURFX0JPVEhcbiAgICAgICAgICAgIDogdGhpcy5vcGVyYXRvcixcbiAgICAgICAgdjE6IGZpcnN0VmFsdWUsXG4gICAgICAgIC4uLihzZWNvbmRWYWx1ZSAmJiB7djI6IHNlY29uZFZhbHVlfSlcbiAgICAgIH07XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLnRvUXVlcnkoKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgbWF0Y2goXG4gICAgcHJvcGVydHk6IHN0cmluZyxcbiAgICBvcGVyYXRvcjogc3RyaW5nLFxuICAgIGZpcnN0VmFsdWU6IGFueSxcbiAgICBzZWNvbmRWYWx1ZT86IGFueVxuICApIHtcbiAgICByZXR1cm4gKFxuICAgICAgdGhpcy5wcm9wZXJ0eSA9PT0gcHJvcGVydHkgJiZcbiAgICAgIHRoaXMub3BlcmF0b3IgPT09IG9wZXJhdG9yICYmXG4gICAgICB0aGlzLnNlY29uZFZhbHVlID09PSBzZWNvbmRWYWx1ZSAmJlxuICAgICAgKHRoaXMuZmlyc3RWYWx1ZSBpbnN0YW5jZW9mIEFycmF5XG4gICAgICAgID8gISF0aGlzLmZpcnN0VmFsdWUuZmluZCh2ID0+IHYgPT09IGZpcnN0VmFsdWUpXG4gICAgICAgIDogdGhpcy5maXJzdFZhbHVlID09PSBmaXJzdFZhbHVlKVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
499
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLXF1ZXJ5Lm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZW8tc2RrL2NvcmUvc3JjL2xpYi9zZXJ2aWNlL3NlYXJjaC9zZWFyY2gtcXVlcnkubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBRXpDLDJEQUEyRDtBQUUzRCxNQUFNLENBQU4sSUFBWSxVQUlYO0FBSkQsV0FBWSxVQUFVO0lBQ3BCLHlCQUFXLENBQUE7SUFDWCxpQ0FBbUIsQ0FBQTtJQUNuQixzQ0FBd0IsQ0FBQTtBQUMxQixDQUFDLEVBSlcsVUFBVSxLQUFWLFVBQVUsUUFJckI7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxPQUFPLFdBQVc7SUF1SXRCO1FBbkRBOztXQUVHO1FBQ0ksVUFBSyxHQUFpQixFQUFFLENBQUM7UUFDaEM7O1dBRUc7UUFDSSx1QkFBa0IsR0FBaUIsRUFBRSxDQUFDO1FBQzdDOztXQUVHO1FBQ0ksWUFBTyxHQUFtQixFQUFFLENBQUM7UUFLcEM7O1dBRUc7UUFDSSxlQUFVLEdBQUcsS0FBSyxDQUFDO1FBSzFCOztXQUVHO1FBQ0ksZUFBVSxHQUFXLFdBQVcsQ0FBQyxtQkFBbUIsQ0FBQztRQUM1RDs7V0FFRztRQUNJLGdCQUFXLEdBQWlCLEVBQUUsQ0FBQztRQUN0Qzs7V0FFRztRQUNJLHFCQUFnQixHQUFHLElBQUksQ0FBQztRQUMvQjs7V0FFRztRQUNJLFVBQUssR0FBZ0IsSUFBSSxXQUFXLEVBQUUsQ0FBQztRQUV2QyxpQkFBWSxHQUFZLEtBQUssQ0FBQztRQUM5QixnQkFBVyxHQUFZLEtBQUssQ0FBQztJQVNyQixDQUFDO0lBRWhCOzs7O09BSUc7SUFDSSxPQUFPLENBQUMsSUFBZ0I7UUFDN0IsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FB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QUFDLFFBQVEsS0FBSyxRQUFRO1lBQzFCLElBQUksQ0FBQyxXQUFXLEtBQUssV0FBVztZQUNoQyxDQUFDLElBQUksQ0FBQyxVQUFVLFlBQVksS0FBSztnQkFDL0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVLENBQUM7Z0JBQy9DLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxLQUFLLFVBQVUsQ0FBQyxDQUNwQyxDQUFDO0lBQ0osQ0FBQzs7QUFsSEQ7O0dBRUc7QUFDVyxxQkFBUSxHQUFHO0lBQ3ZCLFlBQVk7SUFDWixLQUFLLEVBQUUsSUFBSTtJQUNYLHdEQUF3RDtJQUN4RCxLQUFLLEVBQUUsT0FBTztJQUNkLDRFQUE0RTtJQUM1RSxFQUFFLEVBQUUsSUFBSTtJQUNSLG1CQUFtQjtJQUNuQixZQUFZLEVBQUUsSUFBSTtJQUNsQiw0QkFBNEI7SUFDNUIsZ0JBQWdCLEVBQUUsS0FBSztJQUN2QixTQUFTLEVBQUUsSUFBSTtJQUNmLGFBQWEsRUFBRSxLQUFLO0lBQ3BCLFFBQVEsRUFBRSxNQUFNO0lBQ2hCLHFCQUFxQixFQUFFLFFBQVE7SUFDL0IsbUJBQW1CLEVBQUUsT0FBTztJQUM1QixxQkFBcUIsRUFBRSxPQUFPO0lBQzlCLEtBQUssRUFBRSxJQUFJLENBQUMsb0JBQW9CO0NBQ2pDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge3JlZHVjZX0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtPYmplY3RUeXBlfSBmcm9tIFwiLi4vLi4vbW9kZWwvb2JqZWN0LXR5cGUubW9kZWxcIjtcbmltcG9ydCB7RGF0ZVBpcGV9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcblxuLy9leHBvcnQgdHlwZSBRdWVyeVNjb3BlID0gJ2luZGV4ZGF0ZScgfCAnY29udGVudCcgfCAnYWxsJztcblxuZXhwb3J0IGVudW0gUXVlcnlTY29wZSB7XG4gIEFMTCA9ICdhbGwnLFxuICBDT05URU5UID0gJ2NvbnRlbnQnLFxuICBJTkRFWF9EQVRBID0gJ2luZGV4ZGF0YSdcbn1cblxuLyoqXG4gKiBUaGUgU2VhcmNoUXVlcnkgQ2xhc3NcbiAqXG4gKiBTZWUge0BsaW5rIFNlYXJjaFNlcnZpY2V9IGZvciBVc2FnZVxuICovXG5leHBvcnQgY2xhc3MgU2VhcmNoUXVlcnkge1xuICAvKipcbiAgICogQmFzZSBQYXJhbWV0ZXJzIGZvciBhIFNlYXJjaCBRdWVyeVxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBCQVNFX1BBUkFNUyA9IHtcbiAgICBUWVBFOiBcInR5cGVcIixcbiAgICBDUkVBVE9SOiBcImNyZWF0b3JcIixcbiAgICBDUkVBVEVEOiBcImNyZWF0ZWRcIixcbiAgICBNT0RJRklFUjogXCJtb2RpZmllclwiLFxuICAgIE1PRElGSUVEOiBcIm1vZGlmaWVkXCIsXG4gICAgRklMRVNJWkU6IFwiZmlsZXNpemVcIixcbiAgICBGSUxFTkFNRTogXCJmaWxlbmFtZVwiLFxuICAgIE1JTUVUWVBFR1JPVVA6IFwibWltZXR5cGVncm91cFwiXG4gIH07XG5cbiAgLyoqXG4gICAqIFRpbWUgcGVyaW9kIGJ1Y2tldHMgcHJvcGVydHkgbmFtZXNcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgVElNRV9QRVJJT0RfQlVDS0VUUyA9IHtcbiAgICBUT0RBWTogXCJ0b2RheVwiLFxuICAgIFlFU1RFUkRBWTogXCJ5ZXN0ZXJkYXlcIixcbiAgICBUSElTX1dFRUs6IFwidGhpc3dlZWtcIixcbiAgICBMQVNUX1dFRUs6IFwibGFzdHdlZWtcIixcbiAgICBUSElTX01PTlRIOiBcInRoaXNtb250aFwiLFxuICAgIExBU1RfTU9OVEg6IFwibGFzdG1vbnRoXCIsXG4gICAgVEhJU19ZRUFSOiBcInRoaXN5ZWFyXCIsXG4gICAgTEFTVF9ZRUFSOiBcImxhc3R5ZWFyXCJcbiAgfTtcblxuICAvKipcbiAgICogbWltZXR5cGUgYnVja2V0cyBwcm9wZXJ0eSBuYW1lc1xuICAgKi9cbiAgcHVibGljIHN0YXRpYyBNSU1FVFlQRUdST1VQX0JVQ0tFVFMgPSB7XG4gICAgUERGOiBcInBkZlwiLFxuICAgIE1BSUw6IFwibWFpbFwiLFxuICAgIFdPUkQ6IFwid29yZFwiLFxuICAgIElNQUdFOiBcImltYWdlXCIsXG4gICAgT0NURVRfU1RSRUFNOiBcIm9jdGV0LXN0cmVhbVwiLFxuICAgIFRYVDogXCJ0eHRcIixcbiAgICBFWENFTDogXCJleGNlbFwiLFxuICAgIFBPV0VSUE9JTlQ6IFwicG93ZXJwb2ludFwiLFxuICAgIFZJREVPOiBcInZpZGVvXCIsXG4gICAgSFRNTDogXCJodG1sXCIsXG4gICAgQVVESU86IFwiYXVkaW9cIixcbiAgICBaSVA6IFwiemlwXCJcbiAgfTtcblxuICAvKipcbiAgICogZmlsZXNpemUgYnVja2V0cyBwcm9wZXJ0eSBuYW1lc1xuICAgKi9cbiAgcHVibGljIHN0YXRpYyBGSUxFX1NJWkVfQlVDS0VUUyA9IHtcbiAgICBMVDFNQjogXCJsdDFNQlwiLFxuICAgIExUMTBNQjogXCJsdDEwTUJcIixcbiAgICBMVDEwME1COiBcImx0MTAwTUJcIixcbiAgICBHVDEwME1COiBcImd0MTAwTUJcIlxuICB9O1xuXG4gIC8vIGxpc3Qgb2YgdGhpbmdzIHRoYXQgbWF5IGhhdmUgY2hhbmdlZCB0aGUgY3VycmVudCBxdWVyeVxuICBwdWJsaWMgc3RhdGljIFVQREFURV9DQVVTRSA9IHtcbiAgICBUT0dHTEVEX1RZUEU6IFwiY2F1c2UudHlwZS50b2dnbGVkXCIsXG4gICAgVE9HR0xFRF9FWFBFUlRNT0RFOiBcImNhdXNlLmV4cGVydG1vZGUudG9nZ2xlZFwiLFxuICAgIFRFUk1fU0VUOiBcImNhdXNlLnRlcm0uc2V0XCIsXG4gICAgVFlQRVNfU0VUOiBcImNhdXNlLnR5cGVzLnNldFwiLFxuICAgIENPTlRFWFRfRk9MREVSX1NFVDogXCJjYXVzZS5jb250ZXh0Zm9sZGVyLnNldFwiLFxuICAgIFRPR0dMRURfRklMVEVSOiBcImNhdXNlLmZpbHRlci50b2dnbGVkXCIsXG4gICAgQURERURfRklMVEVSOiBcImNhdXNlLmZpbHRlci5hZGRlZFwiLFxuICAgIFJFTU9WRURfRklMVEVSOiBcImNhdXNlLmZpbHRlci5yZW1vdmVkXCIsXG4gIH07XG4gIC8qKlxuICAgKiBEZXRhdWx0IFNlYXJjaCBtb2RlIEluZGV4XG4gICAqL1xuICBwdWJsaWMgc3RhdGljIERFRkFVTFRfU0VBUkNIX01PREUgPSBcImlkeHNcIjtcbiAgLyoqXG4gICAqIFNlYXJjaCBtb2RlIGZvciBGdWxsIHRlc3QgU2VhcmNoXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIEZVTExURVhUX1NFQVJDSF9NT0RFID0gXCJmdHNcIjtcbiAgLyoqXG4gICAqIGZ1bGx0ZXh0IHNlYXJjaCB0ZXJtXG4gICAqL1xuICBwdWJsaWMgdGVybTogc3RyaW5nO1xuICAvKipcbiAgICogQXJyYXkgb2YgZmllbGRzIHRvIHJlcXVlc3QgZnJvbSB0aGUgc2VhcmNoIHNlcnZpY2UsIGxlYXZpbmcgdGhpcyBibGFuayB3aWxsIHJldHVybiB0aGUgZmllbGRzIHNwZWNpZmllZCBpbiB0aGUgcmVzdWx0IGZpZWxkIGNvbmZpZ3VyYXRpb25cbiAgICovXG4gIHB1YmxpYyBmaWVsZHM6IHN0cmluZ1tdO1xuICAvKipcbiAgICogTGlzdCBvZiBvYmplY3QgdHlwZXMgdG8gYmUgZmV0Y2hlZCBieSB0aGUgcXVlcnkuIExlYXZpbmcgdGhpcyBibGFuayB3aWxsIHJldHVybiByZXN1bHRzIGZyb20gYW55IHR5cGVcbiAgICovXG4gIHB1YmxpYyB0eXBlczogT2JqZWN0VHlwZVtdID0gW107XG4gIC8qKlxuICAgKiBMaXN0IG9mIGNvbnRleHQgZm9sZGVyIHR5cGVzXG4gICAqL1xuICBwdWJsaWMgY29udGV4dEZvbGRlclR5cGVzOiBPYmplY3RUeXBlW10gPSBbXTtcbiAgLyoqXG4gICAqIExpc3Qgb2YgZmlsdGVycyB0byBkZWZpbmUgdGhlIHF1ZXJ5XG4gICAqL1xuICBwdWJsaWMgZmlsdGVyczogU2VhcmNoRmlsdGVyW10gPSBbXTtcbiAgLyoqXG4gICAqIFdoZXRoZXIgb3Igbm90IHRvIHJldHJpZXZlIHN1Z2dlc3Rpb25zXG4gICAqL1xuICBwdWJsaWMgc3VnZ2VzdDogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFdoZXRoZXIgb3Igbm90IHRoZSB0ZXJtIGlzIGFuIGV4cGVydCBtb2RlIHF1ZXJ5XG4gICAqL1xuICBwdWJsaWMgZXhwZXJ0TW9kZSA9IGZhbHNlO1xuICAvKipcbiAgICogVGhlIHNjb3BlIG9mIHRoZSBxdWVyeVxuICAgKi9cbiAgcHVibGljIHNjb3BlOiBRdWVyeVNjb3BlO1xuICAvKipcbiAgICogVGhlIHNlYXJjaCBtb2RlIHRvIGJlIHVzZWQgKFNlYXJjaFF1ZXJ5LkRFRkFVTFRfU0VBUkNIX01PREUgb3IgU2VhcmNoUXVlcnkuRlVMTFRFWFRfU0VBUkNIX01PREUpXG4gICAqL1xuICBwdWJsaWMgc2VhcmNoTW9kZTogc3RyaW5nID0gU2VhcmNoUXVlcnkuREVGQVVMVF9TRUFSQ0hfTU9ERTtcbiAgLyoqXG4gICAqIEFkZGl0aW9uYWwgb3B0aW9ucyB0byBiZSBhcHBsaWVkIHRvIHRoZSBxdWVyeVxuICAgKi9cbiAgcHVibGljIHNvcnRPcHRpb25zOiBTb3J0T3B0aW9uW10gPSBbXTtcbiAgLyoqXG4gICAqIFJlc29sdmUgcmVmZXJlbmNlcyB3aXRoIHRoZWlyIHRpdGxlIGluc3RlYWQgb2YgdGhlaXIgYWN0dWFsIHZhbHVlXG4gICAqL1xuICBwdWJsaWMgcmVzb2x2ZVJlZmVyZW5jZSA9IHRydWU7XG4gIC8qKlxuICAgKiBUaGUgc3RhdGUgb2YgdGhlIGN1cnJlbnQgcXVlcnlcbiAgICovXG4gIHB1YmxpYyBzdGF0ZTogU2VhcmNoU3RhdGUgPSBuZXcgU2VhcmNoU3RhdGUoKTtcblxuICBwdWJsaWMgaGlnaGxpZ2h0aW5nOiBib29sZWFuID0gZmFsc2U7XG4gIHB1YmxpYyB3aXRoQ29udGV4dDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHB1YmxpYyBuYW1lPzogc3RyaW5nO1xuXG4gIC8vIEluZGljYXRvciB3aGF0IGNhdXNlZCB0aGUgdXBkYXRlIG9mIGEgU2VhcmNoUXVlcnkgb2JqZWN0LlxuICAvLyBVc2VmdWxsIGZvciBjb21wb25lbnRzIHRoYXQgc3Vic2NyaWJlZCB0byBhIHF1ZXJ5LCBhbmQgbmVlZCB0b1xuICAvLyB0cmFjayB0aGUga2luZCBvZiBjaGFuZ2VzIG1hZGVcbiAgX191cGRhdGVDYXVzZTogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKCkge31cblxuICAvKipcbiAgICogQWRkcyBhIG5ldyB0YXJnZXQgdHlwZSB0byB0aGUgcXVlcnlcbiAgICpcbiAgICogQHBhcmFtIHR5cGUgT2JqZWN0IHR5cGUgdG8gYmUgYWRkZWRcbiAgICovXG4gIHB1YmxpYyBhZGRUeXBlKHR5cGU6IE9iamVjdFR5cGUpIHtcbiAgICBpZiAoIXRoaXMudHlwZXMuZmluZCh0ID0+IHQuaWQgPT09IHR5cGUuaWQpKSB7XG4gICAgICB0aGlzLnR5cGVzLnB1c2godHlwZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZXMgYSB0eXBlIGZyb20gdGhlIHRhcmdldCB0eXBlcyBsaXN0XG4gICAqXG4gICAqIEBwYXJhbSB0eXBlIFRoZSBvYmplY3QgdHlwZSB0byBiZSByZW1vdmVkXG4gICAqL1xuICBwdWJsaWMgcmVtb3ZlVHlwZSh0eXBlOiBPYmplY3RUeXBlKSB7XG4gICAgdGhpcy50eXBlcyA9IHRoaXMudHlwZXMuZmlsdGVyKHQgPT4gdC5pZCAhPT0gdHlwZS5pZCk7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBvciByZW1vdmVzIHRoZSBnaXZlbiB0eXBlIGJhc2VkIG9uIHRoZSBjdXJyZW50IHNldHRpbmdzXG4gICAqXG4gICAqIEBwYXJhbSB0eXBlIFRoZSBvYmplY3QgdHlwZSB0byBiZSB0b2dnbGVkXG4gICAqL1xuICBwdWJsaWMgdG9nZ2xlVHlwZSh0eXBlOiBPYmplY3RUeXBlKSB7XG4gICAgaWYgKHRoaXMudHlwZXMuZmluZCh0ID0+IHQuaWQgPT09IHR5cGUuaWQpKSB7XG4gICAgICB0aGlzLnJlbW92ZVR5cGUodHlwZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudHlwZXMucHVzaCh0eXBlKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBhIG5ldyBmaWx0ZXIgdG8gdGhlIHF1ZXJ5LiBJZiB0aGVyZSBhbHJlYWR5IGlzIGEgZmlsdGVyIHNldCBmb3IgdGhlIGdpdmVuIHByb3BlcnR5LCBpdCB3aWxsIGJlIG92ZXJyaWRkZW4uXG4gICAqXG4gICAqIEBwYXJhbSBmaWx0ZXIgVGhlIGZpbHRlciB0byBiZSBhZGRlZFxuICAgKi9cbiAgcHVibGljIGFkZEZpbHRlcihmaWx0ZXI6IFNlYXJjaEZpbHRlcikge1xuICAgIGlmICghZmlsdGVyKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmICghdGhpcy5nZXRGaWx0ZXIoZmlsdGVyLnByb3BlcnR5KSkge1xuICAgICAgdGhpcy5maWx0ZXJzLnB1c2goZmlsdGVyKTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gaWYgdGhlcmUgYWxyZWFkeSBpcyBhIGZpbHRlciBzZXQgZm9yIHRoZSB0YXJnZXQgcHJvcGVydHlcbiAgICAgIC8vIHdlJ2xsIGp1c3Qgb3ZlcnJpZGUgaXQgd2l0aCB0aGUgbmV3IHZhbHVlXG4gICAgICB0aGlzLnJlbW92ZUZpbHRlcihmaWx0ZXIucHJvcGVydHkpO1xuICAgICAgdGhpcy5maWx0ZXJzLnB1c2goZmlsdGVyKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlcyBhIGZpbHRlciBmcm9tIHRoZSBxdWVyeS5cbiAgICpcbiAgICogQHBhcmFtIGZpbHRlclByb3BlcnR5TmFtZSBUaGUgZmlsdGVyIChpdHMgcHJvcGVydHkgbmFtZSkgdG8gYmUgcmVtb3ZlZFxuICAgKi9cbiAgcHVibGljIHJlbW92ZUZpbHRlcihmaWx0ZXJQcm9wZXJ0eU5hbWU6IHN0cmluZykge1xuICAgIHRoaXMuZmlsdGVycyA9IHRoaXMuZmlsdGVycy5maWx0ZXIoZiA9PiBmLnByb3BlcnR5ICE9PSBmaWx0ZXJQcm9wZXJ0eU5hbWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgb3IgcmVtb3ZlcyB0aGUgZ2l2ZW4gZmlsdGVyIGJhc2VkIG9uIHRoZSBjdXJyZW50IHNldHRpbmdzXG4gICAqXG4gICAqIEBwYXJhbSBmaWx0ZXIgVGhlIGZpbHRlciB0byBiZSB0b2dnbGVkXG4gICAqL1xuICBwdWJsaWMgdG9nZ2xlRmlsdGVyKGZpbHRlcjogU2VhcmNoRmlsdGVyLCBvdmVycmlkZT86IGJvb2xlYW4pIHtcbiAgICBpZiAodGhpcy5nZXRGaWx0ZXIoZmlsdGVyLnByb3BlcnR5KSkge1xuICAgICAgdGhpcy5yZW1vdmVGaWx0ZXIoZmlsdGVyLnByb3BlcnR5KTtcbiAgICAgIGlmIChvdmVycmlkZSkge1xuICAgICAgICB0aGlzLmZpbHRlcnMucHVzaChmaWx0ZXIpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmZpbHRlcnMucHVzaChmaWx0ZXIpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBSZXRyaWV2ZXMgYSBmaWx0ZXIgYnkgaXRzIHByb3BlcnR5IG5hbWUuXG4gICAqXG4gICAqIEBwYXJhbSBwcm9wZXJ0eU5hbWUgVGhlIGZpbHRlcnMgcHJvcGVydHkgbmFtZSAocW5hbWUgb2YgZm9ybSBlbGVtZW50KVxuICAgKiBAcmV0dXJucyBTZWFyY2ggRmlsdGVyIE9iamVjdFxuICAgKi9cbiAgcHVibGljIGdldEZpbHRlcihwcm9wZXJ0eU5hbWU6IHN0cmluZyk6IFNlYXJjaEZpbHRlciB7XG4gICAgcmV0dXJuIHRoaXMuZmlsdGVycy5maW5kKGYgPT4gZi5wcm9wZXJ0eSA9PT0gcHJvcGVydHlOYW1lKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRUYWJsZUZpbHRlcnMocHJvcGVydHlOYW1lOiBzdHJpbmcpOiBTZWFyY2hGaWx0ZXJbXSB7XG4gICAgcmV0dXJuIHRoaXMuZmlsdGVycy5maWx0ZXIoZiA9PiBmLnByb3BlcnR5LnN0YXJ0c1dpdGgocHJvcGVydHlOYW1lICsgJy4nKSk7XG4gIH1cblxuICAvKipcbiAgICogQWRkaW5nIG5ldyBTb3J0IE9wdGlvbnNcbiAgICogU29ydCBPcHRpb25zIGFyZSBvbmx5IGFkZGVkIGlmIHRoZXkgYXJlIG5vdCBhbHJlYWR5IHByZXNlbnRcbiAgICpcbiAgICogQHBhcmFtIG5hbWVcbiAgICogQHBhcmFtIG9yZGVyXG4gICAqIEBwYXJhbSBtaXNzaW5nXG4gICAqL1xuICBwdWJsaWMgYWRkU29ydE9wdGlvbihuYW1lOiBzdHJpbmcsIG9yZGVyOiBzdHJpbmcsIG1pc3Npbmc/OiBzdHJpbmcpIHtcbiAgICBpZiAoIXRoaXMuc29ydE9wdGlvbnMuZmluZChzID0+IHMuZmllbGQgPT09IG5hbWUpKSB7XG4gICAgICB0aGlzLnNvcnRPcHRpb25zLnB1c2gobmV3IFNvcnRPcHRpb24obmFtZSwgb3JkZXIsIG1pc3NpbmcpKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICpcbiAgICogQHBhcmFtIG5hbWVcbiAgICovXG4gIHB1YmxpYyByZW1vdmVTb3J0T3B0aW9uKG5hbWU6IHN0cmluZykge1xuICAgIHRoaXMuc29ydE9wdGlvbnMgPSB0aGlzLnNvcnRPcHRpb25zLmZpbHRlcihzID0+IHMuZmllbGQgIT09IG5hbWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlIGEgcXVlcnkgSlNPTiBmcm9tIHRoZSBjdXJyZW50IFNlYXJjaFF1ZXJ5IHRoYXQgY2FuIGJlIHNlbmQgdG8gdGhlIHNlYXJjaCBzZXJ2aWNlLlxuICAgKi9cbiAgcHVibGljIGdldFF1ZXJ5SnNvbigpIHtcbiAgICAvLyBDb252ZXJ0IHRoZSBjdXJyZW50IHF1ZXJ5IG9iamVjdCB0byBhIHF1ZXJ5IEpTT04gdGhhdCBjYW4gYmUgY29uc3VtZWQgYnkgdGhlIHNlYXJjaCBzZXJ2aWNlIGJhY2tlbmQuXG4gICAgLy8gVG8ga2VlcCBpdCBzaG9ydCwgd2UnbGwgb25seSBhZGQgcHJvcGVydGllcyB0aGF0IGFyZSBzZXQgYW5kIGRpZmZlciBmcm9tIGRlZmF1bHQgdmFsdWVzXG4gICAgY29uc3QgcXVlcnlKc29uOiBhbnkgPSB7fTtcblxuICAgIC8vIGFkZCB0eXBlIGZpbHRlcnNcbiAgICBpZiAodGhpcy50eXBlcy5sZW5ndGggPiAwKSB7XG4gICAgICBxdWVyeUpzb24udHlwZXMgPSB0aGlzLnR5cGVzLm1hcCh0ID0+XG4gICAgICAgIHR5cGVvZiB0ID09PSBcInN0cmluZ1wiID8gdCA6IHQubmFtZVxuICAgICAgKTtcbiAgICB9XG5cbiAgICAvLyBhZGQgY29udGV4dCBmb2xkZXIgdHlwZSBmaWx0ZXJzXG4gICAgaWYgKHRoaXMuY29udGV4dEZvbGRlclR5cGVzLmxlbmd0aCA+IDApIHtcbiAgICAgIHF1ZXJ5SnNvbi5jb250ZXh0Zm9sZGVydHlwZXMgPSB0aGlzLmNvbnRleHRGb2xkZXJUeXBlcy5tYXAodCA9PiB0Lm5hbWUpO1xuICAgIH1cblxuICAgIC8vIGZpbHRlcnNcbiAgICBpZiAodGhpcy5maWx0ZXJzLmxlbmd0aCA+IDApIHtcbiAgICAgIHF1ZXJ5SnNvbi5maWx0ZXJzID0ge307XG4gICAgICB0aGlzLmZpbHRlcnMuZm9yRWFjaChmID0+IHtcbiAgICAgICAgcXVlcnlKc29uLmZpbHRlcnNbZi5wcm9wZXJ0eV0gPSBmLnRvUXVlcnkoKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgICBpZiAodGhpcy50ZXJtKSB7XG4gICAgICBxdWVyeUpzb24udGVybSA9IHRoaXMudGVybTtcbiAgICB9XG4gICAgLy8gc2VhcmNoIGZpZWxkc1xuICAgIGlmICh0aGlzLmZpZWxkcykge1xuICAgICAgcXVlcnlKc29uLmZpZWxkcyA9IHRoaXMuZmllbGRzO1xuICAgIH1cbiAgICBpZiAodGhpcy5uYW1lKSB7XG4gICAgICBxdWVyeUpzb24ubmFtZSA9IHRoaXMubmFtZTtcbiAgICB9XG4gICAgLy8gYWRkIG9wdGlvbnMgd2hlbiB0aGV5IGRpZmZlciBmcm9tIHRoZSBkZWZhdWx0IHZhbHVlc1xuICAgIGlmICh0aGlzLmFwcGx5T3B0aW9ucygpKSB7XG4gICAgICBxdWVyeUpzb24ub3B0aW9ucyA9IHt9O1xuICAgICAgcXVlcnlKc29uLm9wdGlvbnMuc2NvcGUgPSB0aGlzLnNjb3BlO1xuICAgICAgaWYgKHRoaXMuc3VnZ2VzdCkge1xuICAgICAgICBxdWVyeUpzb24ub3B0aW9ucy5zdWdnZXN0ID0gdHJ1ZTtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLmV4cGVydE1vZGUpIHtcbiAgICAgICAgcXVlcnlKc29uLm9wdGlvbnMuZXhwZXJ0bW9kZSA9IHRydWU7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5yZXNvbHZlUmVmZXJlbmNlKSB7XG4gICAgICAgIHF1ZXJ5SnNvbi5vcHRpb25zLnJlc29sdmVSZWZlcmVuY2UgPSB0cnVlO1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMuc2VhcmNoTW9kZSAhPT0gU2VhcmNoUXVlcnkuREVGQVVMVF9TRUFSQ0hfTU9ERSkge1xuICAgICAgICBxdWVyeUpzb24ub3B0aW9ucy5zZWFyY2htb2RlID0gdGhpcy5zZWFyY2hNb2RlO1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMuc29ydE9wdGlvbnMgJiYgdGhpcy5zb3J0T3B0aW9ucy5sZW5ndGgpIHtcbiAgICAgICAgcXVlcnlKc29uLm9wdGlvbnMuc29ydCA9IHt9O1xuICAgICAgICB0aGlzLnNvcnRPcHRpb25zLmZvckVhY2goKHNvcnRPcHRpb246IFNvcnRPcHRpb24pID0+IHtcbiAgICAgICAgICBxdWVyeUpzb24ub3B0aW9ucy5zb3J0W3NvcnRPcHRpb24uZmllbGRdID0ge1xuICAgICAgICAgICAgb3JkZXI6IHNvcnRPcHRpb24ub3JkZXJcbiAgICAgICAgICB9O1xuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMuaGlnaGxpZ2h0aW5nKSB7XG4gICAgICAgIHF1ZXJ5SnNvbi5vcHRpb25zLmhpZ2hsaWdodGluZyA9IHRoaXMuaGlnaGxpZ2h0aW5nO1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMud2l0aENvbnRleHQpIHtcbiAgICAgICAgcXVlcnlKc29uLm9wdGlvbnMud2l0aENvbnRleHQgPSB0aGlzLndpdGhDb250ZXh0O1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcXVlcnlKc29uO1xuICB9XG5cbiAgLy8gZGV0ZXJtaW5lcyB3aGV0aGVyIG9yIG5vdCB0aGUgcXVlcnkgc2VuZCB0byB0aGUgc2VhcmNoIHNlcnZpY2Ugc2hvdWxkIGNvbnRhaW4gb3B0aW9uc1xuICBwcml2YXRlIGFwcGx5T3B0aW9ucygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gKFxuICAgICAgdGhpcy5leHBlcnRNb2RlIHx8XG4gICAgICAhIXRoaXMuc2NvcGUgfHxcbiAgICAgIHRoaXMuc3VnZ2VzdCB8fFxuICAgICAgdGhpcy5oaWdobGlnaHRpbmcgfHxcbiAgICAgIHRoaXMucmVzb2x2ZVJlZmVyZW5jZSB8fFxuICAgICAgdGhpcy53aXRoQ29udGV4dCB8fFxuICAgICAgdGhpcy5zZWFyY2hNb2RlICE9PSBTZWFyY2hRdWVyeS5ERUZBVUxUX1NFQVJDSF9NT0RFIHx8XG4gICAgICB0aGlzLnNvcnRPcHRpb25zLmxlbmd0aCA+IDBcbiAgICApO1xuICB9XG59XG5cbi8qKlxuICogQGlnbm9yZVxuICogQ3JlYXRlcyB0aGUgTW9kZWwgb2YgU29ydCBPcHRpb25zXG4gKi9cbmV4cG9ydCBjbGFzcyBTb3J0T3B0aW9uIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGZpZWxkOiBzdHJpbmcsXG4gICAgcHVibGljIG9yZGVyOiBzdHJpbmcsXG4gICAgcHVibGljIG1pc3Npbmc/OiBzdHJpbmdcbiAgKSB7fVxufVxuXG4vKipcbiAqIEBpZ25vcmVcbiAqIENyZWF0ZXMgdGhlIE1vZGVsIG9mIEZpZWxkIERlZmluaXRpb25zXG4gKi9cbmV4cG9ydCBjbGFzcyBGaWVsZERlZmluaXRpb24ge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZWxlbWVudHM6IGFueVtdID0gW10sXG4gICAgcHVibGljIHNvcnRvcmRlcjogYW55W10gPSBbXSxcbiAgICBwdWJsaWMgZ3JvdXBvcmRlcjogYW55W10gPSBbXSxcbiAgICBwdWJsaWMgcGlubmVkOiBhbnlbXSA9IFtdLFxuICAgIHB1YmxpYyBtb2RlPzogc3RyaW5nXG4gICkge31cbn1cblxuLyoqXG4gKiBAaWdub3JlXG4gKiBDbGFzcyByZXByZXNlbnRpbmcgdGhlIHN0YXRlIG9mIGEgcXVlcnlcbiAqL1xuZXhwb3J0IGNsYXNzIFNlYXJjaFN0YXRlIHtcbiAgcHVibGljIGNvdW50OiB7dmFsdWU6IG51bWJlciwgcmVsYXRpb24/OiBzdHJpbmd9O1xuICBwdWJsaWMgYWdncmVnYXRpb25zO1xuICBwdWJsaWMgbGFzdENoYW5nZT86IHN0cmluZztcblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5hZ2dyZWdhdGlvbnMgPSB7XG4gICAgICB0eXBlOiBuZXcgTWFwPHN0cmluZywgbnVtYmVyPigpLFxuICAgICAgY29udGV4dFR5cGU6IG5ldyBNYXA8c3RyaW5nLCBudW1iZXI+KCksXG4gICAgICBjcmVhdGVkOiBbXSxcbiAgICAgIG1vZGlmaWVkOiBbXSxcbiAgICAgIG1pbWV0eXBlZ3JvdXA6IFtdLFxuICAgICAgZmlsZXNpemU6IFtdXG4gICAgfTtcbiAgfVxuXG4gIGdldCB0b3RhbENvdW50KCkge1xuICAgIHJldHVybiBBcnJheS5mcm9tKHRoaXMuYWdncmVnYXRpb25zLnR5cGUudmFsdWVzKCkpLnJlZHVjZSgoYWNjOiBudW1iZXIsIGN1cjogbnVtYmVyKSA9PiBhY2MgKyBjdXIsIDApIGFzIG51bWJlcjtcbiAgfVxuXG4gIGdldCBpc0VtcHR5KCkge1xuICAgIHJldHVybiAhKHRoaXMuY291bnQgJiYgdGhpcy5jb3VudC52YWx1ZSk7XG4gIH1cblxuICBhZGRBZ2dyZWdhdGlvbnModHlwZTogc3RyaW5nLCBrZXk6IHN0cmluZywgdmFsdWU6IG51bWJlciwgYWdnPykge1xuICAgIHN3aXRjaCAodHlwZSkge1xuICAgICAgY2FzZSBcImNvbnRleHR0eXBlXCI6IHtcbiAgICAgICAgdGhpcy5hZ2dyZWdhdGlvbnMuY29udGV4dFR5cGUuc2V0KGtleSwgdmFsdWUpO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGNhc2UgU2VhcmNoUXVlcnkuQkFTRV9QQVJBTVMuVFlQRToge1xuICAgICAgICB0aGlzLmFnZ3JlZ2F0aW9ucy50eXBlLnNldChrZXksIHZhbHVlKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBjYXNlIFNlYXJjaFF1ZXJ5LkJBU0VfUEFSQU1TLkNSRUFURUQ6IHtcbiAgICAgICAgdGhpcy5hZ2dyZWdhdGlvbnMuY3JlYXRlZC5wdXNoKHtcbiAgICAgICAgICBrZXk6IGtleSxcbiAgICAgICAgICB2YWx1ZTogdmFsdWVcbiAgICAgICAgfSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSBTZWFyY2hRdWVyeS5CQVNFX1BBUkFNUy5NT0RJRklFRDoge1xuICAgICAgICB0aGlzLmFnZ3JlZ2F0aW9ucy5tb2RpZmllZC5wdXNoKHtcbiAgICAgICAgICBrZXk6IGtleSxcbiAgICAgICAgICB2YWx1ZTogdmFsdWVcbiAgICAgICAgfSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSBTZWFyY2hRdWVyeS5CQVNFX1BBUkFNUy5NSU1FVFlQRUdST1VQOiB7XG4gICAgICAgIHRoaXMuYWdncmVnYXRpb25zLm1pbWV0eXBlZ3JvdXAucHVzaCh7XG4gICAgICAgICAga2V5OiBrZXksXG4gICAgICAgICAgdmFsdWU6IHZhbHVlXG4gICAgICAgIH0pO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGNhc2UgU2VhcmNoUXVlcnkuQkFTRV9QQVJBTVMuRklMRVNJWkU6IHtcbiAgICAgICAgdGhpcy5hZ2dyZWdhdGlvbnMuZmlsZXNpemUucHVzaCh7XG4gICAgICAgICAga2V5OiBrZXksXG4gICAgICAgICAgdmFsdWU6IHZhbHVlLFxuICAgICAgICAgIGZyb206IGFnZy5mcm9tLFxuICAgICAgICAgIHRvOiBhZ2cudG8gfHwgSW5maW5pdHksXG4gICAgICAgICAgbGFiZWw6IGtleS5yZXBsYWNlKFwiZ3RcIiwgXCI+IFwiKS5yZXBsYWNlKFwibHRcIiwgXCI8IFwiKVxuICAgICAgICB9KTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogQGlnbm9yZVxuICogQ3JlYXRlcyB0aGUgTW9kZWwgb2YgU2VhcmNoIFJlc3VsdHNcbiAqL1xuZXhwb3J0IGNsYXNzIFNlYXJjaFJlc3VsdCB7XG4gIHB1YmxpYyBjb3VudDoge3ZhbHVlOiBudW1iZXIsIHJlbGF0aW9uPzogc3RyaW5nfTtcbiAgcHVibGljIHN1Z2dlc3RzOiBzdHJpbmdbXTtcbiAgcHVibGljIGhpdHM6IGFueVtdO1xuICBwdWJsaWMgdHlwZU5hbWU6IHN0cmluZztcbiAgcHVibGljIGZpZWxkczogRmllbGREZWZpbml0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKCkge31cbn1cblxuZXhwb3J0IGNsYXNzIFNlYXJjaEZpbHRlciB7XG4gIC8qKlxuICAgKiBhdmFpbGFibGUgb3BlcmF0b3JzIGZvciBhIHNlYXJjaCBmaWx0ZXJcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgT1BFUkFUT1IgPSB7XG4gICAgLyoqIGVxdWFsICovXG4gICAgRVFVQUw6IFwiZXFcIixcbiAgICAvKiogbWF0Y2ggKGZvciBzdHJpbmcgd2l0aCBjbGFzc2lmaWNhdGlvbiBcInBhdGg2NjY2XCIpICovXG4gICAgTUFUQ0g6IFwibWF0Y2hcIixcbiAgICAvKiogbWF0Y2ggYXQgbGVhc3Qgb25lIG9mIHRoZSBwcm92aWRlZCB2YWx1ZXMgKHZhbHVlIGhhcyB0byBiZSBhbiBhcnJheSkgICovXG4gICAgSU46IFwiaW5cIixcbiAgICAvKiogZ3JlYXRlciB0aGFuICovXG4gICAgR1JFQVRFUl9USEFOOiBcImd0XCIsXG4gICAgLyoqIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCAqL1xuICAgIEdSRUFURVJfT1JfRVFVQUw6IFwiZ3RlXCIsIC8vXG4gICAgTEVTU19USEFOOiBcImx0XCIsIC8vIGxlc3MgdGhhblxuICAgIExFU1NfT1JfRVFVQUw6IFwibHRlXCIsIC8vIGxlc3MgdGhhbiBvciBlcXVhbFxuICAgIElOVEVSVkFMOiBcImd0bHRcIiwgLy8gaW50ZXJ2YWxcbiAgICBJTlRFUlZBTF9JTkNMVURFX0JPVEg6IFwiZ3RlbHRlXCIsIC8vIGludGVydmFsIGluY2x1ZGUgbGVmdCBhbmQgcmlnaHRcbiAgICBJTlRFUlZBTF9JTkNMVURFX1RPOiBcImd0bHRlXCIsIC8vIGludGVydmFsIGluY2x1ZGUgcmlnaHRcbiAgICBJTlRFUlZBTF9JTkNMVURFX0ZST006IFwiZ3RlbHRcIiwgLy8gaW50ZXJ2YWwgaW5jbHVkZSBsZWZ0XG4gICAgUkFOR0U6IFwicmdcIiAvLyBhZ2dlZ2F0aW9uIHJhbmdlc1xuICB9O1xuXG4gIC8qKlxuICAgKiBDb25zdHJ1Y3RvciBmb3IgY3JlYXRpbmcgYSBuZXcgU2VhcmNoRmlsdGVyLlxuICAgKlxuICAgKiBAcGFyYW0gcHJvcGVydHkgVGhlIHF1YWxpZmllZCBuYW1lIG9mIHRoZSBmaWVsZCB0aGlzIGZpbHRlciBzaG91bGQgYXBwbHkgdG8uXG4gICAqIEBwYXJhbSBvcGVyYXRvciBPcGVyYXRvciBpbmRpY2F0aW5nIGhvdyB0byBoYW5kbGUgdGhlIGZpbHRlcnMgdmFsdWUocykuIFNlZSBTZWFyY2hGaWx0ZXIuT1BFUkFUT1IgZm9yIGF2YWlsYWJsZSBvcGVyYXRvcnMuXG4gICAqIEBwYXJhbSBmaXJzdFZhbHVlIFRoZSBmaWx0ZXJzIHZhbHVlXG4gICAqIEBwYXJhbSBzZWNvbmRWYWx1ZSBPcHRpb25hbCBzZWNvbmQgdmFsdWUgZm9yIGZpbHRlcnMgdGhhdCBmb3IgZXhhbXBsZSBkZWZpbmUgcmFuZ2VzIG9mIHZhbHVlc1xuICAgKiBAcGFyYW0gdHJhbnNmb3JtRGF0ZSBGbGFnIHRvIHRyYW5zZm9ybSBkYXRlIGhvdXJzIGFuZCBtaW51dGVzIGJhc2VkIG9uIG9wZXJhdG9yXG4gICAqL1xuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcHJvcGVydHk6IHN0cmluZyxcbiAgICBwdWJsaWMgb3BlcmF0b3I6IHN0cmluZyxcbiAgICBwdWJsaWMgZmlyc3RWYWx1ZTogYW55LFxuICAgIHB1YmxpYyBzZWNvbmRWYWx1ZT86IGFueSxcbiAgICBwdWJsaWMgdHJhbnNmb3JtRGF0ZT86IHt0aW1lPzogYm9vbGVhbjsgdGltZXpvbmU/OiBib29sZWFufVxuICApIHt9XG5cbiAgZm9ybWF0RGF0ZSh2YWx1ZTogYW55KSB7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNmb3JtRGF0ZSAmJiB2YWx1ZVxuICAgICAgPyB0aGlzLnRyYW5zZm9ybURhdGUudGltZXpvbmVcbiAgICAgICAgPyBuZXcgRGF0ZVBpcGUoXCJlblwiKS50cmFuc2Zvcm0odmFsdWUsIFwieXl5eS1NTS1kZFRaXCIpXG4gICAgICAgIDogdGhpcy50cmFuc2Zvcm1EYXRlLnRpbWVcbiAgICAgICAgICA/IG5ldyBEYXRlKHZhbHVlKS50b0lTT1N0cmluZygpLnNsaWNlKDAsIDE2KSArIFwiWlwiXG4gICAgICAgICAgOiBuZXcgRGF0ZVBpcGUoXCJlblwiKS50cmFuc2Zvcm0odmFsdWUsIFwieXl5eS1NTS1kZFwiKVxuICAgICAgOiB2YWx1ZTtcbiAgfVxuXG4gIHRvUXVlcnkoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG86IHRoaXMub3BlcmF0b3IsXG4gICAgICB2MTogdGhpcy5mb3JtYXREYXRlKHRoaXMuZmlyc3RWYWx1ZSksXG4gICAgICAuLi4odGhpcy5zZWNvbmRWYWx1ZSAmJiB7djI6IHRoaXMuZm9ybWF0RGF0ZSh0aGlzLnNlY29uZFZhbHVlKX0pXG4gICAgfTtcbiAgfVxuXG4gIHRvRGF0ZVRpbWVRdWVyeSgpIHtcbiAgICBpZiAodGhpcy50cmFuc2Zvcm1EYXRlICYmIHRoaXMudHJhbnNmb3JtRGF0ZS50aW1lem9uZSAmJiB0aGlzLmZpcnN0VmFsdWUpIHtcbiAgICAgIGxldCBmaXJzdFZhbHVlID0gdGhpcy5maXJzdFZhbHVlO1xuICAgICAgbGV0IHNlY29uZFZhbHVlID0gdGhpcy5zZWNvbmRWYWx1ZTtcbiAgICAgIGNvbnN0IGVuZERhdGUgPSBuZXcgRGF0ZShzZWNvbmRWYWx1ZSB8fCBmaXJzdFZhbHVlKTtcbiAgICAgIGVuZERhdGUuc2V0SG91cnMoMjMsIDU5LCA1OSwgOTk5KTtcbiAgICAgIGlmICh0aGlzLm9wZXJhdG9yID09PSBTZWFyY2hGaWx0ZXIuT1BFUkFUT1IuTEVTU19PUl9FUVVBTCkge1xuICAgICAgICBmaXJzdFZhbHVlID0gZW5kRGF0ZS50b0lTT1N0cmluZygpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3Qgc3RhcnREYXRlID0gbmV3IERhdGUoZmlyc3RWYWx1ZSk7XG4gICAgICAgIGlmIChcbiAgICAgICAgICB0aGlzLm9wZXJhdG9yID09PSBTZWFyY2hGaWx0ZXIuT1BFUkFUT1IuR1JFQVRFUl9USEFOIHx8XG4gICAgICAgICAgdGhpcy5vcGVyYXRvciA9PT0gU2VhcmNoRmlsdGVyLk9QRVJBVE9SLklOVEVSVkFMXG4gICAgICAgICkge1xuICAgICAgICAgIHN0YXJ0RGF0ZS5zZXRIb3VycygyMywgNTksIDU5LCA5OTkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHN0YXJ0RGF0ZS5zZXRIb3VycygwLCAwLCAwLCAwKTtcbiAgICAgICAgfVxuICAgICAgICBmaXJzdFZhbHVlID0gc3RhcnREYXRlLnRvSVNPU3RyaW5nKCk7XG4gICAgICB9XG4gICAgICBpZiAoXG4gICAgICAgIHRoaXMub3BlcmF0b3IgPT09IFNlYXJjaEZpbHRlci5PUEVSQVRPUi5JTlRFUlZBTF9JTkNMVURFX0JPVEggfHxcbiAgICAgICAgdGhpcy5vcGVyYXRvciA9PT0gU2VhcmNoRmlsdGVyLk9QRVJBVE9SLkVRVUFMXG4gICAgICApIHtcbiAgICAgICAgc2Vjb25kVmFsdWUgPSBlbmREYXRlLnRvSVNPU3RyaW5nKCk7XG4gICAgICB9XG4gICAgICByZXR1cm4ge1xuICAgICAgICBvOlxuICAgICAgICAgIHRoaXMub3BlcmF0b3IgPT09IFNlYXJjaEZpbHRlci5PUEVSQVRPUi5FUVVBTFxuICAgICAgICAgICAgPyBTZWFyY2hGaWx0ZXIuT1BFUkFUT1IuSU5URVJWQUxfSU5DTFVERV9CT1RIXG4gICAgICAgICAgICA6IHRoaXMub3BlcmF0b3IsXG4gICAgICAgIHYxOiBmaXJzdFZhbHVlLFxuICAgICAgICAuLi4oc2Vjb25kVmFsdWUgJiYge3YyOiBzZWNvbmRWYWx1ZX0pXG4gICAgICB9O1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdGhpcy50b1F1ZXJ5KCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIG1hdGNoKFxuICAgIHByb3BlcnR5OiBzdHJpbmcsXG4gICAgb3BlcmF0b3I6IHN0cmluZyxcbiAgICBmaXJzdFZhbHVlOiBhbnksXG4gICAgc2Vjb25kVmFsdWU/OiBhbnlcbiAgKSB7XG4gICAgcmV0dXJuIChcbiAgICAgIHRoaXMucHJvcGVydHkgPT09IHByb3BlcnR5ICYmXG4gICAgICB0aGlzLm9wZXJhdG9yID09PSBvcGVyYXRvciAmJlxuICAgICAgdGhpcy5zZWNvbmRWYWx1ZSA9PT0gc2Vjb25kVmFsdWUgJiZcbiAgICAgICh0aGlzLmZpcnN0VmFsdWUgaW5zdGFuY2VvZiBBcnJheVxuICAgICAgICA/ICEhdGhpcy5maXJzdFZhbHVlLmZpbmQodiA9PiB2ID09PSBmaXJzdFZhbHVlKVxuICAgICAgICA6IHRoaXMuZmlyc3RWYWx1ZSA9PT0gZmlyc3RWYWx1ZSlcbiAgICApO1xuICB9XG59XG4iXX0=
@@ -383,6 +383,9 @@ class SearchQuery {
383
383
  if (this.fields) {
384
384
  queryJson.fields = this.fields;
385
385
  }
386
+ if (this.name) {
387
+ queryJson.name = this.name;
388
+ }
386
389
  // add options when they differ from the default values
387
390
  if (this.applyOptions()) {
388
391
  queryJson.options = {};