@alauda-fe/common 1.4.36 → 1.4.38

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 (734) hide show
  1. package/abnormal-page/abnormal-page.component.d.ts.map +1 -0
  2. package/abnormal-page/abnormal-page.module.d.ts.map +1 -0
  3. package/abnormal-page/public-api.d.ts.map +1 -0
  4. package/alauda-fe-common.d.ts.map +1 -0
  5. package/api/acp-common-api.service.d.ts.map +1 -0
  6. package/api/api-compatible.interceptor.d.ts.map +1 -0
  7. package/api/api-gateway.interceptor.d.ts.map +1 -0
  8. package/api/api-gateway.service.d.ts.map +1 -0
  9. package/api/auth-api.service.d.ts.map +1 -0
  10. package/api/cluster-version.service.d.ts.map +1 -0
  11. package/api/crypto.interceptor.d.ts.map +1 -0
  12. package/api/helpers.d.ts.map +1 -0
  13. package/api/k8s-api-resource.service.d.ts.map +1 -0
  14. package/api/k8s-api.service.d.ts.map +1 -0
  15. package/api/page-visibility.service.d.ts.map +1 -0
  16. package/api/platform-ui.service.d.ts.map +1 -0
  17. package/api/product.service.d.ts.map +1 -0
  18. package/api/project-api.service.d.ts.map +1 -0
  19. package/api/public-api.d.ts.map +1 -0
  20. package/api/resource-update.service.d.ts.map +1 -0
  21. package/api/types.d.ts.map +1 -0
  22. package/array-form-table/base-string-map-form.component.d.ts.map +1 -0
  23. package/array-form-table/form/component.d.ts.map +1 -0
  24. package/array-form-table/form/module.d.ts.map +1 -0
  25. package/array-form-table/key-value-form/component.d.ts.map +1 -0
  26. package/array-form-table/key-value-table/component.d.ts.map +1 -0
  27. package/array-form-table/public-api.d.ts.map +1 -0
  28. package/array-form-table/string-array-form/component.d.ts.map +1 -0
  29. package/async-data/async-data-loader.d.ts.map +1 -0
  30. package/async-data/async-data.module.d.ts.map +1 -0
  31. package/async-data/error-page/component.d.ts.map +1 -0
  32. package/async-data/page-state/component.d.ts.map +1 -0
  33. package/async-data/public-api.d.ts.map +1 -0
  34. package/async-data/types.d.ts.map +1 -0
  35. package/authorization/app-init-url.d.ts.map +1 -0
  36. package/authorization/authorization.d.ts +3 -12
  37. package/authorization/authorization.d.ts.map +1 -0
  38. package/authorization/constants.d.ts +2 -0
  39. package/authorization/constants.d.ts.map +1 -0
  40. package/authorization/guard.service.d.ts.map +1 -0
  41. package/authorization/interceptor.service.d.ts +5 -3
  42. package/authorization/interceptor.service.d.ts.map +1 -0
  43. package/authorization/public-api.d.ts +1 -0
  44. package/authorization/public-api.d.ts.map +1 -0
  45. package/authorization/runtime.d.ts +33 -0
  46. package/authorization/runtime.d.ts.map +1 -0
  47. package/authorization/session-manage.service.d.ts +0 -2
  48. package/authorization/session-manage.service.d.ts.map +1 -0
  49. package/authorization/state.service.d.ts +7 -12
  50. package/authorization/state.service.d.ts.map +1 -0
  51. package/authorization/storage-token.d.ts.map +1 -0
  52. package/authorization/token-client.d.ts +48 -0
  53. package/business/notification-disabled-container/component.d.ts.map +1 -0
  54. package/business/notification-disabled-container/public-api.d.ts.map +1 -0
  55. package/business/public-api.d.ts.map +1 -0
  56. package/business/resource-select/base-list.d.ts.map +1 -0
  57. package/business/resource-select/context.service.d.ts.map +1 -0
  58. package/business/resource-select/exports/cluster-list/component.d.ts +1 -1
  59. package/business/resource-select/exports/cluster-list/component.d.ts.map +1 -0
  60. package/business/resource-select/exports/cluster-selector/component.d.ts.map +1 -0
  61. package/business/resource-select/exports/icon/component.d.ts.map +1 -0
  62. package/business/resource-select/exports/mesh-group-selector/component.d.ts.map +1 -0
  63. package/business/resource-select/exports/namespace-list/component.d.ts.map +1 -0
  64. package/business/resource-select/exports/namespace-page/component.d.ts.map +1 -0
  65. package/business/resource-select/exports/namespace-selector/component.d.ts.map +1 -0
  66. package/business/resource-select/exports/project-list/component.d.ts.map +1 -0
  67. package/business/resource-select/exports/project-page/component.d.ts.map +1 -0
  68. package/business/resource-select/exports/project-selector/component.d.ts.map +1 -0
  69. package/business/resource-select/helpers.directive.d.ts.map +1 -0
  70. package/business/resource-select/internals/data-grid/component.d.ts.map +1 -0
  71. package/business/resource-select/internals/meshgroup-list/component.d.ts.map +1 -0
  72. package/business/resource-select/internals/no-data/component.d.ts.map +1 -0
  73. package/business/resource-select/internals/resource-dashboard/component.d.ts.map +1 -0
  74. package/business/resource-select/internals/selector-popup/component.d.ts.map +1 -0
  75. package/business/resource-select/internals/selector-popup/ref.d.ts.map +1 -0
  76. package/business/resource-select/internals/selector-popup/service.d.ts.map +1 -0
  77. package/business/resource-select/module.d.ts.map +1 -0
  78. package/business/resource-select/project.service.d.ts.map +1 -0
  79. package/business/resource-select/public-api.d.ts.map +1 -0
  80. package/business/resource-select/types.d.ts.map +1 -0
  81. package/business/resource-select/utils.d.ts.map +1 -0
  82. package/chart/chart.module.d.ts.map +1 -0
  83. package/chart/chart.service.d.ts.map +1 -0
  84. package/chart/common/axis/axis-label.component.d.ts.map +1 -0
  85. package/chart/common/axis/x-axis-ticks.component.d.ts.map +1 -0
  86. package/chart/common/axis/x-axis.component.d.ts.map +1 -0
  87. package/chart/common/axis/x-plot-lines.component.d.ts.map +1 -0
  88. package/chart/common/axis/y-axis-ticks.component.d.ts.map +1 -0
  89. package/chart/common/axis/y-axis.component.d.ts.map +1 -0
  90. package/chart/common/axis/y-plot-lines.component.d.ts.map +1 -0
  91. package/chart/common/chart/chart.component.d.ts.map +1 -0
  92. package/chart/common/legend/legend.component.d.ts.map +1 -0
  93. package/chart/common/public-api.d.ts.map +1 -0
  94. package/chart/common/range-area/range-area.component.d.ts.map +1 -0
  95. package/chart/common/reference-area/reference-area.component.d.ts.map +1 -0
  96. package/chart/common/series/area-series.component.d.ts.map +1 -0
  97. package/chart/common/series/bar-path.component.d.ts.map +1 -0
  98. package/chart/common/series/bar-series.component.d.ts.map +1 -0
  99. package/chart/common/series/line-series.component.d.ts.map +1 -0
  100. package/chart/common/series/series.component.d.ts.map +1 -0
  101. package/chart/common/tooltip/tooltip.component.d.ts.map +1 -0
  102. package/chart/constants.d.ts.map +1 -0
  103. package/chart/custom-template/dropdown-legend.d.ts.map +1 -0
  104. package/chart/public-api.d.ts.map +1 -0
  105. package/chart/types.d.ts.map +1 -0
  106. package/chart/utils.d.ts.map +1 -0
  107. package/code/code-display-dialog/component.d.ts.map +1 -0
  108. package/code/code-editor-configs.d.ts.map +1 -0
  109. package/code/code.module.d.ts.map +1 -0
  110. package/code/k8s-yaml-display-dialog/component.d.ts.map +1 -0
  111. package/code/managed-fields-folder.util.d.ts.map +1 -0
  112. package/code/public-api.d.ts.map +1 -0
  113. package/code/resource-yaml-display/component.d.ts.map +1 -0
  114. package/code/resource-yaml-editor/component.d.ts.map +1 -0
  115. package/code/yaml-examples.d.ts.map +1 -0
  116. package/code/yaml-sidebar/component.d.ts.map +1 -0
  117. package/code/yaml-sidebar/types.d.ts.map +1 -0
  118. package/core/abstract/base-form-container.d.ts.map +1 -0
  119. package/core/abstract/base-nested-form-control.d.ts.map +1 -0
  120. package/core/abstract/public-api.d.ts.map +1 -0
  121. package/core/components/public-api.d.ts.map +1 -0
  122. package/core/components/tree/module.d.ts.map +1 -0
  123. package/core/components/tree/node/component.d.ts.map +1 -0
  124. package/core/components/tree/outlet.d.ts.map +1 -0
  125. package/core/components/tree/padding.d.ts.map +1 -0
  126. package/core/components/tree/toggle.d.ts.map +1 -0
  127. package/core/components/tree/tree/component.d.ts.map +1 -0
  128. package/core/constants/constants.d.ts.map +1 -0
  129. package/core/constants/patterns.d.ts.map +1 -0
  130. package/core/constants/public-api.d.ts.map +1 -0
  131. package/core/constants/status-icons.d.ts.map +1 -0
  132. package/core/constants/timezones.d.ts.map +1 -0
  133. package/core/constants/tokens.d.ts.map +1 -0
  134. package/core/directives/aui-code-editor.directive.d.ts.map +1 -0
  135. package/core/directives/click-outside.directive.d.ts.map +1 -0
  136. package/core/directives/declare.directive.d.ts.map +1 -0
  137. package/core/directives/disabled.directive.d.ts.map +1 -0
  138. package/core/directives/feature-gate.directive.d.ts.map +1 -0
  139. package/core/directives/intercept-deactivate.directive.d.ts.map +1 -0
  140. package/core/directives/last-form-item.directive.d.ts.map +1 -0
  141. package/core/directives/page-header-content.directive.d.ts.map +1 -0
  142. package/core/directives/public-api.d.ts.map +1 -0
  143. package/core/directives/readonly-field.directive.d.ts.map +1 -0
  144. package/core/directives/resize.directive.d.ts.map +1 -0
  145. package/core/directives/scroll-border-observer.directive.d.ts.map +1 -0
  146. package/core/directives/scroll-to-first-invalid.directive.d.ts.map +1 -0
  147. package/core/guards/feature.guard.d.ts.map +1 -0
  148. package/core/guards/intercept-deactivate.guard.d.ts.map +1 -0
  149. package/core/guards/leave-edit-page.guard.d.ts.map +1 -0
  150. package/core/guards/project-namespace.guard.d.ts.map +1 -0
  151. package/core/guards/public-api.d.ts.map +1 -0
  152. package/core/module.d.ts.map +1 -0
  153. package/core/pipes/calc.pipe.d.ts.map +1 -0
  154. package/core/pipes/cron-human-readable.pipe.d.ts.map +1 -0
  155. package/core/pipes/crontab-next.pipe.d.ts.map +1 -0
  156. package/core/pipes/duration.pipe.d.ts.map +1 -0
  157. package/core/pipes/field-not-available.pipe.d.ts.map +1 -0
  158. package/core/pipes/img-header.pipe.d.ts.map +1 -0
  159. package/core/pipes/img-theme.pipe.d.ts.map +1 -0
  160. package/core/pipes/k8s-util.pipe.d.ts.map +1 -0
  161. package/core/pipes/k8s-util.pipe.module.d.ts.map +1 -0
  162. package/core/pipes/keyvalue.pipe.d.ts.map +1 -0
  163. package/core/pipes/marked.pipe.d.ts.map +1 -0
  164. package/core/pipes/minimum-format.pipe.d.ts.map +1 -0
  165. package/core/pipes/page-env.pipe.d.ts.map +1 -0
  166. package/core/pipes/parse-json-translate.pipe.d.ts.map +1 -0
  167. package/core/pipes/parse-json.pipe.d.ts.map +1 -0
  168. package/core/pipes/public-api.d.ts.map +1 -0
  169. package/core/pipes/pure.pipe.d.ts.map +1 -0
  170. package/core/pipes/pure.pipe.module.d.ts.map +1 -0
  171. package/core/pipes/safe.pipe.d.ts.map +1 -0
  172. package/core/pipes/sanitize.pipe.d.ts.map +1 -0
  173. package/core/pipes/time.pipe.d.ts.map +1 -0
  174. package/core/pipes/timezone-display.pipe.d.ts.map +1 -0
  175. package/core/public-api.d.ts.map +1 -0
  176. package/core/services/aui-paginator-intl.service.d.ts.map +1 -0
  177. package/core/services/aui-tooltip-copy-intl.service.d.ts.map +1 -0
  178. package/core/services/context.service.d.ts.map +1 -0
  179. package/core/services/custom-code-editor-intl.service.d.ts.map +1 -0
  180. package/core/services/disaster-recovery.service.d.ts.map +1 -0
  181. package/core/services/encode-url-param.interceptor.d.ts.map +1 -0
  182. package/core/services/feature-gate.service.d.ts.map +1 -0
  183. package/core/services/form-row-duplicate/form-row-duplicate.service.d.ts.map +1 -0
  184. package/core/services/intercept-deactivate.service.d.ts.map +1 -0
  185. package/core/services/k8s-util.service.d.ts.map +1 -0
  186. package/core/services/kubernetes-schema.service.d.ts.map +1 -0
  187. package/core/services/on-resize.service.d.ts.map +1 -0
  188. package/core/services/plugin-util.service.d.ts.map +1 -0
  189. package/core/services/public-api.d.ts.map +1 -0
  190. package/core/services/silently-navigate.service.d.ts.map +1 -0
  191. package/core/services/time.service.d.ts.map +1 -0
  192. package/core/services/ui-state.service.d.ts.map +1 -0
  193. package/core/services/workspace-helper.service.d.ts.map +1 -0
  194. package/core/services/yaml-util.service.d.ts.map +1 -0
  195. package/core/types/commons.d.ts.map +1 -0
  196. package/core/types/helpers.d.ts.map +1 -0
  197. package/core/types/k8s/core.d.ts.map +1 -0
  198. package/core/types/k8s/crd.d.ts.map +1 -0
  199. package/core/types/k8s/public-api.d.ts.map +1 -0
  200. package/core/types/k8s/raw.d.ts.map +1 -0
  201. package/core/types/openapi.d.ts.map +1 -0
  202. package/core/types/public-api.d.ts.map +1 -0
  203. package/core/types/resource-definitions.d.ts +1 -1
  204. package/core/types/resource-definitions.d.ts.map +1 -0
  205. package/core/types/schema.d.ts.map +1 -0
  206. package/core/utils/browser.d.ts.map +1 -0
  207. package/core/utils/cache-store.d.ts.map +1 -0
  208. package/core/utils/color-helpers.d.ts.map +1 -0
  209. package/core/utils/common.d.ts.map +1 -0
  210. package/core/utils/create-recursive-filter.d.ts.map +1 -0
  211. package/core/utils/cron-util.d.ts.map +1 -0
  212. package/core/utils/decorators.d.ts.map +1 -0
  213. package/core/utils/dev-helpers.d.ts.map +1 -0
  214. package/core/utils/disabled-state.d.ts.map +1 -0
  215. package/core/utils/format-number.d.ts.map +1 -0
  216. package/core/utils/k8s-util.d.ts.map +1 -0
  217. package/core/utils/local-storage-constants.d.ts.map +1 -0
  218. package/core/utils/node.d.ts.map +1 -0
  219. package/core/utils/observable.d.ts.map +1 -0
  220. package/core/utils/operators.d.ts.map +1 -0
  221. package/core/utils/public-api.d.ts.map +1 -0
  222. package/core/utils/request-pool.d.ts.map +1 -0
  223. package/core/utils/resources.d.ts.map +1 -0
  224. package/core/utils/router.d.ts.map +1 -0
  225. package/core/utils/sort-fn.d.ts.map +1 -0
  226. package/core/utils/tree.d.ts.map +1 -0
  227. package/core/utils/unit.d.ts.map +1 -0
  228. package/core/utils/version.d.ts.map +1 -0
  229. package/core/utils/with-load-state.d.ts.map +1 -0
  230. package/core/utils/workload.d.ts.map +1 -0
  231. package/core/utils/workspace.d.ts.map +1 -0
  232. package/core/utils/yaml.d.ts.map +1 -0
  233. package/custom-columns-setting/component.d.ts.map +1 -0
  234. package/custom-columns-setting/public-api.d.ts.map +1 -0
  235. package/disabled-container/disabled-container.component.d.ts.map +1 -0
  236. package/disabled-container/disabled-container.module.d.ts.map +1 -0
  237. package/disabled-container/public-api.d.ts.map +1 -0
  238. package/editable/editable.component.d.ts.map +1 -0
  239. package/editable/editable.directive.d.ts.map +1 -0
  240. package/editable/editable.type.d.ts.map +1 -0
  241. package/editable/public-api.d.ts.map +1 -0
  242. package/editable-text/component.d.ts.map +1 -0
  243. package/editable-text/module.d.ts.map +1 -0
  244. package/editable-text/public-api.d.ts.map +1 -0
  245. package/effect-directive/coerce-number.directive.d.ts.map +1 -0
  246. package/effect-directive/e2e-attribute-binding.directive.d.ts.map +1 -0
  247. package/effect-directive/event.directive.d.ts.map +1 -0
  248. package/effect-directive/min-max.directive.d.ts.map +1 -0
  249. package/effect-directive/module.d.ts.map +1 -0
  250. package/effect-directive/public-api.d.ts.map +1 -0
  251. package/effect-directive/trim.directive.d.ts.map +1 -0
  252. package/effect-directive/validators.directive.d.ts.map +1 -0
  253. package/esm2022/abnormal-page/abnormal-page.component.mjs +7 -3
  254. package/esm2022/abnormal-page/abnormal-page.module.mjs +1 -6
  255. package/esm2022/array-form-table/form/component.mjs +1 -1
  256. package/esm2022/array-form-table/key-value-form/component.mjs +1 -1
  257. package/esm2022/array-form-table/key-value-table/component.mjs +1 -1
  258. package/esm2022/array-form-table/string-array-form/component.mjs +1 -1
  259. package/esm2022/async-data/error-page/component.mjs +1 -1
  260. package/esm2022/async-data/page-state/component.mjs +1 -1
  261. package/esm2022/authorization/authorization.mjs +82 -51
  262. package/esm2022/authorization/constants.mjs +3 -1
  263. package/esm2022/authorization/interceptor.service.mjs +67 -45
  264. package/esm2022/authorization/public-api.mjs +2 -1
  265. package/esm2022/authorization/runtime.mjs +96 -0
  266. package/esm2022/authorization/session-manage.service.mjs +3 -5
  267. package/esm2022/authorization/state.service.mjs +23 -64
  268. package/esm2022/authorization/token-client.mjs +101 -0
  269. package/esm2022/business/notification-disabled-container/component.mjs +1 -1
  270. package/esm2022/business/resource-select/exports/cluster-list/component.mjs +4 -3
  271. package/esm2022/business/resource-select/exports/cluster-selector/component.mjs +8 -3
  272. package/esm2022/business/resource-select/exports/icon/component.mjs +5 -3
  273. package/esm2022/business/resource-select/exports/mesh-group-selector/component.mjs +9 -3
  274. package/esm2022/business/resource-select/exports/namespace-list/component.mjs +13 -3
  275. package/esm2022/business/resource-select/exports/namespace-page/component.mjs +1 -1
  276. package/esm2022/business/resource-select/exports/namespace-selector/component.mjs +1 -1
  277. package/esm2022/business/resource-select/exports/project-list/component.mjs +4 -3
  278. package/esm2022/business/resource-select/exports/project-page/component.mjs +1 -1
  279. package/esm2022/business/resource-select/exports/project-selector/component.mjs +1 -1
  280. package/esm2022/business/resource-select/internals/data-grid/component.mjs +13 -3
  281. package/esm2022/business/resource-select/internals/meshgroup-list/component.mjs +4 -3
  282. package/esm2022/business/resource-select/internals/no-data/component.mjs +7 -3
  283. package/esm2022/business/resource-select/internals/resource-dashboard/component.mjs +7 -3
  284. package/esm2022/business/resource-select/internals/selector-popup/component.mjs +1 -1
  285. package/esm2022/business/resource-select/module.mjs +6 -26
  286. package/esm2022/chart/chart.module.mjs +6 -13
  287. package/esm2022/chart/common/axis/axis-label.component.mjs +1 -1
  288. package/esm2022/chart/common/axis/x-axis-ticks.component.mjs +5 -3
  289. package/esm2022/chart/common/axis/x-axis.component.mjs +1 -1
  290. package/esm2022/chart/common/axis/x-plot-lines.component.mjs +1 -1
  291. package/esm2022/chart/common/axis/y-axis-ticks.component.mjs +5 -3
  292. package/esm2022/chart/common/axis/y-axis.component.mjs +1 -1
  293. package/esm2022/chart/common/axis/y-plot-lines.component.mjs +1 -1
  294. package/esm2022/chart/common/chart/chart.component.mjs +1 -1
  295. package/esm2022/chart/common/legend/legend.component.mjs +1 -1
  296. package/esm2022/chart/common/range-area/range-area.component.mjs +1 -1
  297. package/esm2022/chart/common/reference-area/reference-area.component.mjs +1 -1
  298. package/esm2022/chart/common/series/area-series.component.mjs +5 -3
  299. package/esm2022/chart/common/series/bar-path.component.mjs +5 -3
  300. package/esm2022/chart/common/series/bar-series.component.mjs +1 -1
  301. package/esm2022/chart/common/series/line-series.component.mjs +5 -3
  302. package/esm2022/chart/common/tooltip/tooltip.component.mjs +8 -3
  303. package/esm2022/chart/custom-template/dropdown-legend.mjs +7 -3
  304. package/esm2022/code/code-display-dialog/component.mjs +1 -1
  305. package/esm2022/code/k8s-yaml-display-dialog/component.mjs +1 -1
  306. package/esm2022/code/resource-yaml-display/component.mjs +1 -1
  307. package/esm2022/code/resource-yaml-editor/component.mjs +1 -1
  308. package/esm2022/code/yaml-sidebar/component.mjs +1 -1
  309. package/esm2022/core/components/tree/node/component.mjs +1 -1
  310. package/esm2022/core/components/tree/tree/component.mjs +1 -1
  311. package/esm2022/core/constants/tokens.mjs +12 -12
  312. package/esm2022/core/directives/readonly-field.directive.mjs +1 -1
  313. package/esm2022/custom-columns-setting/component.mjs +1 -1
  314. package/esm2022/disabled-container/disabled-container.component.mjs +1 -1
  315. package/esm2022/editable/editable.component.mjs +1 -1
  316. package/esm2022/editable-text/component.mjs +7 -3
  317. package/esm2022/editable-text/module.mjs +1 -6
  318. package/esm2022/exec/module.mjs +1 -9
  319. package/esm2022/exec/placeholder/component.mjs +5 -3
  320. package/esm2022/exec/terminal/component.mjs +7 -3
  321. package/esm2022/exec/terminal-group/component.mjs +8 -3
  322. package/esm2022/feature-gate-forbidden/component/component.mjs +8 -3
  323. package/esm2022/feature-gate-forbidden/module.mjs +1 -7
  324. package/esm2022/form/errors-mapper/errors-mapper-component/component.mjs +1 -1
  325. package/esm2022/form/errors-mapper/errors-mapper.directive.mjs +1 -1
  326. package/esm2022/form/labels-editor/component.mjs +1 -1
  327. package/esm2022/form/taints-editor/component.mjs +1 -1
  328. package/esm2022/form/upload-file/component.mjs +1 -1
  329. package/esm2022/form/validators/strong-password/strong-password-tooltip/component.mjs +6 -3
  330. package/esm2022/form/validators/strong-password/strong-password-validator.module.mjs +1 -5
  331. package/esm2022/graph-canvas/components/graph-actions.component.mjs +1 -1
  332. package/esm2022/graph-canvas/components/graph-canvas.component.mjs +6 -3
  333. package/esm2022/graph-canvas/components/graph-link.component.mjs +1 -1
  334. package/esm2022/graph-canvas/components/graph-links.component.mjs +1 -1
  335. package/esm2022/graph-canvas/graph-canvas.module.mjs +1 -5
  336. package/esm2022/grid-layout/components/grid/component.mjs +1 -1
  337. package/esm2022/grid-layout/components/grid-items/component.mjs +1 -1
  338. package/esm2022/help-document/component.mjs +10 -3
  339. package/esm2022/help-document/module.mjs +1 -9
  340. package/esm2022/iframe-config/config.service.mjs +8 -2
  341. package/esm2022/k8s-resource-list/footer/component.mjs +6 -3
  342. package/esm2022/k8s-resource-list/k8s-resource-list.module.mjs +1 -5
  343. package/esm2022/k8s-shared/resource-mark/k8s-resource-mark.component.mjs +1 -1
  344. package/esm2022/k8s-shared/update-description-dialog/component.mjs +1 -1
  345. package/esm2022/k8s-shared/update-display-name-dialog/component.mjs +1 -1
  346. package/esm2022/k8s-shared/update-key-value-dialog/component.mjs +1 -1
  347. package/esm2022/lazy-component/lazy-load-component.mjs +1 -1
  348. package/esm2022/license/license-error/component.mjs +12 -3
  349. package/esm2022/license/license-error/module.mjs +1 -11
  350. package/esm2022/list-display/component.mjs +1 -1
  351. package/esm2022/metric-chart/metric-chart.component.mjs +1 -1
  352. package/esm2022/metric-chart/metric-time-pick.mjs +1 -1
  353. package/esm2022/multi-search/action-input/component.mjs +1 -1
  354. package/esm2022/multi-search/form/component.mjs +1 -1
  355. package/esm2022/multi-search/multi-search-tags/component.mjs +1 -1
  356. package/esm2022/mutable/mosaic/mosaic.component.mjs +1 -1
  357. package/esm2022/notification/feedback-notification/component.mjs +1 -1
  358. package/esm2022/overview-banner/overview-banner.component.mjs +1 -1
  359. package/esm2022/page-guard/component/component.mjs +1 -1
  360. package/esm2022/page-scaffold/navigation/breadcrumb/breadcrumb.component.mjs +1 -1
  361. package/esm2022/page-scaffold/navigation/nav-menu/nav-item-li/nav-item-li.component.mjs +12 -3
  362. package/esm2022/page-scaffold/navigation/nav-menu/nav-item-ul/nav-item-ul.component.mjs +1 -1
  363. package/esm2022/page-scaffold/navigation/nav-menu/nav-menu.component.mjs +9 -3
  364. package/esm2022/page-scaffold/navigation/nav-menu/nav-menu.module.mjs +1 -12
  365. package/esm2022/page-scaffold/page/notices/maintenance.component.mjs +1 -1
  366. package/esm2022/page-scaffold/page/notices/notice.component.mjs +1 -1
  367. package/esm2022/page-scaffold/page/page.component.mjs +6 -3
  368. package/esm2022/page-scaffold/page/page.module.mjs +1 -4
  369. package/esm2022/page-scaffold/page-header/account-menu/component/component.mjs +5 -3
  370. package/esm2022/page-scaffold/page-header/account-menu/module.mjs +1 -5
  371. package/esm2022/page-scaffold/page-header/common-layout/common-layout.module.mjs +1 -10
  372. package/esm2022/page-scaffold/page-header/common-layout/namespace-select/component.mjs +8 -3
  373. package/esm2022/page-scaffold/page-header/common-layout/product-select/component.mjs +9 -3
  374. package/esm2022/page-scaffold/page-header/component.mjs +10 -9
  375. package/esm2022/page-scaffold/page-header/enterprise-support-status/component.mjs +6 -3
  376. package/esm2022/page-scaffold/page-header/header-notify/component/header-notify.component.mjs +8 -3
  377. package/esm2022/page-scaffold/page-header/header-notify/component/notification-list/notification-list.component.mjs +10 -3
  378. package/esm2022/page-scaffold/page-header/header-notify/header-notify.module.mjs +1 -12
  379. package/esm2022/page-scaffold/page-header/header-notify/notify.service.mjs +1 -1
  380. package/esm2022/page-scaffold/page-header/help-menu/component/component.mjs +8 -3
  381. package/esm2022/page-scaffold/page-header/help-menu/module.mjs +1 -7
  382. package/esm2022/page-scaffold/page-header/module.mjs +1 -4
  383. package/esm2022/pie-derivative-chart/donut-status/component.mjs +1 -1
  384. package/esm2022/pie-derivative-chart/pie-derivative-chart.module.mjs +6 -9
  385. package/esm2022/pie-derivative-chart/radial-bar/radial-bar-chart.component.mjs +10 -3
  386. package/esm2022/pod-status/component.mjs +1 -1
  387. package/esm2022/searchable-selector/component.mjs +9 -3
  388. package/esm2022/searchable-selector/module.mjs +1 -9
  389. package/esm2022/skeleton/item/component.mjs +5 -3
  390. package/esm2022/skeleton/module.mjs +1 -5
  391. package/esm2022/skeleton/nav-skeleton/component.mjs +5 -3
  392. package/esm2022/table/component.mjs +14 -3
  393. package/esm2022/table/module.mjs +1 -10
  394. package/esm2022/translate/i18n-assets-loader.mjs +12 -4
  395. package/esm2022/translate/i18n-config.mjs +2 -2
  396. package/esm2022/view-chart/custom-template/dropdown-legend.mjs +7 -3
  397. package/esm2022/view-chart/legend/legend.component.mjs +1 -1
  398. package/esm2022/view-chart/view-chart.component.mjs +7 -3
  399. package/esm2022/view-chart/view-chart.module.mjs +6 -8
  400. package/esm2022/view-zchart/custom-template/dropdown-legend.mjs +7 -3
  401. package/esm2022/view-zchart/legend/legend.component.mjs +1 -1
  402. package/esm2022/view-zchart/view-zchart.component.mjs +6 -3
  403. package/esm2022/view-zchart/view-zchart.module.mjs +6 -8
  404. package/esm2022/widget/card-section/card-section.component.mjs +1 -1
  405. package/esm2022/widget/confirm-delete/confirm-delete.component.mjs +1 -1
  406. package/esm2022/widget/current-time/component.mjs +1 -1
  407. package/esm2022/widget/date-range-picker/component.mjs +93 -26
  408. package/esm2022/widget/field-set/column/component.mjs +2 -2
  409. package/esm2022/widget/field-set/group/component.mjs +1 -1
  410. package/esm2022/widget/field-set/item/component.mjs +1 -1
  411. package/esm2022/widget/foldable-block/component.mjs +1 -1
  412. package/esm2022/widget/foldable-item-in-table/component.mjs +1 -1
  413. package/esm2022/widget/loading-mask/loading-mask.component.mjs +1 -1
  414. package/esm2022/widget/password-input/component.mjs +1 -1
  415. package/esm2022/widget/relative-time/component.mjs +1 -1
  416. package/esm2022/widget/resource-label/component.mjs +1 -1
  417. package/esm2022/widget/resource-multi-select/component.mjs +1 -1
  418. package/esm2022/widget/search-panel/component.mjs +1 -1
  419. package/esm2022/widget/search-panel/search-item/component.mjs +1 -1
  420. package/esm2022/widget/status-icon/status-icon.component.mjs +1 -1
  421. package/esm2022/widget/tags-label/component.mjs +1 -1
  422. package/esm2022/widget/terminating-tag/component.mjs +1 -1
  423. package/esm2022/widget/text-ellipsis/component.mjs +1 -1
  424. package/esm2022/widget/text-with-url/component.mjs +1 -1
  425. package/esm2022/widget/zero-state/zero-state.component.mjs +1 -1
  426. package/esm2022/workload-status-icon/component.mjs +1 -1
  427. package/esm2022/xterm/xterm-terminal/xterm-terminal.component.mjs +1 -1
  428. package/esm2022/xterm/xterm.component.mjs +1 -1
  429. package/exec/constants.d.ts.map +1 -0
  430. package/exec/module.d.ts +1 -1
  431. package/exec/module.d.ts.map +1 -0
  432. package/exec/placeholder/component.d.ts.map +1 -0
  433. package/exec/public-api.d.ts.map +1 -0
  434. package/exec/service.d.ts.map +1 -0
  435. package/exec/terminal/component.d.ts.map +1 -0
  436. package/exec/terminal-group/component.d.ts.map +1 -0
  437. package/exec/types.d.ts.map +1 -0
  438. package/feature-gate-forbidden/component/component.d.ts.map +1 -0
  439. package/feature-gate-forbidden/module.d.ts.map +1 -0
  440. package/feature-gate-forbidden/public-api.d.ts.map +1 -0
  441. package/form/directives/value-trace.directive.d.ts.map +1 -0
  442. package/form/errors-mapper/base-errors-mapper.d.ts.map +1 -0
  443. package/form/errors-mapper/default-errors-mapper.service.d.ts.map +1 -0
  444. package/form/errors-mapper/errors-mapper-component/component.d.ts.map +1 -0
  445. package/form/errors-mapper/errors-mapper.directive.d.ts.map +1 -0
  446. package/form/errors-mapper/errors-mapper.module.d.ts.map +1 -0
  447. package/form/errors-mapper/public-api.d.ts.map +1 -0
  448. package/form/errors-mapper/types.d.ts.map +1 -0
  449. package/form/labels-editor/component.d.ts.map +1 -0
  450. package/form/public-api.d.ts.map +1 -0
  451. package/form/taints-editor/component.d.ts.map +1 -0
  452. package/form/upload-file/component.d.ts.map +1 -0
  453. package/form/utils.d.ts.map +1 -0
  454. package/form/validators/async-function-validator.directive.d.ts +1 -1
  455. package/form/validators/async-function-validator.directive.d.ts.map +1 -0
  456. package/form/validators/dns1123-subdomain.d.ts.map +1 -0
  457. package/form/validators/function-validator.directive.d.ts.map +1 -0
  458. package/form/validators/maxlength-minlength-validator.directive.d.ts.map +1 -0
  459. package/form/validators/module.d.ts.map +1 -0
  460. package/form/validators/not-be-validator.directive.d.ts.map +1 -0
  461. package/form/validators/one-of-validator.directive.d.ts.map +1 -0
  462. package/form/validators/public-api.d.ts.map +1 -0
  463. package/form/validators/resource-limit.d.ts.map +1 -0
  464. package/form/validators/strong-password/public-api.d.ts.map +1 -0
  465. package/form/validators/strong-password/strong-password-tooltip/component.d.ts.map +1 -0
  466. package/form/validators/strong-password/strong-password-validator.directive.d.ts.map +1 -0
  467. package/form/validators/strong-password/strong-password-validator.module.d.ts.map +1 -0
  468. package/form/validators/utils.d.ts.map +1 -0
  469. package/graph-canvas/components/graph-actions.component.d.ts.map +1 -0
  470. package/graph-canvas/components/graph-canvas.component.d.ts.map +1 -0
  471. package/graph-canvas/components/graph-link.component.d.ts.map +1 -0
  472. package/graph-canvas/components/graph-links.component.d.ts.map +1 -0
  473. package/graph-canvas/components/graph-node.directive.d.ts.map +1 -0
  474. package/graph-canvas/graph-canvas.module.d.ts.map +1 -0
  475. package/graph-canvas/graph-store.service.d.ts.map +1 -0
  476. package/graph-canvas/public-api.d.ts.map +1 -0
  477. package/graph-canvas/types.d.ts.map +1 -0
  478. package/graph-canvas/utils.d.ts.map +1 -0
  479. package/grid-layout/components/grid/component.d.ts.map +1 -0
  480. package/grid-layout/components/grid-items/component.d.ts.map +1 -0
  481. package/grid-layout/constant.d.ts.map +1 -0
  482. package/grid-layout/directives/drag-handler.directive.d.ts.map +1 -0
  483. package/grid-layout/directives/placeholder.directive.d.ts.map +1 -0
  484. package/grid-layout/directives/remove-handler.directive.d.ts.map +1 -0
  485. package/grid-layout/directives/resize-handler.directive.d.ts.map +1 -0
  486. package/grid-layout/grid-layout.service.d.ts.map +1 -0
  487. package/grid-layout/grid-placeholder.service.d.ts.map +1 -0
  488. package/grid-layout/module.d.ts.map +1 -0
  489. package/grid-layout/public-api.d.ts.map +1 -0
  490. package/grid-layout/type.d.ts.map +1 -0
  491. package/grid-layout/utils/client-rect.utils.d.ts.map +1 -0
  492. package/grid-layout/utils/grid.utils.d.ts.map +1 -0
  493. package/grid-layout/utils/mouse.utils.d.ts.map +1 -0
  494. package/grid-layout/utils/operator.d.ts.map +1 -0
  495. package/grid-layout/utils/react-grid-layout.utils.d.ts.map +1 -0
  496. package/grid-layout/utils/scroll.utils.d.ts.map +1 -0
  497. package/help-document/component.d.ts.map +1 -0
  498. package/help-document/directive.d.ts.map +1 -0
  499. package/help-document/module.d.ts.map +1 -0
  500. package/help-document/public-api.d.ts.map +1 -0
  501. package/help-document/service.d.ts.map +1 -0
  502. package/iframe-config/config.service.d.ts.map +1 -0
  503. package/iframe-config/constants.d.ts.map +1 -0
  504. package/iframe-config/public-api.d.ts.map +1 -0
  505. package/k8s-resource-list/footer/component.d.ts.map +1 -0
  506. package/k8s-resource-list/k8s-resource-list.d.ts.map +1 -0
  507. package/k8s-resource-list/k8s-resource-list.module.d.ts.map +1 -0
  508. package/k8s-resource-list/k8s-resource-paged-list.d.ts.map +1 -0
  509. package/k8s-resource-list/public-api.d.ts.map +1 -0
  510. package/k8s-resource-list/types.d.ts.map +1 -0
  511. package/k8s-resource-list/utils.d.ts.map +1 -0
  512. package/k8s-shared/constants.d.ts.map +1 -0
  513. package/k8s-shared/k8s-resource-translate-key.pipe.d.ts.map +1 -0
  514. package/k8s-shared/k8s-shared-util.service.d.ts.map +1 -0
  515. package/k8s-shared/public-api.d.ts.map +1 -0
  516. package/k8s-shared/resource-mark/k8s-resource-mark.component.d.ts.map +1 -0
  517. package/k8s-shared/resource-mark/util.d.ts.map +1 -0
  518. package/k8s-shared/update-description-dialog/component.d.ts.map +1 -0
  519. package/k8s-shared/update-display-name-dialog/component.d.ts.map +1 -0
  520. package/k8s-shared/update-key-value-dialog/component.d.ts.map +1 -0
  521. package/lazy-component/lazy-load-component.d.ts.map +1 -0
  522. package/lazy-component/public-api.d.ts.map +1 -0
  523. package/lazy-component/visibility.service.d.ts.map +1 -0
  524. package/license/license-api.d.ts.map +1 -0
  525. package/license/license-error/component.d.ts.map +1 -0
  526. package/license/license-error/module.d.ts.map +1 -0
  527. package/license/license.guard.d.ts.map +1 -0
  528. package/license/license.service.d.ts.map +1 -0
  529. package/license/license.type.d.ts.map +1 -0
  530. package/license/public-api.d.ts.map +1 -0
  531. package/list-display/component.d.ts.map +1 -0
  532. package/list-display/public-api.d.ts.map +1 -0
  533. package/metric-chart/common-chart.service.d.ts.map +1 -0
  534. package/metric-chart/helpers.d.ts.map +1 -0
  535. package/metric-chart/metric-chart.component.d.ts.map +1 -0
  536. package/metric-chart/metric-chart.module.d.ts.map +1 -0
  537. package/metric-chart/metric-time-pick.d.ts.map +1 -0
  538. package/metric-chart/public-api.d.ts.map +1 -0
  539. package/metric-chart/types.d.ts.map +1 -0
  540. package/metric-chart/utils.d.ts.map +1 -0
  541. package/multi-search/action-input/component.d.ts.map +1 -0
  542. package/multi-search/form/component.d.ts.map +1 -0
  543. package/multi-search/multi-search-tags/component.d.ts.map +1 -0
  544. package/multi-search/public-api.d.ts.map +1 -0
  545. package/multi-search/types.d.ts.map +1 -0
  546. package/multi-search/utils.d.ts.map +1 -0
  547. package/mutable/element.d.ts.map +1 -0
  548. package/mutable/mosaic/mosaic.component.d.ts.map +1 -0
  549. package/mutable/mosaic/mosaic.directive.d.ts.map +1 -0
  550. package/mutable/mutable.directive.d.ts.map +1 -0
  551. package/mutable/mutable.module.d.ts.map +1 -0
  552. package/mutable/public-api.d.ts.map +1 -0
  553. package/mutable/util.d.ts.map +1 -0
  554. package/notification/errors-mapper.d.ts.map +1 -0
  555. package/notification/feedback-notification/component.d.ts.map +1 -0
  556. package/notification/helpers.d.ts.map +1 -0
  557. package/notification/notification-util.service.d.ts.map +1 -0
  558. package/notification/public-api.d.ts.map +1 -0
  559. package/notification/resource-error.interceptor.d.ts.map +1 -0
  560. package/overview-banner/overview-banner.component.d.ts.map +1 -0
  561. package/overview-banner/overview-banner.module.d.ts.map +1 -0
  562. package/overview-banner/overview-banner.types.d.ts.map +1 -0
  563. package/overview-banner/public-api.d.ts.map +1 -0
  564. package/package.json +1 -1
  565. package/page-guard/component/component.d.ts.map +1 -0
  566. package/page-guard/component/helper-directives.d.ts.map +1 -0
  567. package/page-guard/component/page-guard.type.d.ts.map +1 -0
  568. package/page-guard/module.d.ts.map +1 -0
  569. package/page-guard/public-api.d.ts.map +1 -0
  570. package/page-scaffold/module.d.ts.map +1 -0
  571. package/page-scaffold/navigation/breadcrumb/breadcrumb-slot.directive.d.ts.map +1 -0
  572. package/page-scaffold/navigation/breadcrumb/breadcrumb.component.d.ts.map +1 -0
  573. package/page-scaffold/navigation/breadcrumb/breadcrumb.service.d.ts.map +1 -0
  574. package/page-scaffold/navigation/breadcrumb/module.d.ts.map +1 -0
  575. package/page-scaffold/navigation/breadcrumb/public-api.d.ts.map +1 -0
  576. package/page-scaffold/navigation/lottie-icons/animation-data.d.ts.map +1 -0
  577. package/page-scaffold/navigation/lottie-icons/lottie-icon.directive.d.ts.map +1 -0
  578. package/page-scaffold/navigation/lottie-icons/module.d.ts.map +1 -0
  579. package/page-scaffold/navigation/lottie-icons/public-api.d.ts.map +1 -0
  580. package/page-scaffold/navigation/lottie-icons/replace-lottie-colors.d.ts.map +1 -0
  581. package/page-scaffold/navigation/module.d.ts.map +1 -0
  582. package/page-scaffold/navigation/nav-menu/nav-item-li/nav-item-li.component.d.ts.map +1 -0
  583. package/page-scaffold/navigation/nav-menu/nav-item-ul/nav-item-ul.component.d.ts.map +1 -0
  584. package/page-scaffold/navigation/nav-menu/nav-menu.component.d.ts.map +1 -0
  585. package/page-scaffold/navigation/nav-menu/nav-menu.module.d.ts.map +1 -0
  586. package/page-scaffold/navigation/nav-menu/nav-menu.types.d.ts.map +1 -0
  587. package/page-scaffold/navigation/nav-menu/public-api.d.ts.map +1 -0
  588. package/page-scaffold/navigation/navconfig-loader/navconfig-loader.service.d.ts.map +1 -0
  589. package/page-scaffold/navigation/navconfig-loader/public-api.d.ts.map +1 -0
  590. package/page-scaffold/navigation/public-api.d.ts.map +1 -0
  591. package/page-scaffold/navigation/utils.d.ts.map +1 -0
  592. package/page-scaffold/page/context.service.d.ts.map +1 -0
  593. package/page-scaffold/page/helper-directives.d.ts.map +1 -0
  594. package/page-scaffold/page/notices/maintenance.component.d.ts.map +1 -0
  595. package/page-scaffold/page/notices/notice.component.d.ts.map +1 -0
  596. package/page-scaffold/page/page.component.d.ts.map +1 -0
  597. package/page-scaffold/page/page.module.d.ts.map +1 -0
  598. package/page-scaffold/page/public-api.d.ts.map +1 -0
  599. package/page-scaffold/page-header/account-menu/component/component.d.ts +0 -17
  600. package/page-scaffold/page-header/account-menu/component/component.d.ts.map +1 -0
  601. package/page-scaffold/page-header/account-menu/module.d.ts.map +1 -0
  602. package/page-scaffold/page-header/account-menu/public-api.d.ts.map +1 -0
  603. package/page-scaffold/page-header/common-layout/common-layout.module.d.ts.map +1 -0
  604. package/page-scaffold/page-header/common-layout/context.service.d.ts.map +1 -0
  605. package/page-scaffold/page-header/common-layout/namespace-select/component.d.ts.map +1 -0
  606. package/page-scaffold/page-header/common-layout/product-select/component.d.ts.map +1 -0
  607. package/page-scaffold/page-header/common-layout/product-select/service.d.ts.map +1 -0
  608. package/page-scaffold/page-header/common-layout/project-select/base-selection.d.ts.map +1 -0
  609. package/page-scaffold/page-header/common-layout/public-api.d.ts.map +1 -0
  610. package/page-scaffold/page-header/common-layout/store.service.d.ts.map +1 -0
  611. package/page-scaffold/page-header/common-layout/utils.d.ts.map +1 -0
  612. package/page-scaffold/page-header/component.d.ts +1 -1
  613. package/page-scaffold/page-header/component.d.ts.map +1 -0
  614. package/page-scaffold/page-header/enterprise-support-status/component.d.ts.map +1 -0
  615. package/page-scaffold/page-header/header-notify/component/header-notify.component.d.ts.map +1 -0
  616. package/page-scaffold/page-header/header-notify/component/notification-list/notification-list.component.d.ts.map +1 -0
  617. package/page-scaffold/page-header/header-notify/header-notify.module.d.ts.map +1 -0
  618. package/page-scaffold/page-header/header-notify/notify.service.d.ts.map +1 -0
  619. package/page-scaffold/page-header/header-notify/public-api.d.ts.map +1 -0
  620. package/page-scaffold/page-header/header-notify/utils.d.ts.map +1 -0
  621. package/page-scaffold/page-header/help-menu/component/component.d.ts.map +1 -0
  622. package/page-scaffold/page-header/help-menu/module.d.ts.map +1 -0
  623. package/page-scaffold/page-header/help-menu/public-api.d.ts.map +1 -0
  624. package/page-scaffold/page-header/module.d.ts.map +1 -0
  625. package/page-scaffold/page-header/public-api.d.ts.map +1 -0
  626. package/page-scaffold/public-api.d.ts.map +1 -0
  627. package/permission/constants.d.ts.map +1 -0
  628. package/permission/helpers.d.ts.map +1 -0
  629. package/permission/k8s-permission.service.d.ts.map +1 -0
  630. package/permission/permission.guard.d.ts.map +1 -0
  631. package/permission/public-api.d.ts.map +1 -0
  632. package/permission/types.d.ts.map +1 -0
  633. package/pie-derivative-chart/donut-status/component.d.ts.map +1 -0
  634. package/pie-derivative-chart/indicator-color.directive.d.ts.map +1 -0
  635. package/pie-derivative-chart/numerical-limit.pipe.d.ts.map +1 -0
  636. package/pie-derivative-chart/pie-derivative-chart.module.d.ts.map +1 -0
  637. package/pie-derivative-chart/public-api.d.ts.map +1 -0
  638. package/pie-derivative-chart/radial-bar/radial-bar-chart.component.d.ts.map +1 -0
  639. package/pie-derivative-chart/units.d.ts.map +1 -0
  640. package/pod-status/component.d.ts.map +1 -0
  641. package/pod-status/public-api.d.ts.map +1 -0
  642. package/pod-status/status.d.ts.map +1 -0
  643. package/pod-status/typings.d.ts.map +1 -0
  644. package/public-api.d.ts.map +1 -0
  645. package/searchable-selector/component.d.ts.map +1 -0
  646. package/searchable-selector/module.d.ts.map +1 -0
  647. package/searchable-selector/public-api.d.ts.map +1 -0
  648. package/skeleton/item/component.d.ts.map +1 -0
  649. package/skeleton/module.d.ts.map +1 -0
  650. package/skeleton/nav-skeleton/component.d.ts.map +1 -0
  651. package/skeleton/public-api.d.ts.map +1 -0
  652. package/table/component.d.ts +1 -1
  653. package/table/component.d.ts.map +1 -0
  654. package/table/constants.d.ts.map +1 -0
  655. package/table/helper.d.ts.map +1 -0
  656. package/table/helpers.directive.d.ts.map +1 -0
  657. package/table/module.d.ts +1 -1
  658. package/table/module.d.ts.map +1 -0
  659. package/table/public-api.d.ts.map +1 -0
  660. package/table/types.d.ts.map +1 -0
  661. package/table/util.service.d.ts.map +1 -0
  662. package/translate/constants.d.ts.map +1 -0
  663. package/translate/helpers.d.ts.map +1 -0
  664. package/translate/i18n-assets-loader.d.ts.map +1 -0
  665. package/translate/i18n-config.d.ts.map +1 -0
  666. package/translate/intl-format.pipes.d.ts.map +1 -0
  667. package/translate/public-api.d.ts.map +1 -0
  668. package/translate/relative-time-manager.service.d.ts.map +1 -0
  669. package/translate/tokens.d.ts.map +1 -0
  670. package/translate/translate.directive.d.ts.map +1 -0
  671. package/translate/translate.module.d.ts.map +1 -0
  672. package/translate/translate.pipe.d.ts.map +1 -0
  673. package/translate/translate.service.d.ts.map +1 -0
  674. package/translate/types.d.ts.map +1 -0
  675. package/view-chart/custom-template/dropdown-legend.d.ts.map +1 -0
  676. package/view-chart/legend/legend.component.d.ts.map +1 -0
  677. package/view-chart/public-api.d.ts.map +1 -0
  678. package/view-chart/types.d.ts.map +1 -0
  679. package/view-chart/view-chart.component.d.ts +1 -1
  680. package/view-chart/view-chart.component.d.ts.map +1 -0
  681. package/view-chart/view-chart.module.d.ts.map +1 -0
  682. package/view-zchart/custom-template/dropdown-legend.d.ts.map +1 -0
  683. package/view-zchart/legend/legend.component.d.ts.map +1 -0
  684. package/view-zchart/public-api.d.ts.map +1 -0
  685. package/view-zchart/types.d.ts.map +1 -0
  686. package/view-zchart/units.d.ts.map +1 -0
  687. package/view-zchart/view-zchart.component.d.ts.map +1 -0
  688. package/view-zchart/view-zchart.module.d.ts.map +1 -0
  689. package/widget/card-section/card-section.component.d.ts.map +1 -0
  690. package/widget/confirm-delete/confirm-delete.component.d.ts.map +1 -0
  691. package/widget/confirm-delete/utils.d.ts.map +1 -0
  692. package/widget/current-time/component.d.ts.map +1 -0
  693. package/widget/date-range-picker/component.d.ts +0 -4
  694. package/widget/date-range-picker/component.d.ts.map +1 -0
  695. package/widget/date-range-picker/public-api.d.ts.map +1 -0
  696. package/widget/date-range-picker/type.d.ts.map +1 -0
  697. package/widget/date-range-picker/util.d.ts.map +1 -0
  698. package/widget/field-set/column/component.d.ts.map +1 -0
  699. package/widget/field-set/group/component.d.ts.map +1 -0
  700. package/widget/field-set/index.d.ts.map +1 -0
  701. package/widget/field-set/item/component.d.ts.map +1 -0
  702. package/widget/foldable-block/component.d.ts.map +1 -0
  703. package/widget/foldable-item-in-table/component.d.ts.map +1 -0
  704. package/widget/loading-mask/loading-mask.component.d.ts.map +1 -0
  705. package/widget/password-input/component.d.ts.map +1 -0
  706. package/widget/public-api.d.ts.map +1 -0
  707. package/widget/relative-time/component.d.ts.map +1 -0
  708. package/widget/resource-label/component.d.ts.map +1 -0
  709. package/widget/resource-multi-select/component.d.ts.map +1 -0
  710. package/widget/resource-multi-select/util.d.ts.map +1 -0
  711. package/widget/search-panel/component.d.ts.map +1 -0
  712. package/widget/search-panel/helper.directive.d.ts.map +1 -0
  713. package/widget/search-panel/search-item/component.d.ts.map +1 -0
  714. package/widget/select-prefix-label/directive.d.ts.map +1 -0
  715. package/widget/status-icon/status-icon.component.d.ts.map +1 -0
  716. package/widget/tags-label/component.d.ts.map +1 -0
  717. package/widget/terminating-tag/component.d.ts.map +1 -0
  718. package/widget/text-ellipsis/component.d.ts.map +1 -0
  719. package/widget/text-tooltip/directive.d.ts.map +1 -0
  720. package/widget/text-with-url/component.d.ts.map +1 -0
  721. package/widget/widget.module.d.ts.map +1 -0
  722. package/widget/zero-state/zero-state.component.d.ts.map +1 -0
  723. package/window-channel/base-window-channel.d.ts.map +1 -0
  724. package/window-channel/directives/host-link.directive.d.ts.map +1 -0
  725. package/window-channel/host-window-channel.service.d.ts.map +1 -0
  726. package/window-channel/plugin-window-channel.service.d.ts.map +1 -0
  727. package/window-channel/public-api.d.ts.map +1 -0
  728. package/window-channel/utils.d.ts.map +1 -0
  729. package/workload-status-icon/component.d.ts.map +1 -0
  730. package/workload-status-icon/public-api.d.ts.map +1 -0
  731. package/xterm/public-api.d.ts.map +1 -0
  732. package/xterm/xterm-terminal/xterm-terminal.component.d.ts.map +1 -0
  733. package/xterm/xterm-terminal/xterm-terminal.directive.d.ts.map +1 -0
  734. package/xterm/xterm.component.d.ts.map +1 -0
@@ -4,16 +4,19 @@
4
4
  */
5
5
  import { DialogService } from '@alauda/ui';
6
6
  import { Inject, Injectable, Injector } from '@angular/core';
7
- import { NEVER, throwError, catchError, concatMap, take, map, of, switchMap, } from 'rxjs';
7
+ import { EMPTY, NEVER, from, throwError, catchError, concatMap, take, map, of, switchMap, } from 'rxjs';
8
8
  import { ApiGatewayService } from '../api/public-api';
9
9
  import { ANONYMOUS_APIS, catchPromise } from '../core/public-api';
10
- import { TranslateService } from '../public-api';
11
- import { SESSION_MANAGE_KEY, SessionManageService, } from './session-manage.service';
12
- import { AuthorizationStateService } from './state.service';
10
+ import { TranslateService } from '../translate/public-api';
11
+ import { checkAuthorizationToken, logout, refreshAuthorizationToken, } from './authorization';
12
+ import { SESSION_MANAGE_KEY } from './constants';
13
+ import { SessionManageService } from './session-manage.service';
14
+ import { readStorageToken } from './storage-token';
13
15
  import * as i0 from "@angular/core";
14
16
  import * as i1 from "../api/public-api";
15
17
  import * as i2 from "@alauda/ui";
16
18
  import * as i3 from "./session-manage.service";
19
+ const AUTHORIZATION_API_PREFIX = '/console/api/v2/token/';
17
20
  // Interceptor must provide with correct order, not provide in root here
18
21
  // https://angular.cn/guide/http#interceptor-order
19
22
  export class AuthorizationInterceptorService {
@@ -26,47 +29,34 @@ export class AuthorizationInterceptorService {
26
29
  this.sessionInvalidConfirm = false;
27
30
  }
28
31
  intercept(req, next) {
29
- if (this.isConsoleRelative(req.url)) {
30
- return next.handle(req);
32
+ if (this.isRelativeUrl(req.url)) {
33
+ if (!this.isConsoleApi(req.url) || !this.needConsoleAuthorization(req)) {
34
+ return next.handle(req);
35
+ }
36
+ return this.handleAuthorizedRequest(next, req, null);
31
37
  }
32
- const auth = this.getAuth();
33
- return auth.getTokenPayload().pipe(switchMap(() => this.apiGateway.getApiAddress()), take(1), concatMap(apiAddress => {
38
+ return this.apiGateway.getApiAddress().pipe(take(1), concatMap(apiAddress => {
34
39
  if (!this.needAuthorization(apiAddress, req)) {
35
40
  return next.handle(req);
36
41
  }
37
- const idToken = auth.getTokenByStorage();
38
- const authReq = this.cloneReq(req, idToken);
39
- return next.handle(authReq).pipe(catchError((error) => {
40
- if (this.isSessionInvalid(error)) {
41
- this.handleSessionInvalid();
42
- return NEVER;
43
- }
44
- // 当用户被禁用自动登出
45
- if (this.isInvalidUser(error)) {
46
- auth.logout(true);
47
- return NEVER;
48
- }
49
- if (!this.isUnauthorized(error)) {
50
- return throwError(() => error);
51
- }
52
- if (this.isWatchReq(apiAddress, authReq)) {
53
- return NEVER;
54
- }
55
- return auth.checkToken().pipe(map(() => false), catchError(() => of(true)), switchMap(expired => expired
56
- ? this.retryAuth(next, authReq)
57
- : throwError(() => error)));
58
- }));
42
+ return this.handleAuthorizedRequest(next, req, apiAddress);
59
43
  }));
60
44
  }
61
- // console relative means url protocol+hostname+port same with console, for this case, just check url start with ```http(s)://``` or ```//```
62
- isConsoleRelative(url) {
45
+ // A relative URL shares the same origin as the console (no http(s):// or // prefix)
46
+ isRelativeUrl(url) {
63
47
  const lowerCaseUrl = (url || '').toLowerCase();
64
48
  return (!lowerCaseUrl.startsWith('http://') &&
65
49
  !lowerCaseUrl.startsWith('https://') &&
66
50
  !lowerCaseUrl.startsWith('//'));
67
51
  }
52
+ isConsoleApi(url) {
53
+ return this.isRelativeUrl(url) && url.startsWith('/console/api/');
54
+ }
55
+ isAuthorizationApi(url) {
56
+ return url.startsWith(AUTHORIZATION_API_PREFIX);
57
+ }
68
58
  cloneReq(req, idToken) {
69
- return idToken
59
+ return idToken && !req.headers.get('Authorization')
70
60
  ? req.clone({
71
61
  setHeaders: {
72
62
  Authorization: `Bearer ${idToken}`,
@@ -74,26 +64,58 @@ export class AuthorizationInterceptorService {
74
64
  })
75
65
  : req;
76
66
  }
67
+ handleAuthorizedRequest(next, req, apiAddress) {
68
+ const isConsoleApi = this.isConsoleApi(req.url);
69
+ const isAuthorizationApi = this.isAuthorizationApi(req.url);
70
+ const idToken = readStorageToken();
71
+ const authReq = this.cloneReq(req, idToken);
72
+ return next.handle(authReq).pipe(catchError((error) => {
73
+ if (this.isSessionInvalid(error)) {
74
+ this.handleSessionInvalid();
75
+ return NEVER;
76
+ }
77
+ // 当用户被禁用自动登出
78
+ if (this.isInvalidUser(error)) {
79
+ logout(true);
80
+ return NEVER;
81
+ }
82
+ if (!this.isUnauthorized(error)) {
83
+ return throwError(() => error);
84
+ }
85
+ if (isAuthorizationApi) {
86
+ return throwError(() => error);
87
+ }
88
+ if (!isConsoleApi && this.isWatchReq(apiAddress, authReq)) {
89
+ return NEVER;
90
+ }
91
+ return from(checkAuthorizationToken()).pipe(map(() => false), catchError(() => of(true)), switchMap(expired => expired || (isConsoleApi && !idToken)
92
+ ? this.retryAuth(next, authReq)
93
+ : throwError(() => error)));
94
+ }));
95
+ }
77
96
  retryAuth(next, req) {
78
- const auth = this.getAuth();
79
- return auth.refreshToken().pipe(concatMap(({ id_token: idToken }) => {
97
+ return from(refreshAuthorizationToken()).pipe(catchError(() => {
98
+ logout(true);
99
+ return EMPTY;
100
+ }), concatMap(({ id_token: idToken }) => {
80
101
  const authReq = this.cloneReq(req, idToken);
81
102
  return next.handle(authReq).pipe(catchError((error) => {
82
103
  if (this.isUnauthorized(error)) {
83
- auth.logout(true);
104
+ logout(true);
84
105
  }
85
106
  return throwError(() => error);
86
107
  }));
87
108
  }));
88
109
  }
89
- getAuth() {
90
- if (!this.auth) {
91
- this.auth = this.injector.get(AuthorizationStateService);
110
+ needAuthorization(apiAddress, req) {
111
+ if (req.headers.get('Authorization') ||
112
+ (!this.isConsoleApi(req.url) && !req.url.startsWith(apiAddress))) {
113
+ return false;
92
114
  }
93
- return this.auth;
115
+ return !this.anonymousApis.some(api => api instanceof RegExp ? api.test(req.url) : req.url.includes(api));
94
116
  }
95
- needAuthorization(apiAddress, req) {
96
- if (!req.url.startsWith(apiAddress) || req.headers.get('Authorization')) {
117
+ needConsoleAuthorization(req) {
118
+ if (req.headers.get('Authorization')) {
97
119
  return false;
98
120
  }
99
121
  return !this.anonymousApis.some(api => api instanceof RegExp ? api.test(req.url) : req.url.includes(api));
@@ -110,7 +132,7 @@ export class AuthorizationInterceptorService {
110
132
  if (Date.now() - parseInt(sessionStorage.getItem(SESSION_MANAGE_KEY)) <
111
133
  5000) {
112
134
  sessionStorage.removeItem(SESSION_MANAGE_KEY);
113
- this.auth.logout(true);
135
+ logout(true);
114
136
  return;
115
137
  }
116
138
  if (this.sessionInvalidConfirm) {
@@ -125,7 +147,7 @@ export class AuthorizationInterceptorService {
125
147
  cancelButton: false,
126
148
  })).subscribe(() => {
127
149
  this.sessionInvalidConfirm = false;
128
- this.auth.logout(true);
150
+ logout(true);
129
151
  });
130
152
  }
131
153
  isUnauthorized(errorRes) {
@@ -153,4 +175,4 @@ export class AuthorizationInterceptorService {
153
175
  type: Inject,
154
176
  args: [ANONYMOUS_APIS]
155
177
  }] }, { type: i1.ApiGatewayService }, { type: i0.Injector }, { type: i2.DialogService }, { type: i3.SessionManageService }], null); })();
156
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJjZXB0b3Iuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9hdXRob3JpemF0aW9uL2ludGVyY2VwdG9yLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBRUgsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFlBQVksQ0FBQztBQU8zQyxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUNMLEtBQUssRUFDTCxVQUFVLEVBQ1YsVUFBVSxFQUNWLFNBQVMsRUFDVCxJQUFJLEVBQ0osR0FBRyxFQUNILEVBQUUsRUFDRixTQUFTLEdBQ1YsTUFBTSxNQUFNLENBQUM7QUFFZCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsY0FBYyxFQUFFLFlBQVksRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2xFLE9BQU8sRUFBVSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6RCxPQUFPLEVBQ0wsa0JBQWtCLEVBQ2xCLG9CQUFvQixHQUNyQixNQUFNLDBCQUEwQixDQUFDO0FBQ2xDLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7OztBQUU1RCx3RUFBd0U7QUFDeEUsa0RBQWtEO0FBRWxELE1BQU0sT0FBTywrQkFBK0I7SUFLMUMsWUFFbUIsYUFBcUMsRUFDckMsVUFBNkIsRUFDN0IsUUFBa0IsRUFDbEIsTUFBcUIsRUFDckIsYUFBbUM7UUFKbkMsa0JBQWEsR0FBYixhQUFhLENBQXdCO1FBQ3JDLGVBQVUsR0FBVixVQUFVLENBQW1CO1FBQzdCLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDbEIsV0FBTSxHQUFOLE1BQU0sQ0FBZTtRQUNyQixrQkFBYSxHQUFiLGFBQWEsQ0FBc0I7UUFSOUMsMEJBQXFC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QUUsR0FBRyxFQUFFLE1BQU0sRUFBd0I7UUFFckMsTUFBTSxhQUFhLEdBQ2pCLEdBQUcsQ0FBQyxVQUFVLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQztZQUNwQyxHQUFHLENBQUMsVUFBVSxDQUFDLFVBQVUsR0FBRyxRQUFRLENBQUM7WUFDckMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxVQUFVLEdBQUcsY0FBYyxDQUFDLENBQUM7UUFDOUMsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRSxXQUFXLEVBQUUsS0FBSyxNQUFNLENBQUM7UUFDaEUsT0FBTyxhQUFhLElBQUksU0FBUyxDQUFDO0lBQ3BDLENBQUM7Z0dBN0xVLCtCQUErQixjQU1oQyxjQUFjO3VFQU5iLCtCQUErQixXQUEvQiwrQkFBK0I7O2lGQUEvQiwrQkFBK0I7Y0FEM0MsVUFBVTs7c0JBT04sTUFBTTt1QkFBQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqIEBtb2R1bGUgYXV0aG9yaXphdGlvblxuICovXG5cbmltcG9ydCB7IERpYWxvZ1NlcnZpY2UgfSBmcm9tICdAYWxhdWRhL3VpJztcbmltcG9ydCB7XG4gIEh0dHBFcnJvclJlc3BvbnNlLFxuICBIdHRwSGFuZGxlcixcbiAgSHR0cEludGVyY2VwdG9yLFxuICBIdHRwUmVxdWVzdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgTkVWRVIsXG4gIHRocm93RXJyb3IsXG4gIGNhdGNoRXJyb3IsXG4gIGNvbmNhdE1hcCxcbiAgdGFrZSxcbiAgbWFwLFxuICBvZixcbiAgc3dpdGNoTWFwLFxufSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgQXBpR2F0ZXdheVNlcnZpY2UgfSBmcm9tICcuLi9hcGkvcHVibGljLWFwaSc7XG5pbXBvcnQgeyBBTk9OWU1PVVNfQVBJUywgY2F0Y2hQcm9taXNlIH0gZnJvbSAnLi4vY29yZS9wdWJsaWMtYXBpJztcbmltcG9ydCB7IFN0YXR1cywgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJy4uL3B1YmxpYy1hcGknO1xuXG5pbXBvcnQge1xuICBTRVNTSU9OX01BTkFHRV9LRVksXG4gIFNlc3Npb25NYW5hZ2VTZXJ2aWNlLFxufSBmcm9tICcuL3Nlc3Npb24tbWFuYWdlLnNlcnZpY2UnO1xuaW1wb3J0IHsgQXV0aG9yaXphdGlvblN0YXRlU2VydmljZSB9IGZyb20gJy4vc3RhdGUuc2VydmljZSc7XG5cbi8vIEludGVyY2VwdG9yIG11c3QgcHJvdmlkZSB3aXRoIGNvcnJlY3Qgb3JkZXIsIG5vdCBwcm92aWRlIGluIHJvb3QgaGVyZVxuLy8gaHR0cHM6Ly9hbmd1bGFyLmNuL2d1aWRlL2h0dHAjaW50ZXJjZXB0b3Itb3JkZXJcbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBdXRob3JpemF0aW9uSW50ZXJjZXB0b3JTZXJ2aWNlIGltcGxlbWVudHMgSHR0cEludGVyY2VwdG9yIHtcbiAgcHJpdmF0ZSBhdXRoOiBBdXRob3JpemF0aW9uU3RhdGVTZXJ2aWNlO1xuXG4gIHByaXZhdGUgc2Vzc2lvbkludmFsaWRDb25maXJtID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQEluamVjdChBTk9OWU1PVVNfQVBJUylcbiAgICBwcml2YXRlIHJlYWRvbmx5IGFub255bW91c0FwaXM6IEFycmF5PHN0cmluZyB8IFJlZ0V4cD4sXG4gICAgcHJpdmF0ZSByZWFkb25seSBhcGlHYXRld2F5OiBBcGlHYXRld2F5U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGluamVjdG9yOiBJbmplY3RvcixcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRpYWxvZzogRGlhbG9nU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHNlc3Npb25NYW5hZ2U6IFNlc3Npb25NYW5hZ2VTZXJ2aWNlLFxuICApIHt9XG5cbiAgaW50ZXJjZXB0KHJlcTogSHR0cFJlcXVlc3Q8dW5rbm93bj4sIG5leHQ6IEh0dHBIYW5kbGVyKSB7XG4gICAgaWYgKHRoaXMuaXNDb25zb2xlUmVsYXRpdmUocmVxLnVybCkpIHtcbiAgICAgIHJldHVybiBuZXh0LmhhbmRsZShyZXEpO1xuICAgIH1cblxuICAgIGNvbnN0IGF1dGggPSB0aGlzLmdldEF1dGgoKTtcblxuICAgIHJldHVybiBhdXRoLmdldFRva2VuUGF5bG9hZCgpLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKCkgPT4gdGhpcy5hcGlHYXRld2F5LmdldEFwaUFkZHJlc3MoKSksXG4gICAgICB0YWtlKDEpLFxuICAgICAgY29uY2F0TWFwKGFwaUFkZHJlc3MgPT4ge1xuICAgICAgICBpZiAoIXRoaXMubmVlZEF1dGhvcml6YXRpb24oYXBpQWRkcmVzcywgcmVxKSkge1xuICAgICAgICAgIHJldHVybiBuZXh0LmhhbmRsZShyZXEpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgaWRUb2tlbiA9IGF1dGguZ2V0VG9rZW5CeVN0b3JhZ2UoKTtcblxuICAgICAgICBjb25zdCBhdXRoUmVxID0gdGhpcy5jbG9uZVJlcShyZXEsIGlkVG9rZW4pO1xuXG4gICAgICAgIHJldHVybiBuZXh0LmhhbmRsZShhdXRoUmVxKS5waXBlKFxuICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMuaXNTZXNzaW9uSW52YWxpZChlcnJvcikpIHtcbiAgICAgICAgICAgICAgdGhpcy5oYW5kbGVTZXNzaW9uSW52YWxpZCgpO1xuICAgICAgICAgICAgICByZXR1cm4gTkVWRVI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIOW9k+eUqOaIt+iiq+emgeeUqOiHquWKqOeZu+WHulxuICAgICAgICAgICAgaWYgKHRoaXMuaXNJbnZhbGlkVXNlcihlcnJvcikpIHtcbiAgICAgICAgICAgICAgYXV0aC5sb2dvdXQodHJ1ZSk7XG4gICAgICAgICAgICAgIHJldHVybiBORVZFUjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKCF0aGlzLmlzVW5hdXRob3JpemVkKGVycm9yKSkge1xuICAgICAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBlcnJvcik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmICh0aGlzLmlzV2F0Y2hSZXEoYXBpQWRkcmVzcywgYXV0aFJlcSkpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIE5FVkVSO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gYXV0aC5jaGVja1Rva2VuKCkucGlwZShcbiAgICAgICAgICAgICAgbWFwKCgpID0+IGZhbHNlKSxcbiAgICAgICAgICAgICAgY2F0Y2hFcnJvcigoKSA9PiBvZih0cnVlKSksXG4gICAgICAgICAgICAgIHN3aXRjaE1hcChleHBpcmVkID0+XG4gICAgICAgICAgICAgICAgZXhwaXJlZFxuICAgICAgICAgICAgICAgICAgPyB0aGlzLnJldHJ5QXV0aChuZXh0LCBhdXRoUmVxKVxuICAgICAgICAgICAgICAgICAgOiB0aHJvd0Vycm9yKCgpID0+IGVycm9yKSxcbiAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfSksXG4gICAgICAgICk7XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgLy8gY29uc29sZSByZWxhdGl2ZSBtZWFucyB1cmwgcHJvdG9jb2wraG9zdG5hbWUrcG9ydCBzYW1lIHdpdGggY29uc29sZSwgZm9yIHRoaXMgY2FzZSwganVzdCBjaGVjayB1cmwgc3RhcnQgd2l0aCBgYGBodHRwKHMpOi8vYGBgIG9yIGBgYC8vYGBgXG4gIGlzQ29uc29sZVJlbGF0aXZlKHVybDogc3RyaW5nKSB7XG4gICAgY29uc3QgbG93ZXJDYXNlVXJsID0gKHVybCB8fCAnJykudG9Mb3dlckNhc2UoKTtcblxuICAgIHJldHVybiAoXG4gICAgICAhbG93ZXJDYXNlVXJsLnN0YXJ0c1dpdGgoJ2h0dHA6Ly8nKSAmJlxuICAgICAgIWxvd2VyQ2FzZVVybC5zdGFydHNXaXRoKCdodHRwczovLycpICYmXG4gICAgICAhbG93ZXJDYXNlVXJsLnN0YXJ0c1dpdGgoJy8vJylcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBjbG9uZVJlcShyZXE6IEh0dHBSZXF1ZXN0PHVua25vd24+LCBpZFRva2VuOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gaWRUb2tlblxuICAgICAgPyByZXEuY2xvbmUoe1xuICAgICAgICAgIHNldEhlYWRlcnM6IHtcbiAgICAgICAgICAgIEF1dGhvcml6YXRpb246IGBCZWFyZXIgJHtpZFRva2VufWAsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSlcbiAgICAgIDogcmVxO1xuICB9XG5cbiAgcHJpdmF0ZSByZXRyeUF1dGgobmV4dDogSHR0cEhhbmRsZXIsIHJlcTogSHR0cFJlcXVlc3Q8dW5rbm93bj4pIHtcbiAgICBjb25zdCBhdXRoID0gdGhpcy5nZXRBdXRoKCk7XG4gICAgcmV0dXJuIGF1dGgucmVmcmVzaFRva2VuKCkucGlwZShcbiAgICAgIGNvbmNhdE1hcCgoeyBpZF90b2tlbjogaWRUb2tlbiB9KSA9PiB7XG4gICAgICAgIGNvbnN0IGF1dGhSZXEgPSB0aGlzLmNsb25lUmVxKHJlcSwgaWRUb2tlbik7XG4gICAgICAgIHJldHVybiBuZXh0LmhhbmRsZShhdXRoUmVxKS5waXBlKFxuICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMuaXNVbmF1dGhvcml6ZWQoZXJyb3IpKSB7XG4gICAgICAgICAgICAgIGF1dGgubG9nb3V0KHRydWUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBlcnJvcik7XG4gICAgICAgICAgfSksXG4gICAgICAgICk7XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRBdXRoKCkge1xuICAgIGlmICghdGhpcy5hdXRoKSB7XG4gICAgICB0aGlzLmF1dGggPSB0aGlzLmluamVjdG9yLmdldChBdXRob3JpemF0aW9uU3RhdGVTZXJ2aWNlKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuYXV0aDtcbiAgfVxuXG4gIHByaXZhdGUgbmVlZEF1dGhvcml6YXRpb24oXG4gICAgYXBpQWRkcmVzczogc3RyaW5nLFxuICAgIHJlcTogSHR0cFJlcXVlc3Q8dW5rbm93bj4sXG4gICk6IGJvb2xlYW4ge1xuICAgIGlmICghcmVxLnVybC5zdGFydHNXaXRoKGFwaUFkZHJlc3MpIHx8IHJlcS5oZWFkZXJzLmdldCgnQXV0aG9yaXphdGlvbicpKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcmV0dXJuICF0aGlzLmFub255bW91c0FwaXMuc29tZShhcGkgPT5cbiAgICAgIGFwaSBpbnN0YW5jZW9mIFJlZ0V4cCA/IGFwaS50ZXN0KHJlcS51cmwpIDogcmVxLnVybC5pbmNsdWRlcyhhcGkpLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGlzNDAxKHsgZXJyb3IgfTogSHR0cEVycm9yUmVzcG9uc2UpIHtcbiAgICByZXR1cm4gdGhpcy5pc1N0YXR1cyhlcnJvcikgJiYgZXJyb3IuY29kZSA9PT0gNDAxO1xuICB9XG5cbiAgcHJpdmF0ZSBpc1Nlc3Npb25JbnZhbGlkKGVycm9yUmVzOiBIdHRwRXJyb3JSZXNwb25zZSkge1xuICAgIGNvbnN0IHsgZXJyb3IgfSA9IGVycm9yUmVzO1xuICAgIHJldHVybiB0aGlzLmlzNDAxKGVycm9yUmVzKSAmJiBlcnJvci5yZWFzb24gPT09ICdTZXNzaW9uSW52YWxpZCc7XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZVNlc3Npb25JbnZhbGlkKCkge1xuICAgIHRoaXMuc2Vzc2lvbk1hbmFnZS5jb21wbGV0ZSgpO1xuICAgIGlmIChcbiAgICAgIERhdGUubm93KCkgLSBwYXJzZUludChzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKFNFU1NJT05fTUFOQUdFX0tFWSkpIDxcbiAgICAgIDUwMDBcbiAgICApIHtcbiAgICAgIHNlc3Npb25TdG9yYWdlLnJlbW92ZUl0ZW0oU0VTU0lPTl9NQU5BR0VfS0VZKTtcbiAgICAgIHRoaXMuYXV0aC5sb2dvdXQodHJ1ZSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuc2Vzc2lvbkludmFsaWRDb25maXJtKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5zZXNzaW9uSW52YWxpZENvbmZpcm0gPSB0cnVlO1xuICAgIC8vIGZpeCBjaXJjbGUgZGVwZW5kZW5jeSBlcnJvclxuICAgIGNvbnN0IHRyYW5zbGF0ZSA9IHRoaXMuaW5qZWN0b3IuZ2V0KFRyYW5zbGF0ZVNlcnZpY2UpO1xuICAgIGNhdGNoUHJvbWlzZShcbiAgICAgIHRoaXMuZGlhbG9nLmNvbmZpcm0oe1xuICAgICAgICB0aXRsZTogdHJhbnNsYXRlLmdldCgnc2Vzc2lvbl9pbnZhbGlkX2hpbnQnKSxcbiAgICAgICAgY29uZmlybVRleHQ6IHRyYW5zbGF0ZS5nZXQoJ2lfa25vdycpLFxuICAgICAgICBjYW5jZWxCdXR0b246IGZhbHNlLFxuICAgICAgfSksXG4gICAgKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5zZXNzaW9uSW52YWxpZENvbmZpcm0gPSBmYWxzZTtcbiAgICAgIHRoaXMuYXV0aC5sb2dvdXQodHJ1ZSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGlzVW5hdXRob3JpemVkKGVycm9yUmVzOiBIdHRwRXJyb3JSZXNwb25zZSkge1xuICAgIHJldHVybiB0aGlzLmlzNDAxKGVycm9yUmVzKSAmJiBlcnJvclJlcy5lcnJvci5yZWFzb24gPT09ICdVbmF1dGhvcml6ZWQnO1xuICB9XG5cbiAgcHJpdmF0ZSBpc0ludmFsaWRVc2VyKGVycm9yUmVzOiBIdHRwRXJyb3JSZXNwb25zZSkge1xuICAgIHJldHVybiB0aGlzLmlzNDAxKGVycm9yUmVzKSAmJiBlcnJvclJlcy5lcnJvci5yZWFzb24gPT09ICdJbnZhbGlkVXNlcic7XG4gIH1cblxuICBwcml2YXRlIGlzU3RhdHVzKGVycm9yOiBzdHJpbmcgfCBTdGF0dXMpOiBlcnJvciBpcyBTdGF0dXMge1xuICAgIHJldHVybiBlcnJvciAmJiB0eXBlb2YgZXJyb3IgIT09ICdzdHJpbmcnICYmICdjb2RlJyBpbiBlcnJvcjtcbiAgfVxuXG4gIHByaXZhdGUgaXNXYXRjaFJlcShcbiAgICBhcGlBZGRyZXNzOiBzdHJpbmcsXG4gICAgeyB1cmwsIHBhcmFtcyB9OiBIdHRwUmVxdWVzdDx1bmtub3duPixcbiAgKSB7XG4gICAgY29uc3QgaXNTdGFuZGFyZEFwaSA9XG4gICAgICB1cmwuc3RhcnRzV2l0aChhcGlBZGRyZXNzICsgJy9hcGkvJykgfHxcbiAgICAgIHVybC5zdGFydHNXaXRoKGFwaUFkZHJlc3MgKyAnL2FwaXMvJykgfHxcbiAgICAgIHVybC5zdGFydHNXaXRoKGFwaUFkZHJlc3MgKyAnL2t1YmVybmV0ZXMvJyk7XG4gICAgY29uc3QgaXNXYXRjaE9uID0gcGFyYW1zLmdldCgnd2F0Y2gnKT8udG9Mb3dlckNhc2UoKSA9PT0gJ3RydWUnO1xuICAgIHJldHVybiBpc1N0YW5kYXJkQXBpICYmIGlzV2F0Y2hPbjtcbiAgfVxufVxuIl19
178
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJjZXB0b3Iuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9hdXRob3JpemF0aW9uL2ludGVyY2VwdG9yLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBRUgsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFlBQVksQ0FBQztBQU8zQyxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUNMLEtBQUssRUFDTCxLQUFLLEVBQ0wsSUFBSSxFQUNKLFVBQVUsRUFDVixVQUFVLEVBQ1YsU0FBUyxFQUNULElBQUksRUFDSixHQUFHLEVBQ0gsRUFBRSxFQUNGLFNBQVMsR0FDVixNQUFNLE1BQU0sQ0FBQztBQUVkLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxjQUFjLEVBQUUsWUFBWSxFQUFVLE1BQU0sb0JBQW9CLENBQUM7QUFDMUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFM0QsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixNQUFNLEVBQ04seUJBQXlCLEdBQzFCLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7OztBQUVuRCxNQUFNLHdCQUF3QixHQUFHLHdCQUF3QixDQUFDO0FBRTFELHdFQUF3RTtBQUN4RSxrREFBa0Q7QUFFbEQsTUFBTSxPQUFPLCtCQUErQjtJQUcxQyxZQUVtQixhQUFxQyxFQUNyQyxVQUE2QixFQUM3QixRQUFrQixFQUNsQixNQUFxQixFQUNy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QUMsS0FBSyxDQUFDLE1BQU0sS0FBSyxhQUFhLENBQUM7SUFDekUsQ0FBQztJQUVPLFFBQVEsQ0FBQyxLQUFzQjtRQUNyQyxPQUFPLEtBQUssSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLElBQUksTUFBTSxJQUFJLEtBQUssQ0FBQztJQUMvRCxDQUFDO0lBRU8sVUFBVSxDQUNoQixVQUFrQixFQUNsQixFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQXdCO1FBRXJDLE1BQU0sYUFBYSxHQUNqQixHQUFHLENBQUMsVUFBVSxDQUFDLFVBQVUsR0FBRyxPQUFPLENBQUM7WUFDcEMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxVQUFVLEdBQUcsUUFBUSxDQUFDO1lBQ3JDLEdBQUcsQ0FBQyxVQUFVLENBQUMsVUFBVSxHQUFHLGNBQWMsQ0FBQyxDQUFDO1FBQzlDLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUUsV0FBVyxFQUFFLEtBQUssTUFBTSxDQUFDO1FBQ2hFLE9BQU8sYUFBYSxJQUFJLFNBQVMsQ0FBQztJQUNwQyxDQUFDO2dHQTFOVSwrQkFBK0IsY0FJaEMsY0FBYzt1RUFKYiwrQkFBK0IsV0FBL0IsK0JBQStCOztpRkFBL0IsK0JBQStCO2NBRDNDLFVBQVU7O3NCQUtOLE1BQU07dUJBQUMsY0FBYyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uXG4gKiBAbW9kdWxlIGF1dGhvcml6YXRpb25cbiAqL1xuXG5pbXBvcnQgeyBEaWFsb2dTZXJ2aWNlIH0gZnJvbSAnQGFsYXVkYS91aSc7XG5pbXBvcnQge1xuICBIdHRwRXJyb3JSZXNwb25zZSxcbiAgSHR0cEhhbmRsZXIsXG4gIEh0dHBJbnRlcmNlcHRvcixcbiAgSHR0cFJlcXVlc3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEVNUFRZLFxuICBORVZFUixcbiAgZnJvbSxcbiAgdGhyb3dFcnJvcixcbiAgY2F0Y2hFcnJvcixcbiAgY29uY2F0TWFwLFxuICB0YWtlLFxuICBtYXAsXG4gIG9mLFxuICBzd2l0Y2hNYXAsXG59IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBBcGlHYXRld2F5U2VydmljZSB9IGZyb20gJy4uL2FwaS9wdWJsaWMtYXBpJztcbmltcG9ydCB7IEFOT05ZTU9VU19BUElTLCBjYXRjaFByb21pc2UsIFN0YXR1cyB9IGZyb20gJy4uL2NvcmUvcHVibGljLWFwaSc7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnLi4vdHJhbnNsYXRlL3B1YmxpYy1hcGknO1xuXG5pbXBvcnQge1xuICBjaGVja0F1dGhvcml6YXRpb25Ub2tlbixcbiAgbG9nb3V0LFxuICByZWZyZXNoQXV0aG9yaXphdGlvblRva2VuLFxufSBmcm9tICcuL2F1dGhvcml6YXRpb24nO1xuaW1wb3J0IHsgU0VTU0lPTl9NQU5BR0VfS0VZIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgU2Vzc2lvbk1hbmFnZVNlcnZpY2UgfSBmcm9tICcuL3Nlc3Npb24tbWFuYWdlLnNlcnZpY2UnO1xuaW1wb3J0IHsgcmVhZFN0b3JhZ2VUb2tlbiB9IGZyb20gJy4vc3RvcmFnZS10b2tlbic7XG5cbmNvbnN0IEFVVEhPUklaQVRJT05fQVBJX1BSRUZJWCA9ICcvY29uc29sZS9hcGkvdjIvdG9rZW4vJztcblxuLy8gSW50ZXJjZXB0b3IgbXVzdCBwcm92aWRlIHdpdGggY29ycmVjdCBvcmRlciwgbm90IHByb3ZpZGUgaW4gcm9vdCBoZXJlXG4vLyBodHRwczovL2FuZ3VsYXIuY24vZ3VpZGUvaHR0cCNpbnRlcmNlcHRvci1vcmRlclxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEF1dGhvcml6YXRpb25JbnRlcmNlcHRvclNlcnZpY2UgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xuICBwcml2YXRlIHNlc3Npb25JbnZhbGlkQ29uZmlybSA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoQU5PTllNT1VTX0FQSVMpXG4gICAgcHJpdmF0ZSByZWFkb25seSBhbm9ueW1vdXNBcGlzOiBBcnJheTxzdHJpbmcgfCBSZWdFeHA+LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgYXBpR2F0ZXdheTogQXBpR2F0ZXdheVNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcHJpdmF0ZSByZWFkb25seSBkaWFsb2c6IERpYWxvZ1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBzZXNzaW9uTWFuYWdlOiBTZXNzaW9uTWFuYWdlU2VydmljZSxcbiAgKSB7fVxuXG4gIGludGVyY2VwdChyZXE6IEh0dHBSZXF1ZXN0PHVua25vd24+LCBuZXh0OiBIdHRwSGFuZGxlcikge1xuICAgIGlmICh0aGlzLmlzUmVsYXRpdmVVcmwocmVxLnVybCkpIHtcbiAgICAgIGlmICghdGhpcy5pc0NvbnNvbGVBcGkocmVxLnVybCkgfHwgIXRoaXMubmVlZENvbnNvbGVBdXRob3JpemF0aW9uKHJlcSkpIHtcbiAgICAgICAgcmV0dXJuIG5leHQuaGFuZGxlKHJlcSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0aGlzLmhhbmRsZUF1dGhvcml6ZWRSZXF1ZXN0KG5leHQsIHJlcSwgbnVsbCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuYXBpR2F0ZXdheS5nZXRBcGlBZGRyZXNzKCkucGlwZShcbiAgICAgIHRha2UoMSksXG4gICAgICBjb25jYXRNYXAoYXBpQWRkcmVzcyA9PiB7XG4gICAgICAgIGlmICghdGhpcy5uZWVkQXV0aG9yaXphdGlvbihhcGlBZGRyZXNzLCByZXEpKSB7XG4gICAgICAgICAgcmV0dXJuIG5leHQuaGFuZGxlKHJlcSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5oYW5kbGVBdXRob3JpemVkUmVxdWVzdChuZXh0LCByZXEsIGFwaUFkZHJlc3MpO1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIC8vIEEgcmVsYXRpdmUgVVJMIHNoYXJlcyB0aGUgc2FtZSBvcmlnaW4gYXMgdGhlIGNvbnNvbGUgKG5vIGh0dHAocyk6Ly8gb3IgLy8gcHJlZml4KVxuICBwcml2YXRlIGlzUmVsYXRpdmVVcmwodXJsOiBzdHJpbmcpIHtcbiAgICBjb25zdCBsb3dlckNhc2VVcmwgPSAodXJsIHx8ICcnKS50b0xvd2VyQ2FzZSgpO1xuXG4gICAgcmV0dXJuIChcbiAgICAgICFsb3dlckNhc2VVcmwuc3RhcnRzV2l0aCgnaHR0cDovLycpICYmXG4gICAgICAhbG93ZXJDYXNlVXJsLnN0YXJ0c1dpdGgoJ2h0dHBzOi8vJykgJiZcbiAgICAgICFsb3dlckNhc2VVcmwuc3RhcnRzV2l0aCgnLy8nKVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGlzQ29uc29sZUFwaSh1cmw6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLmlzUmVsYXRpdmVVcmwodXJsKSAmJiB1cmwuc3RhcnRzV2l0aCgnL2NvbnNvbGUvYXBpLycpO1xuICB9XG5cbiAgcHJpdmF0ZSBpc0F1dGhvcml6YXRpb25BcGkodXJsOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdXJsLnN0YXJ0c1dpdGgoQVVUSE9SSVpBVElPTl9BUElfUFJFRklYKTtcbiAgfVxuXG4gIHByaXZhdGUgY2xvbmVSZXEocmVxOiBIdHRwUmVxdWVzdDx1bmtub3duPiwgaWRUb2tlbjogc3RyaW5nKSB7XG4gICAgcmV0dXJuIGlkVG9rZW4gJiYgIXJlcS5oZWFkZXJzLmdldCgnQXV0aG9yaXphdGlvbicpXG4gICAgICA/IHJlcS5jbG9uZSh7XG4gICAgICAgICAgc2V0SGVhZGVyczoge1xuICAgICAgICAgICAgQXV0aG9yaXphdGlvbjogYEJlYXJlciAke2lkVG9rZW59YCxcbiAgICAgICAgICB9LFxuICAgICAgICB9KVxuICAgICAgOiByZXE7XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZUF1dGhvcml6ZWRSZXF1ZXN0KFxuICAgIG5leHQ6IEh0dHBIYW5kbGVyLFxuICAgIHJlcTogSHR0cFJlcXVlc3Q8dW5rbm93bj4sXG4gICAgYXBpQWRkcmVzczogc3RyaW5nIHwgbnVsbCxcbiAgKSB7XG4gICAgY29uc3QgaXNDb25zb2xlQXBpID0gdGhpcy5pc0NvbnNvbGVBcGkocmVxLnVybCk7XG4gICAgY29uc3QgaXNBdXRob3JpemF0aW9uQXBpID0gdGhpcy5pc0F1dGhvcml6YXRpb25BcGkocmVxLnVybCk7XG4gICAgY29uc3QgaWRUb2tlbiA9IHJlYWRTdG9yYWdlVG9rZW4oKTtcbiAgICBjb25zdCBhdXRoUmVxID0gdGhpcy5jbG9uZVJlcShyZXEsIGlkVG9rZW4pO1xuXG4gICAgcmV0dXJuIG5leHQuaGFuZGxlKGF1dGhSZXEpLnBpcGUoXG4gICAgICBjYXRjaEVycm9yKChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuaXNTZXNzaW9uSW52YWxpZChlcnJvcikpIHtcbiAgICAgICAgICB0aGlzLmhhbmRsZVNlc3Npb25JbnZhbGlkKCk7XG4gICAgICAgICAgcmV0dXJuIE5FVkVSO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8g5b2T55So5oi36KKr56aB55So6Ieq5Yqo55m75Ye6XG4gICAgICAgIGlmICh0aGlzLmlzSW52YWxpZFVzZXIoZXJyb3IpKSB7XG4gICAgICAgICAgbG9nb3V0KHRydWUpO1xuICAgICAgICAgIHJldHVybiBORVZFUjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghdGhpcy5pc1VuYXV0aG9yaXplZChlcnJvcikpIHtcbiAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBlcnJvcik7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoaXNBdXRob3JpemF0aW9uQXBpKSB7XG4gICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gZXJyb3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCFpc0NvbnNvbGVBcGkgJiYgdGhpcy5pc1dhdGNoUmVxKGFwaUFkZHJlc3MsIGF1dGhSZXEpKSB7XG4gICAgICAgICAgcmV0dXJuIE5FVkVSO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGZyb20oY2hlY2tBdXRob3JpemF0aW9uVG9rZW4oKSkucGlwZShcbiAgICAgICAgICBtYXAoKCkgPT4gZmFsc2UpLFxuICAgICAgICAgIGNhdGNoRXJyb3IoKCkgPT4gb2YodHJ1ZSkpLFxuICAgICAgICAgIHN3aXRjaE1hcChleHBpcmVkID0+XG4gICAgICAgICAgICBleHBpcmVkIHx8IChpc0NvbnNvbGVBcGkgJiYgIWlkVG9rZW4pXG4gICAgICAgICAgICAgID8gdGhpcy5yZXRyeUF1dGgobmV4dCwgYXV0aFJlcSlcbiAgICAgICAgICAgICAgOiB0aHJvd0Vycm9yKCgpID0+IGVycm9yKSxcbiAgICAgICAgICApLFxuICAgICAgICApO1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgcmV0cnlBdXRoKG5leHQ6IEh0dHBIYW5kbGVyLCByZXE6IEh0dHBSZXF1ZXN0PHVua25vd24+KSB7XG4gICAgcmV0dXJuIGZyb20ocmVmcmVzaEF1dGhvcml6YXRpb25Ub2tlbigpKS5waXBlKFxuICAgICAgY2F0Y2hFcnJvcigoKSA9PiB7XG4gICAgICAgIGxvZ291dCh0cnVlKTtcbiAgICAgICAgcmV0dXJuIEVNUFRZO1xuICAgICAgfSksXG4gICAgICBjb25jYXRNYXAoKHsgaWRfdG9rZW46IGlkVG9rZW4gfSkgPT4ge1xuICAgICAgICBjb25zdCBhdXRoUmVxID0gdGhpcy5jbG9uZVJlcShyZXEsIGlkVG9rZW4pO1xuICAgICAgICByZXR1cm4gbmV4dC5oYW5kbGUoYXV0aFJlcSkucGlwZShcbiAgICAgICAgICBjYXRjaEVycm9yKChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgIGlmICh0aGlzLmlzVW5hdXRob3JpemVkKGVycm9yKSkge1xuICAgICAgICAgICAgICBsb2dvdXQodHJ1ZSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IGVycm9yKTtcbiAgICAgICAgICB9KSxcbiAgICAgICAgKTtcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIG5lZWRBdXRob3JpemF0aW9uKFxuICAgIGFwaUFkZHJlc3M6IHN0cmluZyxcbiAgICByZXE6IEh0dHBSZXF1ZXN0PHVua25vd24+LFxuICApOiBib29sZWFuIHtcbiAgICBpZiAoXG4gICAgICByZXEuaGVhZGVycy5nZXQoJ0F1dGhvcml6YXRpb24nKSB8fFxuICAgICAgKCF0aGlzLmlzQ29uc29sZUFwaShyZXEudXJsKSAmJiAhcmVxLnVybC5zdGFydHNXaXRoKGFwaUFkZHJlc3MpKVxuICAgICkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHJldHVybiAhdGhpcy5hbm9ueW1vdXNBcGlzLnNvbWUoYXBpID0+XG4gICAgICBhcGkgaW5zdGFuY2VvZiBSZWdFeHAgPyBhcGkudGVzdChyZXEudXJsKSA6IHJlcS51cmwuaW5jbHVkZXMoYXBpKSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBuZWVkQ29uc29sZUF1dGhvcml6YXRpb24ocmVxOiBIdHRwUmVxdWVzdDx1bmtub3duPikge1xuICAgIGlmIChyZXEuaGVhZGVycy5nZXQoJ0F1dGhvcml6YXRpb24nKSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHJldHVybiAhdGhpcy5hbm9ueW1vdXNBcGlzLnNvbWUoYXBpID0+XG4gICAgICBhcGkgaW5zdGFuY2VvZiBSZWdFeHAgPyBhcGkudGVzdChyZXEudXJsKSA6IHJlcS51cmwuaW5jbHVkZXMoYXBpKSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBpczQwMSh7IGVycm9yIH06IEh0dHBFcnJvclJlc3BvbnNlKSB7XG4gICAgcmV0dXJuIHRoaXMuaXNTdGF0dXMoZXJyb3IpICYmIGVycm9yLmNvZGUgPT09IDQwMTtcbiAgfVxuXG4gIHByaXZhdGUgaXNTZXNzaW9uSW52YWxpZChlcnJvclJlczogSHR0cEVycm9yUmVzcG9uc2UpIHtcbiAgICBjb25zdCB7IGVycm9yIH0gPSBlcnJvclJlcztcbiAgICByZXR1cm4gdGhpcy5pczQwMShlcnJvclJlcykgJiYgZXJyb3IucmVhc29uID09PSAnU2Vzc2lvbkludmFsaWQnO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVTZXNzaW9uSW52YWxpZCgpIHtcbiAgICB0aGlzLnNlc3Npb25NYW5hZ2UuY29tcGxldGUoKTtcbiAgICBpZiAoXG4gICAgICBEYXRlLm5vdygpIC0gcGFyc2VJbnQoc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbShTRVNTSU9OX01BTkFHRV9LRVkpKSA8XG4gICAgICA1MDAwXG4gICAgKSB7XG4gICAgICBzZXNzaW9uU3RvcmFnZS5yZW1vdmVJdGVtKFNFU1NJT05fTUFOQUdFX0tFWSk7XG4gICAgICBsb2dvdXQodHJ1ZSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuc2Vzc2lvbkludmFsaWRDb25maXJtKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5zZXNzaW9uSW52YWxpZENvbmZpcm0gPSB0cnVlO1xuICAgIC8vIGZpeCBjaXJjbGUgZGVwZW5kZW5jeSBlcnJvclxuICAgIGNvbnN0IHRyYW5zbGF0ZSA9IHRoaXMuaW5qZWN0b3IuZ2V0KFRyYW5zbGF0ZVNlcnZpY2UpO1xuICAgIGNhdGNoUHJvbWlzZShcbiAgICAgIHRoaXMuZGlhbG9nLmNvbmZpcm0oe1xuICAgICAgICB0aXRsZTogdHJhbnNsYXRlLmdldCgnc2Vzc2lvbl9pbnZhbGlkX2hpbnQnKSxcbiAgICAgICAgY29uZmlybVRleHQ6IHRyYW5zbGF0ZS5nZXQoJ2lfa25vdycpLFxuICAgICAgICBjYW5jZWxCdXR0b246IGZhbHNlLFxuICAgICAgfSksXG4gICAgKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5zZXNzaW9uSW52YWxpZENvbmZpcm0gPSBmYWxzZTtcbiAgICAgIGxvZ291dCh0cnVlKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgaXNVbmF1dGhvcml6ZWQoZXJyb3JSZXM6IEh0dHBFcnJvclJlc3BvbnNlKSB7XG4gICAgcmV0dXJuIHRoaXMuaXM0MDEoZXJyb3JSZXMpICYmIGVycm9yUmVzLmVycm9yLnJlYXNvbiA9PT0gJ1VuYXV0aG9yaXplZCc7XG4gIH1cblxuICBwcml2YXRlIGlzSW52YWxpZFVzZXIoZXJyb3JSZXM6IEh0dHBFcnJvclJlc3BvbnNlKSB7XG4gICAgcmV0dXJuIHRoaXMuaXM0MDEoZXJyb3JSZXMpICYmIGVycm9yUmVzLmVycm9yLnJlYXNvbiA9PT0gJ0ludmFsaWRVc2VyJztcbiAgfVxuXG4gIHByaXZhdGUgaXNTdGF0dXMoZXJyb3I6IHN0cmluZyB8IFN0YXR1cyk6IGVycm9yIGlzIFN0YXR1cyB7XG4gICAgcmV0dXJuIGVycm9yICYmIHR5cGVvZiBlcnJvciAhPT0gJ3N0cmluZycgJiYgJ2NvZGUnIGluIGVycm9yO1xuICB9XG5cbiAgcHJpdmF0ZSBpc1dhdGNoUmVxKFxuICAgIGFwaUFkZHJlc3M6IHN0cmluZyxcbiAgICB7IHVybCwgcGFyYW1zIH06IEh0dHBSZXF1ZXN0PHVua25vd24+LFxuICApIHtcbiAgICBjb25zdCBpc1N0YW5kYXJkQXBpID1cbiAgICAgIHVybC5zdGFydHNXaXRoKGFwaUFkZHJlc3MgKyAnL2FwaS8nKSB8fFxuICAgICAgdXJsLnN0YXJ0c1dpdGgoYXBpQWRkcmVzcyArICcvYXBpcy8nKSB8fFxuICAgICAgdXJsLnN0YXJ0c1dpdGgoYXBpQWRkcmVzcyArICcva3ViZXJuZXRlcy8nKTtcbiAgICBjb25zdCBpc1dhdGNoT24gPSBwYXJhbXMuZ2V0KCd3YXRjaCcpPy50b0xvd2VyQ2FzZSgpID09PSAndHJ1ZSc7XG4gICAgcmV0dXJuIGlzU3RhbmRhcmRBcGkgJiYgaXNXYXRjaE9uO1xuICB9XG59XG4iXX0=
@@ -12,4 +12,5 @@ export * from './state.service';
12
12
  export * from './storage-token';
13
13
  export * from './authorization';
14
14
  export * from './constants';
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9hdXRob3JpemF0aW9uL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUVILGNBQWM7QUFDZCxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsYUFBYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBbW2luY2x1ZGU6YXV0aG9yaXphdGlvbi9SRUFETUUubWRdXVxuICogQG1vZHVsZSBhdXRob3JpemF0aW9uXG4gKiBAcHJlZmVycmVkXG4gKi9cblxuLyoqIGltcG9ydHMgKi9cbmV4cG9ydCAqIGZyb20gJy4vZ3VhcmQuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2ludGVyY2VwdG9yLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9hcHAtaW5pdC11cmwnO1xuZXhwb3J0ICogZnJvbSAnLi9zZXNzaW9uLW1hbmFnZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc3RhdGUuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3N0b3JhZ2UtdG9rZW4nO1xuZXhwb3J0ICogZnJvbSAnLi9hdXRob3JpemF0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vY29uc3RhbnRzJztcbiJdfQ==
15
+ export * from './token-client';
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9hdXRob3JpemF0aW9uL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUVILGNBQWM7QUFDZCxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsZ0JBQWdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFtbaW5jbHVkZTphdXRob3JpemF0aW9uL1JFQURNRS5tZF1dXG4gKiBAbW9kdWxlIGF1dGhvcml6YXRpb25cbiAqIEBwcmVmZXJyZWRcbiAqL1xuXG4vKiogaW1wb3J0cyAqL1xuZXhwb3J0ICogZnJvbSAnLi9ndWFyZC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vaW50ZXJjZXB0b3Iuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2FwcC1pbml0LXVybCc7XG5leHBvcnQgKiBmcm9tICcuL3Nlc3Npb24tbWFuYWdlLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9zdGF0ZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc3RvcmFnZS10b2tlbic7XG5leHBvcnQgKiBmcm9tICcuL2F1dGhvcml6YXRpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9jb25zdGFudHMnO1xuZXhwb3J0ICogZnJvbSAnLi90b2tlbi1jbGllbnQnO1xuIl19
@@ -0,0 +1,96 @@
1
+ import { noop } from '../core/public-api';
2
+ import { TOKEN_INFO_API, TOKEN_REFRESH_API } from './constants';
3
+ import { readStorageToken, writeStorageToken } from './storage-token';
4
+ let cachedAccountInfo;
5
+ export function resetAuthRuntimeCache() {
6
+ cachedAccountInfo = undefined;
7
+ }
8
+ export function getCachedAccountInfo() {
9
+ return cachedAccountInfo;
10
+ }
11
+ export function setCachedAccountInfo(info) {
12
+ cachedAccountInfo = info;
13
+ }
14
+ export function createAuthorizedFetchInit(init = {}) {
15
+ const headers = new Headers(init.headers);
16
+ const idToken = readStorageToken();
17
+ if (idToken && !headers.has('Authorization')) {
18
+ headers.set('Authorization', `Bearer ${idToken}`);
19
+ }
20
+ return {
21
+ ...init,
22
+ credentials: init.credentials ?? 'same-origin',
23
+ headers,
24
+ };
25
+ }
26
+ // Sends request with auth header but no 401 retry — for token management APIs
27
+ export function fetchTokenApi(input, init) {
28
+ return fetch(input, createAuthorizedFetchInit(init));
29
+ }
30
+ export async function fetchAuthorizedResource(input, init) {
31
+ const response = await fetch(input, createAuthorizedFetchInit(init));
32
+ if (response.status !== 401) {
33
+ return response;
34
+ }
35
+ const { refreshAuthorizationToken, logout } = await import('./authorization');
36
+ const refreshed = await refreshAuthorizationToken().catch(() => null);
37
+ if (!refreshed) {
38
+ logout(true);
39
+ return new Promise(noop);
40
+ }
41
+ return fetch(input, createAuthorizedFetchInit(init));
42
+ }
43
+ export async function requestTokenInfo(force = false) {
44
+ if (!force && cachedAccountInfo !== undefined) {
45
+ return cachedAccountInfo;
46
+ }
47
+ return fetchTokenApi(TOKEN_INFO_API).then(async (response) => {
48
+ if (response.ok) {
49
+ const info = await response.json();
50
+ cachedAccountInfo = info;
51
+ return info;
52
+ }
53
+ if (response.status === 401) {
54
+ cachedAccountInfo = null;
55
+ return null;
56
+ }
57
+ throw createResponseError(response, 'Failed to fetch token info');
58
+ });
59
+ }
60
+ export async function requestTokenRefresh() {
61
+ return fetchTokenApi(TOKEN_REFRESH_API).then(async (response) => {
62
+ if (response.ok) {
63
+ const tokenResponse = await response.json();
64
+ if (tokenResponse.id_token) {
65
+ writeStorageToken(tokenResponse.id_token);
66
+ }
67
+ cachedAccountInfo = undefined;
68
+ return tokenResponse;
69
+ }
70
+ if (response.status === 401) {
71
+ cachedAccountInfo = null;
72
+ return null;
73
+ }
74
+ throw createResponseError(response, 'Failed to refresh token');
75
+ });
76
+ }
77
+ export async function resolveTokenInfoWithRefresh() {
78
+ const info = await requestTokenInfo();
79
+ if (info) {
80
+ return info;
81
+ }
82
+ const refreshed = await requestTokenRefresh();
83
+ if (!refreshed) {
84
+ return null;
85
+ }
86
+ return requestTokenInfo(true);
87
+ }
88
+ function createResponseError(response, message) {
89
+ const error = new Error(`${message}: ${response.status} ${response.statusText}`);
90
+ Object.assign(error, {
91
+ status: response.status,
92
+ statusText: response.statusText,
93
+ });
94
+ return error;
95
+ }
96
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVudGltZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9hdXRob3JpemF0aW9uL3J1bnRpbWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRzFDLE9BQU8sRUFBRSxjQUFjLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDaEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFVdEUsSUFBSSxpQkFBaUQsQ0FBQztBQUV0RCxNQUFNLFVBQVUscUJBQXFCO0lBQ25DLGlCQUFpQixHQUFHLFNBQVMsQ0FBQztBQUNoQyxDQUFDO0FBRUQsTUFBTSxVQUFVLG9CQUFvQjtJQUNsQyxPQUFPLGlCQUFpQixDQUFDO0FBQzNCLENBQUM7QUFFRCxNQUFNLFVBQVUsb0JBQW9CLENBQUMsSUFBb0M7SUFDdkUsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO0FBQzNCLENBQUM7QUFFRCxNQUFNLFVBQVUseUJBQXlCLENBQUMsT0FBb0IsRUFBRTtJQUM5RCxNQUFNLE9BQU8sR0FBRyxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDMUMsTUFBTSxPQUFPLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQztJQUVuQyxJQUFJLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLEVBQUUsQ0FBQztRQUM3QyxPQUFPLENBQUMsR0FBRyxDQUFDLGVBQWUsRUFBRSxVQUFVLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVELE9BQU87UUFDTCxHQUFHLElBQUk7UUFDUCxXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVcsSUFBSSxhQUFhO1FBQzlDLE9BQU87S0FDYyxDQUFDO0FBQzFCLENBQUM7QUFFRCw4RUFBOEU7QUFDOUUsTUFB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QUFDO0lBRXRDLElBQUksSUFBSSxFQUFFLENBQUM7UUFDVCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxNQUFNLFNBQVMsR0FBRyxNQUFNLG1CQUFtQixFQUFFLENBQUM7SUFFOUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ2YsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsT0FBTyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUNoQyxDQUFDO0FBRUQsU0FBUyxtQkFBbUIsQ0FBQyxRQUFrQixFQUFFLE9BQWU7SUFDOUQsTUFBTSxLQUFLLEdBQUcsSUFBSSxLQUFLLENBQ3JCLEdBQUcsT0FBTyxLQUFLLFFBQVEsQ0FBQyxNQUFNLElBQUksUUFBUSxDQUFDLFVBQVUsRUFBRSxDQUN4RCxDQUFDO0lBRUYsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUU7UUFDbkIsTUFBTSxFQUFFLFFBQVEsQ0FBQyxNQUFNO1FBQ3ZCLFVBQVUsRUFBRSxRQUFRLENBQUMsVUFBVTtLQUNoQyxDQUFDLENBQUM7SUFFSCxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBub29wIH0gZnJvbSAnLi4vY29yZS9wdWJsaWMtYXBpJztcbmltcG9ydCB0eXBlIHsgQWNjb3VudEluZm8gfSBmcm9tICcuLi9wYWdlLXNjYWZmb2xkL3BhZ2UtaGVhZGVyL2FjY291bnQtbWVudS9jb21wb25lbnQvY29tcG9uZW50JztcblxuaW1wb3J0IHsgVE9LRU5fSU5GT19BUEksIFRPS0VOX1JFRlJFU0hfQVBJIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgcmVhZFN0b3JhZ2VUb2tlbiwgd3JpdGVTdG9yYWdlVG9rZW4gfSBmcm9tICcuL3N0b3JhZ2UtdG9rZW4nO1xuXG5leHBvcnQgaW50ZXJmYWNlIFRva2VuUmVzcG9uc2Uge1xuICB0b2tlbl9zdG9yYWdlOiBzdHJpbmc7XG4gIHRva2VuX3R5cGU6IHN0cmluZztcbiAgZXhwaXJlX2F0OiBzdHJpbmc7XG4gIGlzc3VlZF9hdDogc3RyaW5nO1xuICBpZF90b2tlbj86IHN0cmluZztcbn1cblxubGV0IGNhY2hlZEFjY291bnRJbmZvOiBBY2NvdW50SW5mbyB8IG51bGwgfCB1bmRlZmluZWQ7XG5cbmV4cG9ydCBmdW5jdGlvbiByZXNldEF1dGhSdW50aW1lQ2FjaGUoKSB7XG4gIGNhY2hlZEFjY291bnRJbmZvID0gdW5kZWZpbmVkO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q2FjaGVkQWNjb3VudEluZm8oKSB7XG4gIHJldHVybiBjYWNoZWRBY2NvdW50SW5mbztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNldENhY2hlZEFjY291bnRJbmZvKGluZm86IEFjY291bnRJbmZvIHwgbnVsbCB8IHVuZGVmaW5lZCkge1xuICBjYWNoZWRBY2NvdW50SW5mbyA9IGluZm87XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVBdXRob3JpemVkRmV0Y2hJbml0KGluaXQ6IFJlcXVlc3RJbml0ID0ge30pIHtcbiAgY29uc3QgaGVhZGVycyA9IG5ldyBIZWFkZXJzKGluaXQuaGVhZGVycyk7XG4gIGNvbnN0IGlkVG9rZW4gPSByZWFkU3RvcmFnZVRva2VuKCk7XG5cbiAgaWYgKGlkVG9rZW4gJiYgIWhlYWRlcnMuaGFzKCdBdXRob3JpemF0aW9uJykpIHtcbiAgICBoZWFkZXJzLnNldCgnQXV0aG9yaXphdGlvbicsIGBCZWFyZXIgJHtpZFRva2VufWApO1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICAuLi5pbml0LFxuICAgIGNyZWRlbnRpYWxzOiBpbml0LmNyZWRlbnRpYWxzID8/ICdzYW1lLW9yaWdpbicsXG4gICAgaGVhZGVycyxcbiAgfSBzYXRpc2ZpZXMgUmVxdWVzdEluaXQ7XG59XG5cbi8vIFNlbmRzIHJlcXVlc3Qgd2l0aCBhdXRoIGhlYWRlciBidXQgbm8gNDAxIHJldHJ5IOKAlCBmb3IgdG9rZW4gbWFuYWdlbWVudCBBUElzXG5leHBvcnQgZnVuY3Rpb24gZmV0Y2hUb2tlbkFwaShpbnB1dDogUmVxdWVzdEluZm8gfCBVUkwsIGluaXQ/OiBSZXF1ZXN0SW5pdCkge1xuICByZXR1cm4gZmV0Y2goaW5wdXQsIGNyZWF0ZUF1dGhvcml6ZWRGZXRjaEluaXQoaW5pdCkpO1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZmV0Y2hBdXRob3JpemVkUmVzb3VyY2UoXG4gIGlucHV0OiBSZXF1ZXN0SW5mbyB8IFVSTCxcbiAgaW5pdD86IFJlcXVlc3RJbml0LFxuKSB7XG4gIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2goaW5wdXQsIGNyZWF0ZUF1dGhvcml6ZWRGZXRjaEluaXQoaW5pdCkpO1xuXG4gIGlmIChyZXNwb25zZS5zdGF0dXMgIT09IDQwMSkge1xuICAgIHJldHVybiByZXNwb25zZTtcbiAgfVxuXG4gIGNvbnN0IHsgcmVmcmVzaEF1dGhvcml6YXRpb25Ub2tlbiwgbG9nb3V0IH0gPSBhd2FpdCBpbXBvcnQoJy4vYXV0aG9yaXphdGlvbicpO1xuICBjb25zdCByZWZyZXNoZWQgPSBhd2FpdCByZWZyZXNoQXV0aG9yaXphdGlvblRva2VuKCkuY2F0Y2goKCkgPT4gbnVsbCk7XG5cbiAgaWYgKCFyZWZyZXNoZWQpIHtcbiAgICBsb2dvdXQodHJ1ZSk7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlPG5ldmVyPihub29wKTtcbiAgfVxuXG4gIHJldHVybiBmZXRjaChpbnB1dCwgY3JlYXRlQXV0aG9yaXplZEZldGNoSW5pdChpbml0KSk7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiByZXF1ZXN0VG9rZW5JbmZvKGZvcmNlID0gZmFsc2UpIHtcbiAgaWYgKCFmb3JjZSAmJiBjYWNoZWRBY2NvdW50SW5mbyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIGNhY2hlZEFjY291bnRJbmZvO1xuICB9XG5cbiAgcmV0dXJuIGZldGNoVG9rZW5BcGkoVE9LRU5fSU5GT19BUEkpLnRoZW4oYXN5bmMgcmVzcG9uc2UgPT4ge1xuICAgIGlmIChyZXNwb25zZS5vaykge1xuICAgICAgY29uc3QgaW5mbzogQWNjb3VudEluZm8gPSBhd2FpdCByZXNwb25zZS5qc29uKCk7XG4gICAgICBjYWNoZWRBY2NvdW50SW5mbyA9IGluZm87XG4gICAgICByZXR1cm4gaW5mbztcbiAgICB9XG5cbiAgICBpZiAocmVzcG9uc2Uuc3RhdHVzID09PSA0MDEpIHtcbiAgICAgIGNhY2hlZEFjY291bnRJbmZvID0gbnVsbDtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIHRocm93IGNyZWF0ZVJlc3BvbnNlRXJyb3IocmVzcG9uc2UsICdGYWlsZWQgdG8gZmV0Y2ggdG9rZW4gaW5mbycpO1xuICB9KTtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHJlcXVlc3RUb2tlblJlZnJlc2goKSB7XG4gIHJldHVybiBmZXRjaFRva2VuQXBpKFRPS0VOX1JFRlJFU0hfQVBJKS50aGVuKGFzeW5jIHJlc3BvbnNlID0+IHtcbiAgICBpZiAocmVzcG9uc2Uub2spIHtcbiAgICAgIGNvbnN0IHRva2VuUmVzcG9uc2U6IFRva2VuUmVzcG9uc2UgPSBhd2FpdCByZXNwb25zZS5qc29uKCk7XG5cbiAgICAgIGlmICh0b2tlblJlc3BvbnNlLmlkX3Rva2VuKSB7XG4gICAgICAgIHdyaXRlU3RvcmFnZVRva2VuKHRva2VuUmVzcG9uc2UuaWRfdG9rZW4pO1xuICAgICAgfVxuICAgICAgY2FjaGVkQWNjb3VudEluZm8gPSB1bmRlZmluZWQ7XG5cbiAgICAgIHJldHVybiB0b2tlblJlc3BvbnNlO1xuICAgIH1cblxuICAgIGlmIChyZXNwb25zZS5zdGF0dXMgPT09IDQwMSkge1xuICAgICAgY2FjaGVkQWNjb3VudEluZm8gPSBudWxsO1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgdGhyb3cgY3JlYXRlUmVzcG9uc2VFcnJvcihyZXNwb25zZSwgJ0ZhaWxlZCB0byByZWZyZXNoIHRva2VuJyk7XG4gIH0pO1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcmVzb2x2ZVRva2VuSW5mb1dpdGhSZWZyZXNoKCkge1xuICBjb25zdCBpbmZvID0gYXdhaXQgcmVxdWVzdFRva2VuSW5mbygpO1xuXG4gIGlmIChpbmZvKSB7XG4gICAgcmV0dXJuIGluZm87XG4gIH1cblxuICBjb25zdCByZWZyZXNoZWQgPSBhd2FpdCByZXF1ZXN0VG9rZW5SZWZyZXNoKCk7XG5cbiAgaWYgKCFyZWZyZXNoZWQpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHJldHVybiByZXF1ZXN0VG9rZW5JbmZvKHRydWUpO1xufVxuXG5mdW5jdGlvbiBjcmVhdGVSZXNwb25zZUVycm9yKHJlc3BvbnNlOiBSZXNwb25zZSwgbWVzc2FnZTogc3RyaW5nKSB7XG4gIGNvbnN0IGVycm9yID0gbmV3IEVycm9yKFxuICAgIGAke21lc3NhZ2V9OiAke3Jlc3BvbnNlLnN0YXR1c30gJHtyZXNwb25zZS5zdGF0dXNUZXh0fWAsXG4gICk7XG5cbiAgT2JqZWN0LmFzc2lnbihlcnJvciwge1xuICAgIHN0YXR1czogcmVzcG9uc2Uuc3RhdHVzLFxuICAgIHN0YXR1c1RleHQ6IHJlc3BvbnNlLnN0YXR1c1RleHQsXG4gIH0pO1xuXG4gIHJldHVybiBlcnJvcjtcbn1cbiJdfQ==
@@ -2,14 +2,12 @@ import { HttpClient } from '@angular/common/http';
2
2
  import { Inject, Injectable } from '@angular/core';
3
3
  import { bufferTime, filter, fromEvent, merge, switchMap, withLatestFrom, } from 'rxjs';
4
4
  import { PageVisibilityService } from '../api/page-visibility.service';
5
- import { getGlobalEnvironments } from '../core/constants/public-api';
6
- import { API_GATEWAY, TOKEN_DISABLE_SESSION_MANAGE, skipError, } from '../public-api';
5
+ import { skipError, API_GATEWAY, getGlobalEnvironments, TOKEN_DISABLE_SESSION_MANAGE, } from '../core/public-api';
6
+ import { HEARTBEAT_POLLING, SESSION_MANAGE_KEY } from './constants';
7
7
  import * as i0 from "@angular/core";
8
8
  import * as i1 from "@angular/common/http";
9
9
  import * as i2 from "../api/page-visibility.service";
10
10
  const EVENT_TRIGGERS = ['click', 'keypress'];
11
- export const HEARTBEAT_POLLING = 15_000;
12
- export const SESSION_MANAGE_KEY = 'session-manage-construct-time';
13
11
  export class SessionManageService {
14
12
  constructor(http, pageVisibility, disabled) {
15
13
  this.http = http;
@@ -44,4 +42,4 @@ export class SessionManageService {
44
42
  type: Inject,
45
43
  args: [TOKEN_DISABLE_SESSION_MANAGE]
46
44
  }] }], null); })();
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Vzc2lvbi1tYW5hZ2Uuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9hdXRob3JpemF0aW9uL3Nlc3Npb24tbWFuYWdlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFFTCxVQUFVLEVBQ1YsTUFBTSxFQUNOLFNBQVMsRUFDVCxLQUFLLEVBQ0wsU0FBUyxFQUNULGNBQWMsR0FDZixNQUFNLE1BQU0sQ0FBQztBQUVkLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3JFLE9BQU8sRUFDTCxXQUFXLEVBQ1gsNEJBQTRCLEVBQzVCLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQzs7OztBQUV2QixNQUFNLGNBQWMsR0FBRyxDQUFDLE9BQU8sRUFBRSxVQUFVLENBQUMsQ0FBQztBQUM3QyxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxNQUFNLENBQUM7QUFDeEMsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsK0JBQStCLENBQUM7QUFLbEUsTUFBTSxPQUFPLG9CQUFvQjtJQXNCL0IsWUFDbUIsSUFBZ0IsRUFDaEIsY0FBcUMsRUFDaEIsUUFBaUI7UUFGdEMsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUNoQixtQkFBYyxHQUFkLGNBQWMsQ0FBdUI7UUF0QnZDLGdCQUFXLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBRXRELGdCQUFXLEdBQUcsS0FBSyxDQUNsQyxHQUFHLGNBQWMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQ3JEO2FBQ0UsSUFBSSxDQUFDLFVBQVUsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLGNBQWMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7YUFDckUsSUFBSSxDQUNILE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsRUFDakMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQ2hCLElBQUksQ0FBQyxJQUFJO2FBQ04sR0FBRyxDQUFDLEdBQUcsV0FBVyxvQkFBb0IsRUFBRTtZQUN2QyxNQUFNLEVBQUUsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUU7U0FDL0IsQ0FBQzthQUNELElBQUk7UUFDSCw0REFBNEQ7UUFDNUQsU0FBUyxFQUFFLENBQ1osQ0FDSixDQUNGLENBQUM7UUFPRixJQUFJLENBQUMsUUFBUSxJQUFJLHFCQUFxQixDQUFDLHNCQUFzQixDQUFDLEtBQUssSUFBSSxFQUFFLENBQUM7WUFDeEUsY0FBYyxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUMvRCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDbkQsQ0FBQztJQUNILENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFlBQVksRUFBRSxXQUFXLEVBQUUsQ0FBQztJQUNuQyxDQUFDO3FGQW5DVSxvQkFBb0IsaUZBeUJyQiw0QkFBNEI7dUVBekIzQixvQkFBb0IsV0FBcEIsb0JBQW9CLG1CQUZuQixNQUFNOztpRkFFUCxvQkFBb0I7Y0FIaEMsVUFBVTtlQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25COztzQkEwQkksTUFBTTt1QkFBQyw0QkFBNEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBTdWJzY3JpcHRpb24sXG4gIGJ1ZmZlclRpbWUsXG4gIGZpbHRlcixcbiAgZnJvbUV2ZW50LFxuICBtZXJnZSxcbiAgc3dpdGNoTWFwLFxuICB3aXRoTGF0ZXN0RnJvbSxcbn0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IFBhZ2VWaXNpYmlsaXR5U2VydmljZSB9IGZyb20gJy4uL2FwaS9wYWdlLXZpc2liaWxpdHkuc2VydmljZSc7XG5pbXBvcnQgeyBnZXRHbG9iYWxFbnZpcm9ubWVudHMgfSBmcm9tICcuLi9jb3JlL2NvbnN0YW50cy9wdWJsaWMtYXBpJztcbmltcG9ydCB7XG4gIEFQSV9HQVRFV0FZLFxuICBUT0tFTl9ESVNBQkxFX1NFU1NJT05fTUFOQUdFLFxuICBza2lwRXJyb3IsXG59IGZyb20gJy4uL3B1YmxpYy1hcGknO1xuXG5jb25zdCBFVkVOVF9UUklHR0VSUyA9IFsnY2xpY2snLCAna2V5cHJlc3MnXTtcbmV4cG9ydCBjb25zdCBIRUFSVEJFQVRfUE9MTElORyA9IDE1XzAwMDtcbmV4cG9ydCBjb25zdCBTRVNTSU9OX01BTkFHRV9LRVkgPSAnc2Vzc2lvbi1tYW5hZ2UtY29uc3RydWN0LXRpbWUnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgU2Vzc2lvbk1hbmFnZVNlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICBwcml2YXRlIHJlYWRvbmx5IHZpc2liaWxpdHkkID0gdGhpcy5wYWdlVmlzaWJpbGl0eS5nZXRQYWdlVmlzaWJpbGl0eSgpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgdXNlckFjdGlvbiQgPSBtZXJnZShcbiAgICAuLi5FVkVOVF9UUklHR0VSUy5tYXAoZXYgPT4gZnJvbUV2ZW50KGRvY3VtZW50LCBldikpLFxuICApXG4gICAgLnBpcGUoYnVmZmVyVGltZShIRUFSVEJFQVRfUE9MTElORyksIHdpdGhMYXRlc3RGcm9tKHRoaXMudmlzaWJpbGl0eSQpKVxuICAgIC5waXBlKFxuICAgICAgZmlsdGVyKChbXywgdmlzaWJsZV0pID0+IHZpc2libGUpLFxuICAgICAgc3dpdGNoTWFwKChbaV0pID0+XG4gICAgICAgIHRoaXMuaHR0cFxuICAgICAgICAgIC5nZXQoYCR7QVBJX0dBVEVXQVl9L2F1dGgvdjEvaGVhcnRiZWF0YCwge1xuICAgICAgICAgICAgcGFyYW1zOiB7IGFjdGlvbjogISFpLmxlbmd0aCB9LFxuICAgICAgICAgIH0pXG4gICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAvLyDplJnor6/nlLEgSHR0cEludGVyY2VwdG9yIOWkhOeQhu+8jOS7heeUsSBIdHRwSW50ZXJjZXB0b3Ig5Li75Yqo57uT5p2f5q2k5rWB77yM6Ieq6Lqr5LiA55u06L+b6KGM5b+D6LezXG4gICAgICAgICAgICBza2lwRXJyb3IoKSxcbiAgICAgICAgICApLFxuICAgICAgKSxcbiAgICApO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgaHR0cDogSHR0cENsaWVudCxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHBhZ2VWaXNpYmlsaXR5OiBQYWdlVmlzaWJpbGl0eVNlcnZpY2UsXG4gICAgQEluamVjdChUT0tFTl9ESVNBQkxFX1NFU1NJT05fTUFOQUdFKSBkaXNhYmxlZDogYm9vbGVhbixcbiAgKSB7XG4gICAgaWYgKCFkaXNhYmxlZCAmJiBnZXRHbG9iYWxFbnZpcm9ubWVudHMoJ0NQQUFTX1NFU1NJT05fU1dJVENIJykgPT09ICdvbicpIHtcbiAgICAgIHNlc3Npb25TdG9yYWdlLnNldEl0ZW0oU0VTU0lPTl9NQU5BR0VfS0VZLCBTdHJpbmcoRGF0ZS5ub3coKSkpO1xuICAgICAgdGhpcy5zdWJzY3JpcHRpb24gPSB0aGlzLnVzZXJBY3Rpb24kLnN1YnNjcmliZSgpO1xuICAgIH1cbiAgfVxuXG4gIGNvbXBsZXRlKCkge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICB9XG59XG4iXX0=
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Vzc2lvbi1tYW5hZ2Uuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9hdXRob3JpemF0aW9uL3Nlc3Npb24tbWFuYWdlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFFTCxVQUFVLEVBQ1YsTUFBTSxFQUNOLFNBQVMsRUFDVCxLQUFLLEVBQ0wsU0FBUyxFQUNULGNBQWMsR0FDZixNQUFNLE1BQU0sQ0FBQztBQUVkLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3ZFLE9BQU8sRUFDTCxTQUFTLEVBQ1QsV0FBVyxFQUNYLHFCQUFxQixFQUNyQiw0QkFBNEIsR0FDN0IsTUFBTSxvQkFBb0IsQ0FBQztBQUU1QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7QUFFcEUsTUFBTSxjQUFjLEdBQUcsQ0FBQyxPQUFPLEVBQUUsVUFBVSxDQUFDLENBQUM7QUFLN0MsTUFBTSxPQUFPLG9CQUFvQjtJQXNCL0IsWUFDbUIsSUFBZ0IsRUFDaEIsY0FBcUMsRUFDaEIsUUFBaUI7UUFGdEMsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUNoQixtQkFBYyxHQUFkLGNBQWMsQ0FBdUI7UUF0QnZDLGdCQUFXLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBRXRELGdCQUFXLEdBQUcsS0FBSyxDQUNsQyxHQUFHLGNBQWMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQ3JEO2FBQ0UsSUFBSSxDQUFDLFVBQVUsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLGNBQWMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7YUFDckUsSUFBSSxDQUNILE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsRUFDakMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQ2hCLElBQUksQ0FBQyxJQUFJO2FBQ04sR0FBRyxDQUFDLEdBQUcsV0FBVyxvQkFBb0IsRUFBRTtZQUN2QyxNQUFNLEVBQUUsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUU7U0FDL0IsQ0FBQzthQUNELElBQUk7UUFDSCw0REFBNEQ7UUFDNUQsU0FBUyxFQUFFLENBQ1osQ0FDSixDQUNGLENBQUM7UUFPRixJQUFJLENBQUMsUUFBUSxJQUFJLHFCQUFxQixDQUFDLHNCQUFzQixDQUFDLEtBQUssSUFBSSxFQUFFLENBQUM7WUFDeEUsY0FBYyxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUMvRCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDbkQsQ0FBQztJQUNILENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFlBQVksRUFBRSxXQUFXLEVBQUUsQ0FBQztJQUNuQyxDQUFDO3FGQW5DVSxvQkFBb0IsaUZBeUJyQiw0QkFBNEI7dUVBekIzQixvQkFBb0IsV0FBcEIsb0JBQW9CLG1CQUZuQixNQUFNOztpRkFFUCxvQkFBb0I7Y0FIaEMsVUFBVTtlQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25COztzQkEwQkksTUFBTTt1QkFBQyw0QkFBNEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBTdWJzY3JpcHRpb24sXG4gIGJ1ZmZlclRpbWUsXG4gIGZpbHRlcixcbiAgZnJvbUV2ZW50LFxuICBtZXJnZSxcbiAgc3dpdGNoTWFwLFxuICB3aXRoTGF0ZXN0RnJvbSxcbn0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IFBhZ2VWaXNpYmlsaXR5U2VydmljZSB9IGZyb20gJy4uL2FwaS9wYWdlLXZpc2liaWxpdHkuc2VydmljZSc7XG5pbXBvcnQge1xuICBza2lwRXJyb3IsXG4gIEFQSV9HQVRFV0FZLFxuICBnZXRHbG9iYWxFbnZpcm9ubWVudHMsXG4gIFRPS0VOX0RJU0FCTEVfU0VTU0lPTl9NQU5BR0UsXG59IGZyb20gJy4uL2NvcmUvcHVibGljLWFwaSc7XG5cbmltcG9ydCB7IEhFQVJUQkVBVF9QT0xMSU5HLCBTRVNTSU9OX01BTkFHRV9LRVkgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5cbmNvbnN0IEVWRU5UX1RSSUdHRVJTID0gWydjbGljaycsICdrZXlwcmVzcyddO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgU2Vzc2lvbk1hbmFnZVNlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICBwcml2YXRlIHJlYWRvbmx5IHZpc2liaWxpdHkkID0gdGhpcy5wYWdlVmlzaWJpbGl0eS5nZXRQYWdlVmlzaWJpbGl0eSgpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgdXNlckFjdGlvbiQgPSBtZXJnZShcbiAgICAuLi5FVkVOVF9UUklHR0VSUy5tYXAoZXYgPT4gZnJvbUV2ZW50KGRvY3VtZW50LCBldikpLFxuICApXG4gICAgLnBpcGUoYnVmZmVyVGltZShIRUFSVEJFQVRfUE9MTElORyksIHdpdGhMYXRlc3RGcm9tKHRoaXMudmlzaWJpbGl0eSQpKVxuICAgIC5waXBlKFxuICAgICAgZmlsdGVyKChbXywgdmlzaWJsZV0pID0+IHZpc2libGUpLFxuICAgICAgc3dpdGNoTWFwKChbaV0pID0+XG4gICAgICAgIHRoaXMuaHR0cFxuICAgICAgICAgIC5nZXQoYCR7QVBJX0dBVEVXQVl9L2F1dGgvdjEvaGVhcnRiZWF0YCwge1xuICAgICAgICAgICAgcGFyYW1zOiB7IGFjdGlvbjogISFpLmxlbmd0aCB9LFxuICAgICAgICAgIH0pXG4gICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAvLyDplJnor6/nlLEgSHR0cEludGVyY2VwdG9yIOWkhOeQhu+8jOS7heeUsSBIdHRwSW50ZXJjZXB0b3Ig5Li75Yqo57uT5p2f5q2k5rWB77yM6Ieq6Lqr5LiA55u06L+b6KGM5b+D6LezXG4gICAgICAgICAgICBza2lwRXJyb3IoKSxcbiAgICAgICAgICApLFxuICAgICAgKSxcbiAgICApO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgaHR0cDogSHR0cENsaWVudCxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHBhZ2VWaXNpYmlsaXR5OiBQYWdlVmlzaWJpbGl0eVNlcnZpY2UsXG4gICAgQEluamVjdChUT0tFTl9ESVNBQkxFX1NFU1NJT05fTUFOQUdFKSBkaXNhYmxlZDogYm9vbGVhbixcbiAgKSB7XG4gICAgaWYgKCFkaXNhYmxlZCAmJiBnZXRHbG9iYWxFbnZpcm9ubWVudHMoJ0NQQUFTX1NFU1NJT05fU1dJVENIJykgPT09ICdvbicpIHtcbiAgICAgIHNlc3Npb25TdG9yYWdlLnNldEl0ZW0oU0VTU0lPTl9NQU5BR0VfS0VZLCBTdHJpbmcoRGF0ZS5ub3coKSkpO1xuICAgICAgdGhpcy5zdWJzY3JpcHRpb24gPSB0aGlzLnVzZXJBY3Rpb24kLnN1YnNjcmliZSgpO1xuICAgIH1cbiAgfVxuXG4gIGNvbXBsZXRlKCkge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICB9XG59XG4iXX0=
@@ -2,47 +2,26 @@
2
2
  * @packageDocumentation
3
3
  * @module authorization
4
4
  */
5
- import { HttpClient } from '@angular/common/http';
6
- import { Injectable, inject } from '@angular/core';
7
- import { EMPTY, of, catchError, map, shareReplay, switchMap, tap, timer, fromEvent, merge, timeout, } from 'rxjs';
8
- import { publishRef, getGlobalEnvironments, TRUE, skipError, catchPromise, } from '../core/public-api';
9
- import { attachAuthorizationHeader, getAuthorizationState, logout, logoutAudit, } from './authorization';
10
- import { TOKEN_INFO_API, LOADING_CACHE, TOKEN_REFRESH_API } from './constants';
11
- import { HEARTBEAT_POLLING } from './session-manage.service';
12
- import { readStorageAliveRecord, readStorageToken, refreshStorageAliveRecord, writeStorageToken, } from './storage-token';
5
+ import { Injectable } from '@angular/core';
6
+ import { EMPTY, from, of, catchError, map, tap, timer, fromEvent, merge, timeout, } from 'rxjs';
7
+ import { getGlobalEnvironments, TRUE, catchPromise } from '../core/public-api';
8
+ import { checkAuthorizationToken, getAuthorizationState, logout, logoutAudit, refreshAuthorizationToken, } from './authorization';
9
+ import { LOADING_CACHE, HEARTBEAT_POLLING } from './constants';
10
+ import { readStorageAliveRecord, refreshStorageAliveRecord, readStorageToken, } from './storage-token';
13
11
  import * as i0 from "@angular/core";
14
12
  export class AuthorizationStateService {
15
13
  constructor() {
16
- this.http = inject(HttpClient);
17
- this.state$ = this.http
18
- .get(TOKEN_INFO_API, {
19
- headers: attachAuthorizationHeader(),
20
- })
21
- .pipe(skipError(null), tap(info => {
22
- if (!info) {
23
- logout(true);
24
- }
25
- this.payloadSnapshot = info;
26
- }), map(info => ({
27
- ...getAuthorizationState(),
28
- info,
29
- })), shareReplay(1));
30
- this.checkTokenCache$ = null;
14
+ this.state = getAuthorizationState();
15
+ this.payloadSnapshot = this.state.info ?? null;
31
16
  this.logout = logout;
32
17
  if (getGlobalEnvironments('CLOSE_BROWSER_END_SESSION') === TRUE) {
33
- this.state$
34
- .pipe(switchMap(state => {
35
- const aliveRecord = readStorageAliveRecord();
36
- if (!aliveRecord ||
37
- Date.now() - aliveRecord > HEARTBEAT_POLLING + LOADING_CACHE) {
38
- this.logoutWithAudit();
39
- return EMPTY;
40
- }
41
- return of(state);
42
- }), switchMap(() => {
43
- return merge(timer(0, HEARTBEAT_POLLING), fromEvent(window, 'beforeunload'));
44
- }))
45
- .subscribe(refreshStorageAliveRecord);
18
+ const aliveRecord = readStorageAliveRecord();
19
+ if (!aliveRecord ||
20
+ Date.now() - aliveRecord > HEARTBEAT_POLLING + LOADING_CACHE) {
21
+ this.logoutWithAudit();
22
+ return;
23
+ }
24
+ merge(timer(0, HEARTBEAT_POLLING), fromEvent(window, 'beforeunload')).subscribe(refreshStorageAliveRecord);
46
25
  }
47
26
  }
48
27
  logoutWithAudit() {
@@ -51,41 +30,21 @@ export class AuthorizationStateService {
51
30
  .subscribe(redirectUrl => logout(redirectUrl));
52
31
  }
53
32
  refreshToken() {
54
- if (this.refreshTokenCache$) {
55
- return this.refreshTokenCache$;
56
- }
57
- this.refreshTokenCache$ = this.http
58
- .get(TOKEN_REFRESH_API)
59
- .pipe(tap(({ id_token: idToken }) => {
60
- writeStorageToken(idToken);
61
- this.refreshTokenCache$ = null;
62
- }), catchError(() => {
33
+ return from(refreshAuthorizationToken()).pipe(catchError(() => {
63
34
  logout(true);
64
35
  return EMPTY;
65
- }), publishRef());
66
- return this.refreshTokenCache$;
36
+ }));
67
37
  }
68
38
  checkToken() {
69
- if (!this.checkTokenCache$) {
70
- this.checkTokenCache$ = this.http.get(TOKEN_INFO_API).pipe(tap({
71
- next: () => {
72
- this.checkTokenCache$ = null;
73
- },
74
- error: () => {
75
- this.checkTokenCache$ = null;
76
- },
77
- }), publishRef());
78
- }
79
- return this.checkTokenCache$;
39
+ return from(checkAuthorizationToken()).pipe(tap(info => {
40
+ this.payloadSnapshot = info;
41
+ }));
80
42
  }
81
43
  getTokenPayload() {
82
- return this.state$.pipe(map(state => state.info));
44
+ return of(this.state.info);
83
45
  }
84
46
  getAccountInfo() {
85
- if (this.payloadSnapshot) {
86
- return of(this.payloadSnapshot);
87
- }
88
- return this.state$.pipe(map(state => state.info || {}));
47
+ return of(this.payloadSnapshot || {});
89
48
  }
90
49
  getTokenByStorage() {
91
50
  return readStorageToken();
@@ -97,4 +56,4 @@ export class AuthorizationStateService {
97
56
  type: Injectable,
98
57
  args: [{ providedIn: 'root' }]
99
58
  }], () => [], null); })();
100
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9hdXRob3JpemF0aW9uL3N0YXRlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBRUgsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFDTCxLQUFLLEVBRUwsRUFBRSxFQUNGLFVBQVUsRUFDVixHQUFHLEVBQ0gsV0FBVyxFQUNYLFNBQVMsRUFDVCxHQUFHLEVBQ0gsS0FBSyxFQUNMLFNBQVMsRUFDVCxLQUFLLEVBQ0wsT0FBTyxHQUNSLE1BQU0sTUFBTSxDQUFDO0FBRWQsT0FBTyxFQUNMLFVBQVUsRUFDVixxQkFBcUIsRUFDckIsSUFBSSxFQUNKLFNBQVMsRUFDVCxZQUFZLEdBQ2IsTUFBTSxvQkFBb0IsQ0FBQztBQUc1QixPQUFPLEVBQ0wseUJBQXlCLEVBQ3pCLHFCQUFxQixFQUNyQixNQUFNLEVBQ04sV0FBVyxHQUVaLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUFFLGNBQWMsRUFBRSxhQUFhLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDL0UsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDN0QsT0FBTyxFQUNMLHNCQUFzQixFQUN0QixnQkFBZ0IsRUFDaEIseUJBQXlCLEVBQ3pCLGlCQUFpQixHQUNsQixNQUFNLGlCQUFpQixDQUFDOztBQUd6QixNQUFNLE9BQU8seUJBQXlCO0lBOEJwQztRQTdCaUIsU0FBSSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUUxQixXQUFNLEdBQUcsSUFBSSxDQUFDLElBQUk7YUFDaEMsR0FBRyxDQUFjLGNBQWMsRUFBRTtZQUNoQyxPQUFPLEVB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LEdBQUcsRUFBRTtvQkFDVCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDO2dCQUMvQixDQUFDO2dCQUNELEtBQUssRUFBRSxHQUFHLEVBQUU7b0JBQ1YsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQztnQkFDL0IsQ0FBQzthQUNGLENBQUMsRUFDRixVQUFVLEVBQUUsQ0FDYixDQUFDO1FBQ0osQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDO0lBQy9CLENBQUM7SUFFRCxlQUFlO1FBQ2IsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBUyxDQUFDLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQsY0FBYztRQUNaLElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQ3pCLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUNsQyxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUVELGlCQUFpQjtRQUNmLE9BQU8sZ0JBQWdCLEVBQUUsQ0FBQztJQUM1QixDQUFDOzBGQXJIVSx5QkFBeUI7dUVBQXpCLHlCQUF5QixXQUF6Qix5QkFBeUIsbUJBRFosTUFBTTs7aUZBQ25CLHlCQUF5QjtjQURyQyxVQUFVO2VBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqIEBtb2R1bGUgYXV0aG9yaXphdGlvblxuICovXG5cbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEVNUFRZLFxuICBPYnNlcnZhYmxlLFxuICBvZixcbiAgY2F0Y2hFcnJvcixcbiAgbWFwLFxuICBzaGFyZVJlcGxheSxcbiAgc3dpdGNoTWFwLFxuICB0YXAsXG4gIHRpbWVyLFxuICBmcm9tRXZlbnQsXG4gIG1lcmdlLFxuICB0aW1lb3V0LFxufSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtcbiAgcHVibGlzaFJlZixcbiAgZ2V0R2xvYmFsRW52aXJvbm1lbnRzLFxuICBUUlVFLFxuICBza2lwRXJyb3IsXG4gIGNhdGNoUHJvbWlzZSxcbn0gZnJvbSAnLi4vY29yZS9wdWJsaWMtYXBpJztcbmltcG9ydCB7IEFjY291bnRJbmZvIH0gZnJvbSAnLi4vcGFnZS1zY2FmZm9sZC9wdWJsaWMtYXBpJztcblxuaW1wb3J0IHtcbiAgYXR0YWNoQXV0aG9yaXphdGlvbkhlYWRlcixcbiAgZ2V0QXV0aG9yaXphdGlvblN0YXRlLFxuICBsb2dvdXQsXG4gIGxvZ291dEF1ZGl0LFxuICBUb2tlblJlc3BvbnNlLFxufSBmcm9tICcuL2F1dGhvcml6YXRpb24nO1xuaW1wb3J0IHsgVE9LRU5fSU5GT19BUEksIExPQURJTkdfQ0FDSEUsIFRPS0VOX1JFRlJFU0hfQVBJIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgSEVBUlRCRUFUX1BPTExJTkcgfSBmcm9tICcuL3Nlc3Npb24tbWFuYWdlLnNlcnZpY2UnO1xuaW1wb3J0IHtcbiAgcmVhZFN0b3JhZ2VBbGl2ZVJlY29yZCxcbiAgcmVhZFN0b3JhZ2VUb2tlbixcbiAgcmVmcmVzaFN0b3JhZ2VBbGl2ZVJlY29yZCxcbiAgd3JpdGVTdG9yYWdlVG9rZW4sXG59IGZyb20gJy4vc3RvcmFnZS10b2tlbic7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgQXV0aG9yaXphdGlvblN0YXRlU2VydmljZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgaHR0cCA9IGluamVjdChIdHRwQ2xpZW50KTtcblxuICBwcml2YXRlIHJlYWRvbmx5IHN0YXRlJCA9IHRoaXMuaHR0cFxuICAgIC5nZXQ8QWNjb3VudEluZm8+KFRPS0VOX0lORk9fQVBJLCB7XG4gICAgICBoZWFkZXJzOiBhdHRhY2hBdXRob3JpemF0aW9uSGVhZGVyKCksXG4gICAgfSlcbiAgICAucGlwZShcbiAgICAgIHNraXBFcnJvcihudWxsKSxcbiAgICAgIHRhcChpbmZvID0+IHtcbiAgICAgICAgaWYgKCFpbmZvKSB7XG4gICAgICAgICAgbG9nb3V0KHRydWUpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5wYXlsb2FkU25hcHNob3QgPSBpbmZvO1xuICAgICAgfSksXG4gICAgICBtYXAoaW5mbyA9PiAoe1xuICAgICAgICAuLi5nZXRBdXRob3JpemF0aW9uU3RhdGUoKSxcbiAgICAgICAgaW5mbyxcbiAgICAgIH0pKSxcbiAgICAgIHNoYXJlUmVwbGF5KDEpLFxuICAgICk7XG5cbiAgcHJpdmF0ZSBjaGVja1Rva2VuQ2FjaGUkOiBPYnNlcnZhYmxlPHVua25vd24+ID0gbnVsbDtcbiAgcHJpdmF0ZSByZWZyZXNoVG9rZW5DYWNoZSQ6IE9ic2VydmFibGU8VG9rZW5SZXNwb25zZT47XG5cbiAgcGF5bG9hZFNuYXBzaG90OiBBY2NvdW50SW5mbztcblxuICBsb2dvdXQgPSBsb2dvdXQ7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgaWYgKGdldEdsb2JhbEVudmlyb25tZW50cygnQ0xPU0VfQlJPV1NFUl9FTkRfU0VTU0lPTicpID09PSBUUlVFKSB7XG4gICAgICB0aGlzLnN0YXRlJFxuICAgICAgICAucGlwZShcbiAgICAgICAgICBzd2l0Y2hNYXAoc3RhdGUgPT4ge1xuICAgICAgICAgICAgY29uc3QgYWxpdmVSZWNvcmQgPSByZWFkU3RvcmFnZUFsaXZlUmVjb3JkKCk7XG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICFhbGl2ZVJlY29yZCB8fFxuICAgICAgICAgICAgICBEYXRlLm5vdygpIC0gYWxpdmVSZWNvcmQgPiBIRUFSVEJFQVRfUE9MTElORyArIExPQURJTkdfQ0FDSEVcbiAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICB0aGlzLmxvZ291dFdpdGhBdWRpdCgpO1xuICAgICAgICAgICAgICByZXR1cm4gRU1QVFk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gb2Yoc3RhdGUpO1xuICAgICAgICAgIH0pLFxuICAgICAgICAgIHN3aXRjaE1hcCgoKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gbWVyZ2UoXG4gICAgICAgICAgICAgIHRpbWVyKDAsIEhFQVJUQkVBVF9QT0xMSU5HKSxcbiAgICAgICAgICAgICAgZnJvbUV2ZW50KHdpbmRvdywgJ2JlZm9yZXVubG9hZCcpLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9KSxcbiAgICAgICAgKVxuICAgICAgICAuc3Vic2NyaWJlKHJlZnJlc2hTdG9yYWdlQWxpdmVSZWNvcmQpO1xuICAgIH1cbiAgfVxuXG4gIGxvZ291dFdpdGhBdWRpdCgpIHtcbiAgICBjYXRjaFByb21pc2UobG9nb3V0QXVkaXQoKSlcbiAgICAgIC5waXBlKFxuICAgICAgICB0aW1lb3V0KDEwMDApLFxuICAgICAgICBtYXAocmVzID0+IHJlcz8ubG9nb3V0X3JlZGlyZWN0X3VybCksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKHJlZGlyZWN0VXJsID0+IGxvZ291dChyZWRpcmVjdFVybCkpO1xuICB9XG5cbiAgcmVmcmVzaFRva2VuKCkge1xuICAgIGlmICh0aGlzLnJlZnJlc2hUb2tlbkNhY2hlJCkge1xuICAgICAgcmV0dXJuIHRoaXMucmVmcmVzaFRva2VuQ2FjaGUkO1xuICAgIH1cblxuICAgIHRoaXMucmVmcmVzaFRva2VuQ2FjaGUkID0gdGhpcy5odHRwXG4gICAgICAuZ2V0PFRva2VuUmVzcG9uc2U+KFRPS0VOX1JFRlJFU0hfQVBJKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRhcCgoeyBpZF90b2tlbjogaWRUb2tlbiB9KSA9PiB7XG4gICAgICAgICAgd3JpdGVTdG9yYWdlVG9rZW4oaWRUb2tlbik7XG4gICAgICAgICAgdGhpcy5yZWZyZXNoVG9rZW5DYWNoZSQgPSBudWxsO1xuICAgICAgICB9KSxcbiAgICAgICAgY2F0Y2hFcnJvcigoKSA9PiB7XG4gICAgICAgICAgbG9nb3V0KHRydWUpO1xuICAgICAgICAgIHJldHVybiBFTVBUWTtcbiAgICAgICAgfSksXG4gICAgICAgIHB1Ymxpc2hSZWYoKSxcbiAgICAgICk7XG5cbiAgICByZXR1cm4gdGhpcy5yZWZyZXNoVG9rZW5DYWNoZSQ7XG4gIH1cblxuICBjaGVja1Rva2VuKCkge1xuICAgIGlmICghdGhpcy5jaGVja1Rva2VuQ2FjaGUkKSB7XG4gICAgICB0aGlzLmNoZWNrVG9rZW5DYWNoZSQgPSB0aGlzLmh0dHAuZ2V0KFRPS0VOX0lORk9fQVBJKS5waXBlKFxuICAgICAgICB0YXAoe1xuICAgICAgICAgIG5leHQ6ICgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuY2hlY2tUb2tlbkNhY2hlJCA9IG51bGw7XG4gICAgICAgICAgfSxcbiAgICAgICAgICBlcnJvcjogKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5jaGVja1Rva2VuQ2FjaGUkID0gbnVsbDtcbiAgICAgICAgICB9LFxuICAgICAgICB9KSxcbiAgICAgICAgcHVibGlzaFJlZigpLFxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuY2hlY2tUb2tlbkNhY2hlJDtcbiAgfVxuXG4gIGdldFRva2VuUGF5bG9hZDxUPigpIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0ZSQucGlwZShtYXAoc3RhdGUgPT4gc3RhdGUuaW5mbyBhcyBUKSk7XG4gIH1cblxuICBnZXRBY2NvdW50SW5mbygpIHtcbiAgICBpZiAodGhpcy5wYXlsb2FkU25hcHNob3QpIHtcbiAgICAgIHJldHVybiBvZih0aGlzLnBheWxvYWRTbmFwc2hvdCk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLnN0YXRlJC5waXBlKG1hcChzdGF0ZSA9PiBzdGF0ZS5pbmZvIHx8IHt9KSk7XG4gIH1cblxuICBnZXRUb2tlbkJ5U3RvcmFnZSgpIHtcbiAgICByZXR1cm4gcmVhZFN0b3JhZ2VUb2tlbigpO1xuICB9XG59XG4iXX0=
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9hdXRob3JpemF0aW9uL3N0YXRlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBRUgsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQ0wsS0FBSyxFQUNMLElBQUksRUFDSixFQUFFLEVBQ0YsVUFBVSxFQUNWLEdBQUcsRUFDSCxHQUFHLEVBQ0gsS0FBSyxFQUNMLFNBQVMsRUFDVCxLQUFLLEVBQ0wsT0FBTyxHQUNSLE1BQU0sTUFBTSxDQUFDO0FBRWQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUUvRSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLHFCQUFxQixFQUNyQixNQUFNLEVBQ04sV0FBVyxFQUNYLHlCQUF5QixHQUMxQixNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFBRSxhQUFhLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDL0QsT0FBTyxFQUNMLHNCQUFzQixFQUN0Qix5QkFBeUIsRUFDekIsZ0JBQWdCLEdBQ2pCLE1BQU0saUJBQWlCLENBQUM7O0FBR3pCLE1BQU0sT0FBTyx5QkFBeUI7SUFNcEM7UUFMaUIsVUFBSyxHQUFHLHFCQUFxQixFQUFFLENBQUM7UUFDakQsb0JBQWUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUM7UUFFMUMsV0FBTSxHQUFHLE1BQU0sQ0FBQztRQUdkLElBQUkscUJBQXFCLENBQUMsMkJBQTJCLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUNoRSxNQUFNLFdBQVcsR0FBRyxzQkFBc0IsRUFBRSxDQUFDO1lBQzdDLElBQ0UsQ0FBQyxXQUFXO2dCQUNaLElBQUksQ0FBQyxHQUFHLEVBQUUsR0FBRyxXQUFXLEdBQUcsaUJBQWlCLEdBQUcsYUFBYSxFQUM1RCxDQUFDO2dCQUNELElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztnQkFDdkIsT0FBTztZQUNULENBQUM7WUFFRCxLQUFLLENBQ0gsS0FBSyxDQUFDLENBQUMsRUFBRSxpQkFBaUIsQ0FBQyxFQUMzQixTQUFTLENBQUMsTUFBTSxFQUFFLGNBQWMsQ0FBQyxDQUNsQyxDQUFDLFNBQVMsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1FBQ3pDLENBQUM7SUFDSCxDQUFDO0lBRUQsZUFBZTtRQUNiLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQzthQUN4QixJQUFJLENBQ0gsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUNiLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsRUFBRSxtQkFBbUIsQ0FBQyxDQUNyQzthQUNBLFNBQVMsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRCxZQUFZO1FBQ1YsT0FBTyxJQUFJLENBQUMseUJBQXlCLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FDM0MsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNiLE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFFRCxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FDekMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ1QsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUM7UUFDOUIsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFFRCxlQUFlO1FBQ2IsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFTLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQsY0FBYztRQUNaLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxlQUFlLElBQUksRUFBRSxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVELGlCQUFpQjtRQUNmLE9BQU8sZ0JBQWdCLEVBQUUsQ0FBQztJQUM1QixDQUFDOzBGQTVEVSx5QkFBeUI7dUVBQXpCLHlCQUF5QixXQUF6Qix5QkFBeUIsbUJBRFosTUFBTTs7aUZBQ25CLHlCQUF5QjtjQURyQyxVQUFVO2VBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqIEBtb2R1bGUgYXV0aG9yaXphdGlvblxuICovXG5cbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEVNUFRZLFxuICBmcm9tLFxuICBvZixcbiAgY2F0Y2hFcnJvcixcbiAgbWFwLFxuICB0YXAsXG4gIHRpbWVyLFxuICBmcm9tRXZlbnQsXG4gIG1lcmdlLFxuICB0aW1lb3V0LFxufSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgZ2V0R2xvYmFsRW52aXJvbm1lbnRzLCBUUlVFLCBjYXRjaFByb21pc2UgfSBmcm9tICcuLi9jb3JlL3B1YmxpYy1hcGknO1xuXG5pbXBvcnQge1xuICBjaGVja0F1dGhvcml6YXRpb25Ub2tlbixcbiAgZ2V0QXV0aG9yaXphdGlvblN0YXRlLFxuICBsb2dvdXQsXG4gIGxvZ291dEF1ZGl0LFxuICByZWZyZXNoQXV0aG9yaXphdGlvblRva2VuLFxufSBmcm9tICcuL2F1dGhvcml6YXRpb24nO1xuaW1wb3J0IHsgTE9BRElOR19DQUNIRSwgSEVBUlRCRUFUX1BPTExJTkcgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQge1xuICByZWFkU3RvcmFnZUFsaXZlUmVjb3JkLFxuICByZWZyZXNoU3RvcmFnZUFsaXZlUmVjb3JkLFxuICByZWFkU3RvcmFnZVRva2VuLFxufSBmcm9tICcuL3N0b3JhZ2UtdG9rZW4nO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIEF1dGhvcml6YXRpb25TdGF0ZVNlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IHN0YXRlID0gZ2V0QXV0aG9yaXphdGlvblN0YXRlKCk7XG4gIHBheWxvYWRTbmFwc2hvdCA9IHRoaXMuc3RhdGUuaW5mbyA/PyBudWxsO1xuXG4gIGxvZ291dCA9IGxvZ291dDtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBpZiAoZ2V0R2xvYmFsRW52aXJvbm1lbnRzKCdDTE9TRV9CUk9XU0VSX0VORF9TRVNTSU9OJykgPT09IFRSVUUpIHtcbiAgICAgIGNvbnN0IGFsaXZlUmVjb3JkID0gcmVhZFN0b3JhZ2VBbGl2ZVJlY29yZCgpO1xuICAgICAgaWYgKFxuICAgICAgICAhYWxpdmVSZWNvcmQgfHxcbiAgICAgICAgRGF0ZS5ub3coKSAtIGFsaXZlUmVjb3JkID4gSEVBUlRCRUFUX1BPTExJTkcgKyBMT0FESU5HX0NBQ0hFXG4gICAgICApIHtcbiAgICAgICAgdGhpcy5sb2dvdXRXaXRoQXVkaXQoKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBtZXJnZShcbiAgICAgICAgdGltZXIoMCwgSEVBUlRCRUFUX1BPTExJTkcpLFxuICAgICAgICBmcm9tRXZlbnQod2luZG93LCAnYmVmb3JldW5sb2FkJyksXG4gICAgICApLnN1YnNjcmliZShyZWZyZXNoU3RvcmFnZUFsaXZlUmVjb3JkKTtcbiAgICB9XG4gIH1cblxuICBsb2dvdXRXaXRoQXVkaXQoKSB7XG4gICAgY2F0Y2hQcm9taXNlKGxvZ291dEF1ZGl0KCkpXG4gICAgICAucGlwZShcbiAgICAgICAgdGltZW91dCgxMDAwKSxcbiAgICAgICAgbWFwKHJlcyA9PiByZXM/LmxvZ291dF9yZWRpcmVjdF91cmwpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZShyZWRpcmVjdFVybCA9PiBsb2dvdXQocmVkaXJlY3RVcmwpKTtcbiAgfVxuXG4gIHJlZnJlc2hUb2tlbigpIHtcbiAgICByZXR1cm4gZnJvbShyZWZyZXNoQXV0aG9yaXphdGlvblRva2VuKCkpLnBpcGUoXG4gICAgICBjYXRjaEVycm9yKCgpID0+IHtcbiAgICAgICAgbG9nb3V0KHRydWUpO1xuICAgICAgICByZXR1cm4gRU1QVFk7XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgY2hlY2tUb2tlbigpIHtcbiAgICByZXR1cm4gZnJvbShjaGVja0F1dGhvcml6YXRpb25Ub2tlbigpKS5waXBlKFxuICAgICAgdGFwKGluZm8gPT4ge1xuICAgICAgICB0aGlzLnBheWxvYWRTbmFwc2hvdCA9IGluZm87XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgZ2V0VG9rZW5QYXlsb2FkPFQ+KCkge1xuICAgIHJldHVybiBvZih0aGlzLnN0YXRlLmluZm8gYXMgVCk7XG4gIH1cblxuICBnZXRBY2NvdW50SW5mbygpIHtcbiAgICByZXR1cm4gb2YodGhpcy5wYXlsb2FkU25hcHNob3QgfHwge30pO1xuICB9XG5cbiAgZ2V0VG9rZW5CeVN0b3JhZ2UoKSB7XG4gICAgcmV0dXJuIHJlYWRTdG9yYWdlVG9rZW4oKTtcbiAgfVxufVxuIl19