@po-ui/ng-templates 18.22.0 → 19.0.0-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (205) hide show
  1. package/fesm2022/po-ui-ng-templates.mjs +139 -122
  2. package/fesm2022/po-ui-ng-templates.mjs.map +1 -1
  3. package/lib/components/po-modal-password-recovery/po-modal-password-recovery-base.component.d.ts +1 -1
  4. package/lib/components/po-modal-password-recovery/po-modal-password-recovery.service.d.ts +1 -1
  5. package/lib/components/po-page-blocked-user/po-page-blocked-user-base.component.d.ts +1 -1
  6. package/lib/components/po-page-blocked-user/po-page-blocked-user.component.d.ts +1 -1
  7. package/lib/components/po-page-change-password/po-page-change-password-base.component.d.ts +1 -1
  8. package/lib/components/po-page-change-password/po-page-change-password.service.d.ts +1 -1
  9. package/lib/components/po-page-dynamic-search/po-advanced-filter/po-advanced-filter-base.component.d.ts +1 -1
  10. package/lib/components/po-page-dynamic-search/po-page-dynamic-search-base.component.d.ts +1 -1
  11. package/lib/components/po-page-dynamic-search/po-page-dynamic-search.component.d.ts +2 -2
  12. package/lib/components/po-page-dynamic-table/interfaces/po-page-dynamic-table-custom-action.interface.d.ts +1 -1
  13. package/lib/components/po-page-dynamic-table/interfaces/po-page-dynamic-table-custom-table-action.interface.d.ts +1 -1
  14. package/lib/components/po-page-dynamic-table/po-page-dynamic-list-base.component.d.ts +2 -2
  15. package/lib/components/po-page-dynamic-table/po-page-dynamic-table.component.d.ts +2 -2
  16. package/lib/components/po-page-job-scheduler/po-page-job-scheduler-base.component.d.ts +1 -1
  17. package/lib/components/po-page-job-scheduler/po-page-job-scheduler-execution/po-page-job-scheduler-execution.component.d.ts +2 -2
  18. package/lib/components/po-page-job-scheduler/po-page-job-scheduler-parameters/po-job-scheduler-parameters-template/po-job-scheduler-parameters-template.directive.d.ts +1 -1
  19. package/lib/components/po-page-job-scheduler/po-page-job-scheduler-summary/po-page-job-scheduler-summary.component.d.ts +1 -1
  20. package/lib/components/po-page-login/po-page-login-base.component.d.ts +1 -1
  21. package/lib/components/po-page-login/po-page-login.service.d.ts +1 -1
  22. package/package.json +13 -15
  23. package/po-ui-ng-templates-19.0.0-next.0.tgz +0 -0
  24. package/schematics/ng-add/index.js +2 -2
  25. package/schematics/ng-add/index.js.map +1 -1
  26. package/schematics/ng-generate/po-page-blocked-user/files/__path__/__name@dasherize__/__name@dasherize__.component.spec.ts.template +4 -2
  27. package/schematics/ng-generate/po-page-blocked-user/files/__path__/__name@dasherize__/__name@dasherize__.component.ts.template +2 -1
  28. package/schematics/ng-generate/po-page-blocked-user/files-standalone/__path__/__name@dasherize__/__name@dasherize__.component.spec.ts.template +4 -3
  29. package/schematics/ng-generate/po-page-blocked-user/files-standalone/__path__/__name@dasherize__/__name@dasherize__.component.ts.template +0 -1
  30. package/schematics/ng-generate/po-page-blocked-user/index.js +1 -1
  31. package/schematics/ng-generate/po-page-blocked-user/index.js.map +1 -1
  32. package/schematics/ng-generate/po-page-change-password/files/__path__/__name@dasherize__/__name@dasherize__.component.spec.ts.template +4 -2
  33. package/schematics/ng-generate/po-page-change-password/files/__path__/__name@dasherize__/__name@dasherize__.component.ts.template +2 -1
  34. package/schematics/ng-generate/po-page-change-password/files-standalone/__path__/__name@dasherize__/__name@dasherize__.component.spec.ts.template +4 -3
  35. package/schematics/ng-generate/po-page-change-password/files-standalone/__path__/__name@dasherize__/__name@dasherize__.component.ts.template +0 -1
  36. package/schematics/ng-generate/po-page-change-password/index.js +1 -1
  37. package/schematics/ng-generate/po-page-change-password/index.js.map +1 -1
  38. package/schematics/ng-generate/po-page-dynamic-detail/files/__path__/__name@dasherize__/__name@dasherize__.component.spec.ts.template +4 -2
  39. package/schematics/ng-generate/po-page-dynamic-detail/files/__path__/__name@dasherize__/__name@dasherize__.component.ts.template +2 -1
  40. package/schematics/ng-generate/po-page-dynamic-detail/files-standalone/__path__/__name@dasherize__/__name@dasherize__.component.spec.ts.template +4 -3
  41. package/schematics/ng-generate/po-page-dynamic-detail/files-standalone/__path__/__name@dasherize__/__name@dasherize__.component.ts.template +0 -1
  42. package/schematics/ng-generate/po-page-dynamic-detail/index.js +1 -1
  43. package/schematics/ng-generate/po-page-dynamic-detail/index.js.map +1 -1
  44. package/schematics/ng-generate/po-page-dynamic-edit/files/__path__/__name@dasherize__/__name@dasherize__.component.spec.ts.template +4 -2
  45. package/schematics/ng-generate/po-page-dynamic-edit/files/__path__/__name@dasherize__/__name@dasherize__.component.ts.template +2 -1
  46. package/schematics/ng-generate/po-page-dynamic-edit/files-standalone/__path__/__name@dasherize__/__name@dasherize__.component.spec.ts.template +4 -3
  47. package/schematics/ng-generate/po-page-dynamic-edit/files-standalone/__path__/__name@dasherize__/__name@dasherize__.component.ts.template +0 -1
  48. package/schematics/ng-generate/po-page-dynamic-edit/index.js +1 -1
  49. package/schematics/ng-generate/po-page-dynamic-edit/index.js.map +1 -1
  50. package/schematics/ng-generate/po-page-dynamic-search/files/__path__/__name@dasherize__/__name@dasherize__.component.spec.ts.template +4 -2
  51. package/schematics/ng-generate/po-page-dynamic-search/files/__path__/__name@dasherize__/__name@dasherize__.component.ts.template +2 -1
  52. package/schematics/ng-generate/po-page-dynamic-search/files-standalone/__path__/__name@dasherize__/__name@dasherize__.component.spec.ts.template +4 -3
  53. package/schematics/ng-generate/po-page-dynamic-search/files-standalone/__path__/__name@dasherize__/__name@dasherize__.component.ts.template +0 -1
  54. package/schematics/ng-generate/po-page-dynamic-search/index.js +1 -1
  55. package/schematics/ng-generate/po-page-dynamic-search/index.js.map +1 -1
  56. package/schematics/ng-generate/po-page-dynamic-table/files/__path__/__name@dasherize__/__name@dasherize__.component.spec.ts.template +4 -2
  57. package/schematics/ng-generate/po-page-dynamic-table/files/__path__/__name@dasherize__/__name@dasherize__.component.ts.template +2 -1
  58. package/schematics/ng-generate/po-page-dynamic-table/files-standalone/__path__/__name@dasherize__/__name@dasherize__.component.spec.ts.template +4 -3
  59. package/schematics/ng-generate/po-page-dynamic-table/files-standalone/__path__/__name@dasherize__/__name@dasherize__.component.ts.template +0 -1
  60. package/schematics/ng-generate/po-page-dynamic-table/index.js +1 -1
  61. package/schematics/ng-generate/po-page-dynamic-table/index.js.map +1 -1
  62. package/schematics/ng-generate/po-page-job-scheduler/files/__path__/__name@dasherize__/__name@dasherize__.component.spec.ts.template +4 -2
  63. package/schematics/ng-generate/po-page-job-scheduler/files/__path__/__name@dasherize__/__name@dasherize__.component.ts.template +2 -1
  64. package/schematics/ng-generate/po-page-job-scheduler/files-standalone/__path__/__name@dasherize__/__name@dasherize__.component.spec.ts.template +4 -3
  65. package/schematics/ng-generate/po-page-job-scheduler/files-standalone/__path__/__name@dasherize__/__name@dasherize__.component.ts.template +0 -1
  66. package/schematics/ng-generate/po-page-job-scheduler/index.js +1 -1
  67. package/schematics/ng-generate/po-page-job-scheduler/index.js.map +1 -1
  68. package/schematics/ng-generate/po-page-login/files/__path__/__name@dasherize__/__name@dasherize__.component.spec.ts.template +4 -2
  69. package/schematics/ng-generate/po-page-login/files/__path__/__name@dasherize__/__name@dasherize__.component.ts.template +2 -1
  70. package/schematics/ng-generate/po-page-login/files-standalone/__path__/__name@dasherize__/__name@dasherize__.component.spec.ts.template +4 -3
  71. package/schematics/ng-generate/po-page-login/files-standalone/__path__/__name@dasherize__/__name@dasherize__.component.ts.template +0 -1
  72. package/schematics/ng-generate/po-page-login/index.js +1 -1
  73. package/schematics/ng-generate/po-page-login/index.js.map +1 -1
  74. package/esm2022/lib/components/components.module.mjs +0 -84
  75. package/esm2022/lib/components/index.mjs +0 -12
  76. package/esm2022/lib/components/po-modal-password-recovery/enums/po-modal-password-recovery-modal-content.enum.mjs +0 -17
  77. package/esm2022/lib/components/po-modal-password-recovery/enums/po-modal-password-recovery-type.enum.mjs +0 -17
  78. package/esm2022/lib/components/po-modal-password-recovery/index.mjs +0 -8
  79. package/esm2022/lib/components/po-modal-password-recovery/interfaces/po-modal-password-recovery.interface.mjs +0 -2
  80. package/esm2022/lib/components/po-modal-password-recovery/literals/i18n/po-modal-password-recovery-literals.mjs +0 -119
  81. package/esm2022/lib/components/po-modal-password-recovery/po-modal-password-recovery-base.component.mjs +0 -293
  82. package/esm2022/lib/components/po-modal-password-recovery/po-modal-password-recovery-error-message/po-modal-password-recovery-error-message.component.mjs +0 -34
  83. package/esm2022/lib/components/po-modal-password-recovery/po-modal-password-recovery.component.mjs +0 -451
  84. package/esm2022/lib/components/po-modal-password-recovery/po-modal-password-recovery.module.mjs +0 -29
  85. package/esm2022/lib/components/po-modal-password-recovery/po-modal-password-recovery.service.mjs +0 -18
  86. package/esm2022/lib/components/po-page-background/index.mjs +0 -3
  87. package/esm2022/lib/components/po-page-background/po-page-background.component.mjs +0 -191
  88. package/esm2022/lib/components/po-page-background/po-page-background.module.mjs +0 -27
  89. package/esm2022/lib/components/po-page-blocked-user/enums/po-page-blocked-user-reason.enum.mjs +0 -17
  90. package/esm2022/lib/components/po-page-blocked-user/index.mjs +0 -8
  91. package/esm2022/lib/components/po-page-blocked-user/interfaces/po-page-blocked-user-reason-params.interface.mjs +0 -2
  92. package/esm2022/lib/components/po-page-blocked-user/literals/i18n/po-page-blocked-user-literals.mjs +0 -78
  93. package/esm2022/lib/components/po-page-blocked-user/po-page-blocked-user-base.component.mjs +0 -197
  94. package/esm2022/lib/components/po-page-blocked-user/po-page-blocked-user-contacts/po-page-blocked-user-contacts.component.mjs +0 -105
  95. package/esm2022/lib/components/po-page-blocked-user/po-page-blocked-user-reason/po-page-blocked-user-reason.component.mjs +0 -107
  96. package/esm2022/lib/components/po-page-blocked-user/po-page-blocked-user.component.mjs +0 -108
  97. package/esm2022/lib/components/po-page-blocked-user/po-page-blocked-user.module.mjs +0 -29
  98. package/esm2022/lib/components/po-page-change-password/index.mjs +0 -7
  99. package/esm2022/lib/components/po-page-change-password/interfaces/po-page-change-password-recovery.interface.mjs +0 -2
  100. package/esm2022/lib/components/po-page-change-password/interfaces/po-page-change-password-requirement.interface.mjs +0 -2
  101. package/esm2022/lib/components/po-page-change-password/interfaces/po-page-change-password.interface.mjs +0 -2
  102. package/esm2022/lib/components/po-page-change-password/literals/i18n/po-page-change-password-literals.mjs +0 -79
  103. package/esm2022/lib/components/po-page-change-password/po-page-change-password-base.component.mjs +0 -300
  104. package/esm2022/lib/components/po-page-change-password/po-page-change-password.component.mjs +0 -401
  105. package/esm2022/lib/components/po-page-change-password/po-page-change-password.module.mjs +0 -30
  106. package/esm2022/lib/components/po-page-change-password/po-page-change-password.service.mjs +0 -18
  107. package/esm2022/lib/components/po-page-dynamic-detail/index.mjs +0 -10
  108. package/esm2022/lib/components/po-page-dynamic-detail/interfaces/po-page-dynamic-detail-actions.interface.mjs +0 -2
  109. package/esm2022/lib/components/po-page-dynamic-detail/interfaces/po-page-dynamic-detail-before-back.interface.mjs +0 -2
  110. package/esm2022/lib/components/po-page-dynamic-detail/interfaces/po-page-dynamic-detail-before-edit.interface.mjs +0 -2
  111. package/esm2022/lib/components/po-page-dynamic-detail/interfaces/po-page-dynamic-detail-before-remove.interface.mjs +0 -2
  112. package/esm2022/lib/components/po-page-dynamic-detail/interfaces/po-page-dynamic-detail-field.interface.mjs +0 -2
  113. package/esm2022/lib/components/po-page-dynamic-detail/interfaces/po-page-dynamic-detail-metadata.interface.mjs +0 -2
  114. package/esm2022/lib/components/po-page-dynamic-detail/interfaces/po-page-dynamic-detail-options.interface.mjs +0 -2
  115. package/esm2022/lib/components/po-page-dynamic-detail/po-page-dynamic-detail-actions.service.mjs +0 -44
  116. package/esm2022/lib/components/po-page-dynamic-detail/po-page-dynamic-detail.component.mjs +0 -546
  117. package/esm2022/lib/components/po-page-dynamic-detail/po-page-dynamic-detail.module.mjs +0 -54
  118. package/esm2022/lib/components/po-page-dynamic-edit/index.mjs +0 -11
  119. package/esm2022/lib/components/po-page-dynamic-edit/interfaces/po-page-dynamic-edit-actions.interface.mjs +0 -2
  120. package/esm2022/lib/components/po-page-dynamic-edit/interfaces/po-page-dynamic-edit-before-cancel.interface.mjs +0 -2
  121. package/esm2022/lib/components/po-page-dynamic-edit/interfaces/po-page-dynamic-edit-before-save-new.interface.mjs +0 -2
  122. package/esm2022/lib/components/po-page-dynamic-edit/interfaces/po-page-dynamic-edit-before-save.interface.mjs +0 -2
  123. package/esm2022/lib/components/po-page-dynamic-edit/interfaces/po-page-dynamic-edit-field.interface.mjs +0 -2
  124. package/esm2022/lib/components/po-page-dynamic-edit/interfaces/po-page-dynamic-edit-literals.interface.mjs +0 -2
  125. package/esm2022/lib/components/po-page-dynamic-edit/interfaces/po-page-dynamic-edit-metadata.interface.mjs +0 -2
  126. package/esm2022/lib/components/po-page-dynamic-edit/interfaces/po-page-dynamic-edit-options.interface.mjs +0 -2
  127. package/esm2022/lib/components/po-page-dynamic-edit/po-page-dynamic-edit-actions.service.mjs +0 -44
  128. package/esm2022/lib/components/po-page-dynamic-edit/po-page-dynamic-edit.component.mjs +0 -889
  129. package/esm2022/lib/components/po-page-dynamic-edit/po-page-dynamic-edit.module.mjs +0 -60
  130. package/esm2022/lib/components/po-page-dynamic-search/index.mjs +0 -7
  131. package/esm2022/lib/components/po-page-dynamic-search/po-advanced-filter/po-advanced-filter-base.component.mjs +0 -133
  132. package/esm2022/lib/components/po-page-dynamic-search/po-advanced-filter/po-advanced-filter-literals.interface.mjs +0 -2
  133. package/esm2022/lib/components/po-page-dynamic-search/po-advanced-filter/po-advanced-filter.component.mjs +0 -76
  134. package/esm2022/lib/components/po-page-dynamic-search/po-page-dynamic-search-base.component.mjs +0 -365
  135. package/esm2022/lib/components/po-page-dynamic-search/po-page-dynamic-search-filters.interface.mjs +0 -2
  136. package/esm2022/lib/components/po-page-dynamic-search/po-page-dynamic-search-literals.interface.mjs +0 -2
  137. package/esm2022/lib/components/po-page-dynamic-search/po-page-dynamic-search-options.interface.mjs +0 -2
  138. package/esm2022/lib/components/po-page-dynamic-search/po-page-dynamic-search.component.mjs +0 -349
  139. package/esm2022/lib/components/po-page-dynamic-search/po-page-dynamic-search.interface.mjs +0 -2
  140. package/esm2022/lib/components/po-page-dynamic-search/po-page-dynamic-search.module.mjs +0 -52
  141. package/esm2022/lib/components/po-page-dynamic-table/index.mjs +0 -16
  142. package/esm2022/lib/components/po-page-dynamic-table/interfaces/po-page-dynamic-table-actions.interface.mjs +0 -2
  143. package/esm2022/lib/components/po-page-dynamic-table/interfaces/po-page-dynamic-table-before-detail.interface.mjs +0 -2
  144. package/esm2022/lib/components/po-page-dynamic-table/interfaces/po-page-dynamic-table-before-duplicate.interface.mjs +0 -2
  145. package/esm2022/lib/components/po-page-dynamic-table/interfaces/po-page-dynamic-table-before-edit.interface.mjs +0 -2
  146. package/esm2022/lib/components/po-page-dynamic-table/interfaces/po-page-dynamic-table-before-new.interface.mjs +0 -2
  147. package/esm2022/lib/components/po-page-dynamic-table/interfaces/po-page-dynamic-table-before-remove-all.interface.mjs +0 -2
  148. package/esm2022/lib/components/po-page-dynamic-table/interfaces/po-page-dynamic-table-before-remove.interface.mjs +0 -2
  149. package/esm2022/lib/components/po-page-dynamic-table/interfaces/po-page-dynamic-table-custom-action.interface.mjs +0 -2
  150. package/esm2022/lib/components/po-page-dynamic-table/interfaces/po-page-dynamic-table-custom-table-action.interface.mjs +0 -2
  151. package/esm2022/lib/components/po-page-dynamic-table/interfaces/po-page-dynamic-table-field.interface.mjs +0 -2
  152. package/esm2022/lib/components/po-page-dynamic-table/interfaces/po-page-dynamic-table-filters.interface.mjs +0 -2
  153. package/esm2022/lib/components/po-page-dynamic-table/interfaces/po-page-dynamic-table-metadata.interface.mjs +0 -2
  154. package/esm2022/lib/components/po-page-dynamic-table/interfaces/po-page-dynamic-table-options.interface.mjs +0 -2
  155. package/esm2022/lib/components/po-page-dynamic-table/po-page-dynamic-list-base.component.mjs +0 -271
  156. package/esm2022/lib/components/po-page-dynamic-table/po-page-dynamic-table-actions.service.mjs +0 -59
  157. package/esm2022/lib/components/po-page-dynamic-table/po-page-dynamic-table-literals.mjs +0 -63
  158. package/esm2022/lib/components/po-page-dynamic-table/po-page-dynamic-table.component.mjs +0 -1257
  159. package/esm2022/lib/components/po-page-dynamic-table/po-page-dynamic-table.module.mjs +0 -50
  160. package/esm2022/lib/components/po-page-job-scheduler/index.mjs +0 -6
  161. package/esm2022/lib/components/po-page-job-scheduler/interfaces/po-job-scheduler-internal.interface.mjs +0 -2
  162. package/esm2022/lib/components/po-page-job-scheduler/interfaces/po-job-scheduler.interface.mjs +0 -2
  163. package/esm2022/lib/components/po-page-job-scheduler/po-page-job-scheduler-base.component.mjs +0 -302
  164. package/esm2022/lib/components/po-page-job-scheduler/po-page-job-scheduler-execution/po-page-job-scheduler-execution.component.mjs +0 -393
  165. package/esm2022/lib/components/po-page-job-scheduler/po-page-job-scheduler-internal.mjs +0 -13
  166. package/esm2022/lib/components/po-page-job-scheduler/po-page-job-scheduler-literals.mjs +0 -195
  167. package/esm2022/lib/components/po-page-job-scheduler/po-page-job-scheduler-lookup.service.mjs +0 -22
  168. package/esm2022/lib/components/po-page-job-scheduler/po-page-job-scheduler-parameters/index.mjs +0 -2
  169. package/esm2022/lib/components/po-page-job-scheduler/po-page-job-scheduler-parameters/po-job-scheduler-parameters-template/index.mjs +0 -2
  170. package/esm2022/lib/components/po-page-job-scheduler/po-page-job-scheduler-parameters/po-job-scheduler-parameters-template/po-job-scheduler-parameters-template.directive.mjs +0 -92
  171. package/esm2022/lib/components/po-page-job-scheduler/po-page-job-scheduler-parameters/po-page-job-scheduler-parameters.component.mjs +0 -79
  172. package/esm2022/lib/components/po-page-job-scheduler/po-page-job-scheduler-summary/index.mjs +0 -2
  173. package/esm2022/lib/components/po-page-job-scheduler/po-page-job-scheduler-summary/po-job-scheduler-summary-template/index.mjs +0 -2
  174. package/esm2022/lib/components/po-page-job-scheduler/po-page-job-scheduler-summary/po-job-scheduler-summary-template/po-job-scheduler-summary-template.directive.mjs +0 -44
  175. package/esm2022/lib/components/po-page-job-scheduler/po-page-job-scheduler-summary/po-page-job-scheduler-summary.component.mjs +0 -211
  176. package/esm2022/lib/components/po-page-job-scheduler/po-page-job-scheduler.component.mjs +0 -418
  177. package/esm2022/lib/components/po-page-job-scheduler/po-page-job-scheduler.module.mjs +0 -85
  178. package/esm2022/lib/components/po-page-job-scheduler/po-page-job-scheduler.service.mjs +0 -224
  179. package/esm2022/lib/components/po-page-login/enums/po-page-login-authentication-type.enum.mjs +0 -15
  180. package/esm2022/lib/components/po-page-login/index.mjs +0 -8
  181. package/esm2022/lib/components/po-page-login/interfaces/po-page-login-custom-field.interface.mjs +0 -2
  182. package/esm2022/lib/components/po-page-login/interfaces/po-page-login-literals.interface.mjs +0 -2
  183. package/esm2022/lib/components/po-page-login/interfaces/po-page-login-recovery.interface.mjs +0 -2
  184. package/esm2022/lib/components/po-page-login/interfaces/po-page-login.interface.mjs +0 -2
  185. package/esm2022/lib/components/po-page-login/po-page-login-base.component.mjs +0 -1099
  186. package/esm2022/lib/components/po-page-login/po-page-login-popover/po-page-login-popover.component.mjs +0 -137
  187. package/esm2022/lib/components/po-page-login/po-page-login.component.mjs +0 -483
  188. package/esm2022/lib/components/po-page-login/po-page-login.module.mjs +0 -31
  189. package/esm2022/lib/components/po-page-login/po-page-login.service.mjs +0 -32
  190. package/esm2022/lib/index.mjs +0 -4
  191. package/esm2022/lib/po-templates.module.mjs +0 -18
  192. package/esm2022/lib/services/index.mjs +0 -4
  193. package/esm2022/lib/services/po-page-customization/index.mjs +0 -4
  194. package/esm2022/lib/services/po-page-customization/po-page-customization.module.mjs +0 -23
  195. package/esm2022/lib/services/po-page-customization/po-page-customization.service.mjs +0 -86
  196. package/esm2022/lib/services/po-page-customization/po-page-dynamic-options.interface.mjs +0 -2
  197. package/esm2022/lib/services/po-page-dynamic/index.mjs +0 -3
  198. package/esm2022/lib/services/po-page-dynamic/po-page-dynamic-literals.interface.mjs +0 -2
  199. package/esm2022/lib/services/po-page-dynamic/po-page-dynamic.module.mjs +0 -23
  200. package/esm2022/lib/services/po-page-dynamic/po-page-dynamic.service.mjs +0 -106
  201. package/esm2022/lib/services/services.module.mjs +0 -18
  202. package/esm2022/lib/utils/util.mjs +0 -428
  203. package/esm2022/po-ui-ng-templates.mjs +0 -5
  204. package/esm2022/public-api.mjs +0 -2
  205. package/po-ui-ng-templates-18.22.0.tgz +0 -0
@@ -1,349 +0,0 @@
1
- import { Component, ViewChild } from '@angular/core';
2
- import { PoDynamicFieldType, PoPageListComponent } from '@po-ui/ng-components';
3
- import { capitalizeFirstLetter, getBrowserLanguage } from '../../utils/util';
4
- import { PoAdvancedFilterComponent } from './po-advanced-filter/po-advanced-filter.component';
5
- import { PoPageDynamicSearchBaseComponent } from './po-page-dynamic-search-base.component';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "@po-ui/ng-components";
8
- import * as i2 from "../../services/po-page-customization/po-page-customization.service";
9
- import * as i3 from "./po-advanced-filter/po-advanced-filter.component";
10
- const _c0 = ["*"];
11
- /**
12
- * @docsExtends PoPageDynamicSearchBaseComponent
13
- *
14
- * @example
15
- *
16
- * <example name="po-page-dynamic-search-basic" title="PO Page Dynamic Search Basic">
17
- * <file name="sample-po-page-dynamic-search-basic/sample-po-page-dynamic-search-basic.component.html"> </file>
18
- * <file name="sample-po-page-dynamic-search-basic/sample-po-page-dynamic-search-basic.component.ts"> </file>
19
- * </example>
20
- *
21
- * <example name="po-page-dynamic-search-hiring-processes" title="PO Page Dynamic Search - Hiring processes">
22
- * <file name="sample-po-page-dynamic-search-hiring-processes/sample-po-page-dynamic-search-hiring-processes.component.html"> </file>
23
- * <file name="sample-po-page-dynamic-search-hiring-processes/sample-po-page-dynamic-search-hiring-processes.component.ts"> </file>
24
- * <file name="sample-po-page-dynamic-search-hiring-processes/sample-po-page-dynamic-search-hiring-processes.service.ts"> </file>
25
- * </example>
26
- */
27
- export class PoPageDynamicSearchComponent extends PoPageDynamicSearchBaseComponent {
28
- languageService;
29
- poPageCustomizationService;
30
- changeDetector;
31
- poAdvancedFilter;
32
- poPageList;
33
- loadSubscription;
34
- _disclaimerGroup = {
35
- remove: this.onRemoveDisclaimer.bind(this),
36
- removeAll: this.onRemoveAllDisclaimers.bind(this),
37
- disclaimers: [],
38
- title: this.literals.disclaimerGroupTitle,
39
- hideRemoveAll: this.hideRemoveAllDisclaimer
40
- };
41
- _filterSettings = {
42
- action: this.onAction.bind(this),
43
- advancedAction: this.onAdvancedAction.bind(this),
44
- placeholder: this.literals.searchPlaceholder,
45
- width: this.quickSearchWidth
46
- };
47
- constructor(languageService, poPageCustomizationService, changeDetector) {
48
- super(languageService);
49
- this.languageService = languageService;
50
- this.poPageCustomizationService = poPageCustomizationService;
51
- this.changeDetector = changeDetector;
52
- }
53
- get disclaimerGroup() {
54
- return Object.assign({}, this._disclaimerGroup, {
55
- title: this.literals.disclaimerGroupTitle,
56
- hideRemoveAll: this.hideRemoveAllDisclaimer
57
- });
58
- }
59
- get filterSettings() {
60
- const thereAreValidFilters = this.filters.length > 0 && this.filters.some(filter => filter.visible === true || filter.visible === undefined);
61
- this._filterSettings.advancedAction = thereAreValidFilters ? this.onAdvancedAction.bind(this) : undefined;
62
- return Object.assign({}, this._filterSettings, {
63
- placeholder: this.literals.searchPlaceholder,
64
- width: this.quickSearchWidth
65
- });
66
- }
67
- ngOnInit() {
68
- this.setAdvancedFilterLiterals(this.literals);
69
- if (this.onLoad) {
70
- this.loadOptionsOnInitialize(this.onLoad);
71
- }
72
- //coloca o disclaimer inicial caso envie p-quick-search-value
73
- if (this.quickSearchValue) {
74
- this.onAction(this.quickSearchValue, true);
75
- }
76
- }
77
- ngOnDestroy() {
78
- if (this.loadSubscription) {
79
- this.loadSubscription.unsubscribe();
80
- }
81
- }
82
- ngAfterViewInit() {
83
- if (this.stringify(this.filters) !== this.stringify(this.previousFilters)) {
84
- this.onChangeFilters(this.filters);
85
- this.previousFilters = [...this.filters];
86
- }
87
- }
88
- ngOnChanges(changes) {
89
- const visibleFixedFilters = changes.visibleFixedFilters;
90
- if (visibleFixedFilters &&
91
- visibleFixedFilters.currentValue !== visibleFixedFilters.previousValue &&
92
- this.filters.some(filter => filter.fixed)) {
93
- this.onChangeFilters(this.filters);
94
- this.previousFilters = [...this.filters];
95
- }
96
- }
97
- onChangeFilters(filters) {
98
- const filterObjectWithValue = filters
99
- .filter(filter => filter.initValue)
100
- .reduce((prev, current) => ({ ...prev, ...{ [current.property]: current.initValue } }), {});
101
- if (Object.keys(filterObjectWithValue).length) {
102
- this.onAdvancedSearch({ filter: filterObjectWithValue });
103
- }
104
- }
105
- onAction(quickFilter, quickSearchValue) {
106
- const disclaimerQuickSearchUpdated = {
107
- property: 'search',
108
- label: `${this.literals.quickSearchLabel} ${quickFilter}`,
109
- value: quickFilter,
110
- hideClose: this.hideCloseDisclaimers.some(hideCloseDisclaimer => hideCloseDisclaimer === 'search') || false
111
- };
112
- const getDisclaimersWithConcatFilters = () => [
113
- ...this.getDisclaimersWithoutQuickSearch(),
114
- disclaimerQuickSearchUpdated
115
- ];
116
- this._disclaimerGroup.disclaimers = this.concatFilters
117
- ? getDisclaimersWithConcatFilters()
118
- : [disclaimerQuickSearchUpdated];
119
- if (this.quickSearch.observers && this.quickSearch.observers.length > 0 && !quickSearchValue) {
120
- this.quickSearch.emit(quickFilter);
121
- }
122
- if (this.keepFilters && !this.concatFilters) {
123
- this.filters.forEach(element => delete element.initValue);
124
- }
125
- this.changeDetector.detectChanges();
126
- }
127
- onAdvancedAction() {
128
- this.poAdvancedFilter.open();
129
- }
130
- onAdvancedSearch(filteredItems, isAdvancedSearch) {
131
- const { filter, optionsService } = filteredItems;
132
- const visibleFilters = this.visibleFixedFilters === false
133
- ? this.filters.filter(filter => !('fixed' in filter) || !filter.fixed)
134
- : this.filters;
135
- this._disclaimerGroup.disclaimers = this.setDisclaimers(filter, optionsService, visibleFilters);
136
- this.setFilters(filter);
137
- this.advancedSearch.emit(filter);
138
- if (isAdvancedSearch) {
139
- this.poPageList.clearInputSearch();
140
- }
141
- }
142
- getDisclaimersWithoutQuickSearch() {
143
- const quickSearchProperty = 'search';
144
- return this._disclaimerGroup.disclaimers.filter(item => item.property !== quickSearchProperty);
145
- }
146
- setFilters(filters) {
147
- const formattedFilters = this.convertToFilters(filters);
148
- this.filters.forEach(element => {
149
- const compatibleObject = formattedFilters.find(item => item.property === element.property);
150
- if (compatibleObject) {
151
- element.initValue = compatibleObject.value;
152
- }
153
- else {
154
- delete element.initValue;
155
- }
156
- });
157
- }
158
- convertToFilters(filters) {
159
- return Object.entries(filters).map(([property, value]) => ({ property, value }));
160
- }
161
- optionsServiceDisclaimerLabel(value, optionsServiceObjectsList) {
162
- const optionServiceMatch = optionsServiceObjectsList.find(option => option.value === value);
163
- return optionServiceMatch.label || optionServiceMatch.value;
164
- }
165
- applyDisclaimerLabelValue(field, filterValue) {
166
- const values = Array.isArray(filterValue) ? filterValue : [filterValue];
167
- const labels = values.map(value => {
168
- const filteredField = field.options.find(option => option.value === value || option === value);
169
- if (filteredField) {
170
- return filteredField.label || filteredField.value || filteredField;
171
- }
172
- });
173
- return labels.join(', ');
174
- }
175
- formatDate(date) {
176
- const year = parseInt(date.substr(0, 4), 10);
177
- const month = parseInt(date.substr(5, 2), 10);
178
- const day = parseInt(date.substr(8, 2), 10);
179
- return new Date(year, month - 1, day).toLocaleDateString(getBrowserLanguage());
180
- }
181
- formatArrayToObjectKeyValue(filters) {
182
- const formattedObject = filters.reduce((result, item) => Object.assign(result, { [item.property]: item.value || item.initValue }), {});
183
- Object.keys(formattedObject).forEach(key => {
184
- if (!formattedObject[key]) {
185
- delete formattedObject[key];
186
- }
187
- });
188
- return formattedObject;
189
- }
190
- formatValueToCurrency(field, value) {
191
- const language = this.languageService.getLanguage();
192
- return new Intl.NumberFormat(field.locale ? field.locale : language, {
193
- minimumFractionDigits: 2
194
- }).format(value);
195
- }
196
- getFieldByProperty(fields, fieldName) {
197
- return fields.find((field) => field.property === fieldName);
198
- }
199
- getFilterValueToDisclaimer(field, value, optionsServiceObjectsList) {
200
- if (field.optionsService && optionsServiceObjectsList) {
201
- return this.optionsServiceDisclaimerLabel(value, optionsServiceObjectsList);
202
- }
203
- if (field.type === PoDynamicFieldType.Currency && value) {
204
- return this.formatValueToCurrency(field, value);
205
- }
206
- if (field.type === PoDynamicFieldType.Date) {
207
- return field.range ? this.formatDate(value.start) + ' - ' + this.formatDate(value.end) : this.formatDate(value);
208
- }
209
- if (field.options && value) {
210
- return this.applyDisclaimerLabelValue(field, value);
211
- }
212
- return value;
213
- }
214
- emitChangesDisclaimers(currentDisclaimers) {
215
- this.changeDisclaimers.emit(currentDisclaimers);
216
- this.setFilters(this.formatArrayToObjectKeyValue(currentDisclaimers));
217
- }
218
- onRemoveAllDisclaimers() {
219
- const disclaimersToKeep = this.getFixedFiltersDisclaimers();
220
- this.emitChangesDisclaimers(disclaimersToKeep);
221
- }
222
- onRemoveDisclaimer(removeData) {
223
- const { currentDisclaimers } = removeData;
224
- const updatedDisclaimers = [...currentDisclaimers, ...this.getFixedFiltersDisclaimers(currentDisclaimers)];
225
- this.emitChangesDisclaimers(updatedDisclaimers);
226
- }
227
- getFixedFiltersDisclaimers(currentDisclaimers) {
228
- const fixedFilters = this.filters.filter(filter => filter.fixed === true &&
229
- filter.hasOwnProperty('initValue') &&
230
- filter.initValue !== undefined &&
231
- filter.initValue !== null);
232
- return fixedFilters
233
- .map(filter => ({
234
- property: filter.property,
235
- value: filter.initValue,
236
- label: `${filter.label}: ${filter.initValue}`,
237
- hideClose: true
238
- }))
239
- .filter(fixedFilter => !currentDisclaimers || !currentDisclaimers.some(disclaimer => disclaimer.property === fixedFilter.property));
240
- }
241
- setDisclaimers(filters, optionsServiceObjects, visibleFilters) {
242
- const disclaimers = [];
243
- const properties = Object.keys(filters);
244
- const visibleProperties = visibleFilters ? visibleFilters.map(filter => filter.property) : properties;
245
- properties.forEach(property => {
246
- if (visibleProperties.includes(property)) {
247
- const field = this.getFieldByProperty(this.filters, property);
248
- const label = field.label || capitalizeFirstLetter(field.property);
249
- const value = filters[property];
250
- const hideClose = this.hideCloseDisclaimers.some(hideCloseDisclaimer => hideCloseDisclaimer === property) || false;
251
- const valueDisplayedOnTheDisclaimerLabel = this.getFilterValueToDisclaimer(field, value, optionsServiceObjects);
252
- if (valueDisplayedOnTheDisclaimerLabel !== '') {
253
- disclaimers.push({
254
- label: `${label}: ${valueDisplayedOnTheDisclaimerLabel}`,
255
- property,
256
- value,
257
- hideClose
258
- });
259
- }
260
- }
261
- });
262
- return disclaimers;
263
- }
264
- loadOptionsOnInitialize(onLoad) {
265
- this.loadSubscription = this.getPoDynamicPageOptions(onLoad).subscribe(responsePoOption => this.poPageCustomizationService.changeOriginalOptionsToNewOptions(this, responsePoOption));
266
- }
267
- getPoDynamicPageOptions(onLoad) {
268
- const originalOption = {
269
- title: this.title,
270
- actions: this.actions,
271
- breadcrumb: this.breadcrumb,
272
- filters: this.filters,
273
- keepFilters: this.keepFilters,
274
- concatFilters: this.concatFilters,
275
- hideRemoveAllDisclaimer: this.hideRemoveAllDisclaimer,
276
- hideCloseDisclaimers: this.hideCloseDisclaimers,
277
- quickSearchWidth: this.quickSearchWidth
278
- };
279
- const pageOptionSchema = {
280
- schema: [
281
- {
282
- nameProp: 'filters',
283
- merge: true,
284
- keyForMerge: 'property'
285
- },
286
- {
287
- nameProp: 'actions',
288
- merge: true,
289
- keyForMerge: 'label'
290
- },
291
- {
292
- nameProp: 'breadcrumb'
293
- },
294
- {
295
- nameProp: 'title'
296
- },
297
- {
298
- nameProp: 'keepFilters'
299
- },
300
- {
301
- nameProp: 'concatFilters'
302
- },
303
- {
304
- nameProp: 'hideRemoveAllDisclaimer'
305
- },
306
- {
307
- nameProp: 'hideCloseDisclaimers'
308
- },
309
- {
310
- nameProp: 'quickSearchWidth'
311
- }
312
- ]
313
- };
314
- return this.poPageCustomizationService.getCustomOptions(onLoad, originalOption, pageOptionSchema);
315
- }
316
- static ɵfac = function PoPageDynamicSearchComponent_Factory(t) { return new (t || PoPageDynamicSearchComponent)(i0.ɵɵdirectiveInject(i1.PoLanguageService), i0.ɵɵdirectiveInject(i2.PoPageCustomizationService), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); };
317
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PoPageDynamicSearchComponent, selectors: [["po-page-dynamic-search"]], viewQuery: function PoPageDynamicSearchComponent_Query(rf, ctx) { if (rf & 1) {
318
- i0.ɵɵviewQuery(PoAdvancedFilterComponent, 7);
319
- i0.ɵɵviewQuery(PoPageListComponent, 7);
320
- } if (rf & 2) {
321
- let _t;
322
- i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.poAdvancedFilter = _t.first);
323
- i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.poPageList = _t.first);
324
- } }, features: [i0.ɵɵInheritDefinitionFeature, i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 4, vars: 9, consts: [["poPageList", ""], [3, "p-actions", "p-breadcrumb", "p-disclaimer-group", "p-filter", "p-title", "p-quick-search-value"], [3, "p-search-event", "p-filters", "p-keep-filters", "p-literals"]], template: function PoPageDynamicSearchComponent_Template(rf, ctx) { if (rf & 1) {
325
- const _r1 = i0.ɵɵgetCurrentView();
326
- i0.ɵɵprojectionDef();
327
- i0.ɵɵelementStart(0, "po-page-list", 1, 0)(2, "po-advanced-filter", 2);
328
- i0.ɵɵlistener("p-search-event", function PoPageDynamicSearchComponent_Template_po_advanced_filter_p_search_event_2_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.onAdvancedSearch($event, true)); });
329
- i0.ɵɵelementEnd();
330
- i0.ɵɵprojection(3);
331
- i0.ɵɵelementEnd();
332
- } if (rf & 2) {
333
- i0.ɵɵproperty("p-actions", ctx.actions)("p-breadcrumb", ctx.breadcrumb)("p-disclaimer-group", ctx.disclaimerGroup)("p-filter", ctx.filterSettings)("p-title", ctx.title)("p-quick-search-value", ctx.quickSearchValue);
334
- i0.ɵɵadvance(2);
335
- i0.ɵɵproperty("p-filters", ctx.filters)("p-keep-filters", ctx.keepFilters)("p-literals", ctx.advancedFilterLiterals);
336
- } }, dependencies: [i1.PoPageListComponent, i3.PoAdvancedFilterComponent], encapsulation: 2 });
337
- }
338
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PoPageDynamicSearchComponent, [{
339
- type: Component,
340
- args: [{ selector: 'po-page-dynamic-search', template: "<po-page-list\n #poPageList\n [p-actions]=\"actions\"\n [p-breadcrumb]=\"breadcrumb\"\n [p-disclaimer-group]=\"disclaimerGroup\"\n [p-filter]=\"filterSettings\"\n [p-title]=\"title\"\n [p-quick-search-value]=\"quickSearchValue\"\n>\n <po-advanced-filter\n [p-filters]=\"filters\"\n [p-keep-filters]=\"keepFilters\"\n [p-literals]=\"advancedFilterLiterals\"\n (p-search-event)=\"onAdvancedSearch($event, true)\"\n >\n </po-advanced-filter>\n\n <ng-content></ng-content>\n</po-page-list>\n" }]
341
- }], () => [{ type: i1.PoLanguageService }, { type: i2.PoPageCustomizationService }, { type: i0.ChangeDetectorRef }], { poAdvancedFilter: [{
342
- type: ViewChild,
343
- args: [PoAdvancedFilterComponent, { static: true }]
344
- }], poPageList: [{
345
- type: ViewChild,
346
- args: [PoPageListComponent, { static: true }]
347
- }] }); })();
348
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(PoPageDynamicSearchComponent, { className: "PoPageDynamicSearchComponent", filePath: "lib/components/po-page-dynamic-search/po-page-dynamic-search.component.ts", lineNumber: 54 }); })();
349
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tcGFnZS1keW5hbWljLXNlYXJjaC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90ZW1wbGF0ZXMvc3JjL2xpYi9jb21wb25lbnRzL3BvLXBhZ2UtZHluYW1pYy1zZWFyY2gvcG8tcGFnZS1keW5hbWljLXNlYXJjaC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90ZW1wbGF0ZXMvc3JjL2xpYi9jb21wb25lbnRzL3BvLXBhZ2UtZHluYW1pYy1zZWFyY2gvcG8tcGFnZS1keW5hbWljLXNlYXJjaC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFNBQVMsRUFNVixNQUFNLGVBQWUsQ0FBQztBQUd2QixPQUFPLEVBRUwsa0JBQWtCLEVBTWxCLG1CQUFtQixFQUNwQixNQUFNLHNCQUFzQixDQUFDO0FBRTlCLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRzdFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLHlDQUF5QyxDQUFDOzs7Ozs7QUFPM0Y7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBS0gsTUFBTSxPQUFPLDRCQUNYLFNBQVEsZ0NBQWdDO0lBd0I5QjtJQUNBO0lBQ0E7SUF2QjhDLGdCQUFnQixDQUE0QjtJQUNsRCxVQUFVLENBQXNCO0lBRTFFLGdCQUFnQixDQUFlO0lBRXRCLGdCQUFnQixHQUFzQjtRQUNyRCxNQUFNLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDMUMsU0FBUyxFQUFFLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBQ2pELFdBQVcsRUFBRSxFQUFFO1FBQ2YsS0FB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YixBQURBLEFBREEsQUFEQSxBQURBLEFBREEsdUNBQXFCLGdDQUNNLDJDQUNXLGdDQUNYLHNCQUNWLDhDQUN3QjtZQUd2QyxlQUFxQjtZQUVyQixBQURBLEFBREEsdUNBQXFCLG1DQUNTLDBDQUNPOzs7aUZEeUM1Qiw0QkFBNEI7Y0FKeEMsU0FBUzsyQkFDRSx3QkFBd0I7MkhBT3NCLGdCQUFnQjtrQkFBdkUsU0FBUzttQkFBQyx5QkFBeUIsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7WUFDSixVQUFVO2tCQUEzRCxTQUFTO21CQUFDLG1CQUFtQixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTs7a0ZBTHJDLDRCQUE0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgVmlld0NoaWxkLFxuICBPbkluaXQsXG4gIE9uRGVzdHJveSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIEFmdGVyVmlld0luaXQsXG4gIFNpbXBsZUNoYW5nZXNcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgUG9EaXNjbGFpbWVyR3JvdXAsXG4gIFBvRHluYW1pY0ZpZWxkVHlwZSxcbiAgUG9EeW5hbWljRm9ybUZpZWxkLFxuICBQb0xhbmd1YWdlU2VydmljZSxcbiAgUG9QYWdlRmlsdGVyLFxuICBQb0Rpc2NsYWltZXJHcm91cFJlbW92ZUFjdGlvbixcbiAgUG9Db21ib09wdGlvbixcbiAgUG9QYWdlTGlzdENvbXBvbmVudFxufSBmcm9tICdAcG8tdWkvbmctY29tcG9uZW50cyc7XG5cbmltcG9ydCB7IGNhcGl0YWxpemVGaXJzdExldHRlciwgZ2V0QnJvd3Nlckxhbmd1YWdlIH0gZnJvbSAnLi4vLi4vdXRpbHMvdXRpbCc7XG5pbXBvcnQgeyBQb1BhZ2VDdXN0b21pemF0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3BvLXBhZ2UtY3VzdG9taXphdGlvbi9wby1wYWdlLWN1c3RvbWl6YXRpb24uc2VydmljZSc7XG5cbmltcG9ydCB7IFBvQWR2YW5jZWRGaWx0ZXJDb21wb25lbnQgfSBmcm9tICcuL3BvLWFkdmFuY2VkLWZpbHRlci9wby1hZHZhbmNlZC1maWx0ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFBvUGFnZUR5bmFtaWNTZWFyY2hCYXNlQ29tcG9uZW50IH0gZnJvbSAnLi9wby1wYWdlLWR5bmFtaWMtc2VhcmNoLWJhc2UuY29tcG9uZW50JztcbmltcG9ydCB7IFBvUGFnZUR5bmFtaWNTZWFyY2hPcHRpb25zIH0gZnJvbSAnLi9wby1wYWdlLWR5bmFtaWMtc2VhcmNoLW9wdGlvbnMuaW50ZXJmYWNlJztcbmltcG9ydCB7IFBvUGFnZUR5bmFtaWNPcHRpb25zU2NoZW1hIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuaW1wb3J0IHsgUG9QYWdlRHluYW1pY1NlYXJjaEZpbHRlcnMgfSBmcm9tICcuL3BvLXBhZ2UtZHluYW1pYy1zZWFyY2gtZmlsdGVycy5pbnRlcmZhY2UnO1xuXG50eXBlIFVybE9yUG9DdXN0b21pemF0aW9uRnVuY3Rpb24gPSBzdHJpbmcgfCAoKCkgPT4gUG9QYWdlRHluYW1pY1NlYXJjaE9wdGlvbnMpO1xuXG4vKipcbiAqIEBkb2NzRXh0ZW5kcyBQb1BhZ2VEeW5hbWljU2VhcmNoQmFzZUNvbXBvbmVudFxuICpcbiAqIEBleGFtcGxlXG4gKlxuICogPGV4YW1wbGUgbmFtZT1cInBvLXBhZ2UtZHluYW1pYy1zZWFyY2gtYmFzaWNcIiB0aXRsZT1cIlBPIFBhZ2UgRHluYW1pYyBTZWFyY2ggQmFzaWNcIj5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLXBhZ2UtZHluYW1pYy1zZWFyY2gtYmFzaWMvc2FtcGxlLXBvLXBhZ2UtZHluYW1pYy1zZWFyY2gtYmFzaWMuY29tcG9uZW50Lmh0bWxcIj4gPC9maWxlPlxuICogIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tcGFnZS1keW5hbWljLXNlYXJjaC1iYXNpYy9zYW1wbGUtcG8tcGFnZS1keW5hbWljLXNlYXJjaC1iYXNpYy5jb21wb25lbnQudHNcIj4gPC9maWxlPlxuICogPC9leGFtcGxlPlxuICpcbiAqIDxleGFtcGxlIG5hbWU9XCJwby1wYWdlLWR5bmFtaWMtc2VhcmNoLWhpcmluZy1wcm9jZXNzZXNcIiB0aXRsZT1cIlBPIFBhZ2UgRHluYW1pYyBTZWFyY2ggLSBIaXJpbmcgcHJvY2Vzc2VzXCI+XG4gKiAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1wYWdlLWR5bmFtaWMtc2VhcmNoLWhpcmluZy1wcm9jZXNzZXMvc2FtcGxlLXBvLXBhZ2UtZHluYW1pYy1zZWFyY2gtaGlyaW5nLXByb2Nlc3Nlcy5jb21wb25lbnQuaHRtbFwiPiA8L2ZpbGU+XG4gKiAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1wYWdlLWR5bmFtaWMtc2VhcmNoLWhpcmluZy1wcm9jZXNzZXMvc2FtcGxlLXBvLXBhZ2UtZHluYW1pYy1zZWFyY2gtaGlyaW5nLXByb2Nlc3Nlcy5jb21wb25lbnQudHNcIj4gPC9maWxlPlxuICogIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tcGFnZS1keW5hbWljLXNlYXJjaC1oaXJpbmctcHJvY2Vzc2VzL3NhbXBsZS1wby1wYWdlLWR5bmFtaWMtc2VhcmNoLWhpcmluZy1wcm9jZXNzZXMuc2VydmljZS50c1wiPiA8L2ZpbGU+XG4gKiA8L2V4YW1wbGU+XG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3BvLXBhZ2UtZHluYW1pYy1zZWFyY2gnLFxuICB0ZW1wbGF0ZVVybDogJy4vcG8tcGFnZS1keW5hbWljLXNlYXJjaC5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgUG9QYWdlRHluYW1pY1NlYXJjaENvbXBvbmVudFxuICBleHRlbmRzIFBvUGFnZUR5bmFtaWNTZWFyY2hCYXNlQ29tcG9uZW50XG4gIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXRcbntcbiAgQFZpZXdDaGlsZChQb0FkdmFuY2VkRmlsdGVyQ29tcG9uZW50LCB7IHN0YXRpYzogdHJ1ZSB9KSBwb0FkdmFuY2VkRmlsdGVyOiBQb0FkdmFuY2VkRmlsdGVyQ29tcG9uZW50O1xuICBAVmlld0NoaWxkKFBvUGFnZUxpc3RDb21wb25lbnQsIHsgc3RhdGljOiB0cnVlIH0pIHBvUGFnZUxpc3Q6IFBvUGFnZUxpc3RDb21wb25lbnQ7XG5cbiAgcHJpdmF0ZSBsb2FkU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfZGlzY2xhaW1lckdyb3VwOiBQb0Rpc2NsYWltZXJHcm91cCA9IHtcbiAgICByZW1vdmU6IHRoaXMub25SZW1vdmVEaXNjbGFpbWVyLmJpbmQodGhpcyksXG4gICAgcmVtb3ZlQWxsOiB0aGlzLm9uUmVtb3ZlQWxsRGlzY2xhaW1lcnMuYmluZCh0aGlzKSxcbiAgICBkaXNjbGFpbWVyczogW10sXG4gICAgdGl0bGU6IHRoaXMubGl0ZXJhbHMuZGlzY2xhaW1lckdyb3VwVGl0bGUsXG4gICAgaGlkZVJlbW92ZUFsbDogdGhpcy5oaWRlUmVtb3ZlQWxsRGlzY2xhaW1lclxuICB9O1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2ZpbHRlclNldHRpbmdzOiBQb1BhZ2VGaWx0ZXIgPSB7XG4gICAgYWN0aW9uOiB0aGlzLm9uQWN0aW9uLmJpbmQodGhpcyksXG4gICAgYWR2YW5jZWRBY3Rpb246IHRoaXMub25BZHZhbmNlZEFjdGlvbi5iaW5kKHRoaXMpLFxuICAgIHBsYWNlaG9sZGVyOiB0aGlzLmxpdGVyYWxzLnNlYXJjaFBsYWNlaG9sZGVyLFxuICAgIHdpZHRoOiB0aGlzLnF1aWNrU2VhcmNoV2lkdGhcbiAgfTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGxhbmd1YWdlU2VydmljZTogUG9MYW5ndWFnZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBwb1BhZ2VDdXN0b21pemF0aW9uU2VydmljZTogUG9QYWdlQ3VzdG9taXphdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgKSB7XG4gICAgc3VwZXIobGFuZ3VhZ2VTZXJ2aWNlKTtcbiAgfVxuXG4gIGdldCBkaXNjbGFpbWVyR3JvdXAoKSB7XG4gICAgcmV0dXJuIE9iamVjdC5hc3NpZ24oe30sIHRoaXMuX2Rpc2NsYWltZXJHcm91cCwge1xuICAgICAgdGl0bGU6IHRoaXMubGl0ZXJhbHMuZGlzY2xhaW1lckdyb3VwVGl0bGUsXG4gICAgICBoaWRlUmVtb3ZlQWxsOiB0aGlzLmhpZGVSZW1vdmVBbGxEaXNjbGFpbWVyXG4gICAgfSk7XG4gIH1cblxuICBnZXQgZmlsdGVyU2V0dGluZ3MoKSB7XG4gICAgY29uc3QgdGhlcmVBcmVWYWxpZEZpbHRlcnMgPVxuICAgICAgdGhpcy5maWx0ZXJzLmxlbmd0aCA+IDAgJiYgdGhpcy5maWx0ZXJzLnNvbWUoZmlsdGVyID0+IGZpbHRlci52aXNpYmxlID09PSB0cnVlIHx8IGZpbHRlci52aXNpYmxlID09PSB1bmRlZmluZWQpO1xuICAgIHRoaXMuX2ZpbHRlclNldHRpbmdzLmFkdmFuY2VkQWN0aW9uID0gdGhlcmVBcmVWYWxpZEZpbHRlcnMgPyB0aGlzLm9uQWR2YW5jZWRBY3Rpb24uYmluZCh0aGlzKSA6IHVuZGVmaW5lZDtcblxuICAgIHJldHVybiBPYmplY3QuYXNzaWduKHt9LCB0aGlzLl9maWx0ZXJTZXR0aW5ncywge1xuICAgICAgcGxhY2Vob2xkZXI6IHRoaXMubGl0ZXJhbHMuc2VhcmNoUGxhY2Vob2xkZXIsXG4gICAgICB3aWR0aDogdGhpcy5xdWlja1NlYXJjaFdpZHRoXG4gICAgfSk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnNldEFkdmFuY2VkRmlsdGVyTGl0ZXJhbHModGhpcy5saXRlcmFscyk7XG4gICAgaWYgKHRoaXMub25Mb2FkKSB7XG4gICAgICB0aGlzLmxvYWRPcHRpb25zT25Jbml0aWFsaXplKHRoaXMub25Mb2FkKTtcbiAgICB9XG4gICAgLy9jb2xvY2EgbyBkaXNjbGFpbWVyIGluaWNpYWwgY2FzbyBlbnZpZSBwLXF1aWNrLXNlYXJjaC12YWx1ZVxuICAgIGlmICh0aGlzLnF1aWNrU2VhcmNoVmFsdWUpIHtcbiAgICAgIHRoaXMub25BY3Rpb24odGhpcy5xdWlja1NlYXJjaFZhbHVlLCB0cnVlKTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICBpZiAodGhpcy5sb2FkU3Vic2NyaXB0aW9uKSB7XG4gICAgICB0aGlzLmxvYWRTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3RyaW5naWZ5KHRoaXMuZmlsdGVycykgIT09IHRoaXMuc3RyaW5naWZ5KHRoaXMucHJldmlvdXNGaWx0ZXJzKSkge1xuICAgICAgdGhpcy5vbkNoYW5nZUZpbHRlcnModGhpcy5maWx0ZXJzKTtcblxuICAgICAgdGhpcy5wcmV2aW91c0ZpbHRlcnMgPSBbLi4udGhpcy5maWx0ZXJzXTtcbiAgICB9XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgY29uc3QgdmlzaWJsZUZpeGVkRmlsdGVycyA9IGNoYW5nZXMudmlzaWJsZUZpeGVkRmlsdGVycztcblxuICAgIGlmIChcbiAgICAgIHZpc2libGVGaXhlZEZpbHRlcnMgJiZcbiAgICAgIHZpc2libGVGaXhlZEZpbHRlcnMuY3VycmVudFZhbHVlICE9PSB2aXNpYmxlRml4ZWRGaWx0ZXJzLnByZXZpb3VzVmFsdWUgJiZcbiAgICAgIHRoaXMuZmlsdGVycy5zb21lKGZpbHRlciA9PiBmaWx0ZXIuZml4ZWQpXG4gICAgKSB7XG4gICAgICB0aGlzLm9uQ2hhbmdlRmlsdGVycyh0aGlzLmZpbHRlcnMpO1xuICAgICAgdGhpcy5wcmV2aW91c0ZpbHRlcnMgPSBbLi4udGhpcy5maWx0ZXJzXTtcbiAgICB9XG4gIH1cblxuICBvbkNoYW5nZUZpbHRlcnMoZmlsdGVyczogQXJyYXk8UG9QYWdlRHluYW1pY1NlYXJjaEZpbHRlcnM+KSB7XG4gICAgY29uc3QgZmlsdGVyT2JqZWN0V2l0aFZhbHVlID0gZmlsdGVyc1xuICAgICAgLmZpbHRlcihmaWx0ZXIgPT4gZmlsdGVyLmluaXRWYWx1ZSlcbiAgICAgIC5yZWR1Y2UoKHByZXYsIGN1cnJlbnQpID0+ICh7IC4uLnByZXYsIC4uLnsgW2N1cnJlbnQucHJvcGVydHldOiBjdXJyZW50LmluaXRWYWx1ZSB9IH0pLCB7fSk7XG5cbiAgICBpZiAoT2JqZWN0LmtleXMoZmlsdGVyT2JqZWN0V2l0aFZhbHVlKS5sZW5ndGgpIHtcbiAgICAgIHRoaXMub25BZHZhbmNlZFNlYXJjaCh7IGZpbHRlcjogZmlsdGVyT2JqZWN0V2l0aFZhbHVlIH0pO1xuICAgIH1cbiAgfVxuXG4gIG9uQWN0aW9uKHF1aWNrRmlsdGVyOiBzdHJpbmcsIHF1aWNrU2VhcmNoVmFsdWU/OiBib29sZWFuKSB7XG4gICAgY29uc3QgZGlzY2xhaW1lclF1aWNrU2VhcmNoVXBkYXRlZCA9IHtcbiAgICAgIHByb3BlcnR5OiAnc2VhcmNoJyxcbiAgICAgIGxhYmVsOiBgJHt0aGlzLmxpdGVyYWxzLnF1aWNrU2VhcmNoTGFiZWx9ICR7cXVpY2tGaWx0ZXJ9YCxcbiAgICAgIHZhbHVlOiBxdWlja0ZpbHRlcixcbiAgICAgIGhpZGVDbG9zZTogdGhpcy5oaWRlQ2xvc2VEaXNjbGFpbWVycy5zb21lKGhpZGVDbG9zZURpc2NsYWltZXIgPT4gaGlkZUNsb3NlRGlzY2xhaW1lciA9PT0gJ3NlYXJjaCcpIHx8IGZhbHNlXG4gICAgfTtcblxuICAgIGNvbnN0IGdldERpc2NsYWltZXJzV2l0aENvbmNhdEZpbHRlcnMgPSAoKSA9PiBbXG4gICAgICAuLi50aGlzLmdldERpc2NsYWltZXJzV2l0aG91dFF1aWNrU2VhcmNoKCksXG4gICAgICBkaXNjbGFpbWVyUXVpY2tTZWFyY2hVcGRhdGVkXG4gICAgXTtcblxuICAgIHRoaXMuX2Rpc2NsYWltZXJHcm91cC5kaXNjbGFpbWVycyA9IHRoaXMuY29uY2F0RmlsdGVyc1xuICAgICAgPyBnZXREaXNjbGFpbWVyc1dpdGhDb25jYXRGaWx0ZXJzKClcbiAgICAgIDogW2Rpc2NsYWltZXJRdWlja1NlYXJjaFVwZGF0ZWRdO1xuXG4gICAgaWYgKHRoaXMucXVpY2tTZWFyY2gub2JzZXJ2ZXJzICYmIHRoaXMucXVpY2tTZWFyY2gub2JzZXJ2ZXJzLmxlbmd0aCA+IDAgJiYgIXF1aWNrU2VhcmNoVmFsdWUpIHtcbiAgICAgIHRoaXMucXVpY2tTZWFyY2guZW1pdChxdWlja0ZpbHRlcik7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMua2VlcEZpbHRlcnMgJiYgIXRoaXMuY29uY2F0RmlsdGVycykge1xuICAgICAgdGhpcy5maWx0ZXJzLmZvckVhY2goZWxlbWVudCA9PiBkZWxldGUgZWxlbWVudC5pbml0VmFsdWUpO1xuICAgIH1cblxuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgb25BZHZhbmNlZEFjdGlvbigpIHtcbiAgICB0aGlzLnBvQWR2YW5jZWRGaWx0ZXIub3BlbigpO1xuICB9XG5cbiAgb25BZHZhbmNlZFNlYXJjaChmaWx0ZXJlZEl0ZW1zLCBpc0FkdmFuY2VkU2VhcmNoPykge1xuICAgIGNvbnN0IHsgZmlsdGVyLCBvcHRpb25zU2VydmljZSB9ID0gZmlsdGVyZWRJdGVtcztcblxuICAgIGNvbnN0IHZpc2libGVGaWx0ZXJzID1cbiAgICAgIHRoaXMudmlzaWJsZUZpeGVkRmlsdGVycyA9PT0gZmFsc2VcbiAgICAgICAgPyB0aGlzLmZpbHRlcnMuZmlsdGVyKGZpbHRlciA9PiAhKCdmaXhlZCcgaW4gZmlsdGVyKSB8fCAhZmlsdGVyLmZpeGVkKVxuICAgICAgICA6IHRoaXMuZmlsdGVycztcblxuICAgIHRoaXMuX2Rpc2NsYWltZXJHcm91cC5kaXNjbGFpbWVycyA9IHRoaXMuc2V0RGlzY2xhaW1lcnMoZmlsdGVyLCBvcHRpb25zU2VydmljZSwgdmlzaWJsZUZpbHRlcnMpO1xuXG4gICAgdGhpcy5zZXRGaWx0ZXJzKGZpbHRlcik7XG5cbiAgICB0aGlzLmFkdmFuY2VkU2VhcmNoLmVtaXQoZmlsdGVyKTtcblxuICAgIGlmIChpc0FkdmFuY2VkU2VhcmNoKSB7XG4gICAgICB0aGlzLnBvUGFnZUxpc3QuY2xlYXJJbnB1dFNlYXJjaCgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0RGlzY2xhaW1lcnNXaXRob3V0UXVpY2tTZWFyY2goKSB7XG4gICAgY29uc3QgcXVpY2tTZWFyY2hQcm9wZXJ0eSA9ICdzZWFyY2gnO1xuICAgIHJldHVybiB0aGlzLl9kaXNjbGFpbWVyR3JvdXAuZGlzY2xhaW1lcnMuZmlsdGVyKGl0ZW0gPT4gaXRlbS5wcm9wZXJ0eSAhPT0gcXVpY2tTZWFyY2hQcm9wZXJ0eSk7XG4gIH1cblxuICBwcml2YXRlIHNldEZpbHRlcnMoZmlsdGVycykge1xuICAgIGNvbnN0IGZvcm1hdHRlZEZpbHRlcnMgPSB0aGlzLmNvbnZlcnRUb0ZpbHRlcnMoZmlsdGVycyk7XG5cbiAgICB0aGlzLmZpbHRlcnMuZm9yRWFjaChlbGVtZW50ID0+IHtcbiAgICAgIGNvbnN0IGNvbXBhdGlibGVPYmplY3QgPSBmb3JtYXR0ZWRGaWx0ZXJzLmZpbmQoaXRlbSA9PiBpdGVtLnByb3BlcnR5ID09PSBlbGVtZW50LnByb3BlcnR5KTtcblxuICAgICAgaWYgKGNvbXBhdGlibGVPYmplY3QpIHtcbiAgICAgICAgZWxlbWVudC5pbml0VmFsdWUgPSBjb21wYXRpYmxlT2JqZWN0LnZhbHVlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZGVsZXRlIGVsZW1lbnQuaW5pdFZhbHVlO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBjb252ZXJ0VG9GaWx0ZXJzKGZpbHRlcnMpIHtcbiAgICByZXR1cm4gT2JqZWN0LmVudHJpZXMoZmlsdGVycykubWFwKChbcHJvcGVydHksIHZhbHVlXSkgPT4gKHsgcHJvcGVydHksIHZhbHVlIH0pKTtcbiAgfVxuXG4gIHByaXZhdGUgb3B0aW9uc1NlcnZpY2VEaXNjbGFpbWVyTGFiZWwodmFsdWU6IGFueSwgb3B0aW9uc1NlcnZpY2VPYmplY3RzTGlzdDogQXJyYXk8UG9Db21ib09wdGlvbj4pIHtcbiAgICBjb25zdCBvcHRpb25TZXJ2aWNlTWF0Y2ggPSBvcHRpb25zU2VydmljZU9iamVjdHNMaXN0LmZpbmQob3B0aW9uID0+IG9wdGlvbi52YWx1ZSA9PT0gdmFsdWUpO1xuXG4gICAgcmV0dXJuIG9wdGlvblNlcnZpY2VNYXRjaC5sYWJlbCB8fCBvcHRpb25TZXJ2aWNlTWF0Y2gudmFsdWU7XG4gIH1cblxuICBwcml2YXRlIGFwcGx5RGlzY2xhaW1lckxhYmVsVmFsdWUoZmllbGQ6IGFueSwgZmlsdGVyVmFsdWU6IGFueSkge1xuICAgIGNvbnN0IHZhbHVlcyA9IEFycmF5LmlzQXJyYXkoZmlsdGVyVmFsdWUpID8gZmlsdGVyVmFsdWUgOiBbZmlsdGVyVmFsdWVdO1xuXG4gICAgY29uc3QgbGFiZWxzID0gdmFsdWVzLm1hcCh2YWx1ZSA9PiB7XG4gICAgICBjb25zdCBmaWx0ZXJlZEZpZWxkID0gZmllbGQub3B0aW9ucy5maW5kKG9wdGlvbiA9PiBvcHRpb24udmFsdWUgPT09IHZhbHVlIHx8IG9wdGlvbiA9PT0gdmFsdWUpO1xuXG4gICAgICBpZiAoZmlsdGVyZWRGaWVsZCkge1xuICAgICAgICByZXR1cm4gZmlsdGVyZWRGaWVsZC5sYWJlbCB8fCBmaWx0ZXJlZEZpZWxkLnZhbHVlIHx8IGZpbHRlcmVkRmllbGQ7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICByZXR1cm4gbGFiZWxzLmpvaW4oJywgJyk7XG4gIH1cblxuICBwcml2YXRlIGZvcm1hdERhdGUoZGF0ZTogc3RyaW5nKSB7XG4gICAgY29uc3QgeWVhciA9IHBhcnNlSW50KGRhdGUuc3Vic3RyKDAsIDQpLCAxMCk7XG4gICAgY29uc3QgbW9udGggPSBwYXJzZUludChkYXRlLnN1YnN0cig1LCAyKSwgMTApO1xuICAgIGNvbnN0IGRheSA9IHBhcnNlSW50KGRhdGUuc3Vic3RyKDgsIDIpLCAxMCk7XG5cbiAgICByZXR1cm4gbmV3IERhdGUoeWVhciwgbW9udGggLSAxLCBkYXkpLnRvTG9jYWxlRGF0ZVN0cmluZyhnZXRCcm93c2VyTGFuZ3VhZ2UoKSk7XG4gIH1cblxuICBwcml2YXRlIGZvcm1hdEFycmF5VG9PYmplY3RLZXlWYWx1ZShmaWx0ZXJzOiBBcnJheTx7IHByb3BlcnR5OiBzdHJpbmc7IHZhbHVlPzogYW55OyBpbml0VmFsdWU/OiBhbnkgfT4pOiB7XG4gICAgW2tleTogc3RyaW5nXTogYW55O1xuICB9IHtcbiAgICBjb25zdCBmb3JtYXR0ZWRPYmplY3QgPSBmaWx0ZXJzLnJlZHVjZShcbiAgICAgIChyZXN1bHQsIGl0ZW0pID0+IE9iamVjdC5hc3NpZ24ocmVzdWx0LCB7IFtpdGVtLnByb3BlcnR5XTogaXRlbS52YWx1ZSB8fCBpdGVtLmluaXRWYWx1ZSB9KSxcbiAgICAgIHt9XG4gICAgKTtcblxuICAgIE9iamVjdC5rZXlzKGZvcm1hdHRlZE9iamVjdCkuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgaWYgKCFmb3JtYXR0ZWRPYmplY3Rba2V5XSkge1xuICAgICAgICBkZWxldGUgZm9ybWF0dGVkT2JqZWN0W2tleV07XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICByZXR1cm4gZm9ybWF0dGVkT2JqZWN0O1xuICB9XG5cbiAgcHJpdmF0ZSBmb3JtYXRWYWx1ZVRvQ3VycmVuY3koZmllbGQ6IGFueSwgdmFsdWU6IGFueSkge1xuICAgIGNvbnN0IGxhbmd1YWdlID0gdGhpcy5sYW5ndWFnZVNlcnZpY2UuZ2V0TGFuZ3VhZ2UoKTtcbiAgICByZXR1cm4gbmV3IEludGwuTnVtYmVyRm9ybWF0KGZpZWxkLmxvY2FsZSA/IGZpZWxkLmxvY2FsZSA6IGxhbmd1YWdlLCB7XG4gICAgICBtaW5pbXVtRnJhY3Rpb25EaWdpdHM6IDJcbiAgICB9KS5mb3JtYXQodmFsdWUpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRGaWVsZEJ5UHJvcGVydHkoZmllbGRzOiBBcnJheTxQb0R5bmFtaWNGb3JtRmllbGQ+LCBmaWVsZE5hbWU6IHN0cmluZykge1xuICAgIHJldHVybiBmaWVsZHMuZmluZCgoZmllbGQ6IFBvRHluYW1pY0Zvcm1GaWVsZCkgPT4gZmllbGQucHJvcGVydHkgPT09IGZpZWxkTmFtZSk7XG4gIH1cblxuICBwcml2YXRlIGdldEZpbHRlclZhbHVlVG9EaXNjbGFpbWVyKGZpZWxkOiBhbnksIHZhbHVlOiBhbnksIG9wdGlvbnNTZXJ2aWNlT2JqZWN0c0xpc3Q/OiBBcnJheTxQb0NvbWJvT3B0aW9uPikge1xuICAgIGlmIChmaWVsZC5vcHRpb25zU2VydmljZSAmJiBvcHRpb25zU2VydmljZU9iamVjdHNMaXN0KSB7XG4gICAgICByZXR1cm4gdGhpcy5vcHRpb25zU2VydmljZURpc2NsYWltZXJMYWJlbCh2YWx1ZSwgb3B0aW9uc1NlcnZpY2VPYmplY3RzTGlzdCk7XG4gICAgfVxuXG4gICAgaWYgKGZpZWxkLnR5cGUgPT09IFBvRHluYW1pY0ZpZWxkVHlwZS5DdXJyZW5jeSAmJiB2YWx1ZSkge1xuICAgICAgcmV0dXJuIHRoaXMuZm9ybWF0VmFsdWVUb0N1cnJlbmN5KGZpZWxkLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgaWYgKGZpZWxkLnR5cGUgPT09IFBvRHluYW1pY0ZpZWxkVHlwZS5EYXRlKSB7XG4gICAgICByZXR1cm4gZmllbGQucmFuZ2UgPyB0aGlzLmZvcm1hdERhdGUodmFsdWUuc3RhcnQpICsgJyAtICcgKyB0aGlzLmZvcm1hdERhdGUodmFsdWUuZW5kKSA6IHRoaXMuZm9ybWF0RGF0ZSh2YWx1ZSk7XG4gICAgfVxuXG4gICAgaWYgKGZpZWxkLm9wdGlvbnMgJiYgdmFsdWUpIHtcbiAgICAgIHJldHVybiB0aGlzLmFwcGx5RGlzY2xhaW1lckxhYmVsVmFsdWUoZmllbGQsIHZhbHVlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cblxuICBwcml2YXRlIGVtaXRDaGFuZ2VzRGlzY2xhaW1lcnMoY3VycmVudERpc2NsYWltZXJzOiBhbnkpIHtcbiAgICB0aGlzLmNoYW5nZURpc2NsYWltZXJzLmVtaXQoY3VycmVudERpc2NsYWltZXJzKTtcbiAgICB0aGlzLnNldEZpbHRlcnModGhpcy5mb3JtYXRBcnJheVRvT2JqZWN0S2V5VmFsdWUoY3VycmVudERpc2NsYWltZXJzKSk7XG4gIH1cblxuICBwcml2YXRlIG9uUmVtb3ZlQWxsRGlzY2xhaW1lcnMoKSB7XG4gICAgY29uc3QgZGlzY2xhaW1lcnNUb0tlZXAgPSB0aGlzLmdldEZpeGVkRmlsdGVyc0Rpc2NsYWltZXJzKCk7XG4gICAgdGhpcy5lbWl0Q2hhbmdlc0Rpc2NsYWltZXJzKGRpc2NsYWltZXJzVG9LZWVwKTtcbiAgfVxuXG4gIHByaXZhdGUgb25SZW1vdmVEaXNjbGFpbWVyKHJlbW92ZURhdGE6IFBvRGlzY2xhaW1lckdyb3VwUmVtb3ZlQWN0aW9uKSB7XG4gICAgY29uc3QgeyBjdXJyZW50RGlzY2xhaW1lcnMgfSA9IHJlbW92ZURhdGE7XG5cbiAgICBjb25zdCB1cGRhdGVkRGlzY2xhaW1lcnMgPSBbLi4uY3VycmVudERpc2NsYWltZXJzLCAuLi50aGlzLmdldEZpeGVkRmlsdGVyc0Rpc2NsYWltZXJzKGN1cnJlbnREaXNjbGFpbWVycyldO1xuXG4gICAgdGhpcy5lbWl0Q2hhbmdlc0Rpc2NsYWltZXJzKHVwZGF0ZWREaXNjbGFpbWVycyk7XG4gIH1cblxuICBwcml2YXRlIGdldEZpeGVkRmlsdGVyc0Rpc2NsYWltZXJzKGN1cnJlbnREaXNjbGFpbWVycz86IEFycmF5PGFueT4pOiBBcnJheTxhbnk+IHtcbiAgICBjb25zdCBmaXhlZEZpbHRlcnMgPSB0aGlzLmZpbHRlcnMuZmlsdGVyKFxuICAgICAgZmlsdGVyID0+XG4gICAgICAgIGZpbHRlci5maXhlZCA9PT0gdHJ1ZSAmJlxuICAgICAgICBmaWx0ZXIuaGFzT3duUHJvcGVydHkoJ2luaXRWYWx1ZScpICYmXG4gICAgICAgIGZpbHRlci5pbml0VmFsdWUgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgICBmaWx0ZXIuaW5pdFZhbHVlICE9PSBudWxsXG4gICAgKTtcblxuICAgIHJldHVybiBmaXhlZEZpbHRlcnNcbiAgICAgIC5tYXAoZmlsdGVyID0+ICh7XG4gICAgICAgIHByb3BlcnR5OiBmaWx0ZXIucHJvcGVydHksXG4gICAgICAgIHZhbHVlOiBmaWx0ZXIuaW5pdFZhbHVlLFxuICAgICAgICBsYWJlbDogYCR7ZmlsdGVyLmxhYmVsfTogJHtmaWx0ZXIuaW5pdFZhbHVlfWAsXG4gICAgICAgIGhpZGVDbG9zZTogdHJ1ZVxuICAgICAgfSkpXG4gICAgICAuZmlsdGVyKFxuICAgICAgICBmaXhlZEZpbHRlciA9PlxuICAgICAgICAgICFjdXJyZW50RGlzY2xhaW1lcnMgfHwgIWN1cnJlbnREaXNjbGFpbWVycy5zb21lKGRpc2NsYWltZXIgPT4gZGlzY2xhaW1lci5wcm9wZXJ0eSA9PT0gZml4ZWRGaWx0ZXIucHJvcGVydHkpXG4gICAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXREaXNjbGFpbWVycyhcbiAgICBmaWx0ZXJzLFxuICAgIG9wdGlvbnNTZXJ2aWNlT2JqZWN0cz86IEFycmF5PFBvQ29tYm9PcHRpb24+LFxuICAgIHZpc2libGVGaWx0ZXJzPzogQXJyYXk8UG9QYWdlRHluYW1pY1NlYXJjaEZpbHRlcnM+XG4gICkge1xuICAgIGNvbnN0IGRpc2NsYWltZXJzID0gW107XG4gICAgY29uc3QgcHJvcGVydGllcyA9IE9iamVjdC5rZXlzKGZpbHRlcnMpO1xuICAgIGNvbnN0IHZpc2libGVQcm9wZXJ0aWVzID0gdmlzaWJsZUZpbHRlcnMgPyB2aXNpYmxlRmlsdGVycy5tYXAoZmlsdGVyID0+IGZpbHRlci5wcm9wZXJ0eSkgOiBwcm9wZXJ0aWVzO1xuXG4gICAgcHJvcGVydGllcy5mb3JFYWNoKHByb3BlcnR5ID0+IHtcbiAgICAgIGlmICh2aXNpYmxlUHJvcGVydGllcy5pbmNsdWRlcyhwcm9wZXJ0eSkpIHtcbiAgICAgICAgY29uc3QgZmllbGQgPSB0aGlzLmdldEZpZWxkQnlQcm9wZXJ0eSh0aGlzLmZpbHRlcnMsIHByb3BlcnR5KTtcbiAgICAgICAgY29uc3QgbGFiZWwgPSBmaWVsZC5sYWJlbCB8fCBjYXBpdGFsaXplRmlyc3RMZXR0ZXIoZmllbGQucHJvcGVydHkpO1xuICAgICAgICBjb25zdCB2YWx1ZSA9IGZpbHRlcnNbcHJvcGVydHldO1xuICAgICAgICBjb25zdCBoaWRlQ2xvc2UgPVxuICAgICAgICAgIHRoaXMuaGlkZUNsb3NlRGlzY2xhaW1lcnMuc29tZShoaWRlQ2xvc2VEaXNjbGFpbWVyID0+IGhpZGVDbG9zZURpc2NsYWltZXIgPT09IHByb3BlcnR5KSB8fCBmYWxzZTtcblxuICAgICAgICBjb25zdCB2YWx1ZURpc3BsYXllZE9uVGhlRGlzY2xhaW1lckxhYmVsID0gdGhpcy5nZXRGaWx0ZXJWYWx1ZVRvRGlzY2xhaW1lcihmaWVsZCwgdmFsdWUsIG9wdGlvbnNTZXJ2aWNlT2JqZWN0cyk7XG5cbiAgICAgICAgaWYgKHZhbHVlRGlzcGxheWVkT25UaGVEaXNjbGFpbWVyTGFiZWwgIT09ICcnKSB7XG4gICAgICAgICAgZGlzY2xhaW1lcnMucHVzaCh7XG4gICAgICAgICAgICBsYWJlbDogYCR7bGFiZWx9OiAke3ZhbHVlRGlzcGxheWVkT25UaGVEaXNjbGFpbWVyTGFiZWx9YCxcbiAgICAgICAgICAgIHByb3BlcnR5LFxuICAgICAgICAgICAgdmFsdWUsXG4gICAgICAgICAgICBoaWRlQ2xvc2VcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuXG4gICAgcmV0dXJuIGRpc2NsYWltZXJzO1xuICB9XG5cbiAgcHJpdmF0ZSBsb2FkT3B0aW9uc09uSW5pdGlhbGl6ZShvbkxvYWQ6IFVybE9yUG9DdXN0b21pemF0aW9uRnVuY3Rpb24pIHtcbiAgICB0aGlzLmxvYWRTdWJzY3JpcHRpb24gPSB0aGlzLmdldFBvRHluYW1pY1BhZ2VPcHRpb25zKG9uTG9hZCkuc3Vic2NyaWJlKHJlc3BvbnNlUG9PcHRpb24gPT5cbiAgICAgIHRoaXMucG9QYWdlQ3VzdG9taXphdGlvblNlcnZpY2UuY2hhbmdlT3JpZ2luYWxPcHRpb25zVG9OZXdPcHRpb25zKHRoaXMsIHJlc3BvbnNlUG9PcHRpb24pXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0UG9EeW5hbWljUGFnZU9wdGlvbnMob25Mb2FkOiBVcmxPclBvQ3VzdG9taXphdGlvbkZ1bmN0aW9uKTogT2JzZXJ2YWJsZTxQb1BhZ2VEeW5hbWljU2VhcmNoT3B0aW9ucz4ge1xuICAgIGNvbnN0IG9yaWdpbmFsT3B0aW9uOiBQb1BhZ2VEeW5hbWljU2VhcmNoT3B0aW9ucyA9IHtcbiAgICAgIHRpdGxlOiB0aGlzLnRpdGxlLFxuICAgICAgYWN0aW9uczogdGhpcy5hY3Rpb25zLFxuICAgICAgYnJlYWRjcnVtYjogdGhpcy5icmVhZGNydW1iLFxuICAgICAgZmlsdGVyczogdGhpcy5maWx0ZXJzLFxuICAgICAga2VlcEZpbHRlcnM6IHRoaXMua2VlcEZpbHRlcnMsXG4gICAgICBjb25jYXRGaWx0ZXJzOiB0aGlzLmNvbmNhdEZpbHRlcnMsXG4gICAgICBoaWRlUmVtb3ZlQWxsRGlzY2xhaW1lcjogdGhpcy5oaWRlUmVtb3ZlQWxsRGlzY2xhaW1lcixcbiAgICAgIGhpZGVDbG9zZURpc2NsYWltZXJzOiB0aGlzLmhpZGVDbG9zZURpc2NsYWltZXJzLFxuICAgICAgcXVpY2tTZWFyY2hXaWR0aDogdGhpcy5xdWlja1NlYXJjaFdpZHRoXG4gICAgfTtcblxuICAgIGNvbnN0IHBhZ2VPcHRpb25TY2hlbWE6IFBvUGFnZUR5bmFtaWNPcHRpb25zU2NoZW1hPFBvUGFnZUR5bmFtaWNTZWFyY2hPcHRpb25zPiA9IHtcbiAgICAgIHNjaGVtYTogW1xuICAgICAgICB7XG4gICAgICAgICAgbmFtZVByb3A6ICdmaWx0ZXJzJyxcbiAgICAgICAgICBtZXJnZTogdHJ1ZSxcbiAgICAgICAgICBrZXlGb3JNZXJnZTogJ3Byb3BlcnR5J1xuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgbmFtZVByb3A6ICdhY3Rpb25zJyxcbiAgICAgICAgICBtZXJnZTogdHJ1ZSxcbiAgICAgICAgICBrZXlGb3JNZXJnZTogJ2xhYmVsJ1xuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgbmFtZVByb3A6ICdicmVhZGNydW1iJ1xuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgbmFtZVByb3A6ICd0aXRsZSdcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG5hbWVQcm9wOiAna2VlcEZpbHRlcnMnXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lUHJvcDogJ2NvbmNhdEZpbHRlcnMnXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lUHJvcDogJ2hpZGVSZW1vdmVBbGxEaXNjbGFpbWVyJ1xuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgbmFtZVByb3A6ICdoaWRlQ2xvc2VEaXNjbGFpbWVycydcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG5hbWVQcm9wOiAncXVpY2tTZWFyY2hXaWR0aCdcbiAgICAgICAgfVxuICAgICAgXVxuICAgIH07XG5cbiAgICByZXR1cm4gdGhpcy5wb1BhZ2VDdXN0b21pemF0aW9uU2VydmljZS5nZXRDdXN0b21PcHRpb25zKG9uTG9hZCwgb3JpZ2luYWxPcHRpb24sIHBhZ2VPcHRpb25TY2hlbWEpO1xuICB9XG59XG4iLCI8cG8tcGFnZS1saXN0XG4gICNwb1BhZ2VMaXN0XG4gIFtwLWFjdGlvbnNdPVwiYWN0aW9uc1wiXG4gIFtwLWJyZWFkY3J1bWJdPVwiYnJlYWRjcnVtYlwiXG4gIFtwLWRpc2NsYWltZXItZ3JvdXBdPVwiZGlzY2xhaW1lckdyb3VwXCJcbiAgW3AtZmlsdGVyXT1cImZpbHRlclNldHRpbmdzXCJcbiAgW3AtdGl0bGVdPVwidGl0bGVcIlxuICBbcC1xdWljay1zZWFyY2gtdmFsdWVdPVwicXVpY2tTZWFyY2hWYWx1ZVwiXG4+XG4gIDxwby1hZHZhbmNlZC1maWx0ZXJcbiAgICBbcC1maWx0ZXJzXT1cImZpbHRlcnNcIlxuICAgIFtwLWtlZXAtZmlsdGVyc109XCJrZWVwRmlsdGVyc1wiXG4gICAgW3AtbGl0ZXJhbHNdPVwiYWR2YW5jZWRGaWx0ZXJMaXRlcmFsc1wiXG4gICAgKHAtc2VhcmNoLWV2ZW50KT1cIm9uQWR2YW5jZWRTZWFyY2goJGV2ZW50LCB0cnVlKVwiXG4gID5cbiAgPC9wby1hZHZhbmNlZC1maWx0ZXI+XG5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9wby1wYWdlLWxpc3Q+XG4iXX0=
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tcGFnZS1keW5hbWljLXNlYXJjaC5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90ZW1wbGF0ZXMvc3JjL2xpYi9jb21wb25lbnRzL3BvLXBhZ2UtZHluYW1pYy1zZWFyY2gvcG8tcGFnZS1keW5hbWljLXNlYXJjaC5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBvRHluYW1pY0Zvcm1GaWVsZCwgUG9QYWdlRGVmYXVsdCB9IGZyb20gJ0Bwby11aS9uZy1jb21wb25lbnRzJztcblxuLyoqXG4gKiBAZG9jc1ByaXZhdGVcbiAqXG4gKiBAZGVzY3JpcHRpb25cbiAqXG4gKiBJbnRlcmZhY2UgcGFyYSBvIGF0cmlidXRvIGBmaWx0ZXJgIGRvIGNvbXBvbmVudGUgYHBvLXBhZ2UtZHluYW1pYy1zZWFyY2hgLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFBvUGFnZUR5bmFtaWNTZWFyY2ggZXh0ZW5kcyBQb1BhZ2VEZWZhdWx0IHtcbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKlxuICAgKiBOb21lIGRvIG3DqXRvZG8gYSBzZXIgZXhlY3V0YWRvIHF1YW5kbyBhIGJ1c2NhIGF2YW7Dp2FkYSBmb3IgZmluYWxpemFkYS5cbiAgICovXG4gIGFkdmFuY2VkU2VhcmNoPzogRnVuY3Rpb247XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKlxuICAgKiBMaXN0YSBkb3MgZmlsdHJvcyB1c2Fkb3MgbmEgYnVzY2EgYXZhbsOnYWRhLlxuICAgKi9cbiAgZmlsdGVycz86IEFycmF5PFBvRHluYW1pY0Zvcm1GaWVsZD47XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKlxuICAgKiBOb21lIGRvIG3DqXRvZG8gYSBzZXIgZXhlY3V0YWRvIHF1YW5kbyDDqSBwcmVzc2lvbmFkbyBhIHRlY2xhIGBFTlRFUmAgZGVudHJvIGRvIGBpbnB1dGAgZGUgcGVzcXVpc2EgcsOhcGlkYSBkbyBjb21wb25lbnRlLCBvIG1lc21vXG4gICAqIHJlY2ViZXLDoSBvIHZhbG9yIGRpZ2l0YWRvIGFvIHNlciBpbnZvY2Fkby5cbiAgICovXG4gIHF1aWNrU2VhcmNoPzogRnVuY3Rpb247XG59XG4iXX0=
@@ -1,52 +0,0 @@
1
- import { CommonModule } from '@angular/common';
2
- import { FormsModule } from '@angular/forms';
3
- import { NgModule } from '@angular/core';
4
- import { RouterModule } from '@angular/router';
5
- import { PoDynamicModule, PoLanguageModule, PoModalModule, PoPageModule } from '@po-ui/ng-components';
6
- import { PoPageCustomizationModule } from '../../services/po-page-customization/po-page-customization.module';
7
- import { PoAdvancedFilterComponent } from './po-advanced-filter/po-advanced-filter.component';
8
- import { PoPageDynamicSearchComponent } from './po-page-dynamic-search.component';
9
- import * as i0 from "@angular/core";
10
- /**
11
- * @description
12
- *
13
- * Módulo do template do po-page-dynamic-search.
14
- */
15
- export class PoPageDynamicSearchModule {
16
- static ɵfac = function PoPageDynamicSearchModule_Factory(t) { return new (t || PoPageDynamicSearchModule)(); };
17
- static ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: PoPageDynamicSearchModule });
18
- static ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonModule,
19
- FormsModule,
20
- RouterModule,
21
- PoDynamicModule,
22
- PoLanguageModule,
23
- PoModalModule,
24
- PoPageModule,
25
- PoPageCustomizationModule] });
26
- }
27
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PoPageDynamicSearchModule, [{
28
- type: NgModule,
29
- args: [{
30
- imports: [
31
- CommonModule,
32
- FormsModule,
33
- RouterModule,
34
- PoDynamicModule,
35
- PoLanguageModule,
36
- PoModalModule,
37
- PoPageModule,
38
- PoPageCustomizationModule
39
- ],
40
- declarations: [PoAdvancedFilterComponent, PoPageDynamicSearchComponent],
41
- exports: [PoPageDynamicSearchComponent]
42
- }]
43
- }], null, null); })();
44
- (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(PoPageDynamicSearchModule, { declarations: [PoAdvancedFilterComponent, PoPageDynamicSearchComponent], imports: [CommonModule,
45
- FormsModule,
46
- RouterModule,
47
- PoDynamicModule,
48
- PoLanguageModule,
49
- PoModalModule,
50
- PoPageModule,
51
- PoPageCustomizationModule], exports: [PoPageDynamicSearchComponent] }); })();
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tcGFnZS1keW5hbWljLXNlYXJjaC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90ZW1wbGF0ZXMvc3JjL2xpYi9jb21wb25lbnRzL3BvLXBhZ2UtZHluYW1pYy1zZWFyY2gvcG8tcGFnZS1keW5hbWljLXNlYXJjaC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLGdCQUFnQixFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUV0RyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxtRUFBbUUsQ0FBQztBQUU5RyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUM5RixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7QUFFbEY7Ozs7R0FJRztBQWdCSCxNQUFNLE9BQU8seUJBQXlCO21GQUF6Qix5QkFBeUI7NERBQXpCLHlCQUF5QjtnRUFibEMsWUFBWTtZQUNaLFdBQVc7WUFDWCxZQUFZO1lBRVosZUFBZTtZQUNmLGdCQUFnQjtZQUNoQixhQUFhO1lBQ2IsWUFBWTtZQUNaLHlCQUF5Qjs7aUZBS2hCLHlCQUF5QjtjQWZyQyxRQUFRO2VBQUM7Z0JBQ1IsT0FBTyxFQUFFO29CQUNQLFlBQVk7b0JBQ1osV0FBVztvQkFDWCxZQUFZO29CQUVaLGVBQWU7b0JBQ2YsZ0JBQWdCO29CQUNoQixhQUFhO29CQUNiLFlBQVk7b0JBQ1oseUJBQXlCO2lCQUMxQjtnQkFDRCxZQUFZLEVBQUUsQ0FBQyx5QkFBeUIsRUFBRSw0QkFBNEIsQ0FBQztnQkFDdkUsT0FBTyxFQUFFLENBQUMsNEJBQTRCLENBQUM7YUFDeEM7O3dGQUNZLHlCQUF5QixtQkFIckIseUJBQXlCLEVBQUUsNEJBQTRCLGFBVnBFLFlBQVk7UUFDWixXQUFXO1FBQ1gsWUFBWTtRQUVaLGVBQWU7UUFDZixnQkFBZ0I7UUFDaEIsYUFBYTtRQUNiLFlBQVk7UUFDWix5QkFBeUIsYUFHakIsNEJBQTRCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmltcG9ydCB7IFBvRHluYW1pY01vZHVsZSwgUG9MYW5ndWFnZU1vZHVsZSwgUG9Nb2RhbE1vZHVsZSwgUG9QYWdlTW9kdWxlIH0gZnJvbSAnQHBvLXVpL25nLWNvbXBvbmVudHMnO1xuXG5pbXBvcnQgeyBQb1BhZ2VDdXN0b21pemF0aW9uTW9kdWxlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvcG8tcGFnZS1jdXN0b21pemF0aW9uL3BvLXBhZ2UtY3VzdG9taXphdGlvbi5tb2R1bGUnO1xuXG5pbXBvcnQgeyBQb0FkdmFuY2VkRmlsdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9wby1hZHZhbmNlZC1maWx0ZXIvcG8tYWR2YW5jZWQtZmlsdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQb1BhZ2VEeW5hbWljU2VhcmNoQ29tcG9uZW50IH0gZnJvbSAnLi9wby1wYWdlLWR5bmFtaWMtc2VhcmNoLmNvbXBvbmVudCc7XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uXG4gKlxuICogTcOzZHVsbyBkbyB0ZW1wbGF0ZSBkbyBwby1wYWdlLWR5bmFtaWMtc2VhcmNoLlxuICovXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIFJvdXRlck1vZHVsZSxcblxuICAgIFBvRHluYW1pY01vZHVsZSxcbiAgICBQb0xhbmd1YWdlTW9kdWxlLFxuICAgIFBvTW9kYWxNb2R1bGUsXG4gICAgUG9QYWdlTW9kdWxlLFxuICAgIFBvUGFnZUN1c3RvbWl6YXRpb25Nb2R1bGVcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbUG9BZHZhbmNlZEZpbHRlckNvbXBvbmVudCwgUG9QYWdlRHluYW1pY1NlYXJjaENvbXBvbmVudF0sXG4gIGV4cG9ydHM6IFtQb1BhZ2VEeW5hbWljU2VhcmNoQ29tcG9uZW50XVxufSlcbmV4cG9ydCBjbGFzcyBQb1BhZ2VEeW5hbWljU2VhcmNoTW9kdWxlIHt9XG4iXX0=
@@ -1,16 +0,0 @@
1
- export * from './po-page-dynamic-table.component';
2
- export * from './interfaces/po-page-dynamic-table-actions.interface';
3
- export * from './interfaces/po-page-dynamic-table-custom-table-action.interface';
4
- export * from './interfaces/po-page-dynamic-table-custom-action.interface';
5
- export * from './interfaces/po-page-dynamic-table-before-duplicate.interface';
6
- export * from './interfaces/po-page-dynamic-table-before-edit.interface';
7
- export * from './interfaces/po-page-dynamic-table-before-new.interface';
8
- export * from './interfaces/po-page-dynamic-table-before-remove.interface';
9
- export * from './interfaces/po-page-dynamic-table-before-remove-all.interface';
10
- export * from './interfaces/po-page-dynamic-table-before-detail.interface';
11
- export * from './interfaces/po-page-dynamic-table-field.interface';
12
- export * from './interfaces/po-page-dynamic-table-options.interface';
13
- export * from './interfaces/po-page-dynamic-table-metadata.interface';
14
- export * from './interfaces/po-page-dynamic-table-filters.interface';
15
- export * from './po-page-dynamic-table.module';
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90ZW1wbGF0ZXMvc3JjL2xpYi9jb21wb25lbnRzL3BvLXBhZ2UtZHluYW1pYy10YWJsZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsc0RBQXNELENBQUM7QUFDckUsY0FBYyxrRUFBa0UsQ0FBQztBQUNqRixjQUFjLDREQUE0RCxDQUFDO0FBQzNFLGNBQWMsK0RBQStELENBQUM7QUFDOUUsY0FBYywwREFBMEQsQ0FBQztBQUN6RSxjQUFjLHlEQUF5RCxDQUFDO0FBQ3hFLGNBQWMsNERBQTRELENBQUM7QUFDM0UsY0FBYyxnRUFBZ0UsQ0FBQztBQUMvRSxjQUFjLDREQUE0RCxDQUFDO0FBQzNFLGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLHVEQUF1RCxDQUFDO0FBQ3RFLGNBQWMsc0RBQXNELENBQUM7QUFFckUsY0FBYyxnQ0FBZ0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcG8tcGFnZS1keW5hbWljLXRhYmxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2ludGVyZmFjZXMvcG8tcGFnZS1keW5hbWljLXRhYmxlLWFjdGlvbnMuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vaW50ZXJmYWNlcy9wby1wYWdlLWR5bmFtaWMtdGFibGUtY3VzdG9tLXRhYmxlLWFjdGlvbi5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9pbnRlcmZhY2VzL3BvLXBhZ2UtZHluYW1pYy10YWJsZS1jdXN0b20tYWN0aW9uLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2ludGVyZmFjZXMvcG8tcGFnZS1keW5hbWljLXRhYmxlLWJlZm9yZS1kdXBsaWNhdGUuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vaW50ZXJmYWNlcy9wby1wYWdlLWR5bmFtaWMtdGFibGUtYmVmb3JlLWVkaXQuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vaW50ZXJmYWNlcy9wby1wYWdlLWR5bmFtaWMtdGFibGUtYmVmb3JlLW5ldy5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9pbnRlcmZhY2VzL3BvLXBhZ2UtZHluYW1pYy10YWJsZS1iZWZvcmUtcmVtb3ZlLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2ludGVyZmFjZXMvcG8tcGFnZS1keW5hbWljLXRhYmxlLWJlZm9yZS1yZW1vdmUtYWxsLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2ludGVyZmFjZXMvcG8tcGFnZS1keW5hbWljLXRhYmxlLWJlZm9yZS1kZXRhaWwuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vaW50ZXJmYWNlcy9wby1wYWdlLWR5bmFtaWMtdGFibGUtZmllbGQuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vaW50ZXJmYWNlcy9wby1wYWdlLWR5bmFtaWMtdGFibGUtb3B0aW9ucy5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9pbnRlcmZhY2VzL3BvLXBhZ2UtZHluYW1pYy10YWJsZS1tZXRhZGF0YS5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9pbnRlcmZhY2VzL3BvLXBhZ2UtZHluYW1pYy10YWJsZS1maWx0ZXJzLmludGVyZmFjZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vcG8tcGFnZS1keW5hbWljLXRhYmxlLm1vZHVsZSc7XG4iXX0=
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tcGFnZS1keW5hbWljLXRhYmxlLWFjdGlvbnMuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGVtcGxhdGVzL3NyYy9saWIvY29tcG9uZW50cy9wby1wYWdlLWR5bmFtaWMtdGFibGUvaW50ZXJmYWNlcy9wby1wYWdlLWR5bmFtaWMtdGFibGUtYWN0aW9ucy5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBvUGFnZUR5bmFtaWNUYWJsZUJlZm9yZUVkaXQgfSBmcm9tICcuL3BvLXBhZ2UtZHluYW1pYy10YWJsZS1iZWZvcmUtZWRpdC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgUG9QYWdlRHluYW1pY1RhYmxlQmVmb3JlTmV3IH0gZnJvbSAnLi9wby1wYWdlLWR5bmFtaWMtdGFibGUtYmVmb3JlLW5ldy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgUG9QYWdlRHluYW1pY1RhYmxlQmVmb3JlUmVtb3ZlIH0gZnJvbSAnLi9wby1wYWdlLWR5bmFtaWMtdGFibGUtYmVmb3JlLXJlbW92ZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgUG9QYWdlRHluYW1pY1RhYmxlQmVmb3JlRGV0YWlsIH0gZnJvbSAnLi9wby1wYWdlLWR5bmFtaWMtdGFibGUtYmVmb3JlLWRldGFpbC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgUG9QYWdlRHluYW1pY1RhYmxlQmVmb3JlRHVwbGljYXRlIH0gZnJvbSAnLi9wby1wYWdlLWR5bmFtaWMtdGFibGUtYmVmb3JlLWR1cGxpY2F0ZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgUG9QYWdlRHluYW1pY1RhYmxlQmVmb3JlUmVtb3ZlQWxsIH0gZnJvbSAnLi9wby1wYWdlLWR5bmFtaWMtdGFibGUtYmVmb3JlLXJlbW92ZS1hbGwuaW50ZXJmYWNlJztcblxuLyoqXG4gKiBAdXNlZEJ5IFBvUGFnZUR5bmFtaWNUYWJsZUNvbXBvbmVudFxuICpcbiAqIEBkZXNjcmlwdGlvblxuICpcbiAqIEludGVyZmFjZSBwYXJhIGFzIGHDp8O1ZXMgZG8gY29tcG9uZW50ZSBwby1wYWdlLWR5bmFtaWMtdGFibGUuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUG9QYWdlRHluYW1pY1RhYmxlQWN0aW9ucyB7XG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogUm90YSBvdSBmdW7Dp8OjbyBwYXJhIGV4aWJpw6fDo28gZG8gcmVjdXJzbyBlbSBkZXRhbGhlLCBjYXNvIHNlamEgcHJlZW5jaGlkYSBpcsOhIGhhYmlsaXRhciBhIGHDp8OjbyBkZSB2aXN1YWxpemHDp8OjbyBuYSB0YWJlbGEuXG4gICAqXG4gICAqID4gQSByb3RhIGRldmUgY29udGVyIHVtIHBhcsOibWV0cm8gY2hhbWFuZG8gaWQuXG4gICAqXG4gICAqIGBgYFxuICAgKiBhY3Rpb25zID0ge1xuICAgKiAgIGRldGFpbDogJ2RldGFpbC86aWQnXG4gICAqIH07XG4gICAqIGBgYFxuICAgKi9cbiAgZGV0YWlsPzogc3RyaW5nIHwgKChpZDogc3RyaW5nLCByZXNvdXJjZTogYW55KSA9PiB2b2lkKTtcblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqXG4gICAqIFJvdGEgb3UgbcOpdG9kbyBxdWUgc2Vyw6EgY2hhbWFkbyBhbnRlcyBkZSBkdXBsaWNhciB1bSByZWN1cnNvIChkdXBsaWNhdGUpLiBPIG3DqXRvZG8gcmVjZWJlIG9zIHBhcsOibWV0cm9zIGBrZXlgIGUgdGFtYsOpbSB1bSBvYmpldG8gY29tIGFzIHByb3ByaWVkYWRlcyBtYXJjYWRhcyBjb20gYGR1cGxpY2F0ZTogdHJ1ZWAuXG4gICAqXG4gICAqIFRhbnRvIG8gbcOpdG9kbyBjb21vIGEgQVBJIGRldmVtIHJldG9ybmFyIHVtIG9iamV0byBjb20gYSBkZWZpbmnDp8OjbyBkZSBgUG9QYWdlRHluYW1pY1RhYmxlQmVmb3JlRHVwbGljYXRlYC5cbiAgICpcbiAgICogPiBBIHVybCBzZXLDoSBjaGFtYWRhIHZpYSBQT1NUIGp1bnRvIGNvbSBhIGtleSBlc3BlY2lmaWNhZGEgbm8gbWV0YWRhdGEsIHBvciBleGVtcGxvOiBgUE9TVCB7YmVmb3JlRHVwbGljYXRlfS97a2V5fWAuXG4gICAqXG4gICAqIENhc28gbyBkZXNlbnZvbHZlZG9yIHF1ZWlyYSBxdWUgYXBhcmXDp2EgYWxndW1hIG1lbnNhZ2VtIG5lc3NhIGHDp8OjbyBlbGUgcG9kZSBjcmnDoS1sYSBuYSBmdW7Dp8OjbyBjaGFtYWRhIHBlbGEgKipiZWZvcmVEdXBsaWNhdGUqKlxuICAgKiBvdSBkZWZpbmlyIGEgbWVuc2FnZW0gbm8gYXRyaWJ1dG8gYF9tZXNzYWdlc2AgbmEgcmVzcG9zdGEgZGEgQVBJIGNvbmZvcm1lIGRlZmluaWRvXG4gICAqIGVtIFtHdWlhIGRlIGltcGxlbWVudGHDp8OjbyBkZSBBUElzXShodHRwczovL3BvLXVpLmlvL2d1aWRlcy9hcGkjc3VjY2Vzc01lc3NhZ2VzKVxuICAgKi9cbiAgYmVmb3JlRHVwbGljYXRlPzogc3RyaW5nIHwgKChrZXk6IHN0cmluZywgcmVzb3VyY2U6IGFueSkgPT4gUG9QYWdlRHluYW1pY1RhYmxlQmVmb3JlRHVwbGljYXRlKTtcblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqXG4gICAqIFJvdGEgb3UgZnVuw6fDo28gcGFyYSBkdXBsaWNhw6fDo28gZG8gcmVjdXJzbywgY2FzbyBzZWphIHByZWVuY2hpZGEgaXLDoSBoYWJpbGl0YXIgYSBhw6fDo28gZGUgZHVwbGljYcOnw6NvIG5hIHRhYmVsYS5cbiAgICpcbiAgICogPiBPcyB2YWxvcmVzIGEgc2VyZW0gZHVwbGljYWRvcyBzZXLDo28gZW52aWFkb3MgdmlhIHF1ZXJ5IHN0cmluZywgZXhjZXRvIHBhcmEgYXF1ZWxlcyBkZWZpbmlkb3MgY29tbyBga2V5OiB0cnVlYCBubyBtZXRhZGF0YS5cbiAgICpcbiAgICogYGBgXG4gICAqIGFjdGlvbnMgPSB7XG4gICAqICAgZHVwbGljYXRlOiAnZHVwbGljYXRlJ1xuICAgKiB9O1xuICAgKiBgYGBcbiAgICpcbiAgICogU2UgZm9yIHBhc3NhZG8gdW0gbcOpdG9kbzpcbiAgICogIC0gcmVjZWJlcsOhIGNvbW8gcGFyw6JtZXRybyBuYSBjaGFtYWRhIGRvIG3DqXRvZG8gdW0gb2JqZXRvIGNvbSBhcyBwcm9wcmllZGFkZXMgbWFyY2FkYXMgY29tIGBkdXBsaWNhdGU6IHRydWVgLCBleGNldG8gcGFyYSBhcXVlbGFzIGRlZmluaWRhcyBjb21vIGBrZXk6IHRydWVgIG5vIG1ldGFkYXRhLlxuICAgKiAgLSDDqSByZXNwb25zYWJpbGlkYWRlIGRvIGRlc2Vudm9sdmVkb3IgaW1wbGVtZW50YXIgYSBuYXZlZ2HDp8OjbyBlL291IGVudmlvIGRvcyBkYWRvc1xuICAgKiBwYXJhIG8gc2Vydmlkb3Igb3Ugb3V0cm8gY29tcG9ydGFtZW50byBkZXNlamFkby5cbiAgICovXG4gIGR1cGxpY2F0ZT86IHN0cmluZyB8ICgocmVzb3VyY2U6IGFueSkgPT4gdm9pZCk7XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKlxuICAgKiBSb3RhIG91IG3DqXRvZG8gcXVlIHNlcsOhIGNoYW1hZG8gYW50ZXMgZGUgZWRpdGFyIHVtIHJlY3Vyc28gKGVkaXQpLlxuICAgKlxuICAgKiBUYW50byBvIG3DqXRvZG8gY29tbyBhIEFQSSBkZXZlbSByZXRvcm5hciB1bSBvYmpldG8gY29tIGEgZGVmaW5pw6fDo28gZGUgYFBvUGFnZUR5bmFtaWNUYWJsZUJlZm9yZUVkaXRgLlxuICAgKlxuICAgKiA+IEEgdXJsIHNlcsOhIGNoYW1hZGEgdmlhIFBPU1QganVudG8gY29tIGEga2V5IGVzcGVjaWZpY2FkYSBubyBtZXRhZGF0YSwgcG9yIGV4ZW1wbG86IGBQT1NUIHtiZWZvcmVFZGl0fS97a2V5fWAuXG4gICAqXG4gICAqIENhc28gbyBkZXNlbnZvbHZlZG9yIHF1ZWlyYSBxdWUgYXBhcmXDp2EgYWxndW1hIG1lbnNhZ2VtIG5lc3NhIGHDp8OjbyBlbGUgcG9kZSBjcmnDoS1sYSBuYSBmdW7Dp8OjbyBjaGFtYWRhIHBlbGEgKipiZWZvcmVFZGl0KipcbiAgICogb3UgZGVmaW5pciBhIG1lbnNhZ2VtIG5vIGF0cmlidXRvIGBfbWVzc2FnZXNgIG5hIHJlc3Bvc3RhIGRhIEFQSSBjb25mb3JtZSBkZWZpbmlkb1xuICAgKiBlbSBbR3VpYSBkZSBpbXBsZW1lbnRhw6fDo28gZGUgQVBJc10oaHR0cHM6Ly9wby11aS5pby9ndWlkZXMvYXBpI3N1Y2Nlc3NNZXNzYWdlcylcbiAgICovXG4gIGJlZm9yZUVkaXQ/OiBzdHJpbmcgfCAoKGlkOiBhbnksIHJlc291cmNlOiBhbnkpID0+IFBvUGFnZUR5bmFtaWNUYWJsZUJlZm9yZUVkaXQpO1xuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogUm90YSBvdSBmdW7Dp8OjbyBwYXJhIGVkacOnw6NvIGRvIHJlY3Vyc28sIGNhc28gc2VqYSBwcmVlbmNoaWRhIGlyw6EgaGFiaWxpdGFyIGEgYcOnw6NvIGRlIGVkacOnw6NvIG5hIHRhYmVsYS5cbiAgICpcbiAgICogPiBBIHJvdGEgZGV2ZSBjb250ZXIgdW0gcGFyw6JtZXRybyBjaGFtYW5kbyBpZC5cbiAgICpcbiAgICogYGBgXG4gICAqIGFjdGlvbnMgPSB7XG4gICAqICAgZWRpdDogJ2VkaXQvOmlkJ1xuICAgKiB9O1xuICAgKiBgYGBcbiAgICpcbiAgICogTmEgZnVuw6fDo28gcG9kZSBzZXIgcmV0b3JuYWRvIHVtIG9iamV0byByZXByZXNlbnRhbmRvIG8gcmVjdXJzbyBtb2RpZmljYWRvLlxuICAgKiBEZXNzYSBmb3JtYSBzZXLDoSBhdHVhbGl6YWRhIGEgbGluaGEgZGEgdGFiZWxhIHF1ZSBlc3TDoSBzZW5kbyBlZGl0YWRhLiBFc3NhIG9ww6fDo28gbsOjbyBhYnJhbmdlIGNhbXBvcyBjb25maWd1cmFkb3MgY29tIGBrZXk6IHRydWVgLlxuICAgKlxuICAgKiA+IFNlIHBhc3NhZGEgdW1hIGZ1bsOnw6NvLCDDqSByZXNwb25zYWJpbGlkYWRlIGRvIGRlc2Vudm9sdmVkb3IgaW1wbGVtZW50YXIgYSBuYXZlZ2HDp8OjbywgZWRpw6fDo28gb3Ugb3V0cm8gY29tcG9ydGFtZW50byBkZXNlamFkby5cbiAgICovXG4gIGVkaXQ/OiBzdHJpbmcgfCAoKGlkOiBzdHJpbmcsIHJlc291cmNlOiBhbnkpID0+IHsgW2tleTogc3RyaW5nXTogYW55IH0pO1xuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogUm90YSBvdSBmdW7Dp8OjbyBwYXJhIGNyaWFyIHVtIG5vdm8gcmVjdXJzbywgY2FzbyBzZWphIHByZWVuY2hpZGEgc2VyYSBleGliaWRvIHVtYSBhw6fDo28gbm8gdG9wbyBkYSBww6FnaW5hLlxuICAgKlxuICAgKiBgYGBcbiAgICogYWN0aW9ucyA9IHtcbiAgICogICBuZXc6ICduZXcnXG4gICAqIH07XG4gICAqIGBgYFxuICAgKi9cbiAgbmV3Pzogc3RyaW5nIHwgRnVuY3Rpb247XG5cbiAgLyoqIEhhYmlsaXRhIGEgYcOnw6NvIGRlIGV4Y2x1c8OjbyBuYSB0YWJlbGEuICovXG4gIHJlbW92ZT86IGJvb2xlYW4gfCAoKGlkOiBzdHJpbmcsIHJlc291cmNlOiBhbnkpID0+IGJvb2xlYW4pO1xuXG4gIC8qKiBIYWJpbGl0YSBhIGHDp8OjbyBkZSBleGNsdXPDo28gZW0gbG90ZSBuYSBww6FnaW5hLlxuICAgKlxuICAgKiBTZSBmb3IgdW0gdmFsb3IgYm9vbGVhbiB0ZXLDoSBvIHNlZ3VpbnRlIGNvbXBvcnRhbWVudG86XG4gICAqIC0gYHRydWVgOiBIYWJpbGl0YSBvIGJvdMOjbyBwYXJhIGV4Y2x1c8OjbyBlbSBsb3RlIGUgY2FzbyBvIHVzdcOhcmlvIGNvbmZpcm1lXG4gICAqIGEgYcOnw6NvIGlyw6EgZW52aWFyIG9zIHJlY3Vyc29zIHNlbGVjaW9uYWRvcyBwYXJhIGEgcm90YSBjb25maWd1cmFkYVxuICAgKlxuICAgKiAtIGBmYWxzZWA6IERlc2FiaWxpdGEgbyBib3TDo29cbiAgICpcbiAgICogU2UgbyB2YWxvciBmb3IgdW1hIGZ1bsOnw6NvIG8gYm90w6NvIGlyw6EgYXBhcmVjZXIgbmEgdGVsYSBlIGNhc28gY29uZmlybWVcbiAgICogYSBmdW7Dp8OjbyBwYXNzYWRhIHNlcsOhIHJlc3BvbnPDoXZlbCBwb3IgdHJhdGFyIGEgZXhjbHVzw6NvIGRvcyByZWN1cnNvc1xuICAgKiBubyBiYWNrLWVuZCBlIHJldG9ybmFyIHVtIGFycmF5IGNvbSBvcyBpdGVucyBxdWUgc2Vyw6NvIGV4Y2x1w61kb3MgZGEgdGFiZWxhLlxuICAgKlxuICAgKiBBIGxpc3RhIGRlIGl0ZW5zIGRldmUgc2VyIGNvbnN0cnXDrWRhIGNvbSB0b2RhcyBhcyBwcm9wcmllZGFkZXNcbiAgICogbWFyY2FkYXMgY29tIG8gYXRyaWJ1dG8gYGtleTogdHJ1ZWAgbmEgc3VhIGRlZmluacOnw6NvIGRhcyBjb2x1bmFzLlxuICAgKlxuICAgKiBQb3IgZXhlbXBsbzpcbiAgICogLSBSZWN1cnNvcyBjb20gYXMgcHJvcHJpZWRhZGVzIGlkIGUgbmFtZSBkZWZpbmlkYXMgY29tbyAqa2V5KjpcbiAgICogYGBgXG4gICAqIFt7IGlkOiAxLCBuYW1lOiAnTWFyaW8nIH0seyBpZDogMiwgbmFtZTogJ0dhYnJpZWwnIH1dXG4gICAqIGBgYFxuICAgKlxuICAgKi9cbiAgcmVtb3ZlQWxsPzogYm9vbGVhbiB8ICgocmVzb3VyY2VzOiBBcnJheTxhbnk+KSA9PiBBcnJheTxhbnk+KTtcblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqXG4gICAqICBNw6l0b2RvL1VSTCBxdWUgZGV2ZSBzZXIgY2hhbWFkbyBhbnRlcyBkYSBhw6fDo28gZGUgaW5jbHVzw6NvXG4gICAqXG4gICAqIFRhbnRvIG8gbcOpdG9kbyBjb21vIGEgQVBJIGRldmVtIHJldG9ybmFyIHVtIG9iamV0byBjb20gYSBkZWZpbmnDp8OjbyBkZSBgUG9QYWdlRHluYW1pY1RhYmxlQmVmb3JlTmV3YC5cbiAgICpcbiAgICogPiBBIHVybCBzZXLDoSBjaGFtYWRhIHZpYSBQT1NUXG4gICAqXG4gICAqIENhc28gbyBkZXNlbnZvbHZlZG9yIHF1ZWlyYSBxdWUgYXBhcmXDp2EgYWxndW1hIG1lbnNhZ2VtIG5lc3NhIGHDp8OjbyBlbGUgcG9kZSBjcmnDoS1sYSBuYSBmdW7Dp8OjbyBjaGFtYWRhIHBlbGEgKipiZWZvcmVOZXcqKlxuICAgKiBvdSBkZWZpbmlyIGEgbWVuc2FnZW0gbm8gYXRyaWJ1dG8gYF9tZXNzYWdlc2AgbmEgcmVzcG9zdGEgZGEgQVBJIGNvbmZvcm1lIGRlZmluaWRvXG4gICAqIGVtIFtHdWlhIGRlIGltcGxlbWVudGHDp8OjbyBkZSBBUElzXShodHRwczovL3BvLXVpLmlvL2d1aWRlcy9hcGkjc3VjY2Vzc01lc3NhZ2VzKVxuICAgKlxuICAgKi9cbiAgYmVmb3JlTmV3Pzogc3RyaW5nIHwgKCgpID0+IFBvUGFnZUR5bmFtaWNUYWJsZUJlZm9yZU5ldyk7XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKlxuICAgKiAgTcOpdG9kby9VUkwgcXVlIGRldmUgc2VyIGNoYW1hZG8gYW50ZXMgZGEgYcOnw6NvIGRlIGV4Y2x1c8Ojb1xuICAgKlxuICAgKiBUYW50byBvIG3DqXRvZG8gY29tbyBhIEFQSSBkZXZlbSByZXRvcm5hciB1bSBvYmpldG8gY29tIGEgZGVmaW5pw6fDo28gZGUgYFBvUGFnZUR5bmFtaWNUYWJsZUJlZm9yZVJlbW92ZWAuXG4gICAqXG4gICAqID4gQSB1cmwgc2Vyw6EgY2hhbWFkYSB2aWEgUE9TVFxuICAgKlxuICAgKiBDYXNvIG8gZGVzZW52b2x2ZWRvciBxdWVpcmEgcXVlIGFwYXJlw6dhIGFsZ3VtYSBtZW5zYWdlbSBuZXNzYSBhw6fDo28gZWxlIHBvZGUgY3Jpw6EtbGEgbmEgZnVuw6fDo28gY2hhbWFkYSBwZWxhICoqYmVmb3JlUmVtb3ZlKipcbiAgICogb3UgZGVmaW5pciBhIG1lbnNhZ2VtIG5vIGF0cmlidXRvIGBfbWVzc2FnZXNgIG5hIHJlc3Bvc3RhIGRhIEFQSSBjb25mb3JtZSBkZWZpbmlkb1xuICAgKiBlbSBbR3VpYSBkZSBpbXBsZW1lbnRhw6fDo28gZGUgQVBJc10oaHR0cHM6Ly9wby11aS5pby9ndWlkZXMvYXBpI3N1Y2Nlc3NNZXNzYWdlcylcbiAgICpcbiAgICovXG4gIGJlZm9yZVJlbW92ZT86IHN0cmluZyB8ICgoaWQ/OiBzdHJpbmcsIHJlc291cmNlPzogYW55KSA9PiBQb1BhZ2VEeW5hbWljVGFibGVCZWZvcmVSZW1vdmUpO1xuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogIE3DqXRvZG8vVVJMIHF1ZSBkZXZlIHNlciBjaGFtYWRvIGFudGVzIGRhIGHDp8OjbyBkZSBpciBwYXJhIG8gZGV0YWxoZVxuICAgKlxuICAgKiBUYW50byBvIG3DqXRvZG8gY29tbyBhIEFQSSBkZXZlbSByZXRvcm5hciB1bSBvYmpldG8gY29tIGEgZGVmaW5pw6fDo28gZGUgYFBvUGFnZUR5bmFtaWNUYWJsZUJlZm9yZURldGFpbGAuXG4gICAqXG4gICAqID4gQSB1cmwgc2Vyw6EgY2hhbWFkYSB2aWEgUE9TVFxuICAgKlxuICAgKiBDYXNvIG8gZGVzZW52b2x2ZWRvciBxdWVpcmEgcXVlIGFwYXJlw6dhIGFsZ3VtYSBtZW5zYWdlbSBuZXNzYSBhw6fDo28gZWxlIHBvZGUgY3Jpw6EtbGEgbmEgZnVuw6fDo28gY2hhbWFkYSBwZWxhICoqYmVmb3JlRGV0YWlsKipcbiAgICogb3UgZGVmaW5pciBhIG1lbnNhZ2VtIG5vIGF0cmlidXRvIGBfbWVzc2FnZXNgIG5hIHJlc3Bvc3RhIGRhIEFQSSBjb25mb3JtZSBkZWZpbmlkb1xuICAgKiBlbSBbR3VpYSBkZSBpbXBsZW1lbnRhw6fDo28gZGUgQVBJc10oaHR0cHM6Ly9wby11aS5pby9ndWlkZXMvYXBpI3N1Y2Nlc3NNZXNzYWdlcylcbiAgICpcbiAgICovXG4gIGJlZm9yZURldGFpbD86IHN0cmluZyB8ICgoaWQ/OiBzdHJpbmcsIHJlc291cmNlPzogYW55KSA9PiBQb1BhZ2VEeW5hbWljVGFibGVCZWZvcmVEZXRhaWwpO1xuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogTcOpdG9kby9VUkwgcXVlIGRldmUgc2VyIGNoYW1hZG8gYW50ZXMgZGUgZXhlY3V0YXIgbyBldmVudG8gZGUgZXhjbHVzw6NvIGVtIGxvdGUgKHJlbW92ZUFsbCkuXG4gICAqXG4gICAqIFRhbnRvIG8gbcOpdG9kbyBjb21vIGEgQVBJIHJlY2ViZXLDo28gdW1hIGxpc3RhIGNvbSBhcyBrZXlzIGRvcyByZWN1cnNvcyBxdWUgc2Vyw6NvIHJlcGFzc2Fkb3MgcGFyYSBvXG4gICAqIGByZW1vdmVBbGxgIHBhcmEgc2VyZW0gZXhjbHXDrWRvcyBlIGRldmVtIHJldG9ybmFyIHVtIG9iamV0byBjb20gYSBkZWZpbmnDp8OjbyBkZVxuICAgKiBgUG9QYWdlRHluYW1pY1RhYmxlQmVmb3JlUmVtb3ZlQWxsYC5cbiAgICpcbiAgICogPiBBIFVSTCBzZXLDoSBjaGFtYWRhIHZpYSBQT1NULlxuICAgKlxuICAgKiBDYXNvIG8gZGVzZW52b2x2ZWRvciBxdWVpcmEgcXVlIGFwYXJlw6dhIGFsZ3VtYSBtZW5zYWdlbSBuZXNzYSBhw6fDo28gZWxlIHBvZGUgY3Jpw6EtbGEgbmEgZnVuw6fDo28gY2hhbWFkYSBwZWxhICoqYmVmb3JlUmVtb3ZlQWxsKipcbiAgICogb3UgZGVmaW5pciBhIG1lbnNhZ2VtIG5vIGF0cmlidXRvIGBfbWVzc2FnZXNgIG5hIHJlc3Bvc3RhIGRhIEFQSSBjb25mb3JtZSBkZWZpbmlkb1xuICAgKiBlbSBbR3VpYSBkZSBpbXBsZW1lbnRhw6fDo28gZGUgQVBJc10oaHR0cHM6Ly9wby11aS5pby9ndWlkZXMvYXBpI3N1Y2Nlc3NNZXNzYWdlcylcbiAgICpcbiAgICovXG4gIGJlZm9yZVJlbW92ZUFsbD86IHN0cmluZyB8ICgocmVzb3VyY2VzPzogQXJyYXk8YW55PikgPT4gUG9QYWdlRHluYW1pY1RhYmxlQmVmb3JlUmVtb3ZlQWxsKTtcbn1cbiJdfQ==
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tcGFnZS1keW5hbWljLXRhYmxlLWJlZm9yZS1kZXRhaWwuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGVtcGxhdGVzL3NyYy9saWIvY29tcG9uZW50cy9wby1wYWdlLWR5bmFtaWMtdGFibGUvaW50ZXJmYWNlcy9wby1wYWdlLWR5bmFtaWMtdGFibGUtYmVmb3JlLWRldGFpbC5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHVzZWRCeSBQb1BhZ2VEeW5hbWljVGFibGVDb21wb25lbnRcbiAqXG4gKiBAZGVzY3JpcHRpb25cbiAqXG4gKiBEZWZpbmnDp8OjbyBkYSBlc3RydXR1cmEgZGUgcmV0b3JubyBkYSB1cmwgb3UgbcOpdG9kbyBleGVjdXRhZG8gYXRyYXbDqXMgZGFcbiAqIHByb3ByaWVkYWRlIGBiZWZvcmVEZXRhaWxgLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFBvUGFnZUR5bmFtaWNUYWJsZUJlZm9yZURldGFpbCB7XG4gIC8qKlxuICAgKiBOb3ZhIHJvdGEgcGFyYSBhYnJpciBvIGRldGFsaGUsIGRldmUgc3Vic3RpdHVpciBhIGZ1bsOnw6NvIG91IHJvdGEgZGVmaW5pZGEgYW50ZXJpb3JtZW50ZVxuICAgKiA+IFNlIGZvciB1bWEgdXJsIGxpdGVyYWwsIHNlcsOhIGZlaXRvIG8gbmF2aWdhdGUgZGlyZXRvIGV4OiBgL3ZpZXcvMjJgLlxuICAgKlxuICAgKiA+IFNlIGEgdXJsIHRlciBvIGNvcmluZ2EgYDppZGAgZXNzZSBpZCBzZXLDoSBzdWJzdGl0dcOtZG8gcGVsYSBjaGF2ZSBkbyByZWN1cnNvIGV4OiBgL3ZpZXcvOmlkYCBzZXLDoSBjb252ZXJ0aWRvIHBhcmEgYC92aWV3LzIyYC5cbiAgICovXG4gIG5ld1VybD86IHN0cmluZztcblxuICAvKipcbiAgICogRGVmaW5lIHNlIGRldmUgb3UgbsOjbyBleGVjdXRhciBhIGHDp8OjbyBkZSBpciBwYXJhIG8gZGV0YWxoZVxuICAgKi9cbiAgYWxsb3dBY3Rpb24/OiBib29sZWFuO1xufVxuIl19
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tcGFnZS1keW5hbWljLXRhYmxlLWJlZm9yZS1kdXBsaWNhdGUuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGVtcGxhdGVzL3NyYy9saWIvY29tcG9uZW50cy9wby1wYWdlLWR5bmFtaWMtdGFibGUvaW50ZXJmYWNlcy9wby1wYWdlLWR5bmFtaWMtdGFibGUtYmVmb3JlLWR1cGxpY2F0ZS5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHVzZWRCeSBQb1BhZ2VEeW5hbWljVGFibGVDb21wb25lbnRcbiAqXG4gKiBAZGVzY3JpcHRpb25cbiAqXG4gKiBEZWZpbmnDp8OjbyBkYSBlc3RydXR1cmEgZGUgcmV0b3JubyBkYSB1cmwgb3UgbcOpdG9kbyBleGVjdXRhZG8gYXRyYXbDqXMgZGFcbiAqIHByb3ByaWVkYWRlIGBiZWZvcmVEdXBsaWNhdGVgLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFBvUGFnZUR5bmFtaWNUYWJsZUJlZm9yZUR1cGxpY2F0ZSB7XG4gIC8qKlxuICAgKiBOb3ZhIHJvdGEgcGFyYSBuYXZlZ2HDp8OjbyBxdWUgc3Vic3RpdHVpcsOhIGEgZGVmaW5pZGEgYW50ZXJpb3JtZW50ZSBlbSBgZHVwbGljYXRlYC5cbiAgICpcbiAgICogPiBPcyB2YWxvcmVzIGEgc2VyZW0gZHVwbGljYWRvcyBzZXLDo28gZW52aWFkb3MgdmlhIHF1ZXJ5IHN0cmluZywgZXhjZXRvIHBhcmEgYXF1ZWxlcyBkZWZpbmlkb3MgY29tbyBga2V5OiB0cnVlYC5cbiAgICovXG4gIG5ld1VybD86IHN0cmluZztcblxuICAvKipcbiAgICogRGVmaW5lIHNlIGRldmUgb3UgbsOjbyBleGVjdXRhciBhIGHDp8OjbyBkZSBkdXBsaWNhw6fDo28gZGUgcmVjdXJzbyAoKmR1cGxpY2F0ZSopXG4gICAqL1xuICBhbGxvd0FjdGlvbj86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqICBPYmpldG8gY29tIGFzIG5vdmFzIHByb3ByaWVkYWRlcyBwYXJhIGR1cGxpY2HDp8OjbywgbyBtZXNtbyBzdWJzdGl0dWlyw6EgbyBvYmpldG8gYXR1YWwuXG4gICAqXG4gICAqID4gRXNzYSBvcMOnw6NvIG7Do28gYWJyYW5nZSBjYW1wb3MgY29uZmlndXJhZG9zIGNvbSBga2V5OiB0cnVlYC5cbiAgICpcbiAgICogPiBPcyBub3ZvcyB2YWxvcmVzIGEgc2VyZW0gZHVwbGljYWRvcyBzZXLDo28gZW52aWFkb3MgdmlhIHF1ZXJ5IHN0cmluZy5cbiAgICpcbiAgICovXG4gIHJlc291cmNlPzogYW55O1xufVxuIl19
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tcGFnZS1keW5hbWljLXRhYmxlLWJlZm9yZS1lZGl0LmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RlbXBsYXRlcy9zcmMvbGliL2NvbXBvbmVudHMvcG8tcGFnZS1keW5hbWljLXRhYmxlL2ludGVyZmFjZXMvcG8tcGFnZS1keW5hbWljLXRhYmxlLWJlZm9yZS1lZGl0LmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAdXNlZEJ5IFBvUGFnZUR5bmFtaWNUYWJsZUNvbXBvbmVudFxuICpcbiAqIEBkZXNjcmlwdGlvblxuICpcbiAqIERlZmluacOnw6NvIGRhIGVzdHJ1dHVyYSBkZSByZXRvcm5vIGRhIHVybCBvdSBtw6l0b2RvIGV4ZWN1dGFkbyBhdHJhdsOpcyBkYVxuICogcHJvcHJpZWRhZGUgYGJlZm9yZUVkaXRgLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFBvUGFnZUR5bmFtaWNUYWJsZUJlZm9yZUVkaXQge1xuICAvKipcbiAgICogTm92YSByb3RhIHBhcmEgbmF2ZWdhw6fDo28gcXVlIHN1YnN0aXR1aXLDoSBhIGRlZmluaWRhIGFudGVyaW9ybWVudGUgZW0gYGVkaXRgLlxuICAgKlxuICAgKiA+IFNlIGZvciB1bWEgdXJsIGxpdGVyYWwsIHNlcsOhIGZlaXRvIG8gbmF2aWdhdGUgZGlyZXRvIGV4OiBgL2VkaXQvMjJgLlxuICAgKlxuICAgKiA+IFNlIGEgdXJsIHRpdmVyIG8gY29yaW5nYSBgOmlkYCBlc3NlIGlkIHNlcsOhIHN1YnN0aXR1w61kbyBwZWxhIGNoYXZlIGRvIHJlY3Vyc28gZXg6IGAvZWRpdC86aWRgIHNlcsOhIGNvbnZlcnRpZG8gcGFyYSBgL2VkaXQvMjJgLlxuICAgKi9cbiAgbmV3VXJsPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEZWZpbmUgc2UgZGV2ZSBvdSBuw6NvIGV4ZWN1dGFyIGEgYcOnw6NvIGRlIGVkacOnw6NvICgqZWRpdCopXG4gICAqL1xuICBhbGxvd0FjdGlvbj86IGJvb2xlYW47XG59XG4iXX0=
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tcGFnZS1keW5hbWljLXRhYmxlLWJlZm9yZS1uZXcuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGVtcGxhdGVzL3NyYy9saWIvY29tcG9uZW50cy9wby1wYWdlLWR5bmFtaWMtdGFibGUvaW50ZXJmYWNlcy9wby1wYWdlLWR5bmFtaWMtdGFibGUtYmVmb3JlLW5ldy5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHVzZWRCeSBQb1BhZ2VEeW5hbWljVGFibGVDb21wb25lbnRcbiAqXG4gKiBAZGVzY3JpcHRpb25cbiAqXG4gKiBEZWZpbmnDp8OjbyBkYSBlc3RydXR1cmEgZGUgcmV0b3JubyBkYSB1cmwgb3UgbcOpdG9kbyBleGVjdXRhZG8gYXRyYXbDqXMgZGFcbiAqIHByb3ByaWVkYWRlIGBiZWZvcmVOZXdgLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFBvUGFnZUR5bmFtaWNUYWJsZUJlZm9yZU5ldyB7XG4gIC8qKlxuICAgKiBOb3ZhIHJvdGEgcGFyYSBzYWx2YXIgbyByZWN1cnNvLCBxdWUgc3Vic3RpdHVpcsOhIGEgcm90YSBkZWZpbmlkYSBhbnRlcmlvcm1lbnRlIGVtIGBuZXdgLlxuICAgKi9cbiAgbmV3VXJsPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEZWZpbmUgc2UgZGV2ZSBvdSBuw6NvIGV4ZWN1dGFyIGEgYcOnw6NvIGRlIGluc2Vyw6fDo28gKG5ldylcbiAgICovXG4gIGFsbG93QWN0aW9uPzogYm9vbGVhbjtcbn1cbiJdfQ==
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tcGFnZS1keW5hbWljLXRhYmxlLWJlZm9yZS1yZW1vdmUtYWxsLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RlbXBsYXRlcy9zcmMvbGliL2NvbXBvbmVudHMvcG8tcGFnZS1keW5hbWljLXRhYmxlL2ludGVyZmFjZXMvcG8tcGFnZS1keW5hbWljLXRhYmxlLWJlZm9yZS1yZW1vdmUtYWxsLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAdXNlZEJ5IFBvUGFnZUR5bmFtaWNUYWJsZUNvbXBvbmVudFxuICpcbiAqIEBkZXNjcmlwdGlvblxuICpcbiAqIERlZmluacOnw6NvIGRhIGVzdHJ1dHVyYSBkZSByZXRvcm5vIGRhIHVybCBvdSBtw6l0b2RvIGV4ZWN1dGFkbyBhdHJhdsOpcyBkYVxuICogcHJvcHJpZWRhZGUgYGJlZm9yZVJlbW92ZUFsbGAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUG9QYWdlRHluYW1pY1RhYmxlQmVmb3JlUmVtb3ZlQWxsIHtcbiAgLyoqXG4gICAqIE5vdmEgcm90YSBwYXJhIGVudmlhciBvIGByZW1vdmUgYWxsYCwgZGV2ZSBzdWJzdGl0dWlyIGEgcm90YSBkZWZpbmlkYSBhbnRlcmlvcm1lbnRlLlxuICAgKlxuICAgKiBDYXNvIG8gYHJlbW92ZSBhbGxgIHNlamEgY29uZmlndXJhZG8gY29tbyBmdW7Dp8OjbyBlIGZvciBwYXNzYWRvIG8gYXRyaWJ1dG8gYG5ld1VybGBcbiAgICogYSBmdW7Dp8OjbyBzZXLDoSBpZ25vcmFkYSBlIG8gY29tYW5kbyBzZXLDoSBlbnZpYWRvIHBlbGEgcm90YSBkZWZpbmlkYSBlbSBgbmV3VXJsYFxuICAgKlxuICAgKi9cbiAgbmV3VXJsPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEZWZpbmUgc2UgZGV2ZSBvdSBuw6NvIGV4ZWN1dGFyIGEgYcOnw6NvIGRlIGV4Y2x1c8OjbyBgKHJlbW92ZSBhbGwpYFxuICAgKi9cbiAgYWxsb3dBY3Rpb24/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBMaXN0YSBjb20gYXMga2V5cyBkb3MgcmVjdXJzb3MgcXVlIHNlcsOjbyBlbnZpYWRvcyBwYXJhIGEgYcOnw6NvIGByZW1vdmVBbGxgXG4gICAqIHF1ZSBwb3Igc3VhIHZleiBleGNsdWlyw6Egb3MgaXRlbnMgZGEgdGFiZWxhLlxuICAgKiBEZXZlIHN1YnN0aXR1aXIgYSBsaXN0YSBzZWxlY2lvbmFkYSBuYSB0ZWxhIHBlbG8gdXN1w6FyaW8uXG4gICAqXG4gICAqIEEgbGlzdGEgw6kgY29uc3RydcOtZGEgY29tIHRvZGFzIGFzIHByb3ByaWVkYWRlcyBtYXJjYWRhcyBjb20gbyBhdHJpYnV0byBga2V5OiB0cnVlYFxuICAgKiBuYSBzdWEgZGVmaW5pw6fDo28uXG4gICAqIFBvciBleGVtcGxvOlxuICAgKlxuICAgKiAtIFJlY3Vyc29zIGNvbSBhcyBwcm9wcmllZGFkZXMgaWQgZSBuYW1lIGRlZmluaWRhcyBjb21vICprZXkqOlxuICAgKiBgYGBcbiAgICogW3sgaWQ6IDEsIG5hbWU6ICdNYXJpbycgfSx7IGlkOiAyLCBuYW1lOiAnR2FicmllbCcgfV1cbiAgICogYGBgXG4gICAqXG4gICAqIEVzc2UgcmVjdXJzbyBzZXLDoSBwYXNzYWRvIHBhcmEgYSBhw6fDo28gYHJlbW92ZUFsbGAgdGFtYsOpbSBzZSBmb3IgdW0gYXJyYXkgdmF6aW8gYFtdYFxuICAgKi9cbiAgcmVzb3VyY2VzPzogQXJyYXk8YW55Pjtcbn1cbiJdfQ==
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tcGFnZS1keW5hbWljLXRhYmxlLWJlZm9yZS1yZW1vdmUuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGVtcGxhdGVzL3NyYy9saWIvY29tcG9uZW50cy9wby1wYWdlLWR5bmFtaWMtdGFibGUvaW50ZXJmYWNlcy9wby1wYWdlLWR5bmFtaWMtdGFibGUtYmVmb3JlLXJlbW92ZS5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHVzZWRCeSBQb1BhZ2VEeW5hbWljVGFibGVDb21wb25lbnRcbiAqXG4gKiBAZGVzY3JpcHRpb25cbiAqXG4gKiBEZWZpbmnDp8OjbyBkYSBlc3RydXR1cmEgZGUgcmV0b3JubyBkYSB1cmwgb3UgbcOpdG9kbyBleGVjdXRhZG8gYXRyYXbDqXMgZGFcbiAqIHByb3ByaWVkYWRlIGBiZWZvcmVSZW1vdmVgLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFBvUGFnZUR5bmFtaWNUYWJsZUJlZm9yZVJlbW92ZSB7XG4gIC8qKlxuICAgKiBOb3ZhIHJvdGEgcGFyYSBlbnZpYXIgbyBkZWxldGUsIGRldmUgc3Vic3RpdHVpciBhIGZ1bsOnw6NvIG91IHJvdGEgZGVmaW5pZGEgYW50ZXJpb3JtZW50ZVxuICAgKi9cbiAgbmV3VXJsPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEZWZpbmUgc2UgZGV2ZSBvdSBuw6NvIGV4ZWN1dGFyIGEgYcOnw6NvIGRlIGV4Y2x1c8OjbyAoZGVsZXRlKVxuICAgKi9cbiAgYWxsb3dBY3Rpb24/OiBib29sZWFuO1xufVxuIl19
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tcGFnZS1keW5hbWljLXRhYmxlLWN1c3RvbS1hY3Rpb24uaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGVtcGxhdGVzL3NyYy9saWIvY29tcG9uZW50cy9wby1wYWdlLWR5bmFtaWMtdGFibGUvaW50ZXJmYWNlcy9wby1wYWdlLWR5bmFtaWMtdGFibGUtY3VzdG9tLWFjdGlvbi5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogQHVzZWRCeSBQb1BhZ2VEeW5hbWljVGFibGVDb21wb25lbnRcbiAqXG4gKiBAZGVzY3JpcHRpb25cbiAqXG4gKiBJbnRlcmZhY2UgY29tIGFzIHByb3ByaWVkYWRlcyBwYXJhIGFkaWNpb25hciB1bWEgYcOnw6NvIGN1c3RvbWl6YWRhIG5hIHDDoWdpbmEuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUG9QYWdlRHluYW1pY1RhYmxlQ3VzdG9tQWN0aW9uIHtcbiAgLyoqXG4gICAqIFLDs3R1bG8gZG8gYm90w6NvIHF1ZSBzZXLDoSBleGliaWRvLlxuICAgKi9cbiAgbGFiZWw6IHN0cmluZztcblxuICAvKipcbiAgICogQcOnw6NvIHF1ZSBzZXLDoSBleGVjdXRhZGEgYW8gY2xpY2FyIG5vIGJvdMOjby5cbiAgICpcbiAgICogQSBhw6fDo28gZG8gdGlwbyBzdHJpbmcgcmVwcmVzZW50YSB1bSBlbmRwb2ludCBxdWUgZGV2ZXLDoSBzZXIgZG8gdGlwbyBgUE9TVGAuXG4gICAqXG4gICAqIEFvIHJlZmVyZW5jaWFyIHVtYSBmdW7Dp8OjbywgdXRpbGl6ZSBlbSBjb25qdW50byBhIHByb3ByaWVkYWRlIGAuYmluZCgpYCwgZGVzdGEgZm9ybWE6XG4gICAqIGBgYFxuICAgKiBhY3Rpb246IHRoaXMubXlGdW5jdGlvbi5iaW5kKHRoaXMpXG4gICAqIGBgYFxuICAgKlxuICAgKiBUYW50byBvIGVuZHBvaW50IHF1YW50byBhIGZ1bsOnw6NvLCByZWNlYmVyw6EgbyByZWN1cnNvIHNlbGVjaW9uYWRvIHBlbG8gdXN1w6FyaW8gbmEgdGFiZWxhLCBjYXNvXG4gICAqIGEgcHJvcHJpZWRhZGUgYHNlbGVjdGFibGVgIHNlamEgYHRydWVgLlxuICAgKlxuICAgKiA+IEFvIHV0aWxpemFyIGEgcHJvcHJpZWRhZGUgYHVybGAgZSBhIGBhY3Rpb25gLCBzb21lbnRlIGEgYGFjdGlvbmAgc2Vyw6EgZXhlY3V0YWRhLlxuICAgKi9cbiAgYWN0aW9uPzogc3RyaW5nIHwgKChyZXNvdXJjZXM/OiBhbnkpID0+IHZvaWQpO1xuXG4gIC8qKlxuICAgKiBSb3RhIHBhcmEgbyBxdWFsIHNlcsOhIHJlZGlyZWNpb25hZG8gYW8gY2xpY2FyIG5vIGJvdMOjby5cbiAgICpcbiAgICogPiBBbyB1dGlsaXphciBhIHByb3ByaWVkYWRlIGB1cmxgIGUgYSBgYWN0aW9uYCwgc29tZW50ZSBhIGBhY3Rpb25gIHNlcsOhIGV4ZWN1dGFkYS5cbiAgICovXG4gIHVybD86IHN0cmluZztcblxuICAvKipcbiAgICogQW8gdXRpbGl6YXIgZXNzYSBwcm9wcmllZGFkZSBlbGEgaGFiaWxpdGEgYSBzZWxlw6fDo28gbmEgdGFiZWxhIGUgdGFtYsOpbSBkZXNhYmlsaXRhXG4gICAqIG8gYm90w6NvIGRlIGHDp8OjbyBjYXNvIG5lbmh1bSByZWN1cnNvIGZvciBzZWxlY2lvbmFkby5cbiAgICovXG4gIHNlbGVjdGFibGU/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogRGVmaW5lIHVtIMOtY29uZSBxdWUgc2Vyw6EgZXhpYmlkbyBhbyBsYWRvIGVzcXVlcmRvIGRvIHLDs3R1bG8uXG4gICAqXG4gICAqIMOJIHBvc3PDrXZlbCB1c2FyIHF1YWxxdWVyIHVtIGRvcyDDrWNvbmVzIGRhIFtCaWJsaW90ZWNhIGRlIMOtY29uZXNdKGh0dHBzOi8vcG8tdWkuaW8vaWNvbnMpLiBjb25mb3JtZSBleGVtcGxvIGFiYWl4bzpcbiAgICogYGBgXG4gICAqIDxwby1jb21wb25lbnRcbiAgICogIFtwLXByb3BlcnR5XT1cIlt7IGxhYmVsOiAnUEhPU1BIT1IgSUNPTicsIGljb246ICdwaCBwaC1uZXdzcGFwZXInIH1dXCI+XG4gICAqIDwvcG8tY29tcG9uZW50PlxuICAgKiBgYGBcbiAgICpcbiAgICogVGFtYsOpbSDDqSBwb3Nzw612ZWwgdXRpbGl6YXIgb3V0cmFzIGZvbnRlcyBkZSDDrWNvbmVzLCBwb3IgZXhlbXBsbyBhIGJpYmxpb3RlY2EgRm9udCBBd2Vzb21lLCBkYSBzZWd1aW50ZSBmb3JtYTpcbiAgICogYGBgXG4gICAqIDxwby1jb21wb25lbnRcbiAgICogIFtwLXByb3BlcnR5XT1cIlt7IGxhYmVsOiAnRkEgSUNPTicsIGljb246ICdmYSBmYS1pY29uLXBvZGNhc3QnIH1dXCI+XG4gICAqIDwvcG8tY29tcG9uZW50PlxuICAgKiBgYGBcbiAgICpcbiAgICogT3V0cmEgb3DDp8OjbyBzZXJpYSBhIGN1c3RvbWl6YcOnw6NvIGRvIMOtY29uZSBhdHJhdsOpcyBkbyBgVGVtcGxhdGVSZWZgLCBjb25mb3JtZSBleGVtcGxvIGFiYWl4bzpcbiAgICogY29tcG9uZW50Lmh0bWw6XG4gICAqIGBgYFxuICAgKiA8bmctdGVtcGxhdGUgI2ljb25UZW1wbGF0ZT5cbiAgICogICA8aW9uLWljb24gbmFtZT1cImhlYXJ0XCI+PC9pb24taWNvbj5cbiAgICogPC9uZy10ZW1wbGF0ZT5cbiAgICpcbiAgICogPHBvLWNvbXBvbmVudCBbcC1wcm9wZXJ0eV09XCJteVByb3BlcnR5XCI+PC9wby1jb21wb25lbnQ+XG4gICAqIGBgYFxuICAgKiBjb21wb25lbnQudHM6XG4gICAqIGBgYFxuICAgKiBAVmlld0NoaWxkKCdpY29uVGVtcGxhdGUnLCB7IHN0YXRpYzogdHJ1ZSB9ICkgaWNvblRlbXBsYXRlIDogVGVtcGxhdGVSZWY8dm9pZD47XG4gICAqXG4gICAqIG15UHJvcGVydHkgPSBbXG4gICAqICB7XG4gICAqICAgIGxhYmVsOiAnRkEgSUNPTicsXG4gICAqICAgIGljb246IHRoaXMuaWNvblRlbXBsYXRlXG4gICAqICB9XG4gICAqIF07XG4gICAqIGBgYFxuICAgKi9cbiAgaWNvbj86IHN0cmluZyB8IFRlbXBsYXRlUmVmPHZvaWQ+O1xuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogRGVmaW5lIHNlIGEgYcOnw6NvIHNlcsOhIHZpc8OtdmVsLlxuICAgKlxuICAgKiA+IENhc28gbyB2YWxvciBuw6NvIHNlamEgZXNwZWNpZmljYWRvIGEgYcOnw6NvIHNlcsOhIHZpc8OtdmVsLlxuICAgKlxuICAgKiBPcMOnw7VlcyBwYXJhIHRvcm5hciBhIGHDp8OjbyB2aXPDrXZlbCBvdSBuw6NvOlxuICAgKlxuICAgKiAgLSBGdW7Dp8OjbyBxdWUgZGV2ZSByZXRvcm5hciB1bSBib29sZWFuby5cbiAgICpcbiAgICogIC0gSW5mb3JtYXIgZGlyZXRhbWVudGUgdW0gdmFsb3IgYm9vbGVhbm8uXG4gICAqXG4gICAqL1xuICB2aXNpYmxlPzogYm9vbGVhbiB8IEZ1bmN0aW9uO1xufVxuIl19
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tcGFnZS1keW5hbWljLXRhYmxlLWN1c3RvbS10YWJsZS1hY3Rpb24uaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGVtcGxhdGVzL3NyYy9saWIvY29tcG9uZW50cy9wby1wYWdlLWR5bmFtaWMtdGFibGUvaW50ZXJmYWNlcy9wby1wYWdlLWR5bmFtaWMtdGFibGUtY3VzdG9tLXRhYmxlLWFjdGlvbi5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogQHVzZWRCeSBQb1BhZ2VEeW5hbWljVGFibGVDb21wb25lbnRcbiAqXG4gKiBAZGVzY3JpcHRpb25cbiAqXG4gKiBJbnRlcmZhY2UgY29tIGFzIHByb3ByaWVkYWRlcyBwYXJhIGFkaWNpb25hciB1bWEgYcOnw6NvIGN1c3RvbWl6YWRhIG5hIHRhYmVsYSBkYSBww6FnaW5hLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFBvUGFnZUR5bmFtaWNUYWJsZUN1c3RvbVRhYmxlQWN0aW9uIHtcbiAgLyoqXG4gICAqIFLDs3R1bG8gZG8gYm90w6NvIHF1ZSBzZXLDoSBleGliaWRvLlxuICAgKi9cbiAgbGFiZWw6IHN0cmluZztcblxuICAvKipcbiAgICogQcOnw6NvIHF1ZSBzZXLDoSBleGVjdXRhZGEgYW8gY2xpY2FyIG5vIGJvdMOjby5cbiAgICpcbiAgICogQSBhw6fDo28gZG8gdGlwbyBzdHJpbmcgcmVwcmVzZW50YSB1bSBlbmRwb2ludCBxdWUgZGV2ZXLDoSBzZXIgZG8gdGlwbyBgUE9TVGAuXG4gICAqXG4gICAqIEFvIHJlZmVyZW5jaWFyIHVtYSBmdW7Dp8OjbywgdXRpbGl6ZSBlbSBjb25qdW50byBhIHByb3ByaWVkYWRlIGAuYmluZCgpYCwgZGVzdGEgZm9ybWE6XG4gICAqIGBgYFxuICAgKiBhY3Rpb246IHRoaXMubXlGdW5jdGlvbi5iaW5kKHRoaXMpXG4gICAqIGBgYFxuICAgKlxuICAgKiBUYW50byBvIGVuZHBvaW50IHF1YW50byBhIGZ1bsOnw6NvIHJlY2ViZW0gbyByZWN1cnNvIGRhIGxpbmhhIHF1ZSBhIGHDp8OjbyBmb2kgZGlzcGFyYWRhLlxuICAgKiBQb2RlbSB0YW1iw6ltIHJldG9ybmFyIG8gcmVjdXJzbyBjb20gZGFkb3MgYWx0ZXJhZG9zIHF1ZSwgY29uc2VxdWVudGVtZW50ZSwgc2Vyw6NvIGF0dWFsaXphZG9zIG5hIHRhYmVsYS5cbiAgICpcbiAgICogPiBBbyB1dGlsaXphciBhIHByb3ByaWVkYWRlIGB1cmxgIGUgYSBgYWN0aW9uYCwgc29tZW50ZSBhIGBhY3Rpb25gIHNlcsOhIGV4ZWN1dGFkYS5cbiAgICovXG4gIGFjdGlvbj86IHN0cmluZyB8ICgocmVzb3VyY2U/OiBhbnkpID0+IGFueSk7XG5cbiAgLyoqXG4gICAqIEZ1bsOnw6NvIHF1ZSBkZXZlIHJldG9ybmFyIHVtIGJvb2xlYW5vIHBhcmEgaGFiaWxpdGFyIG91IGRlc2FiaWxpdGFyIGEgYcOnw6NvIHBhcmEgbyByZWdpc3RybyBzZWxlY2lvbmFkby5cbiAgICpcbiAgICogVGFtYsOpbSDDqSBwb3Nzw612ZWwgaW5mb3JtYXIgZGlyZXRhbWVudGUgdW0gdmFsb3IgYm9vbGVhbm8gcXVlIHZhaSBoYWJpbGl0YXIgb3UgZGVzYWJpbGl0YXIgYSBhw6fDo28gcGFyYSB0b2RvcyBvcyByZWdpc3Ryb3MuXG4gICAqL1xuICBkaXNhYmxlZD86IGJvb2xlYW4gfCBGdW5jdGlvbjtcblxuICAvKipcbiAgICogUm90YSBwYXJhIG8gcXVhbCBzZXLDoSByZWRpcmVjaW9uYWRvIGFvIGNsaWNhciBubyBib3TDo28uXG4gICAqXG4gICAqID4gQW8gdXRpbGl6YXIgYSBwcm9wcmllZGFkZSBgdXJsYCBlIGEgYGFjdGlvbmAsIHNvbWVudGUgYSBgYWN0aW9uYCBzZXLDoSBleGVjdXRhZGEuXG4gICAqL1xuICB1cmw/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBQZXJtaXRlIGNvbmNhdGVuYXIgbyB2YWxvciBkZSBwcm9wcmllZGFkZXMgZGVmaW5pZGFzIGNvbW8ga2V5cyBuYSB1cmwgdmlhIHBhdGggcGFyYW1ldGVyLlxuICAgKlxuICAgKiBDYXNvIGV4aXN0YSBhIG5lY2Vzc2lkYWRlIGRlIHNlIHV0aWl6YXIgbWFpcyBkZSB1bWEga2V5LCBhIGNvbmNhdGVuYcOnw6NvIGVudHJlIGFzIGtleXMgc2Vyw6Egc2VwYXJhZG8gcG9yIHbDrXJndWxhcywgY29uZm9ybWUgZXhlbXBsbzogYC9jaWRhZGUvMixKb2ludmlsbGVgXG4gICAqXG4gICAqID4gUG9kZXLDoSBzZXIgdXRpbGl6YWRhIHNvbWVudGUgZW0gY29uanVudG8gY29tIGEgcHJvcHJpZWRhZGUgUG9QYWdlRHluYW1pY1RhYmxlQ3VzdG9tVGFibGVBY3Rpb24udXJsLCB0YW50byBwYXJhIFVSTCBpbnRlcm5hIHF1YW50byB1cmwgZXh0ZXJuYS5cbiAgICovXG4gIGNvbmNhdEtleXM/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogRGVmaW5lIHVtIMOtY29uZSBxdWUgc2Vyw6EgZXhpYmlkbyBhbyBsYWRvIGVzcXVlcmRvIGRvIHLDs3R1bG8uXG4gICAqXG4gICAqIMOJIHBvc3PDrXZlbCB1c2FyIHF1YWxxdWVyIHVtIGRvcyDDrWNvbmVzIGRhIFtCaWJsaW90ZWNhIGRlIMOtY29uZXNdKGh0dHBzOi8vcG8tdWkuaW8vaWNvbnMpLiBjb25mb3JtZSBleGVtcGxvIGFiYWl4bzpcbiAgICogYGBgXG4gICAqIDxwby1jb21wb25lbnRcbiAgICogIFtwLXByb3BlcnR5XT1cIlt7IGxhYmVsOiAnUEhPU1BIT1IgSUNPTicsIGljb246ICdwaCBwaC1uZXdzcGFwZXInIH1dXCI+XG4gICAqIDwvcG8tY29tcG9uZW50PlxuICAgKiBgYGBcbiAgICpcbiAgICogVGFtYsOpbSDDqSBwb3Nzw612ZWwgdXRpbGl6YXIgb3V0cmFzIGZvbnRlcyBkZSDDrWNvbmVzLCBwb3IgZXhlbXBsbyBhIGJpYmxpb3RlY2EgRm9udCBBd2Vzb21lLCBkYSBzZWd1aW50ZSBmb3JtYTpcbiAgICogYGBgXG4gICAqIDxwby1jb21wb25lbnRcbiAgICogIFtwLXByb3BlcnR5XT1cIlt7IGxhYmVsOiAnRkEgSUNPTicsIGljb246ICdmYSBmYS1pY29uLXBvZGNhc3QnIH1dXCI+XG4gICAqIDwvcG8tY29tcG9uZW50PlxuICAgKiBgYGBcbiAgICpcbiAgICogT3V0cmEgb3DDp8OjbyBzZXJpYSBhIGN1c3RvbWl6YcOnw6NvIGRvIMOtY29uZSBhdHJhdsOpcyBkbyBgVGVtcGxhdGVSZWZgLCBjb25mb3JtZSBleGVtcGxvIGFiYWl4bzpcbiAgICogY29tcG9uZW50Lmh0bWw6XG4gICAqIGBgYFxuICAgKiA8bmctdGVtcGxhdGUgI2ljb25UZW1wbGF0ZT5cbiAgICogICA8aW9uLWljb24gbmFtZT1cImhlYXJ0XCI+PC9pb24taWNvbj5cbiAgICogPC9uZy10ZW1wbGF0ZT5cbiAgICpcbiAgICogPHBvLWNvbXBvbmVudCBbcC1wcm9wZXJ0eV09XCJteVByb3BlcnR5XCI+PC9wby1jb21wb25lbnQ+XG4gICAqIGBgYFxuICAgKiBjb21wb25lbnQudHM6XG4gICAqIGBgYFxuICAgKiBAVmlld0NoaWxkKCdpY29uVGVtcGxhdGUnLCB7IHN0YXRpYzogdHJ1ZSB9ICkgaWNvblRlbXBsYXRlIDogVGVtcGxhdGVSZWY8dm9pZD47XG4gICAqXG4gICAqIG15UHJvcGVydHkgPSBbXG4gICAqICB7XG4gICAqICAgIGxhYmVsOiAnRkEgSUNPTicsXG4gICAqICAgIGljb246IHRoaXMuaWNvblRlbXBsYXRlXG4gICAqICB9XG4gICAqIF07XG4gICAqIGBgYFxuICAgKi9cbiAgaWNvbj86IHN0cmluZyB8IFRlbXBsYXRlUmVmPHZvaWQ+O1xuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogRGVmaW5lIHNlIGEgYcOnw6NvIHNlcsOhIHZpc8OtdmVsLlxuICAgKlxuICAgKiA+IENhc28gbyB2YWxvciBuw6NvIHNlamEgZXNwZWNpZmljYWRvIGEgYcOnw6NvIHNlcsOhIHZpc8OtdmVsLlxuICAgKlxuICAgKiBPcMOnw7VlcyBwYXJhIHRvcm5hciBhIGHDp8OjbyB2aXPDrXZlbCBvdSBuw6NvOlxuICAgKlxuICAgKiAgLSBGdW7Dp8OjbyBxdWUgZGV2ZSByZXRvcm5hciB1bSBib29sZWFuby5cbiAgICpcbiAgICogIC0gSW5mb3JtYXIgZGlyZXRhbWVudGUgdW0gdmFsb3IgYm9vbGVhbm8uXG4gICAqXG4gICAqL1xuICB2aXNpYmxlPzogYm9vbGVhbiB8IEZ1bmN0aW9uO1xufVxuIl19
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tcGFnZS1keW5hbWljLXRhYmxlLWZpZWxkLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RlbXBsYXRlcy9zcmMvbGliL2NvbXBvbmVudHMvcG8tcGFnZS1keW5hbWljLXRhYmxlL2ludGVyZmFjZXMvcG8tcGFnZS1keW5hbWljLXRhYmxlLWZpZWxkLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUG9EeW5hbWljRm9ybUZpZWxkLCBQb1RhYmxlQ29sdW1uTGFiZWwgfSBmcm9tICdAcG8tdWkvbmctY29tcG9uZW50cyc7XG5cbi8qKlxuICogQGRvY3NFeHRlbmRzIFBvRHluYW1pY0Zvcm1GaWVsZFxuICpcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQb1BhZ2VEeW5hbWljVGFibGVGaWVsZCBleHRlbmRzIFBvRHluYW1pY0Zvcm1GaWVsZCB7XG4gIC8qKiBJbmRpY2Egc2UgbyBjYW1wbyBzZXLDoSBkdXBsaWNhZG8gY2FzbyBzZWphIGV4ZWN1dGFkYSBhIGHDp8OjbyBkZSBkdXBsaWNhw6fDo28uICovXG4gIGR1cGxpY2F0ZT86IGJvb2xlYW47XG5cbiAgLyoqIEluZGljYSBzZSBvIGNhbXBvIHNlcsOhIHVzYWRvIHBhcmEgYnVzY2EgYXZhbsOnYWRhLiAqL1xuICBmaWx0ZXI/OiBib29sZWFuO1xuXG4gIC8qKiBUYW1hbmhvIGRhIGNvbHVuYSBlbSBwaXhlbHMgb3UgcG9yY2V0YWdlbS4gKi9cbiAgd2lkdGg/OiBudW1iZXIgfCBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFBlcm1pdGUgbyBjYW1wbyBhcGFyZWNlciBubyBnZXJlbmNpYWRvciBkZSBjb2x1bmFzLCBtZXNtbyBxdWUgZXN0ZWphIHV0aWxpemFuZG8gYHZpc2libGU6IGZhbHNlYCxcbiAgICogcG9zc2liaWxpdGFuZG8gYXRpdmFyIGEgZXhpYmnDp8OjbyBuYSB0YWJlbGEuXG4gICAqXG4gICAqID4gUXVhbmRvIGZvciBgZmFsc2VgLCBzZXLDoSBkZXNjb25zaWRlcmFkby5cbiAgICovXG4gIGFsbG93Q29sdW1uc01hbmFnZXI/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBAb3B0aW9uYWxcbiAgICpcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqXG4gICAqIENvbnRyb2xhIHNlIGEgY29sdW5hIHNlcsOhIGNvbnNpZGVyYWRhIGNvbW8gXCJvcmRlbsOhdmVsXCIuIENhc28gc2VqYSBkZWZpbmlkbyB1bSB2YWxvciBmYWxzbywgYSBjb2x1bmEgbsOjbyBzZXLDoSB1c2FkYSBwYXJhXG4gICAqIG9yZGVuYcOnw6NvLlxuICAgKlxuICAgKiBAZGVmYXVsdCBgdHJ1ZWBcbiAgICovXG4gIHNvcnRhYmxlPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogTGlzdGEgZGUgb2JqZXRvcyBkbyB0aXBvIGBQb1RhYmxlQ29sdW1uTGFiZWxgIHF1ZSByZXByZXNlbnRhIGFzIGxhYmVscyBkaXNwb27DrXZlaXMgbmEgY29sdW5hIGRvIHRpcG8gYGxhYmVsYC5cbiAgICpcbiAgICogRXhlbXBsbyBkZSB1dGlsaXphw6fDo29cbiAgICpcbiAgICogYGBgXG4gICAqIHtcbiAgICogICBwcm9wZXJ0eTogJ3VmJyxcbiAgICogICBsYWJlbDogJ0VzdGFkb3MnLFxuICAgKiAgIHR5cGU6ICdsYWJlbCcsXG4gICAqICAgbGFiZWxzOiBbXG4gICAqICAgICB7IHZhbHVlOiAnU0MnLCBsYWJlbDogJ1NBTlRBIENBVEFSSU5BJywgY29sb3I6ICdjb2xvci0wMicgfSxcbiAgICogICAgIHsgdmFsdWU6ICdTUCcsIGxhYmVsOiAnU0FPIFBBVUxPJywgY29sb3I6ICdjb2xvci0xMCcgfVxuICAgKiAgIF0sXG4gICAqIH1cbiAgICogYGBgXG4gICAqL1xuICBsYWJlbHM/OiBBcnJheTxQb1RhYmxlQ29sdW1uTGFiZWw+O1xufVxuIl19