@seniorsistemas/angular-components 18.1.0-feature-sds-276-ea560ae6 → 18.1.0-feature-sds-276-a9df7947

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 (341) hide show
  1. package/bignumber-input/lib/bignumber-input/bignumber-input.directive.d.ts +1 -1
  2. package/custom-fields/lib/custom-fields/custom-fields.component.d.ts +9 -8
  3. package/custom-fields/lib/custom-fields/custom-fields.service.d.ts +4 -3
  4. package/custom-fields/lib/custom-fields/models/custom-field-type.d.ts +33 -0
  5. package/custom-fields/lib/custom-fields/models/index.d.ts +1 -0
  6. package/custom-fields/public-api.d.ts +2 -1
  7. package/dynamic-form/{lib/dynamic-form → dynamic-form}/components/field-label/field-label.component.d.ts +3 -3
  8. package/dynamic-form/dynamic-form/components/grid/row/row.component.d.ts +22 -0
  9. package/dynamic-form/{lib/dynamic-form → dynamic-form}/components/lookup/lookup.component.d.ts +19 -34
  10. package/dynamic-form/dynamic-form/components/structure/base-structure-component.d.ts +10 -0
  11. package/dynamic-form/dynamic-form/components/structure/fieldset/fieldset.component.d.ts +12 -0
  12. package/dynamic-form/dynamic-form/components/structure/section/section.component.d.ts +14 -0
  13. package/dynamic-form/dynamic-form/configurations/registry.d.ts +8 -0
  14. package/dynamic-form/dynamic-form/configurations/structure/fieldset.d.ts +11 -0
  15. package/dynamic-form/dynamic-form/configurations/structure/row.d.ts +21 -0
  16. package/dynamic-form/{lib/dynamic-form → dynamic-form}/configurations/structure/section.d.ts +9 -8
  17. package/dynamic-form/dynamic-form/configurations/structure/structure.d.ts +11 -0
  18. package/dynamic-form/dynamic-form/dynamic-form.component.d.ts +19 -0
  19. package/dynamic-form/dynamic-form/dynamic-form.d.ts +39 -0
  20. package/dynamic-form/{lib/dynamic-form → dynamic-form}/dynamic-form.directive.d.ts +6 -12
  21. package/dynamic-form/dynamic-form/dynamic-form.module.d.ts +79 -0
  22. package/dynamic-form/dynamic-form/form-field/configurations/field-size.d.ts +13 -0
  23. package/dynamic-form/dynamic-form/form-field/configurations/fields/autocomplete-field.d.ts +21 -0
  24. package/dynamic-form/dynamic-form/form-field/configurations/fields/bignumber-field.d.ts +28 -0
  25. package/dynamic-form/dynamic-form/form-field/configurations/fields/blob-field.d.ts +28 -0
  26. package/dynamic-form/dynamic-form/form-field/configurations/fields/boolean-field.d.ts +21 -0
  27. package/dynamic-form/dynamic-form/form-field/configurations/fields/boolean-switch-field.d.ts +12 -0
  28. package/dynamic-form/dynamic-form/form-field/configurations/fields/button-field.d.ts +16 -0
  29. package/dynamic-form/dynamic-form/form-field/configurations/fields/calendar-field.d.ts +33 -0
  30. package/dynamic-form/dynamic-form/form-field/configurations/fields/checkbox-field.d.ts +11 -0
  31. package/dynamic-form/dynamic-form/form-field/configurations/fields/chips-field.d.ts +18 -0
  32. package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/configurations/fields/country-phone-picker-field.d.ts +6 -7
  33. package/dynamic-form/dynamic-form/form-field/configurations/fields/currency-field.d.ts +15 -0
  34. package/dynamic-form/dynamic-form/form-field/configurations/fields/field.d.ts +43 -0
  35. package/dynamic-form/dynamic-form/form-field/configurations/fields/lookup-field.d.ts +56 -0
  36. package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/configurations/fields/number-field.d.ts +9 -22
  37. package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/configurations/fields/password-field.d.ts +8 -20
  38. package/dynamic-form/dynamic-form/form-field/configurations/fields/profile-picture.d.ts +24 -0
  39. package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/configurations/fields/radio-button-field.d.ts +7 -9
  40. package/dynamic-form/dynamic-form/form-field/configurations/fields/select-field.d.ts +33 -0
  41. package/dynamic-form/dynamic-form/form-field/configurations/fields/slider-field.d.ts +24 -0
  42. package/dynamic-form/dynamic-form/form-field/configurations/fields/star-rating-field.d.ts +16 -0
  43. package/dynamic-form/dynamic-form/form-field/configurations/fields/text-area-field.d.ts +18 -0
  44. package/dynamic-form/dynamic-form/form-field/configurations/fields/text-area-ia-field.d.ts +19 -0
  45. package/dynamic-form/dynamic-form/form-field/configurations/fields/text-field.d.ts +31 -0
  46. package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/autocomplete/autocomplete-field.component.d.ts +9 -6
  47. package/dynamic-form/dynamic-form/form-field/fields/base-field-component.d.ts +7 -0
  48. package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/bignumber/bignumber-field.component.d.ts +8 -8
  49. package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/boolean/boolean-radio-field/boolean-field.component.d.ts +4 -4
  50. package/dynamic-form/dynamic-form/form-field/fields/boolean/boolean-switch-field/boolean-switch-field.component.d.ts +10 -0
  51. package/dynamic-form/dynamic-form/form-field/fields/button-field/button-field.component.d.ts +11 -0
  52. package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/calendar/calendar-field.component.d.ts +10 -10
  53. package/dynamic-form/dynamic-form/form-field/fields/checkbox/checkbox-field.component.d.ts +10 -0
  54. package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/chips/chips-field.component.d.ts +5 -5
  55. package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/country-phone-picker/country-phone-picker-field.component.d.ts +4 -4
  56. package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/currency/currency-field.component.d.ts +10 -6
  57. package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/file-upload/file-upload-field.component.d.ts +7 -6
  58. package/dynamic-form/dynamic-form/form-field/fields/lookup/lookup-field.component.d.ts +18 -0
  59. package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/number/number-field.component.d.ts +8 -9
  60. package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/password/password-field.component.d.ts +8 -6
  61. package/dynamic-form/dynamic-form/form-field/fields/profile-picture/profile-picture-field.component.d.ts +10 -0
  62. package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/radio-button/radio-button-field.component.d.ts +5 -5
  63. package/dynamic-form/dynamic-form/form-field/fields/select/select-field.component.d.ts +12 -0
  64. package/dynamic-form/dynamic-form/form-field/fields/slider/slider-field.component.d.ts +23 -0
  65. package/dynamic-form/dynamic-form/form-field/fields/star-rating/star-rating-field.component.d.ts +11 -0
  66. package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/text/text-field.component.d.ts +8 -8
  67. package/dynamic-form/dynamic-form/form-field/fields/text-area/text-area-field.component.d.ts +18 -0
  68. package/dynamic-form/dynamic-form/form-field/fields/text-area-ia/text-area-ia-field.component.d.ts +15 -0
  69. package/dynamic-form/dynamic-form/services/form-field-utils.service.d.ts +15 -0
  70. package/dynamic-form/public-api.d.ts +35 -43
  71. package/dynamic-form/src/optional-fields/editor/editor-field/editor-field.component.d.ts +10 -0
  72. package/dynamic-form/src/optional-fields/editor/editor-field.d.ts +15 -0
  73. package/dynamic-form/src/optional-fields/editor/index.d.ts +5 -0
  74. package/dynamic-form/src/optional-fields/editor/public-api.d.ts +1 -0
  75. package/esm2022/autocomplete/lib/autocomplete/autocomplete.component.mjs +3 -3
  76. package/esm2022/bignumber-input/lib/bignumber-input/bignumber-input.directive.mjs +8 -6
  77. package/esm2022/custom-fields/lib/custom-fields/custom-fields.component.mjs +68 -69
  78. package/esm2022/custom-fields/lib/custom-fields/custom-fields.service.mjs +5 -5
  79. package/esm2022/custom-fields/lib/custom-fields/models/custom-field-type.mjs +26 -1
  80. package/esm2022/custom-fields/lib/custom-fields/models/index.mjs +2 -0
  81. package/esm2022/custom-fields/public-api.mjs +3 -2
  82. package/esm2022/dynamic-form/dynamic-form/components/field-label/field-label.component.mjs +21 -0
  83. package/esm2022/dynamic-form/dynamic-form/components/grid/row/row.component.mjs +39 -0
  84. package/esm2022/dynamic-form/dynamic-form/components/lookup/lookup.component.mjs +661 -0
  85. package/esm2022/dynamic-form/dynamic-form/components/lookup/types/default-filter.mjs +2 -0
  86. package/esm2022/dynamic-form/dynamic-form/components/lookup/types/label-options.mjs +2 -0
  87. package/esm2022/dynamic-form/dynamic-form/components/structure/base-structure-component.mjs +2 -0
  88. package/esm2022/dynamic-form/dynamic-form/components/structure/fieldset/fieldset.component.mjs +17 -0
  89. package/esm2022/dynamic-form/dynamic-form/components/structure/section/section.component.mjs +23 -0
  90. package/esm2022/dynamic-form/dynamic-form/configurations/registry.mjs +12 -0
  91. package/esm2022/dynamic-form/dynamic-form/configurations/structure/fieldset.mjs +2 -0
  92. package/esm2022/dynamic-form/dynamic-form/configurations/structure/row.mjs +2 -0
  93. package/esm2022/dynamic-form/dynamic-form/configurations/structure/section.mjs +2 -0
  94. package/esm2022/dynamic-form/dynamic-form/configurations/structure/structure.mjs +2 -0
  95. package/esm2022/dynamic-form/dynamic-form/dynamic-form.component.mjs +37 -0
  96. package/esm2022/dynamic-form/dynamic-form/dynamic-form.directive.mjs +74 -0
  97. package/esm2022/dynamic-form/dynamic-form/dynamic-form.mjs +81 -0
  98. package/esm2022/dynamic-form/dynamic-form/dynamic-form.module.mjs +283 -0
  99. package/esm2022/dynamic-form/dynamic-form/form-field/addon-config.mjs +2 -0
  100. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/field-size.mjs +19 -0
  101. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/autocomplete-field.mjs +2 -0
  102. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/bignumber-field.mjs +2 -0
  103. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/blob-field.mjs +2 -0
  104. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/boolean-field.mjs +2 -0
  105. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/boolean-switch-field.mjs +2 -0
  106. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/button-field.mjs +2 -0
  107. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/calendar-field.mjs +2 -0
  108. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/checkbox-field.mjs +2 -0
  109. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/chips-field.mjs +2 -0
  110. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/country-phone-picker-field.mjs +2 -0
  111. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/currency-field.mjs +2 -0
  112. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/field.mjs +2 -0
  113. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/lookup-field.mjs +2 -0
  114. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/number-field.mjs +2 -0
  115. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/password-field.mjs +2 -0
  116. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/profile-picture.mjs +2 -0
  117. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/radio-button-field.mjs +9 -0
  118. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/select-field.mjs +2 -0
  119. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/slider-field.mjs +2 -0
  120. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/star-rating-field.mjs +2 -0
  121. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/text-area-field.mjs +2 -0
  122. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/text-area-ia-field.mjs +2 -0
  123. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/text-field.mjs +2 -0
  124. package/esm2022/dynamic-form/dynamic-form/form-field/fields/autocomplete/autocomplete-field.component.mjs +41 -0
  125. package/esm2022/dynamic-form/dynamic-form/form-field/fields/base-field-component.mjs +2 -0
  126. package/esm2022/dynamic-form/dynamic-form/form-field/fields/bignumber/bignumber-field.component.mjs +119 -0
  127. package/esm2022/dynamic-form/dynamic-form/form-field/fields/boolean/boolean-radio-field/boolean-field.component.mjs +21 -0
  128. package/esm2022/dynamic-form/dynamic-form/form-field/fields/boolean/boolean-switch-field/boolean-switch-field.component.mjs +17 -0
  129. package/esm2022/dynamic-form/dynamic-form/form-field/fields/button-field/button-field.component.mjs +28 -0
  130. package/esm2022/dynamic-form/dynamic-form/form-field/fields/calendar/calendar-field.component.mjs +123 -0
  131. package/esm2022/dynamic-form/dynamic-form/form-field/fields/checkbox/checkbox-field.component.mjs +15 -0
  132. package/esm2022/dynamic-form/dynamic-form/form-field/fields/chips/chips-field.component.mjs +53 -0
  133. package/esm2022/dynamic-form/dynamic-form/form-field/fields/country-phone-picker/country-phone-picker-field.component.mjs +23 -0
  134. package/esm2022/dynamic-form/dynamic-form/form-field/fields/currency/currency-field.component.mjs +99 -0
  135. package/esm2022/dynamic-form/dynamic-form/form-field/fields/file-upload/file-upload-field.component.mjs +47 -0
  136. package/esm2022/dynamic-form/dynamic-form/form-field/fields/lookup/lookup-field.component.mjs +40 -0
  137. package/esm2022/dynamic-form/dynamic-form/form-field/fields/number/number-field.component.mjs +114 -0
  138. package/esm2022/dynamic-form/dynamic-form/form-field/fields/password/password-field.component.mjs +73 -0
  139. package/esm2022/dynamic-form/dynamic-form/form-field/fields/profile-picture/profile-picture-field.component.mjs +16 -0
  140. package/esm2022/dynamic-form/dynamic-form/form-field/fields/radio-button/radio-button-field.component.mjs +49 -0
  141. package/esm2022/dynamic-form/dynamic-form/form-field/fields/select/select-field.component.mjs +19 -0
  142. package/esm2022/dynamic-form/dynamic-form/form-field/fields/slider/slider-field.component.mjs +113 -0
  143. package/esm2022/dynamic-form/dynamic-form/form-field/fields/star-rating/star-rating-field.component.mjs +21 -0
  144. package/esm2022/dynamic-form/dynamic-form/form-field/fields/text/text-field.component.mjs +79 -0
  145. package/esm2022/dynamic-form/dynamic-form/form-field/fields/text-area/text-area-field.component.mjs +34 -0
  146. package/esm2022/dynamic-form/dynamic-form/form-field/fields/text-area-ia/text-area-ia-field.component.mjs +27 -0
  147. package/esm2022/dynamic-form/dynamic-form/services/form-field-utils.service.mjs +39 -0
  148. package/esm2022/dynamic-form/public-api.mjs +61 -44
  149. package/esm2022/dynamic-form/seniorsistemas-angular-components-dynamic-form.mjs +1 -1
  150. package/esm2022/dynamic-form/src/optional-fields/editor/editor-field/editor-field.component.mjs +18 -0
  151. package/esm2022/dynamic-form/src/optional-fields/editor/editor-field.mjs +2 -0
  152. package/esm2022/dynamic-form/src/optional-fields/editor/public-api.mjs +4 -0
  153. package/esm2022/dynamic-form/src/optional-fields/editor/seniorsistemas-angular-components-dynamic-form-src-optional-fields-editor.mjs +5 -0
  154. package/esm2022/file-upload/lib/file-upload/file-upload.component.mjs +5 -5
  155. package/esm2022/inline-edit/lib/inline-edit/components/fields/inline-edit-text-area-ia/inline-edit-text-area-ia.component.mjs +1 -1
  156. package/esm2022/select/lib/select/select.component.mjs +3 -3
  157. package/esm2022/table/lib/table/table-column/models/dynamic-editable-grid.interface.mjs +1 -1
  158. package/esm2022/text-area-ia/lib/text-area-ia/text-area-ia.component.mjs +6 -6
  159. package/esm2022/tiered-menu/lib/tiered-menu/components/tiered-menu/tiered-menu.component.mjs +3 -3
  160. package/fesm2022/seniorsistemas-angular-components-autocomplete.mjs +2 -2
  161. package/fesm2022/seniorsistemas-angular-components-autocomplete.mjs.map +1 -1
  162. package/fesm2022/seniorsistemas-angular-components-bignumber-input.mjs +7 -5
  163. package/fesm2022/seniorsistemas-angular-components-bignumber-input.mjs.map +1 -1
  164. package/fesm2022/seniorsistemas-angular-components-custom-fields.mjs +95 -71
  165. package/fesm2022/seniorsistemas-angular-components-custom-fields.mjs.map +1 -1
  166. package/fesm2022/seniorsistemas-angular-components-dynamic-form-src-optional-fields-editor.mjs +25 -0
  167. package/fesm2022/seniorsistemas-angular-components-dynamic-form-src-optional-fields-editor.mjs.map +1 -0
  168. package/fesm2022/seniorsistemas-angular-components-dynamic-form.mjs +871 -2437
  169. package/fesm2022/seniorsistemas-angular-components-dynamic-form.mjs.map +1 -1
  170. package/fesm2022/seniorsistemas-angular-components-file-upload.mjs +4 -4
  171. package/fesm2022/seniorsistemas-angular-components-file-upload.mjs.map +1 -1
  172. package/fesm2022/seniorsistemas-angular-components-inline-edit.mjs +1 -1
  173. package/fesm2022/seniorsistemas-angular-components-inline-edit.mjs.map +1 -1
  174. package/fesm2022/seniorsistemas-angular-components-select.mjs +2 -2
  175. package/fesm2022/seniorsistemas-angular-components-select.mjs.map +1 -1
  176. package/fesm2022/seniorsistemas-angular-components-text-area-ia.mjs +5 -5
  177. package/fesm2022/seniorsistemas-angular-components-text-area-ia.mjs.map +1 -1
  178. package/fesm2022/seniorsistemas-angular-components-tiered-menu.mjs +2 -2
  179. package/fesm2022/seniorsistemas-angular-components-tiered-menu.mjs.map +1 -1
  180. package/file-upload/lib/file-upload/file-upload.component.d.ts +2 -2
  181. package/package.json +12 -18
  182. package/table/lib/table/table-column/models/dynamic-editable-grid.interface.d.ts +2 -2
  183. package/text-area-ia/lib/text-area-ia/text-area-ia.component.d.ts +2 -1
  184. package/dynamic-form/lib/dynamic-form/components/grid/row/row.component.d.ts +0 -15
  185. package/dynamic-form/lib/dynamic-form/components/structure/base-structure-component.d.ts +0 -8
  186. package/dynamic-form/lib/dynamic-form/components/structure/fieldset/fieldset.component.d.ts +0 -12
  187. package/dynamic-form/lib/dynamic-form/components/structure/section/section.component.d.ts +0 -14
  188. package/dynamic-form/lib/dynamic-form/configurations/dynamic-config.d.ts +0 -3
  189. package/dynamic-form/lib/dynamic-form/configurations/dynamic-type.d.ts +0 -24
  190. package/dynamic-form/lib/dynamic-form/configurations/grid/grid.d.ts +0 -14
  191. package/dynamic-form/lib/dynamic-form/configurations/grid/row.d.ts +0 -8
  192. package/dynamic-form/lib/dynamic-form/configurations/grid-type.d.ts +0 -3
  193. package/dynamic-form/lib/dynamic-form/configurations/structure/fieldset.d.ts +0 -10
  194. package/dynamic-form/lib/dynamic-form/configurations/structure/structure.d.ts +0 -14
  195. package/dynamic-form/lib/dynamic-form/configurations/structure-type.d.ts +0 -4
  196. package/dynamic-form/lib/dynamic-form/dynamic-form.component.d.ts +0 -19
  197. package/dynamic-form/lib/dynamic-form/dynamic-form.d.ts +0 -57
  198. package/dynamic-form/lib/dynamic-form/dynamic-form.module.d.ts +0 -83
  199. package/dynamic-form/lib/dynamic-form/form-field/configurations/field-size.d.ts +0 -7
  200. package/dynamic-form/lib/dynamic-form/form-field/configurations/field-type.d.ts +0 -32
  201. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/autocomplete-field.d.ts +0 -30
  202. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/bignumber-field.d.ts +0 -38
  203. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/blob-field.d.ts +0 -43
  204. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/boolean-field.d.ts +0 -29
  205. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/boolean-switch-field.d.ts +0 -11
  206. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/button-field.d.ts +0 -34
  207. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/calendar-field.d.ts +0 -45
  208. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/checkbox-field.d.ts +0 -9
  209. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/chips-field.d.ts +0 -24
  210. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/currency-field.d.ts +0 -9
  211. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/decimal-field.d.ts +0 -14
  212. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/editor-field.d.ts +0 -18
  213. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/field.d.ts +0 -96
  214. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/lookup-field.d.ts +0 -97
  215. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/profile-picture.d.ts +0 -35
  216. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/select-field.d.ts +0 -41
  217. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/slider-field.d.ts +0 -32
  218. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/star-rating-field.d.ts +0 -17
  219. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/text-area-field.d.ts +0 -24
  220. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/text-area-ia-field.d.ts +0 -26
  221. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/text-field.d.ts +0 -41
  222. package/dynamic-form/lib/dynamic-form/form-field/fields/base-field-component.d.ts +0 -32
  223. package/dynamic-form/lib/dynamic-form/form-field/fields/boolean/boolean-switch-field/boolean-switch-field.component.d.ts +0 -10
  224. package/dynamic-form/lib/dynamic-form/form-field/fields/button-field/button-field.component.d.ts +0 -10
  225. package/dynamic-form/lib/dynamic-form/form-field/fields/checkbox/checkbox-field.component.d.ts +0 -10
  226. package/dynamic-form/lib/dynamic-form/form-field/fields/editor/editor-field.component.d.ts +0 -10
  227. package/dynamic-form/lib/dynamic-form/form-field/fields/lookup/lookup-field.component.d.ts +0 -9
  228. package/dynamic-form/lib/dynamic-form/form-field/fields/profile-picture/profile-picture-field.component.d.ts +0 -9
  229. package/dynamic-form/lib/dynamic-form/form-field/fields/select/select-field.component.d.ts +0 -10
  230. package/dynamic-form/lib/dynamic-form/form-field/fields/slider/slider-field.component.d.ts +0 -25
  231. package/dynamic-form/lib/dynamic-form/form-field/fields/star-rating/star-rating-field.component.d.ts +0 -10
  232. package/dynamic-form/lib/dynamic-form/form-field/fields/text-area/text-area-field.component.d.ts +0 -14
  233. package/dynamic-form/lib/dynamic-form/form-field/fields/text-area-ia/text-area-ia-field.component.d.ts +0 -9
  234. package/dynamic-form/lib/dynamic-form/form-field/form-field.d.ts +0 -192
  235. package/dynamic-form/lib/dynamic-form/services/dynamic-form-cache.d.ts +0 -12
  236. package/esm2022/dynamic-form/lib/dynamic-form/components/field-label/field-label.component.mjs +0 -20
  237. package/esm2022/dynamic-form/lib/dynamic-form/components/grid/row/row.component.mjs +0 -41
  238. package/esm2022/dynamic-form/lib/dynamic-form/components/lookup/lookup.component.mjs +0 -642
  239. package/esm2022/dynamic-form/lib/dynamic-form/components/lookup/types/default-filter.mjs +0 -2
  240. package/esm2022/dynamic-form/lib/dynamic-form/components/lookup/types/label-options.mjs +0 -2
  241. package/esm2022/dynamic-form/lib/dynamic-form/components/structure/base-structure-component.mjs +0 -2
  242. package/esm2022/dynamic-form/lib/dynamic-form/components/structure/fieldset/fieldset.component.mjs +0 -27
  243. package/esm2022/dynamic-form/lib/dynamic-form/components/structure/section/section.component.mjs +0 -33
  244. package/esm2022/dynamic-form/lib/dynamic-form/configurations/dynamic-config.mjs +0 -71
  245. package/esm2022/dynamic-form/lib/dynamic-form/configurations/dynamic-type.mjs +0 -26
  246. package/esm2022/dynamic-form/lib/dynamic-form/configurations/grid/grid.mjs +0 -14
  247. package/esm2022/dynamic-form/lib/dynamic-form/configurations/grid/row.mjs +0 -10
  248. package/esm2022/dynamic-form/lib/dynamic-form/configurations/grid-type.mjs +0 -5
  249. package/esm2022/dynamic-form/lib/dynamic-form/configurations/structure/fieldset.mjs +0 -10
  250. package/esm2022/dynamic-form/lib/dynamic-form/configurations/structure/section.mjs +0 -31
  251. package/esm2022/dynamic-form/lib/dynamic-form/configurations/structure/structure.mjs +0 -9
  252. package/esm2022/dynamic-form/lib/dynamic-form/configurations/structure-type.mjs +0 -6
  253. package/esm2022/dynamic-form/lib/dynamic-form/dynamic-form.component.mjs +0 -41
  254. package/esm2022/dynamic-form/lib/dynamic-form/dynamic-form.directive.mjs +0 -107
  255. package/esm2022/dynamic-form/lib/dynamic-form/dynamic-form.mjs +0 -189
  256. package/esm2022/dynamic-form/lib/dynamic-form/dynamic-form.module.mjs +0 -293
  257. package/esm2022/dynamic-form/lib/dynamic-form/form-field/addon-config.mjs +0 -2
  258. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/field-size.mjs +0 -13
  259. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/field-type.mjs +0 -34
  260. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/autocomplete-field.mjs +0 -24
  261. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/bignumber-field.mjs +0 -37
  262. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/blob-field.mjs +0 -31
  263. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/boolean-field.mjs +0 -30
  264. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/boolean-switch-field.mjs +0 -15
  265. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/button-field.mjs +0 -47
  266. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/calendar-field.mjs +0 -56
  267. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/checkbox-field.mjs +0 -9
  268. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/chips-field.mjs +0 -25
  269. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/country-phone-picker-field.mjs +0 -15
  270. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/currency-field.mjs +0 -14
  271. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/decimal-field.mjs +0 -16
  272. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/editor-field.mjs +0 -15
  273. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/field.mjs +0 -64
  274. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/lookup-field.mjs +0 -66
  275. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/number-field.mjs +0 -38
  276. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/password-field.mjs +0 -33
  277. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/profile-picture.mjs +0 -35
  278. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/radio-button-field.mjs +0 -27
  279. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/select-field.mjs +0 -43
  280. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/slider-field.mjs +0 -30
  281. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/star-rating-field.mjs +0 -17
  282. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/text-area-field.mjs +0 -30
  283. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/text-area-ia-field.mjs +0 -32
  284. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/text-field.mjs +0 -38
  285. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/autocomplete/autocomplete-field.component.mjs +0 -37
  286. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/base-field-component.mjs +0 -22
  287. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/bignumber/bignumber-field.component.mjs +0 -124
  288. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/boolean/boolean-radio-field/boolean-field.component.mjs +0 -27
  289. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/boolean/boolean-switch-field/boolean-switch-field.component.mjs +0 -23
  290. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/button-field/button-field.component.mjs +0 -31
  291. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/calendar/calendar-field.component.mjs +0 -118
  292. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/checkbox/checkbox-field.component.mjs +0 -21
  293. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/chips/chips-field.component.mjs +0 -59
  294. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/country-phone-picker/country-phone-picker-field.component.mjs +0 -29
  295. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/currency/currency-field.component.mjs +0 -100
  296. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/editor/editor-field.component.mjs +0 -23
  297. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/file-upload/file-upload-field.component.mjs +0 -56
  298. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/lookup/lookup-field.component.mjs +0 -23
  299. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/number/number-field.component.mjs +0 -121
  300. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/password/password-field.component.mjs +0 -75
  301. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/profile-picture/profile-picture-field.component.mjs +0 -22
  302. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/radio-button/radio-button-field.component.mjs +0 -52
  303. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/select/select-field.component.mjs +0 -24
  304. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/slider/slider-field.component.mjs +0 -103
  305. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/star-rating/star-rating-field.component.mjs +0 -25
  306. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/text/text-field.component.mjs +0 -88
  307. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/text-area/text-area-field.component.mjs +0 -29
  308. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/text-area-ia/text-area-ia-field.component.mjs +0 -22
  309. package/esm2022/dynamic-form/lib/dynamic-form/form-field/form-field.mjs +0 -243
  310. package/esm2022/dynamic-form/lib/dynamic-form/services/dynamic-form-cache.mjs +0 -150
  311. package/esm2022/form-dynamic/components/form-dynamic/form-dynamic.component.mjs +0 -53
  312. package/esm2022/form-dynamic/core/registry.mjs +0 -10
  313. package/esm2022/form-dynamic/fields-basic/boolean-field/boolean-field.component.mjs +0 -15
  314. package/esm2022/form-dynamic/fields-basic/string-field/string-field.component.mjs +0 -15
  315. package/esm2022/form-dynamic/optional-fields/editor/editor-field/editor-field.component.mjs +0 -30
  316. package/esm2022/form-dynamic/optional-fields/editor/editor-types.mjs +0 -2
  317. package/esm2022/form-dynamic/optional-fields/editor/public-api.mjs +0 -6
  318. package/esm2022/form-dynamic/optional-fields/editor/seniorsistemas-angular-components-form-dynamic-optional-fields-editor.mjs +0 -5
  319. package/esm2022/form-dynamic/public-api.mjs +0 -10
  320. package/esm2022/form-dynamic/schemas/field-dynamic.mjs +0 -2
  321. package/esm2022/form-dynamic/schemas/form-dynamic-schema.mjs +0 -2
  322. package/esm2022/form-dynamic/seniorsistemas-angular-components-form-dynamic.mjs +0 -5
  323. package/fesm2022/seniorsistemas-angular-components-form-dynamic-optional-fields-editor.mjs +0 -40
  324. package/fesm2022/seniorsistemas-angular-components-form-dynamic-optional-fields-editor.mjs.map +0 -1
  325. package/fesm2022/seniorsistemas-angular-components-form-dynamic.mjs +0 -94
  326. package/fesm2022/seniorsistemas-angular-components-form-dynamic.mjs.map +0 -1
  327. package/form-dynamic/components/form-dynamic/form-dynamic.component.d.ts +0 -15
  328. package/form-dynamic/core/registry.d.ts +0 -7
  329. package/form-dynamic/fields-basic/boolean-field/boolean-field.component.d.ts +0 -9
  330. package/form-dynamic/fields-basic/string-field/string-field.component.d.ts +0 -9
  331. package/form-dynamic/index.d.ts +0 -5
  332. package/form-dynamic/optional-fields/editor/editor-field/editor-field.component.d.ts +0 -15
  333. package/form-dynamic/optional-fields/editor/editor-types.d.ts +0 -8
  334. package/form-dynamic/optional-fields/editor/index.d.ts +0 -5
  335. package/form-dynamic/optional-fields/editor/public-api.d.ts +0 -8
  336. package/form-dynamic/public-api.d.ts +0 -4
  337. package/form-dynamic/schemas/field-dynamic.d.ts +0 -20
  338. package/form-dynamic/schemas/form-dynamic-schema.d.ts +0 -4
  339. /package/dynamic-form/{lib/dynamic-form → dynamic-form}/components/lookup/types/default-filter.d.ts +0 -0
  340. /package/dynamic-form/{lib/dynamic-form → dynamic-form}/components/lookup/types/label-options.d.ts +0 -0
  341. /package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/addon-config.d.ts +0 -0
@@ -60,10 +60,12 @@ export class BignumberInputDirective extends CurrencyMaskDirective {
60
60
  }
61
61
  }
62
62
  onPaste(event) {
63
- const pastedText = event.clipboardData?.getData("text") ?? "";
64
- const numericText = pastedText.replace(new RegExp(`\\${this.thousandsSeparator}`, "g"), "").replace(this.decimalSeparator, ".");
65
- const [intPart, decimalPart = ""] = numericText.split(".");
66
- const totalDigits = intPart.replace(/\D/g, "").length + decimalPart.slice(0, this.scale).length;
63
+ const pastedText = event.clipboardData?.getData('text') ?? '';
64
+ const numericText = pastedText
65
+ .replace(new RegExp(`\\${this.thousandsSeparator}`, 'g'), '')
66
+ .replace(this.decimalSeparator, '.');
67
+ const [intPart, decimalPart = ''] = numericText.split('.');
68
+ const totalDigits = intPart.replace(/\D/g, '').length + decimalPart.slice(0, this.scale).length;
67
69
  if (totalDigits > this.precision) {
68
70
  event.preventDefault();
69
71
  this.pasteRejected.emit(pastedText);
@@ -151,6 +153,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
151
153
  type: Output
152
154
  }], onPaste: [{
153
155
  type: HostListener,
154
- args: ["paste", ["$event"]]
156
+ args: ['paste', ['$event']]
155
157
  }] } });
156
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmlnbnVtYmVyLWlucHV0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9iaWdudW1iZXItaW5wdXQvc3JjL2xpYi9iaWdudW1iZXItaW5wdXQvYmlnbnVtYmVyLWlucHV0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsU0FBUyxFQUVULFlBQVksRUFDWixVQUFVLEVBQ1YsV0FBVyxFQUNYLFlBQVksRUFDWixLQUFLLEVBSUwsTUFBTSxHQUVULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzFELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBSXZDOztHQUVHO0FBQ0gsTUFBTSxDQUFOLElBQVksd0JBR1g7QUFIRCxXQUFZLHdCQUF3QjtJQUNoQywyQ0FBZSxDQUFBO0lBQ2YseUNBQWEsQ0FBQTtBQUNqQixDQUFDLEVBSFcsd0JBQXdCLEtBQXhCLHdCQUF3QixRQUduQztBQUVEOztHQUVHO0FBWUgsTUFBTSxPQUFPLHVCQUF3QixTQUFRLHFCQUFxQjtJQWdEekM7SUE5Q2QsU0FBUyxHQUFHLEVBQUUsQ0FBQztJQUdmLEtBQUssR0FBRyxDQUFDLENBQUM7SUFHVixnQkFBZ0IsQ0FBVTtJQUcxQixrQkFBa0IsQ0FBVTtJQUc1QixPQUFPLEdBQUcsTUFBTSxDQUFDO0lBR2pCLGFBQWEsR0FBRyxJQUFJLENBQUM7SUFJckIsV0FBVyxDQUFVO0lBR3JCLFNBQVMsQ0FBVTtJQUduQixhQUFhLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztJQUdqQyxLQUFLLEdBQUcsSUFBSSxDQUFDO0lBRzlCLDJGQUEyRjtJQUMzRixtRUFBbUU7SUFFbkUsb0NB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LEVBQUUsQ0FBQztRQUNuRyxDQUFDLENBQUMsQ0FBQztJQUNYLENBQUM7d0dBeklRLHVCQUF1Qjs0RkFBdkIsdUJBQXVCLG1jQVRyQjtZQUNQO2dCQUNJLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLHFEQUFxRDtnQkFDckQsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztnQkFDdEQsS0FBSyxFQUFFLElBQUk7YUFDZDtTQUNKOzs0RkFFUSx1QkFBdUI7a0JBWG5DLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHdCQUF3QjtvQkFDbEMsU0FBUyxFQUFFO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLHFEQUFxRDs0QkFDckQsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsd0JBQXdCLENBQUM7NEJBQ3RELEtBQUssRUFBRSxJQUFJO3lCQUNkO3FCQUNKO2lCQUNKO3lJQUdVLFNBQVM7c0JBRGYsS0FBSztnQkFJQyxLQUFLO3NCQURYLEtBQUs7Z0JBSUMsZ0JBQWdCO3NCQUR0QixLQUFLO2dCQUlDLGtCQUFrQjtzQkFEeEIsS0FBSztnQkFJQyxPQUFPO3NCQURiLEtBQUs7Z0JBSUMsYUFBYTtzQkFEbkIsS0FBSztnQkFLQyxXQUFXO3NCQUZqQixLQUFLOztzQkFDTCxXQUFXO3VCQUFDLGtCQUFrQjtnQkFJeEIsU0FBUztzQkFEZixXQUFXO3VCQUFDLGdCQUFnQjtnQkFJdEIsYUFBYTtzQkFEbkIsTUFBTTtnQkEyREEsT0FBTztzQkFEYixZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgRGlyZWN0aXZlLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIElucHV0LFxuICAgIEtleVZhbHVlRGlmZmVycyxcbiAgICBPbkNoYW5nZXMsXG4gICAgT25Jbml0LFxuICAgIE91dHB1dCxcbiAgICBTaW1wbGVDaGFuZ2VzLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBDdXJyZW5jeU1hc2tEaXJlY3RpdmUgfSBmcm9tICduZzItY3VycmVuY3ktbWFzayc7XG5pbXBvcnQgeyBmaXJzdCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEFsaWdubWVudE9wdGlvbnMgfSBmcm9tICdAc2VuaW9yc2lzdGVtYXMvbmcyLWN1cnJlbmN5LW1hc2snO1xuaW1wb3J0IHsgTG9jYWxlU2VydmljZSB9IGZyb20gJ0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvbG9jYWxlJztcblxuLyoqXG4gKiBAZGVwcmVjYXRlZCBTaG91bGQgdXNlICdBbGlnbm1lbnRPcHRpb25zJyBmcm9tIEBzZW5pb3JzaXN0ZW1hcy9uZzItY3VycmVuY3ktbWFzayBpbnN0ZWFkXG4gKi9cbmV4cG9ydCBlbnVtIEJpZ251bWJlckFsaWdubWVudE9wdGlvbiB7XG4gICAgUklHSFQgPSAncmlnaHQnLFxuICAgIExFRlQgPSAnbGVmdCcsXG59XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgU2hvdWxkIHVzZSBCaWdOdW1iZXJJbnB1dCBkaXJlY3RpdmUgaW5zdGVhZFxuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ2lucHV0W3NCaWdudW1iZXJJbnB1dF0nLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIC8vIE5PU09OQVIgLSAnQmlnbnVtYmVySW5wdXREaXJlY3RpdmUnIGlzIGRlcHJlY2F0ZWQuXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBCaWdudW1iZXJJbnB1dERpcmVjdGl2ZSksXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBCaWdudW1iZXJJbnB1dERpcmVjdGl2ZSBleHRlbmRzIEN1cnJlbmN5TWFza0RpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBwcmVjaXNpb24gPSAxNTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHNjYWxlID0gMDtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGRlY2ltYWxTZXBhcmF0b3I/OiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyB0aG91c2FuZHNTZXBhcmF0b3I/OiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBhbGlnblRvID0gJ2xlZnQnO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgYWxsb3dOZWdhdGl2ZSA9IHRydWU7XG5cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZygnYXR0ci5wbGFjZWhvbGRlcicpXG4gICAgcHVibGljIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xuXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLm1heExlbmd0aCcpXG4gICAgcHVibGljIG1heExlbmd0aD86IG51bWJlcjtcblxuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyBwYXN0ZVJlamVjdGVkID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cblxuICAgIHByaXZhdGUgcmVhZG9ubHkgcmVnZXggPSAvXFxkLztcblxuXG4gICAgLy9UT0RPOiBBanVzdGUgbm8gbmcyLWN1cnJlbmN5LW1hc2sgcGFyYSB1dGlsaXphciBlc3NlIEPDs2RpZ28gKGFwbGljYWRvIG5hIHRhcmVmYTogU0RTLTMwNSlcbiAgICAvLyBwcml2YXRlIHJlYWRvbmx5IF9hbmd1bGFyQ29tcG9uZW50c0xvY2FsZVNlcnZpY2U6IExvY2FsZVNlcnZpY2U7XG5cbiAgICAvLyBjb25zdHJ1Y3RvcihpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICAvLyBzdXBlcihpbmplY3Rvcik7XG5cbiAgICAvLyB0aGlzLl9hbmd1bGFyQ29tcG9uZW50c0xvY2FsZVNlcnZpY2UgPSBpbmplY3Rvci5nZXQoTG9jYWxlU2VydmljZSk7XG4gICAgLy8gdGhpcy5vbkxvY2FsZVNlcnZpY2UoKTtcbiAgICAvLyB9XG5cblxuICAgIC8vVE9ETzogIFJlbW92ZXIgZXNzZSBjb25zdHJ1Y3RvclxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBfZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICAgICAgX2tleVZhbHVlRGlmZmVyczogS2V5VmFsdWVEaWZmZXJzLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGxvY2FsZVNlcnZpY2U6IExvY2FsZVNlcnZpY2UsXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKFxuICAgICAgICAgICAgeyBhbGlnbjogJycsIGFsbG93TmVnYXRpdmU6IHRydWUsIGRlY2ltYWw6ICcnLCBwcmVjaXNpb246IDAsIHByZWZpeDogJycsIHN1ZmZpeDogJycsIHRob3VzYW5kczogJycgfSxcbiAgICAgICAgICAgIF9lbGVtZW50UmVmLFxuICAgICAgICAgICAgX2tleVZhbHVlRGlmZmVycyxcbiAgICAgICAgKTtcblxuICAgICAgICB0aGlzLm9uTG9jYWxlU2VydmljZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBvdmVycmlkZSBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVWYXJpYWJsZXMoKTtcblxuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgICAgIGNvbnN0IHBsYWNlaG9sZGVyQ2hhbmdlID0gY2hhbmdlc1sncGxhY2Vob2xkZXInXT8uY3VycmVudFZhbHVlO1xuICAgICAgICBpZiAoIXBsYWNlaG9sZGVyQ2hhbmdlICYmIHRoaXMuc2NhbGUpIHtcbiAgICAgICAgICAgIHRoaXMucGxhY2Vob2xkZXIgPSBgMCR7dGhpcy5kZWNpbWFsU2VwYXJhdG9yfSR7JycucGFkRW5kKHRoaXMuc2NhbGUsICcwJyl9YDtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGNvbmZpZ0NoYW5nZWQgPVxuICAgICAgICAgICAgY2hhbmdlc1snc2NhbGUnXSB8fFxuICAgICAgICAgICAgY2hhbmdlc1snZGVjaW1hbFNlcGFyYXRvciddIHx8XG4gICAgICAgICAgICBjaGFuZ2VzWyd0aG91c2FuZHNTZXBhcmF0b3InXSB8fFxuICAgICAgICAgICAgY2hhbmdlc1snYWxpZ25UbyddIHx8XG4gICAgICAgICAgICBjaGFuZ2VzWydwcmVjaXNpb24nXSB8fFxuICAgICAgICAgICAgY2hhbmdlc1snYWxsb3dOZWdhdGl2ZSddO1xuXG4gICAgICAgIGlmIChjb25maWdDaGFuZ2VkKSB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZVZhcmlhYmxlcygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcihcInBhc3RlXCIsIFtcIiRldmVudFwiXSlcbiAgICBwdWJsaWMgb25QYXN0ZShldmVudDogQ2xpcGJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgcGFzdGVkVGV4dCA9IGV2ZW50LmNsaXBib2FyZERhdGE/LmdldERhdGEoXCJ0ZXh0XCIpID8/IFwiXCI7XG4gICAgICAgIGNvbnN0IG51bWVyaWNUZXh0ID0gcGFzdGVkVGV4dC5yZXBsYWNlKG5ldyBSZWdFeHAoYFxcXFwke3RoaXMudGhvdXNhbmRzU2VwYXJhdG9yfWAsIFwiZ1wiKSwgXCJcIikucmVwbGFjZSh0aGlzLmRlY2ltYWxTZXBhcmF0b3IgYXMgc3RyaW5nLCBcIi5cIik7XG4gICAgICAgIGNvbnN0IFtpbnRQYXJ0LCBkZWNpbWFsUGFydCA9IFwiXCJdID0gbnVtZXJpY1RleHQuc3BsaXQoXCIuXCIpO1xuICAgICAgICBjb25zdCB0b3RhbERpZ2l0cyA9IGludFBhcnQucmVwbGFjZSgvXFxEL2csIFwiXCIpLmxlbmd0aCArIGRlY2ltYWxQYXJ0LnNsaWNlKDAsIHRoaXMuc2NhbGUpLmxlbmd0aDtcblxuICAgICAgICBpZiAodG90YWxEaWdpdHMgPiB0aGlzLnByZWNpc2lvbikge1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIHRoaXMucGFzdGVSZWplY3RlZC5lbWl0KHBhc3RlZFRleHQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVXBkYXRlIHRoZSBvcHRpb25zIHZhbHVlcyBhY2NvcmRpbmcgdG8gdGhlIGRpcmVjdGl2ZSBpbnB1dCB2YWx1ZXMuXG4gICAgICovXG4gICAgcHJpdmF0ZSB1cGRhdGVWYXJpYWJsZXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMub3B0aW9ucyA9IHtcbiAgICAgICAgICAgIGFsaWduOiB0aGlzLmFsaWduVG8sXG4gICAgICAgICAgICBkZWNpbWFsOiB0aGlzLmRlY2ltYWxTZXBhcmF0b3IsXG4gICAgICAgICAgICB0aG91c2FuZHM6IHRoaXMudGhvdXNhbmRzU2VwYXJhdG9yLFxuICAgICAgICAgICAgcHJlY2lzaW9uOiB0aGlzLnNjYWxlIHx8IDAsXG4gICAgICAgICAgICBwcmVmaXg6ICcnLFxuICAgICAgICAgICAgc3VmZml4OiAnJyxcbiAgICAgICAgICAgIGFsbG93TmVnYXRpdmU6IHRoaXMuYWxsb3dOZWdhdGl2ZSxcbiAgICAgICAgfTtcbiAgICAgICAgdGhpcy5jYWxjdWxhdGVNYXhMZW5ndGgoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXNwb25zaWJsZSB0byBjYWxjdWxhdGUgdGhlIGZpZWxkIG1heGltdW0gbGVuZ3RoIGNvbnNpZGVyaW5nIHRoZSBzZXBhcmF0b3JzLlxuICAgICAqL1xuICAgIHByaXZhdGUgY2FsY3VsYXRlTWF4TGVuZ3RoKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBkZWNTZXBMZW5ndGggPSB0aGlzLmRlY2ltYWxTZXBhcmF0b3I/Lmxlbmd0aCA/PyAwO1xuICAgICAgICBjb25zdCB0aG9TZXBMZW5ndGggPSB0aGlzLnRob3VzYW5kc1NlcGFyYXRvcj8ubGVuZ3RoID8/IDA7XG5cbiAgICAgICAgY29uc3QgRElHSVRTX0dST1VQX1NJWkUgPSAzO1xuXG4gICAgICAgIGxldCBtYXhMZW5ndGggPSB0aGlzLnByZWNpc2lvbiArICh0aGlzLnNjYWxlID8gZGVjU2VwTGVuZ3RoIDogMCk7XG4gICAgICAgIG1heExlbmd0aCArPSBNYXRoLmNlaWwoKHRoaXMucHJlY2lzaW9uIC0gKHRoaXMuc2NhbGUgPyB0aGlzLnNjYWxlIDogMCkpIC8gRElHSVRTX0dST1VQX1NJWkUgLSAxKSAqIHRob1NlcExlbmd0aDtcblxuICAgICAgICB0aGlzLm1heExlbmd0aCA9IG1heExlbmd0aDtcbiAgICB9XG5cblxuICAgIHByaXZhdGUgb25Mb2NhbGVTZXJ2aWNlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmxvY2FsZVNlcnZpY2VcbiAgICAgICAgICAgIC5nZXRMb2NhbGUoKVxuICAgICAgICAgICAgLnBpcGUoZmlyc3QoKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuZGVjaW1hbFNlcGFyYXRvciA9IHRoaXMuZGVjaW1hbFNlcGFyYXRvciA/PyB0aGlzLmxvY2FsZVNlcnZpY2UuZ2V0RGVjaW1hbFNlcGFyYXRvcigpO1xuICAgICAgICAgICAgICAgIHRoaXMudGhvdXNhbmRzU2VwYXJhdG9yID0gdGhpcy50aG91c2FuZHNTZXBhcmF0b3IgPz8gdGhpcy5sb2NhbGVTZXJ2aWNlLmdldEdyb3VwaW5nU2VwYXJhdG9yKCk7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG59XG4iXX0=
158
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmlnbnVtYmVyLWlucHV0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9iaWdudW1iZXItaW5wdXQvc3JjL2xpYi9iaWdudW1iZXItaW5wdXQvYmlnbnVtYmVyLWlucHV0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsU0FBUyxFQUVULFlBQVksRUFDWixVQUFVLEVBQ1YsV0FBVyxFQUNYLFlBQVksRUFDWixLQUFLLEVBSUwsTUFBTSxHQUVULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzFELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBSXZDOztHQUVHO0FBQ0gsTUFBTSxDQUFOLElBQVksd0JBR1g7QUFIRCxXQUFZLHdCQUF3QjtJQUNoQywyQ0FBZSxDQUFBO0lBQ2YseUNBQWEsQ0FBQTtBQUNqQixDQUFDLEVBSFcsd0JBQXdCLEtBQXhCLHdCQUF3QixRQUduQztBQUVEOztHQUVHO0FBWUgsTUFBTSxPQUFPLHVCQUF3QixTQUFRLHFCQUFxQjtJQTZDekM7SUEzQ2QsU0FBUyxHQUFHLEVBQUUsQ0FBQztJQUdmLEtBQUssR0FBRyxDQUFDLENBQUM7SUFHVixnQkFBZ0IsQ0FBVTtJQUcxQixrQkFBa0IsQ0FBVTtJQUc1QixPQUFPLEdBQXFCLE1BQU0sQ0FBQztJQUduQyxhQUFhLEdBQUcsSUFBSSxDQUFDO0lBSXJCLFdBQVcsQ0FBVTtJQUdyQixTQUFTLENBQVU7SUFHbkIsYUFBYSxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7SUFFakMsS0FBSyxHQUFHLElBQUksQ0FBQztJQUU5QiwyRkFBMkY7SUFDM0YsbUVBQW1FO0lBRW5FLG9D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QW9CLEVBQUUsQ0FBQztRQUNuRyxDQUFDLENBQUMsQ0FBQztJQUNYLENBQUM7d0dBdklRLHVCQUF1Qjs0RkFBdkIsdUJBQXVCLG1jQVRyQjtZQUNQO2dCQUNJLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLHFEQUFxRDtnQkFDckQsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztnQkFDdEQsS0FBSyxFQUFFLElBQUk7YUFDZDtTQUNKOzs0RkFFUSx1QkFBdUI7a0JBWG5DLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHdCQUF3QjtvQkFDbEMsU0FBUyxFQUFFO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLHFEQUFxRDs0QkFDckQsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsd0JBQXdCLENBQUM7NEJBQ3RELEtBQUssRUFBRSxJQUFJO3lCQUNkO3FCQUNKO2lCQUNKO3lJQUdVLFNBQVM7c0JBRGYsS0FBSztnQkFJQyxLQUFLO3NCQURYLEtBQUs7Z0JBSUMsZ0JBQWdCO3NCQUR0QixLQUFLO2dCQUlDLGtCQUFrQjtzQkFEeEIsS0FBSztnQkFJQyxPQUFPO3NCQURiLEtBQUs7Z0JBSUMsYUFBYTtzQkFEbkIsS0FBSztnQkFLQyxXQUFXO3NCQUZqQixLQUFLOztzQkFDTCxXQUFXO3VCQUFDLGtCQUFrQjtnQkFJeEIsU0FBUztzQkFEZixXQUFXO3VCQUFDLGdCQUFnQjtnQkFJdEIsYUFBYTtzQkFEbkIsTUFBTTtnQkF3REEsT0FBTztzQkFEYixZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgRGlyZWN0aXZlLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIElucHV0LFxuICAgIEtleVZhbHVlRGlmZmVycyxcbiAgICBPbkNoYW5nZXMsXG4gICAgT25Jbml0LFxuICAgIE91dHB1dCxcbiAgICBTaW1wbGVDaGFuZ2VzLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBDdXJyZW5jeU1hc2tEaXJlY3RpdmUgfSBmcm9tICduZzItY3VycmVuY3ktbWFzayc7XG5pbXBvcnQgeyBmaXJzdCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEFsaWdubWVudE9wdGlvbnMgfSBmcm9tICdAc2VuaW9yc2lzdGVtYXMvbmcyLWN1cnJlbmN5LW1hc2snO1xuaW1wb3J0IHsgTG9jYWxlU2VydmljZSB9IGZyb20gJ0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvbG9jYWxlJztcblxuLyoqXG4gKiBAZGVwcmVjYXRlZCBTaG91bGQgdXNlICdBbGlnbm1lbnRPcHRpb25zJyBmcm9tIEBzZW5pb3JzaXN0ZW1hcy9uZzItY3VycmVuY3ktbWFzayBpbnN0ZWFkXG4gKi9cbmV4cG9ydCBlbnVtIEJpZ251bWJlckFsaWdubWVudE9wdGlvbiB7XG4gICAgUklHSFQgPSAncmlnaHQnLFxuICAgIExFRlQgPSAnbGVmdCcsXG59XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgU2hvdWxkIHVzZSBCaWdOdW1iZXJJbnB1dCBkaXJlY3RpdmUgaW5zdGVhZFxuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ2lucHV0W3NCaWdudW1iZXJJbnB1dF0nLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIC8vIE5PU09OQVIgLSAnQmlnbnVtYmVySW5wdXREaXJlY3RpdmUnIGlzIGRlcHJlY2F0ZWQuXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBCaWdudW1iZXJJbnB1dERpcmVjdGl2ZSksXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBCaWdudW1iZXJJbnB1dERpcmVjdGl2ZSBleHRlbmRzIEN1cnJlbmN5TWFza0RpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBwcmVjaXNpb24gPSAxNTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHNjYWxlID0gMDtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGRlY2ltYWxTZXBhcmF0b3I/OiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyB0aG91c2FuZHNTZXBhcmF0b3I/OiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBhbGlnblRvOiAnbGVmdCcgfCAncmlnaHQnID0gJ2xlZnQnO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgYWxsb3dOZWdhdGl2ZSA9IHRydWU7XG5cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZygnYXR0ci5wbGFjZWhvbGRlcicpXG4gICAgcHVibGljIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xuXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLm1heExlbmd0aCcpXG4gICAgcHVibGljIG1heExlbmd0aD86IG51bWJlcjtcblxuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyBwYXN0ZVJlamVjdGVkID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlZ2V4ID0gL1xcZC87XG5cbiAgICAvL1RPRE86IEFqdXN0ZSBubyBuZzItY3VycmVuY3ktbWFzayBwYXJhIHV0aWxpemFyIGVzc2UgQ8OzZGlnbyAoYXBsaWNhZG8gbmEgdGFyZWZhOiBTRFMtMzA1KVxuICAgIC8vIHByaXZhdGUgcmVhZG9ubHkgX2FuZ3VsYXJDb21wb25lbnRzTG9jYWxlU2VydmljZTogTG9jYWxlU2VydmljZTtcblxuICAgIC8vIGNvbnN0cnVjdG9yKGluamVjdG9yOiBJbmplY3Rvcikge1xuICAgIC8vIHN1cGVyKGluamVjdG9yKTtcblxuICAgIC8vIHRoaXMuX2FuZ3VsYXJDb21wb25lbnRzTG9jYWxlU2VydmljZSA9IGluamVjdG9yLmdldChMb2NhbGVTZXJ2aWNlKTtcbiAgICAvLyB0aGlzLm9uTG9jYWxlU2VydmljZSgpO1xuICAgIC8vIH1cblxuICAgIC8vVE9ETzogIFJlbW92ZXIgZXNzZSBjb25zdHJ1Y3RvclxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBfZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICAgICAgX2tleVZhbHVlRGlmZmVyczogS2V5VmFsdWVEaWZmZXJzLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGxvY2FsZVNlcnZpY2U6IExvY2FsZVNlcnZpY2UsXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKFxuICAgICAgICAgICAgeyBhbGlnbjogJycsIGFsbG93TmVnYXRpdmU6IHRydWUsIGRlY2ltYWw6ICcnLCBwcmVjaXNpb246IDAsIHByZWZpeDogJycsIHN1ZmZpeDogJycsIHRob3VzYW5kczogJycgfSxcbiAgICAgICAgICAgIF9lbGVtZW50UmVmLFxuICAgICAgICAgICAgX2tleVZhbHVlRGlmZmVycyxcbiAgICAgICAgKTtcblxuICAgICAgICB0aGlzLm9uTG9jYWxlU2VydmljZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBvdmVycmlkZSBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVWYXJpYWJsZXMoKTtcblxuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgICAgIGNvbnN0IHBsYWNlaG9sZGVyQ2hhbmdlID0gY2hhbmdlc1sncGxhY2Vob2xkZXInXT8uY3VycmVudFZhbHVlO1xuICAgICAgICBpZiAoIXBsYWNlaG9sZGVyQ2hhbmdlICYmIHRoaXMuc2NhbGUpIHtcbiAgICAgICAgICAgIHRoaXMucGxhY2Vob2xkZXIgPSBgMCR7dGhpcy5kZWNpbWFsU2VwYXJhdG9yfSR7JycucGFkRW5kKHRoaXMuc2NhbGUsICcwJyl9YDtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGNvbmZpZ0NoYW5nZWQgPVxuICAgICAgICAgICAgY2hhbmdlc1snc2NhbGUnXSB8fFxuICAgICAgICAgICAgY2hhbmdlc1snZGVjaW1hbFNlcGFyYXRvciddIHx8XG4gICAgICAgICAgICBjaGFuZ2VzWyd0aG91c2FuZHNTZXBhcmF0b3InXSB8fFxuICAgICAgICAgICAgY2hhbmdlc1snYWxpZ25UbyddIHx8XG4gICAgICAgICAgICBjaGFuZ2VzWydwcmVjaXNpb24nXSB8fFxuICAgICAgICAgICAgY2hhbmdlc1snYWxsb3dOZWdhdGl2ZSddO1xuXG4gICAgICAgIGlmIChjb25maWdDaGFuZ2VkKSB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZVZhcmlhYmxlcygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcigncGFzdGUnLCBbJyRldmVudCddKVxuICAgIHB1YmxpYyBvblBhc3RlKGV2ZW50OiBDbGlwYm9hcmRFdmVudCk6IHZvaWQge1xuICAgICAgICBjb25zdCBwYXN0ZWRUZXh0ID0gZXZlbnQuY2xpcGJvYXJkRGF0YT8uZ2V0RGF0YSgndGV4dCcpID8/ICcnO1xuICAgICAgICBjb25zdCBudW1lcmljVGV4dCA9IHBhc3RlZFRleHRcbiAgICAgICAgICAgIC5yZXBsYWNlKG5ldyBSZWdFeHAoYFxcXFwke3RoaXMudGhvdXNhbmRzU2VwYXJhdG9yfWAsICdnJyksICcnKVxuICAgICAgICAgICAgLnJlcGxhY2UodGhpcy5kZWNpbWFsU2VwYXJhdG9yIGFzIHN0cmluZywgJy4nKTtcbiAgICAgICAgY29uc3QgW2ludFBhcnQsIGRlY2ltYWxQYXJ0ID0gJyddID0gbnVtZXJpY1RleHQuc3BsaXQoJy4nKTtcbiAgICAgICAgY29uc3QgdG90YWxEaWdpdHMgPSBpbnRQYXJ0LnJlcGxhY2UoL1xcRC9nLCAnJykubGVuZ3RoICsgZGVjaW1hbFBhcnQuc2xpY2UoMCwgdGhpcy5zY2FsZSkubGVuZ3RoO1xuXG4gICAgICAgIGlmICh0b3RhbERpZ2l0cyA+IHRoaXMucHJlY2lzaW9uKSB7XG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgdGhpcy5wYXN0ZVJlamVjdGVkLmVtaXQocGFzdGVkVGV4dCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBVcGRhdGUgdGhlIG9wdGlvbnMgdmFsdWVzIGFjY29yZGluZyB0byB0aGUgZGlyZWN0aXZlIGlucHV0IHZhbHVlcy5cbiAgICAgKi9cbiAgICBwcml2YXRlIHVwZGF0ZVZhcmlhYmxlcygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vcHRpb25zID0ge1xuICAgICAgICAgICAgYWxpZ246IHRoaXMuYWxpZ25UbyxcbiAgICAgICAgICAgIGRlY2ltYWw6IHRoaXMuZGVjaW1hbFNlcGFyYXRvcixcbiAgICAgICAgICAgIHRob3VzYW5kczogdGhpcy50aG91c2FuZHNTZXBhcmF0b3IsXG4gICAgICAgICAgICBwcmVjaXNpb246IHRoaXMuc2NhbGUgfHwgMCxcbiAgICAgICAgICAgIHByZWZpeDogJycsXG4gICAgICAgICAgICBzdWZmaXg6ICcnLFxuICAgICAgICAgICAgYWxsb3dOZWdhdGl2ZTogdGhpcy5hbGxvd05lZ2F0aXZlLFxuICAgICAgICB9O1xuICAgICAgICB0aGlzLmNhbGN1bGF0ZU1heExlbmd0aCgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlc3BvbnNpYmxlIHRvIGNhbGN1bGF0ZSB0aGUgZmllbGQgbWF4aW11bSBsZW5ndGggY29uc2lkZXJpbmcgdGhlIHNlcGFyYXRvcnMuXG4gICAgICovXG4gICAgcHJpdmF0ZSBjYWxjdWxhdGVNYXhMZW5ndGgoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGRlY1NlcExlbmd0aCA9IHRoaXMuZGVjaW1hbFNlcGFyYXRvcj8ubGVuZ3RoID8/IDA7XG4gICAgICAgIGNvbnN0IHRob1NlcExlbmd0aCA9IHRoaXMudGhvdXNhbmRzU2VwYXJhdG9yPy5sZW5ndGggPz8gMDtcblxuICAgICAgICBjb25zdCBESUdJVFNfR1JPVVBfU0laRSA9IDM7XG5cbiAgICAgICAgbGV0IG1heExlbmd0aCA9IHRoaXMucHJlY2lzaW9uICsgKHRoaXMuc2NhbGUgPyBkZWNTZXBMZW5ndGggOiAwKTtcbiAgICAgICAgbWF4TGVuZ3RoICs9IE1hdGguY2VpbCgodGhpcy5wcmVjaXNpb24gLSAodGhpcy5zY2FsZSA/IHRoaXMuc2NhbGUgOiAwKSkgLyBESUdJVFNfR1JPVVBfU0laRSAtIDEpICogdGhvU2VwTGVuZ3RoO1xuXG4gICAgICAgIHRoaXMubWF4TGVuZ3RoID0gbWF4TGVuZ3RoO1xuICAgIH1cblxuICAgIHByaXZhdGUgb25Mb2NhbGVTZXJ2aWNlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmxvY2FsZVNlcnZpY2VcbiAgICAgICAgICAgIC5nZXRMb2NhbGUoKVxuICAgICAgICAgICAgLnBpcGUoZmlyc3QoKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuZGVjaW1hbFNlcGFyYXRvciA9IHRoaXMuZGVjaW1hbFNlcGFyYXRvciA/PyB0aGlzLmxvY2FsZVNlcnZpY2UuZ2V0RGVjaW1hbFNlcGFyYXRvcigpO1xuICAgICAgICAgICAgICAgIHRoaXMudGhvdXNhbmRzU2VwYXJhdG9yID0gdGhpcy50aG91c2FuZHNTZXBhcmF0b3IgPz8gdGhpcy5sb2NhbGVTZXJ2aWNlLmdldEdyb3VwaW5nU2VwYXJhdG9yKCk7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG59XG5cbiJdfQ==