@unipin/angular-applet 18.9.2 → 18.9.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (484) hide show
  1. package/.editorconfig +16 -0
  2. package/.eslintrc.json +72 -0
  3. package/.github/ISSUE_TEMPLATE/bug_fix.yml +60 -0
  4. package/.github/ISSUE_TEMPLATE/dependency_update.yml +20 -0
  5. package/.github/ISSUE_TEMPLATE/documentation.yml +13 -0
  6. package/.github/ISSUE_TEMPLATE/engineering.yml +22 -0
  7. package/.github/ISSUE_TEMPLATE/feature_request.yml +38 -0
  8. package/.github/ISSUE_TEMPLATE/testing.yml +38 -0
  9. package/.github/dependabot.yml +11 -0
  10. package/.github/pull_request_template.md +77 -0
  11. package/.github/workflows/npm_publish.yml +52 -0
  12. package/.storybook/main.ts +28 -0
  13. package/.storybook/preview.ts +19 -0
  14. package/.storybook/test-runner.ts +29 -0
  15. package/.storybook/tsconfig.json +14 -0
  16. package/.storybook/typings.d.ts +4 -0
  17. package/.vscode/extensions.json +7 -0
  18. package/.vscode/launch.json +20 -0
  19. package/.vscode/settings.json +16 -0
  20. package/.vscode/tasks.json +42 -0
  21. package/README.md +11 -8
  22. package/angular.json +102 -0
  23. package/codegen.yml +8 -0
  24. package/package.json +86 -38
  25. package/projects/unipin-angular/README.md +24 -0
  26. package/projects/unipin-angular/documentation.json +116258 -0
  27. package/projects/unipin-angular/ng-package.json +19 -0
  28. package/projects/unipin-angular/package-lock.json +23 -0
  29. package/projects/unipin-angular/package.json +32 -0
  30. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_accordion.scss +149 -0
  31. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_alert.scss +71 -0
  32. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_badge.scss +38 -0
  33. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_breadcrumb.scss +40 -0
  34. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_button-group.scss +142 -0
  35. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_buttons.scss +209 -0
  36. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_card.scss +234 -0
  37. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_carousel.scss +226 -0
  38. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_close.scss +40 -0
  39. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_containers.scss +41 -0
  40. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_dropdown.scss +249 -0
  41. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_forms.scss +9 -0
  42. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_functions.scss +302 -0
  43. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_grid.scss +33 -0
  44. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_helpers.scss +10 -0
  45. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_images.scss +42 -0
  46. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_list-group.scss +192 -0
  47. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_maps.scss +54 -0
  48. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_mixins.scss +43 -0
  49. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_modal.scss +237 -0
  50. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_nav.scss +172 -0
  51. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_navbar.scss +278 -0
  52. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_offcanvas.scss +144 -0
  53. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_pagination.scss +109 -0
  54. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_placeholders.scss +51 -0
  55. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_popover.scss +196 -0
  56. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_progress.scss +59 -0
  57. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_reboot.scss +610 -0
  58. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_root.scss +73 -0
  59. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_spinners.scss +85 -0
  60. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_tables.scss +164 -0
  61. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_toasts.scss +73 -0
  62. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_tooltip.scss +120 -0
  63. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_transitions.scss +27 -0
  64. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_type.scss +106 -0
  65. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_utilities.scss +647 -0
  66. package/projects/unipin-angular/src/assets/private/scss/bootstrap/_variables.scss +1634 -0
  67. package/projects/unipin-angular/src/assets/private/scss/bootstrap/bootstrap-grid.scss +64 -0
  68. package/projects/unipin-angular/src/assets/private/scss/bootstrap/bootstrap-reboot.scss +9 -0
  69. package/projects/unipin-angular/src/assets/private/scss/bootstrap/bootstrap-utilities.scss +18 -0
  70. package/projects/unipin-angular/src/assets/private/scss/bootstrap/bootstrap.scss +24 -0
  71. package/projects/unipin-angular/src/assets/private/scss/bootstrap/forms/_floating-labels.scss +75 -0
  72. package/projects/unipin-angular/src/assets/private/scss/bootstrap/forms/_form-check.scss +175 -0
  73. package/projects/unipin-angular/src/assets/private/scss/bootstrap/forms/_form-control.scss +195 -0
  74. package/projects/unipin-angular/src/assets/private/scss/bootstrap/forms/_form-range.scss +91 -0
  75. package/projects/unipin-angular/src/assets/private/scss/bootstrap/forms/_form-select.scss +71 -0
  76. package/projects/unipin-angular/src/assets/private/scss/bootstrap/forms/_form-text.scss +11 -0
  77. package/projects/unipin-angular/src/assets/private/scss/bootstrap/forms/_input-group.scss +132 -0
  78. package/projects/unipin-angular/src/assets/private/scss/bootstrap/forms/_labels.scss +36 -0
  79. package/projects/unipin-angular/src/assets/private/scss/bootstrap/forms/_validation.scss +12 -0
  80. package/projects/unipin-angular/src/assets/private/scss/bootstrap/helpers/_clearfix.scss +3 -0
  81. package/projects/unipin-angular/src/assets/private/scss/bootstrap/helpers/_color-bg.scss +10 -0
  82. package/projects/unipin-angular/src/assets/private/scss/bootstrap/helpers/_colored-links.scss +12 -0
  83. package/projects/unipin-angular/src/assets/private/scss/bootstrap/helpers/_position.scss +36 -0
  84. package/projects/unipin-angular/src/assets/private/scss/bootstrap/helpers/_ratio.scss +26 -0
  85. package/projects/unipin-angular/src/assets/private/scss/bootstrap/helpers/_stacks.scss +15 -0
  86. package/projects/unipin-angular/src/assets/private/scss/bootstrap/helpers/_stretched-link.scss +15 -0
  87. package/projects/unipin-angular/src/assets/private/scss/bootstrap/helpers/_text-truncation.scss +7 -0
  88. package/projects/unipin-angular/src/assets/private/scss/bootstrap/helpers/_visually-hidden.scss +8 -0
  89. package/projects/unipin-angular/src/assets/private/scss/bootstrap/helpers/_vr.scss +8 -0
  90. package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_alert.scss +15 -0
  91. package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_backdrop.scss +14 -0
  92. package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_banner.scss +9 -0
  93. package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_border-radius.scss +78 -0
  94. package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_box-shadow.scss +18 -0
  95. package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_breakpoints.scss +127 -0
  96. package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_buttons.scss +70 -0
  97. package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_caret.scss +64 -0
  98. package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_clearfix.scss +9 -0
  99. package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_color-scheme.scss +7 -0
  100. package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_container.scss +11 -0
  101. package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_deprecate.scss +10 -0
  102. package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_forms.scss +152 -0
  103. package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_gradients.scss +47 -0
  104. package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_grid.scss +151 -0
  105. package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_image.scss +16 -0
  106. package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_list-group.scss +24 -0
  107. package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_lists.scss +7 -0
  108. package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_pagination.scss +10 -0
  109. package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_reset-text.scss +17 -0
  110. package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_resize.scss +6 -0
  111. package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_table-variants.scss +24 -0
  112. package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_text-truncate.scss +8 -0
  113. package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_transition.scss +26 -0
  114. package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_utilities.scss +97 -0
  115. package/projects/unipin-angular/src/assets/private/scss/bootstrap/mixins/_visually-hidden.scss +29 -0
  116. package/projects/unipin-angular/src/assets/private/scss/bootstrap/utilities/_api.scss +47 -0
  117. package/projects/unipin-angular/src/assets/private/scss/bootstrap/vendor/_rfs.scss +354 -0
  118. package/projects/unipin-angular/src/assets/private/scss/theme/variables.scss +59 -0
  119. package/projects/unipin-angular/src/graphql/generated.d.ts +715 -0
  120. package/projects/unipin-angular/src/graphql/generated.mjs +49 -0
  121. package/projects/unipin-angular/src/graphql/generated.ts +19998 -0
  122. package/projects/unipin-angular/src/lib/components/approval/detail/approval-detail.component.html +14 -0
  123. package/projects/unipin-angular/src/lib/components/approval/detail/approval-detail.component.scss +0 -0
  124. package/projects/unipin-angular/src/lib/components/approval/detail/approval-detail.component.ts +90 -0
  125. package/projects/unipin-angular/src/lib/components/approval/detail/approval-detail.stories.ts +61 -0
  126. package/projects/unipin-angular/src/lib/components/approval/form/approval-form.component.html +41 -0
  127. package/projects/unipin-angular/src/lib/components/approval/form/approval-form.component.scss +0 -0
  128. package/projects/unipin-angular/src/lib/components/approval/form/approval-form.component.ts +152 -0
  129. package/projects/unipin-angular/src/lib/components/approval/form/approval-form.stories.ts +111 -0
  130. package/{lib/components/approval/index.d.ts → projects/unipin-angular/src/lib/components/approval/index.ts} +1 -0
  131. package/projects/unipin-angular/src/lib/components/approval/list/approval-list.component.html +15 -0
  132. package/projects/unipin-angular/src/lib/components/approval/list/approval-list.component.scss +0 -0
  133. package/projects/unipin-angular/src/lib/components/approval/list/approval-list.component.ts +136 -0
  134. package/projects/unipin-angular/src/lib/components/approval/list/approval-list.stories.ts +141 -0
  135. package/projects/unipin-angular/src/lib/components/approval/list/provide-approval-entities.util.ts +10 -0
  136. package/projects/unipin-angular/src/lib/components/approval/services/approval.service.ts +46 -0
  137. package/projects/unipin-angular/src/lib/components/audit/detail/audit-detail.component.html +50 -0
  138. package/projects/unipin-angular/src/lib/components/audit/detail/audit-detail.component.scss +4 -0
  139. package/projects/unipin-angular/src/lib/components/audit/detail/audit-detail.component.spec.ts +51 -0
  140. package/projects/unipin-angular/src/lib/components/audit/detail/audit-detail.component.ts +141 -0
  141. package/projects/unipin-angular/src/lib/components/audit/detail/audit-detail.stories.ts +126 -0
  142. package/projects/unipin-angular/src/lib/components/audit/list/audit-list.component.html +5 -0
  143. package/projects/unipin-angular/src/lib/components/audit/list/audit-list.component.scss +0 -0
  144. package/projects/unipin-angular/src/lib/components/audit/list/audit-list.component.ts +85 -0
  145. package/projects/unipin-angular/src/lib/components/audit/list/audit-list.stories.ts +170 -0
  146. package/projects/unipin-angular/src/lib/components/audit/service/audit.service.ts +48 -0
  147. package/projects/unipin-angular/src/lib/components/audit/types/audit-detail-form.type.ts +13 -0
  148. package/projects/unipin-angular/src/lib/components/buttons/group/btn-group.component.html +42 -0
  149. package/projects/unipin-angular/src/lib/components/buttons/group/btn-group.component.scss +19 -0
  150. package/projects/unipin-angular/src/lib/components/buttons/group/btn-group.component.ts +72 -0
  151. package/projects/unipin-angular/src/lib/components/buttons/group/btn-group.stories.ts +132 -0
  152. package/projects/unipin-angular/src/lib/components/buttons/group/interfaces/btn-group-config.interface.ts +63 -0
  153. package/projects/unipin-angular/src/lib/components/buttons/loading/btn-loading.component.html +9 -0
  154. package/projects/unipin-angular/src/lib/components/buttons/loading/btn-loading.component.scss +8 -0
  155. package/projects/unipin-angular/src/lib/components/buttons/loading/btn-loading.component.ts +87 -0
  156. package/projects/unipin-angular/src/lib/components/buttons/loading/btn-loading.stories.ts +188 -0
  157. package/projects/unipin-angular/src/lib/components/containers/applet-container/applet-container.component.html +39 -0
  158. package/projects/unipin-angular/src/lib/components/containers/applet-container/applet-container.component.scss +68 -0
  159. package/projects/unipin-angular/src/lib/components/containers/applet-container/applet-container.component.ts +98 -0
  160. package/projects/unipin-angular/src/lib/components/containers/applet-container/provide-applet-config.util.ts +23 -0
  161. package/projects/unipin-angular/src/lib/components/containers/colum-header-container/column-header-container.component.html +17 -0
  162. package/projects/unipin-angular/src/lib/components/containers/colum-header-container/column-header-container.component.scss +4 -0
  163. package/projects/unipin-angular/src/lib/components/containers/colum-header-container/column-header-container.component.ts +32 -0
  164. package/projects/unipin-angular/src/lib/components/containers/colum-header-container/column-header.stories.ts +77 -0
  165. package/projects/unipin-angular/src/lib/components/containers/column-container/column-container.component.html +17 -0
  166. package/projects/unipin-angular/src/lib/components/containers/column-container/column-container.component.scss +0 -0
  167. package/projects/unipin-angular/src/lib/components/containers/column-container/column-container.component.ts +139 -0
  168. package/projects/unipin-angular/src/lib/components/containers/column-container/directives/lazy-route.directive.ts +86 -0
  169. package/{lib/components/containers/index.d.ts → projects/unipin-angular/src/lib/components/containers/index.ts} +1 -0
  170. package/{lib/components/containers/list-container/interfaces/list-container-config.interface.d.ts → projects/unipin-angular/src/lib/components/containers/list-container/interfaces/list-container-config.interface.ts} +5 -4
  171. package/projects/unipin-angular/src/lib/components/containers/list-container/list-pagination-container/list-pagination-container.component.html +19 -0
  172. package/projects/unipin-angular/src/lib/components/containers/list-container/list-pagination-container/list-pagination-container.component.scss +7 -0
  173. package/projects/unipin-angular/src/lib/components/containers/list-container/list-pagination-container/list-pagination-container.component.ts +113 -0
  174. package/projects/unipin-angular/src/lib/components/containers/list-container/list-pagination-container/list-pagination-container.stories.ts +207 -0
  175. package/projects/unipin-angular/src/lib/components/containers/list-container/list-snapshot-container/list-snapshot-container.component.html +19 -0
  176. package/projects/unipin-angular/src/lib/components/containers/list-container/list-snapshot-container/list-snapshot-container.component.scss +7 -0
  177. package/projects/unipin-angular/src/lib/components/containers/list-container/list-snapshot-container/list-snapshot-container.component.ts +114 -0
  178. package/projects/unipin-angular/src/lib/components/containers/list-container/list-snapshot-container/list-snapshot-container.stories.ts +212 -0
  179. package/projects/unipin-angular/src/lib/components/containers/modal-container/modal-container.component.html +15 -0
  180. package/projects/unipin-angular/src/lib/components/containers/modal-container/modal-container.component.scss +2 -0
  181. package/projects/unipin-angular/src/lib/components/containers/modal-container/modal-container.component.ts +88 -0
  182. package/projects/unipin-angular/src/lib/components/containers/modal-container/modal-container.stories.ts +66 -0
  183. package/projects/unipin-angular/src/lib/components/filter/filter.component.html +112 -0
  184. package/projects/unipin-angular/src/lib/components/filter/filter.component.scss +28 -0
  185. package/projects/unipin-angular/src/lib/components/filter/filter.component.ts +329 -0
  186. package/projects/unipin-angular/src/lib/components/filter/filter.stories.ts +176 -0
  187. package/{lib/components/filter/index.d.ts → projects/unipin-angular/src/lib/components/filter/index.ts} +1 -1
  188. package/projects/unipin-angular/src/lib/components/filter/interfaces/filter-config.interface.ts +17 -0
  189. package/projects/unipin-angular/src/lib/components/filter/interfaces/filter-field.interface.ts +73 -0
  190. package/projects/unipin-angular/src/lib/components/filter/interfaces/filter-search-event.interface.ts +15 -0
  191. package/projects/unipin-angular/src/lib/components/forms/country-input/form-country-input.component.html +19 -0
  192. package/projects/unipin-angular/src/lib/components/forms/country-input/form-country-input.component.scss +0 -0
  193. package/projects/unipin-angular/src/lib/components/forms/country-input/form-country-input.component.ts +210 -0
  194. package/projects/unipin-angular/src/lib/components/forms/country-input/form-country-input.stories.ts +175 -0
  195. package/projects/unipin-angular/src/lib/components/forms/currency-input/form-currency-input.component.html +42 -0
  196. package/projects/unipin-angular/src/lib/components/forms/currency-input/form-currency-input.component.scss +4 -0
  197. package/projects/unipin-angular/src/lib/components/forms/currency-input/form-currency-input.component.ts +285 -0
  198. package/projects/unipin-angular/src/lib/components/forms/currency-input/form-currency-input.spec.ts +119 -0
  199. package/projects/unipin-angular/src/lib/components/forms/currency-input/form-currency-input.stories.ts +243 -0
  200. package/projects/unipin-angular/src/lib/components/forms/date/form-date.component.html +27 -0
  201. package/projects/unipin-angular/src/lib/components/forms/date/form-date.component.scss +7 -0
  202. package/projects/unipin-angular/src/lib/components/forms/date/form-date.component.ts +225 -0
  203. package/projects/unipin-angular/src/lib/components/forms/date/form-date.stories.ts +201 -0
  204. package/projects/unipin-angular/src/lib/components/forms/image-picker/directives/drag-n-drop.directive.ts +40 -0
  205. package/projects/unipin-angular/src/lib/components/forms/image-picker/form-image-picker.component.html +29 -0
  206. package/projects/unipin-angular/src/lib/components/forms/image-picker/form-image-picker.component.scss +40 -0
  207. package/projects/unipin-angular/src/lib/components/forms/image-picker/form-image-picker.component.ts +109 -0
  208. package/projects/unipin-angular/src/lib/components/forms/image-picker/form-image-picker.stories.ts +133 -0
  209. package/projects/unipin-angular/src/lib/components/forms/input/form-input.component.html +22 -0
  210. package/projects/unipin-angular/src/lib/components/forms/input/form-input.component.scss +0 -0
  211. package/projects/unipin-angular/src/lib/components/forms/input/form-input.component.ts +177 -0
  212. package/projects/unipin-angular/src/lib/components/forms/input/form-input.stories.ts +185 -0
  213. package/projects/unipin-angular/src/lib/components/forms/number/form-number.component.html +6 -0
  214. package/projects/unipin-angular/src/lib/components/forms/number/form-number.component.scss +0 -0
  215. package/projects/unipin-angular/src/lib/components/forms/number/form-number.component.ts +176 -0
  216. package/projects/unipin-angular/src/lib/components/forms/number/form-number.spec.ts +62 -0
  217. package/projects/unipin-angular/src/lib/components/forms/number/form-number.stories.ts +150 -0
  218. package/projects/unipin-angular/src/lib/components/forms/number/pipes/locale-number.pipe.ts +32 -0
  219. package/projects/unipin-angular/src/lib/components/forms/password/form-password.component.html +11 -0
  220. package/projects/unipin-angular/src/lib/components/forms/password/form-password.component.scss +5 -0
  221. package/projects/unipin-angular/src/lib/components/forms/password/form-password.component.ts +177 -0
  222. package/projects/unipin-angular/src/lib/components/forms/password/form-password.stories.ts +151 -0
  223. package/projects/unipin-angular/src/lib/components/forms/rate-group-code-input/form-rate-group-code-input.component.html +30 -0
  224. package/projects/unipin-angular/src/lib/components/forms/rate-group-code-input/form-rate-group-code-input.component.scss +0 -0
  225. package/projects/unipin-angular/src/lib/components/forms/rate-group-code-input/form-rate-group-code-input.component.ts +271 -0
  226. package/projects/unipin-angular/src/lib/components/forms/rate-group-code-input/form-rate-group-code-input.stories.ts +248 -0
  227. package/projects/unipin-angular/src/lib/components/forms/searchable-select/form-searchable-select.component.html +28 -0
  228. package/projects/unipin-angular/src/lib/components/forms/searchable-select/form-searchable-select.component.scss +0 -0
  229. package/projects/unipin-angular/src/lib/components/forms/searchable-select/form-searchable-select.component.ts +281 -0
  230. package/projects/unipin-angular/src/lib/components/forms/searchable-select/form-searchable-select.stories.ts +267 -0
  231. package/projects/unipin-angular/src/lib/components/forms/select/form-select.component.html +24 -0
  232. package/projects/unipin-angular/src/lib/components/forms/select/form-select.component.scss +1 -0
  233. package/projects/unipin-angular/src/lib/components/forms/select/form-select.component.ts +216 -0
  234. package/projects/unipin-angular/src/lib/components/forms/select/form-select.stories.ts +220 -0
  235. package/projects/unipin-angular/src/lib/components/forms/textarea/form-textarea.component.html +9 -0
  236. package/projects/unipin-angular/src/lib/components/forms/textarea/form-textarea.component.scss +0 -0
  237. package/projects/unipin-angular/src/lib/components/forms/textarea/form-textarea.component.ts +146 -0
  238. package/projects/unipin-angular/src/lib/components/forms/textarea/form-textarea.stories.ts +163 -0
  239. package/projects/unipin-angular/src/lib/components/grids/grid-pagination/grid-pagination.component.html +17 -0
  240. package/projects/unipin-angular/src/lib/components/grids/grid-pagination/grid-pagination.component.scss +8 -0
  241. package/projects/unipin-angular/src/lib/components/grids/grid-pagination/grid-pagination.component.ts +224 -0
  242. package/projects/unipin-angular/src/lib/components/grids/grid-pagination/grid-pagination.stories.ts +219 -0
  243. package/projects/unipin-angular/src/lib/components/grids/grid-snapshot/grid-snapshot.component.html +17 -0
  244. package/projects/unipin-angular/src/lib/components/grids/grid-snapshot/grid-snapshot.component.scss +8 -0
  245. package/projects/unipin-angular/src/lib/components/grids/grid-snapshot/grid-snapshot.component.ts +229 -0
  246. package/projects/unipin-angular/src/lib/components/grids/grid-snapshot/grid-snapshot.stories.ts +173 -0
  247. package/projects/unipin-angular/src/lib/components/grids/interfaces/grid-config.interface.ts +44 -0
  248. package/projects/unipin-angular/src/lib/components/grids/services/grid.service.ts +23 -0
  249. package/{lib/components/index.d.ts → projects/unipin-angular/src/lib/components/index.ts} +14 -2
  250. package/projects/unipin-angular/src/lib/components/infinite-scroll/directive/infinite-scroll.directive.ts +72 -0
  251. package/projects/unipin-angular/src/lib/components/infinite-scroll/infinite-scroll.component.html +13 -0
  252. package/projects/unipin-angular/src/lib/components/infinite-scroll/infinite-scroll.component.scss +10 -0
  253. package/projects/unipin-angular/src/lib/components/infinite-scroll/infinite-scroll.component.ts +61 -0
  254. package/projects/unipin-angular/src/lib/components/infinite-scroll/infinite-scroll.stories.ts +80 -0
  255. package/{lib/components/tabs/index.d.ts → projects/unipin-angular/src/lib/components/tabs/index.ts} +3 -2
  256. package/projects/unipin-angular/src/lib/components/tabs/tab-content/tab-content.component.html +3 -0
  257. package/projects/unipin-angular/src/lib/components/tabs/tab-content/tab-content.component.scss +6 -0
  258. package/projects/unipin-angular/src/lib/components/tabs/tab-content/tab-content.component.ts +56 -0
  259. package/projects/unipin-angular/src/lib/components/tabs/tab-group/tab-group.component.html +24 -0
  260. package/projects/unipin-angular/src/lib/components/tabs/tab-group/tab-group.component.scss +39 -0
  261. package/projects/unipin-angular/src/lib/components/tabs/tab-group/tab-group.component.ts +92 -0
  262. package/projects/unipin-angular/src/lib/components/tabs/tab.stories.ts +117 -0
  263. package/projects/unipin-angular/src/lib/guards/auth/auth.guard.ts +11 -0
  264. package/projects/unipin-angular/src/lib/interceptors/header/header.interceptor.ts +36 -0
  265. package/projects/unipin-angular/src/lib/interceptors/refresh-token/refresh-token.interceptor.ts +123 -0
  266. package/projects/unipin-angular/src/lib/interfaces/user/user.interface.ts +27 -0
  267. package/projects/unipin-angular/src/lib/modules/index.ts +11 -0
  268. package/projects/unipin-angular/src/lib/modules/micro-frontend/utils/mf-bootstrap.util.ts +74 -0
  269. package/projects/unipin-angular/src/lib/modules/micro-frontend/utils/mf-global-state.util.ts +20 -0
  270. package/projects/unipin-angular/src/lib/modules/permission/directive/permission.directive.spec.ts +50 -0
  271. package/projects/unipin-angular/src/lib/modules/permission/directive/permission.directive.ts +68 -0
  272. package/projects/unipin-angular/src/lib/modules/permission/guards/permission.guard.spec.ts +76 -0
  273. package/projects/unipin-angular/src/lib/modules/permission/guards/permission.guard.ts +30 -0
  274. package/{lib/modules/permission/index.d.ts → projects/unipin-angular/src/lib/modules/permission/index.ts} +1 -0
  275. package/projects/unipin-angular/src/lib/modules/permission/pages/401/unauthorized.page.html +3 -0
  276. package/projects/unipin-angular/src/lib/modules/permission/pages/401/unauthorized.page.scss +3 -0
  277. package/projects/unipin-angular/src/lib/modules/permission/pages/401/unauthorized.page.ts +14 -0
  278. package/projects/unipin-angular/src/lib/modules/permission/pages/loading/loading.page.html +2 -0
  279. package/projects/unipin-angular/src/lib/modules/permission/pages/loading/loading.page.scss +4 -0
  280. package/projects/unipin-angular/src/lib/modules/permission/pages/loading/loading.page.ts +76 -0
  281. package/projects/unipin-angular/src/lib/modules/permission/pages/loading/provide-loading-config.util.ts +18 -0
  282. package/projects/unipin-angular/src/lib/modules/permission/services/permission.service.spec.ts +62 -0
  283. package/projects/unipin-angular/src/lib/modules/permission/services/permission.service.ts +78 -0
  284. package/projects/unipin-angular/src/lib/resolvers/auth/auth.resolver.spec.ts +46 -0
  285. package/projects/unipin-angular/src/lib/resolvers/auth/auth.resolver.ts +144 -0
  286. package/projects/unipin-angular/src/lib/services/auth/auth.service.ts +243 -0
  287. package/projects/unipin-angular/src/lib/services/country/country.service.ts +47 -0
  288. package/projects/unipin-angular/src/lib/services/currency/currency.service.ts +44 -0
  289. package/projects/unipin-angular/src/lib/services/profile/profile.service.ts +86 -0
  290. package/projects/unipin-angular/src/lib/services/rate-group-code/rate-group-code.service.ts +29 -0
  291. package/projects/unipin-angular/src/lib/utils/contrast-color-generator/contrast-color-generator.util.spec.ts +19 -0
  292. package/projects/unipin-angular/src/lib/utils/contrast-color-generator/contrast-color-generator.util.ts +28 -0
  293. package/projects/unipin-angular/src/lib/utils/form-error-message/form-error-message.util.spec.ts +58 -0
  294. package/projects/unipin-angular/src/lib/utils/form-error-message/form-error-message.util.ts +30 -0
  295. package/projects/unipin-angular/src/lib/utils/format-capitalize/format-capitalize.util.spec.ts +30 -0
  296. package/projects/unipin-angular/src/lib/utils/format-capitalize/format-capitalize.util.ts +22 -0
  297. package/projects/unipin-angular/src/lib/utils/redirect-to-first-menu/redirect-to-first-menu.util.ts +15 -0
  298. package/projects/unipin-angular/src/public-api.ts +126 -0
  299. package/projects/unipin-angular/tsconfig.lib.json +14 -0
  300. package/projects/unipin-angular/tsconfig.lib.prod.json +10 -0
  301. package/projects/unipin-angular/tsconfig.spec.json +14 -0
  302. package/snapshot-serializer.js +12 -0
  303. package/test-runner-jest.config.js +13 -0
  304. package/tsconfig.json +51 -0
  305. package/esm2022/graphql/generated.mjs +0 -888
  306. package/esm2022/lib/components/approval/detail/approval-detail.component.mjs +0 -78
  307. package/esm2022/lib/components/approval/form/approval-form.component.mjs +0 -128
  308. package/esm2022/lib/components/approval/index.mjs +0 -5
  309. package/esm2022/lib/components/approval/list/approval-list.component.mjs +0 -114
  310. package/esm2022/lib/components/approval/list/provide-approval-entities.util.mjs +0 -9
  311. package/esm2022/lib/components/approval/services/approval.service.mjs +0 -46
  312. package/esm2022/lib/components/audit/detail/audit-detail.component.mjs +0 -123
  313. package/esm2022/lib/components/audit/index.mjs +0 -3
  314. package/esm2022/lib/components/audit/list/audit-list.component.mjs +0 -81
  315. package/esm2022/lib/components/audit/service/audit.service.mjs +0 -49
  316. package/esm2022/lib/components/audit/types/audit-detail-form.type.mjs +0 -2
  317. package/esm2022/lib/components/buttons/group/btn-group.component.mjs +0 -43
  318. package/esm2022/lib/components/buttons/group/interfaces/btn-group-config.interface.mjs +0 -2
  319. package/esm2022/lib/components/buttons/index.mjs +0 -3
  320. package/esm2022/lib/components/buttons/loading/btn-loading.component.mjs +0 -48
  321. package/esm2022/lib/components/containers/applet-container/applet-container.component.mjs +0 -55
  322. package/esm2022/lib/components/containers/applet-container/provide-applet-config.util.mjs +0 -9
  323. package/esm2022/lib/components/containers/colum-header-container/column-header-container.component.mjs +0 -23
  324. package/esm2022/lib/components/containers/column-container/column-container.component.mjs +0 -79
  325. package/esm2022/lib/components/containers/column-container/directives/lazy-route.directive.mjs +0 -57
  326. package/esm2022/lib/components/containers/index.mjs +0 -7
  327. package/esm2022/lib/components/containers/list-container/index.mjs +0 -3
  328. package/esm2022/lib/components/containers/list-container/interfaces/list-container-config.interface.mjs +0 -2
  329. package/esm2022/lib/components/containers/list-container/list-pagination-container/list-pagination-container.component.mjs +0 -58
  330. package/esm2022/lib/components/containers/list-container/list-snapshot-container/list-snapshot-container.component.mjs +0 -57
  331. package/esm2022/lib/components/containers/modal-container/modal-container.component.mjs +0 -40
  332. package/esm2022/lib/components/filter/filter.component.mjs +0 -222
  333. package/esm2022/lib/components/filter/index.mjs +0 -2
  334. package/esm2022/lib/components/filter/interfaces/filter-config.interface.mjs +0 -2
  335. package/esm2022/lib/components/filter/interfaces/filter-field.interface.mjs +0 -2
  336. package/esm2022/lib/components/filter/interfaces/filter-search-event.interface.mjs +0 -2
  337. package/esm2022/lib/components/forms/country-input/form-country-input.component.mjs +0 -122
  338. package/esm2022/lib/components/forms/currency-input/form-currency-input.component.mjs +0 -157
  339. package/esm2022/lib/components/forms/date/form-date.component.mjs +0 -114
  340. package/esm2022/lib/components/forms/image-picker/directives/drag-n-drop.directive.mjs +0 -49
  341. package/esm2022/lib/components/forms/image-picker/form-image-picker.component.mjs +0 -68
  342. package/esm2022/lib/components/forms/index.mjs +0 -12
  343. package/esm2022/lib/components/forms/input/form-input.component.mjs +0 -98
  344. package/esm2022/lib/components/forms/number/form-number.component.mjs +0 -97
  345. package/esm2022/lib/components/forms/number/pipes/locale-number.pipe.mjs +0 -33
  346. package/esm2022/lib/components/forms/password/form-password.component.mjs +0 -100
  347. package/esm2022/lib/components/forms/rate-group-code-input/form-rate-group-code-input.component.mjs +0 -135
  348. package/esm2022/lib/components/forms/searchable-select/form-searchable-select.component.mjs +0 -138
  349. package/esm2022/lib/components/forms/select/form-select.component.mjs +0 -116
  350. package/esm2022/lib/components/forms/textarea/form-textarea.component.mjs +0 -88
  351. package/esm2022/lib/components/grids/grid-pagination/grid-pagination.component.mjs +0 -111
  352. package/esm2022/lib/components/grids/grid-snapshot/grid-snapshot.component.mjs +0 -109
  353. package/esm2022/lib/components/grids/index.mjs +0 -4
  354. package/esm2022/lib/components/grids/interfaces/grid-config.interface.mjs +0 -2
  355. package/esm2022/lib/components/grids/services/grid.service.mjs +0 -25
  356. package/esm2022/lib/components/index.mjs +0 -9
  357. package/esm2022/lib/components/infinite-scroll/directive/infinite-scroll.directive.mjs +0 -43
  358. package/esm2022/lib/components/infinite-scroll/index.mjs +0 -3
  359. package/esm2022/lib/components/infinite-scroll/infinite-scroll.component.mjs +0 -36
  360. package/esm2022/lib/components/tabs/index.mjs +0 -3
  361. package/esm2022/lib/components/tabs/tab-content/tab-content.component.mjs +0 -37
  362. package/esm2022/lib/components/tabs/tab-group/tab-group.component.mjs +0 -47
  363. package/esm2022/lib/guards/auth/auth.guard.mjs +0 -10
  364. package/esm2022/lib/guards/index.mjs +0 -2
  365. package/esm2022/lib/interceptors/header/header.interceptor.mjs +0 -29
  366. package/esm2022/lib/interceptors/index.mjs +0 -3
  367. package/esm2022/lib/interceptors/refresh-token/refresh-token.interceptor.mjs +0 -83
  368. package/esm2022/lib/interfaces/index.mjs +0 -2
  369. package/esm2022/lib/interfaces/user/user.interface.mjs +0 -2
  370. package/esm2022/lib/modules/index.mjs +0 -3
  371. package/esm2022/lib/modules/micro-frontend/index.mjs +0 -2
  372. package/esm2022/lib/modules/micro-frontend/utils/mf-bootstrap.util.mjs +0 -55
  373. package/esm2022/lib/modules/micro-frontend/utils/mf-global-state.util.mjs +0 -14
  374. package/esm2022/lib/modules/permission/directive/permission.directive.mjs +0 -41
  375. package/esm2022/lib/modules/permission/guards/permission.guard.mjs +0 -26
  376. package/esm2022/lib/modules/permission/index.mjs +0 -7
  377. package/esm2022/lib/modules/permission/pages/401/unauthorized.page.mjs +0 -15
  378. package/esm2022/lib/modules/permission/pages/loading/loading.page.mjs +0 -65
  379. package/esm2022/lib/modules/permission/pages/loading/provide-loading-config.util.mjs +0 -9
  380. package/esm2022/lib/modules/permission/services/permission.service.mjs +0 -50
  381. package/esm2022/lib/resolvers/auth/auth.resolver.mjs +0 -87
  382. package/esm2022/lib/resolvers/index.mjs +0 -2
  383. package/esm2022/lib/services/auth/auth.service.mjs +0 -171
  384. package/esm2022/lib/services/country/country.service.mjs +0 -43
  385. package/esm2022/lib/services/currency/currency.service.mjs +0 -40
  386. package/esm2022/lib/services/index.mjs +0 -6
  387. package/esm2022/lib/services/profile/profile.service.mjs +0 -82
  388. package/esm2022/lib/services/rate-group-code/rate-group-code.service.mjs +0 -31
  389. package/esm2022/lib/utils/contrast-color-generator/contrast-color-generator.util.mjs +0 -16
  390. package/esm2022/lib/utils/form-error-message/form-error-message.util.mjs +0 -21
  391. package/esm2022/lib/utils/format-capitalize/format-capitalize.util.mjs +0 -18
  392. package/esm2022/lib/utils/index.mjs +0 -5
  393. package/esm2022/lib/utils/redirect-to-first-menu/redirect-to-first-menu.util.mjs +0 -9
  394. package/esm2022/public-api.mjs +0 -10
  395. package/esm2022/unipin-angular-applet.mjs +0 -2
  396. package/fesm2022/unipin-angular-applet.mjs +0 -4564
  397. package/fesm2022/unipin-angular-applet.mjs.map +0 -1
  398. package/graphql/generated.d.ts +0 -15719
  399. package/index.d.ts +0 -2
  400. package/lib/components/approval/detail/approval-detail.component.d.ts +0 -26
  401. package/lib/components/approval/form/approval-form.component.d.ts +0 -33
  402. package/lib/components/approval/list/approval-list.component.d.ts +0 -33
  403. package/lib/components/approval/list/provide-approval-entities.util.d.ts +0 -3
  404. package/lib/components/approval/services/approval.service.d.ts +0 -18
  405. package/lib/components/audit/detail/audit-detail.component.d.ts +0 -33
  406. package/lib/components/audit/list/audit-list.component.d.ts +0 -31
  407. package/lib/components/audit/service/audit.service.d.ts +0 -15
  408. package/lib/components/audit/types/audit-detail-form.type.d.ts +0 -12
  409. package/lib/components/buttons/group/btn-group.component.d.ts +0 -18
  410. package/lib/components/buttons/group/interfaces/btn-group-config.interface.d.ts +0 -11
  411. package/lib/components/buttons/loading/btn-loading.component.d.ts +0 -19
  412. package/lib/components/containers/applet-container/applet-container.component.d.ts +0 -22
  413. package/lib/components/containers/applet-container/provide-applet-config.util.d.ts +0 -15
  414. package/lib/components/containers/colum-header-container/column-header-container.component.d.ts +0 -7
  415. package/lib/components/containers/column-container/column-container.component.d.ts +0 -26
  416. package/lib/components/containers/column-container/directives/lazy-route.directive.d.ts +0 -17
  417. package/lib/components/containers/list-container/list-pagination-container/list-pagination-container.component.d.ts +0 -23
  418. package/lib/components/containers/list-container/list-snapshot-container/list-snapshot-container.component.d.ts +0 -23
  419. package/lib/components/containers/modal-container/modal-container.component.d.ts +0 -16
  420. package/lib/components/filter/filter.component.d.ts +0 -44
  421. package/lib/components/filter/interfaces/filter-config.interface.d.ts +0 -5
  422. package/lib/components/filter/interfaces/filter-field.interface.d.ts +0 -23
  423. package/lib/components/filter/interfaces/filter-search-event.interface.d.ts +0 -4
  424. package/lib/components/forms/country-input/form-country-input.component.d.ts +0 -41
  425. package/lib/components/forms/currency-input/form-currency-input.component.d.ts +0 -52
  426. package/lib/components/forms/date/form-date.component.d.ts +0 -32
  427. package/lib/components/forms/image-picker/directives/drag-n-drop.directive.d.ts +0 -10
  428. package/lib/components/forms/image-picker/form-image-picker.component.d.ts +0 -21
  429. package/lib/components/forms/input/form-input.component.d.ts +0 -31
  430. package/lib/components/forms/number/form-number.component.d.ts +0 -27
  431. package/lib/components/forms/number/pipes/locale-number.pipe.d.ts +0 -8
  432. package/lib/components/forms/password/form-password.component.d.ts +0 -27
  433. package/lib/components/forms/rate-group-code-input/form-rate-group-code-input.component.d.ts +0 -41
  434. package/lib/components/forms/searchable-select/form-searchable-select.component.d.ts +0 -42
  435. package/lib/components/forms/select/form-select.component.d.ts +0 -33
  436. package/lib/components/forms/textarea/form-textarea.component.d.ts +0 -26
  437. package/lib/components/grids/grid-pagination/grid-pagination.component.d.ts +0 -33
  438. package/lib/components/grids/grid-snapshot/grid-snapshot.component.d.ts +0 -36
  439. package/lib/components/grids/interfaces/grid-config.interface.d.ts +0 -16
  440. package/lib/components/grids/services/grid.service.d.ts +0 -12
  441. package/lib/components/infinite-scroll/directive/infinite-scroll.directive.d.ts +0 -15
  442. package/lib/components/infinite-scroll/infinite-scroll.component.d.ts +0 -12
  443. package/lib/components/tabs/tab-content/tab-content.component.d.ts +0 -14
  444. package/lib/components/tabs/tab-group/tab-group.component.d.ts +0 -18
  445. package/lib/guards/auth/auth.guard.d.ts +0 -1
  446. package/lib/interceptors/header/header.interceptor.d.ts +0 -9
  447. package/lib/interceptors/refresh-token/refresh-token.interceptor.d.ts +0 -14
  448. package/lib/interfaces/user/user.interface.d.ts +0 -27
  449. package/lib/modules/index.d.ts +0 -2
  450. package/lib/modules/micro-frontend/utils/mf-bootstrap.util.d.ts +0 -9
  451. package/lib/modules/micro-frontend/utils/mf-global-state.util.d.ts +0 -4
  452. package/lib/modules/permission/directive/permission.directive.d.ts +0 -16
  453. package/lib/modules/permission/guards/permission.guard.d.ts +0 -2
  454. package/lib/modules/permission/pages/401/unauthorized.page.d.ts +0 -5
  455. package/lib/modules/permission/pages/loading/loading.page.d.ts +0 -18
  456. package/lib/modules/permission/pages/loading/provide-loading-config.util.d.ts +0 -10
  457. package/lib/modules/permission/services/permission.service.d.ts +0 -21
  458. package/lib/resolvers/auth/auth.resolver.d.ts +0 -14
  459. package/lib/services/auth/auth.service.d.ts +0 -39
  460. package/lib/services/country/country.service.d.ts +0 -16
  461. package/lib/services/currency/currency.service.d.ts +0 -16
  462. package/lib/services/profile/profile.service.d.ts +0 -12
  463. package/lib/services/rate-group-code/rate-group-code.service.d.ts +0 -14
  464. package/lib/utils/contrast-color-generator/contrast-color-generator.util.d.ts +0 -4
  465. package/lib/utils/form-error-message/form-error-message.util.d.ts +0 -2
  466. package/lib/utils/format-capitalize/format-capitalize.util.d.ts +0 -1
  467. package/lib/utils/redirect-to-first-menu/redirect-to-first-menu.util.d.ts +0 -2
  468. package/public-api.d.ts +0 -11
  469. /package/{src → projects/unipin-angular/src}/assets/scss/forms.scss +0 -0
  470. /package/{src → projects/unipin-angular/src}/assets/scss/grid.scss +0 -0
  471. /package/{src → projects/unipin-angular/src}/assets/scss/select.scss +0 -0
  472. /package/{lib/components/audit/index.d.ts → projects/unipin-angular/src/lib/components/audit/index.ts} +0 -0
  473. /package/{lib/components/buttons/index.d.ts → projects/unipin-angular/src/lib/components/buttons/index.ts} +0 -0
  474. /package/{lib/components/containers/list-container/index.d.ts → projects/unipin-angular/src/lib/components/containers/list-container/index.ts} +0 -0
  475. /package/{lib/components/forms/index.d.ts → projects/unipin-angular/src/lib/components/forms/index.ts} +0 -0
  476. /package/{lib/components/grids/index.d.ts → projects/unipin-angular/src/lib/components/grids/index.ts} +0 -0
  477. /package/{lib/components/infinite-scroll/index.d.ts → projects/unipin-angular/src/lib/components/infinite-scroll/index.ts} +0 -0
  478. /package/{lib/guards/index.d.ts → projects/unipin-angular/src/lib/guards/index.ts} +0 -0
  479. /package/{lib/interceptors/index.d.ts → projects/unipin-angular/src/lib/interceptors/index.ts} +0 -0
  480. /package/{lib/interfaces/index.d.ts → projects/unipin-angular/src/lib/interfaces/index.ts} +0 -0
  481. /package/{lib/modules/micro-frontend/index.d.ts → projects/unipin-angular/src/lib/modules/micro-frontend/index.ts} +0 -0
  482. /package/{lib/resolvers/index.d.ts → projects/unipin-angular/src/lib/resolvers/index.ts} +0 -0
  483. /package/{lib/services/index.d.ts → projects/unipin-angular/src/lib/services/index.ts} +0 -0
  484. /package/{lib/utils/index.d.ts → projects/unipin-angular/src/lib/utils/index.ts} +0 -0
@@ -1,47 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, contentChildren, output } from '@angular/core';
2
- import { IonicModule } from '@ionic/angular';
3
- import { TabContentComponent } from '../tab-content/tab-content.component';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/router";
6
- import * as i2 from "@ionic/angular";
7
- export class TabGroupComponent {
8
- constructor(router, activeRoute) {
9
- this.router = router;
10
- this.activeRoute = activeRoute;
11
- this.onChange = output();
12
- this.changed = output();
13
- this.content = contentChildren(TabContentComponent);
14
- }
15
- ngAfterContentInit() {
16
- const f = this.activeRoute.snapshot.fragment;
17
- this.changeTab(f, this.content().findIndex(({ fragment }) => fragment === f));
18
- }
19
- changeTab(f, i) {
20
- this.changed.emit({ fragment: f, index: i });
21
- this.onChange.emit({ fragment: f, index: i });
22
- this.router.navigate([], { relativeTo: this.activeRoute, fragment: f || undefined, replaceUrl: true });
23
- let found = false;
24
- this.content().forEach((tab) => {
25
- if (tab.fragment !== f)
26
- tab.toggleVisibility(false);
27
- else {
28
- found = true;
29
- this.activeFragment = f;
30
- tab.toggleVisibility(true);
31
- }
32
- });
33
- if (!found) {
34
- this.content()[0].toggleVisibility(true);
35
- this.activeFragment = this.content()[0].fragment;
36
- }
37
- }
38
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TabGroupComponent, deps: [{ token: i1.Router }, { token: i1.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
39
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: TabGroupComponent, isStandalone: true, selector: "up-tab-group", outputs: { onChange: "onChange", changed: "changed" }, queries: [{ propertyName: "content", predicate: TabContentComponent, isSignal: true }], ngImport: i0, template: "<ion-segment \n [scrollable]=\"true\" \n [value]=\"activeFragment\"\n>\n @for (c of content(); track c.fragment) {\n <ion-segment-button\n [value]=\"c.fragment\" \n (click)=\"changeTab(c.fragment, $index)\"\n >\n @if (!c.customHeader) {\n {{ c.header }}\n }\n @else {\n <div \n class=\"{{ c.customHeader.nativeElement.className }}\"\n [innerHTML]=\"c.customHeader.nativeElement.innerHTML\"\n >\n </div>\n }\n </ion-segment-button>\n }\n</ion-segment>\n\n<ng-content />\n", styles: [":host{display:flex;flex-direction:column}ion-segment{display:flex;flex-shrink:0;padding-bottom:16px}ion-segment::-webkit-scrollbar{height:0}ion-segment-button{--color: #9E9E9E;--color-checked: #424242;--indicator-color: #ED6B26;border:none;height:34px;font-weight:400;min-width:100px;min-height:34px;width:fit-content;text-transform:none;letter-spacing:normal;border-radius:.25rem}ion-segment-button.segment-button-checked{font-weight:500}ion-segment-button::part(native){border-radius:4px}ion-segment-button::part(indicator-background){margin:auto;max-width:25%;border-radius:8px}\n"], dependencies: [{ kind: "ngmodule", type: IonicModule }, { kind: "component", type: i2.IonSegment, selector: "ion-segment", inputs: ["color", "disabled", "mode", "scrollable", "selectOnFocus", "swipeGesture", "value"] }, { kind: "component", type: i2.IonSegmentButton, selector: "ion-segment-button", inputs: ["disabled", "layout", "mode", "type", "value"] }, { kind: "directive", type: i2.SelectValueAccessor, selector: "ion-select, ion-radio-group, ion-segment, ion-datetime" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
40
- }
41
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TabGroupComponent, decorators: [{
42
- type: Component,
43
- args: [{ standalone: true, selector: 'up-tab-group', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
44
- IonicModule
45
- ], template: "<ion-segment \n [scrollable]=\"true\" \n [value]=\"activeFragment\"\n>\n @for (c of content(); track c.fragment) {\n <ion-segment-button\n [value]=\"c.fragment\" \n (click)=\"changeTab(c.fragment, $index)\"\n >\n @if (!c.customHeader) {\n {{ c.header }}\n }\n @else {\n <div \n class=\"{{ c.customHeader.nativeElement.className }}\"\n [innerHTML]=\"c.customHeader.nativeElement.innerHTML\"\n >\n </div>\n }\n </ion-segment-button>\n }\n</ion-segment>\n\n<ng-content />\n", styles: [":host{display:flex;flex-direction:column}ion-segment{display:flex;flex-shrink:0;padding-bottom:16px}ion-segment::-webkit-scrollbar{height:0}ion-segment-button{--color: #9E9E9E;--color-checked: #424242;--indicator-color: #ED6B26;border:none;height:34px;font-weight:400;min-width:100px;min-height:34px;width:fit-content;text-transform:none;letter-spacing:normal;border-radius:.25rem}ion-segment-button.segment-button-checked{font-weight:500}ion-segment-button::part(native){border-radius:4px}ion-segment-button::part(indicator-background){margin:auto;max-width:25%;border-radius:8px}\n"] }]
46
- }], ctorParameters: () => [{ type: i1.Router }, { type: i1.ActivatedRoute }] });
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VuaXBpbi1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy90YWJzL3RhYi1ncm91cC90YWItZ3JvdXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdW5pcGluLWFuZ3VsYXIvc3JjL2xpYi9jb21wb25lbnRzL3RhYnMvdGFiLWdyb3VwL3RhYi1ncm91cC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW9CLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUUsTUFBTSxFQUE0QixNQUFNLGVBQWUsQ0FBQztBQUV4SSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7Ozs7QUFhM0UsTUFBTSxPQUFPLGlCQUFpQjtJQWdDNUIsWUFDcUIsTUFBYyxFQUNkLFdBQTJCO1FBRDNCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxnQkFBVyxHQUFYLFdBQVcsQ0FBZ0I7UUF4QmhDLGFBQVEsR0FBdUMsTUFBTSxFQUFFLENBQUM7UUFReEQsWUFBTyxHQUF1QyxNQUFNLEVBQUUsQ0FBQztRQU12RCxZQUFPLEdBQTJDLGVBQWUsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0lBV25HLENBQUM7SUFFRSxrQkFBa0I7UUFDdkIsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDO1FBRTdDLElBQUksQ0FBQyxTQUFTLENBQ1osQ0FBQyxFQUNELElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUUsQ0FBQyxRQUFRLEtBQUssQ0FBQyxDQUFDLENBQzNELENBQUM7SUFDSixDQUFDO0lBVU0sU0FBUyxDQUFDLENBQWdCLEVBQUUsQ0FBUztRQUMxQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLFFBQVEsRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDN0MsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxRQUFRLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBRTlDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEVBQUUsRUFBRSxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFLFFBQVEsRUFBRSxDQUFDLElBQUksU0FBUyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBRXZHLElBQUksS0FBSyxHQUFZLEtBQUssQ0FBQztRQUMzQixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDN0IsSUFBSSxHQUFHLENBQUMsUUFBUSxLQUFLLENBQUM7Z0JBQUUsR0FBRyxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDO2lCQUMvQyxDQUFDO2dCQUNKLEtBQUssR0FBRyxJQUFJLENBQUM7Z0JBQ2IsSUFBSSxDQUFDLGNBQWMsR0FBRyxDQUFDLENBQUM7Z0JBQ3hCLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM3QixDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDWCxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDekMsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDO1FBQ25ELENBQUM7SUFDSCxDQUFDOytHQTFFVSxpQkFBaUI7bUdBQWpCLGlCQUFpQix1SkF3QnNELG1CQUFtQiw2Q0N4Q3ZHLDZwQkF3QkEsZ29CRFhJLFdBQVc7OzRGQUdGLGlCQUFpQjtrQkFWN0IsU0FBUztpQ0FDSSxJQUFJLFlBQ04sY0FBYyxtQkFHUCx1QkFBdUIsQ0FBQyxNQUFNLFdBQ3RDO3dCQUNQLFdBQVc7cUJBQ1oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlckNvbnRlbnRJbml0LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBjb250ZW50Q2hpbGRyZW4sIG91dHB1dCwgT3V0cHV0RW1pdHRlclJlZiwgU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IElvbmljTW9kdWxlIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXInO1xuaW1wb3J0IHsgVGFiQ29udGVudENvbXBvbmVudCB9IGZyb20gJy4uL3RhYi1jb250ZW50L3RhYi1jb250ZW50LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUYWJzQ2hhbmdlZEV2ZW50IH0gZnJvbSAnLi4nO1xuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICd1cC10YWItZ3JvdXAnLFxuICBzdHlsZVVybDogJy4vdGFiLWdyb3VwLmNvbXBvbmVudC5zY3NzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYi1ncm91cC5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBpbXBvcnRzOiBbXG4gICAgSW9uaWNNb2R1bGVcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVGFiR3JvdXBDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0IHtcblxuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgLSBVc2UgYGNoYW5nZWRgIGluc3RlYWQuIFdpbGwgYmUgcmVtb3ZlZCBpbiBuZXh0IG1ham9yIHJlbGVhc2UuXG4gICAqIFxuICAgKiBBbiBvdXRwdXQgdmFyaWFibGUgdGhhdCB1c2VkIHRvIGVtaXRzIGV2ZW50IG9mIHR5cGUgc3RyaW5nIG9yIG51bGwgd2hlbiB2YWx1ZSBjaGFuZ2VkLiBUaGlzXG4gICAqIG91dHB1dCB2YXJpYWJsZSwgd2hlbiBzdWJzY3JpYmVkIHRvLCBlbWl0cyBldmVudHMgY29udGFpbmluZyBpbnN0YW5jZXMgb2Ygc3RyaW5nIG9yIG51bGxcbiAgICogb3IgaXRzIHN1YmNsYXNzLlxuICAgKiBAdHlwZSB7T3V0cHV0RW1pdHRlclJlZjxUYWJzQ2hhbmdlZEV2ZW50Pn1cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBvbkNoYW5nZTogT3V0cHV0RW1pdHRlclJlZjxUYWJzQ2hhbmdlZEV2ZW50PiA9IG91dHB1dCgpO1xuXG4gIC8qKlxuICAgKiBBbiBvdXRwdXQgdmFyaWFibGUgdGhhdCB1c2VkIHRvIGVtaXRzIGV2ZW50IG9mIHR5cGUgc3RyaW5nIG9yIG51bGwgd2hlbiB2YWx1ZSBjaGFuZ2VkLiBUaGlzXG4gICAqIG91dHB1dCB2YXJpYWJsZSwgd2hlbiBzdWJzY3JpYmVkIHRvLCBlbWl0cyBldmVudHMgY29udGFpbmluZyBpbnN0YW5jZXMgb2Ygc3RyaW5nIG9yIG51bGxcbiAgICogb3IgaXRzIHN1YmNsYXNzLlxuICAgKiBAdHlwZSB7T3V0cHV0RW1pdHRlclJlZjxUYWJzQ2hhbmdlZEV2ZW50Pn1cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBjaGFuZ2VkOiBPdXRwdXRFbWl0dGVyUmVmPFRhYnNDaGFuZ2VkRXZlbnQ+ID0gb3V0cHV0KCk7XG5cbiAgLyoqXG4gICAqIEEgbGlzdCBvZiB0YWIgY29udGVudCBjb21wb25lbnRzXG4gICAqIEB0eXBlIHtTaWduYWw8cmVhZG9ubHkgVGFiQ29udGVudENvbXBvbmVudFtdPn1cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBjb250ZW50OiBTaWduYWw8cmVhZG9ubHkgVGFiQ29udGVudENvbXBvbmVudFtdPiA9IGNvbnRlbnRDaGlsZHJlbihUYWJDb250ZW50Q29tcG9uZW50KTtcblxuICAvKipcbiAgICogQSBmbGFnIHZhcmlhYmxlIHRoYXQgdXNlZCB0byBzZXQgdmFsdWUgb2YgaW9uLXNlZ21lbnQgZm9yIHJlcHJlc2VudHMgdGhlIGN1cnJlbnQgc2VsZWN0ZWQgdGFiLlxuICAgKiBAdHlwZSB7c3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZH1cbiAgICovXG4gIHB1YmxpYyBhY3RpdmVGcmFnbWVudDogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgcm91dGVyOiBSb3V0ZXIsXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGFjdGl2ZVJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVxuICApIHsgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZHtcbiAgICBjb25zdCBmID0gdGhpcy5hY3RpdmVSb3V0ZS5zbmFwc2hvdC5mcmFnbWVudDtcbiAgICBcbiAgICB0aGlzLmNoYW5nZVRhYihcbiAgICAgIGYsXG4gICAgICB0aGlzLmNvbnRlbnQoKS5maW5kSW5kZXgoKHsgZnJhZ21lbnQgfSkgPT4gZnJhZ21lbnQgPT09IGYpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBIG1ldGhvZCB3aGVuIHRoZSB0YWIgaXMgY2hhbmdlZCwgaXQgd2lsbCBlbWl0IG9uQ2hhbmdlIHZhcmlhYmxlLCBjaGFuZ2Ugcm91dGVcbiAgICogYmFzZWQgb24gZnJhZ21lbnQgdmFsdWUgaW4gcGFyYW0sIGFuZCBzZWFyY2ggaWYgdGFicyBoYXZlIHRoZSBmcmFnbWVudCB2YWx1ZS5cbiAgICogSWYgaXQncyBmb3VuZCwgaXQnbGwgc2hvdyB0aGUgdGFiJ3MgY29udGVudC4gSWYgaXQncyBub3QsIGl0J2xsIHNob3cgZW1wdHkgY29udGVudC5cbiAgICogXG4gICAqIEBwYXJhbSB7c3RyaW5nIHwgbnVsbH0gZiAtIENvbnRhaW4gdmFsdWUgb2YgdGhlIGZyYWdtZW50IHRoYXQgY3VycmVudGx5IHNlbGVjdGVkLlxuICAgKiBAcGFyYW0ge3N0cmluZyB8IG51bGx9IGkgLSBGcmFnbWVudCBpbmRleC5cbiAgICovXG4gIHB1YmxpYyBjaGFuZ2VUYWIoZjogc3RyaW5nIHwgbnVsbCwgaTogbnVtYmVyKTogdm9pZHtcbiAgICB0aGlzLmNoYW5nZWQuZW1pdCh7IGZyYWdtZW50OiBmLCBpbmRleDogaSB9KTtcbiAgICB0aGlzLm9uQ2hhbmdlLmVtaXQoeyBmcmFnbWVudDogZiwgaW5kZXg6IGkgfSk7XG4gICAgXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW10sIHsgcmVsYXRpdmVUbzogdGhpcy5hY3RpdmVSb3V0ZSwgZnJhZ21lbnQ6IGYgfHwgdW5kZWZpbmVkLCByZXBsYWNlVXJsOiB0cnVlIH0pO1xuXG4gICAgbGV0IGZvdW5kOiBib29sZWFuID0gZmFsc2U7XG4gICAgdGhpcy5jb250ZW50KCkuZm9yRWFjaCgodGFiKSA9PiB7XG4gICAgICBpZiAodGFiLmZyYWdtZW50ICE9PSBmKSB0YWIudG9nZ2xlVmlzaWJpbGl0eShmYWxzZSk7XG4gICAgICBlbHNlIHtcbiAgICAgICAgZm91bmQgPSB0cnVlO1xuICAgICAgICB0aGlzLmFjdGl2ZUZyYWdtZW50ID0gZjtcbiAgICAgICAgdGFiLnRvZ2dsZVZpc2liaWxpdHkodHJ1ZSk7XG4gICAgICB9ICAgICAgXG4gICAgfSk7XG5cbiAgICBpZiAoIWZvdW5kKSB7XG4gICAgICB0aGlzLmNvbnRlbnQoKVswXS50b2dnbGVWaXNpYmlsaXR5KHRydWUpO1xuICAgICAgdGhpcy5hY3RpdmVGcmFnbWVudCA9IHRoaXMuY29udGVudCgpWzBdLmZyYWdtZW50O1xuICAgIH1cbiAgfVxufVxuIiwiPGlvbi1zZWdtZW50IFxuICAgIFtzY3JvbGxhYmxlXT1cInRydWVcIiBcbiAgICBbdmFsdWVdPVwiYWN0aXZlRnJhZ21lbnRcIlxuPlxuICAgIEBmb3IgKGMgb2YgY29udGVudCgpOyB0cmFjayBjLmZyYWdtZW50KSB7XG4gICAgICAgIDxpb24tc2VnbWVudC1idXR0b25cbiAgICAgICAgICAgIFt2YWx1ZV09XCJjLmZyYWdtZW50XCIgXG4gICAgICAgICAgICAoY2xpY2spPVwiY2hhbmdlVGFiKGMuZnJhZ21lbnQsICRpbmRleClcIlxuICAgICAgICA+XG4gICAgICAgICAgICBAaWYgKCFjLmN1c3RvbUhlYWRlcikge1xuICAgICAgICAgICAgICAgIHt7IGMuaGVhZGVyIH19XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICAgICAgPGRpdiBcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ7eyBjLmN1c3RvbUhlYWRlci5uYXRpdmVFbGVtZW50LmNsYXNzTmFtZSB9fVwiXG4gICAgICAgICAgICAgICAgICAgIFtpbm5lckhUTUxdPVwiYy5jdXN0b21IZWFkZXIubmF0aXZlRWxlbWVudC5pbm5lckhUTUxcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9pb24tc2VnbWVudC1idXR0b24+XG4gICAgfVxuPC9pb24tc2VnbWVudD5cblxuPG5nLWNvbnRlbnQgLz5cbiJdfQ==
@@ -1,10 +0,0 @@
1
- import { inject } from '@angular/core';
2
- import { AuthResolver } from '../../resolvers';
3
- export const AuthGuard = () => {
4
- const resolver = inject(AuthResolver);
5
- if (!resolver.isUserLoggedIn()) {
6
- location.href = '/auth/login';
7
- }
8
- return true;
9
- };
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VuaXBpbi1hbmd1bGFyL3NyYy9saWIvZ3VhcmRzL2F1dGgvYXV0aC5ndWFyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQWtCLEdBQVksRUFBRTtJQUNwRCxNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7SUFFdEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjLEVBQUUsRUFBRSxDQUFDO1FBQy9CLFFBQVEsQ0FBQyxJQUFJLEdBQUcsYUFBYSxDQUFDO0lBQ2hDLENBQUM7SUFDRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQXV0aFJlc29sdmVyIH0gZnJvbSAnLi4vLi4vcmVzb2x2ZXJzJztcblxuZXhwb3J0IGNvbnN0IEF1dGhHdWFyZDogKCkgPT4gYm9vbGVhbiA9ICgpOiBib29sZWFuID0+IHtcbiAgY29uc3QgcmVzb2x2ZXIgPSBpbmplY3QoQXV0aFJlc29sdmVyKTtcbiAgXG4gIGlmICghcmVzb2x2ZXIuaXNVc2VyTG9nZ2VkSW4oKSkge1xuICAgIGxvY2F0aW9uLmhyZWYgPSAnL2F1dGgvbG9naW4nO1xuICB9XG4gIHJldHVybiB0cnVlO1xufTtcbiJdfQ==
@@ -1,2 +0,0 @@
1
- export { AuthGuard } from './auth/auth.guard';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmlwaW4tYW5ndWxhci9zcmMvbGliL2d1YXJkcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sbUJBQW1CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBBdXRoR3VhcmQgfSBmcm9tICcuL2F1dGgvYXV0aC5ndWFyZCc7XG4iXX0=
@@ -1,29 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { AuthService } from '../../services';
3
- import * as i0 from "@angular/core";
4
- export const headerInterceptor = (request, next) => {
5
- return next(request.clone({
6
- headers: request.headers,
7
- setHeaders: {
8
- project: 'unipin',
9
- authorization: AuthService.authToken,
10
- },
11
- }));
12
- };
13
- export class HeaderInterceptor {
14
- intercept(request, next) {
15
- return next.handle(request.clone({
16
- headers: request.headers,
17
- setHeaders: {
18
- authorization: AuthService.authToken,
19
- project: 'unipin'
20
- }
21
- }));
22
- }
23
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: HeaderInterceptor, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
24
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: HeaderInterceptor }); }
25
- }
26
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: HeaderInterceptor, decorators: [{
27
- type: Injectable
28
- }] });
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLmludGVyY2VwdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdW5pcGluLWFuZ3VsYXIvc3JjL2xpYi9pbnRlcmNlcHRvcnMvaGVhZGVyL2hlYWRlci5pbnRlcmNlcHRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzNDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFFN0MsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQXNCLENBQ2xELE9BQXlCLEVBQ3pCLElBQW1CLEVBQ1MsRUFBRTtJQUM5QixPQUFPLElBQUksQ0FDVCxPQUFPLENBQUMsS0FBSyxDQUFDO1FBQ1osT0FBTyxFQUFFLE9BQU8sQ0FBQyxPQUFPO1FBQ3hCLFVBQVUsRUFBRTtZQUNWLE9BQU8sRUFBRSxRQUFRO1lBQ2pCLGFBQWEsRUFBRSxXQUFXLENBQUMsU0FBUztTQUNyQztLQUNGLENBQUMsQ0FDSCxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBTUYsTUFBTSxPQUFPLGlCQUFpQjtJQUVyQixTQUFTLENBQUMsT0FBeUIsRUFBRSxJQUFpQjtRQUMzRCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQztZQUMvQixPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU87WUFDeEIsVUFBVSxFQUFFO2dCQUNWLGFBQWEsRUFBRSxXQUFXLENBQUMsU0FBUztnQkFDcEMsT0FBTyxFQUFFLFFBQVE7YUFDbEI7U0FDRixDQUFDLENBQUMsQ0FBQztJQUNOLENBQUM7K0dBVlUsaUJBQWlCO21IQUFqQixpQkFBaUI7OzRGQUFqQixpQkFBaUI7a0JBRDdCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIdHRwRXZlbnQsIEh0dHBIYW5kbGVyLCBIdHRwSGFuZGxlckZuLCBIdHRwSW50ZXJjZXB0b3IsIEh0dHBJbnRlcmNlcHRvckZuLCBIdHRwUmVxdWVzdCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuXG5leHBvcnQgY29uc3QgaGVhZGVySW50ZXJjZXB0b3I6IEh0dHBJbnRlcmNlcHRvckZuID0gKFxuICByZXF1ZXN0OiBIdHRwUmVxdWVzdDxhbnk+LFxuICBuZXh0OiBIdHRwSGFuZGxlckZuXG4pOiBPYnNlcnZhYmxlPEh0dHBFdmVudDxhbnk+PiA9PiB7XG4gIHJldHVybiBuZXh0KFxuICAgIHJlcXVlc3QuY2xvbmUoe1xuICAgICAgaGVhZGVyczogcmVxdWVzdC5oZWFkZXJzLFxuICAgICAgc2V0SGVhZGVyczoge1xuICAgICAgICBwcm9qZWN0OiAndW5pcGluJyxcbiAgICAgICAgYXV0aG9yaXphdGlvbjogQXV0aFNlcnZpY2UuYXV0aFRva2VuLFxuICAgICAgfSxcbiAgICB9KVxuICApO1xufTtcblxuLyoqXG4gKiBAZGVwcmVjYXRlZCAtIERJIGJhc2VkIGludGVyY2VwdG9yIHdpbGwgYmUgcmVtb3ZlZCBhdCB2MTkuMC4wLCB1c2UgZnVuY3Rpb24gYmFzZWQgaW50ZXJjZXB0b3IgaW5zdGVhZFxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgSGVhZGVySW50ZXJjZXB0b3IgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xuXG4gIHB1YmxpYyBpbnRlcmNlcHQocmVxdWVzdDogSHR0cFJlcXVlc3Q8YW55PiwgbmV4dDogSHR0cEhhbmRsZXIpOiBPYnNlcnZhYmxlPEh0dHBFdmVudDxhbnk+PntcbiAgICByZXR1cm4gbmV4dC5oYW5kbGUocmVxdWVzdC5jbG9uZSh7XG4gICAgICBoZWFkZXJzOiByZXF1ZXN0LmhlYWRlcnMsXG4gICAgICBzZXRIZWFkZXJzOiB7XG4gICAgICAgIGF1dGhvcml6YXRpb246IEF1dGhTZXJ2aWNlLmF1dGhUb2tlbixcbiAgICAgICAgcHJvamVjdDogJ3VuaXBpbidcbiAgICAgIH1cbiAgICB9KSk7XG4gIH1cbn1cbiJdfQ==
@@ -1,3 +0,0 @@
1
- export { headerInterceptor, HeaderInterceptor } from './header/header.interceptor';
2
- export { refreshTokenInterceptor, RefreshTokenInterceptor } from './refresh-token/refresh-token.interceptor';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmlwaW4tYW5ndWxhci9zcmMvbGliL2ludGVyY2VwdG9ycy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNuRixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IGhlYWRlckludGVyY2VwdG9yLCBIZWFkZXJJbnRlcmNlcHRvciB9IGZyb20gJy4vaGVhZGVyL2hlYWRlci5pbnRlcmNlcHRvcic7XG5leHBvcnQgeyByZWZyZXNoVG9rZW5JbnRlcmNlcHRvciwgUmVmcmVzaFRva2VuSW50ZXJjZXB0b3IgfSBmcm9tICcuL3JlZnJlc2gtdG9rZW4vcmVmcmVzaC10b2tlbi5pbnRlcmNlcHRvcic7XG4iXX0=
@@ -1,83 +0,0 @@
1
- import { inject, Injectable } from '@angular/core';
2
- import { Router } from '@angular/router';
3
- import { catchError, switchMap, throwError } from 'rxjs';
4
- import { AuthService } from '../../services';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "@angular/router";
7
- import * as i2 from "../../services";
8
- export const refreshTokenInterceptor = (request, next) => {
9
- const router = inject(Router);
10
- const authService = inject(AuthService);
11
- return next(request).pipe(catchError(({ error: { errors } }) => {
12
- if (errors[0].extensions.code !== 'USER_INVALID_TOKEN') {
13
- return throwError(() => errors[0]);
14
- }
15
- return authService.refreshToken({ refreshToken: AuthService.refreshToken }).pipe(switchMap(({ data }) => {
16
- const { accessToken, refreshToken } = data.authMsRefreshAccessToken;
17
- AuthService.authToken = accessToken;
18
- AuthService.refreshToken = refreshToken;
19
- localStorage.setItem('authToken', accessToken);
20
- localStorage.setItem('refreshToken', refreshToken);
21
- return next(request.clone({
22
- setHeaders: {
23
- authorization: accessToken,
24
- },
25
- }));
26
- }), catchError(() => {
27
- localStorage.removeItem('roles');
28
- localStorage.removeItem('userGuid');
29
- localStorage.removeItem('authToken');
30
- localStorage.removeItem('refreshToken');
31
- AuthService.authToken = '';
32
- AuthService.refreshToken = '';
33
- authService.user = undefined;
34
- setTimeout(() => {
35
- location.href = `/auth/login?url=${encodeURIComponent(router.url + location.hash)}`;
36
- }, 250);
37
- return throwError(() => errors[0]);
38
- }));
39
- }));
40
- };
41
- export class RefreshTokenInterceptor {
42
- constructor(router, authService) {
43
- this.router = router;
44
- this.authService = authService;
45
- }
46
- intercept(request, next) {
47
- return next.handle(request).pipe(catchError(({ error: { errors } }) => {
48
- if (errors[0].extensions.code === 'USER_INVALID_TOKEN') {
49
- return this.authService.refreshToken({ refreshToken: AuthService.refreshToken }).pipe(switchMap(({ data }) => {
50
- const { accessToken, refreshToken } = data.authMsRefreshAccessToken;
51
- AuthService.authToken = accessToken;
52
- AuthService.refreshToken = refreshToken;
53
- localStorage.setItem('authToken', accessToken);
54
- localStorage.setItem('refreshToken', refreshToken);
55
- return next.handle(request.clone({
56
- setHeaders: {
57
- authorization: accessToken
58
- }
59
- }));
60
- }), catchError(() => {
61
- localStorage.removeItem('roles');
62
- localStorage.removeItem('userGuid');
63
- localStorage.removeItem('authToken');
64
- localStorage.removeItem('refreshToken');
65
- AuthService.authToken = '';
66
- AuthService.refreshToken = '';
67
- this.authService.user = undefined;
68
- setTimeout(() => {
69
- location.href = `/auth/login?url=${encodeURIComponent(this.router.url + location.hash)}`;
70
- }, 250);
71
- return throwError(() => errors[0]);
72
- }));
73
- }
74
- return throwError(() => errors[0]);
75
- }));
76
- }
77
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RefreshTokenInterceptor, deps: [{ token: i1.Router }, { token: i2.AuthService }], target: i0.ɵɵFactoryTarget.Injectable }); }
78
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RefreshTokenInterceptor }); }
79
- }
80
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RefreshTokenInterceptor, decorators: [{
81
- type: Injectable
82
- }], ctorParameters: () => [{ type: i1.Router }, { type: i2.AuthService }] });
83
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVmcmVzaC10b2tlbi5pbnRlcmNlcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VuaXBpbi1hbmd1bGFyL3NyYy9saWIvaW50ZXJjZXB0b3JzL3JlZnJlc2gtdG9rZW4vcmVmcmVzaC10b2tlbi5pbnRlcmNlcHRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUFFLFVBQVUsRUFBYyxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQUU3QyxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBc0IsQ0FDeEQsT0FBeUIsRUFDekIsSUFBbUIsRUFDUyxFQUFFO0lBQzlCLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM5QixNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7SUFFeEMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUN2QixVQUFVLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsRUFBRTtRQUNuQyxJQUFJLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsSUFBSSxLQUFLLG9CQUFvQixFQUFFLENBQUM7WUFDdkQsT0FBTyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDckMsQ0FBQztRQUVELE9BQU8sV0FBVyxDQUFDLFlBQVksQ0FBQyxFQUFFLFlBQVksRUFBRSxXQUFXLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQzlFLFNBQVMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRTtZQUNyQixNQUFNLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxHQUFHLElBQUssQ0FBQyx3QkFBd0IsQ0FBQztZQUVyRSxXQUFXLENBQUMsU0FBUyxHQUFHLFdBQVksQ0FBQztZQUNyQyxXQUFXLENBQUMsWUFBWSxHQUFHLFlBQWEsQ0FBQztZQUV6QyxZQUFZLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxXQUFZLENBQUMsQ0FBQztZQUNoRCxZQUFZLENBQUMsT0FBTyxDQUFDLGNBQWMsRUFBRSxZQUFhLENBQUMsQ0FBQztZQUVwRCxPQUFPLElBQUksQ0FDVCxPQUFPLENBQUMsS0FBSyxDQUNYO2dCQUNFLFVBQVUsRUFBRTtvQkFDVixhQUFhLEVBQUUsV0FBWTtpQkFDNUI7YUFDRixDQUNGLENBQ0YsQ0FBQztRQUNKLENBQUMsQ0FBQyxFQUNGLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZCxZQUFZLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ2pDLFlBQVksQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDcEMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUNyQyxZQUFZLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBRXhDLFdBQVcsQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO1lBQzNCLFdBQVcsQ0FBQyxZQUFZLEdBQUcsRUFBRSxDQUFDO1lBQzlCLFdBQVcsQ0FBQyxJQUFJLEdBQUcsU0FBUyxDQUFDO1lBRTdCLFVBQVUsQ0FDUixHQUFHLEVBQUU7Z0JBQ0gsUUFBUSxDQUFDLElBQUksR0FBRyxtQkFBb0Isa0JBQWtCLENBQUMsTUFBTSxDQUFDLEdBQUcsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFFLEVBQUUsQ0FBQztZQUN4RixDQUFDLEVBQ0QsR0FBRyxDQUNKLENBQUM7WUFDRixPQUFPLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNyQyxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQyxDQUFDLENBQ0gsQ0FBQztBQUNKLENBQUMsQ0FBQztBQU1GLE1BQU0sT0FBTyx1QkFBdUI7SUFFbEMsWUFDcUIsTUFBYyxFQUNkLFdBQXdCO1FBRHhCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtJQUN6QyxDQUFDO0lBRUUsU0FBUyxDQUFDLE9BQXlCLEVBQUUsSUFBaUI7UUFDM0QsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FDOUIsVUFBVSxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFLEVBQUU7WUFDbkMsSUFBSSxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLElBQUksS0FBSyxvQkFBb0IsRUFBRSxDQUFDO2dCQUN2RCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLEVBQUUsWUFBWSxFQUFFLFdBQVcsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FDbkYsU0FBUyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFO29CQUNyQixNQUFNLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxHQUFHLElBQUssQ0FBQyx3QkFBd0IsQ0FBQztvQkFFckUsV0FBVyxDQUFDLFNBQVMsR0FBRyxXQUFZLENBQUM7b0JBQ3JDLFdBQVcsQ0FBQyxZQUFZLEdBQUcsWUFBYSxDQUFDO29CQUV6QyxZQUFZLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxXQUFZLENBQUMsQ0FBQztvQkFDaEQsWUFBWSxDQUFDLE9BQU8sQ0FBQyxjQUFjLEVBQUUsWUFBYSxDQUFDLENBQUM7b0JBRXBELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FDaEIsT0FBTyxDQUFDLEtBQUssQ0FDWDt3QkFDRSxVQUFVLEVBQUU7NEJBQ1YsYUFBYSxFQUFFLFdBQVk7eUJBQzVCO3FCQUNGLENBQ0YsQ0FDRixDQUFDO2dCQUNKLENBQUMsQ0FBQyxFQUNGLFVBQVUsQ0FBQyxHQUFHLEVBQUU7b0JBQ2QsWUFBWSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQztvQkFDakMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsQ0FBQztvQkFDcEMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsQ0FBQztvQkFDckMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxjQUFjLENBQUMsQ0FBQztvQkFFeEMsV0FBVyxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7b0JBQzNCLFdBQVcsQ0FBQyxZQUFZLEdBQUcsRUFBRSxDQUFDO29CQUM5QixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksR0FBRyxTQUFTLENBQUM7b0JBRWxDLFVBQVUsQ0FDUixHQUFHLEVBQUU7d0JBQ0gsUUFBUSxDQUFDLElBQUksR0FBRyxtQkFBb0Isa0JBQWtCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBRSxFQUFFLENBQUM7b0JBQzdGLENBQUMsRUFDRCxHQUFHLENBQ0osQ0FBQztvQkFDRixPQUFPLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDckMsQ0FBQyxDQUFDLENBQ0gsQ0FBQztZQUNKLENBQUM7WUFFRCxPQUFPLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNyQyxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQzsrR0F2RFUsdUJBQXVCO21IQUF2Qix1QkFBdUI7OzRGQUF2Qix1QkFBdUI7a0JBRG5DLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEh0dHBFdmVudCwgSHR0cEhhbmRsZXIsIEh0dHBIYW5kbGVyRm4sIEh0dHBJbnRlcmNlcHRvciwgSHR0cEludGVyY2VwdG9yRm4sIEh0dHBSZXF1ZXN0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIE9ic2VydmFibGUsIHN3aXRjaE1hcCwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XG5cbmV4cG9ydCBjb25zdCByZWZyZXNoVG9rZW5JbnRlcmNlcHRvcjogSHR0cEludGVyY2VwdG9yRm4gPSAoXG4gIHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PGFueT4sIFxuICBuZXh0OiBIdHRwSGFuZGxlckZuXG4pOiBPYnNlcnZhYmxlPEh0dHBFdmVudDxhbnk+PiA9PiB7XG4gIGNvbnN0IHJvdXRlciA9IGluamVjdChSb3V0ZXIpO1xuICBjb25zdCBhdXRoU2VydmljZSA9IGluamVjdChBdXRoU2VydmljZSk7XG5cbiAgcmV0dXJuIG5leHQocmVxdWVzdCkucGlwZShcbiAgICBjYXRjaEVycm9yKCh7IGVycm9yOiB7IGVycm9ycyB9IH0pID0+IHtcbiAgICAgIGlmIChlcnJvcnNbMF0uZXh0ZW5zaW9ucy5jb2RlICE9PSAnVVNFUl9JTlZBTElEX1RPS0VOJykge1xuICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBlcnJvcnNbMF0pO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gYXV0aFNlcnZpY2UucmVmcmVzaFRva2VuKHsgcmVmcmVzaFRva2VuOiBBdXRoU2VydmljZS5yZWZyZXNoVG9rZW4gfSkucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKCh7IGRhdGEgfSkgPT4ge1xuICAgICAgICAgIGNvbnN0IHsgYWNjZXNzVG9rZW4sIHJlZnJlc2hUb2tlbiB9ID0gZGF0YSEuYXV0aE1zUmVmcmVzaEFjY2Vzc1Rva2VuO1xuXG4gICAgICAgICAgQXV0aFNlcnZpY2UuYXV0aFRva2VuID0gYWNjZXNzVG9rZW4hO1xuICAgICAgICAgIEF1dGhTZXJ2aWNlLnJlZnJlc2hUb2tlbiA9IHJlZnJlc2hUb2tlbiE7XG5cbiAgICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnYXV0aFRva2VuJywgYWNjZXNzVG9rZW4hKTtcbiAgICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgncmVmcmVzaFRva2VuJywgcmVmcmVzaFRva2VuISk7XG5cbiAgICAgICAgICByZXR1cm4gbmV4dChcbiAgICAgICAgICAgIHJlcXVlc3QuY2xvbmUoXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBzZXRIZWFkZXJzOiB7XG4gICAgICAgICAgICAgICAgICBhdXRob3JpemF0aW9uOiBhY2Nlc3NUb2tlbiEsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKVxuICAgICAgICAgICk7XG4gICAgICAgIH0pLFxuICAgICAgICBjYXRjaEVycm9yKCgpID0+IHtcbiAgICAgICAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSgncm9sZXMnKTtcbiAgICAgICAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSgndXNlckd1aWQnKTtcbiAgICAgICAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSgnYXV0aFRva2VuJyk7XG4gICAgICAgICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oJ3JlZnJlc2hUb2tlbicpO1xuXG4gICAgICAgICAgQXV0aFNlcnZpY2UuYXV0aFRva2VuID0gJyc7XG4gICAgICAgICAgQXV0aFNlcnZpY2UucmVmcmVzaFRva2VuID0gJyc7XG4gICAgICAgICAgYXV0aFNlcnZpY2UudXNlciA9IHVuZGVmaW5lZDtcblxuICAgICAgICAgIHNldFRpbWVvdXQoXG4gICAgICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgICAgIGxvY2F0aW9uLmhyZWYgPSBgL2F1dGgvbG9naW4/dXJsPSR7IGVuY29kZVVSSUNvbXBvbmVudChyb3V0ZXIudXJsICsgbG9jYXRpb24uaGFzaCkgfWA7XG4gICAgICAgICAgICB9LCBcbiAgICAgICAgICAgIDI1MFxuICAgICAgICAgICk7XG4gICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gZXJyb3JzWzBdKTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gICAgfSlcbiAgKTtcbn07XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgLSBESSBiYXNlZCBpbnRlcmNlcHRvciB3aWxsIGJlIHJlbW92ZWQgYXQgdjE5LjAuMCwgdXNlIGZ1bmN0aW9uIGJhc2VkIGludGVyY2VwdG9yIGluc3RlYWRcbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFJlZnJlc2hUb2tlbkludGVyY2VwdG9yIGltcGxlbWVudHMgSHR0cEludGVyY2VwdG9yIHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgcm91dGVyOiBSb3V0ZXIsXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSxcbiAgKSB7IH1cblxuICBwdWJsaWMgaW50ZXJjZXB0KHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PGFueT4sIG5leHQ6IEh0dHBIYW5kbGVyKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8YW55Pj57XG4gICAgcmV0dXJuIG5leHQuaGFuZGxlKHJlcXVlc3QpLnBpcGUoXG4gICAgICBjYXRjaEVycm9yKCh7IGVycm9yOiB7IGVycm9ycyB9IH0pID0+IHtcbiAgICAgICAgaWYgKGVycm9yc1swXS5leHRlbnNpb25zLmNvZGUgPT09ICdVU0VSX0lOVkFMSURfVE9LRU4nKSB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuYXV0aFNlcnZpY2UucmVmcmVzaFRva2VuKHsgcmVmcmVzaFRva2VuOiBBdXRoU2VydmljZS5yZWZyZXNoVG9rZW4gfSkucGlwZShcbiAgICAgICAgICAgIHN3aXRjaE1hcCgoeyBkYXRhIH0pID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgeyBhY2Nlc3NUb2tlbiwgcmVmcmVzaFRva2VuIH0gPSBkYXRhIS5hdXRoTXNSZWZyZXNoQWNjZXNzVG9rZW47XG5cbiAgICAgICAgICAgICAgQXV0aFNlcnZpY2UuYXV0aFRva2VuID0gYWNjZXNzVG9rZW4hO1xuICAgICAgICAgICAgICBBdXRoU2VydmljZS5yZWZyZXNoVG9rZW4gPSByZWZyZXNoVG9rZW4hO1xuXG4gICAgICAgICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCdhdXRoVG9rZW4nLCBhY2Nlc3NUb2tlbiEpO1xuICAgICAgICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgncmVmcmVzaFRva2VuJywgcmVmcmVzaFRva2VuISk7XG5cbiAgICAgICAgICAgICAgcmV0dXJuIG5leHQuaGFuZGxlKFxuICAgICAgICAgICAgICAgIHJlcXVlc3QuY2xvbmUoXG4gICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHNldEhlYWRlcnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICBhdXRob3JpemF0aW9uOiBhY2Nlc3NUb2tlbiFcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgY2F0Y2hFcnJvcigoKSA9PiB7XG4gICAgICAgICAgICAgIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKCdyb2xlcycpO1xuICAgICAgICAgICAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSgndXNlckd1aWQnKTtcbiAgICAgICAgICAgICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oJ2F1dGhUb2tlbicpO1xuICAgICAgICAgICAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSgncmVmcmVzaFRva2VuJyk7XG5cbiAgICAgICAgICAgICAgQXV0aFNlcnZpY2UuYXV0aFRva2VuID0gJyc7XG4gICAgICAgICAgICAgIEF1dGhTZXJ2aWNlLnJlZnJlc2hUb2tlbiA9ICcnO1xuICAgICAgICAgICAgICB0aGlzLmF1dGhTZXJ2aWNlLnVzZXIgPSB1bmRlZmluZWQ7XG5cbiAgICAgICAgICAgICAgc2V0VGltZW91dChcbiAgICAgICAgICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICBsb2NhdGlvbi5ocmVmID0gYC9hdXRoL2xvZ2luP3VybD0keyBlbmNvZGVVUklDb21wb25lbnQodGhpcy5yb3V0ZXIudXJsICsgbG9jYXRpb24uaGFzaCkgfWA7XG4gICAgICAgICAgICAgICAgfSwgXG4gICAgICAgICAgICAgICAgMjUwXG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IGVycm9yc1swXSk7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBlcnJvcnNbMF0pO1xuICAgICAgfSlcbiAgICApO1xuICB9XG59XG4iXX0=
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmlwaW4tYW5ndWxhci9zcmMvbGliL2ludGVyZmFjZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IFVzZXIgfSBmcm9tICcuL3VzZXIvdXNlci5pbnRlcmZhY2UnO1xuIl19
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmlwaW4tYW5ndWxhci9zcmMvbGliL2ludGVyZmFjZXMvdXNlci91c2VyLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBVc2VyIHtcbiAgYmlydGhkYXk6IHN0cmluZztcbiAgY2F0ZWdvcnk/OiBzdHJpbmcgfCBudWxsO1xuICBlbWFpbDogc3RyaW5nO1xuICBnZW5kZXI6IHN0cmluZztcbiAgZ3VpZDogc3RyaW5nO1xuICBtb2JpbGVOdW1iZXI/OiBzdHJpbmcgfCBudWxsO1xuICBuYW1lOiBzdHJpbmc7XG4gIHBob3RvOiBzdHJpbmc7XG4gIHJvbGVzOiB7XG4gICAgZ3VpZDogc3RyaW5nO1xuICAgIGNvZGU6IHN0cmluZztcbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgc3RhdHVzOiBzdHJpbmc7XG4gICAgaXNJbnRlcm5hbDogYm9vbGVhbjtcbiAgfVtdO1xuICBkZXBhcnRtZW50czoge1xuICAgIGRlcGFydG1lbnQ6IHtcbiAgICAgIGd1aWQ6IHN0cmluZztcbiAgICAgIGhpZXJhcmNoeUNvZGU6IHN0cmluZztcbiAgICAgIGhpZXJhcmNoeVBhdGg6IHN0cmluZztcbiAgICAgIG5hbWU6IHN0cmluZztcbiAgICAgIHN0YXR1czogc3RyaW5nO1xuICAgIH07XG4gICAgaXNMZWFkOiBib29sZWFuO1xuICB9W107XG59XG4iXX0=
@@ -1,3 +0,0 @@
1
- export { bootstrap } from './micro-frontend';
2
- export { PermissionDirective, PermissionGuard, PermissionService, UnauthorizedPage, provideLoadingConfig, LoadingPage, } from './permission';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmlwaW4tYW5ndWxhci9zcmMvbGliL21vZHVsZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzdDLE9BQU8sRUFDSCxtQkFBbUIsRUFDbkIsZUFBZSxFQUNmLGlCQUFpQixFQUNqQixnQkFBZ0IsRUFHaEIsb0JBQW9CLEVBQ3BCLFdBQVcsR0FDZCxNQUFNLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IGJvb3RzdHJhcCB9IGZyb20gJy4vbWljcm8tZnJvbnRlbmQnO1xuZXhwb3J0IHtcbiAgICBQZXJtaXNzaW9uRGlyZWN0aXZlLFxuICAgIFBlcm1pc3Npb25HdWFyZCxcbiAgICBQZXJtaXNzaW9uU2VydmljZSxcbiAgICBVbmF1dGhvcml6ZWRQYWdlLFxuXG4gICAgTG9hZGluZ0NvbmZpZyxcbiAgICBwcm92aWRlTG9hZGluZ0NvbmZpZyxcbiAgICBMb2FkaW5nUGFnZSxcbn0gZnJvbSAnLi9wZXJtaXNzaW9uJztcbiJdfQ==
@@ -1,2 +0,0 @@
1
- export { bootstrap } from './utils/mf-bootstrap.util';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmlwaW4tYW5ndWxhci9zcmMvbGliL21vZHVsZXMvbWljcm8tZnJvbnRlbmQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDJCQUEyQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgYm9vdHN0cmFwIH0gZnJvbSAnLi91dGlscy9tZi1ib290c3RyYXAudXRpbCc7XG4iXX0=
@@ -1,55 +0,0 @@
1
- import { enableProdMode, NgZone } from '@angular/core';
2
- import { Location } from '@angular/common';
3
- import { Router } from '@angular/router';
4
- import { bootstrapApplication, createApplication } from '@angular/platform-browser';
5
- import { getGlobalStateSlice, setGlobalStateSlice } from './mf-global-state.util';
6
- import { createCustomElement } from '@angular/elements';
7
- function getNgZone() {
8
- return (getGlobalStateSlice((state) => state.ngZone));
9
- }
10
- export function shareNgZone(zone) {
11
- setGlobalStateSlice({ ngZone: zone });
12
- }
13
- export function bootstrap(component, options, config) {
14
- options.production && enableProdMode();
15
- if (options.appType === 'shell') {
16
- bootstrapApplication(component, config).then((ref) => {
17
- shareShellZone(ref.injector);
18
- });
19
- return;
20
- }
21
- if (!getNgZone() && isLocalhost()) {
22
- bootstrapApplication(component, config).then((ref) => {
23
- connectMicroFrontendRouter(ref.injector);
24
- });
25
- return;
26
- }
27
- (async () => {
28
- config.providers.push({ provide: NgZone, useValue: getNgZone() });
29
- const app = await createApplication(config);
30
- customElements.define(options.elementName, createCustomElement(component, { injector: app.injector }));
31
- connectMicroFrontendRouter(app.injector);
32
- })();
33
- }
34
- function shareShellZone(injector) {
35
- const ngZone = injector.get(NgZone, null);
36
- if (!ngZone) {
37
- console.warn('No NgZone to share found');
38
- return;
39
- }
40
- shareNgZone(ngZone);
41
- }
42
- function connectMicroFrontendRouter(injector) {
43
- const router = injector.get(Router);
44
- const location = injector.get(Location);
45
- if (!router) {
46
- console.warn('No router to connect found');
47
- return;
48
- }
49
- router.navigateByUrl(location.path() + window.location.hash);
50
- }
51
- function isLocalhost() {
52
- const hostname = window.location.hostname;
53
- return hostname === 'localhost' || hostname === '127.0.0.1';
54
- }
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWYtYm9vdHN0cmFwLnV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmlwaW4tYW5ndWxhci9zcmMvbGliL21vZHVsZXMvbWljcm8tZnJvbnRlbmQvdXRpbHMvbWYtYm9vdHN0cmFwLnV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixjQUFjLEVBQVksTUFBTSxFQUFRLE1BQU0sZUFBZSxDQUFDO0FBQzFGLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDcEYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLG1CQUFtQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDbEYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFVeEQsU0FBUyxTQUFTO0lBQ2hCLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLEtBQXlCLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO0FBQzVFLENBQUM7QUFFRCxNQUFNLFVBQVUsV0FBVyxDQUFDLElBQVk7SUFDdEMsbUJBQW1CLENBQUMsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztBQUN4QyxDQUFDO0FBRUQsTUFBTSxVQUFVLFNBQVMsQ0FBSSxTQUFrQixFQUFFLE9BQWdCLEVBQUUsTUFBeUI7SUFDMUYsT0FBTyxDQUFDLFVBQVUsSUFBSSxjQUFjLEVBQUUsQ0FBQztJQUV2QyxJQUFJLE9BQU8sQ0FBQyxPQUFPLEtBQUssT0FBTyxFQUFFLENBQUM7UUFDaEMsb0JBQW9CLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ25ELGNBQWMsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDL0IsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPO0lBQ1QsQ0FBQztJQUVELElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxXQUFXLEVBQUUsRUFBRSxDQUFDO1FBQ2xDLG9CQUFvQixDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUNuRCwwQkFBMEIsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDM0MsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPO0lBQ1QsQ0FBQztJQUVELENBQUMsS0FBSyxJQUFJLEVBQUU7UUFDVixNQUFNLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVsRSxNQUFNLEdBQUcsR0FBRyxNQUFNLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzVDLGNBQWMsQ0FBQyxNQUFNLENBQVUsT0FBTyxDQUFDLFdBQVcsRUFBRSxtQkFBbUIsQ0FBQyxTQUFTLEVBQUUsRUFBRSxRQUFRLEVBQUUsR0FBRyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUVoSCwwQkFBMEIsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDM0MsQ0FBQyxDQUFDLEVBQUUsQ0FBQztBQUNQLENBQUM7QUFFRCxTQUFTLGNBQWMsQ0FBQyxRQUFrQjtJQUN4QyxNQUFNLE1BQU0sR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztJQUMxQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDWixPQUFPLENBQUMsSUFBSSxDQUFDLDBCQUEwQixDQUFDLENBQUM7UUFDekMsT0FBTztJQUNULENBQUM7SUFDRCxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDdEIsQ0FBQztBQUVELFNBQVMsMEJBQTBCLENBQUMsUUFBa0I7SUFDcEQsTUFBTSxNQUFNLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNwQyxNQUFNLFFBQVEsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBRXhDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNaLE9BQU8sQ0FBQyxJQUFJLENBQUMsNEJBQTRCLENBQUMsQ0FBQztRQUMzQyxPQUFPO0lBQ1QsQ0FBQztJQUNELE1BQU0sQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDL0QsQ0FBQztBQUVELFNBQVMsV0FBVztJQUNsQixNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQztJQUMxQyxPQUFPLFFBQVEsS0FBSyxXQUFXLElBQUksUUFBUSxLQUFLLFdBQVcsQ0FBQztBQUM5RCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXBwbGljYXRpb25Db25maWcsIGVuYWJsZVByb2RNb2RlLCBJbmplY3RvciwgTmdab25lLCBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBMb2NhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgYm9vdHN0cmFwQXBwbGljYXRpb24sIGNyZWF0ZUFwcGxpY2F0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQgeyBnZXRHbG9iYWxTdGF0ZVNsaWNlLCBzZXRHbG9iYWxTdGF0ZVNsaWNlIH0gZnJvbSAnLi9tZi1nbG9iYWwtc3RhdGUudXRpbCc7XG5pbXBvcnQgeyBjcmVhdGVDdXN0b21FbGVtZW50IH0gZnJvbSAnQGFuZ3VsYXIvZWxlbWVudHMnO1xuXG5leHBvcnQgdHlwZSBBcHBUeXBlID0gJ3NoZWxsJyB8ICdtaWNyb2Zyb250ZW5kJztcblxuZXhwb3J0IHR5cGUgT3B0aW9ucyA9IHtcbiAgcHJvZHVjdGlvbjogYm9vbGVhbjtcbiAgYXBwVHlwZTogQXBwVHlwZTtcbiAgZWxlbWVudE5hbWU/OiBzdHJpbmc7XG59O1xuXG5mdW5jdGlvbiBnZXROZ1pvbmUoKTogTmdab25le1xuICByZXR1cm4gKGdldEdsb2JhbFN0YXRlU2xpY2UoKHN0YXRlOiB7IG5nWm9uZTogTmdab25lIH0pID0+IHN0YXRlLm5nWm9uZSkpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gc2hhcmVOZ1pvbmUoem9uZTogTmdab25lKTogdm9pZHtcbiAgc2V0R2xvYmFsU3RhdGVTbGljZSh7IG5nWm9uZTogem9uZSB9KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGJvb3RzdHJhcDxNPihjb21wb25lbnQ6IFR5cGU8TT4sIG9wdGlvbnM6IE9wdGlvbnMsIGNvbmZpZzogQXBwbGljYXRpb25Db25maWcpOiB2b2lke1xuICBvcHRpb25zLnByb2R1Y3Rpb24gJiYgZW5hYmxlUHJvZE1vZGUoKTtcblxuICBpZiAob3B0aW9ucy5hcHBUeXBlID09PSAnc2hlbGwnKSB7XG4gICAgYm9vdHN0cmFwQXBwbGljYXRpb24oY29tcG9uZW50LCBjb25maWcpLnRoZW4oKHJlZikgPT4ge1xuICAgICAgc2hhcmVTaGVsbFpvbmUocmVmLmluamVjdG9yKTtcbiAgICB9KTtcbiAgICByZXR1cm47XG4gIH1cblxuICBpZiAoIWdldE5nWm9uZSgpICYmIGlzTG9jYWxob3N0KCkpIHtcbiAgICBib290c3RyYXBBcHBsaWNhdGlvbihjb21wb25lbnQsIGNvbmZpZykudGhlbigocmVmKSA9PiB7XG4gICAgICBjb25uZWN0TWljcm9Gcm9udGVuZFJvdXRlcihyZWYuaW5qZWN0b3IpO1xuICAgIH0pO1xuICAgIHJldHVybjtcbiAgfVxuICBcbiAgKGFzeW5jICgpID0+IHtcbiAgICBjb25maWcucHJvdmlkZXJzLnB1c2goeyBwcm92aWRlOiBOZ1pvbmUsIHVzZVZhbHVlOiBnZXROZ1pvbmUoKSB9KTtcblxuICAgIGNvbnN0IGFwcCA9IGF3YWl0IGNyZWF0ZUFwcGxpY2F0aW9uKGNvbmZpZyk7XG4gICAgY3VzdG9tRWxlbWVudHMuZGVmaW5lKDxzdHJpbmc+IG9wdGlvbnMuZWxlbWVudE5hbWUsIGNyZWF0ZUN1c3RvbUVsZW1lbnQoY29tcG9uZW50LCB7IGluamVjdG9yOiBhcHAuaW5qZWN0b3IgfSkpO1xuXG4gICAgY29ubmVjdE1pY3JvRnJvbnRlbmRSb3V0ZXIoYXBwLmluamVjdG9yKTtcbiAgfSkoKTtcbn1cblxuZnVuY3Rpb24gc2hhcmVTaGVsbFpvbmUoaW5qZWN0b3I6IEluamVjdG9yKTogdm9pZHtcbiAgY29uc3Qgbmdab25lID0gaW5qZWN0b3IuZ2V0KE5nWm9uZSwgbnVsbCk7XG4gIGlmICghbmdab25lKSB7XG4gICAgY29uc29sZS53YXJuKCdObyBOZ1pvbmUgdG8gc2hhcmUgZm91bmQnKTtcbiAgICByZXR1cm47XG4gIH1cbiAgc2hhcmVOZ1pvbmUobmdab25lKTtcbn1cblxuZnVuY3Rpb24gY29ubmVjdE1pY3JvRnJvbnRlbmRSb3V0ZXIoaW5qZWN0b3I6IEluamVjdG9yKTogdm9pZHtcbiAgY29uc3Qgcm91dGVyID0gaW5qZWN0b3IuZ2V0KFJvdXRlcik7XG4gIGNvbnN0IGxvY2F0aW9uID0gaW5qZWN0b3IuZ2V0KExvY2F0aW9uKTtcblxuICBpZiAoIXJvdXRlcikge1xuICAgIGNvbnNvbGUud2FybignTm8gcm91dGVyIHRvIGNvbm5lY3QgZm91bmQnKTtcbiAgICByZXR1cm47XG4gIH1cbiAgcm91dGVyLm5hdmlnYXRlQnlVcmwobG9jYXRpb24ucGF0aCgpICsgd2luZG93LmxvY2F0aW9uLmhhc2gpO1xufVxuXG5mdW5jdGlvbiBpc0xvY2FsaG9zdCgpOiBib29sZWFue1xuICBjb25zdCBob3N0bmFtZSA9IHdpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZTtcbiAgcmV0dXJuIGhvc3RuYW1lID09PSAnbG9jYWxob3N0JyB8fCBob3N0bmFtZSA9PT0gJzEyNy4wLjAuMSc7XG59XG4iXX0=
@@ -1,14 +0,0 @@
1
- export const packageNamespace = '@angular-architects/module-federation-tools';
2
- function getGlobalState() {
3
- const globalState = window;
4
- globalState[packageNamespace] = globalState[packageNamespace] || {};
5
- return globalState[packageNamespace];
6
- }
7
- export function getGlobalStateSlice(selector) {
8
- const globalState = getGlobalState();
9
- return selector ? selector(globalState) : globalState;
10
- }
11
- export function setGlobalStateSlice(slice) {
12
- return Object.assign(getGlobalState(), slice);
13
- }
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWYtZ2xvYmFsLXN0YXRlLnV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmlwaW4tYW5ndWxhci9zcmMvbGliL21vZHVsZXMvbWljcm8tZnJvbnRlbmQvdXRpbHMvbWYtZ2xvYmFsLXN0YXRlLnV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsNkNBQTZDLENBQUM7QUFFOUUsU0FBUyxjQUFjO0lBQ3JCLE1BQU0sV0FBVyxHQUFHLE1BQThDLENBQUM7SUFDbkUsV0FBVyxDQUFDLGdCQUFnQixDQUFDLEdBQUcsV0FBVyxDQUFDLGdCQUFnQixDQUFDLElBQUssRUFBbUIsQ0FBQztJQUV0RixPQUFPLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0FBQ3ZDLENBQUM7QUFLRCxNQUFNLFVBQVUsbUJBQW1CLENBQU8sUUFBZ0M7SUFDeEUsTUFBTSxXQUFXLEdBQUcsY0FBYyxFQUFLLENBQUM7SUFDeEMsT0FBTyxRQUFRLENBQUEsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDO0FBQ3ZELENBQUM7QUFFRCxNQUFNLFVBQVUsbUJBQW1CLENBQW1CLEtBQVE7SUFDNUQsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLGNBQWMsRUFBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO0FBQ25ELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgcGFja2FnZU5hbWVzcGFjZSA9ICdAYW5ndWxhci1hcmNoaXRlY3RzL21vZHVsZS1mZWRlcmF0aW9uLXRvb2xzJztcblxuZnVuY3Rpb24gZ2V0R2xvYmFsU3RhdGU8VD4oKTogVCB7XG4gIGNvbnN0IGdsb2JhbFN0YXRlID0gd2luZG93IGFzIHVua25vd24gYXMgeyBbcGFja2FnZU5hbWVzcGFjZV06IFQgfTtcbiAgZ2xvYmFsU3RhdGVbcGFja2FnZU5hbWVzcGFjZV0gPSBnbG9iYWxTdGF0ZVtwYWNrYWdlTmFtZXNwYWNlXSB8fCAoe30gYXMgdW5rbm93biBhcyBUKTtcbiAgXG4gIHJldHVybiBnbG9iYWxTdGF0ZVtwYWNrYWdlTmFtZXNwYWNlXTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEdsb2JhbFN0YXRlU2xpY2U8VD4oKTogVDtcbmV4cG9ydCBmdW5jdGlvbiBnZXRHbG9iYWxTdGF0ZVNsaWNlPFQsIFI+KHNlbGVjdG9yOiAoZ2xvYmFsU3RhdGU6IFQpID0+IFIpOiBSO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0R2xvYmFsU3RhdGVTbGljZTxULCBSPihzZWxlY3Rvcj86IChnbG9iYWxTdGF0ZTogVCkgPT4gUik6IFIgfCBUIHtcbiAgY29uc3QgZ2xvYmFsU3RhdGUgPSBnZXRHbG9iYWxTdGF0ZTxUPigpO1xuICByZXR1cm4gc2VsZWN0b3I/IHNlbGVjdG9yKGdsb2JhbFN0YXRlKSA6IGdsb2JhbFN0YXRlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gc2V0R2xvYmFsU3RhdGVTbGljZTxUIGV4dGVuZHMgb2JqZWN0PihzbGljZTogVCk6IFQge1xuICByZXR1cm4gT2JqZWN0LmFzc2lnbihnZXRHbG9iYWxTdGF0ZTxUPigpLCBzbGljZSk7XG59XG4iXX0=
@@ -1,41 +0,0 @@
1
- import { Directive, Input } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "../services/permission.service";
4
- export class PermissionDirective {
5
- set hasPermission(m) {
6
- this.module = m;
7
- }
8
- set hasPermissionScope(s) {
9
- this.scope = s;
10
- }
11
- set hasPermissionType(t) {
12
- ;
13
- if (this.permissionService.checkPermission(this.scope, this.module, t)) {
14
- this.viewContainer.createEmbeddedView(this.templateRef);
15
- return;
16
- }
17
- this.viewContainer.clear();
18
- }
19
- constructor(templateRef, viewContainer, permissionService) {
20
- this.templateRef = templateRef;
21
- this.viewContainer = viewContainer;
22
- this.permissionService = permissionService;
23
- this.scope = 'GLOBAL';
24
- }
25
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PermissionDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }, { token: i1.PermissionService }], target: i0.ɵɵFactoryTarget.Directive }); }
26
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: PermissionDirective, isStandalone: true, selector: "[hasPermission]", inputs: { hasPermission: "hasPermission", hasPermissionScope: "hasPermissionScope", hasPermissionType: "hasPermissionType" }, ngImport: i0 }); }
27
- }
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PermissionDirective, decorators: [{
29
- type: Directive,
30
- args: [{
31
- standalone: true,
32
- selector: '[hasPermission]'
33
- }]
34
- }], ctorParameters: () => [{ type: i0.TemplateRef }, { type: i0.ViewContainerRef }, { type: i1.PermissionService }], propDecorators: { hasPermission: [{
35
- type: Input
36
- }], hasPermissionScope: [{
37
- type: Input
38
- }], hasPermissionType: [{
39
- type: Input
40
- }] } });
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmlwaW4tYW5ndWxhci9zcmMvbGliL21vZHVsZXMvcGVybWlzc2lvbi9kaXJlY3RpdmUvcGVybWlzc2lvbi5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWlDLE1BQU0sZUFBZSxDQUFDOzs7QUFnQmhGLE1BQU0sT0FBTyxtQkFBbUI7SUFxQjlCLElBQWEsYUFBYSxDQUFDLENBQVM7UUFDbEMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDbEIsQ0FBQztJQU1ELElBQWEsa0JBQWtCLENBQUMsQ0FBUztRQUN2QyxJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQztJQUNqQixDQUFDO0lBTUQsSUFBYSxpQkFBaUIsQ0FBQyxDQUFTO1FBQUcsQ0FBQztRQUMxQyxJQUFJLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDdkUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDeEQsT0FBTztRQUNULENBQUM7UUFFRCxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRCxZQUNxQixXQUE2QixFQUM3QixhQUErQixFQUMvQixpQkFBb0M7UUFGcEMsZ0JBQVcsR0FBWCxXQUFXLENBQWtCO1FBQzdCLGtCQUFhLEdBQWIsYUFBYSxDQUFrQjtRQUMvQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBbkMvQyxVQUFLLEdBQVcsUUFBUSxDQUFDO0lBb0MvQixDQUFDOytHQWxETSxtQkFBbUI7bUdBQW5CLG1CQUFtQjs7NEZBQW5CLG1CQUFtQjtrQkFKL0IsU0FBUzttQkFBQztvQkFDVCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLGlCQUFpQjtpQkFDNUI7K0lBc0JjLGFBQWE7c0JBQXpCLEtBQUs7Z0JBUU8sa0JBQWtCO3NCQUE5QixLQUFLO2dCQVFPLGlCQUFpQjtzQkFBN0IsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQsIFRlbXBsYXRlUmVmLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBQZXJtaXNzaW9uU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3Blcm1pc3Npb24uc2VydmljZSc7XG5cbi8qKlxuICogVGhlIGBQZXJtaXNzaW9uRGlyZWN0aXZlYCBpcyBhIGRpcmVjdGl2ZSB0aGF0IGNvbmRpdGlvbmFsbHkgcmVuZGVycyBjb250ZW50IGJhc2VkIG9uIHVzZXIgcGVybWlzc2lvbnMuXG4gKiBgU2NvcGVgIHBhcmFtIGlzIGRlZmF1bHQgdG8gYEdMT0JBTGBcbiAqIEBzZWxlY3RvciAnW2hhc1Blcm1pc3Npb25dJ1xuICogQGV4YW1wbGVcbiAqIGBgYGh0bWxcbiAqIDxkaXYgKmhhc1Blcm1pc3Npb249XCInUE9TVF9BVURJVCc7IHR5cGU6ICdSRUFEJzsgc2NvcGU6ICdNRVJDSEFOVCdcIj48L2Rpdj5cbiAqIGBgYFxuICovXG5ARGlyZWN0aXZlKHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdbaGFzUGVybWlzc2lvbl0nXG59KVxuZXhwb3J0IGNsYXNzIFBlcm1pc3Npb25EaXJlY3RpdmUge1xuICBcbiAgLyoqXG4gICAqIFRoZSBtb2R1bGUgbmFtZSBmb3Igd2hpY2ggcGVybWlzc2lvbnMgYXJlIGJlaW5nIGNoZWNrZWQuXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqIEBkZWZhdWx0IHtudWxsfVxuICAgKi9cbiAgcHJvdGVjdGVkIG1vZHVsZSE6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHBlcm1pc3Npb24gc2NvcGUuXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqIEBkZWZhdWx0IHsnR0xPQkFMJ31cbiAgICovXG4gIHByb3RlY3RlZCBzY29wZTogc3RyaW5nID0gJ0dMT0JBTCc7XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIG1vZHVsZSBuYW1lIGZvciB3aGljaCBwZXJtaXNzaW9ucyBhcmUgYmVpbmcgY2hlY2tlZC5cbiAgICogQGV4YW1wbGUgJ1BPU1RfQVVESVQnLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gbSAtIFRoZSBtb2R1bGUgbmFtZS5cbiAgICovXG4gIEBJbnB1dCgpIHNldCBoYXNQZXJtaXNzaW9uKG06IHN0cmluZykge1xuICAgIHRoaXMubW9kdWxlID0gbTsgXG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgcGVybWlzc2lvbiBzY29wZS4gRGVmYXVsdCBpcyAnR0xPQkFMJy5cbiAgICogQHBhcmFtIHtzdHJpbmd9IHMgLSBUaGUgcGVybWlzc2lvbiBzY29wZS5cbiAgICovXG4gIEBJbnB1dCgpIHNldCBoYXNQZXJtaXNzaW9uU2NvcGUoczogc3RyaW5nKSB7IFxuICAgIHRoaXMuc2NvcGUgPSBzOyBcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBwZXJtaXNzaW9uIHR5cGUgYW5kIGNvbmRpdGlvbmFsbHkgcmVuZGVycyBjb250ZW50IGJhc2VkIG9uIHVzZXIgcGVybWlzc2lvbnMuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB0IC0gVGhlIHBlcm1pc3Npb24gdHlwZSwgZS5nLiwgJ1JFQUQnLCAnV1JJVEUnLlxuICAgKi9cbiAgQElucHV0KCkgc2V0IGhhc1Blcm1pc3Npb25UeXBlKHQ6IHN0cmluZykgeztcbiAgICBpZiAodGhpcy5wZXJtaXNzaW9uU2VydmljZS5jaGVja1Blcm1pc3Npb24odGhpcy5zY29wZSwgdGhpcy5tb2R1bGUsIHQpKSB7XG4gICAgICB0aGlzLnZpZXdDb250YWluZXIuY3JlYXRlRW1iZWRkZWRWaWV3KHRoaXMudGVtcGxhdGVSZWYpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMudmlld0NvbnRhaW5lci5jbGVhcigpO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxhbnk+LFxuICAgIHByb3RlY3RlZCByZWFkb25seSB2aWV3Q29udGFpbmVyOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgIHByb3RlY3RlZCByZWFkb25seSBwZXJtaXNzaW9uU2VydmljZTogUGVybWlzc2lvblNlcnZpY2VcbiAgKSB7IH1cbn1cbiJdfQ==
@@ -1,26 +0,0 @@
1
- import { inject } from '@angular/core';
2
- import { Location } from '@angular/common';
3
- import { Router } from '@angular/router';
4
- import { PermissionService } from '../services/permission.service';
5
- export const PermissionGuard = (route) => {
6
- const router = inject(Router);
7
- const location = inject(Location);
8
- const permissionService = inject(PermissionService);
9
- const permissions = route.data['requiredPermissions'];
10
- if (!permissions || permissions.length === 0)
11
- throw new Error('Invalid config: requiredPermissions is a required parameter in route data for PermissionGuard');
12
- if (!permissionService.isInitiated) {
13
- router.navigate(['loading'], { queryParams: { url: `${location.path() + window.location.hash}` } });
14
- return false;
15
- }
16
- if (permissions) {
17
- for (let i = 0; i < permissions.length; i++) {
18
- const { scope, module, type } = permissions[i];
19
- if (permissionService.checkPermission(scope, module, type))
20
- return true;
21
- }
22
- }
23
- router.navigate(['401']);
24
- return false;
25
- };
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbi5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VuaXBpbi1hbmd1bGFyL3NyYy9saWIvbW9kdWxlcy9wZXJtaXNzaW9uL2d1YXJkcy9wZXJtaXNzaW9uLmd1YXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBeUMsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDaEYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFbkUsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFrQixDQUFDLEtBQTZCLEVBQVcsRUFBRTtJQUV2RixNQUFNLE1BQU0sR0FBVyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdEMsTUFBTSxRQUFRLEdBQWEsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzVDLE1BQU0saUJBQWlCLEdBQXNCLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBRXZFLE1BQU0sV0FBVyxHQUFzRCxLQUFLLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFFekcsSUFBSSxDQUFDLFdBQVcsSUFBSSxXQUFXLENBQUMsTUFBTSxLQUFLLENBQUM7UUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLCtGQUErRixDQUFDLENBQUM7SUFFL0osSUFBSSxDQUFDLGlCQUFpQixDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ25DLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBRSxTQUFTLENBQUUsRUFBRSxFQUFFLFdBQVcsRUFBRSxFQUFFLEdBQUcsRUFBRSxHQUFJLFFBQVEsQ0FBQyxJQUFJLEVBQUUsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3hHLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVELElBQUksV0FBVyxFQUFFLENBQUM7UUFDaEIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUM1QyxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDL0MsSUFBSSxpQkFBaUIsQ0FBQyxlQUFlLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUM7Z0JBQUUsT0FBTyxJQUFJLENBQUM7UUFDMUUsQ0FBQztJQUNILENBQUM7SUFFRCxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUUsS0FBSyxDQUFFLENBQUMsQ0FBQztJQUMzQixPQUFPLEtBQUssQ0FBQztBQUNmLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTG9jYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgQ2FuQWN0aXZhdGVGbiwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFBlcm1pc3Npb25TZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvcGVybWlzc2lvbi5zZXJ2aWNlJztcblxuZXhwb3J0IGNvbnN0IFBlcm1pc3Npb25HdWFyZDogQ2FuQWN0aXZhdGVGbiA9IChyb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCk6IGJvb2xlYW4gPT4ge1xuICBcbiAgY29uc3Qgcm91dGVyOiBSb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcbiAgY29uc3QgbG9jYXRpb246IExvY2F0aW9uID0gaW5qZWN0KExvY2F0aW9uKTtcbiAgY29uc3QgcGVybWlzc2lvblNlcnZpY2U6IFBlcm1pc3Npb25TZXJ2aWNlID0gaW5qZWN0KFBlcm1pc3Npb25TZXJ2aWNlKTtcblxuICBjb25zdCBwZXJtaXNzaW9uczogeyBzY29wZTogc3RyaW5nLCBtb2R1bGU6IHN0cmluZywgdHlwZTogc3RyaW5nIH1bXSA9IHJvdXRlLmRhdGFbJ3JlcXVpcmVkUGVybWlzc2lvbnMnXTtcbiAgXG4gIGlmICghcGVybWlzc2lvbnMgfHwgcGVybWlzc2lvbnMubGVuZ3RoID09PSAwKSB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgY29uZmlnOiByZXF1aXJlZFBlcm1pc3Npb25zIGlzIGEgcmVxdWlyZWQgcGFyYW1ldGVyIGluIHJvdXRlIGRhdGEgZm9yIFBlcm1pc3Npb25HdWFyZCcpO1xuXG4gIGlmICghcGVybWlzc2lvblNlcnZpY2UuaXNJbml0aWF0ZWQpIHtcbiAgICByb3V0ZXIubmF2aWdhdGUoWyAnbG9hZGluZycgXSwgeyBxdWVyeVBhcmFtczogeyB1cmw6IGAkeyBsb2NhdGlvbi5wYXRoKCkgKyB3aW5kb3cubG9jYXRpb24uaGFzaCB9YCB9IH0pO1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGlmIChwZXJtaXNzaW9ucykge1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcGVybWlzc2lvbnMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGNvbnN0IHsgc2NvcGUsIG1vZHVsZSwgdHlwZSB9ID0gcGVybWlzc2lvbnNbaV07XG4gICAgICBpZiAocGVybWlzc2lvblNlcnZpY2UuY2hlY2tQZXJtaXNzaW9uKHNjb3BlLCBtb2R1bGUsIHR5cGUpKSByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICByb3V0ZXIubmF2aWdhdGUoWyAnNDAxJyBdKTtcbiAgcmV0dXJuIGZhbHNlO1xufTtcbiJdfQ==
@@ -1,7 +0,0 @@
1
- export { provideLoadingConfig } from './pages/loading/provide-loading-config.util';
2
- export { LoadingPage } from './pages/loading/loading.page';
3
- export { PermissionDirective } from './directive/permission.directive';
4
- export { PermissionGuard } from './guards/permission.guard';
5
- export { PermissionService } from './services/permission.service';
6
- export { UnauthorizedPage } from './pages/401/unauthorized.page';
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmlwaW4tYW5ndWxhci9zcmMvbGliL21vZHVsZXMvcGVybWlzc2lvbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsb0JBQW9CLEVBQWlCLE1BQU0sNkNBQTZDLENBQUM7QUFDbEcsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRTNELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IHByb3ZpZGVMb2FkaW5nQ29uZmlnLCBMb2FkaW5nQ29uZmlnIH0gZnJvbSAnLi9wYWdlcy9sb2FkaW5nL3Byb3ZpZGUtbG9hZGluZy1jb25maWcudXRpbCc7XG5leHBvcnQgeyBMb2FkaW5nUGFnZSB9IGZyb20gJy4vcGFnZXMvbG9hZGluZy9sb2FkaW5nLnBhZ2UnO1xuXG5leHBvcnQgeyBQZXJtaXNzaW9uRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmUvcGVybWlzc2lvbi5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgUGVybWlzc2lvbkd1YXJkIH0gZnJvbSAnLi9ndWFyZHMvcGVybWlzc2lvbi5ndWFyZCc7XG5leHBvcnQgeyBQZXJtaXNzaW9uU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvcGVybWlzc2lvbi5zZXJ2aWNlJztcbmV4cG9ydCB7IFVuYXV0aG9yaXplZFBhZ2UgfSBmcm9tICcuL3BhZ2VzLzQwMS91bmF1dGhvcml6ZWQucGFnZSc7XG4iXX0=
@@ -1,15 +0,0 @@
1
- import { Component } from '@angular/core';
2
- import { IonicModule } from '@ionic/angular';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@ionic/angular";
5
- export class UnauthorizedPage {
6
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UnauthorizedPage, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: UnauthorizedPage, isStandalone: true, selector: "up-unauthorized", host: { classAttribute: "d-flex flex-column align-items-center justify-content-center h-100 w-75 mx-auto" }, ngImport: i0, template: "<ion-icon name=\"lock-closed\" class=\"mb-4\" />\n<h3 class=\"text-center\">Oops! You're not authorized to access this page.</h3>\n<p class=\"text-center\">Please log in or re-check your permissions.</p>\n", styles: ["ion-icon{font-size:5rem}\n"], dependencies: [{ kind: "ngmodule", type: IonicModule }, { kind: "component", type: i1.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }] }); }
8
- }
9
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UnauthorizedPage, decorators: [{
10
- type: Component,
11
- args: [{ standalone: true, selector: 'up-unauthorized', host: {
12
- class: 'd-flex flex-column align-items-center justify-content-center h-100 w-75 mx-auto'
13
- }, imports: [IonicModule], template: "<ion-icon name=\"lock-closed\" class=\"mb-4\" />\n<h3 class=\"text-center\">Oops! You're not authorized to access this page.</h3>\n<p class=\"text-center\">Please log in or re-check your permissions.</p>\n", styles: ["ion-icon{font-size:5rem}\n"] }]
14
- }] });
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5hdXRob3JpemVkLnBhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmlwaW4tYW5ndWxhci9zcmMvbGliL21vZHVsZXMvcGVybWlzc2lvbi9wYWdlcy80MDEvdW5hdXRob3JpemVkLnBhZ2UudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmlwaW4tYW5ndWxhci9zcmMvbGliL21vZHVsZXMvcGVybWlzc2lvbi9wYWdlcy80MDEvdW5hdXRob3JpemVkLnBhZ2UuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBWTdDLE1BQU0sT0FBTyxnQkFBZ0I7K0dBQWhCLGdCQUFnQjttR0FBaEIsZ0JBQWdCLHdMQ2I3QiwrTUFHQSxtRkRRYSxXQUFXOzs0RkFFWCxnQkFBZ0I7a0JBVjVCLFNBQVM7aUNBQ0ksSUFBSSxZQUNOLGlCQUFpQixRQUdyQjt3QkFDSixLQUFLLEVBQUUsaUZBQWlGO3FCQUN6RixXQUNRLENBQUUsV0FBVyxDQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJb25pY01vZHVsZSB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyJztcblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAndXAtdW5hdXRob3JpemVkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3VuYXV0aG9yaXplZC5wYWdlLmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi91bmF1dGhvcml6ZWQucGFnZS5zY3NzJ10sXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2QtZmxleCBmbGV4LWNvbHVtbiBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWNlbnRlciBoLTEwMCB3LTc1IG14LWF1dG8nXG4gIH0sXG4gIGltcG9ydHM6IFsgSW9uaWNNb2R1bGUgXVxufSlcbmV4cG9ydCBjbGFzcyBVbmF1dGhvcml6ZWRQYWdlIHsgfVxuIiwiPGlvbi1pY29uIG5hbWU9XCJsb2NrLWNsb3NlZFwiIGNsYXNzPVwibWItNFwiIC8+XG48aDMgY2xhc3M9XCJ0ZXh0LWNlbnRlclwiPk9vcHMhIFlvdSdyZSBub3QgYXV0aG9yaXplZCB0byBhY2Nlc3MgdGhpcyBwYWdlLjwvaDM+XG48cCBjbGFzcz1cInRleHQtY2VudGVyXCI+UGxlYXNlIGxvZyBpbiBvciByZS1jaGVjayB5b3VyIHBlcm1pc3Npb25zLjwvcD5cbiJdfQ==
@@ -1,65 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, Inject } from '@angular/core';
2
- import { IonicModule } from '@ionic/angular';
3
- import { LOADING_CONFIG } from './provide-loading-config.util';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/router";
6
- import * as i2 from "../../services/permission.service";
7
- import * as i3 from "@ionic/angular";
8
- export class LoadingPage {
9
- constructor(config, router, route, permissionService) {
10
- this.config = config;
11
- this.router = router;
12
- this.route = route;
13
- this.permissionService = permissionService;
14
- }
15
- ngOnInit() {
16
- const subjectGuid = localStorage.getItem(this.config.subjectGuidStorageKey || 'userGuid');
17
- if (!subjectGuid) {
18
- this.router.navigate(['401']);
19
- return;
20
- }
21
- const permCodeList = [];
22
- const permModuleList = new Map();
23
- ;
24
- this.sub = this.permissionService.getPermissions({
25
- subjectGuid,
26
- pageSize: 1000,
27
- permType: this.config.permTypes,
28
- permModule: this.config.permModules,
29
- }, this.config.fetchPolicy).subscribe({
30
- error: () => {
31
- this.router.navigate(['401']);
32
- },
33
- next: ({ data: { authMsPermission: { data } } }) => {
34
- data.forEach(({ permCode, permModule }) => {
35
- if (!permCode || !permModule)
36
- return;
37
- permCodeList.push(permCode);
38
- if (!permModuleList.has(permModule)) {
39
- permModuleList.set(permModule, true);
40
- }
41
- });
42
- this.permissionService.isInitiated = true;
43
- this.permissionService.setPermission(permCodeList, Array.from(permModuleList.keys()));
44
- this.router.navigateByUrl(this.route.snapshot.queryParamMap.get('url') ?? '');
45
- }
46
- });
47
- }
48
- ngOnDestroy() {
49
- this.sub?.unsubscribe();
50
- }
51
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LoadingPage, deps: [{ token: LOADING_CONFIG }, { token: i1.Router }, { token: i1.ActivatedRoute }, { token: i2.PermissionService }], target: i0.ɵɵFactoryTarget.Component }); }
52
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: LoadingPage, isStandalone: true, selector: "up-loading", host: { classAttribute: "d-flex flex-column align-items-center justify-content-center h-100 w-75 mx-auto" }, ngImport: i0, template: "<ion-spinner class=\"mb-4\" />\n<h3 class=\"text-center\">Please wait, we're preparing the applet. Drink water or coffee while waiting.</h3>\n", styles: ["ion-spinner{height:50px;width:50px}\n"], dependencies: [{ kind: "ngmodule", type: IonicModule }, { kind: "component", type: i3.IonSpinner, selector: "ion-spinner", inputs: ["color", "duration", "name", "paused"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
53
- }
54
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LoadingPage, decorators: [{
55
- type: Component,
56
- args: [{ standalone: true, selector: 'up-loading', changeDetection: ChangeDetectionStrategy.OnPush, host: {
57
- class: 'd-flex flex-column align-items-center justify-content-center h-100 w-75 mx-auto'
58
- }, imports: [
59
- IonicModule
60
- ], template: "<ion-spinner class=\"mb-4\" />\n<h3 class=\"text-center\">Please wait, we're preparing the applet. Drink water or coffee while waiting.</h3>\n", styles: ["ion-spinner{height:50px;width:50px}\n"] }]
61
- }], ctorParameters: () => [{ type: undefined, decorators: [{
62
- type: Inject,
63
- args: [LOADING_CONFIG]
64
- }] }, { type: i1.Router }, { type: i1.ActivatedRoute }, { type: i2.PermissionService }] });
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGluZy5wYWdlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdW5pcGluLWFuZ3VsYXIvc3JjL2xpYi9tb2R1bGVzL3Blcm1pc3Npb24vcGFnZXMvbG9hZGluZy9sb2FkaW5nLnBhZ2UudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmlwaW4tYW5ndWxhci9zcmMvbGliL21vZHVsZXMvcGVybWlzc2lvbi9wYWdlcy9sb2FkaW5nL2xvYWRpbmcucGFnZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUc5RixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxFQUFFLGNBQWMsRUFBaUIsTUFBTSwrQkFBK0IsQ0FBQzs7Ozs7QUFlOUUsTUFBTSxPQUFPLFdBQVc7SUFJdEIsWUFDMEMsTUFBcUIsRUFDMUMsTUFBYyxFQUNkLEtBQXFCLEVBQ3JCLGlCQUFvQztRQUhmLFdBQU0sR0FBTixNQUFNLENBQWU7UUFDMUMsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQ3JCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7SUFDckQsQ0FBQztJQUVFLFFBQVE7UUFDYixNQUFNLFdBQVcsR0FBRyxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMscUJBQXFCLElBQUksVUFBVSxDQUFDLENBQUM7UUFDMUYsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ2pCLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUUsS0FBSyxDQUFFLENBQUMsQ0FBQztZQUNoQyxPQUFPO1FBQ1QsQ0FBQztRQUVELE1BQU0sWUFBWSxHQUFhLEVBQUUsQ0FBQztRQUNwQyxNQUFNLGNBQWMsR0FBeUIsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUFBLENBQUM7UUFFdEQsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsY0FBYyxDQUFDO1lBQy9DLFdBQVc7WUFDWCxRQUFRLEVBQUUsSUFBSTtZQUNkLFFBQVEsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVM7WUFDL0IsVUFBVSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVztTQUNwQyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsU0FBUyxDQUFDO1lBQ3BDLEtBQUssRUFBRSxHQUFHLEVBQUU7Z0JBQ1YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBRSxLQUFLLENBQUUsQ0FBQyxDQUFDO1lBQ2xDLENBQUM7WUFDRCxJQUFJLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLGdCQUFnQixFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQUMsRUFBQyxFQUFFLEVBQUU7Z0JBQy9DLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFFO29CQUN4QyxJQUFJLENBQUMsUUFBUSxJQUFJLENBQUMsVUFBVTt3QkFBRSxPQUFPO29CQUVyQyxZQUFZLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO29CQUNqQyxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO3dCQUNyQyxjQUFjLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQztvQkFDdEMsQ0FBQztnQkFDRSxDQUFDLENBQUMsQ0FBQztnQkFFSCxJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztnQkFDMUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGFBQWEsQ0FDbEMsWUFBWSxFQUNaLEtBQUssQ0FBQyxJQUFJLENBQ1IsY0FBYyxDQUFDLElBQUksRUFBRSxDQUN0QixDQUNGLENBQUM7Z0JBQ0YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBRyxFQUFFLENBQUMsQ0FBQztZQUMvRSxDQUFDO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLEdBQUcsRUFBRSxXQUFXLEVBQUUsQ0FBQztJQUMxQixDQUFDOytHQXREVSxXQUFXLGtCQUtaLGNBQWM7bUdBTGIsV0FBVyxtTENwQnhCLGdKQUVBLDhGRGVJLFdBQVc7OzRGQUdGLFdBQVc7a0JBYnZCLFNBQVM7aUNBQ0ksSUFBSSxZQUNOLFlBQVksbUJBR0wsdUJBQXVCLENBQUMsTUFBTSxRQUN6Qzt3QkFDSixLQUFLLEVBQUUsaUZBQWlGO3FCQUN6RixXQUNRO3dCQUNQLFdBQVc7cUJBQ1o7OzBCQU9FLE1BQU07MkJBQUMsY0FBYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEluamVjdCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBJb25pY01vZHVsZSB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyJztcbmltcG9ydCB7IFBlcm1pc3Npb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvcGVybWlzc2lvbi5zZXJ2aWNlJztcbmltcG9ydCB7IExPQURJTkdfQ09ORklHLCBMb2FkaW5nQ29uZmlnIH0gZnJvbSAnLi9wcm92aWRlLWxvYWRpbmctY29uZmlnLnV0aWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICd1cC1sb2FkaW5nJyxcbiAgc3R5bGVVcmw6ICcuL2xvYWRpbmcucGFnZS5zY3NzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2xvYWRpbmcucGFnZS5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2QtZmxleCBmbGV4LWNvbHVtbiBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWNlbnRlciBoLTEwMCB3LTc1IG14LWF1dG8nXG4gIH0sXG4gIGltcG9ydHM6IFtcbiAgICBJb25pY01vZHVsZVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIExvYWRpbmdQYWdlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gIHByb3RlY3RlZCBzdWI/OiBTdWJzY3JpcHRpb247XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQEluamVjdChMT0FESU5HX0NPTkZJRykgcHVibGljIHJlYWRvbmx5IGNvbmZpZzogTG9hZGluZ0NvbmZpZyxcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgcm91dGVyOiBSb3V0ZXIsXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgcGVybWlzc2lvblNlcnZpY2U6IFBlcm1pc3Npb25TZXJ2aWNlXG4gICkgeyB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWR7XG4gICAgY29uc3Qgc3ViamVjdEd1aWQgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSh0aGlzLmNvbmZpZy5zdWJqZWN0R3VpZFN0b3JhZ2VLZXkgfHwgJ3VzZXJHdWlkJyk7XG4gICAgaWYgKCFzdWJqZWN0R3VpZCkge1xuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWyAnNDAxJyBdKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBwZXJtQ29kZUxpc3Q6IHN0cmluZ1tdID0gW107XG5cdFx0Y29uc3QgcGVybU1vZHVsZUxpc3Q6IE1hcDxzdHJpbmcsIGJvb2xlYW4+ID0gbmV3IE1hcCgpOztcbiAgICBcbiAgICB0aGlzLnN1YiA9IHRoaXMucGVybWlzc2lvblNlcnZpY2UuZ2V0UGVybWlzc2lvbnMoeyBcbiAgICAgIHN1YmplY3RHdWlkLCBcbiAgICAgIHBhZ2VTaXplOiAxMDAwLFxuICAgICAgcGVybVR5cGU6IHRoaXMuY29uZmlnLnBlcm1UeXBlcyxcbiAgICAgIHBlcm1Nb2R1bGU6IHRoaXMuY29uZmlnLnBlcm1Nb2R1bGVzLCBcbiAgICB9LCB0aGlzLmNvbmZpZy5mZXRjaFBvbGljeSkuc3Vic2NyaWJlKHtcbiAgICAgIGVycm9yOiAoKSA9PiB7XG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsgJzQwMScgXSk7XG4gICAgICB9LFxuICAgICAgbmV4dDogKHsgZGF0YTogeyBhdXRoTXNQZXJtaXNzaW9uOiB7IGRhdGEgfX19KSA9PiB7XG4gICAgICAgIGRhdGEuZm9yRWFjaCgoeyBwZXJtQ29kZSwgcGVybU1vZHVsZSB9KSA9PiB7XG4gICAgICAgICAgaWYgKCFwZXJtQ29kZSB8fCAhcGVybU1vZHVsZSkgcmV0dXJuO1xuXG4gICAgICAgICAgcGVybUNvZGVMaXN0LnB1c2gocGVybUNvZGUpO1xuXHRcdFx0XHRcdGlmICghcGVybU1vZHVsZUxpc3QuaGFzKHBlcm1Nb2R1bGUpKSB7XG5cdFx0XHRcdFx0XHRwZXJtTW9kdWxlTGlzdC5zZXQocGVybU1vZHVsZSwgdHJ1ZSk7XG5cdFx0XHRcdFx0fVxuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLnBlcm1pc3Npb25TZXJ2aWNlLmlzSW5pdGlhdGVkID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5wZXJtaXNzaW9uU2VydmljZS5zZXRQZXJtaXNzaW9uKFxuICAgICAgICAgIHBlcm1Db2RlTGlzdCwgXG4gICAgICAgICAgQXJyYXkuZnJvbShcbiAgICAgICAgICAgIHBlcm1Nb2R1bGVMaXN0LmtleXMoKVxuICAgICAgICAgIClcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGVCeVVybCh0aGlzLnJvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1NYXAuZ2V0KCd1cmwnKT8/ICcnKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lke1xuICAgIHRoaXMuc3ViPy51bnN1YnNjcmliZSgpO1xuICB9XG59XG4iLCI8aW9uLXNwaW5uZXIgY2xhc3M9XCJtYi00XCIgLz5cbjxoMyBjbGFzcz1cInRleHQtY2VudGVyXCI+UGxlYXNlIHdhaXQsIHdlJ3JlIHByZXBhcmluZyB0aGUgYXBwbGV0LiBEcmluayB3YXRlciBvciBjb2ZmZWUgd2hpbGUgd2FpdGluZy48L2gzPlxuIl19
@@ -1,9 +0,0 @@
1
- import { InjectionToken } from '@angular/core';
2
- export const LOADING_CONFIG = new InjectionToken('LOADING_CONFIG');
3
- export function provideLoadingConfig(config) {
4
- return {
5
- provide: LOADING_CONFIG,
6
- useValue: config
7
- };
8
- }
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1sb2FkaW5nLWNvbmZpZy51dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdW5pcGluLWFuZ3VsYXIvc3JjL2xpYi9tb2R1bGVzL3Blcm1pc3Npb24vcGFnZXMvbG9hZGluZy9wcm92aWRlLWxvYWRpbmctY29uZmlnLnV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBWSxNQUFNLGVBQWUsQ0FBQztBQUd6RCxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsSUFBSSxjQUFjLENBQWdCLGdCQUFnQixDQUFDLENBQUM7QUFTbEYsTUFBTSxVQUFVLG9CQUFvQixDQUFDLE1BQXFCO0lBQ3hELE9BQU87UUFDTCxPQUFPLEVBQUUsY0FBYztRQUN2QixRQUFRLEVBQUUsTUFBTTtLQUNqQixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuLCBQcm92aWRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRmV0Y2hQb2xpY3kgfSBmcm9tICdAYXBvbGxvL2NsaWVudC9jb3JlJztcblxuZXhwb3J0IGNvbnN0IExPQURJTkdfQ09ORklHID0gbmV3IEluamVjdGlvblRva2VuPExvYWRpbmdDb25maWc+KCdMT0FESU5HX0NPTkZJRycpO1xuXG5leHBvcnQgaW50ZXJmYWNlIExvYWRpbmdDb25maWcge1xuXHRwZXJtVHlwZXM6IHN0cmluZ1tdO1xuICBwZXJtTW9kdWxlczogc3RyaW5nW107XG5cdGZldGNoUG9saWN5PzogRmV0Y2hQb2xpY3k7XG5cdHN1YmplY3RHdWlkU3RvcmFnZUtleT86IHN0cmluZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVMb2FkaW5nQ29uZmlnKGNvbmZpZzogTG9hZGluZ0NvbmZpZyk6IFByb3ZpZGVye1xuICByZXR1cm4ge1xuICAgIHByb3ZpZGU6IExPQURJTkdfQ09ORklHLFxuICAgIHVzZVZhbHVlOiBjb25maWdcbiAgfTtcbn1cbiJdfQ==
@@ -1,50 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { BehaviorSubject } from 'rxjs';
3
- import { gql } from 'apollo-angular';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "apollo-angular";
6
- export class PermissionService {
7
- constructor(apollo) {
8
- this.apollo = apollo;
9
- this.permModules = new BehaviorSubject([]);
10
- this.isInitiated = false;
11
- this.permissions = new Map();
12
- }
13
- setPermission(permCodes, permModules = []) {
14
- for (let i = 0; i < permCodes.length; i++)
15
- this.permissions.set(permCodes[i], true);
16
- this.permModules.next(permModules);
17
- }
18
- checkPermission(scope, module, type) {
19
- if (this.permissions.has(`${scope}.${module}.ADMIN`))
20
- return true;
21
- if (this.permissions.has(`${scope}.${module}.${type}`))
22
- return true;
23
- return false;
24
- }
25
- getPermissions(filter, fetchPolicy) {
26
- return this.apollo.query({
27
- fetchPolicy,
28
- variables: { filter },
29
- query: gql `
30
- query QueryPermission($filter: PermissionFilter!) {
31
- authMsPermission(filter: $filter) {
32
- data {
33
- permCode
34
- permModule
35
- }
36
- }
37
- }
38
- `
39
- });
40
- }
41
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PermissionService, deps: [{ token: i1.Apollo }], target: i0.ɵɵFactoryTarget.Injectable }); }
42
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PermissionService, providedIn: 'root' }); }
43
- }
44
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PermissionService, decorators: [{
45
- type: Injectable,
46
- args: [{
47
- providedIn: 'root'
48
- }]
49
- }], ctorParameters: () => [{ type: i1.Apollo }] });
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdW5pcGluLWFuZ3VsYXIvc3JjL2xpYi9tb2R1bGVzL3Blcm1pc3Npb24vc2VydmljZXMvcGVybWlzc2lvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGVBQWUsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUVuRCxPQUFPLEVBQVUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQU03QyxNQUFNLE9BQU8saUJBQWlCO0lBbUI1QixZQUNxQixNQUFjO1FBQWQsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQVhuQixnQkFBVyxHQUE4QixJQUFJLGVBQWUsQ0FBVyxFQUFFLENBQUMsQ0FBQztRQU9wRixnQkFBVyxHQUFZLEtBQUssQ0FBQztRQUMxQixnQkFBVyxHQUF5QixJQUFJLEdBQUcsRUFBRSxDQUFDO0lBSXBELENBQUM7SUFPRSxhQUFhLENBQUMsU0FBbUIsRUFBRSxjQUF3QixFQUFFO1FBQ2xFLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxTQUFTLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRTtZQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNwRixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBU00sZUFBZSxDQUFDLEtBQWEsRUFBRSxNQUFjLEVBQUUsSUFBWTtRQUNoRSxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLEdBQUksS0FBTSxJQUFLLE1BQU8sUUFBUSxDQUFDO1lBQUUsT0FBTyxJQUFJLENBQUM7UUFDdEUsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxHQUFJLEtBQU0sSUFBSyxNQUFPLElBQUssSUFBSyxFQUFFLENBQUM7WUFBRSxPQUFPLElBQUksQ0FBQztRQUUxRSxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFPTSxjQUFjLENBQUMsTUFBd0IsRUFBRSxXQUF5QjtRQUN2RSxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO1lBQ3ZCLFdBQVc7WUFDWCxTQUFTLEVBQUUsRUFBRSxNQUFNLEVBQUU7WUFDckIsS0FBSyxFQUFFLEdBQUcsQ0FBQTs7Ozs7Ozs7O09BU1Q7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDOytHQW5FVSxpQkFBaUI7bUhBQWpCLGlCQUFpQixjQUZoQixNQUFNOzs0RkFFUCxpQkFBaUI7a0JBSDdCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBcG9sbG9RdWVyeVJlc3VsdCwgRmV0Y2hQb2xpY3kgfSBmcm9tICdAYXBvbGxvL2NsaWVudC9jb3JlJztcbmltcG9ydCB7IEFwb2xsbywgZ3FsIH0gZnJvbSAnYXBvbGxvLWFuZ3VsYXInO1xuaW1wb3J0IHsgQXBwUGVybURmbiwgUGVybWlzc2lvbkZpbHRlciB9IGZyb20gJy4uLy4uLy4uLy4uL2dyYXBocWwvZ2VuZXJhdGVkJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgUGVybWlzc2lvblNlcnZpY2Uge1xuXG4gIC8qKlxuICAgKiBBIHJlYWRvbmx5IHZhcmlhYmxlIHRoYXQgdXNlZCB0byBzdG9yZSBwZXJtaXNzaW9uIG1vZHVsZXMgaW4gYW4gYXBwbGV0IHRoZW4gY2hlY2sgaWYgdGhlIHVzZXJcbiAgICogaGFzIHRoZSBwZXJtaXNzaW9uIG9yIG5vdC4gVGhpcyB2YXJpYWJsZSBjb250cm9scyBtZW51J3MgaWNvbiB2aXNpYmlsaXR5IG9uIHRoZSBzaWRlYmFyLiBUaGVcbiAgICogaWNvbiB3aWxsIGFwcGVhciBpZiB0aGUgdXNlciBoYXMgdGhlIHBlcm1pc3Npb24gdGhhdCBtZW51J3MgbmVlZGVkIGFuZCBpdCB3aWxsIGRpc2FwcGVhciBpZlxuICAgKiB0aGUgdXNlciBkb24ndCBoYXZlIHRoZSBwZXJtaXNzaW9uLlxuICAgKiBAdHlwZSB7QmVoYXZpb3JTdWJqZWN0PHN0cmluZ1tdPn1cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBwZXJtTW9kdWxlczogQmVoYXZpb3JTdWJqZWN0PHN0cmluZ1tdPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nW10+KFtdKTtcblxuICAvKipcbiAgICogQSBmbGFnIHZhcmlhYmxlIHRoYXQgdXNlZCB0byBrbm93IGlmIHRoZSBhcHBsZXQgYWxyZWFkeSBpbml0aWF0ZWQgb3Igbm90LiBEZWZhdWx0IHZhbHVlIGlzXG4gICAqIGZhbHNlLlxuICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICovXG4gIHB1YmxpYyBpc0luaXRpYXRlZDogYm9vbGVhbiA9IGZhbHNlO1xuICBwcm90ZWN0ZWQgcGVybWlzc2lvbnM6IE1hcDxzdHJpbmcsIGJvb2xlYW4+ID0gbmV3IE1hcCgpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCByZWFkb25seSBhcG9sbG86IEFwb2xsb1xuICApIHsgfVxuXG4gIC8qKlxuICAgKiBBIG1ldGhvZCB0aGF0IHNldCB0aGUgcGVybWlzc2lvbnMgYW5kIHBlcm1pc3Npb24gbW9kdWxlcy5cbiAgICogQHBhcmFtIHtzdHJpbmdbXX0gcGVybUNvZGVzIC0gQ29udGFpbiBsaXN0IG9mIHBlcm1pc3Npb24gY29kZXMuXG4gICAqIEBwYXJhbSB7c3RyaW5nW119IHBlcm1Nb2R1bGVzIC0gQ29udGFpbiBsaXN0IG9mIHBlcm1pc3Npb24gbW9kdWxlcy4gRGVmYXVsdCB2YWx1ZSBbXS5cbiAgICovXG4gIHB1YmxpYyBzZXRQZXJtaXNzaW9uKHBlcm1Db2Rlczogc3RyaW5nW10sIHBlcm1Nb2R1bGVzOiBzdHJpbmdbXSA9IFtdKTogdm9pZHtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHBlcm1Db2Rlcy5sZW5ndGg7IGkrKykgdGhpcy5wZXJtaXNzaW9ucy5zZXQocGVybUNvZGVzW2ldLCB0cnVlKTtcbiAgICB0aGlzLnBlcm1Nb2R1bGVzLm5leHQocGVybU1vZHVsZXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEEgbWV0aG9kIHRoYXQgY2hlY2tpbmcgaWYgdGhlIHVzZXIgaGFzIHRoZSBwZXJtaXNzaW9uIG9yIG5vdCBiYXNlZCBvbiB0aGUgcGFyYW1zIHZhbHVlLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gc2NvcGUgLSBDb250YWluIHNjb3BlIG9mIHRoZSB1c2VyJ3MgcGVybWlzc2lvbi5cbiAgICogQHBhcmFtIHtzdHJpbmd9IG1vZHVsZSAtIENvbnRhaW4gbW9kdWxlIG9mIHRoZSB1c2VyJ3MgcGVybWlzc2lvbi5cbiAgICogQHBhcmFtIHtzdHJpbmd9IHR5cGUgLSBDb250YWluIHR5cGUgb2YgdGhlIHVzZXIncyBwZXJtaXNzaW9uLlxuICAgKiBAcmV0dXJucyB7Ym9vbGVhbn0gQ29udGFpbiBib29sZWFuIHZhbHVlIHRoYXQgdGVsbHMgdGhlIHVzZXIgaGFzIHRoZSBwZXJtaXNzaW9uIG9yIG5vdC5cbiAgICovXG4gIHB1YmxpYyBjaGVja1Blcm1pc3Npb24oc2NvcGU6IHN0cmluZywgbW9kdWxlOiBzdHJpbmcsIHR5cGU6IHN0cmluZyk6IGJvb2xlYW57XG4gICAgaWYgKHRoaXMucGVybWlzc2lvbnMuaGFzKGAkeyBzY29wZSB9LiR7IG1vZHVsZSB9LkFETUlOYCkpIHJldHVybiB0cnVlO1xuICAgIGlmICh0aGlzLnBlcm1pc3Npb25zLmhhcyhgJHsgc2NvcGUgfS4keyBtb2R1bGUgfS4keyB0eXBlIH1gKSkgcmV0dXJuIHRydWU7XG5cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICAvKipcbiAgICogQSBtZXRob2QgdGhhdCBnZXQgdGhlIHF1ZXJ5IHZhbHVlIHdpdGggYXV0aE1zUGVybWlzc2lvbiBhcyB0aGUgb2JqZWN0LlxuICAgKiBAcGFyYW0ge1Blcm1pc3Npb25GaWx0ZXJ9IGZpbHRlciAtIENvbnRhaW4gZmlsdGVyIGFzIGEgY29uZGl0aW9ucyBmb3IgdGhlIHF1ZXJ5LlxuICAgKiBAcmV0dXJucyB7T2JzZXJ2YWJsZTxBcG9sbG9RdWVyeVJlc3VsdDx7IGF1dGhNc1Blcm1pc3Npb246IHsgZGF0YTogQXBwUGVybURmbltdIH19Pj59IENvbnRhaW4gcXVlcnkgdmFsdWUuXG4gICAqL1xuICBwdWJsaWMgZ2V0UGVybWlzc2lvbnMoZmlsdGVyOiBQZXJtaXNzaW9uRmlsdGVyLCBmZXRjaFBvbGljeT86IEZldGNoUG9saWN5KTogT2JzZXJ2YWJsZTxBcG9sbG9RdWVyeVJlc3VsdDx7IGF1dGhNc1Blcm1pc3Npb246IHsgZGF0YTogQXBwUGVybURmbltdIH19Pj57XG4gICAgcmV0dXJuIHRoaXMuYXBvbGxvLnF1ZXJ5KHtcbiAgICAgIGZldGNoUG9saWN5LFxuICAgICAgdmFyaWFibGVzOiB7IGZpbHRlciB9LFxuICAgICAgcXVlcnk6IGdxbGBcbiAgICAgICAgcXVlcnkgUXVlcnlQZXJtaXNzaW9uKCRmaWx0ZXI6IFBlcm1pc3Npb25GaWx0ZXIhKSB7XG4gICAgICAgICAgYXV0aE1zUGVybWlzc2lvbihmaWx0ZXI6ICRmaWx0ZXIpIHtcbiAgICAgICAgICAgIGRhdGEge1xuXHRcdFx0XHRcdFx0XHRwZXJtQ29kZVxuXHRcdFx0XHRcdFx0XHRwZXJtTW9kdWxlXG5cdFx0XHRcdFx0XHR9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICBgXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==