@koalarx/ui 12.7.19 → 13.0.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 (432) hide show
  1. package/alert/{esm2015/index.js → esm2020/index.mjs} +0 -0
  2. package/alert/{esm2015/koalarx-ui-alert.js → esm2020/koalarx-ui-alert.mjs} +0 -0
  3. package/alert/esm2020/lib/dialog-alert.component.mjs +48 -0
  4. package/alert/{esm2015/lib/koala.alert-config.interface.js → esm2020/lib/koala.alert-config.interface.mjs} +0 -0
  5. package/alert/{esm2015/lib/koala.alert.enum.js → esm2020/lib/koala.alert.enum.mjs} +0 -0
  6. package/alert/esm2020/lib/koala.alert.module.mjs +48 -0
  7. package/alert/esm2020/lib/koala.alert.service.mjs +19 -0
  8. package/alert/{esm2015/lib/koala.request-code-to-alert-enum.translate.js → esm2020/lib/koala.request-code-to-alert-enum.translate.mjs} +0 -0
  9. package/alert/fesm2015/koalarx-ui-alert.mjs +141 -0
  10. package/alert/fesm2015/koalarx-ui-alert.mjs.map +1 -0
  11. package/alert/fesm2020/koalarx-ui-alert.mjs +139 -0
  12. package/alert/fesm2020/koalarx-ui-alert.mjs.map +1 -0
  13. package/alert/koalarx-ui-alert.d.ts +1 -0
  14. package/alert/lib/dialog-alert.component.d.ts +3 -0
  15. package/alert/lib/koala.alert.module.d.ts +10 -0
  16. package/alert/lib/koala.alert.service.d.ts +3 -0
  17. package/alert/package.json +18 -6
  18. package/button/{esm2015/index.js → esm2020/index.mjs} +0 -0
  19. package/button/{esm2015/koalarx-ui-button.js → esm2020/koalarx-ui-button.mjs} +0 -0
  20. package/button/esm2020/lib/button.component.mjs +44 -0
  21. package/button/esm2020/lib/koala.button.module.mjs +42 -0
  22. package/button/fesm2015/koalarx-ui-button.mjs +90 -0
  23. package/button/fesm2015/koalarx-ui-button.mjs.map +1 -0
  24. package/button/fesm2020/koalarx-ui-button.mjs +90 -0
  25. package/button/fesm2020/koalarx-ui-button.mjs.map +1 -0
  26. package/button/koalarx-ui-button.d.ts +1 -0
  27. package/button/lib/button.component.d.ts +6 -1
  28. package/button/lib/koala.button.module.d.ts +10 -0
  29. package/button/package.json +18 -6
  30. package/common/{esm2015/index.js → esm2020/index.mjs} +0 -0
  31. package/common/{esm2015/koalarx-ui-common.js → esm2020/koalarx-ui-common.mjs} +0 -0
  32. package/common/{esm2015/lib/mask-options.js → esm2020/lib/mask-options.mjs} +0 -0
  33. package/common/esm2020/lib/services/csv/koala.csv.service.mjs +36 -0
  34. package/common/{esm2015/lib/services/xlsx/koala.xlsx-config.interface.js → esm2020/lib/services/xlsx/koala.xlsx-config.interface.mjs} +0 -0
  35. package/common/esm2020/lib/services/xlsx/koala.xlsx.service.mjs +73 -0
  36. package/common/fesm2015/{koalarx-ui-common.js → koalarx-ui-common.mjs} +14 -14
  37. package/common/fesm2015/koalarx-ui-common.mjs.map +1 -0
  38. package/common/fesm2020/koalarx-ui-common.mjs +118 -0
  39. package/common/fesm2020/koalarx-ui-common.mjs.map +1 -0
  40. package/common/koalarx-ui-common.d.ts +1 -0
  41. package/common/lib/services/csv/koala.csv.service.d.ts +3 -0
  42. package/common/lib/services/xlsx/koala.xlsx.service.d.ts +3 -0
  43. package/common/package.json +18 -6
  44. package/core/esm2020/index.mjs +35 -0
  45. package/core/esm2020/koalarx-ui-core.mjs +5 -0
  46. package/core/{esm2015/lib/environments/koalaEnvironment.js → esm2020/lib/environments/koalaEnvironment.mjs} +0 -0
  47. package/core/esm2020/lib/loader/loader-bar-page.component.mjs +24 -0
  48. package/core/{esm2015/lib/loader/loader-bar-page.interface.js → esm2020/lib/loader/loader-bar-page.interface.mjs} +0 -0
  49. package/core/{esm2015/lib/loader/loader-config.interface.js → esm2020/lib/loader/loader-config.interface.mjs} +0 -0
  50. package/core/esm2020/lib/ngx-koala.module.mjs +49 -0
  51. package/core/{esm2015/lib/page/koala-language.helper.js → esm2020/lib/page/koala-language.helper.mjs} +0 -0
  52. package/core/{esm2015/lib/page/koala-page-pallet-colors.interface.js → esm2020/lib/page/koala-page-pallet-colors.interface.mjs} +0 -0
  53. package/core/esm2020/lib/page/koala.page.module.mjs +78 -0
  54. package/core/{esm2015/lib/page/koala.user-menu-options.interface.js → esm2020/lib/page/koala.user-menu-options.interface.mjs} +0 -0
  55. package/core/{esm2015/lib/page/notifications/koala.notification.interface.js → esm2020/lib/page/notifications/koala.notification.interface.mjs} +0 -0
  56. package/core/esm2020/lib/page/notifications/notification.component.mjs +47 -0
  57. package/core/esm2020/lib/page/page.component.mjs +404 -0
  58. package/core/esm2020/lib/router/koala.parameter-hash-location-stategy.mjs +18 -0
  59. package/core/esm2020/lib/services/api-requester/factory/koala.response.factory.mjs +44 -0
  60. package/core/{esm2015/lib/services/api-requester/helpers/error/koala.client.error.js → esm2020/lib/services/api-requester/helpers/error/koala.client.error.mjs} +0 -0
  61. package/core/{esm2015/lib/services/api-requester/helpers/error/koala.errors.helper.js → esm2020/lib/services/api-requester/helpers/error/koala.errors.helper.mjs} +0 -0
  62. package/core/{esm2015/lib/services/api-requester/helpers/error/koala.not-found.error.js → esm2020/lib/services/api-requester/helpers/error/koala.not-found.error.mjs} +0 -0
  63. package/core/{esm2015/lib/services/api-requester/helpers/error/koala.success.error.js → esm2020/lib/services/api-requester/helpers/error/koala.success.error.mjs} +0 -0
  64. package/core/{esm2015/lib/services/api-requester/helpers/error/koala.unhautorized.error.js → esm2020/lib/services/api-requester/helpers/error/koala.unhautorized.error.mjs} +0 -0
  65. package/core/{esm2015/lib/services/api-requester/helpers/service/koala.request-header.helper.js → esm2020/lib/services/api-requester/helpers/service/koala.request-header.helper.mjs} +0 -0
  66. package/core/esm2020/lib/services/api-requester/koala.api-requester.base.mjs +63 -0
  67. package/core/esm2020/lib/services/api-requester/koala.api-requester.service.mjs +131 -0
  68. package/core/esm2020/lib/services/loader/koala.loader.service.mjs +34 -0
  69. package/core/{esm2015/lib/services/openid/koala-oauth2-config.interface.js → esm2020/lib/services/openid/koala-oauth2-config.interface.mjs} +0 -0
  70. package/core/esm2020/lib/services/openid/koala.oauth.config.mjs +30 -0
  71. package/core/esm2020/lib/services/openid/koala.oauth2.service.mjs +194 -0
  72. package/core/esm2020/lib/services/request/koala.request.service.mjs +52 -0
  73. package/core/{esm2015/lib/services/token/koala.token.service.js → esm2020/lib/services/token/koala.token.service.mjs} +7 -6
  74. package/core/esm2020/lib/services/token/token.factory.mjs +27 -0
  75. package/core/fesm2015/{koalarx-ui-core.js → koalarx-ui-core.mjs} +249 -191
  76. package/core/fesm2015/koalarx-ui-core.mjs.map +1 -0
  77. package/core/fesm2020/koalarx-ui-core.mjs +1367 -0
  78. package/core/fesm2020/koalarx-ui-core.mjs.map +1 -0
  79. package/core/index.d.ts +1 -0
  80. package/core/koalarx-ui-core.d.ts +1 -2
  81. package/core/lib/loader/loader-bar-page.component.d.ts +5 -1
  82. package/core/lib/ngx-koala.module.d.ts +7 -0
  83. package/core/lib/page/koala.page.module.d.ts +19 -0
  84. package/core/lib/page/notifications/notification.component.d.ts +3 -0
  85. package/core/lib/page/page.component.d.ts +3 -0
  86. package/core/lib/router/koala.parameter-hash-location-stategy.d.ts +3 -0
  87. package/core/lib/services/api-requester/koala.api-requester.service.d.ts +3 -0
  88. package/core/lib/services/loader/koala.loader.service.d.ts +3 -0
  89. package/core/lib/services/openid/koala.oauth2.service.d.ts +3 -0
  90. package/core/lib/services/request/koala.request.service.d.ts +3 -0
  91. package/core/lib/services/token/koala.token.service.d.ts +3 -0
  92. package/core/package.json +18 -6
  93. package/dialog/{esm2015/index.js → esm2020/index.mjs} +0 -0
  94. package/dialog/{esm2015/koalarx-ui-dialog.js → esm2020/koalarx-ui-dialog.mjs} +0 -0
  95. package/dialog/esm2020/lib/dialog.component.mjs +25 -0
  96. package/dialog/{esm2015/lib/koala.dialog-template.interface.js → esm2020/lib/koala.dialog-template.interface.mjs} +0 -0
  97. package/dialog/esm2020/lib/koala.dialog.module.mjs +38 -0
  98. package/dialog/esm2020/lib/koala.dialog.service.mjs +57 -0
  99. package/dialog/fesm2015/koalarx-ui-dialog.mjs +121 -0
  100. package/dialog/fesm2015/koalarx-ui-dialog.mjs.map +1 -0
  101. package/dialog/fesm2020/koalarx-ui-dialog.mjs +121 -0
  102. package/dialog/fesm2020/koalarx-ui-dialog.mjs.map +1 -0
  103. package/dialog/koalarx-ui-dialog.d.ts +1 -0
  104. package/dialog/lib/dialog.component.d.ts +3 -0
  105. package/dialog/lib/koala.dialog.module.d.ts +9 -0
  106. package/dialog/lib/koala.dialog.service.d.ts +3 -0
  107. package/dialog/package.json +18 -6
  108. package/dynamic-component/{esm2015/index.js → esm2020/index.mjs} +0 -0
  109. package/dynamic-component/{esm2015/koalarx-ui-dynamic-component.js → esm2020/koalarx-ui-dynamic-component.mjs} +0 -0
  110. package/dynamic-component/{esm2015/lib/koala-dynamic-component.component.js → esm2020/lib/koala-dynamic-component.component.mjs} +0 -0
  111. package/dynamic-component/esm2020/lib/koala-dynamic-component.directive.mjs +16 -0
  112. package/dynamic-component/esm2020/lib/koala-dynamic-component.factory.mjs +41 -0
  113. package/dynamic-component/{esm2015/lib/koala-dynamic-component.js → esm2020/lib/koala-dynamic-component.mjs} +0 -0
  114. package/dynamic-component/esm2020/lib/koala-dynamic-component.module.mjs +23 -0
  115. package/dynamic-component/fesm2015/koalarx-ui-dynamic-component.mjs +87 -0
  116. package/dynamic-component/fesm2015/koalarx-ui-dynamic-component.mjs.map +1 -0
  117. package/dynamic-component/fesm2020/koalarx-ui-dynamic-component.mjs +86 -0
  118. package/dynamic-component/fesm2020/koalarx-ui-dynamic-component.mjs.map +1 -0
  119. package/dynamic-component/koalarx-ui-dynamic-component.d.ts +1 -0
  120. package/dynamic-component/lib/koala-dynamic-component.directive.d.ts +3 -0
  121. package/dynamic-component/lib/koala-dynamic-component.factory.d.ts +3 -0
  122. package/dynamic-component/lib/koala-dynamic-component.module.d.ts +6 -0
  123. package/dynamic-component/package.json +18 -6
  124. package/file-button/{esm2015/index.js → esm2020/index.mjs} +0 -0
  125. package/file-button/{esm2015/koalarx-ui-file-button.js → esm2020/koalarx-ui-file-button.mjs} +0 -0
  126. package/file-button/esm2020/lib/file-button.component.mjs +125 -0
  127. package/file-button/esm2020/lib/koala.btn-file.service.mjs +25 -0
  128. package/file-button/esm2020/lib/koala.file-button.module.mjs +38 -0
  129. package/file-button/{esm2015/lib/koala.file.interface.js → esm2020/lib/koala.file.interface.mjs} +0 -0
  130. package/file-button/fesm2015/koalarx-ui-file-button.mjs +199 -0
  131. package/file-button/fesm2015/koalarx-ui-file-button.mjs.map +1 -0
  132. package/file-button/fesm2020/koalarx-ui-file-button.mjs +189 -0
  133. package/file-button/fesm2020/koalarx-ui-file-button.mjs.map +1 -0
  134. package/file-button/koalarx-ui-file-button.d.ts +1 -0
  135. package/file-button/lib/file-button.component.d.ts +4 -1
  136. package/file-button/lib/koala.btn-file.service.d.ts +3 -0
  137. package/file-button/lib/koala.file-button.module.d.ts +9 -0
  138. package/file-button/package.json +18 -6
  139. package/folder-page/{esm2015/index.js → esm2020/index.mjs} +0 -0
  140. package/folder-page/{esm2015/koalarx-ui-folder-page.js → esm2020/koalarx-ui-folder-page.mjs} +0 -0
  141. package/folder-page/esm2020/lib/folder.component.mjs +70 -0
  142. package/folder-page/{esm2015/lib/koala-navigate-history.interface.js → esm2020/lib/koala-navigate-history.interface.mjs} +0 -0
  143. package/folder-page/esm2020/lib/koala.folder-page.module.mjs +42 -0
  144. package/folder-page/fesm2015/koalarx-ui-folder-page.mjs +117 -0
  145. package/folder-page/fesm2015/koalarx-ui-folder-page.mjs.map +1 -0
  146. package/folder-page/fesm2020/koalarx-ui-folder-page.mjs +116 -0
  147. package/folder-page/fesm2020/koalarx-ui-folder-page.mjs.map +1 -0
  148. package/folder-page/koalarx-ui-folder-page.d.ts +1 -0
  149. package/folder-page/lib/folder.component.d.ts +6 -2
  150. package/folder-page/lib/koala.folder-page.module.d.ts +10 -0
  151. package/folder-page/package.json +18 -6
  152. package/form/{esm2015/index.js → esm2020/index.mjs} +0 -0
  153. package/form/{esm2015/koalarx-ui-form.js → esm2020/koalarx-ui-form.mjs} +0 -0
  154. package/form/esm2020/lib/btn-submit/btn-submit.component.mjs +49 -0
  155. package/form/esm2020/lib/directives/koala-autofocus.directive.mjs +25 -0
  156. package/form/esm2020/lib/dynamic-form/builder/dynamic-form.builder.mjs +138 -0
  157. package/form/{esm2015/lib/dynamic-form/builder/fields/autocomplete.builder.js → esm2020/lib/dynamic-form/builder/fields/autocomplete.builder.mjs} +0 -0
  158. package/form/esm2020/lib/dynamic-form/builder/fields/field.base.mjs +148 -0
  159. package/form/{esm2015/lib/dynamic-form/builder/fields/field.builder.js → esm2020/lib/dynamic-form/builder/fields/field.builder.mjs} +0 -0
  160. package/form/esm2020/lib/dynamic-form/builder/fields/more-items.builder.mjs +57 -0
  161. package/form/esm2020/lib/dynamic-form/dynamic-form.component.mjs +581 -0
  162. package/form/{esm2015/lib/dynamic-form/enums/dynamic-form-type-field.enum.js → esm2020/lib/dynamic-form/enums/dynamic-form-type-field.enum.mjs} +0 -0
  163. package/form/{esm2015/lib/dynamic-form/interfaces/koala-custom-validator-fn.interface.js → esm2020/lib/dynamic-form/interfaces/koala-custom-validator-fn.interface.mjs} +0 -0
  164. package/form/{esm2015/lib/dynamic-form/interfaces/koala.dynamic-autocomplete-options.interface.js → esm2020/lib/dynamic-form/interfaces/koala.dynamic-autocomplete-options.interface.mjs} +0 -0
  165. package/form/{esm2015/lib/dynamic-form/interfaces/koala.dynamic-form-autocomplete-multiple-config.interface.js → esm2020/lib/dynamic-form/interfaces/koala.dynamic-form-autocomplete-multiple-config.interface.mjs} +0 -0
  166. package/form/{esm2015/lib/dynamic-form/interfaces/koala.dynamic-form-config.interface.js → esm2020/lib/dynamic-form/interfaces/koala.dynamic-form-config.interface.mjs} +0 -0
  167. package/form/{esm2015/lib/dynamic-form/interfaces/koala.dynamic-form-field.interface.js → esm2020/lib/dynamic-form/interfaces/koala.dynamic-form-field.interface.mjs} +0 -0
  168. package/form/{esm2015/lib/dynamic-form/interfaces/koala.dynamic-form-more-itens-show-field-config.interface.js → esm2020/lib/dynamic-form/interfaces/koala.dynamic-form-more-itens-show-field-config.interface.mjs} +0 -0
  169. package/form/{esm2015/lib/dynamic-form/interfaces/koala.dynamic-form-show-field.interface.js → esm2020/lib/dynamic-form/interfaces/koala.dynamic-form-show-field.interface.mjs} +0 -0
  170. package/form/{esm2015/lib/dynamic-form/interfaces/koala.dynamic-set-value.interface.js → esm2020/lib/dynamic-form/interfaces/koala.dynamic-set-value.interface.mjs} +0 -0
  171. package/form/esm2020/lib/dynamic-form/koala.dynamic-form.service.mjs +199 -0
  172. package/form/{esm2015/lib/dynamic-form/validators/autocomplete-selected.validator.js → esm2020/lib/dynamic-form/validators/autocomplete-selected.validator.mjs} +0 -0
  173. package/form/{esm2015/lib/dynamic-form/validators/cnpj.validator.js → esm2020/lib/dynamic-form/validators/cnpj.validator.mjs} +0 -0
  174. package/form/{esm2015/lib/dynamic-form/validators/cpf.validator.js → esm2020/lib/dynamic-form/validators/cpf.validator.mjs} +0 -0
  175. package/form/{esm2015/lib/dynamic-form/validators/date-max.validator.js → esm2020/lib/dynamic-form/validators/date-max.validator.mjs} +0 -0
  176. package/form/{esm2015/lib/dynamic-form/validators/date-min.validator.js → esm2020/lib/dynamic-form/validators/date-min.validator.mjs} +0 -0
  177. package/form/{esm2015/lib/dynamic-form/validators/koala-dynamic-form-validator-result.helper.js → esm2020/lib/dynamic-form/validators/koala-dynamic-form-validator-result.helper.mjs} +0 -0
  178. package/form/{esm2015/lib/dynamic-form/validators/validation.helper.js → esm2020/lib/dynamic-form/validators/validation.helper.mjs} +0 -0
  179. package/form/{esm2015/lib/form.abstract.js → esm2020/lib/form.abstract.mjs} +0 -0
  180. package/form/esm2020/lib/koala.form.module.mjs +134 -0
  181. package/form/{esm2015/lib/show-invalid-fields/show-invalid-fields.js → esm2020/lib/show-invalid-fields/show-invalid-fields.mjs} +0 -0
  182. package/form/fesm2015/koalarx-ui-form.mjs +1575 -0
  183. package/form/fesm2015/koalarx-ui-form.mjs.map +1 -0
  184. package/form/fesm2020/koalarx-ui-form.mjs +1557 -0
  185. package/form/fesm2020/koalarx-ui-form.mjs.map +1 -0
  186. package/form/koalarx-ui-form.d.ts +1 -0
  187. package/form/lib/btn-submit/btn-submit.component.d.ts +3 -0
  188. package/form/lib/directives/koala-autofocus.directive.d.ts +3 -0
  189. package/form/lib/dynamic-form/dynamic-form.component.d.ts +7 -1
  190. package/form/lib/dynamic-form/koala.dynamic-form.service.d.ts +3 -0
  191. package/form/lib/koala.form.module.d.ts +23 -0
  192. package/form/package.json +18 -6
  193. package/icon/{esm2015/index.js → esm2020/index.mjs} +2 -1
  194. package/icon/{esm2015/koalarx-ui-icon.js → esm2020/koalarx-ui-icon.mjs} +0 -0
  195. package/icon/esm2020/lib/icon.component.mjs +46 -0
  196. package/icon/esm2020/lib/koala.icon.module.mjs +26 -0
  197. package/icon/esm2020/lib/koala.icon.type.mjs +2 -0
  198. package/icon/fesm2015/koalarx-ui-icon.mjs +77 -0
  199. package/icon/{esm2015/lib/icon.component.js → fesm2015/koalarx-ui-icon.mjs.map} +1 -45
  200. package/icon/fesm2020/koalarx-ui-icon.mjs +76 -0
  201. package/icon/{fesm2015/koalarx-ui-icon.js → fesm2020/koalarx-ui-icon.mjs.map} +1 -69
  202. package/icon/index.d.ts +1 -0
  203. package/icon/koalarx-ui-icon.d.ts +1 -0
  204. package/icon/lib/icon.component.d.ts +4 -1
  205. package/icon/lib/koala.icon.module.d.ts +6 -0
  206. package/icon/lib/koala.icon.type.d.ts +1 -0
  207. package/icon/package.json +18 -6
  208. package/icons-animated/{esm2015/index.js → esm2020/index.mjs} +0 -0
  209. package/icons-animated/esm2020/koalarx-ui-icons-animated.mjs +5 -0
  210. package/icons-animated/esm2020/lib/icons/downloading/downloading-icon-animated.component.mjs +23 -0
  211. package/icons-animated/esm2020/lib/icons/loading/loading-icon-animated.component.mjs +23 -0
  212. package/icons-animated/esm2020/lib/icons-animated.component.mjs +20 -0
  213. package/icons-animated/esm2020/lib/icons-animated.service.mjs +32 -0
  214. package/icons-animated/esm2020/lib/koala-icons-animated.module.mjs +32 -0
  215. package/icons-animated/fesm2015/koalarx-ui-icons-animated.mjs +122 -0
  216. package/icons-animated/fesm2015/koalarx-ui-icons-animated.mjs.map +1 -0
  217. package/icons-animated/fesm2020/koalarx-ui-icons-animated.mjs +120 -0
  218. package/icons-animated/fesm2020/koalarx-ui-icons-animated.mjs.map +1 -0
  219. package/icons-animated/koalarx-ui-icons-animated.d.ts +1 -1
  220. package/icons-animated/lib/icons/downloading/downloading-icon-animated.component.d.ts +5 -2
  221. package/icons-animated/lib/icons/loading/loading-icon-animated.component.d.ts +5 -2
  222. package/icons-animated/lib/icons-animated.component.d.ts +3 -0
  223. package/icons-animated/lib/icons-animated.service.d.ts +3 -0
  224. package/icons-animated/lib/koala-icons-animated.module.d.ts +8 -0
  225. package/icons-animated/package.json +18 -6
  226. package/list/{esm2015/index.js → esm2020/index.mjs} +0 -0
  227. package/list/{esm2015/koalarx-ui-list.js → esm2020/koalarx-ui-list.mjs} +0 -0
  228. package/list/{esm2015/lib/koala-list-btn-collapse-sub-list-config.interface.js → esm2020/lib/koala-list-btn-collapse-sub-list-config.interface.mjs} +0 -0
  229. package/list/{esm2015/lib/koala-list-filter.interface.js → esm2020/lib/koala-list-filter.interface.mjs} +0 -0
  230. package/list/{esm2015/lib/koala-list-form-filter.interface.js → esm2020/lib/koala-list-form-filter.interface.mjs} +0 -0
  231. package/list/{esm2015/lib/koala-list-item-menu-option.interface.js → esm2020/lib/koala-list-item-menu-option.interface.mjs} +0 -0
  232. package/list/{esm2015/lib/koala-list-item.interface.js → esm2020/lib/koala-list-item.interface.mjs} +0 -0
  233. package/list/{esm2015/lib/koala.list-config.interface.js → esm2020/lib/koala.list-config.interface.mjs} +0 -0
  234. package/list/esm2020/lib/koala.list.module.mjs +70 -0
  235. package/list/esm2020/lib/koala.list.service.mjs +15 -0
  236. package/list/esm2020/lib/list-builder/list.builder.mjs +97 -0
  237. package/list/esm2020/lib/list.abstract.mjs +157 -0
  238. package/list/esm2020/lib/list.component.mjs +171 -0
  239. package/list/esm2020/lib/providers/pagination/pagination.provider.mjs +32 -0
  240. package/list/fesm2015/koalarx-ui-list.mjs +559 -0
  241. package/list/fesm2015/koalarx-ui-list.mjs.map +1 -0
  242. package/list/fesm2020/koalarx-ui-list.mjs +529 -0
  243. package/list/fesm2020/koalarx-ui-list.mjs.map +1 -0
  244. package/list/koalarx-ui-list.d.ts +1 -0
  245. package/list/lib/koala.list.module.d.ts +15 -0
  246. package/list/lib/koala.list.service.d.ts +3 -0
  247. package/list/lib/list.component.d.ts +3 -0
  248. package/list/lib/providers/pagination/pagination.provider.d.ts +3 -0
  249. package/list/package.json +18 -6
  250. package/menu/{esm2015/index.js → esm2020/index.mjs} +0 -0
  251. package/menu/{esm2015/koalarx-ui-menu.js → esm2020/koalarx-ui-menu.mjs} +0 -0
  252. package/menu/{esm2015/lib/koala.menu-module.interface.js → esm2020/lib/koala.menu-module.interface.mjs} +0 -0
  253. package/menu/{esm2015/lib/koala.menu-tool.interface.js → esm2020/lib/koala.menu-tool.interface.mjs} +0 -0
  254. package/menu/esm2020/lib/koala.menu.module.mjs +38 -0
  255. package/menu/esm2020/lib/koala.menu.service.mjs +24 -0
  256. package/menu/esm2020/lib/menu.component.mjs +100 -0
  257. package/menu/fesm2015/koalarx-ui-menu.mjs +167 -0
  258. package/menu/fesm2015/koalarx-ui-menu.mjs.map +1 -0
  259. package/menu/fesm2020/koalarx-ui-menu.mjs +162 -0
  260. package/menu/fesm2020/koalarx-ui-menu.mjs.map +1 -0
  261. package/menu/koalarx-ui-menu.d.ts +1 -0
  262. package/menu/lib/koala.menu.module.d.ts +9 -0
  263. package/menu/lib/koala.menu.service.d.ts +3 -0
  264. package/menu/lib/menu.component.d.ts +6 -0
  265. package/menu/package.json +18 -6
  266. package/package.json +1 -1
  267. package/question/{esm2015/index.js → esm2020/index.mjs} +0 -0
  268. package/question/{esm2015/koalarx-ui-question.js → esm2020/koalarx-ui-question.mjs} +0 -0
  269. package/question/esm2020/lib/dialog-question.component.mjs +25 -0
  270. package/question/{esm2015/lib/koala-question-config.interface.js → esm2020/lib/koala-question-config.interface.mjs} +0 -0
  271. package/question/esm2020/lib/koala.question.module.mjs +42 -0
  272. package/question/esm2020/lib/koala.question.service.mjs +26 -0
  273. package/question/fesm2015/koalarx-ui-question.mjs +95 -0
  274. package/question/fesm2015/koalarx-ui-question.mjs.map +1 -0
  275. package/question/fesm2020/koalarx-ui-question.mjs +93 -0
  276. package/question/fesm2020/koalarx-ui-question.mjs.map +1 -0
  277. package/question/koalarx-ui-question.d.ts +1 -0
  278. package/question/lib/dialog-question.component.d.ts +3 -0
  279. package/question/lib/koala.question.module.d.ts +10 -0
  280. package/question/lib/koala.question.service.d.ts +3 -0
  281. package/question/package.json +18 -6
  282. package/snackbar/{esm2015/index.js → esm2020/index.mjs} +0 -0
  283. package/snackbar/{esm2015/koalarx-ui-snackbar.js → esm2020/koalarx-ui-snackbar.mjs} +0 -0
  284. package/snackbar/esm2020/lib/koala.snackbar.component.mjs +22 -0
  285. package/snackbar/{esm2015/lib/koala.snackbar.interface.js → esm2020/lib/koala.snackbar.interface.mjs} +0 -0
  286. package/snackbar/esm2020/lib/koala.snackbar.module.mjs +38 -0
  287. package/snackbar/esm2020/lib/koala.snackbar.service.mjs +35 -0
  288. package/snackbar/fesm2015/koalarx-ui-snackbar.mjs +95 -0
  289. package/snackbar/fesm2015/koalarx-ui-snackbar.mjs.map +1 -0
  290. package/snackbar/fesm2020/koalarx-ui-snackbar.mjs +93 -0
  291. package/snackbar/fesm2020/koalarx-ui-snackbar.mjs.map +1 -0
  292. package/snackbar/koalarx-ui-snackbar.d.ts +1 -0
  293. package/snackbar/lib/koala.snackbar.component.d.ts +3 -0
  294. package/snackbar/lib/koala.snackbar.module.d.ts +8 -0
  295. package/snackbar/lib/koala.snackbar.service.d.ts +3 -0
  296. package/snackbar/package.json +18 -6
  297. package/alert/bundles/koalarx-ui-alert.umd.js +0 -153
  298. package/alert/bundles/koalarx-ui-alert.umd.js.map +0 -1
  299. package/alert/esm2015/lib/dialog-alert.component.js +0 -43
  300. package/alert/esm2015/lib/koala.alert.module.js +0 -31
  301. package/alert/esm2015/lib/koala.alert.service.js +0 -21
  302. package/alert/fesm2015/koalarx-ui-alert.js +0 -121
  303. package/alert/fesm2015/koalarx-ui-alert.js.map +0 -1
  304. package/alert/koalarx-ui-alert.metadata.json +0 -1
  305. package/button/bundles/koalarx-ui-button.umd.js +0 -71
  306. package/button/bundles/koalarx-ui-button.umd.js.map +0 -1
  307. package/button/esm2015/lib/button.component.js +0 -31
  308. package/button/esm2015/lib/koala.button.module.js +0 -27
  309. package/button/fesm2015/koalarx-ui-button.js +0 -63
  310. package/button/fesm2015/koalarx-ui-button.js.map +0 -1
  311. package/button/koalarx-ui-button.metadata.json +0 -1
  312. package/common/bundles/koalarx-ui-common.umd.js +0 -481
  313. package/common/bundles/koalarx-ui-common.umd.js.map +0 -1
  314. package/common/esm2015/lib/services/csv/koala.csv.service.js +0 -38
  315. package/common/esm2015/lib/services/xlsx/koala.xlsx.service.js +0 -74
  316. package/common/fesm2015/koalarx-ui-common.js.map +0 -1
  317. package/common/koalarx-ui-common.metadata.json +0 -1
  318. package/core/bundles/koalarx-ui-core.umd.js +0 -1716
  319. package/core/bundles/koalarx-ui-core.umd.js.map +0 -1
  320. package/core/esm2015/index.js +0 -34
  321. package/core/esm2015/koalarx-ui-core.js +0 -7
  322. package/core/esm2015/lib/loader/loader-bar-page.component.js +0 -22
  323. package/core/esm2015/lib/ngx-koala.module.js +0 -35
  324. package/core/esm2015/lib/page/koala.page.module.js +0 -46
  325. package/core/esm2015/lib/page/notifications/notification.component.js +0 -43
  326. package/core/esm2015/lib/page/page.component.js +0 -396
  327. package/core/esm2015/lib/router/koala.parameter-hash-location-stategy.js +0 -16
  328. package/core/esm2015/lib/services/api-requester/factory/koala.response.factory.js +0 -48
  329. package/core/esm2015/lib/services/api-requester/koala.api-requester.base.js +0 -70
  330. package/core/esm2015/lib/services/api-requester/koala.api-requester.service.js +0 -134
  331. package/core/esm2015/lib/services/loader/koala.loader.service.js +0 -32
  332. package/core/esm2015/lib/services/openid/koala.oauth.config.js +0 -33
  333. package/core/esm2015/lib/services/openid/koala.oauth2.service.js +0 -201
  334. package/core/esm2015/lib/services/request/koala.request.service.js +0 -53
  335. package/core/esm2015/lib/services/token/token.factory.js +0 -31
  336. package/core/fesm2015/koalarx-ui-core.js.map +0 -1
  337. package/core/koalarx-ui-core.metadata.json +0 -1
  338. package/dialog/bundles/koalarx-ui-dialog.umd.js +0 -139
  339. package/dialog/bundles/koalarx-ui-dialog.umd.js.map +0 -1
  340. package/dialog/esm2015/lib/dialog.component.js +0 -18
  341. package/dialog/esm2015/lib/koala.dialog.module.js +0 -25
  342. package/dialog/esm2015/lib/koala.dialog.service.js +0 -61
  343. package/dialog/fesm2015/koalarx-ui-dialog.js +0 -107
  344. package/dialog/fesm2015/koalarx-ui-dialog.js.map +0 -1
  345. package/dialog/koalarx-ui-dialog.metadata.json +0 -1
  346. package/dynamic-component/bundles/koalarx-ui-dynamic-component.umd.js +0 -95
  347. package/dynamic-component/bundles/koalarx-ui-dynamic-component.umd.js.map +0 -1
  348. package/dynamic-component/esm2015/lib/koala-dynamic-component.directive.js +0 -15
  349. package/dynamic-component/esm2015/lib/koala-dynamic-component.factory.js +0 -38
  350. package/dynamic-component/esm2015/lib/koala-dynamic-component.module.js +0 -17
  351. package/dynamic-component/fesm2015/koalarx-ui-dynamic-component.js +0 -79
  352. package/dynamic-component/fesm2015/koalarx-ui-dynamic-component.js.map +0 -1
  353. package/dynamic-component/koalarx-ui-dynamic-component.metadata.json +0 -1
  354. package/file-button/bundles/koalarx-ui-file-button.umd.js +0 -553
  355. package/file-button/bundles/koalarx-ui-file-button.umd.js.map +0 -1
  356. package/file-button/esm2015/lib/file-button.component.js +0 -118
  357. package/file-button/esm2015/lib/koala.btn-file.service.js +0 -26
  358. package/file-button/esm2015/lib/koala.file-button.module.js +0 -25
  359. package/file-button/fesm2015/koalarx-ui-file-button.js +0 -171
  360. package/file-button/fesm2015/koalarx-ui-file-button.js.map +0 -1
  361. package/file-button/koalarx-ui-file-button.metadata.json +0 -1
  362. package/folder-page/bundles/koalarx-ui-folder-page.umd.js +0 -97
  363. package/folder-page/bundles/koalarx-ui-folder-page.umd.js.map +0 -1
  364. package/folder-page/esm2015/lib/folder.component.js +0 -56
  365. package/folder-page/esm2015/lib/koala.folder-page.module.js +0 -27
  366. package/folder-page/fesm2015/koalarx-ui-folder-page.js +0 -88
  367. package/folder-page/fesm2015/koalarx-ui-folder-page.js.map +0 -1
  368. package/folder-page/koalarx-ui-folder-page.metadata.json +0 -1
  369. package/form/bundles/koalarx-ui-form.umd.js +0 -1969
  370. package/form/bundles/koalarx-ui-form.umd.js.map +0 -1
  371. package/form/esm2015/lib/btn-submit/btn-submit.component.js +0 -39
  372. package/form/esm2015/lib/directives/koala-autofocus.directive.js +0 -25
  373. package/form/esm2015/lib/dynamic-form/builder/dynamic-form.builder.js +0 -141
  374. package/form/esm2015/lib/dynamic-form/builder/fields/field.base.js +0 -151
  375. package/form/esm2015/lib/dynamic-form/builder/fields/more-items.builder.js +0 -57
  376. package/form/esm2015/lib/dynamic-form/dynamic-form.component.js +0 -564
  377. package/form/esm2015/lib/dynamic-form/koala.dynamic-form.service.js +0 -204
  378. package/form/esm2015/lib/koala.form.module.js +0 -69
  379. package/form/fesm2015/koalarx-ui-form.js +0 -1487
  380. package/form/fesm2015/koalarx-ui-form.js.map +0 -1
  381. package/form/koalarx-ui-form.metadata.json +0 -1
  382. package/icon/bundles/koalarx-ui-icon.umd.js +0 -76
  383. package/icon/bundles/koalarx-ui-icon.umd.js.map +0 -1
  384. package/icon/esm2015/lib/koala.icon.module.js +0 -19
  385. package/icon/fesm2015/koalarx-ui-icon.js.map +0 -1
  386. package/icon/koalarx-ui-icon.metadata.json +0 -1
  387. package/icons-animated/bundles/koalarx-ui-icons-animated.umd.js +0 -138
  388. package/icons-animated/bundles/koalarx-ui-icons-animated.umd.js.map +0 -1
  389. package/icons-animated/esm2015/koalarx-ui-icons-animated.js +0 -6
  390. package/icons-animated/esm2015/lib/icons/downloading/downloading-icon-animated.component.js +0 -28
  391. package/icons-animated/esm2015/lib/icons/loading/loading-icon-animated.component.js +0 -28
  392. package/icons-animated/esm2015/lib/icons-animated.component.js +0 -15
  393. package/icons-animated/esm2015/lib/icons-animated.service.js +0 -29
  394. package/icons-animated/esm2015/lib/koala-icons-animated.module.js +0 -23
  395. package/icons-animated/fesm2015/koalarx-ui-icons-animated.js +0 -121
  396. package/icons-animated/fesm2015/koalarx-ui-icons-animated.js.map +0 -1
  397. package/icons-animated/koalarx-ui-icons-animated.metadata.json +0 -1
  398. package/list/bundles/koalarx-ui-list.umd.js +0 -914
  399. package/list/bundles/koalarx-ui-list.umd.js.map +0 -1
  400. package/list/esm2015/lib/koala.list.module.js +0 -42
  401. package/list/esm2015/lib/koala.list.service.js +0 -13
  402. package/list/esm2015/lib/list-builder/list.builder.js +0 -101
  403. package/list/esm2015/lib/list.abstract.js +0 -174
  404. package/list/esm2015/lib/list.component.js +0 -166
  405. package/list/esm2015/lib/providers/pagination/pagination.provider.js +0 -30
  406. package/list/fesm2015/koalarx-ui-list.js +0 -514
  407. package/list/fesm2015/koalarx-ui-list.js.map +0 -1
  408. package/list/koalarx-ui-list.metadata.json +0 -1
  409. package/menu/bundles/koalarx-ui-menu.umd.js +0 -511
  410. package/menu/bundles/koalarx-ui-menu.umd.js.map +0 -1
  411. package/menu/esm2015/lib/koala.menu.module.js +0 -25
  412. package/menu/esm2015/lib/koala.menu.service.js +0 -22
  413. package/menu/esm2015/lib/menu.component.js +0 -104
  414. package/menu/fesm2015/koalarx-ui-menu.js +0 -153
  415. package/menu/fesm2015/koalarx-ui-menu.js.map +0 -1
  416. package/menu/koalarx-ui-menu.metadata.json +0 -1
  417. package/question/bundles/koalarx-ui-question.umd.js +0 -104
  418. package/question/bundles/koalarx-ui-question.umd.js.map +0 -1
  419. package/question/esm2015/lib/dialog-question.component.js +0 -20
  420. package/question/esm2015/lib/koala.question.module.js +0 -27
  421. package/question/esm2015/lib/koala.question.service.js +0 -28
  422. package/question/fesm2015/koalarx-ui-question.js +0 -77
  423. package/question/fesm2015/koalarx-ui-question.js.map +0 -1
  424. package/question/koalarx-ui-question.metadata.json +0 -1
  425. package/snackbar/bundles/koalarx-ui-snackbar.umd.js +0 -93
  426. package/snackbar/bundles/koalarx-ui-snackbar.umd.js.map +0 -1
  427. package/snackbar/esm2015/lib/koala.snackbar.component.js +0 -20
  428. package/snackbar/esm2015/lib/koala.snackbar.module.js +0 -26
  429. package/snackbar/esm2015/lib/koala.snackbar.service.js +0 -35
  430. package/snackbar/fesm2015/koalarx-ui-snackbar.js +0 -81
  431. package/snackbar/fesm2015/koalarx-ui-snackbar.js.map +0 -1
  432. package/snackbar/koalarx-ui-snackbar.metadata.json +0 -1
@@ -1,204 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { DynamicFormTypeFieldEnum } from './enums/dynamic-form-type-field.enum';
3
- import { FormBuilder, Validators } from '@angular/forms';
4
- import { BehaviorSubject, Observable } from 'rxjs';
5
- import { DynamicFormBuilder } from "./builder/dynamic-form.builder";
6
- import { koala } from "@koalarx/utils";
7
- import { DateMinValidator } from "./validators/date-min.validator";
8
- import { DateMaxValidator } from "./validators/date-max.validator";
9
- import { DeviceDetectorService } from "ngx-device-detector";
10
- import { unmaskCoin } from "@koalarx/utils/operators/string";
11
- import * as i0 from "@angular/core";
12
- import * as i1 from "@angular/forms";
13
- import * as i2 from "ngx-device-detector";
14
- export class KoalaDynamicFormService {
15
- constructor(fb, deviceService) {
16
- this.fb = fb;
17
- this.deviceService = deviceService;
18
- }
19
- build() {
20
- return new DynamicFormBuilder(this.fb, this.deviceService);
21
- }
22
- updateValidator(formGroup, name, type, value) {
23
- if (type === 'required' && typeof value !== 'boolean') {
24
- throw new Error(`Type required cannot be a ${typeof value}`);
25
- }
26
- else if ((type === 'min' || type === 'max') && typeof value === "boolean") {
27
- throw new Error(`Type ${type} cannot be a boolean`);
28
- }
29
- const formArray = formGroup.get('formData');
30
- const control = formArray.controls.find(control => control.get('name').value === name);
31
- if (control) {
32
- const currentRequired = control.get('required').value;
33
- const currentMin = control.get('min').value;
34
- const currentMax = control.get('max').value;
35
- const validators = [];
36
- control.get('value').clearValidators();
37
- control.get('value').setErrors(null);
38
- if ((type === "required" && value) || currentRequired) {
39
- validators.push(Validators.required);
40
- control.get('value').setErrors({ required: true });
41
- }
42
- if ((type === "min" || currentMin)) {
43
- if (typeof value === "number") {
44
- validators.push(Validators.min((type === "min" ? value : currentMin)));
45
- control.get('value').setErrors({ min: true });
46
- }
47
- else if (typeof value === "string") {
48
- validators.push(DateMinValidator((type === "min" ? value : currentMin)));
49
- control.get('value').setErrors({ dateMin: true });
50
- }
51
- }
52
- if ((type === "max" || currentMax)) {
53
- if (typeof value === "number") {
54
- validators.push(Validators.max((type === "max" ? value : currentMax)));
55
- control.get('value').setErrors({ max: true });
56
- }
57
- else if (typeof value === "string") {
58
- validators.push(DateMaxValidator((type === "max" ? value : currentMax)));
59
- control.get('value').setErrors({ dateMax: true });
60
- }
61
- }
62
- if (type === "required") {
63
- control.get('required').setValue(value);
64
- }
65
- else if (type === "min") {
66
- control.get('min').setValue(value);
67
- }
68
- else if (type === "max") {
69
- control.get('max').setValue(value);
70
- }
71
- control.get('value').setValidators(validators);
72
- control.get('value').updateValueAndValidity();
73
- }
74
- }
75
- emitData(form) {
76
- const data = {};
77
- const formArray = form.get('formData');
78
- formArray === null || formArray === void 0 ? void 0 : formArray.controls.forEach(control => {
79
- var _a;
80
- if (control.get('show').value.getValue() !== false) {
81
- let value = control.get('value').value;
82
- if (control.get('type').value === DynamicFormTypeFieldEnum.valueList) {
83
- if (value === null || value === undefined) {
84
- value = '';
85
- }
86
- value = koala(value).string().split().getValue();
87
- }
88
- else if (control.get('type').value === DynamicFormTypeFieldEnum.moreItems) {
89
- const moreItems = control.get('moreItemsConfig').value;
90
- value = [];
91
- moreItems.forEach(item => {
92
- value.push(this.emitData(item.form));
93
- });
94
- }
95
- else if (control.get('type').value === DynamicFormTypeFieldEnum.autocomplete) {
96
- if (control.get('multiple').value) {
97
- const options = control.get('autocompleteSelectedValue').value;
98
- value = options === null || options === void 0 ? void 0 : options.map(item => item === null || item === void 0 ? void 0 : item.value);
99
- }
100
- else {
101
- value = (((_a = control.get('autocompleteSelectedValue').value) === null || _a === void 0 ? void 0 : _a.value) ?
102
- control.get('autocompleteSelectedValue').value.value :
103
- control.get('autocompleteSelectedValue').value);
104
- }
105
- }
106
- else if (control.get('type').value === DynamicFormTypeFieldEnum.dynamicForm) {
107
- const dynamicFormConfig = control.get('dynamicFormConfig').value;
108
- value = this.emitData(dynamicFormConfig.getValue().form);
109
- }
110
- else if (control.get('type').value === DynamicFormTypeFieldEnum.number) {
111
- value = parseInt(value);
112
- }
113
- else if ((control.get('type').value === DynamicFormTypeFieldEnum.float ||
114
- control.get('type').value === DynamicFormTypeFieldEnum.percent) && typeof value === "string") {
115
- value = parseFloat(value.replace(/,/g, '.'));
116
- }
117
- else if (control.get('type').value === DynamicFormTypeFieldEnum.coin &&
118
- typeof value === "string") {
119
- value = unmaskCoin(value);
120
- }
121
- data[control.get('name').value] = value;
122
- }
123
- });
124
- return data;
125
- }
126
- resetForm(form) {
127
- const formArray = form.get('formData');
128
- formArray.controls.forEach(control => {
129
- if (control.get('type').value === DynamicFormTypeFieldEnum.moreItems) {
130
- control.get('moreItemsConfig').setValue([]);
131
- }
132
- else {
133
- control.get('value').reset();
134
- }
135
- });
136
- }
137
- setValuesInMoreItemsForm(subject, values) {
138
- const valuesMoreItems = [];
139
- values.forEach(itemValue => {
140
- valuesMoreItems.push(new BehaviorSubject(itemValue));
141
- });
142
- subject.next(valuesMoreItems);
143
- }
144
- autocompleteFilterOnServer(request, nameConfig, indexNameByValue) {
145
- return new Observable(observe => {
146
- request().then(response => {
147
- const options = [];
148
- response.forEach(item => {
149
- var _a;
150
- let value = '';
151
- if ((indexNameByValue === null || indexNameByValue === void 0 ? void 0 : indexNameByValue.indexOf(' > ')) >= 0) {
152
- value = this.getValueByStringPath(indexNameByValue, item);
153
- }
154
- else if (indexNameByValue) {
155
- value = item[indexNameByValue];
156
- }
157
- else {
158
- value = item;
159
- }
160
- options.push({
161
- name: koala(item).object().toString(nameConfig.propsByName, ((_a = nameConfig.delimiter) !== null && _a !== void 0 ? _a : ' ')).getValue(),
162
- value
163
- });
164
- });
165
- observe.next(options);
166
- });
167
- });
168
- }
169
- showFields(subject, names, show, clearCurrentValue = false) {
170
- const fields = [];
171
- names.forEach(name => {
172
- fields.push({
173
- name,
174
- show,
175
- clearCurrentValue
176
- });
177
- });
178
- subject.next(fields);
179
- }
180
- getValueByStringPath(indexNameByValue, item) {
181
- let value;
182
- const partsIndex = indexNameByValue.split(' > ');
183
- let partIndex = 0;
184
- do {
185
- if (!value) {
186
- value = item[partsIndex[partIndex]];
187
- }
188
- else {
189
- value = value[partsIndex[partIndex]];
190
- }
191
- partIndex++;
192
- } while (partIndex < partsIndex.length);
193
- return value;
194
- }
195
- }
196
- KoalaDynamicFormService.ɵprov = i0.ɵɵdefineInjectable({ factory: function KoalaDynamicFormService_Factory() { return new KoalaDynamicFormService(i0.ɵɵinject(i1.FormBuilder), i0.ɵɵinject(i2.DeviceDetectorService)); }, token: KoalaDynamicFormService, providedIn: "any" });
197
- KoalaDynamicFormService.decorators = [
198
- { type: Injectable, args: [{ providedIn: "any" },] }
199
- ];
200
- KoalaDynamicFormService.ctorParameters = () => [
201
- { type: FormBuilder },
202
- { type: DeviceDetectorService }
203
- ];
204
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia29hbGEuZHluYW1pYy1mb3JtLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mb3JtL3NyYy9saWIvZHluYW1pYy1mb3JtL2tvYWxhLmR5bmFtaWMtZm9ybS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDaEYsT0FBTyxFQUFhLFdBQVcsRUFBYSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUvRSxPQUFPLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUluRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdkMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDbkUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDbkUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7O0FBSzdELE1BQU0sT0FBTyx1QkFBdUI7SUFFbEMsWUFDWSxFQUFlLEVBQ2YsYUFBb0M7UUFEcEMsT0FBRSxHQUFGLEVBQUUsQ0FBYTtRQUNmLGtCQUFhLEdBQWIsYUFBYSxDQUF1QjtJQUNoRCxDQUFDO0lBRU0sS0FBSztRQUNWLE9BQU8sSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRU0sZUFBZSxDQUFDLFNBQW9CLEVBQUUsSUFBWSxFQUFFLElBQW1DLEVBQUUsS0FB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VXRCLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IER5bmFtaWNGb3JtVHlwZUZpZWxkRW51bSB9IGZyb20gJy4vZW51bXMvZHluYW1pYy1mb3JtLXR5cGUtZmllbGQuZW51bSc7XG5pbXBvcnQgeyBGb3JtQXJyYXksIEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBLb2FsYUR5bmFtaWNTZXRWYWx1ZUludGVyZmFjZSB9IGZyb20gJy4vaW50ZXJmYWNlcy9rb2FsYS5keW5hbWljLXNldC12YWx1ZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBLb2FsYUR5bmFtaWNBdXRvY29tcGxldGVPcHRpb25zSW50ZXJmYWNlIH0gZnJvbSAnLi9pbnRlcmZhY2VzL2tvYWxhLmR5bmFtaWMtYXV0b2NvbXBsZXRlLW9wdGlvbnMuaW50ZXJmYWNlJztcbmltcG9ydCB7IEtvYWxhRHluYW1pY0Zvcm1TaG93RmllbGRJbnRlcmZhY2UgfSBmcm9tICcuL2ludGVyZmFjZXMva29hbGEuZHluYW1pYy1mb3JtLXNob3ctZmllbGQuaW50ZXJmYWNlJztcbmltcG9ydCB7IEtvYWxhRHluYW1pY0Zvcm1Db25maWdJbnRlcmZhY2UgfSBmcm9tICcuL2ludGVyZmFjZXMva29hbGEuZHluYW1pYy1mb3JtLWNvbmZpZy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgRHluYW1pY0Zvcm1CdWlsZGVyIH0gZnJvbSBcIi4vYnVpbGRlci9keW5hbWljLWZvcm0uYnVpbGRlclwiO1xuaW1wb3J0IHsga29hbGEgfSBmcm9tIFwiQGtvYWxhcngvdXRpbHNcIjtcbmltcG9ydCB7IERhdGVNaW5WYWxpZGF0b3IgfSBmcm9tIFwiLi92YWxpZGF0b3JzL2RhdGUtbWluLnZhbGlkYXRvclwiO1xuaW1wb3J0IHsgRGF0ZU1heFZhbGlkYXRvciB9IGZyb20gXCIuL3ZhbGlkYXRvcnMvZGF0ZS1tYXgudmFsaWRhdG9yXCI7XG5pbXBvcnQgeyBEZXZpY2VEZXRlY3RvclNlcnZpY2UgfSBmcm9tIFwibmd4LWRldmljZS1kZXRlY3RvclwiO1xuaW1wb3J0IHsgdW5tYXNrQ29pbiB9IGZyb20gXCJAa29hbGFyeC91dGlscy9vcGVyYXRvcnMvc3RyaW5nXCI7XG5cbmV4cG9ydCB0eXBlIEtvYWxhRHluYW1pY0Zvcm1WYWxpZGF0b3JUeXBlID0gJ3JlcXVpcmVkJyB8ICdtaW4nIHwgJ21heCc7XG5cbkBJbmplY3RhYmxlKHtwcm92aWRlZEluOiBcImFueVwifSlcbmV4cG9ydCBjbGFzcyBLb2FsYUR5bmFtaWNGb3JtU2VydmljZSB7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIGZiOiBGb3JtQnVpbGRlcixcbiAgICBwcm90ZWN0ZWQgZGV2aWNlU2VydmljZTogRGV2aWNlRGV0ZWN0b3JTZXJ2aWNlKSB7XG4gIH1cblxuICBwdWJsaWMgYnVpbGQoKSB7XG4gICAgcmV0dXJuIG5ldyBEeW5hbWljRm9ybUJ1aWxkZXIodGhpcy5mYiwgdGhpcy5kZXZpY2VTZXJ2aWNlKTtcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVWYWxpZGF0b3IoZm9ybUdyb3VwOiBGb3JtR3JvdXAsIG5hbWU6IHN0cmluZywgdHlwZTogS29hbGFEeW5hbWljRm9ybVZhbGlkYXRvclR5cGUsIHZhbHVlOiBib29sZWFuIHwgbnVtYmVyIHwgc3RyaW5nKSB7XG4gICAgaWYgKHR5cGUgPT09ICdyZXF1aXJlZCcgJiYgdHlwZW9mIHZhbHVlICE9PSAnYm9vbGVhbicpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgVHlwZSByZXF1aXJlZCBjYW5ub3QgYmUgYSAke3R5cGVvZiB2YWx1ZX1gKTtcbiAgICB9IGVsc2UgaWYgKCh0eXBlID09PSAnbWluJyB8fCB0eXBlID09PSAnbWF4JykgJiYgdHlwZW9mIHZhbHVlID09PSBcImJvb2xlYW5cIikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBUeXBlICR7dHlwZX0gY2Fubm90IGJlIGEgYm9vbGVhbmApO1xuICAgIH1cblxuICAgIGNvbnN0IGZvcm1BcnJheSA9IGZvcm1Hcm91cC5nZXQoJ2Zvcm1EYXRhJykgYXMgRm9ybUFycmF5O1xuICAgIGNvbnN0IGNvbnRyb2wgPSBmb3JtQXJyYXkuY29udHJvbHMuZmluZChjb250cm9sID0+IGNvbnRyb2wuZ2V0KCduYW1lJykudmFsdWUgPT09IG5hbWUpO1xuXG4gICAgaWYgKGNvbnRyb2wpIHtcbiAgICAgIGNvbnN0IGN1cnJlbnRSZXF1aXJlZCA9IGNvbnRyb2wuZ2V0KCdyZXF1aXJlZCcpLnZhbHVlO1xuICAgICAgY29uc3QgY3VycmVudE1pbiA9IGNvbnRyb2wuZ2V0KCdtaW4nKS52YWx1ZTtcbiAgICAgIGNvbnN0IGN1cnJlbnRNYXggPSBjb250cm9sLmdldCgnbWF4JykudmFsdWU7XG4gICAgICBjb25zdCB2YWxpZGF0b3JzID0gW107XG5cbiAgICAgIGNvbnRyb2wuZ2V0KCd2YWx1ZScpLmNsZWFyVmFsaWRhdG9ycygpO1xuICAgICAgY29udHJvbC5nZXQoJ3ZhbHVlJykuc2V0RXJyb3JzKG51bGwpO1xuXG4gICAgICBpZiAoKHR5cGUgPT09IFwicmVxdWlyZWRcIiAmJiB2YWx1ZSkgfHwgY3VycmVudFJlcXVpcmVkKSB7XG4gICAgICAgIHZhbGlkYXRvcnMucHVzaChWYWxpZGF0b3JzLnJlcXVpcmVkKTtcbiAgICAgICAgY29udHJvbC5nZXQoJ3ZhbHVlJykuc2V0RXJyb3JzKHtyZXF1aXJlZDogdHJ1ZX0pO1xuICAgICAgfVxuICAgICAgaWYgKCh0eXBlID09PSBcIm1pblwiIHx8IGN1cnJlbnRNaW4pKSB7XG4gICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09IFwibnVtYmVyXCIpIHtcbiAgICAgICAgICB2YWxpZGF0b3JzLnB1c2goVmFsaWRhdG9ycy5taW4oKHR5cGUgPT09IFwibWluXCIgPyB2YWx1ZSA6IGN1cnJlbnRNaW4pKSk7XG4gICAgICAgICAgY29udHJvbC5nZXQoJ3ZhbHVlJykuc2V0RXJyb3JzKHttaW46IHRydWV9KTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmICh0eXBlb2YgdmFsdWUgPT09IFwic3RyaW5nXCIpIHtcbiAgICAgICAgICB2YWxpZGF0b3JzLnB1c2goRGF0ZU1pblZhbGlkYXRvcigodHlwZSA9PT0gXCJtaW5cIiA/IHZhbHVlIDogY3VycmVudE1pbikpKTtcbiAgICAgICAgICBjb250cm9sLmdldCgndmFsdWUnKS5zZXRFcnJvcnMoe2RhdGVNaW46IHRydWV9KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKCh0eXBlID09PSBcIm1heFwiIHx8IGN1cnJlbnRNYXgpKSB7XG4gICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09IFwibnVtYmVyXCIpIHtcbiAgICAgICAgICB2YWxpZGF0b3JzLnB1c2goVmFsaWRhdG9ycy5tYXgoKHR5cGUgPT09IFwibWF4XCIgPyB2YWx1ZSA6IGN1cnJlbnRNYXgpKSk7XG4gICAgICAgICAgY29udHJvbC5nZXQoJ3ZhbHVlJykuc2V0RXJyb3JzKHttYXg6IHRydWV9KTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmICh0eXBlb2YgdmFsdWUgPT09IFwic3RyaW5nXCIpIHtcbiAgICAgICAgICB2YWxpZGF0b3JzLnB1c2goRGF0ZU1heFZhbGlkYXRvcigodHlwZSA9PT0gXCJtYXhcIiA/IHZhbHVlIDogY3VycmVudE1heCkpKTtcbiAgICAgICAgICBjb250cm9sLmdldCgndmFsdWUnKS5zZXRFcnJvcnMoe2RhdGVNYXg6IHRydWV9KTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAodHlwZSA9PT0gXCJyZXF1aXJlZFwiKSB7XG4gICAgICAgIGNvbnRyb2wuZ2V0KCdyZXF1aXJlZCcpLnNldFZhbHVlKHZhbHVlKTtcbiAgICAgIH0gZWxzZSBpZiAodHlwZSA9PT0gXCJtaW5cIikge1xuICAgICAgICBjb250cm9sLmdldCgnbWluJykuc2V0VmFsdWUodmFsdWUpO1xuICAgICAgfSBlbHNlIGlmICh0eXBlID09PSBcIm1heFwiKSB7XG4gICAgICAgIGNvbnRyb2wuZ2V0KCdtYXgnKS5zZXRWYWx1ZSh2YWx1ZSk7XG4gICAgICB9XG4gICAgICBjb250cm9sLmdldCgndmFsdWUnKS5zZXRWYWxpZGF0b3JzKHZhbGlkYXRvcnMpO1xuICAgICAgY29udHJvbC5nZXQoJ3ZhbHVlJykudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBlbWl0RGF0YShmb3JtOiBGb3JtR3JvdXApIHtcbiAgICBjb25zdCBkYXRhID0ge307XG4gICAgY29uc3QgZm9ybUFycmF5ID0gZm9ybS5nZXQoJ2Zvcm1EYXRhJykgYXMgRm9ybUFycmF5O1xuICAgIGZvcm1BcnJheT8uY29udHJvbHMuZm9yRWFjaChjb250cm9sID0+IHtcbiAgICAgIGlmIChjb250cm9sLmdldCgnc2hvdycpLnZhbHVlLmdldFZhbHVlKCkgIT09IGZhbHNlKSB7XG4gICAgICAgIGxldCB2YWx1ZTogYW55ID0gY29udHJvbC5nZXQoJ3ZhbHVlJykudmFsdWU7XG4gICAgICAgIGlmIChjb250cm9sLmdldCgndHlwZScpLnZhbHVlID09PSBEeW5hbWljRm9ybVR5cGVGaWVsZEVudW0udmFsdWVMaXN0KSB7XG4gICAgICAgICAgaWYgKHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHZhbHVlID0gJyc7XG4gICAgICAgICAgfVxuICAgICAgICAgIHZhbHVlID0ga29hbGEodmFsdWUpLnN0cmluZygpLnNwbGl0KCkuZ2V0VmFsdWUoKTtcbiAgICAgICAgfSBlbHNlIGlmIChjb250cm9sLmdldCgndHlwZScpLnZhbHVlID09PSBEeW5hbWljRm9ybVR5cGVGaWVsZEVudW0ubW9yZUl0ZW1zKSB7XG4gICAgICAgICAgY29uc3QgbW9yZUl0ZW1zID0gY29udHJvbC5nZXQoJ21vcmVJdGVtc0NvbmZpZycpLnZhbHVlIGFzIHsgZm9ybTogRm9ybUdyb3VwIH1bXTtcbiAgICAgICAgICB2YWx1ZSA9IFtdO1xuICAgICAgICAgIG1vcmVJdGVtcy5mb3JFYWNoKGl0ZW0gPT4ge1xuICAgICAgICAgICAgdmFsdWUucHVzaCh0aGlzLmVtaXREYXRhKGl0ZW0uZm9ybSkpO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2UgaWYgKGNvbnRyb2wuZ2V0KCd0eXBlJykudmFsdWUgPT09IER5bmFtaWNGb3JtVHlwZUZpZWxkRW51bS5hdXRvY29tcGxldGUpIHtcbiAgICAgICAgICBpZiAoY29udHJvbC5nZXQoJ211bHRpcGxlJykudmFsdWUpIHtcbiAgICAgICAgICAgIGNvbnN0IG9wdGlvbnMgPSBjb250cm9sLmdldCgnYXV0b2NvbXBsZXRlU2VsZWN0ZWRWYWx1ZScpLnZhbHVlIGFzIEtvYWxhRHluYW1pY0F1dG9jb21wbGV0ZU9wdGlvbnNJbnRlcmZhY2VbXTtcbiAgICAgICAgICAgIHZhbHVlID0gb3B0aW9ucz8ubWFwKGl0ZW0gPT4gaXRlbT8udmFsdWUpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB2YWx1ZSA9IChjb250cm9sLmdldCgnYXV0b2NvbXBsZXRlU2VsZWN0ZWRWYWx1ZScpLnZhbHVlPy52YWx1ZSA/XG4gICAgICAgICAgICAgICAgICAgICBjb250cm9sLmdldCgnYXV0b2NvbXBsZXRlU2VsZWN0ZWRWYWx1ZScpLnZhbHVlLnZhbHVlIDpcbiAgICAgICAgICAgICAgICAgICAgIGNvbnRyb2wuZ2V0KCdhdXRvY29tcGxldGVTZWxlY3RlZFZhbHVlJykudmFsdWVcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2UgaWYgKGNvbnRyb2wuZ2V0KCd0eXBlJykudmFsdWUgPT09IER5bmFtaWNGb3JtVHlwZUZpZWxkRW51bS5keW5hbWljRm9ybSkge1xuICAgICAgICAgIGNvbnN0IGR5bmFtaWNGb3JtQ29uZmlnID0gY29udHJvbC5nZXQoJ2R5bmFtaWNGb3JtQ29uZmlnJykudmFsdWUgYXMgQmVoYXZpb3JTdWJqZWN0PEtvYWxhRHluYW1pY0Zvcm1Db25maWdJbnRlcmZhY2U+O1xuICAgICAgICAgIHZhbHVlID0gdGhpcy5lbWl0RGF0YShkeW5hbWljRm9ybUNvbmZpZy5nZXRWYWx1ZSgpLmZvcm0pO1xuICAgICAgICB9IGVsc2UgaWYgKGNvbnRyb2wuZ2V0KCd0eXBlJykudmFsdWUgPT09IER5bmFtaWNGb3JtVHlwZUZpZWxkRW51bS5udW1iZXIpIHtcbiAgICAgICAgICB2YWx1ZSA9IHBhcnNlSW50KHZhbHVlKTtcbiAgICAgICAgfSBlbHNlIGlmICgoXG4gICAgICAgICAgY29udHJvbC5nZXQoJ3R5cGUnKS52YWx1ZSA9PT0gRHluYW1pY0Zvcm1UeXBlRmllbGRFbnVtLmZsb2F0IHx8XG4gICAgICAgICAgY29udHJvbC5nZXQoJ3R5cGUnKS52YWx1ZSA9PT0gRHluYW1pY0Zvcm1UeXBlRmllbGRFbnVtLnBlcmNlbnRcbiAgICAgICAgKSAmJiB0eXBlb2YgdmFsdWUgPT09IFwic3RyaW5nXCIpIHtcbiAgICAgICAgICB2YWx1ZSA9IHBhcnNlRmxvYXQodmFsdWUucmVwbGFjZSgvLC9nLCAnLicpKTtcbiAgICAgICAgfSBlbHNlIGlmIChcbiAgICAgICAgICBjb250cm9sLmdldCgndHlwZScpLnZhbHVlID09PSBEeW5hbWljRm9ybVR5cGVGaWVsZEVudW0uY29pbiAmJlxuICAgICAgICAgIHR5cGVvZiB2YWx1ZSA9PT0gXCJzdHJpbmdcIlxuICAgICAgICApIHtcbiAgICAgICAgICB2YWx1ZSA9IHVubWFza0NvaW4odmFsdWUpO1xuICAgICAgICB9XG4gICAgICAgIGRhdGFbY29udHJvbC5nZXQoJ25hbWUnKS52YWx1ZV0gPSB2YWx1ZTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHJldHVybiBkYXRhO1xuICB9XG5cbiAgcHVibGljIHJlc2V0Rm9ybShmb3JtOiBGb3JtR3JvdXApIHtcbiAgICBjb25zdCBmb3JtQXJyYXkgPSBmb3JtLmdldCgnZm9ybURhdGEnKSBhcyBGb3JtQXJyYXk7XG4gICAgZm9ybUFycmF5LmNvbnRyb2xzLmZvckVhY2goY29udHJvbCA9PiB7XG4gICAgICBpZiAoY29udHJvbC5nZXQoJ3R5cGUnKS52YWx1ZSA9PT0gRHluYW1pY0Zvcm1UeXBlRmllbGRFbnVtLm1vcmVJdGVtcykge1xuICAgICAgICBjb250cm9sLmdldCgnbW9yZUl0ZW1zQ29uZmlnJykuc2V0VmFsdWUoW10pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29udHJvbC5nZXQoJ3ZhbHVlJykucmVzZXQoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRWYWx1ZXNJbk1vcmVJdGVtc0Zvcm0oXG4gICAgc3ViamVjdDogQmVoYXZpb3JTdWJqZWN0PEJlaGF2aW9yU3ViamVjdDxLb2FsYUR5bmFtaWNTZXRWYWx1ZUludGVyZmFjZVtdPltdPixcbiAgICB2YWx1ZXM6IEtvYWxhRHluYW1pY1NldFZhbHVlSW50ZXJmYWNlW11bXVxuICApIHtcbiAgICBjb25zdCB2YWx1ZXNNb3JlSXRlbXMgPSBbXTtcbiAgICB2YWx1ZXMuZm9yRWFjaChpdGVtVmFsdWUgPT4ge1xuICAgICAgdmFsdWVzTW9yZUl0ZW1zLnB1c2gobmV3IEJlaGF2aW9yU3ViamVjdDxLb2FsYUR5bmFtaWNTZXRWYWx1ZUludGVyZmFjZVtdPihpdGVtVmFsdWUpKTtcbiAgICB9KTtcbiAgICBzdWJqZWN0Lm5leHQodmFsdWVzTW9yZUl0ZW1zKTtcbiAgfVxuXG4gIHB1YmxpYyBhdXRvY29tcGxldGVGaWx0ZXJPblNlcnZlcihcbiAgICByZXF1ZXN0OiAoKSA9PiBQcm9taXNlPGFueVtdPixcbiAgICBuYW1lQ29uZmlnOiB7XG4gICAgICBwcm9wc0J5TmFtZTogc3RyaW5nW107XG4gICAgICBkZWxpbWl0ZXI6IHN0cmluZztcbiAgICB9LFxuICAgIGluZGV4TmFtZUJ5VmFsdWU/OiBzdHJpbmdcbiAgKSB7XG4gICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlPEtvYWxhRHluYW1pY0F1dG9jb21wbGV0ZU9wdGlvbnNJbnRlcmZhY2VbXT4ob2JzZXJ2ZSA9PiB7XG4gICAgICByZXF1ZXN0KCkudGhlbihyZXNwb25zZSA9PiB7XG4gICAgICAgIGNvbnN0IG9wdGlvbnM6IEtvYWxhRHluYW1pY0F1dG9jb21wbGV0ZU9wdGlvbnNJbnRlcmZhY2VbXSA9IFtdO1xuICAgICAgICByZXNwb25zZS5mb3JFYWNoKGl0ZW0gPT4ge1xuICAgICAgICAgIGxldCB2YWx1ZSA9ICcnO1xuICAgICAgICAgIGlmIChpbmRleE5hbWVCeVZhbHVlPy5pbmRleE9mKCcgPiAnKSA+PSAwKSB7XG4gICAgICAgICAgICB2YWx1ZSA9IHRoaXMuZ2V0VmFsdWVCeVN0cmluZ1BhdGgoaW5kZXhOYW1lQnlWYWx1ZSwgaXRlbSk7XG4gICAgICAgICAgfSBlbHNlIGlmIChpbmRleE5hbWVCeVZhbHVlKSB7XG4gICAgICAgICAgICB2YWx1ZSA9IGl0ZW1baW5kZXhOYW1lQnlWYWx1ZV07XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHZhbHVlID0gaXRlbTtcbiAgICAgICAgICB9XG4gICAgICAgICAgb3B0aW9ucy5wdXNoKHtcbiAgICAgICAgICAgIG5hbWU6IGtvYWxhKGl0ZW0pLm9iamVjdCgpLnRvU3RyaW5nKFxuICAgICAgICAgICAgICBuYW1lQ29uZmlnLnByb3BzQnlOYW1lLFxuICAgICAgICAgICAgICAobmFtZUNvbmZpZy5kZWxpbWl0ZXIgPz8gJyAnKVxuICAgICAgICAgICAgKS5nZXRWYWx1ZSgpLFxuICAgICAgICAgICAgdmFsdWVcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgICAgIG9ic2VydmUubmV4dChvcHRpb25zKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHNob3dGaWVsZHMoXG4gICAgc3ViamVjdDogQmVoYXZpb3JTdWJqZWN0PEtvYWxhRHluYW1pY0Zvcm1TaG93RmllbGRJbnRlcmZhY2VbXT4sXG4gICAgbmFtZXM6IHN0cmluZ1tdLFxuICAgIHNob3c6IGJvb2xlYW4sXG4gICAgY2xlYXJDdXJyZW50VmFsdWUgPSBmYWxzZVxuICApIHtcbiAgICBjb25zdCBmaWVsZHM6IEtvYWxhRHluYW1pY0Zvcm1TaG93RmllbGRJbnRlcmZhY2VbXSA9IFtdO1xuICAgIG5hbWVzLmZvckVhY2gobmFtZSA9PiB7XG4gICAgICBmaWVsZHMucHVzaCh7XG4gICAgICAgIG5hbWUsXG4gICAgICAgIHNob3csXG4gICAgICAgIGNsZWFyQ3VycmVudFZhbHVlXG4gICAgICB9KTtcbiAgICB9KTtcbiAgICBzdWJqZWN0Lm5leHQoZmllbGRzKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0VmFsdWVCeVN0cmluZ1BhdGgoaW5kZXhOYW1lQnlWYWx1ZTogc3RyaW5nLCBpdGVtOiBhbnkpIHtcbiAgICBsZXQgdmFsdWU7XG4gICAgY29uc3QgcGFydHNJbmRleCA9IGluZGV4TmFtZUJ5VmFsdWUuc3BsaXQoJyA+ICcpO1xuICAgIGxldCBwYXJ0SW5kZXggPSAwO1xuICAgIGRvIHtcbiAgICAgIGlmICghdmFsdWUpIHtcbiAgICAgICAgdmFsdWUgPSBpdGVtW3BhcnRzSW5kZXhbcGFydEluZGV4XV07XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB2YWx1ZSA9IHZhbHVlW3BhcnRzSW5kZXhbcGFydEluZGV4XV07XG4gICAgICB9XG4gICAgICBwYXJ0SW5kZXgrKztcbiAgICB9IHdoaWxlIChwYXJ0SW5kZXggPCBwYXJ0c0luZGV4Lmxlbmd0aCk7XG5cbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cbn1cbiJdfQ==
@@ -1,69 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import { FormsModule, ReactiveFormsModule } from '@angular/forms';
3
- import { CommonModule } from '@angular/common';
4
- import { MatInputModule } from '@angular/material/input';
5
- import { MatSelectModule } from '@angular/material/select';
6
- import { MatRadioModule } from '@angular/material/radio';
7
- import { MatCheckboxModule } from '@angular/material/checkbox';
8
- import { MatAutocompleteModule } from '@angular/material/autocomplete';
9
- import { MatButtonModule } from '@angular/material/button';
10
- import { MatIconModule } from '@angular/material/icon';
11
- import { BtnSubmitComponent } from './btn-submit/btn-submit.component';
12
- import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
13
- import { DynamicFormComponent } from './dynamic-form/dynamic-form.component';
14
- import { NgxMaskModule } from 'ngx-mask';
15
- import { maskOptions } from '@koalarx/ui/common';
16
- import { CurrencyMaskModule } from 'ng2-currency-mask';
17
- import { KoalaButtonModule } from '@koalarx/ui/button';
18
- import { MatExpansionModule } from '@angular/material/expansion';
19
- import { KoalaAutofocusDirective } from './directives/koala-autofocus.directive';
20
- import { KoalaFileButtonModule } from '@koalarx/ui/file-button';
21
- import { MatChipsModule } from '@angular/material/chips';
22
- export class KoalaFormModule {
23
- }
24
- KoalaFormModule.decorators = [
25
- { type: NgModule, args: [{
26
- declarations: [
27
- BtnSubmitComponent,
28
- DynamicFormComponent,
29
- KoalaAutofocusDirective
30
- ],
31
- imports: [
32
- CommonModule,
33
- ReactiveFormsModule,
34
- FormsModule,
35
- CurrencyMaskModule,
36
- NgxMaskModule.forRoot(maskOptions),
37
- KoalaFileButtonModule,
38
- MatInputModule,
39
- MatSelectModule,
40
- MatRadioModule,
41
- MatCheckboxModule,
42
- MatAutocompleteModule,
43
- MatButtonModule,
44
- MatIconModule,
45
- MatExpansionModule,
46
- MatChipsModule,
47
- KoalaButtonModule,
48
- MatProgressSpinnerModule
49
- ],
50
- exports: [
51
- ReactiveFormsModule,
52
- FormsModule,
53
- KoalaAutofocusDirective,
54
- NgxMaskModule,
55
- KoalaFileButtonModule,
56
- MatInputModule,
57
- MatSelectModule,
58
- MatRadioModule,
59
- MatCheckboxModule,
60
- MatAutocompleteModule,
61
- MatButtonModule,
62
- MatIconModule,
63
- MatProgressSpinnerModule,
64
- BtnSubmitComponent,
65
- DynamicFormComponent
66
- ]
67
- },] }
68
- ];
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia29hbGEuZm9ybS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mb3JtL3NyYy9saWIva29hbGEuZm9ybS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDdkUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDOUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDN0UsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDakQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDdkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDdkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDakUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDakYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBNkN6RCxNQUFNLE9BQU8sZUFBZTs7O1lBM0MzQixRQUFRLFNBQUM7Z0JBQ1IsWUFBWSxFQUFFO29CQUNaLGtCQUFrQjtvQkFDbEIsb0JBQW9CO29CQUNwQix1QkFBdUI7aUJBQ3hCO2dCQUNELE9BQU8sRUFBRTtvQkFDUCxZQUFZO29CQUNaLG1CQUFtQjtvQkFDbkIsV0FBVztvQkFDWCxrQkFBa0I7b0JBQ2xCLGFBQWEsQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDO29CQUNsQyxxQkFBcUI7b0JBQ3JCLGNBQWM7b0JBQ2QsZUFBZTtvQkFDZixjQUFjO29CQUNkLGlCQUFpQjtvQkFDakIscUJBQXFCO29CQUNyQixlQUFlO29CQUNmLGFBQWE7b0JBQ2Isa0JBQWtCO29CQUNsQixjQUFjO29CQUNkLGlCQUFpQjtvQkFDakIsd0JBQXdCO2lCQUN6QjtnQkFDRCxPQUFPLEVBQUU7b0JBQ1AsbUJBQW1CO29CQUNuQixXQUFXO29CQUNYLHVCQUF1QjtvQkFDdkIsYUFBYTtvQkFDYixxQkFBcUI7b0JBQ3JCLGNBQWM7b0JBQ2QsZUFBZTtvQkFDZixjQUFjO29CQUNkLGlCQUFpQjtvQkFDakIscUJBQXFCO29CQUNyQixlQUFlO29CQUNmLGFBQWE7b0JBQ2Isd0JBQXdCO29CQUN4QixrQkFBa0I7b0JBQ2xCLG9CQUFvQjtpQkFDckI7YUFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcbmltcG9ydCB7IE1hdFNlbGVjdE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NlbGVjdCc7XG5pbXBvcnQgeyBNYXRSYWRpb01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3JhZGlvJztcbmltcG9ydCB7IE1hdENoZWNrYm94TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2hlY2tib3gnO1xuaW1wb3J0IHsgTWF0QXV0b2NvbXBsZXRlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYXV0b2NvbXBsZXRlJztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBCdG5TdWJtaXRDb21wb25lbnQgfSBmcm9tICcuL2J0bi1zdWJtaXQvYnRuLXN1Ym1pdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWF0UHJvZ3Jlc3NTcGlubmVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcHJvZ3Jlc3Mtc3Bpbm5lcic7XG5pbXBvcnQgeyBEeW5hbWljRm9ybUNvbXBvbmVudCB9IGZyb20gJy4vZHluYW1pYy1mb3JtL2R5bmFtaWMtZm9ybS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTmd4TWFza01vZHVsZSB9IGZyb20gJ25neC1tYXNrJztcbmltcG9ydCB7IG1hc2tPcHRpb25zIH0gZnJvbSAnQGtvYWxhcngvdWkvY29tbW9uJztcbmltcG9ydCB7IEN1cnJlbmN5TWFza01vZHVsZSB9IGZyb20gJ25nMi1jdXJyZW5jeS1tYXNrJztcbmltcG9ydCB7IEtvYWxhQnV0dG9uTW9kdWxlIH0gZnJvbSAnQGtvYWxhcngvdWkvYnV0dG9uJztcbmltcG9ydCB7IE1hdEV4cGFuc2lvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2V4cGFuc2lvbic7XG5pbXBvcnQgeyBLb2FsYUF1dG9mb2N1c0RpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9rb2FsYS1hdXRvZm9jdXMuZGlyZWN0aXZlJztcbmltcG9ydCB7IEtvYWxhRmlsZUJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Brb2FsYXJ4L3VpL2ZpbGUtYnV0dG9uJztcbmltcG9ydCB7IE1hdENoaXBzTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2hpcHMnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBCdG5TdWJtaXRDb21wb25lbnQsXG4gICAgRHluYW1pY0Zvcm1Db21wb25lbnQsXG4gICAgS29hbGFBdXRvZm9jdXNEaXJlY3RpdmVcbiAgXSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIEN1cnJlbmN5TWFza01vZHVsZSxcbiAgICBOZ3hNYXNrTW9kdWxlLmZvclJvb3QobWFza09wdGlvbnMpLFxuICAgIEtvYWxhRmlsZUJ1dHRvbk1vZHVsZSxcbiAgICBNYXRJbnB1dE1vZHVsZSxcbiAgICBNYXRTZWxlY3RNb2R1bGUsXG4gICAgTWF0UmFkaW9Nb2R1bGUsXG4gICAgTWF0Q2hlY2tib3hNb2R1bGUsXG4gICAgTWF0QXV0b2NvbXBsZXRlTW9kdWxlLFxuICAgIE1hdEJ1dHRvbk1vZHVsZSxcbiAgICBNYXRJY29uTW9kdWxlLFxuICAgIE1hdEV4cGFuc2lvbk1vZHVsZSxcbiAgICBNYXRDaGlwc01vZHVsZSxcbiAgICBLb2FsYUJ1dHRvbk1vZHVsZSxcbiAgICBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgS29hbGFBdXRvZm9jdXNEaXJlY3RpdmUsXG4gICAgTmd4TWFza01vZHVsZSxcbiAgICBLb2FsYUZpbGVCdXR0b25Nb2R1bGUsXG4gICAgTWF0SW5wdXRNb2R1bGUsXG4gICAgTWF0U2VsZWN0TW9kdWxlLFxuICAgIE1hdFJhZGlvTW9kdWxlLFxuICAgIE1hdENoZWNrYm94TW9kdWxlLFxuICAgIE1hdEF1dG9jb21wbGV0ZU1vZHVsZSxcbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUsXG4gICAgQnRuU3VibWl0Q29tcG9uZW50LFxuICAgIER5bmFtaWNGb3JtQ29tcG9uZW50XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgS29hbGFGb3JtTW9kdWxlIHtcbn1cbiJdfQ==