@dev-tcloud/tcloud-ui 2.2.3 → 2.2.4

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 (486) hide show
  1. package/esm2022/dev-tcloud-tcloud-ui.mjs +5 -0
  2. package/esm2022/lib/_directives/align/align.directive.mjs +39 -0
  3. package/esm2022/lib/_directives/currency/currency.directive.mjs +160 -0
  4. package/esm2022/lib/_directives/directives.module.mjs +40 -0
  5. package/esm2022/lib/_directives/el-copy/el-copy.directive.mjs +68 -0
  6. package/esm2022/lib/_directives/hover-parent/hover-parent.directive.mjs +58 -0
  7. package/esm2022/lib/_directives/tooltip/tooltip.directive.mjs +145 -0
  8. package/esm2022/lib/_modules/tcloud-ui-accordion/components/tcloud-ui-accordion-body/tcloud-ui-accordion-body.component.mjs +35 -0
  9. package/esm2022/lib/_modules/tcloud-ui-accordion/components/tcloud-ui-accordion-title/tcloud-ui-accordion-title.component.mjs +54 -0
  10. package/esm2022/lib/_modules/tcloud-ui-accordion/services/tcloud-ui-accordion.service.mjs +38 -0
  11. package/esm2022/lib/_modules/tcloud-ui-accordion/tcloud-ui-accordion.component.mjs +75 -0
  12. package/esm2022/lib/_modules/tcloud-ui-accordion/tcloud-ui-accordion.module.mjs +35 -0
  13. package/esm2022/lib/_modules/tcloud-ui-choice-issues/tcloud-ui-choice-issues.component.mjs +87 -0
  14. package/esm2022/lib/_modules/tcloud-ui-choice-issues/tcloud-ui-choice-issues.module.mjs +32 -0
  15. package/esm2022/lib/_modules/tcloud-ui-data-list/services/data-list.service.mjs +38 -0
  16. package/esm2022/lib/_modules/tcloud-ui-data-list/tcloud-ui-data-list-option/tcloud-ui-data-list-option.component.mjs +65 -0
  17. package/esm2022/lib/_modules/tcloud-ui-data-list/tcloud-ui-data-list.component.mjs +317 -0
  18. package/esm2022/lib/_modules/tcloud-ui-data-list/tcloud-ui-data-list.mjs +3 -0
  19. package/esm2022/lib/_modules/tcloud-ui-data-list/tcloud-ui-data-list.module.mjs +37 -0
  20. package/esm2022/lib/_modules/tcloud-ui-datepicker/tcloud-ui-datepicker.component.mjs +440 -0
  21. package/esm2022/lib/_modules/tcloud-ui-datepicker/tcloud-ui-datepicker.module.mjs +32 -0
  22. package/esm2022/lib/_modules/tcloud-ui-datepicker-time/tcloud-ui-datepicker-time.component.mjs +312 -0
  23. package/esm2022/lib/_modules/tcloud-ui-datepicker-time/tcloud-ui-datepicker-time.module.mjs +40 -0
  24. package/esm2022/lib/_modules/tcloud-ui-filters/components/range-date/range-date.component.mjs +209 -0
  25. package/esm2022/lib/_modules/tcloud-ui-filters/tcloud-ui-filters.component.mjs +491 -0
  26. package/esm2022/lib/_modules/tcloud-ui-filters/tcloud-ui-filters.mjs +19 -0
  27. package/esm2022/lib/_modules/tcloud-ui-filters/tcloud-ui-filters.module.mjs +45 -0
  28. package/esm2022/lib/_modules/tcloud-ui-input-password/tcloud-ui-input-password.component.mjs +142 -0
  29. package/esm2022/lib/_modules/tcloud-ui-input-password/tcloud-ui-input-password.module.mjs +32 -0
  30. package/esm2022/lib/_modules/tcloud-ui-input-search/tcloud-ui-input-search.component.mjs +66 -0
  31. package/esm2022/lib/_modules/tcloud-ui-input-search/tcloud-ui-input-search.module.mjs +32 -0
  32. package/esm2022/lib/_modules/tcloud-ui-line-step-circle/tcloud-ui-line-step-circle.component.mjs +93 -0
  33. package/esm2022/lib/_modules/tcloud-ui-line-step-circle/tcloud-ui-line-step-circle.module.mjs +25 -0
  34. package/esm2022/lib/_modules/tcloud-ui-linha-logo/tcloud-ui-linha-logo.component.mjs +65 -0
  35. package/esm2022/lib/_modules/tcloud-ui-linha-logo/tcloud-ui-linha-logo.module.mjs +25 -0
  36. package/esm2022/lib/_modules/tcloud-ui-loading/components/tcloud-ui-cubes/tcloud-ui-cubes.component.mjs +11 -0
  37. package/esm2022/lib/_modules/tcloud-ui-loading/tcloud-ui-loading.component.mjs +29 -0
  38. package/esm2022/lib/_modules/tcloud-ui-loading/tcloud-ui-loading.module.mjs +21 -0
  39. package/esm2022/lib/_modules/tcloud-ui-modal/components/tcloud-ui-modal-body/tcloud-ui-modal-body.component.mjs +14 -0
  40. package/esm2022/lib/_modules/tcloud-ui-modal/components/tcloud-ui-modal-footer/tcloud-ui-modal-footer.component.mjs +61 -0
  41. package/esm2022/lib/_modules/tcloud-ui-modal/components/tcloud-ui-modal-header/tcloud-ui-modal-header.component.mjs +21 -0
  42. package/esm2022/lib/_modules/tcloud-ui-modal/services/tcloud-modal.service.mjs +56 -0
  43. package/esm2022/lib/_modules/tcloud-ui-modal/tcloud-ui-modal.component.mjs +196 -0
  44. package/esm2022/lib/_modules/tcloud-ui-modal/tcloud-ui-modal.mjs +2 -0
  45. package/esm2022/lib/_modules/tcloud-ui-modal/tcloud-ui-modal.module.mjs +47 -0
  46. package/esm2022/lib/_modules/tcloud-ui-multi-input/tcloud-ui-multi-input.component.mjs +150 -0
  47. package/esm2022/lib/_modules/tcloud-ui-multi-input/tcloud-ui-multi-input.module.mjs +28 -0
  48. package/esm2022/lib/_modules/tcloud-ui-multi-select/tcloud-ui-multi-select.component.mjs +162 -0
  49. package/esm2022/lib/_modules/tcloud-ui-multi-select/tcloud-ui-multi-select.module.mjs +28 -0
  50. package/esm2022/lib/_modules/tcloud-ui-multiples-values/tcloud-ui-multiples-values.component.mjs +305 -0
  51. package/esm2022/lib/_modules/tcloud-ui-multiples-values/tcloud-ui-multiples-values.module.mjs +36 -0
  52. package/esm2022/lib/_modules/tcloud-ui-not-found/tcloud-ui-not-found.component.mjs +20 -0
  53. package/esm2022/lib/_modules/tcloud-ui-not-found/tcloud-ui-not-found.module.mjs +25 -0
  54. package/esm2022/lib/_modules/tcloud-ui-number-step/tcloud-ui-number-step.component.mjs +99 -0
  55. package/esm2022/lib/_modules/tcloud-ui-number-step/tcloud-ui-number-step.module.mjs +25 -0
  56. package/esm2022/lib/_modules/tcloud-ui-progress-bar/tcloud-ui-progress-bar.component.mjs +95 -0
  57. package/esm2022/lib/_modules/tcloud-ui-progress-bar/tcloud-ui-progress-bar.module.mjs +21 -0
  58. package/esm2022/lib/_modules/tcloud-ui-reorder-items/tcloud-ui-reorder-items.component.mjs +105 -0
  59. package/esm2022/lib/_modules/tcloud-ui-reorder-items/tcloud-ui-reorder-items.mjs +2 -0
  60. package/esm2022/lib/_modules/tcloud-ui-reorder-items/tcloud-ui-reorder-items.module.mjs +24 -0
  61. package/esm2022/lib/_modules/tcloud-ui-scroll-box/tcloud-ui-scroll-box.component.mjs +46 -0
  62. package/esm2022/lib/_modules/tcloud-ui-scroll-box/tcloud-ui-scroll-box.module.mjs +25 -0
  63. package/esm2022/lib/_modules/tcloud-ui-tab-menu/components/tcloud-ui-tab-content/tcloud-ui-tab-content.component.mjs +36 -0
  64. package/esm2022/lib/_modules/tcloud-ui-tab-menu/components/tcloud-ui-tab-head/tcloud-ui-tab-head.component.mjs +75 -0
  65. package/esm2022/lib/_modules/tcloud-ui-tab-menu/components/tcloud-ui-tab-subtitle/tcloud-ui-tab-subtitle.component.mjs +62 -0
  66. package/esm2022/lib/_modules/tcloud-ui-tab-menu/components/tcloud-ui-tab-title/tcloud-ui-tab-title.component.mjs +64 -0
  67. package/esm2022/lib/_modules/tcloud-ui-tab-menu/services/tab-menu.service.mjs +95 -0
  68. package/esm2022/lib/_modules/tcloud-ui-tab-menu/tcloud-ui-tab-menu.component.mjs +64 -0
  69. package/esm2022/lib/_modules/tcloud-ui-tab-menu/tcloud-ui-tab-menu.mjs +2 -0
  70. package/esm2022/lib/_modules/tcloud-ui-tab-menu/tcloud-ui-tab-menu.module.mjs +45 -0
  71. package/esm2022/lib/_modules/tcloud-ui-table/tcloud-ui-table.component.mjs +21 -0
  72. package/esm2022/lib/_modules/tcloud-ui-table/tcloud-ui-table.module.mjs +25 -0
  73. package/esm2022/lib/_modules/tcloud-ui-welcome/tcloud-ui-welcome.component.mjs +37 -0
  74. package/esm2022/lib/_modules/tcloud-ui-welcome/tcloud-ui-welcome.module.mjs +25 -0
  75. package/esm2022/lib/_pipes/array-to-text.mjs +29 -0
  76. package/esm2022/lib/_pipes/bytes.mjs +31 -0
  77. package/esm2022/lib/_pipes/cnpj.mjs +37 -0
  78. package/esm2022/lib/_pipes/cpf.mjs +37 -0
  79. package/esm2022/lib/_pipes/datebr.mjs +102 -0
  80. package/esm2022/lib/_pipes/index.mjs +9 -0
  81. package/esm2022/lib/_pipes/monthname.mjs +25 -0
  82. package/esm2022/lib/_pipes/respective.mjs +73 -0
  83. package/esm2022/lib/_pipes/statusinfo.mjs +78 -0
  84. package/esm2022/lib/_pipes/tcloud-pipes.module.mjs +75 -0
  85. package/esm2022/lib/_services/loading-transitions.service.mjs +52 -0
  86. package/esm2022/lib/_services/search-in-object.service.mjs +99 -0
  87. package/esm2022/lib/tcloud-ui.module.mjs +209 -0
  88. package/esm2022/public-api.mjs +101 -0
  89. package/fesm2022/dev-tcloud-tcloud-ui.mjs +6108 -0
  90. package/fesm2022/dev-tcloud-tcloud-ui.mjs.map +1 -0
  91. package/index.d.ts +5 -0
  92. package/lib/_directives/align/align.directive.d.ts +13 -0
  93. package/lib/_directives/currency/currency.directive.d.ts +24 -0
  94. package/lib/_directives/directives.module.d.ts +11 -0
  95. package/lib/_directives/el-copy/el-copy.directive.d.ts +13 -0
  96. package/lib/_directives/hover-parent/hover-parent.directive.d.ts +15 -0
  97. package/lib/_directives/tooltip/tooltip.directive.d.ts +19 -0
  98. package/lib/_modules/tcloud-ui-accordion/components/tcloud-ui-accordion-body/tcloud-ui-accordion-body.component.d.ts +11 -0
  99. package/lib/_modules/tcloud-ui-accordion/components/tcloud-ui-accordion-title/tcloud-ui-accordion-title.component.d.ts +20 -0
  100. package/lib/_modules/tcloud-ui-accordion/services/tcloud-ui-accordion.service.d.ts +20 -0
  101. package/lib/_modules/tcloud-ui-accordion/tcloud-ui-accordion.component.d.ts +27 -0
  102. package/lib/_modules/tcloud-ui-accordion/tcloud-ui-accordion.module.d.ts +10 -0
  103. package/lib/_modules/tcloud-ui-choice-issues/tcloud-ui-choice-issues.component.d.ts +27 -0
  104. package/lib/_modules/tcloud-ui-choice-issues/tcloud-ui-choice-issues.module.d.ts +9 -0
  105. package/lib/_modules/tcloud-ui-data-list/services/data-list.service.d.ts +20 -0
  106. package/lib/_modules/tcloud-ui-data-list/tcloud-ui-data-list-option/tcloud-ui-data-list-option.component.d.ts +23 -0
  107. package/lib/_modules/tcloud-ui-data-list/tcloud-ui-data-list.component.d.ts +74 -0
  108. package/lib/_modules/tcloud-ui-data-list/tcloud-ui-data-list.d.ts +5 -0
  109. package/lib/_modules/tcloud-ui-data-list/tcloud-ui-data-list.module.d.ts +10 -0
  110. package/lib/_modules/tcloud-ui-datepicker/tcloud-ui-datepicker.component.d.ts +59 -0
  111. package/lib/_modules/tcloud-ui-datepicker/tcloud-ui-datepicker.module.d.ts +9 -0
  112. package/lib/_modules/tcloud-ui-datepicker-time/tcloud-ui-datepicker-time.component.d.ts +50 -0
  113. package/lib/_modules/tcloud-ui-datepicker-time/tcloud-ui-datepicker-time.module.d.ts +11 -0
  114. package/lib/_modules/tcloud-ui-filters/components/range-date/range-date.component.d.ts +41 -0
  115. package/lib/_modules/tcloud-ui-filters/tcloud-ui-filters.component.d.ts +63 -0
  116. package/{projects/tcloud-ui/src/lib/_modules/tcloud-ui-filters/tcloud-ui-filters.ts → lib/_modules/tcloud-ui-filters/tcloud-ui-filters.d.ts} +6 -12
  117. package/lib/_modules/tcloud-ui-filters/tcloud-ui-filters.module.d.ts +12 -0
  118. package/lib/_modules/tcloud-ui-input-password/tcloud-ui-input-password.component.d.ts +36 -0
  119. package/lib/_modules/tcloud-ui-input-password/tcloud-ui-input-password.module.d.ts +9 -0
  120. package/lib/_modules/tcloud-ui-input-search/tcloud-ui-input-search.component.d.ts +28 -0
  121. package/lib/_modules/tcloud-ui-input-search/tcloud-ui-input-search.module.d.ts +9 -0
  122. package/lib/_modules/tcloud-ui-line-step-circle/tcloud-ui-line-step-circle.component.d.ts +28 -0
  123. package/lib/_modules/tcloud-ui-line-step-circle/tcloud-ui-line-step-circle.module.d.ts +8 -0
  124. package/lib/_modules/tcloud-ui-linha-logo/tcloud-ui-linha-logo.component.d.ts +17 -0
  125. package/lib/_modules/tcloud-ui-linha-logo/tcloud-ui-linha-logo.module.d.ts +8 -0
  126. package/lib/_modules/tcloud-ui-loading/components/tcloud-ui-cubes/tcloud-ui-cubes.component.d.ts +5 -0
  127. package/lib/_modules/tcloud-ui-loading/tcloud-ui-loading.component.d.ts +11 -0
  128. package/lib/_modules/tcloud-ui-loading/tcloud-ui-loading.module.d.ts +9 -0
  129. package/lib/_modules/tcloud-ui-modal/components/tcloud-ui-modal-body/tcloud-ui-modal-body.component.d.ts +8 -0
  130. package/lib/_modules/tcloud-ui-modal/components/tcloud-ui-modal-footer/tcloud-ui-modal-footer.component.d.ts +26 -0
  131. package/lib/_modules/tcloud-ui-modal/components/tcloud-ui-modal-header/tcloud-ui-modal-header.component.d.ts +10 -0
  132. package/lib/_modules/tcloud-ui-modal/services/tcloud-modal.service.d.ts +24 -0
  133. package/lib/_modules/tcloud-ui-modal/tcloud-ui-modal.component.d.ts +68 -0
  134. package/lib/_modules/tcloud-ui-modal/tcloud-ui-modal.d.ts +4 -0
  135. package/lib/_modules/tcloud-ui-modal/tcloud-ui-modal.module.d.ts +12 -0
  136. package/lib/_modules/tcloud-ui-multi-input/tcloud-ui-multi-input.component.d.ts +38 -0
  137. package/lib/_modules/tcloud-ui-multi-input/tcloud-ui-multi-input.module.d.ts +9 -0
  138. package/lib/_modules/tcloud-ui-multi-select/tcloud-ui-multi-select.component.d.ts +37 -0
  139. package/lib/_modules/tcloud-ui-multi-select/tcloud-ui-multi-select.module.d.ts +9 -0
  140. package/lib/_modules/tcloud-ui-multiples-values/tcloud-ui-multiples-values.component.d.ts +62 -0
  141. package/lib/_modules/tcloud-ui-multiples-values/tcloud-ui-multiples-values.module.d.ts +10 -0
  142. package/lib/_modules/tcloud-ui-not-found/tcloud-ui-not-found.component.d.ts +8 -0
  143. package/lib/_modules/tcloud-ui-not-found/tcloud-ui-not-found.module.d.ts +8 -0
  144. package/lib/_modules/tcloud-ui-number-step/tcloud-ui-number-step.component.d.ts +29 -0
  145. package/lib/_modules/tcloud-ui-number-step/tcloud-ui-number-step.module.d.ts +8 -0
  146. package/lib/_modules/tcloud-ui-progress-bar/tcloud-ui-progress-bar.component.d.ts +21 -0
  147. package/lib/_modules/tcloud-ui-progress-bar/tcloud-ui-progress-bar.module.d.ts +8 -0
  148. package/lib/_modules/tcloud-ui-reorder-items/tcloud-ui-reorder-items.component.d.ts +17 -0
  149. package/{projects/tcloud-ui/src/lib/_modules/tcloud-ui-reorder-items/tcloud-ui-reorder-items.ts → lib/_modules/tcloud-ui-reorder-items/tcloud-ui-reorder-items.d.ts} +1 -1
  150. package/lib/_modules/tcloud-ui-reorder-items/tcloud-ui-reorder-items.module.d.ts +8 -0
  151. package/lib/_modules/tcloud-ui-scroll-box/tcloud-ui-scroll-box.component.d.ts +13 -0
  152. package/lib/_modules/tcloud-ui-scroll-box/tcloud-ui-scroll-box.module.d.ts +8 -0
  153. package/lib/_modules/tcloud-ui-tab-menu/components/tcloud-ui-tab-content/tcloud-ui-tab-content.component.d.ts +15 -0
  154. package/lib/_modules/tcloud-ui-tab-menu/components/tcloud-ui-tab-head/tcloud-ui-tab-head.component.d.ts +21 -0
  155. package/lib/_modules/tcloud-ui-tab-menu/components/tcloud-ui-tab-subtitle/tcloud-ui-tab-subtitle.component.d.ts +21 -0
  156. package/lib/_modules/tcloud-ui-tab-menu/components/tcloud-ui-tab-title/tcloud-ui-tab-title.component.d.ts +22 -0
  157. package/lib/_modules/tcloud-ui-tab-menu/services/tab-menu.service.d.ts +33 -0
  158. package/lib/_modules/tcloud-ui-tab-menu/tcloud-ui-tab-menu.component.d.ts +23 -0
  159. package/lib/_modules/tcloud-ui-tab-menu/tcloud-ui-tab-menu.d.ts +4 -0
  160. package/lib/_modules/tcloud-ui-tab-menu/tcloud-ui-tab-menu.module.d.ts +12 -0
  161. package/lib/_modules/tcloud-ui-table/tcloud-ui-table.component.d.ts +10 -0
  162. package/lib/_modules/tcloud-ui-table/tcloud-ui-table.module.d.ts +8 -0
  163. package/lib/_modules/tcloud-ui-welcome/tcloud-ui-welcome.component.d.ts +17 -0
  164. package/lib/_modules/tcloud-ui-welcome/tcloud-ui-welcome.module.d.ts +8 -0
  165. package/lib/_pipes/array-to-text.d.ts +8 -0
  166. package/lib/_pipes/bytes.d.ts +8 -0
  167. package/lib/_pipes/cnpj.d.ts +9 -0
  168. package/lib/_pipes/cpf.d.ts +9 -0
  169. package/lib/_pipes/datebr.d.ts +11 -0
  170. package/{projects/tcloud-ui/src/lib/_pipes/index.ts → lib/_pipes/index.d.ts} +1 -1
  171. package/lib/_pipes/monthname.d.ts +8 -0
  172. package/lib/_pipes/respective.d.ts +11 -0
  173. package/lib/_pipes/statusinfo.d.ts +15 -0
  174. package/lib/_pipes/tcloud-pipes.module.d.ts +15 -0
  175. package/lib/_services/loading-transitions.service.d.ts +16 -0
  176. package/lib/_services/search-in-object.service.d.ts +19 -0
  177. package/lib/tcloud-ui.module.d.ts +31 -0
  178. package/package.json +25 -619
  179. package/{projects/tcloud-ui/src/public-api.ts → public-api.d.ts} +1 -57
  180. package/.editorconfig +0 -16
  181. package/.vscode/extensions.json +0 -4
  182. package/.vscode/launch.json +0 -20
  183. package/.vscode/tasks.json +0 -42
  184. package/angular.json +0 -147
  185. package/karma.conf.js +0 -44
  186. package/ng-package.json +0 -7
  187. package/projects/tcloud-ui/README.md +0 -93
  188. package/projects/tcloud-ui/karma.conf.js +0 -44
  189. package/projects/tcloud-ui/ng-package.json +0 -7
  190. package/projects/tcloud-ui/package.json +0 -11
  191. package/projects/tcloud-ui/src/lib/_directives/align/align.directive.ts +0 -42
  192. package/projects/tcloud-ui/src/lib/_directives/currency/currency.directive.ts +0 -155
  193. package/projects/tcloud-ui/src/lib/_directives/directives.module.ts +0 -24
  194. package/projects/tcloud-ui/src/lib/_directives/el-copy/el-copy.directive.ts +0 -78
  195. package/projects/tcloud-ui/src/lib/_directives/hover-parent/hover-parent.directive.ts +0 -52
  196. package/projects/tcloud-ui/src/lib/_directives/tooltip/tooltip.directive.ts +0 -159
  197. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-accordion/components/tcloud-ui-accordion-body/tcloud-ui-accordion-body.component.html +0 -3
  198. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-accordion/components/tcloud-ui-accordion-body/tcloud-ui-accordion-body.component.scss +0 -9
  199. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-accordion/components/tcloud-ui-accordion-body/tcloud-ui-accordion-body.component.ts +0 -34
  200. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-accordion/components/tcloud-ui-accordion-title/tcloud-ui-accordion-title.component.css +0 -31
  201. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-accordion/components/tcloud-ui-accordion-title/tcloud-ui-accordion-title.component.html +0 -17
  202. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-accordion/components/tcloud-ui-accordion-title/tcloud-ui-accordion-title.component.ts +0 -62
  203. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-accordion/services/tcloud-ui-accordion.service.ts +0 -46
  204. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-accordion/tcloud-ui-accordion.component.css +0 -11
  205. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-accordion/tcloud-ui-accordion.component.html +0 -3
  206. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-accordion/tcloud-ui-accordion.component.ts +0 -77
  207. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-accordion/tcloud-ui-accordion.module.ts +0 -25
  208. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-choice-issues/tcloud-ui-choice-issues.component.html +0 -42
  209. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-choice-issues/tcloud-ui-choice-issues.component.scss +0 -88
  210. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-choice-issues/tcloud-ui-choice-issues.component.ts +0 -94
  211. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-choice-issues/tcloud-ui-choice-issues.module.ts +0 -22
  212. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-data-list/services/data-list.service.ts +0 -42
  213. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-data-list/tcloud-ui-data-list-option/tcloud-ui-data-list-option.component.html +0 -15
  214. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-data-list/tcloud-ui-data-list-option/tcloud-ui-data-list-option.component.scss +0 -31
  215. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-data-list/tcloud-ui-data-list-option/tcloud-ui-data-list-option.component.ts +0 -65
  216. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-data-list/tcloud-ui-data-list.component.html +0 -58
  217. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-data-list/tcloud-ui-data-list.component.scss +0 -136
  218. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-data-list/tcloud-ui-data-list.component.ts +0 -352
  219. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-data-list/tcloud-ui-data-list.module.ts +0 -26
  220. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-data-list/tcloud-ui-data-list.ts +0 -5
  221. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-datepicker/datepicker/css/datepicker.min.css +0 -1
  222. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-datepicker/datepicker/css/style.css +0 -18
  223. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-datepicker/tcloud-ui-datepicker.component.html +0 -43
  224. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-datepicker/tcloud-ui-datepicker.component.scss +0 -54
  225. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-datepicker/tcloud-ui-datepicker.component.ts +0 -518
  226. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-datepicker/tcloud-ui-datepicker.module.ts +0 -22
  227. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-datepicker-time/tcloud-ui-datepicker-time.component.html +0 -97
  228. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-datepicker-time/tcloud-ui-datepicker-time.component.scss +0 -160
  229. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-datepicker-time/tcloud-ui-datepicker-time.component.ts +0 -369
  230. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-datepicker-time/tcloud-ui-datepicker-time.module.ts +0 -24
  231. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-filters/components/range-date/range-date.component.html +0 -54
  232. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-filters/components/range-date/range-date.component.scss +0 -68
  233. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-filters/components/range-date/range-date.component.ts +0 -278
  234. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-filters/tcloud-ui-filters.component.html +0 -154
  235. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-filters/tcloud-ui-filters.component.scss +0 -75
  236. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-filters/tcloud-ui-filters.component.ts +0 -525
  237. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-filters/tcloud-ui-filters.module.ts +0 -29
  238. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-input-password/tcloud-ui-input-password.component.html +0 -38
  239. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-input-password/tcloud-ui-input-password.component.scss +0 -40
  240. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-input-password/tcloud-ui-input-password.component.ts +0 -158
  241. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-input-password/tcloud-ui-input-password.module.ts +0 -22
  242. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-input-search/tcloud-ui-input-search.component.html +0 -14
  243. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-input-search/tcloud-ui-input-search.component.scss +0 -33
  244. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-input-search/tcloud-ui-input-search.component.ts +0 -69
  245. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-input-search/tcloud-ui-input-search.module.ts +0 -22
  246. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-line-step-circle/tcloud-ui-line-step-circle.component.html +0 -15
  247. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-line-step-circle/tcloud-ui-line-step-circle.component.scss +0 -68
  248. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-line-step-circle/tcloud-ui-line-step-circle.component.ts +0 -102
  249. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-line-step-circle/tcloud-ui-line-step-circle.module.ts +0 -19
  250. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-linha-logo/tcloud-ui-linha-logo.component.html +0 -9
  251. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-linha-logo/tcloud-ui-linha-logo.component.scss +0 -34
  252. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-linha-logo/tcloud-ui-linha-logo.component.ts +0 -74
  253. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-linha-logo/tcloud-ui-linha-logo.module.ts +0 -19
  254. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-loading/components/tcloud-ui-cubes/tcloud-ui-cubes.component.html +0 -3
  255. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-loading/components/tcloud-ui-cubes/tcloud-ui-cubes.component.scss +0 -52
  256. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-loading/components/tcloud-ui-cubes/tcloud-ui-cubes.component.ts +0 -10
  257. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-loading/tcloud-ui-loading.component.css +0 -35
  258. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-loading/tcloud-ui-loading.component.html +0 -22
  259. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-loading/tcloud-ui-loading.component.ts +0 -25
  260. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-loading/tcloud-ui-loading.module.ts +0 -14
  261. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-modal/components/tcloud-ui-modal-body/tcloud-ui-modal-body.component.html +0 -3
  262. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-modal/components/tcloud-ui-modal-body/tcloud-ui-modal-body.component.scss +0 -3
  263. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-modal/components/tcloud-ui-modal-body/tcloud-ui-modal-body.component.ts +0 -15
  264. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-modal/components/tcloud-ui-modal-footer/tcloud-ui-modal-footer.component.html +0 -30
  265. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-modal/components/tcloud-ui-modal-footer/tcloud-ui-modal-footer.component.scss +0 -34
  266. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-modal/components/tcloud-ui-modal-footer/tcloud-ui-modal-footer.component.ts +0 -66
  267. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-modal/components/tcloud-ui-modal-header/tcloud-ui-modal-header.component.html +0 -6
  268. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-modal/components/tcloud-ui-modal-header/tcloud-ui-modal-header.component.scss +0 -32
  269. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-modal/components/tcloud-ui-modal-header/tcloud-ui-modal-header.component.ts +0 -18
  270. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-modal/services/tcloud-modal.service.ts +0 -66
  271. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-modal/tcloud-ui-modal.component.html +0 -54
  272. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-modal/tcloud-ui-modal.component.scss +0 -83
  273. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-modal/tcloud-ui-modal.component.ts +0 -185
  274. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-modal/tcloud-ui-modal.module.ts +0 -32
  275. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-modal/tcloud-ui-modal.ts +0 -4
  276. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-multi-input/tcloud-ui-multi-input.component.html +0 -43
  277. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-multi-input/tcloud-ui-multi-input.component.scss +0 -118
  278. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-multi-input/tcloud-ui-multi-input.component.ts +0 -169
  279. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-multi-input/tcloud-ui-multi-input.module.ts +0 -16
  280. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-multi-select/tcloud-ui-multi-select.component.html +0 -54
  281. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-multi-select/tcloud-ui-multi-select.component.scss +0 -104
  282. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-multi-select/tcloud-ui-multi-select.component.ts +0 -178
  283. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-multi-select/tcloud-ui-multi-select.module.ts +0 -16
  284. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-multiples-values/tcloud-ui-multiples-values.component.html +0 -184
  285. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-multiples-values/tcloud-ui-multiples-values.component.scss +0 -288
  286. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-multiples-values/tcloud-ui-multiples-values.component.ts +0 -364
  287. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-multiples-values/tcloud-ui-multiples-values.module.ts +0 -24
  288. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-not-found/tcloud-ui-not-found.component.html +0 -6
  289. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-not-found/tcloud-ui-not-found.component.scss +0 -21
  290. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-not-found/tcloud-ui-not-found.component.ts +0 -19
  291. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-not-found/tcloud-ui-not-found.module.ts +0 -17
  292. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-number-step/tcloud-ui-number-step.component.html +0 -33
  293. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-number-step/tcloud-ui-number-step.component.scss +0 -117
  294. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-number-step/tcloud-ui-number-step.component.ts +0 -106
  295. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-number-step/tcloud-ui-number-step.module.ts +0 -19
  296. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-progress-bar/tcloud-ui-progress-bar.component.html +0 -5
  297. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-progress-bar/tcloud-ui-progress-bar.component.scss +0 -49
  298. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-progress-bar/tcloud-ui-progress-bar.component.ts +0 -81
  299. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-progress-bar/tcloud-ui-progress-bar.module.ts +0 -15
  300. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-reorder-items/tcloud-ui-reorder-items.component.html +0 -44
  301. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-reorder-items/tcloud-ui-reorder-items.component.scss +0 -41
  302. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-reorder-items/tcloud-ui-reorder-items.component.ts +0 -107
  303. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-reorder-items/tcloud-ui-reorder-items.module.ts +0 -18
  304. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-scroll-box/tcloud-ui-scroll-box.component.html +0 -5
  305. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-scroll-box/tcloud-ui-scroll-box.component.scss +0 -37
  306. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-scroll-box/tcloud-ui-scroll-box.component.ts +0 -45
  307. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-scroll-box/tcloud-ui-scroll-box.module.ts +0 -19
  308. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-tab-menu/components/tcloud-ui-tab-content/tcloud-ui-tab-content.component.html +0 -4
  309. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-tab-menu/components/tcloud-ui-tab-content/tcloud-ui-tab-content.component.scss +0 -7
  310. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-tab-menu/components/tcloud-ui-tab-content/tcloud-ui-tab-content.component.ts +0 -39
  311. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-tab-menu/components/tcloud-ui-tab-head/tcloud-ui-tab-head.component.html +0 -24
  312. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-tab-menu/components/tcloud-ui-tab-head/tcloud-ui-tab-head.component.scss +0 -85
  313. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-tab-menu/components/tcloud-ui-tab-head/tcloud-ui-tab-head.component.ts +0 -76
  314. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-tab-menu/components/tcloud-ui-tab-subtitle/tcloud-ui-tab-subtitle.component.html +0 -3
  315. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-tab-menu/components/tcloud-ui-tab-subtitle/tcloud-ui-tab-subtitle.component.scss +0 -23
  316. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-tab-menu/components/tcloud-ui-tab-subtitle/tcloud-ui-tab-subtitle.component.ts +0 -66
  317. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-tab-menu/components/tcloud-ui-tab-title/tcloud-ui-tab-title.component.html +0 -3
  318. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-tab-menu/components/tcloud-ui-tab-title/tcloud-ui-tab-title.component.scss +0 -72
  319. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-tab-menu/components/tcloud-ui-tab-title/tcloud-ui-tab-title.component.ts +0 -68
  320. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-tab-menu/services/tab-menu.service.ts +0 -115
  321. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-tab-menu/tcloud-ui-tab-menu.component.html +0 -3
  322. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-tab-menu/tcloud-ui-tab-menu.component.scss +0 -13
  323. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-tab-menu/tcloud-ui-tab-menu.component.ts +0 -66
  324. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-tab-menu/tcloud-ui-tab-menu.module.ts +0 -31
  325. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-tab-menu/tcloud-ui-tab-menu.ts +0 -4
  326. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-table/tcloud-ui-table.component.html +0 -4
  327. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-table/tcloud-ui-table.component.scss +0 -0
  328. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-table/tcloud-ui-table.component.spec.ts +0 -23
  329. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-table/tcloud-ui-table.component.ts +0 -18
  330. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-table/tcloud-ui-table.module.ts +0 -19
  331. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-welcome/tcloud-ui-welcome.component.html +0 -24
  332. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-welcome/tcloud-ui-welcome.component.scss +0 -50
  333. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-welcome/tcloud-ui-welcome.component.ts +0 -29
  334. package/projects/tcloud-ui/src/lib/_modules/tcloud-ui-welcome/tcloud-ui-welcome.module.ts +0 -19
  335. package/projects/tcloud-ui/src/lib/_pipes/array-to-text.ts +0 -26
  336. package/projects/tcloud-ui/src/lib/_pipes/bytes.ts +0 -29
  337. package/projects/tcloud-ui/src/lib/_pipes/cnpj.ts +0 -27
  338. package/projects/tcloud-ui/src/lib/_pipes/cpf.ts +0 -27
  339. package/projects/tcloud-ui/src/lib/_pipes/datebr.ts +0 -80
  340. package/projects/tcloud-ui/src/lib/_pipes/monthname.ts +0 -23
  341. package/projects/tcloud-ui/src/lib/_pipes/respective.ts +0 -79
  342. package/projects/tcloud-ui/src/lib/_pipes/statusinfo.ts +0 -79
  343. package/projects/tcloud-ui/src/lib/_pipes/tcloud-pipes.module.ts +0 -46
  344. package/projects/tcloud-ui/src/lib/_services/loading-transitions.service.ts +0 -59
  345. package/projects/tcloud-ui/src/lib/_services/search-in-object.service.ts +0 -100
  346. package/projects/tcloud-ui/src/lib/tcloud-ui.module.ts +0 -104
  347. package/projects/tcloud-ui/src/test.ts +0 -15
  348. package/projects/tcloud-ui/tsconfig.lib.json +0 -15
  349. package/projects/tcloud-ui/tsconfig.lib.prod.json +0 -10
  350. package/projects/tcloud-ui/tsconfig.spec.json +0 -17
  351. package/scripts/copy-artifacts.js +0 -40
  352. package/src/app/app.component.html +0 -204
  353. package/src/app/app.component.scss +0 -9
  354. package/src/app/app.component.ts +0 -37
  355. package/src/app/app.module.ts +0 -91
  356. package/src/app/pages/ui-accordion/ui-accordion.component.html +0 -25
  357. package/src/app/pages/ui-accordion/ui-accordion.component.scss +0 -0
  358. package/src/app/pages/ui-accordion/ui-accordion.component.ts +0 -27
  359. package/src/app/pages/ui-array-to-text/ui-array-to-text.component.html +0 -8
  360. package/src/app/pages/ui-array-to-text/ui-array-to-text.component.scss +0 -0
  361. package/src/app/pages/ui-array-to-text/ui-array-to-text.component.ts +0 -17
  362. package/src/app/pages/ui-choice-issues/ui-choice-issues.component.html +0 -8
  363. package/src/app/pages/ui-choice-issues/ui-choice-issues.component.scss +0 -0
  364. package/src/app/pages/ui-choice-issues/ui-choice-issues.component.ts +0 -21
  365. package/src/app/pages/ui-currency/ui-currency.component.html +0 -6
  366. package/src/app/pages/ui-currency/ui-currency.component.scss +0 -0
  367. package/src/app/pages/ui-currency/ui-currency.component.ts +0 -15
  368. package/src/app/pages/ui-data-list/ui-data-list.component.html +0 -41
  369. package/src/app/pages/ui-data-list/ui-data-list.component.scss +0 -0
  370. package/src/app/pages/ui-data-list/ui-data-list.component.ts +0 -80
  371. package/src/app/pages/ui-datepicker/ui-datepicker.component.html +0 -27
  372. package/src/app/pages/ui-datepicker/ui-datepicker.component.scss +0 -0
  373. package/src/app/pages/ui-datepicker/ui-datepicker.component.ts +0 -23
  374. package/src/app/pages/ui-datepicker-time/ui-datepicker-time.component.html +0 -7
  375. package/src/app/pages/ui-datepicker-time/ui-datepicker-time.component.scss +0 -0
  376. package/src/app/pages/ui-datepicker-time/ui-datepicker-time.component.ts +0 -21
  377. package/src/app/pages/ui-el-copy/ui-el-copy.component.html +0 -16
  378. package/src/app/pages/ui-el-copy/ui-el-copy.component.scss +0 -0
  379. package/src/app/pages/ui-el-copy/ui-el-copy.component.ts +0 -15
  380. package/src/app/pages/ui-filters/ui-filters.component.html +0 -34
  381. package/src/app/pages/ui-filters/ui-filters.component.scss +0 -0
  382. package/src/app/pages/ui-filters/ui-filters.component.ts +0 -154
  383. package/src/app/pages/ui-hover-parent/ui-hover-parent.component.html +0 -14
  384. package/src/app/pages/ui-hover-parent/ui-hover-parent.component.scss +0 -22
  385. package/src/app/pages/ui-hover-parent/ui-hover-parent.component.ts +0 -15
  386. package/src/app/pages/ui-input-password/ui-input-password.component.html +0 -1
  387. package/src/app/pages/ui-input-password/ui-input-password.component.scss +0 -0
  388. package/src/app/pages/ui-input-password/ui-input-password.component.ts +0 -17
  389. package/src/app/pages/ui-input-search/ui-input-search.component.html +0 -19
  390. package/src/app/pages/ui-input-search/ui-input-search.component.scss +0 -0
  391. package/src/app/pages/ui-input-search/ui-input-search.component.ts +0 -100
  392. package/src/app/pages/ui-line-step-circle/ui-line-step-circle.component.html +0 -1
  393. package/src/app/pages/ui-line-step-circle/ui-line-step-circle.component.scss +0 -0
  394. package/src/app/pages/ui-line-step-circle/ui-line-step-circle.component.ts +0 -21
  395. package/src/app/pages/ui-linha-logo/ui-linha-logo.component.html +0 -1
  396. package/src/app/pages/ui-linha-logo/ui-linha-logo.component.scss +0 -0
  397. package/src/app/pages/ui-linha-logo/ui-linha-logo.component.ts +0 -15
  398. package/src/app/pages/ui-loading/ui-loading.component.html +0 -33
  399. package/src/app/pages/ui-loading/ui-loading.component.scss +0 -8
  400. package/src/app/pages/ui-loading/ui-loading.component.ts +0 -42
  401. package/src/app/pages/ui-loading-transitions/ui-loading-transitions.component.html +0 -3
  402. package/src/app/pages/ui-loading-transitions/ui-loading-transitions.component.scss +0 -0
  403. package/src/app/pages/ui-loading-transitions/ui-loading-transitions.component.ts +0 -30
  404. package/src/app/pages/ui-modal/ui-modal.component.html +0 -20
  405. package/src/app/pages/ui-modal/ui-modal.component.scss +0 -0
  406. package/src/app/pages/ui-modal/ui-modal.component.ts +0 -18
  407. package/src/app/pages/ui-multi-input/ui-multi-input.component.html +0 -14
  408. package/src/app/pages/ui-multi-input/ui-multi-input.component.scss +0 -0
  409. package/src/app/pages/ui-multi-input/ui-multi-input.component.ts +0 -41
  410. package/src/app/pages/ui-multi-select/ui-multi-select.component.html +0 -14
  411. package/src/app/pages/ui-multi-select/ui-multi-select.component.scss +0 -0
  412. package/src/app/pages/ui-multi-select/ui-multi-select.component.ts +0 -51
  413. package/src/app/pages/ui-multiples-values/ui-multiples-values.component.html +0 -8
  414. package/src/app/pages/ui-multiples-values/ui-multiples-values.component.scss +0 -0
  415. package/src/app/pages/ui-multiples-values/ui-multiples-values.component.ts +0 -27
  416. package/src/app/pages/ui-not-found/ui-not-found.component.html +0 -1
  417. package/src/app/pages/ui-not-found/ui-not-found.component.scss +0 -0
  418. package/src/app/pages/ui-not-found/ui-not-found.component.ts +0 -15
  419. package/src/app/pages/ui-number-step/ui-number-step.component.html +0 -11
  420. package/src/app/pages/ui-number-step/ui-number-step.component.scss +0 -0
  421. package/src/app/pages/ui-number-step/ui-number-step.component.ts +0 -21
  422. package/src/app/pages/ui-progress-bar/ui-progress-bar.component.html +0 -15
  423. package/src/app/pages/ui-progress-bar/ui-progress-bar.component.scss +0 -0
  424. package/src/app/pages/ui-progress-bar/ui-progress-bar.component.ts +0 -21
  425. package/src/app/pages/ui-reorder-items/ui-reorder-items.component.html +0 -13
  426. package/src/app/pages/ui-reorder-items/ui-reorder-items.component.scss +0 -0
  427. package/src/app/pages/ui-reorder-items/ui-reorder-items.component.ts +0 -31
  428. package/src/app/pages/ui-scroll-box/ui-scroll-box.component.html +0 -69
  429. package/src/app/pages/ui-scroll-box/ui-scroll-box.component.scss +0 -0
  430. package/src/app/pages/ui-scroll-box/ui-scroll-box.component.ts +0 -15
  431. package/src/app/pages/ui-search-in-object/ui-search-in-object.component.html +0 -27
  432. package/src/app/pages/ui-search-in-object/ui-search-in-object.component.scss +0 -0
  433. package/src/app/pages/ui-search-in-object/ui-search-in-object.component.ts +0 -28
  434. package/src/app/pages/ui-tab-menu/ui-tab-menu.component.html +0 -31
  435. package/src/app/pages/ui-tab-menu/ui-tab-menu.component.scss +0 -0
  436. package/src/app/pages/ui-tab-menu/ui-tab-menu.component.ts +0 -19
  437. package/src/app/pages/ui-table/ui-table.component.html +0 -37
  438. package/src/app/pages/ui-table/ui-table.component.scss +0 -0
  439. package/src/app/pages/ui-table/ui-table.component.ts +0 -15
  440. package/src/app/pages/ui-tooltip/ui-tooltip.component.html +0 -65
  441. package/src/app/pages/ui-tooltip/ui-tooltip.component.scss +0 -0
  442. package/src/app/pages/ui-tooltip/ui-tooltip.component.ts +0 -15
  443. package/src/app/pages/ui-welcome/ui-welcome.component.html +0 -16
  444. package/src/app/pages/ui-welcome/ui-welcome.component.scss +0 -0
  445. package/src/app/pages/ui-welcome/ui-welcome.component.ts +0 -21
  446. package/src/assets/.gitkeep +0 -0
  447. package/src/assets/css/bootstrap.min.css +0 -7
  448. package/src/assets/css/style.css +0 -8351
  449. package/src/environments/environment.prod.ts +0 -3
  450. package/src/environments/environment.ts +0 -16
  451. package/src/favicon.ico +0 -0
  452. package/src/index.html +0 -18
  453. package/src/main.ts +0 -12
  454. package/src/polyfills.ts +0 -53
  455. package/src/test.ts +0 -14
  456. package/tsconfig.app.json +0 -15
  457. package/tsconfig.json +0 -39
  458. package/tsconfig.spec.json +0 -18
  459. /package/{projects/tcloud-ui/assets/datepicker → datepicker}/js/_info.txt +0 -0
  460. /package/{projects/tcloud-ui/assets/datepicker → datepicker}/js/datepicker-full.min.js +0 -0
  461. /package/{projects/tcloud-ui/assets/datepicker → datepicker}/js/v1.7.0-datepicker-full.min.js +0 -0
  462. /package/{projects/tcloud-ui/assets/scss → scss}/components/custom/el-copy.scss +0 -0
  463. /package/{projects/tcloud-ui/assets/scss → scss}/components/custom/loading-transitions.scss +0 -0
  464. /package/{projects/tcloud-ui/assets/scss → scss}/components/custom/loading.scss +0 -0
  465. /package/{projects/tcloud-ui/assets/scss → scss}/components/custom/tab-menu.scss +0 -0
  466. /package/{projects/tcloud-ui/assets/scss → scss}/components/custom/table.scss +0 -0
  467. /package/{projects/tcloud-ui/assets/scss → scss}/components/custom/tooltip.scss +0 -0
  468. /package/{projects/tcloud-ui/assets/scss → scss}/components/custom/ui-datepicker.scss +0 -0
  469. /package/{projects/tcloud-ui/assets/scss → scss}/components/custom/validation.scss +0 -0
  470. /package/{projects/tcloud-ui/assets/scss → scss}/components/custom/variables.scss +0 -0
  471. /package/{projects/tcloud-ui/assets/scss → scss}/components/styles.scss +0 -0
  472. /package/{projects/tcloud-ui/assets/scss → scss}/tcloud/custom/alerts.scss +0 -0
  473. /package/{projects/tcloud-ui/assets/scss → scss}/tcloud/custom/buttons.scss +0 -0
  474. /package/{projects/tcloud-ui/assets/scss → scss}/tcloud/custom/card.scss +0 -0
  475. /package/{projects/tcloud-ui/assets/scss → scss}/tcloud/custom/colors.scss +0 -0
  476. /package/{projects/tcloud-ui/assets/scss → scss}/tcloud/custom/forms.scss +0 -0
  477. /package/{projects/tcloud-ui/assets/scss → scss}/tcloud/custom/layout.scss +0 -0
  478. /package/{projects/tcloud-ui/assets/scss → scss}/tcloud/custom/left-navigation.scss +0 -0
  479. /package/{projects/tcloud-ui/assets/scss → scss}/tcloud/custom/mixins.scss +0 -0
  480. /package/{projects/tcloud-ui/assets/scss → scss}/tcloud/custom/tcloud-prime.scss +0 -0
  481. /package/{projects/tcloud-ui/assets/scss → scss}/tcloud/custom/tcloud-standard.scss +0 -0
  482. /package/{projects/tcloud-ui/assets/scss → scss}/tcloud/custom/text.scss +0 -0
  483. /package/{projects/tcloud-ui/assets/scss → scss}/tcloud/custom/top-navigation.scss +0 -0
  484. /package/{projects/tcloud-ui/assets/scss → scss}/tcloud/custom/variables.scss +0 -0
  485. /package/{projects/tcloud-ui/assets/scss → scss}/tcloud/iaas/forms.scss +0 -0
  486. /package/{projects/tcloud-ui/assets/scss → scss}/tcloud/styles.scss +0 -0
@@ -0,0 +1,440 @@
1
+ import { Component, ViewChild, Output, EventEmitter, forwardRef, Input, ViewEncapsulation } from '@angular/core';
2
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../../_pipes";
5
+ import * as i2 from "@angular/common";
6
+ var translation = {
7
+ ptBR: {
8
+ days: ["Domingo", "Segunda", "Terça", "Quarta", "Quinta", "Sexta", "Sábado"],
9
+ daysShort: ["Dom", "Seg", "Ter", "Qua", "Qui", "Sex", "Sáb"],
10
+ daysMin: ["Do", "Se", "Te", "Qu", "Qu", "Se", "Sa"],
11
+ months: ["Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro"],
12
+ monthsShort: ["Jan", "Fev", "Mar", "Abr", "Mai", "Jun", "Jul", "Ago", "Set", "Out", "Nov", "Dez"],
13
+ today: "Hoje",
14
+ clear: "Limpar",
15
+ titleFormat: "MM y",
16
+ format: "dd/mm/yyyy",
17
+ weekStart: 0
18
+ }
19
+ };
20
+ const CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR = {
21
+ provide: NG_VALUE_ACCESSOR,
22
+ useExisting: forwardRef(() => TCloudUiDatepickerComponent),
23
+ multi: true
24
+ };
25
+ const noop = () => {
26
+ };
27
+ export class TCloudUiDatepickerComponent {
28
+ set ngModel(v) {
29
+ if (v && v !== this.innerValue) {
30
+ this.innerValue = v; //this.toSetMask(v);
31
+ this.default_innerValue = v;
32
+ this.default_innerValue_convertida = this.convertDates(v);
33
+ if (this.multiple) {
34
+ this.default_qtd_innerValue = (v).length;
35
+ }
36
+ this.onChange.emit(v);
37
+ }
38
+ }
39
+ constructor(_DateBRPipe) {
40
+ this._DateBRPipe = _DateBRPipe;
41
+ // multiple permite selecionar multiplas datas
42
+ this.multiple = false;
43
+ // maxNumberOfDates - Maximum number of dates users can select. No limit is applied if 0 is set.
44
+ // Depende de: multiple como true
45
+ this.maxNumberOfDates = 0;
46
+ // daysOfWeekDisabled - Dias da semana desabilidatos = 0 para sabado até 6 para domingo
47
+ this.daysOfWeekDisabled = [];
48
+ // minDate - Data minima para exibicao do calendario - ex: 01/01/2020
49
+ this.minDate = '';
50
+ // maxDate - Data maxima para exibicao do calendario - ex: 31/12/2020
51
+ this.maxDate = '';
52
+ // datesDisabled - Datas desabilitadas - Ex: ['12/10/2020','25/12/2020']
53
+ this.datesDisabled = [];
54
+ // modeInput - Exibe um input para quando clicar abrir o calendario
55
+ this.modeInput = false;
56
+ this.useBorder = true;
57
+ this.childInputDateTime = false;
58
+ this.startViewInMinDate = false;
59
+ this.startViewInMaxDate = false;
60
+ this.disabled = false;
61
+ // onChange - Dispara a data selecionada
62
+ this.onChange = new EventEmitter();
63
+ this.default_qtd_innerValue = 0;
64
+ this.ngModelChange = new EventEmitter();
65
+ this.onCheckDate = new EventEmitter();
66
+ this.code = 'tcloud-ui-datepicker';
67
+ this.ID = '';
68
+ //Placeholders for the callbacks which are later providesd
69
+ //by the Control Value Accessor
70
+ this.onTouchedCallback = noop;
71
+ this.onChangeCallback = noop;
72
+ }
73
+ ngOnInit() {
74
+ this.ID = this.generateID();
75
+ Datepicker.locales.ptBR = translation.ptBR;
76
+ this.start_datepicker();
77
+ }
78
+ generateID() {
79
+ return `tcloud-ui-datepicker-${Math.floor(Math.random() * Math.floor(Math.random() * Date.now()))}`;
80
+ }
81
+ toSetMask(v) {
82
+ return this._DateBRPipe.transform(v);
83
+ }
84
+ parseDateLocal(dateString, _split) {
85
+ if (!_split) {
86
+ _split = '-';
87
+ }
88
+ const [day, month, year] = dateString.split(_split);
89
+ return new Date(year, month - 1, day); // Subtrai 1 porque os meses são indexados a partir de 0
90
+ }
91
+ formatDateLocal(date) {
92
+ const year = date.getFullYear();
93
+ const month = String(date.getMonth() + 1).padStart(2, '0'); // Adiciona 1 porque os meses são indexados a partir de 0
94
+ const day = String(date.getDate()).padStart(2, '0');
95
+ return `${day}/${month}/${year}`;
96
+ }
97
+ get_options() {
98
+ // Função para formatar uma data no fuso horário local
99
+ const formatDateLocal = (date) => {
100
+ const year = date.getFullYear();
101
+ const month = String(date.getMonth() + 1).padStart(2, '0');
102
+ const day = String(date.getDate()).padStart(2, '0');
103
+ return `${year}-${month}-${day}`;
104
+ };
105
+ // Função para analisar uma data no fuso horário local
106
+ const parseDateLocal = (dateString) => {
107
+ const [year, month, day] = dateString.split('-');
108
+ return new Date(year, month - 1, day);
109
+ };
110
+ let options = {
111
+ nextArrow: `<i class="fas fa-caret-right"></i>`,
112
+ prevArrow: `<i class="fas fa-caret-left"></i>`,
113
+ format: 'dd/mm/yyyy',
114
+ daysOfWeekHighlighted: [0, 6],
115
+ language: 'ptBR',
116
+ formatter: {
117
+ date: formatDateLocal,
118
+ },
119
+ parser: {
120
+ date: parseDateLocal,
121
+ }
122
+ };
123
+ if ((this.daysOfWeekDisabled).length > 0) {
124
+ options['daysOfWeekDisabled'] = this.daysOfWeekDisabled;
125
+ }
126
+ if ((this.datesDisabled).length > 0) {
127
+ options['datesDisabled'] = this.datesDisabled;
128
+ }
129
+ if (this.minDate !== '') {
130
+ options['minDate'] = this.minDate;
131
+ }
132
+ if (this.maxDate !== '') {
133
+ options['maxDate'] = this.maxDate;
134
+ }
135
+ if (this.multiple) {
136
+ options['multiple'] = true;
137
+ options['autohide'] = false;
138
+ options['maxNumberOfDates'] = this.maxNumberOfDates;
139
+ }
140
+ return options;
141
+ }
142
+ clearDate() {
143
+ if (this.datepicker) {
144
+ this.datepicker.setDate({ clear: true });
145
+ }
146
+ }
147
+ start_datepicker() {
148
+ setTimeout(() => {
149
+ const input_datepicker = this.input_datepicker?.nativeElement;
150
+ if (input_datepicker) {
151
+ input_datepicker.setAttribute('placeholder', 'DD/MM/YYYY');
152
+ if (!this.useBorder) {
153
+ input_datepicker.setAttribute('style', 'border:none; text-align: center; max-width: 105px; padding: 0;');
154
+ }
155
+ this.datepicker = new Datepicker(input_datepicker, this.get_options());
156
+ if (this.innerValue && this.innerValue !== '') {
157
+ this.toSetDefaultDate(this.innerValue);
158
+ }
159
+ input_datepicker.addEventListener('keyup', (event) => {
160
+ const v = (input_datepicker['value']) ? input_datepicker['value'] : '';
161
+ input_datepicker['value'] = this.toSetMask(v);
162
+ if ((input_datepicker['value']).length >= 10) {
163
+ const v = (input_datepicker['value']).substring(0, 10);
164
+ const part_date = (v).split('/');
165
+ if ((part_date).length === 3) {
166
+ let dia = part_date[0];
167
+ let mes = part_date[1];
168
+ let ano = part_date[2];
169
+ mes = (+(mes) < 10) ? `0${+mes}` : mes;
170
+ dia = (+(dia) < 10) ? `0${+dia}` : dia;
171
+ const dt = new Date(ano + '-' + mes + '-' + dia);
172
+ if (dt) {
173
+ input_datepicker?.changeDate;
174
+ document.getElementById(this.ID)?.blur();
175
+ this.onChange.emit(this.innerValue);
176
+ this.ngModelChange.emit(this.innerValue);
177
+ }
178
+ }
179
+ }
180
+ else {
181
+ this.innerValue = undefined;
182
+ this.onChange.emit(this.innerValue);
183
+ this.ngModelChange.emit(this.innerValue);
184
+ }
185
+ });
186
+ input_datepicker.addEventListener('changeDate', (event) => {
187
+ if (event?.detail?.date) {
188
+ let qtd = (event.detail.date).length;
189
+ if (this.disabled) {
190
+ if (!this.multiple) {
191
+ let dt = this.formatDateLocal(event.detail?.date);
192
+ if (this.default_innerValue && this.default_innerValue[0] && (`${this.default_innerValue[0]}` !== `${dt}`)) {
193
+ qtd = 1;
194
+ }
195
+ }
196
+ this.datepicker.setDate(this.default_innerValue_convertida, { clear: true, render: true });
197
+ if (qtd > this.default_qtd_innerValue) {
198
+ this.date_changed = event?.detail.viewDate;
199
+ this.datepicker.setFocusedDate(this.date_changed, { resetView: false });
200
+ this.onCheckDate.emit({
201
+ value: this.formatDateLocal(this.date_changed),
202
+ date: this.date_changed,
203
+ checked: true,
204
+ disabled: this.disabled
205
+ });
206
+ }
207
+ else {
208
+ if (this.multiple) {
209
+ const so = this.findDifferences(this.default_innerValue, this.formatArrayDates(event.detail.date));
210
+ if (so && (so).length > 0) {
211
+ this.date_changed = this.parseDateLocal(so[0], '/');
212
+ this.onCheckDate.emit({
213
+ value: so[0],
214
+ date: this.date_changed,
215
+ checked: false,
216
+ disabled: this.disabled
217
+ });
218
+ }
219
+ }
220
+ this.datepicker.setFocusedDate(this.date_changed, { resetView: false });
221
+ }
222
+ }
223
+ else {
224
+ this.toSelectedDate(event.detail);
225
+ }
226
+ }
227
+ else {
228
+ this.innerValue = '';
229
+ this.ngModelChange.emit(this.innerValue);
230
+ }
231
+ });
232
+ }
233
+ });
234
+ }
235
+ toSetDefaultDate(date) {
236
+ if (date === undefined || date === null || date === '') {
237
+ this.clearDate();
238
+ return;
239
+ }
240
+ let dates = [];
241
+ if (date && typeof date === 'string') {
242
+ if ((date).includes(',')) {
243
+ const dates = (date).split(',');
244
+ date = dates;
245
+ if (!this.multiple) {
246
+ this.innerValue = date = dates[0];
247
+ this.ngModelChange.emit(this.innerValue);
248
+ }
249
+ }
250
+ }
251
+ if (date && typeof date === 'string') {
252
+ (dates).push(date);
253
+ }
254
+ else {
255
+ dates = date;
256
+ }
257
+ if (this.datepicker) {
258
+ if (dates && dates.length > 0 && this.multiple) {
259
+ if (this.startViewInMinDate) {
260
+ dates = this.sortDatesDescending(dates);
261
+ }
262
+ else if (this.startViewInMaxDate) {
263
+ dates = this.sortDatesAscending(dates);
264
+ }
265
+ }
266
+ this.datepicker.setDate(dates);
267
+ }
268
+ }
269
+ convertDates(arrayDeDatas) {
270
+ const formatDate = (dateString) => {
271
+ const [day, month, year] = dateString.split('/');
272
+ return new Date(year, month - 1, day);
273
+ };
274
+ if (arrayDeDatas && Array.isArray(arrayDeDatas)) {
275
+ const datasOrdenadas = arrayDeDatas.map((data) => ({ original: data, convertida: formatDate(data) }));
276
+ return datasOrdenadas.map(item => item.convertida);
277
+ }
278
+ else {
279
+ return [arrayDeDatas];
280
+ }
281
+ }
282
+ sortDatesDescending(arrayDeDatas) {
283
+ const formatDate = (dateString) => {
284
+ const [day, month, year] = dateString.split('/');
285
+ return new Date(year, month - 1, day);
286
+ };
287
+ const datasOrdenadas = arrayDeDatas.map((data) => ({ original: data, convertida: formatDate(data) })).sort((a, b) => b.convertida - a.convertida);
288
+ const datasOrdenadasFormatadas = datasOrdenadas.map(item => item.original);
289
+ return datasOrdenadasFormatadas;
290
+ }
291
+ sortDatesAscending(arrayDeDatas) {
292
+ const formatDate = (dateString) => {
293
+ const [day, month, year] = dateString.split('/');
294
+ return new Date(year, month - 1, day);
295
+ };
296
+ const datasOrdenadas = arrayDeDatas.map((data) => ({ original: data, convertida: formatDate(data) })).sort((a, b) => a.convertida - b.convertida);
297
+ const datasOrdenadasFormatadas = datasOrdenadas.map(item => item.original);
298
+ return datasOrdenadasFormatadas;
299
+ }
300
+ toSelectedDate(detail) {
301
+ if (detail.datepicker.dates && (detail.datepicker.dates).length > 0) {
302
+ if (this.multiple) {
303
+ let dates = [];
304
+ for (let i = 0; i < (detail.datepicker.dates).length; i++) {
305
+ const timeStamp = detail.datepicker.dates[i];
306
+ (dates).push(this.format_date(timeStamp));
307
+ }
308
+ this.innerValue = dates;
309
+ this.onChange.emit(this.innerValue);
310
+ }
311
+ else {
312
+ const timeStamp = detail.datepicker.dates[0];
313
+ const date = this.format_date(timeStamp);
314
+ this.onChange.emit(date);
315
+ this.innerValue = date;
316
+ }
317
+ }
318
+ else {
319
+ this.clearDate();
320
+ this.innerValue = null;
321
+ this.onChange.emit(this.innerValue);
322
+ }
323
+ this.value = this.innerValue;
324
+ this.ngModelChange.emit(this.innerValue);
325
+ }
326
+ format_date(timeStamp) {
327
+ var date = new Date(timeStamp);
328
+ let dia = `${date.getDate()}`;
329
+ let mes = `${date.getMonth() + 1}`;
330
+ let ano = `${date.getFullYear()}`;
331
+ dia = (+(dia) < 10) ? `0${+dia}` : dia;
332
+ mes = (+(mes) < 10) ? `0${+mes}` : mes;
333
+ const dateFormat = `${dia}/${mes}/${ano}`;
334
+ return dateFormat;
335
+ }
336
+ toClickIn(id) {
337
+ const element = document.getElementById(id);
338
+ setTimeout(() => {
339
+ element?.datepicker?.show();
340
+ });
341
+ }
342
+ findDifferences(array1, array2) {
343
+ const conjuntoComum = new Set([...array1, ...array2]);
344
+ return Array.from(conjuntoComum).filter(item => !(array1.includes(item) && array2.includes(item)));
345
+ }
346
+ formatArrayDates(array_dates) {
347
+ let formateds = [];
348
+ if (array_dates && (array_dates).length > 0) {
349
+ const formatDateLocal = (date) => {
350
+ const year = date.getFullYear();
351
+ const month = String(date.getMonth() + 1).padStart(2, '0'); // Adiciona 1 porque os meses são indexados a partir de 0
352
+ const day = String(date.getDate()).padStart(2, '0');
353
+ return `${day}/${month}/${year}`;
354
+ };
355
+ for (let i = 0; i < (array_dates).length; i++) {
356
+ const dt = array_dates[i];
357
+ (formateds).push(formatDateLocal(dt));
358
+ }
359
+ }
360
+ return formateds;
361
+ }
362
+ //get accessor
363
+ get value() {
364
+ return this.innerValue;
365
+ }
366
+ ;
367
+ //set accessor including call the onchange callback
368
+ set value(v) {
369
+ if (v !== this.innerValue) {
370
+ this.innerValue = v; // this.toSetMask(v);
371
+ this.onChangeCallback(v);
372
+ }
373
+ else {
374
+ // this.innerValue = '';
375
+ }
376
+ }
377
+ //Set touched on blur
378
+ onBlur() {
379
+ this.onTouchedCallback();
380
+ }
381
+ //From ControlValueAccessor interface
382
+ writeValue(value) {
383
+ if (value !== this.innerValue) {
384
+ this.innerValue = value;
385
+ this.toSetDefaultDate(value);
386
+ }
387
+ }
388
+ //From ControlValueAccessor interface
389
+ registerOnChange(fn) {
390
+ this.onChangeCallback = fn;
391
+ }
392
+ //From ControlValueAccessor interface
393
+ registerOnTouched(fn) {
394
+ this.onTouchedCallback = fn;
395
+ }
396
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TCloudUiDatepickerComponent, deps: [{ token: i1.DateBRPipe }], target: i0.ɵɵFactoryTarget.Component }); }
397
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TCloudUiDatepickerComponent, selector: "tcloud-ui-datepicker", inputs: { multiple: "multiple", maxNumberOfDates: "maxNumberOfDates", daysOfWeekDisabled: "daysOfWeekDisabled", minDate: "minDate", maxDate: "maxDate", datesDisabled: "datesDisabled", modeInput: "modeInput", useBorder: "useBorder", childInputDateTime: "childInputDateTime", startViewInMinDate: "startViewInMinDate", startViewInMaxDate: "startViewInMaxDate", disabled: "disabled", ngModel: "ngModel", code: "code" }, outputs: { onChange: "onChange", ngModelChange: "ngModelChange", onCheckDate: "onCheckDate" }, providers: [CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR], viewQueries: [{ propertyName: "input_datepicker", first: true, predicate: ["input_datepicker"], descendants: true }], ngImport: i0, template: "<!-- Input mode -->\r\n<ng-container *ngIf=\"modeInput\">\r\n\r\n <div class=\"tcloud-ui-datepicker input-tc-datepicker\" [class.no-border]=\"!useBorder\" [class.child-input-date-time]=\"childInputDateTime\" >\r\n <table class=\"table-box-input\">\r\n <tr>\r\n <td class=\"td-icon\">\r\n <div class=\"delimiter-time-icon\" (click)=\"toClickIn(ID)\" ><i class=\"fas fa-calendar-alt\"></i></div>\r\n </td>\r\n <td class=\"td-date\">\r\n <input #input_datepicker type=\"text\" name=\"{{ID}}\" id=\"{{ID}}\" class=\"form-control\" [title]=\"innerValue\" >\r\n </td>\r\n </tr>\r\n </table>\r\n </div>\r\n</ng-container>\r\n\r\n<!-- Inline mode -->\r\n<ng-container *ngIf=\"!modeInput\"> \r\n <div class=\"tcloud-ui-datepicker tcloud-ui-datepicker-second\" #input_datepicker id=\"{{ID}}\" pattern=\"/^\\d{2}\\/\\d{2}\\/\\d{4}$/\" [title]=\"innerValue\"></div>\r\n</ng-container>\r\n\r\n<!-- EX de uso \r\n <tc-datepicker \r\n [multiple]=\"false\"\r\n [daysOfWeekDisabled]=\"[0,6]\"\r\n [minDate]=\"'18/11/2021'\"\r\n [maxDate]=\"'18/12/2023'\"\r\n [datesDisabled]=\"['12/10/2022','25/12/2022']\"\r\n [modeInput]=\"false\"\r\n (onChange)=\"($event)\"\r\n (onCheckDate)=\"onCheckDate($event)\"\r\n [(ngModel)]=\"dateValue\" >\r\n </tc-datepicker>\r\n \r\n // multiple = false\r\n // dateValue - string - pode ser: 12/12/2022 \r\n\r\n // multiple = true\r\n // dateValue - string - pode ser: 11/12/2022,12/12/2022 ... \r\n\r\n <pre>data: {{ dateValue }}</pre>\r\n-->\r\n", styles: [".input_datepicker{width:100%;max-width:290px}.input-tc-datepicker{background-color:#fff;border:1px solid var(--tc-gray-300);border-radius:3px;height:40px}.input-tc-datepicker.no-border{border:none!important}.input-tc-datepicker .table-box-input{width:100%}.input-tc-datepicker .table-box-input .td-icon{width:14px}.input-tc-datepicker .table-box-input .td-icon .delimiter-time-icon{text-align:center;cursor:pointer}.input-tc-datepicker .table-box-input .td-icon .delimiter-time-icon i{position:relative;left:1px;opacity:.5}.input-tc-datepicker .table-box-input .td-date{min-width:30px;width:101px input;width-width:100%}.input-tc-datepicker .table-box-input input{border:none;margin-top:2px;font-size:13px!important}.child-input-date-time{height:28px!important}\n", ".datepicker{display:none}.datepicker.active{display:block}.datepicker-dropdown{left:0;padding-top:4px;position:absolute;top:0;z-index:20}.datepicker-dropdown.datepicker-orient-top{padding-bottom:4px;padding-top:0}.datepicker-picker{background-color:#fff;border-radius:4px;display:inline-block}.datepicker-dropdown .datepicker-picker{box-shadow:0 2px 3px #0a0a0a1a,0 0 0 1px #0a0a0a1a}.datepicker-picker span{-webkit-touch-callout:none;border:0;border-radius:4px;cursor:default;display:block;flex:1;text-align:center;-webkit-user-select:none;user-select:none}.datepicker-main{padding:2px}.datepicker-footer{background-color:#f5f5f5;box-shadow:inset 0 1px 1px #0a0a0a1a}.datepicker-controls,.datepicker-grid,.datepicker-view,.datepicker-view .days-of-week{display:flex}.datepicker-grid{flex-wrap:wrap}.datepicker-view .days .datepicker-cell,.datepicker-view .dow{flex-basis:14.2857142857%}.datepicker-view.datepicker-grid .datepicker-cell{flex-basis:25%}.datepicker-cell,.datepicker-view .week{height:2.25rem;line-height:2.25rem}.datepicker-title{background-color:#f5f5f5;box-shadow:inset 0 -1px 1px #0a0a0a1a;font-weight:700;padding:.375rem .75rem;text-align:center}.datepicker-header .datepicker-controls{padding:2px 2px 0}.datepicker-controls .button{align-items:center;background-color:#fff;border:1px solid #dbdbdb;border-radius:4px;box-shadow:none;color:#363636;cursor:pointer;display:inline-flex;font-size:1rem;height:2.25em;justify-content:center;line-height:1.5;margin:0;padding:calc(.375em - 1px) .75em;position:relative;text-align:center;vertical-align:top;white-space:nowrap}.datepicker-controls .button:active,.datepicker-controls .button:focus{outline:none}.datepicker-controls .button:hover{border-color:#b5b5b5;color:#363636}.datepicker-controls .button:focus{border-color:#3273dc;color:#363636}.datepicker-controls .button:focus:not(:active){box-shadow:0 0 0 .125em #3273dc40}.datepicker-controls .button:active{border-color:#4a4a4a;color:#363636}.datepicker-controls .button[disabled]{cursor:not-allowed}.datepicker-header .datepicker-controls .button{border-color:transparent;font-weight:700}.datepicker-header .datepicker-controls .button:hover{background-color:#f9f9f9}.datepicker-header .datepicker-controls .button:focus:not(:active){box-shadow:0 0 0 .125em #ffffff40}.datepicker-header .datepicker-controls .button:active{background-color:#f2f2f2}.datepicker-header .datepicker-controls .button[disabled]{box-shadow:none}.datepicker-footer .datepicker-controls .button{border-radius:2px;font-size:.75rem;margin:calc(.375rem - 1px) .375rem;width:100%}.datepicker-controls .view-switch{flex:auto}.datepicker-controls .next-btn,.datepicker-controls .prev-btn{padding-left:.375rem;padding-right:.375rem;width:2.25rem}.datepicker-controls .next-btn.disabled,.datepicker-controls .prev-btn.disabled{visibility:hidden}.datepicker-view .dow{font-size:.875rem;font-weight:700;height:1.5rem;line-height:1.5rem}.datepicker-view .week{color:#b5b5b5;font-size:.75rem;width:2.25rem}@media (max-width:22.5rem){.datepicker-view .week{width:1.96875rem}}.datepicker-grid{width:15.75rem}@media (max-width:22.5rem){.calendar-weeks+.days .datepicker-grid{width:13.78125rem}}.datepicker-cell:not(.disabled):hover{background-color:#f9f9f9;cursor:pointer}.datepicker-cell.focused:not(.selected){background-color:#e8e8e8}.datepicker-cell.selected,.datepicker-cell.selected:hover{background-color:#3273dc;color:#fff;font-weight:600}.datepicker-cell.disabled{color:#dbdbdb}.datepicker-cell.next:not(.disabled),.datepicker-cell.prev:not(.disabled){color:#7a7a7a}.datepicker-cell.next.selected,.datepicker-cell.prev.selected{color:#e6e6e6}.datepicker-cell.highlighted:not(.selected):not(.range):not(.today){background-color:#f5f5f5;border-radius:0}.datepicker-cell.highlighted:not(.selected):not(.range):not(.today):not(.disabled):hover{background-color:#eee}.datepicker-cell.highlighted:not(.selected):not(.range):not(.today).focused{background-color:#e8e8e8}.datepicker-cell.today:not(.selected){background-color:#00d1b2}.datepicker-cell.today:not(.selected):not(.disabled){color:#fff}.datepicker-cell.today.focused:not(.selected){background-color:#00c4a7}.datepicker-cell.range-end:not(.selected),.datepicker-cell.range-start:not(.selected){background-color:#b5b5b5;color:#fff}.datepicker-cell.range-end.focused:not(.selected),.datepicker-cell.range-start.focused:not(.selected){background-color:#afafaf}.datepicker-cell.range-start{border-radius:4px 0 0 4px}.datepicker-cell.range-end{border-radius:0 4px 4px 0}.datepicker-cell.range{background-color:#dbdbdb;border-radius:0}.datepicker-cell.range:not(.disabled):not(.focused):not(.today):hover{background-color:#d5d5d5}.datepicker-cell.range.disabled{color:#c2c2c2}.datepicker-cell.range.focused{background-color:#cfcfcf}.datepicker-view.datepicker-grid .datepicker-cell{height:4.5rem;line-height:4.5rem}.datepicker-input.in-edit{border-color:#2366d1}.datepicker-input.in-edit:active,.datepicker-input.in-edit:focus{box-shadow:0 0 .25em .25em #2366d133}\n", ".tcloud-ui-datepicker .datepicker-cell.focused:not(.selected){background-color:inherit!important}.tcloud-ui-datepicker .datepicker-cell.highlighted:not(.selected){background-color:#f5f5f5!important}.datepicker-picker{border:1px solid #ccc;padding:10px 15px}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], encapsulation: i0.ViewEncapsulation.None }); }
398
+ }
399
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TCloudUiDatepickerComponent, decorators: [{
400
+ type: Component,
401
+ args: [{ selector: 'tcloud-ui-datepicker', providers: [CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR], encapsulation: ViewEncapsulation.None, template: "<!-- Input mode -->\r\n<ng-container *ngIf=\"modeInput\">\r\n\r\n <div class=\"tcloud-ui-datepicker input-tc-datepicker\" [class.no-border]=\"!useBorder\" [class.child-input-date-time]=\"childInputDateTime\" >\r\n <table class=\"table-box-input\">\r\n <tr>\r\n <td class=\"td-icon\">\r\n <div class=\"delimiter-time-icon\" (click)=\"toClickIn(ID)\" ><i class=\"fas fa-calendar-alt\"></i></div>\r\n </td>\r\n <td class=\"td-date\">\r\n <input #input_datepicker type=\"text\" name=\"{{ID}}\" id=\"{{ID}}\" class=\"form-control\" [title]=\"innerValue\" >\r\n </td>\r\n </tr>\r\n </table>\r\n </div>\r\n</ng-container>\r\n\r\n<!-- Inline mode -->\r\n<ng-container *ngIf=\"!modeInput\"> \r\n <div class=\"tcloud-ui-datepicker tcloud-ui-datepicker-second\" #input_datepicker id=\"{{ID}}\" pattern=\"/^\\d{2}\\/\\d{2}\\/\\d{4}$/\" [title]=\"innerValue\"></div>\r\n</ng-container>\r\n\r\n<!-- EX de uso \r\n <tc-datepicker \r\n [multiple]=\"false\"\r\n [daysOfWeekDisabled]=\"[0,6]\"\r\n [minDate]=\"'18/11/2021'\"\r\n [maxDate]=\"'18/12/2023'\"\r\n [datesDisabled]=\"['12/10/2022','25/12/2022']\"\r\n [modeInput]=\"false\"\r\n (onChange)=\"($event)\"\r\n (onCheckDate)=\"onCheckDate($event)\"\r\n [(ngModel)]=\"dateValue\" >\r\n </tc-datepicker>\r\n \r\n // multiple = false\r\n // dateValue - string - pode ser: 12/12/2022 \r\n\r\n // multiple = true\r\n // dateValue - string - pode ser: 11/12/2022,12/12/2022 ... \r\n\r\n <pre>data: {{ dateValue }}</pre>\r\n-->\r\n", styles: [".input_datepicker{width:100%;max-width:290px}.input-tc-datepicker{background-color:#fff;border:1px solid var(--tc-gray-300);border-radius:3px;height:40px}.input-tc-datepicker.no-border{border:none!important}.input-tc-datepicker .table-box-input{width:100%}.input-tc-datepicker .table-box-input .td-icon{width:14px}.input-tc-datepicker .table-box-input .td-icon .delimiter-time-icon{text-align:center;cursor:pointer}.input-tc-datepicker .table-box-input .td-icon .delimiter-time-icon i{position:relative;left:1px;opacity:.5}.input-tc-datepicker .table-box-input .td-date{min-width:30px;width:101px input;width-width:100%}.input-tc-datepicker .table-box-input input{border:none;margin-top:2px;font-size:13px!important}.child-input-date-time{height:28px!important}\n", ".datepicker{display:none}.datepicker.active{display:block}.datepicker-dropdown{left:0;padding-top:4px;position:absolute;top:0;z-index:20}.datepicker-dropdown.datepicker-orient-top{padding-bottom:4px;padding-top:0}.datepicker-picker{background-color:#fff;border-radius:4px;display:inline-block}.datepicker-dropdown .datepicker-picker{box-shadow:0 2px 3px #0a0a0a1a,0 0 0 1px #0a0a0a1a}.datepicker-picker span{-webkit-touch-callout:none;border:0;border-radius:4px;cursor:default;display:block;flex:1;text-align:center;-webkit-user-select:none;user-select:none}.datepicker-main{padding:2px}.datepicker-footer{background-color:#f5f5f5;box-shadow:inset 0 1px 1px #0a0a0a1a}.datepicker-controls,.datepicker-grid,.datepicker-view,.datepicker-view .days-of-week{display:flex}.datepicker-grid{flex-wrap:wrap}.datepicker-view .days .datepicker-cell,.datepicker-view .dow{flex-basis:14.2857142857%}.datepicker-view.datepicker-grid .datepicker-cell{flex-basis:25%}.datepicker-cell,.datepicker-view .week{height:2.25rem;line-height:2.25rem}.datepicker-title{background-color:#f5f5f5;box-shadow:inset 0 -1px 1px #0a0a0a1a;font-weight:700;padding:.375rem .75rem;text-align:center}.datepicker-header .datepicker-controls{padding:2px 2px 0}.datepicker-controls .button{align-items:center;background-color:#fff;border:1px solid #dbdbdb;border-radius:4px;box-shadow:none;color:#363636;cursor:pointer;display:inline-flex;font-size:1rem;height:2.25em;justify-content:center;line-height:1.5;margin:0;padding:calc(.375em - 1px) .75em;position:relative;text-align:center;vertical-align:top;white-space:nowrap}.datepicker-controls .button:active,.datepicker-controls .button:focus{outline:none}.datepicker-controls .button:hover{border-color:#b5b5b5;color:#363636}.datepicker-controls .button:focus{border-color:#3273dc;color:#363636}.datepicker-controls .button:focus:not(:active){box-shadow:0 0 0 .125em #3273dc40}.datepicker-controls .button:active{border-color:#4a4a4a;color:#363636}.datepicker-controls .button[disabled]{cursor:not-allowed}.datepicker-header .datepicker-controls .button{border-color:transparent;font-weight:700}.datepicker-header .datepicker-controls .button:hover{background-color:#f9f9f9}.datepicker-header .datepicker-controls .button:focus:not(:active){box-shadow:0 0 0 .125em #ffffff40}.datepicker-header .datepicker-controls .button:active{background-color:#f2f2f2}.datepicker-header .datepicker-controls .button[disabled]{box-shadow:none}.datepicker-footer .datepicker-controls .button{border-radius:2px;font-size:.75rem;margin:calc(.375rem - 1px) .375rem;width:100%}.datepicker-controls .view-switch{flex:auto}.datepicker-controls .next-btn,.datepicker-controls .prev-btn{padding-left:.375rem;padding-right:.375rem;width:2.25rem}.datepicker-controls .next-btn.disabled,.datepicker-controls .prev-btn.disabled{visibility:hidden}.datepicker-view .dow{font-size:.875rem;font-weight:700;height:1.5rem;line-height:1.5rem}.datepicker-view .week{color:#b5b5b5;font-size:.75rem;width:2.25rem}@media (max-width:22.5rem){.datepicker-view .week{width:1.96875rem}}.datepicker-grid{width:15.75rem}@media (max-width:22.5rem){.calendar-weeks+.days .datepicker-grid{width:13.78125rem}}.datepicker-cell:not(.disabled):hover{background-color:#f9f9f9;cursor:pointer}.datepicker-cell.focused:not(.selected){background-color:#e8e8e8}.datepicker-cell.selected,.datepicker-cell.selected:hover{background-color:#3273dc;color:#fff;font-weight:600}.datepicker-cell.disabled{color:#dbdbdb}.datepicker-cell.next:not(.disabled),.datepicker-cell.prev:not(.disabled){color:#7a7a7a}.datepicker-cell.next.selected,.datepicker-cell.prev.selected{color:#e6e6e6}.datepicker-cell.highlighted:not(.selected):not(.range):not(.today){background-color:#f5f5f5;border-radius:0}.datepicker-cell.highlighted:not(.selected):not(.range):not(.today):not(.disabled):hover{background-color:#eee}.datepicker-cell.highlighted:not(.selected):not(.range):not(.today).focused{background-color:#e8e8e8}.datepicker-cell.today:not(.selected){background-color:#00d1b2}.datepicker-cell.today:not(.selected):not(.disabled){color:#fff}.datepicker-cell.today.focused:not(.selected){background-color:#00c4a7}.datepicker-cell.range-end:not(.selected),.datepicker-cell.range-start:not(.selected){background-color:#b5b5b5;color:#fff}.datepicker-cell.range-end.focused:not(.selected),.datepicker-cell.range-start.focused:not(.selected){background-color:#afafaf}.datepicker-cell.range-start{border-radius:4px 0 0 4px}.datepicker-cell.range-end{border-radius:0 4px 4px 0}.datepicker-cell.range{background-color:#dbdbdb;border-radius:0}.datepicker-cell.range:not(.disabled):not(.focused):not(.today):hover{background-color:#d5d5d5}.datepicker-cell.range.disabled{color:#c2c2c2}.datepicker-cell.range.focused{background-color:#cfcfcf}.datepicker-view.datepicker-grid .datepicker-cell{height:4.5rem;line-height:4.5rem}.datepicker-input.in-edit{border-color:#2366d1}.datepicker-input.in-edit:active,.datepicker-input.in-edit:focus{box-shadow:0 0 .25em .25em #2366d133}\n", ".tcloud-ui-datepicker .datepicker-cell.focused:not(.selected){background-color:inherit!important}.tcloud-ui-datepicker .datepicker-cell.highlighted:not(.selected){background-color:#f5f5f5!important}.datepicker-picker{border:1px solid #ccc;padding:10px 15px}\n"] }]
402
+ }], ctorParameters: function () { return [{ type: i1.DateBRPipe }]; }, propDecorators: { multiple: [{
403
+ type: Input
404
+ }], maxNumberOfDates: [{
405
+ type: Input
406
+ }], daysOfWeekDisabled: [{
407
+ type: Input
408
+ }], minDate: [{
409
+ type: Input
410
+ }], maxDate: [{
411
+ type: Input
412
+ }], datesDisabled: [{
413
+ type: Input
414
+ }], modeInput: [{
415
+ type: Input
416
+ }], useBorder: [{
417
+ type: Input
418
+ }], childInputDateTime: [{
419
+ type: Input
420
+ }], startViewInMinDate: [{
421
+ type: Input
422
+ }], startViewInMaxDate: [{
423
+ type: Input
424
+ }], disabled: [{
425
+ type: Input
426
+ }], onChange: [{
427
+ type: Output
428
+ }], ngModel: [{
429
+ type: Input
430
+ }], ngModelChange: [{
431
+ type: Output
432
+ }], onCheckDate: [{
433
+ type: Output
434
+ }], input_datepicker: [{
435
+ type: ViewChild,
436
+ args: ['input_datepicker', { static: false }]
437
+ }], code: [{
438
+ type: Input
439
+ }] } });
440
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGNsb3VkLXVpLWRhdGVwaWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGNsb3VkLXVpL3NyYy9saWIvX21vZHVsZXMvdGNsb3VkLXVpLWRhdGVwaWNrZXIvdGNsb3VkLXVpLWRhdGVwaWNrZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGNsb3VkLXVpL3NyYy9saWIvX21vZHVsZXMvdGNsb3VkLXVpLWRhdGVwaWNrZXIvdGNsb3VkLXVpLWRhdGVwaWNrZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxTQUFTLEVBQWMsTUFBTSxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JJLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7O0FBTW5ELElBQUksV0FBVyxHQUFHO0lBQ2hCLElBQUksRUFBRTtRQUNKLElBQUksRUFBRSxDQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLFFBQVEsQ0FBQztRQUM1RSxTQUFTLEVBQUUsQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUM7UUFDNUQsT0FBTyxFQUFFLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDO1FBQ25ELE1BQU0sRUFBRSxDQUFDLFNBQVMsRUFBRSxXQUFXLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFF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QW1DLENBQUMsZ0pDdkNsRCw0aERBMkNBOzs0RkREYSwyQkFBMkI7a0JBWHZDLFNBQVM7K0JBQ0Usc0JBQXNCLGFBT3JCLENBQUMsbUNBQW1DLENBQUMsaUJBQ2pDLGlCQUFpQixDQUFDLElBQUk7aUdBSzVCLFFBQVE7c0JBQWhCLEtBQUs7Z0JBSUcsZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUdHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFHRyxPQUFPO3NCQUFmLEtBQUs7Z0JBR0csT0FBTztzQkFBZixLQUFLO2dCQUdHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBR0csU0FBUztzQkFBakIsS0FBSztnQkFFRyxTQUFTO3NCQUFqQixLQUFLO2dCQUVHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFFRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBRUcsa0JBQWtCO3NCQUExQixLQUFLO2dCQUVHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBR0ksUUFBUTtzQkFBakIsTUFBTTtnQkFPTSxPQUFPO3NCQUFuQixLQUFLO2dCQWFJLGFBQWE7c0JBQXRCLE1BQU07Z0JBRUcsV0FBVztzQkFBcEIsTUFBTTtnQkFFeUMsZ0JBQWdCO3NCQUEvRCxTQUFTO3VCQUFDLGtCQUFrQixFQUFFLEVBQUMsTUFBTSxFQUFFLEtBQUssRUFBQztnQkFFckMsSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIFZpZXdDaGlsZCwgRWxlbWVudFJlZiwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIGZvcndhcmRSZWYsIElucHV0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgRGF0ZUJSUGlwZSB9IGZyb20gJy4uLy4uL19waXBlcyc7XHJcblxyXG4vLyBodHRwczovL215bXRoLmdpdGh1Yi5pby92YW5pbGxhanMtZGF0ZXBpY2tlci8jL1xyXG5kZWNsYXJlIHZhciBEYXRlcGlja2VyOiBhbnk7XHJcblxyXG52YXIgdHJhbnNsYXRpb24gPSB7XHJcbiAgcHRCUjoge1xyXG4gICAgZGF5czogW1wiRG9taW5nb1wiLCBcIlNlZ3VuZGFcIiwgXCJUZXLDp2FcIiwgXCJRdWFydGFcIiwgXCJRdWludGFcIiwgXCJTZXh0YVwiLCBcIlPDoWJhZG9cIl0sXHJcbiAgICBkYXlzU2hvcnQ6IFtcIkRvbVwiLCBcIlNlZ1wiLCBcIlRlclwiLCBcIlF1YVwiLCBcIlF1aVwiLCBcIlNleFwiLCBcIlPDoWJcIl0sXHJcbiAgICBkYXlzTWluOiBbXCJEb1wiLCBcIlNlXCIsIFwiVGVcIiwgXCJRdVwiLCBcIlF1XCIsIFwiU2VcIiwgXCJTYVwiXSxcclxuICAgIG1vbnRoczogW1wiSmFuZWlyb1wiLCBcIkZldmVyZWlyb1wiLCBcIk1hcsOnb1wiLCBcIkFicmlsXCIsIFwiTWFpb1wiLCBcIkp1bmhvXCIsIFwiSnVsaG9cIiwgXCJBZ29zdG9cIiwgXCJTZXRlbWJyb1wiLCBcIk91dHVicm9cIiwgXCJOb3ZlbWJyb1wiLCBcIkRlemVtYnJvXCJdLFxyXG4gICAgbW9udGhzU2hvcnQ6IFtcIkphblwiLCBcIkZldlwiLCBcIk1hclwiLCBcIkFiclwiLCBcIk1haVwiLCBcIkp1blwiLCBcIkp1bFwiLCBcIkFnb1wiLCBcIlNldFwiLCBcIk91dFwiLCBcIk5vdlwiLCBcIkRlelwiXSxcclxuICAgIHRvZGF5OiBcIkhvamVcIixcclxuICAgIGNsZWFyOiBcIkxpbXBhclwiLFxyXG4gICAgdGl0bGVGb3JtYXQ6IFwiTU0geVwiLFxyXG4gICAgZm9ybWF0OiBcImRkL21tL3l5eXlcIixcclxuICAgIHdlZWtTdGFydDogMFxyXG4gIH1cclxufTtcclxuXHJcbmNvbnN0IENVU1RPTV9JTlBVVF9DT05UUk9MX1ZBTFVFX0FDQ0VTU09SOiBhbnkgPSB7XHJcbiAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVENsb3VkVWlEYXRlcGlja2VyQ29tcG9uZW50KSxcclxuICBtdWx0aTogdHJ1ZVxyXG59O1xyXG5cclxuY29uc3Qgbm9vcCA9ICgpID0+IHtcclxufTtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAndGNsb3VkLXVpLWRhdGVwaWNrZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90Y2xvdWQtdWktZGF0ZXBpY2tlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbXHJcbiAgICAnLi90Y2xvdWQtdWktZGF0ZXBpY2tlci5jb21wb25lbnQuc2NzcycsXHJcbiAgICAnLi9kYXRlcGlja2VyL2Nzcy9kYXRlcGlja2VyLm1pbi5jc3MnLFxyXG4gICAgJy4vZGF0ZXBpY2tlci9jc3Mvc3R5bGUuY3NzJyxcclxuICBdLFxyXG4gIHByb3ZpZGVyczogW0NVU1RPTV9JTlBVVF9DT05UUk9MX1ZBTFVFX0FDQ0VTU09SXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUQ2xvdWRVaURhdGVwaWNrZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICAvLyBtdWx0aXBsZSBwZXJtaXRlIHNlbGVjaW9uYXIgbXVsdGlwbGFzIGRhdGFzXHJcbiAgQElucHV0KCkgbXVsdGlwbGU6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgLy8gbWF4TnVtYmVyT2ZEYXRlcyAtIE1heGltdW0gbnVtYmVyIG9mIGRhdGVzIHVzZXJzIGNhbiBzZWxlY3QuIE5vIGxpbWl0IGlzIGFwcGxpZWQgaWYgMCBpcyBzZXQuXHJcbiAgLy8gRGVwZW5kZSBkZTogbXVsdGlwbGUgY29tbyB0cnVlXHJcbiAgQElucHV0KCkgbWF4TnVtYmVyT2ZEYXRlczogbnVtYmVyID0gMDtcclxuXHJcbiAgLy8gZGF5c09mV2Vla0Rpc2FibGVkIC0gRGlhcyBkYSBzZW1hbmEgZGVzYWJpbGlkYXRvcyA9IDAgcGFyYSBzYWJhZG8gYXTDqSA2IHBhcmEgZG9taW5nb1xyXG4gIEBJbnB1dCgpIGRheXNPZldlZWtEaXNhYmxlZDogbnVtYmVyW10gPSBbXTtcclxuXHJcbiAgLy8gbWluRGF0ZSAtIERhdGEgbWluaW1hIHBhcmEgZXhpYmljYW8gZG8gY2FsZW5kYXJpbyAtIGV4OiAwMS8wMS8yMDIwXHJcbiAgQElucHV0KCkgbWluRGF0ZTogc3RyaW5nID0gJyc7XHJcblxyXG4gIC8vIG1heERhdGUgLSBEYXRhIG1heGltYSBwYXJhIGV4aWJpY2FvIGRvIGNhbGVuZGFyaW8gLSBleDogMzEvMTIvMjAyMFxyXG4gIEBJbnB1dCgpIG1heERhdGU6IHN0cmluZyA9ICcnO1xyXG5cclxuICAvLyBkYXRlc0Rpc2FibGVkIC0gRGF0YXMgZGVzYWJpbGl0YWRhcyAtIEV4OiBbJzEyLzEwLzIwMjAnLCcyNS8xMi8yMDIwJ11cclxuICBASW5wdXQoKSBkYXRlc0Rpc2FibGVkOiBzdHJpbmdbXSA9IFtdO1xyXG5cclxuICAvLyBtb2RlSW5wdXQgLSBFeGliZSB1bSBpbnB1dCBwYXJhIHF1YW5kbyBjbGljYXIgYWJyaXIgbyBjYWxlbmRhcmlvXHJcbiAgQElucHV0KCkgbW9kZUlucHV0OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dCgpIHVzZUJvcmRlcjogYm9vbGVhbiA9IHRydWU7XHJcblxyXG4gIEBJbnB1dCgpIGNoaWxkSW5wdXREYXRlVGltZTogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKSBzdGFydFZpZXdJbk1pbkRhdGU6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KCkgc3RhcnRWaWV3SW5NYXhEYXRlOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dCgpIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIC8vIG9uQ2hhbmdlIC0gRGlzcGFyYSBhIGRhdGEgc2VsZWNpb25hZGFcclxuICBAT3V0cHV0KCkgb25DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueXx1bmRlZmluZWQ+KCk7XHJcblxyXG4gIGRlZmF1bHRfaW5uZXJWYWx1ZTogYW55IHwgdW5kZWZpbmVkO1xyXG4gIGRlZmF1bHRfaW5uZXJWYWx1ZV9jb252ZXJ0aWRhOiBhbnkgfCB1bmRlZmluZWQ7XHJcbiAgZGVmYXVsdF9xdGRfaW5uZXJWYWx1ZTogbnVtYmVyID0gMDtcclxuICBkYXRlX2NoYW5nZWQ6IGFueSB8IHVuZGVmaW5lZDtcclxuXHJcbiAgQElucHV0KCkgc2V0IG5nTW9kZWwodjogYW55KXtcclxuXHJcbiAgICBpZiggdiAmJiB2ICE9PSB0aGlzLmlubmVyVmFsdWUgKXtcclxuICAgICAgdGhpcy5pbm5lclZhbHVlID0gdjsgLy90aGlzLnRvU2V0TWFzayh2KTsgXHJcbiAgICAgIHRoaXMuZGVmYXVsdF9pbm5lclZhbHVlID0gdjtcclxuICAgICAgdGhpcy5kZWZhdWx0X2lubmVyVmFsdWVfY29udmVydGlkYSA9IHRoaXMuY29udmVydERhdGVzKHYpO1xyXG4gICAgICBpZiggdGhpcy5tdWx0aXBsZSApe1xyXG4gICAgICAgIHRoaXMuZGVmYXVsdF9xdGRfaW5uZXJWYWx1ZSA9ICh2KS5sZW5ndGg7XHJcbiAgICAgIH0gICAgICBcclxuICAgICAgdGhpcy5vbkNoYW5nZS5lbWl0KHYpO1xyXG4gICAgfSBcclxuICB9XHJcblxyXG4gIEBPdXRwdXQoKSBuZ01vZGVsQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnl8dW5kZWZpbmVkPigpO1xyXG5cclxuICBAT3V0cHV0KCkgb25DaGVja0RhdGUgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuXHJcbiAgQFZpZXdDaGlsZCgnaW5wdXRfZGF0ZXBpY2tlcicsIHtzdGF0aWM6IGZhbHNlfSkgaW5wdXRfZGF0ZXBpY2tlcjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4gfCB1bmRlZmluZWQ7XHJcbiAgcHJpdmF0ZSBkYXRlcGlja2VyOiBhbnkgfCB1bmRlZmluZWQ7XHJcbiAgQElucHV0KCkgY29kZTogc3RyaW5nID0gJ3RjbG91ZC11aS1kYXRlcGlja2VyJztcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIF9EYXRlQlJQaXBlOiBEYXRlQlJQaXBlXHJcbiAgKSB7IH1cclxuXHJcbiAgSUQ6IHN0cmluZyA9ICcnO1xyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuSUQgPSB0aGlzLmdlbmVyYXRlSUQoKTtcclxuICAgIERhdGVwaWNrZXIubG9jYWxlcy5wdEJSID0gdHJhbnNsYXRpb24ucHRCUjsgICAgXHJcbiAgICB0aGlzLnN0YXJ0X2RhdGVwaWNrZXIoKTtcclxuICB9XHJcblxyXG4gIGdlbmVyYXRlSUQoKTogc3RyaW5ne1xyXG4gICAgcmV0dXJuIGB0Y2xvdWQtdWktZGF0ZXBpY2tlci0ke01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIERhdGUubm93KCkpKX1gO1xyXG4gIH1cclxuXHJcbiAgdG9TZXRNYXNrKHY6IHN0cmluZyl7XHJcbiAgICByZXR1cm4gdGhpcy5fRGF0ZUJSUGlwZS50cmFuc2Zvcm0odik7XHJcbiAgfVxyXG5cclxuICBwYXJzZURhdGVMb2NhbChkYXRlU3RyaW5nOiBhbnksIF9zcGxpdD86IHN0cmluZyl7XHJcbiAgICBpZiggIV9zcGxpdCApeyBfc3BsaXQgPSAnLSc7IH1cclxuICAgIGNvbnN0IFtkYXkgLCBtb250aCwgeWVhcl0gPSBkYXRlU3RyaW5nLnNwbGl0KF9zcGxpdCk7XHJcbiAgICByZXR1cm4gbmV3IERhdGUoeWVhciwgbW9udGggLSAxLCBkYXkpOyAvLyBTdWJ0cmFpIDEgcG9ycXVlIG9zIG1lc2VzIHPDo28gaW5kZXhhZG9zIGEgcGFydGlyIGRlIDBcclxuICB9XHJcblxyXG4gIGZvcm1hdERhdGVMb2NhbChkYXRlOiBhbnkpe1xyXG4gICAgY29uc3QgeWVhciA9IGRhdGUuZ2V0RnVsbFllYXIoKTtcclxuICAgIGNvbnN0IG1vbnRoID0gU3RyaW5nKGRhdGUuZ2V0TW9udGgoKSArIDEpLnBhZFN0YXJ0KDIsICcwJyk7IC8vIEFkaWNpb25hIDEgcG9ycXVlIG9zIG1lc2VzIHPDo28gaW5kZXhhZG9zIGEgcGFydGlyIGRlIDBcclxuICAgIGNvbnN0IGRheSA9IFN0cmluZyhkYXRlLmdldERhdGUoKSkucGFkU3RhcnQoMiwgJzAnKTtcclxuICAgIHJldHVybiBgJHtkYXl9LyR7bW9udGh9LyR7IHllYXJ9YDtcclxuICB9XHJcblxyXG4gIGdldF9vcHRpb25zKCl7XHJcbiAgICAvLyBGdW7Dp8OjbyBwYXJhIGZvcm1hdGFyIHVtYSBkYXRhIG5vIGZ1c28gaG9yw6FyaW8gbG9jYWxcclxuICAgIGNvbnN0IGZvcm1hdERhdGVMb2NhbCA9IChkYXRlOiBhbnkpID0+IHtcclxuICAgICAgY29uc3QgeWVhciA9IGRhdGUuZ2V0RnVsbFllYXIoKTtcclxuICAgICAgY29uc3QgbW9udGggPSBTdHJpbmcoZGF0ZS5nZXRNb250aCgpICsgMSkucGFkU3RhcnQoMiwgJzAnKTtcclxuICAgICAgY29uc3QgZGF5ID0gU3RyaW5nKGRhdGUuZ2V0RGF0ZSgpKS5wYWRTdGFydCgyLCAnMCcpO1xyXG4gICAgICByZXR1cm4gYCR7eWVhcn0tJHttb250aH0tJHtkYXl9YDtcclxuICAgIH1cclxuXHJcbiAgICAvLyBGdW7Dp8OjbyBwYXJhIGFuYWxpc2FyIHVtYSBkYXRhIG5vIGZ1c28gaG9yw6FyaW8gbG9jYWxcclxuICAgIGNvbnN0IHBhcnNlRGF0ZUxvY2FsID0gKGRhdGVTdHJpbmc6IGFueSkgPT4ge1xyXG4gICAgICBjb25zdCBbeWVhciwgbW9udGgsIGRheV0gPSBkYXRlU3RyaW5nLnNwbGl0KCctJyk7XHJcbiAgICAgIHJldHVybiBuZXcgRGF0ZSh5ZWFyLCBtb250aCAtIDEsIGRheSk7XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IG9wdGlvbnMgPSB7XHJcbiAgICAgIG5leHRBcnJvdzogYDxpIGNsYXNzPVwiZmFzIGZhLWNhcmV0LXJpZ2h0XCI+PC9pPmAsXHJcbiAgICAgIHByZXZBcnJvdzogYDxpIGNsYXNzPVwiZmFzIGZhLWNhcmV0LWxlZnRcIj48L2k+YCxcclxuICAgICAgZm9ybWF0OiAnZGQvbW0veXl5eScsICAgICAgXHJcbiAgICAgIGRheXNPZldlZWtIaWdobGlnaHRlZDogWzAsNl0sXHJcbiAgICAgIGxhbmd1YWdlOiAncHRCUicsXHJcbiAgICAgIGZvcm1hdHRlcjoge1xyXG4gICAgICAgIGRhdGU6IGZvcm1hdERhdGVMb2NhbCxcclxuICAgICAgfSxcclxuICAgICAgcGFyc2VyOiB7XHJcbiAgICAgICAgZGF0ZTogcGFyc2VEYXRlTG9jYWwsXHJcbiAgICAgIH0gICAgIFxyXG4gICAgfSBhcyBhbnk7XHJcblxyXG4gICAgaWYoICh0aGlzLmRheXNPZldlZWtEaXNhYmxlZCkubGVuZ3RoID4gMCApe1xyXG4gICAgICBvcHRpb25zWydkYXlzT2ZXZWVrRGlzYWJsZWQnXSA9IHRoaXMuZGF5c09mV2Vla0Rpc2FibGVkO1xyXG4gICAgfVxyXG5cclxuICAgIGlmKCAodGhpcy5kYXRlc0Rpc2FibGVkKS5sZW5ndGggPiAwICl7XHJcbiAgICAgIG9wdGlvbnNbJ2RhdGVzRGlzYWJsZWQnXSA9IHRoaXMuZGF0ZXNEaXNhYmxlZDtcclxuICAgIH1cclxuXHJcbiAgICBpZiggdGhpcy5taW5EYXRlICE9PSAnJyApe1xyXG4gICAgICBvcHRpb25zWydtaW5EYXRlJ10gPSB0aGlzLm1pbkRhdGU7XHJcbiAgICB9XHJcblxyXG4gICAgaWYoIHRoaXMubWF4RGF0ZSAhPT0gJycgKXtcclxuICAgICAgb3B0aW9uc1snbWF4RGF0ZSddID0gdGhpcy5tYXhEYXRlO1xyXG4gICAgfVxyXG5cclxuICAgIGlmKCB0aGlzLm11bHRpcGxlICl7ICBcclxuICAgICAgb3B0aW9uc1snbXVsdGlwbGUnXSA9IHRydWU7ICBcclxuICAgICAgb3B0aW9uc1snYXV0b2hpZGUnXSA9IGZhbHNlOyBcclxuICAgICAgb3B0aW9uc1snbWF4TnVtYmVyT2ZEYXRlcyddID0gdGhpcy5tYXhOdW1iZXJPZkRhdGVzO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICByZXR1cm4gb3B0aW9ucztcclxuICB9XHJcblxyXG4gIGNsZWFyRGF0ZSgpe1xyXG4gICAgaWYoIHRoaXMuZGF0ZXBpY2tlciApeyB0aGlzLmRhdGVwaWNrZXIuc2V0RGF0ZSh7Y2xlYXI6IHRydWV9KTsgfVxyXG4gIH1cclxuXHJcbiAgc3RhcnRfZGF0ZXBpY2tlcigpe1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7ICAgICBcclxuICAgICAgY29uc3QgaW5wdXRfZGF0ZXBpY2tlciA9IDxhbnk+IHRoaXMuaW5wdXRfZGF0ZXBpY2tlcj8ubmF0aXZlRWxlbWVudDtcclxuICAgICAgaWYoIGlucHV0X2RhdGVwaWNrZXIgKXtcclxuICAgICAgICBpbnB1dF9kYXRlcGlja2VyLnNldEF0dHJpYnV0ZSgncGxhY2Vob2xkZXInLCdERC9NTS9ZWVlZJyk7XHJcblxyXG4gICAgICAgIGlmKCAhdGhpcy51c2VCb3JkZXIgKXtcclxuICAgICAgICAgIGlucHV0X2RhdGVwaWNrZXIuc2V0QXR0cmlidXRlKCdzdHlsZScsJ2JvcmRlcjpub25lOyB0ZXh0LWFsaWduOiBjZW50ZXI7IG1heC13aWR0aDogMTA1cHg7IHBhZGRpbmc6IDA7Jyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgIHRoaXMuZGF0ZXBpY2tlciA9IG5ldyBEYXRlcGlja2VyKCBpbnB1dF9kYXRlcGlja2VyLCB0aGlzLmdldF9vcHRpb25zKCkgKTsgICAgICAgIFxyXG4gICAgICAgIGlmKCB0aGlzLmlubmVyVmFsdWUgJiYgdGhpcy5pbm5lclZhbHVlICE9PSAnJyApe1xyXG4gICAgICAgICAgdGhpcy50b1NldERlZmF1bHREYXRlKHRoaXMuaW5uZXJWYWx1ZSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpbnB1dF9kYXRlcGlja2VyLmFkZEV2ZW50TGlzdGVuZXIoJ2tleXVwJywgKGV2ZW50OiBhbnkpID0+IHtcclxuICAgICAgICAgIGNvbnN0IHYgPSAoaW5wdXRfZGF0ZXBpY2tlclsndmFsdWUnXSkgPyBpbnB1dF9kYXRlcGlja2VyWyd2YWx1ZSddIDogJyc7XHJcbiAgICAgICAgICBpbnB1dF9kYXRlcGlja2VyWyd2YWx1ZSddID0gdGhpcy50b1NldE1hc2sodik7XHJcbiAgICAgICAgICBpZiggKGlucHV0X2RhdGVwaWNrZXJbJ3ZhbHVlJ10pLmxlbmd0aCA+PSAxMCApe1xyXG4gICAgICAgICAgICBjb25zdCB2ID0gKGlucHV0X2RhdGVwaWNrZXJbJ3ZhbHVlJ10pLnN1YnN0cmluZygwLCAxMCk7XHJcbiAgICAgICAgICAgIGNvbnN0IHBhcnRfZGF0ZSA9ICh2KS5zcGxpdCgnLycpO1xyXG4gICAgICAgICAgICBpZiggKHBhcnRfZGF0ZSkubGVuZ3RoID09PSAzICl7XHJcblxyXG4gICAgICAgICAgICAgIGxldCBkaWEgPSBwYXJ0X2RhdGVbMF07XHJcbiAgICAgICAgICAgICAgbGV0IG1lcyA9IHBhcnRfZGF0ZVsxXTtcclxuICAgICAgICAgICAgICBsZXQgYW5vID0gcGFydF9kYXRlWzJdO1xyXG5cclxuICAgICAgICAgICAgICBtZXMgPSAoKyhtZXMpIDwgMTAgKSA/IGAwJHsrbWVzfWAgOiBtZXM7ICBcclxuICAgICAgICAgICAgICBkaWEgPSAoKyhkaWEpIDwgMTAgKSA/IGAwJHsrZGlhfWAgOiBkaWE7XHJcblxyXG4gICAgICAgICAgICAgIGNvbnN0IGR0ID0gbmV3IERhdGUoYW5vKyctJyttZXMrJy0nK2RpYSk7XHJcbiAgICAgICAgICAgICAgaWYoIGR0ICl7XHJcbiAgICAgICAgICAgICAgICBpbnB1dF9kYXRlcGlja2VyPy5jaGFuZ2VEYXRlO1xyXG4gICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodGhpcy5JRCk/LmJsdXIoKTtcclxuICAgICAgICAgICAgICAgIHRoaXMub25DaGFuZ2UuZW1pdCh0aGlzLmlubmVyVmFsdWUpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5uZ01vZGVsQ2hhbmdlLmVtaXQodGhpcy5pbm5lclZhbHVlKTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1lbHNle1xyXG4gICAgICAgICAgICB0aGlzLmlubmVyVmFsdWUgPSB1bmRlZmluZWQ7XHJcbiAgICAgICAgICAgIHRoaXMub25DaGFuZ2UuZW1pdCh0aGlzLmlubmVyVmFsdWUpO1xyXG4gICAgICAgICAgICB0aGlzLm5nTW9kZWxDaGFuZ2UuZW1pdCh0aGlzLmlubmVyVmFsdWUpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcblxyXG4gICAgICAgXHJcbiAgICAgICAgaW5wdXRfZGF0ZXBpY2tlci5hZGRFdmVudExpc3RlbmVyKCdjaGFuZ2VEYXRlJywgKGV2ZW50OiBhbnkpID0+IHtcclxuXHJcbiAgICAgICAgICBpZiggZXZlbnQ/LmRldGFpbD8uZGF0ZSApe1xyXG5cclxuICAgICAgICAgICAgbGV0IHF0ZCA9IChldmVudC5kZXRhaWwuZGF0ZSkubGVuZ3RoOyAgXHJcblxyXG4gICAgICAgICAgICBpZiggdGhpcy5kaXNhYmxlZCApe1xyXG5cclxuICAgICAgICAgICAgICBpZiggIXRoaXMubXVsdGlwbGUgKXtcclxuICAgICAgICAgICAgICAgIGxldCBkdCA9IHRoaXMuZm9ybWF0RGF0ZUxvY2FsKGV2ZW50LmRldGFpbD8uZGF0ZSk7XHJcbiAgICAgICAgICAgICAgICBpZiggdGhpcy5kZWZhdWx0X2lubmVyVmFsdWUgJiYgdGhpcy5kZWZhdWx0X2lubmVyVmFsdWVbMF0gJiYgKCBgJHt0aGlzLmRlZmF1bHRfaW5uZXJWYWx1ZVswXX1gICE9PSBgJHtkdH1gICkgKXtcclxuICAgICAgICAgICAgICAgICAgcXRkID0gMVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgIHRoaXMuZGF0ZXBpY2tlci5zZXREYXRlKCB0aGlzLmRlZmF1bHRfaW5uZXJWYWx1ZV9jb252ZXJ0aWRhLCB7Y2xlYXI6IHRydWUsIHJlbmRlcjogdHJ1ZX0pO1xyXG4gICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgIGlmKCBxdGQgPiB0aGlzLmRlZmF1bHRfcXRkX2lubmVyVmFsdWUgKXtcclxuICAgICAgICAgICAgICAgIHRoaXMuZGF0ZV9jaGFuZ2VkID0gZXZlbnQ/LmRldGFpbC52aWV3RGF0ZTtcclxuICAgICAgICAgICAgICAgIHRoaXMuZGF0ZXBpY2tlci5zZXRGb2N1c2VkRGF0ZSggdGhpcy5kYXRlX2NoYW5nZWQsIHtyZXNldFZpZXc6IGZhbHNlfSApO1xyXG5cclxuICAgICAgICAgICAgICAgIHRoaXMub25DaGVja0RhdGUuZW1pdCh7XHJcbiAgICAgICAgICAgICAgICAgIHZhbHVlOiB0aGlzLmZvcm1hdERhdGVMb2NhbCh0aGlzLmRhdGVfY2hhbmdlZCksIFxyXG4gICAgICAgICAgICAgICAgICBkYXRlOiB0aGlzLmRhdGVfY2hhbmdlZCwgXHJcbiAgICAgICAgICAgICAgICAgIGNoZWNrZWQ6IHRydWUsXHJcbiAgICAgICAgICAgICAgICAgIGRpc2FibGVkOiB0aGlzLmRpc2FibGVkXHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICB9ZWxzZXtcclxuXHJcbiAgICAgICAgICAgICAgICBpZiggdGhpcy5tdWx0aXBsZSApe1xyXG4gICAgICAgICAgICAgICAgICBjb25zdCBzbyA9IHRoaXMuZmluZERpZmZlcmVuY2VzKCB0aGlzLmRlZmF1bHRfaW5uZXJWYWx1ZSwgdGhpcy5mb3JtYXRBcnJheURhdGVzKGV2ZW50LmRldGFpbC5kYXRlKSApO1xyXG4gICAgICAgICAgICAgICAgICBpZiggc28gJiYgKHNvKS5sZW5ndGggPiAwICl7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGF0ZV9jaGFuZ2VkID0gdGhpcy5wYXJzZURhdGVMb2NhbChzb1swXSwgJy8nKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLm9uQ2hlY2tEYXRlLmVtaXQoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgdmFsdWUgOnNvWzBdLCBcclxuICAgICAgICAgICAgICAgICAgICAgIGRhdGU6IHRoaXMuZGF0ZV9jaGFuZ2VkLFxyXG4gICAgICAgICAgICAgICAgICAgICAgY2hlY2tlZDogZmFsc2UsXHJcbiAgICAgICAgICAgICAgICAgICAgICBkaXNhYmxlZDogdGhpcy5kaXNhYmxlZFxyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgdGhpcy5kYXRlcGlja2VyLnNldEZvY3VzZWREYXRlKCB0aGlzLmRhdGVfY2hhbmdlZCwge3Jlc2V0VmlldzogZmFsc2V9ICk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9ZWxzZXtcclxuXHJcblxyXG4gICAgICAgICAgICAgIHRoaXMudG9TZWxlY3RlZERhdGUoIGV2ZW50LmRldGFpbCApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9ZWxzZXtcclxuICAgICAgICAgICAgdGhpcy5pbm5lclZhbHVlID0gJyc7XHJcbiAgICAgICAgICAgIHRoaXMubmdNb2RlbENoYW5nZS5lbWl0KHRoaXMuaW5uZXJWYWx1ZSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSlcclxuICAgICAgfSAgICAgIFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuXHJcbiAgdG9TZXREZWZhdWx0RGF0ZShkYXRlOiBzdHJpbmcgfCBzdHJpbmdbXSl7XHJcbiAgICBcclxuICAgIGlmKCBkYXRlID09PSB1bmRlZmluZWQgfHwgZGF0ZSA9PT0gbnVsbCB8fCBkYXRlID09PSAnJyApe1xyXG4gICAgICB0aGlzLmNsZWFyRGF0ZSgpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IGRhdGVzID0gW10gYXMgc3RyaW5nW107XHJcblxyXG4gICAgaWYoIGRhdGUgJiYgdHlwZW9mIGRhdGUgPT09ICdzdHJpbmcnICl7XHJcbiAgICAgIGlmKCAoZGF0ZSkuaW5jbHVkZXMoJywnKSApe1xyXG4gICAgICAgIGNvbnN0IGRhdGVzID0gKGRhdGUpLnNwbGl0KCcsJyk7XHJcbiAgICAgICAgZGF0ZSA9IGRhdGVzO1xyXG4gICAgICAgIGlmKCAhdGhpcy5tdWx0aXBsZSApe1xyXG4gICAgICAgICAgdGhpcy5pbm5lclZhbHVlID0gZGF0ZSA9IGRhdGVzWzBdO1xyXG4gICAgICAgICAgdGhpcy5uZ01vZGVsQ2hhbmdlLmVtaXQodGhpcy5pbm5lclZhbHVlKTsgXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBcclxuICAgIGlmKCBkYXRlICYmIHR5cGVvZiBkYXRlID09PSAnc3RyaW5nJyApe1xyXG4gICAgICAoZGF0ZXMpLnB1c2goIGRhdGUgKTsgXHJcbiAgICB9ZWxzZXtcclxuICAgICAgZGF0ZXMgPSA8QXJyYXk8c3RyaW5nPj4gZGF0ZTtcclxuICAgIH1cclxuICAgIGlmKCB0aGlzLmRhdGVwaWNrZXIgKXtcclxuXHJcbiAgICAgIGlmKCBkYXRlcyAmJiBkYXRlcy5sZW5ndGggPiAwICYmIHRoaXMubXVsdGlwbGUgKXtcclxuICAgICAgICBpZiggdGhpcy5zdGFydFZpZXdJbk1pbkRhdGUgKXsgICAgICAgICAgXHJcbiAgICAgICAgICBkYXRlcyA9IHRoaXMuc29ydERhdGVzRGVzY2VuZGluZyhkYXRlcyk7ICAgICAgICAgIFxyXG4gICAgICAgIH1lbHNlIGlmKHRoaXMuc3RhcnRWaWV3SW5NYXhEYXRlKXtcclxuICAgICAgICAgIGRhdGVzID0gdGhpcy5zb3J0RGF0ZXNBc2NlbmRpbmcoZGF0ZXMpOyBcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5kYXRlcGlja2VyLnNldERhdGUoZGF0ZXMpOyAgICAgIFxyXG4gICAgfSBcclxuICB9XHJcblxyXG4gIGNvbnZlcnREYXRlcyhhcnJheURlRGF0YXM6IGFueVtdKSB7XHJcbiAgICBjb25zdCBmb3JtYXREYXRlID0gKGRhdGVTdHJpbmc6IGFueSkgPT4ge1xyXG4gICAgICBjb25zdCBbZGF5LCBtb250aCwgeWVhcl0gPSBkYXRlU3RyaW5nLnNwbGl0KCcvJyk7XHJcbiAgICAgIHJldHVybiBuZXcgRGF0ZSh5ZWFyLCBtb250aCAtIDEsIGRheSk7IFxyXG4gICAgfVxyXG4gICAgaWYoIGFycmF5RGVEYXRhcyAmJiBBcnJheS5pc0FycmF5KGFycmF5RGVEYXRhcykgKXtcclxuICAgICAgY29uc3QgZGF0YXNPcmRlbmFkYXMgPSBhcnJheURlRGF0YXMubWFwKChkYXRhOiBhbnkpID0+ICh7IG9yaWdpbmFsOiBkYXRhLCBjb252ZXJ0aWRhOiBmb3JtYXREYXRlKGRhdGEpIH0pKTtcclxuICAgICAgcmV0dXJuIGRhdGFzT3JkZW5hZGFzLm1hcChpdGVtID0+IGl0ZW0uY29udmVydGlkYSk7IFxyXG4gICAgfWVsc2V7XHJcbiAgICAgIHJldHVybiBbYXJyYXlEZURhdGFzXTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNvcnREYXRlc0Rlc2NlbmRpbmcoYXJyYXlEZURhdGFzOiBhbnlbXSkge1xyXG4gICAgY29uc3QgZm9ybWF0RGF0ZSA9IChkYXRlU3RyaW5nOiBhbnkpID0+IHtcclxuICAgICAgY29uc3QgW2RheSwgbW9udGgsIHllYXJdID0gZGF0ZVN0cmluZy5zcGxpdCgnLycpO1xyXG4gICAgICByZXR1cm4gbmV3IERhdGUoeWVhciwgbW9udGggLSAxLCBkYXkpOyBcclxuICAgIH1cclxuICAgIGNvbnN0IGRhdGFzT3JkZW5hZGFzID0gYXJyYXlEZURhdGFzLm1hcCgoZGF0YTogYW55KSA9PiAoeyBvcmlnaW5hbDogZGF0YSwgY29udmVydGlkYTogZm9ybWF0RGF0ZShkYXRhKSB9KSkuc29ydCgoYTphbnksIGI6IGFueSkgPT4gYi5jb252ZXJ0aWRhIC0gYS5jb252ZXJ0aWRhKTtcclxuICAgIGNvbnN0IGRhdGFzT3JkZW5hZGFzRm9ybWF0YWRhcyA9IGRhdGFzT3JkZW5hZGFzLm1hcChpdGVtID0+IGl0ZW0ub3JpZ2luYWwpOyBcclxuICAgIHJldHVybiBkYXRhc09yZGVuYWRhc0Zvcm1hdGFkYXM7XHJcbiAgfVxyXG4gIFxyXG4gIHNvcnREYXRlc0FzY2VuZGluZyhhcnJheURlRGF0YXM6IGFueVtdKSB7XHJcbiAgICBjb25zdCBmb3JtYXREYXRlID0gKGRhdGVTdHJpbmc6IGFueSkgPT4ge1xyXG4gICAgICBjb25zdCBbZGF5LCBtb250aCwgeWVhcl0gPSBkYXRlU3RyaW5nLnNwbGl0KCcvJyk7XHJcbiAgICAgIHJldHVybiBuZXcgRGF0ZSh5ZWFyLCBtb250aCAtIDEsIGRheSk7IFxyXG4gICAgfVxyXG4gICAgY29uc3QgZGF0YXNPcmRlbmFkYXMgPSBhcnJheURlRGF0YXMubWFwKChkYXRhOiBhbnkpID0+ICh7IG9yaWdpbmFsOiBkYXRhLCBjb252ZXJ0aWRhOiBmb3JtYXREYXRlKGRhdGEpIH0pKS5zb3J0KChhOmFueSwgYjogYW55KSA9PiBhLmNvbnZlcnRpZGEgLSBiLmNvbnZlcnRpZGEpO1xyXG4gICAgY29uc3QgZGF0YXNPcmRlbmFkYXNGb3JtYXRhZGFzID0gZGF0YXNPcmRlbmFkYXMubWFwKGl0ZW0gPT4gaXRlbS5vcmlnaW5hbCk7XHJcbiAgICByZXR1cm4gZGF0YXNPcmRlbmFkYXNGb3JtYXRhZGFzO1xyXG4gIH1cclxuXHJcbiAgdG9TZWxlY3RlZERhdGUoZGV0YWlsOiBhbnkpeyAgICBcclxuICAgIGlmKCBkZXRhaWwuZGF0ZXBpY2tlci5kYXRlcyAmJiAoZGV0YWlsLmRhdGVwaWNrZXIuZGF0ZXMpLmxlbmd0aCA+IDAgKXtcclxuICAgICAgaWYoIHRoaXMubXVsdGlwbGUgKXtcclxuICAgICAgICBsZXQgZGF0ZXMgPSBbXTtcclxuICAgICAgICBmb3IoIGxldCBpID0gMDsgaSA8IChkZXRhaWwuZGF0ZXBpY2tlci5kYXRlcykubGVuZ3RoOyBpKysgKXtcclxuICAgICAgICAgIGNvbnN0IHRpbWVTdGFtcCA9IDxudW1iZXI+IGRldGFpbC5kYXRlcGlja2VyLmRhdGVzW2ldO1xyXG4gICAgICAgICAgKGRhdGVzKS5wdXNoKCB0aGlzLmZvcm1hdF9kYXRlKCB0aW1lU3RhbXAgKSApO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmlubmVyVmFsdWUgPSBkYXRlcztcclxuICAgICAgICB0aGlzLm9uQ2hhbmdlLmVtaXQodGhpcy5pbm5lclZhbHVlKTsgICAgICAgIFxyXG4gICAgICB9ZWxzZXtcclxuICAgICAgICBjb25zdCB0aW1lU3RhbXAgPSA8bnVtYmVyPiBkZXRhaWwuZGF0ZXBpY2tlci5kYXRlc1swXTtcclxuICAgICAgICBjb25zdCBkYXRlID0gdGhpcy5mb3JtYXRfZGF0ZSggdGltZVN0YW1wICk7XHJcbiAgICAgICAgdGhpcy5vbkNoYW5nZS5lbWl0KGRhdGUpO1xyXG4gICAgICAgIHRoaXMuaW5uZXJWYWx1ZSA9IGRhdGU7XHJcbiAgICAgIH0gICAgICBcclxuICAgIH1lbHNle1xyXG4gICAgICB0aGlzLmNsZWFyRGF0ZSgpO1xyXG4gICAgICB0aGlzLmlubmVyVmFsdWUgPSBudWxsO1xyXG4gICAgICB0aGlzLm9uQ2hhbmdlLmVtaXQodGhpcy5pbm5lclZhbHVlKTtcclxuICAgIH0gXHJcbiAgICB0aGlzLnZhbHVlID0gdGhpcy5pbm5lclZhbHVlO1xyXG4gICAgdGhpcy5uZ01vZGVsQ2hhbmdlLmVtaXQodGhpcy5pbm5lclZhbHVlKTsgXHJcbiAgfVxyXG5cclxuICBmb3JtYXRfZGF0ZSh0aW1lU3RhbXA6IG51bWJlcil7XHJcbiAgICB2YXIgZGF0ZSA9IG5ldyBEYXRlKHRpbWVTdGFtcCk7XHJcblxyXG4gICAgbGV0IGRpYSA9IGAke2RhdGUuZ2V0RGF0ZSgpfWA7XHJcbiAgICBsZXQgbWVzID0gYCR7ZGF0ZS5nZXRNb250aCgpKzF9YDtcclxuICAgIGxldCBhbm8gPSBgJHtkYXRlLmdldEZ1bGxZZWFyKCl9YDtcclxuXHJcbiAgICBkaWEgPSAoKyhkaWEpIDwgMTAgKSA/IGAwJHsrZGlhfWAgOiBkaWE7XHJcbiAgICBtZXMgPSAoKyhtZXMpIDwgMTAgKSA/IGAwJHsrbWVzfWAgOiBtZXM7IFxyXG5cclxuICAgIGNvbnN0IGRhdGVGb3JtYXQgPSBgJHtkaWF9LyR7bWVzfS8ke2Fub31gO1xyXG4gICAgcmV0dXJuIGRhdGVGb3JtYXQ7XHJcbiAgfVxyXG5cclxuICB0b0NsaWNrSW4oaWQ6IHN0cmluZyl7XHJcbiAgICBjb25zdCBlbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaWQpIGFzIGFueTtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4geyAgICAgIFxyXG4gICAgICBlbGVtZW50Py5kYXRlcGlja2VyPy5zaG93KCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG5cclxuXHJcbiAgZmluZERpZmZlcmVuY2VzKGFycmF5MTogYW55LCBhcnJheTI6IGFueSkge1xyXG4gICAgY29uc3QgY29uanVudG9Db211bSA9IG5ldyBTZXQoWy4uLmFycmF5MSwgLi4uYXJyYXkyXSk7XHJcbiAgICByZXR1cm4gQXJyYXkuZnJvbShjb25qdW50b0NvbXVtKS5maWx0ZXIoaXRlbSA9PiAhKGFycmF5MS5pbmNsdWRlcyhpdGVtKSAmJiBhcnJheTIuaW5jbHVkZXMoaXRlbSkpKTtcclxuICB9XHJcblxyXG5cclxuXHJcbiAgZm9ybWF0QXJyYXlEYXRlcyhhcnJheV9kYXRlczogYW55KXtcclxuICAgIGxldCBmb3JtYXRlZHMgPSBbXTtcclxuICAgIGlmKCBhcnJheV9kYXRlcyAmJiAoYXJyYXlfZGF0ZXMpLmxlbmd0aCA+IDAgKXtcclxuICAgICAgY29uc3QgZm9ybWF0RGF0ZUxvY2FsID0gKGRhdGU6IGFueSkgPT4ge1xyXG4gICAgICAgIGNvbnN0IHllYXIgPSBkYXRlLmdldEZ1bGxZZWFyKCk7XHJcbiAgICAgICAgY29uc3QgbW9udGggPSBTdHJpbmcoZGF0ZS5nZXRNb250aCgpICsgMSkucGFkU3RhcnQoMiwgJzAnKTsgLy8gQWRpY2lvbmEgMSBwb3JxdWUgb3MgbWVzZXMgc8OjbyBpbmRleGFkb3MgYSBwYXJ0aXIgZGUgMFxyXG4gICAgICAgIGNvbnN0IGRheSA9IFN0cmluZyhkYXRlLmdldERhdGUoKSkucGFkU3RhcnQoMiwgJzAnKTtcclxuICAgICAgICByZXR1cm4gYCR7ZGF5fS8ke21vbnRofS8ke3llYXJ9YDtcclxuICAgICAgfVxyXG4gICAgICBmb3IoIGxldCBpID0gMDsgaSA8IChhcnJheV9kYXRlcykubGVuZ3RoOyBpKysgKXtcclxuICAgICAgICBjb25zdCBkdCA9IGFycmF5X2RhdGVzW2ldO1xyXG4gICAgICAgIChmb3JtYXRlZHMpLnB1c2goIGZvcm1hdERhdGVMb2NhbChkdCkgKVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gZm9ybWF0ZWRzO1xyXG4gIH1cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcbiAgaW5uZXJWYWx1ZTogYW55IHwgdW5kZWZpbmVkO1xyXG4gIC8vUGxhY2Vob2xkZXJzIGZvciB0aGUgY2FsbGJhY2tzIHdoaWNoIGFyZSBsYXRlciBwcm92aWRlc2RcclxuICAvL2J5IHRoZSBDb250cm9sIFZhbHVlIEFjY2Vzc29yXHJcbiAgcHJpdmF0ZSBvblRvdWNoZWRDYWxsYmFjazogKCkgPT4gdm9pZCA9IG5vb3A7XHJcbiAgcHJpdmF0ZSBvbkNoYW5nZUNhbGxiYWNrOiAoXzogYW55KSA9PiB2b2lkID0gbm9vcDtcclxuXHJcbiAgLy9nZXQgYWNjZXNzb3JcclxuICBnZXQgdmFsdWUoKTogYW55IHtcclxuICAgICAgcmV0dXJuIHRoaXMuaW5uZXJWYWx1ZTtcclxuICB9O1xyXG5cclxuICAvL3NldCBhY2Nlc3NvciBpbmNsdWRpbmcgY2FsbCB0aGUgb25jaGFuZ2UgY2FsbGJhY2tcclxuICBzZXQgdmFsdWUodjogYW55KSB7XHJcblxyXG4gICAgaWYgKHYgIT09IHRoaXMuaW5uZXJWYWx1ZSkge1xyXG4gICAgICB0aGlzLmlubmVyVmFsdWUgPSB2OyAvLyB0aGlzLnRvU2V0TWFzayh2KTsgICAgICBcclxuICAgICAgdGhpcy5vbkNoYW5nZUNhbGxiYWNrKHYpO1xyXG4gICAgfWVsc2V7XHJcbiAgICAgLy8gdGhpcy5pbm5lclZhbHVlID0gJyc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvL1NldCB0b3VjaGVkIG9uIGJsdXJcclxuICBvbkJsdXIoKSB7XHJcbiAgICB0aGlzLm9uVG91Y2hlZENhbGxiYWNrKCk7XHJcbiAgfVxyXG5cclxuICAvL0Zyb20gQ29udHJvbFZhbHVlQWNjZXNzb3IgaW50ZXJmYWNlXHJcbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KSB7XHJcbiAgICBpZiAodmFsdWUgIT09IHRoaXMuaW5uZXJWYWx1ZSkge1xyXG4gICAgICB0aGlzLmlubmVyVmFsdWUgPSB2YWx1ZTtcclxuICAgICAgdGhpcy50b1NldERlZmF1bHREYXRlKHZhbHVlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vRnJvbSBDb250cm9sVmFsdWVBY2Nlc3NvciBpbnRlcmZhY2VcclxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpIHtcclxuICAgIHRoaXMub25DaGFuZ2VDYWxsYmFjayA9IGZuO1xyXG4gIH1cclxuXHJcbiAgLy9Gcm9tIENvbnRyb2xWYWx1ZUFjY2Vzc29yIGludGVyZmFjZVxyXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpIHtcclxuICAgIHRoaXMub25Ub3VjaGVkQ2FsbGJhY2sgPSBmbjtcclxuICB9XHJcblxyXG59XHJcbiIsIjwhLS0gSW5wdXQgbW9kZSAtLT5cclxuPG5nLWNvbnRhaW5lciAqbmdJZj1cIm1vZGVJbnB1dFwiPlxyXG5cclxuICA8ZGl2IGNsYXNzPVwidGNsb3VkLXVpLWRhdGVwaWNrZXIgaW5wdXQtdGMtZGF0ZXBpY2tlclwiIFtjbGFzcy5uby1ib3JkZXJdPVwiIXVzZUJvcmRlclwiIFtjbGFzcy5jaGlsZC1pbnB1dC1kYXRlLXRpbWVdPVwiY2hpbGRJbnB1dERhdGVUaW1lXCIgPlxyXG4gICAgPHRhYmxlIGNsYXNzPVwidGFibGUtYm94LWlucHV0XCI+XHJcbiAgICAgIDx0cj5cclxuICAgICAgICA8dGQgY2xhc3M9XCJ0ZC1pY29uXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGVsaW1pdGVyLXRpbWUtaWNvblwiIChjbGljayk9XCJ0b0NsaWNrSW4oSUQpXCIgPjxpIGNsYXNzPVwiZmFzIGZhLWNhbGVuZGFyLWFsdFwiPjwvaT48L2Rpdj5cclxuICAgICAgICA8L3RkPlxyXG4gICAgICAgIDx0ZCBjbGFzcz1cInRkLWRhdGVcIj5cclxuICAgICAgICAgIDxpbnB1dCAjaW5wdXRfZGF0ZXBpY2tlciB0eXBlPVwidGV4dFwiIG5hbWU9XCJ7e0lEfX1cIiBpZD1cInt7SUR9fVwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgW3RpdGxlXT1cImlubmVyVmFsdWVcIiA+XHJcbiAgICAgICAgPC90ZD5cclxuICAgICAgPC90cj5cclxuICAgIDwvdGFibGU+XHJcbiAgPC9kaXY+XHJcbjwvbmctY29udGFpbmVyPlxyXG5cclxuPCEtLSBJbmxpbmUgbW9kZSAtLT5cclxuPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFtb2RlSW5wdXRcIj4gIFxyXG4gIDxkaXYgY2xhc3M9XCJ0Y2xvdWQtdWktZGF0ZXBpY2tlciB0Y2xvdWQtdWktZGF0ZXBpY2tlci1zZWNvbmRcIiAjaW5wdXRfZGF0ZXBpY2tlciBpZD1cInt7SUR9fVwiIHBhdHRlcm49XCIvXlxcZHsyfVxcL1xcZHsyfVxcL1xcZHs0fSQvXCIgW3RpdGxlXT1cImlubmVyVmFsdWVcIj48L2Rpdj5cclxuPC9uZy1jb250YWluZXI+XHJcblxyXG48IS0tIEVYIGRlIHVzbyBcclxuICA8dGMtZGF0ZXBpY2tlciBcclxuICAgIFttdWx0aXBsZV09XCJmYWxzZVwiXHJcbiAgICBbZGF5c09mV2Vla0Rpc2FibGVkXT1cIlswLDZdXCJcclxuICAgIFttaW5EYXRlXT1cIicxOC8xMS8yMDIxJ1wiXHJcbiAgICBbbWF4RGF0ZV09XCInMTgvMTIvMjAyMydcIlxyXG4gICAgW2RhdGVzRGlzYWJsZWRdPVwiWycxMi8xMC8yMDIyJywnMjUvMTIvMjAyMiddXCJcclxuICAgIFttb2RlSW5wdXRdPVwiZmFsc2VcIlxyXG4gICAgKG9uQ2hhbmdlKT1cIigkZXZlbnQpXCJcclxuICAgIChvbkNoZWNrRGF0ZSk9XCJvbkNoZWNrRGF0ZSgkZXZlbnQpXCJcclxuICAgIFsobmdNb2RlbCldPVwiZGF0ZVZhbHVlXCIgPlxyXG4gIDwvdGMtZGF0ZXBpY2tlcj5cclxuICBcclxuICAvLyBtdWx0aXBsZSA9IGZhbHNlXHJcbiAgLy8gZGF0ZVZhbHVlIC0gc3RyaW5nIC0gcG9kZSBzZXI6IDEyLzEyLzIwMjIgXHJcblxyXG4gIC8vIG11bHRpcGxlID0gdHJ1ZVxyXG4gIC8vIGRhdGVWYWx1ZSAtIHN0cmluZyAtIHBvZGUgc2VyOiAxMS8xMi8yMDIyLDEyLzEyLzIwMjIgLi4uIFxyXG5cclxuICA8cHJlPmRhdGE6IHt7IGRhdGVWYWx1ZSB9fTwvcHJlPlxyXG4tLT5cclxuIl19
@@ -0,0 +1,32 @@
1
+ import { CUSTOM_ELEMENTS_SCHEMA, NO_ERRORS_SCHEMA, NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { FormsModule, ReactiveFormsModule } from '@angular/forms';
4
+ import { TCloudUiDatepickerComponent } from './tcloud-ui-datepicker.component';
5
+ import * as i0 from "@angular/core";
6
+ export class TCloudUiDatepickerModule {
7
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TCloudUiDatepickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
8
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: TCloudUiDatepickerModule, declarations: [TCloudUiDatepickerComponent], imports: [CommonModule,
9
+ FormsModule,
10
+ ReactiveFormsModule], exports: [TCloudUiDatepickerComponent] }); }
11
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TCloudUiDatepickerModule, imports: [CommonModule,
12
+ FormsModule,
13
+ ReactiveFormsModule] }); }
14
+ }
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TCloudUiDatepickerModule, decorators: [{
16
+ type: NgModule,
17
+ args: [{
18
+ declarations: [
19
+ TCloudUiDatepickerComponent
20
+ ],
21
+ exports: [
22
+ TCloudUiDatepickerComponent
23
+ ],
24
+ imports: [
25
+ CommonModule,
26
+ FormsModule,
27
+ ReactiveFormsModule
28
+ ],
29
+ schemas: [CUSTOM_ELEMENTS_SCHEMA, NO_ERRORS_SCHEMA]
30
+ }]
31
+ }] });
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGNsb3VkLXVpLWRhdGVwaWNrZXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGNsb3VkLXVpL3NyYy9saWIvX21vZHVsZXMvdGNsb3VkLXVpLWRhdGVwaWNrZXIvdGNsb3VkLXVpLWRhdGVwaWNrZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxnQkFBZ0IsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7QUFrQi9FLE1BQU0sT0FBTyx3QkFBd0I7K0dBQXhCLHdCQUF3QjtnSEFBeEIsd0JBQXdCLGlCQVpqQywyQkFBMkIsYUFNM0IsWUFBWTtZQUNaLFdBQVc7WUFDWCxtQkFBbUIsYUFMbkIsMkJBQTJCO2dIQVNsQix3QkFBd0IsWUFOakMsWUFBWTtZQUNaLFdBQVc7WUFDWCxtQkFBbUI7OzRGQUlWLHdCQUF3QjtrQkFkcEMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osMkJBQTJCO3FCQUM1QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsMkJBQTJCO3FCQUM1QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixXQUFXO3dCQUNYLG1CQUFtQjtxQkFDcEI7b0JBQ0QsT0FBTyxFQUFFLENBQUUsc0JBQXNCLEVBQUUsZ0JBQWdCLENBQUM7aUJBQ3JEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSwgTk9fRVJST1JTX1NDSEVNQSwgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFRDbG91ZFVpRGF0ZXBpY2tlckNvbXBvbmVudCB9IGZyb20gJy4vdGNsb3VkLXVpLWRhdGVwaWNrZXIuY29tcG9uZW50JztcclxuXHJcblxyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIFRDbG91ZFVpRGF0ZXBpY2tlckNvbXBvbmVudFxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgVENsb3VkVWlEYXRlcGlja2VyQ29tcG9uZW50XHJcbiAgXSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGVcclxuICBdLFxyXG4gIHNjaGVtYXM6IFsgQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSwgTk9fRVJST1JTX1NDSEVNQV1cclxufSlcclxuZXhwb3J0IGNsYXNzIFRDbG91ZFVpRGF0ZXBpY2tlck1vZHVsZSB7IH1cclxuIl19