@openziti/ziti-console-lib 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (705) hide show
  1. package/README.md +24 -0
  2. package/assets/animations/ConstructionZiggy.json +15233 -0
  3. package/assets/animations/HelloZiggy.json +10008 -0
  4. package/assets/animations/SmartZiggy.json +9488 -0
  5. package/assets/components/add.html +1 -0
  6. package/assets/components/api.html +12 -0
  7. package/assets/components/customtags.html +4 -0
  8. package/assets/components/line.html +1 -0
  9. package/assets/components/noitems.html +1 -0
  10. package/assets/components/save.html +4 -0
  11. package/assets/components/search.html +8 -0
  12. package/assets/components/tabIdentities.html +6 -0
  13. package/assets/components/tabPolicies.html +7 -0
  14. package/assets/components/tabRouters.html +5 -0
  15. package/assets/components/tabServers.html +4 -0
  16. package/assets/components/tabServices.html +5 -0
  17. package/assets/components/tabSessions.html +4 -0
  18. package/assets/data/mail.json +0 -0
  19. package/assets/data/services.json +6 -0
  20. package/assets/data/settings.json +25 -0
  21. package/assets/data/site.json +31 -0
  22. package/assets/data/tags.json +7 -0
  23. package/assets/data/templates.json +1 -0
  24. package/assets/fonts/OpenSans-Regular.ttf +0 -0
  25. package/assets/fonts/OpenSans-Regular.woff +0 -0
  26. package/assets/fonts/OpenSans-Regular.woff2 +0 -0
  27. package/assets/fonts/RussoOne-Regular.ttf +0 -0
  28. package/assets/fonts/RussoOne-Regular.woff +0 -0
  29. package/assets/fonts/RussoOne-Regular.woff2 +0 -0
  30. package/assets/fonts/zac.eot +0 -0
  31. package/assets/fonts/zac.svg +55 -0
  32. package/assets/fonts/zac.ttf +0 -0
  33. package/assets/fonts/zac.woff +0 -0
  34. package/assets/fonts/zac.woff2 +0 -0
  35. package/assets/html/api-sessions.htm +153 -0
  36. package/assets/html/attributes.htm +260 -0
  37. package/assets/html/auth-policies.htm +410 -0
  38. package/assets/html/cas.htm +445 -0
  39. package/assets/html/config-types.htm +168 -0
  40. package/assets/html/configs.htm +238 -0
  41. package/assets/html/deprecated/fabric-links.htm +336 -0
  42. package/assets/html/deprecated/fabric-routers.htm +72 -0
  43. package/assets/html/deprecated/fabric-services.htm +494 -0
  44. package/assets/html/identities.htm +934 -0
  45. package/assets/html/index.htm +161 -0
  46. package/assets/html/jwt-signers.htm +260 -0
  47. package/assets/html/known.htm +115 -0
  48. package/assets/html/login.htm +131 -0
  49. package/assets/html/organization.htm +223 -0
  50. package/assets/html/posture-checks.htm +393 -0
  51. package/assets/html/profile.htm +52 -0
  52. package/assets/html/recipes.htm +455 -0
  53. package/assets/html/router-policies.htm +168 -0
  54. package/assets/html/routers.htm +323 -0
  55. package/assets/html/servers.htm +236 -0
  56. package/assets/html/service-policies.htm +197 -0
  57. package/assets/html/service-router-policies.htm +170 -0
  58. package/assets/html/services.htm +634 -0
  59. package/assets/html/sessions.htm +157 -0
  60. package/assets/html/settings.htm +146 -0
  61. package/assets/html/terminators.htm +244 -0
  62. package/assets/html/transit-routers.htm +173 -0
  63. package/assets/icons/android-icon-192x192.png +0 -0
  64. package/assets/icons/apple-icon-114x114.png +0 -0
  65. package/assets/icons/apple-icon-120x120.png +0 -0
  66. package/assets/icons/apple-icon-144x144.png +0 -0
  67. package/assets/icons/apple-icon-152x152.png +0 -0
  68. package/assets/icons/apple-icon-180x180.png +0 -0
  69. package/assets/icons/apple-icon-57x57.png +0 -0
  70. package/assets/icons/apple-icon-60x60.png +0 -0
  71. package/assets/icons/apple-icon-72x72.png +0 -0
  72. package/assets/icons/apple-icon-76x76.png +0 -0
  73. package/assets/icons/apple-icon-precomposed.png +0 -0
  74. package/assets/icons/favicon-16x16.png +0 -0
  75. package/assets/icons/favicon-32x32.png +0 -0
  76. package/assets/icons/favicon-96x96.png +0 -0
  77. package/assets/icons/favicon.ico +0 -0
  78. package/assets/icons/ms-icon-144x144.png +0 -0
  79. package/assets/images/Filter.png +0 -0
  80. package/assets/images/Login.jpg +0 -0
  81. package/assets/images/SortDown.png +0 -0
  82. package/assets/images/SortUp.png +0 -0
  83. package/assets/images/android.png +0 -0
  84. package/assets/images/anywhere.png +0 -0
  85. package/assets/images/apple.png +0 -0
  86. package/assets/images/bug.png +0 -0
  87. package/assets/images/check.png +0 -0
  88. package/assets/images/error.png +0 -0
  89. package/assets/images/info.png +0 -0
  90. package/assets/images/linux.png +0 -0
  91. package/assets/images/other.png +0 -0
  92. package/assets/images/scrollbar.png +0 -0
  93. package/assets/images/select.png +0 -0
  94. package/assets/images/success.png +0 -0
  95. package/assets/images/visualizer/ER.png +0 -0
  96. package/assets/images/visualizer/Routers.png +0 -0
  97. package/assets/images/visualizer/er_error.png +0 -0
  98. package/assets/images/visualizer/error_er.png +0 -0
  99. package/assets/images/visualizer/host-error.png +0 -0
  100. package/assets/images/visualizer/host.png +0 -0
  101. package/assets/images/visualizer/host_unregistered.png +0 -0
  102. package/assets/images/visualizer/link-cut.png +0 -0
  103. package/assets/images/visualizer/service.png +0 -0
  104. package/assets/images/visualizer/unregistered.png +0 -0
  105. package/assets/images/warning.png +0 -0
  106. package/assets/images/windows.png +0 -0
  107. package/assets/languages/en-us.json +330 -0
  108. package/assets/resources/avatar/man.svg +78 -0
  109. package/assets/resources/avatar/woman.svg +96 -0
  110. package/assets/resources/icon/analysis.svg +104 -0
  111. package/assets/resources/icon/appwans.svg +20 -0
  112. package/assets/resources/icon/architecture.svg +1 -0
  113. package/assets/resources/icon/bike.svg +94 -0
  114. package/assets/resources/icon/bus.svg +64 -0
  115. package/assets/resources/icon/cas.svg +46 -0
  116. package/assets/resources/icon/clusters.svg +28 -0
  117. package/assets/resources/icon/computer.svg +1 -0
  118. package/assets/resources/icon/data.svg +1 -0
  119. package/assets/resources/icon/delivery-truck.svg +1 -0
  120. package/assets/resources/icon/explosion.svg +81 -0
  121. package/assets/resources/icon/fabricServices.svg +31 -0
  122. package/assets/resources/icon/fabrics.svg +136 -0
  123. package/assets/resources/icon/front.svg +83 -0
  124. package/assets/resources/icon/gateway.svg +49 -0
  125. package/assets/resources/icon/gear.svg +122 -0
  126. package/assets/resources/icon/house.svg +72 -0
  127. package/assets/resources/icon/language.svg +1 -0
  128. package/assets/resources/icon/objective.svg +55 -0
  129. package/assets/resources/icon/route.svg +97 -0
  130. package/assets/resources/icon/routers.svg +27 -0
  131. package/assets/resources/icon/startup.svg +112 -0
  132. package/assets/resources/icon/switch.svg +101 -0
  133. package/assets/scripts/chart.min.js +7 -0
  134. package/assets/scripts/commands.js +112 -0
  135. package/assets/scripts/components/codemirror/codemirror.css +356 -0
  136. package/assets/scripts/components/codemirror/codemirror.js +9741 -0
  137. package/assets/scripts/components/codemirror/modes/addons/closetags.js +200 -0
  138. package/assets/scripts/components/codemirror/modes/addons/colorize.js +40 -0
  139. package/assets/scripts/components/codemirror/modes/addons/css-hint.js +66 -0
  140. package/assets/scripts/components/codemirror/modes/addons/formatting.js +124 -0
  141. package/assets/scripts/components/codemirror/modes/addons/html-hint.js +366 -0
  142. package/assets/scripts/components/codemirror/modes/addons/javascript-hint.js +159 -0
  143. package/assets/scripts/components/codemirror/modes/addons/show-hint.css +36 -0
  144. package/assets/scripts/components/codemirror/modes/addons/show-hint.js +482 -0
  145. package/assets/scripts/components/codemirror/modes/css.js +831 -0
  146. package/assets/scripts/components/codemirror/modes/htmlmixed.js +152 -0
  147. package/assets/scripts/components/codemirror/modes/javascript.js +930 -0
  148. package/assets/scripts/components/codemirror/modes/xml.js +413 -0
  149. package/assets/scripts/components/column.css +184 -0
  150. package/assets/scripts/components/column.js +165 -0
  151. package/assets/scripts/components/flows.css +0 -0
  152. package/assets/scripts/components/flows.js +48 -0
  153. package/assets/scripts/components/leaflet/images/layers-2x.png +0 -0
  154. package/assets/scripts/components/leaflet/images/layers.png +0 -0
  155. package/assets/scripts/components/leaflet/images/marker-icon-2x.png +0 -0
  156. package/assets/scripts/components/leaflet/images/marker-icon.png +0 -0
  157. package/assets/scripts/components/leaflet/images/marker-shadow.png +0 -0
  158. package/assets/scripts/components/leaflet/leaflet-src.esm.js +13926 -0
  159. package/assets/scripts/components/leaflet/leaflet-src.esm.js.map +1 -0
  160. package/assets/scripts/components/leaflet/leaflet-src.js +14020 -0
  161. package/assets/scripts/components/leaflet/leaflet-src.js.map +1 -0
  162. package/assets/scripts/components/leaflet/leaflet.css +640 -0
  163. package/assets/scripts/components/leaflet/leaflet.js +5 -0
  164. package/assets/scripts/components/leaflet/leaflet.js.map +1 -0
  165. package/assets/scripts/components/moment.js +4602 -0
  166. package/assets/scripts/components/multiselect.js +333 -0
  167. package/assets/scripts/components/network/img/network/acceptDeleteIcon.png +0 -0
  168. package/assets/scripts/components/network/img/network/addNodeIcon.png +0 -0
  169. package/assets/scripts/components/network/img/network/backIcon.png +0 -0
  170. package/assets/scripts/components/network/img/network/connectIcon.png +0 -0
  171. package/assets/scripts/components/network/img/network/cross.png +0 -0
  172. package/assets/scripts/components/network/img/network/cross2.png +0 -0
  173. package/assets/scripts/components/network/img/network/deleteIcon.png +0 -0
  174. package/assets/scripts/components/network/img/network/downArrow.png +0 -0
  175. package/assets/scripts/components/network/img/network/editIcon.png +0 -0
  176. package/assets/scripts/components/network/img/network/leftArrow.png +0 -0
  177. package/assets/scripts/components/network/img/network/minus.png +0 -0
  178. package/assets/scripts/components/network/img/network/plus.png +0 -0
  179. package/assets/scripts/components/network/img/network/rightArrow.png +0 -0
  180. package/assets/scripts/components/network/img/network/upArrow.png +0 -0
  181. package/assets/scripts/components/network/img/network/zoomExtends.png +0 -0
  182. package/assets/scripts/components/network/types/DOMutil.d.ts +99 -0
  183. package/assets/scripts/components/network/types/index-legacy-bundle.d.ts +4 -0
  184. package/assets/scripts/components/network/types/index-legacy-bundle.d.ts.map +1 -0
  185. package/assets/scripts/components/network/types/index-legacy.d.ts +24 -0
  186. package/assets/scripts/components/network/types/index-legacy.d.ts.map +1 -0
  187. package/assets/scripts/components/network/types/index-peer.d.ts +11 -0
  188. package/assets/scripts/components/network/types/index-peer.d.ts.map +1 -0
  189. package/assets/scripts/components/network/types/index-standalone.d.ts +7 -0
  190. package/assets/scripts/components/network/types/index-standalone.d.ts.map +1 -0
  191. package/assets/scripts/components/network/types/module/hammer.d.ts +2 -0
  192. package/assets/scripts/components/network/types/module/moment.d.ts +2 -0
  193. package/assets/scripts/components/network/types/network/Images.d.ts +2 -0
  194. package/assets/scripts/components/network/types/network/Network.d.ts +1030 -0
  195. package/assets/scripts/components/network/types/network/dotparser.d.ts +2 -0
  196. package/assets/scripts/components/network/types/network/gephiParser.d.ts +80 -0
  197. package/assets/scripts/components/network/types/network/gephiParser.d.ts.map +1 -0
  198. package/assets/scripts/components/network/types/network/modules/components/edges/bezier-edge-dynamic.d.ts +55 -0
  199. package/assets/scripts/components/network/types/network/modules/components/edges/bezier-edge-dynamic.d.ts.map +1 -0
  200. package/assets/scripts/components/network/types/network/modules/components/edges/bezier-edge-static.d.ts +37 -0
  201. package/assets/scripts/components/network/types/network/modules/components/edges/bezier-edge-static.d.ts.map +1 -0
  202. package/assets/scripts/components/network/types/network/modules/components/edges/cubic-bezier-edge.d.ts +32 -0
  203. package/assets/scripts/components/network/types/network/modules/components/edges/cubic-bezier-edge.d.ts.map +1 -0
  204. package/assets/scripts/components/network/types/network/modules/components/edges/index.d.ts +10 -0
  205. package/assets/scripts/components/network/types/network/modules/components/edges/index.d.ts.map +1 -0
  206. package/assets/scripts/components/network/types/network/modules/components/edges/straight-edge.d.ts +26 -0
  207. package/assets/scripts/components/network/types/network/modules/components/edges/straight-edge.d.ts.map +1 -0
  208. package/assets/scripts/components/network/types/network/modules/components/edges/util/bezier-edge-base.d.ts +68 -0
  209. package/assets/scripts/components/network/types/network/modules/components/edges/util/bezier-edge-base.d.ts.map +1 -0
  210. package/assets/scripts/components/network/types/network/modules/components/edges/util/cubic-bezier-edge-base.d.ts +38 -0
  211. package/assets/scripts/components/network/types/network/modules/components/edges/util/cubic-bezier-edge-base.d.ts.map +1 -0
  212. package/assets/scripts/components/network/types/network/modules/components/edges/util/edge-base.d.ts +248 -0
  213. package/assets/scripts/components/network/types/network/modules/components/edges/util/edge-base.d.ts.map +1 -0
  214. package/assets/scripts/components/network/types/network/modules/components/edges/util/end-points.d.ts +58 -0
  215. package/assets/scripts/components/network/types/network/modules/components/edges/util/end-points.d.ts.map +1 -0
  216. package/assets/scripts/components/network/types/network/modules/components/edges/util/types.d.ts +196 -0
  217. package/assets/scripts/components/network/types/network/modules/components/edges/util/types.d.ts.map +1 -0
  218. package/assets/scripts/components/network/types/network/modules/layout-engine/index.d.ts +32 -0
  219. package/assets/scripts/components/network/types/network/modules/layout-engine/index.d.ts.map +1 -0
  220. package/assets/scripts/components/network/types/network/options.d.ts +2 -0
  221. package/assets/scripts/components/network/types/network/shapes.d.ts +122 -0
  222. package/assets/scripts/components/network/types/network/shapes.d.ts.map +1 -0
  223. package/assets/scripts/components/network/vis-network.css +716 -0
  224. package/assets/scripts/components/network/vis-network.esm.js +58974 -0
  225. package/assets/scripts/components/network/vis-network.esm.js.map +1 -0
  226. package/assets/scripts/components/network/vis-network.esm.min.js +53 -0
  227. package/assets/scripts/components/network/vis-network.esm.min.js.map +1 -0
  228. package/assets/scripts/components/network/vis-network.js +58994 -0
  229. package/assets/scripts/components/network/vis-network.js.map +1 -0
  230. package/assets/scripts/components/network/vis-network.min.css +1 -0
  231. package/assets/scripts/components/network/vis-network.min.js +53 -0
  232. package/assets/scripts/components/network/vis-network.min.js.map +1 -0
  233. package/assets/scripts/components/qrcode.min.js +1 -0
  234. package/assets/scripts/components/resources.js +26 -0
  235. package/assets/scripts/components/selector-new.js +300 -0
  236. package/assets/scripts/components/selector.js +300 -0
  237. package/assets/scripts/components/spectrum.js +2323 -0
  238. package/assets/scripts/components/timezone.js +1545 -0
  239. package/assets/scripts/components/uploader.js +74 -0
  240. package/assets/scripts/context.js +177 -0
  241. package/assets/scripts/dragging.js +58 -0
  242. package/assets/scripts/forms/forms.js +74 -0
  243. package/assets/scripts/forms/host.v1.htm +43 -0
  244. package/assets/scripts/forms/intercept.v1.htm +0 -0
  245. package/assets/scripts/forms/schema.js +693 -0
  246. package/assets/scripts/growler.js +133 -0
  247. package/assets/scripts/header.js +163 -0
  248. package/assets/scripts/jquery-3.6.3.min.js +2 -0
  249. package/assets/scripts/jquery.datetimepicker.js +2930 -0
  250. package/assets/scripts/locale.js +47 -0
  251. package/assets/scripts/modal.js +65 -0
  252. package/assets/scripts/model/data.js +558 -0
  253. package/assets/scripts/model/fabric.js +55 -0
  254. package/assets/scripts/model/fabricServices.js +45 -0
  255. package/assets/scripts/model/known.js +43 -0
  256. package/assets/scripts/model/links.js +44 -0
  257. package/assets/scripts/model/routers.js +51 -0
  258. package/assets/scripts/model/series.js +70 -0
  259. package/assets/scripts/model/sessions.js +61 -0
  260. package/assets/scripts/model/settings.js +60 -0
  261. package/assets/scripts/model/summary.js +49 -0
  262. package/assets/scripts/model/tags.js +330 -0
  263. package/assets/scripts/model/templates.js +42 -0
  264. package/assets/scripts/model/user.js +40 -0
  265. package/assets/scripts/restrictions.js +34 -0
  266. package/assets/scripts/service.js +76 -0
  267. package/assets/scripts/validation-tools.js +5119 -0
  268. package/assets/scripts/ziti.js +372 -0
  269. package/assets/styles/chart.min.css +1 -0
  270. package/assets/styles/dark.css +52 -0
  271. package/assets/styles/datetimepicker.css +1 -0
  272. package/assets/styles/forms.css +521 -0
  273. package/assets/styles/global.scss +890 -0
  274. package/assets/styles/growler.css +190 -0
  275. package/assets/styles/header.css +232 -0
  276. package/assets/styles/icons.css +160 -0
  277. package/assets/styles/navigation.css +183 -0
  278. package/assets/styles/select2.css +481 -0
  279. package/assets/styles/spectrum.css +507 -0
  280. package/assets/styles/tables.css +424 -0
  281. package/assets/styles/tooltip.css +134 -0
  282. package/assets/styles/ziti.css +3216 -0
  283. package/assets/svgs/Advanced.svg +89 -0
  284. package/assets/svgs/ArrowDown.svg +15 -0
  285. package/assets/svgs/ArrowDownDark.svg +15 -0
  286. package/assets/svgs/Confirm_Trash.svg +42 -0
  287. package/assets/svgs/DownloadKey.svg +50 -0
  288. package/assets/svgs/Filter.svg +13 -0
  289. package/assets/svgs/Growl_Bug.svg +47 -0
  290. package/assets/svgs/Growl_Error.svg +41 -0
  291. package/assets/svgs/Growl_Info.svg +45 -0
  292. package/assets/svgs/Growl_Success.svg +34 -0
  293. package/assets/svgs/Growl_Warning.svg +44 -0
  294. package/assets/svgs/MainMenuBlankUser.svg +14 -0
  295. package/assets/svgs/MainMenuNetworks.svg +37 -0
  296. package/assets/svgs/MainMenuNotifications.svg +32 -0
  297. package/assets/svgs/MainMenuOrg.svg +68 -0
  298. package/assets/svgs/MainMenuPlus.svg +13 -0
  299. package/assets/svgs/MainMenuSearch.svg +22 -0
  300. package/assets/svgs/MainMenuSupport.svg +417 -0
  301. package/assets/svgs/No_Clients.svg +94 -0
  302. package/assets/svgs/No_Plus.svg +30 -0
  303. package/assets/svgs/No_Routers.svg +56 -0
  304. package/assets/svgs/Resize.svg +33 -0
  305. package/assets/svgs/Simple.svg +62 -0
  306. package/assets/svgs/appwans.svg +20 -0
  307. package/assets/svgs/cas.svg +46 -0
  308. package/assets/svgs/cert.svg +69 -0
  309. package/assets/svgs/clear.svg +13 -0
  310. package/assets/svgs/close.svg +14 -0
  311. package/assets/svgs/clusters.svg +28 -0
  312. package/assets/svgs/copy.svg +64 -0
  313. package/assets/svgs/dashboard.svg +32 -0
  314. package/assets/svgs/dial.svg +83 -0
  315. package/assets/svgs/docs.svg +95 -0
  316. package/assets/svgs/downloads.svg +74 -0
  317. package/assets/svgs/fabricServices.svg +31 -0
  318. package/assets/svgs/fabrics.svg +134 -0
  319. package/assets/svgs/gateways.svg +49 -0
  320. package/assets/svgs/heart.svg +1 -0
  321. package/assets/svgs/ids.svg +20 -0
  322. package/assets/svgs/infoicon.svg +14 -0
  323. package/assets/svgs/lock.svg +12 -0
  324. package/assets/svgs/minus.svg +11 -0
  325. package/assets/svgs/nodata.svg +27 -0
  326. package/assets/svgs/qr.svg +56 -0
  327. package/assets/svgs/refresh.svg +24 -0
  328. package/assets/svgs/routers.svg +31 -0
  329. package/assets/svgs/select.svg +18 -0
  330. package/assets/svgs/services.svg +19 -0
  331. package/assets/svgs/settings.svg +1 -0
  332. package/assets/svgs/upload.svg +55 -0
  333. package/assets/templates/footer.htm +183 -0
  334. package/assets/templates/header.htm +298 -0
  335. package/assets/vectors/certificates.svg +1 -0
  336. package/assets/vectors/change.svg +1 -0
  337. package/assets/vectors/configuration.svg +2 -0
  338. package/assets/vectors/customize.svg +1 -0
  339. package/assets/vectors/dashboard.svg +1 -0
  340. package/assets/vectors/edgepolicies.svg +2 -0
  341. package/assets/vectors/globe.svg +63 -0
  342. package/assets/vectors/help.svg +48 -0
  343. package/assets/vectors/identity.svg +1 -0
  344. package/assets/vectors/notify.svg +1 -0
  345. package/assets/vectors/plus.svg +1 -0
  346. package/assets/vectors/posture.svg +1 -0
  347. package/assets/vectors/profile.svg +1 -0
  348. package/assets/vectors/router.svg +1 -0
  349. package/assets/vectors/routerpolicies.svg +1 -0
  350. package/assets/vectors/schema.svg +1 -0
  351. package/assets/vectors/server (1).svg +293 -0
  352. package/assets/vectors/servers.svg +103 -0
  353. package/assets/vectors/servicepolicy.svg +1 -0
  354. package/assets/vectors/services.svg +126 -0
  355. package/assets/vectors/settings.svg +130 -0
  356. package/assets/vectors/terminators.svg +1 -0
  357. package/assets/vectors/transitrouter.svg +1 -0
  358. package/esm2022/lib/app.initializer.mjs +24 -0
  359. package/esm2022/lib/features/card/card.component.mjs +29 -0
  360. package/esm2022/lib/features/card-list/card-list.component.mjs +50 -0
  361. package/esm2022/lib/features/config-editor/config-editor.component.mjs +239 -0
  362. package/esm2022/lib/features/confirm/confirm.component.mjs +59 -0
  363. package/esm2022/lib/features/creation-summary-dialog/creation-summary-dialog.component.mjs +92 -0
  364. package/esm2022/lib/features/custom-tags/custom-tags.component.mjs +77 -0
  365. package/esm2022/lib/features/data-table/cells/table-cell-menu/table-cell-menu.component.mjs +47 -0
  366. package/esm2022/lib/features/data-table/cells/table-cell-select/table-cell-select.component.mjs +46 -0
  367. package/esm2022/lib/features/data-table/cells/table-cell-token/table-cell-token.component.mjs +124 -0
  368. package/esm2022/lib/features/data-table/column-headers/table-column-default/table-column-default.component.mjs +269 -0
  369. package/esm2022/lib/features/data-table/column-headers/table-column-filter/table-column-filter.component.mjs +94 -0
  370. package/esm2022/lib/features/data-table/column-headers/table-column-menu/table-column-menu.component.mjs +38 -0
  371. package/esm2022/lib/features/data-table/column-headers/table-column-select/table-column-select.component.mjs +34 -0
  372. package/esm2022/lib/features/data-table/data-table-filter.service.mjs +66 -0
  373. package/esm2022/lib/features/data-table/data-table.component.mjs +848 -0
  374. package/esm2022/lib/features/data-table/data-table.service.mjs +99 -0
  375. package/esm2022/lib/features/data-table/table-filter-bar/filter-bar.component.mjs +95 -0
  376. package/esm2022/lib/features/data-table/table-hidden-columns-bar/hidden-columns-bar.component.mjs +27 -0
  377. package/esm2022/lib/features/data-table/tooltips/os-tooltip.component.mjs +30 -0
  378. package/esm2022/lib/features/data-table/tooltips/sdk-tooltip.component.mjs +35 -0
  379. package/esm2022/lib/features/dynamic-widgets/boolean/boolean-toggle-input.component.mjs +73 -0
  380. package/esm2022/lib/features/dynamic-widgets/checkbox-list/checkbox-list-input.component.mjs +131 -0
  381. package/esm2022/lib/features/dynamic-widgets/forwarding-config/forwarding-config.component.mjs +169 -0
  382. package/esm2022/lib/features/dynamic-widgets/forwarding-config/forwarding-config.service.mjs +51 -0
  383. package/esm2022/lib/features/dynamic-widgets/number/number-input.component.mjs +74 -0
  384. package/esm2022/lib/features/dynamic-widgets/object/object.component.mjs +122 -0
  385. package/esm2022/lib/features/dynamic-widgets/password/password-input.component.mjs +72 -0
  386. package/esm2022/lib/features/dynamic-widgets/port-ranges/port-ranges.component.mjs +98 -0
  387. package/esm2022/lib/features/dynamic-widgets/protocol-address-port/protocol-address-port-input.component.mjs +180 -0
  388. package/esm2022/lib/features/dynamic-widgets/selector/selector-input.component.mjs +104 -0
  389. package/esm2022/lib/features/dynamic-widgets/string/string-input.component.mjs +72 -0
  390. package/esm2022/lib/features/dynamic-widgets/text-list/text-list-input.component.mjs +119 -0
  391. package/esm2022/lib/features/extendable/extendable.component.mjs +56 -0
  392. package/esm2022/lib/features/extendable/extensions-noop.service.mjs +50 -0
  393. package/esm2022/lib/features/json-view/json-view.component.mjs +197 -0
  394. package/esm2022/lib/features/list-page-features/list-page-form/list-page-form.component.mjs +139 -0
  395. package/esm2022/lib/features/list-page-features/list-page-header/list-page-header.component.mjs +48 -0
  396. package/esm2022/lib/features/loading-indicator/loading-indicator.component.mjs +21 -0
  397. package/esm2022/lib/features/messaging/growler.component.mjs +63 -0
  398. package/esm2022/lib/features/messaging/growler.model.mjs +24 -0
  399. package/esm2022/lib/features/messaging/growler.module.mjs +35 -0
  400. package/esm2022/lib/features/messaging/growler.service.mjs +72 -0
  401. package/esm2022/lib/features/messaging/logger.service.mjs +175 -0
  402. package/esm2022/lib/features/no-items/no-items.component.mjs +47 -0
  403. package/esm2022/lib/features/overrides/overrides.component.mjs +119 -0
  404. package/esm2022/lib/features/overrides/overrides.service.mjs +115 -0
  405. package/esm2022/lib/features/preview-list/preview-list.component.mjs +91 -0
  406. package/esm2022/lib/features/projectable-forms/configuration/configuration-form.component.mjs +223 -0
  407. package/esm2022/lib/features/projectable-forms/configuration/configuration.service.mjs +150 -0
  408. package/esm2022/lib/features/projectable-forms/edge-router/edge-router-form.component.mjs +188 -0
  409. package/esm2022/lib/features/projectable-forms/edge-router/edge-router-form.service.mjs +131 -0
  410. package/esm2022/lib/features/projectable-forms/form-field-container/form-field-container.component.mjs +72 -0
  411. package/esm2022/lib/features/projectable-forms/form-field-toggle/form-field-toggle.component.mjs +55 -0
  412. package/esm2022/lib/features/projectable-forms/form-header/form-header.component.mjs +96 -0
  413. package/esm2022/lib/features/projectable-forms/identity/identity-form.component.mjs +322 -0
  414. package/esm2022/lib/features/projectable-forms/identity/identity-form.service.mjs +144 -0
  415. package/esm2022/lib/features/projectable-forms/projectable-form.class.mjs +172 -0
  416. package/esm2022/lib/features/projectable-forms/service/service-form.component.mjs +240 -0
  417. package/esm2022/lib/features/projectable-forms/service/service-form.service.mjs +453 -0
  418. package/esm2022/lib/features/projectable-forms/service/simple-service/simple-service.component.mjs +680 -0
  419. package/esm2022/lib/features/projectable-forms/service-policy/service-policy-form.component.mjs +252 -0
  420. package/esm2022/lib/features/projectable-forms/service-policy/service-policy-form.service.mjs +214 -0
  421. package/esm2022/lib/features/qr-code/qr-code.component.mjs +143 -0
  422. package/esm2022/lib/features/reset-enrollment/reset-enrollment.component.mjs +87 -0
  423. package/esm2022/lib/features/reset-enrollment/reset-enrollment.service.mjs +62 -0
  424. package/esm2022/lib/features/side-modal/side-modal.component.mjs +46 -0
  425. package/esm2022/lib/features/sidebars/side-banner/side-banner.component.mjs +17 -0
  426. package/esm2022/lib/features/sidebars/side-navbar/side-navbar.component.mjs +55 -0
  427. package/esm2022/lib/features/sidebars/side-toolbar/side-toolbar.component.mjs +128 -0
  428. package/esm2022/lib/features/tag-selector/tag-selector.component.mjs +292 -0
  429. package/esm2022/lib/features/visualizer/identity-service-path/identity-service-path.component.mjs +588 -0
  430. package/esm2022/lib/features/visualizer/identity-service-path/identity-service-path.helper.mjs +370 -0
  431. package/esm2022/lib/features/wrappers/node-wrapper.service.mjs +51 -0
  432. package/esm2022/lib/features/wrappers/zac-wrapper-service.class.mjs +92 -0
  433. package/esm2022/lib/features/wrappers/zac-wrapper.component.mjs +147 -0
  434. package/esm2022/lib/features/wrappers/zac-wrapper.service.mjs +937 -0
  435. package/esm2022/lib/models/config.mjs +9 -0
  436. package/esm2022/lib/models/edge-router.mjs +13 -0
  437. package/esm2022/lib/models/identity.mjs +34 -0
  438. package/esm2022/lib/models/service-policy.mjs +12 -0
  439. package/esm2022/lib/models/service.mjs +12 -0
  440. package/esm2022/lib/pages/configurations/configurations-page.component.mjs +102 -0
  441. package/esm2022/lib/pages/configurations/configurations-page.service.mjs +246 -0
  442. package/esm2022/lib/pages/edge-routers/edge-routers-page.component.mjs +149 -0
  443. package/esm2022/lib/pages/edge-routers/edge-routers-page.service.mjs +361 -0
  444. package/esm2022/lib/pages/identities/identities-page.component.mjs +233 -0
  445. package/esm2022/lib/pages/identities/identities-page.service.mjs +498 -0
  446. package/esm2022/lib/pages/service-policies/service-policies-page.component.mjs +132 -0
  447. package/esm2022/lib/pages/service-policies/service-policies-page.service.mjs +457 -0
  448. package/esm2022/lib/pages/services/services-page.component.mjs +141 -0
  449. package/esm2022/lib/pages/services/services-page.service.mjs +215 -0
  450. package/esm2022/lib/safe.pipe.mjs +19 -0
  451. package/esm2022/lib/services/console-events.service.mjs +32 -0
  452. package/esm2022/lib/services/csv-download.service.mjs +92 -0
  453. package/esm2022/lib/services/deactivate-guard.service.mjs +18 -0
  454. package/esm2022/lib/services/login-service.class.mjs +28 -0
  455. package/esm2022/lib/services/node-data.service.mjs +292 -0
  456. package/esm2022/lib/services/noop-login.service.mjs +45 -0
  457. package/esm2022/lib/services/schema.service.mjs +808 -0
  458. package/esm2022/lib/services/settings-service.class.mjs +131 -0
  459. package/esm2022/lib/services/settings.service.mjs +193 -0
  460. package/esm2022/lib/services/tab-name.service.mjs +65 -0
  461. package/esm2022/lib/services/validation.service.mjs +124 -0
  462. package/esm2022/lib/services/ziti-controller-data.service.mjs +260 -0
  463. package/esm2022/lib/services/ziti-data.service.mjs +54 -0
  464. package/esm2022/lib/services/ziti-domain-controller.service.mjs +3 -0
  465. package/esm2022/lib/shared/list-page-component.class.mjs +145 -0
  466. package/esm2022/lib/shared/list-page-service.class.mjs +151 -0
  467. package/esm2022/lib/version.mjs +4 -0
  468. package/esm2022/lib/zac-routing.module.mjs +41 -0
  469. package/esm2022/lib/ziti-console-lib.module.mjs +364 -0
  470. package/esm2022/lib/ziti-console.constants.mjs +19 -0
  471. package/esm2022/openziti-ziti-console-lib.mjs +5 -0
  472. package/esm2022/public-api.mjs +71 -0
  473. package/fesm2022/openziti-ziti-console-lib.mjs +15813 -0
  474. package/fesm2022/openziti-ziti-console-lib.mjs.map +1 -0
  475. package/index.d.ts +6 -0
  476. package/lib/app.initializer.d.ts +3 -0
  477. package/lib/app.initializer.d.ts.map +1 -0
  478. package/lib/features/card/card.component.d.ts +11 -0
  479. package/lib/features/card/card.component.d.ts.map +1 -0
  480. package/lib/features/card-list/card-list.component.d.ts +23 -0
  481. package/lib/features/card-list/card-list.component.d.ts.map +1 -0
  482. package/lib/features/config-editor/config-editor.component.d.ts +39 -0
  483. package/lib/features/config-editor/config-editor.component.d.ts.map +1 -0
  484. package/lib/features/confirm/confirm.component.d.ts +23 -0
  485. package/lib/features/confirm/confirm.component.d.ts.map +1 -0
  486. package/lib/features/creation-summary-dialog/creation-summary-dialog.component.d.ts +31 -0
  487. package/lib/features/creation-summary-dialog/creation-summary-dialog.component.d.ts.map +1 -0
  488. package/lib/features/custom-tags/custom-tags.component.d.ts +20 -0
  489. package/lib/features/custom-tags/custom-tags.component.d.ts.map +1 -0
  490. package/lib/features/data-table/cells/table-cell-menu/table-cell-menu.component.d.ts +16 -0
  491. package/lib/features/data-table/cells/table-cell-menu/table-cell-menu.component.d.ts.map +1 -0
  492. package/lib/features/data-table/cells/table-cell-select/table-cell-select.component.d.ts +19 -0
  493. package/lib/features/data-table/cells/table-cell-select/table-cell-select.component.d.ts.map +1 -0
  494. package/lib/features/data-table/cells/table-cell-token/table-cell-token.component.d.ts +22 -0
  495. package/lib/features/data-table/cells/table-cell-token/table-cell-token.component.d.ts.map +1 -0
  496. package/lib/features/data-table/column-headers/table-column-default/table-column-default.component.d.ts +52 -0
  497. package/lib/features/data-table/column-headers/table-column-default/table-column-default.component.d.ts.map +1 -0
  498. package/lib/features/data-table/column-headers/table-column-filter/table-column-filter.component.d.ts +27 -0
  499. package/lib/features/data-table/column-headers/table-column-filter/table-column-filter.component.d.ts.map +1 -0
  500. package/lib/features/data-table/column-headers/table-column-menu/table-column-menu.component.d.ts +19 -0
  501. package/lib/features/data-table/column-headers/table-column-menu/table-column-menu.component.d.ts.map +1 -0
  502. package/lib/features/data-table/column-headers/table-column-select/table-column-select.component.d.ts +15 -0
  503. package/lib/features/data-table/column-headers/table-column-select/table-column-select.component.d.ts.map +1 -0
  504. package/lib/features/data-table/data-table-filter.service.d.ts +24 -0
  505. package/lib/features/data-table/data-table-filter.service.d.ts.map +1 -0
  506. package/lib/features/data-table/data-table.component.d.ts +154 -0
  507. package/lib/features/data-table/data-table.component.d.ts.map +1 -0
  508. package/lib/features/data-table/data-table.service.d.ts +20 -0
  509. package/lib/features/data-table/data-table.service.d.ts.map +1 -0
  510. package/lib/features/data-table/table-filter-bar/filter-bar.component.d.ts +22 -0
  511. package/lib/features/data-table/table-filter-bar/filter-bar.component.d.ts.map +1 -0
  512. package/lib/features/data-table/table-hidden-columns-bar/hidden-columns-bar.component.d.ts +10 -0
  513. package/lib/features/data-table/table-hidden-columns-bar/hidden-columns-bar.component.d.ts.map +1 -0
  514. package/lib/features/data-table/tooltips/os-tooltip.component.d.ts +15 -0
  515. package/lib/features/data-table/tooltips/os-tooltip.component.d.ts.map +1 -0
  516. package/lib/features/data-table/tooltips/sdk-tooltip.component.d.ts +15 -0
  517. package/lib/features/data-table/tooltips/sdk-tooltip.component.d.ts.map +1 -0
  518. package/lib/features/dynamic-widgets/boolean/boolean-toggle-input.component.d.ts +19 -0
  519. package/lib/features/dynamic-widgets/boolean/boolean-toggle-input.component.d.ts.map +1 -0
  520. package/lib/features/dynamic-widgets/checkbox-list/checkbox-list-input.component.d.ts +26 -0
  521. package/lib/features/dynamic-widgets/checkbox-list/checkbox-list-input.component.d.ts.map +1 -0
  522. package/lib/features/dynamic-widgets/forwarding-config/forwarding-config.component.d.ts +45 -0
  523. package/lib/features/dynamic-widgets/forwarding-config/forwarding-config.component.d.ts.map +1 -0
  524. package/lib/features/dynamic-widgets/forwarding-config/forwarding-config.service.d.ts +14 -0
  525. package/lib/features/dynamic-widgets/forwarding-config/forwarding-config.service.d.ts.map +1 -0
  526. package/lib/features/dynamic-widgets/number/number-input.component.d.ts +20 -0
  527. package/lib/features/dynamic-widgets/number/number-input.component.d.ts.map +1 -0
  528. package/lib/features/dynamic-widgets/object/object.component.d.ts +26 -0
  529. package/lib/features/dynamic-widgets/object/object.component.d.ts.map +1 -0
  530. package/lib/features/dynamic-widgets/password/password-input.component.d.ts +20 -0
  531. package/lib/features/dynamic-widgets/password/password-input.component.d.ts.map +1 -0
  532. package/lib/features/dynamic-widgets/port-ranges/port-ranges.component.d.ts +21 -0
  533. package/lib/features/dynamic-widgets/port-ranges/port-ranges.component.d.ts.map +1 -0
  534. package/lib/features/dynamic-widgets/protocol-address-port/protocol-address-port-input.component.d.ts +58 -0
  535. package/lib/features/dynamic-widgets/protocol-address-port/protocol-address-port-input.component.d.ts.map +1 -0
  536. package/lib/features/dynamic-widgets/selector/selector-input.component.d.ts +23 -0
  537. package/lib/features/dynamic-widgets/selector/selector-input.component.d.ts.map +1 -0
  538. package/lib/features/dynamic-widgets/string/string-input.component.d.ts +20 -0
  539. package/lib/features/dynamic-widgets/string/string-input.component.d.ts.map +1 -0
  540. package/lib/features/dynamic-widgets/text-list/text-list-input.component.d.ts +23 -0
  541. package/lib/features/dynamic-widgets/text-list/text-list-input.component.d.ts.map +1 -0
  542. package/lib/features/extendable/extendable.component.d.ts +15 -0
  543. package/lib/features/extendable/extendable.component.d.ts.map +1 -0
  544. package/lib/features/extendable/extensions-noop.service.d.ts +31 -0
  545. package/lib/features/extendable/extensions-noop.service.d.ts.map +1 -0
  546. package/lib/features/json-view/json-view.component.d.ts +37 -0
  547. package/lib/features/json-view/json-view.component.d.ts.map +1 -0
  548. package/lib/features/list-page-features/list-page-form/list-page-form.component.d.ts +35 -0
  549. package/lib/features/list-page-features/list-page-form/list-page-form.component.d.ts.map +1 -0
  550. package/lib/features/list-page-features/list-page-header/list-page-header.component.d.ts +13 -0
  551. package/lib/features/list-page-features/list-page-header/list-page-header.component.d.ts.map +1 -0
  552. package/lib/features/loading-indicator/loading-indicator.component.d.ts +9 -0
  553. package/lib/features/loading-indicator/loading-indicator.component.d.ts.map +1 -0
  554. package/lib/features/messaging/growler.component.d.ts +19 -0
  555. package/lib/features/messaging/growler.component.d.ts.map +1 -0
  556. package/lib/features/messaging/growler.model.d.ts +8 -0
  557. package/lib/features/messaging/growler.model.d.ts.map +1 -0
  558. package/lib/features/messaging/growler.module.d.ts +10 -0
  559. package/lib/features/messaging/growler.module.d.ts.map +1 -0
  560. package/lib/features/messaging/growler.service.d.ts +18 -0
  561. package/lib/features/messaging/growler.service.d.ts.map +1 -0
  562. package/lib/features/messaging/logger.service.d.ts +27 -0
  563. package/lib/features/messaging/logger.service.d.ts.map +1 -0
  564. package/lib/features/no-items/no-items.component.d.ts +19 -0
  565. package/lib/features/no-items/no-items.component.d.ts.map +1 -0
  566. package/lib/features/overrides/overrides.component.d.ts +33 -0
  567. package/lib/features/overrides/overrides.component.d.ts.map +1 -0
  568. package/lib/features/overrides/overrides.service.d.ts +18 -0
  569. package/lib/features/overrides/overrides.service.d.ts.map +1 -0
  570. package/lib/features/preview-list/preview-list.component.d.ts +24 -0
  571. package/lib/features/preview-list/preview-list.component.d.ts.map +1 -0
  572. package/lib/features/projectable-forms/configuration/configuration-form.component.d.ts +52 -0
  573. package/lib/features/projectable-forms/configuration/configuration-form.component.d.ts.map +1 -0
  574. package/lib/features/projectable-forms/configuration/configuration.service.d.ts +33 -0
  575. package/lib/features/projectable-forms/configuration/configuration.service.d.ts.map +1 -0
  576. package/lib/features/projectable-forms/edge-router/edge-router-form.component.d.ts +45 -0
  577. package/lib/features/projectable-forms/edge-router/edge-router-form.component.d.ts.map +1 -0
  578. package/lib/features/projectable-forms/edge-router/edge-router-form.service.d.ts +29 -0
  579. package/lib/features/projectable-forms/edge-router/edge-router-form.service.d.ts.map +1 -0
  580. package/lib/features/projectable-forms/form-field-container/form-field-container.component.d.ts +22 -0
  581. package/lib/features/projectable-forms/form-field-container/form-field-container.component.d.ts.map +1 -0
  582. package/lib/features/projectable-forms/form-field-toggle/form-field-toggle.component.d.ts +15 -0
  583. package/lib/features/projectable-forms/form-field-toggle/form-field-toggle.component.d.ts.map +1 -0
  584. package/lib/features/projectable-forms/form-header/form-header.component.d.ts +23 -0
  585. package/lib/features/projectable-forms/form-header/form-header.component.d.ts.map +1 -0
  586. package/lib/features/projectable-forms/identity/identity-form.component.d.ts +70 -0
  587. package/lib/features/projectable-forms/identity/identity-form.component.d.ts.map +1 -0
  588. package/lib/features/projectable-forms/identity/identity-form.service.d.ts +20 -0
  589. package/lib/features/projectable-forms/identity/identity-form.service.d.ts.map +1 -0
  590. package/lib/features/projectable-forms/projectable-form.class.d.ts +39 -0
  591. package/lib/features/projectable-forms/projectable-form.class.d.ts.map +1 -0
  592. package/lib/features/projectable-forms/service/service-form.component.d.ts +62 -0
  593. package/lib/features/projectable-forms/service/service-form.component.d.ts.map +1 -0
  594. package/lib/features/projectable-forms/service/service-form.service.d.ts +96 -0
  595. package/lib/features/projectable-forms/service/service-form.service.d.ts.map +1 -0
  596. package/lib/features/projectable-forms/service/simple-service/simple-service.component.d.ts +140 -0
  597. package/lib/features/projectable-forms/service/simple-service/simple-service.component.d.ts.map +1 -0
  598. package/lib/features/projectable-forms/service-policy/service-policy-form.component.d.ts +58 -0
  599. package/lib/features/projectable-forms/service-policy/service-policy-form.component.d.ts.map +1 -0
  600. package/lib/features/projectable-forms/service-policy/service-policy-form.service.d.ts +37 -0
  601. package/lib/features/projectable-forms/service-policy/service-policy-form.service.d.ts.map +1 -0
  602. package/lib/features/qr-code/qr-code.component.d.ts +40 -0
  603. package/lib/features/qr-code/qr-code.component.d.ts.map +1 -0
  604. package/lib/features/reset-enrollment/reset-enrollment.component.d.ts +27 -0
  605. package/lib/features/reset-enrollment/reset-enrollment.component.d.ts.map +1 -0
  606. package/lib/features/reset-enrollment/reset-enrollment.service.d.ts +13 -0
  607. package/lib/features/reset-enrollment/reset-enrollment.service.d.ts.map +1 -0
  608. package/lib/features/side-modal/side-modal.component.d.ts +15 -0
  609. package/lib/features/side-modal/side-modal.component.d.ts.map +1 -0
  610. package/lib/features/sidebars/side-banner/side-banner.component.d.ts +7 -0
  611. package/lib/features/sidebars/side-banner/side-banner.component.d.ts.map +1 -0
  612. package/lib/features/sidebars/side-navbar/side-navbar.component.d.ts +16 -0
  613. package/lib/features/sidebars/side-navbar/side-navbar.component.d.ts.map +1 -0
  614. package/lib/features/sidebars/side-toolbar/side-toolbar.component.d.ts +34 -0
  615. package/lib/features/sidebars/side-toolbar/side-toolbar.component.d.ts.map +1 -0
  616. package/lib/features/tag-selector/tag-selector.component.d.ts +59 -0
  617. package/lib/features/tag-selector/tag-selector.component.d.ts.map +1 -0
  618. package/lib/features/visualizer/identity-service-path/identity-service-path.component.d.ts +53 -0
  619. package/lib/features/visualizer/identity-service-path/identity-service-path.component.d.ts.map +1 -0
  620. package/lib/features/visualizer/identity-service-path/identity-service-path.helper.d.ts +21 -0
  621. package/lib/features/visualizer/identity-service-path/identity-service-path.helper.d.ts.map +1 -0
  622. package/lib/features/wrappers/node-wrapper.service.d.ts +24 -0
  623. package/lib/features/wrappers/node-wrapper.service.d.ts.map +1 -0
  624. package/lib/features/wrappers/zac-wrapper-service.class.d.ts +38 -0
  625. package/lib/features/wrappers/zac-wrapper-service.class.d.ts.map +1 -0
  626. package/lib/features/wrappers/zac-wrapper.component.d.ts +31 -0
  627. package/lib/features/wrappers/zac-wrapper.component.d.ts.map +1 -0
  628. package/lib/features/wrappers/zac-wrapper.service.d.ts +56 -0
  629. package/lib/features/wrappers/zac-wrapper.service.d.ts.map +1 -0
  630. package/lib/models/config.d.ts +6 -0
  631. package/lib/models/config.d.ts.map +1 -0
  632. package/lib/models/edge-router.d.ts +10 -0
  633. package/lib/models/edge-router.d.ts.map +1 -0
  634. package/lib/models/identity.d.ts +16 -0
  635. package/lib/models/identity.d.ts.map +1 -0
  636. package/lib/models/service-policy.d.ts +9 -0
  637. package/lib/models/service-policy.d.ts.map +1 -0
  638. package/lib/models/service.d.ts +9 -0
  639. package/lib/models/service.d.ts.map +1 -0
  640. package/lib/pages/configurations/configurations-page.component.d.ts +29 -0
  641. package/lib/pages/configurations/configurations-page.component.d.ts.map +1 -0
  642. package/lib/pages/configurations/configurations-page.service.d.ts +78 -0
  643. package/lib/pages/configurations/configurations-page.service.d.ts.map +1 -0
  644. package/lib/pages/edge-routers/edge-routers-page.component.d.ts +38 -0
  645. package/lib/pages/edge-routers/edge-routers-page.component.d.ts.map +1 -0
  646. package/lib/pages/edge-routers/edge-routers-page.service.d.ts +47 -0
  647. package/lib/pages/edge-routers/edge-routers-page.service.d.ts.map +1 -0
  648. package/lib/pages/identities/identities-page.component.d.ts +44 -0
  649. package/lib/pages/identities/identities-page.component.d.ts.map +1 -0
  650. package/lib/pages/identities/identities-page.service.d.ts +54 -0
  651. package/lib/pages/identities/identities-page.service.d.ts.map +1 -0
  652. package/lib/pages/service-policies/service-policies-page.component.d.ts +36 -0
  653. package/lib/pages/service-policies/service-policies-page.component.d.ts.map +1 -0
  654. package/lib/pages/service-policies/service-policies-page.service.d.ts +63 -0
  655. package/lib/pages/service-policies/service-policies-page.service.d.ts.map +1 -0
  656. package/lib/pages/services/services-page.component.d.ts +37 -0
  657. package/lib/pages/services/services-page.component.d.ts.map +1 -0
  658. package/lib/pages/services/services-page.service.d.ts +46 -0
  659. package/lib/pages/services/services-page.service.d.ts.map +1 -0
  660. package/lib/safe.pipe.d.ts +11 -0
  661. package/lib/safe.pipe.d.ts.map +1 -0
  662. package/lib/services/console-events.service.d.ts +12 -0
  663. package/lib/services/console-events.service.d.ts.map +1 -0
  664. package/lib/services/csv-download.service.d.ts +11 -0
  665. package/lib/services/csv-download.service.d.ts.map +1 -0
  666. package/lib/services/deactivate-guard.service.d.ts +14 -0
  667. package/lib/services/deactivate-guard.service.d.ts.map +1 -0
  668. package/lib/services/login-service.class.d.ts +22 -0
  669. package/lib/services/login-service.class.d.ts.map +1 -0
  670. package/lib/services/node-data.service.d.ts +32 -0
  671. package/lib/services/node-data.service.d.ts.map +1 -0
  672. package/lib/services/noop-login.service.d.ts +23 -0
  673. package/lib/services/noop-login.service.d.ts.map +1 -0
  674. package/lib/services/schema.service.d.ts +63 -0
  675. package/lib/services/schema.service.d.ts.map +1 -0
  676. package/lib/services/settings-service.class.d.ts +35 -0
  677. package/lib/services/settings-service.class.d.ts.map +1 -0
  678. package/lib/services/settings.service.d.ts +18 -0
  679. package/lib/services/settings.service.d.ts.map +1 -0
  680. package/lib/services/tab-name.service.d.ts +20 -0
  681. package/lib/services/tab-name.service.d.ts.map +1 -0
  682. package/lib/services/validation.service.d.ts +13 -0
  683. package/lib/services/validation.service.d.ts.map +1 -0
  684. package/lib/services/ziti-controller-data.service.d.ts +32 -0
  685. package/lib/services/ziti-controller-data.service.d.ts.map +1 -0
  686. package/lib/services/ziti-data.service.d.ts +40 -0
  687. package/lib/services/ziti-data.service.d.ts.map +1 -0
  688. package/lib/services/ziti-domain-controller.service.d.ts +13 -0
  689. package/lib/services/ziti-domain-controller.service.d.ts.map +1 -0
  690. package/lib/shared/list-page-component.class.d.ts +52 -0
  691. package/lib/shared/list-page-component.class.d.ts.map +1 -0
  692. package/lib/shared/list-page-service.class.d.ts +47 -0
  693. package/lib/shared/list-page-service.class.d.ts.map +1 -0
  694. package/lib/version.d.ts +4 -0
  695. package/lib/version.d.ts.map +1 -0
  696. package/lib/zac-routing.module.d.ts +8 -0
  697. package/lib/zac-routing.module.d.ts.map +1 -0
  698. package/lib/ziti-console-lib.module.d.ts +85 -0
  699. package/lib/ziti-console-lib.module.d.ts.map +1 -0
  700. package/lib/ziti-console.constants.d.ts +4 -0
  701. package/lib/ziti-console.constants.d.ts.map +1 -0
  702. package/openziti-ziti-console-lib.d.ts.map +1 -0
  703. package/package.json +48 -0
  704. package/public-api.d.ts +68 -0
  705. package/public-api.d.ts.map +1 -0
@@ -0,0 +1,143 @@
1
+ /*
2
+ Copyright NetFoundry Inc.
3
+
4
+ Licensed under the Apache License, Version 2.0 (the "License");
5
+ you may not use this file except in compliance with the License.
6
+ You may obtain a copy of the License at
7
+
8
+ https://www.apache.org/licenses/LICENSE-2.0
9
+
10
+ Unless required by applicable law or agreed to in writing, software
11
+ distributed under the License is distributed on an "AS IS" BASIS,
12
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ See the License for the specific language governing permissions and
14
+ limitations under the License.
15
+ */
16
+ import { Component, EventEmitter, Input, Output, Inject, Optional } from '@angular/core';
17
+ import moment from 'moment';
18
+ import { isEmpty } from 'lodash';
19
+ import { MAT_DIALOG_DATA } from "@angular/material/dialog";
20
+ import * as i0 from "@angular/core";
21
+ import * as i1 from "@angular/material/dialog";
22
+ import * as i2 from "../../pages/identities/identities-page.service";
23
+ import * as i3 from "../../pages/edge-routers/edge-routers-page.service";
24
+ import * as i4 from "@angular/common";
25
+ import * as i5 from "angularx-qrcode";
26
+ class QrCodeComponent {
27
+ constructor(dialogRef, dialogForm, data, identitiesSvc, edgeRoutersSvc) {
28
+ this.dialogRef = dialogRef;
29
+ this.dialogForm = dialogForm;
30
+ this.data = data;
31
+ this.identitiesSvc = identitiesSvc;
32
+ this.edgeRoutersSvc = edgeRoutersSvc;
33
+ this.identity = {};
34
+ this.type = 'identity';
35
+ this.qrOnly = false;
36
+ this.canExpand = false;
37
+ this.doRefresh = new EventEmitter();
38
+ this.qrCodeSize = 200;
39
+ this.isModal = false;
40
+ if (!isEmpty(data)) {
41
+ this.jwt = data.jwt;
42
+ this.token = data.token;
43
+ this.expiration = data.expiration;
44
+ this.qrCodeSize = data.qrCodeSize || 200;
45
+ this.jwtExpired = this.getJwtExpired();
46
+ this.expirationDate = this.getExpirationDate();
47
+ this.isModal = true;
48
+ this.identity = data.identity;
49
+ this.qrOnly = data.qrOnly;
50
+ }
51
+ }
52
+ get hasJWT() {
53
+ return !isEmpty(this.jwt);
54
+ }
55
+ get showResetToken() {
56
+ return this.authenticators?.cert?.id || this.authenticators?.updb?.id;
57
+ }
58
+ get showReissueToken() {
59
+ return (this.identity?.enrollment?.ott?.id || this.identity?.enrollment?.updb?.id) && moment(this.expiration).isBefore();
60
+ }
61
+ get showReenrollToken() {
62
+ return this.jwtExpired && this.type === 'router';
63
+ }
64
+ getJwtExpired() {
65
+ return moment(this.expiration).isBefore();
66
+ }
67
+ getExpirationDate() {
68
+ return moment(this.expiration).local().format('M/D/YY h:mm a');
69
+ }
70
+ reissue() {
71
+ const dialogRef = this.identitiesSvc.reissueJWT(this.identity);
72
+ dialogRef.afterClosed().subscribe((result) => {
73
+ if (result) {
74
+ this.doRefresh.emit(true);
75
+ }
76
+ });
77
+ }
78
+ reenroll() {
79
+ this.edgeRoutersSvc.reenroll(this.identity).then(() => {
80
+ this.doRefresh.emit(true);
81
+ });
82
+ }
83
+ reset() {
84
+ const dialogRef = this.identitiesSvc.resetJWT(this.identity);
85
+ dialogRef.afterClosed().subscribe((result) => {
86
+ if (result) {
87
+ this.doRefresh.emit(true);
88
+ }
89
+ });
90
+ }
91
+ expandQRCode() {
92
+ const data = {
93
+ jwt: this.jwt,
94
+ expiration: this.expiration,
95
+ qrCodeSize: 400,
96
+ identity: this.identity,
97
+ qrOnly: true
98
+ };
99
+ const dialogRef = this.dialogForm.open(QrCodeComponent, {
100
+ data: data,
101
+ autoFocus: false,
102
+ });
103
+ }
104
+ ngOnChanges() {
105
+ this.jwtExpired = this.getJwtExpired();
106
+ this.expirationDate = this.getExpirationDate();
107
+ }
108
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: QrCodeComponent, deps: [{ token: i1.MatDialogRef, optional: true }, { token: i1.MatDialog, optional: true }, { token: MAT_DIALOG_DATA, optional: true }, { token: i2.IdentitiesPageService }, { token: i3.EdgeRoutersPageService }], target: i0.ɵɵFactoryTarget.Component }); }
109
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: QrCodeComponent, selector: "lib-qr-code", inputs: { jwt: "jwt", token: "token", expiration: "expiration", identity: "identity", type: "type", authenticators: "authenticators", qrOnly: "qrOnly", canExpand: "canExpand" }, outputs: { doRefresh: "doRefresh" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"qr-code-container\" [ngClass]=\"{'modal-view': isModal}\">\n <div *ngIf=\"!qrOnly\" class=\"qr-code-buttons\">\n <span class=\"info-text\" *ngIf=\"hasJWT && !jwtExpired && type !== 'router'\">TO REGISTER THIS IDENTITY</span>\n <span class=\"info-text\" *ngIf=\"hasJWT && !jwtExpired && type === 'router'\">TO REGISTER THIS ROUTER</span>\n <div (click)=\"identitiesSvc.downloadJWT(jwt, identity.name)\" *ngIf=\"hasJWT && !jwtExpired && type !== 'router'\" class=\"download-button\">\n <div class=\"download-key\"></div>\n <div>DOWNLOAD ENROLLMENT JWT</div>\n <div class=\"tap-to-download\"></div>\n </div>\n <div (click)=\"identitiesSvc.copyToken(token)\" *ngIf=\"!jwtExpired && type === 'router'\" class=\"download-button\" style=\"background-color: #232f3e!important;\">\n <div class=\"download-key\"></div>\n <div>COPY ENROLLMENT TOKEN</div>\n <div class=\"tap-to-download\"></div>\n </div>\n <div (click)=\"identitiesSvc.resetJWT(identity)\" *ngIf=\"showResetToken\" class=\"download-button\" >\n <div class=\"download-key\"></div>\n <div>RESET ENROLLMENT</div>\n <div class=\"tap-to-download\"></div>\n </div>\n <div (click)=\"reissue()\" *ngIf=\"showReissueToken\" class=\"download-button\" >\n <div class=\"download-key\"></div>\n <div>REISSUE ENROLLMENT</div>\n <div class=\"tap-to-download\"></div>\n </div>\n <span class=\"info-text\" *ngIf=\"hasJWT && !jwtExpired && type !== 'router'\">OR SCAN QR CODE</span>\n </div>\n <qrcode\n *ngIf=\"!jwtExpired && type !== 'router'\"\n [errorCorrectionLevel]=\"'M'\" [qrdata]=\"jwt\"\n [width]=\"qrCodeSize\" (click)=\"expandQRCode()\"\n [ngClass]=\"{'qr-code-expandable': canExpand}\"\n ></qrcode>\n <div *ngIf=\"!qrOnly\" class=\"qr-code-buttons\">\n <span class=\"info-text\" *ngIf=\"!jwtExpired && type === 'router'\">OR</span>\n <div (click)=\"identitiesSvc.downloadJWT(jwt, identity.name)\" *ngIf=\"!jwtExpired && type === 'router'\" class=\"download-button\">\n <div class=\"download-key\"></div>\n <div>DOWNLOAD ENROLLMENT JWT</div>\n <div class=\"tap-to-download\"></div>\n </div>\n <span class=\"info-text\" *ngIf=\"!showResetToken\">{{jwtExpired ? 'REGISTRATION EXPIRED' : 'EXPIRES'}} {{expirationDate}}</span>\n <div (click)=\"reenroll()\" *ngIf=\"showReenrollToken\" class=\"download-button\" >\n <div class=\"download-key\"></div>\n <div>REISSUE ENROLLMENT</div>\n <div class=\"tap-to-download\"></div>\n </div>\n </div>\n</div>\n", styles: [".qr-code-container{display:flex;flex-direction:column;justify-content:center;align-items:center}.qr-code-container .info-text{color:var(--red);font-weight:600}.qr-code-container .download-button{margin:10px 0}.qr-code-container.modal-view{width:500px;background-color:var(--background);padding:20px;border-radius:15px}.qr-code-container .qr-code-buttons{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%}.qr-code-container .qr-code-expandable{cursor:pointer;transition:transform .25s}.qr-code-container .qr-code-expandable:hover{transform:scale(1.15)}\n"], dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.QRCodeComponent, selector: "qrcode", inputs: ["allowEmptyString", "colorDark", "colorLight", "cssClass", "elementType", "errorCorrectionLevel", "imageSrc", "imageHeight", "imageWidth", "margin", "qrdata", "scale", "version", "width", "alt", "ariaLabel", "title"], outputs: ["qrCodeURL"] }] }); }
110
+ }
111
+ export { QrCodeComponent };
112
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: QrCodeComponent, decorators: [{
113
+ type: Component,
114
+ args: [{ selector: 'lib-qr-code', template: "<div class=\"qr-code-container\" [ngClass]=\"{'modal-view': isModal}\">\n <div *ngIf=\"!qrOnly\" class=\"qr-code-buttons\">\n <span class=\"info-text\" *ngIf=\"hasJWT && !jwtExpired && type !== 'router'\">TO REGISTER THIS IDENTITY</span>\n <span class=\"info-text\" *ngIf=\"hasJWT && !jwtExpired && type === 'router'\">TO REGISTER THIS ROUTER</span>\n <div (click)=\"identitiesSvc.downloadJWT(jwt, identity.name)\" *ngIf=\"hasJWT && !jwtExpired && type !== 'router'\" class=\"download-button\">\n <div class=\"download-key\"></div>\n <div>DOWNLOAD ENROLLMENT JWT</div>\n <div class=\"tap-to-download\"></div>\n </div>\n <div (click)=\"identitiesSvc.copyToken(token)\" *ngIf=\"!jwtExpired && type === 'router'\" class=\"download-button\" style=\"background-color: #232f3e!important;\">\n <div class=\"download-key\"></div>\n <div>COPY ENROLLMENT TOKEN</div>\n <div class=\"tap-to-download\"></div>\n </div>\n <div (click)=\"identitiesSvc.resetJWT(identity)\" *ngIf=\"showResetToken\" class=\"download-button\" >\n <div class=\"download-key\"></div>\n <div>RESET ENROLLMENT</div>\n <div class=\"tap-to-download\"></div>\n </div>\n <div (click)=\"reissue()\" *ngIf=\"showReissueToken\" class=\"download-button\" >\n <div class=\"download-key\"></div>\n <div>REISSUE ENROLLMENT</div>\n <div class=\"tap-to-download\"></div>\n </div>\n <span class=\"info-text\" *ngIf=\"hasJWT && !jwtExpired && type !== 'router'\">OR SCAN QR CODE</span>\n </div>\n <qrcode\n *ngIf=\"!jwtExpired && type !== 'router'\"\n [errorCorrectionLevel]=\"'M'\" [qrdata]=\"jwt\"\n [width]=\"qrCodeSize\" (click)=\"expandQRCode()\"\n [ngClass]=\"{'qr-code-expandable': canExpand}\"\n ></qrcode>\n <div *ngIf=\"!qrOnly\" class=\"qr-code-buttons\">\n <span class=\"info-text\" *ngIf=\"!jwtExpired && type === 'router'\">OR</span>\n <div (click)=\"identitiesSvc.downloadJWT(jwt, identity.name)\" *ngIf=\"!jwtExpired && type === 'router'\" class=\"download-button\">\n <div class=\"download-key\"></div>\n <div>DOWNLOAD ENROLLMENT JWT</div>\n <div class=\"tap-to-download\"></div>\n </div>\n <span class=\"info-text\" *ngIf=\"!showResetToken\">{{jwtExpired ? 'REGISTRATION EXPIRED' : 'EXPIRES'}} {{expirationDate}}</span>\n <div (click)=\"reenroll()\" *ngIf=\"showReenrollToken\" class=\"download-button\" >\n <div class=\"download-key\"></div>\n <div>REISSUE ENROLLMENT</div>\n <div class=\"tap-to-download\"></div>\n </div>\n </div>\n</div>\n", styles: [".qr-code-container{display:flex;flex-direction:column;justify-content:center;align-items:center}.qr-code-container .info-text{color:var(--red);font-weight:600}.qr-code-container .download-button{margin:10px 0}.qr-code-container.modal-view{width:500px;background-color:var(--background);padding:20px;border-radius:15px}.qr-code-container .qr-code-buttons{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%}.qr-code-container .qr-code-expandable{cursor:pointer;transition:transform .25s}.qr-code-container .qr-code-expandable:hover{transform:scale(1.15)}\n"] }]
115
+ }], ctorParameters: function () { return [{ type: i1.MatDialogRef, decorators: [{
116
+ type: Optional
117
+ }] }, { type: i1.MatDialog, decorators: [{
118
+ type: Optional
119
+ }] }, { type: undefined, decorators: [{
120
+ type: Optional
121
+ }, {
122
+ type: Inject,
123
+ args: [MAT_DIALOG_DATA]
124
+ }] }, { type: i2.IdentitiesPageService }, { type: i3.EdgeRoutersPageService }]; }, propDecorators: { jwt: [{
125
+ type: Input
126
+ }], token: [{
127
+ type: Input
128
+ }], expiration: [{
129
+ type: Input
130
+ }], identity: [{
131
+ type: Input
132
+ }], type: [{
133
+ type: Input
134
+ }], authenticators: [{
135
+ type: Input
136
+ }], qrOnly: [{
137
+ type: Input
138
+ }], canExpand: [{
139
+ type: Input
140
+ }], doRefresh: [{
141
+ type: Output
142
+ }] } });
143
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXItY29kZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96aXRpLWNvbnNvbGUtbGliL3NyYy9saWIvZmVhdHVyZXMvcXItY29kZS9xci1jb2RlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ppdGktY29uc29sZS1saWIvc3JjL2xpYi9mZWF0dXJlcy9xci1jb2RlL3FyLWNvZGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0VBY0U7QUFFRixPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFhLE1BQU0sRUFBRSxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDbEcsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBQzVCLE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxRQUFRLENBQUM7QUFDL0IsT0FBTyxFQUFDLGVBQWUsRUFBMEIsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7OztBQUtsRixNQUthLGVBQWU7SUFpQjFCLFlBQ3dCLFNBQXdDLEVBQ3hDLFVBQXFCLEVBQ0csSUFBUyxFQUM5QyxhQUFvQyxFQUNwQyxjQUFzQztRQUp6QixjQUFTLEdBQVQsU0FBUyxDQUErQjtRQUN4QyxlQUFVLEdBQVYsVUFBVSxDQUFXO1FBQ0csU0FBSSxHQUFKLElBQUksQ0FBSztRQUM5QyxrQkFBYSxHQUFiLGFBQWEsQ0FBdUI7UUFDcEMsbUJBQWMsR0FBZCxjQUFjLENBQXdCO1FBakJ4QyxhQUFRLEdBQVEsRUFBRSxDQUFDO1FBQ25CLFNBQUksR0FBVyxVQUFVLENBQUM7UUFFMUIsV0FBTSxHQUFZLEtBQUssQ0FBQztRQUN4QixjQUFTLEdBQVksS0FBSyxDQUFDO1FBQzFCLGNBQVMsR0FBMEIsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUl6RSxlQUFVLEdBQUcsR0FBRyxDQUFDO1FBQ2pCLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFVZCxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2xCLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQztZQUNwQixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7WUFDeEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDO1lBQ2xDLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFVBQVUsSUFBSSxHQUFHLENBQUM7WUFDekMsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDdkMsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztZQUMvQyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztZQUNwQixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7WUFDOUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1NBQzNCO0lBQ0gsQ0FBQztJQUVELElBQUksTUFBTTtRQUNSLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFFRCxJQUFJLGNBQWM7UUFDaEIsT0FBTyxJQUFJLENBQUMsY0FBYyxFQUFFLElBQUksRUFBRSxFQUFFLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDO0lBQ3hFLENBQUM7SUFFRCxJQUFJLGdCQUFnQjtRQUNsQixPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLEVBQUUsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUMzSCxDQUFDO0lBRUQsSUFBSSxpQkFBaUI7UUFDbkIsT0FBTyxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssUUFBUSxDQUFDO0lBQ25ELENBQUM7SUFFRCxhQUFhO1FBQ1gsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzVDLENBQUM7SUFFRCxpQkFBaUI7UUFDZixPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFFRCxPQUFPO1FBQ0wsTUFBTSxTQUFTLEdBQXNCLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNsRixTQUFTLENBQUMsV0FBVyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDekMsSUFBSSxNQUFNLEVBQUU7Z0JBQ1YsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDM0I7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDcEQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDNUIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsS0FBSztRQUNILE1BQU0sU0FBUyxHQUFzQixJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDaEYsU0FBUyxDQUFDLFdBQVcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQzNDLElBQUksTUFBTSxFQUFFO2dCQUNWLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQzNCO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsWUFBWTtRQUNWLE1BQU0sSUFBSSxHQUFHO1lBQ1gsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHO1lBQ2IsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVO1lBQzNCLFVBQVUsRUFBRSxHQUFHO1lBQ2YsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ3ZCLE1BQU0sRUFBRSxJQUFJO1NBQ2IsQ0FBQztRQUNGLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRTtZQUN0RCxJQUFJLEVBQUUsSUFBSTtZQUNWLFNBQVMsRUFBRSxLQUFLO1NBQ2pCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDdkMsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztJQUNqRCxDQUFDOytHQXZHVSxlQUFlLHVHQW9CRixlQUFlO21HQXBCNUIsZUFBZSwrUkM3QjVCLG91RkErQ0E7O1NEbEJhLGVBQWU7NEZBQWYsZUFBZTtrQkFMM0IsU0FBUzsrQkFDRSxhQUFhOzswQkFzQmxCLFFBQVE7OzBCQUNSLFFBQVE7OzBCQUNSLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsZUFBZTtxSEFsQjlCLEdBQUc7c0JBQVgsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNJLFNBQVM7c0JBQWxCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICAgIENvcHlyaWdodCBOZXRGb3VuZHJ5IEluYy5cblxuICAgIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gICAgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICAgIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuXG4gICAgaHR0cHM6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuXG4gICAgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICAgIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAgICBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAgICBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gICAgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuXG5pbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0LCBPbkNoYW5nZXMsIEluamVjdCwgT3B0aW9uYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQnO1xuaW1wb3J0IHtpc0VtcHR5fSBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHtNQVRfRElBTE9HX0RBVEEsIE1hdERpYWxvZywgTWF0RGlhbG9nUmVmfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nXCI7XG5pbXBvcnQge0lkZW50aXRpZXNQYWdlU2VydmljZX0gZnJvbSBcIi4uLy4uL3BhZ2VzL2lkZW50aXRpZXMvaWRlbnRpdGllcy1wYWdlLnNlcnZpY2VcIjtcbmltcG9ydCB7RGlhbG9nUmVmfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL2RpYWxvZ1wiO1xuaW1wb3J0IHtFZGdlUm91dGVyc1BhZ2VTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vcGFnZXMvZWRnZS1yb3V0ZXJzL2VkZ2Utcm91dGVycy1wYWdlLnNlcnZpY2VcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGliLXFyLWNvZGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vcXItY29kZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3FyLWNvZGUuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBRckNvZGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuXG4gIEBJbnB1dCgpIGp3dDogYW55O1xuICBASW5wdXQoKSB0b2tlbjogYW55O1xuICBASW5wdXQoKSBleHBpcmF0aW9uOiBhbnk7XG4gIEBJbnB1dCgpIGlkZW50aXR5OiBhbnkgPSB7fTtcbiAgQElucHV0KCkgdHlwZTogc3RyaW5nID0gJ2lkZW50aXR5JztcbiAgQElucHV0KCkgYXV0aGVudGljYXRvcnM6IGFueTtcbiAgQElucHV0KCkgcXJPbmx5OiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIGNhbkV4cGFuZDogYm9vbGVhbiA9IGZhbHNlO1xuICBAT3V0cHV0KCkgZG9SZWZyZXNoOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgand0RXhwaXJlZDtcbiAgZXhwaXJhdGlvbkRhdGU7XG4gIHFyQ29kZVNpemUgPSAyMDA7XG4gIGlzTW9kYWwgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICAgIEBPcHRpb25hbCgpIHByaXZhdGUgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8UXJDb2RlQ29tcG9uZW50PixcbiAgICAgIEBPcHRpb25hbCgpIHByaXZhdGUgZGlhbG9nRm9ybTogTWF0RGlhbG9nLFxuICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChNQVRfRElBTE9HX0RBVEEpIHB1YmxpYyBkYXRhOiBhbnksXG4gICAgICBwdWJsaWMgaWRlbnRpdGllc1N2YzogSWRlbnRpdGllc1BhZ2VTZXJ2aWNlLFxuICAgICAgcHVibGljIGVkZ2VSb3V0ZXJzU3ZjOiBFZGdlUm91dGVyc1BhZ2VTZXJ2aWNlLFxuICApXG4gIHtcbiAgICBpZiAoIWlzRW1wdHkoZGF0YSkpIHtcbiAgICAgIHRoaXMuand0ID0gZGF0YS5qd3Q7XG4gICAgICB0aGlzLnRva2VuID0gZGF0YS50b2tlbjtcbiAgICAgIHRoaXMuZXhwaXJhdGlvbiA9IGRhdGEuZXhwaXJhdGlvbjtcbiAgICAgIHRoaXMucXJDb2RlU2l6ZSA9IGRhdGEucXJDb2RlU2l6ZSB8fCAyMDA7XG4gICAgICB0aGlzLmp3dEV4cGlyZWQgPSB0aGlzLmdldEp3dEV4cGlyZWQoKTtcbiAgICAgIHRoaXMuZXhwaXJhdGlvbkRhdGUgPSB0aGlzLmdldEV4cGlyYXRpb25EYXRlKCk7XG4gICAgICB0aGlzLmlzTW9kYWwgPSB0cnVlO1xuICAgICAgdGhpcy5pZGVudGl0eSA9IGRhdGEuaWRlbnRpdHk7XG4gICAgICB0aGlzLnFyT25seSA9IGRhdGEucXJPbmx5O1xuICAgIH1cbiAgfVxuXG4gIGdldCBoYXNKV1QoKSB7XG4gICAgcmV0dXJuICFpc0VtcHR5KHRoaXMuand0KTtcbiAgfVxuXG4gIGdldCBzaG93UmVzZXRUb2tlbigpIHtcbiAgICByZXR1cm4gdGhpcy5hdXRoZW50aWNhdG9ycz8uY2VydD8uaWQgfHwgdGhpcy5hdXRoZW50aWNhdG9ycz8udXBkYj8uaWQ7XG4gIH1cblxuICBnZXQgc2hvd1JlaXNzdWVUb2tlbigpIHtcbiAgICByZXR1cm4gKHRoaXMuaWRlbnRpdHk/LmVucm9sbG1lbnQ/Lm90dD8uaWQgfHwgdGhpcy5pZGVudGl0eT8uZW5yb2xsbWVudD8udXBkYj8uaWQpICYmIG1vbWVudCh0aGlzLmV4cGlyYXRpb24pLmlzQmVmb3JlKCk7XG4gIH1cblxuICBnZXQgc2hvd1JlZW5yb2xsVG9rZW4oKSB7XG4gICAgcmV0dXJuIHRoaXMuand0RXhwaXJlZCAmJiB0aGlzLnR5cGUgPT09ICdyb3V0ZXInO1xuICB9XG5cbiAgZ2V0Snd0RXhwaXJlZCgpIHtcbiAgICByZXR1cm4gbW9tZW50KHRoaXMuZXhwaXJhdGlvbikuaXNCZWZvcmUoKTtcbiAgfVxuXG4gIGdldEV4cGlyYXRpb25EYXRlKCkge1xuICAgIHJldHVybiBtb21lbnQodGhpcy5leHBpcmF0aW9uKS5sb2NhbCgpLmZvcm1hdCgnTS9EL1lZIGg6bW0gYScpO1xuICB9XG5cbiAgcmVpc3N1ZSgpIHtcbiAgICBjb25zdCBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxhbnk+ID0gdGhpcy5pZGVudGl0aWVzU3ZjLnJlaXNzdWVKV1QodGhpcy5pZGVudGl0eSk7XG4gICAgZGlhbG9nUmVmLmFmdGVyQ2xvc2VkKCkuc3Vic2NyaWJlKChyZXN1bHQpID0+IHtcbiAgICAgICAgaWYgKHJlc3VsdCkge1xuICAgICAgICAgIHRoaXMuZG9SZWZyZXNoLmVtaXQodHJ1ZSk7XG4gICAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHJlZW5yb2xsKCkge1xuICAgIHRoaXMuZWRnZVJvdXRlcnNTdmMucmVlbnJvbGwodGhpcy5pZGVudGl0eSkudGhlbigoKSA9PiB7XG4gICAgICB0aGlzLmRvUmVmcmVzaC5lbWl0KHRydWUpO1xuICAgIH0pO1xuICB9XG5cbiAgcmVzZXQoKSB7XG4gICAgY29uc3QgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8YW55PiA9IHRoaXMuaWRlbnRpdGllc1N2Yy5yZXNldEpXVCh0aGlzLmlkZW50aXR5KTtcbiAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoKHJlc3VsdCkgPT4ge1xuICAgICAgaWYgKHJlc3VsdCkge1xuICAgICAgICB0aGlzLmRvUmVmcmVzaC5lbWl0KHRydWUpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgZXhwYW5kUVJDb2RlKCkge1xuICAgIGNvbnN0IGRhdGEgPSB7XG4gICAgICBqd3Q6IHRoaXMuand0LFxuICAgICAgZXhwaXJhdGlvbjogdGhpcy5leHBpcmF0aW9uLFxuICAgICAgcXJDb2RlU2l6ZTogNDAwLFxuICAgICAgaWRlbnRpdHk6IHRoaXMuaWRlbnRpdHksXG4gICAgICBxck9ubHk6IHRydWVcbiAgICB9O1xuICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nRm9ybS5vcGVuKFFyQ29kZUNvbXBvbmVudCwge1xuICAgICAgZGF0YTogZGF0YSxcbiAgICAgIGF1dG9Gb2N1czogZmFsc2UsXG4gICAgfSk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcygpIHtcbiAgICB0aGlzLmp3dEV4cGlyZWQgPSB0aGlzLmdldEp3dEV4cGlyZWQoKTtcbiAgICB0aGlzLmV4cGlyYXRpb25EYXRlID0gdGhpcy5nZXRFeHBpcmF0aW9uRGF0ZSgpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicXItY29kZS1jb250YWluZXJcIiBbbmdDbGFzc109XCJ7J21vZGFsLXZpZXcnOiBpc01vZGFsfVwiPlxuICAgIDxkaXYgKm5nSWY9XCIhcXJPbmx5XCIgY2xhc3M9XCJxci1jb2RlLWJ1dHRvbnNcIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJpbmZvLXRleHRcIiAqbmdJZj1cImhhc0pXVCAmJiAhand0RXhwaXJlZCAmJiB0eXBlICE9PSAncm91dGVyJ1wiPlRPIFJFR0lTVEVSIFRISVMgSURFTlRJVFk8L3NwYW4+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiaW5mby10ZXh0XCIgKm5nSWY9XCJoYXNKV1QgJiYgIWp3dEV4cGlyZWQgJiYgdHlwZSA9PT0gJ3JvdXRlcidcIj5UTyBSRUdJU1RFUiBUSElTIFJPVVRFUjwvc3Bhbj5cbiAgICAgICAgPGRpdiAoY2xpY2spPVwiaWRlbnRpdGllc1N2Yy5kb3dubG9hZEpXVChqd3QsIGlkZW50aXR5Lm5hbWUpXCIgKm5nSWY9XCJoYXNKV1QgJiYgIWp3dEV4cGlyZWQgJiYgdHlwZSAhPT0gJ3JvdXRlcidcIiBjbGFzcz1cImRvd25sb2FkLWJ1dHRvblwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRvd25sb2FkLWtleVwiPjwvZGl2PlxuICAgICAgICAgICAgPGRpdj5ET1dOTE9BRCBFTlJPTExNRU5UIEpXVDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRhcC10by1kb3dubG9hZFwiPjwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiAoY2xpY2spPVwiaWRlbnRpdGllc1N2Yy5jb3B5VG9rZW4odG9rZW4pXCIgKm5nSWY9XCIhand0RXhwaXJlZCAmJiB0eXBlID09PSAncm91dGVyJ1wiIGNsYXNzPVwiZG93bmxvYWQtYnV0dG9uXCIgc3R5bGU9XCJiYWNrZ3JvdW5kLWNvbG9yOiAjMjMyZjNlIWltcG9ydGFudDtcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkb3dubG9hZC1rZXlcIj48L2Rpdj5cbiAgICAgICAgICAgIDxkaXY+Q09QWSBFTlJPTExNRU5UIFRPS0VOPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGFwLXRvLWRvd25sb2FkXCI+PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IChjbGljayk9XCJpZGVudGl0aWVzU3ZjLnJlc2V0SldUKGlkZW50aXR5KVwiICpuZ0lmPVwic2hvd1Jlc2V0VG9rZW5cIiBjbGFzcz1cImRvd25sb2FkLWJ1dHRvblwiID5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkb3dubG9hZC1rZXlcIj48L2Rpdj5cbiAgICAgICAgICAgIDxkaXY+UkVTRVQgRU5ST0xMTUVOVDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRhcC10by1kb3dubG9hZFwiPjwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiAoY2xpY2spPVwicmVpc3N1ZSgpXCIgKm5nSWY9XCJzaG93UmVpc3N1ZVRva2VuXCIgY2xhc3M9XCJkb3dubG9hZC1idXR0b25cIiA+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZG93bmxvYWQta2V5XCI+PC9kaXY+XG4gICAgICAgICAgICA8ZGl2PlJFSVNTVUUgRU5ST0xMTUVOVDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRhcC10by1kb3dubG9hZFwiPjwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJpbmZvLXRleHRcIiAqbmdJZj1cImhhc0pXVCAmJiAhand0RXhwaXJlZCAmJiB0eXBlICE9PSAncm91dGVyJ1wiPk9SIFNDQU4gUVIgQ09ERTwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgICA8cXJjb2RlXG4gICAgICAgICAgICAqbmdJZj1cIiFqd3RFeHBpcmVkICYmIHR5cGUgIT09ICdyb3V0ZXInXCJcbiAgICAgICAgICAgIFtlcnJvckNvcnJlY3Rpb25MZXZlbF09XCInTSdcIiBbcXJkYXRhXT1cImp3dFwiXG4gICAgICAgICAgICBbd2lkdGhdPVwicXJDb2RlU2l6ZVwiIChjbGljayk9XCJleHBhbmRRUkNvZGUoKVwiXG4gICAgICAgICAgICBbbmdDbGFzc109XCJ7J3FyLWNvZGUtZXhwYW5kYWJsZSc6IGNhbkV4cGFuZH1cIlxuICAgID48L3FyY29kZT5cbiAgICA8ZGl2ICpuZ0lmPVwiIXFyT25seVwiIGNsYXNzPVwicXItY29kZS1idXR0b25zXCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiaW5mby10ZXh0XCIgKm5nSWY9XCIhand0RXhwaXJlZCAmJiB0eXBlID09PSAncm91dGVyJ1wiPk9SPC9zcGFuPlxuICAgICAgICA8ZGl2IChjbGljayk9XCJpZGVudGl0aWVzU3ZjLmRvd25sb2FkSldUKGp3dCwgaWRlbnRpdHkubmFtZSlcIiAqbmdJZj1cIiFqd3RFeHBpcmVkICYmIHR5cGUgPT09ICdyb3V0ZXInXCIgY2xhc3M9XCJkb3dubG9hZC1idXR0b25cIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkb3dubG9hZC1rZXlcIj48L2Rpdj5cbiAgICAgICAgICAgIDxkaXY+RE9XTkxPQUQgRU5ST0xMTUVOVCBKV1Q8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0YXAtdG8tZG93bmxvYWRcIj48L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiaW5mby10ZXh0XCIgKm5nSWY9XCIhc2hvd1Jlc2V0VG9rZW5cIj57e2p3dEV4cGlyZWQgPyAnUkVHSVNUUkFUSU9OIEVYUElSRUQnIDogJ0VYUElSRVMnfX0ge3tleHBpcmF0aW9uRGF0ZX19PC9zcGFuPlxuICAgICAgICA8ZGl2IChjbGljayk9XCJyZWVucm9sbCgpXCIgKm5nSWY9XCJzaG93UmVlbnJvbGxUb2tlblwiIGNsYXNzPVwiZG93bmxvYWQtYnV0dG9uXCIgPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRvd25sb2FkLWtleVwiPjwvZGl2PlxuICAgICAgICAgICAgPGRpdj5SRUlTU1VFIEVOUk9MTE1FTlQ8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0YXAtdG8tZG93bmxvYWRcIj48L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -0,0 +1,87 @@
1
+ /*
2
+ Copyright NetFoundry Inc.
3
+
4
+ Licensed under the Apache License, Version 2.0 (the "License");
5
+ you may not use this file except in compliance with the License.
6
+ You may obtain a copy of the License at
7
+
8
+ https://www.apache.org/licenses/LICENSE-2.0
9
+
10
+ Unless required by applicable law or agreed to in writing, software
11
+ distributed under the License is distributed on an "AS IS" BASIS,
12
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ See the License for the specific language governing permissions and
14
+ limitations under the License.
15
+ */
16
+ import { Component, Inject, ViewChild } from '@angular/core';
17
+ import { MAT_DIALOG_DATA } from "@angular/material/dialog";
18
+ import { ZITI_DATA_SERVICE } from "../../services/ziti-data.service";
19
+ import moment from "moment";
20
+ import * as i0 from "@angular/core";
21
+ import * as i1 from "./reset-enrollment.service";
22
+ import * as i2 from "@angular/material/dialog";
23
+ import * as i3 from "@angular/forms";
24
+ import * as i4 from "primeng/calendar";
25
+ import * as i5 from "../../services/ziti-data.service";
26
+ class ResetEnrollmentComponent {
27
+ constructor(svc, dialogRef, data, dataService) {
28
+ this.svc = svc;
29
+ this.dialogRef = dialogRef;
30
+ this.data = data;
31
+ this.dataService = dataService;
32
+ this.minDate = moment().add(1, 'minutes').toDate();
33
+ this.type = 'reset';
34
+ this.dateValue = moment().add(2, 'days').toDate();
35
+ this.showIcon = true;
36
+ this.identity = data.identity;
37
+ this.type = data.type || 'reset';
38
+ }
39
+ ngOnInit() {
40
+ this.dialogRef.addPanelClass('reset-enroll-dialog-container');
41
+ }
42
+ confirm() {
43
+ this.dialogRef.close(true);
44
+ }
45
+ cancel() {
46
+ this.dialogRef.close(false);
47
+ }
48
+ handleAction() {
49
+ if (this.type === 'reset') {
50
+ this.reset();
51
+ }
52
+ else {
53
+ this.reissue();
54
+ }
55
+ }
56
+ reset() {
57
+ this.svc.resetEnrollment(this.identity, this.dateValue).then((result) => {
58
+ if (result) {
59
+ this.confirm();
60
+ }
61
+ });
62
+ }
63
+ reissue() {
64
+ this.svc.reissueEnrollment(this.identity, this.dateValue).then((result) => {
65
+ if (result) {
66
+ this.confirm();
67
+ }
68
+ });
69
+ }
70
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ResetEnrollmentComponent, deps: [{ token: i1.ResetEnrollmentService }, { token: i2.MatDialogRef }, { token: MAT_DIALOG_DATA }, { token: ZITI_DATA_SERVICE }], target: i0.ɵɵFactoryTarget.Component }); }
71
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ResetEnrollmentComponent, selector: "lib-reset-enrollment", viewQueries: [{ propertyName: "calendar", first: true, predicate: ["calendar"], descendants: true }], ngImport: i0, template: "<div id=\"ResetModal\" class=\"reset-enrollment-container modal\" style=\"height: fit-content;\">\n <div class=\"close icon-close\" (click)=\"cancel()\"></div>\n <div class=\"reset-title-container\">\n <div class=\"title\">{{type === 'reset' ? 'Reset' : 'Reissue'}} Enrollment</div>\n <div class=\"subtitle\">Select a date to {{type === 'reset' ? 'reset' : 'reissue'}} the enrollment token</div>\n </div>\n <div class=\"reset-content-container\">\n <label>Date Enrollment Expires</label>\n <p-calendar\n [(ngModel)]=\"dateValue\"\n dateFormat=\"mm/dd/yy\"\n selectionMode=\"single\"\n [showIcon]=\"showIcon\"\n [showTime]=\"true\"\n [minDate]=\"minDate\"\n placeholder=\"Select Time Range\"\n #calendar\n ></p-calendar>\n </div>\n <div class=\"reset-buttons-container\">\n <div id=\"ResetEnrollButton\" class=\"button\" (click)=\"handleAction()\">{{type === 'reset' ? 'Reset' : 'Reissue'}} Enrollment</div>\n </div>\n</div>", styles: [".reset-enrollment-container{display:flex;flex-direction:column;height:-moz-fit-content;height:fit-content;width:600px;padding:20px;gap:15px;background-color:var(--background);border-radius:10px;overflow:visible}.reset-title-container{display:flex;flex-direction:column;justify-content:flex-start}.reset-title-container .title,.reset-title-container .subtitle{padding:0;height:inherit;line-height:initial}.reset-content-container{display:flex;flex-direction:column}.reset-buttons-container{display:flex;flex-direction:row;width:100%;justify-content:flex-start}.reset-buttons-container .button{border-radius:7px;line-height:initial;margin-top:0;display:flex;align-items:center}::ng-deep .reset-enroll-dialog-container .mat-mdc-dialog-surface{overflow:visible}::ng-deep .p-component.p-datepicker{background:var(--background)!important}::ng-deep .p-datepicker .p-timepicker button.p-element{background-color:var(--primaryColor)}::ng-deep .p-datepicker .p-datepicker-header button.p-element.p-ripple{background-color:var(--primaryColor)}\n"], dependencies: [{ kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4.Calendar, selector: "p-calendar", inputs: ["style", "styleClass", "inputStyle", "inputId", "name", "inputStyleClass", "placeholder", "ariaLabelledBy", "ariaLabel", "iconAriaLabel", "disabled", "dateFormat", "multipleSeparator", "rangeSeparator", "inline", "showOtherMonths", "selectOtherMonths", "showIcon", "icon", "appendTo", "readonlyInput", "shortYearCutoff", "monthNavigator", "yearNavigator", "hourFormat", "timeOnly", "stepHour", "stepMinute", "stepSecond", "showSeconds", "required", "showOnFocus", "showWeek", "showClear", "dataType", "selectionMode", "maxDateCount", "showButtonBar", "todayButtonStyleClass", "clearButtonStyleClass", "autoZIndex", "baseZIndex", "panelStyleClass", "panelStyle", "keepInvalid", "hideOnDateTimeSelect", "touchUI", "timeSeparator", "focusTrap", "showTransitionOptions", "hideTransitionOptions", "tabindex", "minDate", "maxDate", "disabledDates", "disabledDays", "yearRange", "showTime", "responsiveOptions", "numberOfMonths", "firstDayOfWeek", "locale", "view", "defaultDate"], outputs: ["onFocus", "onBlur", "onClose", "onSelect", "onClear", "onInput", "onTodayClick", "onClearClick", "onMonthChange", "onYearChange", "onClickOutside", "onShow"] }] }); }
72
+ }
73
+ export { ResetEnrollmentComponent };
74
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ResetEnrollmentComponent, decorators: [{
75
+ type: Component,
76
+ args: [{ selector: 'lib-reset-enrollment', template: "<div id=\"ResetModal\" class=\"reset-enrollment-container modal\" style=\"height: fit-content;\">\n <div class=\"close icon-close\" (click)=\"cancel()\"></div>\n <div class=\"reset-title-container\">\n <div class=\"title\">{{type === 'reset' ? 'Reset' : 'Reissue'}} Enrollment</div>\n <div class=\"subtitle\">Select a date to {{type === 'reset' ? 'reset' : 'reissue'}} the enrollment token</div>\n </div>\n <div class=\"reset-content-container\">\n <label>Date Enrollment Expires</label>\n <p-calendar\n [(ngModel)]=\"dateValue\"\n dateFormat=\"mm/dd/yy\"\n selectionMode=\"single\"\n [showIcon]=\"showIcon\"\n [showTime]=\"true\"\n [minDate]=\"minDate\"\n placeholder=\"Select Time Range\"\n #calendar\n ></p-calendar>\n </div>\n <div class=\"reset-buttons-container\">\n <div id=\"ResetEnrollButton\" class=\"button\" (click)=\"handleAction()\">{{type === 'reset' ? 'Reset' : 'Reissue'}} Enrollment</div>\n </div>\n</div>", styles: [".reset-enrollment-container{display:flex;flex-direction:column;height:-moz-fit-content;height:fit-content;width:600px;padding:20px;gap:15px;background-color:var(--background);border-radius:10px;overflow:visible}.reset-title-container{display:flex;flex-direction:column;justify-content:flex-start}.reset-title-container .title,.reset-title-container .subtitle{padding:0;height:inherit;line-height:initial}.reset-content-container{display:flex;flex-direction:column}.reset-buttons-container{display:flex;flex-direction:row;width:100%;justify-content:flex-start}.reset-buttons-container .button{border-radius:7px;line-height:initial;margin-top:0;display:flex;align-items:center}::ng-deep .reset-enroll-dialog-container .mat-mdc-dialog-surface{overflow:visible}::ng-deep .p-component.p-datepicker{background:var(--background)!important}::ng-deep .p-datepicker .p-timepicker button.p-element{background-color:var(--primaryColor)}::ng-deep .p-datepicker .p-datepicker-header button.p-element.p-ripple{background-color:var(--primaryColor)}\n"] }]
77
+ }], ctorParameters: function () { return [{ type: i1.ResetEnrollmentService }, { type: i2.MatDialogRef }, { type: undefined, decorators: [{
78
+ type: Inject,
79
+ args: [MAT_DIALOG_DATA]
80
+ }] }, { type: i5.ZitiDataService, decorators: [{
81
+ type: Inject,
82
+ args: [ZITI_DATA_SERVICE]
83
+ }] }]; }, propDecorators: { calendar: [{
84
+ type: ViewChild,
85
+ args: ['calendar', { static: false }]
86
+ }] } });
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXQtZW5yb2xsbWVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96aXRpLWNvbnNvbGUtbGliL3NyYy9saWIvZmVhdHVyZXMvcmVzZXQtZW5yb2xsbWVudC9yZXNldC1lbnJvbGxtZW50LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ppdGktY29uc29sZS1saWIvc3JjL2xpYi9mZWF0dXJlcy9yZXNldC1lbnJvbGxtZW50L3Jlc2V0LWVucm9sbG1lbnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0VBY0U7QUFFRixPQUFPLEVBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQVMsTUFBTSxlQUFlLENBQUM7QUFDbkUsT0FBTyxFQUFDLGVBQWUsRUFBZSxNQUFNLDBCQUEwQixDQUFDO0FBRXZFLE9BQU8sRUFBQyxpQkFBaUIsRUFBa0IsTUFBTSxrQ0FBa0MsQ0FBQztBQUdwRixPQUFPLE1BQU0sTUFBTSxRQUFRLENBQUM7Ozs7Ozs7QUFHNUIsTUFLYSx3QkFBd0I7SUFRbkMsWUFDWSxHQUEyQixFQUMzQixTQUFpRCxFQUN6QixJQUFTLEVBQ04sV0FBNEI7UUFIdkQsUUFBRyxHQUFILEdBQUcsQ0FBd0I7UUFDM0IsY0FBUyxHQUFULFNBQVMsQ0FBd0M7UUFDekIsU0FBSSxHQUFKLElBQUksQ0FBSztRQUNOLGdCQUFXLEdBQVgsV0FBVyxDQUFpQjtRQVZuRSxZQUFPLEdBQUcsTUFBTSxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUM5QyxTQUFJLEdBQUcsT0FBTyxDQUFDO1FBRWYsY0FBUyxHQUFHLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDN0MsYUFBUSxHQUFZLElBQUksQ0FBQztRQVF2QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDOUIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxJQUFJLE9BQU8sQ0FBQztJQUNuQyxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLCtCQUErQixDQUFDLENBQUM7SUFDaEUsQ0FBQztJQUVELE9BQU87UUFDTCxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRUQsTUFBTTtRQUNKLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCxZQUFZO1FBQ1YsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLE9BQU8sRUFBQztZQUN4QixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7U0FDZDthQUFNO1lBQ0wsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1NBQ2hCO0lBQ0gsQ0FBQztJQUVELEtBQUs7UUFDRCxJQUFJLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUNwRSxJQUFJLE1BQU0sRUFBRTtnQkFDUixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7YUFDbEI7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxPQUFPO1FBQ0gsSUFBSSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUN0RSxJQUFJLE1BQU0sRUFBRTtnQkFDUixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7YUFDbEI7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7K0dBcERVLHdCQUF3QixvRkFXdkIsZUFBZSxhQUNmLGlCQUFpQjttR0FabEIsd0JBQXdCLGtLQzlCckMsb2xDQXNCTTs7U0RRTyx3QkFBd0I7NEZBQXhCLHdCQUF3QjtrQkFMcEMsU0FBUzsrQkFDRSxzQkFBc0I7OzBCQWUzQixNQUFNOzJCQUFDLGVBQWU7OzBCQUN0QixNQUFNOzJCQUFDLGlCQUFpQjs0Q0FMYSxRQUFRO3NCQUFqRCxTQUFTO3VCQUFDLFVBQVUsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICAgIENvcHlyaWdodCBOZXRGb3VuZHJ5IEluYy5cblxuICAgIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gICAgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICAgIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuXG4gICAgaHR0cHM6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuXG4gICAgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICAgIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAgICBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAgICBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gICAgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuXG5pbXBvcnQge0NvbXBvbmVudCwgSW5qZWN0LCBWaWV3Q2hpbGQsIE9uSW5pdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge01BVF9ESUFMT0dfREFUQSwgTWF0RGlhbG9nUmVmfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nXCI7XG5pbXBvcnQge0dyb3dsZXJNb2RlbH0gZnJvbSBcIi4uL21lc3NhZ2luZy9ncm93bGVyLm1vZGVsXCI7XG5pbXBvcnQge1pJVElfREFUQV9TRVJWSUNFLCBaaXRpRGF0YVNlcnZpY2V9IGZyb20gXCIuLi8uLi9zZXJ2aWNlcy96aXRpLWRhdGEuc2VydmljZVwiO1xuaW1wb3J0IHtHcm93bGVyU2VydmljZX0gZnJvbSBcIi4uL21lc3NhZ2luZy9ncm93bGVyLnNlcnZpY2VcIjtcbmltcG9ydCB7aXNFbXB0eSwgcmVzdWx0fSBmcm9tIFwibG9kYXNoXCI7XG5pbXBvcnQgbW9tZW50IGZyb20gXCJtb21lbnRcIjtcbmltcG9ydCB7UmVzZXRFbnJvbGxtZW50U2VydmljZX0gZnJvbSBcIi4vcmVzZXQtZW5yb2xsbWVudC5zZXJ2aWNlXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xpYi1yZXNldC1lbnJvbGxtZW50JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Jlc2V0LWVucm9sbG1lbnQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9yZXNldC1lbnJvbGxtZW50LmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgUmVzZXRFbnJvbGxtZW50Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBtaW5EYXRlID0gbW9tZW50KCkuYWRkKDEsICdtaW51dGVzJykudG9EYXRlKCk7XG4gIHR5cGUgPSAncmVzZXQnO1xuICBpZGVudGl0eTogYW55O1xuICBkYXRlVmFsdWUgPSBtb21lbnQoKS5hZGQoMiwgJ2RheXMnKS50b0RhdGUoKTtcbiAgc2hvd0ljb246IGJvb2xlYW4gPSB0cnVlO1xuICBAVmlld0NoaWxkKCdjYWxlbmRhcicsIHsgc3RhdGljOiBmYWxzZSB9KSBjYWxlbmRhcjogYW55O1xuICBjb25zdHJ1Y3RvcihcbiAgICAgIHByaXZhdGUgc3ZjOiBSZXNldEVucm9sbG1lbnRTZXJ2aWNlLFxuICAgICAgcHJpdmF0ZSBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxSZXNldEVucm9sbG1lbnRDb21wb25lbnQ+LFxuICAgICAgQEluamVjdChNQVRfRElBTE9HX0RBVEEpIHB1YmxpYyBkYXRhOiBhbnksXG4gICAgICBASW5qZWN0KFpJVElfREFUQV9TRVJWSUNFKSBwcml2YXRlIGRhdGFTZXJ2aWNlOiBaaXRpRGF0YVNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5pZGVudGl0eSA9IGRhdGEuaWRlbnRpdHk7XG4gICAgdGhpcy50eXBlID0gZGF0YS50eXBlIHx8ICdyZXNldCc7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmRpYWxvZ1JlZi5hZGRQYW5lbENsYXNzKCdyZXNldC1lbnJvbGwtZGlhbG9nLWNvbnRhaW5lcicpO1xuICB9XG5cbiAgY29uZmlybSgpIHtcbiAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZSh0cnVlKTtcbiAgfVxuXG4gIGNhbmNlbCgpIHtcbiAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZShmYWxzZSk7XG4gIH1cblxuICBoYW5kbGVBY3Rpb24oKSB7XG4gICAgaWYgKHRoaXMudHlwZSA9PT0gJ3Jlc2V0Jyl7XG4gICAgICB0aGlzLnJlc2V0KCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucmVpc3N1ZSgpO1xuICAgIH1cbiAgfVxuXG4gIHJlc2V0KCkge1xuICAgICAgdGhpcy5zdmMucmVzZXRFbnJvbGxtZW50KHRoaXMuaWRlbnRpdHksIHRoaXMuZGF0ZVZhbHVlKS50aGVuKChyZXN1bHQpID0+IHtcbiAgICAgICAgICBpZiAocmVzdWx0KSB7XG4gICAgICAgICAgICAgIHRoaXMuY29uZmlybSgpO1xuICAgICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbiAgcmVpc3N1ZSgpIHtcbiAgICAgIHRoaXMuc3ZjLnJlaXNzdWVFbnJvbGxtZW50KHRoaXMuaWRlbnRpdHksIHRoaXMuZGF0ZVZhbHVlKS50aGVuKChyZXN1bHQpID0+IHtcbiAgICAgICAgICBpZiAocmVzdWx0KSB7XG4gICAgICAgICAgICAgIHRoaXMuY29uZmlybSgpO1xuICAgICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG59XG4iLCI8ZGl2IGlkPVwiUmVzZXRNb2RhbFwiIGNsYXNzPVwicmVzZXQtZW5yb2xsbWVudC1jb250YWluZXIgbW9kYWxcIiBzdHlsZT1cImhlaWdodDogZml0LWNvbnRlbnQ7XCI+XG4gICAgPGRpdiBjbGFzcz1cImNsb3NlIGljb24tY2xvc2VcIiAoY2xpY2spPVwiY2FuY2VsKClcIj48L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwicmVzZXQtdGl0bGUtY29udGFpbmVyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0aXRsZVwiPnt7dHlwZSA9PT0gJ3Jlc2V0JyA/ICdSZXNldCcgOiAnUmVpc3N1ZSd9fSBFbnJvbGxtZW50PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzdWJ0aXRsZVwiPlNlbGVjdCBhIGRhdGUgdG8ge3t0eXBlID09PSAncmVzZXQnID8gJ3Jlc2V0JyA6ICdyZWlzc3VlJ319IHRoZSBlbnJvbGxtZW50IHRva2VuPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInJlc2V0LWNvbnRlbnQtY29udGFpbmVyXCI+XG4gICAgICAgIDxsYWJlbD5EYXRlIEVucm9sbG1lbnQgRXhwaXJlczwvbGFiZWw+XG4gICAgICAgIDxwLWNhbGVuZGFyXG4gICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJkYXRlVmFsdWVcIlxuICAgICAgICAgICAgICAgIGRhdGVGb3JtYXQ9XCJtbS9kZC95eVwiXG4gICAgICAgICAgICAgICAgc2VsZWN0aW9uTW9kZT1cInNpbmdsZVwiXG4gICAgICAgICAgICAgICAgW3Nob3dJY29uXT1cInNob3dJY29uXCJcbiAgICAgICAgICAgICAgICBbc2hvd1RpbWVdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgW21pbkRhdGVdPVwibWluRGF0ZVwiXG4gICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJTZWxlY3QgVGltZSBSYW5nZVwiXG4gICAgICAgICAgICAgICAgI2NhbGVuZGFyXG4gICAgICAgID48L3AtY2FsZW5kYXI+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInJlc2V0LWJ1dHRvbnMtY29udGFpbmVyXCI+XG4gICAgICAgIDxkaXYgaWQ9XCJSZXNldEVucm9sbEJ1dHRvblwiIGNsYXNzPVwiYnV0dG9uXCIgKGNsaWNrKT1cImhhbmRsZUFjdGlvbigpXCI+e3t0eXBlID09PSAncmVzZXQnID8gJ1Jlc2V0JyA6ICdSZWlzc3VlJ319IEVucm9sbG1lbnQ8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvZGl2PiJdfQ==
@@ -0,0 +1,62 @@
1
+ import { Inject, Injectable } from "@angular/core";
2
+ import { isEmpty } from "lodash";
3
+ import moment from "moment/moment";
4
+ import { GrowlerModel } from "../messaging/growler.model";
5
+ import { ZITI_DATA_SERVICE } from "../../services/ziti-data.service";
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "../messaging/growler.service";
8
+ import * as i2 from "../../services/ziti-data.service";
9
+ class ResetEnrollmentService {
10
+ constructor(growlerService, dataService) {
11
+ this.growlerService = growlerService;
12
+ this.dataService = dataService;
13
+ }
14
+ resetEnrollment(identity, dateVal) {
15
+ let id = identity?.authenticators?.cert?.id || identity?.authenticators?.updb?.id;
16
+ const dateObj = moment(dateVal);
17
+ return this.dataService.resetEnrollment(id, dateObj).then(() => {
18
+ const growlerData = new GrowlerModel('success', 'Success', `Enrollment Reset`, `Successfully reset enrollment token`);
19
+ this.growlerService.show(growlerData);
20
+ return true;
21
+ }).catch((error) => {
22
+ const growlerData = new GrowlerModel('error', 'Error', `Reset Failed`, `Failed to reset enrollment token`);
23
+ this.growlerService.show(growlerData);
24
+ return false;
25
+ });
26
+ }
27
+ reissueEnrollment(identity, dateVal) {
28
+ let id = identity?.enrollment?.id;
29
+ if (!isEmpty(identity?.enrollment?.ott)) {
30
+ id = identity?.enrollment?.ott.id;
31
+ }
32
+ else if (!isEmpty(identity?.enrollment?.ottca)) {
33
+ id = identity?.enrollment?.ottca.id;
34
+ }
35
+ else if (!isEmpty(identity?.enrollment?.updb)) {
36
+ id = identity?.enrollment?.updb.id;
37
+ }
38
+ const dateObj = moment(dateVal);
39
+ return this.dataService.reissueEnrollment(id, dateObj).then(() => {
40
+ const growlerData = new GrowlerModel('success', 'Success', `Enrollment Token Reissues`, `Successfully reissued enrollment token`);
41
+ this.growlerService.show(growlerData);
42
+ return true;
43
+ }).catch((error) => {
44
+ const growlerData = new GrowlerModel('error', 'Error', `Reissue Failed`, `Failed to reissues enrollment token`);
45
+ this.growlerService.show(growlerData);
46
+ return false;
47
+ });
48
+ }
49
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ResetEnrollmentService, deps: [{ token: i1.GrowlerService }, { token: ZITI_DATA_SERVICE }], target: i0.ɵɵFactoryTarget.Injectable }); }
50
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ResetEnrollmentService, providedIn: 'root' }); }
51
+ }
52
+ export { ResetEnrollmentService };
53
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ResetEnrollmentService, decorators: [{
54
+ type: Injectable,
55
+ args: [{
56
+ providedIn: 'root'
57
+ }]
58
+ }], ctorParameters: function () { return [{ type: i1.GrowlerService }, { type: i2.ZitiDataService, decorators: [{
59
+ type: Inject,
60
+ args: [ZITI_DATA_SERVICE]
61
+ }] }]; } });
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXQtZW5yb2xsbWVudC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMveml0aS1jb25zb2xlLWxpYi9zcmMvbGliL2ZlYXR1cmVzL3Jlc2V0LWVucm9sbG1lbnQvcmVzZXQtZW5yb2xsbWVudC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxNQUFNLEVBQUUsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxRQUFRLENBQUM7QUFDL0IsT0FBTyxNQUFNLE1BQU0sZUFBZSxDQUFDO0FBQ25DLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUV4RCxPQUFPLEVBQUMsaUJBQWlCLEVBQWtCLE1BQU0sa0NBQWtDLENBQUM7Ozs7QUFFcEYsTUFHYSxzQkFBc0I7SUFFL0IsWUFDWSxjQUE4QixFQUNILFdBQTRCO1FBRHZELG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUNILGdCQUFXLEdBQVgsV0FBVyxDQUFpQjtJQUVuRSxDQUFDO0lBRUQsZUFBZSxDQUFDLFFBQVEsRUFBRSxPQUFPO1FBQzdCLElBQUksRUFBRSxHQUFHLFFBQVEsRUFBRSxjQUFjLEVBQUUsSUFBSSxFQUFFLEVBQUUsSUFBSSxRQUFRLEVBQUUsY0FBYyxFQUFFLElBQUksRUFBRSxFQUFFLENBQUM7UUFDbEYsTUFBTSxPQUFPLEdBQVEsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3JDLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxlQUFlLENBQUMsRUFBRSxFQUFFLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDM0QsTUFBTSxXQUFXLEdBQUcsSUFBSSxZQUFZLENBQ2hDLFNBQVMsRUFDVCxTQUFTLEVBQ1Qsa0JBQWtCLEVBQ2xCLHFDQUFxQyxDQUN4QyxDQUFDO1lBQ0YsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDdEMsT0FBTyxJQUFJLENBQUM7UUFDaEIsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDZixNQUFNLFdBQVcsR0FBRyxJQUFJLFlBQVksQ0FDaEMsT0FBTyxFQUNQLE9BQU8sRUFDUCxjQUFjLEVBQ2Qsa0NBQWtDLENBQ3JDLENBQUM7WUFDRixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUN0QyxPQUFPLEtBQUssQ0FBQztRQUNqQixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxRQUFRLEVBQUUsT0FBTztRQUMvQixJQUFJLEVBQUUsR0FBRyxRQUFRLEVBQUUsVUFBVSxFQUFFLEVBQUUsQ0FBQztRQUNsQyxJQUFHLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxVQUFVLEVBQUUsR0FBRyxDQUFDLEVBQUU7WUFDcEMsRUFBRSxHQUFHLFFBQVEsRUFBRSxVQUFVLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQztTQUNyQzthQUFNLElBQUcsQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLFVBQVUsRUFBRSxLQUFLLENBQUMsRUFBRTtZQUM3QyxFQUFFLEdBQUcsUUFBUSxFQUFFLFVBQVUsRUFBRSxLQUFLLENBQUMsRUFBRSxDQUFDO1NBQ3ZDO2FBQU0sSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsVUFBVSxFQUFFLElBQUksQ0FBQyxFQUFFO1lBQzdDLEVBQUUsR0FBRyxRQUFRLEVBQUUsVUFBVSxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUM7U0FDdEM7UUFDRCxNQUFNLE9BQU8sR0FBUSxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDckMsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsRUFBRSxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO1lBQzdELE1BQU0sV0FBVyxHQUFHLElBQUksWUFBWSxDQUNoQyxTQUFTLEVBQ1QsU0FBUyxFQUNULDJCQUEyQixFQUMzQix3Q0FBd0MsQ0FDM0MsQ0FBQztZQUNGLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ3RDLE9BQU8sSUFBSSxDQUFDO1FBQ2hCLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ2YsTUFBTSxXQUFXLEdBQUcsSUFBSSxZQUFZLENBQ2hDLE9BQU8sRUFDUCxPQUFPLEVBQ1AsZ0JBQWdCLEVBQ2hCLHFDQUFxQyxDQUN4QyxDQUFDO1lBQ0YsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDdEMsT0FBTyxLQUFLLENBQUM7UUFDakIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDOytHQTdEUSxzQkFBc0IsZ0RBSW5CLGlCQUFpQjttSEFKcEIsc0JBQXNCLGNBRm5CLE1BQU07O1NBRVQsc0JBQXNCOzRGQUF0QixzQkFBc0I7a0JBSGxDLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCOzswQkFLUSxNQUFNOzJCQUFDLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0LCBJbmplY3RhYmxlfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHtpc0VtcHR5fSBmcm9tIFwibG9kYXNoXCI7XG5pbXBvcnQgbW9tZW50IGZyb20gXCJtb21lbnQvbW9tZW50XCI7XG5pbXBvcnQge0dyb3dsZXJNb2RlbH0gZnJvbSBcIi4uL21lc3NhZ2luZy9ncm93bGVyLm1vZGVsXCI7XG5pbXBvcnQge0dyb3dsZXJTZXJ2aWNlfSBmcm9tIFwiLi4vbWVzc2FnaW5nL2dyb3dsZXIuc2VydmljZVwiO1xuaW1wb3J0IHtaSVRJX0RBVEFfU0VSVklDRSwgWml0aURhdGFTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZXMveml0aS1kYXRhLnNlcnZpY2VcIjtcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBSZXNldEVucm9sbG1lbnRTZXJ2aWNlIHtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGdyb3dsZXJTZXJ2aWNlOiBHcm93bGVyU2VydmljZSxcbiAgICAgICAgQEluamVjdChaSVRJX0RBVEFfU0VSVklDRSkgcHJpdmF0ZSBkYXRhU2VydmljZTogWml0aURhdGFTZXJ2aWNlLFxuICAgICkge1xuICAgIH1cblxuICAgIHJlc2V0RW5yb2xsbWVudChpZGVudGl0eSwgZGF0ZVZhbCkge1xuICAgICAgICBsZXQgaWQgPSBpZGVudGl0eT8uYXV0aGVudGljYXRvcnM/LmNlcnQ/LmlkIHx8IGlkZW50aXR5Py5hdXRoZW50aWNhdG9ycz8udXBkYj8uaWQ7XG4gICAgICAgIGNvbnN0IGRhdGVPYmo6IGFueSA9IG1vbWVudChkYXRlVmFsKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGF0YVNlcnZpY2UucmVzZXRFbnJvbGxtZW50KGlkLCBkYXRlT2JqKS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGdyb3dsZXJEYXRhID0gbmV3IEdyb3dsZXJNb2RlbChcbiAgICAgICAgICAgICAgICAnc3VjY2VzcycsXG4gICAgICAgICAgICAgICAgJ1N1Y2Nlc3MnLFxuICAgICAgICAgICAgICAgIGBFbnJvbGxtZW50IFJlc2V0YCxcbiAgICAgICAgICAgICAgICBgU3VjY2Vzc2Z1bGx5IHJlc2V0IGVucm9sbG1lbnQgdG9rZW5gLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIHRoaXMuZ3Jvd2xlclNlcnZpY2Uuc2hvdyhncm93bGVyRGF0YSk7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfSkuY2F0Y2goKGVycm9yKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBncm93bGVyRGF0YSA9IG5ldyBHcm93bGVyTW9kZWwoXG4gICAgICAgICAgICAgICAgJ2Vycm9yJyxcbiAgICAgICAgICAgICAgICAnRXJyb3InLFxuICAgICAgICAgICAgICAgIGBSZXNldCBGYWlsZWRgLFxuICAgICAgICAgICAgICAgIGBGYWlsZWQgdG8gcmVzZXQgZW5yb2xsbWVudCB0b2tlbmAsXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgdGhpcy5ncm93bGVyU2VydmljZS5zaG93KGdyb3dsZXJEYXRhKTtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmVpc3N1ZUVucm9sbG1lbnQoaWRlbnRpdHksIGRhdGVWYWwpIHtcbiAgICAgICAgbGV0IGlkID0gaWRlbnRpdHk/LmVucm9sbG1lbnQ/LmlkO1xuICAgICAgICBpZighaXNFbXB0eShpZGVudGl0eT8uZW5yb2xsbWVudD8ub3R0KSkge1xuICAgICAgICAgICAgaWQgPSBpZGVudGl0eT8uZW5yb2xsbWVudD8ub3R0LmlkO1xuICAgICAgICB9IGVsc2UgaWYoIWlzRW1wdHkoaWRlbnRpdHk/LmVucm9sbG1lbnQ/Lm90dGNhKSkge1xuICAgICAgICAgICAgaWQgPSBpZGVudGl0eT8uZW5yb2xsbWVudD8ub3R0Y2EuaWQ7XG4gICAgICAgIH0gZWxzZSBpZiAoIWlzRW1wdHkoaWRlbnRpdHk/LmVucm9sbG1lbnQ/LnVwZGIpKSB7XG4gICAgICAgICAgICBpZCA9IGlkZW50aXR5Py5lbnJvbGxtZW50Py51cGRiLmlkO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGRhdGVPYmo6IGFueSA9IG1vbWVudChkYXRlVmFsKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGF0YVNlcnZpY2UucmVpc3N1ZUVucm9sbG1lbnQoaWQsIGRhdGVPYmopLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgZ3Jvd2xlckRhdGEgPSBuZXcgR3Jvd2xlck1vZGVsKFxuICAgICAgICAgICAgICAgICdzdWNjZXNzJyxcbiAgICAgICAgICAgICAgICAnU3VjY2VzcycsXG4gICAgICAgICAgICAgICAgYEVucm9sbG1lbnQgVG9rZW4gUmVpc3N1ZXNgLFxuICAgICAgICAgICAgICAgIGBTdWNjZXNzZnVsbHkgcmVpc3N1ZWQgZW5yb2xsbWVudCB0b2tlbmAsXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgdGhpcy5ncm93bGVyU2VydmljZS5zaG93KGdyb3dsZXJEYXRhKTtcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9KS5jYXRjaCgoZXJyb3IpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGdyb3dsZXJEYXRhID0gbmV3IEdyb3dsZXJNb2RlbChcbiAgICAgICAgICAgICAgICAnZXJyb3InLFxuICAgICAgICAgICAgICAgICdFcnJvcicsXG4gICAgICAgICAgICAgICAgYFJlaXNzdWUgRmFpbGVkYCxcbiAgICAgICAgICAgICAgICBgRmFpbGVkIHRvIHJlaXNzdWVzIGVucm9sbG1lbnQgdG9rZW5gLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIHRoaXMuZ3Jvd2xlclNlcnZpY2Uuc2hvdyhncm93bGVyRGF0YSk7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH0pO1xuICAgIH1cbn0iXX0=
@@ -0,0 +1,46 @@
1
+ /*
2
+ Copyright NetFoundry Inc.
3
+
4
+ Licensed under the Apache License, Version 2.0 (the "License");
5
+ you may not use this file except in compliance with the License.
6
+ You may obtain a copy of the License at
7
+
8
+ https://www.apache.org/licenses/LICENSE-2.0
9
+
10
+ Unless required by applicable law or agreed to in writing, software
11
+ distributed under the License is distributed on an "AS IS" BASIS,
12
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ See the License for the specific language governing permissions and
14
+ limitations under the License.
15
+ */
16
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
17
+ import * as i0 from "@angular/core";
18
+ import * as i1 from "../../services/console-events.service";
19
+ import * as i2 from "@angular/common";
20
+ class SideModalComponent {
21
+ constructor(consoleEvents) {
22
+ this.consoleEvents = consoleEvents;
23
+ this.showClose = false;
24
+ this.open = false;
25
+ this.openChange = new EventEmitter();
26
+ }
27
+ ngOnInit() { }
28
+ close() {
29
+ this.open = false;
30
+ this.openChange.emit(this.open);
31
+ }
32
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SideModalComponent, deps: [{ token: i1.ConsoleEventsService }], target: i0.ɵɵFactoryTarget.Component }); }
33
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SideModalComponent, selector: "lib-side-modal", inputs: { showClose: "showClose", open: "open" }, outputs: { openChange: "openChange" }, ngImport: i0, template: "<div class=\"side-modal-container\" [ngClass]=\"{'side-modal-open': open}\">\n <div class=\"close icon-close\" *ngIf=\"showClose\" (click)=\"close()\"></div>\n <ng-content></ng-content>\n</div>\n\n", styles: [".side-modal-container{position:fixed;left:100%;top:0;padding:20px;height:100%;width:100%;overflow-y:auto;right:0;transition:var(--transition);z-index:10001;background-color:var(--formBackground);box-shadow:0 4px 16px #00000014}.side-modal-container.side-modal-open{width:calc(100% - 380px);left:380px;padding-bottom:0}::ng-deep .sideNavClosed .side-modal-container.side-modal-open{width:calc(100% - 65px);left:65px}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
34
+ }
35
+ export { SideModalComponent };
36
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SideModalComponent, decorators: [{
37
+ type: Component,
38
+ args: [{ selector: 'lib-side-modal', template: "<div class=\"side-modal-container\" [ngClass]=\"{'side-modal-open': open}\">\n <div class=\"close icon-close\" *ngIf=\"showClose\" (click)=\"close()\"></div>\n <ng-content></ng-content>\n</div>\n\n", styles: [".side-modal-container{position:fixed;left:100%;top:0;padding:20px;height:100%;width:100%;overflow-y:auto;right:0;transition:var(--transition);z-index:10001;background-color:var(--formBackground);box-shadow:0 4px 16px #00000014}.side-modal-container.side-modal-open{width:calc(100% - 380px);left:380px;padding-bottom:0}::ng-deep .sideNavClosed .side-modal-container.side-modal-open{width:calc(100% - 65px);left:65px}\n"] }]
39
+ }], ctorParameters: function () { return [{ type: i1.ConsoleEventsService }]; }, propDecorators: { showClose: [{
40
+ type: Input
41
+ }], open: [{
42
+ type: Input
43
+ }], openChange: [{
44
+ type: Output
45
+ }] } });
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1tb2RhbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96aXRpLWNvbnNvbGUtbGliL3NyYy9saWIvZmVhdHVyZXMvc2lkZS1tb2RhbC9zaWRlLW1vZGFsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ppdGktY29uc29sZS1saWIvc3JjL2xpYi9mZWF0dXJlcy9zaWRlLW1vZGFsL3NpZGUtbW9kYWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0VBY0U7QUFFRixPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDOzs7O0FBRzdFLE1BS2Esa0JBQWtCO0lBTTdCLFlBQW9CLGFBQW1DO1FBQW5DLGtCQUFhLEdBQWIsYUFBYSxDQUFzQjtRQUo5QyxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLFNBQUksR0FBRyxLQUFLLENBQUM7UUFDWixlQUFVLEdBQTBCLElBQUksWUFBWSxFQUFXLENBQUM7SUFFaEIsQ0FBQztJQUUzRCxRQUFRLEtBQVUsQ0FBQztJQUVuQixLQUFLO1FBQ0gsSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUM7UUFDbEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xDLENBQUM7K0dBYlUsa0JBQWtCO21HQUFsQixrQkFBa0IsK0lDeEIvQiw2TUFLQTs7U0RtQmEsa0JBQWtCOzRGQUFsQixrQkFBa0I7a0JBTDlCLFNBQVM7K0JBQ0UsZ0JBQWdCOzJHQU1qQixTQUFTO3NCQUFqQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDSSxVQUFVO3NCQUFuQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAgICBDb3B5cmlnaHQgTmV0Rm91bmRyeSBJbmMuXG5cbiAgICBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICAgIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAgICBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcblxuICAgIGh0dHBzOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcblxuICAgIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAgICBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gICAgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gICAgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICAgIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cblxuaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q29uc29sZUV2ZW50c1NlcnZpY2V9IGZyb20gXCIuLi8uLi9zZXJ2aWNlcy9jb25zb2xlLWV2ZW50cy5zZXJ2aWNlXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xpYi1zaWRlLW1vZGFsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NpZGUtbW9kYWwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zaWRlLW1vZGFsLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgU2lkZU1vZGFsQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBASW5wdXQoKSBzaG93Q2xvc2UgPSBmYWxzZTtcbiAgQElucHV0KCkgb3BlbiA9IGZhbHNlO1xuICBAT3V0cHV0KCkgb3BlbkNoYW5nZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY29uc29sZUV2ZW50czogQ29uc29sZUV2ZW50c1NlcnZpY2UpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7fVxuXG4gIGNsb3NlKCkge1xuICAgIHRoaXMub3BlbiA9IGZhbHNlO1xuICAgIHRoaXMub3BlbkNoYW5nZS5lbWl0KHRoaXMub3Blbik7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJzaWRlLW1vZGFsLWNvbnRhaW5lclwiIFtuZ0NsYXNzXT1cInsnc2lkZS1tb2RhbC1vcGVuJzogb3Blbn1cIj5cbiAgICA8ZGl2IGNsYXNzPVwiY2xvc2UgaWNvbi1jbG9zZVwiICpuZ0lmPVwic2hvd0Nsb3NlXCIgKGNsaWNrKT1cImNsb3NlKClcIj48L2Rpdj5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L2Rpdj5cblxuIl19