@sapphire-ion/framework 1.2.43 → 1.2.44

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 (495) hide show
  1. package/esm2022/lib/classes/comparison/comparison-operator.mjs +18 -0
  2. package/esm2022/lib/classes/comparison/comparison-value-type.mjs +25 -0
  3. package/esm2022/lib/classes/comparison/comparison.mjs +41 -0
  4. package/esm2022/lib/classes/comparison/properties/bool-property.mjs +15 -0
  5. package/esm2022/lib/classes/comparison/properties/date-property.mjs +27 -0
  6. package/esm2022/lib/classes/comparison/properties/datetime-property.mjs +27 -0
  7. package/esm2022/lib/classes/comparison/properties/decimal-property.mjs +27 -0
  8. package/esm2022/lib/classes/comparison/properties/enum-property.mjs +27 -0
  9. package/esm2022/lib/classes/comparison/properties/implicit-property.mjs +12 -0
  10. package/esm2022/lib/classes/comparison/properties/int-property.mjs +27 -0
  11. package/esm2022/lib/classes/comparison/properties/long-property.mjs +27 -0
  12. package/esm2022/lib/classes/comparison/properties/string-property.mjs +15 -0
  13. package/esm2022/lib/classes/comparison/properties/time-property.mjs +27 -0
  14. package/esm2022/lib/classes/credentials.mjs +2 -0
  15. package/esm2022/lib/classes/environment.mjs +34 -0
  16. package/esm2022/lib/classes/filters/view-filtros.mjs +18 -0
  17. package/esm2022/lib/classes/infinite-scroll.mjs +90 -0
  18. package/esm2022/lib/classes/inputs/table-field-form-builder.mjs +10 -0
  19. package/esm2022/lib/classes/inputs/table-field.mjs +79 -0
  20. package/esm2022/lib/classes/page-option.mjs +2 -0
  21. package/esm2022/lib/classes/routes/default-routing-factory.mjs +23 -0
  22. package/esm2022/lib/classes/routes/id-preloader-configuration.mjs +22 -0
  23. package/esm2022/lib/classes/routes/route-data.mjs +9 -0
  24. package/esm2022/lib/components/carousel/carousel-image/carousel-image.component.mjs +18 -0
  25. package/esm2022/lib/components/carousel/carousel-item/carousel-item.component.mjs +15 -0
  26. package/esm2022/lib/components/carousel/carousel.component.mjs +79 -0
  27. package/esm2022/lib/components/carousel/carousel.module.mjs +31 -0
  28. package/esm2022/lib/components/carousel/i-carousel-item.component.mjs +16 -0
  29. package/esm2022/lib/components/content-block/content-block.component.mjs +27 -0
  30. package/esm2022/lib/components/default/default-list/abstract-list.mjs +49 -0
  31. package/esm2022/lib/components/default/default-list/default-list.component.mjs +95 -0
  32. package/esm2022/lib/components/default/default-list/header-list/header-list.component.mjs +98 -0
  33. package/esm2022/lib/components/default/default-list/list.mjs +120 -0
  34. package/esm2022/lib/components/default/default-pagination/default-pagination.component.mjs +123 -0
  35. package/esm2022/lib/components/default/default-table/default-table.component.mjs +216 -0
  36. package/esm2022/lib/components/default/default-table/th-filter/th-filter.component.mjs +206 -0
  37. package/esm2022/lib/components/default/default-view/abstract-view.mjs +22 -0
  38. package/esm2022/lib/components/default/default-view/default-view.component.mjs +63 -0
  39. package/esm2022/lib/components/default/default-view/header-view/header-view.component.mjs +78 -0
  40. package/esm2022/lib/components/default/default-view/view.mjs +188 -0
  41. package/esm2022/lib/components/default/default.module.mjs +98 -0
  42. package/esm2022/lib/components/default-page/default.page.mjs +75 -0
  43. package/esm2022/lib/components/drag-drop-file/drag-drop-file.directive.mjs +60 -0
  44. package/esm2022/lib/components/drag-drop-file/drag-drop-file.module.mjs +31 -0
  45. package/esm2022/lib/components/drag-drop-file/drag-drop-overlay/drag-drop-overlay.component.mjs +15 -0
  46. package/esm2022/lib/components/drawer/default-drawer-end/default-drawer-end.component.mjs +34 -0
  47. package/esm2022/lib/components/drawer/drawer-group/drawer-group.component.mjs +52 -0
  48. package/esm2022/lib/components/drawer/drawer.component.mjs +156 -0
  49. package/esm2022/lib/components/drawer/menu.mjs +15 -0
  50. package/esm2022/lib/components/filter/filter.component.mjs +145 -0
  51. package/esm2022/lib/components/http-responses-pages/forbidden-403/forbidden-403.component.mjs +17 -0
  52. package/esm2022/lib/components/image/image.component.mjs +91 -0
  53. package/esm2022/lib/components/info-popover/info-popover.component.mjs +91 -0
  54. package/esm2022/lib/components/inputs/custom-input.mjs +85 -0
  55. package/esm2022/lib/components/inputs/input-bool/input-bool.component.mjs +46 -0
  56. package/esm2022/lib/components/inputs/input-bool/input-bool.configuration.mjs +16 -0
  57. package/esm2022/lib/components/inputs/input-cep/input-cep.component.mjs +50 -0
  58. package/esm2022/lib/components/inputs/input-cep/input-cep.configuration.mjs +4 -0
  59. package/esm2022/lib/components/inputs/input-color/input-color.component.mjs +481 -0
  60. package/esm2022/lib/components/inputs/input-configuration.mjs +2 -0
  61. package/esm2022/lib/components/inputs/input-cpf-cnpj/input-cpf-cnpj.component.mjs +116 -0
  62. package/esm2022/lib/components/inputs/input-cpf-cnpj/input-cpf-cnpj.configuration.mjs +6 -0
  63. package/esm2022/lib/components/inputs/input-date/input-date.component.mjs +235 -0
  64. package/esm2022/lib/components/inputs/input-date/input-date.configuration.mjs +8 -0
  65. package/esm2022/lib/components/inputs/input-decimal/input-decimal.component.mjs +243 -0
  66. package/esm2022/lib/components/inputs/input-decimal/input-decimal.configuration.mjs +50 -0
  67. package/esm2022/lib/components/inputs/input-default-configurations.mjs +14 -0
  68. package/esm2022/lib/components/inputs/input-file/download-button/download-button.component.mjs +99 -0
  69. package/esm2022/lib/components/inputs/input-file/input-file.component.mjs +101 -0
  70. package/esm2022/lib/components/inputs/input-file/input-file.configuration.mjs +24 -0
  71. package/esm2022/lib/components/inputs/input-icon/fluenticons.mjs +3734 -0
  72. package/esm2022/lib/components/inputs/input-icon/input-icon.component.mjs +60 -0
  73. package/esm2022/lib/components/inputs/input-icon/ionicons.mjs +1360 -0
  74. package/esm2022/lib/components/inputs/input-provider-factory.mjs +12 -0
  75. package/esm2022/lib/components/inputs/input-select/directives/sion-label-template.directive.mjs +16 -0
  76. package/esm2022/lib/components/inputs/input-select/directives/sion-option-template.directive.mjs +16 -0
  77. package/esm2022/lib/components/inputs/input-select/directives/sion-placeholder-template.directive.mjs +16 -0
  78. package/esm2022/lib/components/inputs/input-select/input-select.component.mjs +373 -0
  79. package/esm2022/lib/components/inputs/input-select/input.select.configuration.mjs +229 -0
  80. package/esm2022/lib/components/inputs/input-string/input-string.component.mjs +41 -0
  81. package/esm2022/lib/components/inputs/input-string/input-string.configuration.mjs +18 -0
  82. package/esm2022/lib/components/inputs/input-telefone/input-telefone.component.mjs +74 -0
  83. package/esm2022/lib/components/inputs/input-telefone/input-telefone.configuration.mjs +12 -0
  84. package/esm2022/lib/components/inputs/input-textarea/input-textarea.component.mjs +41 -0
  85. package/esm2022/lib/components/inputs/input-textarea/input-textarea.configuration.mjs +7 -0
  86. package/esm2022/lib/components/inputs/input-type.mjs +24 -0
  87. package/esm2022/lib/components/inputs/input-validators.mjs +121 -0
  88. package/esm2022/lib/components/inputs/inputs.module.mjs +133 -0
  89. package/esm2022/lib/components/loading/loading.component.mjs +34 -0
  90. package/esm2022/lib/components/login/login-admin/login-admin.component.mjs +52 -0
  91. package/esm2022/lib/components/login/login.component.mjs +99 -0
  92. package/esm2022/lib/components/main-content/main-content.component.mjs +100 -0
  93. package/esm2022/lib/components/popover/sion-popover/sion-popover.component.mjs +182 -0
  94. package/esm2022/lib/components/popover/sion-popover.module.mjs +21 -0
  95. package/esm2022/lib/components/sion-card/sion-card.component.mjs +26 -0
  96. package/esm2022/lib/components/stepper/step/step.component.mjs +43 -0
  97. package/esm2022/lib/components/stepper/stepper.component.mjs +36 -0
  98. package/esm2022/lib/components/stepper/stepper.module.mjs +25 -0
  99. package/esm2022/lib/components/tabs/tab/tab.component.mjs +41 -0
  100. package/esm2022/lib/components/tabs/tabs/tabs.component.mjs +56 -0
  101. package/esm2022/lib/components/tabs/tabs.module.mjs +22 -0
  102. package/esm2022/lib/components/text-tooltip/text-tooltip.component.mjs +51 -0
  103. package/esm2022/lib/components/tooltip/tooltip.component.mjs +21 -0
  104. package/esm2022/lib/core.module.mjs +38 -0
  105. package/esm2022/lib/directives/ng-var.directive.mjs +29 -0
  106. package/esm2022/lib/guards/auth.guard.mjs +26 -0
  107. package/esm2022/lib/guards/error.interceptor.mjs +107 -0
  108. package/esm2022/lib/guards/token.interceptor.mjs +25 -0
  109. package/esm2022/lib/index.mjs +187 -0
  110. package/esm2022/lib/pipes/secure.pipe.mjs +42 -0
  111. package/esm2022/lib/services/auth.service.mjs +150 -0
  112. package/esm2022/lib/services/environment.service.mjs +26 -0
  113. package/esm2022/lib/services/generic.service.mjs +84 -0
  114. package/esm2022/lib/services/modal-focus-trap.service.mjs +62 -0
  115. package/esm2022/lib/services/popover-focus-trap.service.mjs +62 -0
  116. package/esm2022/lib/services/route/route.cache.service.mjs +15 -0
  117. package/esm2022/lib/services/route/route.provider.service.mjs +42 -0
  118. package/esm2022/lib/services/usuario.service.mjs +49 -0
  119. package/esm2022/lib/services/utils.service.mjs +190 -0
  120. package/esm2022/lib/services/web/api-url-provider.service.mjs +29 -0
  121. package/esm2022/lib/services/web/http.ativo.service.mjs +37 -0
  122. package/esm2022/lib/services/web/http.service.mjs +177 -0
  123. package/esm2022/lib/services/web/storage.service.mjs +183 -0
  124. package/esm2022/public-api.mjs +5 -0
  125. package/esm2022/sapphire-ion-framework.mjs +5 -0
  126. package/fesm2022/sapphire-ion-framework.mjs +12234 -0
  127. package/fesm2022/sapphire-ion-framework.mjs.map +1 -0
  128. package/index.d.ts +5 -0
  129. package/lib/classes/comparison/comparison-operator.d.ts +9 -0
  130. package/lib/classes/comparison/comparison-value-type.d.ts +23 -0
  131. package/lib/classes/comparison/comparison.d.ts +25 -0
  132. package/lib/classes/comparison/properties/bool-property.d.ts +7 -0
  133. package/lib/classes/comparison/properties/date-property.d.ts +11 -0
  134. package/lib/classes/comparison/properties/datetime-property.d.ts +11 -0
  135. package/lib/classes/comparison/properties/decimal-property.d.ts +11 -0
  136. package/lib/classes/comparison/properties/enum-property.d.ts +11 -0
  137. package/lib/classes/comparison/properties/implicit-property.d.ts +6 -0
  138. package/lib/classes/comparison/properties/int-property.d.ts +11 -0
  139. package/lib/classes/comparison/properties/long-property.d.ts +11 -0
  140. package/lib/classes/comparison/properties/string-property.d.ts +7 -0
  141. package/lib/classes/comparison/properties/time-property.d.ts +11 -0
  142. package/{src/lib/classes/credentials.ts → lib/classes/credentials.d.ts} +5 -5
  143. package/lib/classes/environment.d.ts +14 -0
  144. package/lib/classes/filters/view-filtros.d.ts +10 -0
  145. package/lib/classes/infinite-scroll.d.ts +26 -0
  146. package/lib/classes/inputs/table-field-form-builder.d.ts +5 -0
  147. package/lib/classes/inputs/table-field.d.ts +20 -0
  148. package/lib/classes/page-option.d.ts +7 -0
  149. package/lib/classes/routes/default-routing-factory.d.ts +8 -0
  150. package/lib/classes/routes/id-preloader-configuration.d.ts +28 -0
  151. package/lib/classes/routes/route-data.d.ts +5 -0
  152. package/lib/components/carousel/carousel-image/carousel-image.component.d.ts +10 -0
  153. package/lib/components/carousel/carousel-item/carousel-item.component.d.ts +9 -0
  154. package/lib/components/carousel/carousel.component.d.ts +32 -0
  155. package/lib/components/carousel/carousel.module.d.ts +12 -0
  156. package/lib/components/carousel/i-carousel-item.component.d.ts +9 -0
  157. package/lib/components/content-block/content-block.component.d.ts +15 -0
  158. package/lib/components/default/default-list/abstract-list.d.ts +21 -0
  159. package/lib/components/default/default-list/default-list.component.d.ts +47 -0
  160. package/lib/components/default/default-list/header-list/header-list.component.d.ts +45 -0
  161. package/lib/components/default/default-list/list.d.ts +40 -0
  162. package/lib/components/default/default-pagination/default-pagination.component.d.ts +36 -0
  163. package/lib/components/default/default-table/default-table.component.d.ts +90 -0
  164. package/lib/components/default/default-table/th-filter/th-filter.component.d.ts +23 -0
  165. package/lib/components/default/default-view/abstract-view.d.ts +18 -0
  166. package/lib/components/default/default-view/default-view.component.d.ts +32 -0
  167. package/lib/components/default/default-view/header-view/header-view.component.d.ts +29 -0
  168. package/lib/components/default/default-view/view.d.ts +59 -0
  169. package/lib/components/default/default.module.d.ts +31 -0
  170. package/lib/components/default-page/default.page.d.ts +35 -0
  171. package/lib/components/drag-drop-file/drag-drop-file.directive.d.ts +14 -0
  172. package/lib/components/drag-drop-file/drag-drop-file.module.d.ts +10 -0
  173. package/lib/components/drag-drop-file/drag-drop-overlay/drag-drop-overlay.component.d.ts +9 -0
  174. package/lib/components/drawer/default-drawer-end/default-drawer-end.component.d.ts +13 -0
  175. package/lib/components/drawer/drawer-group/drawer-group.component.d.ts +22 -0
  176. package/lib/components/drawer/drawer.component.d.ts +31 -0
  177. package/lib/components/drawer/menu.d.ts +9 -0
  178. package/lib/components/filter/filter.component.d.ts +29 -0
  179. package/lib/components/http-responses-pages/forbidden-403/forbidden-403.component.d.ts +8 -0
  180. package/lib/components/image/image.component.d.ts +23 -0
  181. package/lib/components/info-popover/info-popover.component.d.ts +15 -0
  182. package/lib/components/inputs/custom-input.d.ts +40 -0
  183. package/lib/components/inputs/input-bool/input-bool.component.d.ts +16 -0
  184. package/lib/components/inputs/input-bool/input-bool.configuration.d.ts +17 -0
  185. package/lib/components/inputs/input-cep/input-cep.component.d.ts +18 -0
  186. package/lib/components/inputs/input-cep/input-cep.configuration.d.ts +3 -0
  187. package/lib/components/inputs/input-color/input-color.component.d.ts +77 -0
  188. package/{src/lib/components/inputs/input-configuration.ts → lib/components/inputs/input-configuration.d.ts} +10 -23
  189. package/lib/components/inputs/input-cpf-cnpj/input-cpf-cnpj.component.d.ts +19 -0
  190. package/lib/components/inputs/input-cpf-cnpj/input-cpf-cnpj.configuration.d.ts +5 -0
  191. package/lib/components/inputs/input-date/input-date.component.d.ts +60 -0
  192. package/lib/components/inputs/input-date/input-date.configuration.d.ts +7 -0
  193. package/lib/components/inputs/input-decimal/input-decimal.component.d.ts +26 -0
  194. package/lib/components/inputs/input-decimal/input-decimal.configuration.d.ts +28 -0
  195. package/lib/components/inputs/input-default-configurations.d.ts +13 -0
  196. package/lib/components/inputs/input-file/download-button/download-button.component.d.ts +39 -0
  197. package/lib/components/inputs/input-file/input-file.component.d.ts +27 -0
  198. package/lib/components/inputs/input-file/input-file.configuration.d.ts +8 -0
  199. package/lib/components/inputs/input-icon/fluenticons.d.ts +1 -0
  200. package/lib/components/inputs/input-icon/input-icon.component.d.ts +20 -0
  201. package/lib/components/inputs/input-icon/ionicons.d.ts +1 -0
  202. package/lib/components/inputs/input-provider-factory.d.ts +4 -0
  203. package/lib/components/inputs/input-select/directives/sion-label-template.directive.d.ts +18 -0
  204. package/lib/components/inputs/input-select/directives/sion-option-template.directive.d.ts +14 -0
  205. package/lib/components/inputs/input-select/directives/sion-placeholder-template.directive.d.ts +18 -0
  206. package/lib/components/inputs/input-select/input-select.component.d.ts +83 -0
  207. package/lib/components/inputs/input-select/input.select.configuration.d.ts +122 -0
  208. package/lib/components/inputs/input-string/input-string.component.d.ts +14 -0
  209. package/lib/components/inputs/input-string/input-string.configuration.d.ts +14 -0
  210. package/lib/components/inputs/input-telefone/input-telefone.component.d.ts +19 -0
  211. package/lib/components/inputs/input-telefone/input-telefone.configuration.d.ts +9 -0
  212. package/lib/components/inputs/input-textarea/input-textarea.component.d.ts +14 -0
  213. package/lib/components/inputs/input-textarea/input-textarea.configuration.d.ts +4 -0
  214. package/lib/components/inputs/input-type.d.ts +22 -0
  215. package/lib/components/inputs/input-validators.d.ts +25 -0
  216. package/lib/components/inputs/inputs.module.d.ts +33 -0
  217. package/lib/components/loading/loading.component.d.ts +18 -0
  218. package/lib/components/login/login-admin/login-admin.component.d.ts +20 -0
  219. package/lib/components/login/login.component.d.ts +29 -0
  220. package/lib/components/main-content/main-content.component.d.ts +27 -0
  221. package/lib/components/popover/sion-popover/sion-popover.component.d.ts +43 -0
  222. package/lib/components/popover/sion-popover.module.d.ts +9 -0
  223. package/lib/components/sion-card/sion-card.component.d.ts +11 -0
  224. package/lib/components/stepper/step/step.component.d.ts +15 -0
  225. package/lib/components/stepper/stepper.component.d.ts +14 -0
  226. package/lib/components/stepper/stepper.module.d.ts +10 -0
  227. package/lib/components/tabs/tab/tab.component.d.ts +19 -0
  228. package/lib/components/tabs/tabs/tabs.component.d.ts +18 -0
  229. package/lib/components/tabs/tabs.module.d.ts +12 -0
  230. package/lib/components/text-tooltip/text-tooltip.component.d.ts +16 -0
  231. package/lib/components/tooltip/tooltip.component.d.ts +7 -0
  232. package/lib/core.module.d.ts +16 -0
  233. package/lib/directives/ng-var.directive.d.ts +12 -0
  234. package/lib/guards/auth.guard.d.ts +11 -0
  235. package/lib/guards/error.interceptor.d.ts +32 -0
  236. package/lib/guards/token.interceptor.d.ts +11 -0
  237. package/lib/index.d.ts +117 -0
  238. package/lib/pipes/secure.pipe.d.ts +15 -0
  239. package/lib/services/auth.service.d.ts +47 -0
  240. package/lib/services/environment.service.d.ts +10 -0
  241. package/lib/services/generic.service.d.ts +22 -0
  242. package/lib/services/modal-focus-trap.service.d.ts +13 -0
  243. package/lib/services/popover-focus-trap.service.d.ts +13 -0
  244. package/lib/services/route/route.cache.service.d.ts +7 -0
  245. package/lib/services/route/route.provider.service.d.ts +13 -0
  246. package/lib/services/usuario.service.d.ts +21 -0
  247. package/lib/services/utils.service.d.ts +53 -0
  248. package/lib/services/web/api-url-provider.service.d.ts +13 -0
  249. package/lib/services/web/http.ativo.service.d.ts +20 -0
  250. package/lib/services/web/http.service.d.ts +59 -0
  251. package/lib/services/web/storage.service.d.ts +46 -0
  252. package/package.json +47 -43
  253. package/public-api.d.ts +1 -0
  254. package/{src/lib → themes}/compiled-styles.scss +2551 -2551
  255. package/build.ps1 +0 -39
  256. package/ng-package.json +0 -10
  257. package/src/lib/classes/comparison/comparison-operator.ts +0 -17
  258. package/src/lib/classes/comparison/comparison-value-type.ts +0 -34
  259. package/src/lib/classes/comparison/comparison.ts +0 -45
  260. package/src/lib/classes/comparison/properties/bool-property.ts +0 -16
  261. package/src/lib/classes/comparison/properties/date-property.ts +0 -28
  262. package/src/lib/classes/comparison/properties/datetime-property.ts +0 -28
  263. package/src/lib/classes/comparison/properties/decimal-property.ts +0 -28
  264. package/src/lib/classes/comparison/properties/enum-property.ts +0 -28
  265. package/src/lib/classes/comparison/properties/implicit-property.ts +0 -13
  266. package/src/lib/classes/comparison/properties/int-property.ts +0 -28
  267. package/src/lib/classes/comparison/properties/long-property.ts +0 -28
  268. package/src/lib/classes/comparison/properties/string-property.ts +0 -16
  269. package/src/lib/classes/comparison/properties/time-property.ts +0 -28
  270. package/src/lib/classes/environment.ts +0 -37
  271. package/src/lib/classes/filters/view-filtros.ts +0 -18
  272. package/src/lib/classes/infinite-scroll.ts +0 -112
  273. package/src/lib/classes/inputs/table-field-form-builder.ts +0 -12
  274. package/src/lib/classes/inputs/table-field.ts +0 -62
  275. package/src/lib/classes/page-option.ts +0 -8
  276. package/src/lib/classes/routes/default-routing-factory.ts +0 -24
  277. package/src/lib/classes/routes/id-preloader-configuration.ts +0 -21
  278. package/src/lib/classes/routes/route-data.ts +0 -9
  279. package/src/lib/components/carousel/carousel-image/carousel-image.component.html +0 -4
  280. package/src/lib/components/carousel/carousel-image/carousel-image.component.ts +0 -15
  281. package/src/lib/components/carousel/carousel-item/carousel-item.component.html +0 -3
  282. package/src/lib/components/carousel/carousel-item/carousel-item.component.ts +0 -14
  283. package/src/lib/components/carousel/carousel.component.html +0 -22
  284. package/src/lib/components/carousel/carousel.component.ts +0 -83
  285. package/src/lib/components/carousel/carousel.module.ts +0 -20
  286. package/src/lib/components/carousel/i-carousel-item.component.ts +0 -8
  287. package/src/lib/components/content-block/content-block.component.html +0 -6
  288. package/src/lib/components/content-block/content-block.component.ts +0 -25
  289. package/src/lib/components/default/default-list/abstract-list.ts +0 -56
  290. package/src/lib/components/default/default-list/default-list.component.html +0 -60
  291. package/src/lib/components/default/default-list/default-list.component.ts +0 -72
  292. package/src/lib/components/default/default-list/header-list/header-list.component.html +0 -32
  293. package/src/lib/components/default/default-list/header-list/header-list.component.ts +0 -85
  294. package/src/lib/components/default/default-list/list.ts +0 -127
  295. package/src/lib/components/default/default-pagination/default-pagination.component.html +0 -52
  296. package/src/lib/components/default/default-pagination/default-pagination.component.ts +0 -118
  297. package/src/lib/components/default/default-table/default-table.component.html +0 -104
  298. package/src/lib/components/default/default-table/default-table.component.ts +0 -255
  299. package/src/lib/components/default/default-table/th-filter/th-filter.component.html +0 -69
  300. package/src/lib/components/default/default-table/th-filter/th-filter.component.ts +0 -183
  301. package/src/lib/components/default/default-view/abstract-view.ts +0 -25
  302. package/src/lib/components/default/default-view/default-view.component.html +0 -111
  303. package/src/lib/components/default/default-view/default-view.component.ts +0 -44
  304. package/src/lib/components/default/default-view/header-view/header-view.component.html +0 -64
  305. package/src/lib/components/default/default-view/header-view/header-view.component.ts +0 -57
  306. package/src/lib/components/default/default-view/view.ts +0 -183
  307. package/src/lib/components/default/default.module.ts +0 -61
  308. package/src/lib/components/default-page/default.page.html +0 -63
  309. package/src/lib/components/default-page/default.page.ts +0 -84
  310. package/src/lib/components/drag-drop-file/drag-drop-file.directive.ts +0 -44
  311. package/src/lib/components/drag-drop-file/drag-drop-file.module.ts +0 -21
  312. package/src/lib/components/drag-drop-file/drag-drop-overlay/drag-drop-overlay.component.html +0 -5
  313. package/src/lib/components/drag-drop-file/drag-drop-overlay/drag-drop-overlay.component.ts +0 -17
  314. package/src/lib/components/drawer/default-drawer-end/default-drawer-end.component.html +0 -12
  315. package/src/lib/components/drawer/default-drawer-end/default-drawer-end.component.ts +0 -35
  316. package/src/lib/components/drawer/drawer-group/drawer-group.component.html +0 -79
  317. package/src/lib/components/drawer/drawer-group/drawer-group.component.ts +0 -49
  318. package/src/lib/components/drawer/drawer.component.html +0 -120
  319. package/src/lib/components/drawer/drawer.component.ts +0 -157
  320. package/src/lib/components/drawer/menu.ts +0 -20
  321. package/src/lib/components/filter/filter.component.html +0 -43
  322. package/src/lib/components/filter/filter.component.ts +0 -141
  323. package/src/lib/components/http-responses-pages/forbidden-403/forbidden-403.component.html +0 -35
  324. package/src/lib/components/http-responses-pages/forbidden-403/forbidden-403.component.ts +0 -19
  325. package/src/lib/components/image/image.component.html +0 -17
  326. package/src/lib/components/image/image.component.ts +0 -95
  327. package/src/lib/components/info-popover/info-popover.component.html +0 -23
  328. package/src/lib/components/info-popover/info-popover.component.ts +0 -75
  329. package/src/lib/components/inputs/custom-input.ts +0 -94
  330. package/src/lib/components/inputs/input-bool/input-bool.component.html +0 -26
  331. package/src/lib/components/inputs/input-bool/input-bool.component.ts +0 -39
  332. package/src/lib/components/inputs/input-bool/input-bool.configuration.ts +0 -14
  333. package/src/lib/components/inputs/input-cep/input-cep.component.html +0 -27
  334. package/src/lib/components/inputs/input-cep/input-cep.component.ts +0 -41
  335. package/src/lib/components/inputs/input-cep/input-cep.configuration.ts +0 -4
  336. package/src/lib/components/inputs/input-color/input-color.component.html +0 -79
  337. package/src/lib/components/inputs/input-color/input-color.component.ts +0 -544
  338. package/src/lib/components/inputs/input-color/input-color.configuration.ts +0 -0
  339. package/src/lib/components/inputs/input-cpf-cnpj/input-cpf-cnpj.component.html +0 -28
  340. package/src/lib/components/inputs/input-cpf-cnpj/input-cpf-cnpj.component.ts +0 -99
  341. package/src/lib/components/inputs/input-cpf-cnpj/input-cpf-cnpj.configuration.ts +0 -4
  342. package/src/lib/components/inputs/input-date/input-date.component.html +0 -88
  343. package/src/lib/components/inputs/input-date/input-date.component.ts +0 -241
  344. package/src/lib/components/inputs/input-date/input-date.configuration.ts +0 -6
  345. package/src/lib/components/inputs/input-decimal/input-decimal.component.html +0 -31
  346. package/src/lib/components/inputs/input-decimal/input-decimal.component.ts +0 -249
  347. package/src/lib/components/inputs/input-decimal/input-decimal.configuration.ts +0 -47
  348. package/src/lib/components/inputs/input-default-configurations.ts +0 -15
  349. package/src/lib/components/inputs/input-file/download-button/download-button.component.html +0 -56
  350. package/src/lib/components/inputs/input-file/download-button/download-button.component.ts +0 -89
  351. package/src/lib/components/inputs/input-file/input-file.component.html +0 -59
  352. package/src/lib/components/inputs/input-file/input-file.component.ts +0 -96
  353. package/src/lib/components/inputs/input-file/input-file.configuration.ts +0 -25
  354. package/src/lib/components/inputs/input-icon/fluenticons.ts +0 -3733
  355. package/src/lib/components/inputs/input-icon/input-icon.component.html +0 -8
  356. package/src/lib/components/inputs/input-icon/input-icon.component.ts +0 -52
  357. package/src/lib/components/inputs/input-icon/ionicons.ts +0 -1359
  358. package/src/lib/components/inputs/input-provider-factory.ts +0 -12
  359. package/src/lib/components/inputs/input-select/directives/sion-label-template.directive.ts +0 -19
  360. package/src/lib/components/inputs/input-select/directives/sion-option-template.directive.ts +0 -16
  361. package/src/lib/components/inputs/input-select/directives/sion-placeholder-template.directive.ts +0 -19
  362. package/src/lib/components/inputs/input-select/input-select.component.html +0 -176
  363. package/src/lib/components/inputs/input-select/input-select.component.ts +0 -361
  364. package/src/lib/components/inputs/input-select/input.select.configuration.ts +0 -292
  365. package/src/lib/components/inputs/input-string/input-string.component.html +0 -27
  366. package/src/lib/components/inputs/input-string/input-string.component.ts +0 -31
  367. package/src/lib/components/inputs/input-string/input-string.configuration.ts +0 -18
  368. package/src/lib/components/inputs/input-telefone/input-telefone.component.html +0 -29
  369. package/src/lib/components/inputs/input-telefone/input-telefone.component.ts +0 -63
  370. package/src/lib/components/inputs/input-telefone/input-telefone.configuration.ts +0 -8
  371. package/src/lib/components/inputs/input-textarea/input-textarea.component.html +0 -27
  372. package/src/lib/components/inputs/input-textarea/input-textarea.component.ts +0 -31
  373. package/src/lib/components/inputs/input-textarea/input-textarea.configuration.ts +0 -7
  374. package/src/lib/components/inputs/input-type.ts +0 -22
  375. package/src/lib/components/inputs/input-validators.ts +0 -111
  376. package/src/lib/components/inputs/inputs.module.ts +0 -74
  377. package/src/lib/components/loading/loading.component.html +0 -28
  378. package/src/lib/components/loading/loading.component.ts +0 -29
  379. package/src/lib/components/login/login-admin/login-admin.component.html +0 -28
  380. package/src/lib/components/login/login-admin/login-admin.component.ts +0 -51
  381. package/src/lib/components/login/login.component.html +0 -104
  382. package/src/lib/components/login/login.component.ts +0 -96
  383. package/src/lib/components/main-content/main-content.component.html +0 -145
  384. package/src/lib/components/main-content/main-content.component.ts +0 -93
  385. package/src/lib/components/popover/sion-popover/sion-popover.component.html +0 -21
  386. package/src/lib/components/popover/sion-popover/sion-popover.component.ts +0 -182
  387. package/src/lib/components/popover/sion-popover.module.ts +0 -12
  388. package/src/lib/components/sion-card/sion-card.component.html +0 -12
  389. package/src/lib/components/sion-card/sion-card.component.ts +0 -23
  390. package/src/lib/components/stepper/step/step.component.html +0 -11
  391. package/src/lib/components/stepper/step/step.component.ts +0 -44
  392. package/src/lib/components/stepper/stepper.component.html +0 -3
  393. package/src/lib/components/stepper/stepper.component.ts +0 -37
  394. package/src/lib/components/stepper/stepper.module.ts +0 -15
  395. package/src/lib/components/tabs/tab/tab.component.html +0 -8
  396. package/src/lib/components/tabs/tab/tab.component.ts +0 -28
  397. package/src/lib/components/tabs/tabs/tabs.component.html +0 -14
  398. package/src/lib/components/tabs/tabs/tabs.component.ts +0 -42
  399. package/src/lib/components/tabs/tabs.module.ts +0 -15
  400. package/src/lib/components/text-tooltip/text-tooltip.component.html +0 -8
  401. package/src/lib/components/text-tooltip/text-tooltip.component.ts +0 -45
  402. package/src/lib/components/tooltip/tooltip.component.html +0 -53
  403. package/src/lib/components/tooltip/tooltip.component.ts +0 -16
  404. package/src/lib/core.module.ts +0 -29
  405. package/src/lib/directives/ng-var.directive.ts +0 -26
  406. package/src/lib/guards/auth.guard.ts +0 -19
  407. package/src/lib/guards/error.interceptor.ts +0 -108
  408. package/src/lib/guards/token.interceptor.ts +0 -28
  409. package/src/lib/index.ts +0 -190
  410. package/src/lib/pipes/secure.pipe.ts +0 -39
  411. package/src/lib/services/auth.service.ts +0 -153
  412. package/src/lib/services/crypto.service.ts +0 -164
  413. package/src/lib/services/environment.service.ts +0 -17
  414. package/src/lib/services/generic.service.ts +0 -85
  415. package/src/lib/services/modal-focus-trap.service.ts +0 -65
  416. package/src/lib/services/popover-focus-trap.service.ts +0 -65
  417. package/src/lib/services/route/route.cache.service.ts +0 -17
  418. package/src/lib/services/route/route.provider.service.ts +0 -49
  419. package/src/lib/services/usuario.service.ts +0 -44
  420. package/src/lib/services/utils.service.ts +0 -216
  421. package/src/lib/services/web/api-url-provider.service.ts +0 -48
  422. package/src/lib/services/web/http.ativo.service.ts +0 -37
  423. package/src/lib/services/web/http.service.ts +0 -193
  424. package/src/lib/services/web/storage.service.ts +0 -206
  425. package/src/public-api.ts +0 -5
  426. package/tailwind.config.js +0 -27
  427. package/tsconfig.lib.json +0 -29
  428. package/tsconfig.lib.prod.json +0 -23
  429. package/tsconfig.spec.json +0 -27
  430. /package/{src/lib → themes}/components/carousel/carousel-image/carousel-image.component.scss +0 -0
  431. /package/{src/lib → themes}/components/carousel/carousel-item/carousel-item.component.scss +0 -0
  432. /package/{src/lib → themes}/components/carousel/carousel.component.scss +0 -0
  433. /package/{src/lib → themes}/components/content-block/content-block.component.scss +0 -0
  434. /package/{src/lib → themes}/components/default/default-list/default-list.component.scss +0 -0
  435. /package/{src/lib → themes}/components/default/default-list/header-list/header-list.component.scss +0 -0
  436. /package/{src/lib → themes}/components/default/default-pagination/default-pagination.component.scss +0 -0
  437. /package/{src/lib → themes}/components/default/default-table/default-table.component.scss +0 -0
  438. /package/{src/lib → themes}/components/default/default-table/th-filter/th-filter.component.scss +0 -0
  439. /package/{src/lib → themes}/components/default/default-view/default-view.component.scss +0 -0
  440. /package/{src/lib → themes}/components/default/default-view/header-view/header-view.component.scss +0 -0
  441. /package/{src/lib → themes}/components/default-page/default.page.scss +0 -0
  442. /package/{src/lib → themes}/components/drag-drop-file/drag-drop-overlay/drag-drop-overlay.component.scss +0 -0
  443. /package/{src/lib → themes}/components/drawer/default-drawer-end/default-drawer-end.component.scss +0 -0
  444. /package/{src/lib → themes}/components/drawer/drawer-group/drawer-group.component.scss +0 -0
  445. /package/{src/lib → themes}/components/drawer/drawer.component.scss +0 -0
  446. /package/{src/lib → themes}/components/filter/filter.component.scss +0 -0
  447. /package/{src/lib → themes}/components/http-responses-pages/forbidden-403/forbidden-403.component.scss +0 -0
  448. /package/{src/lib → themes}/components/image/image.component.scss +0 -0
  449. /package/{src/lib → themes}/components/info-popover/info-popover.component.scss +0 -0
  450. /package/{src/lib → themes}/components/inputs/input-bool/input-bool.component.scss +0 -0
  451. /package/{src/lib → themes}/components/inputs/input-cep/input-cep.component.scss +0 -0
  452. /package/{src/lib → themes}/components/inputs/input-color/input-color.component.scss +0 -0
  453. /package/{src/lib → themes}/components/inputs/input-cpf-cnpj/input-cpf-cnpj.component.scss +0 -0
  454. /package/{src/lib → themes}/components/inputs/input-date/input-date.component.scss +0 -0
  455. /package/{src/lib → themes}/components/inputs/input-decimal/input-decimal.component.scss +0 -0
  456. /package/{src/lib → themes}/components/inputs/input-file/download-button/download-button.component.scss +0 -0
  457. /package/{src/lib → themes}/components/inputs/input-file/input-file.component.scss +0 -0
  458. /package/{src/lib → themes}/components/inputs/input-icon/input-icon.component.scss +0 -0
  459. /package/{src/lib → themes}/components/inputs/input-select/input-select.component.scss +0 -0
  460. /package/{src/lib → themes}/components/inputs/input-string/input-string.component.scss +0 -0
  461. /package/{src/lib → themes}/components/inputs/input-telefone/input-telefone.component.scss +0 -0
  462. /package/{src/lib → themes}/components/inputs/input-textarea/input-textarea.component.scss +0 -0
  463. /package/{src/lib → themes}/components/inputs/inputs.scss +0 -0
  464. /package/{src/lib → themes}/components/loading/loading.component.scss +0 -0
  465. /package/{src/lib → themes}/components/login/login-admin/login-admin.component.scss +0 -0
  466. /package/{src/lib → themes}/components/login/login.component.scss +0 -0
  467. /package/{src/lib → themes}/components/main-content/main-content.component.scss +0 -0
  468. /package/{src/lib → themes}/components/popover/sion-popover/sion-popover.component.scss +0 -0
  469. /package/{src/lib → themes}/components/sion-card/sion-card.component.scss +0 -0
  470. /package/{src/lib → themes}/components/stepper/step/step.component.scss +0 -0
  471. /package/{src/lib → themes}/components/stepper/stepper.component.scss +0 -0
  472. /package/{src/lib → themes}/components/tabs/tab/tab.component.scss +0 -0
  473. /package/{src/lib → themes}/components/tabs/tabs/tabs.component.scss +0 -0
  474. /package/{src/lib → themes}/components/text-tooltip/text-tooltip.component.scss +0 -0
  475. /package/{src/lib → themes}/components/tooltip/tooltip.component.scss +0 -0
  476. /package/{src/lib → themes}/styles/components.scss +0 -0
  477. /package/{src/lib → themes}/styles/core.styles.scss +0 -0
  478. /package/{src/lib → themes}/styles/ionic/ion-action-sheet.scss +0 -0
  479. /package/{src/lib → themes}/styles/ionic/ion-alert.scss +0 -0
  480. /package/{src/lib → themes}/styles/ionic/ion-button.scss +0 -0
  481. /package/{src/lib → themes}/styles/ionic/ion-card.scss +0 -0
  482. /package/{src/lib → themes}/styles/ionic/ion-content.scss +0 -0
  483. /package/{src/lib → themes}/styles/ionic/ion-datetime.scss +0 -0
  484. /package/{src/lib → themes}/styles/ionic/ion-item.scss +0 -0
  485. /package/{src/lib → themes}/styles/ionic/ion-list.scss +0 -0
  486. /package/{src/lib → themes}/styles/ionic/ion-modal.scss +0 -0
  487. /package/{src/lib → themes}/styles/ionic/ion-popover.scss +0 -0
  488. /package/{src/lib → themes}/styles/ionic/ion-progress-bar.scss +0 -0
  489. /package/{src/lib → themes}/styles/ionic/ion-searchbar.scss +0 -0
  490. /package/{src/lib → themes}/styles/ionic/ion-toast.scss +0 -0
  491. /package/{src/lib → themes}/styles/ionic.scss +0 -0
  492. /package/{src/lib → themes}/styles/login-default.scss +0 -0
  493. /package/{src/lib → themes}/styles/mixins.scss +0 -0
  494. /package/{src/lib → themes}/styles/styles.scss +0 -0
  495. /package/{src/lib → themes}/styles/translucid.scss +0 -0
@@ -0,0 +1,100 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { Component, Input, ViewChild } from '@angular/core';
3
+ import { IonicModule } from '@ionic/angular';
4
+ import { RouterLinkWithHref } from '@angular/router';
5
+ import { Preferences } from '@capacitor/preferences';
6
+ import { DrawerComponent } from '../drawer/drawer.component';
7
+ import { AuthService } from '../../services/auth.service';
8
+ import { SIonPopoverModule } from '../popover/sion-popover.module';
9
+ import * as i0 from "@angular/core";
10
+ import * as i1 from "../../services/auth.service";
11
+ import * as i2 from "@angular/common";
12
+ import * as i3 from "@ionic/angular";
13
+ import * as i4 from "../popover/sion-popover/sion-popover.component";
14
+ export class MainContentComponent {
15
+ constructor(authService) {
16
+ this.authService = authService;
17
+ this.backdrop = 'bg-primary/30';
18
+ this.shadowColor = 'color-mix(in srgb, var(--ion-color-primary) 15%, transparent)';
19
+ this.colapsed = false;
20
+ this.Theme = Theme.System;
21
+ }
22
+ async ngOnInit() {
23
+ this.Token = await this.authService.LoadToken();
24
+ this.Theme = Number((await Preferences.get({ key: 'theme' })).value);
25
+ this.SetTheme(this.Theme);
26
+ window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', (e) => {
27
+ this.SetTheme(this.Theme);
28
+ });
29
+ }
30
+ async SetTheme(theme) {
31
+ this.Theme = theme;
32
+ await Preferences.set({ key: 'theme', value: this.Theme.toString() });
33
+ if (this.Theme === Theme.System) {
34
+ var matches = window.matchMedia('(prefers-color-scheme: dark)').matches;
35
+ if (matches) {
36
+ document.body.classList.add('dark');
37
+ }
38
+ else {
39
+ document.body.classList.remove('dark');
40
+ }
41
+ }
42
+ else if (this.Theme === Theme.Light) {
43
+ document.body.classList.remove('dark');
44
+ }
45
+ else if (this.Theme === Theme.Dark) {
46
+ document.body.classList.add('dark');
47
+ }
48
+ }
49
+ get fullScreen() {
50
+ if (document.fullscreenElement != null) {
51
+ return true;
52
+ }
53
+ return false;
54
+ }
55
+ ;
56
+ FullScreen() {
57
+ if (!this.fullScreen) {
58
+ const elem = this.FullScreenConteiner.nativeElement;
59
+ if (elem.requestFullscreen) {
60
+ elem.requestFullscreen();
61
+ }
62
+ else if (elem.msRequestFullscreen) {
63
+ elem.msRequestFullscreen();
64
+ }
65
+ else if (elem.mozRequestFullScreen) {
66
+ elem.mozRequestFullScreen();
67
+ }
68
+ else if (elem.webkitRequestFullscreen) {
69
+ elem.webkitRequestFullscreen();
70
+ }
71
+ }
72
+ else {
73
+ document.exitFullscreen();
74
+ }
75
+ }
76
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MainContentComponent, deps: [{ token: i1.AuthService }], target: i0.ɵɵFactoryTarget.Component }); }
77
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: MainContentComponent, isStandalone: true, selector: "main-content", inputs: { backdrop: "backdrop", shadowColor: "shadowColor", colapsed: "colapsed", drawerComponent: "drawerComponent" }, viewQueries: [{ propertyName: "FullScreenConteiner", first: true, predicate: ["target"], descendants: true }], ngImport: i0, template: "<div class=\"size-full flex flex-col\" [ngClass]=\"{'bg-light/50': fullScreen}\" #target>\r\n <div class=\"w-full h-14 relative shrink-0\">\r\n <ion-card class=\"m-0 rounded-none size-full border-none\">\r\n <ion-card-content class=\"p-0 px-2 size-full flex\">\r\n <div class=\"w-1/2 h-full flex items-center justify-start\">\r\n @if (!fullScreen) {\r\n <ion-menu-button [routerLink]=\"['/']\" [autoHide]=\"true\"></ion-menu-button>\r\n }\r\n <ng-content select=\"[slot=start]\"></ng-content>\r\n </div>\r\n\r\n <div class=\"w-1/2 h-full flex items-center justify-end gap-2\">\r\n <ng-content select=\"[slot=end]\"></ng-content>\r\n\r\n <ion-button (click)=\"FullScreen()\" fill=\"outline\" color=\"dark\" size=\"small\" class=\"size-10 aspect-square portrait:hidden\">\r\n <ion-icon slot=\"icon-only\" name=\"expand\"></ion-icon>\r\n </ion-button>\r\n\r\n\r\n @if (!fullScreen) {\r\n <div #anchor>\r\n <ion-button (click)=\"userPopover.present($event)\" size=\"small\" class=\"size-10 aspect-square\">\r\n <span class=\"uppercase text-white\">{{Token ? Token.Nome[0] : ''}}</span>\r\n </ion-button>\r\n </div>\r\n <sion-popover #userPopover [anchor]=\"anchor\" [flip]=\"false\" width=\"13rem\">\r\n <div class=\"w-full flex flex-col overflow-hidden\">\r\n <div class=\"w-full flex p-2 gap-2 overflow-hidden\">\r\n <div class=\"size-10 shrink-0 aspect-square rounded-2xl text-sm flex items-center justify-center bg-primary\">\r\n <span class=\"uppercase text-white\">{{Token ? Token.Nome[0] : ''}}</span>\r\n </div>\r\n\r\n <div class=\"shrink-0 w-full flex flex-col justify-center items-start overflow-hidden text-sm\">\r\n <span class=\"truncate\"> {{Token ? Token.Nome : ''}} </span>\r\n <span class=\"truncate text-secondary\"> &#64;{{Token ? Token.Apelido : ''}} </span>\r\n </div>\r\n </div>\r\n\r\n <div class=\"w-full\">\r\n <ng-content class=\"size-full\" select=\"[slot=user-popover]\"></ng-content>\r\n </div>\r\n\r\n <div class=\"w-full p-1 !pb-0 translucid-border !border-x-0 !border-b-0\">\r\n <div class=\"rounded-xl flex gap-2 items-center justify-start default-transition py-1 px-2\">\r\n <ion-icon name=\"contrast\"></ion-icon>\r\n <ion-text> Tema </ion-text>\r\n </div>\r\n\r\n <div class=\"flex flex-col pl-4\">\r\n <ion-radio-group alignment=\"start\" [allowEmptySelection]=\"false\" [value]=\"Theme\" (ionChange)=\"SetTheme($event.detail.value)\">\r\n <ion-item class=\"bg-transparent\" lines=\"full\">\r\n <ion-icon name=\"cog\" slot=\"start\"></ion-icon>\r\n <ion-radio class=\"w-full\" [value]=\"0\">Sistema</ion-radio>\r\n </ion-item>\r\n <ion-item class=\"bg-transparent\" lines=\"full\">\r\n <ion-icon name=\"sunny\" slot=\"start\"></ion-icon>\r\n <ion-radio class=\"w-full\" [value]=\"1\">Claro</ion-radio>\r\n </ion-item>\r\n <ion-item class=\"bg-transparent\" lines=\"none\">\r\n <ion-icon name=\"moon\" slot=\"start\"></ion-icon>\r\n <ion-radio class=\"w-full\" [value]=\"2\">Escuro</ion-radio>\r\n </ion-item>\r\n </ion-radio-group>\r\n\r\n\r\n <!-- <div class=\"w-full p-1 translucid-border !border-x-0 !border-b-0 overflow-hidden\">\r\n <div class=\"rounded-xl flex gap-2 items-center justify-start cursor-pointer hover:bg-medium/30 default-transition py-1 px-2\">\r\n <ion-checkbox [checked]=\"Theme == 0\" (ionChange)=\"SetTheme(0)\" ></ion-checkbox>\r\n <ion-icon name=\"cog\"></ion-icon>\r\n <ion-text> Sistema </ion-text>\r\n </div>\r\n </div>\r\n <div class=\"w-full p-1 translucid-border !border-x-0 !border-b-0 overflow-hidden\">\r\n <div class=\"rounded-xl flex gap-2 items-center justify-start cursor-pointer hover:bg-medium/30 default-transition py-1 px-2\">\r\n <ion-checkbox [checked]=\"Theme == 1\" (ionChange)=\"SetTheme(1)\" ></ion-checkbox>\r\n <ion-icon name=\"sunny\"></ion-icon>\r\n <ion-text> Claro </ion-text>\r\n </div>\r\n </div>\r\n <div class=\"w-full p-1 translucid-border !border-x-0 !border-b-0 overflow-hidden\">\r\n <div class=\"rounded-xl flex gap-2 items-center justify-start cursor-pointer hover:bg-medium/30 default-transition py-1 px-2\">\r\n <ion-checkbox [checked]=\"Theme == 2\" (ionChange)=\"SetTheme(2)\" ></ion-checkbox>\r\n <ion-icon name=\"moon\"></ion-icon>\r\n <ion-text> Escuro </ion-text>\r\n </div>\r\n </div> -->\r\n </div>\r\n </div>\r\n\r\n\r\n <div class=\"w-full p-1 translucid-border !border-x-0 !border-b-0\">\r\n <div (click)=\"authService.Loggout()\" class=\"rounded-xl flex gap-2 cursor-pointer items-center justify-start hover:bg-medium/10 default-transition py-1 px-2\">\r\n <ion-icon color=\"danger\" name=\"exit\"></ion-icon>\r\n <ion-text> Log Out </ion-text>\r\n </div>\r\n\r\n <!-- <ion-text> Log Out </ion-text>\r\n <ion-button (click)=\"authService.Loggout()\" class=\"size-8 shrink-0\" size=\"small\" fill=\"clear\" color=\"danger\">\r\n <ion-icon slot=\"icon-only\" name=\"exit-outline\"></ion-icon> \r\n </ion-button> -->\r\n </div>\r\n </div>\r\n\r\n <!-- <div class=\"size-full\">\r\n <div class=\"w-full p-1 flex items-center\">\r\n <div class=\"size-10 shrink-0 aspect-square rounded-2xl text-sm flex items-center justify-center default-transition\" style=\"background-color: var(--ion-color-primary);\">\r\n <span class=\"uppercase text-white\">{{Token ? Token.Nome[0] : ''}}</span>\r\n </div>\r\n <div class=\"grow min-w-10 p-2 justify-center items-center whitespace-nowrap text-ellipsis overflow-hidden block default-transition\" [ngClass]=\"{'opacity-0 w-0': colapsed}\">\r\n <span>{{Token ? Token.Nome : ''}}</span> <br>\r\n <ion-text color=\"secondary\" class=\"text-sm\">\r\n &#64;{{Token ? Token.Apelido : ''}}\r\n </ion-text>\r\n </div>\r\n </div>\r\n <div class=\"w-full\">\r\n <ng-content class=\"size-full\" select=\"[slot=user-popover]\"></ng-content>\r\n </div>\r\n <div class=\"w-full p-1 px-2 translucid-border !border-x-0 !border-b-0 flex items-center justify-between\">\r\n <div class=\"hover:bg-medium/30 default-transition size-full\">\r\n <ion-button color=\"dark\" fill=\"clear\" size=\"small\" class=\"rounded-xl w-full text-left overflow-hidden\">\r\n <ion-icon slot=\"start\" name=\"contrast\"></ion-icon>\r\n <ion-label class=\"text-sm\">Tema</ion-label>\r\n </ion-button>\r\n </div>\r\n </div>\r\n <div class=\"w-full p-1 px-2 translucid-border !border-x-0 !border-b-0 flex items-center justify-between\">\r\n <ion-text> Log Out </ion-text>\r\n <ion-button (click)=\"authService.Loggout()\" class=\"size-8 shrink-0\" size=\"small\" fill=\"clear\" color=\"danger\">\r\n <ion-icon slot=\"icon-only\" name=\"exit-outline\"></ion-icon> \r\n </ion-button>\r\n </div>\r\n </div> -->\r\n </sion-popover>\r\n }\r\n </div>\r\n </ion-card-content>\r\n </ion-card>\r\n </div>\r\n <div class=\"size-full relative p-2 pt-0 bg-light\">\r\n <div class=\"size-full relative rounded-2xl content-shadow overflow-hidden {{backdrop}}\" style=\"--shadow-color: {{shadowColor}}\">\r\n <ng-content></ng-content> \r\n </div>\r\n </div>\r\n</div>", styles: ["#popover-user{--width: 17rem}.content-shadow{--shadow-color: color-mix(in srgb, var(--ion-color-primary) 15%, transparent);box-shadow:0 0 0 1px var(--shadow-color),0 6px 10px -4px var(--shadow-color)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: IonicModule }, { kind: "component", type: i3.IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "component", type: i3.IonCard, selector: "ion-card", inputs: ["button", "color", "disabled", "download", "href", "mode", "rel", "routerAnimation", "routerDirection", "target", "type"] }, { kind: "component", type: i3.IonCardContent, selector: "ion-card-content", inputs: ["mode"] }, { kind: "component", type: i3.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: i3.IonItem, selector: "ion-item", inputs: ["button", "color", "detail", "detailIcon", "disabled", "download", "href", "lines", "mode", "rel", "routerAnimation", "routerDirection", "target", "type"] }, { kind: "component", type: i3.IonMenuButton, selector: "ion-menu-button", inputs: ["autoHide", "color", "disabled", "menu", "mode", "type"] }, { kind: "component", type: i3.IonRadio, selector: "ion-radio", inputs: ["alignment", "color", "disabled", "justify", "labelPlacement", "mode", "name", "value"] }, { kind: "component", type: i3.IonRadioGroup, selector: "ion-radio-group", inputs: ["allowEmptySelection", "compareWith", "errorText", "helperText", "name", "value"] }, { kind: "component", type: i3.IonText, selector: "ion-text", inputs: ["color", "mode"] }, { kind: "directive", type: i3.SelectValueAccessor, selector: "ion-select, ion-radio-group, ion-segment, ion-datetime" }, { kind: "directive", type: i3.RouterLinkDelegate, selector: ":not(a):not(area)[routerLink]" }, { kind: "directive", type: RouterLinkWithHref, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: SIonPopoverModule }, { kind: "component", type: i4.SIonPopoverComponent, selector: "sion-popover", inputs: ["fill", "arrow", "flip", "placement", "height", "width", "anchor"], outputs: ["onWillPresent", "onDidPresent", "onWillDismiss", "onDidDismiss"] }] }); }
78
+ }
79
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MainContentComponent, decorators: [{
80
+ type: Component,
81
+ args: [{ standalone: true, imports: [CommonModule, IonicModule, RouterLinkWithHref, SIonPopoverModule], selector: 'main-content', template: "<div class=\"size-full flex flex-col\" [ngClass]=\"{'bg-light/50': fullScreen}\" #target>\r\n <div class=\"w-full h-14 relative shrink-0\">\r\n <ion-card class=\"m-0 rounded-none size-full border-none\">\r\n <ion-card-content class=\"p-0 px-2 size-full flex\">\r\n <div class=\"w-1/2 h-full flex items-center justify-start\">\r\n @if (!fullScreen) {\r\n <ion-menu-button [routerLink]=\"['/']\" [autoHide]=\"true\"></ion-menu-button>\r\n }\r\n <ng-content select=\"[slot=start]\"></ng-content>\r\n </div>\r\n\r\n <div class=\"w-1/2 h-full flex items-center justify-end gap-2\">\r\n <ng-content select=\"[slot=end]\"></ng-content>\r\n\r\n <ion-button (click)=\"FullScreen()\" fill=\"outline\" color=\"dark\" size=\"small\" class=\"size-10 aspect-square portrait:hidden\">\r\n <ion-icon slot=\"icon-only\" name=\"expand\"></ion-icon>\r\n </ion-button>\r\n\r\n\r\n @if (!fullScreen) {\r\n <div #anchor>\r\n <ion-button (click)=\"userPopover.present($event)\" size=\"small\" class=\"size-10 aspect-square\">\r\n <span class=\"uppercase text-white\">{{Token ? Token.Nome[0] : ''}}</span>\r\n </ion-button>\r\n </div>\r\n <sion-popover #userPopover [anchor]=\"anchor\" [flip]=\"false\" width=\"13rem\">\r\n <div class=\"w-full flex flex-col overflow-hidden\">\r\n <div class=\"w-full flex p-2 gap-2 overflow-hidden\">\r\n <div class=\"size-10 shrink-0 aspect-square rounded-2xl text-sm flex items-center justify-center bg-primary\">\r\n <span class=\"uppercase text-white\">{{Token ? Token.Nome[0] : ''}}</span>\r\n </div>\r\n\r\n <div class=\"shrink-0 w-full flex flex-col justify-center items-start overflow-hidden text-sm\">\r\n <span class=\"truncate\"> {{Token ? Token.Nome : ''}} </span>\r\n <span class=\"truncate text-secondary\"> &#64;{{Token ? Token.Apelido : ''}} </span>\r\n </div>\r\n </div>\r\n\r\n <div class=\"w-full\">\r\n <ng-content class=\"size-full\" select=\"[slot=user-popover]\"></ng-content>\r\n </div>\r\n\r\n <div class=\"w-full p-1 !pb-0 translucid-border !border-x-0 !border-b-0\">\r\n <div class=\"rounded-xl flex gap-2 items-center justify-start default-transition py-1 px-2\">\r\n <ion-icon name=\"contrast\"></ion-icon>\r\n <ion-text> Tema </ion-text>\r\n </div>\r\n\r\n <div class=\"flex flex-col pl-4\">\r\n <ion-radio-group alignment=\"start\" [allowEmptySelection]=\"false\" [value]=\"Theme\" (ionChange)=\"SetTheme($event.detail.value)\">\r\n <ion-item class=\"bg-transparent\" lines=\"full\">\r\n <ion-icon name=\"cog\" slot=\"start\"></ion-icon>\r\n <ion-radio class=\"w-full\" [value]=\"0\">Sistema</ion-radio>\r\n </ion-item>\r\n <ion-item class=\"bg-transparent\" lines=\"full\">\r\n <ion-icon name=\"sunny\" slot=\"start\"></ion-icon>\r\n <ion-radio class=\"w-full\" [value]=\"1\">Claro</ion-radio>\r\n </ion-item>\r\n <ion-item class=\"bg-transparent\" lines=\"none\">\r\n <ion-icon name=\"moon\" slot=\"start\"></ion-icon>\r\n <ion-radio class=\"w-full\" [value]=\"2\">Escuro</ion-radio>\r\n </ion-item>\r\n </ion-radio-group>\r\n\r\n\r\n <!-- <div class=\"w-full p-1 translucid-border !border-x-0 !border-b-0 overflow-hidden\">\r\n <div class=\"rounded-xl flex gap-2 items-center justify-start cursor-pointer hover:bg-medium/30 default-transition py-1 px-2\">\r\n <ion-checkbox [checked]=\"Theme == 0\" (ionChange)=\"SetTheme(0)\" ></ion-checkbox>\r\n <ion-icon name=\"cog\"></ion-icon>\r\n <ion-text> Sistema </ion-text>\r\n </div>\r\n </div>\r\n <div class=\"w-full p-1 translucid-border !border-x-0 !border-b-0 overflow-hidden\">\r\n <div class=\"rounded-xl flex gap-2 items-center justify-start cursor-pointer hover:bg-medium/30 default-transition py-1 px-2\">\r\n <ion-checkbox [checked]=\"Theme == 1\" (ionChange)=\"SetTheme(1)\" ></ion-checkbox>\r\n <ion-icon name=\"sunny\"></ion-icon>\r\n <ion-text> Claro </ion-text>\r\n </div>\r\n </div>\r\n <div class=\"w-full p-1 translucid-border !border-x-0 !border-b-0 overflow-hidden\">\r\n <div class=\"rounded-xl flex gap-2 items-center justify-start cursor-pointer hover:bg-medium/30 default-transition py-1 px-2\">\r\n <ion-checkbox [checked]=\"Theme == 2\" (ionChange)=\"SetTheme(2)\" ></ion-checkbox>\r\n <ion-icon name=\"moon\"></ion-icon>\r\n <ion-text> Escuro </ion-text>\r\n </div>\r\n </div> -->\r\n </div>\r\n </div>\r\n\r\n\r\n <div class=\"w-full p-1 translucid-border !border-x-0 !border-b-0\">\r\n <div (click)=\"authService.Loggout()\" class=\"rounded-xl flex gap-2 cursor-pointer items-center justify-start hover:bg-medium/10 default-transition py-1 px-2\">\r\n <ion-icon color=\"danger\" name=\"exit\"></ion-icon>\r\n <ion-text> Log Out </ion-text>\r\n </div>\r\n\r\n <!-- <ion-text> Log Out </ion-text>\r\n <ion-button (click)=\"authService.Loggout()\" class=\"size-8 shrink-0\" size=\"small\" fill=\"clear\" color=\"danger\">\r\n <ion-icon slot=\"icon-only\" name=\"exit-outline\"></ion-icon> \r\n </ion-button> -->\r\n </div>\r\n </div>\r\n\r\n <!-- <div class=\"size-full\">\r\n <div class=\"w-full p-1 flex items-center\">\r\n <div class=\"size-10 shrink-0 aspect-square rounded-2xl text-sm flex items-center justify-center default-transition\" style=\"background-color: var(--ion-color-primary);\">\r\n <span class=\"uppercase text-white\">{{Token ? Token.Nome[0] : ''}}</span>\r\n </div>\r\n <div class=\"grow min-w-10 p-2 justify-center items-center whitespace-nowrap text-ellipsis overflow-hidden block default-transition\" [ngClass]=\"{'opacity-0 w-0': colapsed}\">\r\n <span>{{Token ? Token.Nome : ''}}</span> <br>\r\n <ion-text color=\"secondary\" class=\"text-sm\">\r\n &#64;{{Token ? Token.Apelido : ''}}\r\n </ion-text>\r\n </div>\r\n </div>\r\n <div class=\"w-full\">\r\n <ng-content class=\"size-full\" select=\"[slot=user-popover]\"></ng-content>\r\n </div>\r\n <div class=\"w-full p-1 px-2 translucid-border !border-x-0 !border-b-0 flex items-center justify-between\">\r\n <div class=\"hover:bg-medium/30 default-transition size-full\">\r\n <ion-button color=\"dark\" fill=\"clear\" size=\"small\" class=\"rounded-xl w-full text-left overflow-hidden\">\r\n <ion-icon slot=\"start\" name=\"contrast\"></ion-icon>\r\n <ion-label class=\"text-sm\">Tema</ion-label>\r\n </ion-button>\r\n </div>\r\n </div>\r\n <div class=\"w-full p-1 px-2 translucid-border !border-x-0 !border-b-0 flex items-center justify-between\">\r\n <ion-text> Log Out </ion-text>\r\n <ion-button (click)=\"authService.Loggout()\" class=\"size-8 shrink-0\" size=\"small\" fill=\"clear\" color=\"danger\">\r\n <ion-icon slot=\"icon-only\" name=\"exit-outline\"></ion-icon> \r\n </ion-button>\r\n </div>\r\n </div> -->\r\n </sion-popover>\r\n }\r\n </div>\r\n </ion-card-content>\r\n </ion-card>\r\n </div>\r\n <div class=\"size-full relative p-2 pt-0 bg-light\">\r\n <div class=\"size-full relative rounded-2xl content-shadow overflow-hidden {{backdrop}}\" style=\"--shadow-color: {{shadowColor}}\">\r\n <ng-content></ng-content> \r\n </div>\r\n </div>\r\n</div>", styles: ["#popover-user{--width: 17rem}.content-shadow{--shadow-color: color-mix(in srgb, var(--ion-color-primary) 15%, transparent);box-shadow:0 0 0 1px var(--shadow-color),0 6px 10px -4px var(--shadow-color)}\n"] }]
82
+ }], ctorParameters: () => [{ type: i1.AuthService }], propDecorators: { backdrop: [{
83
+ type: Input
84
+ }], shadowColor: [{
85
+ type: Input
86
+ }], colapsed: [{
87
+ type: Input
88
+ }], drawerComponent: [{
89
+ type: Input
90
+ }], FullScreenConteiner: [{
91
+ type: ViewChild,
92
+ args: ['target']
93
+ }] } });
94
+ var Theme;
95
+ (function (Theme) {
96
+ Theme[Theme["System"] = 0] = "System";
97
+ Theme[Theme["Light"] = 1] = "Light";
98
+ Theme[Theme["Dark"] = 2] = "Dark";
99
+ })(Theme || (Theme = {}));
100
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi1jb250ZW50LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9tYWluLWNvbnRlbnQvbWFpbi1jb250ZW50LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9tYWluLWNvbnRlbnQvbWFpbi1jb250ZW50LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUVyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzFELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOzs7Ozs7QUFTbkUsTUFBTSxPQUFPLG9CQUFvQjtJQVEvQixZQUNTLFdBQXdCO1FBQXhCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBUHhCLGFBQVEsR0FBVyxlQUFlLENBQUM7UUFDbkMsZ0JBQVcsR0FBVywrREFBK0QsQ0FBQztRQUV0RixhQUFRLEdBQVksS0FBSyxDQUFDO1FBa0JuQyxVQUFLLEdBQVUsS0FBSyxDQUFDLE1BQU0sQ0FBQztJQWJ4QixDQUFDO0lBR0wsS0FBSyxDQUFDLFFBQVE7UUFDWixJQUFJLENBQUMsS0FBSyxHQUFHLE1BQU0sSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLEVBQUUsQ0FB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QVcsdXREQUFFLGtCQUFrQixtT0FBRSxpQkFBaUI7OzRGQUtoRSxvQkFBb0I7a0JBUGhDLFNBQVM7aUNBQ0ksSUFBSSxXQUNQLENBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxrQkFBa0IsRUFBRSxpQkFBaUIsQ0FBRSxZQUNuRSxjQUFjO2dGQU1mLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFFRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBNkNlLG1CQUFtQjtzQkFBdkMsU0FBUzt1QkFBQyxRQUFROztBQW9CckIsSUFBSyxLQUlKO0FBSkQsV0FBSyxLQUFLO0lBQ1IscUNBQVUsQ0FBQTtJQUNWLG1DQUFVLENBQUE7SUFDVixpQ0FBVSxDQUFBO0FBQ1osQ0FBQyxFQUpJLEtBQUssS0FBTCxLQUFLLFFBSVQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBJb25pY01vZHVsZSB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyJztcclxuaW1wb3J0IHsgUm91dGVyTGlua1dpdGhIcmVmIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgUHJlZmVyZW5jZXMgfSBmcm9tICdAY2FwYWNpdG9yL3ByZWZlcmVuY2VzJztcclxuXHJcbmltcG9ydCB7IERyYXdlckNvbXBvbmVudCB9IGZyb20gJy4uL2RyYXdlci9kcmF3ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9hdXRoLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTSW9uUG9wb3Zlck1vZHVsZSB9IGZyb20gJy4uL3BvcG92ZXIvc2lvbi1wb3BvdmVyLm1vZHVsZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFsgQ29tbW9uTW9kdWxlLCBJb25pY01vZHVsZSwgUm91dGVyTGlua1dpdGhIcmVmLCBTSW9uUG9wb3Zlck1vZHVsZSBdLFxyXG4gIHNlbGVjdG9yOiAnbWFpbi1jb250ZW50JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vbWFpbi1jb250ZW50LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9tYWluLWNvbnRlbnQuY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIE1haW5Db250ZW50Q29tcG9uZW50ICBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIEBJbnB1dCgpIGJhY2tkcm9wOiBzdHJpbmcgPSAnYmctcHJpbWFyeS8zMCc7XHJcbiAgQElucHV0KCkgc2hhZG93Q29sb3I6IHN0cmluZyA9ICdjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0taW9uLWNvbG9yLXByaW1hcnkpIDE1JSwgdHJhbnNwYXJlbnQpJztcclxuXHJcbiAgQElucHV0KCkgY29sYXBzZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKSBkcmF3ZXJDb21wb25lbnQ6IERyYXdlckNvbXBvbmVudDtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgYXV0aFNlcnZpY2U6IEF1dGhTZXJ2aWNlLFxyXG4gICkgeyB9XHJcblxyXG4gIFRva2VuOiBhbnk7XHJcbiAgYXN5bmMgbmdPbkluaXQoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0aGlzLlRva2VuID0gYXdhaXQgdGhpcy5hdXRoU2VydmljZS5Mb2FkVG9rZW4oKTtcclxuICAgIHRoaXMuVGhlbWUgPSBOdW1iZXIoKGF3YWl0IFByZWZlcmVuY2VzLmdldCh7IGtleTogJ3RoZW1lJyB9KSkudmFsdWUpIGFzIFRoZW1lO1xyXG5cclxuICAgIHRoaXMuU2V0VGhlbWUodGhpcy5UaGVtZSk7XHJcbiAgICB3aW5kb3cubWF0Y2hNZWRpYSgnKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKScpLmFkZEV2ZW50TGlzdGVuZXIoJ2NoYW5nZScsIChlKSA9PiB7XHJcbiAgICAgIHRoaXMuU2V0VGhlbWUodGhpcy5UaGVtZSk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIFRoZW1lOiBUaGVtZSA9IFRoZW1lLlN5c3RlbTtcclxuICBhc3luYyBTZXRUaGVtZSh0aGVtZTogVGhlbWUpIHtcclxuICAgIHRoaXMuVGhlbWUgPSB0aGVtZTtcclxuICAgIGF3YWl0IFByZWZlcmVuY2VzLnNldCh7IGtleTogJ3RoZW1lJywgdmFsdWU6IHRoaXMuVGhlbWUudG9TdHJpbmcoKSB9KTtcclxuICAgIGlmICh0aGlzLlRoZW1lID09PSBUaGVtZS5TeXN0ZW0pIHtcclxuICAgICAgdmFyIG1hdGNoZXMgPSB3aW5kb3cubWF0Y2hNZWRpYSgnKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKScpLm1hdGNoZXM7XHJcbiAgICAgIGlmIChtYXRjaGVzKSB7XHJcbiAgICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QuYWRkKCdkYXJrJyk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QucmVtb3ZlKCdkYXJrJyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGVsc2UgXHJcbiAgICBpZiAodGhpcy5UaGVtZSA9PT0gVGhlbWUuTGlnaHQpIHtcclxuICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QucmVtb3ZlKCdkYXJrJyk7XHJcbiAgICB9IGVsc2UgXHJcbiAgICBpZiAodGhpcy5UaGVtZSA9PT0gVGhlbWUuRGFyaykge1xyXG4gICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5hZGQoJ2RhcmsnKTsgXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXQgZnVsbFNjcmVlbigpOiBib29sZWFuIHsgXHJcbiAgICBpZihkb2N1bWVudC5mdWxsc2NyZWVuRWxlbWVudCAhPSBudWxsKXtcclxuICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gZmFsc2U7IFxyXG4gIH07XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ3RhcmdldCcpIEZ1bGxTY3JlZW5Db250ZWluZXI7XHJcbiAgRnVsbFNjcmVlbigpOiB2b2lke1xyXG4gICAgaWYoIXRoaXMuZnVsbFNjcmVlbil7XHJcbiAgICAgIGNvbnN0IGVsZW0gPSB0aGlzLkZ1bGxTY3JlZW5Db250ZWluZXIubmF0aXZlRWxlbWVudDtcclxuICBcclxuICAgICAgaWYgKGVsZW0ucmVxdWVzdEZ1bGxzY3JlZW4pIHtcclxuICAgICAgICBlbGVtLnJlcXVlc3RGdWxsc2NyZWVuKCk7XHJcbiAgICAgIH0gZWxzZSBpZiAoZWxlbS5tc1JlcXVlc3RGdWxsc2NyZWVuKSB7XHJcbiAgICAgICAgZWxlbS5tc1JlcXVlc3RGdWxsc2NyZWVuKCk7XHJcbiAgICAgIH0gZWxzZSBpZiAoZWxlbS5tb3pSZXF1ZXN0RnVsbFNjcmVlbikge1xyXG4gICAgICAgIGVsZW0ubW96UmVxdWVzdEZ1bGxTY3JlZW4oKTtcclxuICAgICAgfSBlbHNlIGlmIChlbGVtLndlYmtpdFJlcXVlc3RGdWxsc2NyZWVuKSB7XHJcbiAgICAgICAgZWxlbS53ZWJraXRSZXF1ZXN0RnVsbHNjcmVlbigpO1xyXG4gICAgICB9XHJcbiAgICB9ZWxzZXtcclxuICAgICAgZG9jdW1lbnQuZXhpdEZ1bGxzY3JlZW4oKVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuZW51bSBUaGVtZSB7XHJcbiAgU3lzdGVtID0gMCxcclxuICBMaWdodCAgPSAxLFxyXG4gIERhcmsgICA9IDIsXHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInNpemUtZnVsbCBmbGV4IGZsZXgtY29sXCIgW25nQ2xhc3NdPVwieydiZy1saWdodC81MCc6IGZ1bGxTY3JlZW59XCIgI3RhcmdldD5cclxuICA8ZGl2IGNsYXNzPVwidy1mdWxsIGgtMTQgcmVsYXRpdmUgc2hyaW5rLTBcIj5cclxuICAgIDxpb24tY2FyZCBjbGFzcz1cIm0tMCByb3VuZGVkLW5vbmUgc2l6ZS1mdWxsIGJvcmRlci1ub25lXCI+XHJcbiAgICAgIDxpb24tY2FyZC1jb250ZW50IGNsYXNzPVwicC0wIHB4LTIgc2l6ZS1mdWxsIGZsZXhcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidy0xLzIgaC1mdWxsIGZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktc3RhcnRcIj5cclxuICAgICAgICAgIEBpZiAoIWZ1bGxTY3JlZW4pIHtcclxuICAgICAgICAgICAgPGlvbi1tZW51LWJ1dHRvbiAgW3JvdXRlckxpbmtdPVwiWycvJ11cIiBbYXV0b0hpZGVdPVwidHJ1ZVwiPjwvaW9uLW1lbnUtYnV0dG9uPlxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW3Nsb3Q9c3RhcnRdXCI+PC9uZy1jb250ZW50PlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidy0xLzIgaC1mdWxsIGZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktZW5kIGdhcC0yXCI+XHJcbiAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbc2xvdD1lbmRdXCI+PC9uZy1jb250ZW50PlxyXG5cclxuICAgICAgICAgIDxpb24tYnV0dG9uIChjbGljayk9XCJGdWxsU2NyZWVuKClcIiBmaWxsPVwib3V0bGluZVwiIGNvbG9yPVwiZGFya1wiIHNpemU9XCJzbWFsbFwiIGNsYXNzPVwic2l6ZS0xMCBhc3BlY3Qtc3F1YXJlICBwb3J0cmFpdDpoaWRkZW5cIj5cclxuICAgICAgICAgICAgPGlvbi1pY29uIHNsb3Q9XCJpY29uLW9ubHlcIiBuYW1lPVwiZXhwYW5kXCI+PC9pb24taWNvbj5cclxuICAgICAgICAgIDwvaW9uLWJ1dHRvbj5cclxuXHJcblxyXG4gICAgICAgICAgQGlmICghZnVsbFNjcmVlbikge1xyXG4gICAgICAgICAgICA8ZGl2ICNhbmNob3I+XHJcbiAgICAgICAgICAgICAgPGlvbi1idXR0b24gKGNsaWNrKT1cInVzZXJQb3BvdmVyLnByZXNlbnQoJGV2ZW50KVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzPVwic2l6ZS0xMCBhc3BlY3Qtc3F1YXJlXCI+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInVwcGVyY2FzZSB0ZXh0LXdoaXRlXCI+e3tUb2tlbiA/IFRva2VuLk5vbWVbMF0gOiAnJ319PC9zcGFuPlxyXG4gICAgICAgICAgICAgIDwvaW9uLWJ1dHRvbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxzaW9uLXBvcG92ZXIgI3VzZXJQb3BvdmVyIFthbmNob3JdPVwiYW5jaG9yXCIgW2ZsaXBdPVwiZmFsc2VcIiB3aWR0aD1cIjEzcmVtXCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInctZnVsbCBmbGV4IGZsZXgtY29sIG92ZXJmbG93LWhpZGRlblwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInctZnVsbCBmbGV4IHAtMiBnYXAtMiBvdmVyZmxvdy1oaWRkZW5cIj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNpemUtMTAgc2hyaW5rLTAgYXNwZWN0LXNxdWFyZSByb3VuZGVkLTJ4bCB0ZXh0LXNtIGZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIGJnLXByaW1hcnlcIj5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInVwcGVyY2FzZSB0ZXh0LXdoaXRlXCI+e3tUb2tlbiA/IFRva2VuLk5vbWVbMF0gOiAnJ319PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaHJpbmstMCB3LWZ1bGwgZmxleCBmbGV4LWNvbCBqdXN0aWZ5LWNlbnRlciBpdGVtcy1zdGFydCBvdmVyZmxvdy1oaWRkZW4gdGV4dC1zbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidHJ1bmNhdGVcIj4ge3tUb2tlbiA/IFRva2VuLk5vbWUgOiAnJ319IDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRydW5jYXRlIHRleHQtc2Vjb25kYXJ5XCI+ICYjNjQ7e3tUb2tlbiA/IFRva2VuLkFwZWxpZG8gOiAnJ319IDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidy1mdWxsXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxuZy1jb250ZW50IGNsYXNzPVwic2l6ZS1mdWxsXCIgc2VsZWN0PVwiW3Nsb3Q9dXNlci1wb3BvdmVyXVwiPjwvbmctY29udGVudD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3LWZ1bGwgcC0xICFwYi0wIHRyYW5zbHVjaWQtYm9yZGVyICFib3JkZXIteC0wICFib3JkZXItYi0wXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3VuZGVkLXhsIGZsZXggZ2FwLTIgaXRlbXMtY2VudGVyIGp1c3RpZnktc3RhcnQgZGVmYXVsdC10cmFuc2l0aW9uIHB5LTEgcHgtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpb24taWNvbiBuYW1lPVwiY29udHJhc3RcIj48L2lvbi1pY29uPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpb24tdGV4dD4gVGVtYSA8L2lvbi10ZXh0PlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIHBsLTRcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aW9uLXJhZGlvLWdyb3VwIGFsaWdubWVudD1cInN0YXJ0XCIgW2FsbG93RW1wdHlTZWxlY3Rpb25dPVwiZmFsc2VcIiBbdmFsdWVdPVwiVGhlbWVcIiAoaW9uQ2hhbmdlKT1cIlNldFRoZW1lKCRldmVudC5kZXRhaWwudmFsdWUpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8aW9uLWl0ZW0gY2xhc3M9XCJiZy10cmFuc3BhcmVudFwiIGxpbmVzPVwiZnVsbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW9uLWljb24gbmFtZT1cImNvZ1wiIHNsb3Q9XCJzdGFydFwiPjwvaW9uLWljb24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpb24tcmFkaW8gY2xhc3M9XCJ3LWZ1bGxcIiBbdmFsdWVdPVwiMFwiPlNpc3RlbWE8L2lvbi1yYWRpbz5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvaW9uLWl0ZW0+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8aW9uLWl0ZW0gY2xhc3M9XCJiZy10cmFuc3BhcmVudFwiIGxpbmVzPVwiZnVsbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW9uLWljb24gbmFtZT1cInN1bm55XCIgc2xvdD1cInN0YXJ0XCI+PC9pb24taWNvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlvbi1yYWRpbyBjbGFzcz1cInctZnVsbFwiIFt2YWx1ZV09XCIxXCI+Q2xhcm88L2lvbi1yYWRpbz5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvaW9uLWl0ZW0+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8aW9uLWl0ZW0gY2xhc3M9XCJiZy10cmFuc3BhcmVudFwiIGxpbmVzPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW9uLWljb24gbmFtZT1cIm1vb25cIiBzbG90PVwic3RhcnRcIj48L2lvbi1pY29uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW9uLXJhZGlvIGNsYXNzPVwidy1mdWxsXCIgW3ZhbHVlXT1cIjJcIj5Fc2N1cm88L2lvbi1yYWRpbz5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvaW9uLWl0ZW0+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9pb24tcmFkaW8tZ3JvdXA+XHJcblxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8IS0tIDxkaXYgY2xhc3M9XCJ3LWZ1bGwgcC0xIHRyYW5zbHVjaWQtYm9yZGVyICFib3JkZXIteC0wICFib3JkZXItYi0wIG92ZXJmbG93LWhpZGRlblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdW5kZWQteGwgZmxleCBnYXAtMiBpdGVtcy1jZW50ZXIganVzdGlmeS1zdGFydCBjdXJzb3ItcG9pbnRlciBob3ZlcjpiZy1tZWRpdW0vMzAgZGVmYXVsdC10cmFuc2l0aW9uIHB5LTEgcHgtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW9uLWNoZWNrYm94IFtjaGVja2VkXT1cIlRoZW1lID09IDBcIiAoaW9uQ2hhbmdlKT1cIlNldFRoZW1lKDApXCIgPjwvaW9uLWNoZWNrYm94PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW9uLWljb24gbmFtZT1cImNvZ1wiPjwvaW9uLWljb24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpb24tdGV4dD4gU2lzdGVtYSA8L2lvbi10ZXh0PlxyXG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInctZnVsbCBwLTEgdHJhbnNsdWNpZC1ib3JkZXIgIWJvcmRlci14LTAgIWJvcmRlci1iLTAgb3ZlcmZsb3ctaGlkZGVuXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm91bmRlZC14bCBmbGV4IGdhcC0yIGl0ZW1zLWNlbnRlciBqdXN0aWZ5LXN0YXJ0IGN1cnNvci1wb2ludGVyIGhvdmVyOmJnLW1lZGl1bS8zMCBkZWZhdWx0LXRyYW5zaXRpb24gcHktMSBweC0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpb24tY2hlY2tib3ggW2NoZWNrZWRdPVwiVGhlbWUgPT0gMVwiIChpb25DaGFuZ2UpPVwiU2V0VGhlbWUoMSlcIiA+PC9pb24tY2hlY2tib3g+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpb24taWNvbiBuYW1lPVwic3VubnlcIj48L2lvbi1pY29uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW9uLXRleHQ+IENsYXJvIDwvaW9uLXRleHQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidy1mdWxsIHAtMSB0cmFuc2x1Y2lkLWJvcmRlciAhYm9yZGVyLXgtMCAhYm9yZGVyLWItMCBvdmVyZmxvdy1oaWRkZW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3VuZGVkLXhsIGZsZXggZ2FwLTIgaXRlbXMtY2VudGVyIGp1c3RpZnktc3RhcnQgY3Vyc29yLXBvaW50ZXIgaG92ZXI6YmctbWVkaXVtLzMwIGRlZmF1bHQtdHJhbnNpdGlvbiBweS0xIHB4LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlvbi1jaGVja2JveCBbY2hlY2tlZF09XCJUaGVtZSA9PSAyXCIgKGlvbkNoYW5nZSk9XCJTZXRUaGVtZSgyKVwiID48L2lvbi1jaGVja2JveD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlvbi1pY29uIG5hbWU9XCJtb29uXCI+PC9pb24taWNvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlvbi10ZXh0PiBFc2N1cm8gPC9pb24tdGV4dD5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PiAtLT5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcblxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInctZnVsbCBwLTEgdHJhbnNsdWNpZC1ib3JkZXIgIWJvcmRlci14LTAgIWJvcmRlci1iLTBcIj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiAoY2xpY2spPVwiYXV0aFNlcnZpY2UuTG9nZ291dCgpXCIgY2xhc3M9XCJyb3VuZGVkLXhsIGZsZXggZ2FwLTIgY3Vyc29yLXBvaW50ZXIgaXRlbXMtY2VudGVyIGp1c3RpZnktc3RhcnQgaG92ZXI6YmctbWVkaXVtLzEwIGRlZmF1bHQtdHJhbnNpdGlvbiBweS0xIHB4LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aW9uLWljb24gY29sb3I9XCJkYW5nZXJcIiBuYW1lPVwiZXhpdFwiPjwvaW9uLWljb24+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlvbi10ZXh0PiBMb2cgT3V0IDwvaW9uLXRleHQ+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgPCEtLSA8aW9uLXRleHQ+IExvZyBPdXQgPC9pb24tdGV4dD5cclxuICAgICAgICAgICAgICAgICAgPGlvbi1idXR0b24gKGNsaWNrKT1cImF1dGhTZXJ2aWNlLkxvZ2dvdXQoKVwiIGNsYXNzPVwic2l6ZS04IHNocmluay0wXCIgc2l6ZT1cInNtYWxsXCIgZmlsbD1cImNsZWFyXCIgY29sb3I9XCJkYW5nZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aW9uLWljb24gc2xvdD1cImljb24tb25seVwiIG5hbWU9XCJleGl0LW91dGxpbmVcIj48L2lvbi1pY29uPiBcclxuICAgICAgICAgICAgICAgICAgPC9pb24tYnV0dG9uPiAtLT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICA8IS0tIDxkaXYgY2xhc3M9XCJzaXplLWZ1bGxcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3LWZ1bGwgcC0xIGZsZXggaXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaXplLTEwIHNocmluay0wIGFzcGVjdC1zcXVhcmUgcm91bmRlZC0yeGwgdGV4dC1zbSBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciBkZWZhdWx0LXRyYW5zaXRpb25cIiBzdHlsZT1cImJhY2tncm91bmQtY29sb3I6IHZhcigtLWlvbi1jb2xvci1wcmltYXJ5KTtcIj5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInVwcGVyY2FzZSB0ZXh0LXdoaXRlXCI+e3tUb2tlbiA/IFRva2VuLk5vbWVbMF0gOiAnJ319PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImdyb3cgbWluLXctMTAgcC0yIGp1c3RpZnktY2VudGVyIGl0ZW1zLWNlbnRlciB3aGl0ZXNwYWNlLW5vd3JhcCB0ZXh0LWVsbGlwc2lzIG92ZXJmbG93LWhpZGRlbiBibG9jayBkZWZhdWx0LXRyYW5zaXRpb25cIiBbbmdDbGFzc109XCJ7J29wYWNpdHktMCB3LTAnOiBjb2xhcHNlZH1cIj5cclxuICAgICAgICAgICAgICAgICAgICA8c3Bhbj57e1Rva2VuID8gVG9rZW4uTm9tZSA6ICcnfX08L3NwYW4+IDxicj5cclxuICAgICAgICAgICAgICAgICAgICA8aW9uLXRleHQgY29sb3I9XCJzZWNvbmRhcnlcIiBjbGFzcz1cInRleHQtc21cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICYjNjQ7e3tUb2tlbiA/IFRva2VuLkFwZWxpZG8gOiAnJ319XHJcbiAgICAgICAgICAgICAgICAgICAgPC9pb24tdGV4dD5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3LWZ1bGxcIj5cclxuICAgICAgICAgICAgICAgICAgPG5nLWNvbnRlbnQgY2xhc3M9XCJzaXplLWZ1bGxcIiBzZWxlY3Q9XCJbc2xvdD11c2VyLXBvcG92ZXJdXCI+PC9uZy1jb250ZW50PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidy1mdWxsIHAtMSBweC0yIHRyYW5zbHVjaWQtYm9yZGVyICFib3JkZXIteC0wICFib3JkZXItYi0wIGZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktYmV0d2VlblwiPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaG92ZXI6YmctbWVkaXVtLzMwIGRlZmF1bHQtdHJhbnNpdGlvbiBzaXplLWZ1bGxcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aW9uLWJ1dHRvbiBjb2xvcj1cImRhcmtcIiBmaWxsPVwiY2xlYXJcIiBzaXplPVwic21hbGxcIiBjbGFzcz1cInJvdW5kZWQteGwgdy1mdWxsIHRleHQtbGVmdCBvdmVyZmxvdy1oaWRkZW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxpb24taWNvbiBzbG90PVwic3RhcnRcIiBuYW1lPVwiY29udHJhc3RcIj48L2lvbi1pY29uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGlvbi1sYWJlbCBjbGFzcz1cInRleHQtc21cIj5UZW1hPC9pb24tbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9pb24tYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInctZnVsbCBwLTEgcHgtMiB0cmFuc2x1Y2lkLWJvcmRlciAhYm9yZGVyLXgtMCAhYm9yZGVyLWItMCBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW5cIj5cclxuICAgICAgICAgICAgICAgICAgPGlvbi10ZXh0PiBMb2cgT3V0IDwvaW9uLXRleHQ+XHJcbiAgICAgICAgICAgICAgICAgIDxpb24tYnV0dG9uIChjbGljayk9XCJhdXRoU2VydmljZS5Mb2dnb3V0KClcIiBjbGFzcz1cInNpemUtOCBzaHJpbmstMFwiIHNpemU9XCJzbWFsbFwiIGZpbGw9XCJjbGVhclwiIGNvbG9yPVwiZGFuZ2VyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlvbi1pY29uIHNsb3Q9XCJpY29uLW9ubHlcIiBuYW1lPVwiZXhpdC1vdXRsaW5lXCI+PC9pb24taWNvbj4gXHJcbiAgICAgICAgICAgICAgICAgIDwvaW9uLWJ1dHRvbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PiAtLT5cclxuICAgICAgICAgICAgPC9zaW9uLXBvcG92ZXI+XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvaW9uLWNhcmQtY29udGVudD5cclxuICAgIDwvaW9uLWNhcmQ+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBjbGFzcz1cInNpemUtZnVsbCByZWxhdGl2ZSBwLTIgcHQtMCBiZy1saWdodFwiPlxyXG4gICAgPGRpdiBjbGFzcz1cInNpemUtZnVsbCByZWxhdGl2ZSByb3VuZGVkLTJ4bCBjb250ZW50LXNoYWRvdyBvdmVyZmxvdy1oaWRkZW4ge3tiYWNrZHJvcH19XCIgc3R5bGU9XCItLXNoYWRvdy1jb2xvcjoge3tzaGFkb3dDb2xvcn19XCI+XHJcbiAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD4gXHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9kaXY+Il19
@@ -0,0 +1,182 @@
1
+ import { Component, ElementRef, EventEmitter, Input, NgZone, Output, ViewChild } from '@angular/core';
2
+ import { autoUpdate, computePosition, flip, limitShift, offset, shift, arrow } from '@floating-ui/dom';
3
+ import { Timeout } from '../../../services/utils.service';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common";
6
+ export class SIonPopoverComponent {
7
+ constructor(ngZone) {
8
+ this.ngZone = ngZone;
9
+ this.fill = 'blur';
10
+ this.arrow = true;
11
+ this.flip = true;
12
+ this.placement = 'bottom';
13
+ this.height = 'auto';
14
+ this.width = 'auto';
15
+ this.onWillPresent = new EventEmitter();
16
+ this.onDidPresent = new EventEmitter();
17
+ this.onWillDismiss = new EventEmitter();
18
+ this.onDidDismiss = new EventEmitter();
19
+ this.anchor = undefined;
20
+ this.state = POPOVER_STATE.IDLE;
21
+ }
22
+ ngAfterViewInit() {
23
+ //TODO: Use Renderer2 to add event listeners for better Angular compatibility when updating to Angular 19
24
+ this.ngZone.runOutsideAngular(() => {
25
+ this.documentClickListener = (event) => {
26
+ // Run back inside Angular's zone when handling the event
27
+ this.ngZone.run(() => {
28
+ if (!this._instance) {
29
+ return;
30
+ }
31
+ if (!this._instance.contains(event.target) &&
32
+ !this.anchor.contains(event.target)) {
33
+ this.dismiss();
34
+ }
35
+ });
36
+ };
37
+ // Use the native DOM API directly with capture phase
38
+ document.addEventListener('click', this.documentClickListener, true);
39
+ });
40
+ }
41
+ get _instance() {
42
+ return this.contentContainer?.nativeElement;
43
+ }
44
+ get arrowEl() {
45
+ return this._instance.querySelector('.popover-arrow');
46
+ }
47
+ async present(event) {
48
+ if (this.state != POPOVER_STATE.IDLE) {
49
+ return;
50
+ }
51
+ document.body.appendChild(this._instance);
52
+ this.onWillPresent.emit();
53
+ this.state = POPOVER_STATE.PRESENTING;
54
+ const refEl = this.anchor ? this.anchor : event.target;
55
+ const arrowEl = this.arrowEl;
56
+ await this.update(refEl, arrowEl);
57
+ this._instance.classList.add('show');
58
+ this.cleanupAutoUpdate = autoUpdate(refEl, this._instance, async () => this.update(refEl, arrowEl));
59
+ this.state = POPOVER_STATE.VISIBLE;
60
+ this.onDidPresent.emit();
61
+ }
62
+ async update(refEl, arrowEl) {
63
+ const computePositionReturn = await this.GetComputePositionReturn(refEl, this._instance, arrowEl);
64
+ this.HandleComputePositionReturn(computePositionReturn, arrowEl);
65
+ }
66
+ async dismiss() {
67
+ if (this.state == POPOVER_STATE.IDLE) {
68
+ return;
69
+ }
70
+ if (this.cleanupAutoUpdate) {
71
+ this.cleanupAutoUpdate();
72
+ this.cleanupAutoUpdate = undefined;
73
+ }
74
+ this.onWillDismiss.emit();
75
+ this.state = POPOVER_STATE.DISMISSING;
76
+ this._instance.classList.remove('show');
77
+ await Timeout(200);
78
+ this._instance?.remove();
79
+ this.state = POPOVER_STATE.IDLE;
80
+ this.onDidDismiss.emit();
81
+ }
82
+ HandleComputePositionReturn(computePositionReturn, arrowEl) {
83
+ Object.assign(this._instance.style, {
84
+ left: `${computePositionReturn.x}px`,
85
+ top: `${computePositionReturn.y}px`,
86
+ width: this.width,
87
+ height: this.height,
88
+ position: 'absolute',
89
+ });
90
+ if (computePositionReturn.middlewareData.arrow) {
91
+ const { x: arrowX, y: arrowY } = computePositionReturn.middlewareData.arrow;
92
+ const position = computePositionReturn.placement.split('-')[0];
93
+ const staticSide = STATIC_SIDES[position];
94
+ Object.assign(arrowEl.style, {
95
+ left: arrowX != null ? `${arrowX}px` : '',
96
+ top: arrowY != null ? `${arrowY}px` : '',
97
+ right: '',
98
+ bottom: '',
99
+ [staticSide]: `-7px`,
100
+ });
101
+ arrowEl.style.setProperty(`--rotation`, ROTATIONS[position]);
102
+ }
103
+ }
104
+ ngOnDestroy() {
105
+ if (this._instance) {
106
+ this._instance?.remove();
107
+ }
108
+ if (this._embeddedView) {
109
+ this._embeddedView.destroy();
110
+ this._embeddedView = undefined;
111
+ }
112
+ if (this.documentClickListener) {
113
+ document.removeEventListener('click', this.documentClickListener, true);
114
+ }
115
+ if (this.viewRef) {
116
+ this.viewRef.destroy();
117
+ this.viewRef = undefined;
118
+ }
119
+ }
120
+ async GetComputePositionReturn(refEl, popEl, arrowEl) {
121
+ return await computePosition(refEl, popEl, {
122
+ placement: this.placement,
123
+ middleware: [
124
+ offset(10),
125
+ this.flip ? flip({ crossAxis: false }) : undefined,
126
+ shift({ limiter: limitShift(), padding: 5 }),
127
+ this.arrow ? arrow({ element: arrowEl, padding: 10 }) : undefined,
128
+ ].filter(p => p),
129
+ });
130
+ }
131
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SIonPopoverComponent, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
132
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: SIonPopoverComponent, selector: "sion-popover", inputs: { fill: "fill", arrow: "arrow", flip: "flip", placement: "placement", height: "height", width: "width", anchor: "anchor" }, outputs: { onWillPresent: "onWillPresent", onDidPresent: "onDidPresent", onWillDismiss: "onWillDismiss", onDidDismiss: "onDidDismiss" }, viewQueries: [{ propertyName: "contentContainer", first: true, predicate: ["popoverWrapper"], descendants: true, read: ElementRef }], ngImport: i0, template: "<div #popoverWrapper \r\n class=\"popover-wrapper translucid-border\"\r\n [style.height]=\"height\"\r\n [style.width]=\"width\"\r\n [ngClass]=\"{\r\n 'bg-light' : fill == 'solid',\r\n 'bg-transparent' : fill == 'outline',\r\n 'bg-light/90' : fill == 'blur',\r\n '!border-0' : fill == 'clear',\r\n }\"\r\n> \r\n <div #popoverArrow class=\"popover-arrow size-4 translucid-border\"\r\n [ngClass]=\"{\r\n 'bg-light' : fill == 'solid',\r\n 'bg-transparent' : fill == 'outline',\r\n 'bg-light/90' : fill == 'blur',\r\n '!border-0' : fill == 'clear',\r\n }\"\r\n ></div>\r\n <ng-content #content></ng-content>\r\n</div>", styles: [".popover-wrapper{border-radius:.75rem;width:max-content;position:fixed;will-change:left,top,bottom,right,auto,opacity,filter;opacity:0;transition:opacity .15s ease-in-out,transform .15s ease-in-out,filter .15s ease-in-out;min-width:2rem;min-height:2rem;filter:grayscale(.9);transform:scale(.95);pointer-events:auto!important;z-index:10001!important}.popover-arrow{border-radius:.125rem;position:absolute;transform:scale(1) rotate(var(--rotation))!important;clip-path:var(--clip-path-triangle, polygon(0% 0%, 0% 100%, 100% 100%))}.show{filter:grayscale(0);transform:scale(1);opacity:1}.popover-wrapper:not(.show){pointer-events:none!important}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] }); }
133
+ }
134
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SIonPopoverComponent, decorators: [{
135
+ type: Component,
136
+ args: [{ selector: 'sion-popover', template: "<div #popoverWrapper \r\n class=\"popover-wrapper translucid-border\"\r\n [style.height]=\"height\"\r\n [style.width]=\"width\"\r\n [ngClass]=\"{\r\n 'bg-light' : fill == 'solid',\r\n 'bg-transparent' : fill == 'outline',\r\n 'bg-light/90' : fill == 'blur',\r\n '!border-0' : fill == 'clear',\r\n }\"\r\n> \r\n <div #popoverArrow class=\"popover-arrow size-4 translucid-border\"\r\n [ngClass]=\"{\r\n 'bg-light' : fill == 'solid',\r\n 'bg-transparent' : fill == 'outline',\r\n 'bg-light/90' : fill == 'blur',\r\n '!border-0' : fill == 'clear',\r\n }\"\r\n ></div>\r\n <ng-content #content></ng-content>\r\n</div>", styles: [".popover-wrapper{border-radius:.75rem;width:max-content;position:fixed;will-change:left,top,bottom,right,auto,opacity,filter;opacity:0;transition:opacity .15s ease-in-out,transform .15s ease-in-out,filter .15s ease-in-out;min-width:2rem;min-height:2rem;filter:grayscale(.9);transform:scale(.95);pointer-events:auto!important;z-index:10001!important}.popover-arrow{border-radius:.125rem;position:absolute;transform:scale(1) rotate(var(--rotation))!important;clip-path:var(--clip-path-triangle, polygon(0% 0%, 0% 100%, 100% 100%))}.show{filter:grayscale(0);transform:scale(1);opacity:1}.popover-wrapper:not(.show){pointer-events:none!important}\n"] }]
137
+ }], ctorParameters: () => [{ type: i0.NgZone }], propDecorators: { fill: [{
138
+ type: Input
139
+ }], arrow: [{
140
+ type: Input
141
+ }], flip: [{
142
+ type: Input
143
+ }], placement: [{
144
+ type: Input
145
+ }], height: [{
146
+ type: Input
147
+ }], width: [{
148
+ type: Input
149
+ }], onWillPresent: [{
150
+ type: Output
151
+ }], onDidPresent: [{
152
+ type: Output
153
+ }], onWillDismiss: [{
154
+ type: Output
155
+ }], onDidDismiss: [{
156
+ type: Output
157
+ }], anchor: [{
158
+ type: Input
159
+ }], contentContainer: [{
160
+ type: ViewChild,
161
+ args: ['popoverWrapper', { read: ElementRef }]
162
+ }] } });
163
+ var POPOVER_STATE;
164
+ (function (POPOVER_STATE) {
165
+ POPOVER_STATE[POPOVER_STATE["IDLE"] = 1] = "IDLE";
166
+ POPOVER_STATE[POPOVER_STATE["PRESENTING"] = 2] = "PRESENTING";
167
+ POPOVER_STATE[POPOVER_STATE["DISMISSING"] = 3] = "DISMISSING";
168
+ POPOVER_STATE[POPOVER_STATE["VISIBLE"] = 4] = "VISIBLE";
169
+ })(POPOVER_STATE || (POPOVER_STATE = {}));
170
+ const STATIC_SIDES = {
171
+ top: "bottom",
172
+ right: "left",
173
+ bottom: "top",
174
+ left: "right"
175
+ };
176
+ const ROTATIONS = {
177
+ bottom: "135deg",
178
+ top: "315deg",
179
+ left: "225deg",
180
+ right: "45deg",
181
+ };
182
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lvbi1wb3BvdmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9wb3BvdmVyL3Npb24tcG9wb3Zlci9zaW9uLXBvcG92ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL3BvcG92ZXIvc2lvbi1wb3BvdmVyL3Npb24tcG9wb3Zlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxVQUFVLEVBQW1CLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFxQixNQUFNLEVBQWUsU0FBUyxFQUE2QixNQUFNLGVBQWUsQ0FBQztBQUNqTSxPQUFPLEVBQUUsVUFBVSxFQUFFLGVBQWUsRUFBeUIsSUFBSSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQWEsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3pJLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7O0FBUzFELE1BQU0sT0FBTyxvQkFBb0I7SUFvQi9CLFlBQ1UsTUFBYztRQUFkLFdBQU0sR0FBTixNQUFNLENBQVE7UUFuQmYsU0FBSSxHQUFTLE1BQU0sQ0FBQztRQUNwQixVQUFLLEdBQVksSUFBSSxDQUFDO1FBQ3RCLFNBQUksR0FBYSxJQUFJLENBQUM7UUFHdEIsY0FBUyxHQUFjLFFBQVEsQ0FBQztRQUNoQyxXQUFNLEdBQVcsTUFBTSxDQUFDO1FBQ3hCLFVBQUssR0FBVyxNQUFNLENBQUM7UUFHdEIsa0JBQWEsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUM3RCxpQkFBWSxHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBRTVELGtCQUFhLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7UUFDN0QsaUJBQVksR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztR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QUFNO2dCQUNHLFlBQVk7c0JBQXJCLE1BQU07Z0JBRUcsYUFBYTtzQkFBdEIsTUFBTTtnQkFDRyxZQUFZO3NCQUFyQixNQUFNO2dCQUVFLE1BQU07c0JBQWQsS0FBSztnQkFNOEMsZ0JBQWdCO3NCQUFuRSxTQUFTO3VCQUFDLGdCQUFnQixFQUFHLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRTs7QUFpSXBELElBQUssYUFLSjtBQUxELFdBQUssYUFBYTtJQUNoQixpREFBYyxDQUFBO0lBQ2QsNkRBQWMsQ0FBQTtJQUNkLDZEQUFjLENBQUE7SUFDZCx1REFBYyxDQUFBO0FBQ2hCLENBQUMsRUFMSSxhQUFhLEtBQWIsYUFBYSxRQUtqQjtBQUNELE1BQU0sWUFBWSxHQUFHO0lBQ25CLEdBQUcsRUFBRSxRQUFRO0lBQ2IsS0FBSyxFQUFFLE1BQU07SUFDYixNQUFNLEVBQUUsS0FBSztJQUNiLElBQUksRUFBRSxPQUFPO0NBQ2QsQ0FBQztBQUNGLE1BQU0sU0FBUyxHQUFHO0lBQ2hCLE1BQU0sRUFBRSxRQUFRO0lBQ2hCLEdBQUcsRUFBRSxRQUFRO0lBQ2IsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVBQUUsT0FBTztDQUNmLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEVtYmVkZGVkVmlld1JlZiwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgTmdab25lLCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0LCBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkLCBWaWV3Q29udGFpbmVyUmVmLCBWaWV3UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IGF1dG9VcGRhdGUsIGNvbXB1dGVQb3NpdGlvbiwgQ29tcHV0ZVBvc2l0aW9uUmV0dXJuLCBmbGlwLCBsaW1pdFNoaWZ0LCBvZmZzZXQsIFBsYWNlbWVudCwgc2hpZnQsIGFycm93IH0gZnJvbSAnQGZsb2F0aW5nLXVpL2RvbSc7XHJcbmltcG9ydCB7IFRpbWVvdXQgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy91dGlscy5zZXJ2aWNlJztcclxuXHJcbnR5cGUgRmlsbCA9ICdzb2xpZCcgfCAnb3V0bGluZScgfCAnYmx1cicgfCAnY2xlYXInO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzaW9uLXBvcG92ZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zaW9uLXBvcG92ZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3Npb24tcG9wb3Zlci5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU0lvblBvcG92ZXJDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xyXG5cclxuICBASW5wdXQoKSBmaWxsOiBGaWxsID0gJ2JsdXInO1xyXG4gIEBJbnB1dCgpIGFycm93OiBib29sZWFuID0gdHJ1ZTtcclxuICBASW5wdXQoKSBmbGlwIDogYm9vbGVhbiA9IHRydWU7XHJcblxyXG5cclxuICBASW5wdXQoKSBwbGFjZW1lbnQ6IFBsYWNlbWVudCA9ICdib3R0b20nO1xyXG4gIEBJbnB1dCgpIGhlaWdodDogc3RyaW5nID0gJ2F1dG8nO1xyXG4gIEBJbnB1dCgpIHdpZHRoOiBzdHJpbmcgPSAnYXV0byc7XHJcblxyXG5cclxuICBAT3V0cHV0KCkgb25XaWxsUHJlc2VudDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG4gIEBPdXRwdXQoKSBvbkRpZFByZXNlbnQ6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuXHJcbiAgQE91dHB1dCgpIG9uV2lsbERpc21pc3M6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuICBAT3V0cHV0KCkgb25EaWREaXNtaXNzOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gIEBJbnB1dCgpIGFuY2hvcjogSFRNTEVsZW1lbnQgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBuZ1pvbmU6IE5nWm9uZVxyXG4gICkgeyB9XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ3BvcG92ZXJXcmFwcGVyJyAsIHsgcmVhZDogRWxlbWVudFJlZiB9KSBjb250ZW50Q29udGFpbmVyOiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcclxuICBcclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICAvL1RPRE86IFVzZSBSZW5kZXJlcjIgdG8gYWRkIGV2ZW50IGxpc3RlbmVycyBmb3IgYmV0dGVyIEFuZ3VsYXIgY29tcGF0aWJpbGl0eSB3aGVuIHVwZGF0aW5nIHRvIEFuZ3VsYXIgMTlcclxuICAgIHRoaXMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcclxuICAgICAgdGhpcy5kb2N1bWVudENsaWNrTGlzdGVuZXIgPSAoZXZlbnQ6IE1vdXNlRXZlbnQpID0+IHtcclxuICAgICAgICAvLyBSdW4gYmFjayBpbnNpZGUgQW5ndWxhcidzIHpvbmUgd2hlbiBoYW5kbGluZyB0aGUgZXZlbnRcclxuICAgICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xyXG4gICAgICAgICAgaWYoIXRoaXMuX2luc3RhbmNlKXsgcmV0dXJuO31cclxuICAgICAgICAgIGlmIChcclxuICAgICAgICAgICAgIXRoaXMuX2luc3RhbmNlLmNvbnRhaW5zKGV2ZW50LnRhcmdldCBhcyBOb2RlKSAmJlxyXG4gICAgICAgICAgICAhdGhpcy5hbmNob3IuY29udGFpbnMoZXZlbnQudGFyZ2V0IGFzIE5vZGUpXHJcbiAgICAgICAgICApIHtcclxuICAgICAgICAgICAgdGhpcy5kaXNtaXNzKCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH07XHJcbiAgICAgIFxyXG4gICAgICAvLyBVc2UgdGhlIG5hdGl2ZSBET00gQVBJIGRpcmVjdGx5IHdpdGggY2FwdHVyZSBwaGFzZVxyXG4gICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIHRoaXMuZG9jdW1lbnRDbGlja0xpc3RlbmVyLCB0cnVlKTtcclxuICAgIH0pO1xyXG4gIH1cclxuICBkb2N1bWVudENsaWNrTGlzdGVuZXI6IChldmVudDogTW91c2VFdmVudCkgPT4gdm9pZDtcclxuICB2aWV3UmVmPzogVmlld1JlZjtcclxuXHJcbiAgcHJpdmF0ZSBfZW1iZWRkZWRWaWV3PzogRW1iZWRkZWRWaWV3UmVmPGFueT4gfCB1bmRlZmluZWQ7XHJcbiAgcHJpdmF0ZSBnZXQgX2luc3RhbmNlKCk6IEhUTUxFbGVtZW50IHwgdW5kZWZpbmVkIHtcclxuICAgIHJldHVybiB0aGlzLmNvbnRlbnRDb250YWluZXI/Lm5hdGl2ZUVsZW1lbnQ7XHJcbiAgfVxyXG5cclxuICBnZXQgYXJyb3dFbCgpOiBIVE1MRWxlbWVudCB8IHVuZGVmaW5lZCB7XHJcbiAgICByZXR1cm4gdGhpcy5faW5zdGFuY2UucXVlcnlTZWxlY3RvcignLnBvcG92ZXItYXJyb3cnKSBhcyBIVE1MRWxlbWVudDtcclxuICB9XHJcbiAgXHJcbiAgcHJpdmF0ZSBjbGVhbnVwQXV0b1VwZGF0ZT86ICgpID0+IHZvaWQ7XHJcbiAgcHVibGljIHN0YXRlOiBQT1BPVkVSX1NUQVRFID0gUE9QT1ZFUl9TVEFURS5JRExFO1xyXG4gIHB1YmxpYyBhc3luYyBwcmVzZW50KGV2ZW50PzogRXZlbnQpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGlmKHRoaXMuc3RhdGUgIT0gUE9QT1ZFUl9TVEFURS5JRExFKSB7IHJldHVybjsgfVxyXG4gICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh0aGlzLl9pbnN0YW5jZSk7XHJcblxyXG4gICAgdGhpcy5vbldpbGxQcmVzZW50LmVtaXQoKTtcclxuICAgIFxyXG4gICAgdGhpcy5zdGF0ZSA9IFBPUE9WRVJfU1RBVEUuUFJFU0VOVElORztcclxuICAgIGNvbnN0IHJlZkVsICAgPSB0aGlzLmFuY2hvciA/IHRoaXMuYW5jaG9yIDogZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xyXG4gICAgY29uc3QgYXJyb3dFbCA9IHRoaXMuYXJyb3dFbDtcclxuXHJcbiAgICBhd2FpdCB0aGlzLnVwZGF0ZShyZWZFbCwgYXJyb3dFbClcclxuICAgIHRoaXMuX2luc3RhbmNlLmNsYXNzTGlzdC5hZGQoJ3Nob3cnKTtcclxuICAgIHRoaXMuY2xlYW51cEF1dG9VcGRhdGUgPSBhdXRvVXBkYXRlKHJlZkVsLCB0aGlzLl9pbnN0YW5jZSwgYXN5bmMgKCkgPT4gdGhpcy51cGRhdGUocmVmRWwsIGFycm93RWwpKTtcclxuICAgIFxyXG4gICAgdGhpcy5zdGF0ZSA9IFBPUE9WRVJfU1RBVEUuVklTSUJMRTtcclxuICAgIHRoaXMub25EaWRQcmVzZW50LmVtaXQoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgdXBkYXRlKHJlZkVsOiBIVE1MRWxlbWVudCwgYXJyb3dFbDogSFRNTEVsZW1lbnQpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGNvbnN0IGNvbXB1dGVQb3NpdGlvblJldHVybjogQ29tcHV0ZVBvc2l0aW9uUmV0dXJuID0gYXdhaXQgdGhpcy5HZXRDb21wdXRlUG9zaXRpb25SZXR1cm4ocmVmRWwsIHRoaXMuX2luc3RhbmNlLCBhcnJvd0VsKTtcclxuICAgIHRoaXMuSGFuZGxlQ29tcHV0ZVBvc2l0aW9uUmV0dXJuKGNvbXB1dGVQb3NpdGlvblJldHVybiwgYXJyb3dFbCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgZGlzbWlzcygpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGlmKHRoaXMuc3RhdGUgPT0gUE9QT1ZFUl9TVEFURS5JRExFKSB7IHJldHVybjsgfVxyXG4gICAgXHJcbiAgICBpZih0aGlzLmNsZWFudXBBdXRvVXBkYXRlKSB7XHJcbiAgICAgIHRoaXMuY2xlYW51cEF1dG9VcGRhdGUoKTtcclxuICAgICAgdGhpcy5jbGVhbnVwQXV0b1VwZGF0ZSA9IHVuZGVmaW5lZDtcclxuICAgIH1cclxuICAgIHRoaXMub25XaWxsRGlzbWlzcy5lbWl0KCk7XHJcbiAgICB0aGlzLnN0YXRlID0gUE9QT1ZFUl9TVEFURS5ESVNNSVNTSU5HO1xyXG4gICAgdGhpcy5faW5zdGFuY2UuY2xhc3NMaXN0LnJlbW92ZSgnc2hvdycpO1xyXG4gICAgYXdhaXQgVGltZW91dCgyMDApO1xyXG4gICAgdGhpcy5faW5zdGFuY2U/LnJlbW92ZSgpO1xyXG4gICAgdGhpcy5zdGF0ZSA9IFBPUE9WRVJfU1RBVEUuSURMRTtcclxuICAgIHRoaXMub25EaWREaXNtaXNzLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIEhhbmRsZUNvbXB1dGVQb3NpdGlvblJldHVybihjb21wdXRlUG9zaXRpb25SZXR1cm46IENvbXB1dGVQb3NpdGlvblJldHVybiwgYXJyb3dFbDogSFRNTEVsZW1lbnQpOiB2b2lkIHtcclxuICAgIE9iamVjdC5hc3NpZ24odGhpcy5faW5zdGFuY2Uuc3R5bGUsIHtcclxuICAgICAgbGVmdDogYCR7Y29tcHV0ZVBvc2l0aW9uUmV0dXJuLnh9cHhgLFxyXG4gICAgICB0b3A6ICBgJHtjb21wdXRlUG9zaXRpb25SZXR1cm4ueX1weGAsXHJcbiAgICAgIHdpZHRoIDogdGhpcy53aWR0aCxcclxuICAgICAgaGVpZ2h0OiB0aGlzLmhlaWdodCxcclxuICAgICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXHJcbiAgICB9KTtcclxuICAgIGlmKGNvbXB1dGVQb3NpdGlvblJldHVybi5taWRkbGV3YXJlRGF0YS5hcnJvdyl7XHJcbiAgICAgIGNvbnN0IHsgeDogYXJyb3dYLCB5OiBhcnJvd1kgfSA9IGNvbXB1dGVQb3NpdGlvblJldHVybi5taWRkbGV3YXJlRGF0YS5hcnJvdztcclxuICAgICAgY29uc3QgcG9zaXRpb24gPSBjb21wdXRlUG9zaXRpb25SZXR1cm4ucGxhY2VtZW50LnNwbGl0KCctJylbMF07XHJcbiAgICAgIGNvbnN0IHN0YXRpY1NpZGUgPSBTVEFUSUNfU0lERVNbcG9zaXRpb25dO1xyXG4gICAgICBPYmplY3QuYXNzaWduKGFycm93RWwuc3R5bGUsIHtcclxuICAgICAgICBsZWZ0OiBhcnJvd1ggIT0gbnVsbCA/IGAke2Fycm93WH1weGAgOiAnJyxcclxuICAgICAgICB0b3AgOiBhcnJvd1kgIT0gbnVsbCA/IGAke2Fycm93WX1weGAgOiAnJyxcclxuICAgICAgICByaWdodCA6ICcnLFxyXG4gICAgICAgIGJvdHRvbTogJycsXHJcbiAgICAgICAgW3N0YXRpY1NpZGVdOiBgLTdweGAsXHJcbiAgICAgIH0pO1xyXG4gICAgICBhcnJvd0VsLnN0eWxlLnNldFByb3BlcnR5KGAtLXJvdGF0aW9uYCwgUk9UQVRJT05TW3Bvc2l0aW9uXSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIGlmKHRoaXMuX2luc3RhbmNlKSB7XHJcbiAgICAgIHRoaXMuX2luc3RhbmNlPy5yZW1vdmUoKTtcclxuICAgIH1cclxuICAgIGlmKHRoaXMuX2VtYmVkZGVkVmlldykge1xyXG4gICAgICB0aGlzLl9lbWJlZGRlZFZpZXcuZGVzdHJveSgpO1xyXG4gICAgICB0aGlzLl9lbWJlZGRlZFZpZXcgPSB1bmRlZmluZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuZG9jdW1lbnRDbGlja0xpc3RlbmVyKSB7XHJcbiAgICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgdGhpcy5kb2N1bWVudENsaWNrTGlzdGVuZXIsIHRydWUpO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMudmlld1JlZikge1xyXG4gICAgICB0aGlzLnZpZXdSZWYuZGVzdHJveSgpO1xyXG4gICAgICB0aGlzLnZpZXdSZWYgPSB1bmRlZmluZWQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBhc3luYyBHZXRDb21wdXRlUG9zaXRpb25SZXR1cm4ocmVmRWw6IEhUTUxFbGVtZW50LCBwb3BFbDogSFRNTEVsZW1lbnQsIGFycm93RWw6IEhUTUxFbGVtZW50KTogUHJvbWlzZTxDb21wdXRlUG9zaXRpb25SZXR1cm4+IHtcclxuICAgIHJldHVybiBhd2FpdCBjb21wdXRlUG9zaXRpb24ocmVmRWwsIHBvcEVsLCB7XHJcbiAgICAgIHBsYWNlbWVudDogdGhpcy5wbGFjZW1lbnQsXHJcbiAgICAgIG1pZGRsZXdhcmU6IFsgXHJcbiAgICAgICAgb2Zmc2V0KDEwKSwgXHJcbiAgICAgICAgdGhpcy5mbGlwICA/IGZsaXAoeyBjcm9zc0F4aXM6IGZhbHNlIH0pIDogdW5kZWZpbmVkLCBcclxuICAgICAgICBzaGlmdCh7IGxpbWl0ZXI6IGxpbWl0U2hpZnQoKSwgcGFkZGluZzogNSB9KSwgXHJcbiAgICAgICAgdGhpcy5hcnJvdyA/IGFycm93KHsgZWxlbWVudDogYXJyb3dFbCwgcGFkZGluZzogMTAgfSkgOiB1bmRlZmluZWQsXHJcbiAgICAgIF0uZmlsdGVyKHAgPT4gcCksXHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuXHJcbmVudW0gUE9QT1ZFUl9TVEFURXtcclxuICBJRExFICAgICAgID0gMSxcclxuICBQUkVTRU5USU5HID0gMixcclxuICBESVNNSVNTSU5HID0gMyxcclxuICBWSVNJQkxFICAgID0gNFxyXG59XHJcbmNvbnN0IFNUQVRJQ19TSURFUyA9IHtcclxuICB0b3A6IFwiYm90dG9tXCIsXHJcbiAgcmlnaHQ6IFwibGVmdFwiLFxyXG4gIGJvdHRvbTogXCJ0b3BcIixcclxuICBsZWZ0OiBcInJpZ2h0XCJcclxufTtcclxuY29uc3QgUk9UQVRJT05TID0ge1xyXG4gIGJvdHRvbTogXCIxMzVkZWdcIixcclxuICB0b3A6IFwiMzE1ZGVnXCIsXHJcbiAgbGVmdDogXCIyMjVkZWdcIixcclxuICByaWdodDogXCI0NWRlZ1wiLFxyXG59XHJcbiIsIjxkaXYgI3BvcG92ZXJXcmFwcGVyIFxyXG4gIGNsYXNzPVwicG9wb3Zlci13cmFwcGVyIHRyYW5zbHVjaWQtYm9yZGVyXCJcclxuICBbc3R5bGUuaGVpZ2h0XT1cImhlaWdodFwiXHJcbiAgW3N0eWxlLndpZHRoXT1cIndpZHRoXCJcclxuICBbbmdDbGFzc109XCJ7XHJcbiAgICAgICdiZy1saWdodCcgICAgICAgIDogZmlsbCA9PSAnc29saWQnLFxyXG4gICAgICAnYmctdHJhbnNwYXJlbnQnICA6IGZpbGwgPT0gJ291dGxpbmUnLFxyXG4gICAgICAnYmctbGlnaHQvOTAnICAgICA6IGZpbGwgPT0gJ2JsdXInLFxyXG4gICAgICAnIWJvcmRlci0wJyAgICAgICA6IGZpbGwgPT0gJ2NsZWFyJyxcclxuICAgIH1cIlxyXG4+IFxyXG4gIDxkaXYgI3BvcG92ZXJBcnJvdyBjbGFzcz1cInBvcG92ZXItYXJyb3cgc2l6ZS00IHRyYW5zbHVjaWQtYm9yZGVyXCJcclxuICAgIFtuZ0NsYXNzXT1cIntcclxuICAgICAgJ2JnLWxpZ2h0JyAgICAgICAgOiBmaWxsID09ICdzb2xpZCcsXHJcbiAgICAgICdiZy10cmFuc3BhcmVudCcgIDogZmlsbCA9PSAnb3V0bGluZScsXHJcbiAgICAgICdiZy1saWdodC85MCcgICAgIDogZmlsbCA9PSAnYmx1cicsXHJcbiAgICAgICchYm9yZGVyLTAnICAgICAgIDogZmlsbCA9PSAnY2xlYXInLFxyXG4gICAgfVwiXHJcbiAgPjwvZGl2PlxyXG4gIDxuZy1jb250ZW50ICNjb250ZW50PjwvbmctY29udGVudD5cclxuPC9kaXY+Il19
@@ -0,0 +1,21 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { SIonPopoverComponent } from './sion-popover/sion-popover.component';
4
+ import { OverlayModule } from '@angular/cdk/overlay';
5
+ import * as i0 from "@angular/core";
6
+ export class SIonPopoverModule {
7
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SIonPopoverModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
8
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: SIonPopoverModule, declarations: [SIonPopoverComponent], imports: [CommonModule, OverlayModule], exports: [SIonPopoverComponent] }); }
9
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SIonPopoverModule, imports: [CommonModule, OverlayModule] }); }
10
+ }
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SIonPopoverModule, decorators: [{
12
+ type: NgModule,
13
+ args: [{
14
+ declarations: [SIonPopoverComponent],
15
+ exports: [SIonPopoverComponent],
16
+ imports: [
17
+ CommonModule, OverlayModule
18
+ ]
19
+ }]
20
+ }] });
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lvbi1wb3BvdmVyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9wb3BvdmVyL3Npb24tcG9wb3Zlci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDN0UsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQVFyRCxNQUFNLE9BQU8saUJBQWlCOytHQUFqQixpQkFBaUI7Z0hBQWpCLGlCQUFpQixpQkFOWixvQkFBb0IsYUFHbEMsWUFBWSxFQUFFLGFBQWEsYUFGbEIsb0JBQW9CO2dIQUtwQixpQkFBaUIsWUFIMUIsWUFBWSxFQUFFLGFBQWE7OzRGQUdsQixpQkFBaUI7a0JBUDdCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUUsb0JBQW9CLENBQUc7b0JBQ3ZDLE9BQU8sRUFBRSxDQUFFLG9CQUFvQixDQUFFO29CQUNqQyxPQUFPLEVBQUU7d0JBQ1AsWUFBWSxFQUFFLGFBQWE7cUJBQzVCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgU0lvblBvcG92ZXJDb21wb25lbnQgfSBmcm9tICcuL3Npb24tcG9wb3Zlci9zaW9uLXBvcG92ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgT3ZlcmxheU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFsgU0lvblBvcG92ZXJDb21wb25lbnQgIF0sXHJcbiAgZXhwb3J0czogWyBTSW9uUG9wb3ZlckNvbXBvbmVudCBdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSwgT3ZlcmxheU1vZHVsZVxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIFNJb25Qb3BvdmVyTW9kdWxlIHsgfVxyXG4iXX0=
@@ -0,0 +1,26 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { Component, Input } from '@angular/core';
3
+ import { IonicModule } from '@ionic/angular';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@ionic/angular";
6
+ export class SionCardComponent {
7
+ constructor() {
8
+ this.background = 'bg-light';
9
+ this.backdrop = 'bg-primary/30';
10
+ this.justify = 'justify-center';
11
+ }
12
+ ngOnInit() { }
13
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SionCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
14
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: SionCardComponent, isStandalone: true, selector: "sion-card", inputs: { background: "background", backdrop: "backdrop", justify: "justify" }, ngImport: i0, template: "<ion-card class=\"m-0 size-full\">\r\n <ion-card-content class=\"size-full p-0\">\r\n <div class=\"size-full {{backdrop}} flex flex-col overflow-hidden\">\r\n <div class=\"flex items-center {{justify}} p-2 min-h-8 shrink-0\">\r\n <ng-content select=\"[slot=header]\"></ng-content>\r\n </div>\r\n <div class=\"{{background}} size-full rounded-t-2xl overflow-hidden\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n </ion-card-content>\r\n</ion-card>", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: IonicModule }, { kind: "component", type: i1.IonCard, selector: "ion-card", inputs: ["button", "color", "disabled", "download", "href", "mode", "rel", "routerAnimation", "routerDirection", "target", "type"] }, { kind: "component", type: i1.IonCardContent, selector: "ion-card-content", inputs: ["mode"] }] }); }
15
+ }
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SionCardComponent, decorators: [{
17
+ type: Component,
18
+ args: [{ selector: 'sion-card', standalone: true, imports: [CommonModule, IonicModule], template: "<ion-card class=\"m-0 size-full\">\r\n <ion-card-content class=\"size-full p-0\">\r\n <div class=\"size-full {{backdrop}} flex flex-col overflow-hidden\">\r\n <div class=\"flex items-center {{justify}} p-2 min-h-8 shrink-0\">\r\n <ng-content select=\"[slot=header]\"></ng-content>\r\n </div>\r\n <div class=\"{{background}} size-full rounded-t-2xl overflow-hidden\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n </ion-card-content>\r\n</ion-card>" }]
19
+ }], ctorParameters: () => [], propDecorators: { background: [{
20
+ type: Input
21
+ }], backdrop: [{
22
+ type: Input
23
+ }], justify: [{
24
+ type: Input
25
+ }] } });
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lvbi1jYXJkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9zaW9uLWNhcmQvc2lvbi1jYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9zaW9uLWNhcmQvc2lvbi1jYXJkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQVM3QyxNQUFNLE9BQU8saUJBQWlCO0lBTzVCO1FBSlMsZUFBVSxHQUFXLFVBQVUsQ0FBQztRQUNoQyxhQUFRLEdBQVcsZUFBZSxDQUFDO1FBQ25DLFlBQU8sR0FBVyxnQkFBZ0IsQ0FBQztJQUU1QixDQUFDO0lBRWpCLFFBQVEsS0FBSSxDQUFDOytHQVRGLGlCQUFpQjttR0FBakIsaUJBQWlCLHFKQ1g5QixxZkFXVyx5RERKRSxZQUFZLDhCQUFFLFdBQVc7OzRGQUl6QixpQkFBaUI7a0JBUDdCLFNBQVM7K0JBQ0UsV0FBVyxjQUNULElBQUksV0FDUCxDQUFFLFlBQVksRUFBRSxXQUFXLENBQUU7d0RBTzdCLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSW9uaWNNb2R1bGUgfSBmcm9tICdAaW9uaWMvYW5ndWxhcic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3Npb24tY2FyZCcsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbIENvbW1vbk1vZHVsZSwgSW9uaWNNb2R1bGUgXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vc2lvbi1jYXJkLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9zaW9uLWNhcmQuY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNpb25DYXJkQ29tcG9uZW50ICBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG5cclxuICBASW5wdXQoKSBiYWNrZ3JvdW5kOiBzdHJpbmcgPSAnYmctbGlnaHQnO1xyXG4gIEBJbnB1dCgpIGJhY2tkcm9wOiBzdHJpbmcgPSAnYmctcHJpbWFyeS8zMCc7XHJcbiAgQElucHV0KCkganVzdGlmeTogc3RyaW5nID0gJ2p1c3RpZnktY2VudGVyJztcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKSB7fVxyXG5cclxufVxyXG4iLCI8aW9uLWNhcmQgY2xhc3M9XCJtLTAgc2l6ZS1mdWxsXCI+XHJcbiAgPGlvbi1jYXJkLWNvbnRlbnQgY2xhc3M9XCJzaXplLWZ1bGwgcC0wXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwic2l6ZS1mdWxsIHt7YmFja2Ryb3B9fSBmbGV4IGZsZXgtY29sIG92ZXJmbG93LWhpZGRlblwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXIge3tqdXN0aWZ5fX0gcC0yIG1pbi1oLTggc2hyaW5rLTBcIj5cclxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbc2xvdD1oZWFkZXJdXCI+PC9uZy1jb250ZW50PlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cInt7YmFja2dyb3VuZH19IHNpemUtZnVsbCByb3VuZGVkLXQtMnhsIG92ZXJmbG93LWhpZGRlblwiPlxyXG4gICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2lvbi1jYXJkLWNvbnRlbnQ+XHJcbjwvaW9uLWNhcmQ+Il19
@@ -0,0 +1,43 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/common";
4
+ import * as i2 from "@ionic/angular";
5
+ export class StepComponent {
6
+ constructor() {
7
+ this.label = "Label";
8
+ }
9
+ ngOnInit() {
10
+ }
11
+ get index() {
12
+ if (this.parent && this.parent.lstSteps) {
13
+ return this.parent.lstSteps.toArray().indexOf(this);
14
+ }
15
+ return 0;
16
+ }
17
+ get fill() {
18
+ if (this.parent) {
19
+ return this.parent.lstSteps.toArray().indexOf(this) == this.parent.value();
20
+ }
21
+ return false;
22
+ }
23
+ ;
24
+ get selected() {
25
+ if (this.parent) {
26
+ return this.parent.lstSteps.toArray().indexOf(this) <= this.parent.value();
27
+ }
28
+ return false;
29
+ }
30
+ ;
31
+ get _fill() {
32
+ return this.fill ? 1 : 0;
33
+ }
34
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: StepComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
35
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: StepComponent, selector: "step", inputs: { label: "label" }, ngImport: i0, template: "<div class=\"px-1 flex flex-col items-center justify-center text-center animated\">\r\n <div [ngClass]=\"{'selected': selected}\" class=\"default-transition min-h-8 min-w-8 bg-red-400 flex items-center justify-center rounded-2xl step\">\r\n <div class=\"wrapper\"><ng-content select=\"ion-icon, ion-text\"></ng-content></div>\r\n <div class=\"default\">\r\n {{index + 1}}\r\n </div>\r\n </div>\r\n \r\n <ion-text> {{label}} </ion-text>\r\n <ion-progress-bar [color]=\"selected ? 'secondary' : 'primary'\" class=\"h-2 ease-in-out\" [value]=\"_fill\"></ion-progress-bar>\r\n</div>", styles: [":host{--stepper-selected-color: var(--ion-color-primary);--stepper-color: var(--ion-color-light-shade)}.step{background-color:var(--stepper-color);color:var(--ion-color-dark)}.selected{background-color:var(--stepper-selected-color);color:var(--ion-color-light)}ion-progress-bar::part(progress){transition:all ease-in-out .3s!important}.wrapper:not(:empty)+.default{display:none}.wrapper:empty{display:none}.animated{animation-name:slidein;animation-duration:.3s;animation-iteration-count:1;animation-timing-function:ease-in-out}@keyframes slidein{0%{opacity:0;transform:translate(3rem)}to{opacity:1;transform:translateX()}}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.IonProgressBar, selector: "ion-progress-bar", inputs: ["buffer", "color", "mode", "reversed", "type", "value"] }, { kind: "component", type: i2.IonText, selector: "ion-text", inputs: ["color", "mode"] }] }); }
36
+ }
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: StepComponent, decorators: [{
38
+ type: Component,
39
+ args: [{ selector: 'step', template: "<div class=\"px-1 flex flex-col items-center justify-center text-center animated\">\r\n <div [ngClass]=\"{'selected': selected}\" class=\"default-transition min-h-8 min-w-8 bg-red-400 flex items-center justify-center rounded-2xl step\">\r\n <div class=\"wrapper\"><ng-content select=\"ion-icon, ion-text\"></ng-content></div>\r\n <div class=\"default\">\r\n {{index + 1}}\r\n </div>\r\n </div>\r\n \r\n <ion-text> {{label}} </ion-text>\r\n <ion-progress-bar [color]=\"selected ? 'secondary' : 'primary'\" class=\"h-2 ease-in-out\" [value]=\"_fill\"></ion-progress-bar>\r\n</div>", styles: [":host{--stepper-selected-color: var(--ion-color-primary);--stepper-color: var(--ion-color-light-shade)}.step{background-color:var(--stepper-color);color:var(--ion-color-dark)}.selected{background-color:var(--stepper-selected-color);color:var(--ion-color-light)}ion-progress-bar::part(progress){transition:all ease-in-out .3s!important}.wrapper:not(:empty)+.default{display:none}.wrapper:empty{display:none}.animated{animation-name:slidein;animation-duration:.3s;animation-iteration-count:1;animation-timing-function:ease-in-out}@keyframes slidein{0%{opacity:0;transform:translate(3rem)}to{opacity:1;transform:translateX()}}\n"] }]
40
+ }], ctorParameters: () => [], propDecorators: { label: [{
41
+ type: Input
42
+ }] } });
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvc3RlcHBlci9zdGVwL3N0ZXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL3N0ZXBwZXIvc3RlcC9zdGVwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDOzs7O0FBUXpELE1BQU0sT0FBTyxhQUFhO0lBSXhCO1FBRmdCLFVBQUssR0FBYyxPQUFPLENBQUM7SUFFM0IsQ0FBQztJQUVqQixRQUFRO0lBQ1IsQ0FBQztJQUlELElBQUksS0FBSztRQUNQLElBQUcsSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBQyxDQUFDO1lBQ3RDLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RELENBQUM7UUFDRCxPQUFPLENBQUMsQ0FBQztJQUNYLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixJQUFHLElBQUksQ0FBQyxNQUFNLEVBQUMsQ0FBQztZQUNkLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDN0UsQ0FBQztRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUFBLENBQUM7SUFFRixJQUFJLFFBQVE7UUFDVixJQUFHLElBQUksQ0FBQyxNQUFNLEVBQUMsQ0FBQztZQUNkLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDN0UsQ0FBQztRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUFBLENBQUM7SUFFRixJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzNCLENBQUM7K0dBbENVLGFBQWE7bUdBQWIsYUFBYSx3RUNSMUIsdWxCQVVNOzs0RkRGTyxhQUFhO2tCQUx6QixTQUFTOytCQUNFLE1BQU07d0RBTUEsS0FBSztzQkFBcEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTdGVwcGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vc3RlcHBlci5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzdGVwJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vc3RlcC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vc3RlcC5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3RlcENvbXBvbmVudCAgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIFxyXG4gIEBJbnB1dCgpICAgICAgICBsYWJlbCAgIDogc3RyaW5nID0gXCJMYWJlbFwiO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICB9XHJcblxyXG4gIHBhcmVudDogU3RlcHBlckNvbXBvbmVudDtcclxuXHJcbiAgZ2V0IGluZGV4KCk6IG51bWJlcnsgXHJcbiAgICBpZih0aGlzLnBhcmVudCAmJiB0aGlzLnBhcmVudC5sc3RTdGVwcyl7XHJcbiAgICAgIHJldHVybiB0aGlzLnBhcmVudC5sc3RTdGVwcy50b0FycmF5KCkuaW5kZXhPZih0aGlzKTtcclxuICAgIH1cclxuICAgIHJldHVybiAwO1xyXG4gIH1cclxuICBcclxuICBnZXQgZmlsbCgpOiBib29sZWFue1xyXG4gICAgaWYodGhpcy5wYXJlbnQpe1xyXG4gICAgICByZXR1cm4gdGhpcy5wYXJlbnQubHN0U3RlcHMudG9BcnJheSgpLmluZGV4T2YodGhpcykgPT0gdGhpcy5wYXJlbnQudmFsdWUoKTtcclxuICAgIH1cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9O1xyXG4gIFxyXG4gIGdldCBzZWxlY3RlZCgpOiBib29sZWFue1xyXG4gICAgaWYodGhpcy5wYXJlbnQpe1xyXG4gICAgICByZXR1cm4gdGhpcy5wYXJlbnQubHN0U3RlcHMudG9BcnJheSgpLmluZGV4T2YodGhpcykgPD0gdGhpcy5wYXJlbnQudmFsdWUoKTtcclxuICAgIH1cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9O1xyXG5cclxuICBnZXQgX2ZpbGwoKXtcclxuICAgIHJldHVybiB0aGlzLmZpbGwgPyAxIDogMDsgXHJcbiAgfVxyXG59IiwiPGRpdiBjbGFzcz1cInB4LTEgZmxleCBmbGV4LWNvbCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgdGV4dC1jZW50ZXIgYW5pbWF0ZWRcIj5cclxuICA8ZGl2IFtuZ0NsYXNzXT1cInsnc2VsZWN0ZWQnOiBzZWxlY3RlZH1cIiBjbGFzcz1cImRlZmF1bHQtdHJhbnNpdGlvbiBtaW4taC04IG1pbi13LTggYmctcmVkLTQwMCBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciByb3VuZGVkLTJ4bCBzdGVwXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPjxuZy1jb250ZW50IHNlbGVjdD1cImlvbi1pY29uLCBpb24tdGV4dFwiPjwvbmctY29udGVudD48L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJkZWZhdWx0XCI+XHJcbiAgICAgIHt7aW5kZXggKyAxfX1cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG4gIFxyXG4gIDxpb24tdGV4dD4ge3tsYWJlbH19IDwvaW9uLXRleHQ+XHJcbiAgPGlvbi1wcm9ncmVzcy1iYXIgW2NvbG9yXT1cInNlbGVjdGVkID8gJ3NlY29uZGFyeScgOiAncHJpbWFyeSdcIiBjbGFzcz1cImgtMiBlYXNlLWluLW91dFwiIFt2YWx1ZV09XCJfZmlsbFwiPjwvaW9uLXByb2dyZXNzLWJhcj5cclxuPC9kaXY+Il19
@@ -0,0 +1,36 @@
1
+ import { Component, ContentChildren, QueryList } from '@angular/core';
2
+ import { StepComponent } from './step/step.component';
3
+ import { CustomInput } from '../inputs/custom-input';
4
+ import { InputProviderFactory } from '../inputs/input-provider-factory';
5
+ import * as i0 from "@angular/core";
6
+ export class StepperComponent extends CustomInput {
7
+ setFocus(event) {
8
+ // throw new Error('Method not implemented.');
9
+ }
10
+ constructor() { super(); }
11
+ ngAfterContentInit() {
12
+ if (this.lstSteps) {
13
+ this.lstSteps.filter(p => !p.parent).forEach(comp => { comp.parent = this; });
14
+ }
15
+ }
16
+ writeValue(obj) {
17
+ this.value.set(obj);
18
+ this.runValidation();
19
+ }
20
+ SetValue(obj) {
21
+ this.value.set(obj);
22
+ this.ngAfterContentInit();
23
+ this.runValidation();
24
+ this.propagateChange(obj);
25
+ }
26
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: StepperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
27
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: StepperComponent, selector: "stepper", providers: InputProviderFactory.GetProviders(StepperComponent), queries: [{ propertyName: "lstSteps", predicate: StepComponent }], usesInheritance: true, ngImport: i0, template: "<div class=\"flex w-full justify-evenly\">\r\n <ng-content select=\"step\" class=\"grow\"></ng-content>\r\n</div>", styles: [""] }); }
28
+ }
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: StepperComponent, decorators: [{
30
+ type: Component,
31
+ args: [{ selector: 'stepper', providers: InputProviderFactory.GetProviders(StepperComponent), template: "<div class=\"flex w-full justify-evenly\">\r\n <ng-content select=\"step\" class=\"grow\"></ng-content>\r\n</div>" }]
32
+ }], ctorParameters: () => [], propDecorators: { lstSteps: [{
33
+ type: ContentChildren,
34
+ args: [StepComponent]
35
+ }] } });
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcHBlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvc3RlcHBlci9zdGVwcGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9zdGVwcGVyL3N0ZXBwZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFvQixTQUFTLEVBQUUsZUFBZSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOztBQVF4RSxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsV0FBZ0I7SUFDM0MsUUFBUSxDQUFDLEtBQWlCO1FBQ2pDLDhDQUE4QztJQUNoRCxDQUFDO0lBRUQsZ0JBQWdCLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztJQUMxQixrQkFBa0I7UUFDaEIsSUFBRyxJQUFJLENBQUMsUUFBUSxFQUFDLENBQUM7WUFDaEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2hGLENBQUM7SUFDSCxDQUFDO0lBSVEsVUFBVSxDQUFDLEdBQVc7UUFDN0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDcEIsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFUSxRQUFRLENBQUMsR0FBUTtRQUN4QixJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNwQixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM1QixDQUFDOytHQXhCVSxnQkFBZ0I7bUdBQWhCLGdCQUFnQixrQ0FGaEIsb0JBQW9CLENBQUMsWUFBWSxDQUFDLGdCQUFnQixDQUFDLG1EQWM3QyxhQUFhLG9EQ3ZCaEMsc0hBRU07OzRGRFNPLGdCQUFnQjtrQkFONUIsU0FBUzsrQkFDRSxTQUFTLGFBR1Isb0JBQW9CLENBQUMsWUFBWSxrQkFBa0I7d0RBYzlCLFFBQVE7c0JBQXZDLGVBQWU7dUJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyQ29udGVudEluaXQsIENvbXBvbmVudCwgQ29udGVudENoaWxkcmVuLCBRdWVyeUxpc3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3RlcENvbXBvbmVudCB9IGZyb20gJy4vc3RlcC9zdGVwLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEN1c3RvbUlucHV0IH0gZnJvbSAnLi4vaW5wdXRzL2N1c3RvbS1pbnB1dCc7XHJcbmltcG9ydCB7IElucHV0UHJvdmlkZXJGYWN0b3J5IH0gZnJvbSAnLi4vaW5wdXRzL2lucHV0LXByb3ZpZGVyLWZhY3RvcnknO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzdGVwcGVyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vc3RlcHBlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vc3RlcHBlci5jb21wb25lbnQuc2NzcyddLFxyXG4gIHByb3ZpZGVyczogSW5wdXRQcm92aWRlckZhY3RvcnkuR2V0UHJvdmlkZXJzKFN0ZXBwZXJDb21wb25lbnQpXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTdGVwcGVyQ29tcG9uZW50IGV4dGVuZHMgQ3VzdG9tSW5wdXQ8YW55PiBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQgIHtcclxuICBvdmVycmlkZSBzZXRGb2N1cyhldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xyXG4gICAgLy8gdGhyb3cgbmV3IEVycm9yKCdNZXRob2Qgbm90IGltcGxlbWVudGVkLicpO1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IoKSB7IHN1cGVyKCk7IH1cclxuICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XHJcbiAgICBpZih0aGlzLmxzdFN0ZXBzKXtcclxuICAgICAgdGhpcy5sc3RTdGVwcy5maWx0ZXIocCA9PiAhcC5wYXJlbnQpLmZvckVhY2goY29tcCA9PiB7IGNvbXAucGFyZW50ID0gdGhpczsgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAQ29udGVudENoaWxkcmVuKFN0ZXBDb21wb25lbnQpIGxzdFN0ZXBzIDogUXVlcnlMaXN0PFN0ZXBDb21wb25lbnQ+O1xyXG5cclxuICBvdmVycmlkZSB3cml0ZVZhbHVlKG9iajogc3RyaW5nKTogdm9pZCB8IFByb21pc2U8dm9pZD4ge1xyXG4gICAgdGhpcy52YWx1ZS5zZXQob2JqKTtcclxuICAgIHRoaXMucnVuVmFsaWRhdGlvbigpO1xyXG4gIH1cclxuXHJcbiAgb3ZlcnJpZGUgU2V0VmFsdWUob2JqOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMudmFsdWUuc2V0KG9iaik7XHJcbiAgICB0aGlzLm5nQWZ0ZXJDb250ZW50SW5pdCgpO1xyXG4gICAgdGhpcy5ydW5WYWxpZGF0aW9uKCk7XHJcbiAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZShvYmopO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiZmxleCB3LWZ1bGwganVzdGlmeS1ldmVubHlcIj5cclxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInN0ZXBcIiBjbGFzcz1cImdyb3dcIj48L25nLWNvbnRlbnQ+XHJcbjwvZGl2PiJdfQ==
@@ -0,0 +1,25 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { StepComponent } from './step/step.component';
4
+ import { StepperComponent } from './stepper.component';
5
+ import { IonicModule } from '@ionic/angular';
6
+ import * as i0 from "@angular/core";
7
+ export class StepperModule {
8
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: StepperModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
9
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: StepperModule, declarations: [StepComponent, StepperComponent], imports: [CommonModule,
10
+ IonicModule], exports: [StepComponent, StepperComponent] }); }
11
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: StepperModule, imports: [CommonModule,
12
+ IonicModule] }); }
13
+ }
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: StepperModule, decorators: [{
15
+ type: NgModule,
16
+ args: [{
17
+ declarations: [StepComponent, StepperComponent],
18
+ exports: [StepComponent, StepperComponent],
19
+ imports: [
20
+ CommonModule,
21
+ IonicModule
22
+ ]
23
+ }]
24
+ }] });
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcHBlci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvc3RlcHBlci9zdGVwcGVyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQVU3QyxNQUFNLE9BQU8sYUFBYTsrR0FBYixhQUFhO2dIQUFiLGFBQWEsaUJBUFIsYUFBYSxFQUFFLGdCQUFnQixhQUc3QyxZQUFZO1lBQ1osV0FBVyxhQUhGLGFBQWEsRUFBRSxnQkFBZ0I7Z0hBTS9CLGFBQWEsWUFKdEIsWUFBWTtZQUNaLFdBQVc7OzRGQUdGLGFBQWE7a0JBUnpCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUUsYUFBYSxFQUFFLGdCQUFnQixDQUFFO29CQUNqRCxPQUFPLEVBQUUsQ0FBRSxhQUFhLEVBQUUsZ0JBQWdCLENBQUU7b0JBQzVDLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLFdBQVc7cUJBQ1o7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBTdGVwQ29tcG9uZW50IH0gZnJvbSAnLi9zdGVwL3N0ZXAuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU3RlcHBlckNvbXBvbmVudCB9IGZyb20gJy4vc3RlcHBlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBJb25pY01vZHVsZSB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyJztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbIFN0ZXBDb21wb25lbnQsIFN0ZXBwZXJDb21wb25lbnQgXSxcclxuICBleHBvcnRzOiBbIFN0ZXBDb21wb25lbnQsIFN0ZXBwZXJDb21wb25lbnQgXSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBJb25pY01vZHVsZVxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIFN0ZXBwZXJNb2R1bGUgeyB9XHJcbiJdfQ==