@keeper-security/keeperapi 16.0.3 → 16.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.rpt2_cache/{rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/code/cache/dc4d6f4549ac6f4017ff017e35d2349480068cdf → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/code/cache/07113f92cc3a9f5dc57b92f54542a63463f1fa9a} +1 -1
- package/.rpt2_cache/{rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/code/cache/f385a84342a7d9131d8da13c2546cde25fa23f1d → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/code/cache/1ba6467ba06d4bfc0c8581f4ee12c2c0f687214e} +1 -1
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/code/cache/6eb75399e6e0179b01b9d8cb1afc01f5068ef4f0 → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/code/cache/1de1e40928c5c58c4f677d93986cdff01b3d0417} +1 -1
- package/.rpt2_cache/{rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/code/cache/7c0e3c33301dea7e674a558fac5e4f028dbaa3ad → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/code/cache/47382883a57ad5790d3fd6abd39f33f773726b3b} +1 -1
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/code/cache/9eb60cc6282da763987e9a366716c57e69db7cbc → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/code/cache/4939a895ecf4daac58b0d73bccd49876515d41b8} +1 -1
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/code/cache/1c87a75f7bda91e438f008e21dafe531c949031d → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/code/cache/592d89407340c5ec6ad006df327e588b3f442eca} +1 -1
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/code/cache/e4d5be0687b96b93a032d9922fa511f04ed27deb → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/code/cache/59783c8cc0cc9d984f5407c218d213bca4c98503} +1 -1
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/code/cache/5e18f43a9b613f6f6f2302b3a4e5176f6bc92fc5 → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/code/cache/61fa6cf725249a1cae9b94b74a8c23aa3efd2ca1} +1 -1
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/code/cache/61937b699b545d77d9bb72af5e7182c1803ae24c → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/code/cache/77aced5528ce05fe900fdf7634042ec3c0f18255} +1 -1
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/code/cache/55ab809efdb0061fba3df7fa2029e2706a361534 → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/code/cache/b32ea8d6d3de0c6d8e178eff069fea4e11fa92b1} +1 -1
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/code/cache/85bbe002887f4018a0fe647b8b05194dbc048f66 → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/code/cache/c05be8364ff56aba0298689783666ddb97a31285} +1 -1
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/code/cache/7fbbd271f2a6fe2a55d7ee5e3ad7716e7cf051ba → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/code/cache/e23bf49223ba8b7ec926e46c40b27b0353cfc50e} +1 -1
- package/.rpt2_cache/{rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/code/cache/8f851753b53908ad3f972c31696dbdeeed9b4661 → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/code/cache/eec92c105b2694c31bff21903ddc3ef81af8f056} +1 -1
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/semanticDiagnostics/cache/1c87a75f7bda91e438f008e21dafe531c949031d → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/semanticDiagnostics/cache/07113f92cc3a9f5dc57b92f54542a63463f1fa9a} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/semanticDiagnostics/cache/55ab809efdb0061fba3df7fa2029e2706a361534 → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/semanticDiagnostics/cache/1ba6467ba06d4bfc0c8581f4ee12c2c0f687214e} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/semanticDiagnostics/cache/5e18f43a9b613f6f6f2302b3a4e5176f6bc92fc5 → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/semanticDiagnostics/cache/1de1e40928c5c58c4f677d93986cdff01b3d0417} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/semanticDiagnostics/cache/61937b699b545d77d9bb72af5e7182c1803ae24c → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/semanticDiagnostics/cache/47382883a57ad5790d3fd6abd39f33f773726b3b} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/semanticDiagnostics/cache/6eb75399e6e0179b01b9d8cb1afc01f5068ef4f0 → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/semanticDiagnostics/cache/4939a895ecf4daac58b0d73bccd49876515d41b8} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/semanticDiagnostics/cache/7c0e3c33301dea7e674a558fac5e4f028dbaa3ad → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/semanticDiagnostics/cache/592d89407340c5ec6ad006df327e588b3f442eca} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/semanticDiagnostics/cache/7fbbd271f2a6fe2a55d7ee5e3ad7716e7cf051ba → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/semanticDiagnostics/cache/59783c8cc0cc9d984f5407c218d213bca4c98503} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/semanticDiagnostics/cache/85bbe002887f4018a0fe647b8b05194dbc048f66 → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/semanticDiagnostics/cache/61fa6cf725249a1cae9b94b74a8c23aa3efd2ca1} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/semanticDiagnostics/cache/8f851753b53908ad3f972c31696dbdeeed9b4661 → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/semanticDiagnostics/cache/77aced5528ce05fe900fdf7634042ec3c0f18255} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/semanticDiagnostics/cache/9eb60cc6282da763987e9a366716c57e69db7cbc → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/semanticDiagnostics/cache/b32ea8d6d3de0c6d8e178eff069fea4e11fa92b1} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/semanticDiagnostics/cache/dc4d6f4549ac6f4017ff017e35d2349480068cdf → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/semanticDiagnostics/cache/c05be8364ff56aba0298689783666ddb97a31285} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/semanticDiagnostics/cache/e4d5be0687b96b93a032d9922fa511f04ed27deb → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/semanticDiagnostics/cache/e23bf49223ba8b7ec926e46c40b27b0353cfc50e} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/semanticDiagnostics/cache/f385a84342a7d9131d8da13c2546cde25fa23f1d → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/semanticDiagnostics/cache/eec92c105b2694c31bff21903ddc3ef81af8f056} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/syntacticDiagnostics/cache/1c87a75f7bda91e438f008e21dafe531c949031d → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/syntacticDiagnostics/cache/07113f92cc3a9f5dc57b92f54542a63463f1fa9a} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/syntacticDiagnostics/cache/55ab809efdb0061fba3df7fa2029e2706a361534 → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/syntacticDiagnostics/cache/1ba6467ba06d4bfc0c8581f4ee12c2c0f687214e} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/syntacticDiagnostics/cache/5e18f43a9b613f6f6f2302b3a4e5176f6bc92fc5 → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/syntacticDiagnostics/cache/1de1e40928c5c58c4f677d93986cdff01b3d0417} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/syntacticDiagnostics/cache/61937b699b545d77d9bb72af5e7182c1803ae24c → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/syntacticDiagnostics/cache/47382883a57ad5790d3fd6abd39f33f773726b3b} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/syntacticDiagnostics/cache/6eb75399e6e0179b01b9d8cb1afc01f5068ef4f0 → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/syntacticDiagnostics/cache/4939a895ecf4daac58b0d73bccd49876515d41b8} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/syntacticDiagnostics/cache/7c0e3c33301dea7e674a558fac5e4f028dbaa3ad → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/syntacticDiagnostics/cache/592d89407340c5ec6ad006df327e588b3f442eca} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/syntacticDiagnostics/cache/7fbbd271f2a6fe2a55d7ee5e3ad7716e7cf051ba → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/syntacticDiagnostics/cache/59783c8cc0cc9d984f5407c218d213bca4c98503} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/syntacticDiagnostics/cache/85bbe002887f4018a0fe647b8b05194dbc048f66 → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/syntacticDiagnostics/cache/61fa6cf725249a1cae9b94b74a8c23aa3efd2ca1} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/syntacticDiagnostics/cache/8f851753b53908ad3f972c31696dbdeeed9b4661 → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/syntacticDiagnostics/cache/77aced5528ce05fe900fdf7634042ec3c0f18255} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/syntacticDiagnostics/cache/9eb60cc6282da763987e9a366716c57e69db7cbc → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/syntacticDiagnostics/cache/b32ea8d6d3de0c6d8e178eff069fea4e11fa92b1} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/syntacticDiagnostics/cache/dc4d6f4549ac6f4017ff017e35d2349480068cdf → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/syntacticDiagnostics/cache/c05be8364ff56aba0298689783666ddb97a31285} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/syntacticDiagnostics/cache/e4d5be0687b96b93a032d9922fa511f04ed27deb → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/syntacticDiagnostics/cache/e23bf49223ba8b7ec926e46c40b27b0353cfc50e} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/syntacticDiagnostics/cache/f385a84342a7d9131d8da13c2546cde25fa23f1d → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/syntacticDiagnostics/cache/eec92c105b2694c31bff21903ddc3ef81af8f056} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/types/cache/24fbc0427075baf3ac3fee2ada4ddd2fdd6804a6 → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/types/cache/20b49cde4def23063b280689e4ff4d5a3803712b} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/types/cache/3050043c8485297b366404c9b699f00a98a44b3c → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/types/cache/3809196a67de680945038f2b4846e2e3b4af35aa} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/types/cache/4dffa8599530c3200ba2fa8029fa291435ba7cf7 → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/types/cache/4ad5d47b1ce7bf45cc7d9ff8c970e1fc57f446f3} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/types/cache/6a0bc58668c059b99bff8dba6f0246cb049f0db9 → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/types/cache/5a0816a3c916ff0e4961dc0ec2da48646f2ac5aa} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/types/cache/7351d2ef4cb3d5388301a3ad1d1f7e3a0782c0bd → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/types/cache/6182f5491d41e8f10acfbcf46ee875587904f5a3} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/types/cache/8d7296121e0007eebc1b0eabcfcc2a262d6bbc22 → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/types/cache/7ca2e31bcece668dfa5de5e1349ba34a757b5140} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/types/cache/8fe39fe93705cfe38c1944a307c3fd64e5985d1e → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/types/cache/86a4b0102f5568ac0a5b946d05c55f42c30b472d} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/types/cache/9f92f7bfd4bd0aa870a95101ec02f2a32337ff1f → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/types/cache/87fae47dd5b05377c04cfe377699d748414dc1c9} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/types/cache/a6e317ef3069e9a270811fbc729535be3c405f41 → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/types/cache/a7c23ecebcaf23c9346007731c5796b96c580738} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/types/cache/ac8bef3228680d10f4db046facede43040f41854 → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/types/cache/ac4d101c3489192db3e0ec98430a2336cba9a741} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/types/cache/afe32918d3a600939f39f4fcfb6852fe43f8ada9 → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/types/cache/b1eb441c5b806d06ba6bb36fcfd0cc4746c23a8a} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/types/cache/bbe22fc71946abdfc667c2388606bfe83397ec81 → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/types/cache/b7942903000069a51e317fef1595a8ea1d8b828d} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/types/cache/d7bc52f98e9a008b81c621d963e9d4a276c80ee3 → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/types/cache/cee91236390168fd38b01aaae7bed3099bb4555a} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/types/cache/ddcd4d72185f8c85750f6f2f755c1152fddafdf4 → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/types/cache/d7c87ce194d923e6f02c7e570008e88ade1cbabf} +0 -0
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/types/cache/df632d4bb144fc3001f92ea2a2678baeb386dcc4 → rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/types/cache/fba70878178c036fb4e9e1f19bdb465a1270d258} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/code/cache/f2e98088f53c88114a0a5322154f96a639246440 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/code/cache/05d17f791979143cbce20e3e3e811aa19ed8b492} +1 -1
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/code/cache/dc4d6f4549ac6f4017ff017e35d2349480068cdf → rpt2_e52dc086a65136b8064433446ffcd05307935b95/code/cache/07113f92cc3a9f5dc57b92f54542a63463f1fa9a} +1 -1
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/code/cache/f385a84342a7d9131d8da13c2546cde25fa23f1d → rpt2_e52dc086a65136b8064433446ffcd05307935b95/code/cache/1ba6467ba06d4bfc0c8581f4ee12c2c0f687214e} +1 -1
- package/.rpt2_cache/{rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/code/cache/6eb75399e6e0179b01b9d8cb1afc01f5068ef4f0 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/code/cache/1de1e40928c5c58c4f677d93986cdff01b3d0417} +1 -1
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/code/cache/7c0e3c33301dea7e674a558fac5e4f028dbaa3ad → rpt2_e52dc086a65136b8064433446ffcd05307935b95/code/cache/47382883a57ad5790d3fd6abd39f33f773726b3b} +1 -1
- package/.rpt2_cache/{rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/code/cache/624184538e182d7e8888620f356c12b51bbcc6ca → rpt2_e52dc086a65136b8064433446ffcd05307935b95/code/cache/4d58c1113d07816b1909aaef4395fd8b4d0ee13c} +1 -1
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/code/cache/bcfb396489824911797b349d7388000f2b3a3298 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/code/cache/4ee978699d6de2a60214b16c42d87f8e9309636b} +1 -1
- package/.rpt2_cache/{rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/code/cache/8378bbd69de2cb8546f7e5f380a4ca34a2b252ac → rpt2_e52dc086a65136b8064433446ffcd05307935b95/code/cache/50f4a014d14ada987c125e6ea55d4e6e75605313} +1 -1
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/code/cache/09a21931f2a982e751cd2b7ce45fa6df0bfdbfc6 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/code/cache/58aa8c228c99b690d3ca1f3b464585c41d1cd4bb} +1 -1
- package/.rpt2_cache/{rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/code/cache/1c87a75f7bda91e438f008e21dafe531c949031d → rpt2_e52dc086a65136b8064433446ffcd05307935b95/code/cache/592d89407340c5ec6ad006df327e588b3f442eca} +1 -1
- package/.rpt2_cache/{rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/code/cache/e4d5be0687b96b93a032d9922fa511f04ed27deb → rpt2_e52dc086a65136b8064433446ffcd05307935b95/code/cache/59783c8cc0cc9d984f5407c218d213bca4c98503} +1 -1
- package/.rpt2_cache/{rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/code/cache/5e18f43a9b613f6f6f2302b3a4e5176f6bc92fc5 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/code/cache/61fa6cf725249a1cae9b94b74a8c23aa3efd2ca1} +1 -1
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/code/cache/b5f1f1702282c76ceff0f0ff97a3ba80b5adeccc → rpt2_e52dc086a65136b8064433446ffcd05307935b95/code/cache/89f8a81d9d078b69f9fa7fa95251b38ccc394a3b} +1 -1
- package/.rpt2_cache/{rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/code/cache/55ab809efdb0061fba3df7fa2029e2706a361534 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/code/cache/b32ea8d6d3de0c6d8e178eff069fea4e11fa92b1} +1 -1
- package/.rpt2_cache/{rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/code/cache/85bbe002887f4018a0fe647b8b05194dbc048f66 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/code/cache/c05be8364ff56aba0298689783666ddb97a31285} +1 -1
- package/.rpt2_cache/{rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/code/cache/7fbbd271f2a6fe2a55d7ee5e3ad7716e7cf051ba → rpt2_e52dc086a65136b8064433446ffcd05307935b95/code/cache/e23bf49223ba8b7ec926e46c40b27b0353cfc50e} +1 -1
- package/.rpt2_cache/{rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/code/cache/8f851753b53908ad3f972c31696dbdeeed9b4661 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/code/cache/eec92c105b2694c31bff21903ddc3ef81af8f056} +1 -1
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/semanticDiagnostics/cache/0155dc333b076ed1526d900b68620ead8c8d8b6b → rpt2_e52dc086a65136b8064433446ffcd05307935b95/semanticDiagnostics/cache/05d17f791979143cbce20e3e3e811aa19ed8b492} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/semanticDiagnostics/cache/09a21931f2a982e751cd2b7ce45fa6df0bfdbfc6 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/semanticDiagnostics/cache/07113f92cc3a9f5dc57b92f54542a63463f1fa9a} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/semanticDiagnostics/cache/0bd8fcd9e5871476984908e9d214bc12244a56c7 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/semanticDiagnostics/cache/1ba6467ba06d4bfc0c8581f4ee12c2c0f687214e} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/semanticDiagnostics/cache/1c87a75f7bda91e438f008e21dafe531c949031d → rpt2_e52dc086a65136b8064433446ffcd05307935b95/semanticDiagnostics/cache/1de1e40928c5c58c4f677d93986cdff01b3d0417} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/semanticDiagnostics/cache/4af634b56884c8fd08ba3107422b0108644ee513 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/semanticDiagnostics/cache/47382883a57ad5790d3fd6abd39f33f773726b3b} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/semanticDiagnostics/cache/55ab809efdb0061fba3df7fa2029e2706a361534 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/semanticDiagnostics/cache/4d58c1113d07816b1909aaef4395fd8b4d0ee13c} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/semanticDiagnostics/cache/624184538e182d7e8888620f356c12b51bbcc6ca → rpt2_e52dc086a65136b8064433446ffcd05307935b95/semanticDiagnostics/cache/4ee978699d6de2a60214b16c42d87f8e9309636b} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/semanticDiagnostics/cache/67074a8d808b8e4a0c15d67f36f13664fcff8143 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/semanticDiagnostics/cache/50f4a014d14ada987c125e6ea55d4e6e75605313} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/semanticDiagnostics/cache/6eb75399e6e0179b01b9d8cb1afc01f5068ef4f0 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/semanticDiagnostics/cache/58aa8c228c99b690d3ca1f3b464585c41d1cd4bb} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/semanticDiagnostics/cache/7c0e3c33301dea7e674a558fac5e4f028dbaa3ad → rpt2_e52dc086a65136b8064433446ffcd05307935b95/semanticDiagnostics/cache/592d89407340c5ec6ad006df327e588b3f442eca} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/semanticDiagnostics/cache/934e86e88e5eef117e7f7c7e98bb7b13ee83e8af → rpt2_e52dc086a65136b8064433446ffcd05307935b95/semanticDiagnostics/cache/59783c8cc0cc9d984f5407c218d213bca4c98503} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/semanticDiagnostics/cache/a282f7f4f34b6e0f7604a1e31cac2d2efbc0304c → rpt2_e52dc086a65136b8064433446ffcd05307935b95/semanticDiagnostics/cache/61fa6cf725249a1cae9b94b74a8c23aa3efd2ca1} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/semanticDiagnostics/cache/b1af8b4bca5d49b190d355a5d7186b277280db7e → rpt2_e52dc086a65136b8064433446ffcd05307935b95/semanticDiagnostics/cache/89f8a81d9d078b69f9fa7fa95251b38ccc394a3b} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/semanticDiagnostics/cache/b5f1f1702282c76ceff0f0ff97a3ba80b5adeccc → rpt2_e52dc086a65136b8064433446ffcd05307935b95/semanticDiagnostics/cache/b32ea8d6d3de0c6d8e178eff069fea4e11fa92b1} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/semanticDiagnostics/cache/bcfb396489824911797b349d7388000f2b3a3298 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/semanticDiagnostics/cache/c05be8364ff56aba0298689783666ddb97a31285} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/semanticDiagnostics/cache/f2e98088f53c88114a0a5322154f96a639246440 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/semanticDiagnostics/cache/e23bf49223ba8b7ec926e46c40b27b0353cfc50e} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/semanticDiagnostics/cache/f385a84342a7d9131d8da13c2546cde25fa23f1d → rpt2_e52dc086a65136b8064433446ffcd05307935b95/semanticDiagnostics/cache/eec92c105b2694c31bff21903ddc3ef81af8f056} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/syntacticDiagnostics/cache/0155dc333b076ed1526d900b68620ead8c8d8b6b → rpt2_e52dc086a65136b8064433446ffcd05307935b95/syntacticDiagnostics/cache/05d17f791979143cbce20e3e3e811aa19ed8b492} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/syntacticDiagnostics/cache/09a21931f2a982e751cd2b7ce45fa6df0bfdbfc6 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/syntacticDiagnostics/cache/07113f92cc3a9f5dc57b92f54542a63463f1fa9a} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/syntacticDiagnostics/cache/0bd8fcd9e5871476984908e9d214bc12244a56c7 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/syntacticDiagnostics/cache/1ba6467ba06d4bfc0c8581f4ee12c2c0f687214e} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/syntacticDiagnostics/cache/1c87a75f7bda91e438f008e21dafe531c949031d → rpt2_e52dc086a65136b8064433446ffcd05307935b95/syntacticDiagnostics/cache/1de1e40928c5c58c4f677d93986cdff01b3d0417} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/syntacticDiagnostics/cache/4af634b56884c8fd08ba3107422b0108644ee513 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/syntacticDiagnostics/cache/47382883a57ad5790d3fd6abd39f33f773726b3b} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/syntacticDiagnostics/cache/55ab809efdb0061fba3df7fa2029e2706a361534 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/syntacticDiagnostics/cache/4d58c1113d07816b1909aaef4395fd8b4d0ee13c} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/syntacticDiagnostics/cache/624184538e182d7e8888620f356c12b51bbcc6ca → rpt2_e52dc086a65136b8064433446ffcd05307935b95/syntacticDiagnostics/cache/4ee978699d6de2a60214b16c42d87f8e9309636b} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/syntacticDiagnostics/cache/67074a8d808b8e4a0c15d67f36f13664fcff8143 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/syntacticDiagnostics/cache/50f4a014d14ada987c125e6ea55d4e6e75605313} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/syntacticDiagnostics/cache/6eb75399e6e0179b01b9d8cb1afc01f5068ef4f0 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/syntacticDiagnostics/cache/58aa8c228c99b690d3ca1f3b464585c41d1cd4bb} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/syntacticDiagnostics/cache/7c0e3c33301dea7e674a558fac5e4f028dbaa3ad → rpt2_e52dc086a65136b8064433446ffcd05307935b95/syntacticDiagnostics/cache/592d89407340c5ec6ad006df327e588b3f442eca} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/syntacticDiagnostics/cache/934e86e88e5eef117e7f7c7e98bb7b13ee83e8af → rpt2_e52dc086a65136b8064433446ffcd05307935b95/syntacticDiagnostics/cache/59783c8cc0cc9d984f5407c218d213bca4c98503} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/syntacticDiagnostics/cache/a282f7f4f34b6e0f7604a1e31cac2d2efbc0304c → rpt2_e52dc086a65136b8064433446ffcd05307935b95/syntacticDiagnostics/cache/61fa6cf725249a1cae9b94b74a8c23aa3efd2ca1} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/syntacticDiagnostics/cache/b1af8b4bca5d49b190d355a5d7186b277280db7e → rpt2_e52dc086a65136b8064433446ffcd05307935b95/syntacticDiagnostics/cache/89f8a81d9d078b69f9fa7fa95251b38ccc394a3b} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/syntacticDiagnostics/cache/b5f1f1702282c76ceff0f0ff97a3ba80b5adeccc → rpt2_e52dc086a65136b8064433446ffcd05307935b95/syntacticDiagnostics/cache/b32ea8d6d3de0c6d8e178eff069fea4e11fa92b1} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/syntacticDiagnostics/cache/bcfb396489824911797b349d7388000f2b3a3298 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/syntacticDiagnostics/cache/c05be8364ff56aba0298689783666ddb97a31285} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/syntacticDiagnostics/cache/f2e98088f53c88114a0a5322154f96a639246440 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/syntacticDiagnostics/cache/e23bf49223ba8b7ec926e46c40b27b0353cfc50e} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/syntacticDiagnostics/cache/f385a84342a7d9131d8da13c2546cde25fa23f1d → rpt2_e52dc086a65136b8064433446ffcd05307935b95/syntacticDiagnostics/cache/eec92c105b2694c31bff21903ddc3ef81af8f056} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/types/cache/24fbc0427075baf3ac3fee2ada4ddd2fdd6804a6 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/types/cache/20b49cde4def23063b280689e4ff4d5a3803712b} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/types/cache/3050043c8485297b366404c9b699f00a98a44b3c → rpt2_e52dc086a65136b8064433446ffcd05307935b95/types/cache/3809196a67de680945038f2b4846e2e3b4af35aa} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/types/cache/4dffa8599530c3200ba2fa8029fa291435ba7cf7 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/types/cache/4ad5d47b1ce7bf45cc7d9ff8c970e1fc57f446f3} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/types/cache/603166e7191a1eb2b59e6dc3a0c5060e83e42bf5 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/types/cache/5a0816a3c916ff0e4961dc0ec2da48646f2ac5aa} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/types/cache/6a0bc58668c059b99bff8dba6f0246cb049f0db9 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/types/cache/6182f5491d41e8f10acfbcf46ee875587904f5a3} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/types/cache/7351d2ef4cb3d5388301a3ad1d1f7e3a0782c0bd → rpt2_e52dc086a65136b8064433446ffcd05307935b95/types/cache/7ca2e31bcece668dfa5de5e1349ba34a757b5140} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/types/cache/8d7296121e0007eebc1b0eabcfcc2a262d6bbc22 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/types/cache/86a4b0102f5568ac0a5b946d05c55f42c30b472d} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/types/cache/8fe39fe93705cfe38c1944a307c3fd64e5985d1e → rpt2_e52dc086a65136b8064433446ffcd05307935b95/types/cache/87fae47dd5b05377c04cfe377699d748414dc1c9} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/types/cache/9f92f7bfd4bd0aa870a95101ec02f2a32337ff1f → rpt2_e52dc086a65136b8064433446ffcd05307935b95/types/cache/a7c23ecebcaf23c9346007731c5796b96c580738} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/types/cache/a6e317ef3069e9a270811fbc729535be3c405f41 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/types/cache/ac4d101c3489192db3e0ec98430a2336cba9a741} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/types/cache/ac8bef3228680d10f4db046facede43040f41854 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/types/cache/b1eb441c5b806d06ba6bb36fcfd0cc4746c23a8a} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/types/cache/afe32918d3a600939f39f4fcfb6852fe43f8ada9 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/types/cache/b7942903000069a51e317fef1595a8ea1d8b828d} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/types/cache/bbe22fc71946abdfc667c2388606bfe83397ec81 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/types/cache/cee91236390168fd38b01aaae7bed3099bb4555a} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/types/cache/d7bc52f98e9a008b81c621d963e9d4a276c80ee3 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/types/cache/d7c87ce194d923e6f02c7e570008e88ade1cbabf} +0 -0
- package/.rpt2_cache/{rpt2_3297a01a1b62f1695764463c584003ad1da34817/types/cache/ddcd4d72185f8c85750f6f2f755c1152fddafdf4 → rpt2_e52dc086a65136b8064433446ffcd05307935b95/types/cache/fba70878178c036fb4e9e1f19bdb465a1270d258} +0 -0
- package/package.json +1 -1
- package/.idea/keeperapi.iml +0 -12
- package/.idea/modules.xml +0 -8
- package/.rpt2_cache/rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/code/cache/1c87a75f7bda91e438f008e21dafe531c949031d +0 -1
- package/.rpt2_cache/rpt2_02b50c05ca0c5f1826efd221b9443199179ac6f1/code/cache/55ab809efdb0061fba3df7fa2029e2706a361534 +0 -1
- package/.rpt2_cache/rpt2_3297a01a1b62f1695764463c584003ad1da34817/code/cache/0155dc333b076ed1526d900b68620ead8c8d8b6b +0 -1
- package/.rpt2_cache/rpt2_3297a01a1b62f1695764463c584003ad1da34817/code/cache/0bd8fcd9e5871476984908e9d214bc12244a56c7 +0 -1
- package/.rpt2_cache/rpt2_3297a01a1b62f1695764463c584003ad1da34817/code/cache/4af634b56884c8fd08ba3107422b0108644ee513 +0 -1
- package/.rpt2_cache/rpt2_3297a01a1b62f1695764463c584003ad1da34817/code/cache/624184538e182d7e8888620f356c12b51bbcc6ca +0 -1
- package/.rpt2_cache/rpt2_3297a01a1b62f1695764463c584003ad1da34817/code/cache/67074a8d808b8e4a0c15d67f36f13664fcff8143 +0 -1
- package/.rpt2_cache/rpt2_3297a01a1b62f1695764463c584003ad1da34817/code/cache/6eb75399e6e0179b01b9d8cb1afc01f5068ef4f0 +0 -1
- package/.rpt2_cache/rpt2_3297a01a1b62f1695764463c584003ad1da34817/code/cache/7c0e3c33301dea7e674a558fac5e4f028dbaa3ad +0 -1
- package/.rpt2_cache/rpt2_3297a01a1b62f1695764463c584003ad1da34817/code/cache/934e86e88e5eef117e7f7c7e98bb7b13ee83e8af +0 -1
- package/.rpt2_cache/rpt2_3297a01a1b62f1695764463c584003ad1da34817/code/cache/a282f7f4f34b6e0f7604a1e31cac2d2efbc0304c +0 -1
- package/.rpt2_cache/rpt2_3297a01a1b62f1695764463c584003ad1da34817/code/cache/b1af8b4bca5d49b190d355a5d7186b277280db7e +0 -1
- package/.rpt2_cache/rpt2_3297a01a1b62f1695764463c584003ad1da34817/code/cache/f385a84342a7d9131d8da13c2546cde25fa23f1d +0 -1
- package/.rpt2_cache/rpt2_3297a01a1b62f1695764463c584003ad1da34817/types/cache/df632d4bb144fc3001f92ea2a2678baeb386dcc4 +0 -0
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/code/cache/09a21931f2a982e751cd2b7ce45fa6df0bfdbfc6 +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/code/cache/b5f1f1702282c76ceff0f0ff97a3ba80b5adeccc +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/code/cache/bcfb396489824911797b349d7388000f2b3a3298 +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/code/cache/f2e98088f53c88114a0a5322154f96a639246440 +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/semanticDiagnostics/cache/09a21931f2a982e751cd2b7ce45fa6df0bfdbfc6 +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/semanticDiagnostics/cache/1c87a75f7bda91e438f008e21dafe531c949031d +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/semanticDiagnostics/cache/55ab809efdb0061fba3df7fa2029e2706a361534 +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/semanticDiagnostics/cache/5e18f43a9b613f6f6f2302b3a4e5176f6bc92fc5 +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/semanticDiagnostics/cache/624184538e182d7e8888620f356c12b51bbcc6ca +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/semanticDiagnostics/cache/6eb75399e6e0179b01b9d8cb1afc01f5068ef4f0 +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/semanticDiagnostics/cache/7c0e3c33301dea7e674a558fac5e4f028dbaa3ad +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/semanticDiagnostics/cache/7fbbd271f2a6fe2a55d7ee5e3ad7716e7cf051ba +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/semanticDiagnostics/cache/8378bbd69de2cb8546f7e5f380a4ca34a2b252ac +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/semanticDiagnostics/cache/85bbe002887f4018a0fe647b8b05194dbc048f66 +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/semanticDiagnostics/cache/8f851753b53908ad3f972c31696dbdeeed9b4661 +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/semanticDiagnostics/cache/b5f1f1702282c76ceff0f0ff97a3ba80b5adeccc +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/semanticDiagnostics/cache/bcfb396489824911797b349d7388000f2b3a3298 +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/semanticDiagnostics/cache/dc4d6f4549ac6f4017ff017e35d2349480068cdf +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/semanticDiagnostics/cache/e4d5be0687b96b93a032d9922fa511f04ed27deb +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/semanticDiagnostics/cache/f2e98088f53c88114a0a5322154f96a639246440 +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/semanticDiagnostics/cache/f385a84342a7d9131d8da13c2546cde25fa23f1d +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/syntacticDiagnostics/cache/09a21931f2a982e751cd2b7ce45fa6df0bfdbfc6 +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/syntacticDiagnostics/cache/1c87a75f7bda91e438f008e21dafe531c949031d +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/syntacticDiagnostics/cache/55ab809efdb0061fba3df7fa2029e2706a361534 +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/syntacticDiagnostics/cache/5e18f43a9b613f6f6f2302b3a4e5176f6bc92fc5 +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/syntacticDiagnostics/cache/624184538e182d7e8888620f356c12b51bbcc6ca +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/syntacticDiagnostics/cache/6eb75399e6e0179b01b9d8cb1afc01f5068ef4f0 +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/syntacticDiagnostics/cache/7c0e3c33301dea7e674a558fac5e4f028dbaa3ad +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/syntacticDiagnostics/cache/7fbbd271f2a6fe2a55d7ee5e3ad7716e7cf051ba +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/syntacticDiagnostics/cache/8378bbd69de2cb8546f7e5f380a4ca34a2b252ac +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/syntacticDiagnostics/cache/85bbe002887f4018a0fe647b8b05194dbc048f66 +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/syntacticDiagnostics/cache/8f851753b53908ad3f972c31696dbdeeed9b4661 +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/syntacticDiagnostics/cache/b5f1f1702282c76ceff0f0ff97a3ba80b5adeccc +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/syntacticDiagnostics/cache/bcfb396489824911797b349d7388000f2b3a3298 +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/syntacticDiagnostics/cache/dc4d6f4549ac6f4017ff017e35d2349480068cdf +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/syntacticDiagnostics/cache/e4d5be0687b96b93a032d9922fa511f04ed27deb +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/syntacticDiagnostics/cache/f2e98088f53c88114a0a5322154f96a639246440 +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/syntacticDiagnostics/cache/f385a84342a7d9131d8da13c2546cde25fa23f1d +0 -1
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/types/cache/24fbc0427075baf3ac3fee2ada4ddd2fdd6804a6 +0 -0
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/types/cache/3050043c8485297b366404c9b699f00a98a44b3c +0 -0
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/types/cache/4dffa8599530c3200ba2fa8029fa291435ba7cf7 +0 -0
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/types/cache/6a0bc58668c059b99bff8dba6f0246cb049f0db9 +0 -0
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/types/cache/7351d2ef4cb3d5388301a3ad1d1f7e3a0782c0bd +0 -0
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/types/cache/8d7296121e0007eebc1b0eabcfcc2a262d6bbc22 +0 -0
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/types/cache/8fe39fe93705cfe38c1944a307c3fd64e5985d1e +0 -0
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/types/cache/9f92f7bfd4bd0aa870a95101ec02f2a32337ff1f +0 -0
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/types/cache/a6e317ef3069e9a270811fbc729535be3c405f41 +0 -0
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/types/cache/ac8bef3228680d10f4db046facede43040f41854 +0 -0
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/types/cache/afe32918d3a600939f39f4fcfb6852fe43f8ada9 +0 -0
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/types/cache/bbe22fc71946abdfc667c2388606bfe83397ec81 +0 -0
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/types/cache/d7bc52f98e9a008b81c621d963e9d4a276c80ee3 +0 -0
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/types/cache/ddcd4d72185f8c85750f6f2f755c1152fddafdf4 +0 -0
- package/.rpt2_cache/rpt2_695cfcfdb8ad5fdc842bebc6c6523fff84b97236/types/cache/df632d4bb144fc3001f92ea2a2678baeb386dcc4 +0 -0
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/code/cache/0155dc333b076ed1526d900b68620ead8c8d8b6b +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/code/cache/0bd8fcd9e5871476984908e9d214bc12244a56c7 +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/code/cache/1c87a75f7bda91e438f008e21dafe531c949031d +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/code/cache/4af634b56884c8fd08ba3107422b0108644ee513 +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/code/cache/55ab809efdb0061fba3df7fa2029e2706a361534 +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/code/cache/61937b699b545d77d9bb72af5e7182c1803ae24c +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/code/cache/651b0423c46988097da560167e3f6f432e8fbfc8 +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/code/cache/67074a8d808b8e4a0c15d67f36f13664fcff8143 +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/code/cache/6eb75399e6e0179b01b9d8cb1afc01f5068ef4f0 +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/code/cache/7c0e3c33301dea7e674a558fac5e4f028dbaa3ad +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/code/cache/934e86e88e5eef117e7f7c7e98bb7b13ee83e8af +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/code/cache/b1af8b4bca5d49b190d355a5d7186b277280db7e +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/code/cache/f385a84342a7d9131d8da13c2546cde25fa23f1d +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/semanticDiagnostics/cache/0155dc333b076ed1526d900b68620ead8c8d8b6b +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/semanticDiagnostics/cache/0bd8fcd9e5871476984908e9d214bc12244a56c7 +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/semanticDiagnostics/cache/1c87a75f7bda91e438f008e21dafe531c949031d +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/semanticDiagnostics/cache/4af634b56884c8fd08ba3107422b0108644ee513 +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/semanticDiagnostics/cache/55ab809efdb0061fba3df7fa2029e2706a361534 +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/semanticDiagnostics/cache/61937b699b545d77d9bb72af5e7182c1803ae24c +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/semanticDiagnostics/cache/651b0423c46988097da560167e3f6f432e8fbfc8 +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/semanticDiagnostics/cache/67074a8d808b8e4a0c15d67f36f13664fcff8143 +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/semanticDiagnostics/cache/6eb75399e6e0179b01b9d8cb1afc01f5068ef4f0 +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/semanticDiagnostics/cache/7c0e3c33301dea7e674a558fac5e4f028dbaa3ad +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/semanticDiagnostics/cache/934e86e88e5eef117e7f7c7e98bb7b13ee83e8af +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/semanticDiagnostics/cache/b1af8b4bca5d49b190d355a5d7186b277280db7e +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/semanticDiagnostics/cache/f385a84342a7d9131d8da13c2546cde25fa23f1d +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/syntacticDiagnostics/cache/0155dc333b076ed1526d900b68620ead8c8d8b6b +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/syntacticDiagnostics/cache/0bd8fcd9e5871476984908e9d214bc12244a56c7 +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/syntacticDiagnostics/cache/1c87a75f7bda91e438f008e21dafe531c949031d +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/syntacticDiagnostics/cache/4af634b56884c8fd08ba3107422b0108644ee513 +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/syntacticDiagnostics/cache/55ab809efdb0061fba3df7fa2029e2706a361534 +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/syntacticDiagnostics/cache/61937b699b545d77d9bb72af5e7182c1803ae24c +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/syntacticDiagnostics/cache/651b0423c46988097da560167e3f6f432e8fbfc8 +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/syntacticDiagnostics/cache/67074a8d808b8e4a0c15d67f36f13664fcff8143 +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/syntacticDiagnostics/cache/6eb75399e6e0179b01b9d8cb1afc01f5068ef4f0 +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/syntacticDiagnostics/cache/7c0e3c33301dea7e674a558fac5e4f028dbaa3ad +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/syntacticDiagnostics/cache/934e86e88e5eef117e7f7c7e98bb7b13ee83e8af +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/syntacticDiagnostics/cache/b1af8b4bca5d49b190d355a5d7186b277280db7e +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/syntacticDiagnostics/cache/f385a84342a7d9131d8da13c2546cde25fa23f1d +0 -1
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/types/cache/24fbc0427075baf3ac3fee2ada4ddd2fdd6804a6 +0 -0
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/types/cache/3050043c8485297b366404c9b699f00a98a44b3c +0 -0
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/types/cache/4dffa8599530c3200ba2fa8029fa291435ba7cf7 +0 -0
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/types/cache/603166e7191a1eb2b59e6dc3a0c5060e83e42bf5 +0 -0
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/types/cache/6a0bc58668c059b99bff8dba6f0246cb049f0db9 +0 -0
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/types/cache/7351d2ef4cb3d5388301a3ad1d1f7e3a0782c0bd +0 -0
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/types/cache/8d7296121e0007eebc1b0eabcfcc2a262d6bbc22 +0 -0
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/types/cache/8fe39fe93705cfe38c1944a307c3fd64e5985d1e +0 -0
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/types/cache/9f92f7bfd4bd0aa870a95101ec02f2a32337ff1f +0 -0
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/types/cache/a6e317ef3069e9a270811fbc729535be3c405f41 +0 -0
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/types/cache/ac8bef3228680d10f4db046facede43040f41854 +0 -0
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/types/cache/afe32918d3a600939f39f4fcfb6852fe43f8ada9 +0 -0
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/types/cache/bbe22fc71946abdfc667c2388606bfe83397ec81 +0 -0
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/types/cache/d7bc52f98e9a008b81c621d963e9d4a276c80ee3 +0 -0
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/types/cache/ddcd4d72185f8c85750f6f2f755c1152fddafdf4 +0 -0
- package/.rpt2_cache/rpt2_91c74d821d2604d85061209debacd53e1a896747/types/cache/df632d4bb144fc3001f92ea2a2678baeb386dcc4 +0 -0
- package/dist/proto.d.ts +0 -50992
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"code":"import { __awaiter } from \"tslib\";\r\nimport { DeviceVerificationMethods } from './configuration';\r\nimport { KeeperEndpoint } from \"./endpoint\";\r\nimport { platform } from \"./platform\";\r\nimport { AuthorizedCommand, LoginCommand, LoginResponseResultCode } from \"./commands\";\r\nimport { chooseErrorMessage, decryptFromStorage, generateEncryptionKey, wrapPassword, generateUidBytes, isTwoFactorResultCode, normal64, normal64Bytes, resolvablePromise, webSafe64, webSafe64FromBytes } from \"./utils\";\r\nimport { accountSummaryMessage, getEnterprisePublicKeyMessage, logoutV3Message, requestCreateUserMessage, requestDeviceAdminApprovalMessage, requestDeviceVerificationMessage, ssoServiceProviderRequestMessage, startLoginMessage, startLoginMessageFromSessionToken, twoFactorSend2FAPushMessage, twoFactorValidateMessage, validateAuthHashMessage, validateDeviceVerificationCodeMessage } from './restMessages';\r\nimport { Authentication } from './proto';\r\nvar TwoFactorExpiration = Authentication.TwoFactorExpiration;\r\nvar TwoFactorPushType = Authentication.TwoFactorPushType;\r\nvar TwoFactorChannelType = Authentication.TwoFactorChannelType;\r\nvar LoginType = Authentication.LoginType;\r\nvar LoginMethod = Authentication.LoginMethod;\r\nfunction unifyLoginError(e) {\r\n if (e instanceof Error) {\r\n try {\r\n return JSON.parse(e.message);\r\n }\r\n catch (jsonError) {\r\n return {\r\n error: \"unknown\",\r\n message: e.message\r\n };\r\n }\r\n }\r\n else {\r\n return {\r\n error: e.result_code,\r\n message: e.result_code\r\n };\r\n }\r\n}\r\nvar CloseReasonCode;\r\n(function (CloseReasonCode) {\r\n CloseReasonCode[CloseReasonCode[\"CANNOT_ACCEPT\"] = 1003] = \"CANNOT_ACCEPT\";\r\n CloseReasonCode[CloseReasonCode[\"NOT_CONSISTENT\"] = 1007] = \"NOT_CONSISTENT\";\r\n CloseReasonCode[CloseReasonCode[\"VIOLATED_POLICY\"] = 1008] = \"VIOLATED_POLICY\";\r\n CloseReasonCode[CloseReasonCode[\"TRY_AGAIN_LATER\"] = 1013] = \"TRY_AGAIN_LATER\";\r\n})(CloseReasonCode || (CloseReasonCode = {}));\r\nexport class SocketListener {\r\n constructor(url, messageSessionUid, getConnectionRequest) {\r\n console.log('Connecting to ' + url);\r\n this.url = url;\r\n this.closeListeners = [];\r\n this.singleCloseListeners = [];\r\n this.messageListeners = [];\r\n this.singleMessageListeners = [];\r\n this.onOpenListeners = [];\r\n this.currentBackoffSeconds = SocketListener.getBaseReconnectionInterval();\r\n this.isClosedByClient = false;\r\n this.isConnected = false;\r\n if (getConnectionRequest)\r\n this.getConnectionRequest = getConnectionRequest;\r\n if (messageSessionUid) {\r\n this.messageSessionUid = messageSessionUid;\r\n this.createWebsocket(this.messageSessionUid);\r\n }\r\n else {\r\n this.createWebsocket();\r\n }\r\n }\r\n createWebsocket(messageSessionUid) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n if (this.getConnectionRequest && messageSessionUid) {\r\n const connectionRequest = yield this.getConnectionRequest(messageSessionUid);\r\n this.socket = platform.createWebsocket(`${this.url}/${connectionRequest}`);\r\n }\r\n else {\r\n this.socket = platform.createWebsocket(this.url);\r\n }\r\n this.socket.onOpen(() => {\r\n console.log('socket opened');\r\n clearTimeout(this.reconnectTimeout);\r\n this.currentBackoffSeconds = SocketListener.getBaseReconnectionInterval();\r\n this.handleOnOpen();\r\n });\r\n this.socket.onClose((event) => __awaiter(this, void 0, void 0, function* () {\r\n console.log('socket closed because: ', event);\r\n let reason;\r\n this.isConnected = false;\r\n try {\r\n reason = JSON.parse(event.reason);\r\n }\r\n catch (error) {\r\n console.log('No close reason. Error message is: ', error);\r\n if (!this.isClosedByClient) {\r\n this.reconnect();\r\n }\r\n return;\r\n }\r\n switch (event.code) {\r\n case CloseReasonCode.CANNOT_ACCEPT:\r\n // Exact messages that can come from CANNOT_ACCEPT:\r\n // - Push server is in progress of shutting down\r\n // - Push server is not registered with KA\r\n // - Cannot process encrypted message.xxxx\r\n if (reason && reason.close_reason.includes('Push server')) {\r\n // Tell User to try again\r\n this.handleClose({ code: event.code, reason });\r\n }\r\n else {\r\n // this would be an internal error and shouldnt reach here in production\r\n console.error('Incorrect internal error: ', reason.close_reason);\r\n }\r\n break;\r\n case CloseReasonCode.NOT_CONSISTENT:\r\n // Error Message: device timestamp: {time} is off by {off_time}\r\n //Tell User to adjust their system clock\r\n this.handleClose({ code: event.code, reason });\r\n break;\r\n case CloseReasonCode.VIOLATED_POLICY:\r\n // Error Message: duplicate messageSessionUid=${messageSessionUid}\r\n // Relogin if this happens\r\n this.handleClose({ code: event.code, reason });\r\n break;\r\n case CloseReasonCode.TRY_AGAIN_LATER:\r\n // Error Message: throttled messageSessionUid=${messageSessionUid}\r\n //Tell User to try again in 1 minute\r\n this.handleClose({ code: event.code, reason });\r\n break;\r\n default:\r\n if (!this.isClosedByClient) {\r\n this.reconnect();\r\n }\r\n }\r\n }));\r\n this.socket.onError((e) => {\r\n console.log('socket error: ' + e);\r\n });\r\n this.socket.onMessage(e => {\r\n this.handleMessage(e);\r\n });\r\n this.isConnected = true;\r\n });\r\n }\r\n registerLogin(sessionToken) {\r\n if (!this.socket)\r\n throw new Error('Socket not available');\r\n this.socket.send(sessionToken);\r\n }\r\n onOpen(callback) {\r\n this.onOpenListeners.push(callback);\r\n }\r\n onClose(callback) {\r\n if (!this.socket)\r\n throw new Error('Socket not available');\r\n this.socket.onClose(callback);\r\n }\r\n onError(callback) {\r\n if (!this.socket)\r\n throw new Error('Socket not available');\r\n this.socket.onError(callback);\r\n }\r\n handleOnOpen() {\r\n for (let callback of this.onOpenListeners) {\r\n callback();\r\n }\r\n }\r\n handleMessage(messageData) {\r\n for (let callback of this.messageListeners) {\r\n callback(messageData);\r\n }\r\n for (let { resolve } of this.singleMessageListeners) {\r\n resolve(messageData);\r\n }\r\n this.singleMessageListeners.length = 0;\r\n }\r\n handleClose(messageData) {\r\n for (let callback of this.closeListeners) {\r\n callback(messageData);\r\n }\r\n for (let { resolve } of this.singleCloseListeners) {\r\n resolve(messageData);\r\n }\r\n this.singleCloseListeners.length = 0;\r\n }\r\n onPushMessage(callback) {\r\n this.messageListeners.push(callback);\r\n }\r\n onCloseMessage(callback) {\r\n this.closeListeners.push(callback);\r\n }\r\n getPushMessage() {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n console.log('Awaiting web socket message...');\r\n return new Promise((resolve, reject) => {\r\n this.singleMessageListeners.push({ resolve, reject });\r\n });\r\n });\r\n }\r\n static getBaseReconnectionInterval() {\r\n return Math.random() * 5;\r\n }\r\n reconnect() {\r\n console.log(`Reconnecting websocket in ${this.currentBackoffSeconds.toFixed(2)} seconds...`);\r\n // schedule next reconnect attempt\r\n clearTimeout(this.reconnectTimeout);\r\n this.reconnectTimeout = setTimeout(() => {\r\n this.createWebsocket(this.messageSessionUid);\r\n }, this.currentBackoffSeconds * 1000);\r\n this.currentBackoffSeconds = Math.min(this.currentBackoffSeconds * 2, 60); // Cap at 1 min, as suggested by docs\r\n }\r\n disconnect() {\r\n this.isClosedByClient = true;\r\n this.socket = null;\r\n this.messageListeners.length = 0;\r\n this.currentBackoffSeconds = Math.random() * 5;\r\n clearTimeout(this.reconnectTimeout);\r\n this.singleMessageListeners.length = 0;\r\n }\r\n getIsConnected() {\r\n return this.isConnected;\r\n }\r\n}\r\nexport function socketSendMessage(message, socket, createdSocket) {\r\n switch (socket.readyState) {\r\n case 0: // CONNECTING\r\n if (createdSocket.messageQueue.indexOf(message) === -1)\r\n createdSocket.messageQueue.push(message);\r\n break;\r\n case 1: // OPEN\r\n if (createdSocket.messageQueue.indexOf(message) === -1)\r\n createdSocket.messageQueue.push(message);\r\n if (createdSocket.messageQueue.length > 0) {\r\n for (let counter = 0; counter < createdSocket.messageQueue.length; counter++) {\r\n socket.send(createdSocket.messageQueue[counter]);\r\n }\r\n }\r\n createdSocket.messageQueue.length = 0;\r\n break;\r\n case 2: // CLOSING\r\n case 3: // CLOSED\r\n createdSocket.messageQueue.length = 0;\r\n console.error('Trying to send a message while in the CLOSING or CLOSED state');\r\n break;\r\n }\r\n}\r\nexport var UserType;\r\n(function (UserType) {\r\n UserType[\"normal\"] = \"normal\";\r\n UserType[\"onsiteSso\"] = \"onsite_sso\";\r\n UserType[\"cloudSso\"] = \"cloud_sso\";\r\n})(UserType || (UserType = {}));\r\nexport class Auth {\r\n constructor(options) {\r\n this.ssoLogoutUrl = '';\r\n this.userType = UserType.normal;\r\n this.ssoSessionId = '';\r\n this._sessionToken = '';\r\n this._username = '';\r\n if (options.deviceConfig && options.deviceToken) {\r\n throw new Error('Both loginV2 and loginV3 token strategies supplied');\r\n }\r\n this.options = options;\r\n if (!this.options.deviceConfig) {\r\n this.options.deviceConfig = {\r\n deviceName: null,\r\n deviceToken: null,\r\n privateKey: null,\r\n publicKey: null,\r\n transmissionKeyId: null,\r\n };\r\n }\r\n if (!this.options.sessionStorage) {\r\n this.options.sessionStorage = {\r\n lastUsername: null,\r\n getCloneCode: () => null,\r\n saveCloneCode: () => new Promise((res, rej) => { }),\r\n getSessionParameters: () => Promise.resolve(null),\r\n saveSessionParameters: () => Promise.resolve()\r\n };\r\n }\r\n this.endpoint = new KeeperEndpoint(this.options);\r\n this.endpoint.clientVersion = this.options.clientVersion || \"c14.0.0\";\r\n this.messageSessionUid = generateUidBytes();\r\n }\r\n get _endpoint() {\r\n return this.endpoint;\r\n }\r\n get accountUid() {\r\n return this._accountUid;\r\n }\r\n get clientVersion() {\r\n return this.endpoint.clientVersion;\r\n }\r\n get sessionToken() {\r\n return this._sessionToken;\r\n }\r\n get sessionTokenType() {\r\n return this._sessionTokenType;\r\n }\r\n get username() {\r\n return this._username;\r\n }\r\n getMessageSessionUid() {\r\n return this.messageSessionUid;\r\n }\r\n idpLogout() {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n if (this.userType == UserType.cloudSso) {\r\n const payload = yield this.endpoint.prepareSsoPayload(this.messageSessionUid, this.username, this.ssoSessionId);\r\n const params = new URLSearchParams({\r\n 'payload': payload,\r\n });\r\n const url = `${this.ssoLogoutUrl}?${String(params)}`;\r\n try {\r\n yield this.options.authUI3.idpLogout(url);\r\n }\r\n catch (e) {\r\n console.log('Logout errored out: ' + e);\r\n }\r\n }\r\n else if (this.userType == UserType.onsiteSso) {\r\n const params = new URLSearchParams({\r\n 'embedded': 'true',\r\n 'username': this.username,\r\n 'session_id': this.ssoSessionId,\r\n 'dest': 'vault'\r\n });\r\n const url = `${this.ssoLogoutUrl}?${String(params)}`;\r\n try {\r\n yield this.options.authUI3.idpLogout(url);\r\n }\r\n catch (e) {\r\n console.log('Logout errored out: ' + e);\r\n }\r\n }\r\n });\r\n }\r\n logout() {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n yield this.executeRest(logoutV3Message());\r\n yield this.idpLogout();\r\n });\r\n }\r\n connect() {\r\n // When connecting to govcloud, remove the govcloud subdomain. There is no list of urls that do/don't require the govcloud subdomain, so for now do this.\r\n const url = `wss://push.services.${this.options.host.replace('govcloud.', '')}/wss_open_connection`;\r\n const getConnectionRequest = (messageSessionUid) => this.endpoint.getPushConnectionRequest(messageSessionUid);\r\n this.socket = new SocketListener(url, this.messageSessionUid, getConnectionRequest);\r\n console.log(\"Socket connected\");\r\n this.onCloseMessage((closeReason) => {\r\n if (this.options.onCommandFailure) {\r\n this.options.onCommandFailure({\r\n result_code: closeReason.code.toString(),\r\n message: closeReason.reason.close_reason\r\n });\r\n }\r\n });\r\n }\r\n disconnect() {\r\n if (this.socket) {\r\n this.socket.disconnect();\r\n delete this.socket;\r\n }\r\n }\r\n /**\r\n * useAlternate is to pass to the next function to use an alternate method, for testing a different path.\r\n */\r\n loginV3({ username = '', password = null, loginToken = null, loginType = Authentication.LoginType.NORMAL, loginMethod = Authentication.LoginMethod.EXISTING_ACCOUNT, v2TwoFactorToken = null, resumeSessionOnly = false, givenSessionToken = null, }) {\r\n var _a, _b;\r\n return __awaiter(this, void 0, void 0, function* () {\r\n this._username = username || this.options.sessionStorage.lastUsername;\r\n let wrappedPassword;\r\n if (password) {\r\n if (typeof password === 'string') {\r\n wrappedPassword = wrapPassword(password);\r\n }\r\n else\r\n wrappedPassword = password;\r\n }\r\n let needUserName;\r\n let isAlternate = false;\r\n const handleError = (resultCode, loginResponse, error) => {\r\n const errorMessage = chooseErrorMessage(loginResponse.loginState);\r\n if (this.options.onCommandFailure) {\r\n this.options.onCommandFailure({\r\n result_code: resultCode,\r\n message: errorMessage,\r\n error: error.message,\r\n });\r\n }\r\n else {\r\n throw error;\r\n }\r\n };\r\n while (true) {\r\n if (!this.options.deviceConfig.deviceToken) {\r\n yield this.endpoint.registerDevice();\r\n }\r\n if (!this.socket || !this.socket.getIsConnected()) {\r\n this.connect();\r\n }\r\n const startLoginRequest = {\r\n clientVersion: this.endpoint.clientVersion,\r\n encryptedDeviceToken: (_a = this.options.deviceConfig.deviceToken) !== null && _a !== void 0 ? _a : null,\r\n messageSessionUid: this.messageSessionUid,\r\n loginMethod: loginMethod,\r\n cloneCode: yield this.options.sessionStorage.getCloneCode(this.options.host, this._username),\r\n v2TwoFactorToken: v2TwoFactorToken\r\n };\r\n if (loginType !== LoginType.NORMAL && !!loginType) {\r\n startLoginRequest.loginType = loginType;\r\n loginType = undefined;\r\n if (startLoginRequest.loginType == LoginType.ALTERNATE) {\r\n isAlternate = true;\r\n }\r\n }\r\n if (loginToken) {\r\n startLoginRequest.encryptedLoginToken = loginToken;\r\n }\r\n if (needUserName || !this.options.useSessionResumption || isAlternate) {\r\n startLoginRequest.username = this._username;\r\n needUserName = false;\r\n }\r\n var loginResponse;\r\n if (givenSessionToken) {\r\n this._sessionToken = givenSessionToken;\r\n try {\r\n loginResponse = yield this.executeRest(startLoginMessageFromSessionToken(startLoginRequest));\r\n }\r\n catch (e) {\r\n if (this.options.onCommandFailure) {\r\n this.options.onCommandFailure({\r\n result_code: 'failed_login_from_existing_session_token',\r\n message: e.message,\r\n });\r\n }\r\n }\r\n }\r\n else {\r\n loginResponse = yield this.executeRest(startLoginMessage(startLoginRequest));\r\n }\r\n if (loginResponse.cloneCode && loginResponse.cloneCode.length > 0) {\r\n this.options.sessionStorage.saveCloneCode(this.options.host, this._username, loginResponse.cloneCode);\r\n }\r\n if (resumeSessionOnly && loginResponse && (loginResponse.loginState != Authentication.LoginState.LOGGED_IN)) {\r\n return {\r\n result: 'notLoggedin'\r\n };\r\n }\r\n console.log(loginResponse);\r\n console.log(\"login state =\", loginResponse.loginState);\r\n switch (loginResponse.loginState) {\r\n case Authentication.LoginState.ACCOUNT_LOCKED:\r\n case Authentication.LoginState.INVALID_LOGINSTATE:\r\n case Authentication.LoginState.LOGGED_OUT:\r\n case Authentication.LoginState.AFTER_CLOUD_SSO_LOGIN:\r\n case Authentication.LoginState.LOGIN_TOKEN_EXPIRED:\r\n case Authentication.LoginState.DEVICE_ACCOUNT_LOCKED:\r\n case Authentication.LoginState.DEVICE_LOCKED:\r\n handleError('generic_error', loginResponse, new Error(`Unable to login, login state = ${loginResponse.loginState}`));\r\n return;\r\n case Authentication.LoginState.REQUIRES_ACCOUNT_CREATION:\r\n if (this.userType === UserType.cloudSso) {\r\n yield this.createSsoUser(loginResponse.encryptedLoginToken);\r\n }\r\n else {\r\n yield this.createUser(this._username, wrappedPassword);\r\n }\r\n break;\r\n case Authentication.LoginState.UPGRADE:\r\n handleError('generic_error', loginResponse, new Error(`Unable to login, login state = ${loginResponse.loginState}`));\r\n return;\r\n case Authentication.LoginState.REQUIRES_USERNAME:\r\n if (!this._username) {\r\n handleError('generic_error', loginResponse, new Error(`No username supplied, login state = ${loginResponse.loginState}`));\r\n return;\r\n }\r\n needUserName = true;\r\n break;\r\n case Authentication.LoginState.DEVICE_APPROVAL_REQUIRED:\r\n case Authentication.LoginState.REQUIRES_DEVICE_ENCRYPTED_DATA_KEY:\r\n if (!loginResponse.encryptedLoginToken) {\r\n throw new Error('Login token missing from API response');\r\n }\r\n if (givenSessionToken)\r\n return { result: 'notLoggedin' };\r\n try {\r\n loginToken = yield this.verifyDevice(username, loginResponse.encryptedLoginToken, loginResponse.loginState == Authentication.LoginState.REQUIRES_DEVICE_ENCRYPTED_DATA_KEY);\r\n }\r\n catch (e) {\r\n handleError('auth_failed', loginResponse, e);\r\n return;\r\n }\r\n break;\r\n case Authentication.LoginState.LICENSE_EXPIRED:\r\n handleError('license_expired', loginResponse, new Error(loginResponse.message));\r\n return;\r\n case Authentication.LoginState.REGION_REDIRECT:\r\n // TODO: put region_redirect in its own loop since\r\n // its unique to the other states.\r\n this.options.host = loginResponse.stateSpecificValue;\r\n loginToken = undefined;\r\n if (this.options.onRegionChanged) {\r\n this.options.onRegionChanged(loginResponse.stateSpecificValue);\r\n }\r\n // Current socket no longer pointing to the right region\r\n this.disconnect();\r\n break;\r\n case Authentication.LoginState.REDIRECT_CLOUD_SSO:\r\n console.log(\"Cloud SSO Connect login\");\r\n if (!loginResponse.url) {\r\n throw new Error('URL missing from API response');\r\n }\r\n this.ssoLogoutUrl = loginResponse.url.replace('login', 'logout');\r\n this.userType = UserType.cloudSso;\r\n let payload = yield this._endpoint.prepareSsoPayload(this.messageSessionUid);\r\n let cloudSsoLoginUrl = loginResponse.url + \"?payload=\" + payload;\r\n if (this.options.authUI3.redirectCallback) {\r\n this.options.authUI3.redirectCallback(cloudSsoLoginUrl);\r\n return;\r\n }\r\n else if (this.options.authUI3.ssoLogin) {\r\n const token = yield this.options.authUI3.ssoLogin(cloudSsoLoginUrl);\r\n const cloudResp = yield this.endpoint.decryptCloudSsoResponse(token);\r\n console.log(cloudResp);\r\n this._username = cloudResp.email;\r\n loginToken = cloudResp.encryptedLoginToken;\r\n break;\r\n }\r\n case Authentication.LoginState.REDIRECT_ONSITE_SSO:\r\n console.log(\"SSO Connect login\");\r\n if (!loginResponse.url) {\r\n throw new Error('URL missing from API response');\r\n }\r\n this.ssoLogoutUrl = loginResponse.url.replace('login', 'logout');\r\n this.userType = UserType.onsiteSso;\r\n let onsitePublicKey = yield this._endpoint.getOnsitePublicKey();\r\n let onsiteSsoLoginUrl = loginResponse.url + '?embedded&key=' + onsitePublicKey;\r\n if (this.options.authUI3.redirectCallback) {\r\n this.options.authUI3.redirectCallback(onsiteSsoLoginUrl);\r\n return;\r\n }\r\n else if (this.options.authUI3.ssoLogin) {\r\n const onsiteResp = yield this.options.authUI3.ssoLogin(onsiteSsoLoginUrl);\r\n console.log(onsiteResp);\r\n this._username = onsiteResp.email;\r\n wrappedPassword = wrapPassword(onsiteResp.password);\r\n loginType = LoginType.SSO;\r\n loginMethod = LoginMethod.AFTER_SSO;\r\n break;\r\n }\r\n case Authentication.LoginState.REQUIRES_2FA:\r\n try {\r\n loginToken = yield this.handleTwoFactor(loginResponse);\r\n }\r\n catch (e) {\r\n if ((e === null || e === void 0 ? void 0 : e.message) && e.message == 'push_declined') {\r\n handleError(e.message, loginResponse, e);\r\n }\r\n }\r\n break;\r\n case Authentication.LoginState.REQUIRES_AUTH_HASH:\r\n // TODO: loop in authHashLogin until successful or get into\r\n // some other state other than Authentication.LoginState.REQUIRES_AUTH_HASH\r\n if (!wrappedPassword && ((_b = this.options.authUI3) === null || _b === void 0 ? void 0 : _b.getPassword)) {\r\n password = yield this.options.authUI3.getPassword();\r\n if (password) {\r\n if (typeof password === 'string') {\r\n wrappedPassword = wrapPassword(password);\r\n }\r\n else\r\n wrappedPassword = password;\r\n }\r\n }\r\n if (!wrappedPassword) {\r\n throw new Error('User password required and not provided');\r\n }\r\n try {\r\n yield this.authHashLogin(loginResponse, username, wrappedPassword, isAlternate);\r\n return;\r\n }\r\n catch (e) {\r\n wrappedPassword = null;\r\n handleError('auth_failed', loginResponse, e);\r\n break;\r\n }\r\n case Authentication.LoginState.LOGGED_IN:\r\n try {\r\n yield this.loginSuccess(loginResponse, null);\r\n console.log(\"Exiting on loginState = LOGGED_IN\");\r\n return;\r\n }\r\n catch (e) {\r\n console.log('Error in Authentication.LoginState.LOGGED_IN: ', e);\r\n return;\r\n }\r\n }\r\n }\r\n });\r\n }\r\n /**\r\n * The MV3 browser extension runs in a service worker that shuts down every 5 minutes.\r\n * This rehydrates the Auth class and re-opens our socket with the session parameters.\r\n */\r\n continueSession() {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n if (!this.options.sessionStorage) {\r\n throw new Error('Missing configuration option to get session parameters');\r\n }\r\n const sessionParams = yield this.options.sessionStorage.getSessionParameters();\r\n if (!sessionParams) {\r\n throw new Error('No session to resume');\r\n }\r\n this.messageSessionUid = sessionParams.messageSessionUid;\r\n this._username = sessionParams.username;\r\n this.dataKey = sessionParams.dataKey;\r\n this.clientKey = sessionParams.clientKey;\r\n this.privateKey = sessionParams.privateKey;\r\n this.eccPrivateKey = sessionParams.eccPrivateKey;\r\n this.eccPublicKey = sessionParams.eccPublicKey;\r\n this.enterpriseEccPublicKey = sessionParams.enterpriseEccPublicKey;\r\n this.ssoLogoutUrl = sessionParams.ssoLogoutUrl;\r\n this.ssoSessionId = sessionParams.ssoSessionId;\r\n this.userType = sessionParams.userType;\r\n if (!this.socket || !this.socket.getIsConnected()) {\r\n this.connect();\r\n }\r\n this.setLoginParameters(sessionParams.sessionToken, sessionParams.sessionTokenType, sessionParams.accountUid);\r\n });\r\n }\r\n getSessionParameters() {\r\n return {\r\n accountUid: this._accountUid,\r\n username: this._username,\r\n sessionToken: this._sessionToken,\r\n sessionTokenType: this._sessionTokenType,\r\n dataKey: this.dataKey,\r\n privateKey: this.privateKey,\r\n eccPrivateKey: this.eccPrivateKey,\r\n eccPublicKey: this.eccPublicKey,\r\n enterpriseEccPublicKey: this.enterpriseEccPublicKey,\r\n clientKey: this.clientKey,\r\n userType: this.userType,\r\n ssoLogoutUrl: this.ssoLogoutUrl,\r\n ssoSessionId: this.ssoSessionId,\r\n messageSessionUid: this.messageSessionUid\r\n };\r\n }\r\n getSsoProvider(ssoDomain, locale) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n let domainRequest = {\r\n name: ssoDomain.trim(),\r\n locale: locale,\r\n clientVersion: this.endpoint.clientVersion,\r\n };\r\n const domainResponse = yield this.executeRest(ssoServiceProviderRequestMessage(domainRequest));\r\n const params = domainResponse.isCloud\r\n ? '?payload=' + (yield this._endpoint.prepareSsoPayload(this.messageSessionUid))\r\n : '?embedded&key=' + (yield this._endpoint.getOnsitePublicKey());\r\n this.userType = domainResponse.isCloud ? UserType.cloudSso : UserType.onsiteSso;\r\n this.ssoLogoutUrl = domainResponse.spUrl.replace('login', 'logout');\r\n return {\r\n url: domainResponse.spUrl + params,\r\n name: domainResponse.name,\r\n };\r\n });\r\n }\r\n verifyDevice(username, loginToken, isCloud = false) {\r\n return new Promise((resolve, reject) => {\r\n if (!this.options.authUI3) {\r\n reject(new Error('No authUI3 provided. authUI3 required to verify devices'));\r\n return;\r\n }\r\n let emailSent = false;\r\n let tfaExpiration = TwoFactorExpiration.TWO_FA_EXP_IMMEDIATELY;\r\n const deviceConfig = this.options.deviceConfig;\r\n let channels;\r\n if (!isCloud) {\r\n channels = [\r\n {\r\n channel: DeviceVerificationMethods.Email,\r\n sendApprovalRequest: () => __awaiter(this, void 0, void 0, function* () {\r\n yield this.executeRest(requestDeviceVerificationMessage({\r\n username: username,\r\n verificationChannel: emailSent ? 'email_resend' : 'email',\r\n encryptedDeviceToken: deviceConfig.deviceToken,\r\n clientVersion: this.endpoint.clientVersion,\r\n messageSessionUid: this.messageSessionUid\r\n }));\r\n emailSent = true;\r\n }),\r\n validateCode: (code) => __awaiter(this, void 0, void 0, function* () {\r\n yield this.executeRest(validateDeviceVerificationCodeMessage({\r\n verificationCode: code,\r\n username: username,\r\n }));\r\n resumeWithToken(loginToken);\r\n })\r\n },\r\n {\r\n channel: DeviceVerificationMethods.KeeperPush,\r\n sendApprovalRequest: () => __awaiter(this, void 0, void 0, function* () {\r\n yield this.executeRest(twoFactorSend2FAPushMessage({\r\n encryptedLoginToken: loginToken,\r\n pushType: TwoFactorPushType.TWO_FA_PUSH_KEEPER\r\n }));\r\n })\r\n },\r\n {\r\n channel: DeviceVerificationMethods.TFA,\r\n sendApprovalRequest: () => __awaiter(this, void 0, void 0, function* () {\r\n yield this.executeRest(twoFactorSend2FAPushMessage({\r\n encryptedLoginToken: loginToken,\r\n }));\r\n }),\r\n validateCode: (code) => __awaiter(this, void 0, void 0, function* () {\r\n const twoFactorValidateMsg = twoFactorValidateMessage({\r\n encryptedLoginToken: loginToken,\r\n value: code,\r\n expireIn: tfaExpiration\r\n });\r\n const twoFactorValidateResp = yield this.executeRest(twoFactorValidateMsg);\r\n if (twoFactorValidateResp.encryptedLoginToken) {\r\n const wssRs = {\r\n event: 'received_totp',\r\n encryptedLoginToken: platform.bytesToBase64(twoFactorValidateResp.encryptedLoginToken)\r\n };\r\n processPushNotification(wssRs);\r\n }\r\n }),\r\n setExpiration: expiration => {\r\n tfaExpiration = expiration;\r\n }\r\n }\r\n ];\r\n }\r\n else {\r\n channels = [\r\n {\r\n channel: DeviceVerificationMethods.KeeperPush,\r\n sendApprovalRequest: () => __awaiter(this, void 0, void 0, function* () {\r\n yield this.executeRest(twoFactorSend2FAPushMessage({\r\n encryptedLoginToken: loginToken,\r\n pushType: TwoFactorPushType.TWO_FA_PUSH_KEEPER\r\n }));\r\n })\r\n },\r\n {\r\n channel: DeviceVerificationMethods.AdminApproval,\r\n sendApprovalRequest: () => __awaiter(this, void 0, void 0, function* () {\r\n yield this.executeRest(requestDeviceAdminApprovalMessage({\r\n username: username,\r\n verificationChannel: emailSent ? 'email_resend' : 'email',\r\n encryptedDeviceToken: deviceConfig.deviceToken,\r\n clientVersion: this.endpoint.clientVersion,\r\n messageSessionUid: this.messageSessionUid\r\n }));\r\n })\r\n }\r\n ];\r\n }\r\n let done = false;\r\n const resumeWithToken = (token) => {\r\n done = true;\r\n resolve(token);\r\n };\r\n const rejectWithError = (error) => {\r\n done = true;\r\n reject(error);\r\n };\r\n const processPushNotification = (wssRs) => {\r\n if (wssRs.event === 'received_totp') {\r\n const token = wssRs.encryptedLoginToken ? normal64Bytes(wssRs.encryptedLoginToken) : loginToken;\r\n resumeWithToken(token);\r\n }\r\n else if (wssRs.message === 'device_approved') {\r\n if (wssRs.approved) {\r\n resumeWithToken(loginToken);\r\n }\r\n else {\r\n rejectWithError(new Error('Rejected'));\r\n }\r\n }\r\n else if (wssRs.command === 'device_verified') {\r\n if (this.options.onDeviceVerified) {\r\n this.options.onDeviceVerified(true);\r\n }\r\n resumeWithToken(loginToken);\r\n }\r\n };\r\n // response from the client true - try again, false - cancel\r\n this.options.authUI3.waitForDeviceApproval(channels, isCloud)\r\n .then((ok) => {\r\n if (ok) {\r\n resumeWithToken(loginToken);\r\n }\r\n else {\r\n rejectWithError(new Error('Canceled'));\r\n }\r\n })\r\n .catch(reason => rejectWithError(reason));\r\n (() => __awaiter(this, void 0, void 0, function* () {\r\n while (!done) {\r\n const pushMessage = yield this.socket.getPushMessage();\r\n const wssClientResponse = yield this.endpoint.decryptPushMessage(pushMessage);\r\n if (!done) {\r\n const wssRs = JSON.parse(wssClientResponse.message);\r\n console.log(wssRs);\r\n processPushNotification(wssRs);\r\n }\r\n }\r\n }))();\r\n });\r\n }\r\n handleTwoFactor(loginResponse) {\r\n return new Promise((resolve, reject) => {\r\n if (!loginResponse.channels) {\r\n reject(new Error('Channels not provided by API'));\r\n return;\r\n }\r\n const loginToken = loginResponse.encryptedLoginToken;\r\n let done = false;\r\n let twoFactorWaitCancel = resolvablePromise();\r\n const resumeWithToken = (token) => {\r\n done = true;\r\n twoFactorWaitCancel.resolve();\r\n resolve(token);\r\n };\r\n const rejectWithError = (error) => {\r\n done = true;\r\n twoFactorWaitCancel.resolve();\r\n reject(error);\r\n };\r\n let tfaExpiration = TwoFactorExpiration.TWO_FA_EXP_IMMEDIATELY;\r\n const submitCode = (channel, code) => __awaiter(this, void 0, void 0, function* () {\r\n const channelInfo = loginResponse.channels.find(x => x.channelType === channel);\r\n let valueType;\r\n switch (channelInfo.channelType) {\r\n case Authentication.TwoFactorChannelType.TWO_FA_CT_DNA:\r\n valueType = Authentication.TwoFactorValueType.TWO_FA_CODE_DNA;\r\n break;\r\n case Authentication.TwoFactorChannelType.TWO_FA_CT_DUO:\r\n valueType = Authentication.TwoFactorValueType.TWO_FA_CODE_DUO;\r\n break;\r\n case Authentication.TwoFactorChannelType.TWO_FA_CT_SMS:\r\n valueType = Authentication.TwoFactorValueType.TWO_FA_CODE_SMS;\r\n break;\r\n case Authentication.TwoFactorChannelType.TWO_FA_CT_TOTP:\r\n valueType = Authentication.TwoFactorValueType.TWO_FA_CODE_TOTP;\r\n break;\r\n case Authentication.TwoFactorChannelType.TWO_FA_CT_RSA:\r\n valueType = Authentication.TwoFactorValueType.TWO_FA_CODE_RSA;\r\n break;\r\n case Authentication.TwoFactorChannelType.TWO_FA_CT_U2F:\r\n valueType = Authentication.TwoFactorValueType.TWO_FA_RESP_U2F;\r\n break;\r\n case Authentication.TwoFactorChannelType.TWO_FA_CT_WEBAUTHN:\r\n valueType = Authentication.TwoFactorValueType.TWO_FA_RESP_WEBAUTHN;\r\n break;\r\n default:\r\n valueType = undefined;\r\n break;\r\n }\r\n const twoFactorValidateMsg = twoFactorValidateMessage({\r\n channelUid: channelInfo ? channelInfo.channelUid : undefined,\r\n encryptedLoginToken: loginToken,\r\n value: code,\r\n expireIn: tfaExpiration,\r\n valueType: valueType,\r\n });\r\n const twoFactorValidateResp = yield this.executeRest(twoFactorValidateMsg);\r\n if (twoFactorValidateResp.encryptedLoginToken) {\r\n resumeWithToken(twoFactorValidateResp.encryptedLoginToken);\r\n }\r\n });\r\n let lastPushChannel = TwoFactorChannelType.TWO_FA_CT_NONE;\r\n const submitPush = (channel, pushType) => __awaiter(this, void 0, void 0, function* () {\r\n const sendPushRequest = {\r\n encryptedLoginToken: loginResponse.encryptedLoginToken,\r\n pushType: pushType,\r\n expireIn: tfaExpiration\r\n };\r\n yield this.executeRest(twoFactorSend2FAPushMessage(sendPushRequest));\r\n lastPushChannel = channel;\r\n });\r\n const channels = loginResponse.channels\r\n .map((ch) => {\r\n const tfachannelData = {\r\n channel: ch,\r\n setExpiration: (exp) => {\r\n tfaExpiration = exp;\r\n },\r\n sendCode: (code) => __awaiter(this, void 0, void 0, function* () {\r\n yield submitCode(ch.channelType, code);\r\n })\r\n };\r\n switch (ch.channelType) {\r\n case TwoFactorChannelType.TWO_FA_CT_U2F:\r\n case TwoFactorChannelType.TWO_FA_CT_WEBAUTHN:\r\n // add support for security key as push\r\n break;\r\n case TwoFactorChannelType.TWO_FA_CT_TOTP:\r\n case TwoFactorChannelType.TWO_FA_CT_RSA:\r\n break;\r\n case TwoFactorChannelType.TWO_FA_CT_SMS:\r\n tfachannelData.availablePushes = [TwoFactorPushType.TWO_FA_PUSH_SMS];\r\n break;\r\n case TwoFactorChannelType.TWO_FA_CT_DNA:\r\n tfachannelData.availablePushes = [TwoFactorPushType.TWO_FA_PUSH_DNA];\r\n break;\r\n case TwoFactorChannelType.TWO_FA_CT_KEEPER:\r\n case TwoFactorChannelType.TWO_FA_CT_DUO:\r\n if (ch.capabilities) {\r\n tfachannelData.availablePushes = ch.capabilities\r\n .map(cap => {\r\n switch (cap) {\r\n case 'push':\r\n return TwoFactorPushType.TWO_FA_PUSH_DUO_PUSH;\r\n case 'sms':\r\n return TwoFactorPushType.TWO_FA_PUSH_DUO_TEXT;\r\n case 'phone':\r\n return TwoFactorPushType.TWO_FA_PUSH_DUO_CALL;\r\n default:\r\n return undefined;\r\n }\r\n }).filter(cap => !!cap).map(cap => cap);\r\n }\r\n break;\r\n }\r\n if (tfachannelData.availablePushes) {\r\n tfachannelData.sendPush = (pushType) => __awaiter(this, void 0, void 0, function* () {\r\n submitPush(ch.channelType, pushType);\r\n });\r\n }\r\n return tfachannelData;\r\n }).filter((chd) => !!chd).map(chd => chd);\r\n const processPushNotification = (wssRs) => {\r\n if (wssRs.event === 'received_totp') {\r\n if (wssRs.encryptedLoginToken) {\r\n const token = normal64Bytes(wssRs.encryptedLoginToken);\r\n resumeWithToken(token);\r\n }\r\n else if (wssRs.passcode) {\r\n (() => __awaiter(this, void 0, void 0, function* () {\r\n yield submitCode(lastPushChannel, wssRs.passcode);\r\n }))();\r\n }\r\n else {\r\n rejectWithError(new Error('push_declined'));\r\n }\r\n }\r\n };\r\n this.options.authUI3.waitForTwoFactorCode(channels, twoFactorWaitCancel.promise)\r\n .then(ok => {\r\n if (ok) {\r\n resumeWithToken(loginToken);\r\n }\r\n else {\r\n rejectWithError(new Error('Canceled'));\r\n }\r\n })\r\n .catch(reason => rejectWithError(reason));\r\n (() => __awaiter(this, void 0, void 0, function* () {\r\n while (!done) {\r\n const pushMessage = yield this.socket.getPushMessage();\r\n const wssClientResponse = yield this.endpoint.decryptPushMessage(pushMessage);\r\n if (!done) {\r\n const wssRs = JSON.parse(wssClientResponse.message);\r\n console.log(wssRs);\r\n processPushNotification(wssRs);\r\n }\r\n }\r\n }))();\r\n });\r\n }\r\n authHashLogin(loginResponse, username, password, useAlternate = false) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n // TODO test for account transfer and account recovery\r\n if (!loginResponse.salt) {\r\n throw new Error('Salt missing from API response');\r\n }\r\n const salt = useAlternate ? loginResponse.salt.find(s => s.name === 'alternate') : loginResponse.salt[0];\r\n if (!salt.salt || !salt.iterations) {\r\n throw new Error('Salt missing from API response');\r\n }\r\n this.options.salt = salt.salt;\r\n this.options.iterations = salt.iterations;\r\n const authHashKey = yield platform.deriveKey(password, salt.salt, salt.iterations);\r\n let authHash = yield platform.calcAuthVerifier(authHashKey);\r\n const loginMsg = validateAuthHashMessage({\r\n authResponse: authHash,\r\n encryptedLoginToken: loginResponse.encryptedLoginToken\r\n });\r\n const loginResp = yield this.executeRest(loginMsg);\r\n console.log(loginResp);\r\n if (loginResp.cloneCode && loginResp.cloneCode.length > 0) {\r\n this.options.sessionStorage.saveCloneCode(this.options.host, this._username, loginResp.cloneCode);\r\n }\r\n yield this.loginSuccess(loginResp, password, salt);\r\n });\r\n }\r\n loginSuccess(loginResponse, password, salt = undefined) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n this._username = loginResponse.primaryUsername || this._username;\r\n if (!loginResponse.encryptedSessionToken || !loginResponse.encryptedDataKey || !loginResponse.accountUid) {\r\n return;\r\n }\r\n this.setLoginParameters(webSafe64FromBytes(loginResponse.encryptedSessionToken), loginResponse.sessionTokenType, loginResponse.accountUid);\r\n switch (loginResponse.encryptedDataKeyType) {\r\n case Authentication.EncryptedDataKeyType.BY_DEVICE_PUBLIC_KEY:\r\n this.dataKey = yield platform.privateDecryptEC(loginResponse.encryptedDataKey, this.options.deviceConfig.privateKey, this.options.deviceConfig.publicKey);\r\n break;\r\n case Authentication.EncryptedDataKeyType.BY_PASSWORD:\r\n this.dataKey = yield decryptEncryptionParams(password, loginResponse.encryptedDataKey);\r\n break;\r\n case Authentication.EncryptedDataKeyType.BY_ALTERNATE:\r\n if (salt) {\r\n const encKey = yield platform.deriveKeyV2('data_key', password, salt.salt, salt.iterations);\r\n this.dataKey = yield platform.aesGcmDecrypt(loginResponse.encryptedDataKey, encKey);\r\n }\r\n break;\r\n case Authentication.EncryptedDataKeyType.NO_KEY:\r\n case Authentication.EncryptedDataKeyType.BY_BIO:\r\n throw new Error(`Data Key type ${loginResponse.encryptedDataKeyType} decryption not implemented`);\r\n }\r\n yield this.loadAccountSummary();\r\n let encryptedPrivateKey;\r\n let encryptedEccPrivateKey;\r\n if (this.options.kvs) {\r\n const encryptedPrivateKeyString = this.options.kvs.getValue(`${this._username}/private_key`);\r\n if (encryptedPrivateKeyString) {\r\n encryptedPrivateKey = platform.base64ToBytes(encryptedPrivateKeyString);\r\n }\r\n const encryptedEccPrivateKeyString = this.options.kvs.getValue(`${this._username}/ecc_private_key`);\r\n if (encryptedEccPrivateKey) {\r\n encryptedEccPrivateKey = platform.base64ToBytes(encryptedEccPrivateKeyString);\r\n }\r\n }\r\n if (!encryptedPrivateKey || !encryptedEccPrivateKey) {\r\n encryptedPrivateKey = this.accountSummary.keysInfo.encryptedPrivateKey;\r\n encryptedEccPrivateKey = this.accountSummary.keysInfo.encryptedEccPrivateKey;\r\n if (this.options.kvs) {\r\n this.options.kvs.saveValue(`${this._username}/private_key`, platform.bytesToBase64(encryptedPrivateKey));\r\n if (encryptedEccPrivateKey) {\r\n this.options.kvs.saveValue(`${this._username}/ecc_private_key`, platform.bytesToBase64(encryptedEccPrivateKey));\r\n }\r\n }\r\n }\r\n this.privateKey = platform.aesCbcDecrypt(encryptedPrivateKey, this.dataKey, true);\r\n if (encryptedEccPrivateKey === null || encryptedEccPrivateKey === void 0 ? void 0 : encryptedEccPrivateKey.length) {\r\n this.eccPrivateKey = yield platform.aesGcmDecrypt(encryptedEccPrivateKey, this.dataKey);\r\n this.eccPublicKey = this.accountSummary.keysInfo.eccPublicKey;\r\n }\r\n this.clientKey = platform.aesCbcDecrypt(this.accountSummary.clientKey, this.dataKey, true);\r\n if (this.options.sessionStorage) {\r\n this.options.sessionStorage.saveSessionParameters(this.getSessionParameters());\r\n }\r\n });\r\n }\r\n loadAccountSummary() {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n this.accountSummary = yield this.executeRest(accountSummaryMessage({\r\n summaryVersion: 1\r\n }));\r\n });\r\n }\r\n login(username, password) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n try {\r\n let preLoginResponse = yield this.endpoint.getPreLogin(username);\r\n if (!preLoginResponse.salt) {\r\n throw new Error('Salt missing from API response');\r\n }\r\n let salt = preLoginResponse.salt[0];\r\n if (!salt.salt || !salt.iterations) {\r\n throw new Error('Salt missing from API response');\r\n }\r\n let authHashKey = yield platform.deriveKey(password, salt.salt, salt.iterations);\r\n let authHash = platform.bytesToBase64(yield platform.calcAuthVerifier(authHashKey));\r\n let loginCommand = new LoginCommand();\r\n loginCommand.command = \"login\";\r\n loginCommand.username = username;\r\n loginCommand.version = 2;\r\n loginCommand.auth_response = webSafe64(authHash);\r\n loginCommand.platform_device_token = webSafe64FromBytes(this.endpoint.deviceToken);\r\n loginCommand.include = [\"keys\"]; //[\"license\",\"settings\",\"group\",\"sync_log\",\"keys\",\"enforcements\",\"client_key\",\"images\",\"is_enterprise_admin\",\"security_keys\"]\r\n if (this.managedCompanyId) {\r\n loginCommand.enterprise_id = this.managedCompanyId;\r\n }\r\n let loginResponse;\r\n let socketListener = null;\r\n while (true) {\r\n loginResponse = yield this.endpoint.executeV2Command(loginCommand);\r\n if (loginResponse.result_code === \"auth_success\")\r\n break;\r\n console.log(loginResponse);\r\n if (isTwoFactorResultCode(loginResponse.result_code)) {\r\n if (!!loginResponse.u2f_challenge) {\r\n loginResponse.u2f_challenge = JSON.parse(loginResponse.u2f_challenge);\r\n }\r\n if (!this.options.authUI)\r\n break;\r\n let errorMessage = loginResponse.result_code === LoginResponseResultCode.InvalidTOTP\r\n ? loginResponse.message\r\n : undefined;\r\n if (loginResponse.channel === 'two_factor_channel_duo' && loginResponse.url) {\r\n loginCommand['2fa_mode'] = 'push';\r\n socketListener = new SocketListener(loginResponse.url);\r\n }\r\n else {\r\n let token;\r\n if (socketListener) {\r\n const pushMessage = JSON.parse(yield socketListener.getPushMessage());\r\n socketListener.disconnect();\r\n console.log(pushMessage);\r\n token = pushMessage.passcode;\r\n }\r\n else {\r\n token = yield this.options.authUI.getTwoFactorCode(errorMessage);\r\n }\r\n if (!token)\r\n break;\r\n loginCommand[\"2fa_token\"] = token;\r\n }\r\n loginCommand['2fa_type'] = 'one_time';\r\n loginCommand[\"device_token_expire_days\"] = 9999;\r\n }\r\n }\r\n this._sessionToken = loginResponse.session_token;\r\n this._username = username;\r\n this.dataKey = yield decryptEncryptionParamsString(password, loginResponse.keys.encryption_params);\r\n if (loginResponse.keys.encrypted_private_key) {\r\n this.privateKey = decryptFromStorage(loginResponse.keys.encrypted_private_key, this.dataKey);\r\n }\r\n }\r\n catch (e) {\r\n throw unifyLoginError(e);\r\n }\r\n });\r\n }\r\n managedCompanyLogin(username, password, companyId) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n this.managedCompanyId = companyId;\r\n yield this.login(username, password);\r\n });\r\n }\r\n executeCommand(command) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n if (!command.username) {\r\n command.username = this._username;\r\n }\r\n if (command instanceof AuthorizedCommand) {\r\n command.device_id = \"JS Keeper API\";\r\n command.session_token = this._sessionToken;\r\n }\r\n return this.endpoint.executeV2Command(command);\r\n });\r\n }\r\n executeRest(message) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n return this.endpoint.executeRest(message, this._sessionToken);\r\n });\r\n }\r\n get(path) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n return this.endpoint.get(path);\r\n });\r\n }\r\n setLoginParameters(sessionToken, sessionTokenType, accountUid) {\r\n this._sessionToken = sessionToken;\r\n this._sessionTokenType = sessionTokenType;\r\n this._accountUid = accountUid;\r\n if (!this.socket) {\r\n throw new Error('No socket available');\r\n }\r\n if (this.socket.getIsConnected()) {\r\n this.socket.registerLogin(this._sessionToken);\r\n }\r\n this.socket.onOpen(() => {\r\n this.socket.registerLogin(this._sessionToken);\r\n });\r\n }\r\n registerDevice() {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n yield this.endpoint.registerDevice();\r\n });\r\n }\r\n onClose(callback) {\r\n if (!this.socket) {\r\n throw new Error('No socket available');\r\n }\r\n this.socket.onClose(callback);\r\n }\r\n onError(callback) {\r\n if (!this.socket) {\r\n throw new Error('No socket available');\r\n }\r\n this.socket.onError(callback);\r\n }\r\n onPushMessage(callback) {\r\n if (!this.socket) {\r\n throw new Error('No socket available');\r\n }\r\n this.socket.onPushMessage(callback);\r\n }\r\n onCloseMessage(callback) {\r\n if (!this.socket) {\r\n throw new Error('No socket available');\r\n }\r\n this.socket.onCloseMessage(callback);\r\n }\r\n getPushMessage() {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n if (!this.socket) {\r\n throw new Error('No socket available');\r\n }\r\n const pushMessage = yield this.socket.getPushMessage();\r\n const wssClientResponse = yield this.endpoint.decryptPushMessage(pushMessage);\r\n console.log(wssClientResponse.message);\r\n return JSON.parse(wssClientResponse.message);\r\n });\r\n }\r\n createUserRequest(dataKey) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const rsaKeys = yield platform.generateRSAKeyPair();\r\n const rsaEncryptedPrivateKey = yield platform.aesCbcEncrypt(rsaKeys.privateKey, dataKey, true);\r\n const ecKeys = yield platform.generateECKeyPair();\r\n const eccEncryptedPrivateKey = yield platform.aesGcmEncrypt(ecKeys.privateKey, dataKey);\r\n const encryptedClientKey = yield platform.aesCbcEncrypt(generateEncryptionKey(), dataKey, true);\r\n return {\r\n rsaPublicKey: rsaKeys.publicKey,\r\n rsaEncryptedPrivateKey: rsaEncryptedPrivateKey,\r\n eccPublicKey: ecKeys.publicKey,\r\n eccEncryptedPrivateKey: eccEncryptedPrivateKey,\r\n encryptedDeviceToken: this.options.deviceConfig.deviceToken,\r\n encryptedClientKey: encryptedClientKey,\r\n clientVersion: this.options.clientVersion,\r\n };\r\n });\r\n }\r\n createUser(username, password) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const iterations = 100000;\r\n const dataKey = generateEncryptionKey();\r\n const authVerifier = yield createAuthVerifier(password, iterations);\r\n const encryptionParams = yield createEncryptionParams(password, dataKey, iterations);\r\n const request = yield this.createUserRequest(dataKey);\r\n const regUserMsg = requestCreateUserMessage(Object.assign(Object.assign({}, request), { username: username, authVerifier: authVerifier, encryptionParams: encryptionParams }), false);\r\n yield this.executeRest(regUserMsg);\r\n });\r\n }\r\n createSsoUser(loginToken) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const dataKey = generateEncryptionKey();\r\n const encryptedDeviceDataKey = yield platform.publicEncryptEC(dataKey, this.options.deviceConfig.publicKey);\r\n const request = yield this.createUserRequest(dataKey);\r\n const regUserMsg = requestCreateUserMessage(Object.assign(Object.assign({}, request), { username: this._username, encryptedLoginToken: loginToken, encryptedDeviceDataKey: encryptedDeviceDataKey }), true);\r\n yield this.executeRest(regUserMsg);\r\n });\r\n }\r\n getEnterpriseECCPublicKey() {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const resp = yield this.executeRest(getEnterprisePublicKeyMessage());\r\n if (resp.enterpriseECCPublicKey) {\r\n this.enterpriseEccPublicKey = resp.enterpriseECCPublicKey;\r\n }\r\n });\r\n }\r\n}\r\nconst iterationsToBytes = (iterations) => {\r\n const iterationBytes = new ArrayBuffer(4);\r\n new DataView(iterationBytes).setUint32(0, iterations);\r\n const bytes = new Uint8Array(iterationBytes);\r\n bytes[0] = 1; // version\r\n return bytes;\r\n};\r\nexport function createAuthVerifier(password, iterations) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const salt = platform.getRandomBytes(16);\r\n const authHashKey = yield platform.deriveKey(password, salt, iterations);\r\n return Uint8Array.of(...iterationsToBytes(iterations), ...salt, ...authHashKey);\r\n });\r\n}\r\nexport function createEncryptionParams(password, dataKey, iterations) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const salt = platform.getRandomBytes(16);\r\n const authHashKey = yield platform.deriveKey(password, salt, iterations);\r\n const doubledDataKey = Uint8Array.of(...dataKey, ...dataKey);\r\n const encryptedDoubledKey = yield platform.aesCbcEncrypt(doubledDataKey, authHashKey, false);\r\n return Uint8Array.of(...iterationsToBytes(iterations), ...salt, ...encryptedDoubledKey);\r\n });\r\n}\r\nfunction decryptEncryptionParamsString(password, encryptionParams) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n return decryptEncryptionParams(password, platform.base64ToBytes(normal64(encryptionParams)));\r\n });\r\n}\r\nexport function decryptEncryptionParams(password, encryptionParams) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n let corruptedEncryptionParametersMessage = \"Corrupted encryption parameters\";\r\n if (encryptionParams[0] !== 1)\r\n throw new Error(corruptedEncryptionParametersMessage);\r\n let iterations = (encryptionParams[1] << 16) + (encryptionParams[2] << 8) + encryptionParams[3];\r\n let saltBytes = encryptionParams.subarray(4, 20);\r\n let masterKey = yield platform.deriveKey(password, saltBytes, iterations);\r\n let encryptedDoubledDataKey = encryptionParams.subarray(20);\r\n let doubledDataKey = yield platform.aesCbcDecrypt(encryptedDoubledDataKey, masterKey, false);\r\n for (let i = 0; i < 32; i++) {\r\n if (doubledDataKey[i] !== doubledDataKey[i + 32]) {\r\n throw new Error(corruptedEncryptionParametersMessage);\r\n }\r\n }\r\n return doubledDataKey.slice(0, 32);\r\n });\r\n}\r\n//# sourceMappingURL=auth.js.map","references":["/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/configuration.ts","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/endpoint.ts","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/platform.ts","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/commands.ts","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/utils.ts","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/restMessages.ts","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/proto.d.ts"],"map":"{\"version\":3,\"file\":\"auth.js\",\"sourceRoot\":\"\",\"sources\":[\"../../src/auth.ts\"],\"names\":[],\"mappings\":\"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\"}","dts":{"name":"/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/auth.d.ts","writeByteOrderMark":false,"text":"import { ClientConfiguration, ClientConfigurationInternal } from './configuration';\r\nimport { KeeperEndpoint } from \"./endpoint\";\r\nimport { KeyWrapper } from \"./platform\";\r\nimport { KeeperCommand } from \"./commands\";\r\nimport { RestMessage } from './restMessages';\r\nimport { Authentication } from './proto';\r\nexport declare type SocketProxy = {\r\n onOpen: (callback: () => void) => void;\r\n close: () => void;\r\n onClose: (callback: (e: Event) => void) => void;\r\n onError: (callback: (e: Event | Error) => void) => void;\r\n onMessage: (callback: (e: Uint8Array) => void) => void;\r\n send: (message: any) => void;\r\n messageQueue: any[];\r\n};\r\nexport declare class SocketListener {\r\n private socket;\r\n private url;\r\n private getConnectionRequest?;\r\n private messageListeners;\r\n private singleMessageListeners;\r\n private closeListeners;\r\n private singleCloseListeners;\r\n private onOpenListeners;\r\n private messageSessionUid;\r\n private isConnected;\r\n private reconnectTimeout;\r\n private currentBackoffSeconds;\r\n private isClosedByClient;\r\n constructor(url: string, messageSessionUid?: Uint8Array, getConnectionRequest?: (messageSessionUid: Uint8Array) => Promise<string>);\r\n createWebsocket(messageSessionUid?: Uint8Array): Promise<void>;\r\n registerLogin(sessionToken: string): void;\r\n onOpen(callback: () => void): void;\r\n onClose(callback: () => void): void;\r\n onError(callback: () => void): void;\r\n private handleOnOpen;\r\n private handleMessage;\r\n private handleClose;\r\n onPushMessage(callback: (data: any) => void): void;\r\n onCloseMessage(callback: (data: any) => void): void;\r\n getPushMessage(): Promise<any>;\r\n private static getBaseReconnectionInterval;\r\n private reconnect;\r\n disconnect(): void;\r\n getIsConnected(): boolean;\r\n}\r\nexport declare function socketSendMessage(message: any, socket: WebSocket, createdSocket: any): void;\r\nexport declare type LoginPayload = {\r\n username: string;\r\n password?: string | KeyWrapper;\r\n loginToken?: Uint8Array;\r\n loginType?: Authentication.LoginType;\r\n loginMethod?: Authentication.LoginMethod;\r\n v2TwoFactorToken?: string;\r\n resumeSessionOnly?: boolean;\r\n givenSessionToken?: string;\r\n};\r\nexport declare enum UserType {\r\n normal = \"normal\",\r\n onsiteSso = \"onsite_sso\",\r\n cloudSso = \"cloud_sso\"\r\n}\r\nexport declare type SessionParams = {\r\n accountUid: Uint8Array;\r\n username: string;\r\n sessionToken: string;\r\n sessionTokenType: Authentication.SessionTokenType;\r\n dataKey: Uint8Array;\r\n privateKey: Uint8Array;\r\n eccPrivateKey?: Uint8Array;\r\n eccPublicKey?: Uint8Array;\r\n enterpriseEccPublicKey?: Uint8Array;\r\n clientKey: Uint8Array;\r\n userType: UserType;\r\n ssoLogoutUrl: string;\r\n ssoSessionId: string;\r\n messageSessionUid: Uint8Array;\r\n};\r\nexport declare class Auth {\r\n ssoLogoutUrl: string;\r\n userType: UserType;\r\n ssoSessionId: string;\r\n dataKey: Uint8Array;\r\n privateKey: Uint8Array;\r\n eccPrivateKey: Uint8Array;\r\n eccPublicKey: Uint8Array;\r\n enterpriseEccPublicKey: Uint8Array;\r\n private _accountUid;\r\n private _sessionToken;\r\n private _sessionTokenType;\r\n private _username;\r\n private endpoint;\r\n private managedCompanyId?;\r\n private messageSessionUid;\r\n options: ClientConfigurationInternal;\r\n private socket;\r\n clientKey: Uint8Array;\r\n private accountSummary;\r\n constructor(options: ClientConfiguration);\r\n get _endpoint(): KeeperEndpoint;\r\n get accountUid(): Uint8Array;\r\n get clientVersion(): string;\r\n get sessionToken(): string;\r\n get sessionTokenType(): Authentication.SessionTokenType | null;\r\n get username(): string;\r\n getMessageSessionUid(): Uint8Array;\r\n idpLogout(): Promise<void>;\r\n logout(): Promise<void>;\r\n connect(): void;\r\n disconnect(): void;\r\n /**\r\n * useAlternate is to pass to the next function to use an alternate method, for testing a different path.\r\n */\r\n loginV3({ username, password, loginToken, loginType, loginMethod, v2TwoFactorToken, resumeSessionOnly, givenSessionToken, }: LoginPayload): Promise<{\r\n result: string;\r\n }>;\r\n /**\r\n * The MV3 browser extension runs in a service worker that shuts down every 5 minutes.\r\n * This rehydrates the Auth class and re-opens our socket with the session parameters.\r\n */\r\n continueSession(): Promise<void>;\r\n private getSessionParameters;\r\n getSsoProvider(ssoDomain: string, locale?: string): Promise<{\r\n url: string;\r\n name: string;\r\n }>;\r\n verifyDevice(username: string, loginToken: Uint8Array, isCloud?: boolean): Promise<Uint8Array>;\r\n private handleTwoFactor;\r\n authHashLogin(loginResponse: Authentication.ILoginResponse, username: string, password: KeyWrapper, useAlternate?: boolean): Promise<void>;\r\n loginSuccess(loginResponse: Authentication.ILoginResponse, password: KeyWrapper, salt?: Authentication.ISalt | undefined): Promise<void>;\r\n loadAccountSummary(): Promise<void>;\r\n login(username: string, password: KeyWrapper): Promise<void>;\r\n managedCompanyLogin(username: string, password: KeyWrapper, companyId: number): Promise<void>;\r\n executeCommand<Command extends KeeperCommand>(command: Command): Promise<Command[\"response\"]>;\r\n executeRest<TIn, TOut>(message: RestMessage<TIn, TOut>): Promise<TOut>;\r\n get(path: string): Promise<import(\"./commands\").KeeperHttpResponse>;\r\n setLoginParameters(sessionToken: string, sessionTokenType: Authentication.SessionTokenType, accountUid: Uint8Array): void;\r\n registerDevice(): Promise<void>;\r\n onClose(callback: () => void): void;\r\n onError(callback: () => void): void;\r\n onPushMessage(callback: (data: any) => void): void;\r\n onCloseMessage(callback: (data: any) => void): void;\r\n getPushMessage(): Promise<any>;\r\n private createUserRequest;\r\n createUser(username: string, password: KeyWrapper): Promise<void>;\r\n private createSsoUser;\r\n getEnterpriseECCPublicKey(): Promise<void>;\r\n}\r\nexport declare function createAuthVerifier(password: KeyWrapper, iterations: number): Promise<Uint8Array>;\r\nexport declare function createEncryptionParams(password: KeyWrapper, dataKey: Uint8Array, iterations: number): Promise<Uint8Array>;\r\nexport declare function decryptEncryptionParams(password: KeyWrapper, encryptionParams: Uint8Array): Promise<Uint8Array>;\r\n"}}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"code":"export {};\r\n//# sourceMappingURL=vendorModel.js.map","references":[],"map":"{\"version\":3,\"file\":\"vendorModel.js\",\"sourceRoot\":\"\",\"sources\":[\"../../src/vendorModel.ts\"],\"names\":[],\"mappings\":\"\"}","dts":{"name":"/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/vendorModel.d.ts","writeByteOrderMark":false,"text":"export interface EnterpriseBase {\r\n name: string;\r\n region: string;\r\n email: string;\r\n license: MSPLicense;\r\n}\r\nexport interface MSPEnterprise extends EnterpriseBase {\r\n enterprise_id: number;\r\n customers: Customer[];\r\n}\r\nexport interface MSPLicense {\r\n is_trial: boolean;\r\n seats: number;\r\n products: Product[];\r\n}\r\nexport interface Product {\r\n product_id: string;\r\n seats: number;\r\n}\r\nexport interface Customer {\r\n enterprise_id: number;\r\n name: string;\r\n product_id: string;\r\n seats: number;\r\n users: number;\r\n}\r\nexport interface LicenseAdjustment {\r\n seats?: number;\r\n products: Product[];\r\n}\r\n"}}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"code":"import { __awaiter } from \"tslib\";\r\nimport { Authentication, Push, SsoCloud } from './proto';\r\nimport { platform } from './platform';\r\nimport { generateTransmissionKey, getKeeperUrl, isTwoFactorResultCode, normal64, normal64Bytes, webSafe64FromBytes } from './utils';\r\nimport { deviceMessage, preLoginMessage, registerDeviceMessage, registerDeviceInRegionMessage, ssoCloudRequestMessage, updateDeviceMessage } from './restMessages';\r\nvar ApiRequestPayload = Authentication.ApiRequestPayload;\r\nvar ApiRequest = Authentication.ApiRequest;\r\nvar WssClientResponse = Push.WssClientResponse;\r\nvar WssConnectionRequest = Push.WssConnectionRequest;\r\nvar SsoCloudResponse = SsoCloud.SsoCloudResponse;\r\nexport class KeeperEndpoint {\r\n constructor(options) {\r\n this.options = options;\r\n this.onsitePrivateKey = null;\r\n this.onsitePublicKey = null;\r\n if (options.deviceToken) {\r\n this.deviceToken = options.deviceToken;\r\n this.updateTransmissionKey(1);\r\n }\r\n else {\r\n this.updateTransmissionKey(options.deviceConfig.transmissionKeyId || 1);\r\n }\r\n }\r\n getUrl(forPath) {\r\n return getKeeperUrl(this.options.host, forPath);\r\n }\r\n getDeviceToken() {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n return this.executeRest(deviceMessage({\r\n clientVersion: this.clientVersion,\r\n deviceName: 'JS Keeper API'\r\n }));\r\n });\r\n }\r\n getPreLogin(username) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n if (!this.deviceToken) {\r\n console.log('Obtaining device token...');\r\n let deviceResponse = yield this.getDeviceToken();\r\n this.deviceToken = deviceResponse.encryptedDeviceToken;\r\n if (this.options.onDeviceToken) {\r\n this.options.onDeviceToken(this.deviceToken);\r\n }\r\n }\r\n while (true) {\r\n try {\r\n return yield this.executeRest(preLoginMessage({\r\n authRequest: {\r\n clientVersion: this.clientVersion,\r\n username: username,\r\n encryptedDeviceToken: this.deviceToken\r\n },\r\n loginType: Authentication.LoginType.NORMAL\r\n }));\r\n }\r\n catch (e) {\r\n if (!(e instanceof Error))\r\n throw (e);\r\n let errorObj = JSON.parse(e.message);\r\n if (errorObj.error === 'region_redirect') {\r\n this.options.host = errorObj.region_host;\r\n console.log(`Redirecting to ${this.options.host}`);\r\n }\r\n else {\r\n throw (e);\r\n }\r\n }\r\n }\r\n });\r\n }\r\n registerDevice() {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n // Case 1 new device, no edt no keys - call registration with pub key\r\n // Case 2 existing device on 14, edt but no keys - call device update\r\n // Case 3 existing device on 15+, has edt and keys - skip registration\r\n const deviceConfig = this.options.deviceConfig;\r\n if (deviceConfig.deviceToken && deviceConfig.privateKey && deviceConfig.publicKey) { // Case 1\r\n return;\r\n }\r\n const ecdh = yield platform.generateECKeyPair();\r\n deviceConfig.publicKey = ecdh.publicKey;\r\n deviceConfig.privateKey = ecdh.privateKey;\r\n if (deviceConfig.deviceToken) {\r\n const devUpdMsg = updateDeviceMessage({\r\n encryptedDeviceToken: deviceConfig.deviceToken,\r\n clientVersion: this.options.clientVersion,\r\n deviceName: deviceConfig.deviceName,\r\n devicePublicKey: deviceConfig.publicKey,\r\n });\r\n yield this.executeRest(devUpdMsg);\r\n }\r\n else {\r\n const devRegMsg = registerDeviceMessage({\r\n clientVersion: this.options.clientVersion,\r\n deviceName: deviceConfig.deviceName,\r\n devicePublicKey: deviceConfig.publicKey,\r\n });\r\n const devRegResp = yield this.executeRest(devRegMsg);\r\n console.log(devRegResp);\r\n deviceConfig.deviceToken = devRegResp.encryptedDeviceToken || null;\r\n }\r\n if (this.options.onDeviceConfig) {\r\n this.options.onDeviceConfig(deviceConfig, this.options.host);\r\n }\r\n });\r\n }\r\n executeRest(message, sessionToken) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n while (true) {\r\n let request = yield this.prepareRequest(message.toBytes(), sessionToken);\r\n console.log(\"Calling REST URL:\", this.getUrl(message.path));\r\n let response = yield platform.post(this.getUrl(message.path), request);\r\n if (!response.data || response.data.length === 0 && response.statusCode === 200) {\r\n return;\r\n }\r\n console.log(\"Response code:\", response.statusCode);\r\n try {\r\n let decrypted = yield platform.aesGcmDecrypt(response.data, this.transmissionKey.key);\r\n return message.fromBytes(decrypted);\r\n }\r\n catch (_a) {\r\n const errorMessage = platform.bytesToString(response.data.slice(0, 1000));\r\n try {\r\n const errorObj = JSON.parse(errorMessage);\r\n switch (errorObj.error) {\r\n case 'key':\r\n this.options.deviceConfig.transmissionKeyId = errorObj.key_id;\r\n if (this.options.onDeviceConfig) {\r\n this.options.onDeviceConfig(this.options.deviceConfig, this.options.host);\r\n }\r\n this.updateTransmissionKey(errorObj.key_id);\r\n continue;\r\n case 'region_redirect':\r\n this.options.host = errorObj.region_host;\r\n if (this.options.onRegionChanged) {\r\n this.options.onRegionChanged(this.options.host);\r\n }\r\n continue;\r\n case 'device_not_registered': {\r\n if (this.options.deviceConfig.deviceToken) {\r\n yield this.executeRest(registerDeviceInRegionMessage({\r\n clientVersion: this.options.clientVersion,\r\n deviceName: this.options.deviceConfig.deviceName,\r\n devicePublicKey: this.options.deviceConfig.publicKey,\r\n encryptedDeviceToken: this.options.deviceConfig.deviceToken\r\n }));\r\n continue;\r\n }\r\n }\r\n }\r\n if (this.options.onCommandFailure) {\r\n this.options.onCommandFailure(Object.assign(Object.assign({}, errorObj), { path: message.path }));\r\n }\r\n }\r\n catch (_b) {\r\n }\r\n throw (new Error(errorMessage));\r\n }\r\n }\r\n });\r\n }\r\n executeV2Command(command) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n command.client_version = this.clientVersion;\r\n let requestBytes = yield this.prepareRequest(command);\r\n let response = yield platform.post(this.getUrl('vault/execute_v2_command'), requestBytes);\r\n let decrypted;\r\n try {\r\n decrypted = yield platform.aesGcmDecrypt(response.data, this.transmissionKey.key);\r\n }\r\n catch (e) {\r\n let error = platform.bytesToString(response.data);\r\n throw (`Unable to decrypt response: ${error}`);\r\n }\r\n let json = JSON.parse(platform.bytesToString(decrypted));\r\n if (json.result !== 'success' && !isTwoFactorResultCode(json.result_code)) {\r\n throw (json);\r\n }\r\n return json;\r\n });\r\n }\r\n get(path) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n return platform.get(this.getUrl(path), {});\r\n });\r\n }\r\n updateTransmissionKey(keyNumber) {\r\n this.transmissionKey = generateTransmissionKey(keyNumber);\r\n }\r\n prepareRequest(payload, sessionToken) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n return prepareApiRequest(payload, this.transmissionKey, sessionToken);\r\n });\r\n }\r\n decryptPushMessage(pushMessageData) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const decryptedPushMessage = yield platform.aesGcmDecrypt(pushMessageData, this.transmissionKey.key);\r\n return WssClientResponse.decode(decryptedPushMessage);\r\n });\r\n }\r\n getPushConnectionRequest(messageSessionUid) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n return getPushConnectionRequest(messageSessionUid, this.options.deviceConfig.deviceToken, this.transmissionKey);\r\n });\r\n }\r\n getTransmissionKey() {\r\n return this.transmissionKey;\r\n }\r\n prepareSsoPayload(messageSessionUid, username = '', idpSessionId = '') {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const payload = ssoCloudRequestMessage({\r\n \"embedded\": true,\r\n \"clientVersion\": this.clientVersion,\r\n \"dest\": \"vault\",\r\n \"forceLogin\": false,\r\n \"messageSessionUid\": messageSessionUid,\r\n \"idpSessionId\": idpSessionId,\r\n \"username\": username\r\n }).toBytes();\r\n const request = yield prepareApiRequest(payload, this.transmissionKey);\r\n return webSafe64FromBytes(request);\r\n });\r\n }\r\n decryptCloudSsoResponse(token) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n return decryptCloudSsoResponse(token, this.getTransmissionKey().key);\r\n });\r\n }\r\n getOnsitePublicKey() {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n if (!this.onsitePublicKey || !this.onsitePrivateKey) {\r\n const { privateKey, publicKey } = yield platform.generateRSAKeyPair();\r\n this.onsitePrivateKey = privateKey;\r\n this.onsitePublicKey = publicKey;\r\n }\r\n return webSafe64FromBytes(this.onsitePublicKey);\r\n });\r\n }\r\n decryptOnsiteSsoPassword(password) {\r\n const encryptedPasswordBytes = normal64Bytes(password);\r\n const decryptedPassword = platform.privateDecrypt(encryptedPasswordBytes, this.onsitePrivateKey);\r\n return platform.bytesToString(decryptedPassword);\r\n }\r\n}\r\nexport function getPushConnectionRequest(messageSessionUid, encryptedDeviceToken, transmissionKey) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const connectionRequest = WssConnectionRequest.create({\r\n messageSessionUid: messageSessionUid,\r\n encryptedDeviceToken: encryptedDeviceToken,\r\n deviceTimeStamp: new Date().getTime()\r\n });\r\n const connectionRequestBytes = WssConnectionRequest.encode(connectionRequest).finish();\r\n const apiRequest = yield prepareApiRequest(connectionRequestBytes, transmissionKey);\r\n return webSafe64FromBytes(apiRequest);\r\n });\r\n}\r\nexport function prepareApiRequest(payload, transmissionKey, sessionToken) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const requestPayload = ApiRequestPayload.create();\r\n if (payload) {\r\n requestPayload.payload = payload instanceof Uint8Array\r\n ? payload\r\n : Buffer.from(JSON.stringify(payload));\r\n }\r\n if (sessionToken) {\r\n requestPayload.encryptedSessionToken = normal64Bytes(sessionToken);\r\n }\r\n let requestPayloadBytes = ApiRequestPayload.encode(requestPayload).finish();\r\n let encryptedRequestPayload = yield platform.aesGcmEncrypt(requestPayloadBytes, transmissionKey.key);\r\n let apiRequest = ApiRequest.create({\r\n encryptedTransmissionKey: transmissionKey.encryptedKey,\r\n encryptedPayload: encryptedRequestPayload,\r\n publicKeyId: transmissionKey.publicKeyId,\r\n locale: 'en_US'\r\n });\r\n return ApiRequest.encode(apiRequest).finish();\r\n });\r\n}\r\nexport function decryptCloudSsoResponse(cloudResponseToken, key) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const decryptedData = yield platform.aesGcmDecrypt(normal64Bytes(cloudResponseToken), key);\r\n return SsoCloudResponse.decode(decryptedData);\r\n });\r\n}\r\nexport var KeeperEnvironment;\r\n(function (KeeperEnvironment) {\r\n KeeperEnvironment[\"Prod\"] = \"keepersecurity.com\";\r\n KeeperEnvironment[\"QA\"] = \"qa.keepersecurity.com\";\r\n KeeperEnvironment[\"DEV\"] = \"dev.keepersecurity.com\";\r\n KeeperEnvironment[\"DEV2\"] = \"dev2.keepersecurity.com\";\r\n KeeperEnvironment[\"LOCAL\"] = \"local.keepersecurity.com\";\r\n KeeperEnvironment[\"Prod_EU\"] = \"keepersecurity.eu\";\r\n KeeperEnvironment[\"QA_EU\"] = \"qa.keepersecurity.eu\";\r\n KeeperEnvironment[\"DEV_EU\"] = \"dev.keepersecurity.eu\";\r\n})(KeeperEnvironment || (KeeperEnvironment = {}));\r\nlet keys = {\r\n der: {\r\n key1: 'MIIBCgKCAQEA9Z/CZzxiNUz8+npqI4V10+zW3AL7+M4UQDdd/17759Xzm0MOEfHOOsOgZxxNK1DEsbyCTCE05fd3Hz1mn1uGjXvm5HnN2mL/3TOVxyLU6VwH9EDInnj4DNMFifs69il3KlviT3llRgPCcjF4xrF8d4SR0/N3eqS1f9CBJPNEKEH+am5Xb/FqAlOUoXkILF0UYxA/jNLoWBSq+1W58e4xDI0p0GuP0lN8f97HBtfB7ijbtF+VxIXtxRy+4jA49zK+CQrGmWqIm5DzZcBvUtVGZ3UXd6LeMXMJOifvuCneGC2T2uB6G2g5yD54+onmKIETyNX0LtpR1MsZmKLgru5ugwIDAQAB',\r\n key2: 'MIIBCgKCAQEAkOpym7xC3sSysw5DAidLoVF7JUgnvXejbieDWmEiD-DQOKxzfQqYHoFfeeix__bx3wMW3I8cAc8zwZ1JO8hyB2ON732JE2Zp301GAUMnAK_rBhQWmYKP_-uXSKeTJPiuaW9PVG0oRJ4MEdS-t1vIA4eDPhI1EexHaY3P2wHKoV8twcGvdWUZB5gxEpMbx5CuvEXptnXEJlxKou3TZu9uwJIo0pgqVLUgRpW1RSRipgutpUslBnQ72Bdbsry0KKVTlcPsudAnnWUtsMJNgmyQbESPm-aVv-GzdVUFvWKpKkAxDpNArPMf0xt8VL2frw2LDe5_n9IMFogUiSYt156_mQIDAQAB',\r\n key3: 'MIIBCgKCAQEAyvxCWbLvtMRmq57oFg3mY4DWfkb1dir7b29E8UcwcKDcCsGTqoIhubU2pO46TVUXmFgC4E-Zlxt-9F-YA-MY7i_5GrDvySwAy4nbDhRL6Z0kz-rqUirgm9WWsP9v-X_BwzARqq83HNBuzAjf3UHgYDsKmCCarVAzRplZdT3Q5rnNiYPYSHzwfUhKEAyXk71UdtleD-bsMAmwnuYHLhDHiT279An_Ta93c9MTqa_Tq2Eirl_NXn1RdtbNohmMXldAH-C8uIh3Sz8erS4hZFSdUG1WlDsKpyRouNPQ3diorbO88wEAgpHjXkOLj63d1fYJBFG0yfu73U80aEZehQkSawIDAQAB',\r\n key4: 'MIIBCgKCAQEA0TVoXLpgluaqw3P011zFPSIzWhUMBqXT-Ocjy8NKjJbdrbs53eRFKk1waeB3hNn5JEKNVSNbUIe-MjacB9P34iCfKtdnrdDB8JXx0nIbIPzLtcJC4HCYASpjX_TVXrU9BgeCE3NUtnIxjHDy8PCbJyAS_Pv299Q_wpLWnkkjq70ZJ2_fX-ObbQaZHwsWKbRZ_5sD6rLfxNACTGI_jo9-vVug6AdNq96J7nUdYV1cG-INQwJJKMcAbKQcLrml8CMPc2mmf0KQ5MbS_KSbLXHUF-81AsZVHfQRSuigOStQKxgSGL5osY4NrEcODbEXtkuDrKNMsZYhijKiUHBj9vvgKwIDAQAB',\r\n key5: 'MIIBCgKCAQEAueOWC26w-HlOLW7s88WeWkXpjxK4mkjqngIzwbjnsU9145R51HvsILvjXJNdAuueVDHj3OOtQjfUM6eMMLr-3kaPv68y4FNusvB49uKc5ETI0HtHmHFSn9qAZvC7dQHSpYqC2TeCus-xKeUciQ5AmSfwpNtwzM6Oh2TO45zAqSA-QBSk_uv9TJu0e1W1AlNmizQtHX6je-mvqZCVHkzGFSQWQ8DBL9dHjviI2mmWfL_egAVVhBgTFXRHg5OmJbbPoHj217Yh-kHYA8IWEAHylboH6CVBdrNL4Na0fracQVTm-nOWdM95dKk3fH-KJYk_SmwB47ndWACLLi5epLl9vwIDAQAB',\r\n key6: 'MIIBCgKCAQEA2PJRM7-4R97rHwY_zCkFA8B3llawb6gF7oAZCpxprl6KB5z2cqLAvUfEOBtnr7RIturX04p3ThnwaFnAR7ADVZWBGOYuAyaLzGHDI5mvs8D-NewG9vw8qRkTT7Mb8fuOHC6-_lTp9AF2OA2H4QYiT1vt43KbuD0Y2CCVrOTKzDMXG8msl_JvAKt4axY9RGUtBbv0NmpkBCjLZri5AaTMgjLdu8XBXCqoLx7qZL-Bwiv4njw-ZAI4jIszJTdGzMtoQ0zL7LBj_TDUBI4Qhf2bZTZlUSL3xeDWOKmd8Frksw3oKyJ17oCQK-EGau6EaJRGyasBXl8uOEWmYYgqOWirNwIDAQAB'\r\n },\r\n pem: {\r\n key1: '-----BEGIN PUBLIC KEY-----\\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA9Z/CZzxiNUz8+npqI4V1\\n0+zW3AL7+M4UQDdd/17759Xzm0MOEfHOOsOgZxxNK1DEsbyCTCE05fd3Hz1mn1uG\\njXvm5HnN2mL/3TOVxyLU6VwH9EDInnj4DNMFifs69il3KlviT3llRgPCcjF4xrF8\\nd4SR0/N3eqS1f9CBJPNEKEH+am5Xb/FqAlOUoXkILF0UYxA/jNLoWBSq+1W58e4x\\nDI0p0GuP0lN8f97HBtfB7ijbtF+VxIXtxRy+4jA49zK+CQrGmWqIm5DzZcBvUtVG\\nZ3UXd6LeMXMJOifvuCneGC2T2uB6G2g5yD54+onmKIETyNX0LtpR1MsZmKLgru5u\\ngwIDAQAB\\n-----END PUBLIC KEY-----\\n',\r\n key2: '-----BEGIN PUBLIC KEY-----\\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAkOpym7xC3sSysw5DAidL\\noVF7JUgnvXejbieDWmEiD+DQOKxzfQqYHoFfeeix//bx3wMW3I8cAc8zwZ1JO8hy\\nB2ON732JE2Zp301GAUMnAK/rBhQWmYKP/+uXSKeTJPiuaW9PVG0oRJ4MEdS+t1vI\\nA4eDPhI1EexHaY3P2wHKoV8twcGvdWUZB5gxEpMbx5CuvEXptnXEJlxKou3TZu9u\\nwJIo0pgqVLUgRpW1RSRipgutpUslBnQ72Bdbsry0KKVTlcPsudAnnWUtsMJNgmyQ\\nbESPm+aVv+GzdVUFvWKpKkAxDpNArPMf0xt8VL2frw2LDe5/n9IMFogUiSYt156/\\nmQIDAQAB\\n-----END PUBLIC KEY-----\\n',\r\n key3: '-----BEGIN PUBLIC KEY-----\\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAyvxCWbLvtMRmq57oFg3m\\nY4DWfkb1dir7b29E8UcwcKDcCsGTqoIhubU2pO46TVUXmFgC4E+Zlxt+9F+YA+MY\\n7i/5GrDvySwAy4nbDhRL6Z0kz+rqUirgm9WWsP9v+X/BwzARqq83HNBuzAjf3UHg\\nYDsKmCCarVAzRplZdT3Q5rnNiYPYSHzwfUhKEAyXk71UdtleD+bsMAmwnuYHLhDH\\niT279An/Ta93c9MTqa/Tq2Eirl/NXn1RdtbNohmMXldAH+C8uIh3Sz8erS4hZFSd\\nUG1WlDsKpyRouNPQ3diorbO88wEAgpHjXkOLj63d1fYJBFG0yfu73U80aEZehQkS\\nawIDAQAB\\n-----END PUBLIC KEY-----\\n',\r\n key4: '-----BEGIN PUBLIC KEY-----\\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA0TVoXLpgluaqw3P011zF\\nPSIzWhUMBqXT+Ocjy8NKjJbdrbs53eRFKk1waeB3hNn5JEKNVSNbUIe+MjacB9P3\\n4iCfKtdnrdDB8JXx0nIbIPzLtcJC4HCYASpjX/TVXrU9BgeCE3NUtnIxjHDy8PCb\\nJyAS/Pv299Q/wpLWnkkjq70ZJ2/fX+ObbQaZHwsWKbRZ/5sD6rLfxNACTGI/jo9+\\nvVug6AdNq96J7nUdYV1cG+INQwJJKMcAbKQcLrml8CMPc2mmf0KQ5MbS/KSbLXHU\\nF+81AsZVHfQRSuigOStQKxgSGL5osY4NrEcODbEXtkuDrKNMsZYhijKiUHBj9vvg\\nKwIDAQAB\\n-----END PUBLIC KEY-----\\n',\r\n key5: '-----BEGIN PUBLIC KEY-----\\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAueOWC26w+HlOLW7s88We\\nWkXpjxK4mkjqngIzwbjnsU9145R51HvsILvjXJNdAuueVDHj3OOtQjfUM6eMMLr+\\n3kaPv68y4FNusvB49uKc5ETI0HtHmHFSn9qAZvC7dQHSpYqC2TeCus+xKeUciQ5A\\nmSfwpNtwzM6Oh2TO45zAqSA+QBSk/uv9TJu0e1W1AlNmizQtHX6je+mvqZCVHkzG\\nFSQWQ8DBL9dHjviI2mmWfL/egAVVhBgTFXRHg5OmJbbPoHj217Yh+kHYA8IWEAHy\\nlboH6CVBdrNL4Na0fracQVTm+nOWdM95dKk3fH+KJYk/SmwB47ndWACLLi5epLl9\\nvwIDAQAB\\n-----END PUBLIC KEY-----\\n',\r\n key6: '-----BEGIN PUBLIC KEY-----\\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2PJRM7+4R97rHwY/zCkF\\nA8B3llawb6gF7oAZCpxprl6KB5z2cqLAvUfEOBtnr7RIturX04p3ThnwaFnAR7AD\\nVZWBGOYuAyaLzGHDI5mvs8D+NewG9vw8qRkTT7Mb8fuOHC6+/lTp9AF2OA2H4QYi\\nT1vt43KbuD0Y2CCVrOTKzDMXG8msl/JvAKt4axY9RGUtBbv0NmpkBCjLZri5AaTM\\ngjLdu8XBXCqoLx7qZL+Bwiv4njw+ZAI4jIszJTdGzMtoQ0zL7LBj/TDUBI4Qhf2b\\nZTZlUSL3xeDWOKmd8Frksw3oKyJ17oCQK+EGau6EaJRGyasBXl8uOEWmYYgqOWir\\nNwIDAQAB\\n-----END PUBLIC KEY-----\\n'\r\n }\r\n};\r\nlet _keeperKeys = {\r\n der: [], pem: []\r\n};\r\nfor (let key in keys.der) {\r\n _keeperKeys.der.push(normal64(keys.der[key]));\r\n}\r\nfor (let key in keys.pem) {\r\n _keeperKeys.pem.push(keys.pem[key]);\r\n}\r\nexport const keeperKeys = _keeperKeys;\r\n//# sourceMappingURL=endpoint.js.map","references":["/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/commands.ts","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/configuration.ts","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/proto.d.ts","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/platform.ts","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/utils.ts","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/restMessages.ts","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/configuration.ts"],"map":"{\"version\":3,\"file\":\"endpoint.js\",\"sourceRoot\":\"\",\"sources\":[\"../../src/endpoint.ts\"],\"names\":[],\"mappings\":\";AAEA,OAAO,EAAC,cAAc,EAAE,IAAI,EAAE,QAAQ,EAAC,MAAM,SAAS,CAAA;AACtD,OAAO,EAAC,QAAQ,EAAC,MAAM,YAAY,CAAA;AACnC,OAAO,EACH,uBAAuB,EACvB,YAAY,EACZ,qBAAqB,EACrB,QAAQ,EACR,aAAa,EACb,kBAAkB,EACrB,MAAM,SAAS,CAAA;AAChB,OAAO,EACH,aAAa,EACb,eAAe,EACf,qBAAqB,EACrB,6BAA6B,EAE7B,sBAAsB,EACtB,mBAAmB,EACtB,MAAM,gBAAgB,CAAA;AAEvB,IAAO,iBAAiB,GAAG,cAAc,CAAC,iBAAiB,CAAC;AAC5D,IAAO,UAAU,GAAG,cAAc,CAAC,UAAU,CAAC;AAG9C,IAAO,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC;AAClD,IAAO,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,CAAC;AACxD,IAAO,gBAAgB,GAAG,QAAQ,CAAC,gBAAgB,CAAC;AAEpD,MAAM,OAAO,cAAc;IAQvB,YAAoB,OAAoC;QAApC,YAAO,GAAP,OAAO,CAA6B;QAHhD,qBAAgB,GAAsB,IAAI,CAAA;QAC1C,oBAAe,GAAsB,IAAI,CAAA;QAG7C,IAAI,OAAO,CAAC,WAAW,EAAE;YACrB,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAA;YACtC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;SAChC;aAAM;YACH,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,YAAY,CAAC,iBAAiB,IAAI,CAAC,CAAC,CAAA;SAC1E;IACL,CAAC;IAEO,MAAM,CAAC,OAAe;QAC1B,OAAO,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IACnD,CAAC;IAEK,cAAc;;YAChB,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC;gBAClC,aAAa,EAAE,IAAI,CAAC,aAAa;gBACjC,UAAU,EAAE,eAAe;aAC9B,CAAC,CAAC,CAAA;QACP,CAAC;KAAA;IAEK,WAAW,CAAC,QAAgB;;YAE9B,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;gBACnB,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAA;gBACxC,IAAI,cAAc,GAAG,MAAM,IAAI,CAAC,cAAc,EAAE,CAAA;gBAChD,IAAI,CAAC,WAAW,GAAG,cAAc,CAAC,oBAAoB,CAAA;gBACtD,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE;oBAC5B,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;iBAC/C;aACJ;YAED,OAAO,IAAI,EAAE;gBACT,IAAI;oBACA,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC;wBAC1C,WAAW,EAAE;4BACT,aAAa,EAAE,IAAI,CAAC,aAAa;4BACjC,QAAQ,EAAE,QAAQ;4BAClB,oBAAoB,EAAE,IAAI,CAAC,WAAW;yBACzC;wBACD,SAAS,EAAE,cAAc,CAAC,SAAS,CAAC,MAAM;qBAC7C,CAAC,CAAC,CAAA;iBACN;gBAAC,OAAO,CAAC,EAAE;oBACR,IAAI,CAAC,CAAC,CAAC,YAAY,KAAK,CAAC;wBACrB,MAAK,CAAC,CAAC,CAAC,CAAA;oBACZ,IAAI,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;oBACpC,IAAI,QAAQ,CAAC,KAAK,KAAK,iBAAiB,EAAE;wBACtC,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,QAAQ,CAAC,WAAW,CAAA;wBACxC,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAA;qBACrD;yBAAM;wBACH,MAAK,CAAC,CAAC,CAAC,CAAA;qBACX;iBACJ;aACJ;QACL,CAAC;KAAA;IAEK,cAAc;;YAChB,qEAAqE;YACrE,qEAAqE;YACrE,sEAAsE;YAEtE,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAA;YAE9C,IAAI,YAAY,CAAC,WAAW,IAAI,YAAY,CAAC,UAAU,IAAI,YAAY,CAAC,SAAS,EAAE,EAAG,SAAS;gBAC3F,OAAM;aACT;YAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,iBAAiB,EAAE,CAAA;YAC/C,YAAY,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAA;YACvC,YAAY,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAA;YACzC,IAAI,YAAY,CAAC,WAAW,EAAE;gBAC1B,MAAM,SAAS,GAAG,mBAAmB,CAAC;oBAClC,oBAAoB,EAAE,YAAY,CAAC,WAAW;oBAC9C,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa;oBACzC,UAAU,EAAE,YAAY,CAAC,UAAU;oBACnC,eAAe,EAAE,YAAY,CAAC,SAAS;iBAC1C,CAAC,CAAA;gBACF,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAA;aACpC;iBAAM;gBACH,MAAM,SAAS,GAAG,qBAAqB,CAAC;oBACpC,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa;oBACzC,UAAU,EAAE,YAAY,CAAC,UAAU;oBACnC,eAAe,EAAE,YAAY,CAAC,SAAS;iBAC1C,CAAC,CAAA;gBACF,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAA;gBACpD,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;gBACvB,YAAY,CAAC,WAAW,GAAG,UAAU,CAAC,oBAAoB,IAAI,IAAI,CAAA;aACrE;YACD,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE;gBAC7B,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;aAChE;QACL,CAAC;KAAA;IAEK,WAAW,CAAY,OAA+B,EAAE,YAAqB;;YAC/E,OAAO,IAAI,EAAE;gBACT,IAAI,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,YAAY,CAAC,CAAA;gBACxE,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC5D,IAAI,QAAQ,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAA;gBACtE,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,QAAQ,CAAC,UAAU,KAAK,GAAG,EAAE;oBAC7E,OAAM;iBACT;gBACD,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;gBAEnD,IAAI;oBACA,IAAI,SAAS,GAAG,MAAM,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAA;oBACrF,OAAO,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;iBACtC;gBAAC,WAAM;oBACJ,MAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAA;oBACzE,IAAI;wBACA,MAAM,QAAQ,GAAgB,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;wBACtD,QAAQ,QAAQ,CAAC,KAAK,EAAE;4BACpB,KAAK,KAAK;gCACN,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,iBAAiB,GAAG,QAAQ,CAAC,MAAM,CAAA;gCAC7D,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE;oCAC7B,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;iCAC7E;gCACD,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;gCAC3C,SAAQ;4BACZ,KAAK,iBAAiB;gCAClB,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,QAAQ,CAAC,WAAW,CAAA;gCACxC,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE;oCAC9B,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;iCACnD;gCACD,SAAQ;4BACZ,KAAK,uBAAuB,CAAC,CAAC;gCAC1B,IAAI,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,WAAW,EAAE;oCACvC,MAAM,IAAI,CAAC,WAAW,CAAC,6BAA6B,CAAC;wCACjD,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa;wCACzC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,UAAU;wCAChD,eAAe,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,SAAS;wCACpD,oBAAoB,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,WAAW;qCAC9D,CAAC,CAAC,CAAA;oCACH,SAAQ;iCACX;6BACJ;yBACJ;wBACD,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE;4BAC/B,IAAI,CAAC,OAAO,CAAC,gBAAgB,iCAAM,QAAQ,GAAK,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,EAAG,CAAA;yBAC5E;qBACJ;oBAAC,WAAM;qBACP;oBACD,MAAK,CAAC,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC,CAAA;iBACjC;aACJ;QACL,CAAC;KAAA;IAEK,gBAAgB,CAAI,OAAsB;;YAC5C,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,aAAa,CAAA;YAC3C,IAAI,YAAY,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAA;YACrD,IAAI,QAAQ,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,0BAA0B,CAAC,EAAE,YAAY,CAAC,CAAA;YACzF,IAAI,SAAS,CAAA;YACb,IAAI;gBACA,SAAS,GAAG,MAAM,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAA;aACpF;YAAC,OAAO,CAAC,EAAE;gBACR,IAAI,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;gBACjD,MAAK,CAAC,+BAA+B,KAAK,EAAE,CAAC,CAAA;aAChD;YACD,IAAI,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAA;YACxD,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE;gBACvE,MAAK,CAAC,IAAI,CAAC,CAAA;aACd;YACD,OAAO,IAAS,CAAA;QACpB,CAAC;KAAA;IAEK,GAAG,CAAC,IAAY;;YAClB,OAAO,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAA;QAC9C,CAAC;KAAA;IAEO,qBAAqB,CAAC,SAAiB;QAC3C,IAAI,CAAC,eAAe,GAAG,uBAAuB,CAAC,SAAS,CAAC,CAAA;IAC7D,CAAC;IAEY,cAAc,CAAC,OAAmC,EAAE,YAAqB;;YAClF,OAAO,iBAAiB,CAAC,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,YAAY,CAAC,CAAA;QACzE,CAAC;KAAA;IAEK,kBAAkB,CAAC,eAA2B;;YAChD,MAAM,oBAAoB,GAAG,MAAM,QAAQ,CAAC,aAAa,CAAC,eAAe,EAAE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAA;YACpG,OAAO,iBAAiB,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAA;QACzD,CAAC;KAAA;IAEK,wBAAwB,CAAC,iBAA6B;;YACxD,OAAO,wBAAwB,CAAC,iBAAiB,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,WAAW,EAAE,IAAI,CAAC,eAAe,CAAC,CAAA;QACnH,CAAC;KAAA;IAED,kBAAkB;QACd,OAAO,IAAI,CAAC,eAAe,CAAC;IAChC,CAAC;IAEY,iBAAiB,CAAC,iBAA6B,EAAE,WAAmB,EAAE,EAAE,YAAY,GAAG,EAAE;;YAClG,MAAM,OAAO,GAAG,sBAAsB,CAAC;gBACnC,UAAU,EAAE,IAAI;gBAChB,eAAe,EAAE,IAAI,CAAC,aAAa;gBACnC,MAAM,EAAE,OAAO;gBACf,YAAY,EAAE,KAAK;gBACnB,mBAAmB,EAAE,iBAAiB;gBACtC,cAAc,EAAE,YAAY;gBAC5B,UAAU,EAAE,QAAQ;aACvB,CAAC,CAAC,OAAO,EAAE,CAAA;YACZ,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,CAAA;YACtE,OAAO,kBAAkB,CAAC,OAAO,CAAC,CAAA;QACtC,CAAC;KAAA;IAEY,uBAAuB,CAAC,KAAa;;YAC9C,OAAO,uBAAuB,CAAC,KAAK,EAAE,IAAI,CAAC,kBAAkB,EAAE,CAAC,GAAG,CAAC,CAAA;QACxE,CAAC;KAAA;IAEY,kBAAkB;;YAC3B,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;gBACjD,MAAM,EAAC,UAAU,EAAE,SAAS,EAAC,GAAG,MAAM,QAAQ,CAAC,kBAAkB,EAAE,CAAA;gBAEnE,IAAI,CAAC,gBAAgB,GAAG,UAAU,CAAA;gBAClC,IAAI,CAAC,eAAe,GAAG,SAAS,CAAA;aACnC;YAED,OAAO,kBAAkB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;QACnD,CAAC;KAAA;IAEM,wBAAwB,CAAC,QAAgB;QAC5C,MAAM,sBAAsB,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAA;QACtD,MAAM,iBAAiB,GAAG,QAAQ,CAAC,cAAc,CAAC,sBAAsB,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAA;QAChG,OAAO,QAAQ,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAA;IACpD,CAAC;CACJ;AAED,MAAM,UAAgB,wBAAwB,CAAC,iBAA6B,EAAE,oBAAgC,EAAE,eAAgC;;QAC5I,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,MAAM,CAAC;YAClD,iBAAiB,EAAE,iBAAiB;YACpC,oBAAoB,EAAE,oBAAoB;YAC1C,eAAe,EAAE,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE;SACxC,CAAC,CAAA;QACF,MAAM,sBAAsB,GAAG,oBAAoB,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,MAAM,EAAE,CAAA;QACtF,MAAM,UAAU,GAAG,MAAM,iBAAiB,CAAC,sBAAsB,EAAE,eAAe,CAAC,CAAA;QACnF,OAAO,kBAAkB,CAAC,UAAU,CAAC,CAAA;IACzC,CAAC;CAAA;AAED,MAAM,UAAgB,iBAAiB,CAAC,OAAmC,EAAE,eAAgC,EAAE,YAAqB;;QAChI,MAAM,cAAc,GAAG,iBAAiB,CAAC,MAAM,EAAE,CAAA;QACjD,IAAI,OAAO,EAAE;YACT,cAAc,CAAC,OAAO,GAAG,OAAO,YAAY,UAAU;gBAClD,CAAC,CAAC,OAAO;gBACT,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAA;SAC7C;QACD,IAAI,YAAY,EAAE;YACd,cAAc,CAAC,qBAAqB,GAAG,aAAa,CAAC,YAAY,CAAC,CAAC;SACtE;QACD,IAAI,mBAAmB,GAAG,iBAAiB,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,MAAM,EAAE,CAAA;QAC3E,IAAI,uBAAuB,GAAG,MAAM,QAAQ,CAAC,aAAa,CAAC,mBAAmB,EAAE,eAAe,CAAC,GAAG,CAAC,CAAA;QACpG,IAAI,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC;YAC/B,wBAAwB,EAAE,eAAe,CAAC,YAAY;YACtD,gBAAgB,EAAE,uBAAuB;YACzC,WAAW,EAAE,eAAe,CAAC,WAAW;YACxC,MAAM,EAAE,OAAO;SAClB,CAAC,CAAA;QACF,OAAO,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,EAAE,CAAA;IACjD,CAAC;CAAA;AAED,MAAM,UAAgB,uBAAuB,CAAC,kBAA0B,EAAE,GAAe;;QACrF,MAAM,aAAa,GAAG,MAAM,QAAQ,CAAC,aAAa,CAAC,aAAa,CAAC,kBAAkB,CAAC,EAAE,GAAG,CAAC,CAAC;QAC3F,OAAO,gBAAgB,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IAClD,CAAC;CAAA;AAED,MAAM,CAAN,IAAY,iBASX;AATD,WAAY,iBAAiB;IACzB,gDAA2B,CAAA;IAC3B,iDAA4B,CAAA;IAC5B,mDAA8B,CAAA;IAC9B,qDAAgC,CAAA;IAChC,uDAAkC,CAAA;IAClC,kDAA6B,CAAA;IAC7B,mDAA8B,CAAA;IAC9B,qDAAgC,CAAA;AACpC,CAAC,EATW,iBAAiB,KAAjB,iBAAiB,QAS5B;AAOD,IAAI,IAAI,GACJ;IACI,GAAG,EAAE;QACD,IAAI,EAAE,0WAA0W;QAChX,IAAI,EAAE,0WAA0W;QAChX,IAAI,EAAE,0WAA0W;QAChX,IAAI,EAAE,0WAA0W;QAChX,IAAI,EAAE,0WAA0W;QAChX,IAAI,EAAE,0WAA0W;KACnX;IACD,GAAG,EAAE;QACD,IAAI,EAAE,8cAA8c;QACpd,IAAI,EAAE,8cAA8c;QACpd,IAAI,EAAE,8cAA8c;QACpd,IAAI,EAAE,8cAA8c;QACpd,IAAI,EAAE,8cAA8c;QACpd,IAAI,EAAE,8cAA8c;KACvd;CACJ,CAAA;AAEL,IAAI,WAAW,GAAe;IAC1B,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE;CACnB,CAAA;AAED,KAAK,IAAI,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE;IACtB,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;CAChD;AACD,KAAK,IAAI,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE;IACtB,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;CACtC;AAED,MAAM,CAAC,MAAM,UAAU,GAAe,WAAW,CAAA\"}","dts":{"name":"/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/endpoint.d.ts","writeByteOrderMark":false,"text":"import { KeeperCommand, KeeperHttpResponse } from './commands';\r\nimport { Authentication, Push, SsoCloud } from './proto';\r\nimport { RestMessage } from './restMessages';\r\nimport { ClientConfigurationInternal, TransmissionKey } from './configuration';\r\nimport IDeviceResponse = Authentication.IDeviceResponse;\r\nimport IPreLoginResponse = Authentication.IPreLoginResponse;\r\nimport WssClientResponse = Push.WssClientResponse;\r\nimport SsoCloudResponse = SsoCloud.SsoCloudResponse;\r\nexport declare class KeeperEndpoint {\r\n private options;\r\n private transmissionKey;\r\n deviceToken: Uint8Array;\r\n clientVersion: any;\r\n private onsitePrivateKey;\r\n private onsitePublicKey;\r\n constructor(options: ClientConfigurationInternal);\r\n private getUrl;\r\n getDeviceToken(): Promise<IDeviceResponse>;\r\n getPreLogin(username: string): Promise<IPreLoginResponse>;\r\n registerDevice(): Promise<void>;\r\n executeRest<TIn, TOut>(message: RestMessage<TIn, TOut>, sessionToken?: string): Promise<TOut>;\r\n executeV2Command<T>(command: KeeperCommand): Promise<T>;\r\n get(path: string): Promise<KeeperHttpResponse>;\r\n private updateTransmissionKey;\r\n prepareRequest(payload: Uint8Array | KeeperCommand, sessionToken?: string): Promise<Uint8Array>;\r\n decryptPushMessage(pushMessageData: Uint8Array): Promise<WssClientResponse>;\r\n getPushConnectionRequest(messageSessionUid: Uint8Array): Promise<string>;\r\n getTransmissionKey(): TransmissionKey;\r\n prepareSsoPayload(messageSessionUid: Uint8Array, username?: string, idpSessionId?: string): Promise<string>;\r\n decryptCloudSsoResponse(token: string): Promise<SsoCloudResponse>;\r\n getOnsitePublicKey(): Promise<string>;\r\n decryptOnsiteSsoPassword(password: string): string;\r\n}\r\nexport declare function getPushConnectionRequest(messageSessionUid: Uint8Array, encryptedDeviceToken: Uint8Array, transmissionKey: TransmissionKey): Promise<string>;\r\nexport declare function prepareApiRequest(payload: Uint8Array | KeeperCommand, transmissionKey: TransmissionKey, sessionToken?: string): Promise<Uint8Array>;\r\nexport declare function decryptCloudSsoResponse(cloudResponseToken: string, key: Uint8Array): Promise<SsoCloudResponse>;\r\nexport declare enum KeeperEnvironment {\r\n Prod = \"keepersecurity.com\",\r\n QA = \"qa.keepersecurity.com\",\r\n DEV = \"dev.keepersecurity.com\",\r\n DEV2 = \"dev2.keepersecurity.com\",\r\n LOCAL = \"local.keepersecurity.com\",\r\n Prod_EU = \"keepersecurity.eu\",\r\n QA_EU = \"qa.keepersecurity.eu\",\r\n DEV_EU = \"dev.keepersecurity.eu\"\r\n}\r\ninterface KeeperKeys {\r\n der: string[];\r\n pem: string[];\r\n}\r\nexport declare const keeperKeys: KeeperKeys;\r\nexport {};\r\n"}}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"code":"export var DeviceVerificationMethods;\r\n(function (DeviceVerificationMethods) {\r\n DeviceVerificationMethods[DeviceVerificationMethods[\"Email\"] = 0] = \"Email\";\r\n DeviceVerificationMethods[DeviceVerificationMethods[\"KeeperPush\"] = 1] = \"KeeperPush\";\r\n DeviceVerificationMethods[DeviceVerificationMethods[\"TFA\"] = 2] = \"TFA\";\r\n DeviceVerificationMethods[DeviceVerificationMethods[\"AdminApproval\"] = 3] = \"AdminApproval\";\r\n})(DeviceVerificationMethods || (DeviceVerificationMethods = {}));\r\n//# sourceMappingURL=configuration.js.map","references":["/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/endpoint.ts","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/proto.d.ts","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/platform.ts","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/auth.ts"],"map":"{\"version\":3,\"file\":\"configuration.js\",\"sourceRoot\":\"\",\"sources\":[\"../../src/configuration.ts\"],\"names\":[],\"mappings\":\"AAmGA,MAAM,CAAN,IAAY,yBAKX;AALD,WAAY,yBAAyB;IACjC,2EAAK,CAAA;IACL,qFAAU,CAAA;IACV,uEAAG,CAAA;IACH,2FAAa,CAAA;AACjB,CAAC,EALW,yBAAyB,KAAzB,yBAAyB,QAKpC\"}","dts":{"name":"/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/configuration.d.ts","writeByteOrderMark":false,"text":"import { KeeperEnvironment } from \"./endpoint\";\r\nimport { Authentication } from './proto';\r\nimport TwoFactorExpiration = Authentication.TwoFactorExpiration;\r\nimport TwoFactorPushType = Authentication.TwoFactorPushType;\r\nimport { KeyWrapper } from './platform';\r\nimport { SessionParams } from \"./auth\";\r\nexport declare type KeeperHost = KeeperEnvironment | string;\r\nexport interface ClientConfiguration {\r\n authUI?: AuthUI;\r\n authUI3?: AuthUI3;\r\n clientVersion?: string;\r\n deviceConfig?: DeviceConfig;\r\n deviceToken?: Uint8Array;\r\n host: KeeperHost;\r\n onCommandFailure?: (error: KeeperError) => void;\r\n onDeviceConfig?: (deviceConfig: DeviceConfig, host: KeeperHost) => void;\r\n onDeviceToken?: (deviceToken: Uint8Array) => void;\r\n onRegionChanged?: (newRegion: string) => void;\r\n onDeviceVerified?: (isDeviceVerified: boolean) => void;\r\n sessionStorage?: SessionStorage;\r\n kvs?: KeyValueStorage;\r\n useSessionResumption?: boolean;\r\n iterations?: number;\r\n salt?: Uint8Array;\r\n}\r\nexport interface ClientConfigurationInternal extends ClientConfiguration {\r\n deviceConfig: DeviceConfig;\r\n}\r\nexport declare type KeeperError = {\r\n additional_info?: string;\r\n error?: string;\r\n location?: string;\r\n message?: string;\r\n path?: string;\r\n result_code?: string;\r\n key_id?: number;\r\n region_host?: string;\r\n};\r\nexport interface DeviceConfig {\r\n deviceName: string | null;\r\n deviceToken: Uint8Array | null;\r\n privateKey: Uint8Array | null;\r\n publicKey: Uint8Array | null;\r\n transmissionKeyId: number | null;\r\n}\r\nexport interface SessionStorage {\r\n lastUsername: string;\r\n getCloneCode(host: KeeperEnvironment, username: string): Promise<Uint8Array | null>;\r\n saveCloneCode(host: KeeperEnvironment, username: string, cloneCode: Uint8Array): Promise<void>;\r\n getSessionParameters(): Promise<SessionParams | null>;\r\n /**\r\n * Important: implementation of this function should retain these values in memory only, never to disk.\r\n */\r\n saveSessionParameters(sessionParams: SessionParams): Promise<void>;\r\n}\r\nexport interface KeyValueStorage {\r\n getValue(key: string): string | null;\r\n saveValue(key: string, value: string): void;\r\n}\r\nexport interface VendorConfiguration {\r\n host: KeeperHost;\r\n vendorId: string;\r\n privateKey: string;\r\n}\r\nexport interface TransmissionKey {\r\n key: Uint8Array;\r\n publicKeyId: number;\r\n encryptedKey: Uint8Array;\r\n}\r\nexport interface AuthUI {\r\n getTwoFactorCode(errorMessage?: string): Promise<string>;\r\n displayDialog(): Promise<boolean>;\r\n}\r\nexport interface AuthUI3 {\r\n waitForDeviceApproval(channels: DeviceApprovalChannel[], isCloud: boolean): Promise<boolean>;\r\n waitForTwoFactorCode(channels: TwoFactorChannelData[], cancel: Promise<void>): Promise<boolean>;\r\n getPassword?(): Promise<string | KeyWrapper>;\r\n getSSOToken?(redirectUrl: string): Promise<Uint8Array>;\r\n redirectCallback?(url: string): void;\r\n ssoLogin?(url: string): Promise<any>;\r\n idpLogout?(url: string): Promise<void>;\r\n}\r\nexport declare type TwoFactorInput = {\r\n twoFactorCode: string;\r\n desiredExpiration: TwoFactorExpiration;\r\n};\r\nexport declare enum DeviceVerificationMethods {\r\n Email = 0,\r\n KeeperPush = 1,\r\n TFA = 2,\r\n AdminApproval = 3\r\n}\r\nexport declare type DeviceApprovalChannel = {\r\n channel: DeviceVerificationMethods;\r\n sendApprovalRequest: () => Promise<void>;\r\n validateCode?: (code: string) => Promise<void>;\r\n setExpiration?: (expiration: TwoFactorExpiration) => void;\r\n};\r\nexport declare type TwoFactorChannelData = {\r\n availablePushes?: TwoFactorPushType[];\r\n channel: Authentication.ITwoFactorChannelInfo;\r\n sendPush?: (type: TwoFactorPushType) => void;\r\n sendCode: (code: string) => void;\r\n setExpiration: (expiration: TwoFactorExpiration) => void;\r\n};\r\nexport declare type LoginError = {\r\n error: string;\r\n message: string;\r\n};\r\n"}}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"code":"export * from \"../endpoint\";\r\nexport * from \"../auth\";\r\nexport * from \"../vendorContext\";\r\nexport * from \"../vendorModel\";\r\nexport * from \"../vault\";\r\nexport * from \"../company\";\r\nexport * from \"../configuration\";\r\nexport * from \"../commands\";\r\nexport * from \"../restMessages\";\r\nexport * from \"../utils\";\r\nexport * from \"../platform\";\r\nexport * from \"../proto\";\r\nimport { connectPlatform } from \"../platform\";\r\nimport { nodePlatform } from \"./platform\";\r\nconnectPlatform(nodePlatform);\r\n//# sourceMappingURL=index.js.map","references":["/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/endpoint.ts","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/auth.ts","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/vendorContext.ts","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/vendorModel.ts","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/vault.ts","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/company.ts","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/configuration.ts","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/commands.ts","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/restMessages.ts","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/utils.ts","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/platform.ts","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/proto.d.ts","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/platform.ts","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/node/platform.ts"],"map":"{\"version\":3,\"file\":\"index.js\",\"sourceRoot\":\"\",\"sources\":[\"../../../src/node/index.ts\"],\"names\":[],\"mappings\":\"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,OAAO,EAAC,eAAe,EAAC,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAC,YAAY,EAAC,MAAM,YAAY,CAAC;AAExC,eAAe,CAAC,YAAY,CAAC,CAAC\"}","dts":{"name":"/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/node/index.d.ts","writeByteOrderMark":false,"text":"export * from \"../endpoint\";\r\nexport * from \"../auth\";\r\nexport * from \"../vendorContext\";\r\nexport * from \"../vendorModel\";\r\nexport * from \"../vault\";\r\nexport * from \"../company\";\r\nexport * from \"../configuration\";\r\nexport * from \"../commands\";\r\nexport * from \"../restMessages\";\r\nexport * from \"../utils\";\r\nexport * from \"../platform\";\r\nexport * from \"../proto\";\r\n"}}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"code":"var _a;\r\nimport { __awaiter } from \"tslib\";\r\nimport * as crypto from \"crypto\";\r\nimport { createECDH } from \"crypto\";\r\nimport * as https from \"https\";\r\nimport * as FormData from \"form-data\";\r\nimport * as NodeRSA from 'node-rsa';\r\nimport * as WebSocket from 'faye-websocket';\r\nimport { KeyWrapper } from \"../platform\";\r\nimport { RSA_PKCS1_PADDING } from \"constants\";\r\nimport { keeperKeys } from \"../endpoint\";\r\nimport { socketSendMessage } from '../auth';\r\nexport const nodePlatform = (_a = class {\r\n static getRandomBytes(length) {\r\n return crypto.randomBytes(length);\r\n }\r\n static bytesToBase64(data) {\r\n return Buffer.from(data).toString(\"base64\");\r\n }\r\n static base64ToBytes(data) {\r\n return Buffer.from(data, \"base64\");\r\n }\r\n static bytesToString(data) {\r\n return Buffer.from(data).toString();\r\n }\r\n static stringToBytes(data) {\r\n return Buffer.from(data);\r\n }\r\n static wrapPassword(password) {\r\n return KeyWrapper.create(password);\r\n }\r\n static unWrapPassword(password) {\r\n return password.getKey();\r\n }\r\n static generateRSAKeyPair() {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const rsaKeys = new NodeRSA({ b: 2048 });\r\n const rsaPublicKey = rsaKeys.exportKey('public-der');\r\n const rsaPrivateKey = rsaKeys.exportKey('private-der');\r\n return Promise.resolve({\r\n privateKey: rsaPrivateKey,\r\n publicKey: rsaPublicKey\r\n });\r\n });\r\n }\r\n static generateECKeyPair() {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const ecdh = createECDH('prime256v1');\r\n ecdh.generateKeys();\r\n return Promise.resolve({\r\n privateKey: ecdh.getPrivateKey(),\r\n publicKey: ecdh.getPublicKey()\r\n });\r\n });\r\n }\r\n static publicEncrypt(data, key) {\r\n let publicKey = key[0] === '-' // PEM or DER?\r\n ? key\r\n : crypto.createPublicKey({\r\n key: Buffer.from(key, 'base64'),\r\n type: 'pkcs1',\r\n format: 'der'\r\n });\r\n return crypto.publicEncrypt({\r\n key: publicKey,\r\n padding: RSA_PKCS1_PADDING\r\n }, data);\r\n }\r\n static publicEncryptEC(data, key, id) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const ecdh = createECDH('prime256v1');\r\n ecdh.generateKeys();\r\n const ephemeralPublicKey = ecdh.getPublicKey();\r\n const sharedSecret = ecdh.computeSecret(key);\r\n const sharedSecretCombined = Buffer.concat([sharedSecret, id || new Uint8Array()]);\r\n const symmetricKey = crypto.createHash(\"SHA256\").update(sharedSecretCombined).digest();\r\n const encryptedData = yield this.aesGcmEncrypt(data, symmetricKey);\r\n return Buffer.concat([ephemeralPublicKey, encryptedData]);\r\n });\r\n }\r\n static privateDecrypt(data, key) {\r\n return crypto.privateDecrypt({\r\n key: crypto.createPrivateKey({\r\n key: Buffer.from(key),\r\n type: 'pkcs1',\r\n format: 'der',\r\n }),\r\n padding: RSA_PKCS1_PADDING\r\n }, data);\r\n }\r\n static privateDecryptEC(data, privateKey, publicKey, id) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const ecdh = createECDH('prime256v1');\r\n ecdh.setPrivateKey(privateKey);\r\n const publicKeyLength = 65;\r\n const ephemeralPublicKey = data.slice(0, publicKeyLength);\r\n const sharedSecret = ecdh.computeSecret(ephemeralPublicKey);\r\n const sharedSecretCombined = Buffer.concat([sharedSecret, id || new Uint8Array()]);\r\n const symmetricKey = crypto.createHash(\"SHA256\").update(sharedSecretCombined).digest();\r\n const encryptedData = data.slice(publicKeyLength);\r\n return yield this.aesGcmDecrypt(encryptedData, symmetricKey);\r\n });\r\n }\r\n static privateSign(data, key) {\r\n return Promise.resolve(crypto\r\n .createSign(\"SHA256\")\r\n .update(data)\r\n .sign(key));\r\n }\r\n static aesGcmEncrypt(data, key) {\r\n let iv = crypto.randomBytes(12);\r\n let cipher = crypto.createCipheriv(\"aes-256-gcm\", key, iv);\r\n let encrypted = Buffer.concat([cipher.update(data), cipher.final()]);\r\n const tag = cipher.getAuthTag();\r\n let result = Buffer.concat([iv, encrypted, tag]);\r\n return Promise.resolve(result);\r\n }\r\n static aesGcmDecrypt(data, key) {\r\n let iv = data.subarray(0, 12);\r\n let encrypted = data.subarray(12, data.length - 16);\r\n let tag = data.subarray(data.length - 16);\r\n let cipher = crypto.createDecipheriv(\"aes-256-gcm\", key, iv);\r\n cipher.setAuthTag(tag);\r\n return Promise.resolve(Buffer.concat([cipher.update(encrypted), cipher.final()]));\r\n }\r\n static aesCbcEncrypt(data, key, usePadding) {\r\n let iv = crypto.randomBytes(16);\r\n let cipher = crypto\r\n .createCipheriv(\"aes-256-cbc\", key, iv)\r\n .setAutoPadding(usePadding);\r\n let encrypted = Buffer.concat([cipher.update(data), cipher.final()]);\r\n return Buffer.concat([iv, encrypted]);\r\n }\r\n static aesCbcDecrypt(data, key, usePadding) {\r\n let iv = data.subarray(0, 16);\r\n let encrypted = data.subarray(16);\r\n let cipher = crypto\r\n .createDecipheriv(\"aes-256-cbc\", key, iv)\r\n .setAutoPadding(usePadding);\r\n return Buffer.concat([cipher.update(encrypted), cipher.final()]);\r\n }\r\n static deriveKey(password, saltBytes, iterations) {\r\n return Promise.resolve(crypto.pbkdf2Sync(password.getKey(), saltBytes, iterations, 32, 'SHA256'));\r\n }\r\n static deriveKeyV2(domain, password, saltBytes, iterations) {\r\n const bytes = crypto.pbkdf2Sync(Buffer.of(...Buffer.from(domain), ...nodePlatform.unWrapPassword(password.getKey())), saltBytes, iterations, 64, 'SHA512');\r\n const reducedBytes = crypto.createHmac(\"SHA256\", bytes).update(Buffer.from(domain)).digest();\r\n return Promise.resolve(reducedBytes);\r\n }\r\n static calcAuthVerifier(key) {\r\n return Promise.resolve(crypto.createHash(\"SHA256\").update(key).digest());\r\n }\r\n static get(url, headers) {\r\n return new Promise((resolve, reject) => {\r\n let get = https.request(url, {\r\n method: \"get\",\r\n headers: Object.assign({ \"User-Agent\": `Node/${process.version}` }, headers)\r\n }, (res) => {\r\n this.fetchData(res, resolve);\r\n });\r\n get.on('error', reject);\r\n get.end();\r\n });\r\n }\r\n static post(url, request, headers) {\r\n return new Promise((resolve, reject) => {\r\n let post = https.request(url, {\r\n method: \"post\",\r\n headers: Object.assign({ \"Content-Type\": \"application/octet-stream\", \"Content-Length\": request.length, \"User-Agent\": `Node/${process.version}` }, headers),\r\n }, (res) => {\r\n this.fetchData(res, resolve);\r\n });\r\n post.on('error', reject);\r\n post.write(request);\r\n post.end();\r\n });\r\n }\r\n static fileUpload(url, uploadParameters, data) {\r\n return new Promise((resolve, reject) => {\r\n const form = new FormData();\r\n for (const key in uploadParameters) {\r\n form.append(key, uploadParameters[key]);\r\n }\r\n form.append('file', data);\r\n let post = https.request(url, {\r\n method: \"post\",\r\n headers: form.getHeaders()\r\n });\r\n form.pipe(post);\r\n post.on('error', reject);\r\n post.on('response', function (res) {\r\n resolve({\r\n headers: res.headers,\r\n statusCode: res.statusCode,\r\n statusMessage: res.statusMessage\r\n });\r\n });\r\n });\r\n }\r\n static fetchData(res, resolve) {\r\n let retVal = {\r\n statusCode: res.statusCode,\r\n headers: res.headers,\r\n data: null\r\n };\r\n res.on(\"data\", data => {\r\n retVal.data = retVal.data\r\n ? Buffer.concat([retVal.data, data])\r\n : data;\r\n });\r\n res.on(\"end\", () => {\r\n resolve(retVal);\r\n });\r\n }\r\n static createWebsocket(url) {\r\n const socket = new WebSocket.Client(url);\r\n let createdSocket;\r\n return createdSocket = {\r\n onOpen: (callback) => {\r\n socket.on('open', callback);\r\n },\r\n close: () => {\r\n socket.close();\r\n },\r\n onClose: (callback) => {\r\n socket.on('close', callback);\r\n },\r\n onError: (callback) => {\r\n socket.on('error', callback);\r\n },\r\n onMessage: (callback) => {\r\n socket.on('message', (e) => {\r\n callback(e.data);\r\n });\r\n },\r\n send: (message => {\r\n socketSendMessage(message, socket, createdSocket);\r\n }),\r\n messageQueue: [],\r\n };\r\n }\r\n },\r\n _a.keys = keeperKeys.pem,\r\n _a);\r\n//# sourceMappingURL=platform.js.map","references":["/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/node_modules/form-data/index.d.ts","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/node_modules/node-rsa/src/NodeRSA.js","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/node_modules/faye-websocket/lib/faye/websocket.js","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/platform.ts","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/commands.ts","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/endpoint.ts","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/auth.ts"],"map":"{\"version\":3,\"file\":\"platform.js\",\"sourceRoot\":\"\",\"sources\":[\"../../../src/node/platform.ts\"],\"names\":[],\"mappings\":\"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\"}","dts":{"name":"/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/node/platform.d.ts","writeByteOrderMark":false,"text":"import { Platform } from \"../platform\";\r\nexport declare const nodePlatform: Platform;\r\n"}}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"code":"import { __awaiter } from \"tslib\";\r\nimport { platform } from \"./platform\";\r\nimport { Authentication } from \"./proto\";\r\nexport function getKeeperUrl(host, forPath) {\r\n return `https://${host}/api/rest/${forPath}`;\r\n}\r\nexport function getKeeperSAMLUrl(host, forPath, serviceProviderId = null) {\r\n if (serviceProviderId) {\r\n return getKeeperUrl(host, `sso/saml/${forPath}/${serviceProviderId}`);\r\n }\r\n else {\r\n return getKeeperUrl(host, `sso/saml/${forPath}`);\r\n }\r\n}\r\nexport function getKeeperSsoConfigUrl(host, forPath, serviceProviderId = null) {\r\n if (serviceProviderId) {\r\n return getKeeperUrl(host, `sso/config/${forPath}/${serviceProviderId}`);\r\n }\r\n else {\r\n return getKeeperUrl(host, `sso/config/${forPath}`);\r\n }\r\n}\r\nexport function getKeeperAutomatorAdminUrl(host, forPath, automatorId = null) {\r\n if (automatorId) {\r\n return getKeeperUrl(host, `automator/${forPath}/${automatorId}`);\r\n }\r\n else {\r\n return getKeeperUrl(host, `automator/${forPath}`);\r\n }\r\n}\r\nexport function generateTransmissionKey(keyNumber) {\r\n const transmissionKey = platform.getRandomBytes(32);\r\n return {\r\n publicKeyId: keyNumber,\r\n key: transmissionKey,\r\n encryptedKey: platform.publicEncrypt(transmissionKey, platform.keys[keyNumber - 1])\r\n };\r\n}\r\nexport function webSafe64(source) {\r\n return source.replace(/\\+/g, '-').replace(/\\//g, '_').replace(/=+$/, '');\r\n}\r\nexport function webSafe64FromBytes(source) {\r\n return webSafe64(platform.bytesToBase64(source));\r\n}\r\nexport function normal64(source) {\r\n return source.replace(/-/g, '+').replace(/_/g, '/') + '=='.substring(0, (3 * source.length) % 4);\r\n}\r\nexport function normal64Bytes(source) {\r\n return platform.base64ToBytes(normal64(source));\r\n}\r\nexport function isTwoFactorResultCode(resultCode) {\r\n return [\"need_totp\", \"invalid_device_token\", \"invalid_totp\"].includes(resultCode);\r\n}\r\nexport function generateEncryptionKey() {\r\n return platform.getRandomBytes(32);\r\n}\r\nexport function generateUidBytes() {\r\n return platform.getRandomBytes(16);\r\n}\r\nexport function generateUid() {\r\n return webSafe64FromBytes(generateUidBytes());\r\n}\r\nexport function wrapPassword(key) {\r\n if (typeof key === 'string') {\r\n return platform.wrapPassword(platform.stringToBytes(key));\r\n }\r\n if (key instanceof Uint8Array) {\r\n return platform.wrapPassword(key);\r\n }\r\n throw new Error('Error wrapping the password');\r\n}\r\nexport function encryptKey(key, withKey) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n let encryptedKey = yield platform.aesGcmEncrypt(key, withKey);\r\n return webSafe64FromBytes(encryptedKey);\r\n });\r\n}\r\nexport function shareKey(key, publicKey) {\r\n let encryptedKey = platform.publicEncrypt(key, publicKey);\r\n return webSafe64FromBytes(encryptedKey);\r\n}\r\nexport function shareKeyEC(key, publicKey) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n let encryptedKey = yield platform.publicEncryptEC(key, publicKey);\r\n return webSafe64FromBytes(encryptedKey);\r\n });\r\n}\r\nexport function decryptKey(encryptedKey, withKey) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n return platform.aesGcmDecrypt(normal64Bytes(encryptedKey), withKey);\r\n });\r\n}\r\nexport function encryptForStorage(data, key) {\r\n return webSafe64FromBytes(platform.aesCbcEncrypt(data, key, true));\r\n}\r\nexport function decryptFromStorage(data, key) {\r\n return platform.aesCbcDecrypt(normal64Bytes(data), key, true);\r\n}\r\nexport function decryptFromStorageGcm(data, key) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n return platform.aesGcmDecrypt(normal64Bytes(data), key);\r\n });\r\n}\r\nexport function encryptObjectForStorage(obj, key) {\r\n let s = JSON.stringify(obj);\r\n let bytes = platform.stringToBytes(s);\r\n return encryptForStorage(bytes, key);\r\n}\r\nexport function encryptObjectForStorageAsBytes(obj, key) {\r\n let s = JSON.stringify(obj);\r\n let bytes = platform.stringToBytes(s);\r\n return platform.aesCbcEncrypt(bytes, key, true);\r\n}\r\nexport function decryptObjectFromStorage(data, key) {\r\n try {\r\n let decrypted = decryptFromStorage(data, key);\r\n return JSON.parse(platform.bytesToString(decrypted));\r\n }\r\n catch (e) {\r\n console.log(`Unable to decrypt ${data}`);\r\n return {};\r\n }\r\n}\r\nexport function encryptObjectForStorageGCM(obj, key, usePadding = true) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n let bytes = platform.stringToBytes(JSON.stringify(obj));\r\n if (usePadding) {\r\n const paddedSize = Math.ceil(Math.max(384, bytes.length) / 16) * 16;\r\n bytes = Uint8Array.of(...bytes, ...Array(paddedSize - bytes.length).fill(0x20));\r\n }\r\n return platform.aesGcmEncrypt(bytes, key);\r\n });\r\n}\r\nexport function chooseErrorMessage(errorNumber) {\r\n switch (errorNumber) {\r\n case Authentication.LoginState.ACCOUNT_LOCKED:\r\n return 'account_locked';\r\n case Authentication.LoginState.DEVICE_ACCOUNT_LOCKED:\r\n return 'device_account_locked';\r\n case Authentication.LoginState.DEVICE_LOCKED:\r\n return 'device_locked';\r\n case Authentication.LoginState.INVALID_LOGINSTATE:\r\n return 'invalid_loginstate';\r\n }\r\n}\r\nexport function resolvablePromise() {\r\n let resolver;\r\n const promise = new Promise((resolve) => {\r\n resolver = resolve;\r\n });\r\n return {\r\n promise: promise,\r\n resolve: resolver\r\n };\r\n}\r\n//# sourceMappingURL=utils.js.map","references":["/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/platform.ts","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/configuration.ts","/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/src/proto.d.ts"],"map":"{\"version\":3,\"file\":\"utils.js\",\"sourceRoot\":\"\",\"sources\":[\"../../src/utils.ts\"],\"names\":[],\"mappings\":\"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\"}","dts":{"name":"/Users/saldoukhov/Documents/Code/Keeper/keeper-sdk-javascript/keeperapi/utils.d.ts","writeByteOrderMark":false,"text":"import { KeyWrapper } from \"./platform\";\r\nimport { KeeperHost, TransmissionKey } from './configuration';\r\nexport declare function getKeeperUrl(host: KeeperHost, forPath: string): string;\r\nexport declare function getKeeperSAMLUrl(host: KeeperHost, forPath: string, serviceProviderId?: number): string;\r\nexport declare function getKeeperSsoConfigUrl(host: KeeperHost, forPath: string, serviceProviderId?: number): string;\r\nexport declare function getKeeperAutomatorAdminUrl(host: KeeperHost, forPath: string, automatorId?: number): string;\r\nexport declare function generateTransmissionKey(keyNumber: number): TransmissionKey;\r\nexport declare function webSafe64(source: string): string;\r\nexport declare function webSafe64FromBytes(source: Uint8Array): string;\r\nexport declare function normal64(source: string): string;\r\nexport declare function normal64Bytes(source: string): Uint8Array;\r\nexport declare function isTwoFactorResultCode(resultCode: string): boolean;\r\nexport declare function generateEncryptionKey(): Uint8Array;\r\nexport declare function generateUidBytes(): Uint8Array;\r\nexport declare function generateUid(): string;\r\nexport declare function wrapPassword(key: string | Uint8Array): KeyWrapper;\r\nexport declare function encryptKey(key: Uint8Array, withKey: Uint8Array): Promise<string>;\r\nexport declare function shareKey(key: Uint8Array, publicKey: string): string;\r\nexport declare function shareKeyEC(key: Uint8Array, publicKey: Uint8Array): Promise<string>;\r\nexport declare function decryptKey(encryptedKey: string, withKey: Uint8Array): Promise<Uint8Array>;\r\nexport declare function encryptForStorage(data: Uint8Array, key: Uint8Array): string;\r\nexport declare function decryptFromStorage(data: string, key: Uint8Array): Uint8Array;\r\nexport declare function decryptFromStorageGcm(data: string, key: Uint8Array): Promise<Uint8Array>;\r\nexport declare function encryptObjectForStorage<T>(obj: T, key: Uint8Array): string;\r\nexport declare function encryptObjectForStorageAsBytes<T>(obj: T, key: Uint8Array): Uint8Array;\r\nexport declare function decryptObjectFromStorage<T>(data: string, key: Uint8Array): T;\r\nexport declare function encryptObjectForStorageGCM<T>(obj: T, key: Uint8Array, usePadding?: boolean): Promise<Uint8Array>;\r\nexport declare function chooseErrorMessage(errorNumber: number): \"account_locked\" | \"device_account_locked\" | \"device_locked\" | \"invalid_loginstate\";\r\nexport declare function resolvablePromise(): {\r\n promise: Promise<void>;\r\n resolve: () => void;\r\n};\r\n"}}
|